@truto/ginger 1.4.0 → 2.0.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/README.md CHANGED
@@ -139,6 +139,10 @@ function createUsersService(
139
139
  encryptionKeys,
140
140
  timestamps: { createdAt: 'created_at', updatedAt: 'updated_at' },
141
141
  hooks: {
142
+ // NOTE: this scopes `list` only. In a real multi-tenant app you must
143
+ // also scope `get` / `update` / `delete` (and `count`) the same way,
144
+ // or callers can reach other tenants' rows by id. See
145
+ // "Row-level authorization (multi-tenant scoping)" below.
142
146
  list: {
143
147
  before: async (ctx: any) => {
144
148
  if (!ctx.auth.user?.tenantId) throw new Error('Missing tenant')
@@ -301,6 +305,78 @@ interface AuthContext {
301
305
  }
302
306
  ```
303
307
 
308
+ ### Row-level authorization (multi-tenant scoping)
309
+
310
+ > **Important:** Ginger does **not** apply any implicit tenant/ownership
311
+ > filter. By default, `get`, `update`, and `delete` locate rows by **primary
312
+ > key only** — so a caller who knows (or guesses) an `id` can read or mutate
313
+ > **any** row, including other tenants'. In a multi-tenant app you **must**
314
+ > scope these methods yourself, or you have an IDOR.
315
+
316
+ `list`, `get`, `update`, and `delete` all accept an optional `where` filter
317
+ that is **AND-combined** with the operation. For `get`/`update`/`delete` it is
318
+ combined with the primary-key lookup; a non-matching scope makes `get` return
319
+ `null` and makes `update`/`delete` throw `NotFoundError` (the row is never
320
+ touched).
321
+
322
+ The recommended pattern is to inject the scope from a `before` hook so every
323
+ method is covered with one helper. Hooks mutate `ctx.params.where`, which the
324
+ method reads when it runs:
325
+
326
+ ```typescript
327
+ import { createService, type BaseCtx } from '@truto/ginger'
328
+
329
+ // Scope every read/write to the caller's tenant.
330
+ async function scopeToTenant(ctx: BaseCtx) {
331
+ const tenantId = ctx.auth.user?.tenantId
332
+ if (!tenantId) throw new Error('Missing tenant')
333
+ ;(ctx.params as { where?: Record<string, unknown> }).where = {
334
+ ...(ctx.params as { where?: Record<string, unknown> }).where,
335
+ tenant_id: tenantId,
336
+ }
337
+ }
338
+
339
+ const usersService = createService({
340
+ // ...
341
+ hooks: {
342
+ list: { before: scopeToTenant },
343
+ get: { before: scopeToTenant },
344
+ update: { before: scopeToTenant },
345
+ delete: { before: scopeToTenant },
346
+ count: { before: scopeToTenant }, // see caveat below
347
+ create: {
348
+ before: async (ctx) => {
349
+ if (!ctx.auth.user?.tenantId) throw new Error('Missing tenant')
350
+ ;(ctx.data as { tenant_id?: string }).tenant_id = ctx.auth.user.tenantId
351
+ },
352
+ },
353
+ },
354
+ })
355
+
356
+ // Now cross-tenant access is denied:
357
+ await usersService.get(otherTenantId, { auth }) // → null
358
+ await usersService.update(otherTenantId, data, { auth }) // → throws NotFoundError
359
+ await usersService.delete(otherTenantId, { auth }) // → throws NotFoundError
360
+ ```
361
+
362
+ You can also pass the scope per call instead of via a hook:
363
+
364
+ ```typescript
365
+ await usersService.get(id, { auth, where: { tenant_id: 'tnt_1' } })
366
+ ```
367
+
368
+ The `where` scope is a full filter object (same syntax as `list`'s `where`),
369
+ so richer predicates work too — e.g. `where: { status: { ne: 'archived' } }`.
370
+
371
+ > **`count` is not auto-scoped.** `count(params)` has its own `where` and is
372
+ > **not** combined with anything implicitly — scope it explicitly (per call or
373
+ > via a `count` before-hook) exactly like the methods above, or it will count
374
+ > across all tenants.
375
+
376
+ > **`query` is unscoped by design.** The low-level `query` escape hatch runs
377
+ > the SQL you give it; apply your own filtering and never interpolate
378
+ > untrusted input into the SQL string (use the bound `...params`).
379
+
304
380
  ### Pagination
305
381
 
306
382
  Opaque cursor tokens (base64-encoded JSON) with `next` / `prev` support:
@@ -1 +1 @@
1
- {"version":3,"file":"crypto.d.ts","sourceRoot":"","sources":["../src/crypto.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAE7D;;GAEG;AACH,qBAAa,kBAAmB,YAAW,WAAW;IACpD,OAAO,CAAC,QAAQ,CAA+B;IAC/C,OAAO,CAAC,IAAI,CAAqB;gBAErB,IAAI,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAM;IAYvC,MAAM,CAAC,KAAK,GAAE,MAAkB,GAAG,OAAO,CAAC,SAAS,CAAC;CAoC5D;AAED;;GAEG;AACH,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,MAAM,CAAC,CASzD;AAED;;;GAGG;AACH,wBAAsB,OAAO,CAC3B,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,WAAW,EACxB,KAAK,GAAE,MAAkB,GACxB,OAAO,CAAC,MAAM,CAAC,CAyBjB;AAED;;GAEG;AACH,wBAAsB,OAAO,CAC3B,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,WAAW,GACvB,OAAO,CAAC,MAAM,CAAC,CAyCjB;AAED;;GAEG;AACH,wBAAsB,cAAc,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACpE,IAAI,EAAE,CAAC,EACP,OAAO,EAAE,SAAS,cAAc,EAAE,EAClC,WAAW,EAAE,WAAW,GACvB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAmClC;AAED;;GAEG;AACH,wBAAsB,cAAc,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACpE,IAAI,EAAE,CAAC,EACP,OAAO,EAAE,SAAS,cAAc,EAAE,EAClC,WAAW,EAAE,WAAW,GACvB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAmClC;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,SAAS,cAAc,EAAE,GAAG,MAAM,EAAE,CAE7E;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,SAAS,cAAc,EAAE,GACjC,MAAM,EAAE,CAEV"}
1
+ {"version":3,"file":"crypto.d.ts","sourceRoot":"","sources":["../src/crypto.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAE7D;;GAEG;AACH,qBAAa,kBAAmB,YAAW,WAAW;IACpD,OAAO,CAAC,QAAQ,CAA+B;IAC/C,OAAO,CAAC,IAAI,CAAqB;gBAErB,IAAI,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAM;IASvC,MAAM,CAAC,KAAK,GAAE,MAAkB,GAAG,OAAO,CAAC,SAAS,CAAC;CAkD5D;AAED;;GAEG;AACH,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,MAAM,CAAC,CASzD;AAED;;;GAGG;AACH,wBAAsB,OAAO,CAC3B,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,WAAW,EACxB,KAAK,GAAE,MAAkB,GACxB,OAAO,CAAC,MAAM,CAAC,CAyBjB;AAED;;GAEG;AACH,wBAAsB,OAAO,CAC3B,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,WAAW,GACvB,OAAO,CAAC,MAAM,CAAC,CAyCjB;AAED;;GAEG;AACH,wBAAsB,cAAc,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACpE,IAAI,EAAE,CAAC,EACP,OAAO,EAAE,SAAS,cAAc,EAAE,EAClC,WAAW,EAAE,WAAW,GACvB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAmClC;AAED;;GAEG;AACH,wBAAsB,cAAc,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACpE,IAAI,EAAE,CAAC,EACP,OAAO,EAAE,SAAS,cAAc,EAAE,EAClC,WAAW,EAAE,WAAW,GACvB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAmClC;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,SAAS,cAAc,EAAE,GAAG,MAAM,EAAE,CAE7E;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,SAAS,cAAc,EAAE,GACjC,MAAM,EAAE,CAEV"}
package/dist/crypto.js CHANGED
@@ -6,13 +6,12 @@ export class DefaultKeyProvider {
6
6
  keyCache = new Map();
7
7
  keys;
8
8
  constructor(keys = {}) {
9
+ // SECURITY: keys must be passed explicitly. We intentionally do NOT fall
10
+ // back to process.env.SECRET_KEY — implicitly adopting an ambient env var
11
+ // as the default encryption key leads to surprising key provenance in
12
+ // shared/CI environments. Callers that want env-based keys should read
13
+ // them explicitly and pass them here (or supply a custom keyProvider).
9
14
  this.keys = new Map(Object.entries(keys));
10
- // If no keys provided but a default key exists, use it
11
- if (this.keys.size === 0 &&
12
- typeof process !== 'undefined' &&
13
- process.env?.SECRET_KEY) {
14
- this.keys.set('default', process.env.SECRET_KEY);
15
- }
16
15
  }
17
16
  async getKey(keyId = 'default') {
18
17
  const cached = this.keyCache.get(keyId);
@@ -28,11 +27,21 @@ export class DefaultKeyProvider {
28
27
  const keyData = new Uint8Array(atob(secretKey)
29
28
  .split('')
30
29
  .map((char) => char.charCodeAt(0)));
30
+ // SECURITY: enforce a 256-bit key. The library advertises AES-256-GCM;
31
+ // silently accepting a shorter (e.g. 128-bit) key would weaken the
32
+ // cipher without any signal to the caller.
33
+ if (keyData.length !== 32) {
34
+ throw new EncryptionError(`Encryption key for keyId "${keyId}" must be 32 bytes (256-bit) when base64-decoded, but got ${keyData.length} bytes`, { keyId });
35
+ }
31
36
  const cryptoKey = await crypto.subtle.importKey('raw', keyData, { name: 'AES-GCM' }, false, ['encrypt', 'decrypt']);
32
37
  this.keyCache.set(keyId, cryptoKey);
33
38
  return cryptoKey;
34
39
  }
35
40
  catch (error) {
41
+ // Preserve our own typed errors (e.g. the key-length check above).
42
+ if (error instanceof EncryptionError) {
43
+ throw error;
44
+ }
36
45
  throw new EncryptionError(`Failed to import encryption key: ${error instanceof Error ? error.message : 'Unknown error'}`, { keyId, error });
37
46
  }
38
47
  }
@@ -1 +1 @@
1
- {"version":3,"file":"crypto.js","sourceRoot":"","sources":["../src/crypto.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"crypto.js","sourceRoot":"","sources":["../src/crypto.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"pagination.d.ts","sourceRoot":"","sources":["../src/pagination.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAA;AAE3C,OAAO,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AAEtD;;GAEG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,WAAW,GAAG,MAAM,CAUvD;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,WAAW,CA0CxD;AAED;;GAEG;AACH,wBAAgB,YAAY,CAC1B,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC5B,OAAO,EAAE,OAAO,EAAE,EAClB,SAAS,EAAE,MAAM,GAAG,MAAM,GACzB,WAAW,CAiBb;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,WAAW,EACnB,SAAS,CAAC,EAAE,MAAM,GACjB,UAAU,CAAC,OAAO,GAAG,CAAC,CA6ExB;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,EAC7B,cAAc,CAAC,EAAE,OAAO,GACvB,OAAO,EAAE,CAUX;AAED;;GAEG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE,OAAO,EAAE,EAClB,cAAc,EAAE,MAAM,EAAE,GACvB,IAAI,CASN;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,OAAO,EAAE,CAK5D"}
1
+ {"version":3,"file":"pagination.d.ts","sourceRoot":"","sources":["../src/pagination.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAA;AAG3C,OAAO,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AAEtD;;GAEG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,WAAW,GAAG,MAAM,CAUvD;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,WAAW,CA4DxD;AAED;;GAEG;AACH,wBAAgB,YAAY,CAC1B,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC5B,OAAO,EAAE,OAAO,EAAE,EAClB,SAAS,EAAE,MAAM,GAAG,MAAM,GACzB,WAAW,CAiBb;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,WAAW,EACnB,SAAS,CAAC,EAAE,MAAM,GACjB,UAAU,CAAC,OAAO,GAAG,CAAC,CAiFxB;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,EAC7B,cAAc,CAAC,EAAE,OAAO,GACvB,OAAO,EAAE,CAUX;AAED;;GAEG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE,OAAO,EAAE,EAClB,cAAc,EAAE,MAAM,EAAE,GACvB,IAAI,CASN;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,OAAO,EAAE,CAK5D"}
@@ -1,5 +1,6 @@
1
1
  import { sql } from '@truto/sqlite-builder';
2
2
  import { CursorError } from './errors.js';
3
+ import { toBindableValue } from './sql-builder.js';
3
4
  /**
4
5
  * Encode a cursor token to an opaque base64 string
5
6
  */
@@ -29,6 +30,19 @@ export function decodeCursor(cursor) {
29
30
  if (!Array.isArray(parsed.values)) {
30
31
  throw new Error('Invalid values in cursor');
31
32
  }
33
+ // SECURITY: cursor values are client-supplied (the cursor is just
34
+ // base64(JSON)). Only allow primitives. Without this guard an attacker can
35
+ // smuggle a `{ text, values }`-shaped object that @truto/sqlite-builder's
36
+ // `sql` template would splice in as a RAW SQL fragment → SQL injection.
37
+ for (const value of parsed.values) {
38
+ const t = typeof value;
39
+ if (value !== null &&
40
+ t !== 'string' &&
41
+ t !== 'number' &&
42
+ t !== 'boolean') {
43
+ throw new Error('Invalid value in cursor: only string, number, boolean, or null are allowed');
44
+ }
45
+ }
32
46
  if (!parsed.direction || !['next', 'prev'].includes(parsed.direction)) {
33
47
  throw new Error('Invalid direction in cursor');
34
48
  }
@@ -92,10 +106,12 @@ export function buildCursorConditions(cursor, tableName) {
92
106
  // Determine if we need > or < based on cursor direction and sort direction
93
107
  const useGreaterThan = (direction === 'next') === (order.direction === 'asc');
94
108
  if (i === orderBy.length - 1) {
95
- // Last column: simple comparison
109
+ // Last column: simple comparison.
110
+ // `sql.value()` coerces/validates the bound value and throws on
111
+ // non-scalar objects, so it can never be treated as a raw fragment.
96
112
  conditions.push(useGreaterThan
97
- ? sql `${columnIdent} > ${value}`
98
- : sql `${columnIdent} < ${value}`);
113
+ ? sql `${columnIdent} > ${toBindableValue(value)}`
114
+ : sql `${columnIdent} < ${toBindableValue(value)}`);
99
115
  }
100
116
  else {
101
117
  // Multi-column: build composite condition
@@ -115,12 +131,12 @@ export function buildCursorConditions(cursor, tableName) {
115
131
  // Last condition in this group: use comparison
116
132
  const currentUseGt = (direction === 'next') === (currentOrder.direction === 'asc');
117
133
  equalityConditions.push(currentUseGt
118
- ? sql `${currentColumnIdent} > ${currentValue}`
119
- : sql `${currentColumnIdent} < ${currentValue}`);
134
+ ? sql `${currentColumnIdent} > ${toBindableValue(currentValue)}`
135
+ : sql `${currentColumnIdent} < ${toBindableValue(currentValue)}`);
120
136
  }
121
137
  else {
122
138
  // Earlier conditions: use equality
123
- equalityConditions.push(sql `${currentColumnIdent} = ${currentValue}`);
139
+ equalityConditions.push(sql `${currentColumnIdent} = ${toBindableValue(currentValue)}`);
124
140
  }
125
141
  }
126
142
  const compositeCondition = sql.join(equalityConditions, ' AND ');
@@ -1 +1 @@
1
- {"version":3,"file":"pagination.js","sourceRoot":"","sources":["../src/pagination.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pagination.js","sourceRoot":"","sources":["../src/pagination.ts"],"names":[],"mappings":"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"}
package/dist/service.d.ts CHANGED
@@ -18,6 +18,7 @@ export declare class Service<TRow extends z.ZodTypeAny, TCreate extends z.ZodTyp
18
18
  readonly timestamps: TimestampConfig | undefined;
19
19
  private readonly hooks;
20
20
  private readonly secretKeysToStrip;
21
+ private readonly secretColumns;
21
22
  constructor(options: ServiceOptions<TRow, TCreate, TUpdate, TJoins, TSecrets>);
22
23
  private stripSecretKeys;
23
24
  private extractSecretFields;
@@ -1 +1 @@
1
- {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAyB/B,OAAO,KAAK,EACV,OAAO,EACP,WAAW,EACX,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,QAAQ,EACR,YAAY,EACZ,SAAS,EAET,OAAO,EACP,WAAW,EACX,UAAU,EACV,UAAU,EACV,aAAa,EACb,OAAO,EACP,WAAW,EACX,cAAc,EACd,WAAW,EACX,WAAW,EACX,cAAc,EACd,eAAe,EACf,YAAY,EACb,MAAM,YAAY,CAAA;AAYnB;;GAEG;AACH,qBAAa,OAAO,CAClB,IAAI,SAAS,CAAC,CAAC,UAAU,EACzB,OAAO,SAAS,CAAC,CAAC,UAAU,EAC5B,OAAO,SAAS,CAAC,CAAC,UAAU,EAC5B,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACtC,QAAQ,SAAS,SAAS,cAAc,EAAE,GAAG,SAAS,CACtD,YAAW,WAAW,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC;IAEhE,SAAgB,KAAK,EAAE,MAAM,CAAA;IAC7B,SAAgB,EAAE,EAAE,QAAQ,CAAA;IAC5B,SAAgB,SAAS,EAAE,IAAI,CAAA;IAC/B,SAAgB,YAAY,EAAE,OAAO,CAAA;IACrC,SAAgB,YAAY,EAAE,OAAO,CAAA;IACrC,SAAgB,KAAK,EAAE,MAAM,GAAG,SAAS,CAAA;IACzC,SAAgB,OAAO,EAAE,QAAQ,GAAG,SAAS,CAAA;IAC7C,SAAgB,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;IAC7C,SAAgB,cAAc,EAAE,OAAO,GAAG,SAAS,CAAA;IACnD,SAAgB,WAAW,EAAE,WAAW,CAAA;IACxC,SAAgB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAA;IAC1E,SAAgB,UAAU,EAAE,eAAe,GAAG,SAAS,CAAA;IAEvD,OAAO,CAAC,QAAQ,CAAC,KAAK,CAA2B;IACjD,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAa;IAC/C,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAa;gBAGzC,OAAO,EAAE,cAAc,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC;IAgCnE,OAAO,CAAC,eAAe;IAWvB,OAAO,CAAC,mBAAmB;IAa3B;;;;;;;;;;;;;OAaG;IACH,OAAO,CAAC,WAAW;IAoFnB;;;;;;;OAOG;IACH,OAAO,CAAC,kBAAkB;IA2B1B;;;;;;;;;;OAUG;IACH,OAAO,CAAC,oBAAoB;IAmB5B;;;;;OAKG;IACH,OAAO,CAAC,oBAAoB;IAiB5B,OAAO,CAAC,6BAA6B;IAyBrC;;OAEG;IACG,IAAI,CACR,KAAK,CAAC,OAAO,SAAS,SAAS,WAAW,EAAE,GAAG,SAAS,GAAG,SAAS,EAEpE,MAAM,GAAE,UAAU,CAAC,OAAO,CAAC,GAAG,aAA4B,GACzD,OAAO,CACR,UAAU,CACR,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,GACjC,YAAY,CAAC,MAAM,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,CAC9C,CACF;IAsLD;;OAEG;IACG,GAAG,CACP,KAAK,CAAC,OAAO,SAAS,SAAS,WAAW,EAAE,GAAG,SAAS,GAAG,SAAS,EAEpE,EAAE,EAAE,MAAM,GAAG,MAAM,EACnB,IAAI,GAAE,SAAS,CAAC,OAAO,CAAC,GAAG,aAA4B,GACtD,OAAO,CACN,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,GAClC,YAAY,CAAC,MAAM,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,GAC7C,IAAI,CACP;IAuGD;;OAEG;IACG,MAAM,CACV,KAAK,CAAC,OAAO,SAAS,SAAS,WAAW,EAAE,GAAG,SAAS,GAAG,SAAS,EAEpE,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,EACtB,IAAI,GAAE,YAAY,CAAC,OAAO,CAAC,GAAG,aAA4B,GACzD,OAAO,CACR,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,GACjC,YAAY,CAAC,MAAM,EAAE,YAAY,CAAC,SAAS,CAAC,CAAC,CAChD;IA2FD;;OAEG;IACG,MAAM,CACV,KAAK,CAAC,OAAO,SAAS,SAAS,WAAW,EAAE,GAAG,SAAS,GAAG,SAAS,EAEpE,EAAE,EAAE,MAAM,GAAG,MAAM,EACnB,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,EAC/B,IAAI,GAAE,YAAY,CAAC,OAAO,CAAC,GAAG,aAA4B,GACzD,OAAO,CACN,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,GAClC,YAAY,CAAC,MAAM,EAAE,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,GAChD,IAAI,CACP;IAsGD;;OAEG;IACG,MAAM,CACV,EAAE,EAAE,MAAM,GAAG,MAAM,EACnB,IAAI,GAAE,YAAY,GAAG,aAA4B,GAChD,OAAO,CAAC,OAAO,CAAC;IAmEnB;;OAEG;IACG,KAAK,CACT,MAAM,GAAE,WAAW,GAAG,aAA4B,GACjD,OAAO,CAAC,MAAM,CAAC;IAoClB;;OAEG;IACG,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,EAC3B,KAAK,EAAE,MAAM,EACb,IAAI,GAAE,WAAW,GAAG,aAA4B,EAChD,GAAG,SAAS,EAAE,OAAO,EAAE,GACtB,OAAO,CAAC,CAAC,EAAE,CAAC;IA2Cf;;OAEG;cACa,QAAQ,CAAC,OAAO,SAAS,MAAM,EAC7C,KAAK,EAAE,QAAQ,GAAG,OAAO,GAAG,OAAO,EACnC,MAAM,EAAE,OAAO,EACf,GAAG,EAAE,OAAO,GACX,OAAO,CAAC,IAAI,CAAC;IAsBhB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAsBxB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAIzB;;;OAGG;IACH,OAAO,CAAC,gBAAgB;IAQxB;;OAEG;YACW,kBAAkB;IAOhC;;OAEG;YACW,iBAAiB;IAO/B;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,OAAO,CAAC,UAAU;IAoBlB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAwDzB;;OAEG;IACH,OAAO,CAAC,eAAe;IAiBvB;;OAEG;YACW,mBAAmB;CAqDlC"}
package/dist/service.js CHANGED
@@ -21,6 +21,7 @@ export class Service {
21
21
  timestamps;
22
22
  hooks;
23
23
  secretKeysToStrip;
24
+ secretColumns;
24
25
  constructor(options) {
25
26
  this.table = options.table;
26
27
  this.db = options.db;
@@ -38,10 +39,12 @@ export class Service {
38
39
  options.keyProvider ||
39
40
  new DefaultKeyProvider(options.encryptionKeys || {});
40
41
  this.secretKeysToStrip = new Set();
42
+ this.secretColumns = new Set();
41
43
  if (this.secrets) {
42
44
  for (const s of this.secrets) {
43
45
  this.secretKeysToStrip.add(s.columnName);
44
46
  this.secretKeysToStrip.add(s.logicalName);
47
+ this.secretColumns.add(s.columnName);
45
48
  }
46
49
  }
47
50
  this.validateSecretsNotInRowSchema();
@@ -250,7 +253,11 @@ export class Service {
250
253
  try {
251
254
  await this.runHooks('before', 'list', ctx);
252
255
  const { cursor, limit = 50, orderBy: paramOrderBy, where = {}, include = {}, includeSecrets = false, select, } = params;
253
- // Validate limit
256
+ // Validate limit: must be a positive integer and within the cap.
257
+ // (A negative limit would become `LIMIT -1` — unbounded — in SQLite.)
258
+ if (!Number.isInteger(limit) || limit < 1) {
259
+ throw new ValidationError('Limit must be a positive integer');
260
+ }
254
261
  if (limit > 1000) {
255
262
  throw new ValidationError('Limit cannot exceed 1000');
256
263
  }
@@ -284,6 +291,15 @@ export class Service {
284
291
  throw new ValidationError(`Invalid cursor: ${error instanceof Error ? error.message : 'Unknown error'}`);
285
292
  }
286
293
  }
294
+ // Never allow ordering by an encrypted secret column. For schemas with a
295
+ // declared shape this is already covered by validateOrderBy, but for
296
+ // shapeless schemas (where the generic column allow-list is unavailable)
297
+ // this guard still prevents leaking ordering information about ciphertext.
298
+ for (const order of orderBy) {
299
+ if (this.secretColumns.has(order.column)) {
300
+ throw new ValidationError(`Cannot order by secret column "${order.column}".`);
301
+ }
302
+ }
287
303
  const parsedSelect = this.parseSelect(select, include);
288
304
  const columns = this.resolveMainColumns(parsedSelect, orderBy, includeSecrets);
289
305
  const joinColumnOverrides = this.resolveJoinOverrides(parsedSelect, include);
@@ -373,7 +389,10 @@ export class Service {
373
389
  };
374
390
  try {
375
391
  await this.runHooks('before', 'get', ctx);
376
- const { include = {}, includeSecrets = false, select } = opts;
392
+ // Read effective options from ctx.params so `before` hooks can mutate
393
+ // them (e.g. inject a tenant-scoping `where`).
394
+ const effective = (ctx.params ?? {});
395
+ const { include = {}, includeSecrets = false, select, where } = effective;
377
396
  const parsedSelect = this.parseSelect(select, include);
378
397
  const columns = this.resolveMainColumns(parsedSelect, [], includeSecrets);
379
398
  const joinColumnOverrides = this.resolveJoinOverrides(parsedSelect, include);
@@ -383,6 +402,7 @@ export class Service {
383
402
  ...(this.joins ? { joins: this.joins } : {}),
384
403
  include,
385
404
  ...(joinColumnOverrides ? { joinColumnOverrides } : {}),
405
+ ...(where ? { where } : {}),
386
406
  });
387
407
  const stmt = this.db.prepare(query);
388
408
  const result = await stmt.bind(...params).first();
@@ -510,9 +530,16 @@ export class Service {
510
530
  };
511
531
  try {
512
532
  await this.runHooks('before', 'update', ctx);
513
- const { include = {}, includeSecrets = false, select } = opts;
514
- // Check if record exists
515
- const existingRecord = await this.get(id, { auth: opts.auth });
533
+ // Read effective options from ctx.params so `before` hooks can mutate
534
+ // them (e.g. inject a tenant-scoping `where`).
535
+ const effective = (ctx.params ?? {});
536
+ const { include = {}, includeSecrets = false, select, where: scope, } = effective;
537
+ // Check if record exists within the caller's scope. A non-matching scope
538
+ // yields null here → NotFoundError, so the row is never mutated.
539
+ const existingRecord = await this.get(id, {
540
+ auth: opts.auth,
541
+ ...(scope ? { where: scope } : {}),
542
+ });
516
543
  if (!existingRecord) {
517
544
  throw new NotFoundError(this.table, id);
518
545
  }
@@ -539,6 +566,11 @@ export class Service {
539
566
  else {
540
567
  where[this.primaryKey] = id;
541
568
  }
569
+ // Defense-in-depth: also scope the UPDATE itself so it can only touch
570
+ // rows matching both the PK and the caller's scope filter.
571
+ if (scope && Object.keys(scope).length > 0) {
572
+ Object.assign(where, scope);
573
+ }
542
574
  // Build and execute update
543
575
  const { text: query, values: params } = buildUpdate(this.table, processedData, where);
544
576
  const stmt = this.db.prepare(query);
@@ -551,6 +583,7 @@ export class Service {
551
583
  include,
552
584
  includeSecrets,
553
585
  ...(select ? { select } : {}),
586
+ ...(scope ? { where: scope } : {}),
554
587
  auth: opts.auth,
555
588
  });
556
589
  ctx.result = updatedRecord;
@@ -576,8 +609,16 @@ export class Service {
576
609
  };
577
610
  try {
578
611
  await this.runHooks('before', 'delete', ctx);
579
- // Check if record exists
580
- const existingRecord = await this.get(id, { auth: opts.auth });
612
+ // Read effective options from ctx.params so `before` hooks can mutate
613
+ // them (e.g. inject a tenant-scoping `where`).
614
+ const effective = (ctx.params ?? {});
615
+ const { where: scope } = effective;
616
+ // Check if record exists within the caller's scope. A non-matching scope
617
+ // yields null here → NotFoundError, so the row is never deleted.
618
+ const existingRecord = await this.get(id, {
619
+ auth: opts.auth,
620
+ ...(scope ? { where: scope } : {}),
621
+ });
581
622
  if (!existingRecord) {
582
623
  throw new NotFoundError(this.table, id);
583
624
  }
@@ -592,6 +633,11 @@ export class Service {
592
633
  else {
593
634
  where[this.primaryKey] = id;
594
635
  }
636
+ // Defense-in-depth: also scope the DELETE itself so it can only remove
637
+ // rows matching both the PK and the caller's scope filter.
638
+ if (scope && Object.keys(scope).length > 0) {
639
+ Object.assign(where, scope);
640
+ }
595
641
  // Build and execute delete
596
642
  const { text: query, values: params } = buildDelete(this.table, where);
597
643
  const stmt = this.db.prepare(query);
@@ -1 +1 @@
1
- {"version":3,"file":"service.js","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"service.js","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,17 @@
1
1
  import { sql } from '@truto/sqlite-builder';
2
2
  import type { JoinDef, OrderBy } from './types.js';
3
+ /**
4
+ * Coerce an untrusted value into a scalar that is safe to bind as a SQL
5
+ * parameter, throwing on anything else.
6
+ *
7
+ * SECURITY: this is the single choke point that prevents the
8
+ * `{ text, values }` fragment-confusion attack. `@truto/sqlite-builder`'s
9
+ * `sql` template treats any object shaped like a pre-compiled fragment as raw
10
+ * SQL. By forcing every dynamic value through this guard (which rejects
11
+ * objects/arrays) before interpolation, such a value can never be spliced in
12
+ * unescaped — it is always emitted as a bound `?` placeholder instead.
13
+ */
14
+ export declare function toBindableValue(value: unknown): string | number | boolean | Date | null;
3
15
  /**
4
16
  * Build a SELECT query with joins and pagination.
5
17
  *
@@ -43,6 +55,11 @@ export declare function buildSelectById(table: string, primaryKey: string | stri
43
55
  joins?: Record<string, JoinDef>;
44
56
  include?: Record<string, boolean>;
45
57
  joinColumnOverrides?: Record<string, string[]>;
58
+ /**
59
+ * Optional row-level scoping filter, AND-combined with the primary-key
60
+ * match (used to enforce ownership / tenant isolation).
61
+ */
62
+ where?: Record<string, unknown>;
46
63
  }): ReturnType<typeof sql>;
47
64
  /**
48
65
  * Escape a column name using sql.ident
@@ -1 +1 @@
1
- {"version":3,"file":"sql-builder.d.ts","sourceRoot":"","sources":["../src/sql-builder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,GAAG,EAAE,MAAM,uBAAuB,CAAA;AAE1D,OAAO,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AAElD;;;;;;;GAOG;AACH,wBAAgB,WAAW,CACzB,KAAK,EAAE,MAAM,EACb,OAAO,GAAE;IACP,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC/B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACjC,mBAAmB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;IAC9C,OAAO,CAAC,EAAE,OAAO,EAAE,CAAA;IACnB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,gBAAgB,CAAC,EAAE,UAAU,CAAC,OAAO,GAAG,CAAC,CAAA;CACrC,GACL,UAAU,CAAC,OAAO,GAAG,CAAC,CAwGxB;AAqCD;;GAEG;AACH,wBAAgB,WAAW,CACzB,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,UAAU,CAAC,OAAO,GAAG,CAAC,CAoBxB;AAED;;GAEG;AACH,wBAAgB,WAAW,CACzB,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC7B,UAAU,CAAC,OAAO,GAAG,CAAC,CAuBxB;AAED;;GAEG;AACH,wBAAgB,WAAW,CACzB,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC7B,UAAU,CAAC,OAAO,GAAG,CAAC,CAgBxB;AAED;;GAEG;AACH,wBAAgB,UAAU,CACxB,KAAK,EAAE,MAAM,EACb,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9B,UAAU,CAAC,OAAO,GAAG,CAAC,CAgBxB;AAED;;GAEG;AACH,wBAAgB,eAAe,CAC7B,KAAK,EAAE,MAAM,EACb,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,EAC7B,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7C,OAAO,GAAE;IACP,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC/B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACjC,mBAAmB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;CAC1C,GACL,UAAU,CAAC,OAAO,GAAG,CAAC,CAqCxB;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAEnD;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEjD"}
1
+ {"version":3,"file":"sql-builder.d.ts","sourceRoot":"","sources":["../src/sql-builder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,GAAG,EAAE,MAAM,uBAAuB,CAAA;AAE1D,OAAO,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AAElD;;;;;;;;;;GAUG;AACH,wBAAgB,eAAe,CAC7B,KAAK,EAAE,OAAO,GACb,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,IAAI,CAWzC;AAED;;;;;;;GAOG;AACH,wBAAgB,WAAW,CACzB,KAAK,EAAE,MAAM,EACb,OAAO,GAAE;IACP,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC/B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACjC,mBAAmB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;IAC9C,OAAO,CAAC,EAAE,OAAO,EAAE,CAAA;IACnB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,gBAAgB,CAAC,EAAE,UAAU,CAAC,OAAO,GAAG,CAAC,CAAA;CACrC,GACL,UAAU,CAAC,OAAO,GAAG,CAAC,CA8GxB;AAqCD;;GAEG;AACH,wBAAgB,WAAW,CACzB,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,UAAU,CAAC,OAAO,GAAG,CAAC,CAyBxB;AAED;;GAEG;AACH,wBAAgB,WAAW,CACzB,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC7B,UAAU,CAAC,OAAO,GAAG,CAAC,CA2BxB;AAED;;GAEG;AACH,wBAAgB,WAAW,CACzB,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC7B,UAAU,CAAC,OAAO,GAAG,CAAC,CAgBxB;AAED;;GAEG;AACH,wBAAgB,UAAU,CACxB,KAAK,EAAE,MAAM,EACb,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9B,UAAU,CAAC,OAAO,GAAG,CAAC,CAgBxB;AAED;;GAEG;AACH,wBAAgB,eAAe,CAC7B,KAAK,EAAE,MAAM,EACb,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,EAC7B,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7C,OAAO,GAAE;IACP,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC/B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACjC,mBAAmB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;IAC9C;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAC3B,GACL,UAAU,CAAC,OAAO,GAAG,CAAC,CA4CxB;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAEnD;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEjD"}
@@ -1,5 +1,27 @@
1
1
  import { compileFilter, sql } from '@truto/sqlite-builder';
2
2
  import { SqlBuilderError } from './errors.js';
3
+ /**
4
+ * Coerce an untrusted value into a scalar that is safe to bind as a SQL
5
+ * parameter, throwing on anything else.
6
+ *
7
+ * SECURITY: this is the single choke point that prevents the
8
+ * `{ text, values }` fragment-confusion attack. `@truto/sqlite-builder`'s
9
+ * `sql` template treats any object shaped like a pre-compiled fragment as raw
10
+ * SQL. By forcing every dynamic value through this guard (which rejects
11
+ * objects/arrays) before interpolation, such a value can never be spliced in
12
+ * unescaped — it is always emitted as a bound `?` placeholder instead.
13
+ */
14
+ export function toBindableValue(value) {
15
+ if (value === null || value === undefined)
16
+ return null;
17
+ const t = typeof value;
18
+ if (t === 'string' || t === 'number' || t === 'boolean') {
19
+ return value;
20
+ }
21
+ if (value instanceof Date)
22
+ return value;
23
+ throw new SqlBuilderError(`Unsupported bound value of type "${t}". Only string, number, boolean, Date, or null may be bound as parameters.`, { valueType: t });
24
+ }
3
25
  /**
4
26
  * Build a SELECT query with joins and pagination.
5
27
  *
@@ -13,7 +35,12 @@ export function buildSelect(table, options = {}) {
13
35
  // Build column list
14
36
  const selectColumns = [];
15
37
  if (options.columns && options.columns.length > 0) {
16
- selectColumns.push(...options.columns.map((col) => sql.ident(`${table}.${col}`)));
38
+ selectColumns.push(...options.columns.map((col) =>
39
+ // A bare '*' must be emitted as `"table".*`, not run through
40
+ // sql.ident('table.*') (which rejects the wildcard identifier).
41
+ col === '*'
42
+ ? sql `${sql.ident(table)}.*`
43
+ : sql.ident(`${table}.${col}`)));
17
44
  }
18
45
  else {
19
46
  selectColumns.push(sql `${sql.ident(table)}.*`);
@@ -123,8 +150,11 @@ export function buildInsert(table, data) {
123
150
  try {
124
151
  const columns = Object.keys(data);
125
152
  const values = Object.values(data);
126
- // Create individual placeholders for the VALUES clause
127
- const placeholderFragments = values.map((value) => sql `${value}`);
153
+ // Create individual placeholders for the VALUES clause. `toBindableValue`
154
+ // forces each value to be bound as a parameter and throws on non-scalar
155
+ // objects — preventing a `{ text, values }`-shaped value from being
156
+ // spliced in as a raw SQL fragment.
157
+ const placeholderFragments = values.map((value) => sql `${toBindableValue(value)}`);
128
158
  const query = sql `
129
159
  INSERT INTO ${sql.ident(table)} (${sql.ident(columns)})
130
160
  VALUES (${sql.join(placeholderFragments, ', ')})
@@ -140,8 +170,11 @@ export function buildInsert(table, data) {
140
170
  */
141
171
  export function buildUpdate(table, data, where) {
142
172
  try {
143
- // Build SET clauses using sql fragments
144
- const setFragments = Object.entries(data).map(([column, value]) => sql `${sql.ident(column)} = ${value}`);
173
+ // Build SET clauses using sql fragments. `toBindableValue` forces each
174
+ // value to be bound as a parameter (and rejects non-scalar objects),
175
+ // preventing a `{ text, values }`-shaped value from being spliced in as
176
+ // raw SQL.
177
+ const setFragments = Object.entries(data).map(([column, value]) => sql `${sql.ident(column)} = ${toBindableValue(value)}`);
145
178
  // Build WHERE clause
146
179
  const whereFilter = compileFilter(where);
147
180
  const queryParts = [
@@ -191,34 +224,42 @@ export function buildCount(table, where) {
191
224
  * Build a SELECT query for a single record by primary key
192
225
  */
193
226
  export function buildSelectById(table, primaryKey, id, options = {}) {
227
+ const { where: scope, ...restOptions } = options;
194
228
  const where = {};
195
229
  // Check if there are active JOINs that could cause column ambiguity
196
230
  const hasActiveJoins = options.joins &&
197
231
  options.include &&
198
232
  Object.keys(options.include).some((key) => options.include[key]);
233
+ // The scope filter columns live on the base table, so when joins are active
234
+ // they must be qualified under `$table` (same as the PK) to avoid ambiguity.
235
+ const hasScope = scope && Object.keys(scope).length > 0;
199
236
  if (Array.isArray(primaryKey)) {
200
237
  if (typeof id !== 'object' || id === null || Array.isArray(id)) {
201
238
  throw new SqlBuilderError('Composite primary key requires an object with key-value pairs', { primaryKey, id });
202
239
  }
203
240
  if (hasActiveJoins) {
204
241
  // Use qualified table syntax to avoid column ambiguity
205
- where[`$${table}`] = { ...id };
242
+ where[`$${table}`] = { ...id, ...(hasScope ? scope : {}) };
206
243
  }
207
244
  else {
208
245
  Object.assign(where, id);
246
+ if (hasScope)
247
+ Object.assign(where, scope);
209
248
  }
210
249
  }
211
250
  else {
212
251
  if (hasActiveJoins) {
213
252
  // Use qualified table syntax to avoid column ambiguity
214
- where[`$${table}`] = { [primaryKey]: id };
253
+ where[`$${table}`] = { [primaryKey]: id, ...(hasScope ? scope : {}) };
215
254
  }
216
255
  else {
217
256
  where[primaryKey] = id;
257
+ if (hasScope)
258
+ Object.assign(where, scope);
218
259
  }
219
260
  }
220
261
  return buildSelect(table, {
221
- ...options,
262
+ ...restOptions,
222
263
  where,
223
264
  limit: 1,
224
265
  });
@@ -1 +1 @@
1
- {"version":3,"file":"sql-builder.js","sourceRoot":"","sources":["../src/sql-builder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sql-builder.js","sourceRoot":"","sources":["../src/sql-builder.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -178,6 +178,13 @@ export interface GetParams<TSelect extends readonly SelectField[] | undefined =
178
178
  include?: Record<string, boolean>;
179
179
  includeSecrets?: boolean;
180
180
  select?: TSelect;
181
+ /**
182
+ * Additional row-level scoping filter, AND-combined with the primary-key
183
+ * lookup. Use this (typically set from a `before` hook) to enforce
184
+ * ownership / tenant isolation, e.g. `{ tenant_id: auth.user.tenantId }`.
185
+ * A non-matching scope causes `get` to return `null`.
186
+ */
187
+ where?: Record<string, unknown>;
181
188
  }
182
189
  /**
183
190
  * Create parameters
@@ -194,12 +201,26 @@ export interface UpdateParams<TSelect extends readonly SelectField[] | undefined
194
201
  include?: Record<string, boolean>;
195
202
  includeSecrets?: boolean;
196
203
  select?: TSelect;
204
+ /**
205
+ * Additional row-level scoping filter, AND-combined with the primary-key
206
+ * match. Use this (typically from a `before` hook) to enforce ownership /
207
+ * tenant isolation. A non-matching scope makes `update` throw `NotFoundError`
208
+ * and never mutates the row.
209
+ */
210
+ where?: Record<string, unknown>;
197
211
  }
198
212
  /**
199
213
  * Delete parameters
200
214
  */
201
215
  export interface DeleteParams {
202
216
  include?: Record<string, boolean>;
217
+ /**
218
+ * Additional row-level scoping filter, AND-combined with the primary-key
219
+ * match. Use this (typically from a `before` hook) to enforce ownership /
220
+ * tenant isolation. A non-matching scope makes `delete` throw `NotFoundError`
221
+ * and never deletes the row.
222
+ */
223
+ where?: Record<string, unknown>;
203
224
  }
204
225
  /**
205
226
  * Query parameters for custom SQL
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@truto/ginger",
3
- "version": "1.4.0",
3
+ "version": "2.0.0",
4
4
  "description": "A type-safe SQLite data access layer for Cloudflare D1, Bun SQLite, and Durable Objects with cursor pagination, joins, AES-256-GCM encryption, and a Feathers.js-inspired hook system",
5
5
  "keywords": [
6
6
  "cloudflare",