{"_id":"@makerx/graphql-core","_rev":"29-a8380df1b2eccee686453fbfd74bc2f8","name":"@makerx/graphql-core","dist-tags":{"beta":"3.0.0-beta.8","latest":"3.4.0"},"versions":{"1.0.0":{"name":"@makerx/graphql-core","version":"1.0.0","author":{"name":"MakerX"},"license":"MIT","_id":"@makerx/graphql-core@1.0.0","maintainers":[{"name":"makerx-engineering","email":"cto@makerx.com.au"},{"name":"patrick.dinh","email":"d.conghoang@gmail.com"},{"name":"plebsori","email":"wade@baglin.au"},{"name":"makerxuser","email":"matt@makerx.com.au"}],"homepage":"https://github.com/MakerXStudio/graphql-core#readme","bugs":{"url":"https://github.com/MakerXStudio/graphql-core/issues"},"dist":{"shasum":"b0719022c92d874ba5f90fd63cc12972e766e6a8","tarball":"https://registry.npmjs.org/@makerx/graphql-core/-/graphql-core-1.0.0.tgz","fileCount":42,"integrity":"sha512-GL73Q58l+FnrKSV1yxBxEhxe42yleizBRhyodwJ5oekh3t/t7frM+7m8STGd/+vjbFAt36hu5+gHhvct+LHn1Q==","signatures":[{"sig":"MEYCIQDxZr09hVIYkda6hPbr5q4ofx2crPiD2/Bqci+2GO3gDAIhAJFN9T7VXhHDQkkAR4Ry88I6gfoxqtYwH9fxCKIXjAAN","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":62040},"main":"index.js","types":"index.d.ts","engines":{"node":">=16.0"},"gitHead":"533a06abbf43cd85c62c030426180ca728edfe53","private":false,"_npmUser":{"name":"makerx-engineering","email":"cto@makerx.com.au"},"overrides":{"semver":"^7.5.3"},"repository":{"url":"git+https://github.com/MakerXStudio/graphql-core.git","type":"git"},"_npmVersion":"8.19.4","description":"A set of core GraphQL utilities that MakerX uses to build GraphQL APIs","directories":{},"_nodeVersion":"16.20.1","dependencies":{"lodash.pick":"^4.4.0","lodash.omitby":"^4.6.0","@makerx/node-common":"^1.0.3"},"_hasShrinkwrap":false,"peerDependencies":{"ws":"*","express":"*","graphql":"*","graphql-ws":"*"},"peerDependenciesMeta":{"ws":{"optional":true},"graphql-ws":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/graphql-core_1.0.0_1688016733257_0.42668939926683747","host":"s3://npm-registry-packages"}},"1.1.0":{"name":"@makerx/graphql-core","version":"1.1.0","author":{"name":"MakerX"},"license":"MIT","_id":"@makerx/graphql-core@1.1.0","maintainers":[{"name":"makerx-engineering","email":"cto@makerx.com.au"},{"name":"patrick.dinh","email":"d.conghoang@gmail.com"},{"name":"plebsori","email":"wade@baglin.au"},{"name":"makerxuser","email":"matt@makerx.com.au"}],"homepage":"https://github.com/MakerXStudio/graphql-core#readme","bugs":{"url":"https://github.com/MakerXStudio/graphql-core/issues"},"dist":{"shasum":"bbf439dce1f3c2a2636071b74f9803f11ac7e38c","tarball":"https://registry.npmjs.org/@makerx/graphql-core/-/graphql-core-1.1.0.tgz","fileCount":54,"integrity":"sha512-TUejuDVj2S6Rg1n4T+SB86TaiCokTxeoXr+MtULIKXLwJ8AFeKJ7q3Y3VVLtja04OFENelu0LH+DqiSfzkdKsg==","signatures":[{"sig":"MEUCIFlIgtls2J9td6VYsfbWvHxX5yNqHWRw3rvgRIr7+2d5AiEAhXmOoyVz2XVoQy6u9twZTVtNphHVnEfNZYPHcSOPRvg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":72778},"main":"index.js","types":"index.d.ts","engines":{"node":">=16.0"},"gitHead":"51d2dd2a37bef67f2f6b366a76b84155bb33ca69","private":false,"_npmUser":{"name":"makerx-engineering","email":"cto@makerx.com.au"},"overrides":{"@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"repository":{"url":"git+https://github.com/MakerXStudio/graphql-core.git","type":"git"},"_npmVersion":"8.19.4","description":"A set of core GraphQL utilities that MakerX uses to build GraphQL APIs","directories":{},"_nodeVersion":"16.20.1","dependencies":{"lodash.pick":"^4.4.0","lodash.omitby":"^4.6.0","@makerx/node-common":"^1.0.3"},"_hasShrinkwrap":false,"peerDependencies":{"ws":"*","express":"*","graphql":"*","graphql-ws":"*","graphql-shield":"*"},"peerDependenciesMeta":{"ws":{"optional":true},"graphql-ws":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/graphql-core_1.1.0_1689623460610_0.5402076461915835","host":"s3://npm-registry-packages"}},"1.2.0":{"name":"@makerx/graphql-core","version":"1.2.0","author":{"name":"MakerX"},"license":"MIT","_id":"@makerx/graphql-core@1.2.0","maintainers":[{"name":"makerx-engineering","email":"cto@makerx.com.au"},{"name":"patrick.dinh","email":"d.conghoang@gmail.com"},{"name":"plebsori","email":"wade@baglin.au"},{"name":"makerxuser","email":"matt@makerx.com.au"}],"homepage":"https://github.com/MakerXStudio/graphql-core#readme","bugs":{"url":"https://github.com/MakerXStudio/graphql-core/issues"},"dist":{"shasum":"568a30117f09e60899c48fdd4a877c113a395a5a","tarball":"https://registry.npmjs.org/@makerx/graphql-core/-/graphql-core-1.2.0.tgz","fileCount":54,"integrity":"sha512-fwfyWKh+kgeRUnK35UostaBdTonVWwABUZVr6B0HxA446oWUHzSP/QwoWfeVqoRuYQj5qrGLgRI5TT/ApXfYWQ==","signatures":[{"sig":"MEQCIDlK62Vna1QrgO9qIYdn1E3zl4oiDdBHM/u58e2NXEdnAiAEtcMnilBO3qMGduo2O3xMgA8F51ugwwmWZ8RopwJvow==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":73466},"main":"index.js","types":"index.d.ts","engines":{"node":">=16.0"},"gitHead":"9237f8d15bffe1379951b375c549288faf5d9b6f","private":false,"_npmUser":{"name":"makerx-engineering","email":"cto@makerx.com.au"},"overrides":{"@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"repository":{"url":"git+https://github.com/MakerXStudio/graphql-core.git","type":"git"},"_npmVersion":"8.19.4","description":"A set of core GraphQL utilities that MakerX uses to build GraphQL APIs","directories":{},"_nodeVersion":"16.20.1","dependencies":{"lodash.pick":"^4.4.0","lodash.omitby":"^4.6.0","@makerx/node-common":"^1.0.3"},"_hasShrinkwrap":false,"peerDependencies":{"ws":"*","express":"*","graphql":"*","graphql-ws":"*","graphql-shield":"*"},"peerDependenciesMeta":{"ws":{"optional":true},"graphql-ws":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/graphql-core_1.2.0_1689630801677_0.926438168217651","host":"s3://npm-registry-packages"}},"1.2.1":{"name":"@makerx/graphql-core","version":"1.2.1","author":{"name":"MakerX"},"license":"MIT","_id":"@makerx/graphql-core@1.2.1","maintainers":[{"name":"makerx-engineering","email":"cto@makerx.com.au"},{"name":"patrick.dinh","email":"d.conghoang@gmail.com"},{"name":"plebsori","email":"wade@baglin.au"},{"name":"makerxuser","email":"matt@makerx.com.au"}],"homepage":"https://github.com/MakerXStudio/graphql-core#readme","bugs":{"url":"https://github.com/MakerXStudio/graphql-core/issues"},"dist":{"shasum":"e08eaaf914877b6d1105e8739955628463fd7d2b","tarball":"https://registry.npmjs.org/@makerx/graphql-core/-/graphql-core-1.2.1.tgz","fileCount":54,"integrity":"sha512-BsYXcWuvtedTJMkmf+LP+3IvP6cMjU6QgDjb4RJDo8tq8IhZ1pGpVsGaLXq63d8q1p51ItbJ2dnmHSmgABZPCw==","signatures":[{"sig":"MEQCIAMB9QYltsOWJ+1T/ojD6t4LA+pIS8A5hfLRJ64XKufmAiB6t9zbqi8ArRWBNPDebHz0epUEq7WQVHix4hRlc12JTg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":73460},"main":"index.js","types":"index.d.ts","engines":{"node":">=16.0"},"gitHead":"393f3b5ed6d488453216626070c613b88cdea5ec","private":false,"_npmUser":{"name":"makerx-engineering","email":"cto@makerx.com.au"},"overrides":{"@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"repository":{"url":"git+https://github.com/MakerXStudio/graphql-core.git","type":"git"},"_npmVersion":"8.19.4","description":"A set of core GraphQL utilities that MakerX uses to build GraphQL APIs","directories":{},"_nodeVersion":"16.20.1","dependencies":{"lodash.pick":"^4.4.0","lodash.omitby":"^4.6.0","@makerx/node-common":"^1.0.3"},"_hasShrinkwrap":false,"peerDependencies":{"ws":"*","express":"*","graphql":"*","graphql-ws":"*","graphql-shield":"*"},"peerDependenciesMeta":{"ws":{"optional":true},"graphql-ws":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/graphql-core_1.2.1_1689633182314_0.2566994991121563","host":"s3://npm-registry-packages"}},"1.3.0":{"name":"@makerx/graphql-core","version":"1.3.0","author":{"name":"MakerX"},"license":"MIT","_id":"@makerx/graphql-core@1.3.0","maintainers":[{"name":"makerx-engineering","email":"cto@makerx.com.au"},{"name":"patrick.dinh","email":"d.conghoang@gmail.com"},{"name":"plebsori","email":"wade@baglin.au"},{"name":"makerxuser","email":"matt@makerx.com.au"}],"homepage":"https://github.com/MakerXStudio/graphql-core#readme","bugs":{"url":"https://github.com/MakerXStudio/graphql-core/issues"},"dist":{"shasum":"aa8ac3c3ed6841ddc94078e96d4ddff81998322d","tarball":"https://registry.npmjs.org/@makerx/graphql-core/-/graphql-core-1.3.0.tgz","fileCount":54,"integrity":"sha512-pWpcwAN9KWv6818icYpjgsKKuRVcCv4UZo9ABpgaV/L0wn/3O3uo2+PNu2ePHRevx6McLVy6YHEN7AudQzTfnQ==","signatures":[{"sig":"MEYCIQD7H5l6B4p5G/k5gUqqWfJ049V6tMD3n7cK7ZvUDVfyJgIhAOXxU1XsNPaGRCtki49I/AQuVddW1YmYAmGj8MsTeJnD","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":73852},"main":"index.js","types":"index.d.ts","engines":{"node":">=16.0"},"gitHead":"6ad25db4106123e787bd4ff3bfea92ada085a2e1","private":false,"_npmUser":{"name":"makerx-engineering","email":"cto@makerx.com.au"},"overrides":{"@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"repository":{"url":"git+https://github.com/MakerXStudio/graphql-core.git","type":"git"},"_npmVersion":"8.19.4","description":"A set of core GraphQL utilities that MakerX uses to build GraphQL APIs","directories":{},"_nodeVersion":"16.20.2","dependencies":{"lodash.pick":"^4.4.0","lodash.omitby":"^4.6.0","@makerx/node-common":"^1.0.3"},"_hasShrinkwrap":false,"peerDependencies":{"ws":"*","express":"*","graphql":"*","graphql-ws":"*","graphql-shield":"*"},"peerDependenciesMeta":{"ws":{"optional":true},"graphql-ws":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/graphql-core_1.3.0_1694081390581_0.6192312924339858","host":"s3://npm-registry-packages"}},"1.4.0":{"name":"@makerx/graphql-core","version":"1.4.0","author":{"name":"MakerX"},"license":"MIT","_id":"@makerx/graphql-core@1.4.0","maintainers":[{"name":"makerx-engineering","email":"cto@makerx.com.au"},{"name":"patrick.dinh","email":"d.conghoang@gmail.com"},{"name":"plebsori","email":"wade@baglin.au"},{"name":"makerxuser","email":"matt@makerx.com.au"}],"homepage":"https://github.com/MakerXStudio/graphql-core#readme","bugs":{"url":"https://github.com/MakerXStudio/graphql-core/issues"},"dist":{"shasum":"9161d12d6ba4c1c12887912a09ff6641edea8bdd","tarball":"https://registry.npmjs.org/@makerx/graphql-core/-/graphql-core-1.4.0.tgz","fileCount":54,"integrity":"sha512-EoQzkfjlbHzqAQuds7i0ZI5NZHhUGmH4kbEq2ErKFTHZZf/UAUadFIxTe6snVVmxHaiPZ3J5tzJ26hv02qA3+g==","signatures":[{"sig":"MEUCIQCZEDYX4oF7XCKbNuRU8EFHQkd4odMIIveiOe2XtZUiiQIgYkfYz2IqCnOI1uv9YCGqMZbePhGelEJrBCUymTRoHMY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":74065},"main":"index.js","types":"index.d.ts","engines":{"node":">=16.0"},"gitHead":"7ccf4170ad421bdfc36918df25466af7b060fc71","private":false,"_npmUser":{"name":"makerx-engineering","email":"cto@makerx.com.au"},"overrides":{"@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"repository":{"url":"git+https://github.com/MakerXStudio/graphql-core.git","type":"git"},"_npmVersion":"8.19.4","description":"A set of core GraphQL utilities that MakerX uses to build GraphQL APIs","directories":{},"_nodeVersion":"16.20.2","dependencies":{"lodash.pick":"^4.4.0","lodash.omitby":"^4.6.0","@makerx/node-common":"^1.0.3"},"_hasShrinkwrap":false,"peerDependencies":{"ws":"*","express":"*","graphql":"*","graphql-ws":"*","@apollo/client":"*","graphql-shield":"*"},"peerDependenciesMeta":{"ws":{"optional":true},"graphql-ws":{"optional":true},"@apollo/client":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/graphql-core_1.4.0_1694163540285_0.1670910257304672","host":"s3://npm-registry-packages"}},"1.5.0":{"name":"@makerx/graphql-core","version":"1.5.0","author":{"name":"MakerX"},"license":"MIT","_id":"@makerx/graphql-core@1.5.0","maintainers":[{"name":"makerx-engineering","email":"cto@makerx.com.au"},{"name":"patrick.dinh","email":"d.conghoang@gmail.com"},{"name":"plebsori","email":"wade@baglin.au"},{"name":"makerxuser","email":"matt@makerx.com.au"}],"homepage":"https://github.com/MakerXStudio/graphql-core#readme","bugs":{"url":"https://github.com/MakerXStudio/graphql-core/issues"},"dist":{"shasum":"31fa98f33449d516d18e7d389b439cd15864067f","tarball":"https://registry.npmjs.org/@makerx/graphql-core/-/graphql-core-1.5.0.tgz","fileCount":54,"integrity":"sha512-gsYpwjD8oJXa+luBbZbOiwBM0wgChQqQ79/MMK3bc3VqYDnDB0xFcihBzyFWiObq+Iu52GTzsFAhRSN/62ZF1w==","signatures":[{"sig":"MEYCIQDCyLMOHPMOlD1zpCXyIHxRz3CSP+yFxy+3IsFyiGAIggIhALzy1m7iaccPsL8ersAWPXgY2K4yivtxp5sqHN3jG5Qo","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":75435},"main":"index.js","types":"index.d.ts","engines":{"node":">=16.0"},"gitHead":"b07a40b889c030ffae8746e04be82b8c0eb74814","private":false,"_npmUser":{"name":"makerx-engineering","email":"cto@makerx.com.au"},"overrides":{"@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"repository":{"url":"git+https://github.com/MakerXStudio/graphql-core.git","type":"git"},"_npmVersion":"9.8.1","description":"A set of core GraphQL utilities that MakerX uses to build GraphQL APIs","directories":{},"_nodeVersion":"18.18.0","dependencies":{"lodash.pick":"^4.4.0","lodash.omitby":"^4.6.0","@makerx/node-common":"^1.2.0"},"_hasShrinkwrap":false,"peerDependencies":{"ws":"*","express":"*","graphql":"*","graphql-ws":"*","@apollo/client":"*","graphql-shield":"*"},"peerDependenciesMeta":{"ws":{"optional":true},"graphql-ws":{"optional":true},"@apollo/client":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/graphql-core_1.5.0_1696565642553_0.046288626845164105","host":"s3://npm-registry-packages"}},"2.0.0":{"name":"@makerx/graphql-core","version":"2.0.0","author":{"name":"MakerX"},"license":"MIT","_id":"@makerx/graphql-core@2.0.0","maintainers":[{"name":"makerx-engineering","email":"cto@makerx.com.au"},{"name":"patrick.dinh","email":"d.conghoang@gmail.com"},{"name":"plebsori","email":"wade@baglin.au"},{"name":"makerxuser","email":"matt@makerx.com.au"}],"homepage":"https://github.com/MakerXStudio/graphql-core#readme","bugs":{"url":"https://github.com/MakerXStudio/graphql-core/issues"},"dist":{"shasum":"0afcf156d6085c5a758822d303da8a31254d790a","tarball":"https://registry.npmjs.org/@makerx/graphql-core/-/graphql-core-2.0.0.tgz","fileCount":54,"integrity":"sha512-SvTxG1FqreM2U4ztW3WHR7RclVAH9Ccjgy0L+rWMvcclrngdLFemkuIhcQYN7jDccCt7b97ZGDR7XY9JODNfIQ==","signatures":[{"sig":"MEQCIHzX62GOK/h7o+pI5lgJ7OHYYTFSKdS+sgMhzCkL1RzwAiBmIbMx7XmY62Nbgdab+XCHBUCKjNZLL+bhLRbpcwQVQg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":75688},"main":"index.js","types":"index.d.ts","engines":{"node":">=16.0"},"gitHead":"67c7acf11a34f2c072efd21f3d952864c3799609","private":false,"_npmUser":{"name":"makerx-engineering","email":"cto@makerx.com.au"},"overrides":{"@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"repository":{"url":"git+https://github.com/MakerXStudio/graphql-core.git","type":"git"},"_npmVersion":"9.8.1","description":"A set of core GraphQL utilities that MakerX uses to build GraphQL APIs","directories":{},"_nodeVersion":"18.18.0","dependencies":{"lodash.pick":"^4.4.0","lodash.omitby":"^4.6.0","@makerx/node-common":"^1.2.0"},"_hasShrinkwrap":false,"peerDependencies":{"ws":"*","express":"*","graphql":"*","graphql-ws":"*","@apollo/client":"*","graphql-shield":"*"},"peerDependenciesMeta":{"ws":{"optional":true},"graphql-ws":{"optional":true},"@apollo/client":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/graphql-core_2.0.0_1697571851475_0.3444431778198678","host":"s3://npm-registry-packages"}},"2.1.0":{"name":"@makerx/graphql-core","version":"2.1.0","author":{"name":"MakerX"},"license":"MIT","_id":"@makerx/graphql-core@2.1.0","maintainers":[{"name":"makerx-engineering","email":"cto@makerx.com.au"},{"name":"patrick.dinh","email":"d.conghoang@gmail.com"},{"name":"plebsori","email":"wade@baglin.au"},{"name":"makerxuser","email":"matt@makerx.com.au"}],"homepage":"https://github.com/MakerXStudio/graphql-core#readme","bugs":{"url":"https://github.com/MakerXStudio/graphql-core/issues"},"dist":{"shasum":"a9fd5f6b584745f397205d06863de6460e80c8b8","tarball":"https://registry.npmjs.org/@makerx/graphql-core/-/graphql-core-2.1.0.tgz","fileCount":54,"integrity":"sha512-nfOt6RW1gq4LVo3r40Sz19BDmSWF8S3d1kph8lSrGVF24JuKZyxfai6WzkyCCQaXwD+K9NTBdPzPo3ifoiyohw==","signatures":[{"sig":"MEUCIQCNwxTLj0GkllHCWT8yJyR4/DCfptvxchCQ/9yxSQOx+AIgBf+gYKfkw8bIk9Z4yRHp6C+q83LKGKmgMLqW1HV/VgY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":78788},"main":"index.js","types":"index.d.ts","engines":{"node":">=16.0"},"gitHead":"d969921d53f2a6ac5514e2eb3d7d9a974199445f","private":false,"_npmUser":{"name":"makerx-engineering","email":"cto@makerx.com.au"},"overrides":{"@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"repository":{"url":"git+https://github.com/MakerXStudio/graphql-core.git","type":"git"},"_npmVersion":"9.8.1","description":"A set of core GraphQL utilities that MakerX uses to build GraphQL APIs","directories":{},"_nodeVersion":"18.18.2","dependencies":{"lodash.pick":"^4.4.0","lodash.omitby":"^4.6.0","@makerx/node-common":"^1.2.0"},"_hasShrinkwrap":false,"peerDependencies":{"ws":"*","express":"*","graphql":"*","graphql-ws":"*","@apollo/client":"*","graphql-shield":"*"},"peerDependenciesMeta":{"ws":{"optional":true},"graphql-ws":{"optional":true},"@apollo/client":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/graphql-core_2.1.0_1697767678586_0.3650092267993166","host":"s3://npm-registry-packages"}},"2.2.0":{"name":"@makerx/graphql-core","version":"2.2.0","author":{"name":"MakerX"},"license":"MIT","_id":"@makerx/graphql-core@2.2.0","maintainers":[{"name":"makerx-engineering","email":"cto@makerx.com.au"},{"name":"patrick.dinh","email":"d.conghoang@gmail.com"},{"name":"plebsori","email":"wade@baglin.au"},{"name":"makerxuser","email":"matt@makerx.com.au"}],"homepage":"https://github.com/MakerXStudio/graphql-core#readme","bugs":{"url":"https://github.com/MakerXStudio/graphql-core/issues"},"dist":{"shasum":"b01268bf5214037e341f259065b9b263a9fe3136","tarball":"https://registry.npmjs.org/@makerx/graphql-core/-/graphql-core-2.2.0.tgz","fileCount":35,"integrity":"sha512-alv9FW0y4mxdJxkCSRLb/Xejioi6ZqJfQdBmwhevkbW2Nn9GuzlQGABBbQHG/Sxah+EouxCpGgXNUKj3IYSGdg==","signatures":[{"sig":"MEUCIQDHlcQtDz6W+nWKXdpmUgS5TAbjCNwgYOgu/vvebQ1jBAIgG9Wplio1ijE4GvcpsYg3ycJnVDI0MHCc0pzIJesMrZk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":63621},"main":"index.js","type":"module","types":"index.d.ts","module":"index.mjs","engines":{"node":">=18.0"},"exports":{".":{"types":"./index.d.ts","import":"./index.mjs","module":"./index.mjs","default":"./index.mjs","require":"./index.cjs"},"./package.json":"./package.json"},"gitHead":"0a2faafc99aea6edb3b0cfce9d0b6fab06a666c0","private":false,"_npmUser":{"name":"makerx-engineering","email":"cto@makerx.com.au"},"repository":{"url":"git+https://github.com/MakerXStudio/graphql-core.git","type":"git"},"_npmVersion":"10.2.3","description":"A set of core GraphQL utilities that MakerX uses to build GraphQL APIs","directories":{},"_nodeVersion":"18.19.0","dependencies":{"@makerx/node-common":"^1.4.0"},"_hasShrinkwrap":false,"peerDependencies":{"ws":"*","lodash":"*","express":"*","graphql":"*","graphql-ws":"*","@apollo/client":"*","graphql-shield":"*"},"peerDependenciesMeta":{"ws":{"optional":true},"graphql-ws":{"optional":true},"@apollo/client":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/graphql-core_2.2.0_1706607382660_0.5327260747546527","host":"s3://npm-registry-packages"}},"2.2.1":{"name":"@makerx/graphql-core","version":"2.2.1","author":{"name":"MakerX"},"license":"MIT","_id":"@makerx/graphql-core@2.2.1","maintainers":[{"name":"makerx-engineering","email":"cto@makerx.com.au"},{"name":"patrick.dinh","email":"d.conghoang@gmail.com"},{"name":"plebsori","email":"wade@baglin.au"},{"name":"makerxuser","email":"matt@makerx.com.au"}],"homepage":"https://github.com/MakerXStudio/graphql-core#readme","bugs":{"url":"https://github.com/MakerXStudio/graphql-core/issues"},"dist":{"shasum":"b2bb0cf85d33e74f511e06764ff3741980e87d43","tarball":"https://registry.npmjs.org/@makerx/graphql-core/-/graphql-core-2.2.1.tgz","fileCount":63,"integrity":"sha512-Pc/M+gCoCPcVSHxXQ3g7VvTnYTy5o+CFzERDv0ROIcXJhO2LGiCgI8+N/w4fvJBrs7bSrZ3uystoQFKpLMSkGw==","signatures":[{"sig":"MEUCIG+3CkVl7KjPhP4l9u+a2sSCnbAx+0otGYHQcsZo8mazAiEA7MTSteVaxnoJ9dWQR9QL1DSX4WSLlQtDYwtkzvD73LM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":152885},"main":"./index.js","type":"module","types":"./index.d.ts","module":"./index.mjs","engines":{"node":">=20.0"},"exports":{".":{"types":"./index.d.ts","import":"./index.mjs","require":"./index.js"},"./testing":{"types":"./testing.d.ts","import":"./testing.mjs","require":"./testing.js"},"./subscriptions":{"types":"./subscriptions/index.d.ts","import":"./subscriptions/index.mjs","require":"./subscriptions/index.js"}},"gitHead":"713a885f847234296a1d87347b6b843f199c4a76","private":false,"scripts":{},"_npmUser":{"name":"makerx-engineering","email":"cto@makerx.com.au"},"repository":{"url":"git+https://github.com/MakerXStudio/graphql-core.git","type":"git"},"_npmVersion":"10.2.4","description":"A set of core GraphQL utilities that MakerX uses to build GraphQL APIs","directories":{},"_nodeVersion":"20.11.1","dependencies":{"@makerx/node-common":"^1.4.0"},"_hasShrinkwrap":false,"peerDependencies":{"ws":"*","lodash":"*","express":"*","graphql":"*","graphql-ws":"*","@apollo/client":"*","graphql-shield":"*"},"peerDependenciesMeta":{"ws":{"optional":true},"graphql-ws":{"optional":true},"@apollo/client":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/graphql-core_2.2.1_1708470768500_0.4110639066342454","host":"s3://npm-registry-packages"}},"2.2.2":{"name":"@makerx/graphql-core","version":"2.2.2","author":{"name":"MakerX"},"license":"MIT","_id":"@makerx/graphql-core@2.2.2","maintainers":[{"name":"makerx-engineering","email":"cto@makerx.com.au"},{"name":"patrick.dinh","email":"d.conghoang@gmail.com"},{"name":"plebsori","email":"wade@baglin.au"},{"name":"makerxuser","email":"matt@makerx.com.au"}],"homepage":"https://github.com/MakerXStudio/graphql-core#readme","bugs":{"url":"https://github.com/MakerXStudio/graphql-core/issues"},"dist":{"shasum":"b05917e717d16df462d587dc9dc29ca895e44dac","tarball":"https://registry.npmjs.org/@makerx/graphql-core/-/graphql-core-2.2.2.tgz","fileCount":63,"integrity":"sha512-S9tEBcv1EgYCGIxYnhpVwELH6RE75MSYzuVoAbh/a3rXSTDYo7IqSFL94fYjGS+aepVtlQEqskQVXXQatW5/Og==","signatures":[{"sig":"MEUCIGLhczeTZGnOo2deTzJzOWS2IoatW+RD/nqEzjlk0sjFAiEAoSutHR09LJ9rhiEUnJvIdx7+iXxlC81W8bWldGLKY1w=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":152887},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./index.mjs","engines":{"node":">=20.0"},"exports":{".":{"types":"./index.d.ts","import":"./index.mjs","require":"./index.js"},"./testing":{"types":"./testing.d.ts","import":"./testing.mjs","require":"./testing.js"},"./subscriptions":{"types":"./subscriptions/index.d.ts","import":"./subscriptions/index.mjs","require":"./subscriptions/index.js"}},"gitHead":"532c8d9559fd359aab524287bcc980247858c94a","private":false,"scripts":{},"_npmUser":{"name":"makerx-engineering","email":"cto@makerx.com.au"},"repository":{"url":"git+https://github.com/MakerXStudio/graphql-core.git","type":"git"},"_npmVersion":"10.2.4","description":"A set of core GraphQL utilities that MakerX uses to build GraphQL APIs","directories":{},"_nodeVersion":"20.11.0","dependencies":{"@makerx/node-common":"^1.4.0"},"_hasShrinkwrap":false,"peerDependencies":{"ws":"*","lodash":"*","express":"*","graphql":"*","graphql-ws":"*","@apollo/client":"*","graphql-shield":"*"},"peerDependenciesMeta":{"ws":{"optional":true},"graphql-ws":{"optional":true},"@apollo/client":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/graphql-core_2.2.2_1708473957489_0.08693130815395866","host":"s3://npm-registry-packages"}},"2.3.0":{"name":"@makerx/graphql-core","version":"2.3.0","author":{"name":"MakerX"},"license":"MIT","_id":"@makerx/graphql-core@2.3.0","maintainers":[{"name":"patrick.dinh","email":"d.conghoang@gmail.com"},{"name":"makerx-engineering","email":"cto@makerx.com.au"},{"name":"makerxuser","email":"matt@makerx.com.au"},{"name":"plebsori","email":"wade@baglin.au"}],"homepage":"https://github.com/MakerXStudio/graphql-core#readme","bugs":{"url":"https://github.com/MakerXStudio/graphql-core/issues"},"dist":{"shasum":"013489d9da52a7ccccc70cf8c61c5f3960a4fd0d","tarball":"https://registry.npmjs.org/@makerx/graphql-core/-/graphql-core-2.3.0.tgz","fileCount":63,"integrity":"sha512-nmjUHkqWZbbJeYKRyY938UwU0Hdc/4Vf5AOTxO5w03ry1S+k0jlbJ+2UFUH51+CToE49863wTOoy6QpL2lwfRg==","signatures":[{"sig":"MEYCIQCEPTh8uFk9KEsBGeN3WCJ6Sn3d4gjrVqiiWSeEJtMtPAIhAITLOHIrKTyoniRFEx1BJAuco0YCc3KUU163+PSXdpee","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":153846},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./index.mjs","engines":{"node":">=20.0"},"exports":{".":{"types":"./index.d.ts","import":"./index.mjs","require":"./index.js"},"./testing":{"types":"./testing.d.ts","import":"./testing.mjs","require":"./testing.js"},"./subscriptions":{"types":"./subscriptions/index.d.ts","import":"./subscriptions/index.mjs","require":"./subscriptions/index.js"}},"gitHead":"cbc222c53cc7e506cad272af6193053dd7d23a30","private":false,"scripts":{},"_npmUser":{"name":"makerx-engineering","email":"cto@makerx.com.au"},"repository":{"url":"git+https://github.com/MakerXStudio/graphql-core.git","type":"git"},"_npmVersion":"10.8.2","description":"A set of core GraphQL utilities that MakerX uses to build GraphQL APIs","directories":{},"_nodeVersion":"20.19.5","dependencies":{"@makerx/node-common":"^1.5.0"},"_hasShrinkwrap":false,"peerDependencies":{"ws":"*","lodash":"*","express":"*","graphql":"*","graphql-ws":"*","@apollo/client":"*","graphql-shield":"*"},"peerDependenciesMeta":{"ws":{"optional":true},"graphql-ws":{"optional":true},"@apollo/client":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/graphql-core_2.3.0_1758589173991_0.6561487636592493","host":"s3://npm-registry-packages-npm-production"}},"3.0.0-beta.0":{"name":"@makerx/graphql-core","version":"3.0.0-beta.0","author":{"name":"MakerX"},"license":"MIT","_id":"@makerx/graphql-core@3.0.0-beta.0","maintainers":[{"name":"patrick.dinh","email":"d.conghoang@gmail.com"},{"name":"makerx-engineering","email":"cto@makerx.com.au"},{"name":"makerxuser","email":"matt@makerx.com.au"},{"name":"plebsori","email":"wade@baglin.au"},{"name":"vatsalyagoel","email":"vatsalyagoel@gmail.com"}],"homepage":"https://github.com/MakerXStudio/graphql-core#readme","bugs":{"url":"https://github.com/MakerXStudio/graphql-core/issues"},"dist":{"shasum":"b9df4355eda09a4342aab5e192a42d4029e8608b","tarball":"https://registry.npmjs.org/@makerx/graphql-core/-/graphql-core-3.0.0-beta.0.tgz","fileCount":63,"integrity":"sha512-Q933yuvTgpEu9/9UI/YFcMBtKLpy5g+VthKSdv1UTe7bBeYQfAPvG4ME/wTjt25AikKSIifMi5cbjzJgROPFTA==","signatures":[{"sig":"MEQCIA3MXK0MXhW6eFMUPHrQjjXXQw9Sv1lPkD2zL4oHlPccAiAotj1b4XNj0ZOuwcdBl8RyVFkDJWxjDRuRw7m1Zui8Kg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@makerx%2fgraphql-core@3.0.0-beta.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":165840},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./index.mjs","engines":{"node":">=20.0"},"exports":{".":{"types":"./index.d.ts","import":"./index.mjs","require":"./index.js"},"./shield":{"types":"./shield.d.ts","import":"./shield.mjs","require":"./shield.js"},"./subscriptions":{"types":"./subscriptions/index.d.ts","import":"./subscriptions/index.mjs","require":"./subscriptions/index.js"}},"gitHead":"d792c6ef345a1e6dd8154aff560b2828680f0297","private":false,"scripts":{},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:0ef11048-27de-4347-87ae-58e5b882e8a8"}},"repository":{"url":"git+https://github.com/MakerXStudio/graphql-core.git","type":"git"},"_npmVersion":"11.11.0","description":"A set of core GraphQL utilities that MakerX uses to build GraphQL APIs","directories":{},"_nodeVersion":"24.14.1","dependencies":{"@makerx/node-common":"^1.5.0"},"_hasShrinkwrap":false,"readmeFilename":"README.md","peerDependencies":{"ws":"*","express":"*","graphql":"*","es-toolkit":">=1","graphql-ws":"*","graphql-shield":"*"},"peerDependenciesMeta":{"ws":{"optional":true},"graphql-ws":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/graphql-core_3.0.0-beta.0_1776763447766_0.10652720366706525","host":"s3://npm-registry-packages-npm-production"}},"3.0.0-beta.1":{"name":"@makerx/graphql-core","version":"3.0.0-beta.1","author":{"name":"MakerX"},"license":"MIT","_id":"@makerx/graphql-core@3.0.0-beta.1","maintainers":[{"name":"patrick.dinh","email":"d.conghoang@gmail.com"},{"name":"makerx-engineering","email":"cto@makerx.com.au"},{"name":"makerxuser","email":"matt@makerx.com.au"},{"name":"plebsori","email":"wade@baglin.au"},{"name":"vatsalyagoel","email":"vatsalyagoel@gmail.com"}],"homepage":"https://github.com/MakerXStudio/graphql-core#readme","bugs":{"url":"https://github.com/MakerXStudio/graphql-core/issues"},"dist":{"shasum":"5b5151f771072c69c2497cd628e85d6bd643ceec","tarball":"https://registry.npmjs.org/@makerx/graphql-core/-/graphql-core-3.0.0-beta.1.tgz","fileCount":63,"integrity":"sha512-//0iM2au/XZWON9IGN3UZAV5m8rlgKQ9w5NuAqMEcv5S3kPA4u0LzxBYJP+40oS61kk7NicIMT5l05Y3k4DFIA==","signatures":[{"sig":"MEYCIQD4pQFM+/X/VvUTxLunFUOd6DyBl02ftedMparg7sZs+AIhAIGeR2UN5ST1cm2fXgMVxYRipgwLQyhaWxQf/8wHiNEy","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@makerx%2fgraphql-core@3.0.0-beta.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":170356},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./index.mjs","engines":{"node":">=20.0"},"exports":{".":{"types":"./index.d.ts","import":"./index.mjs","require":"./index.js"},"./shield":{"types":"./shield.d.ts","import":"./shield.mjs","require":"./shield.js"},"./subscriptions":{"types":"./subscriptions/index.d.ts","import":"./subscriptions/index.mjs","require":"./subscriptions/index.js"}},"gitHead":"d807b272fb06674fae3598a91b1d817f6fe8ebe8","private":false,"scripts":{},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:0ef11048-27de-4347-87ae-58e5b882e8a8"}},"repository":{"url":"git+https://github.com/MakerXStudio/graphql-core.git","type":"git"},"_npmVersion":"11.11.0","description":"A set of core GraphQL utilities that MakerX uses to build GraphQL APIs","directories":{},"_nodeVersion":"24.14.1","dependencies":{"@makerx/node-common":"^1.5.0"},"_hasShrinkwrap":false,"readmeFilename":"README.md","peerDependencies":{"ws":"*","express":"*","graphql":"*","es-toolkit":">=1","graphql-ws":"*","graphql-shield":"*"},"peerDependenciesMeta":{"ws":{"optional":true},"graphql-ws":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/graphql-core_3.0.0-beta.1_1776908979241_0.6330682419688529","host":"s3://npm-registry-packages-npm-production"}},"3.0.0-beta.2":{"name":"@makerx/graphql-core","version":"3.0.0-beta.2","author":{"name":"MakerX"},"license":"MIT","_id":"@makerx/graphql-core@3.0.0-beta.2","maintainers":[{"name":"patrick.dinh","email":"d.conghoang@gmail.com"},{"name":"makerx-engineering","email":"cto@makerx.com.au"},{"name":"makerxuser","email":"matt@makerx.com.au"},{"name":"plebsori","email":"wade@baglin.au"},{"name":"vatsalyagoel","email":"vatsalyagoel@gmail.com"}],"homepage":"https://github.com/MakerXStudio/graphql-core#readme","bugs":{"url":"https://github.com/MakerXStudio/graphql-core/issues"},"dist":{"shasum":"1b089437d66e12c4082480f334a43958fad4b4b6","tarball":"https://registry.npmjs.org/@makerx/graphql-core/-/graphql-core-3.0.0-beta.2.tgz","fileCount":63,"integrity":"sha512-/h9ckWP8Gc1giPBXd1pG0V9IlBhfZyozJrTDZnCpRhBpgEqARBuRii0Goz5B/qmFoeJ5XXsv8cZUvV141zKZ4A==","signatures":[{"sig":"MEUCIQC4fOmGxerJ78NIxASR6wWkcaW3iyMXT0pltM9rvW3wawIgOmW6h1WOWS6pHggbsFYmQW86hPErIzGckzXcjJvUS/8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@makerx%2fgraphql-core@3.0.0-beta.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":170329},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./index.mjs","engines":{"node":">=20.0"},"exports":{".":{"types":"./index.d.ts","import":"./index.mjs","require":"./index.js"},"./shield":{"types":"./shield.d.ts","import":"./shield.mjs","require":"./shield.js"},"./subscriptions":{"types":"./subscriptions/index.d.ts","import":"./subscriptions/index.mjs","require":"./subscriptions/index.js"}},"gitHead":"bed9346438763df6eccadb32a177b90bc192fa59","private":false,"scripts":{},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:0ef11048-27de-4347-87ae-58e5b882e8a8"}},"repository":{"url":"git+https://github.com/MakerXStudio/graphql-core.git","type":"git"},"_npmVersion":"11.11.0","description":"A set of core GraphQL utilities that MakerX uses to build GraphQL APIs","directories":{},"_nodeVersion":"24.14.1","_hasShrinkwrap":false,"readmeFilename":"README.md","peerDependencies":{"ws":"*","express":"*","graphql":"*","es-toolkit":">=1","graphql-ws":"*","graphql-shield":"*","@makerx/node-common":">=1"},"peerDependenciesMeta":{"ws":{"optional":true},"graphql-ws":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/graphql-core_3.0.0-beta.2_1776924319004_0.5058455576391532","host":"s3://npm-registry-packages-npm-production"}},"3.0.0-beta.3":{"name":"@makerx/graphql-core","version":"3.0.0-beta.3","author":{"name":"MakerX"},"license":"MIT","_id":"@makerx/graphql-core@3.0.0-beta.3","maintainers":[{"name":"patrick.dinh","email":"d.conghoang@gmail.com"},{"name":"makerx-engineering","email":"cto@makerx.com.au"},{"name":"makerxuser","email":"matt@makerx.com.au"},{"name":"plebsori","email":"wade@baglin.au"},{"name":"vatsalyagoel","email":"vatsalyagoel@gmail.com"}],"homepage":"https://github.com/MakerXStudio/graphql-core#readme","bugs":{"url":"https://github.com/MakerXStudio/graphql-core/issues"},"dist":{"shasum":"3fef2e5f4d269acd69f2570dc60d4369bd17987f","tarball":"https://registry.npmjs.org/@makerx/graphql-core/-/graphql-core-3.0.0-beta.3.tgz","fileCount":67,"integrity":"sha512-5MRwpJDKh37v3apikkg0U4ogY+ONb/i71her6n67b36XOBJPxhIjIy7ZzB51hjN/mMlUX2tPEdY1oPDJ0LSBQA==","signatures":[{"sig":"MEUCIQDZ8UPq4hu9hAU5b2Gus9gPiOK5YpiZWm5FYAAci882lAIgGv82C4CWTLvIKWDvPsKLnD9mv0E23AOkgbPaDn1x8kc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@makerx%2fgraphql-core@3.0.0-beta.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":202147},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./index.mjs","engines":{"node":">=20.0"},"exports":{".":{"types":"./index.d.ts","import":"./index.mjs","require":"./index.js"},"./shield":{"types":"./shield.d.ts","import":"./shield.mjs","require":"./shield.js"},"./subscriptions":{"types":"./subscriptions/index.d.ts","import":"./subscriptions/index.mjs","require":"./subscriptions/index.js"}},"gitHead":"24830fac90d3cfdbe8aaf9800a6ba3d9aff4828a","private":false,"scripts":{},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:0ef11048-27de-4347-87ae-58e5b882e8a8"}},"repository":{"url":"git+https://github.com/MakerXStudio/graphql-core.git","type":"git"},"_npmVersion":"11.11.0","description":"A set of core GraphQL utilities that MakerX uses to build GraphQL APIs","directories":{},"_nodeVersion":"24.14.1","_hasShrinkwrap":false,"readmeFilename":"README.md","peerDependencies":{"ws":">=8","express":">=4","graphql":">=16","es-toolkit":">=1","graphql-ws":">=5","graphql-shield":">=7","@makerx/node-common":">=1"},"peerDependenciesMeta":{"ws":{"optional":true},"graphql-ws":{"optional":true},"graphql-shield":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/graphql-core_3.0.0-beta.3_1776935683306_0.45630403854704804","host":"s3://npm-registry-packages-npm-production"}},"3.0.0-beta.4":{"name":"@makerx/graphql-core","version":"3.0.0-beta.4","author":{"name":"MakerX"},"license":"MIT","_id":"@makerx/graphql-core@3.0.0-beta.4","maintainers":[{"name":"patrick.dinh","email":"d.conghoang@gmail.com"},{"name":"makerx-engineering","email":"cto@makerx.com.au"},{"name":"makerxuser","email":"matt@makerx.com.au"},{"name":"plebsori","email":"wade@baglin.au"},{"name":"vatsalyagoel","email":"vatsalyagoel@gmail.com"}],"homepage":"https://github.com/MakerXStudio/graphql-core#readme","bugs":{"url":"https://github.com/MakerXStudio/graphql-core/issues"},"dist":{"shasum":"1c54caf8669f392a5241ae43f931ea8e7d3b6256","tarball":"https://registry.npmjs.org/@makerx/graphql-core/-/graphql-core-3.0.0-beta.4.tgz","fileCount":68,"integrity":"sha512-jQl0tdzUU0O4NXyvnq0yhAXqypmF1pY9FVnb6sXIVLZDZAAHP/Fr3vxdoKWC84j3mv1dnVk40mABTUPBfQs4Rg==","signatures":[{"sig":"MEUCIQC+DMy7yk+9NTD2EkK/O4i95pndtdfSFnzR2U/HnMN1TwIgUhMMGQr2qJHHKsudS2FMCadY/F6V+KWEZIy0mvaNu1I=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@makerx%2fgraphql-core@3.0.0-beta.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":208049},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./index.mjs","engines":{"node":">=20.0"},"exports":{".":{"types":"./index.d.ts","import":"./index.mjs","require":"./index.js"},"./shield":{"types":"./shield.d.ts","import":"./shield.mjs","require":"./shield.js"},"./subscriptions":{"types":"./subscriptions/index.d.ts","import":"./subscriptions/index.mjs","require":"./subscriptions/index.js"}},"gitHead":"476b36492e2720f7dcbef26a7ed73bc6bb61bda3","private":false,"scripts":{},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:0ef11048-27de-4347-87ae-58e5b882e8a8"}},"repository":{"url":"git+https://github.com/MakerXStudio/graphql-core.git","type":"git"},"_npmVersion":"11.11.0","description":"A set of core GraphQL utilities that MakerX uses to build GraphQL APIs","directories":{},"_nodeVersion":"24.14.1","_hasShrinkwrap":false,"readmeFilename":"README.md","peerDependencies":{"ws":">=8","express":">=4","graphql":">=16","es-toolkit":">=1","graphql-ws":">=5","graphql-shield":">=7","@makerx/node-common":">=1"},"peerDependenciesMeta":{"ws":{"optional":true},"graphql-ws":{"optional":true},"graphql-shield":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/graphql-core_3.0.0-beta.4_1776936830707_0.3286497535012707","host":"s3://npm-registry-packages-npm-production"}},"3.0.0-beta.5":{"name":"@makerx/graphql-core","version":"3.0.0-beta.5","author":{"name":"MakerX"},"license":"MIT","_id":"@makerx/graphql-core@3.0.0-beta.5","maintainers":[{"name":"patrick.dinh","email":"d.conghoang@gmail.com"},{"name":"makerx-engineering","email":"cto@makerx.com.au"},{"name":"makerxuser","email":"matt@makerx.com.au"},{"name":"plebsori","email":"wade@baglin.au"},{"name":"vatsalyagoel","email":"vatsalyagoel@gmail.com"}],"homepage":"https://github.com/MakerXStudio/graphql-core#readme","bugs":{"url":"https://github.com/MakerXStudio/graphql-core/issues"},"dist":{"shasum":"705565cb6853450a1d5252158447359c7fc7939c","tarball":"https://registry.npmjs.org/@makerx/graphql-core/-/graphql-core-3.0.0-beta.5.tgz","fileCount":96,"integrity":"sha512-acvCaUtl+zlL4LdbDhPTrPhq3a9w+za77wJnAduLWWo8OCtLQnlqXwtumzKeW+YBMfCmTeXtdE8QujzN9VBf+A==","signatures":[{"sig":"MEYCIQDWBSUUXHsXXRdOdXHIeBK6a0Lg9cx0Y1rSkxfZYrU7CQIhAP+Wqmga7WGB02o0w2l9blQ6dCd8GauRpcvFe05TMsaw","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@makerx%2fgraphql-core@3.0.0-beta.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":249175},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./index.mjs","engines":{"node":">=20.0"},"exports":{".":{"import":{"types":"./index.d.mts","default":"./index.mjs"},"require":{"types":"./index.d.cts","default":"./index.js"}},"./shield":{"import":{"types":"./shield.d.mts","default":"./shield.mjs"},"require":{"types":"./shield.d.cts","default":"./shield.js"}},"./subscriptions":{"import":{"types":"./subscriptions/index.d.mts","default":"./subscriptions/index.mjs"},"require":{"types":"./subscriptions/index.d.cts","default":"./subscriptions/index.js"}}},"gitHead":"15e63defea3c73b8778cb73149546cf00eaf8ff0","private":false,"scripts":{},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:0ef11048-27de-4347-87ae-58e5b882e8a8"}},"repository":{"url":"git+https://github.com/MakerXStudio/graphql-core.git","type":"git"},"_npmVersion":"11.11.0","description":"A set of core GraphQL utilities that MakerX uses to build GraphQL APIs","directories":{},"_nodeVersion":"24.14.1","_hasShrinkwrap":false,"readmeFilename":"README.md","peerDependencies":{"ws":">=8","express":">=4","graphql":">=16","es-toolkit":">=1","graphql-ws":">=5","graphql-shield":">=7","@makerx/node-common":">=1"},"peerDependenciesMeta":{"ws":{"optional":true},"graphql-ws":{"optional":true},"graphql-shield":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/graphql-core_3.0.0-beta.5_1777010564603_0.1360348059387828","host":"s3://npm-registry-packages-npm-production"}},"3.0.0-beta.6":{"name":"@makerx/graphql-core","version":"3.0.0-beta.6","author":{"name":"MakerX"},"license":"MIT","_id":"@makerx/graphql-core@3.0.0-beta.6","maintainers":[{"name":"patrick.dinh","email":"d.conghoang@gmail.com"},{"name":"makerx-engineering","email":"cto@makerx.com.au"},{"name":"makerxuser","email":"matt@makerx.com.au"},{"name":"plebsori","email":"wade@baglin.au"},{"name":"vatsalyagoel","email":"vatsalyagoel@gmail.com"}],"homepage":"https://github.com/MakerXStudio/graphql-core#readme","bugs":{"url":"https://github.com/MakerXStudio/graphql-core/issues"},"dist":{"shasum":"e3755ac33382c7c4ba9b517147fa52d82fbbe867","tarball":"https://registry.npmjs.org/@makerx/graphql-core/-/graphql-core-3.0.0-beta.6.tgz","fileCount":96,"integrity":"sha512-nyAuV66PXdbCaTepcWVepYgSi1vIClXX+p6qgamDd3ShizIVyA3S8AS6kS/4dGPPrzL4eW02qrca+gaXjr91/g==","signatures":[{"sig":"MEUCIAZ8vBsw/wmuTdmltlymwNHOlr4moJnbynrd8TZBKshBAiEA82mHT2XX+PlLX3zRLS9jtbbB1WITW2WlIXoAPwPdha8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@makerx%2fgraphql-core@3.0.0-beta.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":249596},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./index.mjs","engines":{"node":">=20.0"},"exports":{".":{"import":{"types":"./index.d.mts","default":"./index.mjs"},"require":{"types":"./index.d.cts","default":"./index.js"}},"./shield":{"import":{"types":"./shield.d.mts","default":"./shield.mjs"},"require":{"types":"./shield.d.cts","default":"./shield.js"}},"./subscriptions":{"import":{"types":"./subscriptions/index.d.mts","default":"./subscriptions/index.mjs"},"require":{"types":"./subscriptions/index.d.cts","default":"./subscriptions/index.js"}}},"gitHead":"3b7583e0ce72f945340a17e3278f7e50d652cd32","private":false,"scripts":{},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:0ef11048-27de-4347-87ae-58e5b882e8a8"}},"repository":{"url":"git+https://github.com/MakerXStudio/graphql-core.git","type":"git"},"_npmVersion":"11.11.0","description":"A set of core GraphQL utilities that MakerX uses to build GraphQL APIs","directories":{},"_nodeVersion":"24.14.1","_hasShrinkwrap":false,"readmeFilename":"README.md","peerDependencies":{"ws":">=8","express":">=4","graphql":">=16","es-toolkit":">=1","graphql-ws":">=6","graphql-shield":">=7","@makerx/node-common":">=1"},"peerDependenciesMeta":{"ws":{"optional":true},"graphql-ws":{"optional":true},"graphql-shield":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/graphql-core_3.0.0-beta.6_1777016260079_0.8691153287339177","host":"s3://npm-registry-packages-npm-production"}},"3.0.0-beta.7":{"name":"@makerx/graphql-core","version":"3.0.0-beta.7","author":{"name":"MakerX"},"license":"MIT","_id":"@makerx/graphql-core@3.0.0-beta.7","maintainers":[{"name":"patrick.dinh","email":"d.conghoang@gmail.com"},{"name":"makerx-engineering","email":"cto@makerx.com.au"},{"name":"makerxuser","email":"matt@makerx.com.au"},{"name":"plebsori","email":"wade@baglin.au"},{"name":"vatsalyagoel","email":"vatsalyagoel@gmail.com"}],"homepage":"https://github.com/MakerXStudio/graphql-core#readme","bugs":{"url":"https://github.com/MakerXStudio/graphql-core/issues"},"dist":{"shasum":"07a5aa4a5df5b1a3b43ceed58601f50dc2e2a9b1","tarball":"https://registry.npmjs.org/@makerx/graphql-core/-/graphql-core-3.0.0-beta.7.tgz","fileCount":96,"integrity":"sha512-9ykl1v8j/Lm5NhQalHfL/u7cndfV94sxsWeHKsaKmCYd8Bi4u16BzwMtSyS8PVshMoPSLpzMQ2Qo4rGdCnPH8g==","signatures":[{"sig":"MEYCIQCu31Ppelw9tHgoOgtTZu/RJm7uuJ8BAke3Y4Z+qUizJwIhAKOx7A3uI7G+83wGS8UFCdkcg5dOGY7odaecV/0qYa2W","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@makerx%2fgraphql-core@3.0.0-beta.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":258417},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./index.mjs","engines":{"node":">=20.0"},"exports":{".":{"import":{"types":"./index.d.mts","default":"./index.mjs"},"require":{"types":"./index.d.cts","default":"./index.js"}},"./shield":{"import":{"types":"./shield.d.mts","default":"./shield.mjs"},"require":{"types":"./shield.d.cts","default":"./shield.js"}},"./subscriptions":{"import":{"types":"./subscriptions/index.d.mts","default":"./subscriptions/index.mjs"},"require":{"types":"./subscriptions/index.d.cts","default":"./subscriptions/index.js"}}},"gitHead":"d90eac3763817d4ab0120f6eb9a8875530b23234","private":false,"scripts":{},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:0ef11048-27de-4347-87ae-58e5b882e8a8"}},"repository":{"url":"git+https://github.com/MakerXStudio/graphql-core.git","type":"git"},"_npmVersion":"11.11.0","description":"A set of core GraphQL utilities that MakerX uses to build GraphQL APIs","directories":{},"_nodeVersion":"24.14.1","_hasShrinkwrap":false,"readmeFilename":"README.md","peerDependencies":{"ws":">=8","express":">=4","graphql":">=16","es-toolkit":">=1","graphql-ws":">=6","graphql-shield":">=7","@makerx/node-common":">=1"},"peerDependenciesMeta":{"ws":{"optional":true},"graphql-ws":{"optional":true},"graphql-shield":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/graphql-core_3.0.0-beta.7_1777188942538_0.41618545356821723","host":"s3://npm-registry-packages-npm-production"}},"3.0.0-beta.8":{"name":"@makerx/graphql-core","version":"3.0.0-beta.8","author":{"name":"MakerX"},"license":"MIT","_id":"@makerx/graphql-core@3.0.0-beta.8","maintainers":[{"name":"patrick.dinh","email":"d.conghoang@gmail.com"},{"name":"makerx-engineering","email":"cto@makerx.com.au"},{"name":"makerxuser","email":"matt@makerx.com.au"},{"name":"plebsori","email":"wade@baglin.au"},{"name":"vatsalyagoel","email":"vatsalyagoel@gmail.com"}],"homepage":"https://github.com/MakerXStudio/graphql-core#readme","bugs":{"url":"https://github.com/MakerXStudio/graphql-core/issues"},"dist":{"shasum":"e0626ad69f539c9ad83b85f0c9c3b655a11e47d3","tarball":"https://registry.npmjs.org/@makerx/graphql-core/-/graphql-core-3.0.0-beta.8.tgz","fileCount":103,"integrity":"sha512-cDp4cqZQLPo1Ai5DNNoEZquy1fVZqGMwDeCiwl8etytg5T6VEepnpf+6tM34EjyP6zZlcysx7kBkrkBhw35jqw==","signatures":[{"sig":"MEUCICt9tejDvubTAqg2vw7zyd3iTqviycP+8kvj1rdJICklAiEAkBttgRxV3AG4AKt9kIAW2FeAnd28rZkiKphM+eRHCBE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@makerx%2fgraphql-core@3.0.0-beta.8","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":276591},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./index.mjs","engines":{"node":">=20.0"},"exports":{".":{"import":{"types":"./index.d.mts","default":"./index.mjs"},"require":{"types":"./index.d.cts","default":"./index.js"}},"./shield":{"import":{"types":"./shield.d.mts","default":"./shield.mjs"},"require":{"types":"./shield.d.cts","default":"./shield.js"}},"./subscriptions":{"import":{"types":"./subscriptions/index.d.mts","default":"./subscriptions/index.mjs"},"require":{"types":"./subscriptions/index.d.cts","default":"./subscriptions/index.js"}}},"gitHead":"1d0d03b31cd77e831e9f3c767fc8419f45fb6759","private":false,"scripts":{},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:0ef11048-27de-4347-87ae-58e5b882e8a8"}},"repository":{"url":"git+https://github.com/MakerXStudio/graphql-core.git","type":"git"},"_npmVersion":"11.11.0","description":"A set of core GraphQL utilities that MakerX uses to build GraphQL APIs","directories":{},"_nodeVersion":"24.14.1","_hasShrinkwrap":false,"readmeFilename":"README.md","peerDependencies":{"ws":">=8","express":">=4","graphql":">=16","es-toolkit":">=1","graphql-ws":">=6","graphql-shield":">=7","@makerx/node-common":">=1"},"peerDependenciesMeta":{"ws":{"optional":true},"graphql-ws":{"optional":true},"graphql-shield":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/graphql-core_3.0.0-beta.8_1778050754139_0.9158180881765723","host":"s3://npm-registry-packages-npm-production"}},"3.0.0":{"name":"@makerx/graphql-core","version":"3.0.0","author":{"name":"MakerX"},"license":"MIT","_id":"@makerx/graphql-core@3.0.0","maintainers":[{"name":"patrick.dinh","email":"d.conghoang@gmail.com"},{"name":"makerx-engineering","email":"cto@makerx.com.au"},{"name":"makerxuser","email":"matt@makerx.com.au"},{"name":"plebsori","email":"wade@baglin.au"},{"name":"vatsalyagoel","email":"vatsalyagoel@gmail.com"}],"homepage":"https://github.com/MakerXStudio/graphql-core#readme","bugs":{"url":"https://github.com/MakerXStudio/graphql-core/issues"},"dist":{"shasum":"6d8493c94d91696ac541fca3d6c79a40c0a840c4","tarball":"https://registry.npmjs.org/@makerx/graphql-core/-/graphql-core-3.0.0.tgz","fileCount":110,"integrity":"sha512-b/ve34EEEqiABEkeUkfsdI1XIIOeI3Ufkyi3YhdT46kyYaIiYS6XSJMBZ40WS38sKKGGsknM/+JhwAkWj7Gm4A==","signatures":[{"sig":"MEUCIDSRK/RDVxJt49X7/vSQ0uMXMc17DPfShVHk/LyKe+7GAiEAi2ZywMRAAjNWkTTbMYGN3kaoNusMAJynzQ5qgwqowsg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@makerx%2fgraphql-core@3.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":280446},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./index.mjs","engines":{"node":">=20.0"},"exports":{".":{"import":{"types":"./index.d.mts","default":"./index.mjs"},"require":{"types":"./index.d.cts","default":"./index.js"}},"./shield":{"import":{"types":"./shield.d.mts","default":"./shield.mjs"},"require":{"types":"./shield.d.cts","default":"./shield.js"}},"./subscriptions":{"import":{"types":"./subscriptions/index.d.mts","default":"./subscriptions/index.mjs"},"require":{"types":"./subscriptions/index.d.cts","default":"./subscriptions/index.js"}}},"gitHead":"52157c6e4856acc9246d265979b9a302765aae1d","private":false,"scripts":{},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:0ef11048-27de-4347-87ae-58e5b882e8a8"}},"repository":{"url":"git+https://github.com/MakerXStudio/graphql-core.git","type":"git"},"_npmVersion":"11.11.0","description":"A set of core GraphQL utilities that MakerX uses to build GraphQL APIs","directories":{},"_nodeVersion":"24.14.1","_hasShrinkwrap":false,"peerDependencies":{"ws":">=8","express":">=4","graphql":">=16","es-toolkit":">=1","graphql-ws":">=6","graphql-shield":">=7","@makerx/node-common":">=1"},"peerDependenciesMeta":{"ws":{"optional":true},"graphql-ws":{"optional":true},"graphql-shield":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/graphql-core_3.0.0_1778128851444_0.7619172479955323","host":"s3://npm-registry-packages-npm-production"}},"3.0.1":{"name":"@makerx/graphql-core","version":"3.0.1","author":{"name":"MakerX"},"license":"MIT","_id":"@makerx/graphql-core@3.0.1","maintainers":[{"name":"patrick.dinh","email":"d.conghoang@gmail.com"},{"name":"makerx-engineering","email":"cto@makerx.com.au"},{"name":"makerxuser","email":"matt@makerx.com.au"},{"name":"plebsori","email":"wade@baglin.au"},{"name":"vatsalyagoel","email":"vatsalyagoel@gmail.com"}],"homepage":"https://github.com/MakerXStudio/graphql-core#readme","bugs":{"url":"https://github.com/MakerXStudio/graphql-core/issues"},"dist":{"shasum":"61364786a52da3c98e4c0c9c514163613f98911c","tarball":"https://registry.npmjs.org/@makerx/graphql-core/-/graphql-core-3.0.1.tgz","fileCount":110,"integrity":"sha512-8ceuJczWKYiGoRSvnQV9UwTzrTrQ2SUyOsmXYVu1k8BkX3G6FgnumenLNsj4AOf/C3tf9BXhgsSFXo2eF2dKpQ==","signatures":[{"sig":"MEYCIQDD6eLQsc9WgvmTC3/iTdxgBJk9HO6kZ2C0fcv1GZAvOQIhAJTX7jA2pJj3DRnuPH9RNhhWsRkjZBSCRrsgfnEYTSnE","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@makerx%2fgraphql-core@3.0.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":282512},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./index.mjs","engines":{"node":">=20.0"},"exports":{".":{"import":{"types":"./index.d.mts","default":"./index.mjs"},"require":{"types":"./index.d.cts","default":"./index.js"}},"./shield":{"import":{"types":"./shield.d.mts","default":"./shield.mjs"},"require":{"types":"./shield.d.cts","default":"./shield.js"}},"./subscriptions":{"import":{"types":"./subscriptions/index.d.mts","default":"./subscriptions/index.mjs"},"require":{"types":"./subscriptions/index.d.cts","default":"./subscriptions/index.js"}}},"gitHead":"606dee6fb861a29abb975d5000679006aebecc2b","private":false,"scripts":{},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:0ef11048-27de-4347-87ae-58e5b882e8a8"}},"repository":{"url":"git+https://github.com/MakerXStudio/graphql-core.git","type":"git"},"_npmVersion":"11.11.0","description":"A set of core GraphQL utilities that MakerX uses to build GraphQL APIs","directories":{},"_nodeVersion":"24.14.1","_hasShrinkwrap":false,"peerDependencies":{"ws":">=8","express":">=4","graphql":">=16","es-toolkit":">=1","graphql-ws":">=6","graphql-shield":">=7","@makerx/node-common":">=1"},"peerDependenciesMeta":{"ws":{"optional":true},"graphql-ws":{"optional":true},"graphql-shield":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/graphql-core_3.0.1_1778133774920_0.26184269810490446","host":"s3://npm-registry-packages-npm-production"}},"3.1.0":{"name":"@makerx/graphql-core","version":"3.1.0","author":{"name":"MakerX"},"license":"MIT","_id":"@makerx/graphql-core@3.1.0","maintainers":[{"name":"patrick.dinh","email":"d.conghoang@gmail.com"},{"name":"makerx-engineering","email":"cto@makerx.com.au"},{"name":"makerxuser","email":"matt@makerx.com.au"},{"name":"plebsori","email":"wade@baglin.au"},{"name":"vatsalyagoel","email":"vatsalyagoel@gmail.com"}],"homepage":"https://github.com/MakerXStudio/graphql-core#readme","bugs":{"url":"https://github.com/MakerXStudio/graphql-core/issues"},"dist":{"shasum":"e4c1a0b767361c5757a796f8784914445b596f13","tarball":"https://registry.npmjs.org/@makerx/graphql-core/-/graphql-core-3.1.0.tgz","fileCount":124,"integrity":"sha512-MokQgwiKinza5wQM7Yz3H4CwZTQEPxIi1BU0yQ3kOiqXTsPbKb4ROBmzlHUKYSPpkle54EyjcNHcwen9Zb3N2w==","signatures":[{"sig":"MEYCIQCTNgPSX35Clek20yxEZfOXtFvCPZ/3afFUYXzemzFn8QIhALeC1QfHy6i0eel2Dh664B/jMSB3P4UItkKRuhvSeMta","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@makerx%2fgraphql-core@3.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":308226},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./index.mjs","engines":{"node":">=20.0"},"exports":{".":{"import":{"types":"./index.d.mts","default":"./index.mjs"},"require":{"types":"./index.d.cts","default":"./index.js"}},"./shield":{"import":{"types":"./shield.d.mts","default":"./shield.mjs"},"require":{"types":"./shield.d.cts","default":"./shield.js"}},"./testing":{"import":{"types":"./testing/index.d.mts","default":"./testing/index.mjs"},"require":{"types":"./testing/index.d.cts","default":"./testing/index.js"}},"./subscriptions":{"import":{"types":"./subscriptions/index.d.mts","default":"./subscriptions/index.mjs"},"require":{"types":"./subscriptions/index.d.cts","default":"./subscriptions/index.js"}}},"gitHead":"49a9bebb3a60556226a8e93ab60178de038b814c","private":false,"scripts":{},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:0ef11048-27de-4347-87ae-58e5b882e8a8"}},"repository":{"url":"git+https://github.com/MakerXStudio/graphql-core.git","type":"git"},"_npmVersion":"11.11.0","description":"A set of core GraphQL utilities that MakerX uses to build GraphQL APIs","directories":{},"_nodeVersion":"24.14.1","_hasShrinkwrap":false,"peerDependencies":{"ws":">=8","express":">=4","graphql":">=16","es-toolkit":">=1","graphql-ws":">=6","graphql-shield":">=7","@makerx/node-common":">=1","@graphql-typed-document-node/core":">=3.2.0"},"peerDependenciesMeta":{"ws":{"optional":true},"graphql-ws":{"optional":true},"graphql-shield":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/graphql-core_3.1.0_1778223192919_0.40678095924295876","host":"s3://npm-registry-packages-npm-production"}},"3.2.0":{"name":"@makerx/graphql-core","version":"3.2.0","author":{"name":"MakerX"},"license":"MIT","_id":"@makerx/graphql-core@3.2.0","maintainers":[{"name":"patrick.dinh","email":"d.conghoang@gmail.com"},{"name":"makerx-engineering","email":"cto@makerx.com.au"},{"name":"makerxuser","email":"matt@makerx.com.au"},{"name":"plebsori","email":"wade@baglin.au"},{"name":"vatsalyagoel","email":"vatsalyagoel@gmail.com"}],"homepage":"https://github.com/MakerXStudio/graphql-core#readme","bugs":{"url":"https://github.com/MakerXStudio/graphql-core/issues"},"dist":{"shasum":"15e772b41e3a0b3491db3b03e1e50b9145fdf63b","tarball":"https://registry.npmjs.org/@makerx/graphql-core/-/graphql-core-3.2.0.tgz","fileCount":124,"integrity":"sha512-xgnMOEQvJ5GgXQiII7Kg/t5vWj8m2XP5z5Ck+YzvF06CzfKaKwhSDWXm3yBFWEmB4Jbg6ci5YUoS75gYka8GtA==","signatures":[{"sig":"MEUCIDnZ9akrNwog4uWIh2rnYsoTEM0fOtf3Do3hR47KWkmVAiEAnw1/YYQoX6EWT2F0h8+PJjRJKnhkrXEfmltLGgVcvRk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@makerx%2fgraphql-core@3.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":333106},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./index.mjs","engines":{"node":">=20.0"},"exports":{".":{"import":{"types":"./index.d.mts","default":"./index.mjs"},"require":{"types":"./index.d.cts","default":"./index.js"}},"./shield":{"import":{"types":"./shield.d.mts","default":"./shield.mjs"},"require":{"types":"./shield.d.cts","default":"./shield.js"}},"./testing":{"import":{"types":"./testing/index.d.mts","default":"./testing/index.mjs"},"require":{"types":"./testing/index.d.cts","default":"./testing/index.js"}},"./subscriptions":{"import":{"types":"./subscriptions/index.d.mts","default":"./subscriptions/index.mjs"},"require":{"types":"./subscriptions/index.d.cts","default":"./subscriptions/index.js"}}},"gitHead":"6181e3d3cfcfb5a3211835659c531f0412924406","private":false,"scripts":{},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:0ef11048-27de-4347-87ae-58e5b882e8a8"}},"overrides":{"esbuild":"^0.28.1"},"repository":{"url":"git+https://github.com/MakerXStudio/graphql-core.git","type":"git"},"_npmVersion":"11.13.0","description":"A set of core GraphQL utilities that MakerX uses to build GraphQL APIs","directories":{},"_nodeVersion":"24.16.0","_hasShrinkwrap":false,"peerDependencies":{"ws":">=8","express":">=4","graphql":">=16","es-toolkit":">=1","graphql-ws":">=6","graphql-shield":">=7","@makerx/node-common":">=1","@graphql-typed-document-node/core":">=3.2.0"},"peerDependenciesMeta":{"ws":{"optional":true},"graphql-ws":{"optional":true},"graphql-shield":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/graphql-core_3.2.0_1782179843689_0.5816605256336542","host":"s3://npm-registry-packages-npm-production"}},"3.3.0":{"name":"@makerx/graphql-core","version":"3.3.0","author":{"name":"MakerX"},"license":"MIT","_id":"@makerx/graphql-core@3.3.0","maintainers":[{"name":"patrick.dinh","email":"d.conghoang@gmail.com"},{"name":"makerx-engineering","email":"cto@makerx.com.au"},{"name":"makerxuser","email":"matt@makerx.com.au"},{"name":"plebsori","email":"wade@baglin.au"},{"name":"vatsalyagoel","email":"vatsalyagoel@gmail.com"}],"homepage":"https://github.com/MakerXStudio/graphql-core#readme","bugs":{"url":"https://github.com/MakerXStudio/graphql-core/issues"},"dist":{"shasum":"dcb7f0a6f8d2a1dc217968c0eed0f06ccfdbe030","tarball":"https://registry.npmjs.org/@makerx/graphql-core/-/graphql-core-3.3.0.tgz","fileCount":131,"integrity":"sha512-q0Wuvjm5nEeCRFhetgNq6EqvklzbQAa24TbDLIobK4LBFFaODBTJzxdE3uJP3h6pRfWYQNInyvNS6J7nSefcDg==","signatures":[{"sig":"MEYCIQDXMWWQgMHGQ/yqYxinBBaVdomnO6hdATANpJWO9kbLDgIhAP2gQKWhrLNAP2y8XdEjmJ8nF1nnquzJ5yGoAigAI4OY","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@makerx%2fgraphql-core@3.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":423532},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./index.mjs","engines":{"node":">=20.0"},"exports":{".":{"import":{"types":"./index.d.mts","default":"./index.mjs"},"require":{"types":"./index.d.cts","default":"./index.js"}},"./shield":{"import":{"types":"./shield.d.mts","default":"./shield.mjs"},"require":{"types":"./shield.d.cts","default":"./shield.js"}},"./testing":{"import":{"types":"./testing/index.d.mts","default":"./testing/index.mjs"},"require":{"types":"./testing/index.d.cts","default":"./testing/index.js"}},"./subscriptions":{"import":{"types":"./subscriptions/index.d.mts","default":"./subscriptions/index.mjs"},"require":{"types":"./subscriptions/index.d.cts","default":"./subscriptions/index.js"}}},"gitHead":"77a79567901307521271cab39c1e3ba2cf925bac","private":false,"scripts":{},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:0ef11048-27de-4347-87ae-58e5b882e8a8"}},"overrides":{"esbuild":"^0.28.1"},"repository":{"url":"git+https://github.com/MakerXStudio/graphql-core.git","type":"git"},"_npmVersion":"11.17.0","description":"A set of core GraphQL utilities that MakerX uses to build GraphQL APIs","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"peerDependencies":{"ws":">=8","express":">=4","graphql":">=16","es-toolkit":">=1","graphql-ws":">=6","graphql-shield":">=7","@makerx/node-common":">=1","@graphql-typed-document-node/core":">=3.2.0"},"peerDependenciesMeta":{"ws":{"optional":true},"graphql-ws":{"optional":true},"graphql-shield":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/graphql-core_3.3.0_1787049101202_0.6922952849732043","host":"s3://npm-registry-packages-npm-production"}},"3.4.0":{"_id":"@makerx/graphql-core@3.4.0","bugs":{"url":"https://github.com/MakerXStudio/graphql-core/issues"},"dist":{"shasum":"ad8ffaac68cb14ce4d4615979f7a33240af39b04","tarball":"https://registry.npmjs.org/@makerx/graphql-core/-/graphql-core-3.4.0.tgz","fileCount":131,"integrity":"sha512-eERSayburT2EaAZc4Vt4mypRCA8z5F1m2I7zLwphLGoR6i0Vyt1Vek6vO6SQYed9QHxZEaGgRtn3fLSeo+nA2g==","signatures":[{"sig":"MEUCIQC2ddo13m2XiyrpMYnPFIvWj0adzvCmTQek6Ul1Zo9Q7gIganOiE5ddwInCL9wPzISQT+ocWFzFBoI624/21pefoxs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQDcHwPV2MyHySfHF8dHy9e/S5fTcIpZFRbuF4kVdZ4eyAIhAIU6Hx+taAWW5XBTwzxBmMEwI//AM3DxklLiFlUf/viV"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@makerx%2fgraphql-core@3.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":434494},"main":"./index.js","name":"@makerx/graphql-core","type":"commonjs","types":"./index.d.ts","author":{"name":"MakerX"},"module":"./index.mjs","engines":{"node":">=20.0"},"exports":{".":{"import":{"types":"./index.d.mts","default":"./index.mjs"},"require":{"types":"./index.d.cts","default":"./index.js"}},"./shield":{"import":{"types":"./shield.d.mts","default":"./shield.mjs"},"require":{"types":"./shield.d.cts","default":"./shield.js"}},"./testing":{"import":{"types":"./testing/index.d.mts","default":"./testing/index.mjs"},"require":{"types":"./testing/index.d.cts","default":"./testing/index.js"}},"./subscriptions":{"import":{"types":"./subscriptions/index.d.mts","default":"./subscriptions/index.mjs"},"require":{"types":"./subscriptions/index.d.cts","default":"./subscriptions/index.js"}}},"gitHead":"3357068ee2e60d946125236d52fe641b0ffe96df","license":"MIT","private":false,"scripts":{},"version":"3.4.0","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"0ef11048-27de-4347-87ae-58e5b882e8a8"}},"homepage":"https://github.com/MakerXStudio/graphql-core#readme","overrides":{"esbuild":"^0.28.1"},"repository":{"url":"git+https://github.com/MakerXStudio/graphql-core.git","type":"git"},"_npmVersion":"11.19.0","description":"A set of core GraphQL utilities that MakerX uses to build GraphQL APIs","directories":{},"maintainers":[{"name":"patrick.dinh","email":"d.conghoang@gmail.com"},{"name":"makerx-engineering","email":"cto@makerx.com.au"},{"name":"makerxuser","email":"matt@makerx.com.au"},{"name":"plebsori","email":"wade@baglin.au"},{"name":"vatsalyagoel","email":"vatsalyagoel@gmail.com"}],"_nodeVersion":"24.21.0","_hasShrinkwrap":false,"peerDependencies":{"ws":">=8","express":">=4","graphql":">=16","es-toolkit":">=1","graphql-ws":">=6","graphql-shield":">=7","@makerx/node-common":">=1","@graphql-typed-document-node/core":">=3.2.0"},"peerDependenciesMeta":{"ws":{"optional":true},"graphql-ws":{"optional":true},"graphql-shield":{"optional":true}},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/graphql-core_3.4.0_1790777033651_0.1627449448585052"}}},"time":{"created":"2023-06-29T05:32:13.152Z","modified":"2026-09-30T14:03:54.145Z","1.0.0":"2023-06-29T05:32:13.439Z","1.1.0":"2023-07-17T19:51:00.858Z","1.2.0":"2023-07-17T21:53:21.832Z","1.2.1":"2023-07-17T22:33:02.508Z","1.3.0":"2023-09-07T10:09:50.837Z","1.4.0":"2023-09-08T08:59:00.468Z","1.5.0":"2023-10-06T04:14:02.772Z","2.0.0":"2023-10-17T19:44:11.752Z","2.1.0":"2023-10-20T02:07:58.796Z","2.2.0":"2024-01-30T09:36:22.805Z","2.2.1":"2024-02-20T23:12:48.689Z","2.2.2":"2024-02-21T00:05:57.633Z","2.3.0":"2025-09-23T00:59:34.175Z","3.0.0-beta.0":"2026-04-21T09:24:07.919Z","3.0.0-beta.1":"2026-04-23T01:49:39.362Z","3.0.0-beta.2":"2026-04-23T06:05:19.157Z","3.0.0-beta.3":"2026-04-23T09:14:43.453Z","3.0.0-beta.4":"2026-04-23T09:33:50.851Z","3.0.0-beta.5":"2026-04-24T06:02:44.780Z","3.0.0-beta.6":"2026-04-24T07:37:40.211Z","3.0.0-beta.7":"2026-04-26T07:35:42.687Z","3.0.0-beta.8":"2026-05-06T06:59:14.279Z","3.0.0":"2026-05-07T04:40:51.589Z","3.0.1":"2026-05-07T06:02:55.065Z","3.1.0":"2026-05-08T06:53:13.108Z","3.2.0":"2026-06-23T01:57:23.823Z","3.3.0":"2026-08-18T10:31:41.363Z","3.4.0":"2026-09-30T14:03:53.765Z"},"bugs":{"url":"https://github.com/MakerXStudio/graphql-core/issues"},"author":{"name":"MakerX"},"license":"MIT","homepage":"https://github.com/MakerXStudio/graphql-core#readme","repository":{"url":"git+https://github.com/MakerXStudio/graphql-core.git","type":"git"},"description":"A set of core GraphQL utilities that MakerX uses to build GraphQL APIs","maintainers":[{"name":"patrick.dinh","email":"d.conghoang@gmail.com"},{"name":"makerx-engineering","email":"cto@makerx.com.au"},{"name":"makerxuser","email":"matt@makerx.com.au"},{"name":"plebsori","email":"wade@baglin.au"},{"name":"vatsalyagoel","email":"vatsalyagoel@gmail.com"}],"readme":"﻿# GraphQL Core\n\nA set of core GraphQL utilities that MakerX uses to build GraphQL APIs.\n\nThese utilities avoid dependencies on any particular GraphQL server or logging implementation, providing a standard set of behaviours to use across varying implementations.\n\nNote: See explanation on \\*Express peer dependency below.\n\n## Context\n\n`createContextFactory` returns a function that creates your GraphQL context using a standard (extensible) representation, including:\n\n- `logger`: a logger instance to use downstream of resolvers, built by your `requestLogger` factory, which receives both the resolved request metadata and the resolved `user` so you can enrich log output with user-derived fields (see [Request logger](#request-logger))\n- `requestInfo`: useful request info — `source` (`http` or `subscription`), `protocol` (`http`/`https`/`ws`/`wss`), `host`, `baseUrl`, `url`, correlation/client headers, etc. Use it for per-request behaviour (multi-tenant apps), passing correlation headers downstream, etc. See [Request info](#request-info)\n- `user`: an object representing the user or system identity (see [User](#user); defaults to a `User` built from JWT claims when `createUser` is omitted)\n- anything else you wish to add to the context via `augmentContext`\n\n### Step 1 - Define your context + creation\n\ncontext.ts\n\n```ts\n// define the extra stuff added to our app's context\ntype ExtraContext = {\n  services: Services\n  loaders: Loaders\n}\n\n// configure the createContext function\n// TUser is inferred from `createUser`, TAugment is inferred from `augmentContext`'s return type\nexport const createContext = createContextFactory({\n  // keys of the user claims (JWT payload) to include in the request metadata passed to the requestLogger factory\n  claimsToLog: ['oid', 'aud', 'tid', 'azp', 'iss', 'scp', 'roles'],\n  // keys of the request info to include in the request metadata passed to the requestLogger factory\n  requestInfoToLog: ['origin', 'requestId', 'correlationId'],\n  // build the per-request logger; receives the request metadata and the resolved user\n  // e.g. enrich log output with user-derived fields like multi-tenant `instance`\n  requestLogger: (requestMetadata, user) => logger.child({ ...requestMetadata, instance: user?.instance }),\n  // resolve the user for each request — optional; omit to use the default User-from-JWT behaviour\n  // (required when you supply a narrower TUser generic)\n  createUser: async ({ claims }) => new AppUser(claims),\n  // build the rest of the app context — annotate the return type to lock in inference\n  augmentContext: (context): ExtraContext => {\n    const services = createServices(context)\n    const loaders = createLoaders(services)\n    return { services, loaders }\n  },\n})\n\n// derive the full context type from the factory's return type\nexport type GraphQLContext = Awaited<ReturnType<typeof createContext>>\n```\n\n### Step 2 - Map the context creation to implementation\n\nThese examples show how you might map implementation-specific context functions to your implementation-agnostic context creation function (from step 1).\nNote: examples assume that a JWT auth middleware has set `req.user` to the decoded token payload (claims). This is optional.\n\napp.ts\n\n```ts\n// wire up the createContext function, providing `ContextInput` for apollo-server-express implementation)\nconst server = new ApolloServer({\n  ...apolloServerConfig,\n  context: ({ req }) => createContext({ req, claims: req.user }),\n})\n```\n\nlambda.ts\n\n```ts\n// wire up the createContext function, providing `ContextInput` for apollo-server-lambda implementation\nconst server = new ApolloServer({\n  ...apolloServerConfig,\n  context: ({ event, context, express: { req } }) =>\n    createContext({ req, claims: req.user, event: event as LambdaEvent, context: context as LambdaContext }),\n})\n```\n\nyoga.ts\n\n```ts\n// wire up the createContext function, providing `ContextInput` for graphql-yoga implementation\nconst graphqlServer = createServer({\n  ...yogaServerConfig,\n  context: ({ req }) => createContext({ req, claims: req.user }),\n})\n```\n\n## Request info\n\n`context.requestInfo` is built for every request — both HTTP and websocket subscription connects — so downstream code can distinguish sources, rebuild URLs, pass through correlation headers, etc.\n\n| Field           | Description                                                                                                                                                                    |\n| --------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |\n| `requestId`     | `x-request-id` header if present, otherwise a freshly generated UUID.                                                                                                          |\n| `source`        | `'http'` for regular requests, `'subscription'` for websocket connects.                                                                                                        |\n| `protocol`      | `'http'` / `'https'` for HTTP, `'ws'` / `'wss'` for subscriptions (resolved via `x-forwarded-proto` or TLS socket encryption).                                                 |\n| `host`          | Hostname only (no port). Prefers `x-forwarded-host`, falls back to the `Host` header, then `req.hostname` (Express only).                                                      |\n| `port`          | Port parsed from `x-forwarded-host` / `Host` header when present; `undefined` otherwise.                                                                                       |\n| `baseUrl`       | Fully-qualified origin (`scheme://host[:port]`) with default ports stripped. For subscriptions the scheme is normalised to `http(s)` so the value composes with relative URLs. |\n| `url`           | `req.originalUrl` for HTTP, `req.url` for subscription connects.                                                                                                               |\n| `origin`        | `Origin` header.                                                                                                                                                               |\n| `referer`       | `Referer` header.                                                                                                                                                              |\n| `correlationId` | `x-correlation-id` header.                                                                                                                                                     |\n| `arrLogId`      | `x-arr-log-id` header (Azure Front Door / ARR).                                                                                                                                |\n| `clientIp`      | First value from `x-forwarded-for`, falling back to `socket.remoteAddress`.                                                                                                    |\n| `userAgent`     | `User-Agent` header.                                                                                                                                                           |\n\nYou can add more via `augmentRequestInfo(input)`. Lambda deployments also get `functionName` and `awsRequestId` when a `LambdaContext` is supplied.\n\nHelpers are exported for custom wiring: `buildBaseRequestInfo(req)` (Express), `buildConnectRequestInfo(req)` (websocket `IncomingMessage`), and `requestBaseUrl` / `connectRequestBaseUrl`.\n\n## Request logger\n\nThe `requestLogger` config accepts either a pre-built `Logger` or a factory `(requestMetadata, user) => Logger`.\n\nThe factory form runs per request and receives:\n\n- `requestMetadata` — an object containing `request` (the subset of `requestInfo` selected by `requestInfoToLog`) and `user` (the subset of claims selected by `claimsToLog`)\n- `user` — the resolved `user` value returned by `createUser` (typed as your `TUser`)\n\nThis lets you enrich log output with fields derived from the resolved user, for example a multi-tenant instance id or an internal user id from your database, that aren't present on the raw JWT claims:\n\n```ts\nrequestLogger: (requestMetadata, user) =>\n  logger.child({\n    ...requestMetadata,\n    instance: user?.instance,\n    userId: user?.id,\n  }),\n```\n\n## User\n\nBy default, if `claims` (decoded token `JwtPayload`) are available, the `GraphQLContext.user` property will be set by constructing a `User` instance.\n\nThe User class adds some handy getters over raw claims (decodedJWT payload) and provides access to the JWT (access token) for on-behalf-of downstream authentication flows. Note this may represent a user or service principal (system) identity.\n\n| Property | Description                                                                                                                 |\n| -------- | --------------------------------------------------------------------------------------------------------------------------- |\n| claims   | The decoded JWT payload, set via the RequestInput.user field.                                                               |\n| token    | The access token. By default, the bearer token from the `Authorization` header (see [Token extraction](#token-extraction)). |\n| email    | The user's email via coalesced claim values: email, emails, preferred_username, unique_name, upn.                           |\n| name     | The user's name (via the name or given_name and family_name claims).                                                        |\n| id       | The user's unique and immutable ID, useful for contextual differentiation e.g. session keys (the oid or sub claim).         |\n| scopes   | The user's scopes, via the scp claim split into an array of scopes.                                                         |\n| roles    | The user's roles (via the roles claim).                                                                                     |\n\n### Custom user\n\nIf you wish to customise your `GraphQLContext.user` object, provide a `createUser` function to override the default `User` creation.\n\n```ts\nconst createUser: CreateUser = async ({ claims }) => {\n  const roles = await loadRoles(claims.email)\n  return { name: claims.name, email: claims.email, roles }\n}\n\nconst graphqlServer = createServer({\n  ...config,\n  context: ({ req }) => createContext({ req, claims: req.user, createUser }),\n})\n```\n\n### Token extraction\n\nThe default `createUser` sets `User.token` to the bearer token from the `Authorization` header. If clients authenticate another way, for example with a JWT assertion header that a proxy adds to the request, supply `extractToken` to return the token:\n\n```ts\nconst createContext = createContextFactory({\n  requestLogger,\n  extractToken: ({ req }) => req.headers['x-goog-iap-jwt-assertion'] as string | undefined,\n})\n```\n\n`extractToken` is not called when you supply `createUser`. For subscriptions, see [GraphQL subscriptions](#graphql-subscriptions).\n\n## Shield (authorization)\n\nThe `shield` module provides typed helpers around [graphql-shield](https://the-guild.dev/graphql/shield) for defining authorization middleware against your generated `Resolvers` type.\n\n`graphql-shield` is an optional peer dependency — install it only if you use this module:\n\n```sh\nnpm i graphql-shield\n```\n\n### createShieldSchema\n\nBuilds a shield middleware with a schema typed against your resolver map, so field-level rule wiring is checked by the TypeScript compiler.\n\n```ts\nimport { Resolvers } from '../generated/types'\nimport { or } from 'graphql-shield'\nimport { applyMiddleware } from 'graphql-middleware'\nimport { createShieldSchema, hasRoleRule, unauthorisedError } from '@makerx/graphql-core'\n\nconst isCoordinator = hasRoleRule('coordinator')\nconst isSystemAdmin = hasRoleRule('system-admin')\nconst isAuthorisedUser = or(isCoordinator, isSystemAdmin)\n\nconst shieldSchema = createShieldSchema<Resolvers>(\n  {\n    Query: {\n      '*': isAuthorisedUser,\n      user: isCoordinator,\n    },\n    Mutation: {\n      '*': isCoordinator,\n      createUser: isSystemAdmin,\n    },\n  },\n  { fallbackRule: isAuthorisedUser, fallbackError: unauthorisedError() },\n)\n\nconst schema = applyMiddleware(makeExecutableSchema({ ... }), shieldSchema)\n```\n\nThe `'*'` key at each object level is a fallback rule applied to any field at that level without an explicit rule.\n\nThe wrapper defaults `allowExternalErrors: true`; the full shield options object (second argument) is forwarded to `shield(...)` and can override it.\n\n#### v3 breaking change: no default fallback rule\n\nPrior to v3 this wrapper defaulted `fallbackRule` to `allow` — fields not covered by the schema were open by default. v3 removes that default and the wrapper no longer makes that choice for you. Without an explicit `fallbackRule`, graphql-shield's own default (`allow`) still applies, so behaviour is unchanged when no options are passed, but if you want a deny-by-default posture you should now pass an explicit `fallbackRule` (commonly your auth-check rule) along with a `fallbackError`.\n\nThe second argument also changed from a bare `ShieldRule` to the full shield options object:\n\n```ts\n// v2\ncreateShieldSchema<Resolvers>(schema, isAuthorisedUser)\n\n// v3\ncreateShieldSchema<Resolvers>(schema, { fallbackRule: isAuthorisedUser, fallbackError: unauthorisedError() })\n```\n\n### Role and scope rules\n\nConvenience builders that read `ctx.user.roles` / `ctx.user.scopes`. All use graphql-shield's `'contextual'` cache so the result is reused across fields within a request.\n\n| Helper                                   | Description                                                                   |\n| ---------------------------------------- | ----------------------------------------------------------------------------- |\n| `hasRoleRule(role, ruleName?)`           | Passes when `user.roles` includes `role`.                                     |\n| `hasAnyRoleRule(...roles)`               | Passes when `user.roles` includes at least one of `roles`.                    |\n| `hasAnyRoleRuleWithName(name, ...roles)` | Same, with an explicit rule name / cache key for large or dynamic role lists. |\n| `hasScopeRule(scope)`                    | Passes when `user.scopes` includes `scope`.                                   |\n| `hasAnyScopeRule(...scopes)`             | Passes when `user.scopes` includes at least one of `scopes`.                  |\n\n### createRule\n\nStrongly typed wrapper around graphql-shield's `rule(...)`. Mirrors the underlying call signature — `createRule(name?, options?)(fn)` — but types `parent`, `args` and `ctx` on `fn` to your generics instead of `any`.\n\n```ts\nconst isOwner = createRule<GraphQLContext, { ownerId: string }>()((parent, _, ctx) => parent.ownerId === ctx.user?.id)\n\nconst isAdmin = createRule<GraphQLContext>('isAdmin', { cache: 'contextual' })((_, __, ctx) => ctx.user?.roles.includes('admin') === true)\n```\n\nGenerics are `<TContext, TParent = unknown, TArgs = unknown>`. The `name` and `options` arguments are forwarded verbatim to graphql-shield's `rule`.\n\n### combineRuleWithAll\n\nComposes a rule with every rule in an existing shield schema via a combinator (`and` | `or` | `chain` | `race`). Useful for post-hoc gating — e.g. bolting a \"not blocked\" check onto an existing schema without touching each field:\n\n```ts\nimport { chain } from 'graphql-shield'\n\nconst gated = combineRuleWithAll(shieldSchema, accountNotBlocked, chain)\n```\n\n### Authorization errors\n\nThe `unauthorised` module provides shared helpers for producing forbidden errors used by the shield wrapper and by resolvers.\n\n| Helper                                     | Description                                                                                             |\n| ------------------------------------------ | ------------------------------------------------------------------------------------------------------- |\n| `unauthorisedError(message?)`              | Builds a `GraphQLError` with Apollo's `FORBIDDEN` extension code and HTTP 403 status.                   |\n| `throwUnauthorised(message?)`              | Throws `unauthorisedError`; return type is `never` so TypeScript narrows control flow past the call.    |\n| `permissionInvariant(condition, message?)` | Assertion helper: throws `unauthorisedError` when `condition` is false, otherwise narrows it to `true`. |\n\n```ts\npermissionInvariant(ctx.user?.id === record.ownerId, 'Only the owner can edit this record')\n// past this line, TypeScript knows the condition held\n```\n\n## Logging\n\n### logGraphQLOperation\n\nLogs a GraphQL operation in a consistent format with the option of including any additional data. Top level and result level log data with null or undefined values will be omitted for berevity.\n\nRefer to the `GraphQLLogOperationInfo` type for the definition of input.\n\nThis function can be used across implementations, e.g. in a [GraphQL Envelop plugin](https://www.envelop.dev/docs/plugins) or [ApolloServer plugin](https://github.com/MakerXStudio/graphql-apollo-server/blob/main/src/plugins/graphql-operation-logging-plugin.ts).\n\n## Deprecation usage\n\n### collectDeprecatedElementUsage\n\nReports every `@deprecated` schema element an operation uses, so you can tell whether a deprecated element is safe to remove.\n\n```ts\nconst { elements, truncated } = collectDeprecatedElementUsage({ schema, document, operation, operationName, variables })\n// elements:  [{ kind: 'input-field', name: 'WidgetFilterInput.legacyId', path: '$input.legacyId' }]\n// truncated: false\n```\n\nFive kinds are detected: `output-field`, `argument`, `directive-argument`, `input-field` and `enum-value`.\n\nOutput fields and arguments are named in the operation document, so an AST walk finds them. Input fields and enum values are data the caller _supplies_ rather than selects, and can arrive either as a document literal or inside a variable — where the name appears nowhere in the AST — so the supplied variable values are walked too, against their declared input types.\n\nConsumers generally don't call this directly. It is wired into `useSubscriptionsServer` via `includeDeprecatedElements` (below), and into Apollo Server by the `includeDeprecatedElements` option of [`graphqlOperationLoggingPlugin`](https://github.com/MakerXStudio/graphql-apollo-server), which adds the result to the operation log entry as `deprecatedElements`.\n\nBehaviour worth knowing:\n\n- **Results are deduplicated** on kind and name, and sorted. One request produces at most one entry per distinct element, so a 40-element list carrying the same deprecated field yields one record, not 40.\n- **Only the executed operation counts.** A document may hold several operations but only one runs, so the others — and any fragments only they reach — are excluded.\n- **Presence is the signal, explicit `null` included.** A client still sending a field would break if it were removed.\n- **It never throws on malformed variables.** The walk runs before graphql-js coerces variables, so a payload whose shape contradicts its declared type reaches it; such values yield no records rather than an error.\n- **Work is bounded** by `maxVariableDepth` (default 25), `maxVariableNodes` (default 10,000) and `maxElements` (default 50). Whenever any of them stops collection early, `truncated` is `true`.\n- **`truncated` guards against a false negative.** Absence from `elements` only means an element went unused when `truncated` is `false`; on a truncated result the walk stopped before it finished. This matters because reading \"nothing uses this\" off an incomplete result is exactly how a still-used element gets deleted. Deduplication and null values do not set it — nothing is lost in either case.\n\nTwo limitations to design around:\n\n- **This is request-side telemetry.** It observes values a caller _sends_, never values the server returns. A deprecated enum value that only ever appears in responses reads as unused however often the server returns it.\n- **`path` is a best-effort debugging aid, not an aggregation key.** Aggregate on `name`. A field selected inside a fragment definition has no enclosing field in its ancestry, so its path is relative to the fragment rather than the operation — which is the common case for clients that use generated fragments.\n\n## GraphQL subscriptions\n\nThis library includes a `subscriptions` module to provide simple setup using the [GraphQL WS](https://the-guild.dev/graphql/ws) package.\n\n1. Install subscriptions dependencies (optional peer dependencies of this package):\n   ```\n   npm i graphql-ws ws\n   ```\n1. Subscription context setup:\n\n   `createSubscriptionContextFactory` returns a function that creates an equivalent GraphQL context using input supplied to the [graphql-ws Server context callback](https://the-guild.dev/graphql/ws/docs/interfaces/server.ServerOptions#onconnect).\n\n   Example showing both normal context + subscription context creation:\n\n   ```ts\n   type ExtraContext = { services: Services; dataSource: DataSource; dataLoaders: DataLoaders }\n\n   // the `context` arg is typed `GraphQLContext<Logger, RequestInfo, AppUser | undefined>` here —\n   // TUser flows through from `createUser`, so just annotate the return type and let inference do the rest\n   const augmentContext = (context: GraphQLContext<Logger, RequestInfo, AppUser | undefined>): ExtraContext => {\n     const services = createServices(context)\n     const dataLoaders = createDataLoaders()\n     return { services, dataSource, dataLoaders }\n   }\n\n   // create a context using request based input — TUser / TAugment inferred from the config\n   const createContext = createContextFactory({\n     claimsToLog,\n     requestInfoToLog,\n     requestLogger: (requestMetadata, user) => logger.child({ ...requestMetadata, instance: user?.instance }),\n     createUser: ({ claims, req }) => findUpdateOrCreateUser(claims, req.headers.authorization?.substring(7)),\n     augmentContext,\n   })\n\n   // create a context using graphql-ws Server#context callback input\n   const createSubscriptionContext = createSubscriptionContextFactory({\n     claimsToLog,\n     requestInfoToLog,\n     requestLogger: (requestMetadata, user) => logger.child({ ...requestMetadata, instance: user?.instance }),\n     createUser: ({ claims, connectionParams }) => findUpdateOrCreateUser(claims, extractTokenFromConnectionParams(connectionParams)),\n     augmentContext,\n   })\n\n   // share one context type between query and subscription paths\n   export type GraphQLContext = Awaited<ReturnType<typeof createContext>>\n   ```\n\n1. Create a subscriptions server, using the ws-server cleanup function in your server lifecycle.\n\n   The `useSubscriptionsServer` function sets up:\n   - Auth token validation as part of establishing (or rejecting) the connection (behaviour defined by `verifyToken`, `extractToken` and `requireAuth` args)\n   - GraphQL context creation\n   - Logging from the server `onConnect`, `onDisconnect`, `onOperation`, `onNext` and `onError` callbacks\n\n   Pass `includeDeprecatedElements: true` to add [deprecation usage](#collectdeprecatedelementusage) to the operation log entry as `deprecatedElements`. It is collected once, when the subscription is established, rather than per emitted payload — the usage is a property of the operation, not of each event.\n\n   Example for Apollo Server (`wsServerCleanup` called in the `drainServer` plugin callback):\n\n   ```ts\n    export const startApolloServer = async (app: Express, httpServer: http.Server) => {\n      logger.info('Building schema')\n      const schema = createSchema()\n\n      logger.info('Initialising subscriptions websocket server')\n      const wsServerCleanup = useSubscriptionsServer({\n        schema,\n        httpServer,\n        logger,\n        createSubscriptionContext,\n        jwtClaimsToLog: config.get('logging.userClaimsToLog'),\n        requireAuth: true,\n        verifyToken: (host, token) => verifyForHost(host, token, config.get('auth.bearer')),\n      })\n\n      logger.info('Starting apollo server')\n      const server = new ApolloServer<GraphQLContext>({\n        schema,\n        plugins: plugins(httpServer, wsServerCleanup),\n        introspection: true,\n        csrfPrevention: true,\n      })\n      await server.start()\n\n   ```\n\n1. For authorisation, clients can include a connection parameter named `authorization` or `Authorization` using the HTTP header format `Bearer <token>`. Note: [Apollo Sandbox](https://studio.apollographql.com/sandbox/explorer) will include an `Authorization` connection parameter when you specify an HTTP `Authorization` header via the UI.\n\n   If the token arrives another way, supply an `extractToken` function to both `useSubscriptionsServer` (which passes the token to `verifyToken`) and `createSubscriptionContextFactory` (which sets it as `User.token`). It receives the `connectRequest` (the HTTP upgrade request) and the `connectionParams`, and returns the token or `undefined`. For example, to read a JWT assertion header that a proxy adds to the upgrade request (browsers cannot set custom headers on a websocket request):\n\n   ```ts\n   const extractToken: ExtractSubscriptionToken = ({ connectRequest }) =>\n     connectRequest.headers['x-goog-iap-jwt-assertion'] as string | undefined\n\n   const createSubscriptionContext = createSubscriptionContextFactory({ requestLogger, extractToken })\n\n   useSubscriptionsServer({ schema, httpServer, logger, createSubscriptionContext, extractToken, requireAuth: true, verifyToken })\n   ```\n\n### wrapSubscriptionIterator\n\nWraps an `AsyncIterableIterator` (e.g. one returned by a pubsub `asyncIterableIterator(...)` call) with two optional behaviours:\n\n- `initialPayload` — a single event, an array of events, or a **factory** (`() => event | event[] | undefined | Promise<…>`) yielded before the wrapped iterator's events. Useful when a client subscribes after a state change has already happened, so they don't miss the current state while waiting for the next event. A factory may return `undefined` (e.g. a `findOne` that yields nothing) to mean \"no snapshot\", in which case iteration proceeds straight to the wrapped stream.\n- `eventIsFinal` — a predicate that ends iteration eagerly when it returns `true` for an event. The triggering event is still yielded, then `wrapped.return()` is called to release resources. It is checked against every event from the wrapped iterator **and** against the _final_ entry of `initialPayload` (earlier entries are always yielded); if that final entry is terminal, iteration ends after the payload drains — in the value form without ever pulling the wrapped iterator.\n\n#### Prefer the factory form for \"snapshot then stream\"\n\npubsub iterators (e.g. `graphql-subscriptions` / `graphql-redis-subscriptions`) subscribe to their channel **lazily, on the first `next()`**. If you read your snapshot (the initial payload) _before_ the iterator is pulled, the channel isn't live yet — any event published between the snapshot read and the subscription going live is **lost** _and_ missing from the snapshot, so the client can be left showing stale state until a manual refetch.\n\nPassing `initialPayload` as a **factory** closes that window: the helper eagerly pulls the wrapped iterator once (establishing the subscription) _before_ invoking the factory to read the snapshot. Events fired during the snapshot read are then buffered by the wrapped iterator and delivered immediately after the snapshot, instead of being dropped.\n\n```ts\nreturn wrapSubscriptionIterator({\n  iterator: pubsub().asyncIterableIterator(`topic.${id}`),\n  // factory runs AFTER the subscription is kicked, so an event fired during the read isn't lost\n  initialPayload: () => repo.find({ where: { id } }),\n})\n```\n\n> The plain value form (a single event or array) is unchanged and still subscribes lazily — fine when there is no read between subscribe and snapshot (e.g. a cached value already in hand, as below).\n>\n> Detection is via `typeof initialPayload === 'function'`. If your event type is itself callable, wrap a value-form payload in an array (`[value]`) to disambiguate it from a factory.\n\nTypical use is in a subscription resolver that needs to bridge a \"current state\" (cache or other persisted state lookup) with a live event stream, and close the subscription once a terminal event arrives:\n\n```ts\nconst eventIsFinal = (data: BackgroundJobTopicData) =>\n  [BackgroundJobStatus.Completed, BackgroundJobStatus.Failed].includes(data.event.status)\n\nexport const subscribeToBackgroundJobEvents = async (\n  args: SubscriptionBackgroundJobEventArgs,\n): Promise<AsyncIterator<BackgroundJobTopicData> & AsyncIterable<BackgroundJobTopicData>> => {\n  const initialPayload = await getJobFinishedEventFromCache(args.jobId)\n  const iterator = pubsub().asyncIterableIterator<BackgroundJobTopicData>(`${BACKGROUND_JOB_TOPIC}.${args.jobId}`)\n  return wrapSubscriptionIterator({\n    iterator,\n    initialPayload: initialPayload ? [initialPayload] : undefined,\n    eventIsFinal,\n  })\n}\n```\n\nThe returned value is both an `AsyncIterator` and `AsyncIterable`, so it can be consumed via `for await` or by manual `next()` calls. `return()` and `throw()` are forwarded to the wrapped iterator when present.\n\n## Utils\n\n- `isIntrospectionQuery`: indicates whether the query is an introspection query, based on the operation name or query content.\n- `extractAnonymousOperationName`: derives a synthetic operation name from a query source that has no explicit name, by combining the operation type with the first top-level selection — handy for logging/observability when clients send anonymous operations. Returns `undefined` if no top-level field can be found.\n\n  ```ts\n  extractAnonymousOperationName('{ users { id } }') // 'query users'\n  extractAnonymousOperationName('mutation { createUser { id } }') // 'mutation createUser'\n  extractAnonymousOperationName('subscription { onUpdate { id } }') // 'subscription onUpdate'\n  ```\n\n## GraphQL test helpers\n\nThe `@makerx/graphql-core/testing` submodule provides helpers for running GraphQL operations directly against a schema, without spinning up an HTTP or websocket server.\n\nBypassing the transport layer supports complete control over JWT payloads and other operation context inputs required to set up complex test scenarios.\n\nThis complements the `@makerx/graphql-apollo-server/testing` module, which exports `buildExecuteOperation` for running queries and mutations directly against an `ApolloServer` instance. Subscriptions normally flow over websockets via [graphql-ws](https://the-guild.dev/graphql/ws), so they need their own helper that calls `graphql.subscribe` directly against the schema.\n\n### buildSubscribeOperation\n\n`buildSubscribeOperation` accepts a `GraphQLSchema` (or async schema factory) and a context creation function and returns a `subscribeOperation` function which:\n\n- is strongly typed to the GraphQL context\n- accepts `TypedDocumentNode` subscriptions to provide strong operation typing\n- forwards any additional arguments to the supplied context creation function\n- returns the subscription's `AsyncIterableIterator<ExecutionResult<TData>>` so tests can consume events via `for await` or manual `next()` calls\n- throws if the subscription fails to produce an iterator (e.g. a validation error), surfacing the underlying errors\n\nThe shape of the context creation function — and the JWT/user factories used to drive it — depends on your GraphQL implementation, so the example below illustrates one common pattern using [Vitest test contexts](https://vitest.dev/guide/test-context), matching the [`buildExecuteOperation`](https://github.com/MakerXStudio/graphql-apollo-server#apollo-server-test-helpers) examples for queries and mutations.\n\n#### Vitest GraphQL context example\n\nNote: extend auth context (e.g. `buildJwt`, `buildUserJwt`) and other context as required — see the [graphql-apollo-server test helper docs](https://github.com/MakerXStudio/graphql-apollo-server#vitest-auth-context-example) for a complete auth fixture example.\n\n`test/graphql.ts`\n\n```ts\nimport { buildSubscribeOperation } from '@makerx/graphql-core/testing'\nimport { test as baseTest } from './auth'\n\nconst createContext = async (jwtPayload?: JwtPayload): Promise<GraphQLContext> => {\n  const user = await findUpdateOrCreateUser(jwtPayload, randomUUID())\n  const baseContext: BaseContext = { user, logger, requestInfo, started: Date.now() }\n  const extraContext = await augmentContext(baseContext)\n  return { ...baseContext, ...extraContext }\n}\n\nexport const test = baseTest\n  .extend('schema', { scope: 'worker' }, async ({}) => createSchema())\n  .extend('backgroundJobs', { scope: 'worker' }, backgroundJobsFixture)\n  .extend('executeOperation', { scope: 'worker' }, async ({ schema }, { onCleanup }) => {\n    const server = new ApolloServer<GraphQLContext>({ schema })\n    onCleanup(() => server.stop())\n    return buildExecuteOperation(server, createContext)\n  })\n  .extend('subscribeOperation', { scope: 'worker' }, async ({ schema }) => {\n    return buildSubscribeOperation(schema, createContext)\n  })\n```\n\n#### job-status.subscription.test.ts\n\nThe test below uses the `graphql` template-literal tag from [GraphQL-Codegen](https://the-guild.dev/graphql/codegen/docs/getting-started) to produce strongly typed operations.\n\n```ts\nimport { describe, expect } from 'vitest'\nimport { graphql } from './gql'\nimport { test } from '../../../test/graphql'\n\nconst jobStatusSubscription = graphql(`\n  subscription JobStatus($jobId: ID!) {\n    jobStatus(jobId: $jobId) {\n      jobId\n      status\n    }\n  }\n`)\n\ndescribe('jobStatus subscription operation', () => {\n  test('anonymous subscribes fail', async ({ subscribeOperation }) => {\n    await expect(subscribeOperation({ subscription: jobStatusSubscription, variables: { jobId: 'job-1' } })).rejects.toThrow(\n      /Not authenticated/,\n    )\n  })\n\n  test('authenticated subscribers receive events until terminal status', async ({ subscribeOperation, buildUserJwt }) => {\n    const jwt = buildUserJwt()\n    const jobId = randomUUID()\n\n    const iterator = await subscribeOperation({ subscription: jobStatusSubscription, variables: { jobId } }, jwt)\n\n    // app-specific: trigger the events your subscription resolves over\n    // await addJob('demo', { demoPayload: 'subscription-test' }, { jobId })\n\n    const events: JobStatusSubscription[] = []\n    for await (const result of iterator) {\n      if (result.data) events.push(result.data)\n    }\n\n    expect(events.at(-1)?.jobStatus.status).toBe('Completed')\n  })\n})\n```\n\nThe first argument is a `TypedSubscribeRequest` (`subscription`, `variables`, `operationName`); any further arguments are forwarded verbatim to the context creation function — in the example above, the optional `JwtPayload` produced by `buildUserJwt()`.\n\nWhen pairing this helper with [`wrapSubscriptionIterator`](#wrapsubscriptioniterator), `eventIsFinal` will close the subscription once a terminal event arrives, ending the `for await` loop above without manual cleanup.\n\n## \\*Express peer dependency\n\nApolloServer v3 standardises on the Express request representation.\n\nGraphQL Yoga uses the NodeJS http request representation, plus adds the Express version when using an Express server.\n\nThis library therefore takes a peer dependency on Express as the standard (common) request representation.\n\nThe ApolloServer [v4 roadmap](https://github.com/apollographql/apollo-server/blob/main/ROADMAP.md#replace-9-core-maintained-bindings-with-a-stable-http-abstraction) will standardise on the NodeJS http request representation.\n\nThis library may swap to the NodeJS http representation in a future version.\n","readmeFilename":"README.md"}