@deterministic-code/datasources-oracle 0.0.0-stage → 0.1.2
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/OracleAlterTableStatementRenderer.d.ts +4 -0
- package/dist/OracleAlterTableStatementRenderer.js +10 -0
- package/dist/OracleCreateTableStatementRenderer.d.ts +4 -0
- package/dist/OracleCreateTableStatementRenderer.js +6 -0
- package/dist/OracleCreateTriggerStatementRenderer.d.ts +4 -0
- package/dist/OracleCreateTriggerStatementRenderer.js +12 -0
- package/dist/OracleDriver.d.ts +14 -0
- package/dist/OracleDriver.js +62 -0
- package/dist/OracleDropIndexStatementRenderer.d.ts +4 -0
- package/dist/OracleDropIndexStatementRenderer.js +6 -0
- package/dist/OracleDropTableStatementRenderer.d.ts +4 -0
- package/dist/OracleDropTableStatementRenderer.js +7 -0
- package/dist/OracleDropTriggerStatementRenderer.d.ts +4 -0
- package/dist/OracleDropTriggerStatementRenderer.js +6 -0
- package/dist/OracleStatementRenderer.d.ts +17 -0
- package/dist/OracleStatementRenderer.js +52 -0
- package/dist/OracleStoredProcedureStatementRenderer.d.ts +10 -0
- package/dist/OracleStoredProcedureStatementRenderer.js +92 -0
- package/dist/connection.d.ts +6 -0
- package/dist/connection.js +8 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +1 -0
- package/package.json +21 -4
- package/README.md +0 -3
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { AlterTableStatementTextRenderer } from "@deterministic-code/datasources";
|
|
2
|
+
export class OracleAlterTableStatementRenderer extends AlterTableStatementTextRenderer {
|
|
3
|
+
actionSql(action) {
|
|
4
|
+
return action.kind === "addColumn"
|
|
5
|
+
? `ADD (${this.column(action.column)})`
|
|
6
|
+
: action.kind === "alterColumn"
|
|
7
|
+
? `MODIFY (${this.column(action.column)})`
|
|
8
|
+
: super.actionSql(action);
|
|
9
|
+
}
|
|
10
|
+
}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { CreateTableStatementTextRenderer } from "@deterministic-code/datasources";
|
|
2
|
+
export class OracleCreateTableStatementRenderer extends CreateTableStatementTextRenderer {
|
|
3
|
+
identity(column) {
|
|
4
|
+
return column.identity ? " GENERATED BY DEFAULT AS IDENTITY" : "";
|
|
5
|
+
}
|
|
6
|
+
}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { CreateTriggerStatementTextRenderer, type CreateTriggerStatement } from "@deterministic-code/datasources";
|
|
2
|
+
export declare class OracleCreateTriggerStatementRenderer extends CreateTriggerStatementTextRenderer {
|
|
3
|
+
render(statement: CreateTriggerStatement): string;
|
|
4
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { CreateTriggerStatementTextRenderer } from "@deterministic-code/datasources";
|
|
2
|
+
export class OracleCreateTriggerStatementRenderer extends CreateTriggerStatementTextRenderer {
|
|
3
|
+
render(statement) {
|
|
4
|
+
return `CREATE OR REPLACE TRIGGER ${statement.name}
|
|
5
|
+
BEFORE UPDATE ON ${statement.table}
|
|
6
|
+
FOR EACH ROW
|
|
7
|
+
BEGIN
|
|
8
|
+
:NEW.${statement.updatedColumn} := ${statement.utcNow};
|
|
9
|
+
END;
|
|
10
|
+
/`;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { DefaultValueConverter, DeterministicTypeConverter, StatementTextRenderer, type Cell, type DatasourceOptions, type ICommand, type IConnection, type IDriver, type Information, type ITransaction, type IsolationLevel, type TypeConverter } from "@deterministic-code/datasources";
|
|
2
|
+
export declare class OracleDriver implements IDriver {
|
|
3
|
+
readonly statementRenderer: StatementTextRenderer;
|
|
4
|
+
readonly information: Information;
|
|
5
|
+
rowTypeConverters: Record<string, TypeConverter<Cell, Cell>>;
|
|
6
|
+
readonly quoteLeft = "\"";
|
|
7
|
+
readonly quoteRight = "\"";
|
|
8
|
+
readonly typeConverter: DeterministicTypeConverter;
|
|
9
|
+
readonly defaultValueConverter: DefaultValueConverter;
|
|
10
|
+
columnType: (name: string) => string;
|
|
11
|
+
connection: (options?: DatasourceOptions) => IConnection;
|
|
12
|
+
command: (connection: IConnection) => ICommand;
|
|
13
|
+
transaction: (connection: IConnection, _isolation?: IsolationLevel) => ITransaction;
|
|
14
|
+
}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { columnType as identityColumnType, DefaultValueConverter, DeterministicTypeConverter, StatementTextRenderer, StubTransaction, } from "@deterministic-code/datasources";
|
|
2
|
+
import { OracleConnection } from "./connection.js";
|
|
3
|
+
import { OracleStatementRenderer } from "./OracleStatementRenderer.js";
|
|
4
|
+
const statements = new StatementTextRenderer(t => new OracleStatementRenderer(t));
|
|
5
|
+
export class OracleDriver {
|
|
6
|
+
statementRenderer = statements;
|
|
7
|
+
information = {
|
|
8
|
+
descriptions: ["Oracle driver."],
|
|
9
|
+
overrides: [
|
|
10
|
+
"Overrides CreateCreateStoredProcedureStatement to PROCEDURE Create{Plural}",
|
|
11
|
+
"Overrides CreateReadStoredProcedureStatement to PROCEDURE Read{Plural}By{Properties}",
|
|
12
|
+
"Overrides CreateUpdateStoredProcedureStatement to PROCEDURE Update{Plural}By{Properties}",
|
|
13
|
+
"Overrides CreateDeleteStoredProcedureStatement to PROCEDURE Delete{Plural}By{Properties}",
|
|
14
|
+
"Overrides CreateBulkCreateStoredProcedureStatement to PROCEDURE BulkCreate{Plural}",
|
|
15
|
+
"Overrides CreateBulkUpdateStoredProcedureStatement to PROCEDURE BulkUpdate{Plural}",
|
|
16
|
+
"Overrides CreateBulkDeleteStoredProcedureStatement to PROCEDURE BulkDelete{Plural}",
|
|
17
|
+
],
|
|
18
|
+
changeLogs: [],
|
|
19
|
+
};
|
|
20
|
+
rowTypeConverters = {};
|
|
21
|
+
quoteLeft = '"';
|
|
22
|
+
quoteRight = '"';
|
|
23
|
+
typeConverter = new DeterministicTypeConverter({
|
|
24
|
+
string: "CLOB",
|
|
25
|
+
character: "CHAR(1)",
|
|
26
|
+
number: "NUMBER(10)",
|
|
27
|
+
integer: "NUMBER(10)",
|
|
28
|
+
unsignedinteger: "NUMBER(10)",
|
|
29
|
+
smallinteger: "NUMBER(5)",
|
|
30
|
+
unsignedsmallinteger: "NUMBER(5)",
|
|
31
|
+
biginteger: "NUMBER(19)",
|
|
32
|
+
unsignedbiginteger: "NUMBER(20)",
|
|
33
|
+
float: "BINARY_DOUBLE",
|
|
34
|
+
decimal: "NUMBER",
|
|
35
|
+
boolean: "NUMBER(1)",
|
|
36
|
+
datetime: "TIMESTAMP",
|
|
37
|
+
binary: "BLOB",
|
|
38
|
+
uuid: "VARCHAR2(36)",
|
|
39
|
+
reference: "NUMBER(10)",
|
|
40
|
+
}, {
|
|
41
|
+
dialectName: "oracle",
|
|
42
|
+
stringUnlimited: "CLOB",
|
|
43
|
+
stringSized: (n) => `VARCHAR2(${n})`,
|
|
44
|
+
character: "CHAR",
|
|
45
|
+
decimal: { kind: "required", type: "NUMBER" },
|
|
46
|
+
binaryUnlimited: "BLOB",
|
|
47
|
+
binarySized: (n) => `RAW(${n})`,
|
|
48
|
+
});
|
|
49
|
+
defaultValueConverter = new DefaultValueConverter({
|
|
50
|
+
newId: () => "SYS_GUID()",
|
|
51
|
+
now: () => "LOCALTIMESTAMP",
|
|
52
|
+
utcNow: () => "SYS_EXTRACT_UTC(SYSTIMESTAMP)",
|
|
53
|
+
booleanOn: "1",
|
|
54
|
+
booleanOff: "0",
|
|
55
|
+
hex: (arg) => `HEXTORAW('${arg}')`,
|
|
56
|
+
hexReverse: /^HEXTORAW\('(.*)'\)$/,
|
|
57
|
+
});
|
|
58
|
+
columnType = identityColumnType;
|
|
59
|
+
connection = (options) => OracleConnection.from(options);
|
|
60
|
+
command = (connection) => connection.createCommand();
|
|
61
|
+
transaction = (connection, _isolation) => new StubTransaction(connection.provider, connection);
|
|
62
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { DropTableStatementTextRenderer } from "@deterministic-code/datasources";
|
|
2
|
+
export class OracleDropTableStatementRenderer extends DropTableStatementTextRenderer {
|
|
3
|
+
render(statement) {
|
|
4
|
+
return `BEGIN EXECUTE IMMEDIATE 'DROP TABLE ${statement.table} CASCADE CONSTRAINTS'; EXCEPTION WHEN OTHERS THEN IF SQLCODE != -942 THEN RAISE; END IF; END;
|
|
5
|
+
/`;
|
|
6
|
+
}
|
|
7
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { AlterTableStatement, CreateBulkCreateStoredProcedureStatement, CreateBulkDeleteStoredProcedureStatement, CreateBulkUpdateStoredProcedureStatement, CreateCreateStoredProcedureStatement, CreateDeleteStoredProcedureStatement, CreateReadStoredProcedureStatement, CreateTableStatement, CreateTriggerStatement, CreateUpdateStoredProcedureStatement, DropIndexStatement, DropTableStatement, DropTriggerStatement, StatementRenderer, type StatementTextRenderer } from "@deterministic-code/datasources";
|
|
2
|
+
export declare class OracleStatementRenderer extends StatementRenderer {
|
|
3
|
+
constructor(text: StatementTextRenderer);
|
|
4
|
+
protected visitCreateTable(create: CreateTableStatement): string;
|
|
5
|
+
protected visitAlterTable(alter: AlterTableStatement): string;
|
|
6
|
+
protected visitDropIndex(index: DropIndexStatement): string;
|
|
7
|
+
protected visitDropTrigger(trigger: DropTriggerStatement): string;
|
|
8
|
+
protected visitCreateTrigger(trigger: CreateTriggerStatement): string;
|
|
9
|
+
protected visitDropTable(drop: DropTableStatement): string;
|
|
10
|
+
protected visitCreateCreateStoredProcedureStatement(statement: CreateCreateStoredProcedureStatement): string;
|
|
11
|
+
protected visitCreateReadStoredProcedureStatement(statement: CreateReadStoredProcedureStatement): string;
|
|
12
|
+
protected visitCreateUpdateStoredProcedureStatement(statement: CreateUpdateStoredProcedureStatement): string;
|
|
13
|
+
protected visitCreateDeleteStoredProcedureStatement(statement: CreateDeleteStoredProcedureStatement): string;
|
|
14
|
+
protected visitCreateBulkCreateStoredProcedureStatement(statement: CreateBulkCreateStoredProcedureStatement): string;
|
|
15
|
+
protected visitCreateBulkUpdateStoredProcedureStatement(statement: CreateBulkUpdateStoredProcedureStatement): string;
|
|
16
|
+
protected visitCreateBulkDeleteStoredProcedureStatement(statement: CreateBulkDeleteStoredProcedureStatement): string;
|
|
17
|
+
}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { StatementRenderer, } from "@deterministic-code/datasources";
|
|
2
|
+
import { OracleAlterTableStatementRenderer } from "./OracleAlterTableStatementRenderer.js";
|
|
3
|
+
import { OracleCreateTableStatementRenderer } from "./OracleCreateTableStatementRenderer.js";
|
|
4
|
+
import { OracleCreateTriggerStatementRenderer } from "./OracleCreateTriggerStatementRenderer.js";
|
|
5
|
+
import { OracleDropIndexStatementRenderer } from "./OracleDropIndexStatementRenderer.js";
|
|
6
|
+
import { OracleDropTableStatementRenderer } from "./OracleDropTableStatementRenderer.js";
|
|
7
|
+
import { OracleDropTriggerStatementRenderer } from "./OracleDropTriggerStatementRenderer.js";
|
|
8
|
+
import { OracleStoredProcedureStatementRenderer } from "./OracleStoredProcedureStatementRenderer.js";
|
|
9
|
+
export class OracleStatementRenderer extends StatementRenderer {
|
|
10
|
+
constructor(text) {
|
|
11
|
+
super(text);
|
|
12
|
+
}
|
|
13
|
+
visitCreateTable(create) {
|
|
14
|
+
return new OracleCreateTableStatementRenderer().render(create);
|
|
15
|
+
}
|
|
16
|
+
visitAlterTable(alter) {
|
|
17
|
+
return new OracleAlterTableStatementRenderer().renderAlter(alter);
|
|
18
|
+
}
|
|
19
|
+
visitDropIndex(index) {
|
|
20
|
+
return new OracleDropIndexStatementRenderer().render(index);
|
|
21
|
+
}
|
|
22
|
+
visitDropTrigger(trigger) {
|
|
23
|
+
return new OracleDropTriggerStatementRenderer().render(trigger);
|
|
24
|
+
}
|
|
25
|
+
visitCreateTrigger(trigger) {
|
|
26
|
+
return new OracleCreateTriggerStatementRenderer().render(trigger);
|
|
27
|
+
}
|
|
28
|
+
visitDropTable(drop) {
|
|
29
|
+
return new OracleDropTableStatementRenderer().render(drop);
|
|
30
|
+
}
|
|
31
|
+
visitCreateCreateStoredProcedureStatement(statement) {
|
|
32
|
+
return new OracleStoredProcedureStatementRenderer().renderCreate(statement);
|
|
33
|
+
}
|
|
34
|
+
visitCreateReadStoredProcedureStatement(statement) {
|
|
35
|
+
return new OracleStoredProcedureStatementRenderer().renderRead(statement);
|
|
36
|
+
}
|
|
37
|
+
visitCreateUpdateStoredProcedureStatement(statement) {
|
|
38
|
+
return new OracleStoredProcedureStatementRenderer().renderUpdate(statement);
|
|
39
|
+
}
|
|
40
|
+
visitCreateDeleteStoredProcedureStatement(statement) {
|
|
41
|
+
return new OracleStoredProcedureStatementRenderer().renderDelete(statement);
|
|
42
|
+
}
|
|
43
|
+
visitCreateBulkCreateStoredProcedureStatement(statement) {
|
|
44
|
+
return new OracleStoredProcedureStatementRenderer().renderBulkCreate(statement);
|
|
45
|
+
}
|
|
46
|
+
visitCreateBulkUpdateStoredProcedureStatement(statement) {
|
|
47
|
+
return new OracleStoredProcedureStatementRenderer().renderBulkUpdate(statement);
|
|
48
|
+
}
|
|
49
|
+
visitCreateBulkDeleteStoredProcedureStatement(statement) {
|
|
50
|
+
return new OracleStoredProcedureStatementRenderer().renderBulkDelete(statement);
|
|
51
|
+
}
|
|
52
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { CreateBulkCreateStoredProcedureStatement, CreateBulkDeleteStoredProcedureStatement, CreateBulkUpdateStoredProcedureStatement, CreateCreateStoredProcedureStatement, CreateDeleteStoredProcedureStatement, CreateReadStoredProcedureStatement, CreateUpdateStoredProcedureStatement } from "@deterministic-code/datasources";
|
|
2
|
+
export declare class OracleStoredProcedureStatementRenderer {
|
|
3
|
+
renderCreate(statement: CreateCreateStoredProcedureStatement): string;
|
|
4
|
+
renderRead(statement: CreateReadStoredProcedureStatement): string;
|
|
5
|
+
renderUpdate(statement: CreateUpdateStoredProcedureStatement): string;
|
|
6
|
+
renderDelete(statement: CreateDeleteStoredProcedureStatement): string;
|
|
7
|
+
renderBulkCreate(statement: CreateBulkCreateStoredProcedureStatement): string;
|
|
8
|
+
renderBulkUpdate(statement: CreateBulkUpdateStoredProcedureStatement): string;
|
|
9
|
+
renderBulkDelete(statement: CreateBulkDeleteStoredProcedureStatement): string;
|
|
10
|
+
}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
const params = (list) => list.map((p) => ` ${p.name} IN ${p.type}`).join(",\n");
|
|
2
|
+
const jsonColumns = (columns) => columns.map((c) => `${c.name} ${c.type} PATH '$.${c.name}'`).join(", ");
|
|
3
|
+
export class OracleStoredProcedureStatementRenderer {
|
|
4
|
+
renderCreate(statement) {
|
|
5
|
+
return `CREATE OR REPLACE PROCEDURE ${statement.name}(
|
|
6
|
+
${params(statement.parameters)}
|
|
7
|
+
) AS
|
|
8
|
+
BEGIN
|
|
9
|
+
INSERT INTO ${statement.table} (${statement.parameters.map((p) => p.name).join(", ")})
|
|
10
|
+
VALUES (${statement.parameters.map((p) => p.name).join(", ")});
|
|
11
|
+
END;`;
|
|
12
|
+
}
|
|
13
|
+
renderRead(statement) {
|
|
14
|
+
const aliased = statement.columns.map((c) => `t.${c}`).join(", ");
|
|
15
|
+
if (statement.byProperties.length === 0) {
|
|
16
|
+
return `CREATE OR REPLACE PROCEDURE ${statement.name} AS
|
|
17
|
+
BEGIN
|
|
18
|
+
SELECT ${aliased} FROM ${statement.table} t ORDER BY t.${statement.key};
|
|
19
|
+
END;`;
|
|
20
|
+
}
|
|
21
|
+
const signature = statement.byProperties
|
|
22
|
+
.map((c) => `${c} IN ${statement.parameters.find((p) => p.name === c)?.type ?? statement.keyType}`)
|
|
23
|
+
.join(", ");
|
|
24
|
+
const pred = statement.byProperties.map((c) => `t.${c} = ${c}`).join(" AND ");
|
|
25
|
+
return `CREATE OR REPLACE PROCEDURE ${statement.name}(${signature}) AS
|
|
26
|
+
BEGIN
|
|
27
|
+
SELECT ${aliased} FROM ${statement.table} t WHERE ${pred};
|
|
28
|
+
END;`;
|
|
29
|
+
}
|
|
30
|
+
renderUpdate(statement) {
|
|
31
|
+
const sets = statement.writable.map((c) => ` t.${c} = ${c}`);
|
|
32
|
+
if (statement.auditUpdated !== undefined) {
|
|
33
|
+
const auditParam = statement.parameters.find((p) => p.name.includes("new_updated"));
|
|
34
|
+
if (auditParam)
|
|
35
|
+
sets.push(` t.${statement.auditUpdated} = ${auditParam.name}`);
|
|
36
|
+
}
|
|
37
|
+
const by = statement.byProperties.length > 0 ? statement.byProperties : [statement.key];
|
|
38
|
+
const pred = by.map((c) => `t.${c} = ${c}`).join(" AND ");
|
|
39
|
+
return `CREATE OR REPLACE PROCEDURE ${statement.name}(
|
|
40
|
+
${params(statement.parameters)}
|
|
41
|
+
) AS
|
|
42
|
+
BEGIN
|
|
43
|
+
UPDATE ${statement.table} t
|
|
44
|
+
SET
|
|
45
|
+
${sets.join(",\n")}
|
|
46
|
+
WHERE ${pred};
|
|
47
|
+
END;`;
|
|
48
|
+
}
|
|
49
|
+
renderDelete(statement) {
|
|
50
|
+
const by = statement.byProperties.length > 0 ? statement.byProperties : [statement.key];
|
|
51
|
+
const signature = by
|
|
52
|
+
.map((c) => `${c} IN ${statement.parameters.find((p) => p.name === c)?.type ?? statement.keyType}`)
|
|
53
|
+
.join(", ");
|
|
54
|
+
const pred = by.map((c) => `t.${c} = ${c}`).join(" AND ");
|
|
55
|
+
return `CREATE OR REPLACE PROCEDURE ${statement.name}(${signature}) AS
|
|
56
|
+
BEGIN
|
|
57
|
+
DELETE FROM ${statement.table} t WHERE ${pred};
|
|
58
|
+
END;`;
|
|
59
|
+
}
|
|
60
|
+
renderBulkCreate(statement) {
|
|
61
|
+
const cols = statement.columns.map((c) => c.name).join(", ");
|
|
62
|
+
return `CREATE OR REPLACE PROCEDURE ${statement.name}(${statement.payload.name} IN CLOB) AS
|
|
63
|
+
BEGIN
|
|
64
|
+
INSERT INTO ${statement.table} (${cols})
|
|
65
|
+
SELECT ${cols}
|
|
66
|
+
FROM JSON_TABLE(${statement.payload.name}, '$[*]' COLUMNS (${jsonColumns(statement.columns)}));
|
|
67
|
+
END;`;
|
|
68
|
+
}
|
|
69
|
+
renderBulkUpdate(statement) {
|
|
70
|
+
const sets = statement.columns
|
|
71
|
+
.filter((c) => c.name !== statement.key)
|
|
72
|
+
.map((c) => `t.${c.name} = payload_rows.${c.name}`)
|
|
73
|
+
.join(", ");
|
|
74
|
+
return `CREATE OR REPLACE PROCEDURE ${statement.name}(${statement.payload.name} IN CLOB) AS
|
|
75
|
+
BEGIN
|
|
76
|
+
MERGE INTO ${statement.table} t
|
|
77
|
+
USING (
|
|
78
|
+
SELECT * FROM JSON_TABLE(${statement.payload.name}, '$[*]' COLUMNS (${jsonColumns(statement.columns)}))
|
|
79
|
+
) payload_rows ON (t.${statement.key} = payload_rows.${statement.key})
|
|
80
|
+
WHEN MATCHED THEN UPDATE SET ${sets};
|
|
81
|
+
END;`;
|
|
82
|
+
}
|
|
83
|
+
renderBulkDelete(statement) {
|
|
84
|
+
return `CREATE OR REPLACE PROCEDURE ${statement.name}(${statement.payload.name} IN CLOB) AS
|
|
85
|
+
BEGIN
|
|
86
|
+
DELETE FROM ${statement.table} t
|
|
87
|
+
WHERE t.${statement.key} IN (
|
|
88
|
+
SELECT ${statement.key} FROM JSON_TABLE(${statement.payload.name}, '$[*]' COLUMNS (${statement.key} ${statement.keyType} PATH '$.${statement.key}'))
|
|
89
|
+
);
|
|
90
|
+
END;`;
|
|
91
|
+
}
|
|
92
|
+
}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { StubConnection, type DatasourceOptions, type ICommand } from "@deterministic-code/datasources";
|
|
2
|
+
export declare class OracleConnection extends StubConnection {
|
|
3
|
+
constructor(_options?: DatasourceOptions);
|
|
4
|
+
createCommand: () => ICommand;
|
|
5
|
+
static from: (options?: DatasourceOptions) => OracleConnection;
|
|
6
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { StubCommand, StubConnection, } from "@deterministic-code/datasources";
|
|
2
|
+
export class OracleConnection extends StubConnection {
|
|
3
|
+
constructor(_options) {
|
|
4
|
+
super("oracle");
|
|
5
|
+
}
|
|
6
|
+
createCommand = () => new StubCommand(this.provider, this);
|
|
7
|
+
static from = (options) => new OracleConnection(options);
|
|
8
|
+
}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { OracleDriver } from "./OracleDriver.js";
|
package/dist/index.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { OracleDriver } from "./OracleDriver.js";
|
package/package.json
CHANGED
|
@@ -1,6 +1,23 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@deterministic-code/datasources-oracle",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"
|
|
5
|
-
"
|
|
6
|
-
|
|
3
|
+
"version": "0.1.2",
|
|
4
|
+
"type": "module",
|
|
5
|
+
"main": "./dist/index.js",
|
|
6
|
+
"types": "./dist/index.d.js",
|
|
7
|
+
"exports": {
|
|
8
|
+
".": {
|
|
9
|
+
"types": "./dist/index.d.js",
|
|
10
|
+
"import": "./dist/index.js",
|
|
11
|
+
"default": "./dist/index.js"
|
|
12
|
+
}
|
|
13
|
+
},
|
|
14
|
+
"files": [
|
|
15
|
+
"dist"
|
|
16
|
+
],
|
|
17
|
+
"publishConfig": {
|
|
18
|
+
"access": "public"
|
|
19
|
+
},
|
|
20
|
+
"dependencies": {
|
|
21
|
+
"@deterministic-code/datasources": "^0.1.2"
|
|
22
|
+
}
|
|
23
|
+
}
|
package/README.md
DELETED