@grapi/server
Version:
Grapi Schema Generator For GraphQL Server
30 lines (29 loc) • 1.34 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.createRelationHooks = void 0;
const dataModel_1 = require("../dataModel");
const biOneToMany_1 = require("./biOneToMany");
const biOneToOne_1 = require("./biOneToOne");
const manyToMany_1 = require("./manyToMany");
const uniOneToMany_1 = require("./uniOneToMany");
const uniToOne_1 = require("./uniToOne");
const createRelationHooks = (relations) => {
return relations.map(relation => {
switch (relation.type) {
case dataModel_1.RelationType.uniManyToOne:
case dataModel_1.RelationType.uniOneToOne:
return (0, uniToOne_1.createHookMap)(relation);
case dataModel_1.RelationType.uniOneToMany:
return (0, uniOneToMany_1.createHookMap)(relation);
case dataModel_1.RelationType.biOneToOne:
return (0, biOneToOne_1.createHookMap)(relation);
case dataModel_1.RelationType.biOneToMany:
return (0, biOneToMany_1.createHookMap)(relation);
case dataModel_1.RelationType.biManyToMany:
return (0, manyToMany_1.createHookMap)(relation);
default:
throw new Error(`unknown relation type ${relation.type}`);
}
});
};
exports.createRelationHooks = createRelationHooks;