pipework 0.126.1 → 0.128.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 (78) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/dist/async/steps/table.d.ts +15 -3
  3. package/dist/async/steps/table.d.ts.map +1 -1
  4. package/dist/audit/schema/audit-record-fields.d.ts +4 -0
  5. package/dist/audit/schema/audit-record-fields.d.ts.map +1 -1
  6. package/dist/audit/schema/audit-record.d.ts +4 -0
  7. package/dist/audit/schema/audit-record.d.ts.map +1 -1
  8. package/dist/data/domain/define.d.ts.map +1 -1
  9. package/dist/data/domain/define.js +14 -1
  10. package/dist/data/domain/define.js.map +1 -1
  11. package/dist/data/domain/field.d.ts +5 -1
  12. package/dist/data/domain/field.d.ts.map +1 -1
  13. package/dist/data/domain/field.js.map +1 -1
  14. package/dist/data/domain/index.d.ts +2 -2
  15. package/dist/data/domain/index.d.ts.map +1 -1
  16. package/dist/data/domain/index.js +1 -1
  17. package/dist/data/domain/index.js.map +1 -1
  18. package/dist/data/domain/traits.d.ts +16 -0
  19. package/dist/data/domain/traits.d.ts.map +1 -1
  20. package/dist/data/domain/traits.js +37 -0
  21. package/dist/data/domain/traits.js.map +1 -1
  22. package/dist/data/domain/types.d.ts +23 -1
  23. package/dist/data/domain/types.d.ts.map +1 -1
  24. package/dist/data/domain/types.js.map +1 -1
  25. package/dist/data/migrate/append-only-generate.d.ts +9 -0
  26. package/dist/data/migrate/append-only-generate.d.ts.map +1 -0
  27. package/dist/data/migrate/append-only-generate.js +38 -0
  28. package/dist/data/migrate/append-only-generate.js.map +1 -0
  29. package/dist/data/migrate/generate.d.ts.map +1 -1
  30. package/dist/data/migrate/generate.js +3 -1
  31. package/dist/data/migrate/generate.js.map +1 -1
  32. package/dist/data/migrate/index.d.ts +1 -0
  33. package/dist/data/migrate/index.d.ts.map +1 -1
  34. package/dist/data/migrate/index.js +1 -0
  35. package/dist/data/migrate/index.js.map +1 -1
  36. package/dist/data/temporal/append-only.d.ts +17 -0
  37. package/dist/data/temporal/append-only.d.ts.map +1 -0
  38. package/dist/data/temporal/append-only.js +85 -0
  39. package/dist/data/temporal/append-only.js.map +1 -0
  40. package/dist/data/temporal/index.d.ts +1 -0
  41. package/dist/data/temporal/index.d.ts.map +1 -1
  42. package/dist/data/temporal/index.js +1 -0
  43. package/dist/data/temporal/index.js.map +1 -1
  44. package/dist/data/temporal/namespace.d.ts +5 -0
  45. package/dist/data/temporal/namespace.d.ts.map +1 -1
  46. package/dist/data/temporal/namespace.js +5 -0
  47. package/dist/data/temporal/namespace.js.map +1 -1
  48. package/dist/data/write/insert.d.ts +1 -4
  49. package/dist/data/write/insert.d.ts.map +1 -1
  50. package/dist/data/write/insert.js.map +1 -1
  51. package/dist/data/write/upsert.d.ts +1 -4
  52. package/dist/data/write/upsert.d.ts.map +1 -1
  53. package/dist/data/write/upsert.js.map +1 -1
  54. package/dist/data/write/values.d.ts +10 -0
  55. package/dist/data/write/values.d.ts.map +1 -0
  56. package/dist/data/write/values.js +2 -0
  57. package/dist/data/write/values.js.map +1 -0
  58. package/dist/infra/access-links/schema.d.ts +10 -2
  59. package/dist/infra/access-links/schema.d.ts.map +1 -1
  60. package/dist/infra/credits/schema.d.ts +20 -4
  61. package/dist/infra/credits/schema.d.ts.map +1 -1
  62. package/dist/infra/storage/schema.d.ts +5 -1
  63. package/dist/infra/storage/schema.d.ts.map +1 -1
  64. package/dist/infra/support/schema.d.ts +15 -3
  65. package/dist/infra/support/schema.d.ts.map +1 -1
  66. package/dist/trace/schema/trace-fields.d.ts +4 -0
  67. package/dist/trace/schema/trace-fields.d.ts.map +1 -1
  68. package/dist/trace/schema/trace-retained.d.ts +4 -0
  69. package/dist/trace/schema/trace-retained.d.ts.map +1 -1
  70. package/dist/trace/schema/trace-step-fields.d.ts +4 -0
  71. package/dist/trace/schema/trace-step-fields.d.ts.map +1 -1
  72. package/dist/trace/schema/trace-step-retained.d.ts +4 -0
  73. package/dist/trace/schema/trace-step-retained.d.ts.map +1 -1
  74. package/dist/trace/schema/trace-step.d.ts +4 -0
  75. package/dist/trace/schema/trace-step.d.ts.map +1 -1
  76. package/dist/trace/schema/trace.d.ts +4 -0
  77. package/dist/trace/schema/trace.d.ts.map +1 -1
  78. package/package.json +1 -1
@@ -6,4 +6,5 @@ export { analyzeSQL } from './safety.js';
6
6
  export { generateForDatabase, type GenerateResult } from './generate.js';
7
7
  export { postProcessMigration } from './post-process.js';
8
8
  export { generateRlsStatements } from './rls-generate.js';
9
+ export { generateAppendOnlyStatements } from './append-only-generate.js';
9
10
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/data/migrate/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,oBAAoB,EAAE,KAAK,aAAa,EAAE,KAAK,cAAc,EAAE,MAAM,UAAU,CAAA;AAChH,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,KAAK,oBAAoB,EAAE,KAAK,WAAW,EAAE,KAAK,eAAe,EAAE,KAAK,QAAQ,EAAE,MAAM,YAAY,CAAA;AACjJ,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,KAAK,UAAU,EAAE,MAAM,aAAa,CAAA;AACpE,OAAO,EAAE,gBAAgB,EAAE,KAAK,YAAY,EAAE,MAAM,cAAc,CAAA;AAClE,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,EAAE,mBAAmB,EAAE,KAAK,cAAc,EAAE,MAAM,eAAe,CAAA;AACxE,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAA;AACxD,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/data/migrate/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,oBAAoB,EAAE,KAAK,aAAa,EAAE,KAAK,cAAc,EAAE,MAAM,UAAU,CAAA;AAChH,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,KAAK,oBAAoB,EAAE,KAAK,WAAW,EAAE,KAAK,eAAe,EAAE,KAAK,QAAQ,EAAE,MAAM,YAAY,CAAA;AACjJ,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,KAAK,UAAU,EAAE,MAAM,aAAa,CAAA;AACpE,OAAO,EAAE,gBAAgB,EAAE,KAAK,YAAY,EAAE,MAAM,cAAc,CAAA;AAClE,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,EAAE,mBAAmB,EAAE,KAAK,cAAc,EAAE,MAAM,eAAe,CAAA;AACxE,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAA;AACxD,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAA;AACzD,OAAO,EAAE,4BAA4B,EAAE,MAAM,2BAA2B,CAAA"}
@@ -6,4 +6,5 @@ export { analyzeSQL } from './safety.js';
6
6
  export { generateForDatabase } from './generate.js';
7
7
  export { postProcessMigration } from './post-process.js';
8
8
  export { generateRlsStatements } from './rls-generate.js';
9
+ export { generateAppendOnlyStatements } from './append-only-generate.js';
9
10
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/data/migrate/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,oBAAoB,EAA2C,MAAM,UAAU,CAAA;AAChH,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAoF,MAAM,YAAY,CAAA;AACjJ,OAAO,EAAE,SAAS,EAAE,UAAU,EAAmB,MAAM,aAAa,CAAA;AACpE,OAAO,EAAE,gBAAgB,EAAqB,MAAM,cAAc,CAAA;AAClE,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,EAAE,mBAAmB,EAAuB,MAAM,eAAe,CAAA;AACxE,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAA;AACxD,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/data/migrate/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,oBAAoB,EAA2C,MAAM,UAAU,CAAA;AAChH,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAoF,MAAM,YAAY,CAAA;AACjJ,OAAO,EAAE,SAAS,EAAE,UAAU,EAAmB,MAAM,aAAa,CAAA;AACpE,OAAO,EAAE,gBAAgB,EAAqB,MAAM,cAAc,CAAA;AAClE,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,EAAE,mBAAmB,EAAuB,MAAM,eAAe,CAAA;AACxE,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAA;AACxD,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAA;AACzD,OAAO,EAAE,4BAA4B,EAAE,MAAM,2BAA2B,CAAA"}
@@ -0,0 +1,17 @@
1
+ import type { DB, SQL } from '../db/types.js';
2
+ import type { DefinedTable } from '../domain/types.js';
3
+ type AnyDefinition = DefinedTable<any>;
4
+ export interface SetVersionOptions {
5
+ /** The transaction the write runs in. It must be the context's bound transaction (`pipe.transaction`), because the insert goes through `pipe.insert`. */
6
+ readonly tx: DB;
7
+ readonly definition: AnyDefinition;
8
+ /** The version's own fields, plus the scope field when the definition has a tenant field. */
9
+ readonly data: Record<string, unknown>;
10
+ /** When the version comes into force. Defaults to the moment it is set; never earlier than the transaction's now(). */
11
+ readonly effectiveFrom?: Date;
12
+ readonly userId?: string;
13
+ }
14
+ export declare function setVersion(options: SetVersionOptions): Promise<Record<string, unknown>>;
15
+ export declare function versionAt(db: DB, definition: AnyDefinition, t: Date, where?: SQL): Promise<Record<string, unknown> | undefined>;
16
+ export {};
17
+ //# sourceMappingURL=append-only.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"append-only.d.ts","sourceRoot":"","sources":["../../../src/data/temporal/append-only.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAYtD,KAAK,aAAa,GAAG,YAAY,CAAC,GAAG,CAAC,CAAA;AAEtC,MAAM,WAAW,iBAAiB;IAChC,yJAAyJ;IACzJ,QAAQ,CAAC,EAAE,EAAE,EAAE,CAAA;IACf,QAAQ,CAAC,UAAU,EAAE,aAAa,CAAA;IAClC,6FAA6F;IAC7F,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACtC,uHAAuH;IACvH,QAAQ,CAAC,aAAa,CAAC,EAAE,IAAI,CAAA;IAC7B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CACzB;AAeD,wBAAsB,UAAU,CAC9B,OAAO,EAAE,iBAAiB,GACzB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAwElC;AAED,wBAAsB,SAAS,CAC7B,EAAE,EAAE,EAAE,EACN,UAAU,EAAE,aAAa,EACzB,CAAC,EAAE,IAAI,EACP,KAAK,CAAC,EAAE,GAAG,GACV,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC,CAS9C"}
@@ -0,0 +1,85 @@
1
+ import { sql } from '../db/sql.js';
2
+ import { identifier } from '../db/expressions.js';
3
+ import { advisoryLock } from '../db/advisory-lock.js';
4
+ import { camelToSnake } from '../domain/naming.js';
5
+ import { appendOnlyScopeField } from '../domain/traits.js';
6
+ import { insert } from '../write/insert.js';
7
+ import { and, desc, lte } from '../query/index.js';
8
+ import { TemporalIntegrityError } from './errors.js';
9
+ const MANAGED_FIELDS = ['effectiveFrom', 'version', 'setBy'];
10
+ function requireAppendOnly(definition, fnName) {
11
+ if (!definition.$traits.includes('appendOnlyVersions')) {
12
+ throw new TemporalIntegrityError(`temporal.${fnName}() requires an append-only-versions definition.\n\n` +
13
+ ` "${definition.$name}" does not have the .appendOnlyVersions() trait.\n\n` +
14
+ ` Add .appendOnlyVersions() to your definition:\n` +
15
+ ` pipe.define('${definition.$name}', { ... }).appendOnlyVersions()\n`);
16
+ }
17
+ }
18
+ export async function setVersion(options) {
19
+ const { tx, definition, data } = options;
20
+ requireAppendOnly(definition, 'setVersion');
21
+ const table = definition.$name;
22
+ for (const key of MANAGED_FIELDS) {
23
+ if (key in data) {
24
+ throw new TemporalIntegrityError(`temporal.setVersion() sets "${key}" itself; remove it from data for "${table}".`, { table, field: key });
25
+ }
26
+ }
27
+ const scopeField = appendOnlyScopeField(definition);
28
+ let scopeCondition = sql `TRUE`;
29
+ const lockKeys = [`pipework.versions:${table}`];
30
+ if (scopeField !== undefined) {
31
+ const scopeValue = data[scopeField];
32
+ if (scopeValue === undefined || scopeValue === null) {
33
+ throw new TemporalIntegrityError(`temporal.setVersion() on "${table}" needs data.${scopeField}: versions are numbered per ${scopeField}.`, { table, field: scopeField });
34
+ }
35
+ scopeCondition = sql `${identifier(camelToSnake(scopeField))} = ${scopeValue}`;
36
+ lockKeys.push(String(scopeValue));
37
+ }
38
+ await advisoryLock(tx, ...lockKeys);
39
+ const latestRows = await tx.execute(sql `SELECT version, effective_from FROM ${identifier(table)} WHERE ${scopeCondition} ORDER BY version DESC LIMIT 1`);
40
+ const latest = latestRows[0];
41
+ let effectiveFrom;
42
+ if (options.effectiveFrom === undefined) {
43
+ // Read after the lock, so it is later than every version already committed
44
+ // in scope; the transaction's now() may predate the latest of them.
45
+ effectiveFrom = sql `clock_timestamp()`;
46
+ }
47
+ else {
48
+ const iso = options.effectiveFrom.toISOString();
49
+ const nowRows = await tx.execute(sql `SELECT ${iso}::timestamptz < now() AS before_now, now() AS now`);
50
+ if (nowRows[0]['before_now'] === true) {
51
+ throw new TemporalIntegrityError(`Cannot set a version of "${table}" effective ${iso}: it is earlier than now (${toIso(nowRows[0]['now'])}). ` +
52
+ `A version cannot be in force before the moment it is set.`, { table, effectiveFrom: iso });
53
+ }
54
+ if (latest !== undefined) {
55
+ const cmp = await tx.execute(sql `SELECT ${iso}::timestamptz <= ${latest['effective_from']}::timestamptz AS not_after`);
56
+ if (cmp[0]['not_after'] === true) {
57
+ throw new TemporalIntegrityError(`Cannot set a version of "${table}" effective ${iso}: it is not after the latest version's effectiveFrom ` +
58
+ `(${toIso(latest['effective_from'])}, version ${String(latest['version'])}).`, { table, effectiveFrom: iso });
59
+ }
60
+ }
61
+ effectiveFrom = options.effectiveFrom;
62
+ }
63
+ const version = latest === undefined ? 1 : Number(latest['version']) + 1;
64
+ const rows = await insert(definition).values({
65
+ ...data,
66
+ effectiveFrom,
67
+ version,
68
+ setBy: options.userId ?? null,
69
+ }).returning();
70
+ return rows[0];
71
+ }
72
+ export async function versionAt(db, definition, t, where) {
73
+ requireAppendOnly(definition, 'versionAt');
74
+ const columns = definition;
75
+ const inForce = lte(columns.effectiveFrom, t);
76
+ const condition = where !== undefined ? and(inForce, where) : inForce;
77
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any -- Drizzle select chain requires concrete table generics
78
+ const rows = await db
79
+ .select().from(definition.table()).where(condition).orderBy(desc(columns.effectiveFrom)).limit(1);
80
+ return rows[0];
81
+ }
82
+ function toIso(value) {
83
+ return value instanceof Date ? value.toISOString() : String(value);
84
+ }
85
+ //# sourceMappingURL=append-only.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"append-only.js","sourceRoot":"","sources":["../../../src/data/temporal/append-only.ts"],"names":[],"mappings":"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"}
@@ -6,4 +6,5 @@ export { getCurrent } from './get-current.js';
6
6
  export { TemporalIntegrityError } from './errors.js';
7
7
  export { asOf, allVersions, effectiveUpdate, type DefinitionReviseOptions } from './definition-queries.js';
8
8
  export type { TemporalOptions, ReviseOptions, ReviseResult, GetCurrentResult } from './types.js';
9
+ export { setVersion, versionAt, type SetVersionOptions } from './append-only.js';
9
10
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/data/temporal/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAC9C,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAC7C,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAA;AACpD,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,eAAe,EAAE,KAAK,uBAAuB,EAAE,MAAM,yBAAyB,CAAA;AAC1G,YAAY,EAAE,eAAe,EAAE,aAAa,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/data/temporal/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAC9C,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAC7C,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAA;AACpD,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,eAAe,EAAE,KAAK,uBAAuB,EAAE,MAAM,yBAAyB,CAAA;AAC1G,YAAY,EAAE,eAAe,EAAE,aAAa,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAChG,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,KAAK,iBAAiB,EAAE,MAAM,kBAAkB,CAAA"}
@@ -5,4 +5,5 @@ export { close } from './close.js';
5
5
  export { getCurrent } from './get-current.js';
6
6
  export { TemporalIntegrityError } from './errors.js';
7
7
  export { asOf, allVersions, effectiveUpdate } from './definition-queries.js';
8
+ export { setVersion, versionAt } from './append-only.js';
8
9
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/data/temporal/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAC9C,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAC7C,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAA;AACpD,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,eAAe,EAAgC,MAAM,yBAAyB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/data/temporal/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAC9C,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAC7C,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAA;AACpD,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,eAAe,EAAgC,MAAM,yBAAyB,CAAA;AAE1G,OAAO,EAAE,UAAU,EAAE,SAAS,EAA0B,MAAM,kBAAkB,CAAA"}
@@ -4,6 +4,7 @@ import { close } from './close.js';
4
4
  import { getCurrent } from './get-current.js';
5
5
  import { atTime, between } from './query.js';
6
6
  import { TemporalIntegrityError } from './errors.js';
7
+ import { setVersion, versionAt } from './append-only.js';
7
8
  import { asOf, allVersions, effectiveUpdate } from './definition-queries.js';
8
9
  /** Temporal (bitemporal) data namespace — version history with effective date ranges. */
9
10
  export declare const temporal: {
@@ -27,5 +28,9 @@ export declare const temporal: {
27
28
  allVersions: typeof allVersions;
28
29
  /** Close the current version and create a new one with updated data. */
29
30
  effectiveUpdate: typeof effectiveUpdate;
31
+ /** Append the next version of an append-only-versions definition: serialised per scope, numbered, never back-dated, audited. */
32
+ setVersion: typeof setVersion;
33
+ /** The version in force at a moment: the row with the greatest effectiveFrom at or before it. */
34
+ versionAt: typeof versionAt;
30
35
  };
31
36
  //# sourceMappingURL=namespace.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"namespace.d.ts","sourceRoot":"","sources":["../../../src/data/temporal/namespace.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAC7C,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AAC5C,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAA;AACpD,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAE5E,yFAAyF;AACzF,eAAO,MAAM,QAAQ;IACnB,2HAA2H;;IAE3H,8FAA8F;;IAE9F,+FAA+F;;IAE/F,0FAA0F;;IAE1F,iFAAiF;;IAEjF,oEAAoE;;IAEpE,yEAAyE;;IAEzE,0GAA0G;;IAE1G,+DAA+D;;IAE/D,wEAAwE;;CAEzE,CAAA"}
1
+ {"version":3,"file":"namespace.d.ts","sourceRoot":"","sources":["../../../src/data/temporal/namespace.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAC7C,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AAC5C,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAA;AACpD,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AACxD,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAE5E,yFAAyF;AACzF,eAAO,MAAM,QAAQ;IACnB,2HAA2H;;IAE3H,8FAA8F;;IAE9F,+FAA+F;;IAE/F,0FAA0F;;IAE1F,iFAAiF;;IAEjF,oEAAoE;;IAEpE,yEAAyE;;IAEzE,0GAA0G;;IAE1G,+DAA+D;;IAE/D,wEAAwE;;IAExE,gIAAgI;;IAEhI,iGAAiG;;CAElG,CAAA"}
@@ -4,6 +4,7 @@ import { close } from './close.js';
4
4
  import { getCurrent } from './get-current.js';
5
5
  import { atTime, between } from './query.js';
6
6
  import { TemporalIntegrityError } from './errors.js';
7
+ import { setVersion, versionAt } from './append-only.js';
7
8
  import { asOf, allVersions, effectiveUpdate } from './definition-queries.js';
8
9
  /** Temporal (bitemporal) data namespace — version history with effective date ranges. */
9
10
  export const temporal = {
@@ -27,5 +28,9 @@ export const temporal = {
27
28
  allVersions,
28
29
  /** Close the current version and create a new one with updated data. */
29
30
  effectiveUpdate,
31
+ /** Append the next version of an append-only-versions definition: serialised per scope, numbered, never back-dated, audited. */
32
+ setVersion,
33
+ /** The version in force at a moment: the row with the greatest effectiveFrom at or before it. */
34
+ versionAt,
30
35
  };
31
36
  //# sourceMappingURL=namespace.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"namespace.js","sourceRoot":"","sources":["../../../src/data/temporal/namespace.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAC7C,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AAC5C,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAA;AACpD,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAE5E,yFAAyF;AACzF,MAAM,CAAC,MAAM,QAAQ,GAAG;IACtB,2HAA2H;IAC3H,OAAO,EAAE,eAAe;IACxB,8FAA8F;IAC9F,MAAM;IACN,+FAA+F;IAC/F,KAAK;IACL,0FAA0F;IAC1F,OAAO,EAAE,UAAU;IACnB,iFAAiF;IACjF,MAAM;IACN,oEAAoE;IACpE,OAAO;IACP,yEAAyE;IACzE,sBAAsB;IACtB,0GAA0G;IAC1G,IAAI;IACJ,+DAA+D;IAC/D,WAAW;IACX,wEAAwE;IACxE,eAAe;CAChB,CAAA"}
1
+ {"version":3,"file":"namespace.js","sourceRoot":"","sources":["../../../src/data/temporal/namespace.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAC7C,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AAC5C,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAA;AACpD,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AACxD,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAE5E,yFAAyF;AACzF,MAAM,CAAC,MAAM,QAAQ,GAAG;IACtB,2HAA2H;IAC3H,OAAO,EAAE,eAAe;IACxB,8FAA8F;IAC9F,MAAM;IACN,+FAA+F;IAC/F,KAAK;IACL,0FAA0F;IAC1F,OAAO,EAAE,UAAU;IACnB,iFAAiF;IACjF,MAAM;IACN,oEAAoE;IACpE,OAAO;IACP,yEAAyE;IACzE,sBAAsB;IACtB,0GAA0G;IAC1G,IAAI;IACJ,+DAA+D;IAC/D,WAAW;IACX,wEAAwE;IACxE,eAAe;IACf,gIAAgI;IAChI,UAAU;IACV,iGAAiG;IACjG,SAAS;CACV,CAAA"}
@@ -1,9 +1,7 @@
1
1
  import type { PgTable } from '../query/pg-core/index.js';
2
2
  import type { DefinedTable } from '../domain/types.js';
3
3
  import type { WriteState } from './state.js';
4
- type InsertValues<T extends PgTable> = T extends {
5
- $inferInsert: infer V;
6
- } ? V : Record<string, any>;
4
+ import type { InsertValues } from './values.js';
7
5
  export declare class InsertBuilder<T extends PgTable, TResult = unknown> implements PromiseLike<TResult> {
8
6
  private readonly state;
9
7
  constructor(state: WriteState);
@@ -14,5 +12,4 @@ export declare class InsertBuilder<T extends PgTable, TResult = unknown> impleme
14
12
  }
15
13
  /** Starts a pipework-owned insert against `table`. Chain with `.values(...).returning(...)`. */
16
14
  export declare function insert<T extends DefinedTable<any> & PgTable>(table: T): InsertBuilder<T, any>;
17
- export {};
18
15
  //# sourceMappingURL=insert.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"insert.d.ts","sourceRoot":"","sources":["../../../src/data/write/insert.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAA;AACxD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AACtD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAI5C,KAAK,YAAY,CAAC,CAAC,SAAS,OAAO,IAAI,CAAC,SAAS;IAAE,YAAY,EAAE,MAAM,CAAC,CAAA;CAAE,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;AAEpG,qBAAa,aAAa,CAAC,CAAC,SAAS,OAAO,EAAE,OAAO,GAAG,OAAO,CAAE,YAAW,WAAW,CAAC,OAAO,CAAC;IAClF,OAAO,CAAC,QAAQ,CAAC,KAAK;gBAAL,KAAK,EAAE,UAAU;IAE9C,MAAM,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,CAAC,EAAE,OAAO,CAAC;IAQzF,SAAS,IAAI,aAAa,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;IACxD,SAAS,CAAC,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,aAAa,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;IAM7G,IAAI,CAAC,UAAU,GAAG,OAAO,EAAE,SAAS,GAAG,KAAK,EAC1C,WAAW,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,OAAO,KAAK,UAAU,GAAG,WAAW,CAAC,UAAU,CAAC,CAAC,GAAG,IAAI,EAC/E,UAAU,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,OAAO,KAAK,SAAS,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC,GAAG,IAAI,GAC5E,WAAW,CAAC,UAAU,GAAG,SAAS,CAAC;CAGvC;AAED,gGAAgG;AAEhG,wBAAgB,MAAM,CAAC,CAAC,SAAS,YAAY,CAAC,GAAG,CAAC,GAAG,OAAO,EAAE,KAAK,EAAE,CAAC,GAAG,aAAa,CAAC,CAAC,EAAE,GAAG,CAAC,CAE7F"}
1
+ {"version":3,"file":"insert.d.ts","sourceRoot":"","sources":["../../../src/data/write/insert.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAA;AACxD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AACtD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAC5C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAG/C,qBAAa,aAAa,CAAC,CAAC,SAAS,OAAO,EAAE,OAAO,GAAG,OAAO,CAAE,YAAW,WAAW,CAAC,OAAO,CAAC;IAClF,OAAO,CAAC,QAAQ,CAAC,KAAK;gBAAL,KAAK,EAAE,UAAU;IAE9C,MAAM,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,CAAC,EAAE,OAAO,CAAC;IAQzF,SAAS,IAAI,aAAa,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;IACxD,SAAS,CAAC,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,aAAa,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;IAM7G,IAAI,CAAC,UAAU,GAAG,OAAO,EAAE,SAAS,GAAG,KAAK,EAC1C,WAAW,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,OAAO,KAAK,UAAU,GAAG,WAAW,CAAC,UAAU,CAAC,CAAC,GAAG,IAAI,EAC/E,UAAU,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,OAAO,KAAK,SAAS,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC,GAAG,IAAI,GAC5E,WAAW,CAAC,UAAU,GAAG,SAAS,CAAC;CAGvC;AAED,gGAAgG;AAEhG,wBAAgB,MAAM,CAAC,CAAC,SAAS,YAAY,CAAC,GAAG,CAAC,GAAG,OAAO,EAAE,KAAK,EAAE,CAAC,GAAG,aAAa,CAAC,CAAC,EAAE,GAAG,CAAC,CAE7F"}
@@ -1 +1 @@
1
- {"version":3,"file":"insert.js","sourceRoot":"","sources":["../../../src/data/write/insert.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,4DAA4D;AAK5D,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAK3C,MAAM,OAAO,aAAa;IACK;IAA7B,YAA6B,KAAiB;QAAjB,UAAK,GAAL,KAAK,CAAY;IAAG,CAAC;IAElD,MAAM,CAAC,IAAsD;QAC3D,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;QACtD,OAAO,IAAI,aAAa,CAAa;YACnC,GAAG,IAAI,CAAC,KAAK;YACb,MAAM,EAAE,UAAoD;SAC7D,CAAC,CAAA;IACJ,CAAC;IAID,SAAS,CAAC,KAA+B;QACvC,MAAM,SAAS,GAAG,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,KAAc,CAAC,CAAC,CAAC,KAAK,CAAA;QAC9D,OAAO,IAAI,aAAa,CAA+B,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,SAAS,EAAE,CAAC,CAAA;IACtF,CAAC;IAED,IAAI,CACF,WAA+E,EAC/E,UAA6E;QAE7E,OAAO,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,WAA6C,EAAE,UAAU,CAAwC,CAAA;IACxI,CAAC;CACF;AAED,gGAAgG;AAChG,8DAA8D;AAC9D,MAAM,UAAU,MAAM,CAAwC,KAAQ;IACpE,OAAO,IAAI,aAAa,CAAa,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAA;AACjE,CAAC"}
1
+ {"version":3,"file":"insert.js","sourceRoot":"","sources":["../../../src/data/write/insert.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,4DAA4D;AAM5D,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAE3C,MAAM,OAAO,aAAa;IACK;IAA7B,YAA6B,KAAiB;QAAjB,UAAK,GAAL,KAAK,CAAY;IAAG,CAAC;IAElD,MAAM,CAAC,IAAsD;QAC3D,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;QACtD,OAAO,IAAI,aAAa,CAAa;YACnC,GAAG,IAAI,CAAC,KAAK;YACb,MAAM,EAAE,UAAoD;SAC7D,CAAC,CAAA;IACJ,CAAC;IAID,SAAS,CAAC,KAA+B;QACvC,MAAM,SAAS,GAAG,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,KAAc,CAAC,CAAC,CAAC,KAAK,CAAA;QAC9D,OAAO,IAAI,aAAa,CAA+B,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,SAAS,EAAE,CAAC,CAAA;IACtF,CAAC;IAED,IAAI,CACF,WAA+E,EAC/E,UAA6E;QAE7E,OAAO,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,WAA6C,EAAE,UAAU,CAAwC,CAAA;IACxI,CAAC;CACF;AAED,gGAAgG;AAChG,8DAA8D;AAC9D,MAAM,UAAU,MAAM,CAAwC,KAAQ;IACpE,OAAO,IAAI,aAAa,CAAa,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAA;AACjE,CAAC"}
@@ -2,9 +2,7 @@ import type { PgTable } from '../query/pg-core/index.js';
2
2
  import type { PgUpdateSetSource } from '../query/pg-core/query-builders/update.js';
3
3
  import type { DefinedTable } from '../domain/types.js';
4
4
  import type { WriteState } from './state.js';
5
- type InsertValues<T extends PgTable> = T extends {
6
- $inferInsert: infer V;
7
- } ? V : Record<string, any>;
5
+ import type { InsertValues } from './values.js';
8
6
  export declare class UpsertBuilder<T extends PgTable, TResult = unknown> implements PromiseLike<TResult> {
9
7
  private readonly state;
10
8
  constructor(state: WriteState);
@@ -17,5 +15,4 @@ export declare class UpsertBuilder<T extends PgTable, TResult = unknown> impleme
17
15
  }
18
16
  /** Starts a pipework-owned upsert against `table`. Chain with `.values(...).onConflict([...]).set(...).returning(...)`. */
19
17
  export declare function upsert<T extends DefinedTable<any> & PgTable>(table: T): UpsertBuilder<T, any>;
20
- export {};
21
18
  //# sourceMappingURL=upsert.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"upsert.d.ts","sourceRoot":"","sources":["../../../src/data/write/upsert.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAA;AACxD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2CAA2C,CAAA;AAClF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AACtD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAI5C,KAAK,YAAY,CAAC,CAAC,SAAS,OAAO,IAAI,CAAC,SAAS;IAAE,YAAY,EAAE,MAAM,CAAC,CAAA;CAAE,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;AAEpG,qBAAa,aAAa,CAAC,CAAC,SAAS,OAAO,EAAE,OAAO,GAAG,OAAO,CAAE,YAAW,WAAW,CAAC,OAAO,CAAC;IAClF,OAAO,CAAC,QAAQ,CAAC,KAAK;gBAAL,KAAK,EAAE,UAAU;IAE9C,MAAM,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,CAAC,EAAE,OAAO,CAAC;IAQzF,UAAU,CAAC,OAAO,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,GAAG,MAAM,CAAC,EAAE,GAAG,aAAa,CAAC,CAAC,EAAE,OAAO,CAAC;IAO7F,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,CAAC,EAAE,OAAO,CAAC;IAI5D,SAAS,IAAI,aAAa,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;IACxD,SAAS,CAAC,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,aAAa,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;IAM7G,IAAI,CAAC,UAAU,GAAG,OAAO,EAAE,SAAS,GAAG,KAAK,EAC1C,WAAW,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,OAAO,KAAK,UAAU,GAAG,WAAW,CAAC,UAAU,CAAC,CAAC,GAAG,IAAI,EAC/E,UAAU,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,OAAO,KAAK,SAAS,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC,GAAG,IAAI,GAC5E,WAAW,CAAC,UAAU,GAAG,SAAS,CAAC;CAGvC;AAED,2HAA2H;AAE3H,wBAAgB,MAAM,CAAC,CAAC,SAAS,YAAY,CAAC,GAAG,CAAC,GAAG,OAAO,EAAE,KAAK,EAAE,CAAC,GAAG,aAAa,CAAC,CAAC,EAAE,GAAG,CAAC,CAE7F"}
1
+ {"version":3,"file":"upsert.d.ts","sourceRoot":"","sources":["../../../src/data/write/upsert.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAA;AACxD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2CAA2C,CAAA;AAClF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AACtD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAC5C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAG/C,qBAAa,aAAa,CAAC,CAAC,SAAS,OAAO,EAAE,OAAO,GAAG,OAAO,CAAE,YAAW,WAAW,CAAC,OAAO,CAAC;IAClF,OAAO,CAAC,QAAQ,CAAC,KAAK;gBAAL,KAAK,EAAE,UAAU;IAE9C,MAAM,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,CAAC,EAAE,OAAO,CAAC;IAQzF,UAAU,CAAC,OAAO,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,GAAG,MAAM,CAAC,EAAE,GAAG,aAAa,CAAC,CAAC,EAAE,OAAO,CAAC;IAO7F,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,CAAC,EAAE,OAAO,CAAC;IAI5D,SAAS,IAAI,aAAa,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;IACxD,SAAS,CAAC,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,aAAa,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;IAM7G,IAAI,CAAC,UAAU,GAAG,OAAO,EAAE,SAAS,GAAG,KAAK,EAC1C,WAAW,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,OAAO,KAAK,UAAU,GAAG,WAAW,CAAC,UAAU,CAAC,CAAC,GAAG,IAAI,EAC/E,UAAU,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,OAAO,KAAK,SAAS,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC,GAAG,IAAI,GAC5E,WAAW,CAAC,UAAU,GAAG,SAAS,CAAC;CAGvC;AAED,2HAA2H;AAE3H,wBAAgB,MAAM,CAAC,CAAC,SAAS,YAAY,CAAC,GAAG,CAAC,GAAG,OAAO,EAAE,KAAK,EAAE,CAAC,GAAG,aAAa,CAAC,CAAC,EAAE,GAAG,CAAC,CAE7F"}
@@ -1 +1 @@
1
- {"version":3,"file":"upsert.js","sourceRoot":"","sources":["../../../src/data/write/upsert.ts"],"names":[],"mappings":"AAAA,0EAA0E;AAC1E,4EAA4E;AAC5E,yEAAyE;AACzE,EAAE;AACF,2EAA2E;AAC3E,gCAAgC;AAMhC,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAK3C,MAAM,OAAO,aAAa;IACK;IAA7B,YAA6B,KAAiB;QAAjB,UAAK,GAAL,KAAK,CAAY;IAAG,CAAC;IAElD,MAAM,CAAC,IAAsD;QAC3D,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;QACtD,OAAO,IAAI,aAAa,CAAa;YACnC,GAAG,IAAI,CAAC,KAAK;YACb,MAAM,EAAE,UAAoD;SAC7D,CAAC,CAAA;IACJ,CAAC;IAED,UAAU,CAAC,OAAsD;QAC/D,OAAO,IAAI,aAAa,CAAa;YACnC,GAAG,IAAI,CAAC,KAAK;YACb,iBAAiB,EAAE,OAA4B;SAChD,CAAC,CAAA;IACJ,CAAC;IAED,GAAG,CAAC,MAA4B;QAC9B,OAAO,IAAI,aAAa,CAAa,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,GAAG,EAAE,MAAiC,EAAE,CAAC,CAAA;IACjG,CAAC;IAID,SAAS,CAAC,KAA+B;QACvC,MAAM,SAAS,GAAG,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,KAAc,CAAC,CAAC,CAAC,KAAK,CAAA;QAC9D,OAAO,IAAI,aAAa,CAA+B,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,SAAS,EAAE,CAAC,CAAA;IACtF,CAAC;IAED,IAAI,CACF,WAA+E,EAC/E,UAA6E;QAE7E,OAAO,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,WAA6C,EAAE,UAAU,CAAwC,CAAA;IACxI,CAAC;CACF;AAED,2HAA2H;AAC3H,8DAA8D;AAC9D,MAAM,UAAU,MAAM,CAAwC,KAAQ;IACpE,OAAO,IAAI,aAAa,CAAa,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAA;AACjE,CAAC"}
1
+ {"version":3,"file":"upsert.js","sourceRoot":"","sources":["../../../src/data/write/upsert.ts"],"names":[],"mappings":"AAAA,0EAA0E;AAC1E,4EAA4E;AAC5E,yEAAyE;AACzE,EAAE;AACF,2EAA2E;AAC3E,gCAAgC;AAOhC,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAE3C,MAAM,OAAO,aAAa;IACK;IAA7B,YAA6B,KAAiB;QAAjB,UAAK,GAAL,KAAK,CAAY;IAAG,CAAC;IAElD,MAAM,CAAC,IAAsD;QAC3D,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;QACtD,OAAO,IAAI,aAAa,CAAa;YACnC,GAAG,IAAI,CAAC,KAAK;YACb,MAAM,EAAE,UAAoD;SAC7D,CAAC,CAAA;IACJ,CAAC;IAED,UAAU,CAAC,OAAsD;QAC/D,OAAO,IAAI,aAAa,CAAa;YACnC,GAAG,IAAI,CAAC,KAAK;YACb,iBAAiB,EAAE,OAA4B;SAChD,CAAC,CAAA;IACJ,CAAC;IAED,GAAG,CAAC,MAA4B;QAC9B,OAAO,IAAI,aAAa,CAAa,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,GAAG,EAAE,MAAiC,EAAE,CAAC,CAAA;IACjG,CAAC;IAID,SAAS,CAAC,KAA+B;QACvC,MAAM,SAAS,GAAG,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,KAAc,CAAC,CAAC,CAAC,KAAK,CAAA;QAC9D,OAAO,IAAI,aAAa,CAA+B,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,SAAS,EAAE,CAAC,CAAA;IACtF,CAAC;IAED,IAAI,CACF,WAA+E,EAC/E,UAA6E;QAE7E,OAAO,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,WAA6C,EAAE,UAAU,CAAwC,CAAA;IACxI,CAAC;CACF;AAED,2HAA2H;AAC3H,8DAA8D;AAC9D,MAAM,UAAU,MAAM,CAAwC,KAAQ;IACpE,OAAO,IAAI,aAAa,CAAa,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAA;AACjE,CAAC"}
@@ -0,0 +1,10 @@
1
+ import type { InferInsertModel } from '../query/index.js';
2
+ import type { PgTable } from '../query/pg-core/index.js';
3
+ /**
4
+ * The table's column-level insert shape: NOT NULL columns without a default are
5
+ * required, nullable or defaulted ones optional, no other keys. Auto-managed
6
+ * columns stay insertable. Falls back to an open record for a table whose
7
+ * columns are not statically known (generic framework code).
8
+ */
9
+ export type InsertValues<T extends PgTable> = string extends keyof InferInsertModel<T> ? Record<string, any> : InferInsertModel<T>;
10
+ //# sourceMappingURL=values.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"values.d.ts","sourceRoot":"","sources":["../../../src/data/write/values.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AACzD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAA;AAExD;;;;;GAKG;AAEH,MAAM,MAAM,YAAY,CAAC,CAAC,SAAS,OAAO,IAAI,MAAM,SAAS,MAAM,gBAAgB,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAA"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=values.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"values.js","sourceRoot":"","sources":["../../../src/data/write/values.ts"],"names":[],"mappings":""}
@@ -25,7 +25,11 @@ export declare const accessLink: import("../../data/domain/types.js").DefinedTab
25
25
  } & {
26
26
  primaryKey: true;
27
27
  }>;
28
- tenantId: import("../../data/domain/types.js").FieldDescriptor<string, {}> & import("../../data/domain/field.js").FieldModifiers<string, {}>;
28
+ tenantId: import("../../data/domain/types.js").FieldDescriptor<string, {
29
+ tenant: true;
30
+ }> & import("../../data/domain/field.js").FieldModifiers<string, {
31
+ tenant: true;
32
+ }>;
29
33
  code: import("../../data/domain/types.js").FieldDescriptor<string, {}> & import("../../data/domain/field.js").FieldModifiers<string, {}>;
30
34
  targetType: import("../../data/domain/types.js").FieldDescriptor<string, {}> & import("../../data/domain/field.js").FieldModifiers<string, {}>;
31
35
  targetId: import("../../data/domain/types.js").FieldDescriptor<string, {}> & import("../../data/domain/field.js").FieldModifiers<string, {}>;
@@ -88,7 +92,11 @@ export declare const accessLinkUse: import("../../data/domain/types.js").Defined
88
92
  } & {
89
93
  primaryKey: true;
90
94
  }>;
91
- tenantId: import("../../data/domain/types.js").FieldDescriptor<string, {}> & import("../../data/domain/field.js").FieldModifiers<string, {}>;
95
+ tenantId: import("../../data/domain/types.js").FieldDescriptor<string, {
96
+ tenant: true;
97
+ }> & import("../../data/domain/field.js").FieldModifiers<string, {
98
+ tenant: true;
99
+ }>;
92
100
  linkId: import("../../data/domain/types.js").FieldDescriptor<string, {}> & import("../../data/domain/field.js").FieldModifiers<string, {}>;
93
101
  kind: import("../../data/domain/types.js").FieldDescriptor<string, {}> & import("../../data/domain/field.js").FieldModifiers<string, {}>;
94
102
  status: import("../../data/domain/types.js").FieldDescriptor<"completed" | "pending" | "abandoned", {}> & import("../../data/domain/field.js").FieldModifiers<"completed" | "pending" | "abandoned", {}>;
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/infra/access-links/schema.ts"],"names":[],"mappings":"AAWA,eAAO,MAAM,wBAAwB,gDAAiD,CAAA;AAEtF,eAAO,MAAM,cAAc;;;;;;;;;;;;;sBAKzB,CAAA;AAEF,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAgBrB,CAAA;AAEF,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qBAiBxB,CAAA;AAIF,eAAO,MAAM,oBAAoB;;;;;;;6BAG/B,CAAA;AAIF,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;sBAIzB,CAAA"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/infra/access-links/schema.ts"],"names":[],"mappings":"AAWA,eAAO,MAAM,wBAAwB,gDAAiD,CAAA;AAEtF,eAAO,MAAM,cAAc;;;;;;;;;;;;;sBAKzB,CAAA;AAEF,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAgBrB,CAAA;AAEF,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qBAiBxB,CAAA;AAIF,eAAO,MAAM,oBAAoB;;;;;;;6BAG/B,CAAA;AAIF,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;sBAIzB,CAAA"}
@@ -12,7 +12,11 @@ export declare const creditGrant: import("../../data/domain/types.js").DefinedTa
12
12
  } & {
13
13
  primaryKey: true;
14
14
  }>;
15
- tenantId: import("../../data/domain/types.js").FieldDescriptor<string, {}> & import("../../data/domain/field.js").FieldModifiers<string, {}>;
15
+ tenantId: import("../../data/domain/types.js").FieldDescriptor<string, {
16
+ tenant: true;
17
+ }> & import("../../data/domain/field.js").FieldModifiers<string, {
18
+ tenant: true;
19
+ }>;
16
20
  kind: import("../../data/domain/types.js").FieldDescriptor<string, {}> & import("../../data/domain/field.js").FieldModifiers<string, {}>;
17
21
  amount: import("../../data/domain/types.js").FieldDescriptor<bigint, {}> & import("../../data/domain/field.js").FieldModifiers<bigint, {}>;
18
22
  remaining: import("../../data/domain/types.js").FieldDescriptor<bigint, {}> & import("../../data/domain/field.js").FieldModifiers<bigint, {}>;
@@ -49,7 +53,11 @@ export declare const creditReservation: import("../../data/domain/types.js").Def
49
53
  } & {
50
54
  primaryKey: true;
51
55
  }>;
52
- tenantId: import("../../data/domain/types.js").FieldDescriptor<string, {}> & import("../../data/domain/field.js").FieldModifiers<string, {}>;
56
+ tenantId: import("../../data/domain/types.js").FieldDescriptor<string, {
57
+ tenant: true;
58
+ }> & import("../../data/domain/field.js").FieldModifiers<string, {
59
+ tenant: true;
60
+ }>;
53
61
  jobId: import("../../data/domain/types.js").FieldDescriptor<string, {}> & import("../../data/domain/field.js").FieldModifiers<string, {}>;
54
62
  amount: import("../../data/domain/types.js").FieldDescriptor<bigint, {}> & import("../../data/domain/field.js").FieldModifiers<bigint, {}>;
55
63
  status: import("../../data/domain/types.js").FieldDescriptor<"held" | "settled" | "released", {}> & import("../../data/domain/field.js").FieldModifiers<"held" | "settled" | "released", {}>;
@@ -86,7 +94,11 @@ export declare const creditDraw: import("../../data/domain/types.js").DefinedTab
86
94
  } & {
87
95
  primaryKey: true;
88
96
  }>;
89
- tenantId: import("../../data/domain/types.js").FieldDescriptor<string, {}> & import("../../data/domain/field.js").FieldModifiers<string, {}>;
97
+ tenantId: import("../../data/domain/types.js").FieldDescriptor<string, {
98
+ tenant: true;
99
+ }> & import("../../data/domain/field.js").FieldModifiers<string, {
100
+ tenant: true;
101
+ }>;
90
102
  reservationId: import("../../data/domain/types.js").FieldDescriptor<string, {}> & import("../../data/domain/field.js").FieldModifiers<string, {}>;
91
103
  grantId: import("../../data/domain/types.js").FieldDescriptor<string, {}> & import("../../data/domain/field.js").FieldModifiers<string, {}>;
92
104
  amount: import("../../data/domain/types.js").FieldDescriptor<bigint, {}> & import("../../data/domain/field.js").FieldModifiers<bigint, {}>;
@@ -104,7 +116,11 @@ export declare const creditLedger: import("../../data/domain/types.js").DefinedT
104
116
  } & {
105
117
  primaryKey: true;
106
118
  }>;
107
- tenantId: import("../../data/domain/types.js").FieldDescriptor<string, {}> & import("../../data/domain/field.js").FieldModifiers<string, {}>;
119
+ tenantId: import("../../data/domain/types.js").FieldDescriptor<string, {
120
+ tenant: true;
121
+ }> & import("../../data/domain/field.js").FieldModifiers<string, {
122
+ tenant: true;
123
+ }>;
108
124
  at: import("../../data/domain/types.js").FieldDescriptor<Date, {
109
125
  hasDefault: true;
110
126
  }> & import("../../data/domain/field.js").FieldModifiers<Date, {
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/infra/credits/schema.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,2BAA2B,0CAA2C,CAAA;AACnF,eAAO,MAAM,mBAAmB,8DAA+D,CAAA;AAE/F,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAetB,CAAA;AAEF,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wBAc5B,CAAA;AAEF,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;iBAWrB,CAAA;AAEF,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAcvB,CAAA"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/infra/credits/schema.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,2BAA2B,0CAA2C,CAAA;AACnF,eAAO,MAAM,mBAAmB,8DAA+D,CAAA;AAE/F,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAetB,CAAA;AAEF,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wBAc5B,CAAA;AAEF,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;iBAWrB,CAAA;AAEF,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAcvB,CAAA"}
@@ -10,7 +10,11 @@ export declare const storageFile: import("../../data/domain/types.js").DefinedTa
10
10
  } & {
11
11
  primaryKey: true;
12
12
  }>;
13
- tenantId: import("../../data/domain/types.js").FieldDescriptor<string, {}> & import("../../data/domain/field.js").FieldModifiers<string, {}>;
13
+ tenantId: import("../../data/domain/types.js").FieldDescriptor<string, {
14
+ tenant: true;
15
+ }> & import("../../data/domain/field.js").FieldModifiers<string, {
16
+ tenant: true;
17
+ }>;
14
18
  sha256: import("../../data/domain/types.js").FieldDescriptor<string, {}> & import("../../data/domain/field.js").FieldModifiers<string, {}>;
15
19
  size: import("../../data/domain/types.js").FieldDescriptor<bigint, {}> & import("../../data/domain/field.js").FieldModifiers<bigint, {}>;
16
20
  mediaType: import("../../data/domain/types.js").FieldDescriptor<string, {}> & import("../../data/domain/field.js").FieldModifiers<string, {}>;
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/infra/storage/schema.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAetB,CAAA"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/infra/storage/schema.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAetB,CAAA"}
@@ -15,7 +15,11 @@ export declare const supportTicket: import("../../data/domain/types.js").Defined
15
15
  } & {
16
16
  primaryKey: true;
17
17
  }>;
18
- tenantId: import("../../data/domain/types.js").FieldDescriptor<string, {}> & import("../../data/domain/field.js").FieldModifiers<string, {}>;
18
+ tenantId: import("../../data/domain/types.js").FieldDescriptor<string, {
19
+ tenant: true;
20
+ }> & import("../../data/domain/field.js").FieldModifiers<string, {
21
+ tenant: true;
22
+ }>;
19
23
  state: import("../../data/domain/types.js").FieldDescriptor<"open" | "closed" | "triaged" | "awaiting_approval" | "answered", {
20
24
  hasDefault: true;
21
25
  }> & import("../../data/domain/field.js").FieldModifiers<"open" | "closed" | "triaged" | "awaiting_approval" | "answered", {
@@ -71,7 +75,11 @@ export declare const supportMessage: import("../../data/domain/types.js").Define
71
75
  } & {
72
76
  primaryKey: true;
73
77
  }>;
74
- tenantId: import("../../data/domain/types.js").FieldDescriptor<string, {}> & import("../../data/domain/field.js").FieldModifiers<string, {}>;
78
+ tenantId: import("../../data/domain/types.js").FieldDescriptor<string, {
79
+ tenant: true;
80
+ }> & import("../../data/domain/field.js").FieldModifiers<string, {
81
+ tenant: true;
82
+ }>;
75
83
  ticketId: import("../../data/domain/types.js").FieldDescriptor<string, {}> & import("../../data/domain/field.js").FieldModifiers<string, {}>;
76
84
  kind: import("../../data/domain/types.js").FieldDescriptor<"note" | "inbound" | "draft" | "outbound", {}> & import("../../data/domain/field.js").FieldModifiers<"note" | "inbound" | "draft" | "outbound", {}>;
77
85
  channel: import("../../data/domain/types.js").FieldDescriptor<"email" | "chat" | "api", {}> & import("../../data/domain/field.js").FieldModifiers<"email" | "chat" | "api", {}>;
@@ -149,7 +157,11 @@ export declare const supportLink: import("../../data/domain/types.js").DefinedTa
149
157
  } & {
150
158
  primaryKey: true;
151
159
  }>;
152
- tenantId: import("../../data/domain/types.js").FieldDescriptor<string, {}> & import("../../data/domain/field.js").FieldModifiers<string, {}>;
160
+ tenantId: import("../../data/domain/types.js").FieldDescriptor<string, {
161
+ tenant: true;
162
+ }> & import("../../data/domain/field.js").FieldModifiers<string, {
163
+ tenant: true;
164
+ }>;
153
165
  ticketId: import("../../data/domain/types.js").FieldDescriptor<string, {}> & import("../../data/domain/field.js").FieldModifiers<string, {}>;
154
166
  kind: import("../../data/domain/types.js").FieldDescriptor<string, {}> & import("../../data/domain/field.js").FieldModifiers<string, {}>;
155
167
  ref: import("../../data/domain/types.js").FieldDescriptor<string, {}> & import("../../data/domain/field.js").FieldModifiers<string, {}>;
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/infra/support/schema.ts"],"names":[],"mappings":"AAUA,eAAO,MAAM,aAAa,yEAA0E,CAAA;AACpG,eAAO,MAAM,aAAa,mDAAoD,CAAA;AAC9E,eAAO,MAAM,gBAAgB,mCAAoC,CAAA;AACjE,eAAO,MAAM,cAAc,6CAA8C,CAAA;AACzE,eAAO,MAAM,WAAW,mFAAoF,CAAA;AAE5G,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oBAkBxB,CAAA;AAEF,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qBAwBzB,CAAA;AAEF,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;kBAYtB,CAAA;AAEF,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4BAmB/B,CAAA"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/infra/support/schema.ts"],"names":[],"mappings":"AAUA,eAAO,MAAM,aAAa,yEAA0E,CAAA;AACpG,eAAO,MAAM,aAAa,mDAAoD,CAAA;AAC9E,eAAO,MAAM,gBAAgB,mCAAoC,CAAA;AACjE,eAAO,MAAM,cAAc,6CAA8C,CAAA;AACzE,eAAO,MAAM,WAAW,mFAAoF,CAAA;AAE5G,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oBAkBxB,CAAA;AAEF,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qBAwBzB,CAAA;AAEF,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAYtB,CAAA;AAEF,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4BAmB/B,CAAA"}
@@ -21,8 +21,12 @@ export declare const traceFields: {
21
21
  entryKind: import("../../data/domain/types.js").FieldDescriptor<"test" | "http" | "job" | "cron", {}> & import("../../data/domain/field.js").FieldModifiers<"test" | "http" | "job" | "cron", {}>;
22
22
  status: import("../../data/domain/types.js").FieldDescriptor<"error" | "open" | "closed" | "truncated" | "expired", {}> & import("../../data/domain/field.js").FieldModifiers<"error" | "open" | "closed" | "truncated" | "expired", {}>;
23
23
  tenantId: import("../../data/domain/types.js").FieldDescriptor<string | null, {
24
+ tenant: true;
25
+ } & {
24
26
  nullable: true;
25
27
  }> & import("../../data/domain/field.js").FieldModifiers<string | null, {
28
+ tenant: true;
29
+ } & {
26
30
  nullable: true;
27
31
  }>;
28
32
  requestId: import("../../data/domain/types.js").FieldDescriptor<string | null, {
@@ -1 +1 @@
1
- {"version":3,"file":"trace-fields.d.ts","sourceRoot":"","sources":["../../../src/trace/schema/trace-fields.ts"],"names":[],"mappings":"AAyBA,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0BvB,CAAA"}
1
+ {"version":3,"file":"trace-fields.d.ts","sourceRoot":"","sources":["../../../src/trace/schema/trace-fields.ts"],"names":[],"mappings":"AAyBA,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0BvB,CAAA"}
@@ -21,8 +21,12 @@ export declare const traceRetained: import("../../data/domain/types.js").Defined
21
21
  entryKind: import("../../data/domain/types.js").FieldDescriptor<"test" | "http" | "job" | "cron", {}> & import("../../data/domain/field.js").FieldModifiers<"test" | "http" | "job" | "cron", {}>;
22
22
  status: import("../../data/domain/types.js").FieldDescriptor<"error" | "open" | "closed" | "truncated" | "expired", {}> & import("../../data/domain/field.js").FieldModifiers<"error" | "open" | "closed" | "truncated" | "expired", {}>;
23
23
  tenantId: import("../../data/domain/types.js").FieldDescriptor<string | null, {
24
+ tenant: true;
25
+ } & {
24
26
  nullable: true;
25
27
  }> & import("../../data/domain/field.js").FieldModifiers<string | null, {
28
+ tenant: true;
29
+ } & {
26
30
  nullable: true;
27
31
  }>;
28
32
  requestId: import("../../data/domain/types.js").FieldDescriptor<string | null, {
@@ -1 +1 @@
1
- {"version":3,"file":"trace-retained.d.ts","sourceRoot":"","sources":["../../../src/trace/schema/trace-retained.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oBAaxB,CAAA"}
1
+ {"version":3,"file":"trace-retained.d.ts","sourceRoot":"","sources":["../../../src/trace/schema/trace-retained.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oBAaxB,CAAA"}
@@ -9,8 +9,12 @@ export declare const traceStepFields: {
9
9
  traceDay: import("../../data/domain/types.js").FieldDescriptor<string, {}> & import("../../data/domain/field.js").FieldModifiers<string, {}>;
10
10
  traceId: import("../../data/domain/types.js").FieldDescriptor<import("../../data/domain/brand.js").Branded<string, "TraceId">, {}> & import("../../data/domain/field.js").FieldModifiers<import("../../data/domain/brand.js").Branded<string, "TraceId">, {}>;
11
11
  tenantId: import("../../data/domain/types.js").FieldDescriptor<string | null, {
12
+ tenant: true;
13
+ } & {
12
14
  nullable: true;
13
15
  }> & import("../../data/domain/field.js").FieldModifiers<string | null, {
16
+ tenant: true;
17
+ } & {
14
18
  nullable: true;
15
19
  }>;
16
20
  seq: import("../../data/domain/types.js").FieldDescriptor<number, {}> & import("../../data/domain/field.js").FieldModifiers<number, {}>;
@@ -1 +1 @@
1
- {"version":3,"file":"trace-step-fields.d.ts","sourceRoot":"","sources":["../../../src/trace/schema/trace-step-fields.ts"],"names":[],"mappings":"AAoBA,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuB3B,CAAA"}
1
+ {"version":3,"file":"trace-step-fields.d.ts","sourceRoot":"","sources":["../../../src/trace/schema/trace-step-fields.ts"],"names":[],"mappings":"AAoBA,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuB3B,CAAA"}
@@ -9,8 +9,12 @@ export declare const traceStepRetained: import("../../data/domain/types.js").Def
9
9
  traceDay: import("../../data/domain/types.js").FieldDescriptor<string, {}> & import("../../data/domain/field.js").FieldModifiers<string, {}>;
10
10
  traceId: import("../../data/domain/types.js").FieldDescriptor<import("../../data/domain/brand.js").Branded<string, "TraceId">, {}> & import("../../data/domain/field.js").FieldModifiers<import("../../data/domain/brand.js").Branded<string, "TraceId">, {}>;
11
11
  tenantId: import("../../data/domain/types.js").FieldDescriptor<string | null, {
12
+ tenant: true;
13
+ } & {
12
14
  nullable: true;
13
15
  }> & import("../../data/domain/field.js").FieldModifiers<string | null, {
16
+ tenant: true;
17
+ } & {
14
18
  nullable: true;
15
19
  }>;
16
20
  seq: import("../../data/domain/types.js").FieldDescriptor<number, {}> & import("../../data/domain/field.js").FieldModifiers<number, {}>;
@@ -1 +1 @@
1
- {"version":3,"file":"trace-step-retained.d.ts","sourceRoot":"","sources":["../../../src/trace/schema/trace-step-retained.ts"],"names":[],"mappings":"AAUA,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBAc5B,CAAA"}
1
+ {"version":3,"file":"trace-step-retained.d.ts","sourceRoot":"","sources":["../../../src/trace/schema/trace-step-retained.ts"],"names":[],"mappings":"AAUA,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBAc5B,CAAA"}
@@ -9,8 +9,12 @@ export declare const traceStep: import("../../data/domain/types.js").DefinedTabl
9
9
  traceDay: import("../../data/domain/types.js").FieldDescriptor<string, {}> & import("../../data/domain/field.js").FieldModifiers<string, {}>;
10
10
  traceId: import("../../data/domain/types.js").FieldDescriptor<import("../../data/domain/brand.js").Branded<string, "TraceId">, {}> & import("../../data/domain/field.js").FieldModifiers<import("../../data/domain/brand.js").Branded<string, "TraceId">, {}>;
11
11
  tenantId: import("../../data/domain/types.js").FieldDescriptor<string | null, {
12
+ tenant: true;
13
+ } & {
12
14
  nullable: true;
13
15
  }> & import("../../data/domain/field.js").FieldModifiers<string | null, {
16
+ tenant: true;
17
+ } & {
14
18
  nullable: true;
15
19
  }>;
16
20
  seq: import("../../data/domain/types.js").FieldDescriptor<number, {}> & import("../../data/domain/field.js").FieldModifiers<number, {}>;
@@ -1 +1 @@
1
- {"version":3,"file":"trace-step.d.ts","sourceRoot":"","sources":["../../../src/trace/schema/trace-step.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gBAQpB,CAAA"}
1
+ {"version":3,"file":"trace-step.d.ts","sourceRoot":"","sources":["../../../src/trace/schema/trace-step.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gBAQpB,CAAA"}