UNPKG

@chevre/domain

Version:

Chevre Domain Library for Node.js

44 lines (37 loc) 1.27 kB
// tslint:disable:no-console import * as mongoose from 'mongoose'; import { chevre } from '../../../lib/index'; const project = { id: String(process.env.PROJECT_ID) }; async function main() { await mongoose.connect(<string>process.env.MONGOLAB_URI); const eventRepo = await chevre.repository.Event.createInstance(mongoose.connection); const productRepo = await chevre.repository.Product.createInstance(mongoose.connection); const event = (await eventRepo.projectEventFields( { id: { $eq: 'bm0f0cadm' }, typeOf: chevre.factory.eventType.ScreeningEvent, project: { id: { $eq: project.id } } }, ['offers.itemOffered.id'] )).shift(); console.log('event:', event); if (event === undefined) { throw new Error('event not found'); } const productId = event.offers.itemOffered.id; if (typeof productId !== 'string') { throw new Error('offers.itemOffered.id undefined'); } const catalogs = await productRepo.aggregateHasOfferCatalog( { id: productId, limit: 10, page: 1 } ); console.log(catalogs); console.log(catalogs.length); } main() .then(console.log) .catch(console.error);