diff --git a/.changeset/twelve-news-joke.md b/.changeset/twelve-news-joke.md new file mode 100644 index 000000000..3c0d08681 --- /dev/null +++ b/.changeset/twelve-news-joke.md @@ -0,0 +1,5 @@ +--- +"@gitbook/react-openapi": patch +--- + +Fix Python code sample "null vs None" diff --git a/packages/react-openapi/src/code-samples.test.ts b/packages/react-openapi/src/code-samples.test.ts index 363baf552..7fd24bb3f 100644 --- a/packages/react-openapi/src/code-samples.test.ts +++ b/packages/react-openapi/src/code-samples.test.ts @@ -415,13 +415,14 @@ describe('python code sample generator', () => { key: 'value', truethy: true, falsey: false, + nullish: null, }, }; const output = generator?.generate(input); expect(output).toBe( - 'import requests\n\nresponse = requests.get(\n "https://example.com/path",\n headers={"Content-Type":"application/json"},\n data=json.dumps({"key":"value","truethy":True,"falsey":False})\n)\n\ndata = response.json()' + 'import requests\n\nresponse = requests.get(\n "https://example.com/path",\n headers={"Content-Type":"application/json"},\n data=json.dumps({"key":"value","truethy":True,"falsey":False,"nullish":None})\n)\n\ndata = response.json()' ); }); diff --git a/packages/react-openapi/src/code-samples.ts b/packages/react-openapi/src/code-samples.ts index fe44da11d..a6c79fd5c 100644 --- a/packages/react-openapi/src/code-samples.ts +++ b/packages/react-openapi/src/code-samples.ts @@ -362,12 +362,15 @@ const BodyGenerators = { return '$$__TRUE__$$'; case false: return '$$__FALSE__$$'; + case null: + return '$$__NULL__$$'; default: return value; } }) .replaceAll('"$$__TRUE__$$"', 'True') - .replaceAll('"$$__FALSE__$$"', 'False'); + .replaceAll('"$$__FALSE__$$"', 'False') + .replaceAll('"$$__NULL__$$"', 'None'); } return { body, code, headers };