@camunda8/docusaurus-theme-openapi-docs 4.5.1

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 (312) hide show
  1. package/babel.config.js +35 -0
  2. package/lib/index.d.ts +2 -0
  3. package/lib/index.js +81 -0
  4. package/lib/markdown/createDescription.d.ts +1 -0
  5. package/lib/markdown/createDescription.js +15 -0
  6. package/lib/markdown/schema.d.ts +3 -0
  7. package/lib/markdown/schema.js +154 -0
  8. package/lib/markdown/utils.d.ts +10 -0
  9. package/lib/markdown/utils.js +49 -0
  10. package/lib/markdown/utils.test.d.ts +1 -0
  11. package/lib/markdown/utils.test.js +43 -0
  12. package/lib/theme/ApiExplorer/Accept/index.d.ts +3 -0
  13. package/lib/theme/ApiExplorer/Accept/index.js +38 -0
  14. package/lib/theme/ApiExplorer/Accept/slice.d.ts +11 -0
  15. package/lib/theme/ApiExplorer/Accept/slice.js +22 -0
  16. package/lib/theme/ApiExplorer/ApiCodeBlock/Container/_Container.scss +7 -0
  17. package/lib/theme/ApiExplorer/ApiCodeBlock/Container/index.d.ts +4 -0
  18. package/lib/theme/ApiExplorer/ApiCodeBlock/Container/index.js +35 -0
  19. package/lib/theme/ApiExplorer/ApiCodeBlock/Content/Element.d.ts +3 -0
  20. package/lib/theme/ApiExplorer/ApiCodeBlock/Content/Element.js +41 -0
  21. package/lib/theme/ApiExplorer/ApiCodeBlock/Content/String.d.ts +3 -0
  22. package/lib/theme/ApiExplorer/ApiCodeBlock/Content/String.js +153 -0
  23. package/lib/theme/ApiExplorer/ApiCodeBlock/Content/_Content.scss +91 -0
  24. package/lib/theme/ApiExplorer/ApiCodeBlock/CopyButton/_CopyButton.scss +44 -0
  25. package/lib/theme/ApiExplorer/ApiCodeBlock/CopyButton/index.d.ts +7 -0
  26. package/lib/theme/ApiExplorer/ApiCodeBlock/CopyButton/index.js +147 -0
  27. package/lib/theme/ApiExplorer/ApiCodeBlock/ExitButton/_ExitButton.scss +16 -0
  28. package/lib/theme/ApiExplorer/ApiCodeBlock/ExitButton/index.d.ts +6 -0
  29. package/lib/theme/ApiExplorer/ApiCodeBlock/ExitButton/index.js +58 -0
  30. package/lib/theme/ApiExplorer/ApiCodeBlock/ExpandButton/_ExpandButton.scss +62 -0
  31. package/lib/theme/ApiExplorer/ApiCodeBlock/ExpandButton/index.d.ts +14 -0
  32. package/lib/theme/ApiExplorer/ApiCodeBlock/ExpandButton/index.js +248 -0
  33. package/lib/theme/ApiExplorer/ApiCodeBlock/Line/_Line.scss +34 -0
  34. package/lib/theme/ApiExplorer/ApiCodeBlock/Line/index.d.ts +3 -0
  35. package/lib/theme/ApiExplorer/ApiCodeBlock/Line/index.js +59 -0
  36. package/lib/theme/ApiExplorer/ApiCodeBlock/WordWrapButton/_WordWrapButton.scss +10 -0
  37. package/lib/theme/ApiExplorer/ApiCodeBlock/WordWrapButton/index.d.ts +7 -0
  38. package/lib/theme/ApiExplorer/ApiCodeBlock/WordWrapButton/index.js +51 -0
  39. package/lib/theme/ApiExplorer/ApiCodeBlock/index.d.ts +3 -0
  40. package/lib/theme/ApiExplorer/ApiCodeBlock/index.js +110 -0
  41. package/lib/theme/ApiExplorer/Authorization/auth-types.d.ts +3 -0
  42. package/lib/theme/ApiExplorer/Authorization/auth-types.js +28 -0
  43. package/lib/theme/ApiExplorer/Authorization/index.d.ts +3 -0
  44. package/lib/theme/ApiExplorer/Authorization/index.js +201 -0
  45. package/lib/theme/ApiExplorer/Authorization/slice.d.ts +40 -0
  46. package/lib/theme/ApiExplorer/Authorization/slice.js +102 -0
  47. package/lib/theme/ApiExplorer/Body/index.d.ts +10 -0
  48. package/lib/theme/ApiExplorer/Body/index.js +394 -0
  49. package/lib/theme/ApiExplorer/Body/json2xml.js +43 -0
  50. package/lib/theme/ApiExplorer/Body/slice.d.ts +82 -0
  51. package/lib/theme/ApiExplorer/Body/slice.js +97 -0
  52. package/lib/theme/ApiExplorer/CodeSnippets/code-snippets-types.d.ts +21 -0
  53. package/lib/theme/ApiExplorer/CodeSnippets/code-snippets-types.js +8 -0
  54. package/lib/theme/ApiExplorer/CodeSnippets/index.d.ts +11 -0
  55. package/lib/theme/ApiExplorer/CodeSnippets/index.js +435 -0
  56. package/lib/theme/ApiExplorer/CodeSnippets/languages.d.ts +5 -0
  57. package/lib/theme/ApiExplorer/CodeSnippets/languages.js +133 -0
  58. package/lib/theme/ApiExplorer/CodeSnippets/languages.json +1290 -0
  59. package/lib/theme/ApiExplorer/CodeTabs/_CodeTabs.scss +505 -0
  60. package/lib/theme/ApiExplorer/CodeTabs/index.d.ts +15 -0
  61. package/lib/theme/ApiExplorer/CodeTabs/index.js +283 -0
  62. package/lib/theme/ApiExplorer/ContentType/index.d.ts +3 -0
  63. package/lib/theme/ApiExplorer/ContentType/index.js +40 -0
  64. package/lib/theme/ApiExplorer/ContentType/slice.d.ts +11 -0
  65. package/lib/theme/ApiExplorer/ContentType/slice.js +22 -0
  66. package/lib/theme/ApiExplorer/Export/index.d.ts +3 -0
  67. package/lib/theme/ApiExplorer/Export/index.js +57 -0
  68. package/lib/theme/ApiExplorer/FloatingButton/_FloatingButton.scss +27 -0
  69. package/lib/theme/ApiExplorer/FloatingButton/index.d.ts +8 -0
  70. package/lib/theme/ApiExplorer/FloatingButton/index.js +28 -0
  71. package/lib/theme/ApiExplorer/FormFileUpload/_FormFileUpload.scss +74 -0
  72. package/lib/theme/ApiExplorer/FormFileUpload/index.d.ts +7 -0
  73. package/lib/theme/ApiExplorer/FormFileUpload/index.js +178 -0
  74. package/lib/theme/ApiExplorer/FormItem/_FormItem.scss +21 -0
  75. package/lib/theme/ApiExplorer/FormItem/index.d.ts +10 -0
  76. package/lib/theme/ApiExplorer/FormItem/index.js +49 -0
  77. package/lib/theme/ApiExplorer/FormMultiSelect/_FormMultiSelect.scss +30 -0
  78. package/lib/theme/ApiExplorer/FormMultiSelect/index.d.ts +9 -0
  79. package/lib/theme/ApiExplorer/FormMultiSelect/index.js +51 -0
  80. package/lib/theme/ApiExplorer/FormSelect/_FormSelect.scss +43 -0
  81. package/lib/theme/ApiExplorer/FormSelect/index.d.ts +8 -0
  82. package/lib/theme/ApiExplorer/FormSelect/index.js +35 -0
  83. package/lib/theme/ApiExplorer/FormTextInput/_FormTextInput.scss +34 -0
  84. package/lib/theme/ApiExplorer/FormTextInput/index.d.ts +11 -0
  85. package/lib/theme/ApiExplorer/FormTextInput/index.js +80 -0
  86. package/lib/theme/ApiExplorer/LiveEditor/_LiveEditor.scss +15 -0
  87. package/lib/theme/ApiExplorer/LiveEditor/index.d.ts +6 -0
  88. package/lib/theme/ApiExplorer/LiveEditor/index.js +176 -0
  89. package/lib/theme/ApiExplorer/MethodEndpoint/_MethodEndpoint.scss +22 -0
  90. package/lib/theme/ApiExplorer/MethodEndpoint/index.d.ts +8 -0
  91. package/lib/theme/ApiExplorer/MethodEndpoint/index.js +86 -0
  92. package/lib/theme/ApiExplorer/ParamOptions/ParamFormItems/ParamArrayFormItem.d.ts +6 -0
  93. package/lib/theme/ApiExplorer/ParamOptions/ParamFormItems/ParamArrayFormItem.js +230 -0
  94. package/lib/theme/ApiExplorer/ParamOptions/ParamFormItems/ParamBooleanFormItem.d.ts +6 -0
  95. package/lib/theme/ApiExplorer/ParamOptions/ParamFormItems/ParamBooleanFormItem.js +71 -0
  96. package/lib/theme/ApiExplorer/ParamOptions/ParamFormItems/ParamMultiSelectFormItem.d.ts +6 -0
  97. package/lib/theme/ApiExplorer/ParamOptions/ParamFormItems/ParamMultiSelectFormItem.js +97 -0
  98. package/lib/theme/ApiExplorer/ParamOptions/ParamFormItems/ParamSelectFormItem.d.ts +6 -0
  99. package/lib/theme/ApiExplorer/ParamOptions/ParamFormItems/ParamSelectFormItem.js +72 -0
  100. package/lib/theme/ApiExplorer/ParamOptions/ParamFormItems/ParamTextFormItem.d.ts +6 -0
  101. package/lib/theme/ApiExplorer/ParamOptions/ParamFormItems/ParamTextFormItem.js +38 -0
  102. package/lib/theme/ApiExplorer/ParamOptions/_ParamOptions.scss +123 -0
  103. package/lib/theme/ApiExplorer/ParamOptions/index.d.ts +7 -0
  104. package/lib/theme/ApiExplorer/ParamOptions/index.js +233 -0
  105. package/lib/theme/ApiExplorer/ParamOptions/slice.d.ts +17 -0
  106. package/lib/theme/ApiExplorer/ParamOptions/slice.js +25 -0
  107. package/lib/theme/ApiExplorer/Request/_Request.scss +129 -0
  108. package/lib/theme/ApiExplorer/Request/index.d.ts +6 -0
  109. package/lib/theme/ApiExplorer/Request/index.js +443 -0
  110. package/lib/theme/ApiExplorer/Request/makeRequest.d.ts +4 -0
  111. package/lib/theme/ApiExplorer/Request/makeRequest.js +223 -0
  112. package/lib/theme/ApiExplorer/Response/_Response.scss +121 -0
  113. package/lib/theme/ApiExplorer/Response/index.d.ts +6 -0
  114. package/lib/theme/ApiExplorer/Response/index.js +207 -0
  115. package/lib/theme/ApiExplorer/Response/slice.d.ts +17 -0
  116. package/lib/theme/ApiExplorer/Response/slice.js +51 -0
  117. package/lib/theme/ApiExplorer/SecuritySchemes/index.d.ts +3 -0
  118. package/lib/theme/ApiExplorer/SecuritySchemes/index.js +519 -0
  119. package/lib/theme/ApiExplorer/Server/_Server.scss +26 -0
  120. package/lib/theme/ApiExplorer/Server/index.d.ts +3 -0
  121. package/lib/theme/ApiExplorer/Server/index.js +213 -0
  122. package/lib/theme/ApiExplorer/Server/slice.d.ts +13 -0
  123. package/lib/theme/ApiExplorer/Server/slice.js +33 -0
  124. package/lib/theme/ApiExplorer/buildPostmanRequest.d.ts +20 -0
  125. package/lib/theme/ApiExplorer/buildPostmanRequest.js +511 -0
  126. package/lib/theme/ApiExplorer/index.d.ts +7 -0
  127. package/lib/theme/ApiExplorer/index.js +107 -0
  128. package/lib/theme/ApiExplorer/persistanceMiddleware.d.ts +19 -0
  129. package/lib/theme/ApiExplorer/persistanceMiddleware.js +54 -0
  130. package/lib/theme/ApiExplorer/storage-utils.d.ts +4 -0
  131. package/lib/theme/ApiExplorer/storage-utils.js +41 -0
  132. package/lib/theme/ApiItem/Layout/index.d.ts +3 -0
  133. package/lib/theme/ApiItem/Layout/index.js +121 -0
  134. package/lib/theme/ApiItem/Layout/styles.module.css +17 -0
  135. package/lib/theme/ApiItem/hooks.d.ts +12 -0
  136. package/lib/theme/ApiItem/hooks.js +13 -0
  137. package/lib/theme/ApiItem/index.d.ts +2 -0
  138. package/lib/theme/ApiItem/index.js +238 -0
  139. package/lib/theme/ApiItem/store.d.ts +58 -0
  140. package/lib/theme/ApiItem/store.js +53 -0
  141. package/lib/theme/ApiLogo/index.d.ts +2 -0
  142. package/lib/theme/ApiLogo/index.js +51 -0
  143. package/lib/theme/ApiTabs/_ApiTabs.scss +142 -0
  144. package/lib/theme/ApiTabs/index.d.ts +7 -0
  145. package/lib/theme/ApiTabs/index.js +275 -0
  146. package/lib/theme/ArrayBrackets/index.d.ts +3 -0
  147. package/lib/theme/ArrayBrackets/index.js +50 -0
  148. package/lib/theme/CodeSamples/_CodeSamples.scss +3 -0
  149. package/lib/theme/CodeSamples/index.d.ts +8 -0
  150. package/lib/theme/CodeSamples/index.js +27 -0
  151. package/lib/theme/DiscriminatorTabs/_DiscriminatorTabs.scss +98 -0
  152. package/lib/theme/DiscriminatorTabs/index.d.ts +3 -0
  153. package/lib/theme/DiscriminatorTabs/index.js +258 -0
  154. package/lib/theme/Markdown/Details/_Details.scss +122 -0
  155. package/lib/theme/Markdown/index.js +179 -0
  156. package/lib/theme/MimeTabs/_MimeTabs.scss +70 -0
  157. package/lib/theme/MimeTabs/index.d.ts +6 -0
  158. package/lib/theme/MimeTabs/index.js +286 -0
  159. package/lib/theme/OperationTabs/_OperationTabs.scss +72 -0
  160. package/lib/theme/OperationTabs/index.d.ts +3 -0
  161. package/lib/theme/OperationTabs/index.js +248 -0
  162. package/lib/theme/ParamsDetails/index.d.ts +6 -0
  163. package/lib/theme/ParamsDetails/index.js +93 -0
  164. package/lib/theme/ParamsItem/_ParamsItem.scss +54 -0
  165. package/lib/theme/ParamsItem/index.d.ts +22 -0
  166. package/lib/theme/ParamsItem/index.js +281 -0
  167. package/lib/theme/RequestSchema/index.d.ts +15 -0
  168. package/lib/theme/RequestSchema/index.js +208 -0
  169. package/lib/theme/ResponseExamples/index.d.ts +18 -0
  170. package/lib/theme/ResponseExamples/index.js +213 -0
  171. package/lib/theme/ResponseHeaders/index.d.ts +13 -0
  172. package/lib/theme/ResponseHeaders/index.js +39 -0
  173. package/lib/theme/ResponseSchema/index.d.ts +15 -0
  174. package/lib/theme/ResponseSchema/index.js +165 -0
  175. package/lib/theme/Schema/index.d.ts +8 -0
  176. package/lib/theme/Schema/index.js +853 -0
  177. package/lib/theme/SchemaItem/_SchemaItem.scss +89 -0
  178. package/lib/theme/SchemaItem/index.d.ts +12 -0
  179. package/lib/theme/SchemaItem/index.js +314 -0
  180. package/lib/theme/SchemaTabs/_SchemaTabs.scss +61 -0
  181. package/lib/theme/SchemaTabs/index.d.ts +3 -0
  182. package/lib/theme/SchemaTabs/index.js +255 -0
  183. package/lib/theme/SkeletonLoader/index.d.ts +6 -0
  184. package/lib/theme/SkeletonLoader/index.js +20 -0
  185. package/lib/theme/StatusCodes/index.d.ts +9 -0
  186. package/lib/theme/StatusCodes/index.js +90 -0
  187. package/lib/theme/styles.scss +215 -0
  188. package/lib/theme/translationIds.d.ts +83 -0
  189. package/lib/theme/translationIds.js +106 -0
  190. package/lib/types.d.ts +46 -0
  191. package/lib/types.js +8 -0
  192. package/package.json +85 -0
  193. package/src/index.ts +85 -0
  194. package/src/markdown/createDescription.ts +13 -0
  195. package/src/markdown/schema.ts +186 -0
  196. package/src/markdown/utils.test.ts +49 -0
  197. package/src/markdown/utils.ts +59 -0
  198. package/src/plugin-content-docs.d.ts +20 -0
  199. package/src/postman-code-generators.d.ts +9 -0
  200. package/src/react-magic-dropzone.d.ts +9 -0
  201. package/src/theme/ApiExplorer/Accept/index.tsx +36 -0
  202. package/src/theme/ApiExplorer/Accept/slice.ts +29 -0
  203. package/src/theme/ApiExplorer/ApiCodeBlock/Container/_Container.scss +7 -0
  204. package/src/theme/ApiExplorer/ApiCodeBlock/Container/index.tsx +32 -0
  205. package/src/theme/ApiExplorer/ApiCodeBlock/Content/Element.tsx +34 -0
  206. package/src/theme/ApiExplorer/ApiCodeBlock/Content/String.tsx +134 -0
  207. package/src/theme/ApiExplorer/ApiCodeBlock/Content/_Content.scss +91 -0
  208. package/src/theme/ApiExplorer/ApiCodeBlock/CopyButton/_CopyButton.scss +44 -0
  209. package/src/theme/ApiExplorer/ApiCodeBlock/CopyButton/index.tsx +83 -0
  210. package/src/theme/ApiExplorer/ApiCodeBlock/ExitButton/_ExitButton.scss +16 -0
  211. package/src/theme/ApiExplorer/ApiCodeBlock/ExitButton/index.tsx +55 -0
  212. package/src/theme/ApiExplorer/ApiCodeBlock/ExpandButton/_ExpandButton.scss +62 -0
  213. package/src/theme/ApiExplorer/ApiCodeBlock/ExpandButton/index.tsx +166 -0
  214. package/src/theme/ApiExplorer/ApiCodeBlock/Line/_Line.scss +34 -0
  215. package/src/theme/ApiExplorer/ApiCodeBlock/Line/index.tsx +48 -0
  216. package/src/theme/ApiExplorer/ApiCodeBlock/WordWrapButton/_WordWrapButton.scss +10 -0
  217. package/src/theme/ApiExplorer/ApiCodeBlock/WordWrapButton/index.tsx +54 -0
  218. package/src/theme/ApiExplorer/ApiCodeBlock/index.tsx +45 -0
  219. package/src/theme/ApiExplorer/Authorization/auth-types.ts +30 -0
  220. package/src/theme/ApiExplorer/Authorization/index.tsx +199 -0
  221. package/src/theme/ApiExplorer/Authorization/slice.ts +146 -0
  222. package/src/theme/ApiExplorer/Body/index.tsx +388 -0
  223. package/src/theme/ApiExplorer/Body/json2xml.d.ts +8 -0
  224. package/src/theme/ApiExplorer/Body/json2xml.js +43 -0
  225. package/src/theme/ApiExplorer/Body/slice.ts +133 -0
  226. package/src/theme/ApiExplorer/CodeSnippets/code-snippets-types.ts +57 -0
  227. package/src/theme/ApiExplorer/CodeSnippets/index.tsx +383 -0
  228. package/src/theme/ApiExplorer/CodeSnippets/languages.json +1290 -0
  229. package/src/theme/ApiExplorer/CodeSnippets/languages.ts +139 -0
  230. package/src/theme/ApiExplorer/CodeTabs/_CodeTabs.scss +505 -0
  231. package/src/theme/ApiExplorer/CodeTabs/index.tsx +261 -0
  232. package/src/theme/ApiExplorer/ContentType/index.tsx +38 -0
  233. package/src/theme/ApiExplorer/ContentType/slice.ts +29 -0
  234. package/src/theme/ApiExplorer/Export/index.tsx +47 -0
  235. package/src/theme/ApiExplorer/FloatingButton/_FloatingButton.scss +27 -0
  236. package/src/theme/ApiExplorer/FloatingButton/index.tsx +29 -0
  237. package/src/theme/ApiExplorer/FormFileUpload/_FormFileUpload.scss +74 -0
  238. package/src/theme/ApiExplorer/FormFileUpload/index.tsx +124 -0
  239. package/src/theme/ApiExplorer/FormItem/_FormItem.scss +21 -0
  240. package/src/theme/ApiExplorer/FormItem/index.tsx +40 -0
  241. package/src/theme/ApiExplorer/FormMultiSelect/_FormMultiSelect.scss +30 -0
  242. package/src/theme/ApiExplorer/FormMultiSelect/index.tsx +57 -0
  243. package/src/theme/ApiExplorer/FormSelect/_FormSelect.scss +43 -0
  244. package/src/theme/ApiExplorer/FormSelect/index.tsx +38 -0
  245. package/src/theme/ApiExplorer/FormTextInput/_FormTextInput.scss +34 -0
  246. package/src/theme/ApiExplorer/FormTextInput/index.tsx +89 -0
  247. package/src/theme/ApiExplorer/LiveEditor/_LiveEditor.scss +15 -0
  248. package/src/theme/ApiExplorer/LiveEditor/index.tsx +122 -0
  249. package/src/theme/ApiExplorer/MethodEndpoint/_MethodEndpoint.scss +22 -0
  250. package/src/theme/ApiExplorer/MethodEndpoint/index.tsx +91 -0
  251. package/src/theme/ApiExplorer/ParamOptions/ParamFormItems/ParamArrayFormItem.tsx +185 -0
  252. package/src/theme/ApiExplorer/ParamOptions/ParamFormItems/ParamBooleanFormItem.tsx +72 -0
  253. package/src/theme/ApiExplorer/ParamOptions/ParamFormItems/ParamMultiSelectFormItem.tsx +94 -0
  254. package/src/theme/ApiExplorer/ParamOptions/ParamFormItems/ParamSelectFormItem.tsx +74 -0
  255. package/src/theme/ApiExplorer/ParamOptions/ParamFormItems/ParamTextFormItem.tsx +38 -0
  256. package/src/theme/ApiExplorer/ParamOptions/_ParamOptions.scss +123 -0
  257. package/src/theme/ApiExplorer/ParamOptions/index.tsx +154 -0
  258. package/src/theme/ApiExplorer/ParamOptions/slice.ts +37 -0
  259. package/src/theme/ApiExplorer/Request/_Request.scss +129 -0
  260. package/src/theme/ApiExplorer/Request/index.tsx +352 -0
  261. package/src/theme/ApiExplorer/Request/makeRequest.ts +255 -0
  262. package/src/theme/ApiExplorer/Response/_Response.scss +121 -0
  263. package/src/theme/ApiExplorer/Response/index.tsx +173 -0
  264. package/src/theme/ApiExplorer/Response/slice.ts +52 -0
  265. package/src/theme/ApiExplorer/SecuritySchemes/index.tsx +375 -0
  266. package/src/theme/ApiExplorer/Server/_Server.scss +26 -0
  267. package/src/theme/ApiExplorer/Server/index.tsx +138 -0
  268. package/src/theme/ApiExplorer/Server/slice.ts +39 -0
  269. package/src/theme/ApiExplorer/buildPostmanRequest.ts +524 -0
  270. package/src/theme/ApiExplorer/index.tsx +52 -0
  271. package/src/theme/ApiExplorer/persistanceMiddleware.ts +73 -0
  272. package/src/theme/ApiExplorer/storage-utils.ts +39 -0
  273. package/src/theme/ApiItem/Layout/index.tsx +85 -0
  274. package/src/theme/ApiItem/Layout/styles.module.css +17 -0
  275. package/src/theme/ApiItem/hooks.ts +13 -0
  276. package/src/theme/ApiItem/index.tsx +222 -0
  277. package/src/theme/ApiItem/store.ts +51 -0
  278. package/src/theme/ApiLogo/index.tsx +52 -0
  279. package/src/theme/ApiTabs/_ApiTabs.scss +142 -0
  280. package/src/theme/ApiTabs/index.tsx +243 -0
  281. package/src/theme/ArrayBrackets/index.tsx +37 -0
  282. package/src/theme/CodeSamples/_CodeSamples.scss +3 -0
  283. package/src/theme/CodeSamples/index.tsx +26 -0
  284. package/src/theme/DiscriminatorTabs/_DiscriminatorTabs.scss +98 -0
  285. package/src/theme/DiscriminatorTabs/index.tsx +229 -0
  286. package/src/theme/Markdown/Details/_Details.scss +122 -0
  287. package/src/theme/Markdown/index.d.ts +8 -0
  288. package/src/theme/Markdown/index.js +179 -0
  289. package/src/theme/MimeTabs/_MimeTabs.scss +70 -0
  290. package/src/theme/MimeTabs/index.tsx +257 -0
  291. package/src/theme/OperationTabs/_OperationTabs.scss +72 -0
  292. package/src/theme/OperationTabs/index.tsx +220 -0
  293. package/src/theme/ParamsDetails/index.tsx +90 -0
  294. package/src/theme/ParamsItem/_ParamsItem.scss +54 -0
  295. package/src/theme/ParamsItem/index.tsx +246 -0
  296. package/src/theme/RequestSchema/index.tsx +172 -0
  297. package/src/theme/ResponseExamples/index.tsx +209 -0
  298. package/src/theme/ResponseHeaders/index.tsx +49 -0
  299. package/src/theme/ResponseSchema/index.tsx +150 -0
  300. package/src/theme/Schema/index.tsx +938 -0
  301. package/src/theme/SchemaItem/_SchemaItem.scss +89 -0
  302. package/src/theme/SchemaItem/index.tsx +273 -0
  303. package/src/theme/SchemaTabs/_SchemaTabs.scss +61 -0
  304. package/src/theme/SchemaTabs/index.tsx +224 -0
  305. package/src/theme/SkeletonLoader/index.tsx +18 -0
  306. package/src/theme/StatusCodes/index.tsx +83 -0
  307. package/src/theme/styles.scss +215 -0
  308. package/src/theme/translationIds.ts +103 -0
  309. package/src/theme-classic.d.ts +80 -0
  310. package/src/theme-openapi.d.ts +20 -0
  311. package/src/types.ts +72 -0
  312. package/tsconfig.json +16 -0
@@ -0,0 +1,166 @@
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, { useEffect, useState } from "react";
9
+
10
+ import { usePrismTheme } from "@docusaurus/theme-common";
11
+ import { translate } from "@docusaurus/Translate";
12
+ import Container from "@theme/ApiExplorer/ApiCodeBlock/Container";
13
+ import CopyButton from "@theme/ApiExplorer/ApiCodeBlock/CopyButton";
14
+ import ExitButton from "@theme/ApiExplorer/ApiCodeBlock/ExitButton";
15
+ import Line from "@theme/ApiExplorer/ApiCodeBlock/Line";
16
+ import clsx from "clsx";
17
+ import { Highlight, Language } from "prism-react-renderer";
18
+ import Modal from "react-modal";
19
+
20
+ export interface Props {
21
+ readonly code: string;
22
+ readonly className: string;
23
+ readonly language: Language;
24
+ readonly showLineNumbers: boolean;
25
+ readonly blockClassName: string;
26
+ readonly title: string | undefined;
27
+ readonly lineClassNames: { [lineIndex: number]: string[] };
28
+ }
29
+
30
+ export default function ExpandButton({
31
+ code,
32
+ className,
33
+ language,
34
+ showLineNumbers,
35
+ blockClassName,
36
+ title,
37
+ lineClassNames,
38
+ }: Props): React.JSX.Element {
39
+ const [isModalOpen, setIsModalOpen] = useState(false);
40
+ const prismTheme = usePrismTheme();
41
+
42
+ useEffect(() => {
43
+ Modal.setAppElement("body");
44
+ }, []);
45
+
46
+ return (
47
+ <>
48
+ <button
49
+ type="button"
50
+ aria-label={
51
+ isModalOpen
52
+ ? translate({
53
+ id: "theme.CodeBlock.expanded",
54
+ message: "Expanded",
55
+ description: "The expanded button label on code blocks",
56
+ })
57
+ : translate({
58
+ id: "theme.CodeBlock.expandButtonAriaLabel",
59
+ message: "Expand code to fullscreen",
60
+ description: "The ARIA label for expand code blocks button",
61
+ })
62
+ }
63
+ title={translate({
64
+ id: "theme.CodeBlock.expand",
65
+ message: "Expand",
66
+ description: "The expand button label on code blocks",
67
+ })}
68
+ className={clsx(
69
+ "clean-btn",
70
+ className,
71
+ "openapi-explorer__code-block-expand-btn",
72
+ isModalOpen && "openapi-explorer__code-block-expand-btn--copied"
73
+ )}
74
+ onClick={() => setIsModalOpen(true)}
75
+ >
76
+ <span
77
+ className="openapi-explorer__code-block-expand-btn-icons"
78
+ aria-hidden="true"
79
+ >
80
+ <svg
81
+ className="openapi-explorer__code-block-expand-btn-icon"
82
+ viewBox="0 0 448 512"
83
+ >
84
+ <path d="M32 32C14.3 32 0 46.3 0 64v96c0 17.7 14.3 32 32 32s32-14.3 32-32V96h64c17.7 0 32-14.3 32-32s-14.3-32-32-32H32zM64 352c0-17.7-14.3-32-32-32s-32 14.3-32 32v96c0 17.7 14.3 32 32 32h96c17.7 0 32-14.3 32-32s-14.3-32-32-32H64V352zM320 32c-17.7 0-32 14.3-32 32s14.3 32 32 32h64v64c0 17.7 14.3 32 32 32s32-14.3 32-32V64c0-17.7-14.3-32-32-32H320zM448 352c0-17.7-14.3-32-32-32s-32 14.3-32 32v64H320c-17.7 0-32 14.3-32 32s14.3 32 32 32h96c17.7 0 32-14.3 32-32V352z" />
85
+ </svg>
86
+ <svg
87
+ className="openapi-explorer__code-block-expand-btn-icon--success"
88
+ viewBox="0 0 24 24"
89
+ >
90
+ <path d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z" />
91
+ </svg>
92
+ </span>
93
+ </button>
94
+ <Modal
95
+ className="openapi-explorer__expand-modal-content"
96
+ overlayClassName="openapi-explorer__expand-modal-overlay"
97
+ isOpen={isModalOpen}
98
+ onRequestClose={() => setIsModalOpen(false)}
99
+ contentLabel="Code Snippet"
100
+ >
101
+ <Container
102
+ as="div"
103
+ className={clsx(
104
+ "openapi-explorer__code-block-container",
105
+ language &&
106
+ !blockClassName.includes(`language-${language}`) &&
107
+ `language-${language}`
108
+ )}
109
+ >
110
+ {title && (
111
+ <div className="openapi-explorer__code-block-title">{title}</div>
112
+ )}
113
+ <div className="openapi-explorer__code-block-content">
114
+ <Highlight
115
+ // {...defaultProps}
116
+ theme={prismTheme}
117
+ code={code}
118
+ language={language ?? "text"}
119
+ >
120
+ {({ className, tokens, getLineProps, getTokenProps }) => (
121
+ <pre
122
+ /* eslint-disable-next-line jsx-a11y/no-noninteractive-tabindex */
123
+ tabIndex={0}
124
+ className={clsx(
125
+ className,
126
+ "openapi-explorer__code-block",
127
+ "thin-scrollbar"
128
+ )}
129
+ >
130
+ <code
131
+ className={clsx(
132
+ "openapi-explorer__code-block-lines",
133
+ showLineNumbers &&
134
+ "openapi-explorer__code-block-lines-numbers"
135
+ )}
136
+ >
137
+ {tokens.map((line, i) => (
138
+ <Line
139
+ key={i}
140
+ line={line}
141
+ getLineProps={getLineProps}
142
+ getTokenProps={getTokenProps}
143
+ classNames={lineClassNames[i]}
144
+ showLineNumbers={showLineNumbers}
145
+ />
146
+ ))}
147
+ </code>
148
+ </pre>
149
+ )}
150
+ </Highlight>
151
+ <div className="openapi-explorer__code-block-btn-group">
152
+ <CopyButton
153
+ className="openapi-explorer__code-block-code-btn"
154
+ code={code}
155
+ />
156
+ <ExitButton
157
+ className="openapi-explorer__code-block-code-btn"
158
+ handler={() => setIsModalOpen(false)}
159
+ />
160
+ </div>
161
+ </div>
162
+ </Container>
163
+ </Modal>
164
+ </>
165
+ );
166
+ }
@@ -0,0 +1,34 @@
1
+ /* Intentionally has zero specificity, so that to be able to override
2
+ the background in custom CSS file due bug https://github.com/facebook/docusaurus/issues/3678 */
3
+ :where(:root) {
4
+ --docusaurus-highlighted-code-line-bg: rgb(72 77 91);
5
+ }
6
+
7
+ :where([data-theme="dark"]) {
8
+ --docusaurus-highlighted-code-line-bg: rgb(100 100 100);
9
+ }
10
+
11
+ .openapi-explorer__code-block-code-line {
12
+ display: table-row;
13
+ counter-increment: line-count;
14
+ }
15
+
16
+ .openapi-explorer__code-block-code-line-number {
17
+ display: table-cell;
18
+ text-align: right;
19
+ width: 1%;
20
+ position: sticky;
21
+ left: 0;
22
+ padding: 0 var(--ifm-pre-padding);
23
+ background: var(--ifm-pre-background);
24
+ overflow-wrap: normal;
25
+ }
26
+
27
+ .openapi-explorer__code-block-code-line-number::before {
28
+ content: counter(line-count);
29
+ opacity: 0.4;
30
+ }
31
+
32
+ .openapi-explorer__code-block-code-line-number {
33
+ padding-right: var(--ifm-pre-padding);
34
+ }
@@ -0,0 +1,48 @@
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 { LineProps } from "@docusaurus/theme-common/internal";
11
+ import clsx from "clsx";
12
+
13
+ export default function CodeBlockLine({
14
+ line,
15
+ classNames,
16
+ showLineNumbers,
17
+ getLineProps,
18
+ getTokenProps,
19
+ }: LineProps): React.JSX.Element {
20
+ if (line.length === 1 && line[0].content === "\n") {
21
+ line[0].content = "";
22
+ }
23
+ const lineProps = getLineProps({
24
+ line,
25
+ className: clsx(
26
+ classNames,
27
+ showLineNumbers && "openapi-explorer__code-block-code-line"
28
+ ),
29
+ });
30
+ const lineTokens = line.map((token, key) => (
31
+ <span key={key} {...getTokenProps({ token, key })} />
32
+ ));
33
+ return (
34
+ <span {...lineProps}>
35
+ {showLineNumbers ? (
36
+ <>
37
+ <span className="openapi-explorer__code-block-code-line-number" />
38
+ <span className="openapi-explorer__code-block-code-line-content">
39
+ {lineTokens}
40
+ </span>
41
+ </>
42
+ ) : (
43
+ lineTokens
44
+ )}
45
+ <br />
46
+ </span>
47
+ );
48
+ }
@@ -0,0 +1,10 @@
1
+ .openapi-explorer__code-block-word-wrap-btn-icon {
2
+ width: 1.2rem;
3
+ height: 1.2rem;
4
+ }
5
+
6
+ .openapi-explorer__code-block-word-wrap-btn--enabled {
7
+ .openapi-explorer__code-block-word-wrap-btn-icon {
8
+ color: var(--ifm-color-primary);
9
+ }
10
+ }
@@ -0,0 +1,54 @@
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 { translate } from "@docusaurus/Translate";
11
+ import clsx from "clsx";
12
+
13
+ export interface Props {
14
+ readonly className?: string;
15
+ readonly onClick: React.MouseEventHandler;
16
+ readonly isEnabled: boolean;
17
+ }
18
+
19
+ export default function WordWrapButton({
20
+ className,
21
+ onClick,
22
+ isEnabled,
23
+ }: Props): React.JSX.Element | null {
24
+ const title = translate({
25
+ id: "theme.CodeBlock.wordWrapToggle",
26
+ message: "Toggle word wrap",
27
+ description:
28
+ "The title attribute for toggle word wrapping button of code block lines",
29
+ });
30
+ return (
31
+ <button
32
+ type="button"
33
+ onClick={onClick}
34
+ className={clsx(
35
+ "clean-btn",
36
+ className,
37
+ isEnabled && "openapi-explorer__code-block-word-wrap-btn--enabled"
38
+ )}
39
+ aria-label={title}
40
+ title={title}
41
+ >
42
+ <svg
43
+ className="openapi-explorer__code-block-word-wrap-btn-icon"
44
+ viewBox="0 0 24 24"
45
+ aria-hidden="true"
46
+ >
47
+ <path
48
+ fill="currentColor"
49
+ d="M4 19h6v-2H4v2zM20 5H4v2h16V5zm-3 6H4v2h13.25c1.1 0 2 .9 2 2s-.9 2-2 2H15v-2l-3 3l3 3v-2h2c2.21 0 4-1.79 4-4s-1.79-4-4-4z"
50
+ />
51
+ </svg>
52
+ </button>
53
+ );
54
+ }
@@ -0,0 +1,45 @@
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, { isValidElement, ReactNode } from "react";
9
+
10
+ import { CodeBlockProps } from "@docusaurus/theme-common/internal";
11
+ import useIsBrowser from "@docusaurus/useIsBrowser";
12
+ import ElementContent from "@theme/ApiExplorer/ApiCodeBlock/Content/Element";
13
+ import StringContent from "@theme/ApiExplorer/ApiCodeBlock/Content/String";
14
+
15
+ /**
16
+ * Best attempt to make the children a plain string so it is copyable. If there
17
+ * are react elements, we will not be able to copy the content, and it will
18
+ * return `children` as-is; otherwise, it concatenates the string children
19
+ * together.
20
+ */
21
+ function maybeStringifyChildren(children: ReactNode): ReactNode {
22
+ if (React.Children.toArray(children).some((el) => isValidElement(el))) {
23
+ return children;
24
+ }
25
+ // The children is now guaranteed to be one/more plain strings
26
+ return Array.isArray(children) ? children.join("") : (children as string);
27
+ }
28
+ export default function ApiCodeBlock({
29
+ children: rawChildren,
30
+ ...props
31
+ }: CodeBlockProps) {
32
+ // The Prism theme on SSR is always the default theme but the site theme can
33
+ // be in a different mode. React hydration doesn't update DOM styles that come
34
+ // from SSR. Hence force a re-render after mounting to apply the current
35
+ // relevant styles.
36
+ const isBrowser = useIsBrowser();
37
+ const children = maybeStringifyChildren(rawChildren);
38
+ const CodeBlockComp =
39
+ typeof children === "string" ? StringContent : ElementContent;
40
+ return (
41
+ <CodeBlockComp key={String(isBrowser)} {...props}>
42
+ {children as string}
43
+ </CodeBlockComp>
44
+ );
45
+ }
@@ -0,0 +1,30 @@
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
+ export function getAuthDataKeys(security: { [key: string]: any }) {
9
+ // Bearer Auth
10
+ if (security.type === "http" && security.scheme === "bearer") {
11
+ return ["token"];
12
+ }
13
+
14
+ if (security.type === "oauth2") {
15
+ return ["token"];
16
+ }
17
+
18
+ // Basic Auth
19
+ if (security.type === "http" && security.scheme === "basic") {
20
+ return ["username", "password"];
21
+ }
22
+
23
+ // API Auth
24
+ if (security.type === "apiKey") {
25
+ return ["apiKey"];
26
+ }
27
+
28
+ // none
29
+ return [];
30
+ }
@@ -0,0 +1,199 @@
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 { translate } from "@docusaurus/Translate";
11
+ import FormItem from "@theme/ApiExplorer/FormItem";
12
+ import FormSelect from "@theme/ApiExplorer/FormSelect";
13
+ import FormTextInput from "@theme/ApiExplorer/FormTextInput";
14
+ import { useTypedDispatch, useTypedSelector } from "@theme/ApiItem/hooks";
15
+ import { OPENAPI_AUTH } from "@theme/translationIds";
16
+
17
+ import { setAuthData, setSelectedAuth } from "./slice";
18
+
19
+ function Authorization() {
20
+ const data = useTypedSelector((state: any) => state.auth.data);
21
+ const options = useTypedSelector((state: any) => state.auth.options);
22
+ const selected = useTypedSelector((state: any) => state.auth.selected);
23
+
24
+ const dispatch = useTypedDispatch();
25
+
26
+ if (selected === undefined) {
27
+ return null;
28
+ }
29
+
30
+ const selectedAuth = options[selected];
31
+
32
+ const optionKeys = Object.keys(options);
33
+
34
+ return (
35
+ <div>
36
+ {optionKeys.length > 1 && (
37
+ <FormItem
38
+ label={translate({
39
+ id: OPENAPI_AUTH.SECURITY_SCHEME,
40
+ message: "Security Scheme",
41
+ })}
42
+ >
43
+ <FormSelect
44
+ options={optionKeys}
45
+ value={selected}
46
+ onChange={(e: React.ChangeEvent<HTMLSelectElement>) => {
47
+ dispatch(setSelectedAuth(e.target.value));
48
+ }}
49
+ />
50
+ </FormItem>
51
+ )}
52
+ {selectedAuth.map((a: any) => {
53
+ if (a.type === "http" && a.scheme === "bearer") {
54
+ return (
55
+ <FormItem
56
+ label={translate({
57
+ id: OPENAPI_AUTH.BEARER_TOKEN,
58
+ message: "Bearer Token",
59
+ })}
60
+ key={a.key + "-bearer"}
61
+ >
62
+ <FormTextInput
63
+ placeholder={translate({
64
+ id: OPENAPI_AUTH.BEARER_TOKEN,
65
+ message: "Bearer Token",
66
+ })}
67
+ password
68
+ value={data[a.key].token ?? ""}
69
+ onChange={(e: React.ChangeEvent<HTMLInputElement>) => {
70
+ const value = e.target.value;
71
+ dispatch(
72
+ setAuthData({
73
+ scheme: a.key,
74
+ key: "token",
75
+ value: value ? value : undefined,
76
+ })
77
+ );
78
+ }}
79
+ />
80
+ </FormItem>
81
+ );
82
+ }
83
+
84
+ if (a.type === "oauth2") {
85
+ return (
86
+ <FormItem
87
+ label={translate({
88
+ id: OPENAPI_AUTH.BEARER_TOKEN,
89
+ message: "Bearer Token",
90
+ })}
91
+ key={a.key + "-oauth2"}
92
+ >
93
+ <FormTextInput
94
+ placeholder={translate({
95
+ id: OPENAPI_AUTH.BEARER_TOKEN,
96
+ message: "Bearer Token",
97
+ })}
98
+ password
99
+ value={data[a.key].token ?? ""}
100
+ onChange={(e: React.ChangeEvent<HTMLInputElement>) => {
101
+ const value = e.target.value;
102
+ dispatch(
103
+ setAuthData({
104
+ scheme: a.key,
105
+ key: "token",
106
+ value: value ? value : undefined,
107
+ })
108
+ );
109
+ }}
110
+ />
111
+ </FormItem>
112
+ );
113
+ }
114
+
115
+ if (a.type === "http" && a.scheme === "basic") {
116
+ return (
117
+ <React.Fragment key={a.key + "-basic"}>
118
+ <FormItem
119
+ label={translate({
120
+ id: OPENAPI_AUTH.USERNAME,
121
+ message: "Username",
122
+ })}
123
+ >
124
+ <FormTextInput
125
+ placeholder={translate({
126
+ id: OPENAPI_AUTH.USERNAME,
127
+ message: "Username",
128
+ })}
129
+ value={data[a.key].username ?? ""}
130
+ onChange={(e: React.ChangeEvent<HTMLInputElement>) => {
131
+ const value = e.target.value;
132
+ dispatch(
133
+ setAuthData({
134
+ scheme: a.key,
135
+ key: "username",
136
+ value: value ? value : undefined,
137
+ })
138
+ );
139
+ }}
140
+ />
141
+ </FormItem>
142
+ <FormItem
143
+ label={translate({
144
+ id: OPENAPI_AUTH.PASSWORD,
145
+ message: "Password",
146
+ })}
147
+ >
148
+ <FormTextInput
149
+ placeholder={translate({
150
+ id: OPENAPI_AUTH.PASSWORD,
151
+ message: "Password",
152
+ })}
153
+ password
154
+ value={data[a.key].password ?? ""}
155
+ onChange={(e: React.ChangeEvent<HTMLInputElement>) => {
156
+ const value = e.target.value;
157
+ dispatch(
158
+ setAuthData({
159
+ scheme: a.key,
160
+ key: "password",
161
+ value: value ? value : undefined,
162
+ })
163
+ );
164
+ }}
165
+ />
166
+ </FormItem>
167
+ </React.Fragment>
168
+ );
169
+ }
170
+
171
+ if (a.type === "apiKey") {
172
+ return (
173
+ <FormItem label={`${a.key}`} key={a.key + "-apikey"}>
174
+ <FormTextInput
175
+ placeholder={`${a.key}`}
176
+ password
177
+ value={data[a.key].apiKey ?? ""}
178
+ onChange={(e: React.ChangeEvent<HTMLInputElement>) => {
179
+ const value = e.target.value;
180
+ dispatch(
181
+ setAuthData({
182
+ scheme: a.key,
183
+ key: "apiKey",
184
+ value: value ? value : undefined,
185
+ })
186
+ );
187
+ }}
188
+ />
189
+ </FormItem>
190
+ );
191
+ }
192
+
193
+ return null;
194
+ })}
195
+ </div>
196
+ );
197
+ }
198
+
199
+ export default Authorization;