{"_id":"@agyemanjp/passport-digitalocean","name":"@agyemanjp/passport-digitalocean","dist-tags":{"latest":"1.0.0"},"versions":{"1.0.0":{"name":"@agyemanjp/passport-digitalocean","version":"1.0.0","description":"DigitalOcean authentication strategy for Passport, written in TypeScript","keywords":["passport","digitalocean","auth","authn","authentication","identity","typescript"],"repository":{"type":"git","url":"git+ssh://git@github.com/agyemanjp/passport-digitalocean.git"},"bugs":{"url":"http://github.com/agyemanjp/passport-digitalocean/issues"},"contributors":[{"name":"James Prempeh","url":"http://github.com/agyemanjp"},{"name":"Dimitris Kapanidis","email":"d.kapanidis@gmail.com","url":"https://twitter.com/spiddy"}],"licenses":[{"type":"MIT","url":"http://www.opensource.org/licenses/MIT"}],"main":"index.js","types":"index.d.ts","dependencies":{"passport-oauth2":"1.x.x"},"devDependencies":{"@types/expect.js":"^0.3.29","@types/node":"^18.7.14","@types/passport-oauth2":"^1.4.11","@typescript-eslint/eslint-plugin":"^5.36.1","@typescript-eslint/parser":"^5.36.1","chai":"^3.4.0","eslint":"^8.23.0","expect.js":"^0.3.1","mocha":"^2.3.3","npm-run-all":"^4.1.5","typescript":"^4.8.2"},"scripts":{"deps":"rm -rf ./node_modules package-lock.json && npm install","clean":"rm -rf dist/* .eslintcache *.run.json","lint":"eslint --ext ts --cache 'lib/**'","compile":"tsc","test":"mocha test/*.test.*","build":"run-s lint compile test","pubstage":"cp package.json LICENSE README.md dist","pubpreview":"npm run pubstage && cd dist && npm publish --dry-run && cd ..","version:patch":"npm version patch && git push --follow-tags","version:minor":"npm version minor && git push --follow-tags","version:major":"npm version major && git push --follow-tags","publish:patch":"run-s build version:patch pubstage && cd dist && npm publish --access public && cd ..","publish:minor":"run-s build version:minor pubstage && cd dist && npm publish --access public && cd ..","publish:major":"run-s build version:major pubstage && cd dist && npm publish --access public && cd .."},"gitHead":"06c2a4e1a3feede7adb79ebad96cde09e3a2438e","homepage":"https://github.com/agyemanjp/passport-digitalocean#readme","_id":"@agyemanjp/passport-digitalocean@1.0.0","_nodeVersion":"16.14.0","_npmVersion":"8.19.1","dist":{"integrity":"sha512-qE136Bhe/NX9W0m/YToSyhY2wa0GgiwqWoBqTJ+zoXTtk8xMRBYEAuphf8C6edMy7g1QDEQVcvZIscuulJGyxw==","shasum":"c512195d76d29cd1c925b1aa83f0a236ad00821d","tarball":"https://registry.npmjs.org/@agyemanjp/passport-digitalocean/-/passport-digitalocean-1.0.0.tgz","fileCount":9,"unpackedSize":15621,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIB42TBJPNmkx9BEfZpXMB7RVpZODmrh+TfX+7qeCDaCzAiAA4ZwzMVDBur1VZ8sYhpHUErUi1Xuhnr7TE+GsFM+G/Q=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjGLORACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrvUxAAiLOp39XUsn0TUOk/8ILBEbJCjAGcmI71PsB+1iraqbxEZ17n\r\nUFB2ZDdMkVkutq0HvVFfjHyg+DzJ5T/B4X7gPo8RQMutanoHcyPB4H7MPdQK\r\nmUNwFXD6XUtT+JnXX/UldsRTXdiUdGXqBLfuGX1+oMMJHNouVxQW8CZMMIiQ\r\nWUJt70J0PTYAF889m/fs+SvdXmR2yHxw/f8IRO9hp0LqG6An/XxYK/+XcX/E\r\nKC+l86DuaUl6zRLuWr4K8Kqm8iBEuqYyqRgd+2xYNo1YAkRIgIb2TlQ0riB4\r\nJ/2aWOkTW9FAQbAUA6JZvfZM2O+qET8EN3gTSfM3Do7cigCYxdqHTdHxlNDQ\r\nw3Wh9umIOQ00OTNhOI5AL+dqlKr2W8n1hQjQ+TWmq9xRwaeG2yGkMbeGibZx\r\n9Guu66UxQKZIqnCQrWjmEZ4A2jORmF1yCJzCq7/jDSaGQZIGHEK9qZ2enw4k\r\ncNlFt3guLH2c67b/ovf+gPw+9bCKvMDmzokLhJrPdLVM8CyXLcB00En8t5Mt\r\npBfg73EJVALvxfaOTLFFlys13YxpNNhC0dYhUpnPHG2KJj02Mqhn/x5d+X/a\r\nSgeDakFWeIX9v9uto20TtnpQhMx+/HWSs9k9ygN0eUAKJr8BIvq6ZacDwm36\r\nKO8xXTyuEwpU/G2e1lL9+pPHWxEGAZTUQNw=\r\n=QKFp\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"agyemanjp","email":"agyemanjp@danfortsystems.com"},"directories":{},"maintainers":[{"name":"agyemanjp","email":"agyemanjp@danfortsystems.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/passport-digitalocean_1.0.0_1662563216979_0.39755646226241237"},"_hasShrinkwrap":false}},"time":{"created":"2022-09-07T15:06:56.853Z","1.0.0":"2022-09-07T15:06:57.097Z","modified":"2022-09-07T15:06:57.250Z"},"maintainers":[{"name":"agyemanjp","email":"agyemanjp@danfortsystems.com"}],"description":"DigitalOcean authentication strategy for Passport, written in TypeScript","homepage":"https://github.com/agyemanjp/passport-digitalocean#readme","keywords":["passport","digitalocean","auth","authn","authentication","identity","typescript"],"repository":{"type":"git","url":"git+ssh://git@github.com/agyemanjp/passport-digitalocean.git"},"contributors":[{"name":"James Prempeh","url":"http://github.com/agyemanjp"},{"name":"Dimitris Kapanidis","email":"d.kapanidis@gmail.com","url":"https://twitter.com/spiddy"}],"bugs":{"url":"http://github.com/agyemanjp/passport-digitalocean/issues"},"readme":"# Passport-DigitalOcean\n\n[Passport](http://passportjs.org/) strategy for authenticating with [DigitalOcean](https://www.digitalocean.com/) using the OAuth 2.0 API.\n\nThis module lets you authenticate using DigitalOcean in your Node.js applications.\nBy plugging into Passport, DigitalOcean authentication can be easily and\nunobtrusively integrated into any application or framework that supports\n[Connect](http://www.senchalabs.org/connect/)-style middleware, including\n[Express](http://expressjs.com/).\n\n## Install\nnpm install @agyemanjp/passport-digitalocean\n\n## Usage\n\n#### Configure Strategy\n\n**NOTE**: Currently DigitalOcean doesn't provide a user's profile through the API, so the Strategy cannot collect user information.\n\nThe DigitalOcean authentication strategy authenticates users using a DigitalOcean account\nand OAuth 2.0 tokens. The strategy requires a `verify` callback, which accepts\nthese credentials and calls `done` providing a user, as well as `options`\nspecifying a client ID, client secret, and callback URL.\n\n    passport.use(new DigitalOceanStrategy({\n        clientID: DIGITALOCEAN_CLIENT_ID,\n        clientSecret: DIGITALOCEAN_CLIENT_SECRET,\n        callbackURL: \"http://127.0.0.1:3000/auth/digitalocean/callback\"\n      },\n      function(accessToken, refreshToken, profile, done) {\n        User.findOrCreate({ digitaloceanId: profile.id }, function (err, user) {\n          return done(err, user);\n        });\n      }\n    ));\n\n#### Authenticate Requests\n\nUse `passport.authenticate()`, specifying the `'digitalocean'` strategy, to\nauthenticate requests.\n\nFor example, as route middleware in an [Express](http://expressjs.com/)\napplication:\n\n    app.get('/auth/digitalocean',\n      passport.authenticate('digitalocean'));\n\n    app.get('/auth/digitalocean/callback', \n      passport.authenticate('digitalocean', { failureRedirect: '/login' }),\n      function(req, res) {\n        // Successful authentication, redirect home.\n        res.redirect('/');\n      });\n\n## Examples\n\nFor a complete, working example, refer to the [login example](https://github.com/agyemanjp/passport-digitalocean/tree/master/examples/login).\n\n## Tests\nnpm install\nnpm run test\n\n\n## Credits\nPorted to Typescript bt James Prempeh (http://github.com/agyemanjp)\nCreated by [Dimitris Kapanidis](http://github.com/spiddy)\nCode based on passport-github by [Jared Hanson](http://github.com/jaredhanson)\n\n## License\n\n[The MIT License](http://opensource.org/licenses/MIT)\n\nCopyright (c) 2014 Harbur <[https://harbur.io](https://harbur.io)>\n\n","readmeFilename":"README.md"}