@deterministic-code/datasources 0.1.18 → 0.1.29
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/IDriver.d.ts +0 -2
- package/dist/index.d.ts +2 -6
- package/dist/index.js +1 -3
- package/dist/statements/Column.d.ts +2 -0
- package/dist/statements/CreateTriggerStatement.d.ts +1 -2
- package/dist/statements/CreateTriggerStatement.js +1 -3
- package/dist/statements/ForeignKeyStatement.d.ts +15 -0
- package/dist/statements/ForeignKeyStatement.js +21 -0
- package/dist/statements/IForeignKeyStatement.d.ts +3 -0
- package/dist/statements/IForeignKeyStatement.js +1 -0
- package/dist/statements/ISqlSeedStatement.d.ts +3 -0
- package/dist/statements/ISqlSeedStatement.js +1 -0
- package/dist/statements/IStatementVisitor.d.ts +4 -0
- package/dist/statements/RoutineParameter.d.ts +2 -0
- package/dist/statements/SqlSeedStatement.d.ts +17 -0
- package/dist/statements/SqlSeedStatement.js +15 -0
- package/dist/statements/StatementRenderer.d.ts +6 -0
- package/dist/statements/StatementRenderer.js +8 -0
- package/dist/statements/index.d.ts +5 -0
- package/dist/statements/index.js +2 -0
- package/package.json +1 -1
package/dist/IDriver.d.ts
CHANGED
|
@@ -4,7 +4,6 @@ import type { ITransaction } from "./ITransaction.js";
|
|
|
4
4
|
import type { IsolationLevel } from "./IsolationLevel.js";
|
|
5
5
|
import type { DatasourceOptions } from "./DatasourceOptions.js";
|
|
6
6
|
import type { Cell } from "./converters/Cell.js";
|
|
7
|
-
import type { DefaultValueConverter } from "./converters/DefaultValueConverter.js";
|
|
8
7
|
import type { IMapping } from "./converters/IMapping.js";
|
|
9
8
|
import type { TypeConverter } from "./converters/TypeConverter.js";
|
|
10
9
|
import type { Information } from "./Information.js";
|
|
@@ -17,7 +16,6 @@ export interface IDriver {
|
|
|
17
16
|
rowTypeConverters: Record<string, TypeConverter<Cell, Cell>>;
|
|
18
17
|
columnType(name: string): string;
|
|
19
18
|
typeConverter?: IMapping<string, string> | null;
|
|
20
|
-
defaultValueConverter?: DefaultValueConverter | null;
|
|
21
19
|
statementRenderer?: StatementTextRenderer | null;
|
|
22
20
|
information?: Information | null;
|
|
23
21
|
}
|
package/dist/index.d.ts
CHANGED
|
@@ -10,7 +10,7 @@ export type { DatasourceOptions } from "./DatasourceOptions.js";
|
|
|
10
10
|
export { DatasourceFactory } from "./DatasourceFactory.js";
|
|
11
11
|
export { ProviderCatalog } from "./ProviderCatalog.js";
|
|
12
12
|
export { DriverLoader } from "./DriverLoader.js";
|
|
13
|
-
export type { ICreateTableStatement, ICreateIndexStatement, IDropTableStatement, IAlterTableStatement, AlterAction, IDropIndexStatement, IDropTriggerStatement, ICreateTriggerStatement, IIdentityInsertStatement, ICreateCreateStoredProcedureStatement, ICreateReadStoredProcedureStatement, ICreateNestedReadStoredProcedureStatement, NestedWhereArgument, ICreateUpdateStoredProcedureStatement, ICreateDeleteStoredProcedureStatement, ICreateBulkCreateStoredProcedureStatement, ICreateBulkUpdateStoredProcedureStatement, ICreateBulkDeleteStoredProcedureStatement, IDropRoutineStatement, RoutineParameter, IDeleteStatement, IExpression, IBulkDeleteStatement, IBulkInsertStatement, IBulkUpdateStatement, IInsertStatement, ISelectStatement, IStatement, IStatementVisitor, ICondition, IConditionVisitor, IExecuteStoredProcedureStatement, IReturnStatement, ITableConstraint, TableConstraintKind, IUpdateStatement, IWhere, } from "./statements/index.js";
|
|
13
|
+
export type { ICreateTableStatement, ICreateIndexStatement, IDropTableStatement, IAlterTableStatement, AlterAction, IDropIndexStatement, IDropTriggerStatement, ICreateTriggerStatement, IIdentityInsertStatement, ISqlSeedStatement, IForeignKeyStatement, SqlSeedColumn, ICreateCreateStoredProcedureStatement, ICreateReadStoredProcedureStatement, ICreateNestedReadStoredProcedureStatement, NestedWhereArgument, ICreateUpdateStoredProcedureStatement, ICreateDeleteStoredProcedureStatement, ICreateBulkCreateStoredProcedureStatement, ICreateBulkUpdateStoredProcedureStatement, ICreateBulkDeleteStoredProcedureStatement, IDropRoutineStatement, RoutineParameter, IDeleteStatement, IExpression, IBulkDeleteStatement, IBulkInsertStatement, IBulkUpdateStatement, IInsertStatement, ISelectStatement, IStatement, IStatementVisitor, ICondition, IConditionVisitor, IExecuteStoredProcedureStatement, IReturnStatement, ITableConstraint, TableConstraintKind, IUpdateStatement, IWhere, } from "./statements/index.js";
|
|
14
14
|
export type { IReader } from "./IReader.js";
|
|
15
15
|
export type { IRepository } from "./IRepository.js";
|
|
16
16
|
export type { IReadonlyRepository } from "./IReadonlyRepository.js";
|
|
@@ -74,7 +74,7 @@ export { UnitOfWorkTransaction } from "./UnitOfWorkTransaction.js";
|
|
|
74
74
|
export { IsolationLevel } from "./IsolationLevel.js";
|
|
75
75
|
export type { IsolationLevel as IsolationLevelName } from "./IsolationLevel.js";
|
|
76
76
|
export type { Comparison } from "./statements/index.js";
|
|
77
|
-
export { ArrayExpression, CheckConstraint, ColumnDefault, Condition, ConditionRenderer, ExpressionRenderer, CreateIndexStatement, CreateTableStatement, CreateTableStatementTextRenderer, CreateIndexStatementTextRenderer, DropTableStatement, DropTableStatementTextRenderer, AlterTableStatement, AlterTableStatementTextRenderer, DropIndexStatement, DropIndexStatementTextRenderer, DropTriggerStatement, DropTriggerStatementTextRenderer, CreateTriggerStatement, CreateTriggerStatementTextRenderer, IdentityInsertStatement, IdentityInsertStatementTextRenderer, CreateCreateStoredProcedureStatement, CreateReadStoredProcedureStatement, CreateNestedReadStoredProcedureStatement, CreateUpdateStoredProcedureStatement, CreateDeleteStoredProcedureStatement, CreateBulkCreateStoredProcedureStatement, CreateBulkUpdateStoredProcedureStatement, CreateBulkDeleteStoredProcedureStatement, CreateCreateStoredProcedureStatementTextRenderer, CreateReadStoredProcedureStatementTextRenderer, CreateNestedReadStoredProcedureStatementTextRenderer, CreateUpdateStoredProcedureStatementTextRenderer, CreateDeleteStoredProcedureStatementTextRenderer, CreateBulkCreateStoredProcedureStatementTextRenderer, CreateBulkUpdateStoredProcedureStatementTextRenderer, CreateBulkDeleteStoredProcedureStatementTextRenderer, DropRoutineStatement, DropRoutineStatementTextRenderer, SelectStatementTextRenderer, InsertStatementTextRenderer, UpdateStatementTextRenderer, DeleteStatementTextRenderer, BulkInsertStatementTextRenderer, BulkUpdateStatementTextRenderer, BulkDeleteStatementTextRenderer, ExecuteStoredProcedureStatementTextRenderer, ReturnStatementTextRenderer, SelectInsertedIdStatementTextRenderer, DefaultStatementTextRenderer, DeleteStatement, ForeignKey, Identifier, InsertStatement, BulkInsertStatement, BulkUpdateStatement, BulkDeleteStatement, Literal, NotNull, Operator, eq, ne, gt, lt, ge, le, PrimaryKey, Aggregate, OrderBy, SelectStatement, StatementParser, StatementRenderer, StatementTextRenderer, Native, n, Subquery, ReferentialAction, ExpressionEvaluator, StatementEvaluator, ExecuteStoredProcedureStatement, SelectInsertedIdStatement, ReturnStatement, UniqueConstraint, UpdateStatement, WhereText, Where, Join, } from "./statements/index.js";
|
|
77
|
+
export { ArrayExpression, CheckConstraint, ColumnDefault, Condition, ConditionRenderer, ExpressionRenderer, CreateIndexStatement, CreateTableStatement, CreateTableStatementTextRenderer, CreateIndexStatementTextRenderer, DropTableStatement, DropTableStatementTextRenderer, AlterTableStatement, AlterTableStatementTextRenderer, DropIndexStatement, DropIndexStatementTextRenderer, DropTriggerStatement, DropTriggerStatementTextRenderer, CreateTriggerStatement, CreateTriggerStatementTextRenderer, IdentityInsertStatement, IdentityInsertStatementTextRenderer, SqlSeedStatement, ForeignKeyStatement, CreateCreateStoredProcedureStatement, CreateReadStoredProcedureStatement, CreateNestedReadStoredProcedureStatement, CreateUpdateStoredProcedureStatement, CreateDeleteStoredProcedureStatement, CreateBulkCreateStoredProcedureStatement, CreateBulkUpdateStoredProcedureStatement, CreateBulkDeleteStoredProcedureStatement, CreateCreateStoredProcedureStatementTextRenderer, CreateReadStoredProcedureStatementTextRenderer, CreateNestedReadStoredProcedureStatementTextRenderer, CreateUpdateStoredProcedureStatementTextRenderer, CreateDeleteStoredProcedureStatementTextRenderer, CreateBulkCreateStoredProcedureStatementTextRenderer, CreateBulkUpdateStoredProcedureStatementTextRenderer, CreateBulkDeleteStoredProcedureStatementTextRenderer, DropRoutineStatement, DropRoutineStatementTextRenderer, SelectStatementTextRenderer, InsertStatementTextRenderer, UpdateStatementTextRenderer, DeleteStatementTextRenderer, BulkInsertStatementTextRenderer, BulkUpdateStatementTextRenderer, BulkDeleteStatementTextRenderer, ExecuteStoredProcedureStatementTextRenderer, ReturnStatementTextRenderer, SelectInsertedIdStatementTextRenderer, DefaultStatementTextRenderer, DeleteStatement, ForeignKey, Identifier, InsertStatement, BulkInsertStatement, BulkUpdateStatement, BulkDeleteStatement, Literal, NotNull, Operator, eq, ne, gt, lt, ge, le, PrimaryKey, Aggregate, OrderBy, SelectStatement, StatementParser, StatementRenderer, StatementTextRenderer, Native, n, Subquery, ReferentialAction, ExpressionEvaluator, StatementEvaluator, ExecuteStoredProcedureStatement, SelectInsertedIdStatement, ReturnStatement, UniqueConstraint, UpdateStatement, WhereText, Where, Join, } from "./statements/index.js";
|
|
78
78
|
export type { IDatasourceFactory } from "./IDatasourceFactory.js";
|
|
79
79
|
export type { Parameter } from "./Parameter.js";
|
|
80
80
|
export { ParameterDirection } from "./ParameterDirection.js";
|
|
@@ -98,11 +98,7 @@ export type { Cell, Cells } from "./converters/Cell.js";
|
|
|
98
98
|
export type { Constructable } from "./converters/Constructable.js";
|
|
99
99
|
export { TypeConverter } from "./converters/TypeConverter.js";
|
|
100
100
|
export { type FieldSize, type SpecField, } from "./converters/SpecField.js";
|
|
101
|
-
export type { DecimalRule, SpecFieldRules } from "./converters/SpecFieldRules.js";
|
|
102
101
|
export type { IMapping } from "./converters/IMapping.js";
|
|
103
|
-
export { DeterministicTypeConverter } from "./converters/DeterministicTypeConverter.js";
|
|
104
|
-
export type { DefaultValueOptions } from "./converters/DefaultValueOptions.js";
|
|
105
|
-
export { DefaultValueConverter, EMPTY_UUID, sqlStringLiteral, } from "./converters/DefaultValueConverter.js";
|
|
106
102
|
export { MetaDataRowTypeConverter } from "./converters/MetaDataRowTypeConverter.js";
|
|
107
103
|
export { RowTypeConverter } from "./converters/RowTypeConverter.js";
|
|
108
104
|
export { ToLowerCaseConverter } from "./converters/ToLowerCaseConverter.js";
|
package/dist/index.js
CHANGED
|
@@ -39,7 +39,7 @@ export { createReadonlyRepositoryMappingOptions } from "./createReadonlyReposito
|
|
|
39
39
|
export { Response } from "./Response.js";
|
|
40
40
|
export { UnitOfWorkTransaction } from "./UnitOfWorkTransaction.js";
|
|
41
41
|
export { IsolationLevel } from "./IsolationLevel.js";
|
|
42
|
-
export { ArrayExpression, CheckConstraint, ColumnDefault, Condition, ConditionRenderer, ExpressionRenderer, CreateIndexStatement, CreateTableStatement, CreateTableStatementTextRenderer, CreateIndexStatementTextRenderer, DropTableStatement, DropTableStatementTextRenderer, AlterTableStatement, AlterTableStatementTextRenderer, DropIndexStatement, DropIndexStatementTextRenderer, DropTriggerStatement, DropTriggerStatementTextRenderer, CreateTriggerStatement, CreateTriggerStatementTextRenderer, IdentityInsertStatement, IdentityInsertStatementTextRenderer, CreateCreateStoredProcedureStatement, CreateReadStoredProcedureStatement, CreateNestedReadStoredProcedureStatement, CreateUpdateStoredProcedureStatement, CreateDeleteStoredProcedureStatement, CreateBulkCreateStoredProcedureStatement, CreateBulkUpdateStoredProcedureStatement, CreateBulkDeleteStoredProcedureStatement, CreateCreateStoredProcedureStatementTextRenderer, CreateReadStoredProcedureStatementTextRenderer, CreateNestedReadStoredProcedureStatementTextRenderer, CreateUpdateStoredProcedureStatementTextRenderer, CreateDeleteStoredProcedureStatementTextRenderer, CreateBulkCreateStoredProcedureStatementTextRenderer, CreateBulkUpdateStoredProcedureStatementTextRenderer, CreateBulkDeleteStoredProcedureStatementTextRenderer, DropRoutineStatement, DropRoutineStatementTextRenderer, SelectStatementTextRenderer, InsertStatementTextRenderer, UpdateStatementTextRenderer, DeleteStatementTextRenderer, BulkInsertStatementTextRenderer, BulkUpdateStatementTextRenderer, BulkDeleteStatementTextRenderer, ExecuteStoredProcedureStatementTextRenderer, ReturnStatementTextRenderer, SelectInsertedIdStatementTextRenderer, DefaultStatementTextRenderer, DeleteStatement, ForeignKey, Identifier, InsertStatement, BulkInsertStatement, BulkUpdateStatement, BulkDeleteStatement, Literal, NotNull, Operator, eq, ne, gt, lt, ge, le, PrimaryKey, Aggregate, OrderBy, SelectStatement, StatementParser, StatementRenderer, StatementTextRenderer, Native, n, Subquery, ReferentialAction, ExpressionEvaluator, StatementEvaluator, ExecuteStoredProcedureStatement, SelectInsertedIdStatement, ReturnStatement, UniqueConstraint, UpdateStatement, WhereText, Where, Join, } from "./statements/index.js";
|
|
42
|
+
export { ArrayExpression, CheckConstraint, ColumnDefault, Condition, ConditionRenderer, ExpressionRenderer, CreateIndexStatement, CreateTableStatement, CreateTableStatementTextRenderer, CreateIndexStatementTextRenderer, DropTableStatement, DropTableStatementTextRenderer, AlterTableStatement, AlterTableStatementTextRenderer, DropIndexStatement, DropIndexStatementTextRenderer, DropTriggerStatement, DropTriggerStatementTextRenderer, CreateTriggerStatement, CreateTriggerStatementTextRenderer, IdentityInsertStatement, IdentityInsertStatementTextRenderer, SqlSeedStatement, ForeignKeyStatement, CreateCreateStoredProcedureStatement, CreateReadStoredProcedureStatement, CreateNestedReadStoredProcedureStatement, CreateUpdateStoredProcedureStatement, CreateDeleteStoredProcedureStatement, CreateBulkCreateStoredProcedureStatement, CreateBulkUpdateStoredProcedureStatement, CreateBulkDeleteStoredProcedureStatement, CreateCreateStoredProcedureStatementTextRenderer, CreateReadStoredProcedureStatementTextRenderer, CreateNestedReadStoredProcedureStatementTextRenderer, CreateUpdateStoredProcedureStatementTextRenderer, CreateDeleteStoredProcedureStatementTextRenderer, CreateBulkCreateStoredProcedureStatementTextRenderer, CreateBulkUpdateStoredProcedureStatementTextRenderer, CreateBulkDeleteStoredProcedureStatementTextRenderer, DropRoutineStatement, DropRoutineStatementTextRenderer, SelectStatementTextRenderer, InsertStatementTextRenderer, UpdateStatementTextRenderer, DeleteStatementTextRenderer, BulkInsertStatementTextRenderer, BulkUpdateStatementTextRenderer, BulkDeleteStatementTextRenderer, ExecuteStoredProcedureStatementTextRenderer, ReturnStatementTextRenderer, SelectInsertedIdStatementTextRenderer, DefaultStatementTextRenderer, DeleteStatement, ForeignKey, Identifier, InsertStatement, BulkInsertStatement, BulkUpdateStatement, BulkDeleteStatement, Literal, NotNull, Operator, eq, ne, gt, lt, ge, le, PrimaryKey, Aggregate, OrderBy, SelectStatement, StatementParser, StatementRenderer, StatementTextRenderer, Native, n, Subquery, ReferentialAction, ExpressionEvaluator, StatementEvaluator, ExecuteStoredProcedureStatement, SelectInsertedIdStatement, ReturnStatement, UniqueConstraint, UpdateStatement, WhereText, Where, Join, } from "./statements/index.js";
|
|
43
43
|
export { ParameterDirection } from "./ParameterDirection.js";
|
|
44
44
|
export { ArrayReader } from "./ArrayReader.js";
|
|
45
45
|
export { FirstResultReader } from "./FirstResultReader.js";
|
|
@@ -59,8 +59,6 @@ import { DatasourceFactory } from "./DatasourceFactory.js";
|
|
|
59
59
|
Datasource.create = (options) => DatasourceFactory.create(options);
|
|
60
60
|
export { DatasourceError } from "./DatasourceError.js";
|
|
61
61
|
export { TypeConverter } from "./converters/TypeConverter.js";
|
|
62
|
-
export { DeterministicTypeConverter } from "./converters/DeterministicTypeConverter.js";
|
|
63
|
-
export { DefaultValueConverter, EMPTY_UUID, sqlStringLiteral, } from "./converters/DefaultValueConverter.js";
|
|
64
62
|
export { MetaDataRowTypeConverter } from "./converters/MetaDataRowTypeConverter.js";
|
|
65
63
|
export { RowTypeConverter } from "./converters/RowTypeConverter.js";
|
|
66
64
|
export { ToLowerCaseConverter } from "./converters/ToLowerCaseConverter.js";
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { SpecField } from "../converters/SpecField.js";
|
|
1
2
|
import type { ColumnDefault } from "./ColumnDefault.js";
|
|
2
3
|
import type { NotNull } from "./NotNull.js";
|
|
3
4
|
export interface Column {
|
|
@@ -6,4 +7,5 @@ export interface Column {
|
|
|
6
7
|
default?: ColumnDefault;
|
|
7
8
|
notNull?: NotNull;
|
|
8
9
|
identity?: boolean;
|
|
10
|
+
field?: SpecField;
|
|
9
11
|
}
|
|
@@ -5,7 +5,6 @@ export declare class CreateTriggerStatement implements ICreateTriggerStatement {
|
|
|
5
5
|
readonly name: string;
|
|
6
6
|
readonly updatedColumn: string;
|
|
7
7
|
readonly keyColumn: string;
|
|
8
|
-
|
|
9
|
-
constructor(table: string, name: string, updatedColumn: string, keyColumn: string, utcNow: string);
|
|
8
|
+
constructor(table: string, name: string, updatedColumn: string, keyColumn: string);
|
|
10
9
|
accept: (visitor: IStatementVisitor) => string;
|
|
11
10
|
}
|
|
@@ -3,13 +3,11 @@ export class CreateTriggerStatement {
|
|
|
3
3
|
name;
|
|
4
4
|
updatedColumn;
|
|
5
5
|
keyColumn;
|
|
6
|
-
|
|
7
|
-
constructor(table, name, updatedColumn, keyColumn, utcNow) {
|
|
6
|
+
constructor(table, name, updatedColumn, keyColumn) {
|
|
8
7
|
this.table = table;
|
|
9
8
|
this.name = name;
|
|
10
9
|
this.updatedColumn = updatedColumn;
|
|
11
10
|
this.keyColumn = keyColumn;
|
|
12
|
-
this.utcNow = utcNow;
|
|
13
11
|
}
|
|
14
12
|
accept = (visitor) => visitor.visit(this);
|
|
15
13
|
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { IForeignKeyStatement } from "./IForeignKeyStatement.js";
|
|
2
|
+
import type { IStatementVisitor } from "./IStatementVisitor.js";
|
|
3
|
+
import type { ReferentialAction } from "./ForeignKey.js";
|
|
4
|
+
export declare class ForeignKeyStatement implements IForeignKeyStatement {
|
|
5
|
+
readonly table: string;
|
|
6
|
+
readonly name: string;
|
|
7
|
+
readonly columns: readonly string[];
|
|
8
|
+
readonly referencesTable: string;
|
|
9
|
+
readonly referencesColumns: readonly string[];
|
|
10
|
+
readonly kind: "add" | "drop";
|
|
11
|
+
readonly onDelete?: ReferentialAction | undefined;
|
|
12
|
+
readonly onUpdate?: ReferentialAction | undefined;
|
|
13
|
+
constructor(table: string, name: string, columns: readonly string[], referencesTable: string, referencesColumns: readonly string[], kind?: "add" | "drop", onDelete?: ReferentialAction | undefined, onUpdate?: ReferentialAction | undefined);
|
|
14
|
+
accept: (visitor: IStatementVisitor) => string;
|
|
15
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
export class ForeignKeyStatement {
|
|
2
|
+
table;
|
|
3
|
+
name;
|
|
4
|
+
columns;
|
|
5
|
+
referencesTable;
|
|
6
|
+
referencesColumns;
|
|
7
|
+
kind;
|
|
8
|
+
onDelete;
|
|
9
|
+
onUpdate;
|
|
10
|
+
constructor(table, name, columns, referencesTable, referencesColumns, kind = "add", onDelete, onUpdate) {
|
|
11
|
+
this.table = table;
|
|
12
|
+
this.name = name;
|
|
13
|
+
this.columns = columns;
|
|
14
|
+
this.referencesTable = referencesTable;
|
|
15
|
+
this.referencesColumns = referencesColumns;
|
|
16
|
+
this.kind = kind;
|
|
17
|
+
this.onDelete = onDelete;
|
|
18
|
+
this.onUpdate = onUpdate;
|
|
19
|
+
}
|
|
20
|
+
accept = (visitor) => visitor.visit(this);
|
|
21
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -20,6 +20,8 @@ import type { DropTableStatement } from "./DropTableStatement.js";
|
|
|
20
20
|
import type { DropTriggerStatement } from "./DropTriggerStatement.js";
|
|
21
21
|
import type { ExecuteStoredProcedureStatement } from "./ExecuteStoredProcedureStatement.js";
|
|
22
22
|
import type { IdentityInsertStatement } from "./IdentityInsertStatement.js";
|
|
23
|
+
import type { SqlSeedStatement } from "./SqlSeedStatement.js";
|
|
24
|
+
import type { ForeignKeyStatement } from "./ForeignKeyStatement.js";
|
|
23
25
|
import type { InsertStatement } from "./InsertStatement.js";
|
|
24
26
|
import type { ReturnStatement } from "./ReturnStatement.js";
|
|
25
27
|
import type { SelectInsertedIdStatement } from "./SelectInsertedIdStatement.js";
|
|
@@ -44,6 +46,8 @@ export interface IStatementVisitor {
|
|
|
44
46
|
visit(statement: DropTriggerStatement): string;
|
|
45
47
|
visit(statement: CreateTriggerStatement): string;
|
|
46
48
|
visit(statement: IdentityInsertStatement): string;
|
|
49
|
+
visit(statement: SqlSeedStatement): string;
|
|
50
|
+
visit(statement: ForeignKeyStatement): string;
|
|
47
51
|
visit(statement: DropRoutineStatement): string;
|
|
48
52
|
visit(statement: CreateCreateStoredProcedureStatement): string;
|
|
49
53
|
visit(statement: CreateReadStoredProcedureStatement): string;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { SpecField } from "../converters/SpecField.js";
|
|
2
|
+
import type { ISqlSeedStatement } from "./ISqlSeedStatement.js";
|
|
3
|
+
import type { IStatementVisitor } from "./IStatementVisitor.js";
|
|
4
|
+
export type SqlSeedColumn = {
|
|
5
|
+
column: string;
|
|
6
|
+
field: SpecField;
|
|
7
|
+
value: unknown;
|
|
8
|
+
};
|
|
9
|
+
export declare class SqlSeedStatement implements ISqlSeedStatement {
|
|
10
|
+
readonly table: string;
|
|
11
|
+
readonly columns: readonly SqlSeedColumn[];
|
|
12
|
+
readonly kind: "insert" | "delete";
|
|
13
|
+
readonly identity: boolean;
|
|
14
|
+
readonly idColumn?: string | undefined;
|
|
15
|
+
constructor(table: string, columns: readonly SqlSeedColumn[], kind?: "insert" | "delete", identity?: boolean, idColumn?: string | undefined);
|
|
16
|
+
accept: (visitor: IStatementVisitor) => string;
|
|
17
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export class SqlSeedStatement {
|
|
2
|
+
table;
|
|
3
|
+
columns;
|
|
4
|
+
kind;
|
|
5
|
+
identity;
|
|
6
|
+
idColumn;
|
|
7
|
+
constructor(table, columns, kind = "insert", identity = false, idColumn) {
|
|
8
|
+
this.table = table;
|
|
9
|
+
this.columns = columns;
|
|
10
|
+
this.kind = kind;
|
|
11
|
+
this.identity = identity;
|
|
12
|
+
this.idColumn = idColumn;
|
|
13
|
+
}
|
|
14
|
+
accept = (visitor) => visitor.visit(this);
|
|
15
|
+
}
|
|
@@ -21,6 +21,8 @@ import { DropTableStatement } from "./DropTableStatement.js";
|
|
|
21
21
|
import { DropTriggerStatement } from "./DropTriggerStatement.js";
|
|
22
22
|
import { ExecuteStoredProcedureStatement } from "./ExecuteStoredProcedureStatement.js";
|
|
23
23
|
import { IdentityInsertStatement } from "./IdentityInsertStatement.js";
|
|
24
|
+
import { SqlSeedStatement } from "./SqlSeedStatement.js";
|
|
25
|
+
import { ForeignKeyStatement } from "./ForeignKeyStatement.js";
|
|
24
26
|
import { InsertStatement } from "./InsertStatement.js";
|
|
25
27
|
import { ReturnStatement } from "./ReturnStatement.js";
|
|
26
28
|
import { SelectInsertedIdStatement } from "./SelectInsertedIdStatement.js";
|
|
@@ -48,6 +50,8 @@ export declare class StatementRenderer implements IStatementVisitor {
|
|
|
48
50
|
visit(statement: DropTriggerStatement): string;
|
|
49
51
|
visit(statement: CreateTriggerStatement): string;
|
|
50
52
|
visit(statement: IdentityInsertStatement): string;
|
|
53
|
+
visit(statement: SqlSeedStatement): string;
|
|
54
|
+
visit(statement: ForeignKeyStatement): string;
|
|
51
55
|
visit(statement: DropRoutineStatement): string;
|
|
52
56
|
visit(statement: CreateCreateStoredProcedureStatement): string;
|
|
53
57
|
visit(statement: CreateReadStoredProcedureStatement): string;
|
|
@@ -75,6 +79,8 @@ export declare class StatementRenderer implements IStatementVisitor {
|
|
|
75
79
|
protected visitDropTrigger(statement: DropTriggerStatement): string;
|
|
76
80
|
protected visitCreateTrigger(statement: CreateTriggerStatement): string;
|
|
77
81
|
protected visitIdentityInsert(statement: IdentityInsertStatement): string;
|
|
82
|
+
protected visitSqlSeed(_statement: SqlSeedStatement): string;
|
|
83
|
+
protected visitForeignKey(_statement: ForeignKeyStatement): string;
|
|
78
84
|
protected visitDropRoutine(statement: DropRoutineStatement): string;
|
|
79
85
|
protected visitCreateCreateStoredProcedureStatement(statement: CreateCreateStoredProcedureStatement): string;
|
|
80
86
|
protected visitCreateReadStoredProcedureStatement(statement: CreateReadStoredProcedureStatement): string;
|
|
@@ -49,6 +49,8 @@ export class StatementRenderer {
|
|
|
49
49
|
DropTriggerStatement: () => this.visitDropTrigger(statement),
|
|
50
50
|
CreateTriggerStatement: () => this.visitCreateTrigger(statement),
|
|
51
51
|
IdentityInsertStatement: () => this.visitIdentityInsert(statement),
|
|
52
|
+
SqlSeedStatement: () => this.visitSqlSeed(statement),
|
|
53
|
+
ForeignKeyStatement: () => this.visitForeignKey(statement),
|
|
52
54
|
DropRoutineStatement: () => this.visitDropRoutine(statement),
|
|
53
55
|
CreateCreateStoredProcedureStatement: () => this.visitCreateCreateStoredProcedureStatement(statement),
|
|
54
56
|
CreateReadStoredProcedureStatement: () => this.visitCreateReadStoredProcedureStatement(statement),
|
|
@@ -115,6 +117,12 @@ export class StatementRenderer {
|
|
|
115
117
|
visitIdentityInsert(statement) {
|
|
116
118
|
return new IdentityInsertStatementTextRenderer().render(statement);
|
|
117
119
|
}
|
|
120
|
+
visitSqlSeed(_statement) {
|
|
121
|
+
throw new Error("SqlSeedStatement is rendered by the SQL driver.");
|
|
122
|
+
}
|
|
123
|
+
visitForeignKey(_statement) {
|
|
124
|
+
throw new Error("ForeignKeyStatement is rendered by the SQL driver.");
|
|
125
|
+
}
|
|
118
126
|
visitDropRoutine(statement) {
|
|
119
127
|
return new DropRoutineStatementTextRenderer().render(statement);
|
|
120
128
|
}
|
|
@@ -20,6 +20,11 @@ export type { IDropIndexStatement } from "./IDropIndexStatement.js";
|
|
|
20
20
|
export type { IDropTriggerStatement } from "./IDropTriggerStatement.js";
|
|
21
21
|
export type { ICreateTriggerStatement } from "./ICreateTriggerStatement.js";
|
|
22
22
|
export type { IIdentityInsertStatement } from "./IIdentityInsertStatement.js";
|
|
23
|
+
export type { ISqlSeedStatement } from "./ISqlSeedStatement.js";
|
|
24
|
+
export { SqlSeedStatement } from "./SqlSeedStatement.js";
|
|
25
|
+
export type { IForeignKeyStatement } from "./IForeignKeyStatement.js";
|
|
26
|
+
export { ForeignKeyStatement } from "./ForeignKeyStatement.js";
|
|
27
|
+
export type { SqlSeedColumn } from "./SqlSeedStatement.js";
|
|
23
28
|
export type { IDropRoutineStatement } from "./IDropRoutineStatement.js";
|
|
24
29
|
export type { ICreateCreateStoredProcedureStatement } from "./ICreateCreateStoredProcedureStatement.js";
|
|
25
30
|
export type { ICreateReadStoredProcedureStatement } from "./ICreateReadStoredProcedureStatement.js";
|
package/dist/statements/index.js
CHANGED