@alchemy.run/turso 2.0.0-beta.84 → 2.0.0-beta.86
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/lib/ApiToken.d.ts +9 -0
- package/lib/ApiToken.d.ts.map +1 -1
- package/lib/ApiToken.js +10 -2
- package/lib/ApiToken.js.map +1 -1
- package/lib/AuthProvider.d.ts +1 -1
- package/lib/AuthProvider.d.ts.map +1 -1
- package/lib/AuthProvider.js +1 -1
- package/lib/AuthProvider.js.map +1 -1
- package/lib/Connect.d.ts.map +1 -1
- package/lib/Connect.js.map +1 -1
- package/lib/Contributions.d.ts +1 -1
- package/lib/Contributions.d.ts.map +1 -1
- package/lib/Contributions.js.map +1 -1
- package/lib/Credentials.d.ts +1 -1
- package/lib/Credentials.d.ts.map +1 -1
- package/lib/Credentials.js +11 -15
- package/lib/Credentials.js.map +1 -1
- package/lib/Database.d.ts +36 -1
- package/lib/Database.d.ts.map +1 -1
- package/lib/Database.js +49 -20
- package/lib/Database.js.map +1 -1
- package/lib/DatabaseToken.d.ts +9 -0
- package/lib/DatabaseToken.d.ts.map +1 -1
- package/lib/DatabaseToken.js +6 -1
- package/lib/DatabaseToken.js.map +1 -1
- package/lib/Group.d.ts +29 -1
- package/lib/Group.d.ts.map +1 -1
- package/lib/Group.js +30 -5
- package/lib/Group.js.map +1 -1
- package/lib/GroupToken.d.ts +9 -0
- package/lib/GroupToken.d.ts.map +1 -1
- package/lib/GroupToken.js +6 -1
- package/lib/GroupToken.js.map +1 -1
- package/lib/Hrana.d.ts.map +1 -1
- package/lib/Hrana.js +5 -1
- package/lib/Hrana.js.map +1 -1
- package/lib/ManageDatabases.d.ts.map +1 -1
- package/lib/ManageDatabases.js +1 -1
- package/lib/ManageDatabases.js.map +1 -1
- package/lib/OrganizationInvite.d.ts.map +1 -1
- package/lib/OrganizationInvite.js.map +1 -1
- package/lib/OrganizationMember.d.ts.map +1 -1
- package/lib/OrganizationMember.js +1 -1
- package/lib/OrganizationMember.js.map +1 -1
- package/lib/OrganizationSettings.d.ts.map +1 -1
- package/lib/OrganizationSettings.js.map +1 -1
- package/lib/Providers.d.ts +1 -1
- package/lib/Providers.d.ts.map +1 -1
- package/lib/Providers.js.map +1 -1
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js.map +1 -1
- package/package.json +9 -9
- package/src/ApiToken.ts +12 -2
- package/src/AuthProvider.ts +1 -1
- package/src/Credentials.ts +22 -49
- package/src/Database.ts +79 -24
- package/src/DatabaseToken.ts +11 -1
- package/src/Group.ts +52 -6
- package/src/GroupToken.ts +9 -1
- package/src/Hrana.ts +3 -1
- package/src/ManageDatabases.ts +1 -1
- package/src/OrganizationMember.ts +1 -1
package/lib/ApiToken.d.ts
CHANGED
|
@@ -3,6 +3,14 @@ import * as Provider from "alchemy/Provider";
|
|
|
3
3
|
import { Resource } from "alchemy/Resource";
|
|
4
4
|
import * as Redacted from "effect/Redacted";
|
|
5
5
|
import type { Providers } from "./Providers.ts";
|
|
6
|
+
declare const ApiTokenUnexpectedResponse_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
|
|
7
|
+
readonly _tag: "ApiTokenUnexpectedResponse";
|
|
8
|
+
} & Readonly<A>;
|
|
9
|
+
export declare class ApiTokenUnexpectedResponse extends ApiTokenUnexpectedResponse_base<{
|
|
10
|
+
readonly message: string;
|
|
11
|
+
readonly cause?: unknown;
|
|
12
|
+
}> {
|
|
13
|
+
}
|
|
6
14
|
/**
|
|
7
15
|
* A permission granted to a group-scoped API token. `read-only` and
|
|
8
16
|
* `full-access` are presets that expand to individual scopes.
|
|
@@ -70,4 +78,5 @@ export type ApiToken = Resource<"Turso.ApiToken", ApiTokenProps, ApiTokenAttribu
|
|
|
70
78
|
*/
|
|
71
79
|
export declare const ApiToken: import("alchemy/Resource").ResourceClass<ApiToken>;
|
|
72
80
|
export declare const ApiTokenProvider: () => import("effect/Layer").Layer<Provider.Provider<ApiToken>, never, import("./Credentials.ts").Organization | import("alchemy/Stack").Stack | import("alchemy/Stage").Stage | turso.TursoOpContext>;
|
|
81
|
+
export {};
|
|
73
82
|
//# sourceMappingURL=ApiToken.d.ts.map
|
package/lib/ApiToken.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ApiToken.d.ts","
|
|
1
|
+
{"version":3,"file":"ApiToken.d.ts","sources":["../src/ApiToken.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,8BAA8B,CAAC;AAItD,OAAO,KAAK,QAAQ,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAG5C,OAAO,KAAK,QAAQ,MAAM,iBAAiB,CAAC;AAE5C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;;;;AAEhD,qBAAa,0BAA2B,SAAQ,gCAA+C;IAC7F,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;CAAG;AAEL;;;GAGG;AACH,MAAM,MAAM,aAAa,GACrB,MAAM,GACN,WAAW,GACX,WAAW,GACX,cAAc,GACd,eAAe,GACf,iBAAiB,GACjB,iBAAiB,GACjB,kBAAkB,GAClB,oBAAoB,GACpB,WAAW,GACX,aAAa,CAAC;AAElB,MAAM,WAAW,aAAa;IAC5B;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;OAIG;IACH,MAAM,CAAC,EAAE,aAAa,EAAE,CAAC;CAC1B;AAED,MAAM,WAAW,kBAAkB;IACjC,gBAAgB;IAChB,EAAE,EAAE,MAAM,CAAC;IACX,kBAAkB;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,wDAAwD;IACxD,YAAY,EAAE,MAAM,CAAC;IACrB,6DAA6D;IAC7D,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,mDAAmD;IACnD,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,uEAAuE;IACvE,KAAK,EAAE,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;CAClC;AAED,MAAM,MAAM,QAAQ,GAAG,QAAQ,CAC7B,gBAAgB,EAChB,aAAa,EACb,kBAAkB,EAClB,KAAK,EACL,SAAS,CACV,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,eAAO,MAAM,QAAQ,oDAAuC,CAAC;AAK7D,eAAO,MAAM,gBAAgB,wMAkG1B,CAAC"}
|
package/lib/ApiToken.js
CHANGED
|
@@ -4,9 +4,12 @@ import { deepEqual, isResolved } from "alchemy/Diff";
|
|
|
4
4
|
import { createPhysicalName } from "alchemy/PhysicalName";
|
|
5
5
|
import * as Provider from "alchemy/Provider";
|
|
6
6
|
import { Resource } from "alchemy/Resource";
|
|
7
|
+
import * as Data from "effect/Data";
|
|
7
8
|
import * as Effect from "effect/Effect";
|
|
8
9
|
import * as Redacted from "effect/Redacted";
|
|
9
10
|
import { organization } from "./Credentials.js";
|
|
11
|
+
export class ApiTokenUnexpectedResponse extends Data.TaggedError("ApiTokenUnexpectedResponse") {
|
|
12
|
+
}
|
|
10
13
|
/**
|
|
11
14
|
* A Turso API token. It lets an app create and delete groups and databases.
|
|
12
15
|
* To run SQL, use a {@link DatabaseToken} instead. Limit it to one group
|
|
@@ -58,13 +61,16 @@ export const ApiTokenProvider = () => Provider.effect(ApiToken, Effect.gen(funct
|
|
|
58
61
|
};
|
|
59
62
|
}
|
|
60
63
|
}),
|
|
61
|
-
read: Effect.fn(function* ({ id, olds, output }) {
|
|
64
|
+
read: Effect.fn(function* ({ id, olds, output, previous }) {
|
|
62
65
|
const name = output?.name ?? (yield* tokenName(id, olds?.name));
|
|
63
66
|
const observed = yield* observe(name);
|
|
64
67
|
if (!observed)
|
|
65
68
|
return undefined;
|
|
66
69
|
if (output !== undefined && output.id === observed.id)
|
|
67
70
|
return output;
|
|
71
|
+
// The generation a delete-first replacement is about to revoke.
|
|
72
|
+
if (previous !== undefined && previous.id === observed.id)
|
|
73
|
+
return previous;
|
|
68
74
|
// The secret is only revealed at creation, so a token we have no
|
|
69
75
|
// state for can't be adopted with its value — reconcile re-mints.
|
|
70
76
|
return Unowned({
|
|
@@ -100,7 +106,9 @@ export const ApiTokenProvider = () => Provider.effect(ApiToken, Effect.gen(funct
|
|
|
100
106
|
scopes: news.scopes,
|
|
101
107
|
});
|
|
102
108
|
if (!created.token || !created.id) {
|
|
103
|
-
return yield*
|
|
109
|
+
return yield* new ApiTokenUnexpectedResponse({
|
|
110
|
+
message: `Turso returned no token for ${name}`,
|
|
111
|
+
});
|
|
104
112
|
}
|
|
105
113
|
const minted = yield* observe(name);
|
|
106
114
|
return {
|
package/lib/ApiToken.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ApiToken.js","
|
|
1
|
+
{"version":3,"file":"ApiToken.js","sources":["../src/ApiToken.ts"],"names":[],"mappings":"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"}
|
package/lib/AuthProvider.d.ts
CHANGED
|
@@ -29,7 +29,7 @@ export interface TursoResolvedCredentials {
|
|
|
29
29
|
* registry when built. Included in `Turso.providers()` so the alchemy CLI
|
|
30
30
|
* (`alchemy profile edit`) can configure it.
|
|
31
31
|
*/
|
|
32
|
-
export declare const TursoAuth: import("effect/Layer").Layer<never, never, import("alchemy/Auth/
|
|
32
|
+
export declare const TursoAuth: import("effect/Layer").Layer<never, never, import("alchemy/Auth/Registry").AuthProviders | import("effect/FileSystem").FileSystem | import("effect/Path").Path | import("effect/crypto/SecureRandom").SecureRandom>;
|
|
33
33
|
/** Schema of Turso's inline API-token values. */
|
|
34
34
|
export declare const TursoStoredCredentials: import("effect/Schema").Codec<import("alchemy/Auth/StoredAuthProvider").StoredValues, import("alchemy/Auth/StoredAuthProvider").StoredValues, never, never>;
|
|
35
35
|
export type TursoStoredCredentials = typeof TursoStoredCredentials.Type;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AuthProvider.d.ts","
|
|
1
|
+
{"version":3,"file":"AuthProvider.d.ts","sources":["../src/AuthProvider.ts"],"names":[],"mappings":"AAGA,OAAO,EAIL,KAAK,gBAAgB,EACtB,MAAM,iCAAiC,CAAC;AAEzC,OAAO,KAAK,QAAQ,MAAM,iBAAiB,CAAC;AAE5C;;;GAGG;AACH,eAAO,MAAM,wBAAwB,UAAU,CAAC;AAEhD,MAAM,MAAM,eAAe,GAAG,gBAAgB,CAAC;AAE/C;;;;;;;GAOG;AACH,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,UAAU,CAAC;IACjB,QAAQ,EAAE,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IACpC,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,MAAM,EAAE;QAAE,IAAI,EAAE,eAAe,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CACvE;AAqED;;;;GAIG;AACH,eAAO,MAAM,SAAS,qNAAkB,CAAC;AAEzC,iDAAiD;AACjD,eAAO,MAAM,sBAAsB,6JAAyB,CAAC;AAC7D,MAAM,MAAM,sBAAsB,GAAG,OAAO,sBAAsB,CAAC,IAAI,CAAC"}
|
package/lib/AuthProvider.js
CHANGED
|
@@ -14,7 +14,7 @@ const readEnvironment = Effect.gen(function* () {
|
|
|
14
14
|
const apiKey = yield* getEnvRedacted("TURSO_API_KEY");
|
|
15
15
|
const token = apiToken ?? apiKey;
|
|
16
16
|
if (token === undefined || Redacted.value(token).trim().length === 0) {
|
|
17
|
-
return yield*
|
|
17
|
+
return yield* AuthError.make({
|
|
18
18
|
message: "Turso CI credentials not found. Set TURSO_API_TOKEN or TURSO_API_KEY.",
|
|
19
19
|
});
|
|
20
20
|
}
|
package/lib/AuthProvider.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AuthProvider.js","
|
|
1
|
+
{"version":3,"file":"AuthProvider.js","sources":["../src/AuthProvider.ts"],"names":[],"mappings":"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"}
|
package/lib/Connect.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Connect.d.ts","
|
|
1
|
+
{"version":3,"file":"Connect.d.ts","sources":["../src/Connect.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,iBAAiB,CAAC;AAC3C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,KAAK,QAAQ,MAAM,iBAAiB,CAAC;AACjD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAiB,KAAK,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAE5E;;;;GAIG;AACH,MAAM,WAAW,aAAa;IAC5B,0DAA0D;IAC1D,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,cAAc,CAAC,CAAC;IAClD,uCAAuC;IACvC,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,cAAc,CAAC,CAAC;CAC5E;AAED,MAAM,WAAW,cAAc;IAC7B;;;OAGG;IACH,aAAa,CAAC,EAAE,kBAAkB,CAAC;CACpC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AACH,MAAM,WAAW,OAAQ,SAAQ,OAAO,CAAC,OAAO,CAC9C,OAAO,EACP,eAAe,EACf,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,cAAc,KAAK,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAC/E;CAAG;AAEJ,eAAO,MAAM,OAAO,SAA4C,CAAC;AAEjE;;;GAGG;AACH,eAAO,MAAM,WAAW,oCAiBvB,CAAC"}
|
package/lib/Connect.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Connect.js","
|
|
1
|
+
{"version":3,"file":"Connect.js","sources":["../src/Connect.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,iBAAiB,CAAC;AAE3C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAGtC,OAAO,EAAE,aAAa,EAA2B,MAAM,oBAAoB,CAAC;AAyE5E,MAAM,CAAC,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAU,eAAe,CAAC,CAAC;AAEjE;;;GAGG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,KAAK,CAAC,MAAM,CACrC,OAAO,EACP,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,aAAa,CAAC;IACnC,OAAO,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,QAAkB,EAAE,OAAwB;QACtE,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;QACjC,MAAM,aAAa,GAAG,OAAO,EAAE,aAAa,IAAI,aAAa,CAAC;QAC9D,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,KAAK,CACxB,GAAG,IAAI,EAAE,SAAS,IAAI,EAAE,GAAG,QAAQ,CAAC,SAAS,GAAG,aAAa,KAAK,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,OAAO,EACtG,EAAE,QAAQ,EAAE,QAAQ,CAAC,IAAI,EAAE,aAAa,EAAE,CAC3C,CAAC;QACF,OAAO;YACL,GAAG,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,GAAG;YACxB,SAAS,EAAE,KAAK,CAAC,CAAC,KAAK,CAAC,KAAK;SACN,CAAC;IAC5B,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CACH,CAAC"}
|
package/lib/Contributions.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as Contributions from "alchemy/Contributions";
|
|
2
2
|
declare const _default: {
|
|
3
3
|
readonly name: "turso";
|
|
4
|
-
readonly auth: Contributions.Lazy<import("effect/Layer").Layer<never, never, import("alchemy/Auth/
|
|
4
|
+
readonly auth: Contributions.Lazy<import("effect/Layer").Layer<never, never, import("alchemy/Auth/Registry").AuthProviders | import("effect/FileSystem").FileSystem | import("effect/Path").Path | import("effect/crypto/SecureRandom").SecureRandom>>;
|
|
5
5
|
};
|
|
6
6
|
export default _default;
|
|
7
7
|
//# sourceMappingURL=Contributions.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Contributions.d.ts","
|
|
1
|
+
{"version":3,"file":"Contributions.d.ts","sources":["../src/Contributions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,aAAa,MAAM,uBAAuB,CAAC;;;;;AAEvD,wBAMG"}
|
package/lib/Contributions.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Contributions.js","
|
|
1
|
+
{"version":3,"file":"Contributions.js","sources":["../src/Contributions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,aAAa,MAAM,uBAAuB,CAAC;AAEvD,eAAe,aAAa,CAAC,IAAI,CAAC;IAChC,IAAI,EAAE,OAAO;IACb,IAAI,EAAE,aAAa,CAAC,IAAI,CACtB,GAAG,EAAE,CAAC,MAAM,CAAC,mBAAmB,CAAC,EACjC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,SAAS,CAC7B;CACF,CAAC,CAAC"}
|
package/lib/Credentials.d.ts
CHANGED
|
@@ -35,5 +35,5 @@ export declare const fromToken: (input: {
|
|
|
35
35
|
* present, otherwise the selected profile. Resolution is deferred until the
|
|
36
36
|
* first API call, so building the provider layers never needs a profile.
|
|
37
37
|
*/
|
|
38
|
-
export declare const fromAuthProvider: () => Layer.Layer<Credentials | Organization, never, import("alchemy/Auth/
|
|
38
|
+
export declare const fromAuthProvider: () => Layer.Layer<Credentials | Organization, never, import("alchemy/Auth/Registry").AuthProviders | HttpClient.HttpClient | import("alchemy/Auth/Profile").ProfileStore>;
|
|
39
39
|
//# sourceMappingURL=Credentials.d.ts.map
|
package/lib/Credentials.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Credentials.d.ts","
|
|
1
|
+
{"version":3,"file":"Credentials.d.ts","sources":["../src/Credentials.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAwB,MAAM,oCAAoC,CAAC;AAGvF,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAC;AAC1C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,UAAU,MAAM,wBAAwB,CAAC;AACrD,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,QAAQ,MAAM,iBAAiB,CAAC;AAG5C,OAAO,EACL,WAAW,EACX,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,oCAAoC,CAAC;;AAE5C;;;;GAIG;AACH,qBAAa,YAAa,SAAQ,iBAEjC;CAAG;AAEJ,+DAA+D;AAC/D,eAAO,MAAM,YAAY,4CAEvB,CAAC;AAgDH;;;;;;;;GAQG;AACH,eAAO,MAAM,SAAS,UAAW;IAC/B,QAAQ,EAAE,MAAM,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC7C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,0EAOmC,CAAC;AAErC;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,2KAM1B,CAAC"}
|
package/lib/Credentials.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { ConfigError } from "@distilled.cloud/core/errors";
|
|
2
|
-
import { Credentials, DEFAULT_API_BASE_URL
|
|
2
|
+
import { Credentials, DEFAULT_API_BASE_URL } from "@distilled.cloud/turso/Credentials";
|
|
3
3
|
import * as turso from "@distilled.cloud/turso/turso";
|
|
4
|
-
import {
|
|
4
|
+
import { lazyCredentials, orDieCredentialsUnavailable } from "alchemy/Auth/Resolve";
|
|
5
5
|
import * as Context from "effect/Context";
|
|
6
6
|
import * as Effect from "effect/Effect";
|
|
7
7
|
import * as HttpClient from "effect/http/HttpClient";
|
|
8
8
|
import * as Layer from "effect/Layer";
|
|
9
9
|
import * as Redacted from "effect/Redacted";
|
|
10
|
-
import { TURSO_AUTH_PROVIDER_NAME
|
|
10
|
+
import { TURSO_AUTH_PROVIDER_NAME } from "./AuthProvider.js";
|
|
11
11
|
export { Credentials, CredentialsFromEnv, DEFAULT_API_BASE_URL, } from "@distilled.cloud/turso/Credentials";
|
|
12
12
|
/**
|
|
13
13
|
* The Turso organization slug every org-scoped Platform API call targets.
|
|
@@ -39,14 +39,15 @@ const discoverOrganization = Effect.gen(function* () {
|
|
|
39
39
|
});
|
|
40
40
|
const make = (resolve) => Effect.gen(function* () {
|
|
41
41
|
const http = yield* HttpClient.HttpClient;
|
|
42
|
-
const
|
|
43
|
-
const credentials = Effect.map(cached, (creds) => ({
|
|
42
|
+
const credentials = Effect.map(resolve, (creds) => ({
|
|
44
43
|
apiKey: creds.apiToken,
|
|
45
44
|
apiBaseUrl: creds.apiBaseUrl,
|
|
46
45
|
}));
|
|
47
|
-
|
|
46
|
+
// `Organization` is typed as never failing, so a credentials failure dies
|
|
47
|
+
// here; the engine still reports it as `CredentialsRequired`.
|
|
48
|
+
const organization = yield* resolve.pipe(Effect.orDie, Effect.flatMap((creds) => creds.organization !== undefined && creds.organization.length > 0
|
|
48
49
|
? Effect.succeed(creds.organization)
|
|
49
|
-
: discoverOrganization.pipe(Effect.provideService(Credentials, credentials), Effect.provideService(HttpClient.HttpClient, http), orDieCredentialsUnavailable(TURSO_AUTH_PROVIDER_NAME))));
|
|
50
|
+
: discoverOrganization.pipe(Effect.provideService(Credentials, credentials), Effect.provideService(HttpClient.HttpClient, http), orDieCredentialsUnavailable(TURSO_AUTH_PROVIDER_NAME))), Effect.cached);
|
|
50
51
|
return Context.make(Credentials, credentials).pipe(Context.add(Organization, organization));
|
|
51
52
|
});
|
|
52
53
|
/**
|
|
@@ -58,23 +59,18 @@ const make = (resolve) => Effect.gen(function* () {
|
|
|
58
59
|
* Effect.provide(Turso.fromToken({ apiToken: "...", organization: "my-org" }))
|
|
59
60
|
* ```
|
|
60
61
|
*/
|
|
61
|
-
export const fromToken = (input) =>
|
|
62
|
+
export const fromToken = (input) => Effect.succeed({
|
|
62
63
|
type: "apiToken",
|
|
63
64
|
apiToken: typeof input.apiToken === "string" ? Redacted.make(input.apiToken) : input.apiToken,
|
|
64
65
|
apiBaseUrl: input.apiBaseUrl ?? DEFAULT_API_BASE_URL,
|
|
65
66
|
organization: input.organization,
|
|
66
67
|
source: { type: "stored" },
|
|
67
|
-
}))
|
|
68
|
+
}).pipe(make, Layer.effectContext);
|
|
68
69
|
/**
|
|
69
70
|
* Build Turso `Credentials` + `Organization` that resolve through the
|
|
70
71
|
* Alchemy AuthProvider: environment credentials (`TURSO_API_TOKEN`) when
|
|
71
72
|
* present, otherwise the selected profile. Resolution is deferred until the
|
|
72
73
|
* first API call, so building the provider layers never needs a profile.
|
|
73
74
|
*/
|
|
74
|
-
export const fromAuthProvider = () => Layer.effectContext(
|
|
75
|
-
const resolve = yield* resolveProviderConfig(TURSO_AUTH_PROVIDER_NAME).pipe(Effect.flatMap(({ profileName, resolve }) => Effect.mapError(resolve, (e) => new ConfigError({
|
|
76
|
-
message: `Failed to resolve Turso credentials from ${profileName === undefined ? "the environment" : `profile '${profileName}'`}: ${e.message}`,
|
|
77
|
-
}))), deferUntilFirstUse);
|
|
78
|
-
return yield* make(resolve.pipe(orDieCredentialsUnavailable(TURSO_AUTH_PROVIDER_NAME)));
|
|
79
|
-
}));
|
|
75
|
+
export const fromAuthProvider = () => Layer.effectContext(lazyCredentials()(TURSO_AUTH_PROVIDER_NAME, (creds) => creds).pipe(Effect.flatMap(make)));
|
|
80
76
|
//# sourceMappingURL=Credentials.js.map
|
package/lib/Credentials.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Credentials.js","
|
|
1
|
+
{"version":3,"file":"Credentials.js","sources":["../src/Credentials.ts"],"names":[],"mappings":"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"}
|
package/lib/Database.d.ts
CHANGED
|
@@ -4,6 +4,14 @@ import * as Provider from "alchemy/Provider";
|
|
|
4
4
|
import { Resource } from "alchemy/Resource";
|
|
5
5
|
import * as Redacted from "effect/Redacted";
|
|
6
6
|
import type { Providers } from "./Providers.ts";
|
|
7
|
+
declare const DatabaseUnexpectedResponse_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
|
|
8
|
+
readonly _tag: "DatabaseUnexpectedResponse";
|
|
9
|
+
} & Readonly<A>;
|
|
10
|
+
export declare class DatabaseUnexpectedResponse extends DatabaseUnexpectedResponse_base<{
|
|
11
|
+
readonly message: string;
|
|
12
|
+
readonly cause?: unknown;
|
|
13
|
+
}> {
|
|
14
|
+
}
|
|
7
15
|
export interface DatabaseSeed {
|
|
8
16
|
/**
|
|
9
17
|
* `"database"` copies an existing database (optionally at a point in
|
|
@@ -100,6 +108,13 @@ export interface DatabaseProps {
|
|
|
100
108
|
* Bookkeeping lives in Alchemy's `__alchemy_migrations` table. A database
|
|
101
109
|
* previously migrated by drizzle-kit is adopted by a one-way conversion on
|
|
102
110
|
* first deploy.
|
|
111
|
+
*
|
|
112
|
+
* History is forward-only and linear. A new file must sort after every
|
|
113
|
+
* applied one, or the deploy fails with `NonLinearMigrationHistoryError`;
|
|
114
|
+
* an edited or deleted applied file fails with
|
|
115
|
+
* `RewrittenMigrationHistoryError`. Renaming an applied file without
|
|
116
|
+
* changing its contents keeps it applied. See
|
|
117
|
+
* [Migrations](https://alchemy.run/sql/effect-sql/migrations#change-migration-history-safely).
|
|
103
118
|
*/
|
|
104
119
|
migrations?: MigrationsInput;
|
|
105
120
|
/**
|
|
@@ -150,7 +165,15 @@ export interface DatabaseAttributes {
|
|
|
150
165
|
/** Content hashes for the last applied import files. */
|
|
151
166
|
importHashes: Record<string, string>;
|
|
152
167
|
}
|
|
153
|
-
export type Database = Resource<"Turso.Database", DatabaseProps, DatabaseAttributes, never, Providers>;
|
|
168
|
+
export type Database = Resource<"Turso.Database", DatabaseProps, DatabaseAttributes, never, Providers, DatabaseLookup>;
|
|
169
|
+
/**
|
|
170
|
+
* Props for {@link Database.lookup}: find a database this stack
|
|
171
|
+
* doesn't manage by its name, in the credentialed organization.
|
|
172
|
+
*/
|
|
173
|
+
export interface DatabaseLookup {
|
|
174
|
+
/** Database name. */
|
|
175
|
+
name: string;
|
|
176
|
+
}
|
|
154
177
|
/**
|
|
155
178
|
* A Turso database: a SQLite database that lives in a {@link Group}.
|
|
156
179
|
* Connect to it from a Worker or Lambda with {@link Connect}, or create a
|
|
@@ -209,9 +232,21 @@ export type Database = Resource<"Turso.Database", DatabaseProps, DatabaseAttribu
|
|
|
209
232
|
* const db = yield* Drizzle.LibSQL(conn);
|
|
210
233
|
* ```
|
|
211
234
|
*
|
|
235
|
+
* ### Looking up an existing database
|
|
236
|
+
* `Database.lookup` references a database Alchemy doesn't manage (created with
|
|
237
|
+
* the Turso CLI or by another stack). It is read during plan/deploy, never
|
|
238
|
+
* created, updated or deleted.
|
|
239
|
+
*
|
|
240
|
+
* **Example:** Mint a token for an existing database
|
|
241
|
+
* ```typescript
|
|
242
|
+
* const db = Turso.Database.lookup({ name: "app" });
|
|
243
|
+
* const token = yield* Turso.DatabaseToken("AppToken", { database: db.name });
|
|
244
|
+
* ```
|
|
245
|
+
*
|
|
212
246
|
* @resource
|
|
213
247
|
* @product Database
|
|
214
248
|
*/
|
|
215
249
|
export declare const Database: import("alchemy/Resource").ResourceClass<Database>;
|
|
216
250
|
export declare const DatabaseProvider: () => import("effect/Layer").Layer<Provider.Provider<Database>, never, import("effect/FileSystem").FileSystem | import("./Credentials.ts").Organization | import("effect/Path").Path | import("alchemy/Stack").Stack | import("alchemy/Stage").Stage | turso.TursoOpContext>;
|
|
251
|
+
export {};
|
|
217
252
|
//# sourceMappingURL=Database.d.ts.map
|
package/lib/Database.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Database.d.ts","
|
|
1
|
+
{"version":3,"file":"Database.d.ts","sources":["../src/Database.ts"],"names":[],"mappings":"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"}
|
package/lib/Database.js
CHANGED
|
@@ -1,16 +1,19 @@
|
|
|
1
1
|
import { diffMigrations, migrationsAttrs, migrationsInputOf, runMigrations, stampedOf, } from "@alchemy.run/sql/Migrations";
|
|
2
|
-
import {
|
|
2
|
+
import { applySqlImports, hashImports, splitSqlStatements } from "@alchemy.run/sql/SqlFile";
|
|
3
3
|
import * as turso from "@distilled.cloud/turso/turso";
|
|
4
4
|
import { Unowned } from "alchemy/AdoptPolicy";
|
|
5
5
|
import { deepEqual, isResolved } from "alchemy/Diff";
|
|
6
6
|
import { createPhysicalName } from "alchemy/PhysicalName";
|
|
7
7
|
import * as Provider from "alchemy/Provider";
|
|
8
8
|
import { Resource } from "alchemy/Resource";
|
|
9
|
+
import * as Data from "effect/Data";
|
|
9
10
|
import * as Effect from "effect/Effect";
|
|
10
11
|
import * as HttpClient from "effect/http/HttpClient";
|
|
11
12
|
import * as Redacted from "effect/Redacted";
|
|
12
13
|
import { organization } from "./Credentials.js";
|
|
13
14
|
import * as Hrana from "./Hrana.js";
|
|
15
|
+
export class DatabaseUnexpectedResponse extends Data.TaggedError("DatabaseUnexpectedResponse") {
|
|
16
|
+
}
|
|
14
17
|
/**
|
|
15
18
|
* A Turso database: a SQLite database that lives in a {@link Group}.
|
|
16
19
|
* Connect to it from a Worker or Lambda with {@link Connect}, or create a
|
|
@@ -69,6 +72,17 @@ import * as Hrana from "./Hrana.js";
|
|
|
69
72
|
* const db = yield* Drizzle.LibSQL(conn);
|
|
70
73
|
* ```
|
|
71
74
|
*
|
|
75
|
+
* ### Looking up an existing database
|
|
76
|
+
* `Database.lookup` references a database Alchemy doesn't manage (created with
|
|
77
|
+
* the Turso CLI or by another stack). It is read during plan/deploy, never
|
|
78
|
+
* created, updated or deleted.
|
|
79
|
+
*
|
|
80
|
+
* **Example:** Mint a token for an existing database
|
|
81
|
+
* ```typescript
|
|
82
|
+
* const db = Turso.Database.lookup({ name: "app" });
|
|
83
|
+
* const token = yield* Turso.DatabaseToken("AppToken", { database: db.name });
|
|
84
|
+
* ```
|
|
85
|
+
*
|
|
72
86
|
* @resource
|
|
73
87
|
* @product Database
|
|
74
88
|
*/
|
|
@@ -90,12 +104,14 @@ const withConnection = (org, database, use) => Effect.gen(function* () {
|
|
|
90
104
|
authorization: "full-access",
|
|
91
105
|
});
|
|
92
106
|
if (!jwt) {
|
|
93
|
-
return yield*
|
|
107
|
+
return yield* new DatabaseUnexpectedResponse({
|
|
108
|
+
message: `Turso returned no token for ${database.name}`,
|
|
109
|
+
});
|
|
94
110
|
}
|
|
95
111
|
return yield* use({ url: `https://${database.hostname}`, authToken: jwt }, client);
|
|
96
112
|
});
|
|
97
113
|
export const DatabaseProvider = () => Provider.effect(Database, Effect.gen(function* () {
|
|
98
|
-
const observe = (org, name) => turso.getDatabase({ organizationSlug: org, databaseName: name }).pipe(Effect.map((res) => res.database), Effect.catchTag("NotFound", () => Effect.
|
|
114
|
+
const observe = (org, name) => turso.getDatabase({ organizationSlug: org, databaseName: name }).pipe(Effect.map((res) => res.database), Effect.catchTag("NotFound", () => Effect.undefined));
|
|
99
115
|
const toAttrs = (org, db, config, rest) => ({
|
|
100
116
|
dbId: db.DbId ?? "",
|
|
101
117
|
name: db.Name,
|
|
@@ -144,7 +160,19 @@ export const DatabaseProvider = () => Provider.effect(Database, Effect.gen(funct
|
|
|
144
160
|
}
|
|
145
161
|
}
|
|
146
162
|
}),
|
|
147
|
-
|
|
163
|
+
lookup: Effect.fn(function* ({ name }) {
|
|
164
|
+
const org = yield* organization;
|
|
165
|
+
const db = yield* observe(org, name);
|
|
166
|
+
if (!db)
|
|
167
|
+
return undefined;
|
|
168
|
+
return toAttrs(org, db, yield* getConfig(org, name), {
|
|
169
|
+
migrationsDir: undefined,
|
|
170
|
+
migrationsTable: undefined,
|
|
171
|
+
migrationsHashes: {},
|
|
172
|
+
importHashes: {},
|
|
173
|
+
});
|
|
174
|
+
}),
|
|
175
|
+
read: Effect.fn(function* ({ id, olds, output, previous }) {
|
|
148
176
|
const org = output?.organization ?? (yield* organization);
|
|
149
177
|
const name = output?.name ?? (yield* databaseName(id, olds?.name));
|
|
150
178
|
const db = yield* observe(org, name);
|
|
@@ -157,8 +185,12 @@ export const DatabaseProvider = () => Provider.effect(Database, Effect.gen(funct
|
|
|
157
185
|
importHashes: output?.importHashes ?? {},
|
|
158
186
|
});
|
|
159
187
|
// Turso has no tags: a database found under an explicit,
|
|
160
|
-
// user-chosen name without prior state may belong to someone else
|
|
161
|
-
|
|
188
|
+
// user-chosen name without prior state may belong to someone else — unless it
|
|
189
|
+
// is the generation a delete-first replacement is about to free.
|
|
190
|
+
const ours = output !== undefined ||
|
|
191
|
+
olds?.name === undefined ||
|
|
192
|
+
(previous?.organization === org && previous.name === name);
|
|
193
|
+
return ours ? attrs : Unowned(attrs);
|
|
162
194
|
}),
|
|
163
195
|
reconcile: Effect.fn(function* ({ id, news, output, session }) {
|
|
164
196
|
const org = output?.organization ?? (yield* organization);
|
|
@@ -185,7 +217,9 @@ export const DatabaseProvider = () => Provider.effect(Database, Effect.gen(funct
|
|
|
185
217
|
.pipe(Effect.catchTag("Conflict", () => Effect.void));
|
|
186
218
|
db = yield* observe(org, name);
|
|
187
219
|
if (!db) {
|
|
188
|
-
return yield*
|
|
220
|
+
return yield* new DatabaseUnexpectedResponse({
|
|
221
|
+
message: `Turso database ${name} vanished after create`,
|
|
222
|
+
});
|
|
189
223
|
}
|
|
190
224
|
}
|
|
191
225
|
// Sync configuration — diff observed settings against desired
|
|
@@ -226,19 +260,14 @@ export const DatabaseProvider = () => Provider.effect(Database, Effect.gen(funct
|
|
|
226
260
|
withExecutor: (apply) => withConnection(org, target, (connection, client) => apply(Hrana.makeMigrationExecutor(connection, client))),
|
|
227
261
|
})
|
|
228
262
|
: undefined;
|
|
229
|
-
const
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
yield* withConnection(org, target, (connection, client) => Hrana.transaction(connection, splitSqlStatements(file.sql)).pipe(Effect.provideService(HttpClient.HttpClient, client)));
|
|
238
|
-
}
|
|
239
|
-
importHashes[filePath] = file.hash;
|
|
240
|
-
}
|
|
241
|
-
}
|
|
263
|
+
const importHashes = yield* applySqlImports({
|
|
264
|
+
importFiles: news.importFiles,
|
|
265
|
+
rootDir: yield* rootDir,
|
|
266
|
+
previous: output?.importHashes,
|
|
267
|
+
apply: (file) => session
|
|
268
|
+
.note(`Importing ${file.id}...`)
|
|
269
|
+
.pipe(Effect.andThen(withConnection(org, target, (connection, client) => Hrana.transaction(connection, splitSqlStatements(file.sql)).pipe(Effect.provideService(HttpClient.HttpClient, client))))),
|
|
270
|
+
});
|
|
242
271
|
return toAttrs(org, db, config, {
|
|
243
272
|
...migrationsAttrs({ input: migrationsInput, run: migrations, output }),
|
|
244
273
|
importHashes,
|
package/lib/Database.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Database.js","sourceRoot":"","sources":["../src/Database.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Database.js","sources":["../src/Database.ts"],"names":[],"mappings":"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"}
|
package/lib/DatabaseToken.d.ts
CHANGED
|
@@ -4,6 +4,14 @@ import { Resource } from "alchemy/Resource";
|
|
|
4
4
|
import * as Effect from "effect/Effect";
|
|
5
5
|
import * as Redacted from "effect/Redacted";
|
|
6
6
|
import type { Providers } from "./Providers.ts";
|
|
7
|
+
declare const DatabaseTokenUnexpectedResponse_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
|
|
8
|
+
readonly _tag: "DatabaseTokenUnexpectedResponse";
|
|
9
|
+
} & Readonly<A>;
|
|
10
|
+
export declare class DatabaseTokenUnexpectedResponse extends DatabaseTokenUnexpectedResponse_base<{
|
|
11
|
+
readonly message: string;
|
|
12
|
+
readonly cause?: unknown;
|
|
13
|
+
}> {
|
|
14
|
+
}
|
|
7
15
|
/** Access level of a Turso SQL auth token. */
|
|
8
16
|
export type TokenAuthorization = "full-access" | "read-only";
|
|
9
17
|
/** Props shared by {@link DatabaseToken} and {@link GroupToken}. */
|
|
@@ -92,4 +100,5 @@ export declare const diffSqlToken: (args_0: {
|
|
|
92
100
|
/** Whether a previously minted token can be kept as-is. */
|
|
93
101
|
export declare const isTokenCurrent: (output: SqlTokenAttributes | undefined, olds: SqlTokenProps | undefined, news: SqlTokenProps) => Effect.Effect<boolean, never, never>;
|
|
94
102
|
export declare const DatabaseTokenProvider: () => import("effect/Layer").Layer<Provider.Provider<DatabaseToken>, never, import("./Credentials.ts").Organization | turso.TursoOpContext>;
|
|
103
|
+
export {};
|
|
95
104
|
//# sourceMappingURL=DatabaseToken.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DatabaseToken.d.ts","
|
|
1
|
+
{"version":3,"file":"DatabaseToken.d.ts","sources":["../src/DatabaseToken.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,8BAA8B,CAAC;AAEtD,OAAO,KAAK,QAAQ,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAG5C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,QAAQ,MAAM,iBAAiB,CAAC;AAE5C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;;;;AAEhD,qBAAa,+BAAgC,SAAQ,qCAEnD;IACA,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;CAAG;AAEL,8CAA8C;AAC9C,MAAM,MAAM,kBAAkB,GAAG,aAAa,GAAG,WAAW,CAAC;AAE7D,oEAAoE;AACpE,MAAM,WAAW,aAAa;IAC5B;;;OAGG;IACH,aAAa,CAAC,EAAE,kBAAkB,CAAC;IACnC;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,yEAAyE;AACzE,MAAM,WAAW,kBAAkB;IACjC,kEAAkE;IAClE,KAAK,EAAE,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IACjC,kDAAkD;IAClD,YAAY,EAAE,MAAM,CAAC;IACrB,yCAAyC;IACzC,aAAa,EAAE,kBAAkB,CAAC;IAClC,6EAA6E;IAC7E,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;CAC/B;AAED,MAAM,WAAW,kBAAmB,SAAQ,aAAa;IACvD,wEAAwE;IACxE,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,uBAAwB,SAAQ,kBAAkB;IACjE,uDAAuD;IACvD,QAAQ,EAAE,MAAM,CAAC;IACjB,qDAAqD;IACrD,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,MAAM,aAAa,GAAG,QAAQ,CAClC,qBAAqB,EACrB,kBAAkB,EAClB,uBAAuB,EACvB,KAAK,EACL,SAAS,CACV,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,eAAO,MAAM,aAAa,yDAAiD,CAAC;AAE5E,wEAAwE;AACxE,eAAO,MAAM,WAAW,UAAW,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAG,MAAM,GAAG,SAWvE,CAAC;AAKF;;;GAGG;AACH,eAAO,MAAM,YAAY;YAGf,kBAAkB,GAAG,SAAS;;qBAIwB,QAAQ;4BACtE,CAAC;AAEH,2DAA2D;AAC3D,eAAO,MAAM,cAAc,wIAkBzB,CAAC;AAEH,eAAO,MAAM,qBAAqB,6IAuD/B,CAAC"}
|
package/lib/DatabaseToken.js
CHANGED
|
@@ -3,9 +3,12 @@ import { deepEqual } from "alchemy/Diff";
|
|
|
3
3
|
import * as Provider from "alchemy/Provider";
|
|
4
4
|
import { Resource } from "alchemy/Resource";
|
|
5
5
|
import * as Clock from "effect/Clock";
|
|
6
|
+
import * as Data from "effect/Data";
|
|
6
7
|
import * as Effect from "effect/Effect";
|
|
7
8
|
import * as Redacted from "effect/Redacted";
|
|
8
9
|
import { organization } from "./Credentials.js";
|
|
10
|
+
export class DatabaseTokenUnexpectedResponse extends Data.TaggedError("DatabaseTokenUnexpectedResponse") {
|
|
11
|
+
}
|
|
9
12
|
/**
|
|
10
13
|
* A token that lets an app run SQL on one Turso database. Workers and
|
|
11
14
|
* Lambdas should use {@link Connect}, which creates one for you. Use
|
|
@@ -110,7 +113,9 @@ export const DatabaseTokenProvider = () => Provider.effect(DatabaseToken, Effect
|
|
|
110
113
|
: undefined,
|
|
111
114
|
});
|
|
112
115
|
if (!jwt) {
|
|
113
|
-
return yield*
|
|
116
|
+
return yield* new DatabaseTokenUnexpectedResponse({
|
|
117
|
+
message: `Turso returned no token for ${news.database}`,
|
|
118
|
+
});
|
|
114
119
|
}
|
|
115
120
|
return {
|
|
116
121
|
token: jwt,
|