UNPKG

@chevre/domain

Version:

Chevre Domain Library for Node.js

66 lines (56 loc) 2.46 kB
// tslint:disable:no-console import * as mongoose from 'mongoose'; import { chevre } from '../../../lib/index'; const project = { id: String(process.env.PROJECT_ID) }; mongoose.Model.on('index', (...args) => { console.error('******** index event emitted. ********\n', args); }); const CODE = '06bca3f3-07d0-44be-b480-9579cae12755'; const RESERVATION_ID = '283632655638788-0'; async function main() { await mongoose.connect(<string>process.env.MONGOLAB_URI, { autoIndex: false }); const authorizationRepo = await chevre.repository.Authorization.createInstance(mongoose.connection); const orderRepo = await chevre.repository.Order.createInstance(mongoose.connection); const reservationRepo = await chevre.repository.Reservation.createInstance(mongoose.connection); const ticketRepo = await chevre.repository.Ticket.createInstance(mongoose.connection); await (await chevre.service.reserve.createService()).verifyToken4reservation({ project: { id: project.id }, agent: { id: project.id, typeOf: chevre.factory.organizationType.Project }, reservationId: RESERVATION_ID, ticket: { ticketToken: CODE } })( { authorization: authorizationRepo, order: orderRepo, ticket: ticketRepo } // { // jwt: await chevre.credentials.JWT.createInstance({ // secret: <string>process.env.TOKEN_SECRET, // issuers: (typeof process.env.TOKEN_ISSUERS_BY_AUTHORIZATION === 'string') // ? process.env.TOKEN_ISSUERS_BY_AUTHORIZATION.split(' ') // : [], // version: (typeof process.env.TOKEN_VERSION === 'string') ? process.env.TOKEN_VERSION : '2024-05-02', // payloadTypPrefix: // (typeof process.env.TOKEN_PAYLOAD_TYP_PREFIX === 'string') ? process.env.TOKEN_PAYLOAD_TYP_PREFIX : 'chevre' // }) // } ); console.log('verified.'); const result = await (await chevre.service.reserve.createService()).findByCode({ project: { id: project.id }, code: CODE, id: RESERVATION_ID })({ authorization: authorizationRepo, order: orderRepo, reservation: reservationRepo }); // tslint:disable-next-line:no-null-keyword console.dir(result, { depth: null }); } main() .then(console.log) .catch(console.error);