Comparing version 0.0.3 to 0.0.4
@@ -0,1 +1,2 @@ | ||
import { SplitQueryStream } from 'dbgate-query-splitter/lib/splitQueryStream'; | ||
import Knex from 'knex'; | ||
@@ -10,2 +11,9 @@ import StreamTree, { ReadableStreamTree } from 'tree-stream'; | ||
}, options: InsertRowsOptions): StreamTree.WritableStreamTree; | ||
export declare function streamToKnexRaw(source: { | ||
knex?: Knex; | ||
transaction?: Knex.Transaction; | ||
}, options?: { | ||
returning?: boolean; | ||
}): StreamTree.WritableStreamTree; | ||
export declare function newStatementSplitterStream(type?: any): SplitQueryStream; | ||
//# sourceMappingURL=knex.d.ts.map |
@@ -6,3 +6,6 @@ "use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.streamToKnex = exports.streamFromKnex = void 0; | ||
exports.newStatementSplitterStream = exports.streamToKnexRaw = exports.streamToKnex = exports.streamFromKnex = void 0; | ||
var byline_1 = __importDefault(require("byline")); | ||
var options_1 = require("dbgate-query-splitter/lib/options"); | ||
var splitQueryStream_1 = require("dbgate-query-splitter/lib/splitQueryStream"); | ||
var through2_1 = __importDefault(require("through2")); | ||
@@ -45,2 +48,37 @@ var tree_stream_1 = __importDefault(require("tree-stream")); | ||
exports.streamToKnex = streamToKnex; | ||
function streamToKnexRaw(source, options) { | ||
var stream = tree_stream_1.default.writable(through2_1.default.obj(function (data, _, callback) { | ||
var _this = this; | ||
var text = data.replace(/\?/g, '\\?'); | ||
var query = source.transaction ? source.transaction.raw(text) : source.knex.raw(text); | ||
query | ||
.then(function (result) { | ||
if (options === null || options === void 0 ? void 0 : options.returning) | ||
_this.push(result); | ||
callback(); | ||
}) | ||
.catch(function (err) { | ||
throw err; | ||
}); | ||
})); | ||
stream = stream.pipeFrom(newStatementSplitterStream((source.transaction || source.knex).context.client.config.client)); | ||
stream = stream.pipeFrom(byline_1.default.createStream()); | ||
return stream; | ||
} | ||
exports.streamToKnexRaw = streamToKnexRaw; | ||
function newStatementSplitterStream(type) { | ||
switch (type) { | ||
case 'postgresql': | ||
return new splitQueryStream_1.SplitQueryStream(options_1.postgreSplitterOptions); | ||
case 'mysql': | ||
return new splitQueryStream_1.SplitQueryStream(options_1.mysqlSplitterOptions); | ||
case 'mssql': | ||
return new splitQueryStream_1.SplitQueryStream(options_1.mssqlSplitterOptions); | ||
case 'sqlite': | ||
return new splitQueryStream_1.SplitQueryStream(options_1.sqliteSplitterOptions); | ||
default: | ||
return new splitQueryStream_1.SplitQueryStream(options_1.defaultSplitterOptions); | ||
} | ||
} | ||
exports.newStatementSplitterStream = newStatementSplitterStream; | ||
//# sourceMappingURL=knex.js.map |
{ | ||
"name": "db-watch", | ||
"version": "0.0.3", | ||
"version": "0.0.4", | ||
"description": "Create Postgres triggers and watch notify listeners", | ||
@@ -29,2 +29,4 @@ "author": "wholebuzz", | ||
"batch2": "^2.0.0", | ||
"byline": "^5.0.0", | ||
"dbgate-query-splitter": "4.4.0-alpha.2", | ||
"sorted-array-functions": "^1.3.0", | ||
@@ -35,2 +37,3 @@ "through2": "^3.0.1", | ||
"devDependencies": { | ||
"@types/byline": "^4.2.33", | ||
"@types/jest": "^26.0.22", | ||
@@ -37,0 +40,0 @@ "@types/node": "^13.13.5", |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
59220
787
6
18
+ Addedbyline@^5.0.0
+ Addedbyline@5.0.0(transitive)
+ Addeddbgate-query-splitter@4.4.0-alpha.2(transitive)