sql-code-generator
Version:
Generate code from your SQL schema and queries for type safety and development speed.
30 lines • 1.83 kB
JavaScript
;
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.extractSqlFromFile = void 0;
const extractSqlFromSqlFile_1 = require("./extractSqlFromSqlFile");
const extractSqlFromTsFile_1 = require("./extractSqlFromTsFile");
const SUPPORTED_FILE_EXTENSIONS = ['.sql', '.ts'];
const extractSqlFromFile = (_a) => __awaiter(void 0, [_a], void 0, function* ({ filePath, }) {
// 1. grab extension from file; check that we support it
const extension = `.${filePath.split('.').slice(-1)[0]}`;
if (!SUPPORTED_FILE_EXTENSIONS.includes(extension)) {
throw new Error(`file extension '.${extension}' is not supported`);
}
// 2. grab sql from file, based on file type
if (extension === '.sql')
return (0, extractSqlFromSqlFile_1.extractSqlFromSqlFile)({ filePath });
if (extension === '.ts')
return (0, extractSqlFromTsFile_1.extractSqlFromTsFile)({ filePath });
throw new Error('unexpected'); // should never reach here, since we checked earlier that the extension was supported
});
exports.extractSqlFromFile = extractSqlFromFile;
//# sourceMappingURL=extractSqlFromFile.js.map