UNPKG

@crowdin/app-project-module

Version:

Module that generates for you all common endpoints for serving standalone Crowdin App

53 lines (52 loc) 2.75 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.register = void 0; const ui_module_1 = __importDefault(require("../../middlewares/ui-module")); const render_ui_module_1 = __importDefault(require("../../middlewares/render-ui-module")); const util_1 = require("./util"); const crowdin_client_1 = __importDefault(require("../../middlewares/crowdin-client")); const step_settings_save_1 = __importDefault(require("./handlers/step-settings-save")); const delete_step_1 = __importDefault(require("./handlers/delete-step")); const util_2 = require("../../util"); function register({ config, app }) { if (!config.workflowStepType) { return; } const workflowSteps = Array.isArray(config.workflowStepType) ? config.workflowStepType : [config.workflowStepType]; for (const workflowStep of workflowSteps) { app.post((0, util_1.getWorkflowStepUrl)('/workflow-step/settings', workflowStep), (0, crowdin_client_1.default)({ config, optional: true, checkSubscriptionExpiration: false, moduleKey: workflowStep.key, }), (0, step_settings_save_1.default)(workflowStep)); app.delete((0, util_1.getWorkflowStepUrl)('/workflow-step/delete', workflowStep), (0, crowdin_client_1.default)({ config, optional: true, checkSubscriptionExpiration: false, moduleKey: workflowStep.key, }), (0, delete_step_1.default)(workflowStep)); // TEMPORARY CODE: it needs to support old path app.post((0, util_1.getWorkflowStepUrl)('/settings', workflowStep), (0, crowdin_client_1.default)({ config, optional: true, checkSubscriptionExpiration: false, }), (0, step_settings_save_1.default)(workflowStep)); app.delete((0, util_1.getWorkflowStepUrl)('/delete', workflowStep), (0, crowdin_client_1.default)({ config, optional: true, checkSubscriptionExpiration: false, }), (0, delete_step_1.default)(workflowStep)); // END TEMPORARY CODE if (workflowStep.imagePath) { app.get((0, util_2.getLogoUrl)(workflowStep, `-${workflowStep.key}`), (req, res) => res.sendFile(workflowStep.imagePath || config.imagePath)); } if (workflowStep.settingsUiModule) { app.use((0, util_1.getWorkflowStepUrl)('/workflow-step', workflowStep), (0, ui_module_1.default)({ config, moduleType: workflowStep.key }), (0, render_ui_module_1.default)(workflowStep.settingsUiModule)); } } } exports.register = register;