{
  "name": "sql-schema-generator",
  "author": "ehmpathy",
  "description": "Declarative relational database sql schema generator. Ensure best practices are followed and abstract away boiler plate sql.",
  "version": "0.25.2",
  "repository": "ehmpathy/sql-schema-generator",
  "homepage": "https://github.com/ehmpathy/sql-schema-generator",
  "keywords": [
    "database",
    "schema",
    "dont-repeat-yourself",
    "sql",
    "postgres",
    "postgresql",
    "insert-only",
    "domain-driven-design",
    "temporal-database-design"
  ],
  "bugs": "https://github.com/ehmpathy/sql-schema-generator/issues",
  "files": [
    "/bin",
    "/dist",
    "/schema"
  ],
  "bin": {
    "sql-schema-generator": "./bin/run"
  },
  "engines": {
    "node": ">=8.0.0"
  },
  "oclif": {
    "commands": "./dist/contract/commands",
    "bin": "sql-schema-generator",
    "plugins": [
      "@oclif/plugin-help"
    ]
  },
  "license": "MIT",
  "main": "dist/contract/module.js",
  "scripts": {
    "generate:cli-readme": "npm run build && oclif-dev readme",
    "build:ts": "tsc -p ./tsconfig.build.json",
    "provision:docker:extensions": "docker-compose -f ./provision/docker/integration-test-db/docker-compose.yml exec -T postgres /root/provision-extensions.sh",
    "commit:with-cli": "npx cz",
    "fix:format:prettier": "prettier --write '**/*.ts' --config ./prettier.config.js",
    "fix:format:terraform": "echo 'no terraform'",
    "fix:format": "npm run fix:format:prettier",
    "fix:lint": "eslint -c ./.eslintrc.js src/**/*.ts --fix",
    "build:artifact": "echo 'no artifact'",
    "build:clean": "rm dist/ -rf",
    "build:compile": "tsc -p ./tsconfig.build.json",
    "build": "npm run build:clean && npm run build:compile",
    "provision:docker:clear": "docker rm -f $(docker ps -a -f 'publish=7821' -q) 2>/dev/null || true && echo 'ensured port is available 👍'",
    "provision:docker:up": "docker-compose -f ./provision/docker/integration-test-db/docker-compose.yml up -d --force-recreate --build --renew-anon-volumes",
    "provision:docker:await": "docker-compose -f ./provision/docker/integration-test-db/docker-compose.yml exec -T postgres /root/wait-for-postgres.sh",
    "provision:docker:down": "docker-compose -f ./provision/docker/integration-test-db/docker-compose.yml down",
    "provision:integration-test-db": "npm run provision:docker:clear && npm run provision:docker:up && npm run provision:docker:await && npm run provision:docker:extensions",
    "test:commits": "LAST_TAG=$(git describe --tags --abbrev=0 @^ 2> /dev/null || git rev-list --max-parents=0 HEAD) && npx commitlint --from $LAST_TAG --to HEAD --verbose",
    "test:types": "tsc -p ./tsconfig.build.json --noEmit",
    "test:format:prettier": "prettier --parser typescript --check 'src/**/*.ts' --config ./prettier.config.js",
    "test:format:terraform": "echo 'no terraform'",
    "test:format": "npm run test:format:prettier",
    "test:lint:deps": "npx depcheck -c ./depcheckrc.yml",
    "test:lint:eslint": "eslint -c ./.eslintrc.js src/**/*.ts",
    "test:lint": "npm run test:lint:eslint && npm run test:lint:deps",
    "test:unit": "jest -c ./jest.unit.config.ts --forceExit --verbose --passWithNoTests $([ -z $THOROUGH ] && echo '--changedSince=main')",
    "test:integration": "jest -c ./jest.integration.config.ts --forceExit --verbose --passWithNoTests --runInBand $([ -z $THOROUGH ] && echo '--changedSince=main')",
    "test:acceptance:locally": "npm run build && LOCALLY=true jest -c ./jest.acceptance.config.ts --forceExit --verbose --runInBand --passWithNoTests",
    "test": "npm run test:commits && npm run test:types && npm run test:format && npm run test:lint && npm run test:unit && npm run test:integration && npm run test:acceptance:locally",
    "test:acceptance": "npm run build && jest -c ./jest.acceptance.config.ts --forceExit --verbose --runInBand --passWithNoTests",
    "prepush": "npm run test && npm run build",
    "prepublish": "npm run build",
    "preversion": "npm run prepush",
    "postversion": "git push origin HEAD --tags --no-verify",
    "postinstall": "[ -d .git ] && npx husky install || exit 0"
  },
  "dependencies": {
    "@ehmpathy/error-fns": "1.0.2",
    "@oclif/core": "2.0.11",
    "@oclif/plugin-help": "3.3.1",
    "chalk": "2.4.2",
    "domain-objects": "0.22.1",
    "indent-string": "4.0.0",
    "joi": "17.4.2",
    "listr": "0.14.3",
    "oclif": "3.3.1",
    "type-fns": "1.17.0",
    "uuid": "9.0.0",
    "yaml": "2.5.0"
  },
  "devDependencies": {
    "@commitlint/cli": "19.3.0",
    "@commitlint/config-conventional": "13.1.0",
    "@oclif/dev-cli": "1.26.10",
    "@trivago/prettier-plugin-sort-imports": "4.3.0",
    "@tsconfig/node-lts-strictest": "18.12.1",
    "@types/indent-string": "4.0.1",
    "@types/jest": "29.2.4",
    "@types/joi": "17.2.3",
    "@types/listr": "0.14.0",
    "@types/pg": "7.14.3",
    "@types/sql-formatter": "2.3.0",
    "@types/uuid": "9.0.0",
    "@types/yesql": "3.2.1",
    "@typescript-eslint/eslint-plugin": "7.8.0",
    "@typescript-eslint/parser": "7.8.0",
    "core-js": "3.26.1",
    "cz-conventional-changelog": "3.3.0",
    "declapract": "0.11.5",
    "declapract-typescript-ehmpathy": "0.33.6",
    "depcheck": "1.4.3",
    "eslint": "8.56.0",
    "eslint-config-airbnb-typescript": "18.0.0",
    "eslint-config-prettier": "8.5.0",
    "eslint-plugin-import": "2.26.0",
    "eslint-plugin-prettier": "4.2.1",
    "husky": "8.0.3",
    "jest": "29.3.1",
    "pg": "8.12.0",
    "prettier": "2.8.1",
    "simple-sha256": "1.0.0",
    "sql-formatter": "2.3.3",
    "ts-jest": "29.1.3",
    "typescript": "5.4.5",
    "uuid": "3.3.2",
    "yesql": "3.2.2"
  },
  "config": {
    "commitizen": {
      "path": "./node_modules/cz-conventional-changelog"
    }
  }
}
