UNPKG

ts-to-mongo-schema

Version:

Using the Typescript Compiler API, this program parses through Typescript, to generate a JSON Schema that conforms to MongoDB's bson format. Useful when generating large schemas, and being unable to use a javascript or typescript library like Moongoose.

25 lines (24 loc) 1.11 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); var path_1 = __importDefault(require("path")); var generateNewFilePath = function (_a) { var name = _a.name, imports = _a.imports, paths = _a.paths, extension = _a.extension; var importRelative = imports[name].substring(1, imports[name].length - 1); var newPathRelative = importRelative + extension; var parsedRelative = newPathRelative.split(path_1.default.posix.sep); var newFilePath = paths.filePath; for (var _i = 0, parsedRelative_1 = parsedRelative; _i < parsedRelative_1.length; _i++) { var segment = parsedRelative_1[_i]; var newSegment = segment; if (segment === ".") newSegment = ".."; else if (segment === "..") newSegment = "../../"; newFilePath = path_1.default.resolve(newFilePath, newSegment); } return newFilePath; }; exports.default = generateNewFilePath;