{"_id":"@acceleratxr/passport-discord-token","_rev":"3-a24983ff6263278cc4afeb79fe640486","name":"@acceleratxr/passport-discord-token","dist-tags":{"latest":"2.0.0"},"versions":{"1.0.3":{"name":"@acceleratxr/passport-discord-token","version":"1.0.3","description":"Passport strategy for authenticating with Discord access tokens using the OAuth 2.0 API.","author":{"name":"AcceleratXR, Inc.","email":"info@acceleratxr.com"},"repository":{"type":"git","url":"https://gitlab.acceleratxr.com/AcceleratXR/passport-discord-token.git"},"license":"MIT","main":"dist/lib/index.js","typings":"dist/types/index.d.ts","engines":{"node":">=10.0.0"},"scripts":{"lint":"tslint  --project tsconfig.json -t codeFrame 'src/**/*.ts' 'test/**/*.ts'","prebuild":"rimraf dist","build":"tsc","docs":"typedoc --plugin typedoc-plugin-markdown --out docs/reference --target esnext --mode file src","test":"jest --detectOpenHandles","test:watch":"jest --detectOpenHandles --watch","test:prod":"npm run lint && npm run test -- --coverage --no-cache","deploy-docs":"ts-node tools/gh-pages-publish","report-coverage":"cat ./coverage/lcov.info | coveralls","commit":"git-cz","semantic-release":"semantic-release","semantic-release-prepare":"ts-node tools/semantic-release-prepare","precommit":"lint-staged","postversion":"git push && git push --tags"},"lint-staged":{"{src,test}/**/*.ts":["prettier --write","git add"]},"config":{"commitizen":{"path":"node_modules/cz-conventional-changelog"},"mongodbMemoryServer":{"version":"4.2.2"}},"jest":{"globals":{"ts-jest":{"tsConfig":"tsconfig.test.json","diagnostics":{"ignoreCodes":[2321]}}},"transform":{".(ts|tsx)":"ts-jest"},"testEnvironment":"node","testRegex":"(/__tests__/.*|\\.(test|spec))\\.(ts|tsx|js)$","moduleFileExtensions":["ts","tsx","js","json"],"coveragePathIgnorePatterns":["/node_modules/","/test/"],"coverageThreshold":{"global":{"branches":0,"functions":0,"lines":0,"statements":0}},"collectCoverageFrom":["src/*.{js,ts}"]},"prettier":{"printWidth":120,"semi":true,"singleQuote":false,"tabWidth":4,"trailingComma":"es5"},"commitlint":{"extends":["@commitlint/config-conventional"]},"devDependencies":{"@commitlint/cli":"^16.0.3","@commitlint/config-conventional":"^16.0.0","@types/express":"^4.17.13","@types/jest":"^27.4.0","commitizen":"^4.2.4","express":"^4.17.2","jest":"^27.0.6","jest-config":"^27.0.6","jest-haste-map":"^27.0.6","jest-resolve":"^27.0.6","lint-staged":"^12.2.1","lodash.camelcase":"^4.3.0","nock":"^13.1.1","prettier":"^2.3.2","rimraf":"^3.0.2","semantic-release":"^19.0.2","supertest":"^6.2.2","ts-jest":"^27.0.4","tslint":"^6.1.3","tslint-config-prettier":"^1.18.0","tslint-config-standard":"^9.0.0","typedoc":"^0.22.11","typedoc-plugin-markdown":"^3.10.4"},"dependencies":{"@types/node":"^17.0.10","@types/passport":"^1.0.7","@types/passport-oauth2":"^1.4.11","@types/passport-strategy":"^0.2.35","passport":"^0.5.2","passport-oauth":"^1.0.0","passport-oauth2":"^1.6.1","typescript":"^4.3.5"},"gitHead":"ee953554dc7d194d5bbd2a69824500c9ea070e4b","_id":"@acceleratxr/passport-discord-token@1.0.3","_nodeVersion":"14.17.4","_npmVersion":"6.14.14","dist":{"integrity":"sha512-F1KVPky9WA2b15oXeXqdu0jwRIe7iheYlyKWlp6C9aotQk0iFyWnBn/QoIF+YY+0CCyLNB+5jMUmpAjycpKp2w==","shasum":"d2ee71b4c032ecd48896cea0590aaf0f418708a3","tarball":"https://registry.npmjs.org/@acceleratxr/passport-discord-token/-/passport-discord-token-1.0.3.tgz","fileCount":8,"unpackedSize":15436,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh6MpPCRA9TVsSAnZWagAA8UkP/1RlAok5RgHvb5JSfoyw\nvWsQ9eehMxBkPMPB+vYIB4okfbu47YBRPL7TZ1R7/2u3ZYxzMlUVKxT7EqSb\nCdgPsmWIIAlLJgVMY2JNIe3HAkZqbq9n8cfKX/A8q7Y3hMC3Z0xXKRqTrqvR\nohOJ6eX/YsC2e0KmZUKNkzqYPYU+m6Y0KDQvH2l11STIpbDBkTdNVM8KlRSo\njIOLsARrFG5SjjqoS0K+ZHi5OevvCq3W6IG9OKTXgkZdSRoSXQvidpuEDCuT\np3EnF+RM85mf/F+wG4JLclLgNyviSvH311GusH1lUrDMDAuSzYjw7CA+/CbV\nM9EEZ9JQ9LMxHVudHHtOG7cO4fgGsw3pjYMHHXuonXx4LATWIHuZV5ZJgJu3\nchFZ44Nw8bUny5sXZE589B36Z0aifNxyoH2Vh3PhMdm8GYjUC54PCiKIwVvt\nOp+CJenBGHF4ubKcCmdv3aPekx/Hb7fpxk6zGpBhW9HmLDbmqt9JkiWK8jX3\nf9L+IAAHgIm7aLsdmGeJQS7jKsmEviXaBpgoi7sj4DLRBbbKnwvHQTNIWBfb\nOXUlRqCC+EXOcFPPHtsbHr4aLBESRec0QnCbF8kVVda+wMTYG4SPoeBmtUJV\n48gRrwsFC66Gkt8cz+vYI1c5XVgHM/rsXlIMkkUVBzmch7d1ZOhxYlv4QyxX\nOc5K\r\n=7toz\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCf52V2YOW/hye5vmljybwSB3YVK0BuQMBKn7RqFDaK/gIgdQvLg0AigHYe0CFKvAOqDjGkyqG11dj7Ks05TXcA/eo="}]},"_npmUser":{"name":"acceleratxr","email":"admin@acceleratxr.com"},"directories":{},"maintainers":[{"name":"acceleratxr","email":"admin@acceleratxr.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/passport-discord-token_1.0.3_1642646095784_0.7223322524376374"},"_hasShrinkwrap":false},"1.1.0":{"name":"@acceleratxr/passport-discord-token","version":"1.1.0","description":"Passport strategy for authenticating with Discord access tokens using the OAuth 2.0 API.","author":{"name":"AcceleratXR, Inc.","email":"info@acceleratxr.com"},"repository":{"type":"git","url":"https://gitlab.acceleratxr.com/AcceleratXR/passport-discord-token.git"},"license":"MIT","main":"dist/lib/index.js","typings":"dist/types/index.d.ts","engines":{"node":">=10.0.0"},"scripts":{"lint":"tslint  --project tsconfig.json -t codeFrame 'src/**/*.ts' 'test/**/*.ts'","prebuild":"rimraf dist","build":"tsc","docs":"typedoc --plugin typedoc-plugin-markdown --out docs/reference --target esnext --mode file src","test":"jest --detectOpenHandles","test:watch":"jest --detectOpenHandles --watch","test:prod":"npm run lint && npm run test -- --coverage --no-cache","deploy-docs":"ts-node tools/gh-pages-publish","report-coverage":"cat ./coverage/lcov.info | coveralls","commit":"git-cz","semantic-release":"semantic-release","semantic-release-prepare":"ts-node tools/semantic-release-prepare","precommit":"lint-staged","postversion":"git push && git push --tags"},"lint-staged":{"{src,test}/**/*.ts":["prettier --write","git add"]},"config":{"commitizen":{"path":"node_modules/cz-conventional-changelog"},"mongodbMemoryServer":{"version":"4.2.2"}},"jest":{"globals":{"ts-jest":{"tsConfig":"tsconfig.test.json","diagnostics":{"ignoreCodes":[2321]}}},"transform":{".(ts|tsx)":"ts-jest"},"testEnvironment":"node","testRegex":"(/__tests__/.*|\\.(test|spec))\\.(ts|tsx|js)$","moduleFileExtensions":["ts","tsx","js","json"],"coveragePathIgnorePatterns":["/node_modules/","/test/"],"coverageThreshold":{"global":{"branches":0,"functions":0,"lines":0,"statements":0}},"collectCoverageFrom":["src/*.{js,ts}"]},"prettier":{"printWidth":120,"semi":true,"singleQuote":false,"tabWidth":4,"trailingComma":"es5"},"commitlint":{"extends":["@commitlint/config-conventional"]},"devDependencies":{"@commitlint/cli":"^16.0.3","@commitlint/config-conventional":"^16.0.0","@types/express":"^4.17.13","@types/jest":"^27.4.0","commitizen":"^4.2.4","express":"^4.17.2","jest":"^27.0.6","jest-config":"^27.0.6","jest-haste-map":"^27.0.6","jest-resolve":"^27.0.6","lint-staged":"^12.2.1","lodash.camelcase":"^4.3.0","nock":"^13.1.1","prettier":"^2.3.2","rimraf":"^3.0.2","semantic-release":"^19.0.2","supertest":"^6.2.2","ts-jest":"^27.0.4","tslint":"^6.1.3","tslint-config-prettier":"^1.18.0","tslint-config-standard":"^9.0.0","typedoc":"^0.22.11","typedoc-plugin-markdown":"^3.10.4"},"dependencies":{"@types/node":"^17.0.10","@types/passport":"^1.0.7","@types/passport-oauth2":"^1.4.11","@types/passport-strategy":"^0.2.35","passport":"^0.5.2","passport-oauth":"^1.0.0","passport-oauth2":"^1.6.1","typescript":"^4.3.5"},"gitHead":"28f42f9c2980e9562b0bc1025d3aa4461fc44e10","_id":"@acceleratxr/passport-discord-token@1.1.0","_nodeVersion":"14.17.4","_npmVersion":"6.14.14","dist":{"integrity":"sha512-tHQZ5tbOBYDIol46n7t4jHbwj2DA0kEi39zanzXVwAdJfiMFMhstQQS8Nx537sgZHkReqVb3JWMiJ1oo/Q1KuQ==","shasum":"9459c418f99f61fbdccbee55c19ed96f6d1496d0","tarball":"https://registry.npmjs.org/@acceleratxr/passport-discord-token/-/passport-discord-token-1.1.0.tgz","fileCount":8,"unpackedSize":15435,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh6eOUCRA9TVsSAnZWagAA51YP/jRD3Mny1jjSmF2NOmkc\niMym8EudsdPvhMSifK5bZQlwwa7Wqtj7029wrW94q2kZHfuPjroG/ATRcS1B\n6XnSRyA5hyeMFc6xO6glx5x4ChXz463ATYDtgpAQ7+BLtxrcKQl+mvo9J8ju\nKVyDi4mGKYmYjy4Ft5wfTasHSaqfx5BrTd3HcPMnkV5ZmBxU4l89qULOku4O\n1j68vxB7ELV+N4ilXDTaV0Xns725SYV/eTpm23I3kHzy+SNbINmirzFKXCTD\n1uKUlZfy7YUTw6VOw9NOA0KzqawV7bj4Ny2heXzsXf3OdyMvARNrErdAUK92\nOKFWYDw/YGTe4KGMMNqQ2/22UOyHvBh0T7S1GiCubk7guHmxNftcH6b8rNNW\n/TqY34LMO54+ciKcqNU6kQBegXwTdl2Yh6umeQbtBKSZt5V36gNdvutavCiW\nkr9NomUiqUWk/bqKC/qpQBtpzAvHkR/lJR2VB0PprWLzLbSPT4YnXu+H7qMK\nvLwMiYCOe49+z4xg4CvWEm/kNi6eZLI3maaT4oVcpTei/L2NVsvD3UZnqOZ/\n0WbhBn3bnt0EBsfvAVoMOsyMxB0kCxj6AfuA95Ue3fH8WeFHlCz8Rd3NzWza\nu3vaYAgDIzFvN9hCAQrmKTlmfxxCuJ7URrl5SUBs8RwlLoDLOx4JmecpbiJR\nK3gw\r\n=KnqX\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDqnxl4GA6TTZBQCz86YKSu8JLD9XFCRPvp0LUK2ffAWwIhAM2iIsr3g83hTGzdjNT7p4vNyveLOcJ+Rqfw7k4xjLUX"}]},"_npmUser":{"name":"acceleratxr","email":"admin@acceleratxr.com"},"directories":{},"maintainers":[{"name":"acceleratxr","email":"admin@acceleratxr.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/passport-discord-token_1.1.0_1642718100052_0.34826144383472113"},"_hasShrinkwrap":false},"2.0.0":{"name":"@acceleratxr/passport-discord-token","version":"2.0.0","description":"Passport strategy for authenticating with Discord access tokens using the OAuth 2.0 API.","author":{"name":"AcceleratXR, Inc.","email":"info@acceleratxr.com"},"repository":{"type":"git","url":"https://gitlab.acceleratxr.com/AcceleratXR/passport-discord-token.git"},"license":"MIT","main":"dist/lib/index.js","typings":"dist/types/index.d.ts","engines":{"node":">=10.0.0"},"scripts":{"lint":"tslint  --project tsconfig.json -t codeFrame 'src/**/*.ts' 'test/**/*.ts'","prebuild":"rimraf dist","build":"tsc","docs":"typedoc --plugin typedoc-plugin-markdown --out docs/reference --target esnext --mode file src","test":"jest --detectOpenHandles","test:watch":"jest --detectOpenHandles --watch","test:prod":"npm run lint && npm run test -- --coverage --no-cache","deploy-docs":"ts-node tools/gh-pages-publish","report-coverage":"cat ./coverage/lcov.info | coveralls","commit":"git-cz","semantic-release":"semantic-release","semantic-release-prepare":"ts-node tools/semantic-release-prepare","precommit":"lint-staged","postversion":"git push && git push --tags"},"lint-staged":{"{src,test}/**/*.ts":["prettier --write","git add"]},"config":{"commitizen":{"path":"node_modules/cz-conventional-changelog"},"mongodbMemoryServer":{"version":"4.2.2"}},"jest":{"globals":{"ts-jest":{"tsConfig":"tsconfig.test.json","diagnostics":{"ignoreCodes":[2321]}}},"transform":{".(ts|tsx)":"ts-jest"},"testEnvironment":"node","testRegex":"(/__tests__/.*|\\.(test|spec))\\.(ts|tsx|js)$","moduleFileExtensions":["ts","tsx","js","json"],"coveragePathIgnorePatterns":["/node_modules/","/test/"],"coverageThreshold":{"global":{"branches":0,"functions":0,"lines":0,"statements":0}},"collectCoverageFrom":["src/*.{js,ts}"]},"prettier":{"printWidth":120,"semi":true,"singleQuote":false,"tabWidth":4,"trailingComma":"es5"},"commitlint":{"extends":["@commitlint/config-conventional"]},"devDependencies":{"@commitlint/cli":"^16.0.3","@commitlint/config-conventional":"^16.0.0","@types/express":"^4.17.13","@types/jest":"^27.4.0","commitizen":"^4.2.4","express":"^4.17.2","jest":"^27.0.6","jest-config":"^27.0.6","jest-haste-map":"^27.0.6","jest-resolve":"^27.0.6","lint-staged":"^12.2.1","lodash.camelcase":"^4.3.0","nock":"^13.1.1","prettier":"^2.3.2","rimraf":"^3.0.2","semantic-release":"^19.0.2","supertest":"^6.2.2","ts-jest":"^27.0.4","tslint":"^6.1.3","tslint-config-prettier":"^1.18.0","tslint-config-standard":"^9.0.0","typedoc":"^0.22.11","typedoc-plugin-markdown":"^3.10.4"},"dependencies":{"@types/node":"^17.0.10","@types/passport":"^1.0.7","@types/passport-oauth2":"^1.4.11","@types/passport-strategy":"^0.2.35","passport":"^0.5.2","passport-oauth":"^1.0.0","passport-oauth2":"^1.6.1","typescript":"^4.3.5"},"gitHead":"fff5dea68731a0da6b99075f090dab2e420754e0","_id":"@acceleratxr/passport-discord-token@2.0.0","_nodeVersion":"16.14.0","_npmVersion":"8.3.1","dist":{"integrity":"sha512-Bcow0Cb9FOgxsC1gWOyzM0YffJ6J2tL8wNTl6MrHu1rNVuPKCEaPuobHh6kVRu8s4rO2xL0LjKWdNGUZ4kCJnw==","shasum":"de27787797b1a26a40bb28b4a7a655226ad09bdf","tarball":"https://registry.npmjs.org/@acceleratxr/passport-discord-token/-/passport-discord-token-2.0.0.tgz","fileCount":8,"unpackedSize":15610,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJiCFAICRA9TVsSAnZWagAAqckP/3c/+nKsAIZNJu5dIEMt\nqAlI1ZuiY0tSIl/g4fx2d0tdQD21YslGpg8JS55z8ASLURAN1B8is3sHMu6I\nig956HoywzSqXl3PaLt0TllWQoHGSfnHMhBkulLUNr0Aql3vn8p1Mt2RrYaa\n8Tp5l+GuFBdOszfmcAw40IlsBsWb7BSVbWBfAQ30g8BlzaMprMP9CZcekkuO\nm0q4E7YiuN9vY3x1nEyiEis1oK8zwiDipSa8co7On4dV4i0c6azNhD0LaLdL\n5U98bTSmDOAsNHCDdiplIhF6mJGSiI6jTm2Xpm49tr8L4vRnU1gUM79hwHkA\n6datYuYwBtL+t11lBC4TKV+YhDlD/SSUakwtkqznrPGX2x2AoOFwkJ7q/vSg\nfxMa4/mS3jC6JdK3BH0qHsecpOZUPZzTbV+Juao6DFk/GlW2weGwzeGr/jIe\nD/L5JhoTMcTC+sHcglorDONvCnkfp10wNKMa7um+FNSRlgPCtEDshilWhuBm\neRxy24jWN6HCYMPSDP0KKr/WJKtUhW9EfM7g2bhYDhK8xC9tvUG8koDfG4fE\nGjeVdT0m1SOlZ4UqFun12ZGhPRC/FBVHJvl6L7ebfiFK8bZSk89Rtv2PB+nT\nr8jprThGkYO4Q61EwXRrPbHqEztLL7GCHobxZmQTR40CP9F+Y2dgV8J5n3H+\nsOA/\r\n=VAmH\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCKbE7l7Js+Yl92+XYn6CTemENub/kL7Ulm11WhVStJWgIhAMowYN4Ga5emEI/VU5q5Oh/3qGGKRSsfq4Xagtmhi3sy"}]},"_npmUser":{"name":"acceleratxr","email":"admin@acceleratxr.com"},"directories":{},"maintainers":[{"name":"acceleratxr","email":"admin@acceleratxr.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/passport-discord-token_2.0.0_1644711944035_0.1001862154720472"},"_hasShrinkwrap":false}},"time":{"created":"2022-01-20T02:34:55.708Z","1.0.3":"2022-01-20T02:34:55.942Z","modified":"2022-04-04T11:06:41.089Z","1.1.0":"2022-01-20T22:35:00.542Z","2.0.0":"2022-02-13T00:25:44.201Z"},"maintainers":[{"name":"acceleratxr","email":"admin@acceleratxr.com"}],"description":"Passport strategy for authenticating with Discord access tokens using the OAuth 2.0 API.","repository":{"type":"git","url":"https://gitlab.acceleratxr.com/AcceleratXR/passport-discord-token.git"},"author":{"name":"AcceleratXR, Inc.","email":"info@acceleratxr.com"},"license":"MIT","readme":"# passport-discord-token\n\nPassport strategy for authenticating with Discord access tokens using the OAuth 2.0 API.\n\nThis module lets you authenticate using Discord in your Node.js applications using the Passport framework.\n\n## Installation\n```\nnpm install passport-discord-token\n```\n\nor\n\n```\nyarn add passport-discord-token\n```\n\n## Usage\n\n### Configure Strategy\n\nThe Discord authentication strategy authenticates users using a Discord account and OAuth 2.0 tokens. The strategy\nrequires a `verify` callback to perform a look up of the user account given a verified OAuth 2.0 token.\n\n#### JavaScript\n```\nconst DiscordTokenStrategy = require('passport-discord-token');\n\npassport.use(new DiscordTokenStrategy({\n    clientID: DISCORD_APP_ID,\n    clientSecret: DISCORD_APP_SECRET,\n    apiVersion: \"v8\"\n  }, function(accessToken, refreshToken, profile, done) {\n    User.findOrCreate({discordId: profile.id}, function (error, user) {\n      return done(error, user);\n    });\n  }\n));\n```\n\n#### TypeScript\n```\nimport { DiscordTokenStrategy } from \"passport-discord-token\";\n\npassport.use(new DiscordTokenStrategy({\n    clientID: DISCORD_APP_ID,\n    clientSecret: DISCORD_APP_SECRET,\n    apiVersion: \"v8\"\n  }, function(accessToken, refreshToken, profile, done) {\n    User.findOrCreate({discordId: profile.id}, function (error, user) {\n      return done(error, user);\n    });\n  }\n));\n```\n\n### Authenticate Requests\n\nUse `passport.authenticate()`, specifying `discord-token` as the strategy to authenticate requests.\n\n```\napp.post('/auth/discord/token',\n  passport.authenticate('discord-token'),\n  function (req, res) {\n    // do something with req.user\n    res.send(req.user? 200 : 401);\n  }\n);\n```\n\n### Client Requests\n\nClients can send requests to routes that use the *passport-discord-token* strategy using query params. Clients must\ntransmit the `code` parameter that is received after Discord login. Clients may also optionally transmit a `state`\nparameter.\n\n```\nGET /auth/discord/token?code=<TOKEN_HERE>&state=<STATE_HERE>\n```","readmeFilename":"README.md"}