UNPKG

@aws-amplify/graphql-types-generator

Version:

Generate API code or type annotations based on a GraphQL schema and statements

33 lines 1.26 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.getOutputFileName = void 0; const path = require("path"); function getOutputFileName(inputFileName, target) { var _a; inputFileName = inputFileName || (target === 'angular' ? 'api' : 'API'); if (supportedTarget(target)) { const fileExtension = extensionMap[target]; const ext = path.extname(inputFileName); const baseName = inputFileName.substr(0, inputFileName.length - ext.length); const filename = inputFileName.includes(fileExtension) ? inputFileName : `${baseName}.${fileExtension}`; return ['API', 'api'].includes(inputFileName) ? path.join(folderMap[target], filename).split(((_a = path.win32) === null || _a === void 0 ? void 0 : _a.sep) || '\\').join(path.posix.sep) : filename; } return inputFileName; } exports.getOutputFileName = getOutputFileName; const extensionMap = { typescript: 'ts', flow: 'js', angular: 'service.ts', swift: 'swift', }; const folderMap = { typescript: 'src', flow: 'src', angular: 'src/app', swift: '', }; function supportedTarget(target) { return Object.keys(extensionMap).includes(target); } //# sourceMappingURL=getOutputFileName.js.map