UNPKG

@xtrek/ts-migrate-plugins

Version:

Set of codemods, which are doing transformation of js/jsx to ts/tsx

36 lines 1.41 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.validateOptions = exports.validateAnyAliasOptions = exports.createValidate = exports.anyFunctionAliasProperty = exports.anyAliasProperty = void 0; const json_schema_1 = require("json-schema"); const ts_migrate_server_1 = require("ts-migrate-server"); exports.anyAliasProperty = { anyAlias: { type: 'string' }, }; exports.anyFunctionAliasProperty = { anyFunctionAlias: { type: 'string' }, }; function createValidate(properties) { return (options) => validateOptions(options, properties); } exports.createValidate = createValidate; exports.validateAnyAliasOptions = createValidate(exports.anyAliasProperty); function validateOptions(options, properties) { if (typeof options !== 'object' || !options) { throw new ts_migrate_server_1.PluginOptionsError('options must be an object'); } const schema = { type: 'object', properties, additionalProperties: false, }; const validation = json_schema_1.validate(options, schema); if (!validation.valid) { const message = validation.errors .map((error) => `${error.property}: ${error.message}`) .join('\n'); throw new ts_migrate_server_1.PluginOptionsError(message); } return true; } exports.validateOptions = validateOptions; //# sourceMappingURL=validateOptions.js.map