@mathrunet/masamune_cloudflare_turso 3.2.9 → 3.2.11
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/CHANGELOG.md +1 -1
- package/dist/functions/turso.js +36 -9
- package/dist/functions/turso.js.map +1 -1
- package/dist/lib/crud.js +3 -0
- package/dist/lib/crud.js.map +1 -1
- package/dist/lib/turso_client.d.ts +4 -0
- package/dist/lib/turso_client.js +58 -3
- package/dist/lib/turso_client.js.map +1 -1
- package/dist/lib/types.d.ts +1 -0
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
package/dist/functions/turso.js
CHANGED
|
@@ -21,22 +21,28 @@ module.exports = (hono, options, data) => {
|
|
|
21
21
|
return hono;
|
|
22
22
|
};
|
|
23
23
|
async function handleCrud(context, options, method) {
|
|
24
|
+
let request;
|
|
25
|
+
let resolvedOptions;
|
|
26
|
+
let phase = "parse";
|
|
24
27
|
try {
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
const
|
|
28
|
+
resolvedOptions = (0, env_1.resolveTursoWorkersOptionsFromEnv)(context, options);
|
|
29
|
+
request = await (0, request_1.parseCrudRequest)(context);
|
|
30
|
+
const crudRequest = request;
|
|
31
|
+
phase = "connect";
|
|
32
|
+
const connection = await (0, turso_client_1.resolveDatabaseConnection)(crudRequest.database, resolvedOptions);
|
|
28
33
|
const client = (0, turso_client_1.createTursoClient)(connection);
|
|
29
34
|
const engine = (0, rules_1.createTursoRulesEngine)(resolvedOptions.rules);
|
|
30
35
|
const authentication = context.get("authentication");
|
|
36
|
+
phase = "rules";
|
|
31
37
|
const result = await engine.evaluate({
|
|
32
38
|
path: (0, rules_1.buildRulesPath)({
|
|
33
|
-
database:
|
|
34
|
-
table:
|
|
35
|
-
indexKey:
|
|
39
|
+
database: crudRequest.database,
|
|
40
|
+
table: crudRequest.table,
|
|
41
|
+
indexKey: crudRequest.indexKey ?? "*",
|
|
36
42
|
}),
|
|
37
|
-
operation: (
|
|
43
|
+
operation: resolveCrudRulesOperation(method, crudRequest),
|
|
38
44
|
authentication,
|
|
39
|
-
fetchDocument: async () => (0, crud_1.fetchDocumentForRules)(client,
|
|
45
|
+
fetchDocument: async () => (0, crud_1.fetchDocumentForRules)(client, crudRequest),
|
|
40
46
|
server: true,
|
|
41
47
|
});
|
|
42
48
|
if (!result.allowed) {
|
|
@@ -45,17 +51,38 @@ async function handleCrud(context, options, method) {
|
|
|
45
51
|
rule: result.rulePath,
|
|
46
52
|
}, 403);
|
|
47
53
|
}
|
|
54
|
+
if (connection.created) {
|
|
55
|
+
phase = "database-ready";
|
|
56
|
+
await (0, turso_client_1.waitForDatabaseReady)(client);
|
|
57
|
+
(0, turso_client_1.cacheDatabaseConnection)(crudRequest.database, resolvedOptions, connection);
|
|
58
|
+
}
|
|
59
|
+
phase = method === "POST" ? "create-table-or-insert" : "execute";
|
|
48
60
|
const response = await (0, crud_1.executeCrud)({
|
|
49
61
|
client,
|
|
50
62
|
method,
|
|
51
|
-
request,
|
|
63
|
+
request: crudRequest,
|
|
52
64
|
autoCreateTable: resolvedOptions.autoCreateTable !== false,
|
|
53
65
|
autoMigrateAddColumns: resolvedOptions.autoMigrateAddColumns !== false,
|
|
54
66
|
});
|
|
55
67
|
return context.json({ data: response });
|
|
56
68
|
}
|
|
57
69
|
catch (error) {
|
|
70
|
+
if (request && resolvedOptions && (0, turso_client_1.isTransientTursoError)(error)) {
|
|
71
|
+
(0, turso_client_1.clearDatabaseConnectionCache)(request.database, resolvedOptions);
|
|
72
|
+
return context.json({
|
|
73
|
+
error: error instanceof Error ? error.message : String(error),
|
|
74
|
+
phase,
|
|
75
|
+
database: request.database,
|
|
76
|
+
table: request.table,
|
|
77
|
+
}, 503);
|
|
78
|
+
}
|
|
58
79
|
return (0, request_1.jsonError)(context, error);
|
|
59
80
|
}
|
|
60
81
|
}
|
|
82
|
+
function resolveCrudRulesOperation(method, request) {
|
|
83
|
+
if (method === "POST" && request.indexKey) {
|
|
84
|
+
return "update";
|
|
85
|
+
}
|
|
86
|
+
return (0, rules_1.normalizeHttpMethodToRulesOperation)(method);
|
|
87
|
+
}
|
|
61
88
|
//# sourceMappingURL=turso.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"turso.js","sourceRoot":"","sources":["../../src/functions/turso.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"turso.js","sourceRoot":"","sources":["../../src/functions/turso.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/crud.js
CHANGED
|
@@ -19,6 +19,9 @@ async function executeCrud({ client, method, request, autoCreateTable, autoMigra
|
|
|
19
19
|
}
|
|
20
20
|
return await selectRows(client, request);
|
|
21
21
|
case "POST":
|
|
22
|
+
if (request.indexKey) {
|
|
23
|
+
return await updateRows(client, request, autoCreateTable, autoMigrateAddColumns);
|
|
24
|
+
}
|
|
22
25
|
return await insertRow(client, request, autoCreateTable, autoMigrateAddColumns);
|
|
23
26
|
case "PUT":
|
|
24
27
|
return await updateRows(client, request, autoCreateTable, autoMigrateAddColumns);
|
package/dist/lib/crud.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"crud.js","sourceRoot":"","sources":["../../src/lib/crud.ts"],"names":[],"mappings":";;AAUA,sDASC;AAED,
|
|
1
|
+
{"version":3,"file":"crud.js","sourceRoot":"","sources":["../../src/lib/crud.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,3 +16,7 @@ export interface TursoClient {
|
|
|
16
16
|
export type SqlValue = null | string | number | bigint | ArrayBuffer | boolean | Uint8Array | Date;
|
|
17
17
|
export declare function createTursoClient(connection: TursoDatabaseConnection): TursoClient;
|
|
18
18
|
export declare function resolveDatabaseConnection(database: string, options: TursoWorkersOptions): Promise<TursoDatabaseConnection>;
|
|
19
|
+
export declare function cacheDatabaseConnection(database: string, options: TursoWorkersOptions, connection: TursoDatabaseConnection): void;
|
|
20
|
+
export declare function clearDatabaseConnectionCache(database: string, options: TursoWorkersOptions): void;
|
|
21
|
+
export declare function waitForDatabaseReady(client: TursoClient): Promise<void>;
|
|
22
|
+
export declare function isTransientTursoError(error: unknown): boolean;
|
package/dist/lib/turso_client.js
CHANGED
|
@@ -2,8 +2,13 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.createTursoClient = createTursoClient;
|
|
4
4
|
exports.resolveDatabaseConnection = resolveDatabaseConnection;
|
|
5
|
+
exports.cacheDatabaseConnection = cacheDatabaseConnection;
|
|
6
|
+
exports.clearDatabaseConnectionCache = clearDatabaseConnectionCache;
|
|
7
|
+
exports.waitForDatabaseReady = waitForDatabaseReady;
|
|
8
|
+
exports.isTransientTursoError = isTransientTursoError;
|
|
5
9
|
const request_1 = require("./request");
|
|
6
10
|
const connectionCache = new Map();
|
|
11
|
+
const readyRetryDelaysMs = [250, 500, 1000, 2000, 4000];
|
|
7
12
|
function createTursoClient(connection) {
|
|
8
13
|
const { createClient } = require("@tursodatabase/serverless/compat");
|
|
9
14
|
return createClient({
|
|
@@ -16,12 +21,49 @@ async function resolveDatabaseConnection(database, options) {
|
|
|
16
21
|
const databaseName = `${options.databasePrefix ?? ""}${normalizedDatabase}`;
|
|
17
22
|
const cached = connectionCache.get(databaseName);
|
|
18
23
|
if (cached) {
|
|
19
|
-
return
|
|
24
|
+
return {
|
|
25
|
+
...cached,
|
|
26
|
+
created: false,
|
|
27
|
+
};
|
|
20
28
|
}
|
|
21
29
|
const created = await ensurePlatformDatabase(databaseName, options);
|
|
22
|
-
|
|
30
|
+
if (!created.created) {
|
|
31
|
+
cacheDatabaseConnection(database, options, created);
|
|
32
|
+
}
|
|
23
33
|
return created;
|
|
24
34
|
}
|
|
35
|
+
function cacheDatabaseConnection(database, options, connection) {
|
|
36
|
+
const normalizedDatabase = (0, request_1.validateLogicalName)(database, "database");
|
|
37
|
+
const databaseName = `${options.databasePrefix ?? ""}${normalizedDatabase}`;
|
|
38
|
+
connectionCache.set(databaseName, {
|
|
39
|
+
url: connection.url,
|
|
40
|
+
authToken: connection.authToken,
|
|
41
|
+
created: false,
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
function clearDatabaseConnectionCache(database, options) {
|
|
45
|
+
const normalizedDatabase = (0, request_1.validateLogicalName)(database, "database");
|
|
46
|
+
const databaseName = `${options.databasePrefix ?? ""}${normalizedDatabase}`;
|
|
47
|
+
connectionCache.delete(databaseName);
|
|
48
|
+
}
|
|
49
|
+
async function waitForDatabaseReady(client) {
|
|
50
|
+
let lastError;
|
|
51
|
+
for (let attempt = 0; attempt <= readyRetryDelaysMs.length; attempt++) {
|
|
52
|
+
try {
|
|
53
|
+
await client.execute("SELECT 1");
|
|
54
|
+
return;
|
|
55
|
+
}
|
|
56
|
+
catch (error) {
|
|
57
|
+
lastError = error;
|
|
58
|
+
if (!isTransientTursoError(error) ||
|
|
59
|
+
attempt === readyRetryDelaysMs.length) {
|
|
60
|
+
throw error;
|
|
61
|
+
}
|
|
62
|
+
await sleep(readyRetryDelaysMs[attempt]);
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
throw lastError;
|
|
66
|
+
}
|
|
25
67
|
async function ensurePlatformDatabase(databaseName, options) {
|
|
26
68
|
const organizationName = options.organization;
|
|
27
69
|
const platformApiToken = options.platformApiToken;
|
|
@@ -34,6 +76,7 @@ async function ensurePlatformDatabase(databaseName, options) {
|
|
|
34
76
|
Authorization: `Bearer ${platformApiToken}`,
|
|
35
77
|
"Content-Type": "application/json",
|
|
36
78
|
};
|
|
79
|
+
let created = false;
|
|
37
80
|
const existing = await fetch(`${baseUrl}/databases/${encodeURIComponent(databaseName)}`, {
|
|
38
81
|
headers,
|
|
39
82
|
});
|
|
@@ -52,6 +95,7 @@ async function ensurePlatformDatabase(databaseName, options) {
|
|
|
52
95
|
if (!response.ok) {
|
|
53
96
|
throw new request_1.HttpError(500, `Failed to create Turso database: ${response.status}`);
|
|
54
97
|
}
|
|
98
|
+
created = true;
|
|
55
99
|
}
|
|
56
100
|
else if (!existing.ok) {
|
|
57
101
|
throw new request_1.HttpError(500, `Failed to get Turso database: ${existing.status}`);
|
|
@@ -68,9 +112,13 @@ async function ensurePlatformDatabase(databaseName, options) {
|
|
|
68
112
|
throw new request_1.HttpError(500, "Turso database URL was not found in Platform API response.");
|
|
69
113
|
}
|
|
70
114
|
const authToken = await createDatabaseToken(baseUrl, databaseName, headers);
|
|
115
|
+
if (!authToken) {
|
|
116
|
+
throw new request_1.HttpError(500, "Turso database auth token was not found in Platform API response.");
|
|
117
|
+
}
|
|
71
118
|
return {
|
|
72
119
|
url,
|
|
73
120
|
authToken,
|
|
121
|
+
created,
|
|
74
122
|
};
|
|
75
123
|
}
|
|
76
124
|
async function createDatabaseToken(baseUrl, databaseName, headers) {
|
|
@@ -80,7 +128,7 @@ async function createDatabaseToken(baseUrl, databaseName, headers) {
|
|
|
80
128
|
body: JSON.stringify({}),
|
|
81
129
|
});
|
|
82
130
|
if (!response.ok) {
|
|
83
|
-
|
|
131
|
+
throw new request_1.HttpError(500, `Failed to create Turso database token: ${response.status}`);
|
|
84
132
|
}
|
|
85
133
|
const body = (await response.json());
|
|
86
134
|
const token = body.jwt ?? body.token;
|
|
@@ -102,6 +150,13 @@ function firstNonEmpty(...values) {
|
|
|
102
150
|
}
|
|
103
151
|
return undefined;
|
|
104
152
|
}
|
|
153
|
+
function isTransientTursoError(error) {
|
|
154
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
155
|
+
return /(?:HTTP error! status|Turso database|Turso database token|Turso database:): (404|409|425|429|500|502|503|504)/.test(message);
|
|
156
|
+
}
|
|
157
|
+
function sleep(milliseconds) {
|
|
158
|
+
return new Promise((resolve) => setTimeout(resolve, milliseconds));
|
|
159
|
+
}
|
|
105
160
|
function findDatabaseUrl(value) {
|
|
106
161
|
if (typeof value === "string" && /^libsql:\/\//.test(value)) {
|
|
107
162
|
return value;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"turso_client.js","sourceRoot":"","sources":["../../src/lib/turso_client.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"turso_client.js","sourceRoot":"","sources":["../../src/lib/turso_client.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/types.d.ts
CHANGED
|
@@ -4,6 +4,7 @@ export type { RulesAccessRule, RulesConfig, RulesEntry, RulesOperation, RulesOpe
|
|
|
4
4
|
export interface TursoDatabaseConnection {
|
|
5
5
|
url: string;
|
|
6
6
|
authToken?: string | undefined;
|
|
7
|
+
created?: boolean | undefined;
|
|
7
8
|
}
|
|
8
9
|
export interface TursoWorkersOptions extends WorkersOptions {
|
|
9
10
|
databasePrefix?: string | undefined;
|
package/package.json
CHANGED