2023-08-18 17:24:31 +03:00
|
|
|
const MembersCSVImporter = require('./lib/MembersCSVImporter');
|
|
|
|
const MembersCSVImporterStripeUtils = require('./lib/MembersCSVImporterStripeUtils');
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @typedef {import('./lib/MembersCSVImporter').MembersCSVImporterOptions} MembersCSVImporterOptions
|
|
|
|
*/
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @typedef {Object} MakeImporterDeps
|
|
|
|
* @property {Object} stripeAPIService - Instance of StripeAPIService
|
|
|
|
* @property {Object} productRepository - Instance of ProductRepository
|
|
|
|
*/
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Make an instance of MembersCSVImporter
|
|
|
|
*
|
|
|
|
* @param {MakeImporterDeps & MembersCSVImporterOptions} deps
|
|
|
|
* @returns {MembersCSVImporter}
|
|
|
|
*/
|
|
|
|
module.exports = function makeImporter(deps) {
|
|
|
|
const stripeUtils = new MembersCSVImporterStripeUtils({
|
|
|
|
stripeAPIService: deps.stripeAPIService,
|
|
|
|
productRepository: deps.productRepository
|
|
|
|
});
|
|
|
|
|
|
|
|
return new MembersCSVImporter({
|
|
|
|
...deps,
|
|
|
|
stripeUtils
|
|
|
|
});
|
|
|
|
};
|