@sourceloop/ctrl-plane-subscription-service
Version:
Subscription management microservice for SaaS control plane.
33 lines • 2.03 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.PlanRepository = void 0;
const tslib_1 = require("tslib");
const core_1 = require("@loopback/core");
const loopback4_authentication_1 = require("loopback4-authentication");
const repository_1 = require("@loopback/repository");
const types_1 = require("../../types");
const sequelize_1 = require("@loopback/sequelize");
const sequelize_2 = require("@sourceloop/core/sequelize");
let PlanRepository = class PlanRepository extends sequelize_2.SequelizeUserModifyCrudRepository {
constructor(dataSource, getCurrentUser, billingCycleRepositoryGetter, currencyRepositoryGetter, plan) {
super(plan, dataSource, getCurrentUser);
this.getCurrentUser = getCurrentUser;
this.billingCycleRepositoryGetter = billingCycleRepositoryGetter;
this.currencyRepositoryGetter = currencyRepositoryGetter;
this.plan = plan;
this.currency = this.createBelongsToAccessorFor('currency', currencyRepositoryGetter);
this.billingCycle = this.createBelongsToAccessorFor('billingCycle', billingCycleRepositoryGetter);
this.registerInclusionResolver('billingCycle', this.billingCycle.inclusionResolver);
this.registerInclusionResolver('currency', this.currency.inclusionResolver);
}
};
exports.PlanRepository = PlanRepository;
exports.PlanRepository = PlanRepository = 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('BillingCycleRepository')),
tslib_1.__param(3, repository_1.repository.getter('CurrencyRepository')),
tslib_1.__param(4, (0, core_1.inject)('models.Plan')),
tslib_1.__metadata("design:paramtypes", [sequelize_1.SequelizeDataSource, Function, Function, Function, Object])
], PlanRepository);
//# sourceMappingURL=plan.repository.js.map