docusaurus-theme-openapi-docs 1.0.4 → 1.1.0

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 (103) hide show
  1. package/lib/theme/ApiDemoPanel/Body/index.js +11 -9
  2. package/lib/theme/ApiDemoPanel/Body/json2xml.js +43 -0
  3. package/lib/theme/ApiDemoPanel/CodeTabs/index.js +193 -0
  4. package/lib/theme/ApiDemoPanel/CodeTabs/styles.module.css +11 -0
  5. package/lib/theme/ApiDemoPanel/Curl/index.js +41 -110
  6. package/lib/theme/ApiDemoPanel/FloatingButton/index.js +4 -2
  7. package/lib/theme/ApiDemoPanel/FloatingButton/styles.module.css +3 -2
  8. package/lib/theme/ApiDemoPanel/LiveEditor/index.js +74 -0
  9. package/lib/theme/ApiDemoPanel/LiveEditor/styles.module.css +35 -0
  10. package/lib/theme/ApiDemoPanel/ParamOptions/styles.module.css +0 -4
  11. package/lib/theme/ApiDemoPanel/Server/index.js +1 -1
  12. package/lib/theme/ApiDemoPanel/Server/styles.module.css +0 -4
  13. package/lib/theme/ApiItem/Content/index.js +65 -0
  14. package/lib/theme/ApiItem/Footer/index.js +78 -0
  15. package/lib/theme/ApiItem/Footer/styles.module.css +18 -0
  16. package/lib/theme/ApiItem/Layout/icons/bash-original.svg +1 -0
  17. package/lib/theme/ApiItem/Layout/icons/go-original-wordmark.svg +1 -0
  18. package/lib/theme/ApiItem/Layout/icons/javascript-original.svg +1 -0
  19. package/lib/theme/ApiItem/Layout/icons/linux-original.svg +1 -0
  20. package/lib/theme/ApiItem/Layout/icons/python-original.svg +1 -0
  21. package/lib/theme/ApiItem/Layout/index.js +93 -0
  22. package/lib/theme/ApiItem/{styles.module.css → Layout/styles.module.css} +114 -4
  23. package/lib/theme/ApiItem/Metadata/index.js +32 -0
  24. package/lib/theme/ApiItem/Paginator/index.js +33 -0
  25. package/lib/theme/ApiItem/TOC/Desktop/index.js +31 -0
  26. package/lib/theme/ApiItem/TOC/Mobile/index.js +35 -0
  27. package/lib/theme/ApiItem/TOC/Mobile/styles.module.css +19 -0
  28. package/lib/theme/ApiItem/index.js +37 -126
  29. package/lib/theme/ApiTabs/index.js +17 -6
  30. package/lib/theme/ApiTabs/styles.module.css +0 -1
  31. package/lib/theme/SchemaTabs/index.js +258 -0
  32. package/lib/theme/SchemaTabs/styles.module.css +110 -0
  33. package/lib-next/theme/ApiDemoPanel/Body/index.js +11 -15
  34. package/lib-next/theme/ApiDemoPanel/Body/json2xml.js +43 -0
  35. package/lib-next/theme/ApiDemoPanel/CodeTabs/index.js +215 -0
  36. package/lib-next/theme/ApiDemoPanel/CodeTabs/styles.module.css +11 -0
  37. package/lib-next/theme/ApiDemoPanel/Curl/index.js +46 -135
  38. package/lib-next/theme/ApiDemoPanel/FloatingButton/index.js +6 -2
  39. package/lib-next/theme/ApiDemoPanel/FloatingButton/styles.module.css +3 -2
  40. package/lib-next/theme/ApiDemoPanel/LiveEditor/index.js +60 -0
  41. package/lib-next/theme/ApiDemoPanel/LiveEditor/styles.module.css +35 -0
  42. package/lib-next/theme/ApiDemoPanel/ParamOptions/styles.module.css +0 -4
  43. package/lib-next/theme/ApiDemoPanel/Server/index.js +1 -0
  44. package/lib-next/theme/ApiDemoPanel/Server/styles.module.css +0 -4
  45. package/lib-next/theme/ApiItem/Content/index.js +55 -0
  46. package/lib-next/theme/ApiItem/Footer/index.js +88 -0
  47. package/lib-next/theme/ApiItem/Footer/styles.module.css +18 -0
  48. package/lib-next/theme/ApiItem/Layout/icons/bash-original.svg +1 -0
  49. package/lib-next/theme/ApiItem/Layout/icons/go-original-wordmark.svg +1 -0
  50. package/lib-next/theme/ApiItem/Layout/icons/javascript-original.svg +1 -0
  51. package/lib-next/theme/ApiItem/Layout/icons/linux-original.svg +1 -0
  52. package/lib-next/theme/ApiItem/Layout/icons/python-original.svg +1 -0
  53. package/lib-next/theme/ApiItem/Layout/index.js +69 -0
  54. package/{src/theme/ApiItem → lib-next/theme/ApiItem/Layout}/styles.module.css +114 -4
  55. package/lib-next/theme/ApiItem/Metadata/index.js +21 -0
  56. package/lib-next/theme/ApiItem/Paginator/index.js +19 -0
  57. package/lib-next/theme/ApiItem/TOC/Desktop/index.js +22 -0
  58. package/lib-next/theme/ApiItem/TOC/Mobile/index.js +24 -0
  59. package/lib-next/theme/ApiItem/TOC/Mobile/styles.module.css +19 -0
  60. package/lib-next/theme/ApiItem/index.js +31 -133
  61. package/lib-next/theme/ApiTabs/index.js +17 -6
  62. package/lib-next/theme/ApiTabs/styles.module.css +0 -1
  63. package/lib-next/theme/SchemaTabs/index.js +258 -0
  64. package/lib-next/theme/SchemaTabs/styles.module.css +110 -0
  65. package/package.json +7 -9
  66. package/src/theme/ApiDemoPanel/Body/index.tsx +9 -13
  67. package/src/theme/ApiDemoPanel/Body/json2xml.js +43 -0
  68. package/src/theme/ApiDemoPanel/CodeTabs/index.tsx +238 -0
  69. package/src/theme/ApiDemoPanel/CodeTabs/styles.module.css +11 -0
  70. package/src/theme/ApiDemoPanel/Curl/index.tsx +45 -124
  71. package/src/theme/ApiDemoPanel/FloatingButton/index.tsx +6 -2
  72. package/src/theme/ApiDemoPanel/FloatingButton/styles.module.css +3 -2
  73. package/src/theme/ApiDemoPanel/LiveEditor/index.tsx +71 -0
  74. package/src/theme/ApiDemoPanel/LiveEditor/styles.module.css +35 -0
  75. package/src/theme/ApiDemoPanel/ParamOptions/styles.module.css +0 -4
  76. package/src/theme/ApiDemoPanel/Server/index.tsx +1 -0
  77. package/src/theme/ApiDemoPanel/Server/styles.module.css +0 -4
  78. package/src/theme/ApiItem/Content/index.tsx +57 -0
  79. package/src/theme/ApiItem/Footer/index.tsx +101 -0
  80. package/src/theme/ApiItem/Footer/styles.module.css +18 -0
  81. package/src/theme/ApiItem/Layout/icons/bash-original.svg +1 -0
  82. package/src/theme/ApiItem/Layout/icons/go-original-wordmark.svg +1 -0
  83. package/src/theme/ApiItem/Layout/icons/javascript-original.svg +1 -0
  84. package/src/theme/ApiItem/Layout/icons/linux-original.svg +1 -0
  85. package/src/theme/ApiItem/Layout/icons/python-original.svg +1 -0
  86. package/src/theme/ApiItem/Layout/index.tsx +78 -0
  87. package/{lib-next/theme/ApiItem → src/theme/ApiItem/Layout}/styles.module.css +114 -4
  88. package/src/theme/ApiItem/Metadata/index.tsx +24 -0
  89. package/src/theme/ApiItem/Paginator/index.tsx +21 -0
  90. package/src/theme/ApiItem/TOC/Desktop/index.tsx +25 -0
  91. package/src/theme/ApiItem/TOC/Mobile/index.tsx +28 -0
  92. package/src/theme/ApiItem/TOC/Mobile/styles.module.css +19 -0
  93. package/src/theme/ApiItem/index.tsx +31 -130
  94. package/src/theme/ApiTabs/index.js +17 -6
  95. package/src/theme/ApiTabs/styles.module.css +0 -1
  96. package/src/theme/SchemaTabs/index.js +258 -0
  97. package/src/theme/SchemaTabs/styles.module.css +110 -0
  98. package/lib/theme/ApiDemoPanel/VSCode/index.js +0 -252
  99. package/lib/theme/ApiDemoPanel/VSCode/styles.module.css +0 -19
  100. package/lib-next/theme/ApiDemoPanel/VSCode/index.js +0 -265
  101. package/lib-next/theme/ApiDemoPanel/VSCode/styles.module.css +0 -19
  102. package/src/theme/ApiDemoPanel/VSCode/index.tsx +0 -205
  103. package/src/theme/ApiDemoPanel/VSCode/styles.module.css +0 -19
@@ -0,0 +1,57 @@
1
+ /* ============================================================================
2
+ * Copyright (c) Palo Alto Networks
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ * ========================================================================== */
7
+
8
+ import React from "react";
9
+
10
+ import { ThemeClassNames } from "@docusaurus/theme-common";
11
+ // @ts-ignore
12
+ import { useDoc } from "@docusaurus/theme-common/internal";
13
+ import type { Props } from "@theme/DocItem/Content";
14
+ import Heading from "@theme/Heading";
15
+ import MDXContent from "@theme/MDXContent";
16
+ import clsx from "clsx";
17
+
18
+ /**
19
+ Title can be declared inside md content or declared through
20
+ front matter and added manually. To make both cases consistent,
21
+ the added title is added under the same div.markdown block
22
+ See https://github.com/facebook/docusaurus/pull/4882#issuecomment-853021120
23
+
24
+ We render a "synthetic title" if:
25
+ - user doesn't ask to hide it with front matter
26
+ - the markdown content does not already contain a top-level h1 heading
27
+ */
28
+ function useSyntheticTitle(): string | null {
29
+ const { metadata, frontMatter, contentTitle } = useDoc();
30
+ const shouldRender =
31
+ !frontMatter.hide_title && typeof contentTitle === "undefined";
32
+ if (!shouldRender) {
33
+ return null;
34
+ }
35
+ return metadata.title;
36
+ }
37
+
38
+ export default function DocItemContent({ children }: Props): JSX.Element {
39
+ const syntheticTitle = useSyntheticTitle();
40
+
41
+ return (
42
+ <div
43
+ className={clsx(
44
+ ThemeClassNames.docs.docMarkdown,
45
+ "theme-api-markdown",
46
+ "markdown"
47
+ )}
48
+ >
49
+ {syntheticTitle && (
50
+ <header>
51
+ <Heading as="h1">{syntheticTitle}</Heading>
52
+ </header>
53
+ )}
54
+ <MDXContent>{children}</MDXContent>
55
+ </div>
56
+ );
57
+ }
@@ -0,0 +1,101 @@
1
+ /* ============================================================================
2
+ * Copyright (c) Palo Alto Networks
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ * ========================================================================== */
7
+
8
+ import React from "react";
9
+
10
+ import { ThemeClassNames } from "@docusaurus/theme-common";
11
+ import {
12
+ useDoc,
13
+ type DocContextValue,
14
+ // @ts-ignore
15
+ } from "@docusaurus/theme-common/internal";
16
+ import EditThisPage from "@theme/EditThisPage";
17
+ import LastUpdated from "@theme/LastUpdated";
18
+ import TagsListInline, {
19
+ type Props as TagsListInlineProps,
20
+ } from "@theme/TagsListInline";
21
+ import clsx from "clsx";
22
+
23
+ import styles from "./styles.module.css";
24
+
25
+ function TagsRow(props: TagsListInlineProps) {
26
+ return (
27
+ <div
28
+ className={clsx(
29
+ ThemeClassNames.docs.docFooterTagsRow,
30
+ "row margin-bottom--sm"
31
+ )}
32
+ >
33
+ <div className="col">
34
+ <TagsListInline {...props} />
35
+ </div>
36
+ </div>
37
+ );
38
+ }
39
+
40
+ type EditMetaRowProps = Pick<
41
+ DocContextValue["metadata"],
42
+ "editUrl" | "lastUpdatedAt" | "lastUpdatedBy" | "formattedLastUpdatedAt"
43
+ >;
44
+ function EditMetaRow({
45
+ editUrl,
46
+ lastUpdatedAt,
47
+ lastUpdatedBy,
48
+ formattedLastUpdatedAt,
49
+ }: EditMetaRowProps) {
50
+ return (
51
+ <div className={clsx(ThemeClassNames.docs.docFooterEditMetaRow, "row")}>
52
+ <div className="col">{editUrl && <EditThisPage editUrl={editUrl} />}</div>
53
+
54
+ <div className={clsx("col", styles.lastUpdated)}>
55
+ {(lastUpdatedAt || lastUpdatedBy) && (
56
+ <LastUpdated
57
+ lastUpdatedAt={lastUpdatedAt}
58
+ formattedLastUpdatedAt={formattedLastUpdatedAt}
59
+ lastUpdatedBy={lastUpdatedBy}
60
+ />
61
+ )}
62
+ </div>
63
+ </div>
64
+ );
65
+ }
66
+
67
+ export default function DocItemFooter(): JSX.Element | null {
68
+ const { metadata } = useDoc();
69
+ const {
70
+ editUrl,
71
+ lastUpdatedAt,
72
+ formattedLastUpdatedAt,
73
+ lastUpdatedBy,
74
+ tags,
75
+ } = metadata;
76
+
77
+ const canDisplayTagsRow = tags.length > 0;
78
+ const canDisplayEditMetaRow = !!(editUrl || lastUpdatedAt || lastUpdatedBy);
79
+
80
+ const canDisplayFooter = canDisplayTagsRow || canDisplayEditMetaRow;
81
+
82
+ if (!canDisplayFooter) {
83
+ return null;
84
+ }
85
+
86
+ return (
87
+ <footer
88
+ className={clsx(ThemeClassNames.docs.docFooter, "docusaurus-mt-lg")}
89
+ >
90
+ {canDisplayTagsRow && <TagsRow tags={tags} />}
91
+ {canDisplayEditMetaRow && (
92
+ <EditMetaRow
93
+ editUrl={editUrl}
94
+ lastUpdatedAt={lastUpdatedAt}
95
+ lastUpdatedBy={lastUpdatedBy}
96
+ formattedLastUpdatedAt={formattedLastUpdatedAt}
97
+ />
98
+ )}
99
+ </footer>
100
+ );
101
+ }
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Copyright (c) Facebook, Inc. and its affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+
8
+ .lastUpdated {
9
+ margin-top: 0.2rem;
10
+ font-style: italic;
11
+ font-size: smaller;
12
+ }
13
+
14
+ @media (min-width: 997px) {
15
+ .lastUpdated {
16
+ text-align: right;
17
+ }
18
+ }
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128"><path fill="none" d="M4.24 4.24h119.53v119.53H4.24z"/><path fill="#293138" d="M109.01 28.64L71.28 6.24c-2.25-1.33-4.77-2-7.28-2s-5.03.67-7.28 2.01l-37.74 22.4c-4.5 2.67-7.28 7.61-7.28 12.96v44.8c0 5.35 2.77 10.29 7.28 12.96l37.73 22.4c2.25 1.34 4.76 2 7.28 2 2.51 0 5.03-.67 7.28-2l37.74-22.4c4.5-2.67 7.28-7.62 7.28-12.96V41.6c0-5.34-2.77-10.29-7.28-12.96zM79.79 98.59l.06 3.22c0 .39-.25.83-.55.99l-1.91 1.1c-.3.15-.56-.03-.56-.42l-.03-3.17c-1.63.68-3.29.84-4.34.42-.2-.08-.29-.37-.21-.71l.69-2.91c.06-.23.18-.46.34-.6.06-.06.12-.1.18-.13.11-.06.22-.07.31-.03 1.14.38 2.59.2 3.99-.5 1.78-.9 2.97-2.72 2.95-4.52-.02-1.64-.9-2.31-3.05-2.33-2.74.01-5.3-.53-5.34-4.57-.03-3.32 1.69-6.78 4.43-8.96l-.03-3.25c0-.4.24-.84.55-1l1.85-1.18c.3-.15.56.04.56.43l.03 3.25c1.36-.54 2.54-.69 3.61-.44.23.06.34.38.24.75l-.72 2.88c-.06.22-.18.44-.33.58a.77.77 0 01-.19.14c-.1.05-.19.06-.28.05-.49-.11-1.65-.36-3.48.56-1.92.97-2.59 2.64-2.58 3.88.02 1.48.77 1.93 3.39 1.97 3.49.06 4.99 1.58 5.03 5.09.05 3.44-1.79 7.15-4.61 9.41zm26.34-60.5l-35.7 22.05c-4.45 2.6-7.73 5.52-7.74 10.89v43.99c0 3.21 1.3 5.29 3.29 5.9-.65.11-1.32.19-1.98.19-2.09 0-4.15-.57-5.96-1.64l-37.73-22.4c-3.69-2.19-5.98-6.28-5.98-10.67V41.6c0-4.39 2.29-8.48 5.98-10.67l37.74-22.4c1.81-1.07 3.87-1.64 5.96-1.64s4.15.57 5.96 1.64l37.74 22.4c3.11 1.85 5.21 5.04 5.8 8.63-1.27-2.67-4.09-3.39-7.38-1.47z"/><path fill="#4FA847" d="M99.12 90.73l-9.4 5.62c-.25.15-.43.31-.43.61v2.46c0 .3.2.43.45.28l9.54-5.8c.25-.15.29-.42.29-.72v-2.17c0-.3-.2-.42-.45-.28z"/></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128"><g fill="#00acd7" fill-rule="evenodd"><path d="M11.156 54.829c-.243 0-.303-.122-.182-.303l1.273-1.637c.12-.182.424-.303.666-.303H34.55c.243 0 .303.182.182.364l-1.03 1.576c-.121.181-.424.363-.606.363zM2.004 60.404c-.242 0-.303-.12-.182-.303l1.273-1.636c.121-.182.424-.303.667-.303h27.636c.242 0 .364.182.303.364l-.485 1.454c-.06.243-.303.364-.545.364zM16.67 65.98c-.242 0-.302-.182-.181-.364l.848-1.515c.122-.182.364-.363.607-.363h12.12c.243 0 .364.181.364.424l-.12 1.454c0 .243-.243.425-.425.425zM79.58 53.738c-3.819.97-6.425 1.697-10.182 2.666-.91.243-.97.303-1.758-.606-.909-1.03-1.576-1.697-2.848-2.303-3.819-1.878-7.516-1.333-10.97.91-4.121 2.666-6.242 6.605-6.182 11.514.06 4.849 3.394 8.849 8.182 9.516 4.121.545 7.576-.91 10.303-4 .545-.667 1.03-1.394 1.636-2.243H56.064c-1.272 0-1.575-.788-1.151-1.818.788-1.879 2.242-5.03 3.09-6.606.183-.364.607-.97 1.516-.97h22.06c-.12 1.637-.12 3.273-.363 4.91-.667 4.363-2.303 8.363-4.97 11.878-4.364 5.758-10.06 9.333-17.273 10.303-5.939.788-11.454-.364-16.302-4-4.485-3.394-7.03-7.879-7.697-13.454-.788-6.606 1.151-12.546 5.151-17.758 4.303-5.636 10-9.212 16.97-10.485 5.697-1.03 11.151-.363 16.06 2.97 3.212 2.121 5.515 5.03 7.03 8.545.364.546.122.849-.606 1.03z"/><path d="M99.64 87.253c-5.515-.122-10.546-1.697-14.788-5.334-3.576-3.09-5.818-7.03-6.545-11.697-1.091-6.848.787-12.909 4.909-18.302 4.424-5.819 9.757-8.849 16.97-10.122 6.181-1.09 12-.484 17.272 3.091 4.788 3.273 7.757 7.697 8.545 13.515 1.03 8.182-1.333 14.849-6.97 20.546-4 4.06-8.909 6.606-14.545 7.757-1.636.303-3.273.364-4.848.546zm14.424-24.485c-.06-.788-.06-1.394-.182-2-1.09-6-6.606-9.394-12.363-8.06-5.637 1.272-9.273 4.848-10.606 10.545-1.091 4.727 1.212 9.515 5.575 11.454 3.334 1.455 6.667 1.273 9.879-.363 4.788-2.485 7.394-6.364 7.697-11.576z" fill-rule="nonzero"/></g></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128"><path fill="#F0DB4F" d="M1.408 1.408h125.184v125.185H1.408z"/><path fill="#323330" d="M116.347 96.736c-.917-5.711-4.641-10.508-15.672-14.981-3.832-1.761-8.104-3.022-9.377-5.926-.452-1.69-.512-2.642-.226-3.665.821-3.32 4.784-4.355 7.925-3.403 2.023.678 3.938 2.237 5.093 4.724 5.402-3.498 5.391-3.475 9.163-5.879-1.381-2.141-2.118-3.129-3.022-4.045-3.249-3.629-7.676-5.498-14.756-5.355l-3.688.477c-3.534.893-6.902 2.748-8.877 5.235-5.926 6.724-4.236 18.492 2.975 23.335 7.104 5.332 17.54 6.545 18.873 11.531 1.297 6.104-4.486 8.08-10.234 7.378-4.236-.881-6.592-3.034-9.139-6.949-4.688 2.713-4.688 2.713-9.508 5.485 1.143 2.499 2.344 3.63 4.26 5.795 9.068 9.198 31.76 8.746 35.83-5.176.165-.478 1.261-3.666.38-8.581zM69.462 58.943H57.753l-.048 30.272c0 6.438.333 12.34-.714 14.149-1.713 3.558-6.152 3.117-8.175 2.427-2.059-1.012-3.106-2.451-4.319-4.485-.333-.584-.583-1.036-.667-1.071l-9.52 5.83c1.583 3.249 3.915 6.069 6.902 7.901 4.462 2.678 10.459 3.499 16.731 2.059 4.082-1.189 7.604-3.652 9.448-7.401 2.666-4.915 2.094-10.864 2.07-17.444.06-10.735.001-21.468.001-32.237z"/></svg>