Skip to content

Instantly share code, notes, and snippets.

View DavyBello's full-sized avatar
🏠
Working from home

Bello Oladipupo DavyBello

🏠
Working from home
View GitHub Profile
@DavyBello
DavyBello / app.js
Created January 21, 2019 20:44
graphql-social-auth Tutorial
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 }),
@DavyBello
DavyBello / resolvers.js
Last active January 22, 2019 21:19
graphql-social-auth Tutorial
// 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'
},
@DavyBello
DavyBello / typeDefs.js
Last active January 22, 2019 21:20
graphql-social-auth Tutorial
// The GraphQL schema
const { gql } = require('apollo-server');
module.exports = gql`
type AuthResponse {
token: String
name: String
}
input AuthInput {
@DavyBello
DavyBello / passport.js
Created January 21, 2019 19:18
graphql-social-auth Tutorial
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,
});
@DavyBello
DavyBello / mongoose.js
Last active January 22, 2019 21:21
graphql-social-auth Tutorial
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;
@DavyBello
DavyBello / app.js
Last active January 21, 2019 15:21
graphql-social-auth Tutorial
const { ApolloServer, gql } = require('apollo-server');
// The GraphQL schema
const typeDefs = gql`
type Query {
"A simple type for getting started!"
hello: String
}
`;
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(