@crowdin/app-project-module
Version:
Module that generates for you all common endpoints for serving standalone Crowdin App
65 lines (64 loc) • 3.83 kB
JavaScript
"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 crowdin_client_1 = __importDefault(require("../../middlewares/crowdin-client"));
const json_response_1 = __importDefault(require("../../middlewares/json-response"));
const render_ui_module_1 = __importDefault(require("../../middlewares/render-ui-module"));
const ui_module_1 = __importDefault(require("../../middlewares/ui-module"));
const util_1 = require("../../util");
const get_languages_list_1 = __importDefault(require("./handlers/get-languages-list"));
const spell_check_1 = __importDefault(require("./handlers/spell-check"));
function register({ config, app }) {
if (!config.customSpellchecker) {
return;
}
if ((0, util_1.isAuthorizedConfig)(config)) {
if (config.customSpellchecker.settingsUiModule) {
app.use('/spellchecker/settings', (0, ui_module_1.default)({ config, moduleType: config.customSpellchecker.key }), (0, render_ui_module_1.default)(config.customSpellchecker.settingsUiModule));
// TEMPORARY CODE: it needs to support old path
app.use('/settings', (0, ui_module_1.default)({ config }), (0, render_ui_module_1.default)(config.customSpellchecker.settingsUiModule));
// END TEMPORARY CODE
}
app.get('/spellchecker/languages', json_response_1.default, (0, crowdin_client_1.default)({
config,
optional: false,
checkSubscriptionExpiration: true,
moduleKey: config.customSpellchecker.key,
}), (0, get_languages_list_1.default)(config.customSpellchecker));
app.post('/spellchecker/spellcheck', json_response_1.default, (0, crowdin_client_1.default)({
config,
optional: false,
checkSubscriptionExpiration: true,
moduleKey: config.customSpellchecker.key,
}), (0, spell_check_1.default)(config.customSpellchecker));
// TEMPORARY CODE: it needs to support old path
app.get('/languages', json_response_1.default, (0, crowdin_client_1.default)({
config,
optional: false,
checkSubscriptionExpiration: true,
}), (0, get_languages_list_1.default)(config.customSpellchecker));
app.post('/spellcheck', json_response_1.default, (0, crowdin_client_1.default)({
config,
optional: false,
checkSubscriptionExpiration: true,
}), (0, spell_check_1.default)(config.customSpellchecker));
// END TEMPORARY CODE
return;
}
if (config.customSpellchecker.settingsUiModule) {
app.use('/spellchecker/settings', (0, ui_module_1.default)({ config, allowUnauthorized: true, moduleType: config.customSpellchecker.key }), (0, render_ui_module_1.default)(config.customSpellchecker.settingsUiModule));
// TEMPORARY CODE: it needs to support old path
app.use('/settings', (0, ui_module_1.default)({ config, allowUnauthorized: true }), (0, render_ui_module_1.default)(config.customSpellchecker.settingsUiModule));
// END TEMPORARY CODE
}
app.get('/spellchecker/languages', json_response_1.default, (0, get_languages_list_1.default)(config.customSpellchecker));
app.post('/spellchecker/spellcheck', json_response_1.default, (0, spell_check_1.default)(config.customSpellchecker));
// TEMPORARY CODE: it needs to support old path
app.get('/languages', json_response_1.default, (0, get_languages_list_1.default)(config.customSpellchecker));
app.post('/spellcheck', json_response_1.default, (0, spell_check_1.default)(config.customSpellchecker));
// END TEMPORARY CODE
}
exports.register = register;