@redocly/openapi-docs 3.0.0-alpha.13 → 3.0.0-alpha.14

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 (952) hide show
  1. package/dist/console.redocly-openapi-docs.min.js +507 -0
  2. package/dist/oauth2-redirect.js +3 -3
  3. package/dist/redocly-openapi-docs.min.js +6792 -0
  4. package/lib/components/ApiInfo/ApiInfo.d.ts +1 -4
  5. package/lib/components/ApiInfo/ApiInfo.js +1 -1
  6. package/lib/components/ApiInfo/index.d.ts +0 -1
  7. package/lib/components/ApiInfo/styled.d.ts +3 -1
  8. package/lib/components/ApiInfo/styled.js +1 -1
  9. package/lib/components/ApiInfo/types.d.ts +9 -4
  10. package/lib/components/CallbackSamples/CallbackSamples.d.ts +2 -3
  11. package/lib/components/CallbackSamples/CallbackSamples.js +1 -1
  12. package/lib/components/Callbacks/CallbackDetails.d.ts +1 -1
  13. package/lib/components/Callbacks/CallbackDetails.js +1 -1
  14. package/lib/components/Callbacks/CallbackOperation.js +1 -1
  15. package/lib/components/Callbacks/CallbacksList.js +1 -1
  16. package/lib/components/ChangeViewButton/ChangeViewButton.d.ts +1 -0
  17. package/lib/components/ChangeViewButton/ChangeViewButton.js +2 -0
  18. package/lib/components/ChangeViewButton/index.d.ts +1 -0
  19. package/lib/components/ChangeViewButton/index.js +2 -0
  20. package/lib/components/ChangeViewButton/styled.d.ts +3 -0
  21. package/lib/components/ChangeViewButton/styled.js +18 -0
  22. package/lib/components/ContentItem/ContentItem.d.ts +6 -6
  23. package/lib/components/ContentItem/ContentItem.js +1 -1
  24. package/lib/components/ContentItems/ContentItems.d.ts +10 -4
  25. package/lib/components/ContentItems/ContentItems.js +1 -1
  26. package/lib/components/ContentItems/helpers.d.ts +11 -0
  27. package/lib/components/ContentItems/helpers.js +2 -0
  28. package/lib/components/ContentItems/useAutoScroll.d.ts +1 -0
  29. package/lib/components/ContentItems/useAutoScroll.js +2 -0
  30. package/lib/components/DiscriminatorDropdown/DiscriminatorDropdown.d.ts +2 -2
  31. package/lib/components/DiscriminatorDropdown/DiscriminatorDropdown.js +1 -1
  32. package/lib/components/Download/DownloadButtonWithLabel.d.ts +3 -4
  33. package/lib/components/Download/DownloadButtonWithLabel.js +1 -1
  34. package/lib/components/Download/types.d.ts +12 -0
  35. package/lib/components/Download/useDownloadInfo.d.ts +2 -0
  36. package/lib/components/Download/useDownloadInfo.js +2 -0
  37. package/lib/components/Endpoint/Endpoint.js +1 -1
  38. package/lib/components/Endpoint/ServerList.js +1 -1
  39. package/lib/components/ExternalDocumentation/ExternalDocumentation.d.ts +2 -2
  40. package/lib/components/ExternalDocumentation/ExternalDocumentation.js +2 -2
  41. package/lib/components/Fields/DescriptionEnums.js +1 -1
  42. package/lib/components/Fields/EnumValues.js +1 -1
  43. package/lib/components/Fields/Examples.js +1 -1
  44. package/lib/components/Fields/Extensions.js +2 -2
  45. package/lib/components/Fields/Field.d.ts +3 -2
  46. package/lib/components/Fields/Field.js +1 -1
  47. package/lib/components/Fields/FieldDetails.d.ts +2 -3
  48. package/lib/components/Fields/FieldDetails.js +1 -1
  49. package/lib/components/Fields/SimpleEnums.js +1 -1
  50. package/lib/components/Fields/types.d.ts +0 -1
  51. package/lib/components/GenericChildrenSwitcher/GenericChildrenSwitcher.js +1 -1
  52. package/lib/components/Markdown/Markdown.d.ts +1 -1
  53. package/lib/components/Markdown/Markdown.js +1 -1
  54. package/lib/components/Markdown/index.d.ts +0 -2
  55. package/lib/components/Markdown/index.js +1 -1
  56. package/lib/components/Markdown/styled.js +1 -3
  57. package/lib/components/Markdown/types.d.ts +5 -13
  58. package/lib/components/MediaTypeSwitch/MediaTypesSwitch.d.ts +2 -2
  59. package/lib/components/MediaTypeSwitch/MediaTypesSwitch.js +1 -1
  60. package/lib/components/NextSectionButton/NextSectionButton.d.ts +8 -0
  61. package/lib/components/NextSectionButton/NextSectionButton.js +2 -0
  62. package/lib/components/NextSectionButton/index.d.ts +1 -0
  63. package/lib/components/NextSectionButton/index.js +2 -0
  64. package/lib/components/NextSectionButton/styled.d.ts +1 -0
  65. package/lib/components/NextSectionButton/styled.js +18 -0
  66. package/lib/components/OperationItem/OperationItem.d.ts +3 -0
  67. package/lib/components/OperationItem/OperationItem.js +9 -0
  68. package/lib/components/OperationItem/index.d.ts +2 -0
  69. package/lib/components/OperationItem/index.js +2 -0
  70. package/lib/components/OperationItem/types.d.ts +4 -0
  71. package/lib/components/{Operation → OperationItem}/types.js +0 -0
  72. package/lib/components/Overlay.d.ts +2 -7
  73. package/lib/components/Overlay.js +1 -1
  74. package/lib/components/Panel/ResponsePanel.js +2 -2
  75. package/lib/components/Parameters/BodyContent.d.ts +3 -2
  76. package/lib/components/Parameters/BodyContent.js +1 -1
  77. package/lib/components/Parameters/ParametersGroup.js +1 -1
  78. package/lib/components/PayloadSamples/MediaTypeSamples.d.ts +2 -3
  79. package/lib/components/PayloadSamples/MediaTypeSamples.js +1 -1
  80. package/lib/components/PayloadSamples/PayloadSamples.d.ts +2 -3
  81. package/lib/components/PayloadSamples/PayloadSamples.js +1 -1
  82. package/lib/components/PayloadSamples/types.d.ts +1 -2
  83. package/lib/components/PayloadSamples/useExternalExample.js +1 -1
  84. package/lib/components/RedoclyOpenAPIDocs/Providers.d.ts +6 -0
  85. package/lib/components/RedoclyOpenAPIDocs/Providers.js +2 -0
  86. package/lib/components/RedoclyOpenAPIDocs/RedoclyOpenAPIDocs.d.ts +4 -0
  87. package/lib/components/RedoclyOpenAPIDocs/RedoclyOpenAPIDocs.js +2 -0
  88. package/lib/components/RedoclyOpenAPIDocs/RedoclyOpenAPIDocsMultiStandalone.d.ts +2 -0
  89. package/lib/components/RedoclyOpenAPIDocs/RedoclyOpenAPIDocsMultiStandalone.js +2 -0
  90. package/lib/components/RedoclyOpenAPIDocs/index.d.ts +5 -0
  91. package/lib/components/RedoclyOpenAPIDocs/index.js +2 -0
  92. package/lib/components/RedoclyOpenAPIDocs/styled.d.ts +13 -0
  93. package/lib/components/RedoclyOpenAPIDocs/styled.js +170 -0
  94. package/lib/components/RedoclyOpenAPIDocs/types.d.ts +63 -0
  95. package/lib/components/{types.js → RedoclyOpenAPIDocs/types.js} +0 -0
  96. package/lib/components/RedoclyOpenAPIDocs/utils.d.ts +10 -0
  97. package/lib/components/RedoclyOpenAPIDocs/utils.js +2 -0
  98. package/lib/components/RequestSamples/CodeSample.d.ts +1 -1
  99. package/lib/components/RequestSamples/CodeSample.js +1 -1
  100. package/lib/components/RequestSamples/Example.d.ts +2 -2
  101. package/lib/components/RequestSamples/Example.js +1 -1
  102. package/lib/components/RequestSamples/RequestSamples.d.ts +1 -1
  103. package/lib/components/RequestSamples/RequestSamples.js +1 -1
  104. package/lib/components/ResponseSamples/ResponseSamples.d.ts +4 -1
  105. package/lib/components/ResponseSamples/ResponseSamples.js +1 -1
  106. package/lib/components/Responses/Response.d.ts +1 -3
  107. package/lib/components/Responses/Response.js +1 -1
  108. package/lib/components/Responses/ResponseSummary.js +14 -1
  109. package/lib/components/Responses/styled.js +2 -2
  110. package/lib/components/Samples/SamplesTabs.d.ts +3 -2
  111. package/lib/components/Samples/SamplesTabs.js +1 -1
  112. package/lib/components/Samples/use-example-key.d.ts +1 -1
  113. package/lib/components/Samples/use-example-key.js +1 -1
  114. package/lib/components/Schema/ObjectSchema.d.ts +1 -1
  115. package/lib/components/Schema/ObjectSchema.js +1 -1
  116. package/lib/components/Schema/OneOfSchema.d.ts +1 -1
  117. package/lib/components/Schema/OneOfSchema.js +1 -1
  118. package/lib/components/Schema/RecursiveSchema.d.ts +1 -1
  119. package/lib/components/Schema/RecursiveSchema.js +1 -1
  120. package/lib/components/Schema/Schema.d.ts +1 -1
  121. package/lib/components/Schema/Schema.js +1 -1
  122. package/lib/components/SchemaDefinition/SchemaDefinition.d.ts +1 -7
  123. package/lib/components/SchemaDefinition/SchemaDefinition.js +1 -1
  124. package/lib/components/Search/MenuItemSearch.d.ts +2 -0
  125. package/lib/components/Search/MenuItemSearch.js +2 -0
  126. package/lib/components/Search/Search.d.ts +3 -0
  127. package/lib/components/Search/Search.js +2 -0
  128. package/lib/components/Search/SearchBox.d.ts +2 -8
  129. package/lib/components/Search/SearchBox.js +1 -1
  130. package/lib/components/Search/index.d.ts +1 -0
  131. package/lib/components/Search/index.js +1 -1
  132. package/lib/components/Search/types.d.ts +11 -8
  133. package/lib/components/Search/utils.js +1 -1
  134. package/lib/components/SectionContent/SectionContent.d.ts +15 -0
  135. package/lib/components/SectionContent/SectionContent.js +2 -0
  136. package/lib/components/SectionContent/index.d.ts +1 -0
  137. package/lib/components/SectionContent/index.js +2 -0
  138. package/lib/components/SectionItem/SectionItem.d.ts +2 -3
  139. package/lib/components/SectionItem/SectionItem.js +1 -1
  140. package/lib/components/SecurityRequirement/PanelDescription.d.ts +1 -6
  141. package/lib/components/SecurityRequirement/RequirementElement.d.ts +2 -7
  142. package/lib/components/SecurityRequirement/RequirementElement.js +3 -3
  143. package/lib/components/SecurityRequirement/SecurityDefs.d.ts +1 -7
  144. package/lib/components/SecurityRequirement/SecurityDefs.js +1 -1
  145. package/lib/components/SecurityRequirement/SecurityRequirement.d.ts +3 -6
  146. package/lib/components/SecurityRequirement/SecurityRequirement.js +1 -1
  147. package/lib/components/SecurityRequirement/constants.d.ts +6 -6
  148. package/lib/components/SecurityRequirement/constants.js +1 -1
  149. package/lib/components/SecurityRequirement/types.d.ts +19 -0
  150. package/lib/components/SecurityRequirement/types.js +2 -0
  151. package/lib/components/SecurityRequirement/useSecurityRequirements.d.ts +3 -0
  152. package/lib/components/SecurityRequirement/useSecurityRequirements.js +2 -0
  153. package/lib/components/SecuritySchemes/OAuthFlow.d.ts +3 -0
  154. package/lib/components/SecuritySchemes/OAuthFlow.js +2 -0
  155. package/lib/components/SecuritySchemes/helpers.d.ts +1 -1
  156. package/lib/components/SecuritySchemes/index.d.ts +1 -1
  157. package/lib/components/SecuritySchemes/index.js +1 -1
  158. package/lib/components/SecuritySchemes/types.d.ts +0 -1
  159. package/lib/components/SideMenu/MenuItem.d.ts +7 -5
  160. package/lib/components/SideMenu/MenuItem.js +1 -1
  161. package/lib/components/SideMenu/MenuItemEternalLink.d.ts +1 -2
  162. package/lib/components/SideMenu/MenuItemEternalLink.js +1 -1
  163. package/lib/components/SideMenu/MenuItemLink.d.ts +3 -0
  164. package/lib/components/SideMenu/MenuItemLink.js +2 -0
  165. package/lib/components/SideMenu/MenuItems.d.ts +2 -1
  166. package/lib/components/SideMenu/MenuItems.js +1 -1
  167. package/lib/components/SideMenu/MenuOperationItemContent.d.ts +5 -3
  168. package/lib/components/SideMenu/MenuOperationItemContent.js +2 -2
  169. package/lib/components/SideMenu/SideMenu.d.ts +8 -5
  170. package/lib/components/SideMenu/SideMenu.js +1 -1
  171. package/lib/components/SideMenu/styled.d.ts +10 -5
  172. package/lib/components/SideMenu/styled.js +12 -12
  173. package/lib/components/SideMenu/types.d.ts +10 -4
  174. package/lib/components/SideMenu/useMenuItemLink.d.ts +18 -0
  175. package/lib/components/SideMenu/useMenuItemLink.js +2 -0
  176. package/lib/components/StickySidebar/StickyResponsiveSidebar.d.ts +4 -6
  177. package/lib/components/StickySidebar/StickyResponsiveSidebar.js +2 -3
  178. package/lib/components/Tabs/CollapsingTabs/CollapsingTabs.d.ts +2 -1
  179. package/lib/components/Tabs/CollapsingTabs/CollapsingTabs.js +1 -1
  180. package/lib/components/Tabs/CollapsingTabs/CollapsingTabsBase.d.ts +1 -1
  181. package/lib/components/Tabs/CollapsingTabs/CollapsingTabsBase.js +1 -1
  182. package/lib/components/TagItem/TagItem.d.ts +2 -0
  183. package/lib/components/TagItem/TagItem.js +2 -0
  184. package/lib/components/TagItem/index.d.ts +1 -0
  185. package/lib/components/TagItem/index.js +2 -0
  186. package/lib/components/TagItems/TagItems.d.ts +13 -0
  187. package/lib/components/TagItems/TagItems.js +2 -0
  188. package/lib/components/TagItems/index.d.ts +1 -0
  189. package/lib/components/TagItems/index.js +2 -0
  190. package/lib/components/ToggleRightPanelButton/ToggleRightPanelButton.d.ts +1 -0
  191. package/lib/components/ToggleRightPanelButton/ToggleRightPanelButton.js +2 -0
  192. package/lib/components/ToggleRightPanelButton/index.d.ts +1 -0
  193. package/lib/components/ToggleRightPanelButton/index.js +2 -0
  194. package/lib/components/ToggleRightPanelButton/styled.d.ts +3 -0
  195. package/lib/components/ToggleRightPanelButton/styled.js +17 -0
  196. package/lib/components/VersionSwitcher.d.ts +4 -3
  197. package/lib/components/VersionSwitcher.js +1 -1
  198. package/lib/components/common/Dropdown/Dropdown.js +2 -2
  199. package/lib/components/common/Fields/fields-layout.d.ts +0 -1
  200. package/lib/components/common/Fields/fields-layout.js +1 -6
  201. package/lib/components/common/LinkToField.d.ts +11 -2
  202. package/lib/components/common/LinkToField.js +9 -22
  203. package/lib/components/common/Portal/Portal.d.ts +6 -0
  204. package/lib/components/common/Portal/Portal.js +2 -0
  205. package/lib/components/common/Portal/index.d.ts +1 -0
  206. package/lib/components/common/Portal/index.js +2 -0
  207. package/lib/components/{ContentItems → common/Skeleton}/Skeleton.d.ts +0 -0
  208. package/lib/components/{ContentItems → common/Skeleton}/Skeleton.js +2 -2
  209. package/lib/components/common/Skeleton/index.d.ts +1 -0
  210. package/lib/components/common/Skeleton/index.js +2 -0
  211. package/lib/components/common/headers.d.ts +0 -6
  212. package/lib/components/common/headers.js +1 -25
  213. package/lib/components/common/index.d.ts +4 -2
  214. package/lib/components/common/index.js +1 -1
  215. package/lib/components/common/linkify.d.ts +3 -7
  216. package/lib/components/common/linkify.js +6 -51
  217. package/lib/components/common/panels.js +7 -4
  218. package/lib/components/common/perfect-scrollbar.js +2 -2
  219. package/lib/components/icons/LockIcon.d.ts +1 -1
  220. package/lib/components/icons/Spinner.d.ts +1 -1
  221. package/lib/components/index.d.ts +8 -9
  222. package/lib/components/index.js +1 -1
  223. package/lib/components/pluggable/PullRight.d.ts +3 -2
  224. package/lib/components/pluggable/PullRight.js +1 -55
  225. package/lib/components/pluggable/RedocExample.d.ts +1 -3
  226. package/lib/components/pluggable/RedocExample.js +1 -1
  227. package/lib/components/pluggable/RedocRequestBody.d.ts +1 -3
  228. package/lib/components/pluggable/RedocRequestBody.js +1 -1
  229. package/lib/components/pluggable/RedocResponse.d.ts +1 -3
  230. package/lib/components/pluggable/RedocResponse.js +1 -1
  231. package/lib/components/pluggable/RedocSchema.d.ts +1 -3
  232. package/lib/components/pluggable/RedocSchema.js +1 -1
  233. package/lib/components/rightPanel/CodemirrorInput/CodemirrorInput.js +1 -1
  234. package/lib/components/rightPanel/CodemirrorInput/helpers.d.ts +1 -10
  235. package/lib/components/rightPanel/CodemirrorInput/helpers.js +1 -1
  236. package/lib/components/rightPanel/Console/Console.d.ts +2 -2
  237. package/lib/components/rightPanel/Console/Console.js +1 -1
  238. package/lib/components/rightPanel/Console/ConsoleLazy.js +1 -1
  239. package/lib/components/rightPanel/Console/ConsoleWrapper.d.ts +5 -2
  240. package/lib/components/rightPanel/Console/ConsoleWrapper.js +1 -1
  241. package/lib/components/rightPanel/Console/Request.d.ts +3 -12
  242. package/lib/components/rightPanel/Console/Request.js +1 -1
  243. package/lib/components/rightPanel/Console/types.d.ts +14 -3
  244. package/lib/components/rightPanel/OAuth2Flow/OAuth2Flow.js +1 -1
  245. package/lib/components/rightPanel/OpenIDConnect.d.ts +2 -2
  246. package/lib/components/rightPanel/RequestBody/Body.d.ts +1 -1
  247. package/lib/components/rightPanel/RequestBody/Body.js +1 -1
  248. package/lib/components/rightPanel/RequestBody/RequestBody.d.ts +1 -1
  249. package/lib/components/rightPanel/RequestBody/RequestBody.js +1 -1
  250. package/lib/components/rightPanel/RequestBody/types.d.ts +1 -0
  251. package/lib/components/rightPanel/RequestBodyForm.d.ts +6 -3
  252. package/lib/components/rightPanel/RequestBodyForm.js +1 -1
  253. package/lib/components/rightPanel/ResponseHeadersList.js +1 -1
  254. package/lib/components/rightPanel/ServerVariable.d.ts +1 -1
  255. package/lib/components/rightPanel/ServerVariable.js +1 -1
  256. package/lib/components/rightPanel/ServersDropdown/ServersDropdown.d.ts +2 -1
  257. package/lib/components/rightPanel/ServersDropdown/ServersDropdown.js +1 -1
  258. package/lib/components/rightPanel/utils.d.ts +3 -2
  259. package/lib/components/rightPanel/utils.js +1 -1
  260. package/lib/constants.d.ts +0 -2
  261. package/lib/constants.js +1 -1
  262. package/lib/events/codeSampleCopy.js +1 -1
  263. package/lib/events/types.d.ts +2 -2
  264. package/lib/hoc/types.d.ts +38 -0
  265. package/lib/hoc/types.js +2 -0
  266. package/lib/hoc/utils.d.ts +2 -0
  267. package/lib/hoc/utils.js +2 -0
  268. package/lib/hoc/withRouter.d.ts +3 -0
  269. package/lib/hoc/withRouter.js +2 -0
  270. package/lib/hooks/index.d.ts +4 -0
  271. package/lib/hooks/index.js +1 -1
  272. package/lib/hooks/useActivateExample.d.ts +2 -0
  273. package/lib/hooks/useActivateExample.js +2 -0
  274. package/lib/hooks/useContentItems.d.ts +12 -0
  275. package/lib/hooks/useContentItems.js +2 -0
  276. package/lib/hooks/useLicense.d.ts +5 -0
  277. package/lib/hooks/useLicense.js +2 -0
  278. package/lib/hooks/useRouter.d.ts +11 -0
  279. package/lib/hooks/useRouter.js +2 -0
  280. package/lib/index.d.ts +2 -1
  281. package/lib/index.js +1 -1
  282. package/lib/models/callback.d.ts +5 -0
  283. package/lib/models/callback.js +2 -0
  284. package/lib/models/example.d.ts +10 -0
  285. package/lib/models/example.js +2 -0
  286. package/lib/models/field.d.ts +7 -0
  287. package/lib/models/field.js +2 -0
  288. package/lib/models/group.d.ts +4 -0
  289. package/lib/models/group.js +2 -0
  290. package/lib/models/index.d.ts +13 -14
  291. package/lib/models/index.js +1 -1
  292. package/lib/models/mediaContent.d.ts +7 -0
  293. package/lib/models/mediaContent.js +2 -0
  294. package/lib/models/mediaType.d.ts +20 -0
  295. package/lib/models/mediaType.js +2 -0
  296. package/lib/models/operation.d.ts +18 -0
  297. package/lib/models/operation.js +2 -0
  298. package/lib/models/request.d.ts +12 -0
  299. package/lib/models/request.js +2 -0
  300. package/lib/models/response.d.ts +15 -0
  301. package/lib/models/response.js +2 -0
  302. package/lib/models/schema.d.ts +14 -0
  303. package/lib/models/schema.js +2 -0
  304. package/lib/models/security.d.ts +13 -0
  305. package/lib/models/security.js +2 -0
  306. package/lib/models/types.d.ts +233 -3
  307. package/lib/recoil/app.d.ts +32 -0
  308. package/lib/recoil/app.js +2 -0
  309. package/lib/recoil/operation.d.ts +11 -0
  310. package/lib/recoil/operation.js +2 -0
  311. package/lib/recoil/store.d.ts +19 -0
  312. package/lib/recoil/store.js +2 -0
  313. package/lib/services/OpenAPIParser.d.ts +1 -1
  314. package/lib/services/OpenAPIParser.js +1 -1
  315. package/lib/services/Options/index.d.ts +1 -1
  316. package/lib/services/Options/index.js +1 -1
  317. package/lib/services/Options/{NormalizedOptions.d.ts → normalizeOptions.d.ts} +1 -1
  318. package/lib/services/Options/normalizeOptions.js +2 -0
  319. package/lib/services/Options/types.d.ts +31 -15
  320. package/lib/services/code-samples/generator.js +1 -1
  321. package/lib/services/code-samples/httpsnippet/targets/index.d.ts +1 -1
  322. package/lib/services/code-samples/httpsnippet/targets/javascript/index.d.ts +1 -1
  323. package/lib/services/code-samples/httpsnippet/targets/shell/curl.d.ts +2 -2
  324. package/lib/services/code-samples/types.d.ts +2 -2
  325. package/lib/services/history/helpers.d.ts +1 -1
  326. package/lib/services/history/helpers.js +1 -1
  327. package/lib/services/history/index.d.ts +1 -4
  328. package/lib/services/history/index.js +1 -1
  329. package/lib/services/index.d.ts +2 -7
  330. package/lib/services/index.js +1 -1
  331. package/lib/services/menu/builder.d.ts +9 -0
  332. package/lib/services/menu/builder.js +2 -0
  333. package/lib/services/menu/helpers.d.ts +6 -0
  334. package/lib/services/menu/helpers.js +2 -0
  335. package/lib/services/menu/index.d.ts +1 -0
  336. package/lib/services/menu/index.js +2 -0
  337. package/lib/services/menu/markdown.d.ts +11 -0
  338. package/lib/services/menu/markdown.js +2 -0
  339. package/lib/services/menu/operation.d.ts +13 -0
  340. package/lib/services/menu/operation.js +2 -0
  341. package/lib/services/menu/tags.d.ts +27 -0
  342. package/lib/services/menu/tags.js +2 -0
  343. package/lib/services/search/DeepSearchStore.d.ts +3 -3
  344. package/lib/services/search/DeepSearchStore.js +1 -1
  345. package/lib/services/search/SearchStore.d.ts +1 -1
  346. package/lib/services/search/useSearch.d.ts +13 -0
  347. package/lib/services/search/useSearch.js +2 -0
  348. package/lib/services/types.d.ts +42 -91
  349. package/lib/services/types.js +1 -1
  350. package/lib/services/utils.d.ts +1 -0
  351. package/lib/services/utils.js +1 -1
  352. package/lib/standalone.d.ts +5 -5
  353. package/lib/standalone.js +1 -1
  354. package/lib/testProviders.d.ts +2 -2
  355. package/lib/testProviders.js +1 -1
  356. package/lib/types/app.d.ts +1 -0
  357. package/lib/types/app.js +2 -0
  358. package/lib/types/index.d.ts +1 -0
  359. package/lib/types/index.js +1 -1
  360. package/lib/types/open-api.d.ts +15 -15
  361. package/lib/utils/compose.d.ts +1 -0
  362. package/lib/utils/compose.js +2 -0
  363. package/lib/utils/helpers.d.ts +2 -1
  364. package/lib/utils/helpers.js +1 -1
  365. package/lib/utils/index.d.ts +3 -2
  366. package/lib/utils/index.js +1 -1
  367. package/lib/utils/local-storage.js +1 -1
  368. package/lib/utils/openapi.d.ts +11 -7
  369. package/lib/utils/openapi.js +1 -1
  370. package/lib/utils/saveTextBeforeHeading.d.ts +1 -0
  371. package/lib/utils/saveTextBeforeHeading.js +2 -0
  372. package/lib/utils/typeGuards.d.ts +3 -0
  373. package/lib/utils/typeGuards.js +2 -0
  374. package/lib-esm/components/ApiInfo/ApiInfo.d.ts +1 -4
  375. package/lib-esm/components/ApiInfo/ApiInfo.js +1 -1
  376. package/lib-esm/components/ApiInfo/index.d.ts +0 -1
  377. package/lib-esm/components/ApiInfo/styled.d.ts +3 -1
  378. package/lib-esm/components/ApiInfo/styled.js +1 -1
  379. package/lib-esm/components/ApiInfo/types.d.ts +9 -4
  380. package/lib-esm/components/CallbackSamples/CallbackSamples.d.ts +2 -3
  381. package/lib-esm/components/CallbackSamples/CallbackSamples.js +1 -1
  382. package/lib-esm/components/Callbacks/CallbackDetails.d.ts +1 -1
  383. package/lib-esm/components/Callbacks/CallbackDetails.js +1 -1
  384. package/lib-esm/components/Callbacks/CallbackOperation.js +1 -1
  385. package/lib-esm/components/Callbacks/CallbacksList.js +1 -1
  386. package/lib-esm/components/ChangeViewButton/ChangeViewButton.d.ts +1 -0
  387. package/lib-esm/components/ChangeViewButton/ChangeViewButton.js +2 -0
  388. package/lib-esm/components/ChangeViewButton/index.d.ts +1 -0
  389. package/lib-esm/components/ChangeViewButton/index.js +2 -0
  390. package/lib-esm/components/ChangeViewButton/styled.d.ts +3 -0
  391. package/lib-esm/components/ChangeViewButton/styled.js +18 -0
  392. package/lib-esm/components/ContentItem/ContentItem.d.ts +6 -6
  393. package/lib-esm/components/ContentItem/ContentItem.js +1 -1
  394. package/lib-esm/components/ContentItems/ContentItems.d.ts +10 -4
  395. package/lib-esm/components/ContentItems/ContentItems.js +1 -1
  396. package/lib-esm/components/ContentItems/helpers.d.ts +11 -0
  397. package/lib-esm/components/ContentItems/helpers.js +2 -0
  398. package/lib-esm/components/ContentItems/useAutoScroll.d.ts +1 -0
  399. package/lib-esm/components/ContentItems/useAutoScroll.js +2 -0
  400. package/lib-esm/components/DiscriminatorDropdown/DiscriminatorDropdown.d.ts +2 -2
  401. package/lib-esm/components/DiscriminatorDropdown/DiscriminatorDropdown.js +1 -1
  402. package/lib-esm/components/Download/DownloadButtonWithLabel.d.ts +3 -4
  403. package/lib-esm/components/Download/DownloadButtonWithLabel.js +1 -1
  404. package/lib-esm/components/Download/types.d.ts +12 -0
  405. package/lib-esm/components/Download/useDownloadInfo.d.ts +2 -0
  406. package/lib-esm/components/Download/useDownloadInfo.js +2 -0
  407. package/lib-esm/components/Endpoint/Endpoint.js +1 -1
  408. package/lib-esm/components/Endpoint/ServerList.js +1 -1
  409. package/lib-esm/components/ExternalDocumentation/ExternalDocumentation.d.ts +2 -2
  410. package/lib-esm/components/ExternalDocumentation/ExternalDocumentation.js +3 -3
  411. package/lib-esm/components/Fields/DescriptionEnums.js +1 -1
  412. package/lib-esm/components/Fields/EnumValues.js +1 -1
  413. package/lib-esm/components/Fields/Examples.js +1 -1
  414. package/lib-esm/components/Fields/Extensions.js +2 -2
  415. package/lib-esm/components/Fields/Field.d.ts +3 -2
  416. package/lib-esm/components/Fields/Field.js +1 -1
  417. package/lib-esm/components/Fields/FieldDetails.d.ts +2 -3
  418. package/lib-esm/components/Fields/FieldDetails.js +1 -1
  419. package/lib-esm/components/Fields/SimpleEnums.js +1 -1
  420. package/lib-esm/components/Fields/types.d.ts +0 -1
  421. package/lib-esm/components/GenericChildrenSwitcher/GenericChildrenSwitcher.js +1 -1
  422. package/lib-esm/components/Markdown/Markdown.d.ts +1 -1
  423. package/lib-esm/components/Markdown/Markdown.js +1 -1
  424. package/lib-esm/components/Markdown/index.d.ts +0 -2
  425. package/lib-esm/components/Markdown/index.js +1 -1
  426. package/lib-esm/components/Markdown/styled.js +1 -3
  427. package/lib-esm/components/Markdown/types.d.ts +5 -13
  428. package/lib-esm/components/MediaTypeSwitch/MediaTypesSwitch.d.ts +2 -2
  429. package/lib-esm/components/MediaTypeSwitch/MediaTypesSwitch.js +1 -1
  430. package/lib-esm/components/NextSectionButton/NextSectionButton.d.ts +8 -0
  431. package/lib-esm/components/NextSectionButton/NextSectionButton.js +2 -0
  432. package/lib-esm/components/NextSectionButton/index.d.ts +1 -0
  433. package/lib-esm/components/NextSectionButton/index.js +2 -0
  434. package/lib-esm/components/NextSectionButton/styled.d.ts +1 -0
  435. package/lib-esm/components/NextSectionButton/styled.js +18 -0
  436. package/lib-esm/components/OperationItem/OperationItem.d.ts +3 -0
  437. package/lib-esm/components/OperationItem/OperationItem.js +9 -0
  438. package/lib-esm/components/OperationItem/index.d.ts +2 -0
  439. package/lib-esm/components/OperationItem/index.js +2 -0
  440. package/lib-esm/components/OperationItem/types.d.ts +4 -0
  441. package/lib-esm/components/{Operation → OperationItem}/types.js +0 -0
  442. package/lib-esm/components/Overlay.d.ts +2 -7
  443. package/lib-esm/components/Overlay.js +1 -1
  444. package/lib-esm/components/Panel/ResponsePanel.js +1 -1
  445. package/lib-esm/components/Parameters/BodyContent.d.ts +3 -2
  446. package/lib-esm/components/Parameters/BodyContent.js +1 -1
  447. package/lib-esm/components/Parameters/ParametersGroup.js +1 -1
  448. package/lib-esm/components/PayloadSamples/MediaTypeSamples.d.ts +2 -3
  449. package/lib-esm/components/PayloadSamples/MediaTypeSamples.js +1 -1
  450. package/lib-esm/components/PayloadSamples/PayloadSamples.d.ts +2 -3
  451. package/lib-esm/components/PayloadSamples/PayloadSamples.js +1 -1
  452. package/lib-esm/components/PayloadSamples/types.d.ts +1 -2
  453. package/lib-esm/components/PayloadSamples/useExternalExample.js +1 -1
  454. package/lib-esm/components/RedoclyOpenAPIDocs/Providers.d.ts +6 -0
  455. package/lib-esm/components/RedoclyOpenAPIDocs/Providers.js +2 -0
  456. package/lib-esm/components/RedoclyOpenAPIDocs/RedoclyOpenAPIDocs.d.ts +4 -0
  457. package/lib-esm/components/RedoclyOpenAPIDocs/RedoclyOpenAPIDocs.js +2 -0
  458. package/lib-esm/components/RedoclyOpenAPIDocs/RedoclyOpenAPIDocsMultiStandalone.d.ts +2 -0
  459. package/lib-esm/components/RedoclyOpenAPIDocs/RedoclyOpenAPIDocsMultiStandalone.js +2 -0
  460. package/lib-esm/components/RedoclyOpenAPIDocs/index.d.ts +5 -0
  461. package/lib-esm/components/RedoclyOpenAPIDocs/index.js +2 -0
  462. package/lib-esm/components/RedoclyOpenAPIDocs/styled.d.ts +13 -0
  463. package/lib-esm/components/RedoclyOpenAPIDocs/styled.js +170 -0
  464. package/lib-esm/components/RedoclyOpenAPIDocs/types.d.ts +63 -0
  465. package/lib-esm/components/{types.js → RedoclyOpenAPIDocs/types.js} +0 -0
  466. package/lib-esm/components/RedoclyOpenAPIDocs/utils.d.ts +10 -0
  467. package/lib-esm/components/RedoclyOpenAPIDocs/utils.js +2 -0
  468. package/lib-esm/components/RequestSamples/CodeSample.d.ts +1 -1
  469. package/lib-esm/components/RequestSamples/CodeSample.js +1 -1
  470. package/lib-esm/components/RequestSamples/Example.d.ts +2 -2
  471. package/lib-esm/components/RequestSamples/Example.js +1 -1
  472. package/lib-esm/components/RequestSamples/RequestSamples.d.ts +1 -1
  473. package/lib-esm/components/RequestSamples/RequestSamples.js +1 -1
  474. package/lib-esm/components/ResponseSamples/ResponseSamples.d.ts +4 -1
  475. package/lib-esm/components/ResponseSamples/ResponseSamples.js +1 -1
  476. package/lib-esm/components/Responses/Response.d.ts +1 -3
  477. package/lib-esm/components/Responses/Response.js +1 -1
  478. package/lib-esm/components/Responses/ResponseSummary.js +14 -1
  479. package/lib-esm/components/Responses/styled.js +2 -2
  480. package/lib-esm/components/Samples/SamplesTabs.d.ts +3 -2
  481. package/lib-esm/components/Samples/SamplesTabs.js +1 -1
  482. package/lib-esm/components/Samples/use-example-key.d.ts +1 -1
  483. package/lib-esm/components/Samples/use-example-key.js +1 -1
  484. package/lib-esm/components/Schema/ObjectSchema.d.ts +1 -1
  485. package/lib-esm/components/Schema/ObjectSchema.js +1 -1
  486. package/lib-esm/components/Schema/OneOfSchema.d.ts +1 -1
  487. package/lib-esm/components/Schema/OneOfSchema.js +1 -1
  488. package/lib-esm/components/Schema/RecursiveSchema.d.ts +1 -1
  489. package/lib-esm/components/Schema/RecursiveSchema.js +1 -1
  490. package/lib-esm/components/Schema/Schema.d.ts +1 -1
  491. package/lib-esm/components/Schema/Schema.js +1 -1
  492. package/lib-esm/components/SchemaDefinition/SchemaDefinition.d.ts +1 -7
  493. package/lib-esm/components/SchemaDefinition/SchemaDefinition.js +1 -1
  494. package/lib-esm/components/Search/MenuItemSearch.d.ts +2 -0
  495. package/lib-esm/components/Search/MenuItemSearch.js +2 -0
  496. package/lib-esm/components/Search/Search.d.ts +3 -0
  497. package/lib-esm/components/Search/Search.js +2 -0
  498. package/lib-esm/components/Search/SearchBox.d.ts +2 -8
  499. package/lib-esm/components/Search/SearchBox.js +1 -1
  500. package/lib-esm/components/Search/index.d.ts +1 -0
  501. package/lib-esm/components/Search/index.js +1 -1
  502. package/lib-esm/components/Search/types.d.ts +11 -8
  503. package/lib-esm/components/Search/utils.js +1 -1
  504. package/lib-esm/components/SectionContent/SectionContent.d.ts +15 -0
  505. package/lib-esm/components/SectionContent/SectionContent.js +2 -0
  506. package/lib-esm/components/SectionContent/index.d.ts +1 -0
  507. package/lib-esm/components/SectionContent/index.js +2 -0
  508. package/lib-esm/components/SectionItem/SectionItem.d.ts +2 -3
  509. package/lib-esm/components/SectionItem/SectionItem.js +1 -1
  510. package/lib-esm/components/SecurityRequirement/PanelDescription.d.ts +1 -6
  511. package/lib-esm/components/SecurityRequirement/RequirementElement.d.ts +2 -7
  512. package/lib-esm/components/SecurityRequirement/RequirementElement.js +1 -1
  513. package/lib-esm/components/SecurityRequirement/SecurityDefs.d.ts +1 -7
  514. package/lib-esm/components/SecurityRequirement/SecurityDefs.js +1 -1
  515. package/lib-esm/components/SecurityRequirement/SecurityRequirement.d.ts +3 -6
  516. package/lib-esm/components/SecurityRequirement/SecurityRequirement.js +1 -1
  517. package/lib-esm/components/SecurityRequirement/constants.d.ts +6 -6
  518. package/lib-esm/components/SecurityRequirement/constants.js +1 -1
  519. package/lib-esm/components/SecurityRequirement/types.d.ts +19 -0
  520. package/lib-esm/components/SecurityRequirement/types.js +2 -0
  521. package/lib-esm/components/SecurityRequirement/useSecurityRequirements.d.ts +3 -0
  522. package/lib-esm/components/SecurityRequirement/useSecurityRequirements.js +2 -0
  523. package/lib-esm/components/SecuritySchemes/OAuthFlow.d.ts +3 -0
  524. package/lib-esm/components/SecuritySchemes/OAuthFlow.js +2 -0
  525. package/lib-esm/components/SecuritySchemes/helpers.d.ts +1 -1
  526. package/lib-esm/components/SecuritySchemes/index.d.ts +1 -1
  527. package/lib-esm/components/SecuritySchemes/index.js +1 -1
  528. package/lib-esm/components/SecuritySchemes/types.d.ts +0 -1
  529. package/lib-esm/components/SideMenu/MenuItem.d.ts +7 -5
  530. package/lib-esm/components/SideMenu/MenuItem.js +1 -1
  531. package/lib-esm/components/SideMenu/MenuItemEternalLink.d.ts +1 -2
  532. package/lib-esm/components/SideMenu/MenuItemEternalLink.js +1 -1
  533. package/lib-esm/components/SideMenu/MenuItemLink.d.ts +3 -0
  534. package/lib-esm/components/SideMenu/MenuItemLink.js +2 -0
  535. package/lib-esm/components/SideMenu/MenuItems.d.ts +2 -1
  536. package/lib-esm/components/SideMenu/MenuItems.js +1 -1
  537. package/lib-esm/components/SideMenu/MenuOperationItemContent.d.ts +5 -3
  538. package/lib-esm/components/SideMenu/MenuOperationItemContent.js +2 -2
  539. package/lib-esm/components/SideMenu/SideMenu.d.ts +8 -5
  540. package/lib-esm/components/SideMenu/SideMenu.js +1 -1
  541. package/lib-esm/components/SideMenu/styled.d.ts +10 -5
  542. package/lib-esm/components/SideMenu/styled.js +12 -12
  543. package/lib-esm/components/SideMenu/types.d.ts +10 -4
  544. package/lib-esm/components/SideMenu/useMenuItemLink.d.ts +18 -0
  545. package/lib-esm/components/SideMenu/useMenuItemLink.js +2 -0
  546. package/lib-esm/components/StickySidebar/StickyResponsiveSidebar.d.ts +4 -6
  547. package/lib-esm/components/StickySidebar/StickyResponsiveSidebar.js +2 -3
  548. package/lib-esm/components/Tabs/CollapsingTabs/CollapsingTabs.d.ts +2 -1
  549. package/lib-esm/components/Tabs/CollapsingTabs/CollapsingTabs.js +1 -1
  550. package/lib-esm/components/Tabs/CollapsingTabs/CollapsingTabsBase.d.ts +1 -1
  551. package/lib-esm/components/Tabs/CollapsingTabs/CollapsingTabsBase.js +1 -1
  552. package/lib-esm/components/TagItem/TagItem.d.ts +2 -0
  553. package/lib-esm/components/TagItem/TagItem.js +2 -0
  554. package/lib-esm/components/TagItem/index.d.ts +1 -0
  555. package/lib-esm/components/TagItem/index.js +2 -0
  556. package/lib-esm/components/TagItems/TagItems.d.ts +13 -0
  557. package/lib-esm/components/TagItems/TagItems.js +2 -0
  558. package/lib-esm/components/TagItems/index.d.ts +1 -0
  559. package/lib-esm/components/TagItems/index.js +2 -0
  560. package/lib-esm/components/ToggleRightPanelButton/ToggleRightPanelButton.d.ts +1 -0
  561. package/lib-esm/components/ToggleRightPanelButton/ToggleRightPanelButton.js +2 -0
  562. package/lib-esm/components/ToggleRightPanelButton/index.d.ts +1 -0
  563. package/lib-esm/components/ToggleRightPanelButton/index.js +2 -0
  564. package/lib-esm/components/ToggleRightPanelButton/styled.d.ts +3 -0
  565. package/lib-esm/components/ToggleRightPanelButton/styled.js +17 -0
  566. package/lib-esm/components/VersionSwitcher.d.ts +4 -3
  567. package/lib-esm/components/VersionSwitcher.js +1 -1
  568. package/lib-esm/components/common/Dropdown/Dropdown.js +2 -2
  569. package/lib-esm/components/common/Fields/fields-layout.d.ts +0 -1
  570. package/lib-esm/components/common/Fields/fields-layout.js +0 -5
  571. package/lib-esm/components/common/LinkToField.d.ts +11 -2
  572. package/lib-esm/components/common/LinkToField.js +9 -22
  573. package/lib-esm/components/common/Portal/Portal.d.ts +6 -0
  574. package/lib-esm/components/common/Portal/Portal.js +2 -0
  575. package/lib-esm/components/common/Portal/index.d.ts +1 -0
  576. package/lib-esm/components/common/Portal/index.js +2 -0
  577. package/lib-esm/components/{ContentItems → common/Skeleton}/Skeleton.d.ts +0 -0
  578. package/lib-esm/components/{ContentItems → common/Skeleton}/Skeleton.js +1 -1
  579. package/lib-esm/components/common/Skeleton/index.d.ts +1 -0
  580. package/lib-esm/components/common/Skeleton/index.js +2 -0
  581. package/lib-esm/components/common/headers.d.ts +0 -6
  582. package/lib-esm/components/common/headers.js +1 -25
  583. package/lib-esm/components/common/index.d.ts +4 -2
  584. package/lib-esm/components/common/index.js +1 -1
  585. package/lib-esm/components/common/linkify.d.ts +3 -7
  586. package/lib-esm/components/common/linkify.js +6 -51
  587. package/lib-esm/components/common/panels.js +13 -10
  588. package/lib-esm/components/common/perfect-scrollbar.js +2 -2
  589. package/lib-esm/components/icons/LockIcon.d.ts +1 -1
  590. package/lib-esm/components/icons/Spinner.d.ts +1 -1
  591. package/lib-esm/components/index.d.ts +8 -9
  592. package/lib-esm/components/index.js +1 -1
  593. package/lib-esm/components/pluggable/PullRight.d.ts +3 -2
  594. package/lib-esm/components/pluggable/PullRight.js +1 -55
  595. package/lib-esm/components/pluggable/RedocExample.d.ts +1 -3
  596. package/lib-esm/components/pluggable/RedocExample.js +1 -1
  597. package/lib-esm/components/pluggable/RedocRequestBody.d.ts +1 -3
  598. package/lib-esm/components/pluggable/RedocRequestBody.js +1 -1
  599. package/lib-esm/components/pluggable/RedocResponse.d.ts +1 -3
  600. package/lib-esm/components/pluggable/RedocResponse.js +1 -1
  601. package/lib-esm/components/pluggable/RedocSchema.d.ts +1 -3
  602. package/lib-esm/components/pluggable/RedocSchema.js +1 -1
  603. package/lib-esm/components/rightPanel/CodemirrorInput/CodemirrorInput.js +1 -1
  604. package/lib-esm/components/rightPanel/CodemirrorInput/helpers.d.ts +1 -10
  605. package/lib-esm/components/rightPanel/CodemirrorInput/helpers.js +1 -1
  606. package/lib-esm/components/rightPanel/Console/Console.d.ts +2 -2
  607. package/lib-esm/components/rightPanel/Console/Console.js +1 -1
  608. package/lib-esm/components/rightPanel/Console/ConsoleLazy.js +1 -1
  609. package/lib-esm/components/rightPanel/Console/ConsoleWrapper.d.ts +5 -2
  610. package/lib-esm/components/rightPanel/Console/ConsoleWrapper.js +1 -1
  611. package/lib-esm/components/rightPanel/Console/Request.d.ts +3 -12
  612. package/lib-esm/components/rightPanel/Console/Request.js +1 -1
  613. package/lib-esm/components/rightPanel/Console/types.d.ts +14 -3
  614. package/lib-esm/components/rightPanel/OAuth2Flow/OAuth2Flow.js +1 -1
  615. package/lib-esm/components/rightPanel/OpenIDConnect.d.ts +2 -2
  616. package/lib-esm/components/rightPanel/RequestBody/Body.d.ts +1 -1
  617. package/lib-esm/components/rightPanel/RequestBody/Body.js +1 -1
  618. package/lib-esm/components/rightPanel/RequestBody/RequestBody.d.ts +1 -1
  619. package/lib-esm/components/rightPanel/RequestBody/RequestBody.js +1 -1
  620. package/lib-esm/components/rightPanel/RequestBody/types.d.ts +1 -0
  621. package/lib-esm/components/rightPanel/RequestBodyForm.d.ts +6 -3
  622. package/lib-esm/components/rightPanel/RequestBodyForm.js +1 -1
  623. package/lib-esm/components/rightPanel/ResponseHeadersList.js +1 -1
  624. package/lib-esm/components/rightPanel/ServerVariable.d.ts +1 -1
  625. package/lib-esm/components/rightPanel/ServerVariable.js +1 -1
  626. package/lib-esm/components/rightPanel/ServersDropdown/ServersDropdown.d.ts +2 -1
  627. package/lib-esm/components/rightPanel/ServersDropdown/ServersDropdown.js +1 -1
  628. package/lib-esm/components/rightPanel/utils.d.ts +3 -2
  629. package/lib-esm/components/rightPanel/utils.js +1 -1
  630. package/lib-esm/constants.d.ts +0 -2
  631. package/lib-esm/constants.js +1 -1
  632. package/lib-esm/events/codeSampleCopy.js +1 -1
  633. package/lib-esm/events/types.d.ts +2 -2
  634. package/lib-esm/hoc/types.d.ts +38 -0
  635. package/lib-esm/hoc/types.js +2 -0
  636. package/lib-esm/hoc/utils.d.ts +2 -0
  637. package/lib-esm/hoc/utils.js +2 -0
  638. package/lib-esm/hoc/withRouter.d.ts +3 -0
  639. package/lib-esm/hoc/withRouter.js +2 -0
  640. package/lib-esm/hooks/index.d.ts +4 -0
  641. package/lib-esm/hooks/index.js +1 -1
  642. package/lib-esm/hooks/useActivateExample.d.ts +2 -0
  643. package/lib-esm/hooks/useActivateExample.js +2 -0
  644. package/lib-esm/hooks/useContentItems.d.ts +12 -0
  645. package/lib-esm/hooks/useContentItems.js +2 -0
  646. package/lib-esm/hooks/useLicense.d.ts +5 -0
  647. package/lib-esm/hooks/useLicense.js +2 -0
  648. package/lib-esm/hooks/useRouter.d.ts +11 -0
  649. package/lib-esm/hooks/useRouter.js +2 -0
  650. package/lib-esm/index.d.ts +2 -1
  651. package/lib-esm/index.js +1 -1
  652. package/lib-esm/models/callback.d.ts +5 -0
  653. package/lib-esm/models/callback.js +2 -0
  654. package/lib-esm/models/example.d.ts +10 -0
  655. package/lib-esm/models/example.js +2 -0
  656. package/lib-esm/models/field.d.ts +7 -0
  657. package/lib-esm/models/field.js +2 -0
  658. package/lib-esm/models/group.d.ts +4 -0
  659. package/lib-esm/models/group.js +2 -0
  660. package/lib-esm/models/index.d.ts +13 -14
  661. package/lib-esm/models/index.js +1 -1
  662. package/lib-esm/models/mediaContent.d.ts +7 -0
  663. package/lib-esm/models/mediaContent.js +2 -0
  664. package/lib-esm/models/mediaType.d.ts +20 -0
  665. package/lib-esm/models/mediaType.js +2 -0
  666. package/lib-esm/models/operation.d.ts +18 -0
  667. package/lib-esm/models/operation.js +2 -0
  668. package/lib-esm/models/request.d.ts +12 -0
  669. package/lib-esm/models/request.js +2 -0
  670. package/lib-esm/models/response.d.ts +15 -0
  671. package/lib-esm/models/response.js +2 -0
  672. package/lib-esm/models/schema.d.ts +14 -0
  673. package/lib-esm/models/schema.js +2 -0
  674. package/lib-esm/models/security.d.ts +13 -0
  675. package/lib-esm/models/security.js +2 -0
  676. package/lib-esm/models/types.d.ts +233 -3
  677. package/lib-esm/recoil/app.d.ts +32 -0
  678. package/lib-esm/recoil/app.js +2 -0
  679. package/lib-esm/recoil/operation.d.ts +11 -0
  680. package/lib-esm/recoil/operation.js +2 -0
  681. package/lib-esm/recoil/store.d.ts +19 -0
  682. package/lib-esm/recoil/store.js +2 -0
  683. package/lib-esm/services/OpenAPIParser.d.ts +1 -1
  684. package/lib-esm/services/OpenAPIParser.js +1 -1
  685. package/lib-esm/services/Options/index.d.ts +1 -1
  686. package/lib-esm/services/Options/index.js +1 -1
  687. package/lib-esm/services/Options/{NormalizedOptions.d.ts → normalizeOptions.d.ts} +1 -1
  688. package/lib-esm/services/Options/normalizeOptions.js +2 -0
  689. package/lib-esm/services/Options/types.d.ts +31 -15
  690. package/lib-esm/services/code-samples/generator.js +1 -1
  691. package/lib-esm/services/code-samples/httpsnippet/targets/index.d.ts +1 -1
  692. package/lib-esm/services/code-samples/httpsnippet/targets/javascript/index.d.ts +1 -1
  693. package/lib-esm/services/code-samples/httpsnippet/targets/shell/curl.d.ts +2 -2
  694. package/lib-esm/services/code-samples/types.d.ts +2 -2
  695. package/lib-esm/services/history/helpers.d.ts +1 -1
  696. package/lib-esm/services/history/helpers.js +1 -1
  697. package/lib-esm/services/history/index.d.ts +1 -4
  698. package/lib-esm/services/history/index.js +1 -1
  699. package/lib-esm/services/index.d.ts +2 -7
  700. package/lib-esm/services/index.js +1 -1
  701. package/lib-esm/services/menu/builder.d.ts +9 -0
  702. package/lib-esm/services/menu/builder.js +2 -0
  703. package/lib-esm/services/menu/helpers.d.ts +6 -0
  704. package/lib-esm/services/menu/helpers.js +2 -0
  705. package/lib-esm/services/menu/index.d.ts +1 -0
  706. package/lib-esm/services/menu/index.js +2 -0
  707. package/lib-esm/services/menu/markdown.d.ts +11 -0
  708. package/lib-esm/services/menu/markdown.js +2 -0
  709. package/lib-esm/services/menu/operation.d.ts +13 -0
  710. package/lib-esm/services/menu/operation.js +2 -0
  711. package/lib-esm/services/menu/tags.d.ts +27 -0
  712. package/lib-esm/services/menu/tags.js +2 -0
  713. package/lib-esm/services/search/DeepSearchStore.d.ts +3 -3
  714. package/lib-esm/services/search/DeepSearchStore.js +1 -1
  715. package/lib-esm/services/search/SearchStore.d.ts +1 -1
  716. package/lib-esm/services/search/useSearch.d.ts +13 -0
  717. package/lib-esm/services/search/useSearch.js +2 -0
  718. package/lib-esm/services/types.d.ts +42 -91
  719. package/lib-esm/services/types.js +1 -1
  720. package/lib-esm/services/utils.d.ts +1 -0
  721. package/lib-esm/services/utils.js +1 -1
  722. package/lib-esm/standalone.d.ts +5 -5
  723. package/lib-esm/standalone.js +1 -1
  724. package/lib-esm/testProviders.d.ts +2 -2
  725. package/lib-esm/testProviders.js +1 -1
  726. package/lib-esm/types/app.d.ts +1 -0
  727. package/lib-esm/types/app.js +2 -0
  728. package/lib-esm/types/index.d.ts +1 -0
  729. package/lib-esm/types/index.js +1 -1
  730. package/lib-esm/types/open-api.d.ts +15 -15
  731. package/lib-esm/utils/compose.d.ts +1 -0
  732. package/lib-esm/utils/compose.js +2 -0
  733. package/lib-esm/utils/helpers.d.ts +2 -1
  734. package/lib-esm/utils/helpers.js +1 -1
  735. package/lib-esm/utils/index.d.ts +3 -2
  736. package/lib-esm/utils/index.js +1 -1
  737. package/lib-esm/utils/local-storage.js +1 -1
  738. package/lib-esm/utils/openapi.d.ts +11 -7
  739. package/lib-esm/utils/openapi.js +1 -1
  740. package/lib-esm/utils/saveTextBeforeHeading.d.ts +1 -0
  741. package/lib-esm/utils/saveTextBeforeHeading.js +2 -0
  742. package/lib-esm/utils/typeGuards.d.ts +3 -0
  743. package/lib-esm/utils/typeGuards.js +2 -0
  744. package/package.json +11 -15
  745. package/bin/cli/assets/redoc-fast-scroll.js +0 -22
  746. package/bin/cli/assets/template.hbs +0 -24
  747. package/bin/cli/commands/redocly-docs-cli.min.js +0 -6187
  748. package/bin/cli/commands/redocly-docs-cli.min.js.LICENSE.txt +0 -358
  749. package/dist/console.redocly-reference-docs.min.js +0 -507
  750. package/dist/redocly-reference-docs.min.js +0 -6289
  751. package/lib/cli/assets/redoc-fast-scroll.d.ts +0 -0
  752. package/lib/cli/assets/redoc-fast-scroll.js +0 -2
  753. package/lib/cli/cli.d.ts +0 -2
  754. package/lib/cli/cli.js +0 -3
  755. package/lib/cli/commands/bundle.d.ts +0 -1
  756. package/lib/cli/commands/bundle.js +0 -2
  757. package/lib/cli/commands/index.d.ts +0 -1
  758. package/lib/cli/commands/index.js +0 -2
  759. package/lib/cli/constants.d.ts +0 -3
  760. package/lib/cli/constants.js +0 -2
  761. package/lib/cli/utils.d.ts +0 -16
  762. package/lib/cli/utils.js +0 -2
  763. package/lib/components/Markdown/AdvancedMarkdown.d.ts +0 -2
  764. package/lib/components/Markdown/AdvancedMarkdown.js +0 -2
  765. package/lib/components/Markdown/SanitizedMarkdownHTML.d.ts +0 -6
  766. package/lib/components/Markdown/SanitizedMarkdownHTML.js +0 -2
  767. package/lib/components/NextSectionButton.d.ts +0 -13
  768. package/lib/components/NextSectionButton.js +0 -8
  769. package/lib/components/Operation/Operation.d.ts +0 -4
  770. package/lib/components/Operation/Operation.js +0 -8
  771. package/lib/components/Operation/index.d.ts +0 -2
  772. package/lib/components/Operation/index.js +0 -2
  773. package/lib/components/Operation/types.d.ts +0 -6
  774. package/lib/components/ProProviders.d.ts +0 -9
  775. package/lib/components/ProProviders.js +0 -2
  776. package/lib/components/RedoclyReferenceDocs.d.ts +0 -26
  777. package/lib/components/RedoclyReferenceDocs.js +0 -54
  778. package/lib/components/RedoclyReferenceDocsMultiStandalone.d.ts +0 -7
  779. package/lib/components/RedoclyReferenceDocsMultiStandalone.js +0 -2
  780. package/lib/components/Search/MenuItemProSearch.d.ts +0 -2
  781. package/lib/components/Search/MenuItemProSearch.js +0 -2
  782. package/lib/components/SecuritySchemes/SecuritySchemes.d.ts +0 -3
  783. package/lib/components/SecuritySchemes/SecuritySchemes.js +0 -2
  784. package/lib/components/SideMenu/MenuItemLinkOrLabel.d.ts +0 -7
  785. package/lib/components/SideMenu/MenuItemLinkOrLabel.js +0 -2
  786. package/lib/components/StoreProvider.d.ts +0 -22
  787. package/lib/components/StoreProvider.js +0 -2
  788. package/lib/components/styled.elements.d.ts +0 -19
  789. package/lib/components/styled.elements.js +0 -166
  790. package/lib/components/types.d.ts +0 -8
  791. package/lib/context/OptionsProvider.d.ts +0 -6
  792. package/lib/context/OptionsProvider.js +0 -2
  793. package/lib/context/StoreProvider.d.ts +0 -6
  794. package/lib/context/StoreProvider.js +0 -2
  795. package/lib/context/index.d.ts +0 -2
  796. package/lib/context/index.js +0 -2
  797. package/lib/models/ApiInfo.d.ts +0 -17
  798. package/lib/models/ApiInfo.js +0 -2
  799. package/lib/models/Callback.d.ts +0 -11
  800. package/lib/models/Callback.js +0 -2
  801. package/lib/models/Example.d.ts +0 -17
  802. package/lib/models/Example.js +0 -2
  803. package/lib/models/Field.d.ts +0 -34
  804. package/lib/models/Field.js +0 -2
  805. package/lib/models/Group.d.ts +0 -26
  806. package/lib/models/Group.js +0 -2
  807. package/lib/models/MediaContent.d.ts +0 -31
  808. package/lib/models/MediaContent.js +0 -2
  809. package/lib/models/MediaType.d.ts +0 -27
  810. package/lib/models/MediaType.js +0 -2
  811. package/lib/models/Operation.d.ts +0 -92
  812. package/lib/models/Operation.js +0 -2
  813. package/lib/models/RequestBody.d.ts +0 -18
  814. package/lib/models/RequestBody.js +0 -2
  815. package/lib/models/Response.d.ts +0 -28
  816. package/lib/models/Response.js +0 -2
  817. package/lib/models/Schema.d.ts +0 -78
  818. package/lib/models/Schema.js +0 -2
  819. package/lib/models/SecurityRequirement.d.ts +0 -12
  820. package/lib/models/SecurityRequirement.js +0 -2
  821. package/lib/models/SecuritySchemes.d.ts +0 -25
  822. package/lib/models/SecuritySchemes.js +0 -2
  823. package/lib/models/Webhook.d.ts +0 -8
  824. package/lib/models/Webhook.js +0 -2
  825. package/lib/services/MarkdownRenderer.d.ts +0 -23
  826. package/lib/services/MarkdownRenderer.js +0 -2
  827. package/lib/services/MenuBuilder.d.ts +0 -63
  828. package/lib/services/MenuBuilder.js +0 -2
  829. package/lib/services/Options/NormalizedOptions.js +0 -2
  830. package/lib/services/ProMenu.d.ts +0 -108
  831. package/lib/services/ProMenu.js +0 -2
  832. package/lib/services/ProStore.d.ts +0 -92
  833. package/lib/services/ProStore.js +0 -2
  834. package/lib/services/ScrollService.d.ts +0 -18
  835. package/lib/services/ScrollService.js +0 -2
  836. package/lib/services/SpecStore.d.ts +0 -18
  837. package/lib/services/SpecStore.js +0 -2
  838. package/lib/services/VersionedSpecStore.d.ts +0 -42
  839. package/lib/services/VersionedSpecStore.js +0 -2
  840. package/lib/services/history/FakeHistoryService.d.ts +0 -20
  841. package/lib/services/history/FakeHistoryService.js +0 -2
  842. package/lib/services/history/HistoryService.d.ts +0 -15
  843. package/lib/services/history/HistoryService.js +0 -2
  844. package/lib/services/history/ProHashHistoryService.d.ts +0 -25
  845. package/lib/services/history/ProHashHistoryService.js +0 -2
  846. package/lib/services/history/PushStateHistoryService.d.ts +0 -24
  847. package/lib/services/history/PushStateHistoryService.js +0 -2
  848. package/lib/utils/memoize.d.ts +0 -1
  849. package/lib/utils/memoize.js +0 -2
  850. package/lib/utils/store.d.ts +0 -3
  851. package/lib/utils/store.js +0 -2
  852. package/lib-esm/cli/assets/redoc-fast-scroll.d.ts +0 -0
  853. package/lib-esm/cli/assets/redoc-fast-scroll.js +0 -2
  854. package/lib-esm/cli/cli.d.ts +0 -2
  855. package/lib-esm/cli/cli.js +0 -3
  856. package/lib-esm/cli/commands/bundle.d.ts +0 -1
  857. package/lib-esm/cli/commands/bundle.js +0 -2
  858. package/lib-esm/cli/commands/index.d.ts +0 -1
  859. package/lib-esm/cli/commands/index.js +0 -2
  860. package/lib-esm/cli/constants.d.ts +0 -3
  861. package/lib-esm/cli/constants.js +0 -2
  862. package/lib-esm/cli/utils.d.ts +0 -16
  863. package/lib-esm/cli/utils.js +0 -2
  864. package/lib-esm/components/Markdown/AdvancedMarkdown.d.ts +0 -2
  865. package/lib-esm/components/Markdown/AdvancedMarkdown.js +0 -2
  866. package/lib-esm/components/Markdown/SanitizedMarkdownHTML.d.ts +0 -6
  867. package/lib-esm/components/Markdown/SanitizedMarkdownHTML.js +0 -2
  868. package/lib-esm/components/NextSectionButton.d.ts +0 -13
  869. package/lib-esm/components/NextSectionButton.js +0 -8
  870. package/lib-esm/components/Operation/Operation.d.ts +0 -4
  871. package/lib-esm/components/Operation/Operation.js +0 -8
  872. package/lib-esm/components/Operation/index.d.ts +0 -2
  873. package/lib-esm/components/Operation/index.js +0 -2
  874. package/lib-esm/components/Operation/types.d.ts +0 -6
  875. package/lib-esm/components/ProProviders.d.ts +0 -9
  876. package/lib-esm/components/ProProviders.js +0 -2
  877. package/lib-esm/components/RedoclyReferenceDocs.d.ts +0 -26
  878. package/lib-esm/components/RedoclyReferenceDocs.js +0 -54
  879. package/lib-esm/components/RedoclyReferenceDocsMultiStandalone.d.ts +0 -7
  880. package/lib-esm/components/RedoclyReferenceDocsMultiStandalone.js +0 -2
  881. package/lib-esm/components/Search/MenuItemProSearch.d.ts +0 -2
  882. package/lib-esm/components/Search/MenuItemProSearch.js +0 -2
  883. package/lib-esm/components/SecuritySchemes/SecuritySchemes.d.ts +0 -3
  884. package/lib-esm/components/SecuritySchemes/SecuritySchemes.js +0 -2
  885. package/lib-esm/components/SideMenu/MenuItemLinkOrLabel.d.ts +0 -7
  886. package/lib-esm/components/SideMenu/MenuItemLinkOrLabel.js +0 -2
  887. package/lib-esm/components/StoreProvider.d.ts +0 -22
  888. package/lib-esm/components/StoreProvider.js +0 -2
  889. package/lib-esm/components/styled.elements.d.ts +0 -19
  890. package/lib-esm/components/styled.elements.js +0 -166
  891. package/lib-esm/components/types.d.ts +0 -8
  892. package/lib-esm/context/OptionsProvider.d.ts +0 -6
  893. package/lib-esm/context/OptionsProvider.js +0 -2
  894. package/lib-esm/context/StoreProvider.d.ts +0 -6
  895. package/lib-esm/context/StoreProvider.js +0 -2
  896. package/lib-esm/context/index.d.ts +0 -2
  897. package/lib-esm/context/index.js +0 -2
  898. package/lib-esm/models/ApiInfo.d.ts +0 -17
  899. package/lib-esm/models/ApiInfo.js +0 -2
  900. package/lib-esm/models/Callback.d.ts +0 -11
  901. package/lib-esm/models/Callback.js +0 -2
  902. package/lib-esm/models/Example.d.ts +0 -17
  903. package/lib-esm/models/Example.js +0 -2
  904. package/lib-esm/models/Field.d.ts +0 -34
  905. package/lib-esm/models/Field.js +0 -2
  906. package/lib-esm/models/Group.d.ts +0 -26
  907. package/lib-esm/models/Group.js +0 -2
  908. package/lib-esm/models/MediaContent.d.ts +0 -31
  909. package/lib-esm/models/MediaContent.js +0 -2
  910. package/lib-esm/models/MediaType.d.ts +0 -27
  911. package/lib-esm/models/MediaType.js +0 -2
  912. package/lib-esm/models/Operation.d.ts +0 -92
  913. package/lib-esm/models/Operation.js +0 -2
  914. package/lib-esm/models/RequestBody.d.ts +0 -18
  915. package/lib-esm/models/RequestBody.js +0 -2
  916. package/lib-esm/models/Response.d.ts +0 -28
  917. package/lib-esm/models/Response.js +0 -2
  918. package/lib-esm/models/Schema.d.ts +0 -78
  919. package/lib-esm/models/Schema.js +0 -2
  920. package/lib-esm/models/SecurityRequirement.d.ts +0 -12
  921. package/lib-esm/models/SecurityRequirement.js +0 -2
  922. package/lib-esm/models/SecuritySchemes.d.ts +0 -25
  923. package/lib-esm/models/SecuritySchemes.js +0 -2
  924. package/lib-esm/models/Webhook.d.ts +0 -8
  925. package/lib-esm/models/Webhook.js +0 -2
  926. package/lib-esm/services/MarkdownRenderer.d.ts +0 -23
  927. package/lib-esm/services/MarkdownRenderer.js +0 -2
  928. package/lib-esm/services/MenuBuilder.d.ts +0 -63
  929. package/lib-esm/services/MenuBuilder.js +0 -2
  930. package/lib-esm/services/Options/NormalizedOptions.js +0 -2
  931. package/lib-esm/services/ProMenu.d.ts +0 -108
  932. package/lib-esm/services/ProMenu.js +0 -2
  933. package/lib-esm/services/ProStore.d.ts +0 -92
  934. package/lib-esm/services/ProStore.js +0 -2
  935. package/lib-esm/services/ScrollService.d.ts +0 -18
  936. package/lib-esm/services/ScrollService.js +0 -2
  937. package/lib-esm/services/SpecStore.d.ts +0 -18
  938. package/lib-esm/services/SpecStore.js +0 -2
  939. package/lib-esm/services/VersionedSpecStore.d.ts +0 -42
  940. package/lib-esm/services/VersionedSpecStore.js +0 -2
  941. package/lib-esm/services/history/FakeHistoryService.d.ts +0 -20
  942. package/lib-esm/services/history/FakeHistoryService.js +0 -2
  943. package/lib-esm/services/history/HistoryService.d.ts +0 -15
  944. package/lib-esm/services/history/HistoryService.js +0 -2
  945. package/lib-esm/services/history/ProHashHistoryService.d.ts +0 -25
  946. package/lib-esm/services/history/ProHashHistoryService.js +0 -2
  947. package/lib-esm/services/history/PushStateHistoryService.d.ts +0 -24
  948. package/lib-esm/services/history/PushStateHistoryService.js +0 -2
  949. package/lib-esm/utils/memoize.d.ts +0 -1
  950. package/lib-esm/utils/memoize.js +0 -2
  951. package/lib-esm/utils/store.d.ts +0 -3
  952. package/lib-esm/utils/store.js +0 -2
@@ -1,9 +1,7 @@
1
1
  import type { OpenAPISchema } from '../../types';
2
- import type { ProStore } from '../../services';
3
2
  interface RedocSchemaProps {
4
- store: ProStore;
5
3
  pointer?: string;
6
4
  schema?: OpenAPISchema;
7
5
  }
8
- export declare const RedocSchema: ({ store, pointer, schema }: RedocSchemaProps) => JSX.Element;
6
+ export declare const RedocSchema: ({ pointer, schema }: RedocSchemaProps) => JSX.Element;
9
7
  export {};
@@ -1,2 +1,2 @@
1
- import React from"react";import{SchemaModel}from"../../models";import{Row}from"../common";import{FullWidthPanel}from"./styled.components";import{Schema}from"../Schema";export const RedocSchema=({store:e,pointer:o,schema:t})=>{const m=t||{$ref:o},r=new SchemaModel(e.definition.parser,m,o||"",e.options);return React.createElement(Row,null,React.createElement(FullWidthPanel,null,React.createElement(Schema,{schema:r})))};
1
+ import React from"react";import{useRecoilValue}from"recoil";import{getSchema}from"../../models";import{Row}from"../common";import{FullWidthPanel}from"./styled.components";import{Schema}from"../Schema";import{globalStoreSelector}from"../../recoil/store";export const RedocSchema=({pointer:e,schema:o})=>{const{options:t,parser:r}=useRecoilValue(globalStoreSelector),m=getSchema({parser:r,schemaOrRef:o||{$ref:e},pointer:e||"",options:t,deps:{operation:{pointer:"RedocSchema"}}});return React.createElement(Row,null,React.createElement(FullWidthPanel,null,React.createElement(Schema,{schema:m})))};
2
2
  //# sourceMappingURL=RedocSchema.js.map
@@ -1,2 +1,2 @@
1
- import React from"react";import{useMount,useUnmount}from"@redocly/theme";import{asField}from"informed";import{Controlled as CodeMirror}from"react-codemirror2-react-17";import{MediaTypes}from"../../../constants";import"./helpers";import{CodeMirrorStyles}from"./styled";export const CodemirrorInputComponent=({fieldState:e,fieldApi:t,onChange:o,onBlur:r,forwardedRef:n,id:m,mode:a,schema:i})=>{let s;const c=(e,t)=>{/^[a-zA-Z0-9_":]$/.test(t.key)&&s.execCommand("autocomplete")},l=()=>{s.refresh()},d=()=>s.showHint({completeSingle:!0});useMount((()=>{setTimeout((()=>{s.refresh()}),0),document.addEventListener("click",l)})),useUnmount((()=>{document.removeEventListener("click",l)}));const{value:u}=e,{setValue:p,setTouched:f,setError:C}=t;return React.createElement(React.Fragment,null,React.createElement(CodeMirrorStyles,null),React.createElement(CodeMirror,{editorDidMount:e=>{s=e,s.on("keyup",c)},value:u||"",ref:n,onBeforeChange:(e,t,r)=>{p(r),o&&o(r)},onBlur:e=>{f(!1),r&&r(e)},options:{mode:a||MediaTypes.JSON,theme:"material",matchBrackets:!0,autoCloseBrackets:!0,tabSize:2,foldGutter:!0,extraKeys:{"Cmd-Space":d,"Ctrl-Space":d},hintOptions:{id:m,completeSingle:!1,schema:i},lint:{id:m,schema:i,setError:C}}}))};export const CodemirrorInput=asField(CodemirrorInputComponent);
1
+ import React from"react";import{useMount,useUnmount}from"@redocly/theme";import{asField}from"informed";import{Controlled as CodeMirror}from"react-codemirror2-react-17";import{MediaTypes}from"../../../constants";import"./helpers";import{CodeMirrorStyles}from"./styled";export const CodemirrorInputComponent=({fieldState:e,fieldApi:t,onChange:o,onBlur:r,forwardedRef:n,id:m,mode:a,schema:i})=>{let c;const s=(e,t)=>{/^[a-zA-Z0-9_":]$/.test(t.key)&&c.execCommand("autocomplete")},l=()=>{c.refresh()},d=()=>c.showHint({completeSingle:!0});useMount((()=>{setTimeout((()=>{c.refresh()}),0),document.addEventListener("click",l)})),useUnmount((()=>{document.removeEventListener("click",l)}));const{value:u}=e,{setValue:p,setTouched:f}=t;return React.createElement(React.Fragment,null,React.createElement(CodeMirrorStyles,null),React.createElement(CodeMirror,{editorDidMount:e=>{c=e,c.on("keyup",s)},value:u||"",ref:n,onBeforeChange:(e,t,r)=>{p(r),o&&o(r)},onBlur:e=>{f(!1),r&&r(e)},options:{mode:a||MediaTypes.JSON,theme:"material",matchBrackets:!0,autoCloseBrackets:!0,tabSize:2,foldGutter:!0,extraKeys:{"Cmd-Space":d,"Ctrl-Space":d},hintOptions:{id:m,completeSingle:!1,schema:i}}}))};export const CodemirrorInput=asField(CodemirrorInputComponent);
2
2
  //# sourceMappingURL=CodemirrorInput.js.map
@@ -1,10 +1 @@
1
- import 'codemirror/mode/javascript/javascript';
2
- import 'codemirror/addon/edit/matchbrackets';
3
- import 'codemirror/addon/lint/lint';
4
- import 'codemirror/addon/hint/show-hint';
5
- import 'codemirror/addon/edit/closebrackets';
6
- import 'codemirror/addon/search/searchcursor';
7
- import 'codemirror/lib/codemirror.css';
8
- import 'codemirror/theme/material.css';
9
- import 'codemirror/addon/lint/lint.css';
10
- import 'codemirror/addon/hint/show-hint.css';
1
+ export {};
@@ -1,2 +1,2 @@
1
- var __awaiter=this&&this.__awaiter||function(e,r,t,o){return new(t||(t=Promise))((function(i,n){function a(e){try{s(o.next(e))}catch(e){n(e)}}function c(e){try{s(o.throw(e))}catch(e){n(e)}}function s(e){var r;e.done?i(e.value):(r=e.value,r instanceof t?r:new t((function(e){e(r)}))).then(a,c)}s((o=o.apply(e,r||[])).next())}))};import*as CodeMirror from"codemirror";import{TextDocument,getLanguageService}from"@redocly/vscode-json-languageservice";import"codemirror/mode/javascript/javascript";import"codemirror/addon/edit/matchbrackets";import"codemirror/addon/lint/lint";import"codemirror/addon/hint/show-hint";import"codemirror/addon/edit/closebrackets";import"codemirror/addon/search/searchcursor";import"codemirror/lib/codemirror.css";import"codemirror/theme/material.css";import"codemirror/addon/lint/lint.css";import"codemirror/addon/hint/show-hint.css";const serv=getLanguageService({});CodeMirror.registerHelper("lint","json",(function(e,r){return __awaiter(this,void 0,void 0,(function*(){const{schema:t,setError:o}=r;serv.configure({validate:!0,schemas:[{uri:"stub://"+r.id,fileMatch:["*"],schema:t}]});const i=TextDocument.create(r.id+".json","json",0,e),n=serv.parseJSONDocument(i),a=yield serv.doValidation(i,n);return a.length?o&&o(a[0].message):o&&o(void 0),a.map((e=>({from:CodeMirror.Pos(e.range.start.line,e.range.start.character),to:CodeMirror.Pos(e.range.end.line,e.range.end.character),message:e.message})))}))})),CodeMirror.registerHelper("hint","json",((e,r)=>__awaiter(void 0,void 0,void 0,(function*(){const t=r.schema;if(!t)return;serv.configure({validate:!0,schemas:[{uri:"stub://"+r.id,fileMatch:["*"],schema:t}]});const o=e.getDoc().getCursor(),i=e.getTokenAt(o),n=TextDocument.create(r.id+".json","json",0,e.getValue()),a=serv.parseJSONDocument(n),c=yield serv.doComplete(n,{line:o.line,character:o.ch},a);let s=c?c.items.map((e=>({text:e.insertText,displayText:e.label,filter:e.filterText||e.label,from:{line:e.textEdit.range.start.line,ch:e.textEdit.range.start.character},to:{line:e.textEdit.range.end.line,ch:e.textEdit.range.end.character},hint:(e,r,t)=>{const o="_$__REDOC_CURSOR_HERE";let i=t.text.replace(/(\$1|\${1:[^}]+})/,o)||"";if(i=i.replace(/(\$\d+|\${[^}]+})/g,"")||"",e.setSelection(t.from,t.to),i.indexOf("\n")>-1){const r=e.getLine(e.getCursor().line).search(/(\S|$)/);i=i.replace(/\n/g,"\n"+(e=>{let r="";for(;e--;)r+=" ";return r})(r))}e.replaceSelection(i);const n=e.getSearchCursor(o,t.from);n.findNext()&&(e.setCursor(n.from()),n.replace(""))}}))):[];return/(property|string)/.test(i.type||"")&&(s=s.filter((e=>e.filter.replace(/(^"|"$)/g,"").startsWith(i.string.replace(/(^"|"$)/g,""))))),{from:CodeMirror.Pos(o.line,i.start),to:CodeMirror.Pos(o.line,o.ch),list:s}}))));
1
+ var __awaiter=this&&this.__awaiter||function(e,r,t,i){return new(t||(t=Promise))((function(o,n){function a(e){try{s(i.next(e))}catch(e){n(e)}}function c(e){try{s(i.throw(e))}catch(e){n(e)}}function s(e){var r;e.done?o(e.value):(r=e.value,r instanceof t?r:new t((function(e){e(r)}))).then(a,c)}s((i=i.apply(e,r||[])).next())}))};import{TextDocument,getLanguageService}from"@redocly/vscode-json-languageservice";import{IS_BROWSER}from"../../../utils";let CodeMirror=null;IS_BROWSER&&(CodeMirror=require("codemirror"),require("codemirror/mode/javascript/javascript"),require("codemirror/addon/edit/matchbrackets"),require("codemirror/addon/lint/lint"),require("codemirror/addon/hint/show-hint"),require("codemirror/addon/edit/closebrackets"),require("codemirror/addon/search/searchcursor"),require("codemirror/lib/codemirror.css"),require("codemirror/theme/material.css"),require("codemirror/addon/lint/lint.css"),require("codemirror/addon/hint/show-hint.css"));const serv=getLanguageService({});CodeMirror&&(CodeMirror.registerHelper("lint","json",(function(e,r){return __awaiter(this,void 0,void 0,(function*(){const{schema:t,setError:i}=r;serv.configure({validate:!0,schemas:[{uri:"stub://"+r.id,fileMatch:["*"],schema:t}]});const o=TextDocument.create(r.id+".json","json",0,e),n=serv.parseJSONDocument(o),a=yield serv.doValidation(o,n);return a.length?i&&i(a[0].message):i&&i(void 0),a.map((e=>({from:CodeMirror.Pos(e.range.start.line,e.range.start.character),to:CodeMirror.Pos(e.range.end.line,e.range.end.character),message:e.message})))}))})),CodeMirror.registerHelper("hint","json",((e,r)=>__awaiter(void 0,void 0,void 0,(function*(){const t=r.schema;if(!t)return;serv.configure({validate:!0,schemas:[{uri:"stub://"+r.id,fileMatch:["*"],schema:t}]});const i=e.getDoc().getCursor(),o=e.getTokenAt(i),n=TextDocument.create(r.id+".json","json",0,e.getValue()),a=serv.parseJSONDocument(n),c=yield serv.doComplete(n,{line:i.line,character:i.ch},a);let s=c?c.items.map((e=>({text:e.insertText,displayText:e.label,filter:e.filterText||e.label,from:{line:e.textEdit.range.start.line,ch:e.textEdit.range.start.character},to:{line:e.textEdit.range.end.line,ch:e.textEdit.range.end.character},hint:(e,r,t)=>{const i="_$__REDOC_CURSOR_HERE";let o=t.text.replace(/(\$1|\${1:[^}]+})/,i)||"";if(o=o.replace(/(\$\d+|\${[^}]+})/g,"")||"",e.setSelection(t.from,t.to),o.indexOf("\n")>-1){const r=e.getLine(e.getCursor().line).search(/(\S|$)/);o=o.replace(/\n/g,"\n"+(e=>{let r="";for(;e--;)r+=" ";return r})(r))}e.replaceSelection(o);const n=e.getSearchCursor(i,t.from);n.findNext()&&(e.setCursor(n.from()),n.replace(""))}}))):[];return/(property|string)/.test(o.type||"")&&(s=s.filter((e=>e.filter.replace(/(^"|"$)/g,"").startsWith(o.string.replace(/(^"|"$)/g,""))))),{from:CodeMirror.Pos(i.line,o.start),to:CodeMirror.Pos(i.line,i.ch),list:s}})))));
2
2
  //# sourceMappingURL=helpers.js.map
@@ -1,3 +1,3 @@
1
+ import React from 'react';
1
2
  import type { ConsoleProps } from './types';
2
- export declare const ConsoleComponent: ({ operation, store, onResponse, className, rootElement, properties, securityDefaults, onClose, }: ConsoleProps) => JSX.Element;
3
- export declare const Console: ({ operation, store, onResponse, className, rootElement, properties, securityDefaults, onClose, }: ConsoleProps) => JSX.Element;
3
+ export declare const Console: React.NamedExoticComponent<ConsoleProps>;
@@ -1,2 +1,2 @@
1
- var __awaiter=this&&this.__awaiter||function(e,t,o,s){return new(o||(o=Promise))((function(r,n){function a(e){try{c(s.next(e))}catch(e){n(e)}}function i(e){try{c(s.throw(e))}catch(e){n(e)}}function c(e){var t;e.done?r(e.value):(t=e.value,t instanceof o?t:new o((function(e){e(t)}))).then(a,i)}c((s=s.apply(e,t||[])).next())}))},__rest=this&&this.__rest||function(e,t){var o={};for(var s in e)Object.prototype.hasOwnProperty.call(e,s)&&t.indexOf(s)<0&&(o[s]=e[s]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var r=0;for(s=Object.getOwnPropertySymbols(e);r<s.length;r++)t.indexOf(s[r])<0&&Object.prototype.propertyIsEnumerable.call(e,s[r])&&(o[s[r]]=e[s[r]])}return o};import{observer}from"mobx-react";import Swagger from"swagger-client";import React,{useEffect,useState,useRef,useCallback}from"react";import{useMount}from"@redocly/theme";import{unescapeFormId}from"../../../utils";import{StyledCodeHeader}from"../../Panel";import{isFileUploadMime}from"../../common/FileUpload/helper";import{AnalyticsEventType}from"../../../events";import{getFileNameFromHeaders,getParameters,makeRequestInterceptor,unescapeQueryParams,updateStorage}from"../utils";import{ResponsePanel}from"../ResponsePanel";import{ConsoleTabs}from"../ConsoleTabs";import{ActionPanel}from"../ActionPanel";import{Request}from"./Request";import{CloseButton,ConsoleBody}from"../styled";import{ConsoleWrapper}from"./ConsoleWrapper";import{usePrevious}from"../../../hooks";function normalizeUrlProtocol(e){return e.startsWith("//")?"https:"+e:e}export const ConsoleComponent=({operation:e,store:t,onResponse:o,className:s,rootElement:r,properties:n,securityDefaults:a,onClose:i})=>{let c=useRef();const[l,u]=useState(e.activeServer),[p,d]=useState(0),[m,v]=useState(!1),[y,h]=useState(!1),[f,b]=useState({values:{path:getParameters(e.parameters,"path"),cookie:getParameters(e.parameters,"cookie"),header:getParameters(e.parameters,"header"),query:getParameters(e.parameters,"query")}}),[g,O]=useState(),[S,j]=useState(),[C,P]=useState(),[R,w]=useState(),I=usePrevious(e),q=useCallback((t=>{var{values:o}=t,s=__rest(t,["values"]);const r=Object.assign(Object.assign({},s),{values:Object.assign(Object.assign({},o),{query:unescapeQueryParams(o.query||{})})});b(r),updateStorage(r),e.setRequestValues(o)}),[e]);useMount((()=>__awaiter(void 0,void 0,void 0,(function*(){var o;const s=yield t.dereferenceSpecForTryIt(e);O(s),null===(o=c.current)||void 0===o||o.setValues({})})))),useEffect((()=>{I!==e&&(w(void 0),P(void 0),d(0))}),[e,I]);const E=!(!R&&!C);return React.createElement(ConsoleWrapper,{shaking:y,className:s,rootElement:r},React.createElement(StyledCodeHeader,null,React.createElement(ConsoleTabs,{active:p,hasResponse:E,onChange:e=>{d(e)}}),i&&React.createElement(CloseButton,{onClick:i}," ✕ ")),React.createElement(ConsoleBody,{hidden:0!==p,"data-cy":"console-request-body"},React.createElement(Request,{operation:e,properties:n,securityDefaults:a,form:f,resolvedRawSpec:g,server:l,formApi:c.current,setFormApi:(e,t=e.getState())=>{var{values:o}=t,s=__rest(t,["values"]);c.current=e,setTimeout((()=>{b(Object.assign(Object.assign({},s),{values:Object.assign(Object.assign({},o),{query:unescapeQueryParams(o.query||{})})}))}),0)},handleChange:q,handleServerChange:t=>{u(t),e.setActiveServer(t)}})),React.createElement(ConsoleBody,{hidden:1!==p,"data-cy":"console-response-body"},React.createElement(ResponsePanel,{response:R,error:C,time:S}),";"),React.createElement(ActionPanel,{hasResponse:E,params:f.values,operation:e,loading:m,execute:()=>__awaiter(void 0,void 0,void 0,(function*(){var s,r,n,a,i,u,p,m,y;const{values:b,invalid:O}=(null===(s=null==c?void 0:c.current)||void 0===s?void 0:s.getState())||f||{};if(null===(r=c.current)||void 0===r||r.submitForm(),O)return h(!0),setTimeout((()=>h(!1)),1e3),void(null===(a=null===(n=null==t?void 0:t.options.events)||void 0===n?void 0:n.tryItSent)||void 0===a||a.call(n,{eventType:AnalyticsEventType.TryItSent,resource:"Redocly_OperationTryIt",action:"ValidationFailed",operationId:e.operationId,operationPath:e.path,operationHttpVerb:e.httpVerb,operationSummary:e.description}));const{servers:S,requestBody:C}=e,R=C&&C.content&&C.content.active&&C.content.active.name||"";let I=b.body;if(/json/.test(R))try{I=JSON.parse(I)}catch(e){console.error(e)}v(!0);const q=g,E=(e.httpVerb||"").toLowerCase();if(!S)throw console.error("Servers are not specified in your OpenAPI file. You can't use Try It Out console without specifying servers. If you use OpenAPI 2, make sure you configured host and basepath"),new Error("Servers are not specified");const T=S.find((e=>l.url.endsWith(e.url.endsWith("/")?e.url.substring(0,e.url.length-1):e.url))),_=Date.now(),F=!!window.document.documentMode;let A,k=b.auth;if(b.auth){const e=Object.keys(b.auth)[0],t=unescapeFormId(e);A=Object.assign(Object.assign({},q),{components:Object.assign(Object.assign({},null==q?void 0:q.components),{securitySchemes:Object.assign(Object.assign({},null==q?void 0:q.components.securitySchemes),{[t]:Object.assign(Object.assign({},null==q?void 0:q.components.securitySchemes[t]),{type:"openIdConnect"===(null==q?void 0:q.components.securitySchemes[t].type)?"oauth2":null==q?void 0:q.components.securitySchemes[t].type})})})}),k=Object.assign(Object.assign({},k),{[t]:k[e]})}else A=Object.assign({},q);A.servers=S;const x=t.options.corsProxyUrl;x&&S.length&&(A.servers=S.map((e=>Object.assign(Object.assign({},e),{url:x+normalizeUrlProtocol(e.url)}))),A.paths=Object.assign(Object.assign({},A.paths),{[e.path]:Object.assign(Object.assign({},A.paths[e.path]),{[E]:Object.assign(Object.assign({},A.paths[e.path][E]),{servers:void 0}),servers:void 0})}));const V=(null===(u=null===(i=null==C?void 0:C.content)||void 0===i?void 0:i.active)||void 0===u?void 0:u.name)||null;if(V&&I&&isFileUploadMime(V)){const e=Object.values(I);I=e.length>1?e:e[0]}const B={userFetch:F&&require("cross-fetch").fetch,server:x?x+normalizeUrlProtocol(T.url):T.url,serverVariables:T.variables,spec:A,pathName:e.path,method:e.httpVerb,parameters:Object.assign(Object.assign(Object.assign(Object.assign({},b.path),b.query),b.header),b.cookie),securities:{authorized:k},requestBody:I,requestContentType:V,responseContentType:(null===(p=b.header)||void 0===p?void 0:p.Accept)||null,requestInterceptor:makeRequestInterceptor(t.options,e,null==k?void 0:k.Authorization)};try{const s=yield Swagger.execute(B),r=null==s?void 0:s.data;r instanceof Blob&&(isFileUploadMime(r.type)&&(s.fileInfo={rawData:r,fileName:getFileNameFromHeaders(s.headers)}),s.data=yield r.text()),null==o||o({request:B,response:s}),w(s),P(void 0)}catch(e){e&&e.response&&e.response.data instanceof Blob&&(e.response.data=yield e.response.data.text(),null==o||o({request:B,response:e.response})),w(void 0),P(e)}finally{v(!1),d(1),j(Date.now()-_),null===(y=null===(m=null==t?void 0:t.options.events)||void 0===m?void 0:m.tryItSent)||void 0===y||y.call(m,{eventType:AnalyticsEventType.TryItSent,resource:"Redocly_OperationTryIt",action:"Sent",operationId:e.operationId,operationPath:e.path,operationHttpVerb:e.httpVerb,operationSummary:e.description})}}))}))};export const Console=observer(ConsoleComponent);
1
+ var __awaiter=this&&this.__awaiter||function(e,t,o,r){return new(o||(o=Promise))((function(s,n){function a(e){try{l(r.next(e))}catch(e){n(e)}}function i(e){try{l(r.throw(e))}catch(e){n(e)}}function l(e){var t;e.done?s(e.value):(t=e.value,t instanceof o?t:new o((function(e){e(t)}))).then(a,i)}l((r=r.apply(e,t||[])).next())}))},__rest=this&&this.__rest||function(e,t){var o={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(o[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var s=0;for(r=Object.getOwnPropertySymbols(e);s<r.length;s++)t.indexOf(r[s])<0&&Object.prototype.propertyIsEnumerable.call(e,r[s])&&(o[r[s]]=e[r[s]])}return o};import Swagger from"swagger-client";import React,{useEffect,useState,useRef,useCallback,memo}from"react";import{useMount}from"@redocly/theme";import{useRecoilValue,useRecoilState}from"recoil";import{unescapeFormId}from"../../../utils";import{StyledCodeHeader}from"../../Panel";import{isFileUploadMime}from"../../common/FileUpload/helper";import{AnalyticsEventType}from"../../../events";import{dereferenceDefinitionForTryIt,getFileNameFromHeaders,getParameters,makeRequestInterceptor,unescapeQueryParams,updateStorage}from"../utils";import{ResponsePanel}from"../ResponsePanel";import{ConsoleTabs}from"../ConsoleTabs";import{ActionPanel}from"../ActionPanel";import{Request}from"./Request";import{CloseButton,ConsoleBody}from"../styled";import{ConsoleWrapper}from"./ConsoleWrapper";import{usePrevious}from"../../../hooks";import{globalStoreSelector}from"../../../recoil/store";import{getActiveMediaType}from"../../../models";import{operationStore}from"../../../recoil/operation";function normalizeUrlProtocol(e){return e.startsWith("//")?"https:"+e:e}function ConsoleComponent({operation:e,onResponse:t,className:o,rootElement:r,properties:s,securityDefaults:n,onClose:a}){let i=useRef();const[l,c]=useRecoilState(operationStore(e.pointer)),[u,p]=useState(l.activeServer||e.activeServer),[d,m]=useState(0),[v,y]=useState(!1),[h,f]=useState(!1),[g,b]=useState({values:{path:getParameters(e.parameters,"path"),cookie:getParameters(e.parameters,"cookie"),header:getParameters(e.parameters,"header"),query:getParameters(e.parameters,"query")}}),[O,S]=useState(),[j,C]=useState(),[R,P]=useState(),[I,w]=useState(),T=usePrevious(e),{parser:q,options:E}=useRecoilValue(globalStoreSelector),_=useCallback(((e,t=e.getState())=>{var{values:o}=t,r=__rest(t,["values"]);i.current=e,setTimeout((()=>{b(Object.assign(Object.assign({},r),{values:Object.assign(Object.assign({},o),{query:unescapeQueryParams(o.query||{})})}))}),0)}),[]),k=useCallback((e=>{var{values:t}=e,o=__rest(e,["values"]);const r=Object.assign(Object.assign({},o),{values:Object.assign(Object.assign({},t),{query:unescapeQueryParams(t.query||{})})});c((e=>Object.assign(Object.assign({},e),{requestValues:JSON.parse(JSON.stringify(t))}))),b(r),updateStorage(r)}),[c]),F=useCallback((e=>{m(e)}),[]),A=useCallback((e=>{p(e),c((t=>Object.assign(Object.assign({},t),{activeServer:e})))}),[c]),V=useCallback((()=>__awaiter(this,void 0,void 0,(function*(){var o,r,s,n,a,l,c,p,d,v,h,b,S,j,R,I,T;const{values:q,invalid:_}=(null===(o=null==i?void 0:i.current)||void 0===o?void 0:o.getState())||g||{};if(null===(r=i.current)||void 0===r||r.submitForm(),_)return f(!0),setTimeout((()=>f(!1)),1e3),void(null===(n=null===(s=E.events)||void 0===s?void 0:s.tryItSent)||void 0===n||n.call(s,{eventType:AnalyticsEventType.TryItSent,resource:"Redocly_OperationTryIt",action:"ValidationFailed",operationId:e.operationId,operationPath:e.path,operationHttpVerb:e.httpVerb,operationSummary:e.description}));const{servers:k,requestBody:F}=e,A=F&&F.content&&(null===(a=getActiveMediaType(F.content))||void 0===a?void 0:a.name)||"";let V=q.body;if(/json/.test(A))try{V=JSON.parse(V)}catch(e){console.error(e)}y(!0);const x=O,B=(e.httpVerb||"").toLowerCase();if(!k)throw console.error("Servers are not specified in your OpenAPI file. You can't use Try It Out console without specifying servers. If you use OpenAPI 2, make sure you configured host and basepath"),new Error("Servers are not specified");const M=k.find((e=>u.url.endsWith(e.url.endsWith("/")?e.url.substring(0,e.url.length-1):e.url))),N=Date.now(),U=!!window.document.documentMode;let D,H=q.auth;if(q.auth){const e=Object.keys(q.auth)[0],t=unescapeFormId(e);D=Object.assign(Object.assign({},x),{components:Object.assign(Object.assign({},null==x?void 0:x.components),{securitySchemes:Object.assign(Object.assign({},null===(l=null==x?void 0:x.components)||void 0===l?void 0:l.securitySchemes),{[t]:Object.assign(Object.assign({},null===(p=null===(c=null==x?void 0:x.components)||void 0===c?void 0:c.securitySchemes)||void 0===p?void 0:p[t]),{type:"openIdConnect"===(null===(h=null===(v=null===(d=null==x?void 0:x.components)||void 0===d?void 0:d.securitySchemes)||void 0===v?void 0:v[t])||void 0===h?void 0:h.type)?"oauth2":(null===(S=null===(b=null==x?void 0:x.components)||void 0===b?void 0:b.securitySchemes)||void 0===S?void 0:S[t]).type})})})}),H=Object.assign(Object.assign({},H),{[t]:H[e]})}else D=Object.assign({},x);D.servers=k;const W=E.corsProxyUrl;W&&k.length&&(D.servers=k.map((e=>Object.assign(Object.assign({},e),{url:W+normalizeUrlProtocol(e.url)}))),D.paths=Object.assign(Object.assign({},D.paths),{[e.path]:Object.assign(Object.assign({},D.paths[e.path]),{[B]:Object.assign(Object.assign({},D.paths[e.path][B]),{servers:void 0}),servers:void 0})}));const z=(null==F?void 0:F.content)&&(null===(j=getActiveMediaType(F.content))||void 0===j?void 0:j.name)||null;if(z&&V&&isFileUploadMime(z)){const e=Object.values(V);V=e.length>1?e:e[0]}const J={userFetch:U&&require("cross-fetch").fetch,server:W?W+normalizeUrlProtocol(M.url):M.url,serverVariables:M.variables,spec:D,pathName:e.path,method:e.httpVerb,parameters:Object.assign(Object.assign(Object.assign(Object.assign({},q.path),q.query),q.header),q.cookie),securities:{authorized:H},requestBody:V,requestContentType:z,responseContentType:(null===(R=q.header)||void 0===R?void 0:R.Accept)||null,requestInterceptor:makeRequestInterceptor(E,e,null==H?void 0:H.Authorization)};try{const o=yield Swagger.execute(J),r=null==o?void 0:o.data;r instanceof Blob&&(isFileUploadMime(r.type)&&(o.fileInfo={rawData:r,fileName:getFileNameFromHeaders(o.headers)}),o.data=yield r.text()),null==t||t({request:J,response:o}),w(o),P(void 0)}catch(e){e&&e.response&&e.response.data instanceof Blob&&(e.response.data=yield e.response.data.text(),null==t||t({request:J,response:e.response})),w(void 0),P(e)}finally{y(!1),m(1),C(Date.now()-N),null===(T=null===(I=E.events)||void 0===I?void 0:I.tryItSent)||void 0===T||T.call(I,{eventType:AnalyticsEventType.TryItSent,resource:"Redocly_OperationTryIt",action:"Sent",operationId:e.operationId,operationPath:e.path,operationHttpVerb:e.httpVerb,operationSummary:e.description})}}))),[u.url,g,t,e,E,O]);useMount((()=>__awaiter(this,void 0,void 0,(function*(){var t;const o=yield dereferenceDefinitionForTryIt(e,q.definition);S(o),null===(t=i.current)||void 0===t||t.setValues({})})))),useEffect((()=>{T&&T!==e&&(w(void 0),P(void 0),m(0))}),[e,T]);const x=!(!I&&!R);return React.createElement(ConsoleWrapper,{shaking:h,className:o,rootElement:r},React.createElement(StyledCodeHeader,null,React.createElement(ConsoleTabs,{active:d,hasResponse:x,onChange:F}),a&&React.createElement(CloseButton,{onClick:a}," ✕ ")),React.createElement(ConsoleBody,{hidden:0!==d,"data-cy":"console-request-body"},React.createElement(Request,{operation:e,properties:s,securityDefaults:n,form:g,resolvedRawSpec:O,server:u,formApi:i.current,setFormApi:_,handleChange:k,handleServerChange:A})),React.createElement(ConsoleBody,{hidden:1!==d,"data-cy":"console-response-body"},React.createElement(ResponsePanel,{response:I,error:R,time:j}),";"),React.createElement(ActionPanel,{hasResponse:x,params:g.values,operation:e,loading:v,execute:V}))}export const Console=memo(ConsoleComponent);
2
2
  //# sourceMappingURL=Console.js.map
@@ -1,2 +1,2 @@
1
- var __awaiter=this&&this.__awaiter||function(e,t,o,n){return new(o||(o=Promise))((function(s,r){function i(e){try{l(n.next(e))}catch(e){r(e)}}function a(e){try{l(n.throw(e))}catch(e){r(e)}}function l(e){var t;e.done?s(e.value):(t=e.value,t instanceof o?t:new o((function(e){e(t)}))).then(i,a)}l((n=n.apply(e,t||[])).next())}))};import React,{useContext,useState,useEffect}from"react";import{useDimensions}from"../../../hooks";import{CodeHeader}from"../../Panel";import{StoreContext}from"../../../context";import{ConsoleWrap}from"../styled";export function Console(e){const[t,o]=useState({}),n=useContext(StoreContext),[s]=useDimensions(e.rootElement);return useEffect((()=>{(()=>{__awaiter(this,void 0,void 0,(function*(){const e=yield import("./Console");o({Console:e.Console})}))})()}),[]),t.Console?React.createElement(t.Console,Object.assign({},e)):React.createElement(ConsoleWrap,{scrollYOffset:null==n?void 0:n.options.scrollYOffset,className:e.className,fullWidth:null==s?void 0:s.width},React.createElement(CodeHeader,null,"Loading..."))}
1
+ var __awaiter=this&&this.__awaiter||function(e,o,t,n){return new(t||(t=Promise))((function(a,r){function i(e){try{c(n.next(e))}catch(e){r(e)}}function s(e){try{c(n.throw(e))}catch(e){r(e)}}function c(e){var o;e.done?a(e.value):(o=e.value,o instanceof t?o:new t((function(e){e(o)}))).then(i,s)}c((n=n.apply(e,o||[])).next())}))};import React from"react";import{useMount}from"@redocly/theme";import{useDimensions}from"../../../hooks";import{ConsoleWrap}from"../styled";import{CodeHeader}from"../../Panel";export function Console(e){const[o,t]=React.useState({}),[n]=useDimensions(e.rootElement);return useMount((()=>{(()=>{__awaiter(this,void 0,void 0,(function*(){const e=yield import("./Console");t({Console:e.Console})}))})()})),o.Console?React.createElement(o.Console,Object.assign({},e)):React.createElement(ConsoleWrap,{className:e.className,fullWidth:null==n?void 0:n.width},React.createElement(CodeHeader,null,"Loading..."))}
2
2
  //# sourceMappingURL=ConsoleLazy.js.map
@@ -1,6 +1,9 @@
1
+ import React from 'react';
1
2
  import type { PropsWithChildren } from 'react';
2
- export declare const ConsoleWrapper: (props: PropsWithChildren<{
3
+ type ConsoleWrapperProps = PropsWithChildren<{
3
4
  shaking: boolean;
4
5
  className?: string;
5
6
  rootElement?: HTMLElement | null;
6
- }>) => JSX.Element;
7
+ }>;
8
+ export declare const ConsoleWrapper: React.NamedExoticComponent<ConsoleWrapperProps>;
9
+ export {};
@@ -1,2 +1,2 @@
1
- import React,{useContext}from"react";import{observer}from"mobx-react";import{ConsoleWrap}from"../styled";import{useDimensions}from"../../../hooks";import{StoreContext}from"../../../context";const ConsoleWrapperComponent=o=>{const{shaking:e,className:t,children:r,rootElement:s}=o,[n]=useDimensions(s),l=useContext(StoreContext);return React.createElement(ConsoleWrap,{scrollYOffset:null==l?void 0:l.options.scrollYOffset,shaking:e,className:t,"data-cy":"console",fullWidth:null==n?void 0:n.width},r)};export const ConsoleWrapper=observer(ConsoleWrapperComponent);
1
+ import React,{memo}from"react";import{useRecoilValue}from"recoil";import{ConsoleWrap}from"../styled";import{useDimensions}from"../../../hooks";import{globalOptionsSelector}from"../../../recoil/store";function ConsoleWrapperComponent({shaking:o,className:e,children:l,rootElement:r}){const[s]=useDimensions(r),t=useRecoilValue(globalOptionsSelector);return React.createElement(ConsoleWrap,{scrollYOffset:t.scrollYOffset,shaking:o,className:e,"data-cy":"console",fullWidth:null==s?void 0:s.width},l)}export const ConsoleWrapper=memo(ConsoleWrapperComponent);
2
2
  //# sourceMappingURL=ConsoleWrapper.js.map
@@ -1,12 +1,3 @@
1
- export declare const Request: ({ operation, properties, securityDefaults, form, resolvedRawSpec, server, formApi, setFormApi, handleChange, handleServerChange, }: {
2
- operation: any;
3
- properties: any;
4
- securityDefaults: any;
5
- form: any;
6
- resolvedRawSpec: any;
7
- server: any;
8
- formApi: any;
9
- setFormApi: any;
10
- handleChange: any;
11
- handleServerChange: any;
12
- }) => JSX.Element;
1
+ import React from 'react';
2
+ import type { RequestProps } from './types';
3
+ export declare const Request: React.NamedExoticComponent<RequestProps>;
@@ -1,2 +1,2 @@
1
- import React,{useContext}from"react";import{observer}from"mobx-react";import{Form,useField}from"informed";import{requiredValidator}from"../utils";import{JsonPointer}from"../../../utils";import{OAuth2}from"../../../services/OAuth2";import{l}from"../../../services";import{Accordion}from"../../Panel";import{ServersDropdown}from"../ServersDropdown";import{TryItPanel}from"../TryItPanel";import{RequestBody}from"../RequestBody";import{RenderHook}from"../../RenderHook";import{OperationParameters}from"../../OperationParameters";import{OptionsContext}from"../../../context";import{AuthPanel}from"../AuthPanel";const RequestComponent=({operation:e,properties:r,securityDefaults:t,form:o,resolvedRawSpec:a,server:n,formApi:i,setFormApi:s,handleChange:u,handleServerChange:c})=>{const d=o.errors||{},m=d.path||d.cookie||d.header||d.query,{hooks:p,authCorsProxyUrl:h}=useContext(OptionsContext),v=a&&JsonPointer.get(a,e.pointer);let y=o.values&&o.values.auth&&Object.keys(o.values.auth)[0];y&&o.values.auth[y]||(y=void 0),!y||void 0===o.values.auth[y].token&&void 0===o.values.auth[y].client_id&&void 0===o.values.auth[y].client_secret||o.values.auth[y].token&&o.values.auth[y].token.access_token||(y=void 0),y&&null!=o.values.auth[y].username&&(o.values.auth[y].username&&o.values.auth[y].password||(y=void 0));const f=e.parameters||[];return!a&&React.createElement(React.Fragment,null,"Loading...")||React.createElement(Form,{onChange:u,getApi:s,style:{flex:1,display:"flex",flexDirection:"column",margin:0}},React.createElement(ServersDropdown,{operation:e,onChange:c}),React.createElement(Accordion,{initialActiveIdx:e.security.length&&y?1:0},e.security.length&&i&&React.createElement(TryItPanel,{header:l("tryItAuth"),"data-cy":"security-trigger",error:!y&&!!d.auth,success:!!y,renderChildrenHidden:!0},(null==p?void 0:p.ReplaceTryItSecurityPanel)?React.createElement(AuthPanelWrapper,{field:"auth",validate:requiredValidator},(r=>React.createElement(RenderHook,{Hook:null==p?void 0:p.ReplaceTryItSecurityPanel,props:{server:n,operation:e,onChange:r,OAuth2:OAuth2}}))):React.createElement(AuthPanel,{formApi:i,form:o,operation:e,activeServer:n.url,authCorsProxyUrl:h,securityDefaults:t}))||null,e.requestBody&&i&&React.createElement(TryItPanel,{header:l("tryItBody"),"data-cy":"body-trigger",error:!!d.body,renderChildrenHidden:!0},React.createElement(RequestBody,{validate:allowBodyErrors,formApi:i,body:e.requestBody,id:e.id,resolvedBody:null==v?void 0:v.requestBody,properties:r}))||null,f.length&&React.createElement(TryItPanel,{header:l("tryItParameters"),"data-cy":"parameters-trigger",error:m,renderChildrenHidden:!0},React.createElement(OperationParameters,{operation:e,values:o.values,errors:o.errors||{}}))||null))};function AuthPanelWrapper(e){const{fieldApi:r,render:t,userProps:o}=useField(Object.assign({},e)),{setValue:a}=r,{children:n}=o;return t(React.createElement(React.Fragment,null,n(a)))}function allowBodyErrors(){}export const Request=observer(RequestComponent);
1
+ import React,{memo}from"react";import{Form,useField}from"informed";import{useRecoilValue}from"recoil";import{requiredValidator}from"../utils";import{JsonPointer}from"../../../utils";import{OAuth2}from"../../../services/OAuth2";import{l}from"../../../services";import{Accordion}from"../../Panel";import{ServersDropdown}from"../ServersDropdown";import{TryItPanel}from"../TryItPanel";import{RequestBody}from"../RequestBody";import{RenderHook}from"../../RenderHook";import{OperationParameters}from"../../OperationParameters";import{AuthPanel}from"../AuthPanel";import{globalOptionsSelector}from"../../../recoil/store";function RequestComponent({operation:e,properties:r,securityDefaults:t,form:o,resolvedRawSpec:a,server:n,formApi:i,setFormApi:s,handleChange:u,handleServerChange:c}){const d=o.errors||{},m=d.path||d.cookie||d.header||d.query,{hooks:p,authCorsProxyUrl:h}=useRecoilValue(globalOptionsSelector),y=a&&JsonPointer.get(a,e.pointer);let v=o.values&&o.values.auth&&Object.keys(o.values.auth)[0];v&&o.values.auth[v]||(v=void 0),!v||void 0===o.values.auth[v].token&&void 0===o.values.auth[v].client_id&&void 0===o.values.auth[v].client_secret||o.values.auth[v].token&&o.values.auth[v].token.access_token||(v=void 0),v&&null!=o.values.auth[v].username&&(o.values.auth[v].username&&o.values.auth[v].password||(v=void 0));const f=e.parameters||[];return!a&&React.createElement(React.Fragment,null,"Loading...")||React.createElement(Form,{onChange:u,getApi:s,style:{flex:1,display:"flex",flexDirection:"column",margin:0}},React.createElement(ServersDropdown,{operation:e,onChange:c}),React.createElement(Accordion,{initialActiveIdx:e.security.length&&v?1:0},e.security.length&&i&&React.createElement(TryItPanel,{header:l("tryItAuth"),"data-cy":"security-trigger",error:!v&&!!d.auth,success:!!v,renderChildrenHidden:!0},(null==p?void 0:p.ReplaceTryItSecurityPanel)?React.createElement(AuthPanelWrapper,{field:"auth",validate:requiredValidator},(r=>React.createElement(RenderHook,{Hook:null==p?void 0:p.ReplaceTryItSecurityPanel,props:{server:n,operation:e,onChange:r,OAuth2:OAuth2}}))):React.createElement(AuthPanel,{formApi:i,form:o,operation:e,activeServer:n.url,authCorsProxyUrl:h,securityDefaults:t}))||null,e.requestBody&&i&&React.createElement(TryItPanel,{header:l("tryItBody"),"data-cy":"body-trigger",error:!!d.body,renderChildrenHidden:!0},React.createElement(RequestBody,{validate:allowBodyErrors,formApi:i,body:e.requestBody,pointer:e.pointer,id:e.id,resolvedBody:null==y?void 0:y.requestBody,properties:r}))||null,f.length&&React.createElement(TryItPanel,{header:l("tryItParameters"),"data-cy":"parameters-trigger",error:m,renderChildrenHidden:!0},React.createElement(OperationParameters,{operation:e,values:o.values,errors:o.errors||{}}))||null))}function AuthPanelWrapper(e){const{fieldApi:r,render:t,userProps:o}=useField(Object.assign({},e)),{setValue:a}=r,{children:l}=o;return t(React.createElement(React.Fragment,null,l(a)))}function allowBodyErrors(){}export const Request=memo(RequestComponent);
2
2
  //# sourceMappingURL=Request.js.map
@@ -1,13 +1,12 @@
1
- import type { ProStore } from '../../../services';
1
+ import type { FormApi, FormState } from 'informed';
2
2
  import type { OperationModel } from '../../../models';
3
- import type { SecurityDetails } from '../../../types';
3
+ import type { SecurityDetails, Server } from '../../../types';
4
4
  import type { OpenApiResponseData } from '../types';
5
5
  export type RequestAndResponseType = {
6
6
  request: Record<string, unknown>;
7
7
  response: OpenApiResponseData;
8
8
  };
9
9
  export interface ConsoleProps {
10
- store: ProStore;
11
10
  operation: OperationModel;
12
11
  className?: string;
13
12
  rootElement?: HTMLElement | null;
@@ -16,3 +15,15 @@ export interface ConsoleProps {
16
15
  securityDefaults?: Record<string, SecurityDetails | string>;
17
16
  onResponse?: (arg: RequestAndResponseType) => void;
18
17
  }
18
+ export interface RequestProps {
19
+ operation: OperationModel;
20
+ properties?: any;
21
+ securityDefaults: Record<string, string | SecurityDetails> | undefined;
22
+ form: any;
23
+ resolvedRawSpec: any;
24
+ server: Server;
25
+ formApi?: FormApi;
26
+ setFormApi: (formApi: FormApi) => void;
27
+ handleChange: (formState: FormState) => void;
28
+ handleServerChange: (server: Server) => void;
29
+ }
@@ -1,2 +1,2 @@
1
- var __awaiter=this&&this.__awaiter||function(e,t,o,n){return new(o||(o=Promise))((function(l,r){function a(e){try{c(n.next(e))}catch(e){r(e)}}function i(e){try{c(n.throw(e))}catch(e){r(e)}}function c(e){var t;e.done?l(e.value):(t=e.value,t instanceof o?t:new o((function(e){e(t)}))).then(a,i)}c((n=n.apply(e,t||[])).next())}))};import React,{useEffect,useState,useContext}from"react";import{Button}from"@redocly/theme";import{ButtonsWrapper,PkceOptionsWrapper,PkceDetails}from"./styled";import{LinearProgress}from"../../common/LinearProgress";import{FormControl,FormLabel,FormError,FormWrapper}from"../../common/form";import{FormDropdown,FormTextField,TextField}from"../../common/TextField";import{Checkbox}from"../../common/Checkbox";import{OAuth2,deriveCodeChallenge}from"../../../services/OAuth2";import{fromSessionStorage,getSecurityDetailsOptions}from"../../../utils";import{isEmptyObject,randString}from"../../../services/utils";import{getOAuth2TokenEndpointAuthHeader,normalizeUrlProtocol,validateTokenEndpointMethod}from"../utils";import Scope from"../Scope";import{Error}from"./Error";import{OptionsContext}from"../../../context";function requiredValidator(e){if(!e)return"Field is required"}export const OAuth2Flow=({usePkce:e,form:t,id:o,formApi:n,flow:l,tokenUrl:r,authCorsProxyUrl:a,tokenEndpointAuthMethod:i,server:c,scopes:u,authorizationUrl:d,defaultValues:s,clientId:m})=>{var p,h,f,v;const{oAuth2RedirectURI:g,routingBasePath:E}=useContext(OptionsContext),[C,k]=useState(null),[R,F]=useState(!1),[S,y]=useState(!1),[O,b]=useState(void 0),[_,x]=useState(void 0),[A,W]=useState(void 0),P=(null===(h=null===(p=t.values)||void 0===p?void 0:p.auth)||void 0===h?void 0:h[o])||{},T=(null===(v=null===(f=t.errors)||void 0===f?void 0:f.auth)||void 0===v?void 0:v[o])||{},w=void 0!==O&&_!==A?{label:"sync",onClick:()=>{O&&x(A)}}:void 0;useEffect((()=>{if(e){const e=randString(43);deriveCodeChallenge(e).then((t=>{b(e),x(t),W(t)}))}}),[e]);const V=()=>{n.setValue(`auth.${o}.token`,"")};if(!d)return React.createElement(FormError,null,"No flow info");let z=fromSessionStorage(`auth.${o}.token`)||JSON.stringify(null==s?void 0:s.token);z=z?JSON.parse(z):"";const B=getSecurityDetailsOptions(o,"client_id"),U={field:`auth.${o}.client_id`,fullWidth:!0,initialValue:fromSessionStorage(`auth.${o}.client_id`)||m||(null==s?void 0:s.client_id),initValue:fromSessionStorage(`auth.${o}.client_id`)||m||(null==s?void 0:s.client_id),placeholder:"Your OAuth2 app Client ID",validate:requiredValidator,validateOnBlur:!0,validateOnChange:!0};return React.createElement("div",null,React.createElement(FormWrapper,null,React.createElement(FormControl,null,React.createElement(FormLabel,null," Client ID: "),B?React.createElement(FormDropdown,Object.assign({},U,{options:B})):React.createElement(FormTextField,Object.assign({},U,{"data-cy":"client-id-input",panel:"try-it"}))),"authorizationCode"===l&&React.createElement(React.Fragment,null,(!(null==e?void 0:e.hideClientSecretInput)||!e)&&React.createElement(FormControl,null,React.createElement(FormLabel,null,"Client Secret:"),React.createElement(FormTextField,{type:"password",fullWidth:!0,field:`auth.${o}.client_secret`,initialValue:fromSessionStorage(`auth.${o}.client_secret`)||(null==s?void 0:s.client_secret),validateOnBlur:!0,validateOnChange:!0,panel:"try-it","data-cy":"client-secret-input"})),e&&!e.disableManualConfiguration&&React.createElement(PkceOptionsWrapper,null,React.createElement(Checkbox,{id:"pkce-opitons-toggle",label:"Configure PKCE manually",checked:S,onChange:()=>{y((e=>!e))},"data-cy":"pkce-options-toggle"}),S&&React.createElement(PkceDetails,null,React.createElement(FormControl,null,React.createElement(FormLabel,null,"Code Verifier"),React.createElement(TextField,{fullWidth:!0,value:O,onChange:({target:{value:e}})=>__awaiter(void 0,void 0,void 0,(function*(){const t=yield deriveCodeChallenge(e);b(e),W(t)})),panel:"try-it","data-cy":"code-verifier-input"})),React.createElement(FormControl,null,React.createElement(FormLabel,null,"Code Challenge"),React.createElement(TextField,{fullWidth:!0,value:_,onChange:({target:{value:e}})=>{x(e)},inputActionButton:w,panel:"try-it","data-cy":"code-challenge-input"}))))),React.createElement(FormTextField,{fullWidth:!0,field:`auth.${o}.token`,type:"hidden",initialValue:z,panel:"try-it"}),React.createElement(Scope,{id:o,scopes:u}),P.token&&P.token.access_token?React.createElement(FormControl,null,React.createElement(FormLabel,null," Access Token: "),React.createElement(TextField,{disabled:!0,type:"password",fullWidth:!0,value:P.token.access_token,panel:"try-it"})):null),React.createElement(ButtonsWrapper,null,P.token&&P.token.access_token?React.createElement(Button,{fullWidth:!0,onClick:()=>{V(),k(null)}},"Log out"):R?React.createElement(React.Fragment,null,React.createElement(Button,{fullWidth:!0,onClick:()=>{F(!1),k(null),OAuth2.clearRedirectData(l)}},"Cancel"),React.createElement(LinearProgress,null)):React.createElement(Button,{fullWidth:!0,disabled:!isEmptyObject(T),onClick:()=>{(t=>{if(!t)return;if(n.validate(),!isEmptyObject(T))return;F(!0),k(null);const u=a?a+normalizeUrlProtocol(t):t,d=a&&r?a+normalizeUrlProtocol(r):r,s=n.getValue(`auth.${o}.scopes`),m={authorizationUrl:u.startsWith("http")?u:c+u,clientId:P.client_id,scopes:s,redirectUri:g,routingBasePath:E,successCallback:e=>{n.setValue(`auth.${o}.token`,e),F(!1),k(null)},errorCallback:e=>{F(!1),k((null==e?void 0:e.message)||"Failed to retrieve the access token")}};"implicit"===l&&OAuth2.authorizeImplicit(m),validateTokenEndpointMethod(i)?"authorizationCode"===l&&OAuth2.authorizeAuthorizationCode(Object.assign(Object.assign(Object.assign({},m),{tokenUrl:(null==d?void 0:d.startsWith("http"))?d:c+d,clientSecret:P.client_secret,extraHeaders:getOAuth2TokenEndpointAuthHeader({authMethod:i,clientId:P.client_id,clientSecret:P.client_secret})}),e&&{codeVerifier:O,codeChallenge:_})):console.log(`Unsupported token endpoint auth method: ${i}`)})(d)}},"Authorize")),R||C||!P.token||!P.token.access_token&&React.createElement(Error,{loading:R,error:C,token:P.token}))};
1
+ var __awaiter=this&&this.__awaiter||function(e,t,o,l){return new(o||(o=Promise))((function(n,r){function a(e){try{c(l.next(e))}catch(e){r(e)}}function i(e){try{c(l.throw(e))}catch(e){r(e)}}function c(e){var t;e.done?n(e.value):(t=e.value,t instanceof o?t:new o((function(e){e(t)}))).then(a,i)}c((l=l.apply(e,t||[])).next())}))};import React,{useEffect,useState}from"react";import{Button}from"@redocly/theme";import{useRecoilValue}from"recoil";import{ButtonsWrapper,PkceOptionsWrapper,PkceDetails}from"./styled";import{LinearProgress}from"../../common/LinearProgress";import{FormControl,FormLabel,FormError,FormWrapper}from"../../common/form";import{FormDropdown,FormTextField,TextField}from"../../common/TextField";import{Checkbox}from"../../common/Checkbox";import{OAuth2,deriveCodeChallenge}from"../../../services/OAuth2";import{fromSessionStorage,getSecurityDetailsOptions}from"../../../utils";import{isEmptyObject,randString}from"../../../services/utils";import{getOAuth2TokenEndpointAuthHeader,normalizeUrlProtocol,validateTokenEndpointMethod}from"../utils";import Scope from"../Scope";import{Error}from"./Error";import{globalOptionsSelector}from"../../../recoil/store";function requiredValidator(e){if(!e)return"Field is required"}export const OAuth2Flow=({usePkce:e,form:t,id:o,formApi:l,flow:n,tokenUrl:r,authCorsProxyUrl:a,tokenEndpointAuthMethod:i,server:c,scopes:u,authorizationUrl:d,defaultValues:s,clientId:m})=>{var p,h,f,v;const{oAuth2RedirectURI:g,routingBasePath:E}=useRecoilValue(globalOptionsSelector),[k,C]=useState(null),[R,F]=useState(!1),[S,y]=useState(!1),[O,b]=useState(void 0),[_,A]=useState(void 0),[x,W]=useState(void 0),P=(null===(h=null===(p=t.values)||void 0===p?void 0:p.auth)||void 0===h?void 0:h[o])||{},T=(null===(v=null===(f=t.errors)||void 0===f?void 0:f.auth)||void 0===v?void 0:v[o])||{},V=void 0!==O&&_!==x?{label:"sync",onClick:()=>{O&&A(x)}}:void 0;useEffect((()=>{if(e){const e=randString(43);deriveCodeChallenge(e).then((t=>{b(e),A(t),W(t)}))}}),[e]);const w=()=>{l.setValue(`auth.${o}.token`,"")};if(!d)return React.createElement(FormError,null,"No flow info");let z=fromSessionStorage(`auth.${o}.token`)||JSON.stringify(null==s?void 0:s.token);z=z?JSON.parse(z):"";const B=getSecurityDetailsOptions(o,"client_id"),U={field:`auth.${o}.client_id`,fullWidth:!0,initialValue:fromSessionStorage(`auth.${o}.client_id`)||m||(null==s?void 0:s.client_id),initValue:fromSessionStorage(`auth.${o}.client_id`)||m||(null==s?void 0:s.client_id),placeholder:"Your OAuth2 app Client ID",validate:requiredValidator,validateOnBlur:!0,validateOnChange:!0};return React.createElement("div",null,React.createElement(FormWrapper,null,React.createElement(FormControl,null,React.createElement(FormLabel,null," Client ID: "),B?React.createElement(FormDropdown,Object.assign({},U,{options:B})):React.createElement(FormTextField,Object.assign({},U,{"data-cy":"client-id-input",panel:"try-it"}))),"authorizationCode"===n&&React.createElement(React.Fragment,null,(!(null==e?void 0:e.hideClientSecretInput)||!e)&&React.createElement(FormControl,null,React.createElement(FormLabel,null,"Client Secret:"),React.createElement(FormTextField,{type:"password",fullWidth:!0,field:`auth.${o}.client_secret`,initialValue:fromSessionStorage(`auth.${o}.client_secret`)||(null==s?void 0:s.client_secret),validateOnBlur:!0,validateOnChange:!0,panel:"try-it","data-cy":"client-secret-input"})),e&&!e.disableManualConfiguration&&React.createElement(PkceOptionsWrapper,null,React.createElement(Checkbox,{id:"pkce-opitons-toggle",label:"Configure PKCE manually",checked:S,onChange:()=>{y((e=>!e))},"data-cy":"pkce-options-toggle"}),S&&React.createElement(PkceDetails,null,React.createElement(FormControl,null,React.createElement(FormLabel,null,"Code Verifier"),React.createElement(TextField,{fullWidth:!0,value:O,onChange:({target:{value:e}})=>__awaiter(void 0,void 0,void 0,(function*(){const t=yield deriveCodeChallenge(e);b(e),W(t)})),panel:"try-it","data-cy":"code-verifier-input"})),React.createElement(FormControl,null,React.createElement(FormLabel,null,"Code Challenge"),React.createElement(TextField,{fullWidth:!0,value:_,onChange:({target:{value:e}})=>{A(e)},inputActionButton:V,panel:"try-it","data-cy":"code-challenge-input"}))))),React.createElement(FormTextField,{fullWidth:!0,field:`auth.${o}.token`,type:"hidden",initialValue:z,panel:"try-it"}),React.createElement(Scope,{id:o,scopes:u}),P.token&&P.token.access_token?React.createElement(FormControl,null,React.createElement(FormLabel,null," Access Token: "),React.createElement(TextField,{disabled:!0,type:"password",fullWidth:!0,value:P.token.access_token,panel:"try-it"})):null),React.createElement(ButtonsWrapper,null,P.token&&P.token.access_token?React.createElement(Button,{fullWidth:!0,onClick:()=>{w(),C(null)}},"Log out"):R?React.createElement(React.Fragment,null,React.createElement(Button,{fullWidth:!0,onClick:()=>{F(!1),C(null),OAuth2.clearRedirectData(n)}},"Cancel"),React.createElement(LinearProgress,null)):React.createElement(Button,{fullWidth:!0,disabled:!isEmptyObject(T),onClick:()=>{(t=>{if(!t)return;if(l.validate(),!isEmptyObject(T))return;F(!0),C(null);const u=a?a+normalizeUrlProtocol(t):t,d=a&&r?a+normalizeUrlProtocol(r):r,s=l.getValue(`auth.${o}.scopes`),m={authorizationUrl:u.startsWith("http")?u:c+u,clientId:P.client_id,scopes:s,redirectUri:g,routingBasePath:E,successCallback:e=>{l.setValue(`auth.${o}.token`,e),F(!1),C(null)},errorCallback:e=>{F(!1),C((null==e?void 0:e.message)||"Failed to retrieve the access token")}};"implicit"===n&&OAuth2.authorizeImplicit(m),validateTokenEndpointMethod(i)?"authorizationCode"===n&&OAuth2.authorizeAuthorizationCode(Object.assign(Object.assign(Object.assign({},m),{tokenUrl:(null==d?void 0:d.startsWith("http"))?d:c+d,clientSecret:P.client_secret,extraHeaders:getOAuth2TokenEndpointAuthHeader({authMethod:i,clientId:P.client_id,clientSecret:P.client_secret})}),e&&{codeVerifier:O,codeChallenge:_})):console.log(`Unsupported token endpoint auth method: ${i}`)})(d)}},"Authorize")),R||k||!P.token||!P.token.access_token&&React.createElement(Error,{loading:R,error:k,token:P.token}))};
2
2
  //# sourceMappingURL=OAuth2Flow.js.map
@@ -1,5 +1,5 @@
1
1
  import type { FormApi, FormState } from 'informed';
2
- import type { SecurityScheme } from '../../models';
2
+ import type { ExtendedOpenAPISecurityScheme } from '../../models';
3
3
  import type { SecurityDetails } from '../../types';
4
4
  export interface OpenIDConnectProps {
5
5
  server: string;
@@ -7,7 +7,7 @@ export interface OpenIDConnectProps {
7
7
  id: string;
8
8
  form: FormState;
9
9
  formApi: FormApi;
10
- scheme: SecurityScheme;
10
+ scheme: ExtendedOpenAPISecurityScheme;
11
11
  clientId?: string;
12
12
  defaultValues?: SecurityDetails;
13
13
  }
@@ -1,3 +1,3 @@
1
1
  import React from 'react';
2
2
  import type { BodyProps } from './types';
3
- export declare const Body: React.FC<BodyProps>;
3
+ export declare const Body: React.NamedExoticComponent<BodyProps>;
@@ -1,2 +1,2 @@
1
- import React,{useCallback}from"react";import{observer}from"mobx-react";import{isRootFileUpload}from"../../common/FileUpload/helper";import{MediaTypes}from"../../../constants";import{ExampleSwitch,useExampleKey}from"../../Samples";import{fromSessionStorage,toSessionStorage}from"../../../utils";import{encodeSample,getStorageExampleKey}from"../utils";import{RequestBodyForm}from"../RequestBodyForm";import{CodemirrorInput}from"../CodemirrorInput";function BodyComponent({mediaType:e,mediaContent:o,properties:a,id:t,resolvedBody:m,formApi:r,getActiveSample:l,validate:n}){const i=e.examples||{},p=Object.keys(i),s=e.schema,d=isRootFileUpload(s||{},e.name)||e.name===MediaTypes.MULTIPART||e.name===MediaTypes.URL_ENCODED,{exampleKey:c}=useExampleKey(e.operation,i),y=fromSessionStorage(getStorageExampleKey(t,e.name,c,i))||encodeSample(i[c],a),u=useCallback(((e="",o="",a=[])=>m=>{toSessionStorage(getStorageExampleKey(t,e,o,a),m)}),[t]),g=useCallback((e=>{null==o||o.activateExampleName(e),r.setValue("body",l(e))}),[r,l,o]),S=useCallback(((e,o)=>{r.setValue(`body.${e}`,o)}),[r]);return React.createElement(React.Fragment,null,p.length&&1!==p.length&&React.createElement(ExampleSwitch,{examples:i,onChange:g,exampleKey:c,panel:"try-it"})||null,d?React.createElement(RequestBodyForm,{mediaType:e,formApi:r,onChange:S}):React.createElement(CodemirrorInput,{id:"body"+t,field:"body",initialValue:y,schema:((null==m?void 0:m.content[e.name])||{}).schema,mode:e.name,validate:n,onChange:u(e.name,c,i)}))}export const Body=observer(BodyComponent);
1
+ import React,{memo,useCallback,useEffect}from"react";import{isRootFileUpload}from"../../common/FileUpload/helper";import{MediaTypes}from"../../../constants";import{ExampleSwitch,useExampleKey}from"../../Samples";import{fromSessionStorage,toSessionStorage}from"../../../utils";import{encodeSample,getStorageExampleKey}from"../utils";import{RequestBodyForm}from"../RequestBodyForm";import{CodemirrorInput}from"../CodemirrorInput";import{useActivateExample}from"../../../hooks";function BodyComponent({mediaType:e,mediaContent:o,properties:t,id:a,resolvedBody:m,formApi:l,getActiveSample:r,validate:n}){const i=useActivateExample(o),p=e.examples||{},s=Object.keys(p),c=e.schema,d=isRootFileUpload(c||{},e.name)||e.name===MediaTypes.MULTIPART||e.name===MediaTypes.URL_ENCODED,{exampleKey:u}=useExampleKey(e.operation,p),y=fromSessionStorage(getStorageExampleKey(a,e.name,u,p))||encodeSample(p[u],t);useEffect((()=>{l.setValue("body",y)}),[y,l]);const f=useCallback(((e="",o="",t=[])=>m=>{toSessionStorage(getStorageExampleKey(a,e,o,t),m)}),[a]),g=useCallback((e=>{i&&i(e),l.setValue("body",r(e))}),[l,r,i]),E=useCallback(((e,o)=>{l.setValue(`body.${e}`,o)}),[l]);return React.createElement(React.Fragment,null,s.length&&1!==s.length&&React.createElement(ExampleSwitch,{examples:p,onChange:g,exampleKey:u,panel:"try-it"})||null,d?React.createElement(RequestBodyForm,{mediaType:e,formApi:l,onChange:E}):React.createElement(CodemirrorInput,{id:"body"+a,field:"body",initialValue:y,schema:((null==m?void 0:m.content[e.name])||{}).schema,mode:e.name,validate:n,onChange:f(e.name,u,p)}))}export const Body=memo(BodyComponent);
2
2
  //# sourceMappingURL=Body.js.map
@@ -1,3 +1,3 @@
1
1
  import React from 'react';
2
2
  import type { RequestBodyProps } from './types';
3
- export declare const RequestBody: React.FC<RequestBodyProps>;
3
+ export declare const RequestBody: React.NamedExoticComponent<RequestBodyProps>;
@@ -1,2 +1,2 @@
1
- import React,{useCallback,useEffect}from"react";import{observer}from"mobx-react";import merge from"deepmerge";import{DropdownOrLabel}from"../../DropdownOrLabel";import{MediaTypesSwitch}from"../../MediaTypeSwitch";import{arrayMergeStrategy}from"../../../services/utils";import{Dropdown}from"../../common";import{RequestMimeLabel}from"../RequestMimeLabel";import{getStorageExampleKey}from"../utils";import{fromSessionStorage}from"../../../utils";import{Body}from"./Body";function RequestBodyComponent({body:e,formApi:o,resolvedBody:t,properties:r,id:i,validate:a}){var l,n;const m=e.content,d=useCallback((e=>{var o;if(!m||!m.hasSample)return"";const t=null===(o=m.active)||void 0===o?void 0:o.examples;if(!(null==t?void 0:t[e]))return"";const i=null==t?void 0:t[e].value,a=r?merge(i,r,{arrayMerge:arrayMergeStrategy}):i;return JSON.stringify(a,null,2)}),[m,r]),p=null===(l=null==m?void 0:m.operation)||void 0===l?void 0:l.activeExampleName;useEffect((()=>{var e,t;if(null===(e=null==m?void 0:m.operation)||void 0===e?void 0:e.activeMimeName){const e=getStorageExampleKey(i,m.operation.activeMimeName,p,null===(t=null==m?void 0:m.active)||void 0===t?void 0:t.examples);o.setValue("body",fromSessionStorage(e)||d(p||""))}else o.setValue("body",JSON.stringify(r||{},null,2))}),[p,null===(n=null==m?void 0:m.operation)||void 0===n?void 0:n.activeMimeName,null==m?void 0:m.active]);return React.createElement(React.Fragment,null,React.createElement(MediaTypesSwitch,{content:e.content,renderDropdown:e=>React.createElement(DropdownOrLabel,Object.assign({},e,{variant:"dark",fullWidth:!0,Label:RequestMimeLabel,Dropdown:Dropdown}))},(e=>React.createElement(Body,{mediaType:e,mediaContent:m,resolvedBody:t,id:i,properties:r,getActiveSample:d,formApi:o,validate:a}))))}export const RequestBody=observer(RequestBodyComponent);
1
+ import React,{memo,useCallback,useEffect}from"react";import merge from"deepmerge";import{useRecoilValue}from"recoil";import{DropdownOrLabel}from"../../DropdownOrLabel";import{MediaTypesSwitch}from"../../MediaTypeSwitch";import{arrayMergeStrategy}from"../../../services/utils";import{Dropdown}from"../../common";import{RequestMimeLabel}from"../RequestMimeLabel";import{getStorageExampleKey}from"../utils";import{fromSessionStorage}from"../../../utils";import{Body}from"./Body";import{getActiveMediaType}from"../../../models";import{activeMimeNameSelector}from"../../../recoil/app";import{operationStore}from"../../../recoil/operation";function RequestBodyComponent({body:e,formApi:o,resolvedBody:t,properties:r,id:a,validate:i,pointer:m}){const l=e.content,n=useRecoilValue(activeMimeNameSelector),{examples:p,name:s}=l&&getActiveMediaType(l,n)||{},c=useCallback((e=>{if(!l||!l.hasSample)return"";if(!(null==p?void 0:p[e]))return"";const o=s&&fromSessionStorage(getStorageExampleKey(a,s,e,p)),t=o?JSON.parse(o):null==p?void 0:p[e].value,i=r?merge(t,r,{arrayMerge:arrayMergeStrategy}):t;return JSON.stringify(i,null,2)}),[s,p,a,l,r]),{activeExampleName:d}=useRecoilValue(operationStore(m));useEffect((()=>{if(s){const e=getStorageExampleKey(a,s,d,p);o.setValue("body",fromSessionStorage(e)||c(d||""))}else o.setValue("body",JSON.stringify(r||{},null,2))}),[p,d,s,o,c,a,r]);return React.createElement(React.Fragment,null,React.createElement(MediaTypesSwitch,{content:e.content,renderDropdown:e=>React.createElement(DropdownOrLabel,Object.assign({},e,{variant:"dark",fullWidth:!0,Label:RequestMimeLabel,Dropdown:Dropdown}))},(e=>React.createElement(Body,{mediaType:e,mediaContent:l,resolvedBody:t,id:a,properties:r,getActiveSample:c,formApi:o,validate:i}))))}export const RequestBody=memo(RequestBodyComponent);
2
2
  //# sourceMappingURL=RequestBody.js.map
@@ -3,6 +3,7 @@ import type { RequestBodyModel, MediaContentModel, MediaTypeModel } from '../../
3
3
  import type { OpenAPIRequestBody } from '../../../types';
4
4
  export interface RequestBodyProps {
5
5
  body: RequestBodyModel;
6
+ pointer: string;
6
7
  resolvedBody: OpenAPIRequestBody;
7
8
  validate: () => string | undefined;
8
9
  formApi: FormApi;
@@ -1,8 +1,11 @@
1
+ import React from 'react';
1
2
  import type { FormApi } from 'informed';
2
3
  import type { FieldModel, MediaTypeModel, UploadFileType } from '../../models';
3
- export declare const RequestBodyForm: (props: {
4
+ interface RequestBodyFormProps {
4
5
  mediaType: MediaTypeModel;
5
6
  onChange(key: string, file: UploadFileType): void;
6
- formApi?: FormApi<import("informed").FormValues> | undefined;
7
- }) => JSX.Element | null;
7
+ formApi?: FormApi;
8
+ }
9
+ export declare const RequestBodyForm: React.NamedExoticComponent<RequestBodyFormProps>;
8
10
  export declare function getRequestBodyFormFields(mediaType: MediaTypeModel): FieldModel[];
11
+ export {};
@@ -1,4 +1,4 @@
1
- import React,{useEffect}from"react";import{observer}from"mobx-react";import styled from"styled-components";import{isMultipartFileUploadProperty,isRootFileUpload,mimeTypeToAccept}from"../common/FileUpload/helper";import{FormControl,FormLabel}from"../common/form";import{FileUpload}from"../common/FileUpload";import{FormTextField,getInvertedInputStyles}from"../common/TextField";import{DefinitionTypes}from"../../models";import{MediaTypes}from"../../constants";import{useExampleKey}from"../Samples";export const RequestBodyForm=observer((e=>{var o;const{mediaType:t,onChange:l,formApi:a}=e,n=t.examples||{},{exampleKey:m}=useExampleKey(t.operation,n),r=null===(o=n[m])||void 0===o?void 0:o.rawValue,i=getRequestBodyFormFields(t);useEffect((()=>a&&i.forEach((e=>{var o,t;const l=null==r?void 0:r[e.name],n=null!==(t=null!==(o=e.example)&&void 0!==o?o:null==l?void 0:l.example)&&void 0!==t?t:l,m="object"==typeof n?JSON.stringify(n):n;void 0!==n&&a.setValue("body."+e.name,`${m}`)}))),[m]);const d=t.schema||{};return isRootFileUpload(d,t.name)?React.createElement(FileFormControlWrapper,null,React.createElement(FormControl,null,React.createElement(StyledFileUpload,{fullWidth:!0,id:`body.${t.name}`,name:`body.${t.name}`,accept:mimeTypeToAccept(t.name),schema:d,contentName:t.name,onChange:l}))):d.type===DefinitionTypes.OBJECT||i?React.createElement(FileFormControlWrapper,null,i.map((e=>{const o=e.schema||{contentMediaType:"",type:"",description:""},a=t.name===MediaTypes.MULTIPART&&isMultipartFileUploadProperty(o),n=o.contentMediaType||"",m=a?React.createElement(StyledFileUpload,{fullWidth:!0,id:"body."+e.name,name:"body."+e.name,accept:mimeTypeToAccept(n),multiple:"array"===o.type,schema:o,contentName:e.name,onChange:l}):React.createElement(FormTextField,{fullWidth:!0,id:"body."+e.name,field:"body."+e.name,placeholder:o.description||e.name,panel:"try-it"});return React.createElement(FormControl,{key:e.name},React.createElement(FormLabel,null,e.name,":"),m)}))):(console.warn(`Invalid schema for request body and mime type: "${t.name}"`,d),null)}));export function getRequestBodyFormFields(e){var o,t,l,a,n;return((null===(t=null===(o=e.schema)||void 0===o?void 0:o.oneOf)||void 0===t?void 0:t.length)?(null===(l=e.schema)||void 0===l?void 0:l.oneOf[null===(a=e.schema)||void 0===a?void 0:a.activeOneOf].fields)||[]:(null===(n=e.schema)||void 0===n?void 0:n.fields)||[]).filter((e=>!e.schema.readOnly))}const FileFormControlWrapper=styled.div`
1
+ import React,{memo,useEffect}from"react";import styled from"styled-components";import{getRecoil}from"recoil-nexus";import{isMultipartFileUploadProperty,isRootFileUpload,mimeTypeToAccept}from"../common/FileUpload/helper";import{FormControl,FormLabel}from"../common/form";import{FileUpload}from"../common/FileUpload";import{FormTextField,getInvertedInputStyles}from"../common/TextField";import{DefinitionTypes}from"../../models";import{MediaTypes}from"../../constants";import{useExampleKey}from"../Samples";import{operationStore}from"../../recoil/operation";import{normalizeText}from"../../utils";function RequestBodyFormComponent({mediaType:e,onChange:o,formApi:t}){var l;const n=e.examples||{},{exampleKey:m}=useExampleKey(e.operation,n),i=null===(l=n[m])||void 0===l?void 0:l.rawValue,r=getRequestBodyFormFields(e);useEffect((()=>t&&r.forEach((e=>{var o,l;const n=null==i?void 0:i[e.name],m=null!==(l=null!==(o=e.example)&&void 0!==o?o:null==n?void 0:n.example)&&void 0!==l?l:n,r="object"==typeof m?JSON.stringify(m):m;void 0!==m&&t.setValue("body."+e.name,`${r}`)}))),[m]);const a=e.schema||{};return isRootFileUpload(a,e.name)?React.createElement(FileFormControlWrapper,null,React.createElement(FormControl,null,React.createElement(StyledFileUpload,{fullWidth:!0,id:`body.${e.name}`,name:`body.${e.name}`,accept:mimeTypeToAccept(e.name),schema:a,contentName:e.name,onChange:o}))):a.type===DefinitionTypes.OBJECT||r?React.createElement(FileFormControlWrapper,null,r.map((t=>{const l=t.schema||{contentMediaType:"",type:"",description:""},n=e.name===MediaTypes.MULTIPART&&isMultipartFileUploadProperty(l),m=l.contentMediaType||"",i=n?React.createElement(StyledFileUpload,{fullWidth:!0,id:"body."+t.name,name:"body."+t.name,accept:mimeTypeToAccept(m),multiple:"array"===l.type,schema:l,contentName:t.name,onChange:o}):React.createElement(FormTextField,{fullWidth:!0,id:"body."+t.name,field:"body."+t.name,placeholder:normalizeText(l.description)||t.name,panel:"try-it"});return React.createElement(FormControl,{key:t.name},React.createElement(FormLabel,null,t.name,":"),i)}))):(console.warn(`Invalid schema for request body and mime type: "${e.name}"`,a),null)}export const RequestBodyForm=memo(RequestBodyFormComponent);export function getRequestBodyFormFields(e){var o,t,l,n;const{activeOneOf:m}=getRecoil(operationStore(e.operation.pointer));return((null===(t=null===(o=e.schema)||void 0===o?void 0:o.oneOf)||void 0===t?void 0:t.length)?(null===(l=e.schema)||void 0===l?void 0:l.oneOf[m].fields)||[]:(null===(n=e.schema)||void 0===n?void 0:n.fields)||[]).filter((e=>!e.schema.readOnly))}const FileFormControlWrapper=styled.div`
2
2
  > div {
3
3
  margin-top: 10px;
4
4
  }
@@ -1,4 +1,4 @@
1
- import React,{useContext,useState}from"react";import styled from"styled-components";import{OptionsContext}from"../../context";import{ResponseHeader,PanelPreCodeBlock}from"./styled";export function ResponseHeadersList({headers:e}){const t=useContext(OptionsContext),[a,o]=useState(!0),{maxResponseHeadersToShowInTryIt:r}=t,n=Object.keys(e),l=!!r&&n.length>r,s=l&&a?[...n].splice(0,r):[...n];return React.createElement(React.Fragment,null,React.createElement(ResponseHeader,null," Headers: "),React.createElement(PanelPreCodeBlock,null,s.map((t=>React.createElement("div",{key:t},React.createElement(HeaderName,null,t,":"),React.createElement("code",null,e[t])))),l&&React.createElement(StyledShowMoreLabel,{onClick:()=>{o(!a)}},a?"Show more...":"Hide headers")))}const HeaderName=styled.strong`
1
+ import React,{useState}from"react";import styled from"styled-components";import{useRecoilValue}from"recoil";import{ResponseHeader,PanelPreCodeBlock}from"./styled";import{globalOptionsSelector}from"../../recoil/store";export function ResponseHeadersList({headers:e}){const t=useRecoilValue(globalOptionsSelector),[a,o]=useState(!0),{maxResponseHeadersToShowInTryIt:l}=t,r=Object.keys(e),n=!!l&&r.length>l,s=n&&a?[...r].splice(0,l):[...r];return React.createElement(React.Fragment,null,React.createElement(ResponseHeader,null," Headers: "),React.createElement(PanelPreCodeBlock,null,s.map((t=>React.createElement("div",{key:t},React.createElement(HeaderName,null,t,":"),React.createElement("code",null,e[t])))),n&&React.createElement(StyledShowMoreLabel,{onClick:()=>{o(!a)}},a?"Show more...":"Hide headers")))}const HeaderName=styled.strong`
2
2
  text-transform: capitalize;
3
3
  display: inline-block;
4
4
  padding-right: 5px;
@@ -3,7 +3,7 @@ interface ServerVariableProps {
3
3
  name: string;
4
4
  value: string;
5
5
  variableEnum?: string[];
6
- description?: string;
6
+ description?: string | GenericObject;
7
7
  defaultValue: string;
8
8
  }
9
9
  export default function ServerVariable({ name, value, description, variableEnum, onChange, defaultValue, }: ServerVariableProps): JSX.Element;
@@ -1,4 +1,4 @@
1
- import React,{useCallback}from"react";import styled from"styled-components";import{Markdown}from"../Markdown";import{FormControl,FormLabel}from"../common/form";import{TextField}from"../common/TextField";import{TryItDropdown}from"./styled";export default function ServerVariable({name:e,value:t,description:o,variableEnum:a,onChange:r,defaultValue:l}){const n=useCallback((e=>r(e.target.value)),[r]),m=useCallback((e=>r(e.value)),[r]),c=a?a.map(((e,t)=>({value:e,idx:t}))):[];return React.createElement(FormControl,null,React.createElement(FormLabel,null,e,":"),c&&c.length?React.createElement(TryItDropdown,{fullWidth:!0,variant:"dark",value:t,options:c,onChange:m}):React.createElement(TextField,{fullWidth:!0,value:t,onChange:n,placeholder:l,panel:"try-it"}),o&&React.createElement(StyledMarkdown,{compact:!0,source:o}))}const StyledMarkdown=styled(Markdown)`
1
+ import React,{useCallback}from"react";import styled from"styled-components";import{Markdown}from"../Markdown";import{FormControl,FormLabel}from"../common/form";import{TextField}from"../common/TextField";import{TryItDropdown}from"./styled";export default function ServerVariable({name:e,value:t,description:o,variableEnum:a,onChange:r,defaultValue:l}){const n=useCallback((e=>r(e.target.value)),[r]),m=useCallback((e=>r(e.value)),[r]),d=a?a.map(((e,t)=>({value:e,idx:t}))):[];return React.createElement(FormControl,null,React.createElement(FormLabel,null,e,":"),d&&d.length?React.createElement(TryItDropdown,{fullWidth:!0,variant:"dark",value:t,options:d,onChange:m}):React.createElement(TextField,{fullWidth:!0,value:t,onChange:n,placeholder:l,panel:"try-it"}),o&&React.createElement(StyledMarkdown,{source:o}))}const StyledMarkdown=styled(Markdown)`
2
2
  margin-top: 5px;
3
3
  color: #d0d0d0;
4
4
  `;
@@ -1,2 +1,3 @@
1
+ import React from 'react';
1
2
  import type { ServersDropdownProps } from './types';
2
- export declare const ServersDropdown: ({ operation, onChange }: ServersDropdownProps) => JSX.Element;
3
+ export declare const ServersDropdown: React.NamedExoticComponent<ServersDropdownProps>;
@@ -1,4 +1,4 @@
1
- import React,{useState}from"react";import{observer}from"mobx-react";import styled from"styled-components";import{useMount}from"@redocly/theme";import{fromSessionStorage,toSessionStorage}from"../../../utils";import{FormControl,FormLabel}from"../../common/form";import{expandDefaultServerVariables,expandVariables,getServerWithVariables,getDefaultOrStoredVariables,updateVariablesStorage}from"../utils";import ServerVariable from"../ServerVariable";import{TryItDropdown}from"../styled";export const ServersDropdown=observer((({operation:e,onChange:r})=>{const a=fromSessionStorage("serverUrl"),t=e.servers.findIndex((e=>e.url===a)),[o,s]=useState(t<0?0:t),[l,n]=useState({});useMount((()=>{const a=getServerWithVariables(e.servers,o);r(a),n(a.variables)}));const i=e.servers.map(((e,r)=>({idx:r,serverUrl:e.url,value:`\n ${expandDefaultServerVariables(expandVariables(e.url,l),e.variables)}\n - ${e.description||"Default"}\n `}))),v=Object.keys(l);return React.createElement(ServerDropdownWrap,{"data-cy":"console-target-server"},React.createElement(FormLabel,{htmlFor:"server"},"Target server: "),React.createElement(FormControl,null,React.createElement(TryItDropdown,{variant:"dark",value:i[o].value,options:i,fullWidth:!0,onChange:a=>{const t=e.servers.find((e=>e.url===a.serverUrl)),o=e.servers.findIndex((e=>e.url===a.serverUrl)),l=getDefaultOrStoredVariables(t);r({url:a.serverUrl||"",variables:l}),toSessionStorage("serverUrl",a.serverUrl||""),s(o),n(l)}})),null==v?void 0:v.map((a=>{var t;const s=null===(t=e.servers[o].variables)||void 0===t?void 0:t[a];if(s)return React.createElement(ServerVariable,{key:a,name:a,value:l[a],defaultValue:s.default,onChange:t=>((a,t)=>{const s=e.servers[o],i=t||""===t?t:getDefaultOrStoredVariables(s)[a],v=Object.assign(Object.assign({},l),{[a]:i});n(v),updateVariablesStorage(a,i),r(Object.assign(Object.assign({},s),{variables:v}))})(a,t),variableEnum:s.enum,description:s.description})})))}));const ServerDropdownWrap=styled.div`
1
+ import React,{memo,useState}from"react";import styled from"styled-components";import{useMount}from"@redocly/theme";import{fromSessionStorage,toSessionStorage}from"../../../utils";import{FormControl,FormLabel}from"../../common/form";import{expandDefaultServerVariables,expandVariables,getServerWithVariables,getDefaultOrStoredVariables,updateVariablesStorage}from"../utils";import ServerVariable from"../ServerVariable";import{TryItDropdown}from"../styled";function ServersDropdownComponent({operation:e,onChange:r}){const t=fromSessionStorage("serverUrl"),a=e.servers.findIndex((e=>e.url===t)),[o,s]=useState(a<0?0:a),[n,l]=useState({});useMount((()=>{const t=getServerWithVariables(e.servers,o);r(t),l(t.variables)}));const i=e.servers.map(((e,r)=>({idx:r,serverUrl:e.url,value:`\n ${expandDefaultServerVariables(expandVariables(e.url,n),e.variables)}\n - ${e.description||"Default"}\n `}))),m=Object.keys(n);return React.createElement(ServerDropdownWrap,{"data-cy":"console-target-server"},React.createElement(FormLabel,{htmlFor:"server"},"Target server: "),React.createElement(FormControl,null,React.createElement(TryItDropdown,{variant:"dark",value:i[o].value,options:i,fullWidth:!0,onChange:t=>{const a=e.servers.find((e=>e.url===t.serverUrl)),o=e.servers.findIndex((e=>e.url===t.serverUrl)),n=getDefaultOrStoredVariables(a);r({url:t.serverUrl||"",variables:n}),toSessionStorage("serverUrl",t.serverUrl||""),s(o),l(n)}})),null==m?void 0:m.map((t=>{var a;const s=null===(a=e.servers[o].variables)||void 0===a?void 0:a[t];if(s)return React.createElement(ServerVariable,{key:t,name:t,value:n[t],defaultValue:s.default,onChange:a=>((t,a)=>{const s=e.servers[o],i=a||""===a?a:getDefaultOrStoredVariables(s)[t],m=Object.assign(Object.assign({},n),{[t]:i});l(m),updateVariablesStorage(t,i),r(Object.assign(Object.assign({},s),{variables:m}))})(t,a),variableEnum:s.enum,description:s.description})})))}export const ServersDropdown=memo(ServersDropdownComponent);const ServerDropdownWrap=styled.div`
2
2
  margin-bottom: 20px;
3
3
  `;
4
4
  //# sourceMappingURL=ServersDropdown.js.map
@@ -1,5 +1,5 @@
1
1
  import type { OpenAPIServer, Server, ServerVariables } from '../../types';
2
- import type { FieldModel, SecurityScheme, OperationModel, ExampleModel } from '../../models';
2
+ import type { FieldModel, ExtendedOpenAPISecurityScheme, OperationModel, ExampleModel } from '../../models';
3
3
  import type { RequestBodyProps } from './RequestBody';
4
4
  import type { Options } from 'src/services/Options';
5
5
  export declare function normalizeUrlProtocol(url: string): string;
@@ -15,7 +15,7 @@ export declare function unescapeQueryParams(params: GenericObject): GenericObjec
15
15
  export declare function getFileNameFromHeaders(headers: Record<string, string>): string;
16
16
  export declare const makeRequestInterceptor: ({ requestInterceptor, sendXUserAgentInTryIt, disableTryItRequestUrlEncoding, }: Pick<Options, 'requestInterceptor' | 'sendXUserAgentInTryIt' | 'disableTryItRequestUrlEncoding'>, operation: OperationModel, securitySchemaAuth?: string) => (req: Request) => void | Request;
17
17
  export declare function requiredValidator(value: unknown): string | undefined;
18
- export declare function fromCookie(scheme: SecurityScheme): string | undefined;
18
+ export declare function fromCookie(scheme: ExtendedOpenAPISecurityScheme): string | undefined;
19
19
  export declare const validateTokenEndpointMethod: (token: string[] | string | undefined) => boolean;
20
20
  export declare const getOAuth2TokenEndpointAuthHeader: ({ authMethod, clientId, clientSecret, }: {
21
21
  authMethod?: string | string[] | undefined;
@@ -26,3 +26,4 @@ export declare function encodeSample(sample: ExampleModel, properties: RequestBo
26
26
  export declare const getStorageExampleKey: (operationId: string, activeMimeType: string, activeExample?: string | false, examples?: {
27
27
  [name: string]: ExampleModel;
28
28
  } | undefined) => string;
29
+ export declare function dereferenceDefinitionForTryIt(operation: OperationModel, definition: GenericObject): Promise<GenericObject>;
@@ -1,2 +1,2 @@
1
- import merge from"deepmerge";import{MediaTypes}from"../../constants";import{arrayMergeStrategy}from"../../services/utils";import{fromSessionStorage,getParameterValue,setParameterValue,setSecurityDetails,toSessionStorage,unescapeFormId}from"../../utils";export function normalizeUrlProtocol(e){return e.startsWith("//")?"https:"+e:e}export function updateStorage(e){if(e.values.auth)for(const t of Object.keys(e.values.auth)){const r=e.values.auth[t];setSecurityDetails(t,r)}updateParameterStorage(e)}function updateParameterStorage(e){var t;for(const r of["path","query","header","cookie"])if(null===(t=e.values)||void 0===t?void 0:t[r])for(const t of Object.keys(e.values[r]))setParameterValue(r,t,e.values[r][t])}export const getParameters=(e,t)=>e.filter((e=>e.in===t)).reduce(((e,t)=>{const{in:r,name:o}=t;return e[o]=getParameterValue(r||"",o),e}),{});const pathTemplateRegExp=/(?:{)(\w+)(?:})/g;export function getServerWithVariables(e,t=0){const r=e[t],o=getDefaultOrStoredVariables(r);return Object.assign(Object.assign({},r),{variables:o})}export function getInitialServerWithVariables(e){const t=fromSessionStorage("serverUrl"),r=e.find((e=>e.url===t))||e[0],o=getDefaultOrStoredVariables(r);return Object.assign(Object.assign({},r),{variables:o})}export function expandVariables(e,t={}){return e.replace(pathTemplateRegExp,((e,r)=>t[r]||e))}export function expandDefaultServerVariables(e,t={}){return e.replace(pathTemplateRegExp,((e,r)=>t[r]&&t[r].default||e))}export function getDefaultOrStoredVariables(e){if(!(null==e?void 0:e.variables))return{};const t=fromSessionStorage("variables"),r=t&&JSON.parse(t)||{},o={};return Object.entries(e.variables||{}).forEach((([e,t])=>{o[e]=r[e]||t.default||""})),o}export function updateVariablesStorage(e,t){const r=fromSessionStorage("variables"),o=r&&JSON.parse(r)||{};toSessionStorage("variables",JSON.stringify(Object.assign(Object.assign({},o),{[e]:t})))}export function unescapeQueryParams(e){return Object.entries(e).reduce(((e,[t,r])=>(e[unescapeFormId(t)]=r,e)),{})}export function getFileNameFromHeaders(e){const t="filename=";for(const[r,o]of Object.entries(e))if("content-disposition"===r.toLowerCase()){const e=o.split(";").find((e=>e.trim().startsWith(t)));if(e)return e.split(t)[1]}return""}export const makeRequestInterceptor=({requestInterceptor:e,sendXUserAgentInTryIt:t,disableTryItRequestUrlEncoding:r},o,a)=>n=>{var i,s,u,l;r&&(n=Object.assign(Object.assign({},n),{url:decodeURIComponent(n.url)})),t&&(n.headers["X-User-Agent"]="Redocly Try it API console");const c=(null===(s=null===(i=null==o?void 0:o.requestValues)||void 0===i?void 0:i.header)||void 0===s?void 0:s.authorization)||(null===(l=null===(u=null==o?void 0:o.requestValues)||void 0===u?void 0:u.header)||void 0===l?void 0:l.Authorization);return!a&&c&&(n.headers.Authorization=c),e?e(n,o):n};export function requiredValidator(e){if(!e)return"Field is required"}const getCookie=e=>{const t=document.cookie.match("\\b"+e+"=([^;]*)\\b");return t?t[1]:void 0};export function fromCookie(e){if("cookie"===e.in)return getCookie(e.name||"")}export const validateTokenEndpointMethod=e=>{if(!e)return!0;const t=Array.isArray(e)?e:[e];return!(t.length&&!t.includes("none")&&!t.includes("client_secret_basic"))};export const getOAuth2TokenEndpointAuthHeader=({authMethod:e,clientId:t,clientSecret:r})=>"client_secret_basic"===e||Array.isArray(e)&&e.includes("client_secret_basic")?{Authorization:`Basic ${btoa(t+":"+r)}`}:{};export function encodeSample(e,t){if(!e)return"";if(e.mime===MediaTypes.URL_ENCODED)return e.value;const r=e.value,o=t?merge(r,t,{arrayMerge:arrayMergeStrategy}):r;return JSON.stringify(o,null,2)}export const getStorageExampleKey=(e,t,r,o)=>{let a=e+"_"+t;return r&&o&&Object.keys(o).includes(r)&&(a+="_"+r),a};
1
+ var __awaiter=this&&this.__awaiter||function(e,t,r,o){return new(r||(r=Promise))((function(n,a){function i(e){try{c(o.next(e))}catch(e){a(e)}}function s(e){try{c(o.throw(e))}catch(e){a(e)}}function c(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(i,s)}c((o=o.apply(e,t||[])).next())}))};import merge from"deepmerge";import{bundle,Config}from"@redocly/openapi-core";import{getRecoil}from"recoil-nexus";import{MediaTypes}from"../../constants";import{arrayMergeStrategy}from"../../services/utils";import{createParsedDocument,fromSessionStorage,getParameterValue,setParameterValue,setSecurityDetails,toSessionStorage,unescapeFormId}from"../../utils";import{operationStore}from"../../recoil/operation";export function normalizeUrlProtocol(e){return e.startsWith("//")?"https:"+e:e}export function updateStorage(e){if(e.values.auth)for(const t of Object.keys(e.values.auth)){const r=e.values.auth[t];setSecurityDetails(t,r)}updateParameterStorage(e)}function updateParameterStorage(e){var t;for(const r of["path","query","header","cookie"])if(null===(t=e.values)||void 0===t?void 0:t[r])for(const t of Object.keys(e.values[r]))setParameterValue(r,t,e.values[r][t])}export const getParameters=(e,t)=>e.filter((e=>e.in===t)).reduce(((e,t)=>{const{in:r,name:o}=t;return e[o]=getParameterValue(r||"",o),e}),{});const pathTemplateRegExp=/(?:{)(\w+)(?:})/g;export function getServerWithVariables(e,t=0){const r=e[t],o=getDefaultOrStoredVariables(r);return Object.assign(Object.assign({},r),{variables:o})}export function getInitialServerWithVariables(e){const t=fromSessionStorage("serverUrl"),r=e.find((e=>e.url===t))||e[0],o=getDefaultOrStoredVariables(r);return Object.assign(Object.assign({},r),{variables:o})}export function expandVariables(e,t={}){return e.replace(pathTemplateRegExp,((e,r)=>t[r]||e))}export function expandDefaultServerVariables(e,t={}){return e.replace(pathTemplateRegExp,((e,r)=>t[r]&&t[r].default||e))}export function getDefaultOrStoredVariables(e){if(!(null==e?void 0:e.variables))return{};const t=fromSessionStorage("variables"),r=t&&JSON.parse(t)||{},o={};return Object.entries(e.variables||{}).forEach((([e,t])=>{o[e]=r[e]||t.default||""})),o}export function updateVariablesStorage(e,t){const r=fromSessionStorage("variables"),o=r&&JSON.parse(r)||{};toSessionStorage("variables",JSON.stringify(Object.assign(Object.assign({},o),{[e]:t})))}export function unescapeQueryParams(e){return Object.entries(e).reduce(((e,[t,r])=>(e[unescapeFormId(t)]=r,e)),{})}export function getFileNameFromHeaders(e){const t="filename=";for(const[r,o]of Object.entries(e))if("content-disposition"===r.toLowerCase()){const e=o.split(";").find((e=>e.trim().startsWith(t)));if(e)return e.split(t)[1]}return""}export const makeRequestInterceptor=({requestInterceptor:e,sendXUserAgentInTryIt:t,disableTryItRequestUrlEncoding:r},o,n)=>a=>{var i,s;const{requestValues:c}=getRecoil(operationStore(o.pointer));r&&(a=Object.assign(Object.assign({},a),{url:decodeURIComponent(a.url)})),t&&(a.headers["X-User-Agent"]="Redocly Try it API console");const u=(null===(i=null==c?void 0:c.header)||void 0===i?void 0:i.authorization)||(null===(s=null==c?void 0:c.header)||void 0===s?void 0:s.Authorization);return!n&&u&&(a.headers.Authorization=u),e?e(a,o):a};export function requiredValidator(e){if(!e)return"Field is required"}const getCookie=e=>{const t=document.cookie.match("\\b"+e+"=([^;]*)\\b");return t?t[1]:void 0};export function fromCookie(e){if("cookie"===e.in)return getCookie(e.name||"")}export const validateTokenEndpointMethod=e=>{if(!e)return!0;const t=Array.isArray(e)?e:[e];return!(t.length&&!t.includes("none")&&!t.includes("client_secret_basic"))};export const getOAuth2TokenEndpointAuthHeader=({authMethod:e,clientId:t,clientSecret:r})=>"client_secret_basic"===e||Array.isArray(e)&&e.includes("client_secret_basic")?{Authorization:`Basic ${btoa(t+":"+r)}`}:{};export function encodeSample(e,t){if(!e)return"";if(e.mime===MediaTypes.URL_ENCODED)return e.value;const r=e.value,o=t?merge(r,t,{arrayMerge:arrayMergeStrategy}):r;return JSON.stringify(o,null,2)}export const getStorageExampleKey=(e,t,r,o)=>{let n=e+"_"+t;return r&&o&&Object.keys(o).includes(r)&&(n+="_"+r),n};export function dereferenceDefinitionForTryIt(e,t){var r,o,n,a;return __awaiter(this,void 0,void 0,(function*(){const i=JSON.parse(JSON.stringify(t)),s=i.openapi?{openapi:i.openapi}:i.swagger?{swagger:i.swagger}:{},c=Object.assign(Object.assign({},s),{components:i.components,paths:{[e.path]:{[e.httpVerb]:null===(o=null===(r=i.paths)||void 0===r?void 0:r[e.path])||void 0===o?void 0:o[e.httpVerb],parameters:null===(a=null===(n=i.paths)||void 0===n?void 0:n[e.path])||void 0===a?void 0:a.parameters}}}),u={config:new Config({}),doc:createParsedDocument(c),dereference:!0};return yield bundle(u),i}))}
2
2
  //# sourceMappingURL=utils.js.map
@@ -1,8 +1,6 @@
1
1
  import type { RawOptions } from './services';
2
2
  export declare const defaultTheme: Required<Pick<RawOptions, 'breakpoints' | 'showAtBreakpoint'>>;
3
3
  export declare enum WindowReferenceOptions {
4
- LINK_FOR_ID = "linkForId",
5
- GENERATE_DEEP_LINK = "generateDeepLink",
6
4
  ON_DEEP_LINK_CLICK = "onDeepLinkClick",
7
5
  REQUEST_INTERCEPTOR = "requestInterceptor",
8
6
  HOOKS = "hooks"
@@ -1,2 +1,2 @@
1
- export const defaultTheme={breakpoints:{small:"50rem",medium:"85rem",large:"105rem"},showAtBreakpoint:{sidebar:"small",samplesPanel:"medium"}};export var WindowReferenceOptions;!function(e){e.LINK_FOR_ID="linkForId",e.GENERATE_DEEP_LINK="generateDeepLink",e.ON_DEEP_LINK_CLICK="onDeepLinkClick",e.REQUEST_INTERCEPTOR="requestInterceptor",e.HOOKS="hooks"}(WindowReferenceOptions||(WindowReferenceOptions={}));export var MediaTypes;!function(e){e.OCTET_STREAM="application/octet-stream",e.MULTIPART="multipart/form-data",e.URL_ENCODED="application/x-www-form-urlencoded",e.JSON="application/json",e.XML="application/xml"}(MediaTypes||(MediaTypes={}));export var LayoutVariant;!function(e){e.STACKED="stacked",e.THREE_PANEL="three-panel"}(LayoutVariant||(LayoutVariant={}));export const DEFAULT_SEARCH_MAX_DEPTH=1;export const SECTION_ATTR="data-section-id";export const FIELD_ATTR="data-field-id";export const GROUP_DEPTH=0;export const LEGACY_REGEXP="^ {0,3}\x3c!-- ReDoc-Inject:\\s+?<({component}).*?/?>\\s+?--\x3e\\s*$";export const MDX_COMPONENT_REGEXP="(?:^ {0,3}<({component})([\\s\\S]*?)>([\\s\\S]*?)</\\2>|^ {0,3}<({component})([\\s\\S]*?)(?:/>|\\n{2,}))";export const COMPONENT_REGEXP="(?:"+LEGACY_REGEXP+"|"+MDX_COMPONENT_REGEXP+")";
1
+ export const defaultTheme={breakpoints:{small:"50rem",medium:"85rem",large:"105rem"},showAtBreakpoint:{sidebar:"small",samplesPanel:"medium"}};export var WindowReferenceOptions;!function(e){e.ON_DEEP_LINK_CLICK="onDeepLinkClick",e.REQUEST_INTERCEPTOR="requestInterceptor",e.HOOKS="hooks"}(WindowReferenceOptions||(WindowReferenceOptions={}));export var MediaTypes;!function(e){e.OCTET_STREAM="application/octet-stream",e.MULTIPART="multipart/form-data",e.URL_ENCODED="application/x-www-form-urlencoded",e.JSON="application/json",e.XML="application/xml"}(MediaTypes||(MediaTypes={}));export var LayoutVariant;!function(e){e.STACKED="stacked",e.THREE_PANEL="three-panel"}(LayoutVariant||(LayoutVariant={}));export const DEFAULT_SEARCH_MAX_DEPTH=1;export const SECTION_ATTR="data-section-id";export const FIELD_ATTR="data-field-id";export const GROUP_DEPTH=0;export const LEGACY_REGEXP="^ {0,3}\x3c!-- ReDoc-Inject:\\s+?<({component}).*?/?>\\s+?--\x3e\\s*$";export const MDX_COMPONENT_REGEXP="(?:^ {0,3}<({component})([\\s\\S]*?)>([\\s\\S]*?)</\\2>|^ {0,3}<({component})([\\s\\S]*?)(?:/>|\\n{2,}))";export const COMPONENT_REGEXP="(?:"+LEGACY_REGEXP+"|"+MDX_COMPONENT_REGEXP+")";
2
2
  //# sourceMappingURL=constants.js.map
@@ -1,2 +1,2 @@
1
- import{createTrackingEvent}from"./creator";import{AnalyticsEventType}from"./types";const codeSampleCopyEvent=createTrackingEvent(AnalyticsEventType.CodeSampleCopied);export const createCodeSampleCopyEvent=({operation:e,type:a,lang:t="",label:o=""})=>codeSampleCopyEvent({resource:"Redocly_CodeSample",action:"CodeSampleCopied",operationId:e.id,operationPath:e.path,operationHttpVerb:e.httpVerb,operationSummary:e.name,exampleId:e.activeExampleName||void 0,exampleMimeType:e.activeMimeName,label:o,lang:t,type:a});
1
+ import{getRecoil}from"recoil-nexus";import{createTrackingEvent}from"./creator";import{AnalyticsEventType}from"./types";import{activeMimeNameSelector}from"../recoil/app";import{operationStore}from"../recoil/operation";const codeSampleCopyEvent=createTrackingEvent(AnalyticsEventType.CodeSampleCopied);export const createCodeSampleCopyEvent=({operation:e,type:o,lang:t="",label:a=""})=>{const{activeExampleName:p}=getRecoil(operationStore(e.pointer));return codeSampleCopyEvent({resource:"Redocly_CodeSample",action:"CodeSampleCopied",operationId:e.id,operationPath:e.path,operationHttpVerb:e.httpVerb,operationSummary:e.name,exampleId:p||e.activeExampleName,exampleMimeType:getRecoil(activeMimeNameSelector),label:a,lang:t,type:o})};
2
2
  //# sourceMappingURL=codeSampleCopy.js.map
@@ -30,7 +30,7 @@ export interface AnalyticsEvent {
30
30
  operationId?: string;
31
31
  operationPath: string;
32
32
  operationHttpVerb: string;
33
- operationSummary?: string;
33
+ operationSummary?: string | GenericObject;
34
34
  }
35
35
  export interface CodeSamplesLanguageSwitchedEvent extends AnalyticsEvent {
36
36
  lang: string;
@@ -51,7 +51,7 @@ export interface PanelToggleEvent extends AnalyticsEvent {
51
51
  operationId: string;
52
52
  operationPath: string;
53
53
  operationHttpVerb: string;
54
- operationSummary?: string;
54
+ operationSummary?: string | GenericObject;
55
55
  }
56
56
  export type Events = {
57
57
  codeSamplesLanguageSwitch?: (event: CodeSamplesLanguageSwitchedEvent) => void;
@@ -0,0 +1,38 @@
1
+ import type { RouterType } from '../types';
2
+ export interface RoutingProps {
3
+ /**
4
+ * Only applies when using `history`-based routing. (See the `router` prop.) Specifies the base path under which
5
+ * all API component controlled pages are located. The host must route any location under this path to the API component.
6
+ */
7
+ basePath?: string;
8
+ /**
9
+ * Only applies when using `static`-based routing. (See the `router` prop.) Specifies the current static path
10
+ * that is being rendered by the StaticRouter, which allows us to properly render the currently active route
11
+ * on the server and already render the content instead of sending an empty page to the client.
12
+ */
13
+ staticRouterPath?: string;
14
+ /**
15
+ * Which routing solution to use when the user navigates using the table of contents.
16
+ * Only applies when using the *sidebar* layout.
17
+ *
18
+ * - **`history`** - The table of contents pushes entries onto the navigation stack, e.g. `location.pushState`.
19
+ * This requires that the host routes any location under `basePath` (see `basePath` prop) to the API component.
20
+ * - **`hash`** - Navigation happens using hash-fragments (`/some/page#these-fragments-here`).
21
+ * This still allows the user to link to individual pages without requiring the more complex routing setup `history` needs.
22
+ * - **`memory`** - Internal navigation does not change the host `location` at all.
23
+ * This works in every scenario, but it lacks the important feature of being able to link to individual pages.
24
+ * - **`static`** - Renders a single static page for the provided `staticRouterPath`.
25
+ * This can be used when the page is being rendered on the server (either SSR or SSG) to pre-generate the
26
+ * markup of the page, which can be rehydrated on the client. This can reduce the amount of time spent rendering
27
+ * the page on the client.
28
+ *
29
+ * @default "history"
30
+ */
31
+ router?: RouterType;
32
+ /**
33
+ * Either uses the app's own or the parent router ex. (Portal).
34
+ *
35
+ * @default true
36
+ */
37
+ enableRouter?: boolean;
38
+ }
@@ -0,0 +1,2 @@
1
+ export{};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1,2 @@
1
+ import type * as React from 'react';
2
+ export declare function getDisplayName<T>(WrappedComponent: React.ComponentType<T>): string;
@@ -0,0 +1,2 @@
1
+ export function getDisplayName(e){return e.displayName||e.name||"Component"}
2
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1,3 @@
1
+ import React from 'react';
2
+ import type { RoutingProps } from './types';
3
+ export declare function withRouter<P extends RoutingProps>(WrappedComponent: React.ComponentType<Omit<P, 'enableRouter'>>): React.FC<P>;