mirror of
https://github.com/quepasaevents/qpa-client.git
synced 2023-12-14 05:33:02 +01:00
Fix TS errors
This commit is contained in:
parent
5f142b691a
commit
bbdabc32d9
3
.gitignore
vendored
3
.gitignore
vendored
|
@ -3,6 +3,5 @@ node_modules
|
|||
.idea
|
||||
yarn-error.log
|
||||
.DS_Store
|
||||
functions/lib
|
||||
lib
|
||||
.env
|
||||
.env
|
||||
|
|
4
Makefile
4
Makefile
|
@ -6,7 +6,7 @@ configure-functions:
|
|||
| sed 's&_GCAL_CALENDAR_ID_&'"${GCAL_CALENDAR_ID}"'&' \
|
||||
| sed 's&_GCAL_PRIVATE_KEY_BASE64_&'"${GCAL_PRIVATE_KEY_BASE64}"'&' \
|
||||
| sed 's&_GCAL_CLIENT_EMAIL_&'"${GCAL_CLIENT_EMAIL}"'&' \
|
||||
| sed 's&_GCP_PROJECT_ID_&'"${GCP_PROJECT_ID}"'&' > functions/src/config.ts
|
||||
| sed 's&_GCP_PROJECT_ID_&'"${GCP_PROJECT_ID}"'&' > server/src/config.ts
|
||||
configure-functions-staging:
|
||||
@echo "Will populate config.ts with runtime secrets"
|
||||
@$(MAKE) DOMAIN=${DOMAIN_STAGING} \
|
||||
|
@ -16,4 +16,4 @@ configure-functions-staging:
|
|||
GCAL_CALENDAR_ID=${GCAL_CALENDAR_ID_STAGING} \
|
||||
GCAL_PRIVATE_KEY_BASE64=${GCAL_PRIVATE_KEY_BASE64_STAGING} \
|
||||
GCAL_CLIENT_EMAIL=${GCAL_CLIENT_EMAIL_STAGING} \
|
||||
configure-functions
|
||||
configure-functions
|
||||
|
|
|
@ -1,10 +1,8 @@
|
|||
// Free API to get location from IP: http://freegeoip.net/json/149.11.144.50
|
||||
|
||||
import {User} from "./User.entity"
|
||||
import * as uuid from 'uuid/v4'
|
||||
const randomstring = require('random-string')
|
||||
import {PostOffice} from '../post_office'
|
||||
import {domain} from '../config'
|
||||
import {Session, SessionInvite} from "./Session.entity"
|
||||
|
||||
export class SessionAlreadyValidatedError extends Error {}
|
||||
|
@ -36,13 +34,16 @@ const generateUniqueSessionHash = async () => {
|
|||
|
||||
interface Dependencies {
|
||||
sendEmail: PostOffice
|
||||
emailTargetDomain: string
|
||||
}
|
||||
|
||||
export default class SessionManager {
|
||||
sendEmail: PostOffice
|
||||
emailTargetDomain: string
|
||||
|
||||
constructor(deps: Dependencies) {
|
||||
this.sendEmail = deps.sendEmail
|
||||
this.emailTargetDomain = deps.emailTargetDomain
|
||||
}
|
||||
inviteUser = async (user: User): Promise<SessionInvite> => {
|
||||
const invite = new SessionInvite()
|
||||
|
@ -54,8 +55,8 @@ export default class SessionManager {
|
|||
try {
|
||||
await this.sendEmail({
|
||||
to: user.email,
|
||||
from: `signin@${domain}`,
|
||||
text: `Follow this link to start a session: https://${domain}/login/${invite.hash}`,
|
||||
from: `signin@${this.emailTargetDomain}`,
|
||||
text: `Follow this link to start a session: https://${this.emailTargetDomain}/login/${invite.hash}`,
|
||||
subject: 'Invitation for session'
|
||||
})
|
||||
resolve(invite)
|
||||
|
|
|
@ -5,6 +5,7 @@ import {PostOffice} from "../post_office";
|
|||
|
||||
interface Dependencies {
|
||||
sendEmail: PostOffice
|
||||
emailTargetDomain: string
|
||||
}
|
||||
export default class AuthResolvers {
|
||||
sessionManager: SessionManager
|
||||
|
@ -12,7 +13,8 @@ export default class AuthResolvers {
|
|||
|
||||
constructor(deps: Dependencies) {
|
||||
this.sessionManager = new SessionManager({
|
||||
sendEmail: deps.sendEmail
|
||||
sendEmail: deps.sendEmail,
|
||||
emailTargetDomain: deps.emailTargetDomain
|
||||
})
|
||||
this.sendEmail = deps.sendEmail
|
||||
}
|
||||
|
|
|
@ -1,14 +1,12 @@
|
|||
import SessionManager from "./auth/SessionManager"
|
||||
import CalendarManager from "./Calendar/CalendarManager"
|
||||
import {ApolloServer} from 'apollo-server'
|
||||
import {makeExecutableSchema} from "graphql-tools"
|
||||
import EventsResolvers from './Events/eventsResolvers'
|
||||
import {importSchema} from 'graphql-import'
|
||||
import AuthResolvers from "./Auth/authResolvers"
|
||||
import {Connection} from "typeorm"
|
||||
import {PostOffice, sendEmail} from "./post_office";
|
||||
import {Session} from "./Auth/Session.entity";
|
||||
import {Context} from "./@types/graphql-utils";
|
||||
import {PostOffice} from "./post_office"
|
||||
import {Session} from "./Auth/Session.entity"
|
||||
import {Context} from "./@types/graphql-utils"
|
||||
|
||||
interface Dependencies {
|
||||
typeormConnection: Connection
|
||||
|
@ -23,7 +21,8 @@ const resolvers = {
|
|||
export const createServer = async (dependencies: Dependencies) => {
|
||||
|
||||
const authResolvers = new AuthResolvers({
|
||||
sendEmail: dependencies.sendEmail
|
||||
sendEmail: dependencies.sendEmail,
|
||||
emailTargetDomain: 'www.example.com',
|
||||
})
|
||||
|
||||
const typeDefs = importSchema(__dirname + '/schema.graphql')
|
||||
|
|
Loading…
Reference in a new issue