docusaurus-theme-openapi-docs 2.0.0-beta.2 → 2.0.0-beta.4

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 (361) hide show
  1. package/lib/index.d.ts +2 -0
  2. package/lib/index.js +53 -55
  3. package/lib/markdown/createDescription.d.ts +1 -0
  4. package/lib/markdown/createDescription.js +8 -11
  5. package/lib/markdown/schema.d.ts +3 -0
  6. package/lib/markdown/schema.js +138 -139
  7. package/lib/markdown/utils.d.ts +8 -0
  8. package/lib/markdown/utils.js +36 -42
  9. package/lib/theme/ApiDemoPanel/ApiCodeBlock/ExpandButton/index.js +165 -0
  10. package/lib/theme/ApiDemoPanel/ApiCodeBlock/Line/_Line.scss +46 -0
  11. package/lib/theme/ApiExplorer/Accept/index.d.ts +3 -0
  12. package/lib/theme/ApiExplorer/Accept/index.js +38 -0
  13. package/lib/theme/ApiExplorer/Accept/slice.d.ts +11 -0
  14. package/{lib-next/theme/ApiDemoPanel → lib/theme/ApiExplorer}/Accept/slice.js +7 -5
  15. package/lib/theme/ApiExplorer/ApiCodeBlock/Container/_Container.scss +7 -0
  16. package/lib/theme/ApiExplorer/ApiCodeBlock/Container/index.js +29 -0
  17. package/lib/theme/ApiExplorer/ApiCodeBlock/Content/Element.js +30 -0
  18. package/lib/theme/ApiExplorer/ApiCodeBlock/Content/String.js +134 -0
  19. package/lib/theme/ApiExplorer/ApiCodeBlock/Content/_Content.scss +91 -0
  20. package/lib/theme/ApiExplorer/ApiCodeBlock/CopyButton/_CopyButton.scss +44 -0
  21. package/lib/theme/ApiExplorer/ApiCodeBlock/CopyButton/index.js +74 -0
  22. package/lib/theme/ApiExplorer/ApiCodeBlock/ExitButton/_ExitButton.scss +16 -0
  23. package/lib/theme/ApiExplorer/ApiCodeBlock/ExitButton/index.js +47 -0
  24. package/lib/theme/ApiExplorer/ApiCodeBlock/ExpandButton/_ExpandButton.scss +62 -0
  25. package/lib/theme/ApiExplorer/ApiCodeBlock/ExpandButton/index.js +156 -0
  26. package/lib/theme/ApiExplorer/ApiCodeBlock/Line/_Line.scss +46 -0
  27. package/lib/theme/ApiExplorer/ApiCodeBlock/Line/index.js +47 -0
  28. package/lib/theme/ApiExplorer/ApiCodeBlock/WordWrapButton/_WordWrapButton.scss +10 -0
  29. package/lib/theme/ApiExplorer/ApiCodeBlock/WordWrapButton/index.js +44 -0
  30. package/lib/theme/ApiExplorer/ApiCodeBlock/index.js +40 -0
  31. package/lib/theme/ApiExplorer/Authorization/auth-types.d.ts +3 -0
  32. package/lib/theme/{ApiDemoPanel → ApiExplorer}/Authorization/auth-types.js +4 -10
  33. package/lib/theme/ApiExplorer/Authorization/index.d.ts +3 -0
  34. package/lib/theme/ApiExplorer/Authorization/index.js +157 -0
  35. package/lib/theme/ApiExplorer/Authorization/slice.d.ts +40 -0
  36. package/{lib-next/theme/ApiDemoPanel → lib/theme/ApiExplorer}/Authorization/slice.js +23 -16
  37. package/lib/theme/ApiExplorer/Body/index.d.ts +10 -0
  38. package/lib/theme/ApiExplorer/Body/index.js +360 -0
  39. package/lib/theme/ApiExplorer/Body/slice.d.ts +82 -0
  40. package/{lib-next/theme/ApiDemoPanel → lib/theme/ApiExplorer}/Body/slice.js +21 -12
  41. package/lib/theme/ApiExplorer/CodeSnippets/index.d.ts +20 -0
  42. package/lib/theme/ApiExplorer/CodeSnippets/index.js +406 -0
  43. package/lib/theme/ApiExplorer/CodeTabs/_CodeTabs.scss +291 -0
  44. package/{lib-next/theme/ApiDemoPanel → lib/theme/ApiExplorer}/CodeTabs/index.js +26 -8
  45. package/lib/theme/ApiExplorer/ContentType/index.d.ts +3 -0
  46. package/lib/theme/ApiExplorer/ContentType/index.js +40 -0
  47. package/lib/theme/ApiExplorer/ContentType/slice.d.ts +11 -0
  48. package/{lib-next/theme/ApiDemoPanel → lib/theme/ApiExplorer}/ContentType/slice.js +7 -5
  49. package/lib/theme/ApiExplorer/Export/index.d.ts +3 -0
  50. package/lib/theme/ApiExplorer/Export/index.js +57 -0
  51. package/{src/theme/ApiDemoPanel → lib/theme/ApiExplorer}/FloatingButton/_FloatingButton.scss +4 -4
  52. package/lib/theme/ApiExplorer/FloatingButton/index.d.ts +8 -0
  53. package/lib/theme/ApiExplorer/FloatingButton/index.js +28 -0
  54. package/{lib-next/theme/ApiDemoPanel → lib/theme/ApiExplorer}/FormFileUpload/_FormFileUpload.scss +6 -6
  55. package/lib/theme/ApiExplorer/FormFileUpload/index.d.ts +7 -0
  56. package/lib/theme/ApiExplorer/FormFileUpload/index.js +161 -0
  57. package/lib/theme/ApiExplorer/FormItem/_FormItem.scss +21 -0
  58. package/lib/theme/ApiExplorer/FormItem/index.d.ts +10 -0
  59. package/lib/theme/ApiExplorer/FormItem/index.js +44 -0
  60. package/lib/theme/{ApiDemoPanel → ApiExplorer}/FormMultiSelect/_FormMultiSelect.scss +9 -5
  61. package/lib/theme/ApiExplorer/FormMultiSelect/index.d.ts +9 -0
  62. package/lib/theme/ApiExplorer/FormMultiSelect/index.js +51 -0
  63. package/lib/theme/{ApiDemoPanel → ApiExplorer}/FormSelect/_FormSelect.scss +5 -5
  64. package/lib/theme/ApiExplorer/FormSelect/index.d.ts +8 -0
  65. package/lib/theme/ApiExplorer/FormSelect/index.js +35 -0
  66. package/lib/theme/ApiExplorer/FormTextInput/_FormTextInput.scss +34 -0
  67. package/lib/theme/ApiExplorer/FormTextInput/index.d.ts +9 -0
  68. package/lib/theme/ApiExplorer/FormTextInput/index.js +73 -0
  69. package/{src/theme/ApiDemoPanel → lib/theme/ApiExplorer}/LiveEditor/_LiveEditor.scss +2 -2
  70. package/lib/theme/ApiExplorer/LiveEditor/index.d.ts +6 -0
  71. package/lib/theme/ApiExplorer/LiveEditor/index.js +154 -0
  72. package/lib/theme/ApiExplorer/MethodEndpoint/_MethodEndpoint.scss +22 -0
  73. package/lib/theme/ApiExplorer/MethodEndpoint/index.d.ts +7 -0
  74. package/lib/theme/ApiExplorer/MethodEndpoint/index.js +82 -0
  75. package/lib/theme/ApiExplorer/ParamOptions/ParamFormItems/ParamArrayFormItem.d.ts +6 -0
  76. package/lib/theme/ApiExplorer/ParamOptions/ParamFormItems/ParamArrayFormItem.js +194 -0
  77. package/lib/theme/ApiExplorer/ParamOptions/ParamFormItems/ParamBooleanFormItem.d.ts +6 -0
  78. package/lib/theme/ApiExplorer/ParamOptions/ParamFormItems/ParamBooleanFormItem.js +63 -0
  79. package/lib/theme/ApiExplorer/ParamOptions/ParamFormItems/ParamMultiSelectFormItem.d.ts +6 -0
  80. package/lib/theme/ApiExplorer/ParamOptions/ParamFormItems/ParamMultiSelectFormItem.js +89 -0
  81. package/lib/theme/ApiExplorer/ParamOptions/ParamFormItems/ParamSelectFormItem.d.ts +6 -0
  82. package/lib/theme/ApiExplorer/ParamOptions/ParamFormItems/ParamSelectFormItem.js +63 -0
  83. package/lib/theme/ApiExplorer/ParamOptions/ParamFormItems/ParamTextFormItem.d.ts +6 -0
  84. package/lib/theme/ApiExplorer/ParamOptions/ParamFormItems/ParamTextFormItem.js +38 -0
  85. package/{src/theme/ApiDemoPanel → lib/theme/ApiExplorer}/ParamOptions/_ParamOptions.scss +15 -34
  86. package/lib/theme/ApiExplorer/ParamOptions/index.d.ts +7 -0
  87. package/lib/theme/ApiExplorer/ParamOptions/index.js +210 -0
  88. package/lib/theme/ApiExplorer/ParamOptions/slice.d.ts +17 -0
  89. package/{lib-next/theme/ApiDemoPanel → lib/theme/ApiExplorer}/ParamOptions/slice.js +7 -5
  90. package/lib/theme/ApiExplorer/Request/_Request.scss +122 -0
  91. package/lib/theme/ApiExplorer/Request/index.d.ts +6 -0
  92. package/lib/theme/ApiExplorer/Request/index.js +363 -0
  93. package/lib/theme/ApiExplorer/Request/makeRequest.d.ts +4 -0
  94. package/{lib-next/theme/ApiDemoPanel/Execute → lib/theme/ApiExplorer/Request}/makeRequest.js +9 -8
  95. package/lib/theme/ApiExplorer/Response/_Response.scss +81 -0
  96. package/lib/theme/ApiExplorer/Response/index.d.ts +6 -0
  97. package/lib/theme/ApiExplorer/Response/index.js +184 -0
  98. package/lib/theme/ApiExplorer/Response/slice.d.ts +17 -0
  99. package/{lib-next/theme/ApiDemoPanel → lib/theme/ApiExplorer}/Response/slice.js +21 -12
  100. package/lib/theme/ApiExplorer/SecuritySchemes/index.d.ts +3 -0
  101. package/lib/theme/ApiExplorer/SecuritySchemes/index.js +380 -0
  102. package/{src/theme/ApiDemoPanel → lib/theme/ApiExplorer}/Server/_Server.scss +11 -1
  103. package/lib/theme/ApiExplorer/Server/index.d.ts +3 -0
  104. package/lib/theme/ApiExplorer/Server/index.js +187 -0
  105. package/lib/theme/ApiExplorer/Server/slice.d.ts +13 -0
  106. package/{lib-next/theme/ApiDemoPanel → lib/theme/ApiExplorer}/Server/slice.js +10 -5
  107. package/lib/theme/ApiExplorer/buildPostmanRequest.d.ts +20 -0
  108. package/{lib-next/theme/ApiDemoPanel → lib/theme/ApiExplorer}/buildPostmanRequest.js +27 -40
  109. package/lib/theme/ApiExplorer/index.d.ts +7 -0
  110. package/lib/theme/ApiExplorer/index.js +36 -0
  111. package/lib/theme/ApiExplorer/persistanceMiddleware.d.ts +3 -0
  112. package/{lib-next/theme/ApiDemoPanel → lib/theme/ApiExplorer}/persistanceMiddleware.js +11 -14
  113. package/lib/theme/ApiExplorer/storage-utils.d.ts +4 -0
  114. package/lib/theme/{ApiDemoPanel → ApiExplorer}/storage-utils.js +14 -13
  115. package/lib/theme/ApiItem/Layout/index.d.ts +4 -0
  116. package/lib/theme/ApiItem/Layout/index.js +78 -56
  117. package/lib/theme/ApiItem/hooks.d.ts +12 -0
  118. package/lib/theme/ApiItem/hooks.js +5 -10
  119. package/lib/theme/ApiItem/index.d.ts +4 -0
  120. package/lib/theme/ApiItem/index.js +144 -116
  121. package/lib/theme/ApiItem/store.d.ts +46 -0
  122. package/lib/theme/ApiItem/store.js +44 -34
  123. package/lib/theme/ApiLogo/index.d.ts +2 -0
  124. package/lib/theme/ApiLogo/index.js +34 -32
  125. package/lib/theme/ApiTabs/_ApiTabs.scss +29 -22
  126. package/lib/theme/ApiTabs/index.js +4 -3
  127. package/lib/theme/DiscriminatorTabs/_DiscriminatorTabs.scss +16 -13
  128. package/lib/theme/Markdown/Details/_Details.scss +82 -3
  129. package/lib/theme/MimeTabs/_MimeTabs.scss +13 -8
  130. package/lib/theme/MimeTabs/index.js +2 -2
  131. package/lib/theme/ParamsItem/_ParamsItem.scss +24 -9
  132. package/lib/theme/ParamsItem/index.js +9 -6
  133. package/lib/theme/SchemaItem/_SchemaItem.scss +47 -11
  134. package/lib/theme/SchemaItem/index.js +23 -12
  135. package/lib/theme/SchemaTabs/_SchemaTabs.scss +23 -17
  136. package/lib/theme/SchemaTabs/index.js +50 -54
  137. package/lib/theme/styles.scss +55 -18
  138. package/lib/types.d.ts +157 -0
  139. package/lib/types.js +8 -1
  140. package/package.json +13 -21
  141. package/src/index.ts +31 -40
  142. package/src/theme/ApiDemoPanel/ApiCodeBlock/ExpandButton/index.js +165 -0
  143. package/src/theme/ApiDemoPanel/ApiCodeBlock/Line/_Line.scss +46 -0
  144. package/src/theme/{ApiDemoPanel → ApiExplorer}/Accept/index.tsx +2 -2
  145. package/src/theme/ApiExplorer/ApiCodeBlock/Container/_Container.scss +7 -0
  146. package/src/theme/ApiExplorer/ApiCodeBlock/Container/index.js +29 -0
  147. package/src/theme/ApiExplorer/ApiCodeBlock/Content/Element.js +30 -0
  148. package/src/theme/ApiExplorer/ApiCodeBlock/Content/String.js +134 -0
  149. package/src/theme/ApiExplorer/ApiCodeBlock/Content/_Content.scss +91 -0
  150. package/src/theme/ApiExplorer/ApiCodeBlock/CopyButton/_CopyButton.scss +44 -0
  151. package/src/theme/ApiExplorer/ApiCodeBlock/CopyButton/index.js +74 -0
  152. package/src/theme/ApiExplorer/ApiCodeBlock/ExitButton/_ExitButton.scss +16 -0
  153. package/src/theme/ApiExplorer/ApiCodeBlock/ExitButton/index.js +47 -0
  154. package/src/theme/ApiExplorer/ApiCodeBlock/ExpandButton/_ExpandButton.scss +62 -0
  155. package/src/theme/ApiExplorer/ApiCodeBlock/ExpandButton/index.js +156 -0
  156. package/src/theme/ApiExplorer/ApiCodeBlock/Line/_Line.scss +46 -0
  157. package/src/theme/ApiExplorer/ApiCodeBlock/Line/index.js +47 -0
  158. package/src/theme/ApiExplorer/ApiCodeBlock/WordWrapButton/_WordWrapButton.scss +10 -0
  159. package/src/theme/ApiExplorer/ApiCodeBlock/WordWrapButton/index.js +44 -0
  160. package/src/theme/ApiExplorer/ApiCodeBlock/index.js +40 -0
  161. package/src/theme/{ApiDemoPanel → ApiExplorer}/Authorization/index.tsx +3 -3
  162. package/src/theme/{ApiDemoPanel → ApiExplorer}/Authorization/slice.ts +1 -1
  163. package/src/theme/{ApiDemoPanel → ApiExplorer}/Body/index.tsx +54 -37
  164. package/src/theme/{ApiDemoPanel/Curl → ApiExplorer/CodeSnippets}/index.tsx +90 -25
  165. package/src/theme/ApiExplorer/CodeTabs/_CodeTabs.scss +291 -0
  166. package/{lib/theme/ApiDemoPanel → src/theme/ApiExplorer}/CodeTabs/index.js +26 -8
  167. package/src/theme/{ApiDemoPanel → ApiExplorer}/ContentType/index.tsx +2 -2
  168. package/{lib/theme/ApiDemoPanel → src/theme/ApiExplorer}/FloatingButton/_FloatingButton.scss +4 -4
  169. package/src/theme/{ApiDemoPanel → ApiExplorer}/FloatingButton/index.tsx +1 -1
  170. package/src/theme/{ApiDemoPanel → ApiExplorer}/FormFileUpload/_FormFileUpload.scss +6 -6
  171. package/src/theme/{ApiDemoPanel → ApiExplorer}/FormFileUpload/index.tsx +8 -4
  172. package/src/theme/ApiExplorer/FormItem/_FormItem.scss +21 -0
  173. package/src/theme/{ApiDemoPanel → ApiExplorer}/FormItem/index.tsx +9 -11
  174. package/{lib-next/theme/ApiDemoPanel → src/theme/ApiExplorer}/FormMultiSelect/_FormMultiSelect.scss +9 -5
  175. package/src/theme/{ApiDemoPanel → ApiExplorer}/FormMultiSelect/index.tsx +7 -2
  176. package/src/theme/{ApiDemoPanel → ApiExplorer}/FormSelect/_FormSelect.scss +5 -5
  177. package/src/theme/{ApiDemoPanel → ApiExplorer}/FormSelect/index.tsx +1 -1
  178. package/src/theme/ApiExplorer/FormTextInput/_FormTextInput.scss +34 -0
  179. package/src/theme/ApiExplorer/FormTextInput/index.tsx +80 -0
  180. package/{lib/theme/ApiDemoPanel → src/theme/ApiExplorer}/LiveEditor/_LiveEditor.scss +2 -2
  181. package/src/theme/ApiExplorer/LiveEditor/index.tsx +112 -0
  182. package/src/theme/ApiExplorer/MethodEndpoint/_MethodEndpoint.scss +22 -0
  183. package/src/theme/{ApiDemoPanel → ApiExplorer}/MethodEndpoint/index.tsx +12 -9
  184. package/src/theme/ApiExplorer/ParamOptions/ParamFormItems/ParamArrayFormItem.tsx +156 -0
  185. package/src/theme/ApiExplorer/ParamOptions/ParamFormItems/ParamBooleanFormItem.tsx +64 -0
  186. package/src/theme/ApiExplorer/ParamOptions/ParamFormItems/ParamMultiSelectFormItem.tsx +86 -0
  187. package/src/theme/ApiExplorer/ParamOptions/ParamFormItems/ParamSelectFormItem.tsx +65 -0
  188. package/src/theme/ApiExplorer/ParamOptions/ParamFormItems/ParamTextFormItem.tsx +38 -0
  189. package/{lib-next/theme/ApiDemoPanel → src/theme/ApiExplorer}/ParamOptions/_ParamOptions.scss +15 -34
  190. package/src/theme/ApiExplorer/ParamOptions/index.tsx +145 -0
  191. package/src/theme/ApiExplorer/Request/_Request.scss +122 -0
  192. package/src/theme/ApiExplorer/Request/index.tsx +286 -0
  193. package/src/theme/{ApiDemoPanel/Execute → ApiExplorer/Request}/makeRequest.ts +8 -5
  194. package/src/theme/ApiExplorer/Response/_Response.scss +81 -0
  195. package/src/theme/{ApiDemoPanel → ApiExplorer}/Response/index.tsx +53 -33
  196. package/src/theme/{ApiDemoPanel → ApiExplorer}/SecuritySchemes/index.tsx +5 -3
  197. package/{lib-next/theme/ApiDemoPanel → src/theme/ApiExplorer}/Server/_Server.scss +11 -1
  198. package/src/theme/{ApiDemoPanel → ApiExplorer}/Server/index.tsx +13 -16
  199. package/src/theme/{ApiDemoPanel → ApiExplorer}/buildPostmanRequest.ts +2 -2
  200. package/src/theme/{ApiDemoPanel → ApiExplorer}/index.tsx +10 -12
  201. package/src/theme/{ApiDemoPanel → ApiExplorer}/persistanceMiddleware.ts +1 -1
  202. package/src/theme/ApiItem/index.tsx +17 -8
  203. package/src/theme/ApiItem/store.ts +7 -7
  204. package/src/theme/ApiTabs/_ApiTabs.scss +29 -22
  205. package/src/theme/ApiTabs/index.js +4 -3
  206. package/src/theme/DiscriminatorTabs/_DiscriminatorTabs.scss +16 -13
  207. package/src/theme/Markdown/Details/_Details.scss +82 -3
  208. package/src/theme/MimeTabs/_MimeTabs.scss +13 -8
  209. package/src/theme/MimeTabs/index.js +2 -2
  210. package/src/theme/ParamsItem/_ParamsItem.scss +24 -9
  211. package/src/theme/ParamsItem/index.js +9 -6
  212. package/src/theme/SchemaItem/_SchemaItem.scss +47 -11
  213. package/src/theme/SchemaItem/index.js +23 -12
  214. package/src/theme/SchemaTabs/_SchemaTabs.scss +23 -17
  215. package/src/theme/SchemaTabs/index.js +50 -54
  216. package/src/theme/styles.scss +55 -18
  217. package/src/theme-openapi.d.ts +89 -46
  218. package/tsconfig.json +6 -3
  219. package/lib/postman-code-generators.d.ts +0 -9
  220. package/lib/react-magic-dropzone.d.ts +0 -9
  221. package/lib/theme/ApiDemoPanel/Accept/index.js +0 -32
  222. package/lib/theme/ApiDemoPanel/Accept/slice.js +0 -31
  223. package/lib/theme/ApiDemoPanel/Authorization/index.js +0 -107
  224. package/lib/theme/ApiDemoPanel/Authorization/slice.js +0 -123
  225. package/lib/theme/ApiDemoPanel/Body/index.js +0 -262
  226. package/lib/theme/ApiDemoPanel/Body/slice.js +0 -102
  227. package/lib/theme/ApiDemoPanel/CodeTabs/_CodeTabs.scss +0 -238
  228. package/lib/theme/ApiDemoPanel/ContentType/index.js +0 -32
  229. package/lib/theme/ApiDemoPanel/ContentType/slice.js +0 -31
  230. package/lib/theme/ApiDemoPanel/Curl/index.js +0 -238
  231. package/lib/theme/ApiDemoPanel/Execute/index.js +0 -155
  232. package/lib/theme/ApiDemoPanel/Execute/makeRequest.js +0 -181
  233. package/lib/theme/ApiDemoPanel/Export/index.js +0 -47
  234. package/lib/theme/ApiDemoPanel/FloatingButton/index.js +0 -29
  235. package/lib/theme/ApiDemoPanel/FormFileUpload/_FormFileUpload.scss +0 -72
  236. package/lib/theme/ApiDemoPanel/FormFileUpload/index.js +0 -82
  237. package/lib/theme/ApiDemoPanel/FormItem/_FormItem.scss +0 -12
  238. package/lib/theme/ApiDemoPanel/FormItem/index.js +0 -37
  239. package/lib/theme/ApiDemoPanel/FormMultiSelect/index.js +0 -44
  240. package/lib/theme/ApiDemoPanel/FormSelect/index.js +0 -33
  241. package/lib/theme/ApiDemoPanel/FormTextInput/_FormTextInput.scss +0 -15
  242. package/lib/theme/ApiDemoPanel/FormTextInput/index.js +0 -27
  243. package/lib/theme/ApiDemoPanel/LiveEditor/index.js +0 -61
  244. package/lib/theme/ApiDemoPanel/MethodEndpoint/_MethodEndpoint.scss +0 -6
  245. package/lib/theme/ApiDemoPanel/MethodEndpoint/index.js +0 -73
  246. package/lib/theme/ApiDemoPanel/ParamOptions/_ParamOptions.scss +0 -141
  247. package/lib/theme/ApiDemoPanel/ParamOptions/index.js +0 -215
  248. package/lib/theme/ApiDemoPanel/ParamOptions/slice.js +0 -34
  249. package/lib/theme/ApiDemoPanel/Request/_Request.scss +0 -48
  250. package/lib/theme/ApiDemoPanel/Request/index.js +0 -66
  251. package/lib/theme/ApiDemoPanel/Response/_Response.scss +0 -27
  252. package/lib/theme/ApiDemoPanel/Response/index.js +0 -100
  253. package/lib/theme/ApiDemoPanel/Response/slice.js +0 -56
  254. package/lib/theme/ApiDemoPanel/SecuritySchemes/index.js +0 -257
  255. package/lib/theme/ApiDemoPanel/Server/_Server.scss +0 -16
  256. package/lib/theme/ApiDemoPanel/Server/index.js +0 -103
  257. package/lib/theme/ApiDemoPanel/Server/slice.js +0 -40
  258. package/lib/theme/ApiDemoPanel/buildPostmanRequest.js +0 -303
  259. package/lib/theme/ApiDemoPanel/index.js +0 -35
  260. package/lib/theme/ApiDemoPanel/persistanceMiddleware.js +0 -59
  261. package/lib/theme/ApiDemoPanel/postman-collection.d.ts +0 -10
  262. package/lib/theme/ApiDemoPanel/react-modal.d.ts +0 -8
  263. package/lib/theme-classic.d.ts +0 -13
  264. package/lib/theme-openapi.d.ts +0 -234
  265. package/lib/theme-translations.d.ts +0 -9
  266. package/lib-next/index.js +0 -68
  267. package/lib-next/markdown/createDescription.js +0 -13
  268. package/lib-next/markdown/schema.js +0 -153
  269. package/lib-next/markdown/utils.js +0 -44
  270. package/lib-next/postman-code-generators.d.ts +0 -9
  271. package/lib-next/react-magic-dropzone.d.ts +0 -9
  272. package/lib-next/theme/ApiDemoPanel/Accept/index.js +0 -30
  273. package/lib-next/theme/ApiDemoPanel/Authorization/auth-types.js +0 -29
  274. package/lib-next/theme/ApiDemoPanel/Authorization/index.js +0 -142
  275. package/lib-next/theme/ApiDemoPanel/Body/index.js +0 -328
  276. package/lib-next/theme/ApiDemoPanel/CodeTabs/_CodeTabs.scss +0 -238
  277. package/lib-next/theme/ApiDemoPanel/ContentType/index.js +0 -30
  278. package/lib-next/theme/ApiDemoPanel/Curl/index.js +0 -281
  279. package/lib-next/theme/ApiDemoPanel/Execute/index.js +0 -178
  280. package/lib-next/theme/ApiDemoPanel/Export/index.js +0 -45
  281. package/lib-next/theme/ApiDemoPanel/FloatingButton/_FloatingButton.scss +0 -25
  282. package/lib-next/theme/ApiDemoPanel/FloatingButton/index.js +0 -21
  283. package/lib-next/theme/ApiDemoPanel/FormFileUpload/index.js +0 -107
  284. package/lib-next/theme/ApiDemoPanel/FormItem/_FormItem.scss +0 -12
  285. package/lib-next/theme/ApiDemoPanel/FormItem/index.js +0 -35
  286. package/lib-next/theme/ApiDemoPanel/FormMultiSelect/index.js +0 -44
  287. package/lib-next/theme/ApiDemoPanel/FormSelect/_FormSelect.scss +0 -43
  288. package/lib-next/theme/ApiDemoPanel/FormSelect/index.js +0 -29
  289. package/lib-next/theme/ApiDemoPanel/FormTextInput/_FormTextInput.scss +0 -15
  290. package/lib-next/theme/ApiDemoPanel/FormTextInput/index.js +0 -23
  291. package/lib-next/theme/ApiDemoPanel/LiveEditor/_LiveEditor.scss +0 -15
  292. package/lib-next/theme/ApiDemoPanel/LiveEditor/index.js +0 -58
  293. package/lib-next/theme/ApiDemoPanel/MethodEndpoint/_MethodEndpoint.scss +0 -6
  294. package/lib-next/theme/ApiDemoPanel/MethodEndpoint/index.js +0 -68
  295. package/lib-next/theme/ApiDemoPanel/ParamOptions/index.js +0 -299
  296. package/lib-next/theme/ApiDemoPanel/Request/_Request.scss +0 -48
  297. package/lib-next/theme/ApiDemoPanel/Request/index.js +0 -59
  298. package/lib-next/theme/ApiDemoPanel/Response/_Response.scss +0 -27
  299. package/lib-next/theme/ApiDemoPanel/Response/index.js +0 -122
  300. package/lib-next/theme/ApiDemoPanel/SecuritySchemes/index.js +0 -274
  301. package/lib-next/theme/ApiDemoPanel/Server/index.js +0 -131
  302. package/lib-next/theme/ApiDemoPanel/index.js +0 -25
  303. package/lib-next/theme/ApiDemoPanel/storage-utils.js +0 -33
  304. package/lib-next/theme/ApiItem/Layout/index.js +0 -68
  305. package/lib-next/theme/ApiItem/Layout/styles.module.css +0 -17
  306. package/lib-next/theme/ApiItem/hooks.js +0 -10
  307. package/lib-next/theme/ApiItem/index.js +0 -150
  308. package/lib-next/theme/ApiItem/store.js +0 -38
  309. package/lib-next/theme/ApiLogo/index.js +0 -48
  310. package/lib-next/theme/ApiTabs/_ApiTabs.scss +0 -133
  311. package/lib-next/theme/ApiTabs/index.js +0 -191
  312. package/lib-next/theme/DiscriminatorTabs/_DiscriminatorTabs.scss +0 -94
  313. package/lib-next/theme/DiscriminatorTabs/index.js +0 -185
  314. package/lib-next/theme/Markdown/Details/_Details.scss +0 -40
  315. package/lib-next/theme/MimeTabs/_MimeTabs.scss +0 -64
  316. package/lib-next/theme/MimeTabs/index.js +0 -221
  317. package/lib-next/theme/ParamsItem/_ParamsItem.scss +0 -39
  318. package/lib-next/theme/ParamsItem/index.js +0 -133
  319. package/lib-next/theme/ResponseSamples/_ResponseSamples.scss +0 -3
  320. package/lib-next/theme/ResponseSamples/index.js +0 -22
  321. package/lib-next/theme/SchemaItem/_SchemaItem.scss +0 -53
  322. package/lib-next/theme/SchemaItem/index.js +0 -112
  323. package/lib-next/theme/SchemaTabs/_SchemaTabs.scss +0 -58
  324. package/lib-next/theme/SchemaTabs/index.js +0 -186
  325. package/lib-next/theme/styles.scss +0 -123
  326. package/lib-next/theme-classic.d.ts +0 -13
  327. package/lib-next/theme-openapi.d.ts +0 -234
  328. package/lib-next/theme-translations.d.ts +0 -9
  329. package/lib-next/types.js +0 -1
  330. package/src/theme/ApiDemoPanel/Body/json2xml.js +0 -43
  331. package/src/theme/ApiDemoPanel/CodeTabs/_CodeTabs.scss +0 -238
  332. package/src/theme/ApiDemoPanel/CodeTabs/index.js +0 -156
  333. package/src/theme/ApiDemoPanel/Curl/languages.json +0 -1386
  334. package/src/theme/ApiDemoPanel/Execute/index.tsx +0 -200
  335. package/src/theme/ApiDemoPanel/FormItem/_FormItem.scss +0 -12
  336. package/src/theme/ApiDemoPanel/FormMultiSelect/_FormMultiSelect.scss +0 -26
  337. package/src/theme/ApiDemoPanel/FormTextInput/_FormTextInput.scss +0 -15
  338. package/src/theme/ApiDemoPanel/FormTextInput/index.tsx +0 -32
  339. package/src/theme/ApiDemoPanel/LiveEditor/index.tsx +0 -73
  340. package/src/theme/ApiDemoPanel/MethodEndpoint/_MethodEndpoint.scss +0 -6
  341. package/src/theme/ApiDemoPanel/ParamOptions/index.tsx +0 -333
  342. package/src/theme/ApiDemoPanel/Request/_Request.scss +0 -48
  343. package/src/theme/ApiDemoPanel/Request/index.tsx +0 -69
  344. package/src/theme/ApiDemoPanel/Response/_Response.scss +0 -27
  345. package/src/theme/ApiDemoPanel/postman-collection.d.ts +0 -10
  346. package/src/theme/ApiDemoPanel/react-modal.d.ts +0 -8
  347. /package/{lib-next/theme/ApiDemoPanel → lib/theme/ApiExplorer}/Body/json2xml.js +0 -0
  348. /package/{lib-next/theme/ApiDemoPanel/Curl → lib/theme/ApiExplorer/CodeSnippets}/languages.json +0 -0
  349. /package/src/theme/{ApiDemoPanel → ApiExplorer}/Accept/slice.ts +0 -0
  350. /package/src/theme/{ApiDemoPanel → ApiExplorer}/Authorization/auth-types.ts +0 -0
  351. /package/{lib/theme/ApiDemoPanel → src/theme/ApiExplorer}/Body/json2xml.js +0 -0
  352. /package/src/theme/{ApiDemoPanel → ApiExplorer}/Body/slice.ts +0 -0
  353. /package/{lib/theme/ApiDemoPanel/Curl → src/theme/ApiExplorer/CodeSnippets}/languages.json +0 -0
  354. /package/src/theme/{ApiDemoPanel → ApiExplorer}/ContentType/slice.ts +0 -0
  355. /package/src/theme/{ApiDemoPanel → ApiExplorer}/Export/index.tsx +0 -0
  356. /package/src/theme/{ApiDemoPanel → ApiExplorer}/ParamOptions/slice.ts +0 -0
  357. /package/src/theme/{ApiDemoPanel → ApiExplorer}/Response/slice.ts +0 -0
  358. /package/src/theme/{ApiDemoPanel → ApiExplorer}/Server/slice.ts +0 -0
  359. /package/{lib-next/theme/ApiDemoPanel → src/theme/ApiExplorer}/postman-collection.d.ts +0 -0
  360. /package/{lib-next/theme/ApiDemoPanel → src/theme/ApiExplorer}/react-modal.d.ts +0 -0
  361. /package/src/theme/{ApiDemoPanel → ApiExplorer}/storage-utils.ts +0 -0
@@ -0,0 +1,165 @@
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 } from "react";
9
+
10
+ import { usePrismTheme } from "@docusaurus/theme-common";
11
+ import { translate } from "@docusaurus/Translate";
12
+ import Container from "@theme/ApiDemoPanel/ApiCodeBlock/Container";
13
+ import CopyButton from "@theme/ApiDemoPanel/ApiCodeBlock/CopyButton";
14
+ import ExitButton from "@theme/ApiDemoPanel/ApiCodeBlock/ExitButton";
15
+ import Line from "@theme/ApiDemoPanel/ApiCodeBlock/Line";
16
+ import clsx from "clsx";
17
+ import Highlight, { defaultProps } from "prism-react-renderer";
18
+ import Modal from "react-modal";
19
+
20
+ export default function ExpandButton({
21
+ code,
22
+ className,
23
+ language,
24
+ showLineNumbers,
25
+ blockClassName,
26
+ title,
27
+ lineClassNames,
28
+ }) {
29
+ const prismTheme = usePrismTheme();
30
+
31
+ function openModal() {
32
+ setIsOpen(true);
33
+ }
34
+
35
+ function closeModal() {
36
+ setIsOpen(false);
37
+ }
38
+
39
+ const [modalIsOpen, setIsOpen] = React.useState(false);
40
+
41
+ useEffect(() => {
42
+ Modal.setAppElement("body");
43
+ });
44
+
45
+ return (
46
+ <>
47
+ <button
48
+ type="button"
49
+ aria-label={
50
+ modalIsOpen
51
+ ? translate({
52
+ id: "theme.CodeBlock.expanded",
53
+ message: "Expanded",
54
+ description: "The expanded button label on code blocks",
55
+ })
56
+ : translate({
57
+ id: "theme.CodeBlock.expandButtonAriaLabel",
58
+ message: "Expand code to fullscreen",
59
+ description: "The ARIA label for expand code blocks button",
60
+ })
61
+ }
62
+ title={translate({
63
+ id: "theme.CodeBlock.expand",
64
+ message: "Expand",
65
+ description: "The expand button label on code blocks",
66
+ })}
67
+ className={clsx(
68
+ "clean-btn",
69
+ className,
70
+ "openapi-explorer__code-block-expand-btn",
71
+ modalIsOpen && "openapi-explorer__code-block-expand-btn--copied"
72
+ )}
73
+ onClick={openModal}
74
+ >
75
+ <span
76
+ className="openapi-explorer__code-block-expand-btn-icons"
77
+ aria-hidden="true"
78
+ >
79
+ <svg
80
+ className="openapi-explorer__code-block-expand-btn-icon"
81
+ viewBox="0 0 448 512"
82
+ >
83
+ <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" />
84
+ </svg>
85
+ <svg
86
+ className="openapi-explorer__code-block-expand-btn-icon--success"
87
+ viewBox="0 0 24 24"
88
+ >
89
+ <path d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z" />
90
+ </svg>
91
+ </span>
92
+ </button>
93
+ <Modal
94
+ className="openapi-explorer__expand-modal-content"
95
+ overlayClassName="openapi-explorer__expand-modal-overlay"
96
+ isOpen={modalIsOpen}
97
+ onRequestClose={closeModal}
98
+ contentLabel="Code Snippet"
99
+ >
100
+ <Container
101
+ as="div"
102
+ className={clsx(
103
+ "openapi-explorer__code-block-container",
104
+ language &&
105
+ !blockClassName.includes(`language-${language}`) &&
106
+ `language-${language}`
107
+ )}
108
+ >
109
+ {title && (
110
+ <div className="openapi-explorer__code-block-title">{title}</div>
111
+ )}
112
+ <div className="openapi-explorer__code-block-content">
113
+ <Highlight
114
+ {...defaultProps}
115
+ theme={prismTheme}
116
+ code={code}
117
+ language={language ?? "text"}
118
+ >
119
+ {({ className, tokens, getLineProps, getTokenProps }) => (
120
+ <pre
121
+ /* eslint-disable-next-line jsx-a11y/no-noninteractive-tabindex */
122
+ tabIndex={0}
123
+ className={clsx(
124
+ className,
125
+ "openapi-explorer__code-block",
126
+ "thin-scrollbar"
127
+ )}
128
+ >
129
+ <code
130
+ className={clsx(
131
+ "openapi-explorer__code-block-lines",
132
+ showLineNumbers &&
133
+ "openapi-explorer__code-block-lines-numbers"
134
+ )}
135
+ >
136
+ {tokens.map((line, i) => (
137
+ <Line
138
+ key={i}
139
+ line={line}
140
+ getLineProps={getLineProps}
141
+ getTokenProps={getTokenProps}
142
+ classNames={lineClassNames[i]}
143
+ showLineNumbers={showLineNumbers}
144
+ />
145
+ ))}
146
+ </code>
147
+ </pre>
148
+ )}
149
+ </Highlight>
150
+ <div className="openapi-explorer__code-block-btn-group">
151
+ <CopyButton
152
+ className="openapi-explorer__code-block-code-btn"
153
+ code={code}
154
+ />
155
+ <ExitButton
156
+ className="openapi-dmeo__code-block-code-btn"
157
+ handler={closeModal}
158
+ />
159
+ </div>
160
+ </div>
161
+ </Container>
162
+ </Modal>
163
+ </>
164
+ );
165
+ }
@@ -0,0 +1,46 @@
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
+ .theme-code-block-highlighted-line {
12
+ background-color: var(--docusaurus-highlighted-code-line-bg);
13
+ display: block;
14
+ margin: 0 calc(-1 * var(--ifm-pre-padding));
15
+ padding: 0 var(--ifm-pre-padding);
16
+ }
17
+
18
+ .openapi-explorer__code-block-code-line {
19
+ display: table-row;
20
+ counter-increment: line-count;
21
+ }
22
+
23
+ .openapi-explorer__code-block-code-line-number {
24
+ display: table-cell;
25
+ text-align: right;
26
+ width: 1%;
27
+ position: sticky;
28
+ left: 0;
29
+ padding: 0 var(--ifm-pre-padding);
30
+ background: var(--ifm-pre-background);
31
+ overflow-wrap: normal;
32
+ }
33
+
34
+ .openapi-explorer__code-block-code-line-number::before {
35
+ content: counter(line-count);
36
+ opacity: 0.4;
37
+ }
38
+
39
+ :global(.theme-code-block-highlighted-line)
40
+ .openapi-explorer__code-block-code-line-number::before {
41
+ opacity: 0.8;
42
+ }
43
+
44
+ .openapi-explorer__code-block-code-line-number {
45
+ padding-right: var(--ifm-pre-padding);
46
+ }
@@ -0,0 +1,3 @@
1
+ /// <reference types="react" />
2
+ declare function Accept(): JSX.Element | null;
3
+ export default Accept;
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ /* ============================================================================
3
+ * Copyright (c) Palo Alto Networks
4
+ *
5
+ * This source code is licensed under the MIT license found in the
6
+ * LICENSE file in the root directory of this source tree.
7
+ * ========================================================================== */
8
+ var __importDefault =
9
+ (this && this.__importDefault) ||
10
+ function (mod) {
11
+ return mod && mod.__esModule ? mod : { default: mod };
12
+ };
13
+ Object.defineProperty(exports, "__esModule", { value: true });
14
+ const react_1 = __importDefault(require("react"));
15
+ const FormItem_1 = __importDefault(require("@theme/ApiExplorer/FormItem"));
16
+ const FormSelect_1 = __importDefault(require("@theme/ApiExplorer/FormSelect"));
17
+ const hooks_1 = require("@theme/ApiItem/hooks");
18
+ const slice_1 = require("./slice");
19
+ function Accept() {
20
+ const value = (0, hooks_1.useTypedSelector)((state) => state.accept.value);
21
+ const options = (0, hooks_1.useTypedSelector)(
22
+ (state) => state.accept.options
23
+ );
24
+ const dispatch = (0, hooks_1.useTypedDispatch)();
25
+ if (options.length <= 1) {
26
+ return null;
27
+ }
28
+ return react_1.default.createElement(
29
+ FormItem_1.default,
30
+ { label: "Accept" },
31
+ react_1.default.createElement(FormSelect_1.default, {
32
+ value: value,
33
+ options: options,
34
+ onChange: (e) => dispatch((0, slice_1.setAccept)(e.target.value)),
35
+ })
36
+ );
37
+ }
38
+ exports.default = Accept;
@@ -0,0 +1,11 @@
1
+ import { PayloadAction } from "@reduxjs/toolkit";
2
+ export interface State {
3
+ value: string;
4
+ options: string[];
5
+ }
6
+ export declare const slice: import("@reduxjs/toolkit").Slice<State, {
7
+ setAccept: (state: import("immer/dist/internal").WritableDraft<State>, action: PayloadAction<string>) => void;
8
+ }, "accept">;
9
+ export declare const setAccept: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, "accept/setAccept">;
10
+ declare const _default: import("redux").Reducer<State, import("redux").AnyAction>;
11
+ export default _default;
@@ -1,13 +1,15 @@
1
+ "use strict";
1
2
  /* ============================================================================
2
3
  * Copyright (c) Palo Alto Networks
3
4
  *
4
5
  * This source code is licensed under the MIT license found in the
5
6
  * LICENSE file in the root directory of this source tree.
6
7
  * ========================================================================== */
7
-
8
- import { createSlice } from "@reduxjs/toolkit";
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.setAccept = exports.slice = void 0;
10
+ const toolkit_1 = require("@reduxjs/toolkit");
9
11
  const initialState = {};
10
- export const slice = createSlice({
12
+ exports.slice = (0, toolkit_1.createSlice)({
11
13
  name: "accept",
12
14
  initialState,
13
15
  reducers: {
@@ -16,5 +18,5 @@ export const slice = createSlice({
16
18
  },
17
19
  },
18
20
  });
19
- export const { setAccept } = slice.actions;
20
- export default slice.reducer;
21
+ exports.setAccept = exports.slice.actions.setAccept;
22
+ exports.default = exports.slice.reducer;
@@ -0,0 +1,7 @@
1
+ .openapi-explorer__code-block-container {
2
+ height: 100%;
3
+ background: var(--prism-background-color);
4
+ color: var(--prism-color);
5
+ margin-bottom: unset;
6
+ box-shadow: var(--ifm-global-shadow-lw);
7
+ }
@@ -0,0 +1,29 @@
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, usePrismTheme } from "@docusaurus/theme-common";
11
+ import { getPrismCssVariables } from "@docusaurus/theme-common/internal";
12
+ import clsx from "clsx";
13
+
14
+ export default function CodeBlockContainer({ as: As, ...props }) {
15
+ const prismTheme = usePrismTheme();
16
+ const prismCssVariables = getPrismCssVariables(prismTheme);
17
+ return (
18
+ <As
19
+ // Polymorphic components are hard to type, without `oneOf` generics
20
+ {...props}
21
+ style={prismCssVariables}
22
+ className={clsx(
23
+ "openapi-explorer__code-block-container",
24
+ props.className,
25
+ ThemeClassNames.common.codeBlock
26
+ )}
27
+ />
28
+ );
29
+ }
@@ -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
+ import React from "react";
9
+
10
+ import Container from "@theme/ApiExplorer/ApiCodeBlock/Container";
11
+ import clsx from "clsx";
12
+
13
+ // <pre> tags in markdown map to CodeBlocks. They may contain JSX children. When
14
+ // the children is not a simple string, we just return a styled block without
15
+ // actually highlighting.
16
+ export default function CodeBlockJSX({ children, className }) {
17
+ return (
18
+ <Container
19
+ as="pre"
20
+ tabIndex={0}
21
+ className={clsx(
22
+ "openapi-explorer__code-block-standalone",
23
+ "thin-scrollbar",
24
+ className
25
+ )}
26
+ >
27
+ <code className="openapi-explorer__code-block-lines">{children}</code>
28
+ </Container>
29
+ );
30
+ }
@@ -0,0 +1,134 @@
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 { useThemeConfig, usePrismTheme } from "@docusaurus/theme-common";
11
+ import {
12
+ parseCodeBlockTitle,
13
+ parseLanguage,
14
+ parseLines,
15
+ containsLineNumbers,
16
+ useCodeWordWrap,
17
+ } from "@docusaurus/theme-common/internal";
18
+ import Container from "@theme/ApiExplorer/ApiCodeBlock/Container";
19
+ import CopyButton from "@theme/ApiExplorer/ApiCodeBlock/CopyButton";
20
+ import ExpandButton from "@theme/ApiExplorer/ApiCodeBlock/ExpandButton";
21
+ import Line from "@theme/ApiExplorer/ApiCodeBlock/Line";
22
+ import WordWrapButton from "@theme/ApiExplorer/ApiCodeBlock/WordWrapButton";
23
+ import clsx from "clsx";
24
+ import Highlight, { defaultProps } from "prism-react-renderer";
25
+
26
+ export default function CodeBlockString({
27
+ children,
28
+ className: blockClassName = "",
29
+ metastring,
30
+ title: titleProp,
31
+ showLineNumbers: showLineNumbersProp,
32
+ language: languageProp,
33
+ }) {
34
+ const {
35
+ prism: { defaultLanguage, magicComments },
36
+ } = useThemeConfig();
37
+ const language =
38
+ languageProp ?? parseLanguage(blockClassName) ?? defaultLanguage;
39
+ const prismTheme = usePrismTheme();
40
+ const wordWrap = useCodeWordWrap();
41
+ // We still parse the metastring in case we want to support more syntax in the
42
+ // future. Note that MDX doesn't strip quotes when parsing metastring:
43
+ // "title=\"xyz\"" => title: "\"xyz\""
44
+ const title = parseCodeBlockTitle(metastring) || titleProp;
45
+ const { lineClassNames, code } = parseLines(children, {
46
+ metastring,
47
+ language,
48
+ magicComments,
49
+ });
50
+ const showLineNumbers =
51
+ showLineNumbersProp ?? containsLineNumbers(metastring);
52
+
53
+ return (
54
+ <Container
55
+ as="div"
56
+ className={clsx(
57
+ blockClassName,
58
+ language &&
59
+ !blockClassName.includes(`language-${language}`) &&
60
+ `language-${language}`
61
+ )}
62
+ >
63
+ {title && (
64
+ <div className="openapi-explorer__code-block-title">{title}</div>
65
+ )}
66
+ <div className="openapi-explorer__code-block-content">
67
+ <Highlight
68
+ {...defaultProps}
69
+ theme={prismTheme}
70
+ code={code}
71
+ language={language ?? "text"}
72
+ >
73
+ {({ className, tokens, getLineProps, getTokenProps }) => (
74
+ <pre
75
+ /* eslint-disable-next-line jsx-a11y/no-noninteractive-tabindex */
76
+ tabIndex={0}
77
+ ref={wordWrap.codeBlockRef}
78
+ className={clsx(
79
+ className,
80
+ "openapi-explorer__code-block",
81
+ "thin-scrollbar"
82
+ )}
83
+ >
84
+ <code
85
+ className={clsx(
86
+ "openapi-explorer__code-block-lines",
87
+ showLineNumbers &&
88
+ "openapi-explorer__code-block-lines-numbering"
89
+ )}
90
+ >
91
+ {tokens.map((line, i) => (
92
+ <Line
93
+ key={i}
94
+ line={line}
95
+ getLineProps={getLineProps}
96
+ getTokenProps={getTokenProps}
97
+ classNames={lineClassNames[i]}
98
+ showLineNumbers={showLineNumbers}
99
+ />
100
+ ))}
101
+ </code>
102
+ </pre>
103
+ )}
104
+ </Highlight>
105
+ <div className="openapi-explorer__code-block-btn-group">
106
+ {(wordWrap.isEnabled || wordWrap.isCodeScrollable) && (
107
+ <WordWrapButton
108
+ className="openapi-explorer__code-block-code-btn"
109
+ onClick={() => wordWrap.toggle()}
110
+ isEnabled={wordWrap.isEnabled}
111
+ />
112
+ )}
113
+ <CopyButton
114
+ className="openapi-explorer__code-block-code-btn"
115
+ code={code}
116
+ />
117
+ <ExpandButton
118
+ className={clsx(
119
+ "openapi-explorer__code-block-code-btn",
120
+ "openapi-explorer__expand-btn"
121
+ )}
122
+ code={code}
123
+ language={language}
124
+ showLineNumbers={showLineNumbers}
125
+ blockClassName={blockClassName}
126
+ title={title}
127
+ lineClassNames={lineClassNames}
128
+ wordWrap={wordWrap}
129
+ />
130
+ </div>
131
+ </div>
132
+ </Container>
133
+ );
134
+ }
@@ -0,0 +1,91 @@
1
+ .openapi-explorer__code-block-content {
2
+ height: 100%;
3
+ position: relative;
4
+ /* rtl:ignore */
5
+ direction: ltr;
6
+ border-radius: inherit;
7
+ }
8
+
9
+ .openapi-explorer__code-block-title {
10
+ border-bottom: 1px solid var(--ifm-color-emphasis-300);
11
+ font-size: var(--ifm-code-font-size);
12
+ font-weight: 500;
13
+ padding: 0.75rem var(--ifm-pre-padding);
14
+ border-top-left-radius: inherit;
15
+ border-top-right-radius: inherit;
16
+ }
17
+
18
+ .openapi-explorer__code-block {
19
+ height: 100%;
20
+ border-radius: var(--ifm-global-radius);
21
+ --ifm-pre-background: var(--prism-background-color);
22
+ margin: 0;
23
+ padding: 0;
24
+ }
25
+
26
+ .openapi-explorer__code-block-title
27
+ + .openapi-explorer__code-block-content
28
+ .openapi-explorer__code-block {
29
+ border-top-left-radius: 0;
30
+ border-top-right-radius: 0;
31
+ }
32
+
33
+ .openapi-explorer__code-block-standalone {
34
+ padding: 0;
35
+ }
36
+
37
+ .openapi-explorer__code-block-lines {
38
+ font: inherit;
39
+ /* rtl:ignore */
40
+ float: left;
41
+ min-width: 100%;
42
+ padding: var(--ifm-pre-padding);
43
+ }
44
+
45
+ .openapi-explorer__code-block-lines-numbering {
46
+ // This causes max-height to unset
47
+ // display: table;
48
+ padding: var(--ifm-pre-padding) 0;
49
+ }
50
+
51
+ @media print {
52
+ .openapi-explorer__code-block-lines {
53
+ white-space: pre-wrap;
54
+ }
55
+ }
56
+
57
+ .openapi-explorer__code-block-btn-group {
58
+ display: flex;
59
+ column-gap: 0.2rem;
60
+ position: absolute;
61
+ right: calc(var(--ifm-pre-padding) / 2);
62
+ top: calc(var(--ifm-pre-padding) / 2);
63
+ }
64
+
65
+ .openapi-explorer__code-block-btn-group button {
66
+ display: flex;
67
+ align-items: center;
68
+ background: var(--prism-background-color);
69
+ color: var(--prism-color);
70
+ border: 1px solid var(--ifm-color-emphasis-300);
71
+ border-radius: var(--ifm-global-radius);
72
+ padding: 0.4rem;
73
+ line-height: 0;
74
+ transition: opacity 200ms ease-in-out;
75
+ opacity: 0;
76
+ }
77
+
78
+ .openapi-explorer__code-block-btn-group button:focus-visible,
79
+ .openapi-explorer__code-block-btn-group button:hover {
80
+ opacity: 1 !important;
81
+ }
82
+
83
+ .theme-code-block:hover .openapi-explorer__code-block-btn-group button {
84
+ opacity: 0.4;
85
+ }
86
+
87
+ @media screen and (max-width: 996px) {
88
+ .openapi-explorer__expand-btn {
89
+ display: none !important;
90
+ }
91
+ }
@@ -0,0 +1,44 @@
1
+ .theme-code-block:hover {
2
+ .openapi-explorer__code-block-copy-btn--copied {
3
+ opacity: 1 !important;
4
+ }
5
+ }
6
+
7
+ .openapi-explorer__code-block-copy-btn-icons {
8
+ position: relative;
9
+ width: 1.125rem;
10
+ height: 1.125rem;
11
+ }
12
+
13
+ .openapi-explorer__code-block-copy-btn-icon,
14
+ .openapi-explorer__code-block-copy-btn-icon--success {
15
+ position: absolute;
16
+ top: 0;
17
+ left: 0;
18
+ fill: currentColor;
19
+ opacity: inherit;
20
+ width: inherit;
21
+ height: inherit;
22
+ transition: all 0.15s ease;
23
+ }
24
+
25
+ .openapi-explorer__code-block-copy-btn-icon--success {
26
+ top: 50%;
27
+ left: 50%;
28
+ transform: translate(-50%, -50%) scale(0.33);
29
+ opacity: 0;
30
+ color: #00d600;
31
+ }
32
+
33
+ .openapi-explorer__code-block-copy-btn--copied {
34
+ .openapi-explorer__code-block-copy-btn-icon {
35
+ transform: scale(0.33);
36
+ opacity: 0;
37
+ }
38
+
39
+ .openapi-explorer__code-block-copy-btn-icon--success {
40
+ transform: translate(-50%, -50%) scale(1);
41
+ opacity: 1;
42
+ transition-delay: 0.075s;
43
+ }
44
+ }