docusaurus-theme-openapi-docs 0.0.0-966 → 0.0.0-968

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -108,7 +108,7 @@ function App({
108
108
  ...props
109
109
  }) {
110
110
  const prismTheme = (0, theme_common_1.usePrismTheme)();
111
- const [code, setCode] = react_1.default.useState(children);
111
+ const [code, setCode] = react_1.default.useState(children.replace(/\n$/, ""));
112
112
  (0, react_1.useEffect)(() => {
113
113
  action((0, slice_1.setStringRawBody)(code));
114
114
  }, [action, code]);
@@ -131,7 +131,7 @@ function App({
131
131
  react_1.default.createElement(
132
132
  react_live_1.LiveProvider,
133
133
  {
134
- code: children.replace(/\n$/, ""),
134
+ code: code,
135
135
  transformCode: transformCode ?? ((code) => `${code};`),
136
136
  theme: prismTheme,
137
137
  language: language,
@@ -139,7 +139,9 @@ function App({
139
139
  },
140
140
  react_1.default.createElement(react_hook_form_1.Controller, {
141
141
  control: control,
142
- rules: { required: isRequired ? "This field is required" : false },
142
+ rules: {
143
+ required: isRequired && !code ? "This field is required" : false,
144
+ },
143
145
  name: "requestBody",
144
146
  render: ({ field: { onChange, name } }) =>
145
147
  react_1.default.createElement(LiveComponent, {
@@ -57,8 +57,11 @@ function SchemaItem(props) {
57
57
  enumDescriptions = transformEnumDescriptions(schema["x-enumDescriptions"]);
58
58
  defaultValue = schema.default;
59
59
  example = schema.example;
60
- nullable = schema.nullable;
60
+ nullable =
61
+ schema.nullable ||
62
+ (Array.isArray(schema.type) && schema.type.includes("null")); // support JSON Schema nullable
61
63
  }
64
+ console.log(schema);
62
65
  const renderRequired = (0, utils_1.guard)(
63
66
  Array.isArray(required) ? required.includes(name) : required,
64
67
  () =>
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "docusaurus-theme-openapi-docs",
3
3
  "description": "OpenAPI theme for Docusaurus.",
4
- "version": "0.0.0-966",
4
+ "version": "0.0.0-968",
5
5
  "license": "MIT",
6
6
  "keywords": [
7
7
  "openapi",
@@ -34,7 +34,7 @@
34
34
  "@types/file-saver": "^2.0.5",
35
35
  "@types/lodash": "^4.14.176",
36
36
  "concurrently": "^5.2.0",
37
- "docusaurus-plugin-openapi-docs": "0.0.0-966",
37
+ "docusaurus-plugin-openapi-docs": "0.0.0-968",
38
38
  "docusaurus-plugin-sass": "^0.2.3",
39
39
  "eslint-plugin-prettier": "^5.0.1"
40
40
  },
@@ -75,5 +75,5 @@
75
75
  "engines": {
76
76
  "node": ">=14"
77
77
  },
78
- "gitHead": "107dcf8a1d012d8edd9789ee53fa1fac9f0d9b5d"
78
+ "gitHead": "47c3eb49303dc6ffb7d6c4c305a3052b9472ed20"
79
79
  }
@@ -51,7 +51,7 @@ function App({
51
51
  ...props
52
52
  }: any): JSX.Element {
53
53
  const prismTheme = usePrismTheme();
54
- const [code, setCode] = React.useState(children);
54
+ const [code, setCode] = React.useState(children.replace(/\n$/, ""));
55
55
 
56
56
  useEffect(() => {
57
57
  action(setStringRawBody(code));
@@ -76,7 +76,7 @@ function App({
76
76
  })}
77
77
  >
78
78
  <LiveProvider
79
- code={children.replace(/\n$/, "")}
79
+ code={code}
80
80
  transformCode={transformCode ?? ((code) => `${code};`)}
81
81
  theme={prismTheme}
82
82
  language={language}
@@ -84,7 +84,9 @@ function App({
84
84
  >
85
85
  <Controller
86
86
  control={control}
87
- rules={{ required: isRequired ? "This field is required" : false }}
87
+ rules={{
88
+ required: isRequired && !code ? "This field is required" : false,
89
+ }}
88
90
  name="requestBody"
89
91
  render={({ field: { onChange, name } }) => (
90
92
  <LiveComponent
@@ -72,9 +72,13 @@ export default function SchemaItem(props: Props) {
72
72
  enumDescriptions = transformEnumDescriptions(schema["x-enumDescriptions"]);
73
73
  defaultValue = schema.default;
74
74
  example = schema.example;
75
- nullable = schema.nullable;
75
+ nullable =
76
+ schema.nullable ||
77
+ (Array.isArray(schema.type) && schema.type.includes("null")); // support JSON Schema nullable
76
78
  }
77
79
 
80
+ console.log(schema);
81
+
78
82
  const renderRequired = guard(
79
83
  Array.isArray(required) ? required.includes(name) : required,
80
84
  () => <span className="openapi-schema__required">required</span>