UNPKG

@chevre/domain

Version:

Chevre Domain Library for Node.js

56 lines (48 loc) 1.66 kB
// tslint:disable:no-implicit-dependencies no-console import { chevre } from '../../../lib/index'; import * as mongoose from 'mongoose'; const project = { id: String(process.env.PROJECT_ID) }; mongoose.Model.on('index', (...args) => { console.error('******** index event emitted. ********\n', args); }); async function main() { await mongoose.connect(<string>process.env.MONGOLAB_URI, { autoIndex: false }); const limit = 100; const page = 1; const memberRepo = await chevre.repository.Member.createInstance(mongoose.connection); const members = await memberRepo.projectFieldsByProjectId( { id: project.id }, { limit, page, member: { typeOf: { // $eq: chevre.factory.creativeWorkType.WebApplication // $eq: chevre.factory.personType.Person }, memberOf: { typeOf: { $eq: chevre.factory.organizationType.Project } } } }, [] ); console.log('members:', members); console.log(members.length, 'members found'); const customerMembers = await memberRepo.searchCustomerMembers( { limit: 10, page: 1, sort: { 'member.id': chevre.factory.sortType.Ascending }, project: { id: project.id }, member: { } } ); // tslint:disable-next-line:no-null-keyword console.dir(customerMembers, { depth: null }); console.log(customerMembers.length, 'customerMembers found'); } main() .then(() => { console.log('success!'); }) .catch(console.error);