@trokky/trokky 3.0.0 → 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.
Files changed (100) hide show
  1. package/dist/adapters/cloudflare-d1/cloudflare-d1-adapter.d.ts +132 -0
  2. package/dist/adapters/cloudflare-d1/cloudflare-d1-adapter.d.ts.map +1 -0
  3. package/dist/adapters/cloudflare-d1/cloudflare-d1-adapter.js +811 -0
  4. package/dist/adapters/cloudflare-d1/cloudflare-d1-adapter.js.map +1 -0
  5. package/dist/adapters/cloudflare-d1/index.d.ts +5 -0
  6. package/dist/adapters/cloudflare-d1/index.d.ts.map +1 -0
  7. package/dist/adapters/cloudflare-d1/index.js +12 -0
  8. package/dist/adapters/cloudflare-d1/index.js.map +1 -0
  9. package/dist/adapters/cloudflare-d1/rate-limit-store.d.ts +46 -0
  10. package/dist/adapters/cloudflare-d1/rate-limit-store.d.ts.map +1 -0
  11. package/dist/adapters/cloudflare-d1/rate-limit-store.js +96 -0
  12. package/dist/adapters/cloudflare-d1/rate-limit-store.js.map +1 -0
  13. package/dist/adapters/cloudflare-d1/types.d.ts +69 -0
  14. package/dist/adapters/cloudflare-d1/types.d.ts.map +1 -0
  15. package/dist/adapters/cloudflare-d1/types.js +2 -0
  16. package/dist/adapters/cloudflare-d1/types.js.map +1 -0
  17. package/dist/adapters/cloudflare-r2/cloudflare-r2-adapter.d.ts +86 -0
  18. package/dist/adapters/cloudflare-r2/cloudflare-r2-adapter.d.ts.map +1 -0
  19. package/dist/adapters/cloudflare-r2/cloudflare-r2-adapter.js +493 -0
  20. package/dist/adapters/cloudflare-r2/cloudflare-r2-adapter.js.map +1 -0
  21. package/dist/adapters/cloudflare-r2/index.d.ts +3 -0
  22. package/dist/adapters/cloudflare-r2/index.d.ts.map +1 -0
  23. package/dist/adapters/cloudflare-r2/index.js +11 -0
  24. package/dist/adapters/cloudflare-r2/index.js.map +1 -0
  25. package/dist/adapters/cloudflare-r2/types.d.ts +43 -0
  26. package/dist/adapters/cloudflare-r2/types.d.ts.map +1 -0
  27. package/dist/adapters/cloudflare-r2/types.js +2 -0
  28. package/dist/adapters/cloudflare-r2/types.js.map +1 -0
  29. package/dist/core/media/image-processor.d.ts.map +1 -1
  30. package/dist/core/media/image-processor.js +5 -13
  31. package/dist/core/media/image-processor.js.map +1 -1
  32. package/dist/core/media/processors/sharp.d.ts.map +1 -1
  33. package/dist/core/media/processors/sharp.js +13 -2
  34. package/dist/core/media/processors/sharp.js.map +1 -1
  35. package/dist/core/media/processors/types.d.ts +1 -1
  36. package/dist/core/media/processors/types.d.ts.map +1 -1
  37. package/dist/core/security/rate-limit-store.d.ts +56 -0
  38. package/dist/core/security/rate-limit-store.d.ts.map +1 -0
  39. package/dist/core/security/rate-limit-store.js +55 -0
  40. package/dist/core/security/rate-limit-store.js.map +1 -0
  41. package/dist/core/security/rate-limiter.d.ts +30 -2
  42. package/dist/core/security/rate-limiter.d.ts.map +1 -1
  43. package/dist/core/security/rate-limiter.js +50 -19
  44. package/dist/core/security/rate-limiter.js.map +1 -1
  45. package/dist/core/services/media-service.d.ts +34 -0
  46. package/dist/core/services/media-service.d.ts.map +1 -1
  47. package/dist/core/services/media-service.js +172 -120
  48. package/dist/core/services/media-service.js.map +1 -1
  49. package/dist/core/utils/retry.d.ts +45 -0
  50. package/dist/core/utils/retry.d.ts.map +1 -0
  51. package/dist/core/utils/retry.js +47 -0
  52. package/dist/core/utils/retry.js.map +1 -0
  53. package/dist/integrations/express/config.d.ts +31 -14
  54. package/dist/integrations/express/config.d.ts.map +1 -1
  55. package/dist/integrations/express/config.js +25 -8
  56. package/dist/integrations/express/config.js.map +1 -1
  57. package/dist/integrations/express/integration.d.ts.map +1 -1
  58. package/dist/integrations/express/integration.js +13 -6
  59. package/dist/integrations/express/integration.js.map +1 -1
  60. package/dist/integrations/express/server.d.ts.map +1 -1
  61. package/dist/integrations/express/server.js +5 -2
  62. package/dist/integrations/express/server.js.map +1 -1
  63. package/dist/integrations/express/types.d.ts +0 -5
  64. package/dist/integrations/express/types.d.ts.map +1 -1
  65. package/dist/integrations/workers/adapter.d.ts +28 -0
  66. package/dist/integrations/workers/adapter.d.ts.map +1 -0
  67. package/dist/integrations/workers/adapter.js +111 -0
  68. package/dist/integrations/workers/adapter.js.map +1 -0
  69. package/dist/integrations/workers/index.d.ts +22 -0
  70. package/dist/integrations/workers/index.d.ts.map +1 -0
  71. package/dist/integrations/workers/index.js +60 -0
  72. package/dist/integrations/workers/index.js.map +1 -0
  73. package/dist/routes/auth/auth-flow-store.d.ts +17 -0
  74. package/dist/routes/auth/auth-flow-store.d.ts.map +1 -1
  75. package/dist/routes/auth/auth-flow-store.js +27 -0
  76. package/dist/routes/auth/auth-flow-store.js.map +1 -1
  77. package/dist/routes/auth/oauth.d.ts.map +1 -1
  78. package/dist/routes/auth/oauth.js +5 -12
  79. package/dist/routes/auth/oauth.js.map +1 -1
  80. package/dist/routes/auth/passkey.d.ts.map +1 -1
  81. package/dist/routes/auth/passkey.js +5 -8
  82. package/dist/routes/auth/passkey.js.map +1 -1
  83. package/dist/structure/validation/schemas.d.ts +69 -69
  84. package/package.json +20 -1
  85. package/dist/core/media/processors/cloudflare-images.d.ts +0 -83
  86. package/dist/core/media/processors/cloudflare-images.d.ts.map +0 -1
  87. package/dist/core/media/processors/cloudflare-images.js +0 -241
  88. package/dist/core/media/processors/cloudflare-images.js.map +0 -1
  89. package/dist/core/media/processors/cloudflare-transform-store.d.ts +0 -127
  90. package/dist/core/media/processors/cloudflare-transform-store.d.ts.map +0 -1
  91. package/dist/core/media/processors/cloudflare-transform-store.js +0 -237
  92. package/dist/core/media/processors/cloudflare-transform-store.js.map +0 -1
  93. package/dist/core/media/processors/cloudflare-transformations.d.ts +0 -81
  94. package/dist/core/media/processors/cloudflare-transformations.d.ts.map +0 -1
  95. package/dist/core/media/processors/cloudflare-transformations.js +0 -144
  96. package/dist/core/media/processors/cloudflare-transformations.js.map +0 -1
  97. package/dist/core/media/processors/workers-images.d.ts +0 -112
  98. package/dist/core/media/processors/workers-images.d.ts.map +0 -1
  99. package/dist/core/media/processors/workers-images.js +0 -257
  100. package/dist/core/media/processors/workers-images.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cloudflare-d1-adapter.js","sourceRoot":"","sources":["../../../src/adapters/cloudflare-d1/cloudflare-d1-adapter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ export { CloudflareD1Adapter } from './cloudflare-d1-adapter.js';
2
+ export { D1RateLimitStore } from './rate-limit-store.js';
3
+ export type { D1RateLimitStoreConfig } from './rate-limit-store.js';
4
+ export type { CloudflareD1AdapterConfig, D1DocumentRow, D1UserRow, D1AppTokenRow, D1AuthFlowStateRow } from './types.js';
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/adapters/cloudflare-d1/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAA;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AACxD,YAAY,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAA;AACnE,YAAY,EACV,yBAAyB,EACzB,aAAa,EACb,SAAS,EACT,aAAa,EACb,kBAAkB,EACnB,MAAM,YAAY,CAAA"}
@@ -0,0 +1,12 @@
1
+ export { CloudflareD1Adapter } from './cloudflare-d1-adapter.js';
2
+ export { D1RateLimitStore } from './rate-limit-store.js';
3
+ // Auto-register in the adapter registry when imported, like the other adapters.
4
+ import { registerAdapter } from '../../core/index.js';
5
+ import { CloudflareD1Adapter } from './cloudflare-d1-adapter.js';
6
+ registerAdapter({
7
+ name: 'cloudflare-d1',
8
+ type: 'data',
9
+ environments: ['edge', 'cloudflare'],
10
+ factory: (config) => new CloudflareD1Adapter(config)
11
+ });
12
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/adapters/cloudflare-d1/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAA;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AAUxD,gFAAgF;AAChF,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AACrD,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAA;AAGhE,eAAe,CAAC;IACd,IAAI,EAAE,eAAe;IACrB,IAAI,EAAE,MAAM;IACZ,YAAY,EAAE,CAAC,MAAM,EAAE,YAAY,CAAC;IACpC,OAAO,EAAE,CAAC,MAAiC,EAAE,EAAE,CAAC,IAAI,mBAAmB,CAAC,MAAM,CAAC;CAChF,CAAC,CAAA"}
@@ -0,0 +1,46 @@
1
+ /**
2
+ * Rate limit counters in D1.
3
+ *
4
+ * Deliberately D1 and not Durable Objects or KV. A Trokky install on Workers
5
+ * already has a D1 binding — it is the data store — so counters here add no new
6
+ * binding, no new resource to provision and nothing extra for a one-click deploy
7
+ * to create. KV is the wrong shape entirely: its reads are cached and its writes
8
+ * take up to a minute to propagate, so a limiter built on it would admit a burst
9
+ * it believes it has already refused.
10
+ *
11
+ * Affordability comes from the lease in `core/security/rate-limit-store.ts`, not
12
+ * from the storage: one statement per lease, not per request.
13
+ */
14
+ import type { D1Database } from '@cloudflare/workers-types';
15
+ import type { RateLimitReservation, RateLimitStore } from '../../core/security/rate-limit-store.js';
16
+ export interface D1RateLimitStoreConfig {
17
+ database: D1Database;
18
+ /** Must match the adapter's, so both see the same table. @default 'trokky_' */
19
+ tablePrefix?: string;
20
+ }
21
+ export declare class D1RateLimitStore implements RateLimitStore {
22
+ private readonly db;
23
+ private readonly table;
24
+ private ready;
25
+ private lastSweep;
26
+ constructor(config: D1RateLimitStoreConfig);
27
+ private ensureTable;
28
+ /**
29
+ * One statement, so two isolates reserving at once cannot both be handed the
30
+ * last unit. In SQLite's `DO UPDATE`, a `table.column` reference is the row as
31
+ * it was before this statement, which is what makes the arithmetic sound.
32
+ *
33
+ * `last_granted` exists because `RETURNING` reports the row's final state and
34
+ * we need the delta. Computing it in the same statement and reading it back is
35
+ * how the caller learns what it actually got.
36
+ */
37
+ reserve({ key, windowStart, want, max }: RateLimitReservation): Promise<number>;
38
+ /**
39
+ * Opportunistic garbage collection. There is no background timer on an edge
40
+ * runtime, so old rows are cleared during a request that was going to touch
41
+ * this table anyway, and at most once every few minutes per isolate. Nothing
42
+ * depends on it: a stale row is overwritten by the next window's reservation.
43
+ */
44
+ private maybeSweep;
45
+ }
46
+ //# sourceMappingURL=rate-limit-store.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rate-limit-store.d.ts","sourceRoot":"","sources":["../../../src/adapters/cloudflare-d1/rate-limit-store.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAA;AAC3D,OAAO,KAAK,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAA;AAKnG,MAAM,WAAW,sBAAsB;IACrC,QAAQ,EAAE,UAAU,CAAA;IACpB,+EAA+E;IAC/E,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAED,qBAAa,gBAAiB,YAAW,cAAc;IACrD,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAY;IAC/B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAQ;IAC9B,OAAO,CAAC,KAAK,CAA6B;IAC1C,OAAO,CAAC,SAAS,CAAI;gBAET,MAAM,EAAE,sBAAsB;YAK5B,WAAW;IAqBzB;;;;;;;;OAQG;IACU,OAAO,CAAC,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,oBAAoB,GAAG,OAAO,CAAC,MAAM,CAAC;IA4B5F;;;;;OAKG;YACW,UAAU;CAazB"}
@@ -0,0 +1,96 @@
1
+ /**
2
+ * Rate limit counters in D1.
3
+ *
4
+ * Deliberately D1 and not Durable Objects or KV. A Trokky install on Workers
5
+ * already has a D1 binding — it is the data store — so counters here add no new
6
+ * binding, no new resource to provision and nothing extra for a one-click deploy
7
+ * to create. KV is the wrong shape entirely: its reads are cached and its writes
8
+ * take up to a minute to propagate, so a limiter built on it would admit a burst
9
+ * it believes it has already refused.
10
+ *
11
+ * Affordability comes from the lease in `core/security/rate-limit-store.ts`, not
12
+ * from the storage: one statement per lease, not per request.
13
+ */
14
+ /** How often, at most, to delete counters from windows long past. */
15
+ const SWEEP_INTERVAL_MS = 5 * 60 * 1000;
16
+ export class D1RateLimitStore {
17
+ db;
18
+ table;
19
+ ready = null;
20
+ lastSweep = 0;
21
+ constructor(config) {
22
+ this.db = config.database;
23
+ this.table = `${config.tablePrefix ?? 'trokky_'}rate_limits`;
24
+ }
25
+ async ensureTable() {
26
+ if (!this.ready) {
27
+ this.ready = (async () => {
28
+ await this.db
29
+ .prepare(`CREATE TABLE IF NOT EXISTS ${this.table} (
30
+ key TEXT PRIMARY KEY,
31
+ window_start INTEGER NOT NULL,
32
+ used INTEGER NOT NULL,
33
+ last_granted INTEGER NOT NULL
34
+ )`)
35
+ .run();
36
+ })().catch(error => {
37
+ this.ready = null;
38
+ throw error;
39
+ });
40
+ }
41
+ await this.ready;
42
+ }
43
+ /**
44
+ * One statement, so two isolates reserving at once cannot both be handed the
45
+ * last unit. In SQLite's `DO UPDATE`, a `table.column` reference is the row as
46
+ * it was before this statement, which is what makes the arithmetic sound.
47
+ *
48
+ * `last_granted` exists because `RETURNING` reports the row's final state and
49
+ * we need the delta. Computing it in the same statement and reading it back is
50
+ * how the caller learns what it actually got.
51
+ */
52
+ async reserve({ key, windowStart, want, max }) {
53
+ await this.ensureTable();
54
+ const initial = Math.max(0, Math.min(want, max));
55
+ const row = await this.db
56
+ .prepare(`INSERT INTO ${this.table} (key, window_start, used, last_granted)
57
+ VALUES (?1, ?2, ?3, ?3)
58
+ ON CONFLICT(key) DO UPDATE SET
59
+ last_granted = CASE
60
+ WHEN ${this.table}.window_start < ?2 THEN ?3
61
+ ELSE MAX(0, MIN(?4, ?5 - ${this.table}.used))
62
+ END,
63
+ used = CASE
64
+ WHEN ${this.table}.window_start < ?2 THEN ?3
65
+ ELSE ${this.table}.used + MAX(0, MIN(?4, ?5 - ${this.table}.used))
66
+ END,
67
+ window_start = ?2
68
+ RETURNING last_granted AS granted`)
69
+ .bind(key, windowStart, initial, want, max)
70
+ .first();
71
+ void this.maybeSweep(windowStart);
72
+ return Number(row?.granted ?? 0);
73
+ }
74
+ /**
75
+ * Opportunistic garbage collection. There is no background timer on an edge
76
+ * runtime, so old rows are cleared during a request that was going to touch
77
+ * this table anyway, and at most once every few minutes per isolate. Nothing
78
+ * depends on it: a stale row is overwritten by the next window's reservation.
79
+ */
80
+ async maybeSweep(windowStart) {
81
+ const now = Date.now();
82
+ if (now - this.lastSweep < SWEEP_INTERVAL_MS)
83
+ return;
84
+ this.lastSweep = now;
85
+ try {
86
+ await this.db
87
+ .prepare(`DELETE FROM ${this.table} WHERE window_start < ?`)
88
+ .bind(windowStart - SWEEP_INTERVAL_MS)
89
+ .run();
90
+ }
91
+ catch {
92
+ // Best effort by design; a failed sweep must never fail a request.
93
+ }
94
+ }
95
+ }
96
+ //# sourceMappingURL=rate-limit-store.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rate-limit-store.js","sourceRoot":"","sources":["../../../src/adapters/cloudflare-d1/rate-limit-store.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAKH,qEAAqE;AACrE,MAAM,iBAAiB,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAA;AAQvC,MAAM,OAAO,gBAAgB;IACV,EAAE,CAAY;IACd,KAAK,CAAQ;IACtB,KAAK,GAAyB,IAAI,CAAA;IAClC,SAAS,GAAG,CAAC,CAAA;IAErB,YAAY,MAA8B;QACxC,IAAI,CAAC,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAA;QACzB,IAAI,CAAC,KAAK,GAAG,GAAG,MAAM,CAAC,WAAW,IAAI,SAAS,aAAa,CAAA;IAC9D,CAAC;IAEO,KAAK,CAAC,WAAW;QACvB,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAChB,IAAI,CAAC,KAAK,GAAG,CAAC,KAAK,IAAI,EAAE;gBACvB,MAAM,IAAI,CAAC,EAAE;qBACV,OAAO,CACN,8BAA8B,IAAI,CAAC,KAAK;;;;;eAKrC,CACJ;qBACA,GAAG,EAAE,CAAA;YACV,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE;gBACjB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAA;gBACjB,MAAM,KAAK,CAAA;YACb,CAAC,CAAC,CAAA;QACJ,CAAC;QACD,MAAM,IAAI,CAAC,KAAK,CAAA;IAClB,CAAC;IAED;;;;;;;;OAQG;IACI,KAAK,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,EAAwB;QACxE,MAAM,IAAI,CAAC,WAAW,EAAE,CAAA;QAExB,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAA;QAEhD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,EAAE;aACtB,OAAO,CACN,eAAe,IAAI,CAAC,KAAK;;;;oBAIb,IAAI,CAAC,KAAK;wCACU,IAAI,CAAC,KAAK;;;oBAG9B,IAAI,CAAC,KAAK;oBACV,IAAI,CAAC,KAAK,+BAA+B,IAAI,CAAC,KAAK;;;2CAG5B,CACpC;aACA,IAAI,CAAC,GAAG,EAAE,WAAW,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,CAAC;aAC1C,KAAK,EAAuB,CAAA;QAE/B,KAAK,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,CAAA;QACjC,OAAO,MAAM,CAAC,GAAG,EAAE,OAAO,IAAI,CAAC,CAAC,CAAA;IAClC,CAAC;IAED;;;;;OAKG;IACK,KAAK,CAAC,UAAU,CAAC,WAAmB;QAC1C,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QACtB,IAAI,GAAG,GAAG,IAAI,CAAC,SAAS,GAAG,iBAAiB;YAAE,OAAM;QACpD,IAAI,CAAC,SAAS,GAAG,GAAG,CAAA;QACpB,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,EAAE;iBACV,OAAO,CAAC,eAAe,IAAI,CAAC,KAAK,yBAAyB,CAAC;iBAC3D,IAAI,CAAC,WAAW,GAAG,iBAAiB,CAAC;iBACrC,GAAG,EAAE,CAAA;QACV,CAAC;QAAC,MAAM,CAAC;YACP,mEAAmE;QACrE,CAAC;IACH,CAAC;CACF"}
@@ -0,0 +1,69 @@
1
+ import type { D1Database } from '@cloudflare/workers-types';
2
+ export interface CloudflareD1AdapterConfig {
3
+ /**
4
+ * The D1 binding from the platform, e.g. `env.DB`. Required: unlike a
5
+ * connection string there is nothing an edge runtime can dial on its own.
6
+ */
7
+ database: D1Database;
8
+ /** Table name prefix for all Trokky tables. @default 'trokky_' */
9
+ tablePrefix?: string;
10
+ /** Create tables and indexes on first use. @default true */
11
+ autoMigrate?: boolean;
12
+ }
13
+ /** A row of the documents table, before mapping. */
14
+ export interface D1DocumentRow {
15
+ collection: string;
16
+ id: string;
17
+ data: string;
18
+ status: string | null;
19
+ created_at: string;
20
+ updated_at: string;
21
+ created_by: string | null;
22
+ updated_by: string | null;
23
+ created_by_type: string | null;
24
+ updated_by_type: string | null;
25
+ revision: number;
26
+ }
27
+ /** A row of the users table, before mapping. */
28
+ export interface D1UserRow {
29
+ id: string;
30
+ username: string;
31
+ email: string;
32
+ password_hash: string | null;
33
+ first_name: string | null;
34
+ last_name: string | null;
35
+ role: string | null;
36
+ permissions: string | null;
37
+ is_active: number | null;
38
+ profile_image: string | null;
39
+ preferences: string | null;
40
+ oauth_providers: string | null;
41
+ mfa: string | null;
42
+ passkeys: string | null;
43
+ last_login_at: string | null;
44
+ created_at: string;
45
+ updated_at: string;
46
+ }
47
+ /** A row of the app_tokens table, before mapping. */
48
+ export interface D1AppTokenRow {
49
+ id: string;
50
+ name: string;
51
+ description: string | null;
52
+ hash: string;
53
+ permissions: string | null;
54
+ created_by: string | null;
55
+ is_active: number | null;
56
+ usage_count: number | null;
57
+ last_used_at: string | null;
58
+ expires_at: string | null;
59
+ created_at: string;
60
+ updated_at: string;
61
+ }
62
+ /** A row of the auth_flow_state table, before mapping. */
63
+ export interface D1AuthFlowStateRow {
64
+ id: string;
65
+ kind: string;
66
+ data: string;
67
+ expires_at: string;
68
+ }
69
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/adapters/cloudflare-d1/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAA;AAE3D,MAAM,WAAW,yBAAyB;IACxC;;;OAGG;IACH,QAAQ,EAAE,UAAU,CAAA;IACpB,kEAAkE;IAClE,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,4DAA4D;IAC5D,WAAW,CAAC,EAAE,OAAO,CAAA;CACtB;AAED,oDAAoD;AACpD,MAAM,WAAW,aAAa;IAC5B,UAAU,EAAE,MAAM,CAAA;IAClB,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;IACzB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;IACzB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAA;IAC9B,eAAe,EAAE,MAAM,GAAG,IAAI,CAAA;IAC9B,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED,gDAAgD;AAChD,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAA;IACV,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,MAAM,CAAA;IACb,aAAa,EAAE,MAAM,GAAG,IAAI,CAAA;IAC5B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;IACzB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;IACnB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAA;IAC5B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1B,eAAe,EAAE,MAAM,GAAG,IAAI,CAAA;IAC9B,GAAG,EAAE,MAAM,GAAG,IAAI,CAAA;IAClB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAA;IAC5B,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,MAAM,CAAA;CACnB;AAED,qDAAqD;AACrD,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1B,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;IACzB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;IACzB,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,MAAM,CAAA;CACnB;AAED,0DAA0D;AAC1D,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,UAAU,EAAE,MAAM,CAAA;CACnB"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/adapters/cloudflare-d1/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,86 @@
1
+ /**
2
+ * Cloudflare R2 media storage adapter.
3
+ *
4
+ * R2 is a flat key/value object store with no directories, no metadata queries and no
5
+ * transactions, which drives every choice below:
6
+ *
7
+ * - **Bytes and description are two objects.** `files/<id>` holds the content and
8
+ * `meta/<id>.json` holds the record. Updating a title must not rewrite a 12MB photo,
9
+ * and serving the photo must not parse JSON.
10
+ * - **The listing carries its own index.** The sortable and filterable fields are
11
+ * mirrored into each record object's `customMetadata`, so `listMedia` can filter, sort
12
+ * and count from one `list()` sweep and then read full records only for the page it is
13
+ * about to return. Without that, listing 900 files would mean 900 GETs.
14
+ * - **The record object is the source of truth for existence.** It is written last on
15
+ * upload and deleted first on delete, so a half-finished operation can leave an
16
+ * orphaned blob — which `cleanup()` reclaims — but never a listing entry pointing at
17
+ * bytes that are not there.
18
+ * - **Variant keys carry no format.** `variants/<id>/<name>` with the format in
19
+ * `customMetadata` means re-encoding a variant to another format overwrites it instead
20
+ * of leaving both behind, and reading one needs no lookup in the parent's metadata.
21
+ * - **Caller fields are namespaced under `custom`.** A caller passing `{ size: 0 }` to
22
+ * `updateFile` must not be able to shadow the real size in the listing index.
23
+ */
24
+ import type { MediaFile, MediaMetadata } from '../../core/types/index.js';
25
+ import type { MediaListOptions, MediaListResult, MediaStorageAdapter, MediaVariant } from '../../core/types/storage-adapters.js';
26
+ import type { CloudflareR2AdapterConfig } from './types.js';
27
+ export declare class CloudflareR2Adapter implements MediaStorageAdapter {
28
+ private readonly bucket;
29
+ private readonly prefix;
30
+ private readonly publicBaseUrl?;
31
+ private readonly maxFileSize;
32
+ private readonly silent;
33
+ private readonly logger;
34
+ constructor(config: CloudflareR2AdapterConfig);
35
+ private fileKey;
36
+ private recordKey;
37
+ private variantKey;
38
+ private variantPrefix;
39
+ uploadFile(file: File, metadata: MediaMetadata): Promise<MediaFile>;
40
+ getFile(id: string): Promise<MediaFile | null>;
41
+ updateFile(id: string, metadata: Record<string, any>): Promise<MediaFile>;
42
+ getFileContent(id: string): Promise<ArrayBuffer | null>;
43
+ getFileUrl(id: string): Promise<string | null>;
44
+ fileExists(id: string): Promise<boolean>;
45
+ getFileSize(id: string): Promise<number | null>;
46
+ deleteFile(id: string): Promise<void>;
47
+ listMedia(options?: MediaListOptions): Promise<MediaListResult>;
48
+ saveVariantFile(parentId: string, variantName: string, buffer: Buffer, format: string): Promise<string>;
49
+ getVariantContent(parentId: string, variantName: string): Promise<ArrayBuffer | null>;
50
+ getVariantUrl(parentId: string, variantName: string): Promise<string | null>;
51
+ listVariants(parentId: string): Promise<MediaVariant[]>;
52
+ deleteVariantFiles(parentId: string): Promise<void>;
53
+ deleteVariant(parentId: string, variantName: string): Promise<void>;
54
+ healthCheck(): Promise<boolean>;
55
+ getStorageInfo(): Promise<{
56
+ totalFiles: number;
57
+ totalSize: number;
58
+ availableSpace?: number;
59
+ usedSpace?: number;
60
+ [key: string]: unknown;
61
+ }>;
62
+ /**
63
+ * Delete blobs and variants no record points at any more.
64
+ *
65
+ * These accumulate when a delete or an upload is interrupted between its two writes. The
66
+ * record objects are the authority: anything under `files/` or `variants/` whose id has no
67
+ * record is unreachable and safe to drop.
68
+ */
69
+ cleanup(): Promise<number>;
70
+ private writeRecord;
71
+ private readRecord;
72
+ /**
73
+ * Every record in the bucket, read from the listing's customMetadata rather than from the
74
+ * objects themselves. A record written without that index (an older adapter, a manual copy)
75
+ * falls back to a real read so it is not silently invisible.
76
+ */
77
+ private listIndex;
78
+ /** Walk every page of a prefix; R2 truncates, and a partial listing would mis-count totals. */
79
+ private listAll;
80
+ /** R2 accepts up to 1000 keys per delete; anything longer is chunked. */
81
+ private deleteKeys;
82
+ private sortIndex;
83
+ private toMediaFile;
84
+ private validateMediaMetadata;
85
+ }
86
+ //# sourceMappingURL=cloudflare-r2-adapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cloudflare-r2-adapter.d.ts","sourceRoot":"","sources":["../../../src/adapters/cloudflare-r2/cloudflare-r2-adapter.ts"],"names":[],"mappings":"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"}