This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
const uploadPreset = 'yxp8krwl'; | |
const cloudName = 'dgq5corvs'; | |
let file; //from upload button | |
const formData = new FormData(); | |
formData.append('file', file); | |
formData.append('upload_preset', uploadPreset); | |
try { | |
const response = await axios.post( |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
const { ApolloServer, gql } = require('apollo-server'); | |
// The GraphQL schema | |
const typeDefs = gql` | |
type Query { | |
"A simple type for getting started!" | |
hello: String | |
} | |
`; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
const mongoose = require('mongoose'); | |
const jwt = require('jsonwebtoken'); | |
// Configure mongoose's promise to global promise | |
mongoose.promise = global.Promise; | |
mongoose.connect('mongodb://localhost/graphql-social-auth', { useNewUrlParser: true }); | |
mongoose.set('debug', true); | |
const { Schema } = mongoose; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
const passport = require('passport'); | |
const FacebookTokenStrategy = require('passport-facebook-token'); | |
const { Strategy: GoogleTokenStrategy } = require('passport-google-token'); | |
// FACEBOOK STRATEGY | |
const FacebookTokenStrategyCallback = (accessToken, refreshToken, profile, done) => done(null, { | |
accessToken, | |
refreshToken, | |
profile, | |
}); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// The GraphQL schema | |
const { gql } = require('apollo-server'); | |
module.exports = gql` | |
type AuthResponse { | |
token: String | |
name: String | |
} | |
input AuthInput { |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// A map of functions which return data for the schema. | |
const mongoose = require('mongoose'); | |
const { authenticateFacebook, authenticateGoogle } = require('./passport'); | |
const User = mongoose.model('User'); | |
module.exports = { | |
Query: { | |
hello: () => 'world' | |
}, |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
require('./mongoose'); | |
const { ApolloServer } = require('apollo-server'); | |
const typeDefs = require('./typeDefs'); | |
const resolvers = require('./resolvers'); | |
const server = new ApolloServer({ | |
typeDefs, | |
resolvers, | |
// add request and response to graphQL context | |
context: ({ req, res }) => ({ req, res }), |