@rxap/ts-morph
Version:
Provides utilities for manipulating TypeScript code using the ts-morph library. It offers a fluent API to add, modify, and remove code elements such as classes, decorators, imports, and properties in both Angular and NestJS projects. This package simplifi
108 lines • 5.62 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.ToOptionsFunction = exports.RequestMapperKinds = exports.UpstreamOptionsKinds = void 0;
exports.NormalizeBaseUpstreamOptions = NormalizeBaseUpstreamOptions;
exports.NormalizeRequestMapper = NormalizeRequestMapper;
exports.NormalizeBaseRequestMapper = NormalizeBaseRequestMapper;
exports.IsNormalizedBaseRequestMapper = IsNormalizedBaseRequestMapper;
exports.NormalizePagedRequestMapper = NormalizePagedRequestMapper;
exports.IsNormalizedPagedRequestMapper = IsNormalizedPagedRequestMapper;
exports.NormalizeOptionsRequestMapper = NormalizeOptionsRequestMapper;
exports.IsNormalizedOptionsRequestMapper = IsNormalizedOptionsRequestMapper;
exports.NormalizeResolveRequestMapper = NormalizeResolveRequestMapper;
exports.IsNormalizedResolveRequestMapper = IsNormalizedResolveRequestMapper;
exports.NormalizeOpenApiUpstreamOptions = NormalizeOpenApiUpstreamOptions;
exports.IsNormalizedOpenApiUpstreamOptions = IsNormalizedOpenApiUpstreamOptions;
exports.NormalizeUpstreamOptions = NormalizeUpstreamOptions;
var UpstreamOptionsKinds;
(function (UpstreamOptionsKinds) {
UpstreamOptionsKinds["OPEN_API"] = "open-api";
})(UpstreamOptionsKinds || (exports.UpstreamOptionsKinds = UpstreamOptionsKinds = {}));
function NormalizeBaseUpstreamOptions(options) {
return Object.freeze({
kind: options.kind,
mapper: NormalizeRequestMapper(options.mapper),
});
}
function NormalizeRequestMapper(mapper) {
if (!mapper || Object.keys(mapper).length === 0) {
return null;
}
switch (mapper.kind) {
default:
case RequestMapperKinds.DEFAULT:
return NormalizeBaseRequestMapper(mapper);
case RequestMapperKinds.PAGED:
return NormalizePagedRequestMapper(mapper);
case RequestMapperKinds.OPTIONS:
return NormalizeOptionsRequestMapper(mapper);
case RequestMapperKinds.Resolve:
return NormalizeResolveRequestMapper(mapper);
}
}
// endregion
// region BaseRequestMapper
var RequestMapperKinds;
(function (RequestMapperKinds) {
RequestMapperKinds["DEFAULT"] = "default";
RequestMapperKinds["PAGED"] = "paged";
RequestMapperKinds["OPTIONS"] = "options";
RequestMapperKinds["Resolve"] = "resolve";
})(RequestMapperKinds || (exports.RequestMapperKinds = RequestMapperKinds = {}));
function NormalizeBaseRequestMapper(mapper) {
return Object.freeze({
kind: RequestMapperKinds.DEFAULT,
});
}
function IsNormalizedBaseRequestMapper(mapper) {
return mapper.kind === RequestMapperKinds.DEFAULT;
}
function NormalizePagedRequestMapper(mapper) {
var _a, _b, _c, _d, _e, _f, _g;
return Object.freeze(Object.assign(Object.assign({}, NormalizeBaseRequestMapper(mapper)), { kind: RequestMapperKinds.PAGED, pageIndex: (_a = mapper.pageIndex) !== null && _a !== void 0 ? _a : null, pageSize: (_b = mapper.pageSize) !== null && _b !== void 0 ? _b : null, sortBy: (_c = mapper.sortBy) !== null && _c !== void 0 ? _c : null, list: (_d = mapper.list) !== null && _d !== void 0 ? _d : null, total: (_e = mapper.total) !== null && _e !== void 0 ? _e : null, sortDirection: (_f = mapper.sortDirection) !== null && _f !== void 0 ? _f : null, filter: mapper.filter && Object.keys((_g = mapper.filter) !== null && _g !== void 0 ? _g : {}).length ? {
eq: mapper.filter.eq,
join: mapper.filter.join,
} : null }));
}
function IsNormalizedPagedRequestMapper(mapper) {
return mapper.kind === RequestMapperKinds.PAGED;
}
// endregion
// region OptionsRequestMapper
var ToOptionsFunction;
(function (ToOptionsFunction) {
ToOptionsFunction["TO_OPTIONS"] = "ToOptions";
ToOptionsFunction["TO_OPTIONS_FROM_OBJECT"] = "ToOptionsFromObject";
})(ToOptionsFunction || (exports.ToOptionsFunction = ToOptionsFunction = {}));
function NormalizeOptionsRequestMapper(mapper) {
var _a, _b, _c;
return Object.freeze(Object.assign(Object.assign({}, NormalizeBaseRequestMapper(mapper)), { kind: RequestMapperKinds.OPTIONS, toFunction: (_a = mapper.toFunction) !== null && _a !== void 0 ? _a : ToOptionsFunction.TO_OPTIONS, toValue: (_b = mapper.toValue) !== null && _b !== void 0 ? _b : null, toDisplay: (_c = mapper.toDisplay) !== null && _c !== void 0 ? _c : null }));
}
function IsNormalizedOptionsRequestMapper(mapper) {
return mapper.kind === RequestMapperKinds.OPTIONS;
}
function NormalizeResolveRequestMapper(mapper) {
var _a;
return Object.freeze(Object.assign(Object.assign({}, NormalizeBaseRequestMapper(mapper)), { kind: RequestMapperKinds.Resolve, value: (_a = mapper.value) !== null && _a !== void 0 ? _a : null }));
}
function IsNormalizedResolveRequestMapper(mapper) {
return mapper.kind === RequestMapperKinds.Resolve;
}
function NormalizeOpenApiUpstreamOptions(options) {
var _a, _b;
return Object.freeze(Object.assign(Object.assign({}, NormalizeBaseUpstreamOptions(options)), { kind: UpstreamOptionsKinds.OPEN_API, operationId: options.operationId, scope: (_a = options.scope) !== null && _a !== void 0 ? _a : null, isService: (_b = options.isService) !== null && _b !== void 0 ? _b : false }));
}
function IsNormalizedOpenApiUpstreamOptions(options) {
return options.kind === UpstreamOptionsKinds.OPEN_API;
}
// endregion
function NormalizeUpstreamOptions(options) {
if (!options || Object.keys(options).length === 0) {
return null;
}
switch (options.kind) {
case UpstreamOptionsKinds.OPEN_API:
return NormalizeOpenApiUpstreamOptions(options);
}
}
//# sourceMappingURL=upstream-options.js.map