@sourceloop/ctrl-plane-subscription-service
Version:
Subscription management microservice for SaaS control plane.
32 lines • 1.98 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.SubscriptionRepository = void 0;
const tslib_1 = require("tslib");
const core_1 = require("@loopback/core");
const repository_1 = require("@loopback/repository");
const loopback4_authentication_1 = require("loopback4-authentication");
const core_2 = require("@sourceloop/core");
const types_1 = require("../types");
let SubscriptionRepository = class SubscriptionRepository extends core_2.DefaultUserModifyCrudRepository {
constructor(dataSource, getCurrentUser, planRepositoryGetter, invoiceRepositoryGetter, subscription) {
super(subscription, dataSource, getCurrentUser);
this.getCurrentUser = getCurrentUser;
this.planRepositoryGetter = planRepositoryGetter;
this.invoiceRepositoryGetter = invoiceRepositoryGetter;
this.subscription = subscription;
this.invoice = this.createBelongsToAccessorFor('invoice', invoiceRepositoryGetter);
this.registerInclusionResolver('invoice', this.invoice.inclusionResolver);
this.plan = this.createBelongsToAccessorFor('plan', planRepositoryGetter);
this.registerInclusionResolver('plan', this.plan.inclusionResolver);
}
};
exports.SubscriptionRepository = SubscriptionRepository;
exports.SubscriptionRepository = SubscriptionRepository = tslib_1.__decorate([
tslib_1.__param(0, (0, core_1.inject)(`datasources.${types_1.SubscriptionDbSourceName}`)),
tslib_1.__param(1, core_1.inject.getter(loopback4_authentication_1.AuthenticationBindings.CURRENT_USER)),
tslib_1.__param(2, repository_1.repository.getter('PlanRepository')),
tslib_1.__param(3, repository_1.repository.getter('InvoiceRepository')),
tslib_1.__param(4, (0, core_1.inject)('models.Subscription')),
tslib_1.__metadata("design:paramtypes", [repository_1.juggler.DataSource, Function, Function, Function, Object])
], SubscriptionRepository);
//# sourceMappingURL=subscription.repository.js.map