@distilled.cloud/planetscale 0.2.0-alpha → 0.2.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.
package/README.md ADDED
@@ -0,0 +1,54 @@
1
+ # @distilled.cloud/planetscale
2
+
3
+ Effect-native PlanetScale SDK generated from the [PlanetScale OpenAPI specification](https://api-docs.planetscale.com/). Manage MySQL and PostgreSQL databases, branches, deploy requests, passwords, and more with exhaustive error typing.
4
+
5
+ ## Installation
6
+
7
+ ```bash
8
+ npm install @distilled.cloud/planetscale effect
9
+ ```
10
+
11
+ ## Quick Start
12
+
13
+ ```typescript
14
+ import { Effect, Layer } from "effect";
15
+ import * as FetchHttpClient from "effect/unstable/http/FetchHttpClient";
16
+ import { listDatabases, CredentialsFromEnv, Credentials } from "@distilled.cloud/planetscale";
17
+
18
+ const program = Effect.gen(function* () {
19
+ const { organization } = yield* Credentials;
20
+ const databases = yield* listDatabases({ organization });
21
+ return databases.data;
22
+ });
23
+
24
+ const PlanetScaleLive = Layer.mergeAll(FetchHttpClient.layer, CredentialsFromEnv);
25
+
26
+ program.pipe(Effect.provide(PlanetScaleLive), Effect.runPromise);
27
+ ```
28
+
29
+ ## Configuration
30
+
31
+ Set the following environment variables:
32
+
33
+ ```bash
34
+ # Format: SERVICE_TOKEN_ID:SERVICE_TOKEN
35
+ PLANETSCALE_API_TOKEN=pscale_tkn_xxxxx:pscale_tok_xxxxx
36
+ PLANETSCALE_ORGANIZATION=my-org-name
37
+ ```
38
+
39
+ ## Error Handling
40
+
41
+ ```typescript
42
+ import { getDatabase } from "@distilled.cloud/planetscale";
43
+
44
+ getDatabase({ organization: "my-org", database: "missing" }).pipe(
45
+ Effect.catchTags({
46
+ NotFound: () => Effect.succeed(null),
47
+ UnknownPlanetScaleError: (e) => Effect.fail(new Error(`Unknown: ${e.message}`)),
48
+ }),
49
+ );
50
+ ```
51
+
52
+ ## License
53
+
54
+ MIT
package/lib/client.d.ts CHANGED
@@ -6,7 +6,7 @@
6
6
  */
7
7
  import * as Effect from "effect/Effect";
8
8
  import * as Schema from "effect/Schema";
9
- export { PlanetScaleApiError } from "./errors.ts";
9
+ export { UnknownPlanetScaleError } from "./errors.ts";
10
10
  /**
11
11
  * PlanetScale API client.
12
12
  */
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AASxC,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAkClD;;GAEG;AACH,eAAO,MAAM,GAAG;;;CAMd,CAAC"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AASxC,OAAO,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAkCtD;;GAEG;AACH,eAAO,MAAM,GAAG;;;CAMd,CAAC"}
package/lib/client.js CHANGED
@@ -7,9 +7,9 @@
7
7
  import * as Effect from "effect/Effect";
8
8
  import * as Schema from "effect/Schema";
9
9
  import { makeAPI } from "@distilled.cloud/core/client";
10
- import { HTTP_STATUS_MAP, PlanetScaleApiError, PlanetScaleParseError, } from "./errors.js";
11
- // Re-export for backwards compatibility (tests import PlanetScaleApiError from client)
12
- export { PlanetScaleApiError } from "./errors.js";
10
+ import { HTTP_STATUS_MAP, UnknownPlanetScaleError, PlanetScaleParseError, } from "./errors.js";
11
+ // Re-export for backwards compatibility (tests import UnknownPlanetScaleError from client)
12
+ export { UnknownPlanetScaleError } from "./errors.js";
13
13
  import { Credentials } from "./credentials.js";
14
14
  // API Error Response Schema
15
15
  const ApiErrorResponse = Schema.Struct({
@@ -26,14 +26,14 @@ const matchError = (status, errorBody) => {
26
26
  if (ErrorClass) {
27
27
  return Effect.fail(new ErrorClass({ message: parsed.message ?? "" }));
28
28
  }
29
- return Effect.fail(new PlanetScaleApiError({
29
+ return Effect.fail(new UnknownPlanetScaleError({
30
30
  code: parsed.code,
31
31
  message: parsed.message,
32
32
  body: errorBody,
33
33
  }));
34
34
  }
35
35
  catch {
36
- return Effect.fail(new PlanetScaleApiError({ body: errorBody }));
36
+ return Effect.fail(new UnknownPlanetScaleError({ body: errorBody }));
37
37
  }
38
38
  };
39
39
  /**
package/lib/client.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAC;AACvD,OAAO,EACL,eAAe,EACf,mBAAmB,EACnB,qBAAqB,GACtB,MAAM,aAAa,CAAC;AAErB,uFAAuF;AACvF,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,4BAA4B;AAC5B,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,CAAC;IACrC,IAAI,EAAE,MAAM,CAAC,MAAM;IACnB,OAAO,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC;CACxC,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,UAAU,GAAG,CACjB,MAAc,EACd,SAAkB,EACa,EAAE;IACjC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,CAAC,SAAS,CAAC,CAAC;QACrE,MAAM,UAAU,GAAI,eAAuB,CAAC,MAAM,CAAC,CAAC;QACpD,IAAI,UAAU,EAAE,CAAC;YACf,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;QACxE,CAAC;QACD,OAAO,MAAM,CAAC,IAAI,CAChB,IAAI,mBAAmB,CAAC;YACtB,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,IAAI,EAAE,SAAS;SAChB,CAAC,CACH,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,mBAAmB,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;IACnE,CAAC;AACH,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,GAAG,GAAG,OAAO,CAAC;IACzB,WAAW,EAAE,WAAkB;IAC/B,UAAU,EAAE,CAAC,KAAU,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU;IAC5C,cAAc,EAAE,CAAC,KAAU,EAAE,EAAE,CAAC,CAAC,EAAE,aAAa,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC;IAChE,UAAU;IACV,UAAU,EAAE,qBAA4B;CACzC,CAAC,CAAC"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAC;AACvD,OAAO,EACL,eAAe,EACf,uBAAuB,EACvB,qBAAqB,GACtB,MAAM,aAAa,CAAC;AAErB,2FAA2F;AAC3F,OAAO,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,4BAA4B;AAC5B,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,CAAC;IACrC,IAAI,EAAE,MAAM,CAAC,MAAM;IACnB,OAAO,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC;CACxC,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,UAAU,GAAG,CACjB,MAAc,EACd,SAAkB,EACa,EAAE;IACjC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,CAAC,SAAS,CAAC,CAAC;QACrE,MAAM,UAAU,GAAI,eAAuB,CAAC,MAAM,CAAC,CAAC;QACpD,IAAI,UAAU,EAAE,CAAC;YACf,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;QACxE,CAAC;QACD,OAAO,MAAM,CAAC,IAAI,CAChB,IAAI,uBAAuB,CAAC;YAC1B,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,IAAI,EAAE,SAAS;SAChB,CAAC,CACH,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,uBAAuB,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;IACvE,CAAC;AACH,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,GAAG,GAAG,OAAO,CAAC;IACzB,WAAW,EAAE,WAAkB;IAC/B,UAAU,EAAE,CAAC,KAAU,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU;IAC5C,cAAc,EAAE,CAAC,KAAU,EAAE,EAAE,CAAC,CAAC,EAAE,aAAa,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC;IAChE,UAAU;IACV,UAAU,EAAE,qBAA4B;CACzC,CAAC,CAAC"}
package/lib/errors.d.ts CHANGED
@@ -4,7 +4,7 @@
4
4
  * Re-exports common HTTP errors from sdk-core and adds PlanetScale-specific
5
5
  * error matching and API error types.
6
6
  */
7
- export { BadRequest, Conflict, ConfigError, Forbidden, InternalServerError, NotFound, ServiceUnavailable, TooManyRequests, Unauthorized, UnprocessableEntity, HTTP_STATUS_MAP, DEFAULT_ERRORS, API_ERRORS, } from "@distilled.cloud/core/errors";
7
+ export { BadGateway, BadRequest, Conflict, ConfigError, Forbidden, GatewayTimeout, InternalServerError, NotFound, ServiceUnavailable, TooManyRequests, Unauthorized, UnprocessableEntity, HTTP_STATUS_MAP, DEFAULT_ERRORS, API_ERRORS, } from "@distilled.cloud/core/errors";
8
8
  export type { DefaultErrors } from "@distilled.cloud/core/errors";
9
9
  import * as Schema from "effect/Schema";
10
10
  /**
@@ -12,7 +12,7 @@ import * as Schema from "effect/Schema";
12
12
  * Maps API error response codes to HTTP error classes.
13
13
  */
14
14
  export { HTTP_STATUS_MAP as ERROR_CODE_MAP } from "@distilled.cloud/core/errors";
15
- declare const PlanetScaleApiError_base: Schema.ErrorClass<PlanetScaleApiError, Schema.TaggedStruct<"PlanetScaleApiError", {
15
+ declare const UnknownPlanetScaleError_base: Schema.ErrorClass<UnknownPlanetScaleError, Schema.TaggedStruct<"UnknownPlanetScaleError", {
16
16
  readonly code: Schema.optional<Schema.String>;
17
17
  readonly message: Schema.optional<Schema.String>;
18
18
  readonly body: Schema.Unknown;
@@ -21,7 +21,7 @@ declare const PlanetScaleApiError_base: Schema.ErrorClass<PlanetScaleApiError, S
21
21
  ServerError: true;
22
22
  };
23
23
  });
24
- export declare class PlanetScaleApiError extends PlanetScaleApiError_base {
24
+ export declare class UnknownPlanetScaleError extends UnknownPlanetScaleError_base {
25
25
  }
26
26
  declare const PlanetScaleParseError_base: Schema.ErrorClass<PlanetScaleParseError, Schema.TaggedStruct<"PlanetScaleParseError", {
27
27
  readonly body: Schema.Unknown;
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EACL,UAAU,EACV,QAAQ,EACR,WAAW,EACX,SAAS,EACT,mBAAmB,EACnB,QAAQ,EACR,kBAAkB,EAClB,eAAe,EACf,YAAY,EACZ,mBAAmB,EACnB,eAAe,EACf,cAAc,EACd,UAAU,GACX,MAAM,8BAA8B,CAAC;AACtC,YAAY,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAElE,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAGxC;;;GAGG;AACH,OAAO,EAAE,eAAe,IAAI,cAAc,EAAE,MAAM,8BAA8B,CAAC;;;;;;;;;;AAGjF,qBAAa,mBAAoB,SAAQ,wBAOT;CAAG;;;;;;;;;AAGnC,qBAAa,qBAAsB,SAAQ,0BAMZ;CAAG"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EACL,UAAU,EACV,UAAU,EACV,QAAQ,EACR,WAAW,EACX,SAAS,EACT,cAAc,EACd,mBAAmB,EACnB,QAAQ,EACR,kBAAkB,EAClB,eAAe,EACf,YAAY,EACZ,mBAAmB,EACnB,eAAe,EACf,cAAc,EACd,UAAU,GACX,MAAM,8BAA8B,CAAC;AACtC,YAAY,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAElE,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAGxC;;;GAGG;AACH,OAAO,EAAE,eAAe,IAAI,cAAc,EAAE,MAAM,8BAA8B,CAAC;;;;;;;;;;AAGjF,qBAAa,uBAAwB,SAAQ,4BAOb;CAAG;;;;;;;;;AAGnC,qBAAa,qBAAsB,SAAQ,0BAMZ;CAAG"}
package/lib/errors.js CHANGED
@@ -4,7 +4,7 @@
4
4
  * Re-exports common HTTP errors from sdk-core and adds PlanetScale-specific
5
5
  * error matching and API error types.
6
6
  */
7
- export { BadRequest, Conflict, ConfigError, Forbidden, InternalServerError, NotFound, ServiceUnavailable, TooManyRequests, Unauthorized, UnprocessableEntity, HTTP_STATUS_MAP, DEFAULT_ERRORS, API_ERRORS, } from "@distilled.cloud/core/errors";
7
+ export { BadGateway, BadRequest, Conflict, ConfigError, Forbidden, GatewayTimeout, InternalServerError, NotFound, ServiceUnavailable, TooManyRequests, Unauthorized, UnprocessableEntity, HTTP_STATUS_MAP, DEFAULT_ERRORS, API_ERRORS, } from "@distilled.cloud/core/errors";
8
8
  import * as Schema from "effect/Schema";
9
9
  import * as Category from "@distilled.cloud/core/category";
10
10
  /**
@@ -12,8 +12,8 @@ import * as Category from "@distilled.cloud/core/category";
12
12
  * Maps API error response codes to HTTP error classes.
13
13
  */
14
14
  export { HTTP_STATUS_MAP as ERROR_CODE_MAP } from "@distilled.cloud/core/errors";
15
- // Generic API Error - uncategorized fallback
16
- export class PlanetScaleApiError extends Schema.TaggedErrorClass()("PlanetScaleApiError", {
15
+ // Unknown PlanetScale error - returned when an error code is not recognized
16
+ export class UnknownPlanetScaleError extends Schema.TaggedErrorClass()("UnknownPlanetScaleError", {
17
17
  code: Schema.optional(Schema.String),
18
18
  message: Schema.optional(Schema.String),
19
19
  body: Schema.Unknown,
package/lib/errors.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EACL,UAAU,EACV,QAAQ,EACR,WAAW,EACX,SAAS,EACT,mBAAmB,EACnB,QAAQ,EACR,kBAAkB,EAClB,eAAe,EACf,YAAY,EACZ,mBAAmB,EACnB,eAAe,EACf,cAAc,EACd,UAAU,GACX,MAAM,8BAA8B,CAAC;AAGtC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,QAAQ,MAAM,gCAAgC,CAAC;AAE3D;;;GAGG;AACH,OAAO,EAAE,eAAe,IAAI,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAEjF,6CAA6C;AAC7C,MAAM,OAAO,mBAAoB,SAAQ,MAAM,CAAC,gBAAgB,EAAuB,CACrF,qBAAqB,EACrB;IACE,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC;IACpC,OAAO,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC;IACvC,IAAI,EAAE,MAAM,CAAC,OAAO;CACrB,CACF,CAAC,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC;CAAG;AAEnC,6BAA6B;AAC7B,MAAM,OAAO,qBAAsB,SAAQ,MAAM,CAAC,gBAAgB,EAAyB,CACzF,uBAAuB,EACvB;IACE,IAAI,EAAE,MAAM,CAAC,OAAO;IACpB,KAAK,EAAE,MAAM,CAAC,OAAO;CACtB,CACF,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC;CAAG"}
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EACL,UAAU,EACV,UAAU,EACV,QAAQ,EACR,WAAW,EACX,SAAS,EACT,cAAc,EACd,mBAAmB,EACnB,QAAQ,EACR,kBAAkB,EAClB,eAAe,EACf,YAAY,EACZ,mBAAmB,EACnB,eAAe,EACf,cAAc,EACd,UAAU,GACX,MAAM,8BAA8B,CAAC;AAGtC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,QAAQ,MAAM,gCAAgC,CAAC;AAE3D;;;GAGG;AACH,OAAO,EAAE,eAAe,IAAI,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAEjF,4EAA4E;AAC5E,MAAM,OAAO,uBAAwB,SAAQ,MAAM,CAAC,gBAAgB,EAA2B,CAC7F,yBAAyB,EACzB;IACE,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC;IACpC,OAAO,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC;IACvC,IAAI,EAAE,MAAM,CAAC,OAAO;CACrB,CACF,CAAC,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC;CAAG;AAEnC,6BAA6B;AAC7B,MAAM,OAAO,qBAAsB,SAAQ,MAAM,CAAC,gBAAgB,EAAyB,CACzF,uBAAuB,EACvB;IACE,IAAI,EAAE,MAAM,CAAC,OAAO;IACpB,KAAK,EAAE,MAAM,CAAC,OAAO;CACtB,CACF,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC;CAAG"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@distilled.cloud/planetscale",
3
- "version": "0.2.0-alpha",
3
+ "version": "0.2.4",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "https://github.com/alchemy-run/distilled",
@@ -73,8 +73,8 @@
73
73
  "specs:update": "git -C specs/distilled-spec-planetscale fetch && git -C specs/distilled-spec-planetscale checkout main && git -C specs/distilled-spec-planetscale pull"
74
74
  },
75
75
  "dependencies": {
76
- "@distilled.cloud/core": "0.2.0",
77
- "effect": "4.0.0-beta.25"
76
+ "@distilled.cloud/core": "0.2.0-alpha",
77
+ "effect": "4.0.0-beta.30"
78
78
  },
79
79
  "devDependencies": {
80
80
  "@types/bun": "^1.3.0",
@@ -83,6 +83,6 @@
83
83
  "vitest": "^3.2.3"
84
84
  },
85
85
  "peerDependencies": {
86
- "effect": "4.0.0-beta.25"
86
+ "effect": "4.0.0-beta.30"
87
87
  }
88
88
  }
package/src/client.ts CHANGED
@@ -9,12 +9,12 @@ import * as Schema from "effect/Schema";
9
9
  import { makeAPI } from "@distilled.cloud/core/client";
10
10
  import {
11
11
  HTTP_STATUS_MAP,
12
- PlanetScaleApiError,
12
+ UnknownPlanetScaleError,
13
13
  PlanetScaleParseError,
14
14
  } from "./errors.ts";
15
15
 
16
- // Re-export for backwards compatibility (tests import PlanetScaleApiError from client)
17
- export { PlanetScaleApiError } from "./errors.ts";
16
+ // Re-export for backwards compatibility (tests import UnknownPlanetScaleError from client)
17
+ export { UnknownPlanetScaleError } from "./errors.ts";
18
18
  import { Credentials } from "./credentials.ts";
19
19
 
20
20
  // API Error Response Schema
@@ -37,14 +37,14 @@ const matchError = (
37
37
  return Effect.fail(new ErrorClass({ message: parsed.message ?? "" }));
38
38
  }
39
39
  return Effect.fail(
40
- new PlanetScaleApiError({
40
+ new UnknownPlanetScaleError({
41
41
  code: parsed.code,
42
42
  message: parsed.message,
43
43
  body: errorBody,
44
44
  }),
45
45
  );
46
46
  } catch {
47
- return Effect.fail(new PlanetScaleApiError({ body: errorBody }));
47
+ return Effect.fail(new UnknownPlanetScaleError({ body: errorBody }));
48
48
  }
49
49
  };
50
50
 
package/src/errors.ts CHANGED
@@ -5,10 +5,12 @@
5
5
  * error matching and API error types.
6
6
  */
7
7
  export {
8
+ BadGateway,
8
9
  BadRequest,
9
10
  Conflict,
10
11
  ConfigError,
11
12
  Forbidden,
13
+ GatewayTimeout,
12
14
  InternalServerError,
13
15
  NotFound,
14
16
  ServiceUnavailable,
@@ -30,9 +32,9 @@ import * as Category from "@distilled.cloud/core/category";
30
32
  */
31
33
  export { HTTP_STATUS_MAP as ERROR_CODE_MAP } from "@distilled.cloud/core/errors";
32
34
 
33
- // Generic API Error - uncategorized fallback
34
- export class PlanetScaleApiError extends Schema.TaggedErrorClass<PlanetScaleApiError>()(
35
- "PlanetScaleApiError",
35
+ // Unknown PlanetScale error - returned when an error code is not recognized
36
+ export class UnknownPlanetScaleError extends Schema.TaggedErrorClass<UnknownPlanetScaleError>()(
37
+ "UnknownPlanetScaleError",
36
38
  {
37
39
  code: Schema.optional(Schema.String),
38
40
  message: Schema.optional(Schema.String),