persona-community-5/.pnpm-store/v3/files/28/d82ec1bf85aac942c09790be78aeb1946900c8c075223843081f82801ce4cec94f23827567b6f5326f69f4ecaadbce47b8df9b051ac65cdfe77854942e8980
rdev-worker a1d0d1bf1c
Some checks failed
ci/woodpecker/push/woodpecker Pipeline failed
build: /implement-feature community-ui --requirements 'Build the React commu...
2026-02-24 08:22:30 +00:00

31 lines
1.1 KiB
Plaintext

import ts from 'typescript';
import { oapiRef, tsModifiers, tsPropertyIndex, addJSDocComment, NEVER } from '../lib/ts.mjs';
import { getEntries, createRef } from '../lib/utils.mjs';
import transformResponseObject from './response-object.mjs';
function transformResponsesObject(responsesObject, options) {
const type = [];
for (const [responseCode, responseObject] of getEntries(responsesObject, options.ctx)) {
const responseType = "$ref" in responseObject ? oapiRef(responseObject.$ref) : transformResponseObject(responseObject, {
...options,
path: createRef([options.path, "responses", responseCode])
});
const property = ts.factory.createPropertySignature(
/* modifiers */
tsModifiers({ readonly: options.ctx.immutable }),
/* name */
tsPropertyIndex(responseCode),
/* questionToken */
void 0,
/* type */
responseType
);
addJSDocComment(responseObject, property);
type.push(property);
}
return type.length ? ts.factory.createTypeLiteralNode(type) : NEVER;
}
export { transformResponsesObject as default };
//# sourceMappingURL=responses-object.mjs.map