From 52737a66324aa7cfee9859bd616816df3d806913 Mon Sep 17 00:00:00 2001 From: Shubh Bapna Date: Fri, 29 Dec 2023 11:59:00 +0530 Subject: [PATCH 1/2] add non nullable to request body to fix keyof for optional properties --- src/moctokit/request/request-mocker.types.ts | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/src/moctokit/request/request-mocker.types.ts b/src/moctokit/request/request-mocker.types.ts index 1a9b6d2..a02f8b5 100644 --- a/src/moctokit/request/request-mocker.types.ts +++ b/src/moctokit/request/request-mocker.types.ts @@ -17,21 +17,21 @@ export type Parameters = "parameters" extends keyof T > : Record; -type RequestBody = "requestBody" extends keyof T - ? "content" extends keyof T["requestBody"] - ? "application/json" extends keyof T["requestBody"]["content"] - ? T["requestBody"]["content"]["application/json"] +export type RequestBody = "requestBody" extends keyof T + ? "content" extends keyof NonNullable + ? "application/json" extends keyof NonNullable["content"] + ? NonNullable["content"]["application/json"] : { data: { - [K in keyof T["requestBody"]["content"]]: T["requestBody"]["content"][K]; - }[keyof T["requestBody"]["content"]]; + [K in keyof NonNullable["content"]]: NonNullable["content"][K]; + }[keyof NonNullable["content"]]; } - : "application/json" extends keyof T["requestBody"] - ? T["requestBody"]["application/json"] + : "application/json" extends keyof NonNullable + ? NonNullable["application/json"] : { data: { - [K in keyof T["requestBody"]]: T["requestBody"][K]; - }[keyof T["requestBody"]]; + [K in keyof NonNullable]: NonNullable[K]; + }[keyof NonNullable]; } : Record; From 15211a6a8050a7cea103a626dccba56f98defa7d Mon Sep 17 00:00:00 2001 From: Shubh Bapna Date: Fri, 29 Dec 2023 12:01:14 +0530 Subject: [PATCH 2/2] remove export for RequestBody --- src/moctokit/request/request-mocker.types.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/moctokit/request/request-mocker.types.ts b/src/moctokit/request/request-mocker.types.ts index a02f8b5..335eb0f 100644 --- a/src/moctokit/request/request-mocker.types.ts +++ b/src/moctokit/request/request-mocker.types.ts @@ -17,7 +17,7 @@ export type Parameters = "parameters" extends keyof T > : Record; -export type RequestBody = "requestBody" extends keyof T +type RequestBody = "requestBody" extends keyof T ? "content" extends keyof NonNullable ? "application/json" extends keyof NonNullable["content"] ? NonNullable["content"]["application/json"]