json-schema-typescript-generator
Version:
Generate typescript types from json schemas
55 lines • 1.73 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.createOptions = exports.DEFAULT_OPTIONS = exports.OptionalFieldPattern = exports.UntypedType = void 0;
var UntypedType;
(function (UntypedType) {
UntypedType["ANY"] = "any";
UntypedType["NEVER"] = "never";
UntypedType["UNDEFINED"] = "undefined";
UntypedType["UNKNOWN"] = "unknown";
})(UntypedType || (exports.UntypedType = UntypedType = {}));
var OptionalFieldPattern;
(function (OptionalFieldPattern) {
OptionalFieldPattern["QUESTION"] = "fieldName?";
OptionalFieldPattern["PIPE_UNDEFINED"] = "Type | undefined";
})(OptionalFieldPattern || (exports.OptionalFieldPattern = OptionalFieldPattern = {}));
exports.DEFAULT_OPTIONS = {
files: {
source: {
dir: 'src/schemas',
encoding: 'utf-8',
recursive: true
},
destination: {
dir: 'src/generated',
preClean: false,
indexFiles: true
}
},
ts: {
optionalFields: OptionalFieldPattern.QUESTION,
untyped: UntypedType.UNKNOWN
}
};
const createOptions = (options) => {
return {
files: {
...exports.DEFAULT_OPTIONS.files,
...options.files,
source: {
...exports.DEFAULT_OPTIONS.files.source,
...options.files?.source
},
destination: {
...exports.DEFAULT_OPTIONS.files.destination,
...options.files?.destination
}
},
ts: {
...exports.DEFAULT_OPTIONS.ts,
...options.ts
}
};
};
exports.createOptions = createOptions;
//# sourceMappingURL=options.js.map