docusaurus-theme-openapi-docs 0.0.0-477 → 0.0.0-479

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.
Files changed (55) hide show
  1. package/lib/theme/ApiDemoPanel/Accept/index.js +1 -1
  2. package/lib/theme/ApiDemoPanel/Authorization/index.js +2 -2
  3. package/lib/theme/ApiDemoPanel/Body/index.js +2 -2
  4. package/lib/theme/ApiDemoPanel/ContentType/index.js +1 -1
  5. package/lib/theme/ApiDemoPanel/Curl/index.js +2 -2
  6. package/lib/theme/ApiDemoPanel/Execute/index.js +1 -1
  7. package/lib/theme/ApiDemoPanel/ParamOptions/index.js +1 -1
  8. package/lib/theme/ApiDemoPanel/Request/index.js +2 -2
  9. package/lib/theme/ApiDemoPanel/Response/index.js +1 -1
  10. package/lib/theme/ApiDemoPanel/SecuritySchemes/index.js +1 -1
  11. package/lib/theme/ApiDemoPanel/Server/index.js +27 -10
  12. package/lib/theme/ApiDemoPanel/Server/slice.js +3 -2
  13. package/lib/theme/ApiDemoPanel/index.js +8 -72
  14. package/lib/theme/ApiDemoPanel/persistanceMiddleware.js +22 -0
  15. package/lib/theme/{ApiDemoPanel → ApiItem}/hooks.js +0 -0
  16. package/lib/theme/ApiItem/index.js +101 -22
  17. package/lib/theme/{ApiDemoPanel → ApiItem}/store.js +7 -7
  18. package/lib/theme/MimeTabs/index.js +29 -1
  19. package/lib-next/theme/ApiDemoPanel/Accept/index.js +1 -1
  20. package/lib-next/theme/ApiDemoPanel/Authorization/index.js +1 -1
  21. package/lib-next/theme/ApiDemoPanel/Body/index.js +2 -2
  22. package/lib-next/theme/ApiDemoPanel/ContentType/index.js +1 -1
  23. package/lib-next/theme/ApiDemoPanel/Curl/index.js +1 -1
  24. package/lib-next/theme/ApiDemoPanel/Execute/index.js +1 -1
  25. package/lib-next/theme/ApiDemoPanel/ParamOptions/index.js +1 -1
  26. package/lib-next/theme/ApiDemoPanel/Request/index.js +1 -1
  27. package/lib-next/theme/ApiDemoPanel/Response/index.js +1 -1
  28. package/lib-next/theme/ApiDemoPanel/SecuritySchemes/index.js +1 -1
  29. package/lib-next/theme/ApiDemoPanel/Server/index.js +38 -10
  30. package/lib-next/theme/ApiDemoPanel/Server/slice.js +5 -3
  31. package/lib-next/theme/ApiDemoPanel/index.js +7 -69
  32. package/lib-next/theme/ApiDemoPanel/persistanceMiddleware.js +20 -0
  33. package/lib-next/theme/{ApiDemoPanel → ApiItem}/hooks.js +0 -0
  34. package/lib-next/theme/ApiItem/index.js +104 -26
  35. package/lib-next/theme/{ApiDemoPanel → ApiItem}/store.js +7 -7
  36. package/lib-next/theme/MimeTabs/index.js +29 -1
  37. package/package.json +3 -3
  38. package/src/theme/ApiDemoPanel/Accept/index.tsx +1 -1
  39. package/src/theme/ApiDemoPanel/Authorization/index.tsx +1 -1
  40. package/src/theme/ApiDemoPanel/Body/index.tsx +1 -1
  41. package/src/theme/ApiDemoPanel/ContentType/index.tsx +1 -1
  42. package/src/theme/ApiDemoPanel/Curl/index.tsx +1 -1
  43. package/src/theme/ApiDemoPanel/Execute/index.tsx +1 -1
  44. package/src/theme/ApiDemoPanel/ParamOptions/index.tsx +1 -1
  45. package/src/theme/ApiDemoPanel/Request/index.tsx +1 -1
  46. package/src/theme/ApiDemoPanel/Response/index.tsx +1 -1
  47. package/src/theme/ApiDemoPanel/SecuritySchemes/index.tsx +1 -1
  48. package/src/theme/ApiDemoPanel/Server/index.tsx +34 -6
  49. package/src/theme/ApiDemoPanel/Server/slice.ts +6 -7
  50. package/src/theme/ApiDemoPanel/index.tsx +10 -73
  51. package/src/theme/ApiDemoPanel/persistanceMiddleware.ts +21 -1
  52. package/src/theme/{ApiDemoPanel → ApiItem}/hooks.ts +0 -0
  53. package/src/theme/ApiItem/index.tsx +103 -27
  54. package/src/theme/{ApiDemoPanel → ApiItem}/store.ts +7 -7
  55. package/src/theme/MimeTabs/index.js +29 -1
@@ -7,7 +7,7 @@ exports.default = void 0;
7
7
 
8
8
  var _react = _interopRequireDefault(require("react"));
9
9
 
10
- var _hooks = require("../hooks");
10
+ var _hooks = require("../../ApiItem/hooks");
11
11
 
12
12
  var _FormItem = _interopRequireDefault(require("./../FormItem"));
13
13
 
@@ -7,14 +7,14 @@ exports.default = void 0;
7
7
 
8
8
  var _react = _interopRequireDefault(require("react"));
9
9
 
10
+ var _hooks = require("../../ApiItem/hooks");
11
+
10
12
  var _FormItem = _interopRequireDefault(require("../FormItem"));
11
13
 
12
14
  var _FormSelect = _interopRequireDefault(require("../FormSelect"));
13
15
 
14
16
  var _FormTextInput = _interopRequireDefault(require("../FormTextInput"));
15
17
 
16
- var _hooks = require("../hooks");
17
-
18
18
  var _slice = require("./slice");
19
19
 
20
20
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
@@ -11,14 +11,14 @@ var _TabItem = _interopRequireDefault(require("@theme/TabItem"));
11
11
 
12
12
  var _xmlFormatter = _interopRequireDefault(require("xml-formatter"));
13
13
 
14
+ var _hooks = require("../../ApiItem/hooks");
15
+
14
16
  var _SchemaTabs = _interopRequireDefault(require("../../SchemaTabs"));
15
17
 
16
18
  var _ContentType = _interopRequireDefault(require("../ContentType"));
17
19
 
18
20
  var _FormSelect = _interopRequireDefault(require("../FormSelect"));
19
21
 
20
- var _hooks = require("../hooks");
21
-
22
22
  var _LiveEditor = _interopRequireDefault(require("../LiveEditor"));
23
23
 
24
24
  var _FormFileUpload = _interopRequireDefault(require("./../FormFileUpload"));
@@ -7,7 +7,7 @@ exports.default = void 0;
7
7
 
8
8
  var _react = _interopRequireDefault(require("react"));
9
9
 
10
- var _hooks = require("../hooks");
10
+ var _hooks = require("../../ApiItem/hooks");
11
11
 
12
12
  var _FormItem = _interopRequireDefault(require("./../FormItem"));
13
13
 
@@ -15,9 +15,9 @@ var _CodeBlock = _interopRequireDefault(require("@theme/CodeBlock"));
15
15
 
16
16
  var _clsx = _interopRequireDefault(require("clsx"));
17
17
 
18
- var _CodeTabs = _interopRequireDefault(require("../CodeTabs"));
18
+ var _hooks = require("../../ApiItem/hooks");
19
19
 
20
- var _hooks = require("../hooks");
20
+ var _CodeTabs = _interopRequireDefault(require("../CodeTabs"));
21
21
 
22
22
  var _buildPostmanRequest = _interopRequireDefault(require("./../buildPostmanRequest"));
23
23
 
@@ -9,7 +9,7 @@ var _react = _interopRequireDefault(require("react"));
9
9
 
10
10
  var _reactModal = _interopRequireDefault(require("react-modal"));
11
11
 
12
- var _hooks = require("../hooks");
12
+ var _hooks = require("../../ApiItem/hooks");
13
13
 
14
14
  var _slice = require("../Response/slice");
15
15
 
@@ -9,7 +9,7 @@ var _react = _interopRequireWildcard(require("react"));
9
9
 
10
10
  var _toolkit = require("@reduxjs/toolkit");
11
11
 
12
- var _hooks = require("../hooks");
12
+ var _hooks = require("../../ApiItem/hooks");
13
13
 
14
14
  var _FormItem = _interopRequireDefault(require("./../FormItem"));
15
15
 
@@ -11,6 +11,8 @@ var _useDocusaurusContext = _interopRequireDefault(require("@docusaurus/useDocus
11
11
 
12
12
  var _postmanCollection = _interopRequireDefault(require("@paloaltonetworks/postman-collection"));
13
13
 
14
+ var _hooks = require("../../ApiItem/hooks");
15
+
14
16
  var _Accept = _interopRequireDefault(require("../Accept"));
15
17
 
16
18
  var _Authorization = _interopRequireDefault(require("../Authorization"));
@@ -19,8 +21,6 @@ var _Body = _interopRequireDefault(require("../Body"));
19
21
 
20
22
  var _Execute = _interopRequireDefault(require("../Execute"));
21
23
 
22
- var _hooks = require("../hooks");
23
-
24
24
  var _ParamOptions = _interopRequireDefault(require("../ParamOptions"));
25
25
 
26
26
  var _Server = _interopRequireDefault(require("../Server"));
@@ -9,7 +9,7 @@ var _react = _interopRequireDefault(require("react"));
9
9
 
10
10
  var _CodeBlock = _interopRequireDefault(require("@theme/CodeBlock"));
11
11
 
12
- var _hooks = require("../hooks");
12
+ var _hooks = require("../../ApiItem/hooks");
13
13
 
14
14
  var _slice = require("./slice");
15
15
 
@@ -9,7 +9,7 @@ var _react = _interopRequireDefault(require("react"));
9
9
 
10
10
  var _Link = _interopRequireDefault(require("@docusaurus/Link"));
11
11
 
12
- var _hooks = require("../hooks");
12
+ var _hooks = require("../../ApiItem/hooks");
13
13
 
14
14
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
15
15
 
@@ -7,9 +7,9 @@ exports.default = void 0;
7
7
 
8
8
  var _react = _interopRequireWildcard(require("react"));
9
9
 
10
- var _FloatingButton = _interopRequireDefault(require("../FloatingButton"));
10
+ var _hooks = require("../../ApiItem/hooks");
11
11
 
12
- var _hooks = require("../hooks");
12
+ var _FloatingButton = _interopRequireDefault(require("../FloatingButton"));
13
13
 
14
14
  var _FormItem = _interopRequireDefault(require("./../FormItem"));
15
15
 
@@ -47,6 +47,21 @@ function Server() {
47
47
  return null;
48
48
  }
49
49
 
50
+ if (!value) {
51
+ const defaultOption = options[0];
52
+ dispatch((0, _slice.setServer)(JSON.stringify(defaultOption)));
53
+ } // Default to first option when existing server state is mismatched
54
+
55
+
56
+ if (value) {
57
+ const urlExists = options.find(s => s.url === value.url);
58
+
59
+ if (!urlExists) {
60
+ const defaultOption = options[0];
61
+ dispatch((0, _slice.setServer)(JSON.stringify(defaultOption)));
62
+ }
63
+ }
64
+
50
65
  if (!isEditing) {
51
66
  let url = "";
52
67
 
@@ -77,30 +92,32 @@ function Server() {
77
92
  return <div className={_stylesModule.default.optionsPanel}>
78
93
  <_FloatingButton.default onClick={() => setIsEditing(false)} label="Hide">
79
94
  <_FormItem.default label="Base URL">
80
- <_FormSelect.default options={options.map(s => s.url)} onChange={e => dispatch((0, _slice.setServer)(e.target.value))} value={value === null || value === void 0 ? void 0 : value.url} />
95
+ <_FormSelect.default options={options.map(s => s.url)} onChange={e => {
96
+ dispatch((0, _slice.setServer)(JSON.stringify(options.filter(s => s.url === e.target.value)[0])));
97
+ }} value={value === null || value === void 0 ? void 0 : value.url} />
81
98
  <small>{value === null || value === void 0 ? void 0 : value.description}</small>
82
99
  </_FormItem.default>
83
100
  {(value === null || value === void 0 ? void 0 : value.variables) && Object.keys(value.variables).map(key => {
84
- var _value$variables2, _value$variables3;
101
+ var _value$variables2, _value$variables3, _value$variables4;
85
102
 
86
103
  if (((_value$variables2 = value.variables) === null || _value$variables2 === void 0 ? void 0 : _value$variables2[key].enum) !== undefined) {
87
104
  return <_FormItem.default label={key}>
88
105
  <_FormSelect.default options={value.variables[key].enum} onChange={e => {
89
- dispatch((0, _slice.setServerVariable)({
106
+ dispatch((0, _slice.setServerVariable)(JSON.stringify({
90
107
  key,
91
108
  value: e.target.value
92
- }));
93
- }} />
109
+ })));
110
+ }} value={value === null || value === void 0 ? void 0 : value.variables[key].default} />
94
111
  </_FormItem.default>;
95
112
  }
96
113
 
97
114
  return <_FormItem.default label={key}>
98
115
  <_FormTextInput.default placeholder={(_value$variables3 = value.variables) === null || _value$variables3 === void 0 ? void 0 : _value$variables3[key].default} onChange={e => {
99
- dispatch((0, _slice.setServerVariable)({
116
+ dispatch((0, _slice.setServerVariable)(JSON.stringify({
100
117
  key,
101
118
  value: e.target.value
102
- }));
103
- }} />
119
+ })));
120
+ }} value={value === null || value === void 0 ? void 0 : (_value$variables4 = value.variables) === null || _value$variables4 === void 0 ? void 0 : _value$variables4[key].default} />
104
121
  </_FormItem.default>;
105
122
  })}
106
123
  </_FloatingButton.default>
@@ -19,13 +19,14 @@ const slice = (0, _toolkit.createSlice)({
19
19
  initialState,
20
20
  reducers: {
21
21
  setServer: (state, action) => {
22
- state.value = state.options.find(s => s.url === action.payload);
22
+ state.value = state.options.find(s => s.url === JSON.parse(action.payload).url);
23
23
  },
24
24
  setServerVariable: (state, action) => {
25
25
  var _state$value;
26
26
 
27
27
  if ((_state$value = state.value) !== null && _state$value !== void 0 && _state$value.variables) {
28
- state.value.variables[action.payload.key].default = action.payload.value;
28
+ const parsedPayload = JSON.parse(action.payload);
29
+ state.value.variables[parsedPayload.key].default = parsedPayload.value;
29
30
  }
30
31
  }
31
32
  }
@@ -7,28 +7,18 @@ exports.default = void 0;
7
7
 
8
8
  var _react = _interopRequireDefault(require("react"));
9
9
 
10
- var _useDocusaurusContext = _interopRequireDefault(require("@docusaurus/useDocusaurusContext"));
11
-
12
10
  var _postmanCollection = _interopRequireDefault(require("@paloaltonetworks/postman-collection"));
13
11
 
14
- var _reactRedux = require("react-redux");
15
-
16
- var _slice = require("./Authorization/slice");
17
-
18
12
  var _Curl = _interopRequireDefault(require("./Curl"));
19
13
 
20
14
  var _MethodEndpoint = _interopRequireDefault(require("./MethodEndpoint"));
21
15
 
22
- var _persistanceMiddleware = require("./persistanceMiddleware");
23
-
24
16
  var _Request = _interopRequireDefault(require("./Request"));
25
17
 
26
18
  var _Response = _interopRequireDefault(require("./Response"));
27
19
 
28
20
  var _SecuritySchemes = _interopRequireDefault(require("./SecuritySchemes"));
29
21
 
30
- var _store = require("./store");
31
-
32
22
  var _stylesModule = _interopRequireDefault(require("./styles.module.css"));
33
23
 
34
24
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
@@ -43,74 +33,20 @@ function ApiDemoPanel({
43
33
  item,
44
34
  infoPath
45
35
  }) {
46
- var _item$responses, _item$requestBody$con, _item$requestBody, _item$servers, _item$parameters, _xCodeSamples;
36
+ var _xCodeSamples;
47
37
 
48
- const {
49
- siteConfig
50
- } = (0, _useDocusaurusContext.default)();
51
- const themeConfig = siteConfig.themeConfig;
52
- const options = themeConfig.api;
53
38
  const postman = new _postmanCollection.default.Request(item.postman);
54
- const acceptArray = Array.from(new Set(Object.values((_item$responses = item.responses) !== null && _item$responses !== void 0 ? _item$responses : {}).map(response => {
55
- var _response$content;
56
-
57
- return Object.keys((_response$content = response.content) !== null && _response$content !== void 0 ? _response$content : {});
58
- }).flat()));
59
- const content = (_item$requestBody$con = (_item$requestBody = item.requestBody) === null || _item$requestBody === void 0 ? void 0 : _item$requestBody.content) !== null && _item$requestBody$con !== void 0 ? _item$requestBody$con : {};
60
- const contentTypeArray = Object.keys(content);
61
- const servers = (_item$servers = item.servers) !== null && _item$servers !== void 0 ? _item$servers : [];
62
- const params = {
63
- path: [],
64
- query: [],
65
- header: [],
66
- cookie: []
67
- };
68
- (_item$parameters = item.parameters) === null || _item$parameters === void 0 ? void 0 : _item$parameters.forEach(param => {
69
- const paramType = param.in;
70
- const paramsArray = params[paramType];
71
- paramsArray.push(param);
72
- });
73
- const auth = (0, _slice.createAuth)({
74
- security: item.security,
75
- securitySchemes: item.securitySchemes,
76
- options
77
- });
78
- const persistanceMiddleware = (0, _persistanceMiddleware.createPersistanceMiddleware)(options);
79
- const store2 = (0, _store.createStoreWithState)({
80
- accept: {
81
- value: acceptArray[0],
82
- options: acceptArray
83
- },
84
- contentType: {
85
- value: contentTypeArray[0],
86
- options: contentTypeArray
87
- },
88
- server: {
89
- value: servers[0],
90
- options: servers
91
- },
92
- response: {
93
- value: undefined
94
- },
95
- body: {
96
- type: "empty"
97
- },
98
- params,
99
- auth
100
- }, [persistanceMiddleware]);
101
39
  const {
102
40
  path,
103
41
  method
104
42
  } = item;
105
- return <_reactRedux.Provider store={store2}>
106
- <div className={_stylesModule.default.apiDemoPanelContainer}>
107
- <_MethodEndpoint.default method={method} path={path} />
108
- <_SecuritySchemes.default infoPath={infoPath} />
109
- <_Request.default item={item} />
110
- <_Response.default />
111
- <_Curl.default postman={postman} codeSamples={(_xCodeSamples = item["x-code-samples"]) !== null && _xCodeSamples !== void 0 ? _xCodeSamples : []} />
112
- </div>
113
- </_reactRedux.Provider>;
43
+ return <div className={_stylesModule.default.apiDemoPanelContainer}>
44
+ <_MethodEndpoint.default method={method} path={path} />
45
+ <_SecuritySchemes.default infoPath={infoPath} />
46
+ <_Request.default item={item} />
47
+ <_Response.default />
48
+ <_Curl.default postman={postman} codeSamples={(_xCodeSamples = item["x-code-samples"]) !== null && _xCodeSamples !== void 0 ? _xCodeSamples : []} />
49
+ </div>;
114
50
  }
115
51
 
116
52
  var _default = ApiDemoPanel;
@@ -37,6 +37,28 @@ function createPersistanceMiddleware(options) {
37
37
  }
38
38
  }
39
39
 
40
+ if (action.type === "contentType/setContentType") {
41
+ storage.setItem("contentType", action.payload);
42
+ }
43
+
44
+ if (action.type === "accept/setAccept") {
45
+ storage.setItem("accept", action.payload);
46
+ }
47
+
48
+ if (action.type === "server/setServer") {
49
+ storage.setItem("server", action.payload);
50
+ }
51
+
52
+ if (action.type === "server/setServerVariable") {
53
+ var _storage$getItem;
54
+
55
+ const server = (_storage$getItem = storage.getItem("server")) !== null && _storage$getItem !== void 0 ? _storage$getItem : "{}";
56
+ const variables = JSON.parse(action.payload);
57
+ let serverObject = JSON.parse(server);
58
+ serverObject.variables[variables.key].default = variables.value;
59
+ storage.setItem("server", JSON.stringify(serverObject));
60
+ }
61
+
40
62
  return result;
41
63
  };
42
64
 
File without changes
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.default = DocItem;
6
+ exports.default = void 0;
7
7
 
8
8
  var _react = _interopRequireDefault(require("react"));
9
9
 
@@ -11,12 +11,22 @@ var _ExecutionEnvironment = _interopRequireDefault(require("@docusaurus/Executio
11
11
 
12
12
  var _themeCommon = require("@docusaurus/theme-common");
13
13
 
14
+ var _useDocusaurusContext = _interopRequireDefault(require("@docusaurus/useDocusaurusContext"));
15
+
14
16
  var _clsx = _interopRequireDefault(require("clsx"));
15
17
 
18
+ var _reactRedux = require("react-redux");
19
+
20
+ var _slice = require("../ApiDemoPanel/Authorization/slice");
21
+
22
+ var _persistanceMiddleware = require("../ApiDemoPanel/persistanceMiddleware");
23
+
16
24
  var _Layout = _interopRequireDefault(require("./Layout"));
17
25
 
18
26
  var _Metadata = _interopRequireDefault(require("./Metadata"));
19
27
 
28
+ var _store = require("./store");
29
+
20
30
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
21
31
 
22
32
  /* ============================================================================
@@ -33,14 +43,19 @@ let ApiDemoPanel = _ => <div style={{
33
43
  marginTop: "3.5em"
34
44
  }} />;
35
45
 
46
+ let DocItem = props => {
47
+ return <div style={{
48
+ marginTop: "3.5em"
49
+ }} />;
50
+ };
51
+
36
52
  if (_ExecutionEnvironment.default.canUseDOM) {
37
53
  ApiDemoPanel = require("@theme/ApiDemoPanel").default;
38
- }
39
54
 
40
- function DocItem(props) {
41
- const docHtmlClassName = `docs-doc-id-${props.content.metadata.unversionedId}`;
55
+ DocItem = function DocItem(props) {
56
+ var _api$responses, _api$requestBody$cont, _api$requestBody, _api$servers, _api$parameters, _window, _window2, _window3, _ref;
42
57
 
43
- const DocContent = () => {
58
+ const docHtmlClassName = `docs-doc-id-${props.content.metadata.unversionedId}`;
44
59
  const MDXComponent = props.content;
45
60
  const {
46
61
  frontMatter
@@ -51,22 +66,86 @@ function DocItem(props) {
51
66
  const {
52
67
  api
53
68
  } = frontMatter;
54
- return <div className="row">
55
- <div className={(0, _clsx.default)("col", api ? "col--7" : "col--12")}>
56
- <MDXComponent />
57
- </div>
58
- {api && <div className="col col--5">
59
- <ApiDemoPanel item={api} infoPath={infoPath} />
60
- </div>}
61
- </div>;
69
+ const {
70
+ siteConfig
71
+ } = (0, _useDocusaurusContext.default)();
72
+ const themeConfig = siteConfig.themeConfig;
73
+ const options = themeConfig.api;
74
+ const acceptArray = Array.from(new Set(Object.values((_api$responses = api === null || api === void 0 ? void 0 : api.responses) !== null && _api$responses !== void 0 ? _api$responses : {}).map(response => {
75
+ var _response$content;
76
+
77
+ return Object.keys((_response$content = response.content) !== null && _response$content !== void 0 ? _response$content : {});
78
+ }).flat()));
79
+ const content = (_api$requestBody$cont = api === null || api === void 0 ? void 0 : (_api$requestBody = api.requestBody) === null || _api$requestBody === void 0 ? void 0 : _api$requestBody.content) !== null && _api$requestBody$cont !== void 0 ? _api$requestBody$cont : {};
80
+ const contentTypeArray = Object.keys(content);
81
+ const servers = (_api$servers = api === null || api === void 0 ? void 0 : api.servers) !== null && _api$servers !== void 0 ? _api$servers : [];
82
+ const params = {
83
+ path: [],
84
+ query: [],
85
+ header: [],
86
+ cookie: []
87
+ };
88
+ api === null || api === void 0 ? void 0 : (_api$parameters = api.parameters) === null || _api$parameters === void 0 ? void 0 : _api$parameters.forEach(param => {
89
+ const paramType = param.in;
90
+ const paramsArray = params[paramType];
91
+ paramsArray.push(param);
92
+ });
93
+ const auth = (0, _slice.createAuth)({
94
+ security: api === null || api === void 0 ? void 0 : api.security,
95
+ securitySchemes: api === null || api === void 0 ? void 0 : api.securitySchemes,
96
+ options
97
+ });
98
+ const persistanceMiddleware = (0, _persistanceMiddleware.createPersistanceMiddleware)(options);
99
+ const acceptValue = (_window = window) === null || _window === void 0 ? void 0 : _window.sessionStorage.getItem("accept");
100
+ const contentTypeValue = (_window2 = window) === null || _window2 === void 0 ? void 0 : _window2.sessionStorage.getItem("contentType");
101
+ const server = (_window3 = window) === null || _window3 === void 0 ? void 0 : _window3.sessionStorage.getItem("server");
102
+ const serverObject = (_ref = JSON.parse(server)) !== null && _ref !== void 0 ? _ref : {};
103
+ const store2 = (0, _store.createStoreWithState)({
104
+ accept: {
105
+ value: acceptValue || acceptArray[0],
106
+ options: acceptArray
107
+ },
108
+ contentType: {
109
+ value: contentTypeValue || contentTypeArray[0],
110
+ options: contentTypeArray
111
+ },
112
+ server: {
113
+ value: serverObject.url ? serverObject : undefined,
114
+ options: servers
115
+ },
116
+ response: {
117
+ value: undefined
118
+ },
119
+ body: {
120
+ type: "empty"
121
+ },
122
+ params,
123
+ auth
124
+ }, [persistanceMiddleware]);
125
+
126
+ const DocContent = () => {
127
+ return <div className="row">
128
+ <div className={(0, _clsx.default)("col", api ? "col--7" : "col--12")}>
129
+ <MDXComponent />
130
+ </div>
131
+ {api && <div className="col col--5">
132
+ <ApiDemoPanel item={api} infoPath={infoPath} />
133
+ </div>}
134
+ </div>;
135
+ };
136
+
137
+ return <_reactRedux.Provider store={store2}>
138
+ <DocProvider content={props.content}>
139
+ <_themeCommon.HtmlClassNameProvider className={docHtmlClassName}>
140
+ <_Metadata.default />
141
+ <_Layout.default>
142
+ <DocContent />
143
+ </_Layout.default>
144
+ </_themeCommon.HtmlClassNameProvider>
145
+ </DocProvider>
146
+ </_reactRedux.Provider>;
62
147
  };
148
+ }
63
149
 
64
- return <DocProvider content={props.content}>
65
- <_themeCommon.HtmlClassNameProvider className={docHtmlClassName}>
66
- <_Metadata.default />
67
- <_Layout.default>
68
- <DocContent />
69
- </_Layout.default>
70
- </_themeCommon.HtmlClassNameProvider>
71
- </DocProvider>;
72
- }
150
+ var _default = DocItem;
151
+ exports.default = _default;
@@ -7,19 +7,19 @@ exports.createStoreWithState = void 0;
7
7
 
8
8
  var _toolkit = require("@reduxjs/toolkit");
9
9
 
10
- var _slice = _interopRequireDefault(require("./Accept/slice"));
10
+ var _slice = _interopRequireDefault(require("../ApiDemoPanel/Accept/slice"));
11
11
 
12
- var _slice2 = _interopRequireDefault(require("./Authorization/slice"));
12
+ var _slice2 = _interopRequireDefault(require("../ApiDemoPanel/Authorization/slice"));
13
13
 
14
- var _slice3 = _interopRequireDefault(require("./Body/slice"));
14
+ var _slice3 = _interopRequireDefault(require("../ApiDemoPanel/Body/slice"));
15
15
 
16
- var _slice4 = _interopRequireDefault(require("./ContentType/slice"));
16
+ var _slice4 = _interopRequireDefault(require("../ApiDemoPanel/ContentType/slice"));
17
17
 
18
- var _slice5 = _interopRequireDefault(require("./ParamOptions/slice"));
18
+ var _slice5 = _interopRequireDefault(require("../ApiDemoPanel/ParamOptions/slice"));
19
19
 
20
- var _slice6 = _interopRequireDefault(require("./Response/slice"));
20
+ var _slice6 = _interopRequireDefault(require("../ApiDemoPanel/Response/slice"));
21
21
 
22
- var _slice7 = _interopRequireDefault(require("./Server/slice"));
22
+ var _slice7 = _interopRequireDefault(require("../ApiDemoPanel/Server/slice"));
23
23
 
24
24
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
25
25
 
@@ -18,6 +18,9 @@ import { duplicates } from "@docusaurus/theme-common";
18
18
  import useIsBrowser from "@docusaurus/useIsBrowser";
19
19
  import clsx from "clsx";
20
20
 
21
+ import { setAccept } from "../ApiDemoPanel/Accept/slice";
22
+ import { setContentType } from "../ApiDemoPanel/ContentType/slice";
23
+ import { useTypedDispatch, useTypedSelector } from "../ApiItem/hooks";
21
24
  import styles from "./styles.module.css"; // A very rough duck type, but good enough to guard against mistakes while
22
25
 
23
26
  const {
@@ -39,6 +42,7 @@ function MimeTabsComponent(props) {
39
42
  values: valuesProp,
40
43
  groupId,
41
44
  className,
45
+ schemaType,
42
46
  } = props;
43
47
  const children = Children.map(props.children, (child) => {
44
48
  if (isValidElement(child) && isTabItem(child)) {
@@ -105,12 +109,22 @@ function MimeTabsComponent(props) {
105
109
  }
106
110
  }
107
111
 
112
+ const dispatch = useTypedDispatch();
113
+ const isRequestSchema = schemaType?.toLowerCase() === "request";
114
+
108
115
  const handleTabChange = (event) => {
116
+ event.preventDefault();
109
117
  const newTab = event.currentTarget;
110
118
  const newTabIndex = tabRefs.indexOf(newTab);
111
119
  const newTabValue = values[newTabIndex].value;
112
120
 
113
121
  if (newTabValue !== selectedValue) {
122
+ if (isRequestSchema) {
123
+ dispatch(setContentType(newTabValue));
124
+ } else {
125
+ dispatch(setAccept(newTabValue));
126
+ }
127
+
114
128
  blockElementScrollPositionUntilNextRender(newTab);
115
129
  setSelectedValue(newTabValue);
116
130
 
@@ -120,6 +134,20 @@ function MimeTabsComponent(props) {
120
134
  }
121
135
  };
122
136
 
137
+ const contentTypeVal = useTypedSelector((state) => state.contentType.value);
138
+ const acceptTypeVal = useTypedSelector((state) => state.accept.value);
139
+
140
+ useEffect(() => {
141
+ if (tabRefs.length > 1) {
142
+ if (isRequestSchema) {
143
+ setSelectedValue(contentTypeVal);
144
+ } else {
145
+ setSelectedValue(acceptTypeVal);
146
+ }
147
+ }
148
+ // eslint-disable-next-line react-hooks/exhaustive-deps
149
+ }, [contentTypeVal, acceptTypeVal]);
150
+
123
151
  const handleKeydown = (event) => {
124
152
  let focusElement = null;
125
153
 
@@ -197,7 +225,7 @@ function MimeTabsComponent(props) {
197
225
  ref={(tabControl) => tabRefs.push(tabControl)}
198
226
  onKeyDown={handleKeydown}
199
227
  onFocus={handleTabChange}
200
- onClick={handleTabChange}
228
+ onClick={(e) => handleTabChange(e)}
201
229
  {...attributes}
202
230
  className={clsx(
203
231
  "tabs__item",
@@ -5,7 +5,7 @@
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  * ========================================================================== */
7
7
  import React from "react";
8
- import { useTypedDispatch, useTypedSelector } from "../hooks";
8
+ import { useTypedDispatch, useTypedSelector } from "../../ApiItem/hooks";
9
9
  import FormItem from "./../FormItem";
10
10
  import FormSelect from "./../FormSelect";
11
11
  import { setAccept } from "./slice";
@@ -5,10 +5,10 @@
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  * ========================================================================== */
7
7
  import React from "react";
8
+ import { useTypedDispatch, useTypedSelector } from "../../ApiItem/hooks";
8
9
  import FormItem from "../FormItem";
9
10
  import FormSelect from "../FormSelect";
10
11
  import FormTextInput from "../FormTextInput";
11
- import { useTypedDispatch, useTypedSelector } from "../hooks";
12
12
  import { setAuthData, setSelectedAuth } from "./slice";
13
13
 
14
14
  function Authorization() {
@@ -6,12 +6,12 @@
6
6
  * ========================================================================== */
7
7
  import React from "react";
8
8
  import TabItem from "@theme/TabItem";
9
- import format from "xml-formatter"; // @ts-ignore
9
+ import format from "xml-formatter";
10
+ import { useTypedDispatch, useTypedSelector } from "../../ApiItem/hooks"; // @ts-ignore
10
11
 
11
12
  import SchemaTabs from "../../SchemaTabs";
12
13
  import ContentType from "../ContentType";
13
14
  import FormSelect from "../FormSelect";
14
- import { useTypedDispatch, useTypedSelector } from "../hooks";
15
15
  import LiveApp from "../LiveEditor";
16
16
  import FormFileUpload from "./../FormFileUpload";
17
17
  import FormItem from "./../FormItem";