{"_id":"@aex/typeorm","_rev":"2-a4279ed7dabfd8a6094dfdcb91e17889","name":"@aex/typeorm","dist-tags":{"latest":"0.1.1"},"versions":{"0.1.0":{"name":"@aex/typeorm","version":"0.1.0","description":"typeorm","license":"MIT","repository":"","author":"","keywords":[],"main":"lib/index","types":"lib/index","scripts":{"clean":"rimraf lib && rimraf coverage","format":"prettier --write \"{src,__tests__}/**/*.ts\" --single-quote --trailing-comma es5","lint":"tslint --force --format verbose \"src/**/*.ts\"","prepublishOnly":"npm run build","prebuild":"npm run clean && npm run format && npm run lint && echo Using TypeScript && tsc --version","build":"tsc --pretty","test":"jest --coverage","coverage":"jest --coverage","watch":"npm run build -- --watch","watch:test":"jest --watch"},"dependencies":{"@aex/loader":"^0.2.1","reflect-metadata":"^0.1.13","typeorm":"^0.2.22"},"devDependencies":{"@types/jest":"^23.3.3","@types/node":"^10.11.4","coveralls":"^3.0.2","jest":"^23.6.0","prettier":"^1.14.3","rimraf":"^2.6.2","sqlite3":"^4.1.1","ts-jest":"^23.10.3","ts-node":"^7.0.1","tslint":"^5.11.0","tslint-config-prettier":"^1.15.0","typescript":"^3.1.1"},"engines":{"node":">=10.0.0"},"jest":{"preset":"ts-jest","testPathIgnorePatterns":["<rootDir>/__tests__/models/","<rootDir>/__tests__/store/"]},"gitHead":"f5b4681b66039f2ed2b6444b5ecdc765c7c396a1","_id":"@aex/typeorm@0.1.0","_nodeVersion":"10.16.0","_npmVersion":"6.10.2","dist":{"integrity":"sha512-5NtFpksCowRro/6hcBmu1DlGOq/OhEnfUzKhVnEjCSzb3+XLzO5/LaQLgSXtPAaUaQixI6ViYITM4qCKxaLwAQ==","shasum":"b7136181ab6cc59a4d6eb76c71c8a353f56bf93d","tarball":"https://registry.npmjs.org/@aex/typeorm/-/typeorm-0.1.0.tgz","fileCount":5,"unpackedSize":9369,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeEep9CRA9TVsSAnZWagAANGAP/j8ybIwBVn7BaJLXdgEQ\nY6uC5wjyj8YtokqylhZBPhASJGrvUcxkHIBGqmXD2RxpOYXcmhZqd+T0qQhi\nrJb1CwBVg65aZfjrV43zZs+uH17CnEDi8/+5gJ9pQLaaJOzxiKnKufaOb2Ac\nfejZdK8i5HSZMxj2lJZSUOL6Uca4+VGAz33QLmgq87tkTtEXe1BWrN2FXxKY\ny07jYDVSt62U5Gb3FO3NLbKrlGWBGTarCt3t30W5OZQz8S9aQoBTEgtLIdnb\nGgrGx9ObTRKax2cdp70360BFNkTt5AIOdkHWpfCqlZVWwoq4CwW5/O5qMEwI\nw7VVRdhnWDHmoVjlVUOdB8vkh68ntX7UL1aak+tIOeW/mcxzIzIgRh8g+5Y8\nxQMnUlJ6Xibte9+Pp9rxkMDfH8SqYI0pJbf3cFD+TkJwH4T/KkGXo9ISlv/2\ny9jxJdf/10NfOai3N+aJws22V8q4hrLZVWPxJ2xEFShAAj+/zJ7TO7n3oxmE\nN69SLr/elQQf/15wpHFKF/17cvW8CekVhkBI0mSfH0vCtjFoeAVwi2jsfgBf\nKnbAMa90HErGzBSzNik1xuh86QxeLg9vZicYCGXHUZ+/6kDUcw/Vjt+b9/0M\n+cXtGdqEPDAeDfDHVqRrs89Xg2CzW9N5G476LY5dGG/xa9pOR+7tEbiirzze\nyOmw\r\n=7uJ+\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCKXkiiQR+kZmMLj+Ws1tpbFacK7Ag/UO0mpJOZeahKXwIgblGwmnWoNO18BdhMVOxvVgKbfUvl82gYyI9BIyVytAk="}]},"maintainers":[{"name":"calidion","email":"calidion@gmail.com"}],"_npmUser":{"name":"calidion","email":"calidion@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/typeorm_0.1.0_1578232445383_0.9191114907163942"},"_hasShrinkwrap":false},"0.1.1":{"name":"@aex/typeorm","version":"0.1.1","description":"typeorm","license":"MIT","repository":"","author":"","keywords":[],"main":"lib/index","types":"lib/index","scripts":{"clean":"rimraf lib && rimraf coverage","format":"prettier --write \"{src,__tests__}/**/*.ts\" --trailing-comma es5","lint":"tslint --force --format verbose \"src/**/*.ts\"","prepublishOnly":"npm run build","prebuild":"npm run clean && npm run format && npm run lint && echo Using TypeScript && tsc --version","build":"tsc --pretty","test":"jest --coverage","coverage":"jest --coverage","watch":"npm run build -- --watch","watch:test":"jest --watch"},"dependencies":{"@aex/loader":"^0.2.1","reflect-metadata":"^0.1.13","typeorm":"^0.2.22"},"devDependencies":{"@aex/core":"^0.4.0","@types/jest":"^23.3.3","@types/node":"^10.11.4","coveralls":"^3.0.2","jest":"^23.6.0","prettier":"^1.14.3","rimraf":"^2.6.2","sqlite3":"^4.1.1","ts-jest":"^23.10.3","ts-node":"^7.0.1","tslint":"^5.11.0","tslint-config-prettier":"^1.15.0","typescript":"^3.1.1"},"engines":{"node":">=10.0.0"},"jest":{"preset":"ts-jest","testPathIgnorePatterns":["<rootDir>/__tests__/models/","<rootDir>/__tests__/util/","<rootDir>/__tests__/store/"]},"gitHead":"b59fcb4dd06b770dd43aa04bbae335c4e19aad46","_id":"@aex/typeorm@0.1.1","_nodeVersion":"10.15.3","_npmVersion":"6.13.6","dist":{"integrity":"sha512-ALciOZLqolOMmw0Aed8wiPVfVBAmf5svzZx8bwDRiCfIGO4MhkIaEVL6J1SgDeMcmgGLThu2yO5uBnaLa0cSDQ==","shasum":"ba9ccd470fd64f2699c79d5ff4a04d0e05ab7c88","tarball":"https://registry.npmjs.org/@aex/typeorm/-/typeorm-0.1.1.tgz","fileCount":5,"unpackedSize":9902,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJec3AfCRA9TVsSAnZWagAAU9MQAIM38oSr8By5aJnyU9bw\nvUPvJw5RO9rAdB8NHqfccMbPzAMbZM+dY8jQC6Orckzkx7vnLT+wcGCBliOO\nvJU887zB6L6nB7HwPZwFnF3v66m5DvqZlw7Zd++656sSFAmn3b2vKMLwNBmN\nyiWqLjMuMDApQ57oFyg5BD7M+okZJjsNq2bWaSUJscoyhuXlhkdREWWvC1SQ\nokj3dlX50ZV/gY/oWNFciCZzq0ZdfelO4PfQFjoI23C19OQSXpeA0nLHBWUL\n6gHsE7IJZmdwzWxoilXURnSKBR+Az+f0D+XZPnKhzyY3MDcmH+U7ELyDBvTa\nY04wvGKzBWkzBjnaxDKNsUvze5IAhuCSeN6BRUav4qJZRa2k6al7LFIi1vRJ\nhBWPE+msfyWQQpisJC3+sEVyxErzhMa2F/YxNx6UK0aeH958EyVETAtH2Q/j\nfNIx0xt6kPi5uNK1Qirs8SZL2nJh16gOxHtIyNmhmImO1w57pFMudX/zKPFb\nL0+cPLIWNKIuntza6kFfC1bDOm8ekj9I4QC5BNjovtuafvlHRNGlLnQoml99\nsfnESnb9iMb6moGUdQVJG2scvdGNP//OKzuXlu+eGRvjHaIlBQrvB9da2aae\nJaIBH8f93vKkoRx1PainIDtxEtcOoZ6ldf76l/8aYulW9rd5L9VSdgPpynG7\n8gQL\r\n=XNl0\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCpbF2kI8JblzUd5eYlYamxi/Ngwgxq9HvDlyxzfDagVQIhAKCNvMXHAJEEGUTqB9+WBgPUj+bhu6Gj112v1Vro0p6u"}]},"maintainers":[{"name":"calidion","email":"calidion@gmail.com"}],"_npmUser":{"name":"calidion","email":"calidion@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/typeorm_0.1.1_1584623647175_0.5479830959212819"},"_hasShrinkwrap":false}},"time":{"created":"2020-01-05T13:54:05.149Z","0.1.0":"2020-01-05T13:54:05.498Z","modified":"2022-04-04T11:49:59.499Z","0.1.1":"2020-03-19T13:14:07.309Z"},"maintainers":[{"name":"calidion","email":"calidion@gmail.com"}],"description":"typeorm","keywords":[],"license":"MIT","readme":"[![Build Status](https://travis-ci.org/aex-ts-node/orm-typeorm.svg?branch=master)](https://travis-ci.org/aex-ts-node/orm-typeorm.svg?branch=master)\n[![Coverage Status](https://coveralls.io/repos/github/aex-ts-node/orm-typeorm/badge.svg?branch=master)](https://coveralls.io/github/aex-ts-node/orm-typeorm?branch=master)\n[![MIT license](http://img.shields.io/badge/license-MIT-brightgreen.svg)](http://opensource.org/licenses/MIT)\n\n# @aex/typeorm\n\nAex middleware for typeorm.\n\n# Usage\n\n## Prepare models\n\n```sh\n# ./models\n├── Photo.ts\n└── User.ts\n```\nPhoto.ts: \n```ts\nimport {BaseEntity, Column, Entity, PrimaryGeneratedColumn} from \"typeorm\";\n\n@Entity()\nexport class Photo extends BaseEntity {\n\n    @PrimaryGeneratedColumn()\n    id: number;\n\n    @Column()\n    name: string;\n\n    @Column()\n    description: string;\n\n    @Column()\n    filename: string;\n\n    @Column()\n    views: number;\n\n    @Column()\n    isPublished: boolean;\n}\n```\n\nUser.ts\n```ts\nimport { BaseEntity, Column, Entity, PrimaryGeneratedColumn } from \"typeorm\";\n\n@Entity()\nexport class User extends BaseEntity {\n\n  @PrimaryGeneratedColumn()\n  id: number;\n\n  @Column()\n  firstName: string;\n\n  @Column()\n  lastName: string;\n\n  @Column()\n  age: number;\n\n}\n```\n\n## Create a Aex middleware for typeorm\n\n```ts\nimport { createTypeorm } from \"@aex/typeorm\";\nconst options = {\n  database: path.resolve(__dirname, \"./store/project.db\"),\n  synchronize: true,\n  type: \"sqlite\"\n};\nconst middleware = await createTypeorm(\"./models/\", options);\n```\n\n## Add the middleware to aex\n\n```ts\nconst aex = new Aex();\naex.use(middleware);\n```\n\n## Use typeorm in the subsequence middlewares\n\n```ts\naex.use(async (_req: any, res, scope: any) => {\n  const { connection, models } = scope.outer.typeorm;\n  const User = models.User;\n  const user = new User();\n  user.age = 100;\n  user.firstName = \"hello\";\n  user.lastName = \"world!\";\n  await user.save();\n  console.log(user.id);\n  await connection.close();\n  res.end(\"ok\");\n});\n```\n","readmeFilename":"README.md"}