@mathrunet/masamune_cloudflare_turso 3.3.0 → 3.4.1
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 +10 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/lib/database_adapter.d.ts +105 -0
- package/dist/lib/database_adapter.js +356 -0
- package/dist/lib/database_adapter.js.map +1 -0
- package/package.json +3 -3
- package/dist/functions/test.d.ts +0 -1
- package/dist/functions/test.js +0 -71
- package/dist/functions/test.js.map +0 -1
- package/dist/lib/api.d.ts +0 -183
- package/dist/lib/api.js +0 -144
- package/dist/lib/api.js.map +0 -1
- package/dist/lib/exntensions/firestore.extension.d.ts +0 -247
- package/dist/lib/exntensions/firestore.extension.js +0 -386
- package/dist/lib/exntensions/firestore.extension.js.map +0 -1
- package/dist/lib/exntensions/string.extension.d.ts +0 -214
- package/dist/lib/exntensions/string.extension.js +0 -223
- package/dist/lib/exntensions/string.extension.js.map +0 -1
- package/dist/lib/model_field_value/converters/basic_converter.d.ts +0 -49
- package/dist/lib/model_field_value/converters/basic_converter.js +0 -51
- package/dist/lib/model_field_value/converters/basic_converter.js.map +0 -1
- package/dist/lib/model_field_value/converters/enum_converter.d.ts +0 -49
- package/dist/lib/model_field_value/converters/enum_converter.js +0 -51
- package/dist/lib/model_field_value/converters/enum_converter.js.map +0 -1
- package/dist/lib/model_field_value/converters/model_counter_converter.d.ts +0 -49
- package/dist/lib/model_field_value/converters/model_counter_converter.js +0 -216
- package/dist/lib/model_field_value/converters/model_counter_converter.js.map +0 -1
- package/dist/lib/model_field_value/converters/model_date_converter.d.ts +0 -49
- package/dist/lib/model_field_value/converters/model_date_converter.js +0 -271
- package/dist/lib/model_field_value/converters/model_date_converter.js.map +0 -1
- package/dist/lib/model_field_value/converters/model_date_range_converter.d.ts +0 -49
- package/dist/lib/model_field_value/converters/model_date_range_converter.js +0 -225
- package/dist/lib/model_field_value/converters/model_date_range_converter.js.map +0 -1
- package/dist/lib/model_field_value/converters/model_geo_value_converter.d.ts +0 -49
- package/dist/lib/model_field_value/converters/model_geo_value_converter.js +0 -216
- package/dist/lib/model_field_value/converters/model_geo_value_converter.js.map +0 -1
- package/dist/lib/model_field_value/converters/model_image_uri_converter.d.ts +0 -49
- package/dist/lib/model_field_value/converters/model_image_uri_converter.js +0 -184
- package/dist/lib/model_field_value/converters/model_image_uri_converter.js.map +0 -1
- package/dist/lib/model_field_value/converters/model_locale_converter.d.ts +0 -51
- package/dist/lib/model_field_value/converters/model_locale_converter.js +0 -228
- package/dist/lib/model_field_value/converters/model_locale_converter.js.map +0 -1
- package/dist/lib/model_field_value/converters/model_localized_value_converter.d.ts +0 -49
- package/dist/lib/model_field_value/converters/model_localized_value_converter.js +0 -145
- package/dist/lib/model_field_value/converters/model_localized_value_converter.js.map +0 -1
- package/dist/lib/model_field_value/converters/model_ref_base_converter.d.ts +0 -49
- package/dist/lib/model_field_value/converters/model_ref_base_converter.js +0 -159
- package/dist/lib/model_field_value/converters/model_ref_base_converter.js.map +0 -1
- package/dist/lib/model_field_value/converters/model_search_converter.d.ts +0 -49
- package/dist/lib/model_field_value/converters/model_search_converter.js +0 -138
- package/dist/lib/model_field_value/converters/model_search_converter.js.map +0 -1
- package/dist/lib/model_field_value/converters/model_server_command_base_converter.d.ts +0 -49
- package/dist/lib/model_field_value/converters/model_server_command_base_converter.js +0 -119
- package/dist/lib/model_field_value/converters/model_server_command_base_converter.js.map +0 -1
- package/dist/lib/model_field_value/converters/model_time_converter.d.ts +0 -49
- package/dist/lib/model_field_value/converters/model_time_converter.js +0 -271
- package/dist/lib/model_field_value/converters/model_time_converter.js.map +0 -1
- package/dist/lib/model_field_value/converters/model_time_range_converter.d.ts +0 -49
- package/dist/lib/model_field_value/converters/model_time_range_converter.js +0 -225
- package/dist/lib/model_field_value/converters/model_time_range_converter.js.map +0 -1
- package/dist/lib/model_field_value/converters/model_timestamp_converter.d.ts +0 -66
- package/dist/lib/model_field_value/converters/model_timestamp_converter.js +0 -297
- package/dist/lib/model_field_value/converters/model_timestamp_converter.js.map +0 -1
- package/dist/lib/model_field_value/converters/model_timestamp_range_converter.d.ts +0 -49
- package/dist/lib/model_field_value/converters/model_timestamp_range_converter.js +0 -225
- package/dist/lib/model_field_value/converters/model_timestamp_range_converter.js.map +0 -1
- package/dist/lib/model_field_value/converters/model_token_converter.d.ts +0 -48
- package/dist/lib/model_field_value/converters/model_token_converter.js +0 -137
- package/dist/lib/model_field_value/converters/model_token_converter.js.map +0 -1
- package/dist/lib/model_field_value/converters/model_uri_converter.d.ts +0 -49
- package/dist/lib/model_field_value/converters/model_uri_converter.js +0 -184
- package/dist/lib/model_field_value/converters/model_uri_converter.js.map +0 -1
- package/dist/lib/model_field_value/converters/model_vector_value_converter.d.ts +0 -49
- package/dist/lib/model_field_value/converters/model_vector_value_converter.js +0 -125
- package/dist/lib/model_field_value/converters/model_vector_value_converter.js.map +0 -1
- package/dist/lib/model_field_value/converters/model_video_uri_converter.d.ts +0 -49
- package/dist/lib/model_field_value/converters/model_video_uri_converter.js +0 -184
- package/dist/lib/model_field_value/converters/model_video_uri_converter.js.map +0 -1
- package/dist/lib/model_field_value/converters/null_converter.d.ts +0 -49
- package/dist/lib/model_field_value/converters/null_converter.js +0 -72
- package/dist/lib/model_field_value/converters/null_converter.js.map +0 -1
- package/dist/lib/model_field_value/default_model_field_value_converter.d.ts +0 -155
- package/dist/lib/model_field_value/default_model_field_value_converter.js +0 -303
- package/dist/lib/model_field_value/default_model_field_value_converter.js.map +0 -1
- package/dist/lib/model_field_value/model_field_value.d.ts +0 -467
- package/dist/lib/model_field_value/model_field_value.js +0 -665
- package/dist/lib/model_field_value/model_field_value.js.map +0 -1
- package/dist/lib/model_field_value/model_field_value_converter.d.ts +0 -117
- package/dist/lib/model_field_value/model_field_value_converter.js +0 -49
- package/dist/lib/model_field_value/model_field_value_converter.js.map +0 -1
- package/dist/lib/regions.d.ts +0 -6
- package/dist/lib/regions.js +0 -3
- package/dist/lib/regions.js.map +0 -1
- package/dist/lib/src/call_process_function_base.d.ts +0 -39
- package/dist/lib/src/call_process_function_base.js +0 -72
- package/dist/lib/src/call_process_function_base.js.map +0 -1
- package/dist/lib/src/firebase_loader.d.ts +0 -30
- package/dist/lib/src/firebase_loader.js +0 -96
- package/dist/lib/src/firebase_loader.js.map +0 -1
- package/dist/lib/src/firestore_base.d.ts +0 -114
- package/dist/lib/src/firestore_base.js +0 -363
- package/dist/lib/src/firestore_base.js.map +0 -1
- package/dist/lib/src/firestore_triggered_process_function_base.d.ts +0 -40
- package/dist/lib/src/firestore_triggered_process_function_base.js +0 -72
- package/dist/lib/src/firestore_triggered_process_function_base.js.map +0 -1
- package/dist/lib/src/functions_base.d.ts +0 -327
- package/dist/lib/src/functions_base.js +0 -63
- package/dist/lib/src/functions_base.js.map +0 -1
- package/dist/lib/src/functions_data.d.ts +0 -10
- package/dist/lib/src/functions_data.js +0 -19
- package/dist/lib/src/functions_data.js.map +0 -1
- package/dist/lib/src/request_process_function_base.d.ts +0 -39
- package/dist/lib/src/request_process_function_base.js +0 -70
- package/dist/lib/src/request_process_function_base.js.map +0 -1
- package/dist/lib/src/request_process_workders_base.d.ts +0 -37
- package/dist/lib/src/request_process_workders_base.js +0 -27
- package/dist/lib/src/request_process_workders_base.js.map +0 -1
- package/dist/lib/src/schedule_process_function_base.d.ts +0 -33
- package/dist/lib/src/schedule_process_function_base.js +0 -71
- package/dist/lib/src/schedule_process_function_base.js.map +0 -1
- package/dist/lib/src/sql_api_base.d.ts +0 -185
- package/dist/lib/src/sql_api_base.js +0 -83
- package/dist/lib/src/sql_api_base.js.map +0 -1
- package/dist/lib/src/workers_base.d.ts +0 -74
- package/dist/lib/src/workers_base.js +0 -57
- package/dist/lib/src/workers_base.js.map +0 -1
- package/dist/lib/src/workers_data.d.ts +0 -10
- package/dist/lib/src/workers_data.js +0 -21
- package/dist/lib/src/workers_data.js.map +0 -1
- package/dist/lib/utils.d.ts +0 -82
- package/dist/lib/utils.js +0 -141
- package/dist/lib/utils.js.map +0 -1
- package/dist/workers/test.d.ts +0 -1
- package/dist/workers/test.js +0 -14
- package/dist/workers/test.js.map +0 -1
- package/dist/workers/turso.d.ts +0 -1
- package/dist/workers/turso.js +0 -50
- package/dist/workers/turso.js.map +0 -1
- package/dist/workers/turso_token.d.ts +0 -1
- package/dist/workers/turso_token.js +0 -40
- package/dist/workers/turso_token.js.map +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
## 3.4.1 (2026-07-04)
|
|
2
2
|
|
|
3
3
|
|
|
4
4
|
### chore
|
|
@@ -58,6 +58,7 @@
|
|
|
58
58
|
* Remove comments ([eb83a5f](https://github.com/mathrunet/node_masamune/commit/eb83a5f6fdc1d8c6a03ce691cf11e8d3fbfdb85e))
|
|
59
59
|
* Scrutinize log output ([5eaa4a2](https://github.com/mathrunet/node_masamune/commit/5eaa4a2042f8b714b3f48e44cc44c8f86549212e))
|
|
60
60
|
* Update @mathrunet/katana to version 3.9.1 ([d8e32a1](https://github.com/mathrunet/node_masamune/commit/d8e32a1f238ed3b29003bd83799fde57a054c063))
|
|
61
|
+
* update @mathrunet/masamune dependency version to 3.10.4 across multiple packages ([f62e636](https://github.com/mathrunet/node_masamune/commit/f62e6367ddf48e513c523b8970b4fdc5b4e31152))
|
|
61
62
|
* Update Masamune package to version 3.8.3 ([8e8155e](https://github.com/mathrunet/node_masamune/commit/8e8155e3380f05fb05abdb087c9bfff0b05c1795))
|
|
62
63
|
* Update masamune package version ([f4998d6](https://github.com/mathrunet/node_masamune/commit/f4998d654dee28f2f12c5d2d8b9c861563825dbd))
|
|
63
64
|
* Update Node.js engine to v22 and bump development dependencies across packages. ([d840a0f](https://github.com/mathrunet/node_masamune/commit/d840a0f503230f80edbdf01f9516841cff36798d))
|
|
@@ -344,10 +345,17 @@
|
|
|
344
345
|
|
|
345
346
|
### refactor
|
|
346
347
|
|
|
348
|
+
* enhance Google token functionality for Cloudflare Workers ([bb4b4bc](https://github.com/mathrunet/node_masamune/commit/bb4b4bc7bceec4064c5bcd01066d93b1b636b69f))
|
|
349
|
+
* enhance media processing for Cloudflare Workers ([7d76e68](https://github.com/mathrunet/node_masamune/commit/7d76e68f93f89321492aa1716e778e5f4a869afc))
|
|
350
|
+
* enhance notification functionality for Cloudflare Workers ([04c14c6](https://github.com/mathrunet/node_masamune/commit/04c14c62f0195ab36ccb4df21efebbd410259e84))
|
|
351
|
+
* enhance SendGrid integration for Cloudflare Workers ([60f9976](https://github.com/mathrunet/node_masamune/commit/60f997643c223c74d9f2344d79e91d2337e4018f))
|
|
347
352
|
* Remove debug log statements from FirestoreNullConverter ([b110a47](https://github.com/mathrunet/node_masamune/commit/b110a47faac178d79e4810221a0c89a943417f59))
|
|
348
353
|
* Remove various cloud functions and tests, and add new tests for short video generation functionality. ([b5a2f34](https://github.com/mathrunet/node_masamune/commit/b5a2f34d474218c76cb25fdc1f6c0fe3b6c13413))
|
|
349
354
|
* restructure database rules for improved clarity and consistency ([b541875](https://github.com/mathrunet/node_masamune/commit/b5418755495ef5340657e532466659e5f3c8cf82))
|
|
350
355
|
* Save the interface to a separate file. ([141f8bd](https://github.com/mathrunet/node_masamune/commit/141f8bdf6b06538de2512e52b7fedb58366c4e8b))
|
|
356
|
+
* update Android token functions for Cloudflare Workers integration ([f3d602e](https://github.com/mathrunet/node_masamune/commit/f3d602ec1ac846471217d150ffcf166771f8f247))
|
|
357
|
+
* update Cloudflare purchase functions for improved handling ([f4d1a20](https://github.com/mathrunet/node_masamune/commit/f4d1a2038a15f162d1df6b3558fe8300e09a3d78))
|
|
358
|
+
* update geocoding functionality for Cloudflare Workers ([1398cc6](https://github.com/mathrunet/node_masamune/commit/1398cc6fa73e0474a39c1bd7f1d718398b91367a))
|
|
351
359
|
|
|
352
360
|
### test
|
|
353
361
|
|
|
@@ -360,6 +368,7 @@
|
|
|
360
368
|
* Creating tests. ([2a91c82](https://github.com/mathrunet/node_masamune/commit/2a91c824c4cf584fac10f9ac61d9bf4f103c5196))
|
|
361
369
|
* Extend the timeout for the short video generation test. ([9e46c82](https://github.com/mathrunet/node_masamune/commit/9e46c828c791d933b32344842e63830782aa0fa5))
|
|
362
370
|
* Fixes to pass tests. ([a656689](https://github.com/mathrunet/node_masamune/commit/a6566898613d76cd1027a319cda4f605044db151))
|
|
371
|
+
* refactor media tests for Cloudflare integration ([7b1e581](https://github.com/mathrunet/node_masamune/commit/7b1e5816b297d68ba5c28599b5cfb7fa935a70f4))
|
|
363
372
|
* Test code implementation. ([7f40834](https://github.com/mathrunet/node_masamune/commit/7f40834936b13a1b54b792b1c47f7c1ae2319502))
|
|
364
373
|
|
|
365
374
|
|
package/dist/index.d.ts
CHANGED
|
@@ -11,5 +11,6 @@
|
|
|
11
11
|
export * from "@mathrunet/masamune";
|
|
12
12
|
export * from "@mathrunet/masamune_cloudflare";
|
|
13
13
|
export * from "./functions";
|
|
14
|
+
export * from "./lib/database_adapter";
|
|
14
15
|
export type { RulesAccessRule, RulesConfig, RulesEntry, RulesOperation, RulesOperationAlias, RulesOperationKey, } from "./lib/types";
|
|
15
16
|
export * from "./lib/types";
|
package/dist/index.js
CHANGED
|
@@ -27,5 +27,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
27
27
|
__exportStar(require("@mathrunet/masamune"), exports);
|
|
28
28
|
__exportStar(require("@mathrunet/masamune_cloudflare"), exports);
|
|
29
29
|
__exportStar(require("./functions"), exports);
|
|
30
|
+
__exportStar(require("./lib/database_adapter"), exports);
|
|
30
31
|
__exportStar(require("./lib/types"), exports);
|
|
31
32
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA;;;;;;;;;GASG;AACH,sDAAoC;AACpC,iEAA+C;AAC/C,8CAA4B;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA;;;;;;;;;GASG;AACH,sDAAoC;AACpC,iEAA+C;AAC/C,8CAA4B;AAC5B,yDAAuC;AASvC,8CAA4B"}
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
import { DatabaseAdapterBase, DatabaseDocument, DatabaseQueryResult, DatabaseWhereCondition } from "@mathrunet/masamune_cloudflare";
|
|
2
|
+
import { TursoClient } from "./turso_client";
|
|
3
|
+
import { TursoWorkersOptions } from "./types";
|
|
4
|
+
/**
|
|
5
|
+
* [DatabaseAdapterBase] implementation for Turso.
|
|
6
|
+
*
|
|
7
|
+
* Maps Firestore-style document paths to SQL tables. Collection names in the path are joined with `__` to form the table name, and document IDs are stored in the `id` / `parent_id` columns.
|
|
8
|
+
*
|
|
9
|
+
* e.g. `user/{uid}` -> table `user` (id = uid), `user/{uid}/transaction/{tid}` -> table `user__transaction` (id = tid, parent_id = uid)
|
|
10
|
+
*
|
|
11
|
+
* Turso用の[DatabaseAdapterBase]の実装。
|
|
12
|
+
*
|
|
13
|
+
* FirestoreスタイルのドキュメントパスをSQLテーブルにマッピングします。パス内のコレクション名は`__`で連結されてテーブル名になり、ドキュメントIDは`id`/`parent_id`カラムに保存されます。
|
|
14
|
+
*
|
|
15
|
+
* 例: `user/{uid}` -> テーブル`user`(id = uid)、`user/{uid}/transaction/{tid}` -> テーブル`user__transaction`(id = tid、parent_id = uid)
|
|
16
|
+
*/
|
|
17
|
+
export declare class TursoDatabaseAdapter extends DatabaseAdapterBase {
|
|
18
|
+
/**
|
|
19
|
+
* [DatabaseAdapterBase] implementation for Turso.
|
|
20
|
+
*
|
|
21
|
+
* Turso用の[DatabaseAdapterBase]の実装。
|
|
22
|
+
*
|
|
23
|
+
* @param config.options
|
|
24
|
+
* Turso connection options (organization, group, platformApiToken, etc.).
|
|
25
|
+
*
|
|
26
|
+
* Tursoの接続オプション(organization、group、platformApiTokenなど)。
|
|
27
|
+
*
|
|
28
|
+
* @param config.database
|
|
29
|
+
* Logical database name (default: `main`).
|
|
30
|
+
*
|
|
31
|
+
* 論理データベース名(デフォルト: `main`)。
|
|
32
|
+
*
|
|
33
|
+
* @param config.client
|
|
34
|
+
* Directly injected Turso client. Used for testing or when the connection has already been resolved.
|
|
35
|
+
*
|
|
36
|
+
* 直接注入するTursoクライアント。テスト用、または接続が既に解決されている場合に使用します。
|
|
37
|
+
*/
|
|
38
|
+
constructor({ options, database, client, }: {
|
|
39
|
+
options?: TursoWorkersOptions | undefined;
|
|
40
|
+
database?: string | undefined;
|
|
41
|
+
client?: TursoClient | undefined;
|
|
42
|
+
});
|
|
43
|
+
/**
|
|
44
|
+
* Turso connection options.
|
|
45
|
+
*
|
|
46
|
+
* Tursoの接続オプション。
|
|
47
|
+
*/
|
|
48
|
+
readonly options: TursoWorkersOptions;
|
|
49
|
+
/**
|
|
50
|
+
* Logical database name.
|
|
51
|
+
*
|
|
52
|
+
* 論理データベース名。
|
|
53
|
+
*/
|
|
54
|
+
readonly database: string;
|
|
55
|
+
private _client;
|
|
56
|
+
private client;
|
|
57
|
+
private resolveOptions;
|
|
58
|
+
getDocument(path: string): Promise<DatabaseDocument | null>;
|
|
59
|
+
saveDocument(path: string, data: {
|
|
60
|
+
[key: string]: any;
|
|
61
|
+
}, options?: {
|
|
62
|
+
merge?: boolean | undefined;
|
|
63
|
+
}): Promise<void>;
|
|
64
|
+
query(collectionPath: string, options?: {
|
|
65
|
+
wheres?: DatabaseWhereCondition[] | undefined;
|
|
66
|
+
limit?: number | undefined;
|
|
67
|
+
cursor?: string | null | undefined;
|
|
68
|
+
}): Promise<DatabaseQueryResult>;
|
|
69
|
+
private loadExistingRow;
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Parse a document path into a table name, document ID and parent document ID.
|
|
73
|
+
*
|
|
74
|
+
* ドキュメントパスをテーブル名、ドキュメントID、親ドキュメントIDにパースします。
|
|
75
|
+
*/
|
|
76
|
+
export declare function parseDocumentPath(path: string): {
|
|
77
|
+
table: string;
|
|
78
|
+
id: string;
|
|
79
|
+
parentId: string;
|
|
80
|
+
};
|
|
81
|
+
/**
|
|
82
|
+
* Parse a collection path into a table name and parent document ID.
|
|
83
|
+
*
|
|
84
|
+
* コレクションパスをテーブル名と親ドキュメントIDにパースします。
|
|
85
|
+
*/
|
|
86
|
+
export declare function parseCollectionPath(path: string): {
|
|
87
|
+
table: string;
|
|
88
|
+
parentId: string;
|
|
89
|
+
};
|
|
90
|
+
/**
|
|
91
|
+
* Encode a field key into a column name.
|
|
92
|
+
*
|
|
93
|
+
* Keys starting with `@` (e.g. `@time`, `@uid`) are prefixed with `mf_at_` because they cannot be used as SQL identifiers.
|
|
94
|
+
*
|
|
95
|
+
* フィールドキーをカラム名にエンコードします。
|
|
96
|
+
*
|
|
97
|
+
* `@`で始まるキー(例: `@time`、`@uid`)はSQL識別子として使用できないため、`mf_at_`のプレフィックスが付けられます。
|
|
98
|
+
*/
|
|
99
|
+
export declare function encodeColumnName(key: string): string;
|
|
100
|
+
/**
|
|
101
|
+
* Decode a column name back into a field key.
|
|
102
|
+
*
|
|
103
|
+
* カラム名をフィールドキーにデコードします。
|
|
104
|
+
*/
|
|
105
|
+
export declare function decodeColumnName(column: string): string;
|
|
@@ -0,0 +1,356 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.TursoDatabaseAdapter = void 0;
|
|
4
|
+
exports.parseDocumentPath = parseDocumentPath;
|
|
5
|
+
exports.parseCollectionPath = parseCollectionPath;
|
|
6
|
+
exports.encodeColumnName = encodeColumnName;
|
|
7
|
+
exports.decodeColumnName = decodeColumnName;
|
|
8
|
+
const masamune_cloudflare_1 = require("@mathrunet/masamune_cloudflare");
|
|
9
|
+
const request_1 = require("./request");
|
|
10
|
+
const schema_1 = require("./schema");
|
|
11
|
+
const turso_client_1 = require("./turso_client");
|
|
12
|
+
const reservedColumns = new Set(["id", "parent_id", "created_at", "updated_at"]);
|
|
13
|
+
const atMarkColumnPrefix = "mf_at_";
|
|
14
|
+
/**
|
|
15
|
+
* [DatabaseAdapterBase] implementation for Turso.
|
|
16
|
+
*
|
|
17
|
+
* Maps Firestore-style document paths to SQL tables. Collection names in the path are joined with `__` to form the table name, and document IDs are stored in the `id` / `parent_id` columns.
|
|
18
|
+
*
|
|
19
|
+
* e.g. `user/{uid}` -> table `user` (id = uid), `user/{uid}/transaction/{tid}` -> table `user__transaction` (id = tid, parent_id = uid)
|
|
20
|
+
*
|
|
21
|
+
* Turso用の[DatabaseAdapterBase]の実装。
|
|
22
|
+
*
|
|
23
|
+
* FirestoreスタイルのドキュメントパスをSQLテーブルにマッピングします。パス内のコレクション名は`__`で連結されてテーブル名になり、ドキュメントIDは`id`/`parent_id`カラムに保存されます。
|
|
24
|
+
*
|
|
25
|
+
* 例: `user/{uid}` -> テーブル`user`(id = uid)、`user/{uid}/transaction/{tid}` -> テーブル`user__transaction`(id = tid、parent_id = uid)
|
|
26
|
+
*/
|
|
27
|
+
class TursoDatabaseAdapter extends masamune_cloudflare_1.DatabaseAdapterBase {
|
|
28
|
+
/**
|
|
29
|
+
* [DatabaseAdapterBase] implementation for Turso.
|
|
30
|
+
*
|
|
31
|
+
* Turso用の[DatabaseAdapterBase]の実装。
|
|
32
|
+
*
|
|
33
|
+
* @param config.options
|
|
34
|
+
* Turso connection options (organization, group, platformApiToken, etc.).
|
|
35
|
+
*
|
|
36
|
+
* Tursoの接続オプション(organization、group、platformApiTokenなど)。
|
|
37
|
+
*
|
|
38
|
+
* @param config.database
|
|
39
|
+
* Logical database name (default: `main`).
|
|
40
|
+
*
|
|
41
|
+
* 論理データベース名(デフォルト: `main`)。
|
|
42
|
+
*
|
|
43
|
+
* @param config.client
|
|
44
|
+
* Directly injected Turso client. Used for testing or when the connection has already been resolved.
|
|
45
|
+
*
|
|
46
|
+
* 直接注入するTursoクライアント。テスト用、または接続が既に解決されている場合に使用します。
|
|
47
|
+
*/
|
|
48
|
+
constructor({ options, database, client, }) {
|
|
49
|
+
super();
|
|
50
|
+
this.options = options ?? {};
|
|
51
|
+
this.database = database ?? "main";
|
|
52
|
+
this._client = client ?? null;
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Turso connection options.
|
|
56
|
+
*
|
|
57
|
+
* Tursoの接続オプション。
|
|
58
|
+
*/
|
|
59
|
+
options;
|
|
60
|
+
/**
|
|
61
|
+
* Logical database name.
|
|
62
|
+
*
|
|
63
|
+
* 論理データベース名。
|
|
64
|
+
*/
|
|
65
|
+
database;
|
|
66
|
+
_client;
|
|
67
|
+
async client() {
|
|
68
|
+
if (this._client) {
|
|
69
|
+
return this._client;
|
|
70
|
+
}
|
|
71
|
+
const connection = await (0, turso_client_1.resolveDatabaseConnection)(this.database, this.resolveOptions());
|
|
72
|
+
this._client = (0, turso_client_1.createTursoClient)(connection);
|
|
73
|
+
return this._client;
|
|
74
|
+
}
|
|
75
|
+
// 接続時にオプションを解決します。オプションで指定されていない項目は
|
|
76
|
+
// `process.env`(nodejs_compatで注入されるWorkersシークレット)から補完します。
|
|
77
|
+
resolveOptions() {
|
|
78
|
+
const env = typeof process !== "undefined" ? process.env ?? {} : {};
|
|
79
|
+
return {
|
|
80
|
+
...this.options,
|
|
81
|
+
organization: firstNonEmptyValue(this.options.organization, env["TURSO_ORGANIZATION"]),
|
|
82
|
+
group: firstNonEmptyValue(this.options.group, env["TURSO_GROUP"]),
|
|
83
|
+
platformApiToken: firstNonEmptyValue(this.options.platformApiToken, env["TURSO_PLATFORM_API_TOKEN"]),
|
|
84
|
+
};
|
|
85
|
+
}
|
|
86
|
+
async getDocument(path) {
|
|
87
|
+
const { table, id, parentId } = parseDocumentPath(path);
|
|
88
|
+
const client = await this.client();
|
|
89
|
+
let result;
|
|
90
|
+
try {
|
|
91
|
+
result = await client.execute({
|
|
92
|
+
sql: `SELECT * FROM ${(0, schema_1.quoteIdentifier)(table)} WHERE id = ? AND parent_id = ? LIMIT 1`,
|
|
93
|
+
args: [id, parentId],
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
catch (error) {
|
|
97
|
+
if (isMissingTableError(error)) {
|
|
98
|
+
return null;
|
|
99
|
+
}
|
|
100
|
+
throw error;
|
|
101
|
+
}
|
|
102
|
+
const row = result.rows[0];
|
|
103
|
+
if (row === undefined) {
|
|
104
|
+
return null;
|
|
105
|
+
}
|
|
106
|
+
return {
|
|
107
|
+
path: path,
|
|
108
|
+
data: decodeDocumentData((0, schema_1.decodeRow)(row, result.columns)),
|
|
109
|
+
};
|
|
110
|
+
}
|
|
111
|
+
async saveDocument(path, data, options) {
|
|
112
|
+
const { table, id, parentId } = parseDocumentPath(path);
|
|
113
|
+
const merge = options?.merge ?? false;
|
|
114
|
+
const client = await this.client();
|
|
115
|
+
const existing = await this.loadExistingRow(client, table, id, parentId);
|
|
116
|
+
const now = Date.now();
|
|
117
|
+
const row = merge && existing ? { ...existing } : {};
|
|
118
|
+
for (const [key, value] of Object.entries(data)) {
|
|
119
|
+
const column = encodeColumnName(key);
|
|
120
|
+
if (value instanceof masamune_cloudflare_1.DatabaseIncrement) {
|
|
121
|
+
const current = row[column] ?? existing?.[column];
|
|
122
|
+
const base = typeof current === "number" ? current : Number(current ?? 0);
|
|
123
|
+
row[column] = (Number.isFinite(base) ? base : 0) + value.value;
|
|
124
|
+
}
|
|
125
|
+
else {
|
|
126
|
+
row[column] = value;
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
delete row["id"];
|
|
130
|
+
delete row["parent_id"];
|
|
131
|
+
const createdAt = existing?.["created_at"];
|
|
132
|
+
row["id"] = id;
|
|
133
|
+
row["parent_id"] = parentId;
|
|
134
|
+
row["created_at"] = typeof createdAt === "number" ? createdAt : now;
|
|
135
|
+
row["updated_at"] = now;
|
|
136
|
+
await (0, schema_1.ensureTableSchema)({
|
|
137
|
+
client,
|
|
138
|
+
table,
|
|
139
|
+
value: row,
|
|
140
|
+
autoCreateTable: this.options.autoCreateTable ?? true,
|
|
141
|
+
autoMigrateAddColumns: this.options.autoMigrateAddColumns ?? true,
|
|
142
|
+
});
|
|
143
|
+
const keys = Object.keys(row);
|
|
144
|
+
const placeholders = keys.map(() => "?").join(", ");
|
|
145
|
+
await client.execute({
|
|
146
|
+
sql: `INSERT OR REPLACE INTO ${(0, schema_1.quoteIdentifier)(table)} ` +
|
|
147
|
+
`(${keys.map(schema_1.quoteIdentifier).join(", ")}) VALUES (${placeholders})`,
|
|
148
|
+
args: keys.map((key) => (0, schema_1.encodeSqlValue)(row[key])),
|
|
149
|
+
});
|
|
150
|
+
}
|
|
151
|
+
async query(collectionPath, options) {
|
|
152
|
+
const { table, parentId } = parseCollectionPath(collectionPath);
|
|
153
|
+
const client = await this.client();
|
|
154
|
+
const clauses = ["parent_id = ?"];
|
|
155
|
+
const args = [parentId];
|
|
156
|
+
for (const where of options?.wheres ?? []) {
|
|
157
|
+
const built = buildWhereCondition(where);
|
|
158
|
+
clauses.push(built.sql);
|
|
159
|
+
args.push(...built.args);
|
|
160
|
+
}
|
|
161
|
+
if (options?.cursor) {
|
|
162
|
+
clauses.push("id > ?");
|
|
163
|
+
args.push(options.cursor);
|
|
164
|
+
}
|
|
165
|
+
const limit = options?.limit && options.limit > 0 ? ` LIMIT ${options.limit}` : "";
|
|
166
|
+
let result;
|
|
167
|
+
try {
|
|
168
|
+
result = await client.execute({
|
|
169
|
+
sql: `SELECT * FROM ${(0, schema_1.quoteIdentifier)(table)} WHERE ${clauses.join(" AND ")} ORDER BY id ASC${limit}`,
|
|
170
|
+
args,
|
|
171
|
+
});
|
|
172
|
+
}
|
|
173
|
+
catch (error) {
|
|
174
|
+
if (isMissingTableError(error)) {
|
|
175
|
+
return { docs: [], cursor: null };
|
|
176
|
+
}
|
|
177
|
+
throw error;
|
|
178
|
+
}
|
|
179
|
+
const docs = result.rows.map((row) => {
|
|
180
|
+
const decoded = (0, schema_1.decodeRow)(row, result.columns);
|
|
181
|
+
const id = String(decoded["id"] ?? "");
|
|
182
|
+
return {
|
|
183
|
+
path: `${collectionPath}/${id}`,
|
|
184
|
+
data: decodeDocumentData(decoded),
|
|
185
|
+
};
|
|
186
|
+
});
|
|
187
|
+
const cursor = options?.limit && docs.length >= options.limit
|
|
188
|
+
? String(docs[docs.length - 1].path.split("/").pop() ?? "")
|
|
189
|
+
: null;
|
|
190
|
+
return { docs, cursor };
|
|
191
|
+
}
|
|
192
|
+
async loadExistingRow(client, table, id, parentId) {
|
|
193
|
+
try {
|
|
194
|
+
const result = await client.execute({
|
|
195
|
+
sql: `SELECT * FROM ${(0, schema_1.quoteIdentifier)(table)} WHERE id = ? AND parent_id = ? LIMIT 1`,
|
|
196
|
+
args: [id, parentId],
|
|
197
|
+
});
|
|
198
|
+
const row = result.rows[0];
|
|
199
|
+
if (row === undefined) {
|
|
200
|
+
return null;
|
|
201
|
+
}
|
|
202
|
+
return (0, schema_1.decodeRow)(row, result.columns);
|
|
203
|
+
}
|
|
204
|
+
catch (error) {
|
|
205
|
+
if (isMissingTableError(error)) {
|
|
206
|
+
return null;
|
|
207
|
+
}
|
|
208
|
+
throw error;
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
}
|
|
212
|
+
exports.TursoDatabaseAdapter = TursoDatabaseAdapter;
|
|
213
|
+
/**
|
|
214
|
+
* Parse a document path into a table name, document ID and parent document ID.
|
|
215
|
+
*
|
|
216
|
+
* ドキュメントパスをテーブル名、ドキュメントID、親ドキュメントIDにパースします。
|
|
217
|
+
*/
|
|
218
|
+
function parseDocumentPath(path) {
|
|
219
|
+
const segments = splitPath(path);
|
|
220
|
+
if (segments.length < 2 || segments.length % 2 !== 0) {
|
|
221
|
+
throw new request_1.HttpError(400, `Invalid document path: ${path}`);
|
|
222
|
+
}
|
|
223
|
+
const collections = [];
|
|
224
|
+
const documentIds = [];
|
|
225
|
+
for (let i = 0; i < segments.length; i += 2) {
|
|
226
|
+
collections.push(segments[i]);
|
|
227
|
+
documentIds.push(segments[i + 1]);
|
|
228
|
+
}
|
|
229
|
+
return {
|
|
230
|
+
table: collections.join("__"),
|
|
231
|
+
id: documentIds[documentIds.length - 1],
|
|
232
|
+
parentId: documentIds.length > 1 ? documentIds[documentIds.length - 2] : "",
|
|
233
|
+
};
|
|
234
|
+
}
|
|
235
|
+
/**
|
|
236
|
+
* Parse a collection path into a table name and parent document ID.
|
|
237
|
+
*
|
|
238
|
+
* コレクションパスをテーブル名と親ドキュメントIDにパースします。
|
|
239
|
+
*/
|
|
240
|
+
function parseCollectionPath(path) {
|
|
241
|
+
const segments = splitPath(path);
|
|
242
|
+
if (segments.length < 1 || segments.length % 2 !== 1) {
|
|
243
|
+
throw new request_1.HttpError(400, `Invalid collection path: ${path}`);
|
|
244
|
+
}
|
|
245
|
+
const collections = [];
|
|
246
|
+
let parentId = "";
|
|
247
|
+
for (let i = 0; i < segments.length; i += 2) {
|
|
248
|
+
collections.push(segments[i]);
|
|
249
|
+
if (i > 0) {
|
|
250
|
+
parentId = segments[i - 1];
|
|
251
|
+
}
|
|
252
|
+
}
|
|
253
|
+
return {
|
|
254
|
+
table: collections.join("__"),
|
|
255
|
+
parentId,
|
|
256
|
+
};
|
|
257
|
+
}
|
|
258
|
+
/**
|
|
259
|
+
* Encode a field key into a column name.
|
|
260
|
+
*
|
|
261
|
+
* Keys starting with `@` (e.g. `@time`, `@uid`) are prefixed with `mf_at_` because they cannot be used as SQL identifiers.
|
|
262
|
+
*
|
|
263
|
+
* フィールドキーをカラム名にエンコードします。
|
|
264
|
+
*
|
|
265
|
+
* `@`で始まるキー(例: `@time`、`@uid`)はSQL識別子として使用できないため、`mf_at_`のプレフィックスが付けられます。
|
|
266
|
+
*/
|
|
267
|
+
function encodeColumnName(key) {
|
|
268
|
+
if (key.startsWith("@")) {
|
|
269
|
+
return `${atMarkColumnPrefix}${key.substring(1)}`;
|
|
270
|
+
}
|
|
271
|
+
return key;
|
|
272
|
+
}
|
|
273
|
+
/**
|
|
274
|
+
* Decode a column name back into a field key.
|
|
275
|
+
*
|
|
276
|
+
* カラム名をフィールドキーにデコードします。
|
|
277
|
+
*/
|
|
278
|
+
function decodeColumnName(column) {
|
|
279
|
+
if (column.startsWith(atMarkColumnPrefix)) {
|
|
280
|
+
return `@${column.substring(atMarkColumnPrefix.length)}`;
|
|
281
|
+
}
|
|
282
|
+
return column;
|
|
283
|
+
}
|
|
284
|
+
function firstNonEmptyValue(...values) {
|
|
285
|
+
return values.find((value) => typeof value === "string" && value.length > 0);
|
|
286
|
+
}
|
|
287
|
+
function splitPath(path) {
|
|
288
|
+
return path.split("/").map((segment) => segment.trim()).filter((segment) => segment.length > 0);
|
|
289
|
+
}
|
|
290
|
+
function decodeDocumentData(row) {
|
|
291
|
+
const data = {};
|
|
292
|
+
for (const [column, value] of Object.entries(row)) {
|
|
293
|
+
if (reservedColumns.has(column)) {
|
|
294
|
+
continue;
|
|
295
|
+
}
|
|
296
|
+
data[decodeColumnName(column)] = decodeStoredValue(value);
|
|
297
|
+
}
|
|
298
|
+
return data;
|
|
299
|
+
}
|
|
300
|
+
function decodeStoredValue(value) {
|
|
301
|
+
if (typeof value === "string") {
|
|
302
|
+
const trimmed = value.trim();
|
|
303
|
+
if ((trimmed.startsWith("{") && trimmed.endsWith("}")) ||
|
|
304
|
+
(trimmed.startsWith("[") && trimmed.endsWith("]"))) {
|
|
305
|
+
try {
|
|
306
|
+
return JSON.parse(trimmed);
|
|
307
|
+
}
|
|
308
|
+
catch {
|
|
309
|
+
return value;
|
|
310
|
+
}
|
|
311
|
+
}
|
|
312
|
+
}
|
|
313
|
+
return value;
|
|
314
|
+
}
|
|
315
|
+
function buildWhereCondition(condition) {
|
|
316
|
+
const column = (0, schema_1.quoteIdentifier)(encodeColumnName(condition.key));
|
|
317
|
+
switch (condition.type) {
|
|
318
|
+
case "equalTo":
|
|
319
|
+
return { sql: `${column} = ?`, args: [(0, schema_1.encodeSqlValue)(condition.value)] };
|
|
320
|
+
case "notEqualTo":
|
|
321
|
+
return { sql: `${column} != ?`, args: [(0, schema_1.encodeSqlValue)(condition.value)] };
|
|
322
|
+
case "lessThan":
|
|
323
|
+
return { sql: `${column} < ?`, args: [(0, schema_1.encodeSqlValue)(condition.value)] };
|
|
324
|
+
case "lessThanOrEqualTo":
|
|
325
|
+
return { sql: `${column} <= ?`, args: [(0, schema_1.encodeSqlValue)(condition.value)] };
|
|
326
|
+
case "greaterThan":
|
|
327
|
+
return { sql: `${column} > ?`, args: [(0, schema_1.encodeSqlValue)(condition.value)] };
|
|
328
|
+
case "greaterThanOrEqualTo":
|
|
329
|
+
return { sql: `${column} >= ?`, args: [(0, schema_1.encodeSqlValue)(condition.value)] };
|
|
330
|
+
case "whereIn":
|
|
331
|
+
case "whereNotIn": {
|
|
332
|
+
const values = condition.value;
|
|
333
|
+
if (!Array.isArray(values) || values.length === 0) {
|
|
334
|
+
throw new request_1.HttpError(400, `${condition.type} requires non-empty array.`);
|
|
335
|
+
}
|
|
336
|
+
return {
|
|
337
|
+
sql: `${column} ${condition.type === "whereNotIn" ? "NOT " : ""}IN (${values.map(() => "?").join(", ")})`,
|
|
338
|
+
args: values.map(schema_1.encodeSqlValue),
|
|
339
|
+
};
|
|
340
|
+
}
|
|
341
|
+
case "isNull":
|
|
342
|
+
return { sql: `${column} IS NULL`, args: [] };
|
|
343
|
+
case "isNotNull":
|
|
344
|
+
return { sql: `${column} IS NOT NULL`, args: [] };
|
|
345
|
+
case "arrayContains":
|
|
346
|
+
case "arrayContainsAny":
|
|
347
|
+
throw new request_1.HttpError(400, `${condition.type} is not supported by Turso SQL yet.`);
|
|
348
|
+
default:
|
|
349
|
+
throw new request_1.HttpError(400, `Unsupported where condition: ${condition.type}`);
|
|
350
|
+
}
|
|
351
|
+
}
|
|
352
|
+
function isMissingTableError(error) {
|
|
353
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
354
|
+
return message.includes("no such table");
|
|
355
|
+
}
|
|
356
|
+
//# sourceMappingURL=database_adapter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"database_adapter.js","sourceRoot":"","sources":["../../src/lib/database_adapter.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mathrunet/masamune_cloudflare_turso",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.4.1",
|
|
4
4
|
"description": "Server-side package of the Masamune framework for working with Turso via Cloudflare.",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -40,8 +40,8 @@
|
|
|
40
40
|
},
|
|
41
41
|
"homepage": "https://github.com/mathrunet/node_masamune#readme",
|
|
42
42
|
"dependencies": {
|
|
43
|
-
"@mathrunet/masamune": "^3.10.
|
|
44
|
-
"@mathrunet/masamune_cloudflare": "^3.1
|
|
43
|
+
"@mathrunet/masamune": "^3.10.4",
|
|
44
|
+
"@mathrunet/masamune_cloudflare": "^3.3.1",
|
|
45
45
|
"@tursodatabase/serverless": "^1.2.3",
|
|
46
46
|
"hono": "^4.12.27",
|
|
47
47
|
"typescript": "^5.9.2"
|
package/dist/functions/test.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
package/dist/functions/test.js
DELETED
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
-
var ownKeys = function(o) {
|
|
20
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
-
var ar = [];
|
|
22
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
-
return ar;
|
|
24
|
-
};
|
|
25
|
-
return ownKeys(o);
|
|
26
|
-
};
|
|
27
|
-
return function (mod) {
|
|
28
|
-
if (mod && mod.__esModule) return mod;
|
|
29
|
-
var result = {};
|
|
30
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
-
__setModuleDefault(result, mod);
|
|
32
|
-
return result;
|
|
33
|
-
};
|
|
34
|
-
})();
|
|
35
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
-
const functions = __importStar(require("firebase-functions/v2"));
|
|
37
|
-
const firebase_loader_1 = require("../lib/src/firebase_loader");
|
|
38
|
-
/**
|
|
39
|
-
* Endpoints for testing.
|
|
40
|
-
*
|
|
41
|
-
* テストを行うためのエンドポイントです。
|
|
42
|
-
*/
|
|
43
|
-
module.exports = (regions, options, data) => functions.https.onCall({
|
|
44
|
-
region: options.region ?? regions,
|
|
45
|
-
timeoutSeconds: options.timeoutSeconds,
|
|
46
|
-
memory: options.memory,
|
|
47
|
-
minInstances: options.minInstances,
|
|
48
|
-
concurrency: options.concurrency,
|
|
49
|
-
maxInstances: options.maxInstances,
|
|
50
|
-
serviceAccount: options?.serviceAccount ?? undefined,
|
|
51
|
-
enforceAppCheck: options.enforceAppCheck ?? undefined,
|
|
52
|
-
consumeAppCheckToken: options.consumeAppCheckToken ?? undefined,
|
|
53
|
-
}, async (query) => {
|
|
54
|
-
try {
|
|
55
|
-
const path = query.data.path;
|
|
56
|
-
if (!path) {
|
|
57
|
-
return {};
|
|
58
|
-
}
|
|
59
|
-
const firestoreDatabaseIds = options.firestoreDatabaseIds ?? [""];
|
|
60
|
-
for (const databaseId of firestoreDatabaseIds) {
|
|
61
|
-
const firestoreInstance = (0, firebase_loader_1.firestoreLoader)(databaseId);
|
|
62
|
-
const doc = await firestoreInstance.doc(path).load();
|
|
63
|
-
return { ...doc.data() };
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
catch (err) {
|
|
67
|
-
console.error(err);
|
|
68
|
-
throw err;
|
|
69
|
-
}
|
|
70
|
-
});
|
|
71
|
-
//# sourceMappingURL=test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"test.js","sourceRoot":"","sources":["../../src/functions/test.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,iEAAmD;AAEnD,gEAA6D;AAE7D;;;;GAIG;AACH,MAAM,CAAC,OAAO,GAAG,CACf,OAAiB,EACjB,OAA6B,EAC7B,IAA4B,EAC5B,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CACzB;IACE,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,OAAO;IACjC,cAAc,EAAE,OAAO,CAAC,cAAc;IACtC,MAAM,EAAE,OAAO,CAAC,MAAM;IACtB,YAAY,EAAE,OAAO,CAAC,YAAY;IAClC,WAAW,EAAE,OAAO,CAAC,WAAW;IAChC,YAAY,EAAE,OAAO,CAAC,YAAY;IAClC,cAAc,EAAE,OAAO,EAAE,cAAc,IAAI,SAAS;IACpD,eAAe,EAAE,OAAO,CAAC,eAAe,IAAI,SAAS;IACrD,oBAAoB,EAAE,OAAO,CAAC,oBAAoB,IAAI,SAAS;CAChE,EACD,KAAK,EAAE,KAAK,EAAE,EAAE;IACd,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;QAC7B,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,MAAM,oBAAoB,GAAG,OAAO,CAAC,oBAAoB,IAAI,CAAC,EAAE,CAAC,CAAC;QAClE,KAAK,MAAM,UAAU,IAAI,oBAAoB,EAAE,CAAC;YAC9C,MAAM,iBAAiB,GAAG,IAAA,iCAAe,EAAC,UAAU,CAAC,CAAC;YACtD,MAAM,GAAG,GAAG,MAAM,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;YACrD,OAAO,EAAE,GAAG,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC;QAC3B,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACnB,MAAM,GAAG,CAAC;IACZ,CAAC;AACH,CAAC,CACF,CAAC"}
|