UNPKG

rethinkts

Version:

A model system for RethinkDB, written in and for TypeScript.

35 lines 1.24 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const model_1 = require("./model"); var Relationship; (function (Relationship) { Relationship[Relationship["HasMany"] = 0] = "HasMany"; Relationship[Relationship["BelongsTo"] = 1] = "BelongsTo"; Relationship[Relationship["HasOne"] = 2] = "HasOne"; })(Relationship = exports.Relationship || (exports.Relationship = {})); function HasMany(model, foreignKey) { return RelationshipDecorator(Relationship.HasMany, model, foreignKey); } exports.HasMany = HasMany; function HasOne(model, foreignKey) { return RelationshipDecorator(Relationship.HasOne, model, foreignKey); } exports.HasOne = HasOne; function BelongsTo(model, localKey) { return RelationshipDecorator(Relationship.BelongsTo, model, localKey); } exports.BelongsTo = BelongsTo; function RelationshipDecorator(kind, model, foreignKey) { return (target, key) => { const relationship = { kind, model, key: key, foreignKey, }; model_1.createModelInfo(target.constructor, { relationships: [relationship] }); }; } //# sourceMappingURL=relationships.js.map