UNPKG

swaxios

Version:

Swagger API client generator based on axios and TypeScript.

35 lines 1.43 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.addStarsToNewline = exports.normalizeUrl = exports.generateServiceName = exports.camelize = exports.pascalCase = exports.camelCase = void 0; function camelCase(words, isPascalCase = false) { const casedWords = words.map(word => word.toLowerCase().charAt(0).toUpperCase() + word.slice(1)); if (!isPascalCase) { casedWords[0] = casedWords[0].toLowerCase(); } return casedWords.join(''); } exports.camelCase = camelCase; function pascalCase(words) { return camelCase(words, true); } exports.pascalCase = pascalCase; function camelize(resourceName, isPascalCase = false) { return camelCase(resourceName.split('-'), isPascalCase); } exports.camelize = camelize; function generateServiceName(url) { const urlParts = url.split('/').filter(part => part.length && !part.startsWith('{')); const lastUrlPart = urlParts[urlParts.length - 1]; const resourceName = lastUrlPart || 'Root'; return camelize(`${resourceName}-service`, true); } exports.generateServiceName = generateServiceName; function normalizeUrl(url) { return url.replace(/\/\{.*\}/g, '').replace(/[^\w\/-]/gm, '_'); } exports.normalizeUrl = normalizeUrl; function addStarsToNewline(text) { return text ? text.replace(/([\r\n])/g, '$1 * ') : ''; } exports.addStarsToNewline = addStarsToNewline; //# sourceMappingURL=StringUtil.js.map