{"_id":"@bnussman/graphql-fields-to-relations","name":"@bnussman/graphql-fields-to-relations","dist-tags":{"latest":"2.1.0"},"versions":{"2.1.0":{"name":"@bnussman/graphql-fields-to-relations","description":"Resolve your graphql fields to (MikroOrm) relations","version":"2.1.0","keywords":["graphql-fields","mikro-orm","graphql"],"repository":{"type":"git","url":"git+https://github.com/bnussman/graphql-fields-to-relations.git"},"license":"MIT","author":{"name":"Dries Croons"},"main":"lib/index.js","types":"lib/index.d.ts","scripts":{"build":"tsc","lint":"eslint src/**/*.ts --fix"},"dependencies":{"graphql":"^16.6.0"},"devDependencies":{"@mikro-orm/core":"^6.1.0","@typescript-eslint/eslint-plugin":"^5.42.1","@typescript-eslint/parser":"^5.42.1","eslint":"^8.27.0","eslint-config-prettier":"^8.5.0","eslint-plugin-prettier":"^4.2.1","prettier":"^2.7.1","typescript":"^4.8.4"},"_id":"@bnussman/graphql-fields-to-relations@2.1.0","gitHead":"9967ca04a43e92136f76457170b98d72a29791ed","bugs":{"url":"https://github.com/bnussman/graphql-fields-to-relations/issues"},"homepage":"https://github.com/bnussman/graphql-fields-to-relations#readme","_nodeVersion":"20.8.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-T3gxiq0VucTW74/ZOUAOiu2RS8siHF5VZpmKqUucmFS2/jyaHdNBTHEB28FP44bpi/kgIbRXvT2m3v67mHpvhw==","shasum":"8e85e408b9be0f6f5ed9471df5626eb7cc00bc64","tarball":"https://registry.npmjs.org/@bnussman/graphql-fields-to-relations/-/graphql-fields-to-relations-2.1.0.tgz","fileCount":7,"unpackedSize":9735,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICvOKZW6jdTEnA03OIIuYc0i7ocJ3EViNl0tUyEliaO7AiB/2kebypXhb/wguiC+NAZkWDIPwHiHpnad43zVsY9N9Q=="}]},"_npmUser":{"name":"bnussman","email":"bnussman@gmail.com"},"directories":{},"maintainers":[{"name":"bnussman","email":"bnussman@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/graphql-fields-to-relations_2.1.0_1707356092547_0.5276159863683831"},"_hasShrinkwrap":false}},"time":{"created":"2024-02-08T01:34:52.468Z","2.1.0":"2024-02-08T01:34:52.729Z","modified":"2024-02-08T01:34:53.120Z"},"maintainers":[{"name":"bnussman","email":"bnussman@gmail.com"}],"description":"Resolve your graphql fields to (MikroOrm) relations","homepage":"https://github.com/bnussman/graphql-fields-to-relations#readme","keywords":["graphql-fields","mikro-orm","graphql"],"repository":{"type":"git","url":"git+https://github.com/bnussman/graphql-fields-to-relations.git"},"author":{"name":"Dries Croons"},"bugs":{"url":"https://github.com/bnussman/graphql-fields-to-relations/issues"},"license":"MIT","readme":"# graphql-fields-to-relations\n\nFieldsToRelations is a graphql helper that gets your relation string from graphql's input fields.\nThis package was created for the [MikroOrm Graphql Example](https://github.com/driescroons/mikro-orm-graphql-example).\n\n[![NPM link](https://img.shields.io/npm/v/graphql-fields-to-relations)](https://www.npmjs.com/package/graphql-fields-to-relations)\n\n## 🔧 Usage\n\nInstall the package with yarn:\n\n```\nyarn add graphql-fields-to-relations\n```\n\nor with npm:\n\n```\nnpm install graphql-fields-to-relations\n```\n\nAnd use it like so:\n\n```\nconst fieldsToRelations = require('fieldsToRelations');\n\n// in your resolver\nconst relations = fieldsToRelations(info);\n```\n\n## 🔍 Example\n\nAs an example, take following query:\n\n```\nquery {\n  getBoards {\n    id name memberships {\n      id user {\n        email\n      }\n    }\n    lists {\n      items {\n        id name list {\n          id name\n          board {\n            id name\n            memberships {\n              id user {\n                id email\n              }\n            }\n          }\n        }\n      }\n    }\n  }\n}\n```\n\nThe helper will return the following relation string:\n\n```\n[\n  \"memberships\",\n  \"memberships.user\",\n  \"lists\",\n  \"lists.items\",\n  \"lists.items.list\",\n  \"lists.items.list.board\",\n  \"lists.items.list.board.memberships\",\n  \"lists.items.list.board.memberships.user\"\n]\n```\n","readmeFilename":"README.md"}