UNPKG

@sourceloop/ctrl-plane-subscription-service

Version:

Subscription management microservice for SaaS control plane.

80 lines 2.8 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.Subscription = void 0; const tslib_1 = require("tslib"); const repository_1 = require("@loopback/repository"); const subscription_status_enum_1 = require("../enums/subscription-status.enum"); const utils_1 = require("../utils"); const core_1 = require("@sourceloop/core"); const plan_model_1 = require("./plan.model"); const invoice_model_1 = require("./invoice.model"); let Subscription = class Subscription extends core_1.UserModifiableEntity { constructor(data) { super(data); } }; exports.Subscription = Subscription; tslib_1.__decorate([ (0, repository_1.property)({ type: 'string', id: true, generated: true, }), tslib_1.__metadata("design:type", String) ], Subscription.prototype, "id", void 0); tslib_1.__decorate([ (0, repository_1.property)({ type: 'string', required: true, name: 'subscriber_id', }), tslib_1.__metadata("design:type", String) ], Subscription.prototype, "subscriberId", void 0); tslib_1.__decorate([ (0, repository_1.property)({ type: 'string', required: true, name: 'start_date', }), tslib_1.__metadata("design:type", String) ], Subscription.prototype, "startDate", void 0); tslib_1.__decorate([ (0, repository_1.property)({ type: 'string', required: true, name: 'end_date', }), tslib_1.__metadata("design:type", String) ], Subscription.prototype, "endDate", void 0); tslib_1.__decorate([ (0, repository_1.property)({ type: 'number', required: true, description: 'status of the subscription, it can be - 0(pending), 1(active), 2(inactive), 3(cancelled) and 4(expired)', jsonSchema: { enum: (0, utils_1.numericEnumValues)(subscription_status_enum_1.SubscriptionStatus), }, }), tslib_1.__metadata("design:type", Number) ], Subscription.prototype, "status", void 0); tslib_1.__decorate([ (0, repository_1.belongsTo)(() => plan_model_1.Plan, undefined, { description: 'plan id of the subscription', name: 'plan_id', }), tslib_1.__metadata("design:type", String) ], Subscription.prototype, "planId", void 0); tslib_1.__decorate([ (0, repository_1.belongsTo)(() => invoice_model_1.Invoice, undefined, { description: 'invoice id of the subscription', name: 'invoice_id', }), tslib_1.__metadata("design:type", String) ], Subscription.prototype, "invoiceId", void 0); exports.Subscription = Subscription = tslib_1.__decorate([ (0, repository_1.model)({ name: 'subscriptions', }), tslib_1.__metadata("design:paramtypes", [Object]) ], Subscription); //# sourceMappingURL=subscription.model.js.map