pogi 3.0.0-beta2 → 3.0.0-beta3
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/.env +5 -0
- package/lib/connectionOptions.d.ts +1 -4
- package/lib/pgDb.d.ts +8 -8
- package/lib/pgDb.js +7 -7
- package/lib/pgDb.js.map +1 -1
- package/lib/pgDbInterface.d.ts +1 -32
- package/lib/pgDbInterface.js +8 -8
- package/lib/pgDbInterface.js.map +1 -1
- package/lib/pgSchema.d.ts +7 -9
- package/lib/pgSchema.js.map +1 -1
- package/lib/pgSchemaInterface.d.ts +0 -12
- package/lib/pgSchemaInterface.js +0 -1
- package/lib/pgTable.d.ts +4 -4
- package/lib/pgTableInterface.d.ts +0 -74
- package/lib/pgTableInterface.js.map +1 -1
- package/lib/pgUtils.d.ts +5 -5
- package/lib/pgUtils.js.map +1 -1
- package/lib/queryAble.d.ts +3 -4
- package/lib/queryAble.js +3 -3
- package/lib/queryAble.js.map +1 -1
- package/lib/queryAbleInterface.d.ts +4 -4
- package/lib/test/pgDbOperatorSpec.d.ts +1 -0
- package/lib/test/pgDbOperatorSpec.js +326 -0
- package/lib/test/pgDbOperatorSpec.js.map +1 -0
- package/lib/test/pgDbSpec.d.ts +1 -0
- package/lib/test/pgDbSpec.js +1139 -0
- package/lib/test/pgDbSpec.js.map +1 -0
- package/lib/test/pgServiceRestartTest.d.ts +1 -0
- package/lib/test/pgServiceRestartTest.js +1532 -0
- package/lib/test/pgServiceRestartTest.js.map +1 -0
- package/package.json +1 -1
- package/src/bin/generateInterface.ts +0 -54
- package/src/connectionOptions.ts +0 -77
- package/src/index.d.ts +0 -7
- package/src/index.ts +0 -6
- package/src/pgConverters.test.ts +0 -10
- package/src/pgConverters.ts +0 -59
- package/src/pgDb.test.ts +0 -1324
- package/src/pgDb.ts +0 -842
- package/src/pgDbInterface.ts +0 -57
- package/src/pgDbLogger.ts +0 -13
- package/src/pgDbOperators.test.ts +0 -478
- package/src/pgDbOperators.ts +0 -85
- package/src/pgSchema.ts +0 -16
- package/src/pgSchemaInterface.ts +0 -12
- package/src/pgTable.ts +0 -369
- package/src/pgTableInterface.ts +0 -131
- package/src/pgUtils.ts +0 -300
- package/src/queryAble.ts +0 -365
- package/src/queryAbleInterface.ts +0 -104
- package/src/queryWhere.ts +0 -325
- package/src/test/init.sql +0 -122
- package/src/test/pgServiceRestartTest.ts +0 -1500
- package/src/test/throw_exception.sql +0 -5
- package/src/test/tricky.sql +0 -13
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pgServiceRestartTest.js","sourceRoot":"","sources":["../../src/test/pgServiceRestartTest.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
import {PgDb} from "../pgDb";
|
|
2
|
-
import {PgSchema} from "../pgSchema";
|
|
3
|
-
import {PgTable} from "../pgTable";
|
|
4
|
-
|
|
5
|
-
(async function () {
|
|
6
|
-
try {
|
|
7
|
-
let pgdb = await PgDb.connect({
|
|
8
|
-
logger: {
|
|
9
|
-
log: () => {
|
|
10
|
-
}, error: console.error
|
|
11
|
-
}
|
|
12
|
-
}); //using PGUSER, PGPASSWORD + PGDATABASE env variables
|
|
13
|
-
|
|
14
|
-
console.log('import {PgDb, PgSchema, PgTable} from "pogi";\n');
|
|
15
|
-
console.log('export interface PgDbType extends PgDb {');
|
|
16
|
-
|
|
17
|
-
for (let schemaName in pgdb.schemas) {
|
|
18
|
-
if (!(pgdb[schemaName] instanceof PgSchema)) {
|
|
19
|
-
throw new Error('Already existing property: ' + schemaName + '!');
|
|
20
|
-
}
|
|
21
|
-
console.log(` '${schemaName}': PgSchema_${schemaName};`); //need to add a PgSchema_ prefix in order to handle schemas starting with number
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
console.log(` 'schemas': {`);
|
|
25
|
-
for (let schemaName in pgdb.schemas) {
|
|
26
|
-
console.log(` '${schemaName}': PgSchema_${schemaName};`);
|
|
27
|
-
}
|
|
28
|
-
console.log(' }');
|
|
29
|
-
console.log('}');
|
|
30
|
-
|
|
31
|
-
for (let schemaName in pgdb.schemas) {
|
|
32
|
-
console.log(`export interface PgSchema_${schemaName} extends PgSchema {`);
|
|
33
|
-
for (let tableName in pgdb.schemas[schemaName].tables) {
|
|
34
|
-
if (!(pgdb[schemaName][tableName] instanceof PgTable)) {
|
|
35
|
-
throw new Error('Already existing property: ' + tableName + ' on schema:' + schemaName + '!');
|
|
36
|
-
}
|
|
37
|
-
console.log(` '${tableName}': PgTable<any>;`);
|
|
38
|
-
}
|
|
39
|
-
console.log(` tables: {`);
|
|
40
|
-
for (let tableName in pgdb.schemas[schemaName].tables) {
|
|
41
|
-
console.log(` '${tableName}': PgTable<any>;`);
|
|
42
|
-
}
|
|
43
|
-
console.log(' }');
|
|
44
|
-
|
|
45
|
-
console.log('}');
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
pgdb.close();
|
|
50
|
-
} catch (e) {
|
|
51
|
-
console.error(e);
|
|
52
|
-
}
|
|
53
|
-
return Promise.resolve();
|
|
54
|
-
})();
|
package/src/connectionOptions.ts
DELETED
|
@@ -1,77 +0,0 @@
|
|
|
1
|
-
import { PgDbLogger } from './pgDbLogger';
|
|
2
|
-
|
|
3
|
-
export interface ForceEscapeColumnsOptions {
|
|
4
|
-
select?: boolean
|
|
5
|
-
where?: boolean
|
|
6
|
-
orderBy?: boolean
|
|
7
|
-
groupBy?: boolean
|
|
8
|
-
//warningOnly?: boolean
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
/**
|
|
12
|
-
* @property connectionString e.g.: "postgres://user@localhost/database"
|
|
13
|
-
* @property host can be specified through PGHOST env variable
|
|
14
|
-
* @property user can be specified through PGUSER env variable (defaults USER env var)
|
|
15
|
-
* @property database can be specified through PGDATABASE env variable (defaults USER env var)
|
|
16
|
-
* @property password can be specified through PGPASSWORD env variable
|
|
17
|
-
* @property port can be specified through PGPORT env variable
|
|
18
|
-
* @property idleTimeoutMillis how long a client is allowed to remain idle before being closed
|
|
19
|
-
* @property skipUndefined if there is a undefined value in the condition, what should pogi do. Default is 'none', meaning raise error if a value is undefined.
|
|
20
|
-
* @property logSQLDetailsOnError - log sql and params in case of sql error (this might contain sensitive information)
|
|
21
|
-
*/
|
|
22
|
-
export interface ConnectionOptions {
|
|
23
|
-
/** host can be specified through PGHOST env variable (defaults USER env var) */
|
|
24
|
-
host?: string;
|
|
25
|
-
/** user can be specified through PGUSER env variable (defaults USER env var) */
|
|
26
|
-
user?: string;
|
|
27
|
-
/** can be specified through PGDATABASE env variable (defaults USER env var) */
|
|
28
|
-
database?: string;
|
|
29
|
-
/** can be specified through PGPASSWORD env variable */
|
|
30
|
-
password?: string;
|
|
31
|
-
/** can be specified through PGPORT env variable */
|
|
32
|
-
port?: number;
|
|
33
|
-
poolSize?: number;
|
|
34
|
-
|
|
35
|
-
/**
|
|
36
|
-
* Turn on some basic sql injection protection
|
|
37
|
-
*/
|
|
38
|
-
forceEscapeColumns?: boolean | ForceEscapeColumnsOptions;
|
|
39
|
-
|
|
40
|
-
//number of rows to return at a time from a prepared statement's portal. 0 will return all rows at once
|
|
41
|
-
rows?: number;
|
|
42
|
-
/** set min pool size */
|
|
43
|
-
min?: number;
|
|
44
|
-
/** set pool max size */
|
|
45
|
-
max?: number;
|
|
46
|
-
|
|
47
|
-
binary?: boolean;
|
|
48
|
-
poolIdleTimeout?: number;
|
|
49
|
-
reapIntervalMillis?: number;
|
|
50
|
-
poolLog?: boolean;
|
|
51
|
-
client_encoding?: string;
|
|
52
|
-
ssl?: boolean | any; //| TlsOptions;
|
|
53
|
-
/** default:process.env.PGAPPNAME - name displayed in the pg_stat_activity view and included in CSV log entries */
|
|
54
|
-
application_name?: string;
|
|
55
|
-
fallback_application_name?: string;
|
|
56
|
-
parseInputDatesAsUTC?: boolean;
|
|
57
|
-
/** e.g.: "postgres://user@localhost/database" */
|
|
58
|
-
connectionString?: string;
|
|
59
|
-
/** how long a client is allowed to remain idle before being closed */
|
|
60
|
-
idleTimeoutMillis?: number;
|
|
61
|
-
|
|
62
|
-
logger?: PgDbLogger;
|
|
63
|
-
/** if there is a undefined value in the condition, what should pogi do. Default is 'none', meaning raise error if a value is undefined. */
|
|
64
|
-
skipUndefined?: 'all' | 'select' | 'none';
|
|
65
|
-
|
|
66
|
-
/**
|
|
67
|
-
* escape all ddl parameter (select, from, where, order by, group by, ...), default: true
|
|
68
|
-
* notes:
|
|
69
|
-
* - insert statements columns are always quoted
|
|
70
|
-
* - update statements "SET" columns are always quoted
|
|
71
|
-
* */
|
|
72
|
-
strictDdl?: boolean,
|
|
73
|
-
/** escape all "SELECT" ddl parameter, default: true */
|
|
74
|
-
strictDdlSelect?: boolean,
|
|
75
|
-
/** escape all "WHERE" ddl parameter, default: true */
|
|
76
|
-
strictDdlWhere?: boolean,
|
|
77
|
-
}
|
package/src/index.d.ts
DELETED
package/src/index.ts
DELETED
package/src/pgConverters.test.ts
DELETED
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { parseArray } from "./pgConverters";
|
|
2
|
-
|
|
3
|
-
describe("pgConverters.test", () => {
|
|
4
|
-
it("parseArray", async () => {
|
|
5
|
-
expect(parseArray('{}')).toEqual([]);
|
|
6
|
-
expect(parseArray('{1,2}')).toEqual(['1', '2']);
|
|
7
|
-
expect(parseArray('{NULL,""}')).toEqual([null, '']);
|
|
8
|
-
expect(parseArray('{"\\\\","\\""}')).toEqual(['\\', '"']);
|
|
9
|
-
});
|
|
10
|
-
});
|
package/src/pgConverters.ts
DELETED
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
import * as moment from 'moment';
|
|
2
|
-
|
|
3
|
-
//--- add parsing for array types --------------------------------
|
|
4
|
-
export function parseArray(s: string): (string | null)[] {
|
|
5
|
-
if (!s || s[0] !== '{' || s[s.length - 1] !== '}') throw new Error('Invalid array value:' + s);
|
|
6
|
-
if (s == "{}") return [];
|
|
7
|
-
s = s.slice(1, s.length - 1); //cut off {}
|
|
8
|
-
let e = /(?:("(?:[^"\\]|\\.)*")|([^,"]*))(?:,|$)/g; //has to be mutable because of exec
|
|
9
|
-
let valList: (string | null)[] = [];
|
|
10
|
-
let parsingResult;
|
|
11
|
-
do {
|
|
12
|
-
parsingResult = e.exec(s);
|
|
13
|
-
if (!parsingResult) throw new Error('Invalid array value:' + s);
|
|
14
|
-
let valStr = (parsingResult[2] === 'NULL') ? null :
|
|
15
|
-
(parsingResult[1] == null ? parsingResult[2] : unescapeString(parsingResult[1])); // for string parsing, escape \
|
|
16
|
-
valList.push(valStr);
|
|
17
|
-
} while (e.lastIndex < s.length);
|
|
18
|
-
return valList;
|
|
19
|
-
};
|
|
20
|
-
|
|
21
|
-
export function parseNumberWithValidation(s: string): number | null {
|
|
22
|
-
if (s === 'NULL') {
|
|
23
|
-
return null;
|
|
24
|
-
}
|
|
25
|
-
let v = +s;
|
|
26
|
-
if (v > Number.MAX_SAFE_INTEGER || v < Number.MIN_SAFE_INTEGER) {
|
|
27
|
-
throw new Error("Number can't be represented in javascript precisely: " + s);
|
|
28
|
-
}
|
|
29
|
-
return v;
|
|
30
|
-
};
|
|
31
|
-
|
|
32
|
-
export function parseNumberOrNull(s: string): number | null {
|
|
33
|
-
if (s === 'NULL') {
|
|
34
|
-
return null;
|
|
35
|
-
}
|
|
36
|
-
return +s;
|
|
37
|
-
};
|
|
38
|
-
|
|
39
|
-
export function parseBoolOrNull(s: string): boolean | null {
|
|
40
|
-
if (s === 'NULL') {
|
|
41
|
-
return null;
|
|
42
|
-
}
|
|
43
|
-
return s == 't';
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
export let parseBooleanArray = (s: string): (boolean | null)[] => s == "{}" ? [] : s.substring(1, s.length - 1).split(',').map(parseBoolOrNull);
|
|
47
|
-
export let parseNumberArray = (s: string): (number | null)[] => s == "{}" ? [] : s.substring(1, s.length - 1).split(',').map(parseNumberOrNull);
|
|
48
|
-
export let parseNumberArrayWithValidation = (s: string[]) => s.map(parseNumberWithValidation);
|
|
49
|
-
export let parseDateArray = (s: string): (Date | null)[] => s == "{}" ? [] : s.substring(1, s.length - 1).split(',').map(d => d == 'NULL' ? null : moment(d.substring(1, d.length - 1)).toDate());
|
|
50
|
-
export let parseJsonArray = (s: string): (Object | null)[] => {
|
|
51
|
-
let vals = parseArray(s);
|
|
52
|
-
return vals.map(s2 => typeof s2 === 'string' ? JSON.parse(s2) : s2);
|
|
53
|
-
};
|
|
54
|
-
|
|
55
|
-
function unescapeString(s: string): string {
|
|
56
|
-
return s.slice(1, s.length - 1) // cut the first and the last "
|
|
57
|
-
.replace(/\\"/g, '"') // \" -> "
|
|
58
|
-
.replace(/\\\\/g, '\\') // \\ -> \
|
|
59
|
-
}
|