@mathrunet/masamune_cloudflare 3.1.9 → 3.2.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 CHANGED
@@ -1,4 +1,4 @@
1
- ## 3.1.9 (2026-07-01)
1
+ # 3.2.0 (2026-07-02)
2
2
 
3
3
 
4
4
  ### chore
@@ -106,6 +106,7 @@
106
106
  * Add PDF creation function. ([de349b3](https://github.com/mathrunet/node_masamune/commit/de349b382bacd325929b2c6fa8330dbe7fe12b98))
107
107
  * Add removeOnlyEmoji method to String prototype and update usage in ModelFieldValue class ([dccecf8](https://github.com/mathrunet/node_masamune/commit/dccecf844ad7602e5acedfb4653620ac80c017cb))
108
108
  * Add required type. ([d92208c](https://github.com/mathrunet/node_masamune/commit/d92208cdb1e7340d2b9258a6a090123f581bf5d9))
109
+ * add scheduled workers support and enhance deployment functionality ([70ab4d6](https://github.com/mathrunet/node_masamune/commit/70ab4d6856badb8d86420acf757fc75823493aef))
109
110
  * add scheduler notification tests and update general test utilities and Firestore tests. ([710e462](https://github.com/mathrunet/node_masamune/commit/710e46287e7eb7fea6dd461e0d5354ce2f1bbfd2))
110
111
  * Add short video generation function using Gemini 2.5 Flash and FFmpeg, including tests, documentation, and updated ignore rules for temporary files. ([7e6cde2](https://github.com/mathrunet/node_masamune/commit/7e6cde28f7760c54058cb1e2073c6e97f552d39e))
111
112
  * Add SqlApiBase. ([ff6c5b2](https://github.com/mathrunet/node_masamune/commit/ff6c5b28905402f326904eb4052e86db82be4778))
@@ -152,6 +153,7 @@
152
153
  * Gmail stopped working, so I deleted it. ([c415079](https://github.com/mathrunet/node_masamune/commit/c4150799abeb996b0a08e3d9b7dccb232a2404f2))
153
154
  * Google Play Console data acquisition function implementation ([28ad81f](https://github.com/mathrunet/node_masamune/commit/28ad81ff6451c922ff16c40e52646571d2d39d60))
154
155
  * implement broad/detailed research and asset creation functions, alongside new documentation and tests ([0c1c05d](https://github.com/mathrunet/node_masamune/commit/0c1c05da72d25219080ac98809322b13667b047c))
156
+ * implement Cloudflare KV integration with document-oriented model ([b9af783](https://github.com/mathrunet/node_masamune/commit/b9af7834275e36fdf48977f59dec22f41760bcb8))
155
157
  * implement Firebase function to generate short video metadata using Vertex AI, including tests and development documentation. ([2251993](https://github.com/mathrunet/node_masamune/commit/22519933c8b1f84fc7ae26a5754c6c02d96b5969))
156
158
  * Implement retry mechanism for Vertex AI API calls in ResearchMarket function and enhance error handling ([ac03efe](https://github.com/mathrunet/node_masamune/commit/ac03efe06d7958ad7ebc9a405cf31c351a3b4298))
157
159
  * Implementation of data retrieval API. ([df9ad88](https://github.com/mathrunet/node_masamune/commit/df9ad88da46ccb85cea4172ed8c0107ea2c431f7))
package/README.md CHANGED
@@ -80,20 +80,32 @@ export default m.deploy(
80
80
  );
81
81
  ```
82
82
 
83
- `rules.json` paths use the same normalized format across Turso, TiDB, and KV
84
- workers.
83
+ `rules.json` groups rules by target. Database rules and storage rules use the
84
+ same path pattern and access rule format.
85
85
 
86
86
  ```json
87
87
  {
88
88
  "version": "1",
89
89
  "rules": {
90
- "database/main": {
91
- "read": "allow",
92
- "write": "server"
90
+ "database": {
91
+ "main": {
92
+ "read": "allow",
93
+ "write": "server"
94
+ },
95
+ "{uid}/users/{uid}": {
96
+ "read": { "type": "path", "param": "uid" },
97
+ "write": { "type": "field", "field": "ownerId", "server": true }
98
+ }
93
99
  },
94
- "database/{uid}/users/{uid}": {
95
- "read": { "type": "path", "param": "uid" },
96
- "write": { "type": "field", "field": "ownerId", "server": true }
100
+ "storage": {
101
+ "public/**": {
102
+ "read": "allow",
103
+ "write": "authenticated"
104
+ },
105
+ "images/{uid}/**": {
106
+ "read": { "type": "path", "param": "uid" },
107
+ "write": { "type": "path", "param": "uid", "server": true }
108
+ }
97
109
  }
98
110
  }
99
111
  }
package/dist/index.d.ts CHANGED
@@ -17,6 +17,7 @@ export * from "./lib/src/workers_auth_adapter_base";
17
17
  export * from "./lib/src/workers_rule_adapter_base";
18
18
  export * from "./lib/src/workers_data";
19
19
  export * from "./lib/src/request_process_workders_base";
20
+ export * from "./lib/src/schedule_process_workders_base";
20
21
  export * from "./lib/src/rules/rules_loader";
21
22
  export * from "./lib/src/rules/path_matcher";
22
23
  export * from "./lib/src/rules/rules_engine";
@@ -39,4 +40,7 @@ export * from "./lib/middlewares";
39
40
  *
40
41
  * [Workers]で定義された要素を配列として渡します。渡されたメソッドがデプロイされます。
41
42
  */
42
- export declare function deploy(deployWorkders: WorkersBase[], options?: WorkersOptions): hono.Hono;
43
+ export type WorkersDeployResult = hono.Hono & {
44
+ scheduled?: (event: ScheduledEvent, env: unknown, ctx: ExecutionContext) => Promise<void>;
45
+ };
46
+ export declare function deploy(deployWorkders: WorkersBase[], options?: WorkersOptions): WorkersDeployResult;
package/dist/index.js CHANGED
@@ -48,6 +48,7 @@ exports.deploy = deploy;
48
48
  * [YouTube]: https://www.youtube.com/c/mathrunetchannel
49
49
  */
50
50
  const hono = __importStar(require("hono"));
51
+ const schedule_process_workders_base_1 = require("./lib/src/schedule_process_workders_base");
51
52
  __exportStar(require("@mathrunet/masamune"), exports);
52
53
  __exportStar(require("./lib/api"), exports);
53
54
  __exportStar(require("./lib/src/workers_base"), exports);
@@ -55,6 +56,7 @@ __exportStar(require("./lib/src/workers_auth_adapter_base"), exports);
55
56
  __exportStar(require("./lib/src/workers_rule_adapter_base"), exports);
56
57
  __exportStar(require("./lib/src/workers_data"), exports);
57
58
  __exportStar(require("./lib/src/request_process_workders_base"), exports);
59
+ __exportStar(require("./lib/src/schedule_process_workders_base"), exports);
58
60
  __exportStar(require("./lib/src/rules/rules_loader"), exports);
59
61
  __exportStar(require("./lib/src/rules/path_matcher"), exports);
60
62
  __exportStar(require("./lib/src/rules/rules_engine"), exports);
@@ -62,26 +64,22 @@ __exportStar(require("./lib/adapters/firebase_auth_adapter"), exports);
62
64
  __exportStar(require("./lib/adapters/none_auth_adapter"), exports);
63
65
  __exportStar(require("./lib/adapters/rules_middleware"), exports);
64
66
  __exportStar(require("./lib/middlewares"), exports);
65
- /**
66
- * Methods for deploying to Cloudflare Workers.
67
- *
68
- * Cloudflare Workersにデプロイするためのメソッドです。
69
- *
70
- * @param exports
71
- * Pass the `exports` as is.
72
- *
73
- * `exports`をそのまま渡します。
74
- *
75
- * @param deployWorkders
76
- * The elements defined in [Workers] are passed as an array. The passed method is deployed.
77
- *
78
- * [Workers]で定義された要素を配列として渡します。渡されたメソッドがデプロイされます。
79
- */
80
67
  function deploy(deployWorkders, options = {}) {
81
68
  const app = new hono.Hono();
69
+ const scheduleWorkers = [];
82
70
  for (const worker of deployWorkders) {
71
+ if (worker instanceof schedule_process_workders_base_1.ScheduleProcessWorkdersBase) {
72
+ scheduleWorkers.push(worker);
73
+ continue;
74
+ }
83
75
  app.route(worker.path, worker.build(options));
84
76
  }
85
- return app;
77
+ const result = app;
78
+ if (scheduleWorkers.length > 0) {
79
+ result.scheduled = async (event, env, ctx) => {
80
+ await Promise.all(scheduleWorkers.map((worker) => worker.process(event, env, ctx)));
81
+ };
82
+ }
83
+ return result;
86
84
  }
87
85
  //# 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":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2CA,wBAMC;AAjDD;;;;;;;;;GASG;AACH,2CAA6B;AAG7B,sDAAoC;AACpC,4CAA0B;AAC1B,yDAAuC;AACvC,sEAAoD;AACpD,sEAAoD;AACpD,yDAAuC;AACvC,0EAAwD;AACxD,+DAA6C;AAC7C,+DAA6C;AAC7C,+DAA6C;AAC7C,uEAAqD;AACrD,mEAAiD;AACjD,kEAAgD;AAChD,oDAAkC;AAElC;;;;;;;;;;;;;;GAcG;AACH,SAAgB,MAAM,CAAC,cAA6B,EAAE,UAA0B,EAAE;IAC9E,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;IAC5B,KAAK,MAAM,MAAM,IAAI,cAAc,EAAE,CAAC;QAClC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;IAClD,CAAC;IACD,OAAO,GAAG,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqDA,wBAmBC;AAxED;;;;;;;;;GASG;AACH,2CAA6B;AAE7B,6FAAuF;AAEvF,sDAAoC;AACpC,4CAA0B;AAC1B,yDAAuC;AACvC,sEAAoD;AACpD,sEAAoD;AACpD,yDAAuC;AACvC,0EAAwD;AACxD,2EAAyD;AACzD,+DAA6C;AAC7C,+DAA6C;AAC7C,+DAA6C;AAC7C,uEAAqD;AACrD,mEAAiD;AACjD,kEAAgD;AAChD,oDAAkC;AAyBlC,SAAgB,MAAM,CAAC,cAA6B,EAAE,UAA0B,EAAE;IAC9E,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;IAC5B,MAAM,eAAe,GAAkC,EAAE,CAAC;IAC1D,KAAK,MAAM,MAAM,IAAI,cAAc,EAAE,CAAC;QAClC,IAAI,MAAM,YAAY,4DAA2B,EAAE,CAAC;YAChD,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC7B,SAAS;QACb,CAAC;QACD,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;IAClD,CAAC;IACD,MAAM,MAAM,GAAG,GAA0B,CAAC;IAC1C,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7B,MAAM,CAAC,SAAS,GAAG,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;YACzC,MAAM,OAAO,CAAC,GAAG,CACb,eAAe,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CACnE,CAAC;QACN,CAAC,CAAC;IACN,CAAC;IACD,OAAO,MAAM,CAAC;AAClB,CAAC"}
@@ -1,9 +1,19 @@
1
1
  declare global {
2
+ interface ScheduledEvent {
3
+ cron: string;
4
+ scheduledTime?: number;
5
+ }
6
+ interface ExecutionContext {
7
+ waitUntil(promise: Promise<unknown>): void;
8
+ passThroughOnException(): void;
9
+ }
2
10
  interface KVNamespace {
11
+ get(key: string, type: "text"): Promise<string | null>;
3
12
  get(key: string, type: "json"): Promise<unknown | null>;
4
13
  put(key: string, value: string, options?: {
5
14
  expirationTtl?: number | undefined;
6
15
  }): Promise<void>;
16
+ delete(key: string): Promise<void>;
7
17
  }
8
18
  interface JsonWebKeyWithKid extends JsonWebKey {
9
19
  kid: string;
@@ -1,5 +1,5 @@
1
1
  import { WorkersAuthContext } from "../workers_auth_adapter_base";
2
- import { RulesAccessRule, RulesConfig, RulesOperation, RulesOperationKey } from "./rules_loader";
2
+ import { RulesAccessRule, RulesConfig, RulesOperation, RulesOperationKey, RulesTarget } from "./rules_loader";
3
3
  /**
4
4
  * Input for evaluating rules.
5
5
  *
@@ -7,6 +7,7 @@ import { RulesAccessRule, RulesConfig, RulesOperation, RulesOperationKey } from
7
7
  */
8
8
  export interface RulesEvaluationInput {
9
9
  path: string;
10
+ target?: RulesTarget | undefined;
10
11
  operation: RulesOperation | RulesOperationKey;
11
12
  authentication?: WorkersAuthContext | undefined;
12
13
  fetchDocument?: (() => Promise<Record<string, unknown> | null | undefined>) | undefined;
@@ -30,8 +31,8 @@ export interface RulesEvaluationResult {
30
31
  */
31
32
  export interface RulesPathArguments {
32
33
  database: string;
33
- table: string;
34
- indexKey: string;
34
+ table?: string | undefined;
35
+ indexKey?: string | undefined;
35
36
  }
36
37
  /**
37
38
  * Access mode resolved from rules.
@@ -129,8 +130,14 @@ export declare function buildRulesPath({ database, table, indexKey }: RulesPathA
129
130
  *
130
131
  * 正規化されたデータベースrulesパスを生成します。
131
132
  */
132
- export declare function buildDatabaseRulesPath({ database }: {
133
- database: string;
133
+ export declare function buildDatabaseRulesPath({ database, table, indexKey }: RulesPathArguments): string;
134
+ /**
135
+ * Build a normalized storage rules path.
136
+ *
137
+ * 正規化されたストレージrulesパスを生成します。
138
+ */
139
+ export declare function buildStorageRulesPath({ path }: {
140
+ path: string;
134
141
  }): string;
135
142
  /**
136
143
  * Normalize HTTP method to rules operation.
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.RulesEngine = void 0;
4
4
  exports.buildRulesPath = buildRulesPath;
5
5
  exports.buildDatabaseRulesPath = buildDatabaseRulesPath;
6
+ exports.buildStorageRulesPath = buildStorageRulesPath;
6
7
  exports.normalizeHttpMethodToRulesOperation = normalizeHttpMethodToRulesOperation;
7
8
  exports.normalizeRulesOperation = normalizeRulesOperation;
8
9
  exports.expandRulesOperation = expandRulesOperation;
@@ -29,8 +30,9 @@ class RulesEngine {
29
30
  */
30
31
  async evaluate(input) {
31
32
  const operation = normalizeRulesOperation(input.operation);
32
- const matches = Object.keys(this.config.rules)
33
- .map((rulePath) => (0, path_matcher_1.matchRulePath)(rulePath, input.path))
33
+ const path = normalizeEvaluationPath(input);
34
+ const matches = Object.keys(this.config.normalizedRules)
35
+ .map((rulePath) => (0, path_matcher_1.matchRulePath)(rulePath, path))
34
36
  .filter((match) => match.matched);
35
37
  if (matches.length === 0) {
36
38
  return { allowed: false };
@@ -39,7 +41,7 @@ class RulesEngine {
39
41
  const resolved = resolveInheritedRule(sortedMatches.map((match) => {
40
42
  return {
41
43
  rulePath: match.rulePath,
42
- entry: this.config.rules[match.rulePath],
44
+ entry: this.config.normalizedRules[match.rulePath],
43
45
  params: match.params,
44
46
  };
45
47
  }));
@@ -64,7 +66,7 @@ class RulesEngine {
64
66
  */
65
67
  hasScopedRestriction({ database, table, operation, }) {
66
68
  const normalized = normalizeRulesOperation(operation);
67
- for (const [rulePath, entry] of Object.entries(this.config.rules)) {
69
+ for (const [rulePath, entry] of Object.entries(this.config.normalizedRules)) {
68
70
  if (!isRulePathInTableScope(rulePath, database, table)) {
69
71
  continue;
70
72
  }
@@ -83,7 +85,7 @@ class RulesEngine {
83
85
  */
84
86
  hasScopedDeny({ database, table, operation, }) {
85
87
  const normalized = normalizeRulesOperation(operation);
86
- for (const [rulePath, entry] of Object.entries(this.config.rules)) {
88
+ for (const [rulePath, entry] of Object.entries(this.config.normalizedRules)) {
87
89
  if (!isRulePathInTableScope(rulePath, database, table)) {
88
90
  continue;
89
91
  }
@@ -101,7 +103,7 @@ class RulesEngine {
101
103
  */
102
104
  hasDatabaseScopedRestriction({ database, operation, }) {
103
105
  const normalized = normalizeRulesOperation(operation);
104
- for (const [rulePath, entry] of Object.entries(this.config.rules)) {
106
+ for (const [rulePath, entry] of Object.entries(this.config.normalizedRules)) {
105
107
  if (!isRulePathInDatabaseScope(rulePath, database)) {
106
108
  continue;
107
109
  }
@@ -121,23 +123,30 @@ exports.RulesEngine = RulesEngine;
121
123
  * 正規化されたrulesパスを生成します。
122
124
  */
123
125
  function buildRulesPath({ database, table, indexKey }) {
124
- return [
125
- "database",
126
- encodeRulesPathSegment(database),
127
- encodeRulesPathSegment(table),
128
- encodeRulesPathSegment(indexKey),
129
- ].join("/");
126
+ return buildDatabaseRulesPath({ database, table, indexKey });
130
127
  }
131
128
  /**
132
129
  * Build a normalized database rules path.
133
130
  *
134
131
  * 正規化されたデータベースrulesパスを生成します。
135
132
  */
136
- function buildDatabaseRulesPath({ database }) {
133
+ function buildDatabaseRulesPath({ database, table, indexKey }) {
137
134
  return [
138
- "database",
139
135
  encodeRulesPathSegment(database),
140
- ].join("/");
136
+ table == null ? undefined : encodeRulesPathSegment(table),
137
+ indexKey == null ? undefined : encodeRulesPathSegment(indexKey),
138
+ ].filter((segment) => typeof segment === "string").join("/");
139
+ }
140
+ /**
141
+ * Build a normalized storage rules path.
142
+ *
143
+ * 正規化されたストレージrulesパスを生成します。
144
+ */
145
+ function buildStorageRulesPath({ path }) {
146
+ return path.trim().split("/")
147
+ .filter((segment) => segment.length > 0)
148
+ .map(encodeRulesPathSegment)
149
+ .join("/");
141
150
  }
142
151
  /**
143
152
  * Normalize HTTP method to rules operation.
@@ -212,6 +221,7 @@ async function filterAllowedScope({ engine, database, scope, authentication, })
212
221
  table: item.table,
213
222
  indexKey: "*",
214
223
  }),
224
+ target: "database",
215
225
  operation,
216
226
  authentication,
217
227
  });
@@ -238,6 +248,7 @@ async function resolveDatabaseTokenAccess({ engine, database, operations, scope
238
248
  const path = buildDatabaseRulesPath({ database });
239
249
  const directRead = await engine.evaluate({
240
250
  path,
251
+ target: "database",
241
252
  operation: "read",
242
253
  authentication,
243
254
  server: false,
@@ -246,6 +257,7 @@ async function resolveDatabaseTokenAccess({ engine, database, operations, scope
246
257
  ? directRead
247
258
  : await engine.evaluate({
248
259
  path,
260
+ target: "database",
249
261
  operation: "read",
250
262
  authentication,
251
263
  server: true,
@@ -448,6 +460,7 @@ async function resolveScopedOperationMode({ engine, database, table, operation,
448
460
  const expanded = expandRulesOperation(operation);
449
461
  const direct = await Promise.all(expanded.map((item) => engine.evaluate({
450
462
  path,
463
+ target: "database",
451
464
  operation: item,
452
465
  authentication,
453
466
  server: false,
@@ -471,6 +484,7 @@ async function resolveScopedOperationMode({ engine, database, table, operation,
471
484
  }
472
485
  const server = await Promise.all(expanded.map((item) => engine.evaluate({
473
486
  path,
487
+ target: "database",
474
488
  operation: item,
475
489
  authentication,
476
490
  server: true,
@@ -511,6 +525,7 @@ async function evaluateDatabaseWrite({ engine, path, authentication, server, })
511
525
  const results = await Promise.all(expandRulesOperation("write").map((operation) => {
512
526
  return engine.evaluate({
513
527
  path,
528
+ target: "database",
514
529
  operation,
515
530
  authentication,
516
531
  server,
@@ -553,6 +568,13 @@ function splitRulesPath(path) {
553
568
  }
554
569
  return path.split("/");
555
570
  }
571
+ function normalizeEvaluationPath(input) {
572
+ if (!input.target) {
573
+ return input.path;
574
+ }
575
+ const path = input.path.trim().replace(/^\/+|\/+$/g, "");
576
+ return `${input.target}/${path}`;
577
+ }
556
578
  function parseNamedPathParam(segment) {
557
579
  const match = /^\{([A-Za-z_][A-Za-z0-9_]*)\}$/.exec(segment);
558
580
  return match?.[1];
@@ -1 +1 @@
1
- {"version":3,"file":"rules_engine.js","sourceRoot":"","sources":["../../../../src/lib/src/rules/rules_engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rules_engine.js","sourceRoot":"","sources":["../../../../src/lib/src/rules/rules_engine.ts"],"names":[],"mappings":"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"}
@@ -16,6 +16,12 @@ export type RulesOperationAlias = "read" | "write";
16
16
  * ルール内で指定可能な操作キー。
17
17
  */
18
18
  export type RulesOperationKey = RulesOperation | RulesOperationAlias;
19
+ /**
20
+ * Rule target names supported by rules.json.
21
+ *
22
+ * rules.jsonでサポートする対象名。
23
+ */
24
+ export type RulesTarget = "database" | "storage";
19
25
  /**
20
26
  * Access rule for an operation.
21
27
  *
@@ -63,6 +69,12 @@ export type RulesEntry = Partial<Record<RulesOperationKey, RulesAccessRule>>;
63
69
  * パスパターンをキーにしたルールマップ。
64
70
  */
65
71
  export type RulesMap = Record<string, RulesEntry>;
72
+ /**
73
+ * Rule maps grouped by target.
74
+ *
75
+ * 対象ごとに分けたルールマップ。
76
+ */
77
+ export type RulesTargetMap = Partial<Record<RulesTarget, RulesMap>>;
66
78
  /**
67
79
  * rules.json configuration.
68
80
  *
@@ -70,7 +82,7 @@ export type RulesMap = Record<string, RulesEntry>;
70
82
  */
71
83
  export interface RulesConfig {
72
84
  version: string;
73
- rules: RulesMap;
85
+ rules: RulesTargetMap;
74
86
  }
75
87
  /**
76
88
  * Result of loading and validating rules.
@@ -78,6 +90,7 @@ export interface RulesConfig {
78
90
  * rulesの読み込み・検証結果。
79
91
  */
80
92
  export interface LoadedRulesConfig extends RulesConfig {
93
+ normalizedRules: RulesMap;
81
94
  }
82
95
  /**
83
96
  * Load and validate rules configuration.
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.loadRulesConfig = loadRulesConfig;
4
4
  exports.validateRulePath = validateRulePath;
5
5
  const allowedAccessValues = new Set(["deny", "allow", "authenticated", "server"]);
6
+ const allowedRulesTargets = new Set(["database", "storage"]);
6
7
  const allowedOperationKeys = new Set([
7
8
  "get",
8
9
  "create",
@@ -24,16 +25,30 @@ function loadRulesConfig(input) {
24
25
  throw new Error("Rules config version must be a non-empty string.");
25
26
  }
26
27
  if (!isRecord(input.rules) || Array.isArray(input.rules)) {
27
- throw new Error("Rules config rules must be an object map.");
28
+ throw new Error("Rules config rules must be an object.");
28
29
  }
29
30
  const rules = {};
30
- for (const [path, entry] of Object.entries(input.rules)) {
31
- validateRulePath(path);
32
- rules[path] = validateRulesEntry(path, entry);
31
+ const normalizedRules = {};
32
+ for (const [target, map] of Object.entries(input.rules)) {
33
+ if (!allowedRulesTargets.has(target)) {
34
+ throw new Error(`Unsupported rules target '${target}'.`);
35
+ }
36
+ if (!isRecord(map) || Array.isArray(map)) {
37
+ throw new Error(`Rules target '${target}' must be an object map.`);
38
+ }
39
+ const targetRules = {};
40
+ for (const [path, entry] of Object.entries(map)) {
41
+ validateRulePath(path);
42
+ const validated = validateRulesEntry(path, entry);
43
+ targetRules[path] = validated;
44
+ normalizedRules[`${target}/${path}`] = validated;
45
+ }
46
+ rules[target] = targetRules;
33
47
  }
34
48
  return {
35
49
  version: input.version,
36
50
  rules,
51
+ normalizedRules,
37
52
  };
38
53
  }
39
54
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"rules_loader.js","sourceRoot":"","sources":["../../../../src/lib/src/rules/rules_loader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rules_loader.js","sourceRoot":"","sources":["../../../../src/lib/src/rules/rules_loader.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ import { Hono } from "hono";
2
+ import { WorkersBase, WorkersOptions } from "./workers_base";
3
+ /**
4
+ * Base class for defining Workers data for periodic scheduled execution.
5
+ *
6
+ * 定期スケジュール実行用のWorkersのデータを定義するためのベースクラス。
7
+ */
8
+ export declare abstract class ScheduleProcessWorkdersBase extends WorkersBase {
9
+ /**
10
+ * Base class for defining Workers data for periodic scheduled execution.
11
+ *
12
+ * 定期スケジュール実行用のWorkersのデータを定義するためのベースクラス。
13
+ */
14
+ constructor(options?: WorkersOptions);
15
+ /**
16
+ * Specify the actual contents of the scheduled process.
17
+ *
18
+ * 実際のスケジュール処理の中身を指定します。
19
+ */
20
+ abstract process(event: ScheduledEvent, env: unknown, ctx: ExecutionContext): Promise<void>;
21
+ data: {
22
+ [key: string]: any;
23
+ };
24
+ build(defaultOptions?: WorkersOptions): Hono;
25
+ }
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ScheduleProcessWorkdersBase = void 0;
4
+ const hono_1 = require("hono");
5
+ const workers_base_1 = require("./workers_base");
6
+ /**
7
+ * Base class for defining Workers data for periodic scheduled execution.
8
+ *
9
+ * 定期スケジュール実行用のWorkersのデータを定義するためのベースクラス。
10
+ */
11
+ class ScheduleProcessWorkdersBase extends workers_base_1.WorkersBase {
12
+ /**
13
+ * Base class for defining Workers data for periodic scheduled execution.
14
+ *
15
+ * 定期スケジュール実行用のWorkersのデータを定義するためのベースクラス。
16
+ */
17
+ constructor(options = {}) {
18
+ super({ options: options });
19
+ }
20
+ data = {};
21
+ build(defaultOptions = {}) {
22
+ return new hono_1.Hono();
23
+ }
24
+ }
25
+ exports.ScheduleProcessWorkdersBase = ScheduleProcessWorkdersBase;
26
+ //# sourceMappingURL=schedule_process_workders_base.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schedule_process_workders_base.js","sourceRoot":"","sources":["../../../src/lib/src/schedule_process_workders_base.ts"],"names":[],"mappings":";;;AAAA,+BAA4B;AAC5B,iDAA6D;AAE7D;;;;GAIG;AACH,MAAsB,2BAA4B,SAAQ,0BAAW;IACjE;;;;OAIG;IACH,YAAY,UAA0B,EAAE;QACpC,KAAK,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;IAChC,CAAC;IAaD,IAAI,GAA2B,EAAE,CAAC;IAClC,KAAK,CAAC,iBAAiC,EAAE;QACrC,OAAO,IAAI,WAAI,EAAE,CAAC;IACtB,CAAC;CACJ;AAzBD,kEAyBC"}
@@ -124,6 +124,9 @@ function isWorkersRuleAdapter(rules) {
124
124
  function isRulesConfig(rules) {
125
125
  return !!rules && typeof rules.version === "string" &&
126
126
  typeof rules.rules === "object" &&
127
- rules.rules !== null;
127
+ rules.rules !== null &&
128
+ !Array.isArray(rules.rules) &&
129
+ (typeof rules.rules.database === "object" ||
130
+ typeof rules.rules.storage === "object");
128
131
  }
129
132
  //# sourceMappingURL=workers_base.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"workers_base.js","sourceRoot":"","sources":["../../../src/lib/src/workers_base.ts"],"names":[],"mappings":";;;AAyJA,sDAkBC;AAOD,oDAIC;AAOD,sCAMC;AA9LD;;;;;;;;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;IASjC;;;;OAIG;IACO,cAAc,CAAC,iBAAiC,EAAE;QACxD,OAAO,qBAAqB,CAAC,cAAc,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAC/D,CAAC;IAED;;;;OAIG;IACO,mBAAmB,CAAC,IAAU,EAAE,OAAuB;QAC7D,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;YACf,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;QACxC,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;;;OAIG;IACO,UAAU,CAAC,IAAU,EAAE,OAAuB;QACpD,IAAI,oBAAoB,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACtC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;QACzC,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ;AAxGD,kCAwGC;AA8BD;;;;GAIG;AACH,SAAgB,qBAAqB,CACjC,iBAAiC,EAAE,EACnC,UAA0B,EAAE;IAE5B,MAAM,WAAW,GAAG,cAAc,CAAC,IAAI,CAAC;IACxC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAC1B,MAAM,YAAY,GAAG,cAAc,CAAC,KAAK,CAAC;IAC1C,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAC5B,OAAO;QACH,GAAG,cAAc;QACjB,GAAG,OAAO;QACV,IAAI,EAAE,IAAI,KAAK,SAAS;YACpB,CAAC,CAAC,WAAW;YACb,CAAC,CAAC,IAAI;QACV,KAAK,EAAE,KAAK,KAAK,SAAS;YACtB,CAAC,CAAC,YAAY;YACd,CAAC,CAAC,KAAK;KACd,CAAC;AACN,CAAC;AAED;;;;GAIG;AACH,SAAgB,oBAAoB,CAChC,KAA4C;IAE5C,OAAO,CAAC,CAAC,KAAK,IAAI,OAAQ,KAAgC,CAAC,KAAK,KAAK,UAAU,CAAC;AACpF,CAAC;AAED;;;;GAIG;AACH,SAAgB,aAAa,CACzB,KAA4C;IAE5C,OAAO,CAAC,CAAC,KAAK,IAAI,OAAQ,KAAqB,CAAC,OAAO,KAAK,QAAQ;QAChE,OAAQ,KAAqB,CAAC,KAAK,KAAK,QAAQ;QAC/C,KAAqB,CAAC,KAAK,KAAK,IAAI,CAAC;AAC9C,CAAC"}
1
+ {"version":3,"file":"workers_base.js","sourceRoot":"","sources":["../../../src/lib/src/workers_base.ts"],"names":[],"mappings":";;;AAyJA,sDAkBC;AAOD,oDAIC;AAOD,sCAWC;AAnMD;;;;;;;;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;IASjC;;;;OAIG;IACO,cAAc,CAAC,iBAAiC,EAAE;QACxD,OAAO,qBAAqB,CAAC,cAAc,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAC/D,CAAC;IAED;;;;OAIG;IACO,mBAAmB,CAAC,IAAU,EAAE,OAAuB;QAC7D,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;YACf,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;QACxC,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;;;OAIG;IACO,UAAU,CAAC,IAAU,EAAE,OAAuB;QACpD,IAAI,oBAAoB,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACtC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;QACzC,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ;AAxGD,kCAwGC;AA8BD;;;;GAIG;AACH,SAAgB,qBAAqB,CACjC,iBAAiC,EAAE,EACnC,UAA0B,EAAE;IAE5B,MAAM,WAAW,GAAG,cAAc,CAAC,IAAI,CAAC;IACxC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAC1B,MAAM,YAAY,GAAG,cAAc,CAAC,KAAK,CAAC;IAC1C,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAC5B,OAAO;QACH,GAAG,cAAc;QACjB,GAAG,OAAO;QACV,IAAI,EAAE,IAAI,KAAK,SAAS;YACpB,CAAC,CAAC,WAAW;YACb,CAAC,CAAC,IAAI;QACV,KAAK,EAAE,KAAK,KAAK,SAAS;YACtB,CAAC,CAAC,YAAY;YACd,CAAC,CAAC,KAAK;KACd,CAAC;AACN,CAAC;AAED;;;;GAIG;AACH,SAAgB,oBAAoB,CAChC,KAA4C;IAE5C,OAAO,CAAC,CAAC,KAAK,IAAI,OAAQ,KAAgC,CAAC,KAAK,KAAK,UAAU,CAAC;AACpF,CAAC;AAED;;;;GAIG;AACH,SAAgB,aAAa,CACzB,KAA4C;IAE5C,OAAO,CAAC,CAAC,KAAK,IAAI,OAAQ,KAAqB,CAAC,OAAO,KAAK,QAAQ;QAChE,OAAQ,KAAqB,CAAC,KAAK,KAAK,QAAQ;QAC/C,KAAqB,CAAC,KAAK,KAAK,IAAI;QACrC,CAAC,KAAK,CAAC,OAAO,CAAE,KAAqB,CAAC,KAAK,CAAC;QAC5C,CACI,OAAQ,KAAqB,CAAC,KAAK,CAAC,QAAQ,KAAK,QAAQ;YACzD,OAAQ,KAAqB,CAAC,KAAK,CAAC,OAAO,KAAK,QAAQ,CAC3D,CAAC;AACV,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mathrunet/masamune_cloudflare",
3
- "version": "3.1.9",
3
+ "version": "3.2.0",
4
4
  "description": "Manages packages on Cloudflare Workers for the server portion of the Masamune framework.",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",