UNPKG

@intlify/vue-i18n-extensions-nightly

Version:
41 lines (40 loc) 1.65 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.report = exports.getReportMessage = void 0; const shared_1 = require("@intlify/shared"); // TODO: should be extracted as i18n resources (intlify project self hosting!) const ReportMessages = { [1 /* ReportCodes.UNEXPECTED_DIRECTIVE_EXPRESSION */]: `Unexpected directive expression: {0}`, [2 /* ReportCodes.NOT_SUPPORTED */]: `Not supported transform: {0}`, [3 /* ReportCodes.FAILED_VALUE_EVALUATION */]: `Failed value evaluation: {0}`, [4 /* ReportCodes.REQUIRED_PARAMETER */]: `Required parameter: {0}`, [5 /* ReportCodes.INVALID_PARAMETER_TYPE */]: `Required parameter: {0}`, [6 /* ReportCodes.NOT_SUPPORTED_PRESERVE */]: `Not supported 'preserve': {0}`, [7 /* ReportCodes.OVERRIDE_ELEMENT_CHILDREN */]: `v-t will override element children: {0}` }; function getReportMessage(code, ...args) { return (0, shared_1.format)(ReportMessages[code], ...args); } exports.getReportMessage = getReportMessage; function createExtensionsError(code, msg, loc) { const error = new SyntaxError(msg); error.code = code; if (loc) { error.loc = loc; } return error; } function report(code, options = {}) { const mode = options.mode && (0, shared_1.isString)(options.mode) && ['warn', 'error'].includes(options.mode) ? options.mode : 'warn'; const msg = getReportMessage(code, options.args); if (mode === 'warn') { console.warn('[vue-i18n-extensions] ' + msg); } else { // error throw createExtensionsError(code, msg, options.loc); } } exports.report = report;