@mathrunet/masamune_cloudflare 3.1.0
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 +361 -0
- package/LICENSE +21 -0
- package/README.md +70 -0
- package/dist/functions/test.d.ts +1 -0
- package/dist/functions/test.js +71 -0
- package/dist/functions/test.js.map +1 -0
- package/dist/functions.d.ts +15 -0
- package/dist/functions.js +18 -0
- package/dist/functions.js.map +1 -0
- package/dist/index.d.ts +21 -0
- package/dist/index.js +77 -0
- package/dist/index.js.map +1 -0
- package/dist/lib/api.d.ts +183 -0
- package/dist/lib/api.js +144 -0
- package/dist/lib/api.js.map +1 -0
- package/dist/lib/exntensions/firestore.extension.d.ts +247 -0
- package/dist/lib/exntensions/firestore.extension.js +386 -0
- package/dist/lib/exntensions/firestore.extension.js.map +1 -0
- package/dist/lib/exntensions/string.extension.d.ts +214 -0
- package/dist/lib/exntensions/string.extension.js +223 -0
- package/dist/lib/exntensions/string.extension.js.map +1 -0
- package/dist/lib/model_field_value/converters/basic_converter.d.ts +49 -0
- package/dist/lib/model_field_value/converters/basic_converter.js +51 -0
- package/dist/lib/model_field_value/converters/basic_converter.js.map +1 -0
- package/dist/lib/model_field_value/converters/enum_converter.d.ts +49 -0
- package/dist/lib/model_field_value/converters/enum_converter.js +51 -0
- package/dist/lib/model_field_value/converters/enum_converter.js.map +1 -0
- package/dist/lib/model_field_value/converters/model_counter_converter.d.ts +49 -0
- package/dist/lib/model_field_value/converters/model_counter_converter.js +216 -0
- package/dist/lib/model_field_value/converters/model_counter_converter.js.map +1 -0
- package/dist/lib/model_field_value/converters/model_date_converter.d.ts +49 -0
- package/dist/lib/model_field_value/converters/model_date_converter.js +271 -0
- package/dist/lib/model_field_value/converters/model_date_converter.js.map +1 -0
- package/dist/lib/model_field_value/converters/model_date_range_converter.d.ts +49 -0
- package/dist/lib/model_field_value/converters/model_date_range_converter.js +225 -0
- package/dist/lib/model_field_value/converters/model_date_range_converter.js.map +1 -0
- package/dist/lib/model_field_value/converters/model_geo_value_converter.d.ts +49 -0
- package/dist/lib/model_field_value/converters/model_geo_value_converter.js +216 -0
- package/dist/lib/model_field_value/converters/model_geo_value_converter.js.map +1 -0
- package/dist/lib/model_field_value/converters/model_image_uri_converter.d.ts +49 -0
- package/dist/lib/model_field_value/converters/model_image_uri_converter.js +184 -0
- package/dist/lib/model_field_value/converters/model_image_uri_converter.js.map +1 -0
- package/dist/lib/model_field_value/converters/model_locale_converter.d.ts +51 -0
- package/dist/lib/model_field_value/converters/model_locale_converter.js +228 -0
- package/dist/lib/model_field_value/converters/model_locale_converter.js.map +1 -0
- package/dist/lib/model_field_value/converters/model_localized_value_converter.d.ts +49 -0
- package/dist/lib/model_field_value/converters/model_localized_value_converter.js +145 -0
- package/dist/lib/model_field_value/converters/model_localized_value_converter.js.map +1 -0
- package/dist/lib/model_field_value/converters/model_ref_base_converter.d.ts +49 -0
- package/dist/lib/model_field_value/converters/model_ref_base_converter.js +159 -0
- package/dist/lib/model_field_value/converters/model_ref_base_converter.js.map +1 -0
- package/dist/lib/model_field_value/converters/model_search_converter.d.ts +49 -0
- package/dist/lib/model_field_value/converters/model_search_converter.js +138 -0
- package/dist/lib/model_field_value/converters/model_search_converter.js.map +1 -0
- package/dist/lib/model_field_value/converters/model_server_command_base_converter.d.ts +49 -0
- package/dist/lib/model_field_value/converters/model_server_command_base_converter.js +119 -0
- package/dist/lib/model_field_value/converters/model_server_command_base_converter.js.map +1 -0
- package/dist/lib/model_field_value/converters/model_time_converter.d.ts +49 -0
- package/dist/lib/model_field_value/converters/model_time_converter.js +271 -0
- package/dist/lib/model_field_value/converters/model_time_converter.js.map +1 -0
- package/dist/lib/model_field_value/converters/model_time_range_converter.d.ts +49 -0
- package/dist/lib/model_field_value/converters/model_time_range_converter.js +225 -0
- package/dist/lib/model_field_value/converters/model_time_range_converter.js.map +1 -0
- package/dist/lib/model_field_value/converters/model_timestamp_converter.d.ts +66 -0
- package/dist/lib/model_field_value/converters/model_timestamp_converter.js +297 -0
- package/dist/lib/model_field_value/converters/model_timestamp_converter.js.map +1 -0
- package/dist/lib/model_field_value/converters/model_timestamp_range_converter.d.ts +49 -0
- package/dist/lib/model_field_value/converters/model_timestamp_range_converter.js +225 -0
- package/dist/lib/model_field_value/converters/model_timestamp_range_converter.js.map +1 -0
- package/dist/lib/model_field_value/converters/model_token_converter.d.ts +48 -0
- package/dist/lib/model_field_value/converters/model_token_converter.js +137 -0
- package/dist/lib/model_field_value/converters/model_token_converter.js.map +1 -0
- package/dist/lib/model_field_value/converters/model_uri_converter.d.ts +49 -0
- package/dist/lib/model_field_value/converters/model_uri_converter.js +184 -0
- package/dist/lib/model_field_value/converters/model_uri_converter.js.map +1 -0
- package/dist/lib/model_field_value/converters/model_vector_value_converter.d.ts +49 -0
- package/dist/lib/model_field_value/converters/model_vector_value_converter.js +125 -0
- package/dist/lib/model_field_value/converters/model_vector_value_converter.js.map +1 -0
- package/dist/lib/model_field_value/converters/model_video_uri_converter.d.ts +49 -0
- package/dist/lib/model_field_value/converters/model_video_uri_converter.js +184 -0
- package/dist/lib/model_field_value/converters/model_video_uri_converter.js.map +1 -0
- package/dist/lib/model_field_value/converters/null_converter.d.ts +49 -0
- package/dist/lib/model_field_value/converters/null_converter.js +72 -0
- package/dist/lib/model_field_value/converters/null_converter.js.map +1 -0
- package/dist/lib/model_field_value/default_model_field_value_converter.d.ts +155 -0
- package/dist/lib/model_field_value/default_model_field_value_converter.js +303 -0
- package/dist/lib/model_field_value/default_model_field_value_converter.js.map +1 -0
- package/dist/lib/model_field_value/model_field_value.d.ts +467 -0
- package/dist/lib/model_field_value/model_field_value.js +665 -0
- package/dist/lib/model_field_value/model_field_value.js.map +1 -0
- package/dist/lib/model_field_value/model_field_value_converter.d.ts +117 -0
- package/dist/lib/model_field_value/model_field_value_converter.js +49 -0
- package/dist/lib/model_field_value/model_field_value_converter.js.map +1 -0
- package/dist/lib/regions.d.ts +6 -0
- package/dist/lib/regions.js +3 -0
- package/dist/lib/regions.js.map +1 -0
- package/dist/lib/src/call_process_function_base.d.ts +39 -0
- package/dist/lib/src/call_process_function_base.js +72 -0
- package/dist/lib/src/call_process_function_base.js.map +1 -0
- package/dist/lib/src/firebase_loader.d.ts +30 -0
- package/dist/lib/src/firebase_loader.js +96 -0
- package/dist/lib/src/firebase_loader.js.map +1 -0
- package/dist/lib/src/firestore_base.d.ts +114 -0
- package/dist/lib/src/firestore_base.js +363 -0
- package/dist/lib/src/firestore_base.js.map +1 -0
- package/dist/lib/src/firestore_triggered_process_function_base.d.ts +40 -0
- package/dist/lib/src/firestore_triggered_process_function_base.js +72 -0
- package/dist/lib/src/firestore_triggered_process_function_base.js.map +1 -0
- package/dist/lib/src/functions_base.d.ts +327 -0
- package/dist/lib/src/functions_base.js +63 -0
- package/dist/lib/src/functions_base.js.map +1 -0
- package/dist/lib/src/functions_data.d.ts +10 -0
- package/dist/lib/src/functions_data.js +19 -0
- package/dist/lib/src/functions_data.js.map +1 -0
- package/dist/lib/src/request_process_function_base.d.ts +39 -0
- package/dist/lib/src/request_process_function_base.js +70 -0
- package/dist/lib/src/request_process_function_base.js.map +1 -0
- package/dist/lib/src/request_process_workders_base.d.ts +37 -0
- package/dist/lib/src/request_process_workders_base.js +27 -0
- package/dist/lib/src/request_process_workders_base.js.map +1 -0
- package/dist/lib/src/schedule_process_function_base.d.ts +33 -0
- package/dist/lib/src/schedule_process_function_base.js +71 -0
- package/dist/lib/src/schedule_process_function_base.js.map +1 -0
- package/dist/lib/src/sql_api_base.d.ts +185 -0
- package/dist/lib/src/sql_api_base.js +83 -0
- package/dist/lib/src/sql_api_base.js.map +1 -0
- package/dist/lib/src/workers_base.d.ts +74 -0
- package/dist/lib/src/workers_base.js +57 -0
- package/dist/lib/src/workers_base.js.map +1 -0
- package/dist/lib/src/workers_data.d.ts +10 -0
- package/dist/lib/src/workers_data.js +21 -0
- package/dist/lib/src/workers_data.js.map +1 -0
- package/dist/lib/utils.d.ts +82 -0
- package/dist/lib/utils.js +141 -0
- package/dist/lib/utils.js.map +1 -0
- package/dist/workers/test.d.ts +1 -0
- package/dist/workers/test.js +14 -0
- package/dist/workers/test.js.map +1 -0
- package/package.json +53 -0
|
@@ -0,0 +1,71 @@
|
|
|
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
|
+
exports.ScheduleProcessFunctionBase = void 0;
|
|
37
|
+
const functions = __importStar(require("firebase-functions/v2"));
|
|
38
|
+
const functions_base_1 = require("./functions_base");
|
|
39
|
+
/**
|
|
40
|
+
* Base class for defining the data of Functions for periodic scheduled execution.
|
|
41
|
+
*
|
|
42
|
+
* 定期スケジュール実行用のFunctionのデータを定義するためのベースクラス。
|
|
43
|
+
*/
|
|
44
|
+
class ScheduleProcessFunctionBase extends functions_base_1.FunctionsBase {
|
|
45
|
+
/**
|
|
46
|
+
* Base class for defining the data of Functions for periodic scheduled execution.
|
|
47
|
+
*
|
|
48
|
+
* 定期スケジュール実行用のFunctionのデータを定義するためのベースクラス。
|
|
49
|
+
*/
|
|
50
|
+
constructor(options = {}) {
|
|
51
|
+
super({ options: options });
|
|
52
|
+
}
|
|
53
|
+
data = {};
|
|
54
|
+
build(regions) {
|
|
55
|
+
const options = this.options;
|
|
56
|
+
return functions.scheduler.onSchedule({
|
|
57
|
+
schedule: options?.schedule ?? this.schedule,
|
|
58
|
+
region: options?.region ?? regions[0],
|
|
59
|
+
timeoutSeconds: options?.timeoutSeconds,
|
|
60
|
+
memory: options?.memory,
|
|
61
|
+
minInstances: options?.minInstances,
|
|
62
|
+
concurrency: options?.concurrency,
|
|
63
|
+
maxInstances: options?.maxInstances,
|
|
64
|
+
serviceAccount: options?.serviceAccount ?? undefined,
|
|
65
|
+
}, async (event) => {
|
|
66
|
+
return this.process();
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
exports.ScheduleProcessFunctionBase = ScheduleProcessFunctionBase;
|
|
71
|
+
//# sourceMappingURL=schedule_process_function_base.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schedule_process_function_base.js","sourceRoot":"","sources":["../../../src/lib/src/schedule_process_function_base.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,iEAAmD;AACnD,qDAA4E;AAG5E;;;;GAIG;AACH,MAAsB,2BAA4B,SAAQ,8BAAa;IACnE;;;;OAIG;IACH,YAAY,UAAqC,EAAE;QAC/C,KAAK,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;IAChC,CAAC;IAmBD,IAAI,GAA2B,EAAE,CAAC;IAClC,KAAK,CAAC,OAAiB;QACnB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAuD,CAAC;QAC7E,OAAO,SAAS,CAAC,SAAS,CAAC,UAAU,CACjC;YACI,QAAQ,EAAE,OAAO,EAAE,QAAQ,IAAI,IAAI,CAAC,QAAQ;YAC5C,MAAM,EAAE,OAAO,EAAE,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC;YACrC,cAAc,EAAE,OAAO,EAAE,cAAc;YACvC,MAAM,EAAE,OAAO,EAAE,MAAM;YACvB,YAAY,EAAE,OAAO,EAAE,YAAY;YACnC,WAAW,EAAE,OAAO,EAAE,WAAW;YACjC,YAAY,EAAE,OAAO,EAAE,YAAY;YACnC,cAAc,EAAE,OAAO,EAAE,cAAc,IAAI,SAAS;SACvD,EACD,KAAK,EAAE,KAAK,EAAE,EAAE;YACZ,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC;QAC1B,CAAC,CACJ,CAAC;IACN,CAAC;CACJ;AA9CD,kEA8CC"}
|
|
@@ -0,0 +1,185 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Base class for the API's model.
|
|
3
|
+
*
|
|
4
|
+
* Inherit this to create a model for the API.
|
|
5
|
+
*
|
|
6
|
+
* APIのモデルの基底クラス。
|
|
7
|
+
*
|
|
8
|
+
* これを継承してAPIのモデルを作成します。
|
|
9
|
+
*/
|
|
10
|
+
export declare abstract class SqlApiModelBase {
|
|
11
|
+
/**
|
|
12
|
+
* Convert [SqlApiModelBase] to a format that can be handled by Json.
|
|
13
|
+
*
|
|
14
|
+
* [SqlApiModelBase]をJsonで扱える形式に変換します。
|
|
15
|
+
*
|
|
16
|
+
* @returns {{ [key: string]: any }}
|
|
17
|
+
* Json format.
|
|
18
|
+
*
|
|
19
|
+
* Json形式。
|
|
20
|
+
*/
|
|
21
|
+
abstract toJson(): {
|
|
22
|
+
[key: string]: any;
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Base class for the API.
|
|
27
|
+
*
|
|
28
|
+
* Inherit this to create an API.
|
|
29
|
+
*
|
|
30
|
+
* APIの基底クラス。
|
|
31
|
+
*
|
|
32
|
+
* これを継承してAPIを作成します。
|
|
33
|
+
*/
|
|
34
|
+
export declare abstract class SqlApiBase<T extends SqlApiModelBase> {
|
|
35
|
+
/**
|
|
36
|
+
* Name of table to be used.
|
|
37
|
+
*
|
|
38
|
+
* 使用するテーブル名。
|
|
39
|
+
*/
|
|
40
|
+
abstract table: string;
|
|
41
|
+
/**
|
|
42
|
+
* Get the data from the table.
|
|
43
|
+
*
|
|
44
|
+
* テーブルからデータを取得します。
|
|
45
|
+
*
|
|
46
|
+
* @param {{ [key: string]: any }[]} where
|
|
47
|
+
* Specify the conditions for retrieving data from Sql.
|
|
48
|
+
*
|
|
49
|
+
* Sqlからデータを取得するための条件を指定します。
|
|
50
|
+
*
|
|
51
|
+
* @returns {Promise<T[]>}
|
|
52
|
+
* Data from the table.
|
|
53
|
+
*
|
|
54
|
+
* テーブルからのデータ。
|
|
55
|
+
*/
|
|
56
|
+
abstract get(where: {
|
|
57
|
+
[key: string]: any;
|
|
58
|
+
}[]): Promise<T[]>;
|
|
59
|
+
/**
|
|
60
|
+
* Get the number of records matching [where].
|
|
61
|
+
*
|
|
62
|
+
* [where]に一致するレコードの数を取得します。
|
|
63
|
+
*
|
|
64
|
+
* @param {{ [key: string]: any }[]} where
|
|
65
|
+
* Specify the conditions for retrieving data from Sql.
|
|
66
|
+
*
|
|
67
|
+
* Sqlからデータを取得するための条件を指定します。
|
|
68
|
+
*
|
|
69
|
+
* @returns {Promise<number>}
|
|
70
|
+
* Number of records matching [where].
|
|
71
|
+
*
|
|
72
|
+
* [where]に一致するレコードの数。
|
|
73
|
+
*/
|
|
74
|
+
abstract count(where: {
|
|
75
|
+
[key: string]: any;
|
|
76
|
+
}[]): Promise<number>;
|
|
77
|
+
/**
|
|
78
|
+
* Add data to the table.
|
|
79
|
+
*
|
|
80
|
+
* テーブルにデータを追加します。
|
|
81
|
+
*
|
|
82
|
+
* @param {{ [key: string]: any }} value
|
|
83
|
+
* Data to be added to the table.
|
|
84
|
+
*
|
|
85
|
+
* テーブルに追加するデータ。
|
|
86
|
+
*
|
|
87
|
+
* @param {{ [key: string]: any }[]} where
|
|
88
|
+
* Specify the conditions for adding data from Sql.
|
|
89
|
+
*
|
|
90
|
+
* Sqlからデータを追加するための条件を指定します。
|
|
91
|
+
*
|
|
92
|
+
* @returns {Promise<T>}
|
|
93
|
+
* Data added to the table.
|
|
94
|
+
*
|
|
95
|
+
* テーブルに追加されたデータ。
|
|
96
|
+
*/
|
|
97
|
+
abstract post(value: {
|
|
98
|
+
[key: string]: any;
|
|
99
|
+
}, where: {
|
|
100
|
+
[key: string]: any;
|
|
101
|
+
}[]): Promise<T>;
|
|
102
|
+
/**
|
|
103
|
+
* Update the data in the table.
|
|
104
|
+
*
|
|
105
|
+
* テーブルのデータを更新します。
|
|
106
|
+
*
|
|
107
|
+
* @param {{ [key: string]: any }} value
|
|
108
|
+
* Data to be updated in the table.
|
|
109
|
+
*
|
|
110
|
+
* テーブルの更新するデータ。
|
|
111
|
+
*
|
|
112
|
+
* @param {{ [key: string]: any }[]} where
|
|
113
|
+
* Specify the conditions for updating data from Sql.
|
|
114
|
+
*
|
|
115
|
+
* Sqlからデータを更新するための条件を指定します。
|
|
116
|
+
*
|
|
117
|
+
* @returns {Promise<T>}
|
|
118
|
+
* Updated data for the table.
|
|
119
|
+
*
|
|
120
|
+
* テーブルの更新されたデータ。
|
|
121
|
+
*/
|
|
122
|
+
abstract put(value: {
|
|
123
|
+
[key: string]: any;
|
|
124
|
+
}, where: {
|
|
125
|
+
[key: string]: any;
|
|
126
|
+
}[]): Promise<T>;
|
|
127
|
+
/**
|
|
128
|
+
* Deletes data from the table.
|
|
129
|
+
*
|
|
130
|
+
* テーブルからデータを削除します。
|
|
131
|
+
*
|
|
132
|
+
* @param { [key: string]: any }[] where
|
|
133
|
+
* Specify the conditions for deleting data from Sql.
|
|
134
|
+
*
|
|
135
|
+
* Sqlからデータを削除するための条件を指定します。
|
|
136
|
+
*
|
|
137
|
+
* @returns {Promise<void>}
|
|
138
|
+
*/
|
|
139
|
+
abstract delete(where: {
|
|
140
|
+
[key: string]: any;
|
|
141
|
+
}[]): Promise<void>;
|
|
142
|
+
/**
|
|
143
|
+
*
|
|
144
|
+
* @param {string} table
|
|
145
|
+
* Table Name.
|
|
146
|
+
*
|
|
147
|
+
* テーブル名。
|
|
148
|
+
*
|
|
149
|
+
* @param {"GET" | "POST" | "DELETE" | "PUT" | "COUNT"} method
|
|
150
|
+
* Specify the method to be used.
|
|
151
|
+
*
|
|
152
|
+
* 使用するメソッドを指定します。
|
|
153
|
+
*
|
|
154
|
+
* @param {{ [key: string]: any }[]} where
|
|
155
|
+
* Specify the conditions for retrieving data from Sql.
|
|
156
|
+
*
|
|
157
|
+
* Sqlからデータを取得するための条件を指定します。
|
|
158
|
+
*
|
|
159
|
+
* @param {{ [key: string]: any } | undefined} value
|
|
160
|
+
* Data to be added to the table.
|
|
161
|
+
*
|
|
162
|
+
* テーブルに追加するデータ。
|
|
163
|
+
*
|
|
164
|
+
* @returns {Promise<{ [key: string]: any }[] | number | null>}
|
|
165
|
+
* When [null] is returned, the condition is not met.
|
|
166
|
+
*
|
|
167
|
+
* Otherwise, it returns the retrieved data.
|
|
168
|
+
*
|
|
169
|
+
* [null]が返却されたときは条件に一致しないとき。
|
|
170
|
+
*
|
|
171
|
+
* その他の場合は取得されたデータを返します。
|
|
172
|
+
*/
|
|
173
|
+
process({ table, method, where, value, }: {
|
|
174
|
+
table: string;
|
|
175
|
+
method: "GET" | "POST" | "DELETE" | "PUT" | "COUNT";
|
|
176
|
+
where?: {
|
|
177
|
+
[key: string]: any;
|
|
178
|
+
}[] | undefined;
|
|
179
|
+
value?: {
|
|
180
|
+
[key: string]: any;
|
|
181
|
+
} | undefined;
|
|
182
|
+
}): Promise<{
|
|
183
|
+
[key: string]: any;
|
|
184
|
+
}[] | number | null>;
|
|
185
|
+
}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SqlApiBase = exports.SqlApiModelBase = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Base class for the API's model.
|
|
6
|
+
*
|
|
7
|
+
* Inherit this to create a model for the API.
|
|
8
|
+
*
|
|
9
|
+
* APIのモデルの基底クラス。
|
|
10
|
+
*
|
|
11
|
+
* これを継承してAPIのモデルを作成します。
|
|
12
|
+
*/
|
|
13
|
+
class SqlApiModelBase {
|
|
14
|
+
}
|
|
15
|
+
exports.SqlApiModelBase = SqlApiModelBase;
|
|
16
|
+
/**
|
|
17
|
+
* Base class for the API.
|
|
18
|
+
*
|
|
19
|
+
* Inherit this to create an API.
|
|
20
|
+
*
|
|
21
|
+
* APIの基底クラス。
|
|
22
|
+
*
|
|
23
|
+
* これを継承してAPIを作成します。
|
|
24
|
+
*/
|
|
25
|
+
class SqlApiBase {
|
|
26
|
+
/**
|
|
27
|
+
*
|
|
28
|
+
* @param {string} table
|
|
29
|
+
* Table Name.
|
|
30
|
+
*
|
|
31
|
+
* テーブル名。
|
|
32
|
+
*
|
|
33
|
+
* @param {"GET" | "POST" | "DELETE" | "PUT" | "COUNT"} method
|
|
34
|
+
* Specify the method to be used.
|
|
35
|
+
*
|
|
36
|
+
* 使用するメソッドを指定します。
|
|
37
|
+
*
|
|
38
|
+
* @param {{ [key: string]: any }[]} where
|
|
39
|
+
* Specify the conditions for retrieving data from Sql.
|
|
40
|
+
*
|
|
41
|
+
* Sqlからデータを取得するための条件を指定します。
|
|
42
|
+
*
|
|
43
|
+
* @param {{ [key: string]: any } | undefined} value
|
|
44
|
+
* Data to be added to the table.
|
|
45
|
+
*
|
|
46
|
+
* テーブルに追加するデータ。
|
|
47
|
+
*
|
|
48
|
+
* @returns {Promise<{ [key: string]: any }[] | number | null>}
|
|
49
|
+
* When [null] is returned, the condition is not met.
|
|
50
|
+
*
|
|
51
|
+
* Otherwise, it returns the retrieved data.
|
|
52
|
+
*
|
|
53
|
+
* [null]が返却されたときは条件に一致しないとき。
|
|
54
|
+
*
|
|
55
|
+
* その他の場合は取得されたデータを返します。
|
|
56
|
+
*/
|
|
57
|
+
async process({ table, method, where, value, }) {
|
|
58
|
+
if (table !== this.table) {
|
|
59
|
+
return null;
|
|
60
|
+
}
|
|
61
|
+
switch (method) {
|
|
62
|
+
case "GET": {
|
|
63
|
+
return (await this.get(where ?? [])).map((e) => { return e.toJson(); });
|
|
64
|
+
}
|
|
65
|
+
case "COUNT": {
|
|
66
|
+
await this.count(where ?? []);
|
|
67
|
+
return [];
|
|
68
|
+
}
|
|
69
|
+
case "POST": {
|
|
70
|
+
return [(await this.post(value ?? {}, where ?? [])).toJson()];
|
|
71
|
+
}
|
|
72
|
+
case "PUT": {
|
|
73
|
+
return [(await this.put(value ?? {}, where ?? [])).toJson()];
|
|
74
|
+
}
|
|
75
|
+
case "DELETE": {
|
|
76
|
+
await this.delete(where ?? []);
|
|
77
|
+
return [];
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
exports.SqlApiBase = SqlApiBase;
|
|
83
|
+
//# sourceMappingURL=sql_api_base.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sql_api_base.js","sourceRoot":"","sources":["../../../src/lib/src/sql_api_base.ts"],"names":[],"mappings":";;;AACA;;;;;;;;GAQG;AACH,MAAsB,eAAe;CAYpC;AAZD,0CAYC;AAED;;;;;;;;GAQG;AACH,MAAsB,UAAU;IAoG5B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA8BG;IACH,KAAK,CAAC,OAAO,CAAC,EACV,KAAK,EACL,MAAM,EACN,KAAK,EACL,KAAK,GAMJ;QACD,IAAI,KAAK,KAAK,IAAI,CAAC,KAAK,EAAE,CAAC;YACvB,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,QAAQ,MAAM,EAAE,CAAC;YACb,KAAK,KAAK,CAAC,CAAC,CAAC;gBACT,OAAO,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,GAAG,OAAO,CAAC,CAAC,MAAM,EAAE,CAAA,CAAC,CAAC,CAAC,CAAC;YAC3E,CAAC;YACD,KAAK,OAAO,CAAC,CAAC,CAAC;gBACX,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;gBAC9B,OAAO,EAAE,CAAC;YACd,CAAC;YACD,KAAK,MAAM,CAAC,CAAC,CAAC;gBACV,OAAO,CAAC,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;YAClE,CAAC;YACD,KAAK,KAAK,CAAC,CAAC,CAAC;gBACT,OAAO,CAAC,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;YACjE,CAAC;YACD,KAAK,QAAQ,CAAC,CAAC,CAAC;gBACZ,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;gBAC/B,OAAO,EAAE,CAAC;YACd,CAAC;QACL,CAAC;IACL,CAAC;CACJ;AArKD,gCAqKC"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { Hono } from "hono";
|
|
2
|
+
/**
|
|
3
|
+
* Define Function data for Cloudflare Workers.
|
|
4
|
+
*
|
|
5
|
+
* Write code to generate Cloudflare Workers at `build`.
|
|
6
|
+
*
|
|
7
|
+
* Cloudflare Workers用のFunctionのデータを定義を行うためのベースクラス。
|
|
8
|
+
*
|
|
9
|
+
* `build`にてCloudflare Workersを生成するためのコードを記述します。
|
|
10
|
+
*/
|
|
11
|
+
export declare abstract class WorkersBase {
|
|
12
|
+
/**
|
|
13
|
+
* Define Function data for Cloudflare Workers.
|
|
14
|
+
*
|
|
15
|
+
* Write code to generate Cloudflare Workers at `build`.
|
|
16
|
+
*
|
|
17
|
+
* Cloudflare Workers用のFunctionのデータを定義を行うためのベースクラス。
|
|
18
|
+
*
|
|
19
|
+
* `build`にてCloudflare Workersを生成するためのコードを記述します。
|
|
20
|
+
*/
|
|
21
|
+
constructor({ path, func, data, options, }: {
|
|
22
|
+
path?: string | undefined | null;
|
|
23
|
+
func?: ((hono: Hono, options: WorkersOptions, data: {
|
|
24
|
+
[key: string]: any;
|
|
25
|
+
}) => Hono) | undefined | null;
|
|
26
|
+
data?: {
|
|
27
|
+
[key: string]: any;
|
|
28
|
+
} | undefined | null;
|
|
29
|
+
options?: WorkersOptions | undefined | null;
|
|
30
|
+
});
|
|
31
|
+
/**
|
|
32
|
+
* @param path
|
|
33
|
+
* Specify the API path to the Cloudflare Workers.
|
|
34
|
+
*
|
|
35
|
+
* Cloudflare WorkersのAPIパスを指定します。
|
|
36
|
+
*/
|
|
37
|
+
readonly path: string;
|
|
38
|
+
/**
|
|
39
|
+
* @param func
|
|
40
|
+
* Specify the actual contents of the process.
|
|
41
|
+
*
|
|
42
|
+
* 実際の処理の中身を指定します。
|
|
43
|
+
*/
|
|
44
|
+
readonly func: ((hono: Hono, options: WorkersOptions, data: {
|
|
45
|
+
[key: string]: any;
|
|
46
|
+
}) => Hono) | undefined | null;
|
|
47
|
+
/**
|
|
48
|
+
* Specify the data to be passed to the process.
|
|
49
|
+
*
|
|
50
|
+
* 処理に渡すデータを指定します。
|
|
51
|
+
*/
|
|
52
|
+
readonly data: {
|
|
53
|
+
[key: string]: any;
|
|
54
|
+
};
|
|
55
|
+
/**
|
|
56
|
+
* Specify processing options.
|
|
57
|
+
*
|
|
58
|
+
* 処理のオプションを指定します。
|
|
59
|
+
*/
|
|
60
|
+
readonly options: WorkersOptions;
|
|
61
|
+
/**
|
|
62
|
+
* Write code to generate Cloudflare Workers.
|
|
63
|
+
*
|
|
64
|
+
* Cloudflare Workersを生成するためのコードを記述します。
|
|
65
|
+
*/
|
|
66
|
+
abstract build(): Hono;
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Specifies the options for the process.
|
|
70
|
+
*
|
|
71
|
+
* 処理のオプションを指定します。
|
|
72
|
+
*/
|
|
73
|
+
export interface WorkersOptions {
|
|
74
|
+
}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.WorkersBase = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Define Function data for Cloudflare Workers.
|
|
6
|
+
*
|
|
7
|
+
* Write code to generate Cloudflare Workers at `build`.
|
|
8
|
+
*
|
|
9
|
+
* Cloudflare Workers用のFunctionのデータを定義を行うためのベースクラス。
|
|
10
|
+
*
|
|
11
|
+
* `build`にてCloudflare Workersを生成するためのコードを記述します。
|
|
12
|
+
*/
|
|
13
|
+
class WorkersBase {
|
|
14
|
+
/**
|
|
15
|
+
* Define Function data for Cloudflare Workers.
|
|
16
|
+
*
|
|
17
|
+
* Write code to generate Cloudflare Workers at `build`.
|
|
18
|
+
*
|
|
19
|
+
* Cloudflare Workers用のFunctionのデータを定義を行うためのベースクラス。
|
|
20
|
+
*
|
|
21
|
+
* `build`にてCloudflare Workersを生成するためのコードを記述します。
|
|
22
|
+
*/
|
|
23
|
+
constructor({ path, func, data = {}, options, }) {
|
|
24
|
+
this.path = path ?? "";
|
|
25
|
+
this.func = func;
|
|
26
|
+
this.data = data ?? {};
|
|
27
|
+
this.options = options ?? {};
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* @param path
|
|
31
|
+
* Specify the API path to the Cloudflare Workers.
|
|
32
|
+
*
|
|
33
|
+
* Cloudflare WorkersのAPIパスを指定します。
|
|
34
|
+
*/
|
|
35
|
+
path;
|
|
36
|
+
/**
|
|
37
|
+
* @param func
|
|
38
|
+
* Specify the actual contents of the process.
|
|
39
|
+
*
|
|
40
|
+
* 実際の処理の中身を指定します。
|
|
41
|
+
*/
|
|
42
|
+
func;
|
|
43
|
+
/**
|
|
44
|
+
* Specify the data to be passed to the process.
|
|
45
|
+
*
|
|
46
|
+
* 処理に渡すデータを指定します。
|
|
47
|
+
*/
|
|
48
|
+
data;
|
|
49
|
+
/**
|
|
50
|
+
* Specify processing options.
|
|
51
|
+
*
|
|
52
|
+
* 処理のオプションを指定します。
|
|
53
|
+
*/
|
|
54
|
+
options;
|
|
55
|
+
}
|
|
56
|
+
exports.WorkersBase = WorkersBase;
|
|
57
|
+
//# sourceMappingURL=workers_base.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workers_base.js","sourceRoot":"","sources":["../../../src/lib/src/workers_base.ts"],"names":[],"mappings":";;;AAGA;;;;;;;;GAQG;AACH,MAAsB,WAAW;IAC7B;;;;;;;;OAQG;IACH,YAAY,EACR,IAAI,EACJ,IAAI,EACJ,IAAI,GAAG,EAAE,EACT,OAAO,GAUV;QACG,IAAI,CAAC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,IAAI,CAAC,OAAO,GAAG,OAAO,IAAI,EAAE,CAAC;IACjC,CAAC;IAED;;;;;OAKG;IACM,IAAI,CAAS;IAEtB;;;;;OAKG;IACM,IAAI,CAIiB;IAE9B;;;;OAIG;IACM,IAAI,CAAyB;IAEtC;;;;OAIG;IACM,OAAO,CAAiB;CAQpC;AAvED,kCAuEC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { WorkersBase } from "./workers_base";
|
|
2
|
+
import { Hono } from "hono";
|
|
3
|
+
/**
|
|
4
|
+
* Define Function data for Cloudflare Workers.
|
|
5
|
+
*
|
|
6
|
+
* Cloudflare Workers用のFunctionのデータを定義します。
|
|
7
|
+
*/
|
|
8
|
+
export declare class WorkersData extends WorkersBase {
|
|
9
|
+
build(): Hono;
|
|
10
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.WorkersData = void 0;
|
|
4
|
+
const workers_base_1 = require("./workers_base");
|
|
5
|
+
const hono_1 = require("hono");
|
|
6
|
+
/**
|
|
7
|
+
* Define Function data for Cloudflare Workers.
|
|
8
|
+
*
|
|
9
|
+
* Cloudflare Workers用のFunctionのデータを定義します。
|
|
10
|
+
*/
|
|
11
|
+
class WorkersData extends workers_base_1.WorkersBase {
|
|
12
|
+
build() {
|
|
13
|
+
const hono = new hono_1.Hono();
|
|
14
|
+
if (!this.func) {
|
|
15
|
+
return hono;
|
|
16
|
+
}
|
|
17
|
+
return this.func(hono, this.options, this.data);
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
exports.WorkersData = WorkersData;
|
|
21
|
+
//# sourceMappingURL=workers_data.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workers_data.js","sourceRoot":"","sources":["../../../src/lib/src/workers_data.ts"],"names":[],"mappings":";;;AAAA,iDAA6C;AAC7C,+BAA4B;AAE5B;;;;GAIG;AACH,MAAa,WAAY,SAAQ,0BAAW;IACxC,KAAK;QACD,MAAM,IAAI,GAAG,IAAI,WAAI,EAAE,CAAC;QACxB,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YACb,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,OAAO,IAAI,CAAC,IAAI,CACZ,IAAI,EACJ,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,IAAI,CACZ,CAAC;IACN,CAAC;CACJ;AAZD,kCAYC"}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Checks if [value] is {[key: string]: any}.
|
|
3
|
+
*
|
|
4
|
+
* [value]が{[key: string]: any}であるかどうかをチェックします。
|
|
5
|
+
*
|
|
6
|
+
* @param value
|
|
7
|
+
* Value to be checked.
|
|
8
|
+
*
|
|
9
|
+
* チェックしたい値。
|
|
10
|
+
*
|
|
11
|
+
* @returns
|
|
12
|
+
* If [value] is {[key: string]: any}, returns true; otherwise, returns false.
|
|
13
|
+
*
|
|
14
|
+
* [value]が{[key: string]: any}ならtrue、そうでなければfalseを返します。
|
|
15
|
+
*/
|
|
16
|
+
export declare function isDynamicMap(value: any): value is {
|
|
17
|
+
[key: string]: any;
|
|
18
|
+
};
|
|
19
|
+
/**
|
|
20
|
+
* Converts strings, numbers, etc. to the appropriate type.
|
|
21
|
+
*
|
|
22
|
+
* 文字列や数値などを適切な型に変換します。
|
|
23
|
+
*
|
|
24
|
+
* @param {string | number} value
|
|
25
|
+
* Strings and numbers.
|
|
26
|
+
* 文字列か数値。
|
|
27
|
+
*
|
|
28
|
+
* @return {bool | number | string}
|
|
29
|
+
* If it is a string, a numeric value is returned;
|
|
30
|
+
* otherwise, the input value is returned.
|
|
31
|
+
* 文字列なら数値、そうでなければ入力値が返却されます。
|
|
32
|
+
*/
|
|
33
|
+
export declare function parse(value: string | number): string | number | boolean;
|
|
34
|
+
/**
|
|
35
|
+
* Generate and retrieve the UUID for Version 7.
|
|
36
|
+
*
|
|
37
|
+
* The strings can be sorted in chronological order of generation.
|
|
38
|
+
*
|
|
39
|
+
* Returned as a string with 32 hyphenated characters removed.
|
|
40
|
+
*
|
|
41
|
+
* If [baseTime] is specified, the date and time to be generated can be adjusted.
|
|
42
|
+
* If [reverse] is specified, the elapsed time from [baseTime] is reversed.
|
|
43
|
+
*
|
|
44
|
+
* Version7のUUIDを生成し取得します。
|
|
45
|
+
*
|
|
46
|
+
* 文字列を生成した時系列順にソート可能です。
|
|
47
|
+
*
|
|
48
|
+
* 32文字のハイフンが取り除かれた文字列として返されます。
|
|
49
|
+
*
|
|
50
|
+
* [baseTime]を指定した場合、生成する日時を調節できます。
|
|
51
|
+
* [reverse]を指定した場合は、[baseTime]からの経過時間を反転させた値を使用します。
|
|
52
|
+
*
|
|
53
|
+
* @param {Object} options - Options for UUID generation
|
|
54
|
+
* @param {Date} [options.baseTime] - Base time for UUID generation (defaults to current time)
|
|
55
|
+
* @param {boolean} [options.reverse=false] - Whether to reverse the timestamp
|
|
56
|
+
* @return {string} UUID v7 without hyphens
|
|
57
|
+
*/
|
|
58
|
+
export declare function uuid(options?: {
|
|
59
|
+
baseTime?: Date;
|
|
60
|
+
reverse?: boolean;
|
|
61
|
+
}): string;
|
|
62
|
+
/**
|
|
63
|
+
* Divides an array into pieces of the specified size.
|
|
64
|
+
*
|
|
65
|
+
* 配列を指定したサイズで分割します。
|
|
66
|
+
*
|
|
67
|
+
* @param array
|
|
68
|
+
* Array to be divided.
|
|
69
|
+
*
|
|
70
|
+
* 分割したい配列。
|
|
71
|
+
*
|
|
72
|
+
* @param chunkSize
|
|
73
|
+
* Size of each piece.
|
|
74
|
+
*
|
|
75
|
+
* 1つのピースのサイズ。
|
|
76
|
+
*
|
|
77
|
+
* @returns {T[][]}
|
|
78
|
+
* Array divided into pieces.
|
|
79
|
+
*
|
|
80
|
+
* 分割された配列。
|
|
81
|
+
*/
|
|
82
|
+
export declare function splitArray<T>(array: T[], chunkSize: number): T[][];
|