diff --git a/.env.example b/.env.example new file mode 100644 index 0000000..5414041 --- /dev/null +++ b/.env.example @@ -0,0 +1,9 @@ +# Example .env config file. If available "pg-structure" uses the ".env" file to read the environment varaibles. +# For full list of options see https://node-postgres.com/api/client +# All variables start with the default prefix "DB". It can be changed using "options.envPrefix": +# const db = await pgStructure({ envPrefix: "DB" }); + +DB_DATABASE=database +DB_HOST=localhost +DB_USER=user +DB_PASSWORD=password diff --git a/.yo-rc.json b/.yo-rc.json index 312a86f..0bd54db 100644 --- a/.yo-rc.json +++ b/.yo-rc.json @@ -19,11 +19,11 @@ "author.url": "", "bugs": "https://github.com/ozum/pg-structure/issues", "engines.node": ">= 12.0.0", - "files": ["dist", "!dist/**/@(*.spec|*.test)*", "!dist/**/__test__", "module-files", "@types"], + "files": ["dist", "!dist/**/@(*.spec|*.test)*", "!dist/**/__test__", "module-files"], "homepage": "https://github.com/ozum/pg-structure", "main": "dist/index.js", "repository": "ozum/pg-structure", - "scripts.build": "tsc --incremental", + "scripts.build": "tsc", "scripts.docs:build": "npm run tsmod vuepress-api && NODE_ENV=production vuepress build docs", "scripts.docs:dev": "npm run tsmod vuepress-api && vuepress dev docs", "scripts.execute": "ts-node --transpile-only --compiler-options '{ \"module\": \"commonjs\" }'", @@ -44,14 +44,13 @@ "types": "dist/index.d.ts" }, "normal": { - "dependencies.tslib": "^2.1.0", "devDependencies.@commitlint/cli": "^11.0.0", "devDependencies.@commitlint/config-conventional": "^11.0.0", "devDependencies.@ozum/pinst": "^2.1.4", "devDependencies.@types/jest": "^26.0.20", "devDependencies.@types/node": "^14.14.25", - "devDependencies.@typescript-eslint/eslint-plugin": "^4.14.2", - "devDependencies.@typescript-eslint/parser": "^4.14.2", + "devDependencies.@typescript-eslint/eslint-plugin": "^4.15.0", + "devDependencies.@typescript-eslint/parser": "^4.15.0", "devDependencies.@vuepress/plugin-active-header-links": "^1.8.0", "devDependencies.@vuepress/plugin-google-analytics": "^1.8.0", "devDependencies.@vuepress/plugin-pwa": "^1.8.0", @@ -63,21 +62,21 @@ "devDependencies.eslint-plugin-import": "^2.22.0", "devDependencies.eslint-plugin-jest": "^24.1.3", "devDependencies.eslint-plugin-prettier": "^3.3.1", - "devDependencies.husky": "^5.0.8", + "devDependencies.husky": "^5.0.9", "devDependencies.is-ci": "^2.0.0", "devDependencies.jest": "^26.6.3", "devDependencies.lint-staged": "^10.5.4", - "devDependencies.not-sync": "^1.4.0", + "devDependencies.not-sync": "^1.4.1", "devDependencies.npm-run-all": "^4.1.5", "devDependencies.prettier": "^2.2.1", "devDependencies.readmeasy": "^0.2.7", - "devDependencies.ts-jest": "^26.5.0", + "devDependencies.ts-jest": "^26.5.1", "devDependencies.ts-node-dev": "^1.1.1", - "devDependencies.typedoc": "^0.20.23", + "devDependencies.typedoc": "^0.20.24", "devDependencies.typedoc-neo-theme": "^1.1.0", "devDependencies.typedoc-plugin-example-tag": "^1.0.2", "devDependencies.typedoc-plugin-markdown": "^3.4.5", - "devDependencies.typescript": "^4.1.3", + "devDependencies.typescript": "^4.1.5", "devDependencies.vuepress": "^1.8.0", "devDependencies.vuepress-bar": "^0.3.5", "devDependencies.walkdir": "^0.4.1" diff --git a/README.md b/README.md index cca3b34..17bc986 100644 --- a/README.md +++ b/README.md @@ -26,7 +26,7 @@ Please see [pg-structure.com](https://www.pg-structure.com) for details. import pgStructure from "pg-structure"; async function demo() { - // pg-structure may read client config from process.env. Use environment variables for sensitive information such as passwords. + // Prefer to use environment variables or ".env" file for the credentials. See the ".env.example" file. const db = await pgStructure({ database: "db", user: "u", password: "pass" }, { includeSchemas: ["public"] }); const table = db.get("contact"); diff --git a/README.njk b/README.njk index 99cb7eb..6158081 100644 --- a/README.njk +++ b/README.njk @@ -14,7 +14,7 @@ Please see [pg-structure.com](https://www.pg-structure.com) for details. import pgStructure from "pg-structure"; async function demo() { - // pg-structure may read client config from process.env. Use environment variables for sensitive information such as passwords. + // Prefer to use environment variables or ".env" file for the credentials. See the ".env.example" file. const db = await pgStructure({ database: "db", user: "u", password: "pass" }, { includeSchemas: ["public"] }); const table = db.get("contact"); diff --git a/module-files/configs/tsconfig.json b/module-files/configs/tsconfig.json index dac270d..daf0444 100644 --- a/module-files/configs/tsconfig.json +++ b/module-files/configs/tsconfig.json @@ -1,59 +1,72 @@ { "compilerOptions": { - // Basic Options schema - "target": "ES2018", // Specify ECMAScript target version: 'ES3' (default), 'ES5', 'ES2015', 'ES2016', 'ES2017', 'ES2018', 'ES2019' or 'ESNEXT'. - "module": "commonjs", // Specify module code generation: 'none', 'commonjs', 'amd', 'system', 'umd', 'es2015', or 'ESNext'. - "lib": ["dom", "esnext"], // Specify library files to be included in the compilation. schema - // "allowJs": true, // Allow javascript files to be compiled. schema - // "checkJs": true, // Report errors in .js files. schema - // "jsx": "preserve", // Specify JSX code generation: 'preserve', 'react-native', or 'react'. schema + // Visit https://aka.ms/tsconfig.json to read more about this file - "declaration": true, // Generates corresponding '.d.ts' file. schema - "declarationMap": true, // Generates a sourcemap for each corresponding '.d.ts' file. schema - "sourceMap": true, // Generates corresponding '.map' file. schema - // "outFile": "./", // Concatenate and emit output to single file. schema - "outDir": "../../dist", // Redirect output structure to the directory. schema - // "rootDir": "./", // Specify the root directory of input files. Use to control the output directory structure with --outDir. schema - // "composite": true, // Enable project compilation schema - // "incremental": true, // Enable incremental compilation schema - // "tsBuildInfoFile": "./", // Specify file to store incremental compilation information schema - // "removeComments": true, // Do not emit comments to output. schema - // "noEmit": true, // Do not emit outputs. schema - "importHelpers": true, // Import emit helpers from 'tslib'. schema - // "downlevelIteration": true, // Provide full support for iterables in 'for-of', spread, and destructuring when targeting 'ES5' or 'ES3'. schema - // "isolatedModules": true, // Transpile each file as a separate module (similar to 'ts.transpileModule'). schema - // Strict Type-Checking Options schema + // Basic Options + "incremental": true, // Enable incremental compilation + "target": "ES2020", // Specify ECMAScript target version: 'ES3' (default), 'ES5', 'ES2015', 'ES2016', 'ES2017', 'ES2018', 'ES2019', 'ES2020', or 'ESNEXT'. + "module": "commonjs", // Specify module code generation: 'none', 'commonjs', 'amd', 'system', 'umd', 'es2015', 'es2020', or 'ESNext'. + // "lib": ["dom", "esnext"], // Specify library files to be included in the compilation. + // "allowJs": true, // Allow javascript files to be compiled. + // "checkJs": true, // Report errors in .js files. + // "jsx": "preserve", // Specify JSX code generation: 'preserve', 'react-native', or 'react'. + "declaration": true, // Generates corresponding '.d.ts' file. + "declarationMap": true, // Generates a sourcemap for each corresponding '.d.ts' file. + + "sourceMap": true, // Generates corresponding '.map' file. + // "outFile": "./", // Concatenate and emit output to single file. + "outDir": "../../dist", // Redirect output structure to the directory. + // "rootDir": "./", // Specify the root directory of input files. Use to control the output directory structure with --outDir. + // "composite": true, // Enable project compilation + // "tsBuildInfoFile": "./", // Specify file to store incremental compilation information + // "removeComments": true, // Do not emit comments to output. + // "noEmit": true, // Do not emit outputs. + // "importHelpers": true, // Import emit helpers from 'tslib'. + // "downlevelIteration": true, // Provide full support for iterables in 'for-of', spread, and destructuring when targeting 'ES5' or 'ES3'. + // "isolatedModules": true, // Transpile each file as a separate module (similar to 'ts.transpileModule'). + + // Strict Type-Checking Options "strict": true, // Enable all strict type-checking options. - // "noImplicitAny": true, // Raise error on expressions and declarations with an implied 'any' type. schema - // "strictNullChecks": true, // Enable strict null checks. schema - // "strictFunctionTypes": true, // Enable strict checking of function types. schema - // "strictBindCallApply": true, // Enable strict 'bind', 'call', and 'apply' methods on functions. schema - // "strictPropertyInitialization": true, // Enable strict checking of property initialization in classes. schema - // "noImplicitThis": true, // Raise error on 'this' expressions with an implied 'any' type. schema - // "alwaysStrict": true, // Parse in strict mode and emit "use strict" for each source file. schema - // Additional Checks schema - // "noUnusedLocals": true, // Report errors on unused locals. schema - // "noUnusedParameters": true, // Report errors on unused parameters. schema - // "noImplicitReturns": true, // Report error when not all code paths in function return a value. schema - // "noFallthroughCasesInSwitch": true, // Report errors for fallthrough cases in switch statement. schema - // Module Resolution Options schema - "moduleResolution": "node", // Specify module resolution strategy: 'node' (Node.js) or 'classic' (TypeScript pre-1.6). schema - // "baseUrl": "./", // Base directory to resolve non-absolute module names. schema - // "paths": {}, // A series of entries which re-map imports to lookup locations relative to the 'baseUrl'. schema - // "rootDirs": [], // List of root folders whose combined content represents the structure of the project at runtime. schema - "typeRoots": ["../../@types", "../../node_modules/@types"], // List of folders to include type definitions from. schema - // "types": [], // Type declaration files to be included in compilation. schema - // "allowSyntheticDefaultImports": true, // Allow default imports from modules with no default export. This does not affect code emit, just typechecking. schema + // "noImplicitAny": true, // Raise error on expressions and declarations with an implied 'any' type. + // "strictNullChecks": true, // Enable strict null checks. + // "strictFunctionTypes": true, // Enable strict checking of function types. + // "strictBindCallApply": true, // Enable strict 'bind', 'call', and 'apply' methods on functions. + // "strictPropertyInitialization": true, // Enable strict checking of property initialization in classes. + // "noImplicitThis": true, // Raise error on 'this' expressions with an implied 'any' type. + // "alwaysStrict": true, // Parse in strict mode and emit "use strict" for each source file. + + // Additional Checks + // "noUnusedLocals": true, // Report errors on unused locals. + // "noUnusedParameters": true, // Report errors on unused parameters. + // "noImplicitReturns": true, // Report error when not all code paths in function return a value. + // "noFallthroughCasesInSwitch": true, // Report errors for fallthrough cases in switch statement. + // "noUncheckedIndexedAccess": true, // Include 'undefined' in index signature results + + // Module Resolution Options + // "moduleResolution": "node", // Specify module resolution strategy: 'node' (Node.js) or 'classic' (TypeScript pre-1.6). + // "baseUrl": "./", // Base directory to resolve non-absolute module names. + // "paths": {}, // A series of entries which re-map imports to lookup locations relative to the 'baseUrl'. + // "rootDirs": [], // List of root folders whose combined content represents the structure of the project at runtime. + // "typeRoots": [], // List of folders to include type definitions from. + // "types": [], // Type declaration files to be included in compilation. + // "allowSyntheticDefaultImports": true, // Allow default imports from modules with no default export. This does not affect code emit, just typechecking. "esModuleInterop": true, // Enables emit interoperability between CommonJS and ES Modules via creation of namespace objects for all imports. Implies 'allowSyntheticDefaultImports'. - // "preserveSymlinks": true, // Do not resolve the real path of symlinks. schema - // Source Map Options schema - // "sourceRoot": "", // Specify the location where debugger should locate TypeScript files instead of source locations. schema - // "mapRoot": "", // Specify the location where debugger should locate map files instead of generated locations. schema - // "inlineSourceMap": true, // Emit a single file with source maps instead of having a separate file. schema - // "inlineSources": true, // Emit the source alongside the sourcemaps within a single file; requires '--inlineSourceMap' or '--sourceMap' to be set. schema - // Experimental Options schema + // "preserveSymlinks": true, // Do not resolve the real path of symlinks. + // "allowUmdGlobalAccess": true, // Allow accessing UMD globals from modules. + + // Source Map Options + // "sourceRoot": "", // Specify the location where debugger should locate TypeScript files instead of source locations. + // "mapRoot": "", // Specify the location where debugger should locate map files instead of generated locations. + // "inlineSourceMap": true, // Emit a single file with source maps instead of having a separate file. + // "inlineSources": true, // Emit the source alongside the sourcemaps within a single file; requires '--inlineSourceMap' or '--sourceMap' to be set. + + // Experimental Options "experimentalDecorators": true, // Enables experimental support for ES7 decorators. - "emitDecoratorMetadata": true // Enables experimental support for emitting type metadata for decorators. schema + "emitDecoratorMetadata": true, // Enables experimental support for emitting type metadata for decorators. + + // Advanced Options + "skipLibCheck": true, // Skip type checking of declaration files. + "forceConsistentCasingInFileNames": true // Disallow inconsistently-cased references to the same file. }, "include": ["../../src/**/*"], "exclude": [ @@ -62,7 +75,9 @@ "../../**/*.test.ts", "../../**/*.spec.ts", "../../**/*.e2e.ts", - "../../**/*/test-helper" + "../../**/*/test-helper", + + "../../dist" ], "typedocOptions": { "exclude": ["../../**/*+(.test|.spec|.e2e).ts", "/*/test-helper/**/*"] diff --git a/package-lock.json b/package-lock.json index 9d6ef59..e54fa00 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2070,13 +2070,13 @@ "dev": true }, "@typescript-eslint/eslint-plugin": { - "version": "4.14.2", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.14.2.tgz", - "integrity": "sha512-uMGfG7GFYK/nYutK/iqYJv6K/Xuog/vrRRZX9aEP4Zv1jsYXuvFUMDFLhUnc8WFv3D2R5QhNQL3VYKmvLS5zsQ==", + "version": "4.15.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.15.0.tgz", + "integrity": "sha512-DJgdGZW+8CFUTz5C/dnn4ONcUm2h2T0itWD85Ob5/V27Ndie8hUoX5HKyGssvR8sUMkAIlUc/AMK67Lqa3kBIQ==", "dev": true, "requires": { - "@typescript-eslint/experimental-utils": "4.14.2", - "@typescript-eslint/scope-manager": "4.14.2", + "@typescript-eslint/experimental-utils": "4.15.0", + "@typescript-eslint/scope-manager": "4.15.0", "debug": "^4.1.1", "functional-red-black-tree": "^1.0.1", "lodash": "^4.17.15", @@ -2086,58 +2086,57 @@ }, "dependencies": { "@typescript-eslint/experimental-utils": { - "version": "4.14.2", - "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-4.14.2.tgz", - "integrity": "sha512-mV9pmET4C2y2WlyHmD+Iun8SAEqkLahHGBkGqDVslHkmoj3VnxnGP4ANlwuxxfq1BsKdl/MPieDbohCEQgKrwA==", + "version": "4.15.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-4.15.0.tgz", + "integrity": "sha512-V4vaDWvxA2zgesg4KPgEGiomWEBpJXvY4ZX34Y3qxK8LUm5I87L+qGIOTd9tHZOARXNRt9pLbblSKiYBlGMawg==", "dev": true, "requires": { "@types/json-schema": "^7.0.3", - "@typescript-eslint/scope-manager": "4.14.2", - "@typescript-eslint/types": "4.14.2", - "@typescript-eslint/typescript-estree": "4.14.2", + "@typescript-eslint/scope-manager": "4.15.0", + "@typescript-eslint/types": "4.15.0", + "@typescript-eslint/typescript-estree": "4.15.0", "eslint-scope": "^5.0.0", "eslint-utils": "^2.0.0" } }, "@typescript-eslint/scope-manager": { - "version": "4.14.2", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.14.2.tgz", - "integrity": "sha512-cuV9wMrzKm6yIuV48aTPfIeqErt5xceTheAgk70N1V4/2Ecj+fhl34iro/vIssJlb7XtzcaD07hWk7Jk0nKghg==", + "version": "4.15.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.15.0.tgz", + "integrity": "sha512-CSNBZnCC2jEA/a+pR9Ljh8Y+5TY5qgbPz7ICEk9WCpSEgT6Pi7H2RIjxfrrbUXvotd6ta+i27sssKEH8Azm75g==", "dev": true, "requires": { - "@typescript-eslint/types": "4.14.2", - "@typescript-eslint/visitor-keys": "4.14.2" + "@typescript-eslint/types": "4.15.0", + "@typescript-eslint/visitor-keys": "4.15.0" } }, "@typescript-eslint/types": { - "version": "4.14.2", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.14.2.tgz", - "integrity": "sha512-LltxawRW6wXy4Gck6ZKlBD05tCHQUj4KLn4iR69IyRiDHX3d3NCAhO+ix5OR2Q+q9bjCrHE/HKt+riZkd1At8Q==", + "version": "4.15.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.15.0.tgz", + "integrity": "sha512-su4RHkJhS+iFwyqyXHcS8EGPlUVoC+XREfy5daivjLur9JP8GhvTmDipuRpcujtGC4M+GYhUOJCPDE3rC5NJrg==", "dev": true }, "@typescript-eslint/typescript-estree": { - "version": "4.14.2", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.14.2.tgz", - "integrity": "sha512-ESiFl8afXxt1dNj8ENEZT12p+jl9PqRur+Y19m0Z/SPikGL6rqq4e7Me60SU9a2M28uz48/8yct97VQYaGl0Vg==", + "version": "4.15.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.15.0.tgz", + "integrity": "sha512-jG6xTmcNbi6xzZq0SdWh7wQ9cMb2pqXaUp6bUZOMsIlu5aOlxGxgE/t6L/gPybybQGvdguajXGkZKSndZJpksA==", "dev": true, "requires": { - "@typescript-eslint/types": "4.14.2", - "@typescript-eslint/visitor-keys": "4.14.2", + "@typescript-eslint/types": "4.15.0", + "@typescript-eslint/visitor-keys": "4.15.0", "debug": "^4.1.1", "globby": "^11.0.1", "is-glob": "^4.0.1", - "lodash": "^4.17.15", "semver": "^7.3.2", "tsutils": "^3.17.1" } }, "@typescript-eslint/visitor-keys": { - "version": "4.14.2", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.14.2.tgz", - "integrity": "sha512-KBB+xLBxnBdTENs/rUgeUKO0UkPBRs2vD09oMRRIkj5BEN8PX1ToXV532desXfpQnZsYTyLLviS7JrPhdL154w==", + "version": "4.15.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.15.0.tgz", + "integrity": "sha512-RnDtJwOwFucWFAMjG3ghCG/ikImFJFEg20DI7mn4pHEx3vC48lIAoyjhffvfHmErRDboUPC7p9Z2il4CLb7qxA==", "dev": true, "requires": { - "@typescript-eslint/types": "4.14.2", + "@typescript-eslint/types": "4.15.0", "eslint-visitor-keys": "^2.0.0" } } @@ -2158,56 +2157,55 @@ } }, "@typescript-eslint/parser": { - "version": "4.14.2", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-4.14.2.tgz", - "integrity": "sha512-ipqSP6EuUsMu3E10EZIApOJgWSpcNXeKZaFeNKQyzqxnQl8eQCbV+TSNsl+s2GViX2d18m1rq3CWgnpOxDPgHg==", + "version": "4.15.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-4.15.0.tgz", + "integrity": "sha512-L6Dtbq8Bc7g2aZwnIBETpmUa9XDKCMzKVwAArnGp5Mn7PRNFjf3mUzq8UeBjL3K8t311hvevnyqXAMSmxO8Gpg==", "dev": true, "requires": { - "@typescript-eslint/scope-manager": "4.14.2", - "@typescript-eslint/types": "4.14.2", - "@typescript-eslint/typescript-estree": "4.14.2", + "@typescript-eslint/scope-manager": "4.15.0", + "@typescript-eslint/types": "4.15.0", + "@typescript-eslint/typescript-estree": "4.15.0", "debug": "^4.1.1" }, "dependencies": { "@typescript-eslint/scope-manager": { - "version": "4.14.2", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.14.2.tgz", - "integrity": "sha512-cuV9wMrzKm6yIuV48aTPfIeqErt5xceTheAgk70N1V4/2Ecj+fhl34iro/vIssJlb7XtzcaD07hWk7Jk0nKghg==", + "version": "4.15.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.15.0.tgz", + "integrity": "sha512-CSNBZnCC2jEA/a+pR9Ljh8Y+5TY5qgbPz7ICEk9WCpSEgT6Pi7H2RIjxfrrbUXvotd6ta+i27sssKEH8Azm75g==", "dev": true, "requires": { - "@typescript-eslint/types": "4.14.2", - "@typescript-eslint/visitor-keys": "4.14.2" + "@typescript-eslint/types": "4.15.0", + "@typescript-eslint/visitor-keys": "4.15.0" } }, "@typescript-eslint/types": { - "version": "4.14.2", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.14.2.tgz", - "integrity": "sha512-LltxawRW6wXy4Gck6ZKlBD05tCHQUj4KLn4iR69IyRiDHX3d3NCAhO+ix5OR2Q+q9bjCrHE/HKt+riZkd1At8Q==", + "version": "4.15.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.15.0.tgz", + "integrity": "sha512-su4RHkJhS+iFwyqyXHcS8EGPlUVoC+XREfy5daivjLur9JP8GhvTmDipuRpcujtGC4M+GYhUOJCPDE3rC5NJrg==", "dev": true }, "@typescript-eslint/typescript-estree": { - "version": "4.14.2", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.14.2.tgz", - "integrity": "sha512-ESiFl8afXxt1dNj8ENEZT12p+jl9PqRur+Y19m0Z/SPikGL6rqq4e7Me60SU9a2M28uz48/8yct97VQYaGl0Vg==", + "version": "4.15.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.15.0.tgz", + "integrity": "sha512-jG6xTmcNbi6xzZq0SdWh7wQ9cMb2pqXaUp6bUZOMsIlu5aOlxGxgE/t6L/gPybybQGvdguajXGkZKSndZJpksA==", "dev": true, "requires": { - "@typescript-eslint/types": "4.14.2", - "@typescript-eslint/visitor-keys": "4.14.2", + "@typescript-eslint/types": "4.15.0", + "@typescript-eslint/visitor-keys": "4.15.0", "debug": "^4.1.1", "globby": "^11.0.1", "is-glob": "^4.0.1", - "lodash": "^4.17.15", "semver": "^7.3.2", "tsutils": "^3.17.1" } }, "@typescript-eslint/visitor-keys": { - "version": "4.14.2", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.14.2.tgz", - "integrity": "sha512-KBB+xLBxnBdTENs/rUgeUKO0UkPBRs2vD09oMRRIkj5BEN8PX1ToXV532desXfpQnZsYTyLLviS7JrPhdL154w==", + "version": "4.15.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.15.0.tgz", + "integrity": "sha512-RnDtJwOwFucWFAMjG3ghCG/ikImFJFEg20DI7mn4pHEx3vC48lIAoyjhffvfHmErRDboUPC7p9Z2il4CLb7qxA==", "dev": true, "requires": { - "@typescript-eslint/types": "4.14.2", + "@typescript-eslint/types": "4.15.0", "eslint-visitor-keys": "^2.0.0" } } @@ -10015,9 +10013,9 @@ "dev": true }, "husky": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/husky/-/husky-5.0.8.tgz", - "integrity": "sha512-lijwzgHIJi7iYijEw77DIqyPDR6mFsOuGbjonI83nnAqJbWShGKtAJg1IqnFabnqGPEMiPv0Q8bnSwThfjW95A==", + "version": "5.0.9", + "resolved": "https://registry.npmjs.org/husky/-/husky-5.0.9.tgz", + "integrity": "sha512-0SjcaY21a+IRdx7p7r/X33Vc09UR2m8SbP8yfkhUX2/jAmwcz+GR7i9jXkp2pP3GfX23JhMkVP6SWwXB18uXtg==", "dev": true }, "iconv-lite": { @@ -12253,9 +12251,9 @@ "dev": true }, "marked": { - "version": "1.2.9", - "resolved": "https://registry.npmjs.org/marked/-/marked-1.2.9.tgz", - "integrity": "sha512-H8lIX2SvyitGX+TRdtS06m1jHMijKN/XjfH6Ooii9fvxMlh8QdqBfBDkGUpMWH2kQNrtixjzYUa3SH8ROTgRRw==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/marked/-/marked-2.0.0.tgz", + "integrity": "sha512-NqRSh2+LlN2NInpqTQnS614Y/3NkVMFFU6sJlRFEpxJ/LHuK/qJECH7/fXZjk4VZstPW/Pevjil/VtSONsLc7Q==", "dev": true }, "md5.js": { @@ -13008,16 +13006,16 @@ } }, "not-sync": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/not-sync/-/not-sync-1.4.0.tgz", - "integrity": "sha512-RhE6ePnpmB2uKjTAOx1eBrCGWIZHzNMusom7bfNLJxzStPfJtFe/G3WZ1x72TGROLDwqc5yMXGF+RoqMVbetvQ==", + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/not-sync/-/not-sync-1.4.1.tgz", + "integrity": "sha512-W1/3UFrP9nlYLWoLDD8PDNvl+EZsLDnLbkK5nbAwqSCPN7yFXm+2+YI2Ea1MvFhubPR+5xq+ihn2mTHMc2iM2A==", "dev": true, "requires": { "array-map-to-object": "0.0.4", + "ci-info": "^2.0.0", "find-up": "^5.0.0", "junk": "^3.1.0", - "rm-up": "^1.0.0", - "tslib": "^2.1.0" + "rm-up": "^1.0.3" }, "dependencies": { "find-up": { @@ -19378,9 +19376,9 @@ } }, "rm-up": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/rm-up/-/rm-up-1.0.1.tgz", - "integrity": "sha512-jwvSppbm+B2n/ZbQyqgrxT6+Eyudb0LKwahJwGz5GrYkF2BqyB9+Gj9YFCPbU4G3FTHWFKN2Bmep7Xpkdnb4Aw==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/rm-up/-/rm-up-1.0.4.tgz", + "integrity": "sha512-ksp43pttCu+wKei+f2P7BLb+e/KlaZVqcdYhoz5ir5xZ769Vtu2NQ5S1t/ZJ0HdYl+rnQBtPOt8ANxO7zcongw==", "dev": true, "requires": { "junk": "^3.1.0" @@ -21419,9 +21417,9 @@ "dev": true }, "ts-jest": { - "version": "26.5.0", - "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-26.5.0.tgz", - "integrity": "sha512-Ya4IQgvIFNa2Mgq52KaO8yBw2W8tWp61Ecl66VjF0f5JaV8u50nGoptHVILOPGoI7SDnShmEqnYQEmyHdQ+56g==", + "version": "26.5.1", + "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-26.5.1.tgz", + "integrity": "sha512-G7Rmo3OJMvlqE79amJX8VJKDiRcd7/r61wh9fnvvG8cAjhA9edklGw/dCxRSQmfZ/z8NDums5srSVgwZos1qfg==", "dev": true, "requires": { "@types/jest": "26.x", @@ -21632,9 +21630,9 @@ } }, "typedoc": { - "version": "0.20.23", - "resolved": "https://registry.npmjs.org/typedoc/-/typedoc-0.20.23.tgz", - "integrity": "sha512-RBXuM0MJ2V/7eGg4YrDEmV1bn/ypa3Wx6AO1B0mUBHEQJaOIKEEnNI0Su75J6q7dkB5ksZvGNgsGjvfWL8Myjg==", + "version": "0.20.24", + "resolved": "https://registry.npmjs.org/typedoc/-/typedoc-0.20.24.tgz", + "integrity": "sha512-TadOYtcw8agrk7WTZlXUcct4jLZZcGcYe3xbmARkI+rBpXI6Mw+0P8oUo13+9oFreQvK5zZgMem4YEi7lCXLIw==", "dev": true, "requires": { "colors": "^1.4.0", @@ -21642,7 +21640,7 @@ "handlebars": "^4.7.6", "lodash": "^4.17.20", "lunr": "^2.3.9", - "marked": "^1.2.9", + "marked": "^2.0.0", "minimatch": "^3.0.0", "progress": "^2.0.3", "shelljs": "^0.8.4", @@ -21685,9 +21683,9 @@ } }, "typescript": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.1.3.tgz", - "integrity": "sha512-B3ZIOf1IKeH2ixgHhj6la6xdwR9QrLC5d1VKeCSY4tvkqhF2eqd9O7txNlS0PO3GrBAFIdr3L1ndNwteUbZLYg==", + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.1.5.tgz", + "integrity": "sha512-6OSu9PTIzmn9TCDiovULTnET6BgXtDYL4Gg4szY+cGsc3JP1dQL8qvE8kShTRx1NIw4Q9IBHlwODjkjWEtMUyA==", "dev": true }, "uc.micro": { diff --git a/package.json b/package.json index d5de8a5..3d0e9c5 100644 --- a/package.json +++ b/package.json @@ -24,8 +24,7 @@ "dist", "!dist/**/@(*.spec|*.test)*", "!dist/**/__test__", - "module-files", - "@types" + "module-files" ], "homepage": "https://github.com/ozum/pg-structure", "bugs": "https://github.com/ozum/pg-structure/issues", @@ -41,7 +40,7 @@ "test": "jest --coverage", "readme": "node module-files/scripts/tsmod.js readme", "prebuild": "not-sync dist", - "build": "tsc --incremental", + "build": "tsc", "docs:build": "npm run tsmod vuepress-api && NODE_ENV=production vuepress build docs", "docs:dev": "npm run tsmod vuepress-api && vuepress dev docs", "preinstall": "npx not-sync node_modules", @@ -63,8 +62,7 @@ "json5": "^2.1.3", "lodash.get": "^4.4.2", "pg": "^8.0.3", - "pg-connection-string": "^2.2.1", - "tslib": "^2.1.0" + "pg-connection-string": "^2.2.1" }, "devDependencies": { "@commitlint/cli": "^11.0.0", @@ -77,8 +75,8 @@ "@types/node": "^14.14.25", "@types/pg": "^7.14.3", "@types/pg-connection-string": "^2.0.0", - "@typescript-eslint/eslint-plugin": "^4.14.2", - "@typescript-eslint/parser": "^4.14.2", + "@typescript-eslint/eslint-plugin": "^4.15.0", + "@typescript-eslint/parser": "^4.15.0", "@vuepress/plugin-active-header-links": "^1.8.0", "@vuepress/plugin-google-analytics": "^1.8.0", "@vuepress/plugin-pwa": "^1.8.0", @@ -90,22 +88,22 @@ "eslint-plugin-import": "^2.22.0", "eslint-plugin-jest": "^24.1.3", "eslint-plugin-prettier": "^3.3.1", - "husky": "^5.0.8", + "husky": "^5.0.9", "is-ci": "^2.0.0", "jest": "^26.6.3", "lint-staged": "^10.5.4", - "not-sync": "^1.4.0", + "not-sync": "^1.4.1", "npm-run-all": "^4.1.5", "pg-test-util": "^2.0.6", "prettier": "^2.2.1", "readmeasy": "^0.2.7", - "ts-jest": "^26.5.0", + "ts-jest": "^26.5.1", "ts-node-dev": "^1.1.1", - "typedoc": "^0.20.23", + "typedoc": "^0.20.24", "typedoc-neo-theme": "^1.1.0", "typedoc-plugin-example-tag": "^1.0.2", "typedoc-plugin-markdown": "^3.4.5", - "typescript": "^4.1.3", + "typescript": "^4.1.5", "vuepress": "^1.8.0", "vuepress-bar": "^0.3.5", "walkdir": "^0.4.1"