Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
await pubSub.publish('NEW_MESSAGE', payload);
return payload;
},
},
Query: {
serverTime: () => Date.now(),
},
Subscription: {
messageFeed: {
resolve: (rootValue: Message) => {
// root value is the payload from sendMessage mutation
return rootValue;
},
subscribe: withFilter(
pubSub.subscribe('NEW_MESSAGE'),
(rootValue: Message, args: { type: null | MessageType }) => {
// this can be async too :)
if (args.type == null) {
return true;
}
return args.type === rootValue.type;
},
),
},
},
};
const server = new Server({
connectionManager,
(rootValue: Message, args: { type: null | MessageType }) => {
// this can be async too :)
if (args.type == null) {
return true;
}
return args.type === rootValue.type;
},
),
},
},
};
const server = new Server({
connectionManager,
eventProcessor: new DynamoDBEventProcessor(),
resolvers,
subscriptionManager,
typeDefs,
});
export const handleHttp = server.createHttpHandler();
export const handleWebSocket = server.createWebSocketHandler();
export const handleDynamoDBStream = server.createEventHandler();
subscribe: withFilter(
pubSub.subscribe('NEW_MESSAGE'),
(rootValue: Message, args: { type: null | MessageType }) => {
// this can be async too :)
if (args.type == null) {
return true;
}
return args.type === rootValue.type;
},
),
},
},
};
const server = new Server({
connectionManager,
eventProcessor: new DynamoDBEventProcessor(),
resolvers,
subscriptionManager,
typeDefs,
});
export const handleHttp = server.createHttpHandler();
export const handleWebSocket = server.createWebSocketHandler();
export const handleDynamoDBStream = server.createEventHandler();
const apiGatewayManager = new ApiGatewayManagementApi({
...(process.env.IS_OFFLINE
? {
endpoint: 'http://localhost:3001',
}
: {}),
});
const dynamoDbClient = new DynamoDB.DocumentClient({
...(process.env.IS_OFFLINE
? {
endpoint: 'http://localhost:8000',
}
: {}),
});
const eventStore = new DynamoDBEventStore({ dynamoDbClient });
const pubSub = new PubSub({ eventStore });
const subscriptionManager = new DynamoDBSubscriptionManager({ dynamoDbClient });
const connectionManager = new DynamoDBConnectionManager({
apiGatewayManager,
dynamoDbClient,
subscriptions: subscriptionManager,
});
type MessageType = 'greeting' | 'test';
type Message = {
id: string;
text: string;
type: MessageType;
};
...(process.env.IS_OFFLINE
? {
endpoint: 'http://localhost:3001',
}
: {}),
});
const dynamoDbClient = new DynamoDB.DocumentClient({
...(process.env.IS_OFFLINE
? {
endpoint: 'http://localhost:8000',
}
: {}),
});
const eventStore = new DynamoDBEventStore({ dynamoDbClient });
const pubSub = new PubSub({ eventStore });
const subscriptionManager = new DynamoDBSubscriptionManager({ dynamoDbClient });
const connectionManager = new DynamoDBConnectionManager({
apiGatewayManager,
dynamoDbClient,
subscriptions: subscriptionManager,
});
type MessageType = 'greeting' | 'test';
type Message = {
id: string;
text: string;
type: MessageType;
};
type SendMessageArgs = {
endpoint: 'http://localhost:3001',
}
: {}),
});
const dynamoDbClient = new DynamoDB.DocumentClient({
...(process.env.IS_OFFLINE
? {
endpoint: 'http://localhost:8000',
}
: {}),
});
const eventStore = new DynamoDBEventStore({ dynamoDbClient });
const pubSub = new PubSub({ eventStore });
const subscriptionManager = new DynamoDBSubscriptionManager({ dynamoDbClient });
const connectionManager = new DynamoDBConnectionManager({
apiGatewayManager,
dynamoDbClient,
subscriptions: subscriptionManager,
});
type MessageType = 'greeting' | 'test';
type Message = {
id: string;
text: string;
type: MessageType;
};
type SendMessageArgs = {
text: string;
type: MessageType;