@grouparoo/core
Version:
The Grouparoo Core
64 lines (63 loc) • 2.5 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.ExportProcessorView = exports.ExportProcessorsList = void 0;
const authenticatedAction_1 = require("../classes/actions/authenticatedAction");
const ExportProcessor_1 = require("../models/ExportProcessor");
const apiData_1 = require("../modules/apiData");
class ExportProcessorsList extends authenticatedAction_1.AuthenticatedAction {
constructor() {
super(...arguments);
this.name = "exportProcessors:list";
this.description = "list export processors";
this.outputExample = {};
this.permission = { topic: "export", mode: "read" };
this.inputs = {
destinationId: { required: false },
limit: { required: true, default: 100, formatter: apiData_1.APIData.ensureNumber },
offset: { required: true, default: 0, formatter: apiData_1.APIData.ensureNumber },
state: { required: false },
order: {
required: false,
default: [["createdAt", "desc"]],
formatter: apiData_1.APIData.ensureArray,
},
};
}
async runWithinTransaction({ params, }) {
const where = {};
if (params.destinationId) {
where["destinationId"] = params.destinationId;
}
if (params.state) {
where["state"] = params.state;
}
const { rows, count } = await ExportProcessor_1.ExportProcessor.findAndCountAll({
where,
limit: params.limit,
offset: params.offset,
order: params.order,
});
return {
total: count,
exportProcessors: await Promise.all(rows.map((prc) => prc.apiData())),
};
}
}
exports.ExportProcessorsList = ExportProcessorsList;
class ExportProcessorView extends authenticatedAction_1.AuthenticatedAction {
constructor() {
super(...arguments);
this.name = "exportProcessor:view";
this.description = "view an export processor";
this.outputExample = {};
this.permission = { topic: "export", mode: "read" };
this.inputs = {
id: { required: true },
};
}
async runWithinTransaction({ params, }) {
const exportProcessor = await ExportProcessor_1.ExportProcessor.findById(params.id);
return { exportProcessor: await exportProcessor.apiData() };
}
}
exports.ExportProcessorView = ExportProcessorView;