UNPKG

@geheimgang188/fmod-service-api

Version:
37 lines 3.02 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.NamingTools = void 0; const camelcase_1 = __importDefault(require("camelcase")); class NamingTools { static toValidMemberName(input) { return this.replaceUmlauts(input) .replaceAll(/[^a-zA-Z0-9]/g, '_') .replace(/^[^a-zA-Z]/, 'xx'); } static replaceUmlauts(input) { const replacements = [ ['ä', 'ae'], ['ö', 'oe'], ['ü', 'ue'], ['Ä', 'Ae'], ['Ö', 'Oe'], ['Ü', 'Ue'], ]; return replacements.reduce((prev, cur) => prev.replaceAll(cur[0], cur[1]), input); } static generateClassNames(name, classPrefix) { const dashedName = NamingTools.toValidMemberName(name); const dashedNameWithPrefix = NamingTools.toValidMemberName((classPrefix ? classPrefix + '_' : '') + name); const memberName = (0, camelcase_1.default)(dashedName, { pascalCase: false }); const className = (0, camelcase_1.default)(dashedNameWithPrefix, { pascalCase: true }); return { className, memberName, }; } } exports.NamingTools = NamingTools; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmFtaW5nLXRvb2xzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2FwaS1nZW5lcmF0b3IvbmFtaW5nLXRvb2xzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLDBEQUFrQztBQU9sQyxNQUFhLFdBQVc7SUFFYixNQUFNLENBQUMsaUJBQWlCLENBQUUsS0FBYTtRQUMxQyxPQUFPLElBQUksQ0FBQyxjQUFjLENBQUUsS0FBSyxDQUFFO2FBQzlCLFVBQVUsQ0FBRSxlQUFlLEVBQUUsR0FBRyxDQUFFO2FBQ2xDLE9BQU8sQ0FBRSxZQUFZLEVBQUUsSUFBSSxDQUFFLENBQUM7SUFDdkMsQ0FBQztJQUVNLE1BQU0sQ0FBQyxjQUFjLENBQUUsS0FBYTtRQUN2QyxNQUFNLFlBQVksR0FBRztZQUNqQixDQUFFLEdBQUcsRUFBRSxJQUFJLENBQUU7WUFDYixDQUFFLEdBQUcsRUFBRSxJQUFJLENBQUU7WUFDYixDQUFFLEdBQUcsRUFBRSxJQUFJLENBQUU7WUFDYixDQUFFLEdBQUcsRUFBRSxJQUFJLENBQUU7WUFDYixDQUFFLEdBQUcsRUFBRSxJQUFJLENBQUU7WUFDYixDQUFFLEdBQUcsRUFBRSxJQUFJLENBQUU7U0FDaEIsQ0FBQztRQUVGLE9BQU8sWUFBWSxDQUFDLE1BQU0sQ0FBRSxDQUFFLElBQUksRUFBRSxHQUFHLEVBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUUsR0FBRyxDQUFFLENBQUMsQ0FBRSxFQUFFLEdBQUcsQ0FBRSxDQUFDLENBQUUsQ0FBRSxFQUFFLEtBQUssQ0FBRSxDQUFDO0lBQ2hHLENBQUM7SUFFTSxNQUFNLENBQUMsa0JBQWtCLENBQUUsSUFBWSxFQUFFLFdBQW9CO1FBQ2hFLE1BQU0sVUFBVSxHQUFHLFdBQVcsQ0FBQyxpQkFBaUIsQ0FBRSxJQUFJLENBQUUsQ0FBQztRQUN6RCxNQUFNLG9CQUFvQixHQUFHLFdBQVcsQ0FBQyxpQkFBaUIsQ0FBRSxDQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUMsV0FBVyxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFFLEdBQUcsSUFBSSxDQUFFLENBQUM7UUFFOUcsTUFBTSxVQUFVLEdBQUcsSUFBQSxtQkFBUyxFQUFFLFVBQVUsRUFBRSxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsQ0FBRSxDQUFDO1FBQ2xFLE1BQU0sU0FBUyxHQUFHLElBQUEsbUJBQVMsRUFBRSxvQkFBb0IsRUFBRSxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUsQ0FBRSxDQUFDO1FBRTFFLE9BQU87WUFDSCxTQUFTO1lBQ1QsVUFBVTtTQUNiLENBQUM7SUFDTixDQUFDO0NBQ0o7QUFqQ0Qsa0NBaUNDIn0=