UNPKG

@zenweb/orm

Version:

Zenweb ORM module

25 lines (24 loc) 877 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); function setup(option) { return function orm(setup) { setup.debug('option: %o', option); if (!option.Repositories) { throw new Error('Repositories must be set!'); } // core if (option.coreQuery) { const repositories = new option.Repositories(option.coreQuery()); setup.defineCoreProperty(option.coreProperty || 'repositories', { value: repositories }); } // context const contextQuery = option.contextQuery; if (contextQuery) { setup.defineContextCacheProperty(option.contextProperty || 'repositories', ctx => { const query = contextQuery(ctx); return new option.Repositories(query); }); } }; } exports.default = setup;