@fougere/adapter-sql 0.9.3-alpha.0 → 0.10.0-alpha.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/dist/check.d.ts +1 -1
- package/dist/check.d.ts.map +1 -1
- package/dist/{crud.d.ts → crud/SqlStorage.d.ts} +3 -7
- package/dist/crud/SqlStorage.d.ts.map +1 -0
- package/dist/{crud.js → crud/SqlStorage.js} +5 -8
- package/dist/crud/SqlStorage.js.map +1 -0
- package/dist/crud/StorageFactoryOptions.d.ts +5 -0
- package/dist/crud/StorageFactoryOptions.d.ts.map +1 -0
- package/dist/crud/StorageFactoryOptions.js +2 -0
- package/dist/crud/StorageFactoryOptions.js.map +1 -0
- package/dist/ddl/GenerateOptions.d.ts +8 -0
- package/dist/ddl/GenerateOptions.d.ts.map +1 -0
- package/dist/ddl/GenerateOptions.js +2 -0
- package/dist/ddl/GenerateOptions.js.map +1 -0
- package/dist/{ddl.d.ts → ddl/SqlSink.d.ts} +6 -10
- package/dist/ddl/SqlSink.d.ts.map +1 -0
- package/dist/{ddl.js → ddl/SqlSink.js} +6 -7
- package/dist/ddl/SqlSink.js.map +1 -0
- package/dist/{dialect.d.ts → dialect/Dialect.d.ts} +3 -4
- package/dist/dialect/Dialect.d.ts.map +1 -0
- package/dist/{dialect.js → dialect/Dialect.js} +1 -1
- package/dist/dialect/Dialect.js.map +1 -0
- package/dist/dialect/DialectName.d.ts +2 -0
- package/dist/dialect/DialectName.d.ts.map +1 -0
- package/dist/dialect/DialectName.js +2 -0
- package/dist/dialect/DialectName.js.map +1 -0
- package/dist/{diff.d.ts → diff/Change.d.ts} +7 -7
- package/dist/diff/Change.d.ts.map +1 -0
- package/dist/{diff.js → diff/Change.js} +6 -7
- package/dist/diff/Change.js.map +1 -0
- package/dist/diff/SchemaState.d.ts +6 -0
- package/dist/diff/SchemaState.d.ts.map +1 -0
- package/dist/diff/SchemaState.js +11 -0
- package/dist/diff/SchemaState.js.map +1 -0
- package/dist/drift.d.ts +1 -1
- package/dist/drift.d.ts.map +1 -1
- package/dist/drift.js +1 -1
- package/dist/drift.js.map +1 -1
- package/dist/fields/Engine.d.ts +4 -0
- package/dist/fields/Engine.d.ts.map +1 -0
- package/dist/fields/Engine.js +2 -0
- package/dist/fields/Engine.js.map +1 -0
- package/dist/fields/SqlField.d.ts +6 -0
- package/dist/fields/SqlField.d.ts.map +1 -0
- package/dist/fields/SqlField.js +2 -0
- package/dist/fields/SqlField.js.map +1 -0
- package/dist/{fields.d.ts → fields/SqlFields.d.ts} +2 -9
- package/dist/fields/SqlFields.d.ts.map +1 -0
- package/dist/{fields.js → fields/SqlFields.js} +2 -2
- package/dist/fields/SqlFields.js.map +1 -0
- package/dist/index.d.ts +23 -16
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +10 -9
- package/dist/index.js.map +1 -1
- package/dist/order/FkEdge.d.ts +7 -0
- package/dist/order/FkEdge.d.ts.map +1 -0
- package/dist/order/FkEdge.js +2 -0
- package/dist/order/FkEdge.js.map +1 -0
- package/dist/{order.d.ts → order/TableOrder.d.ts} +3 -10
- package/dist/order/TableOrder.d.ts.map +1 -0
- package/dist/{order.js → order/TableOrder.js} +1 -1
- package/dist/order/TableOrder.js.map +1 -0
- package/dist/{query.d.ts → query/QueryEvent.d.ts} +1 -7
- package/dist/query/QueryEvent.d.ts.map +1 -0
- package/dist/query/QueryEvent.js +2 -0
- package/dist/query/QueryEvent.js.map +1 -0
- package/dist/query/QuerySink.d.ts +8 -0
- package/dist/query/QuerySink.d.ts.map +1 -0
- package/dist/{query.js → query/QuerySink.js} +1 -1
- package/dist/query/QuerySink.js.map +1 -0
- package/dist/source/Setup.d.ts +4 -0
- package/dist/source/Setup.d.ts.map +1 -0
- package/dist/source/Setup.js +2 -0
- package/dist/source/Setup.js.map +1 -0
- package/dist/{source.d.ts → source/SqlSource.d.ts} +5 -13
- package/dist/source/SqlSource.d.ts.map +1 -0
- package/dist/{source.js → source/SqlSource.js} +6 -7
- package/dist/source/SqlSource.js.map +1 -0
- package/dist/source/SqlSourceOptions.d.ts +8 -0
- package/dist/source/SqlSourceOptions.d.ts.map +1 -0
- package/dist/source/SqlSourceOptions.js +2 -0
- package/dist/source/SqlSourceOptions.js.map +1 -0
- package/dist/{sqlite.d.ts → sqlite/SqliteSource.d.ts} +3 -6
- package/dist/sqlite/SqliteSource.d.ts.map +1 -0
- package/dist/{sqlite.js → sqlite/SqliteSource.js} +7 -8
- package/dist/sqlite/SqliteSource.js.map +1 -0
- package/dist/sqlite/SqliteSourceOptions.d.ts +6 -0
- package/dist/sqlite/SqliteSourceOptions.d.ts.map +1 -0
- package/dist/sqlite/SqliteSourceOptions.js +2 -0
- package/dist/sqlite/SqliteSourceOptions.js.map +1 -0
- package/dist/sqlite/index.d.ts +3 -0
- package/dist/sqlite/index.d.ts.map +1 -0
- package/dist/sqlite/index.js +2 -0
- package/dist/sqlite/index.js.map +1 -0
- package/dist/{step.d.ts → step/Plan.d.ts} +6 -28
- package/dist/step/Plan.d.ts.map +1 -0
- package/dist/{step.js → step/Plan.js} +5 -6
- package/dist/step/Plan.js.map +1 -0
- package/dist/step/PlanOptions.d.ts +8 -0
- package/dist/step/PlanOptions.d.ts.map +1 -0
- package/dist/step/PlanOptions.js +2 -0
- package/dist/step/PlanOptions.js.map +1 -0
- package/dist/step/Refusal.d.ts +7 -0
- package/dist/step/Refusal.d.ts.map +1 -0
- package/dist/step/Refusal.js +2 -0
- package/dist/step/Refusal.js.map +1 -0
- package/dist/step/StepChange.d.ts +12 -0
- package/dist/step/StepChange.d.ts.map +1 -0
- package/dist/step/StepChange.js +2 -0
- package/dist/step/StepChange.js.map +1 -0
- package/dist/table/AppLike.d.ts +12 -0
- package/dist/table/AppLike.d.ts.map +1 -0
- package/dist/table/AppLike.js +2 -0
- package/dist/table/AppLike.js.map +1 -0
- package/dist/table/ColumnDef.d.ts +34 -0
- package/dist/table/ColumnDef.d.ts.map +1 -0
- package/dist/table/ColumnDef.js +2 -0
- package/dist/table/ColumnDef.js.map +1 -0
- package/dist/table/ColumnReference.d.ts +6 -0
- package/dist/table/ColumnReference.d.ts.map +1 -0
- package/dist/table/ColumnReference.js +2 -0
- package/dist/table/ColumnReference.js.map +1 -0
- package/dist/table/EntityEntry.d.ts +7 -0
- package/dist/table/EntityEntry.d.ts.map +1 -0
- package/dist/table/EntityEntry.js +2 -0
- package/dist/table/EntityEntry.js.map +1 -0
- package/dist/table/FrondLike.d.ts +6 -0
- package/dist/table/FrondLike.d.ts.map +1 -0
- package/dist/table/FrondLike.js +2 -0
- package/dist/table/FrondLike.js.map +1 -0
- package/dist/table/HostedNames.d.ts +8 -0
- package/dist/table/HostedNames.d.ts.map +1 -0
- package/dist/table/HostedNames.js +2 -0
- package/dist/table/HostedNames.js.map +1 -0
- package/dist/table/RelationResolve.d.ts +12 -0
- package/dist/table/RelationResolve.d.ts.map +1 -0
- package/dist/table/RelationResolve.js +2 -0
- package/dist/table/RelationResolve.js.map +1 -0
- package/dist/table/TableDef.d.ts +29 -0
- package/dist/table/TableDef.d.ts.map +1 -0
- package/dist/{table.js → table/TableDef.js} +3 -4
- package/dist/table/TableDef.js.map +1 -0
- package/package.json +6 -6
- package/src/check.ts +1 -1
- package/src/{crud.ts → crud/SqlStorage.ts} +6 -13
- package/src/crud/StorageFactoryOptions.ts +4 -0
- package/src/ddl/GenerateOptions.ts +8 -0
- package/src/{ddl.ts → ddl/SqlSink.ts} +8 -21
- package/src/{dialect.ts → dialect/Dialect.ts} +2 -4
- package/src/dialect/DialectName.ts +1 -0
- package/src/{diff.ts → diff/Change.ts} +10 -16
- package/src/diff/SchemaState.ts +13 -0
- package/src/drift.ts +2 -2
- package/src/fields/Engine.ts +4 -0
- package/src/fields/SqlField.ts +6 -0
- package/src/{fields.ts → fields/SqlFields.ts} +5 -10
- package/src/index.ts +23 -23
- package/src/order/FkEdge.ts +7 -0
- package/src/{order.ts → order/TableOrder.ts} +2 -10
- package/src/query/QueryEvent.ts +16 -0
- package/src/{query.ts → query/QuerySink.ts} +2 -17
- package/src/source/Setup.ts +4 -0
- package/src/{source.ts → source/SqlSource.ts} +8 -18
- package/src/source/SqlSourceOptions.ts +8 -0
- package/src/{sqlite.ts → sqlite/SqliteSource.ts} +7 -12
- package/src/sqlite/SqliteSourceOptions.ts +6 -0
- package/src/sqlite/index.ts +2 -0
- package/src/{step.ts → step/Plan.ts} +8 -27
- package/src/step/PlanOptions.ts +8 -0
- package/src/step/Refusal.ts +6 -0
- package/src/step/StepChange.ts +4 -0
- package/src/table/AppLike.ts +10 -0
- package/src/table/ColumnDef.ts +34 -0
- package/src/table/ColumnReference.ts +5 -0
- package/src/table/EntityEntry.ts +7 -0
- package/src/table/FrondLike.ts +6 -0
- package/src/table/HostedNames.ts +7 -0
- package/src/table/RelationResolve.ts +12 -0
- package/src/{table.ts → table/TableDef.ts} +10 -77
- package/dist/crud.d.ts.map +0 -1
- package/dist/crud.js.map +0 -1
- package/dist/ddl.d.ts.map +0 -1
- package/dist/ddl.js.map +0 -1
- package/dist/dialect.d.ts.map +0 -1
- package/dist/dialect.js.map +0 -1
- package/dist/diff.d.ts.map +0 -1
- package/dist/diff.js.map +0 -1
- package/dist/fields.d.ts.map +0 -1
- package/dist/fields.js.map +0 -1
- package/dist/order.d.ts.map +0 -1
- package/dist/order.js.map +0 -1
- package/dist/query.d.ts.map +0 -1
- package/dist/query.js.map +0 -1
- package/dist/source.d.ts.map +0 -1
- package/dist/source.js.map +0 -1
- package/dist/sqlite.d.ts.map +0 -1
- package/dist/sqlite.js.map +0 -1
- package/dist/step.d.ts.map +0 -1
- package/dist/step.js.map +0 -1
- package/dist/table.d.ts +0 -97
- package/dist/table.d.ts.map +0 -1
- package/dist/table.js.map +0 -1
package/dist/table.d.ts
DELETED
|
@@ -1,97 +0,0 @@
|
|
|
1
|
-
/** Entity → table description, with no SQL in sight. */
|
|
2
|
-
import { type SchemaView, type ShapeType } from '@fougere/schema';
|
|
3
|
-
import { type ShapeBounds } from './check.js';
|
|
4
|
-
import { type SqlField } from './fields.js';
|
|
5
|
-
/** One column, described by the axes — plus, at most, what the entity stated for sql. */
|
|
6
|
-
export interface ColumnDef {
|
|
7
|
-
/** Field key on the entity. */
|
|
8
|
-
field: string;
|
|
9
|
-
/** SQL column name (snake_case). */
|
|
10
|
-
name: string;
|
|
11
|
-
/** What every projection here dispatches on — a `date()` and a bounded set included. */
|
|
12
|
-
type?: ShapeType;
|
|
13
|
-
nullable: boolean;
|
|
14
|
-
primary: boolean;
|
|
15
|
-
/** A literal default (`lifecycle.create.value`), when the field declares one. */
|
|
16
|
-
default?: unknown;
|
|
17
|
-
/** A {@link Unique} of one — realized as a column constraint the database enforces. */
|
|
18
|
-
unique?: boolean;
|
|
19
|
-
/** `role.index` — realized as a separate `CREATE INDEX`, never a constraint. */
|
|
20
|
-
index?: boolean;
|
|
21
|
-
/**
|
|
22
|
-
* What the shape bounds beyond its type — `oneOf`, `min`, `max`. Realized as a
|
|
23
|
-
* `CHECK`, so the rule holds on every write and not only at the façade.
|
|
24
|
-
*/
|
|
25
|
-
bounds?: ShapeBounds;
|
|
26
|
-
/** The FK target, from `role.relation` when it's a `ref()` (kind `'one'`). */
|
|
27
|
-
references?: ColumnReference;
|
|
28
|
-
/**
|
|
29
|
-
* What the entity stated for THIS adapter — never an axis. It says how the column is
|
|
30
|
-
* realized here; drop it and the column is still describable.
|
|
31
|
-
*/
|
|
32
|
-
stated?: SqlField;
|
|
33
|
-
}
|
|
34
|
-
export interface ColumnReference {
|
|
35
|
-
table: string;
|
|
36
|
-
column: string;
|
|
37
|
-
onDelete?: 'cascade' | 'restrict' | 'set null';
|
|
38
|
-
}
|
|
39
|
-
export interface TableDef {
|
|
40
|
-
name: string;
|
|
41
|
-
columns: ColumnDef[];
|
|
42
|
-
/** PK column names when the key is composite — empty for a simple key. */
|
|
43
|
-
compositePrimary: string[];
|
|
44
|
-
/** Column groups unique together, from `entity(fields, { unique: [...] })`. */
|
|
45
|
-
uniqueGroups: string[][];
|
|
46
|
-
}
|
|
47
|
-
/** camelCase → snake_case */
|
|
48
|
-
export declare function toSnakeCase(str: string): string;
|
|
49
|
-
/** How a `ref()` field's target table+column is resolved — see {@link referenceFor}. */
|
|
50
|
-
export interface RelationResolve {
|
|
51
|
-
/** Same resolver used for every entity's own table (default or a custom `tableName`). */
|
|
52
|
-
resolve: (name: string) => string;
|
|
53
|
-
/** Live entity class → its already-resolved table name, reused instead of re-derived. */
|
|
54
|
-
tableNameOf?: Map<SchemaView, string>;
|
|
55
|
-
/** Which entities this batch holds and which live in another source — decided by NAME. */
|
|
56
|
-
hosted?: HostedNames;
|
|
57
|
-
}
|
|
58
|
-
/** The two name sets a cross-source batch is read against — see {@link referenceFor}. */
|
|
59
|
-
export interface HostedNames {
|
|
60
|
-
/** Registration names in THIS batch. */
|
|
61
|
-
here: ReadonlySet<string>;
|
|
62
|
-
/** Registration names the app hosts in another source — see {@link AppLike.elsewhere}. */
|
|
63
|
-
elsewhere: ReadonlySet<string>;
|
|
64
|
-
}
|
|
65
|
-
/** Describe one entity as a table — the single reader of the axes. */
|
|
66
|
-
export declare function toTable(tableName: string, schema: SchemaView, relations?: RelationResolve): TableDef;
|
|
67
|
-
/**
|
|
68
|
-
* Is this column part of a key? MySQL and SQL Server refuse an unbounded text column in a primary
|
|
69
|
-
* key or an index, so the dialect needs to know.
|
|
70
|
-
*/
|
|
71
|
-
export declare function isKeyed(table: TableDef, column: ColumnDef): boolean;
|
|
72
|
-
/** camelCase → snake_case + plural */
|
|
73
|
-
export declare function toTableName(name: string): string;
|
|
74
|
-
export interface EntityEntry {
|
|
75
|
-
name: string;
|
|
76
|
-
/** A live class in-process, or one rebuilt from the card of a frond that never crossed. */
|
|
77
|
-
entityClass: SchemaView;
|
|
78
|
-
}
|
|
79
|
-
export interface FrondLike {
|
|
80
|
-
name: string;
|
|
81
|
-
entities: EntityEntry[];
|
|
82
|
-
}
|
|
83
|
-
export interface AppLike {
|
|
84
|
-
fronds: FrondLike[];
|
|
85
|
-
/** Auth runtime entities are migrated alongside scanned fronds when present. */
|
|
86
|
-
auth?: {
|
|
87
|
-
entities: Record<string, SchemaView>;
|
|
88
|
-
};
|
|
89
|
-
/** Entities this app hosts in ANOTHER source — named so a miss can be read. */
|
|
90
|
-
elsewhere?: string[];
|
|
91
|
-
}
|
|
92
|
-
/**
|
|
93
|
-
* Every entity an app hosts, as FK-aware tables — the shared middle step behind `generateSQL` (a
|
|
94
|
-
* from-scratch create pass) and `desiredTables` (the diff's target state).
|
|
95
|
-
*/
|
|
96
|
-
export declare function toTables(app: AppLike, resolve: (name: string) => string): TableDef[];
|
|
97
|
-
//# sourceMappingURL=table.d.ts.map
|
package/dist/table.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"table.d.ts","sourceRoot":"","sources":["../src/table.ts"],"names":[],"mappings":"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"}
|
package/dist/table.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"table.js","sourceRoot":"","sources":["../src/table.ts"],"names":[],"mappings":"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"}
|