@redocly/reference-docs 3.0.0-alpha.1 → 3.0.0-alpha.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (751) hide show
  1. package/bin/cli/commands/redocly-docs-cli.min.js +546 -437
  2. package/bin/cli/commands/redocly-docs-cli.min.js.LICENSE.txt +14 -36
  3. package/dist/console.redocly-reference-docs.min.js +319 -296
  4. package/dist/oauth2-redirect.js +5 -5
  5. package/dist/redocly-reference-docs.min.js +2991 -2104
  6. package/lib/components/Endpoint/Endpoint.d.ts +1 -6
  7. package/lib/components/Endpoint/Endpoint.js +1 -1
  8. package/lib/components/Endpoint/ServerList.d.ts +2 -7
  9. package/lib/components/Endpoint/ServerList.js +1 -1
  10. package/lib/components/Endpoint/Summary.d.ts +1 -12
  11. package/lib/components/Endpoint/Summary.js +1 -1
  12. package/lib/components/Endpoint/index.d.ts +2 -1
  13. package/lib/components/Endpoint/index.js +1 -1
  14. package/lib/components/Endpoint/styled.d.ts +13 -0
  15. package/lib/components/Endpoint/styled.js +2 -0
  16. package/lib/components/Endpoint/types.d.ts +21 -0
  17. package/lib/{redoc-lib/src/services/MenuStore.js → components/Endpoint/types.js} +1 -1
  18. package/lib/components/NextSectionButton.d.ts +6 -5
  19. package/lib/components/NextSectionButton.js +1 -1
  20. package/lib/components/OperationParameters/OperationParameters.d.ts +3 -0
  21. package/lib/components/OperationParameters/OperationParameters.js +2 -0
  22. package/lib/components/OperationParameters/index.d.ts +1 -0
  23. package/lib/components/OperationParameters/index.js +2 -0
  24. package/lib/components/{console/OperationParameters.d.ts → OperationParameters/types.d.ts} +5 -3
  25. package/lib/components/OperationParameters/types.js +2 -0
  26. package/lib/components/OperationParameters/utils.d.ts +7 -0
  27. package/lib/components/OperationParameters/utils.js +2 -0
  28. package/lib/components/Panel/Accordion.js +1 -1
  29. package/lib/components/Panel/ContentPanel.js +1 -1
  30. package/lib/components/Panel/Description.d.ts +1 -0
  31. package/lib/components/Panel/Description.js +2 -0
  32. package/lib/components/Panel/PanelComponent.d.ts +4 -2
  33. package/lib/components/Panel/PanelComponent.js +1 -1
  34. package/lib/components/Panel/ResponsePanel.js +1 -1
  35. package/lib/components/Panel/Trigger.js +1 -1
  36. package/lib/components/Panel/index.d.ts +1 -0
  37. package/lib/components/Panel/index.js +1 -1
  38. package/lib/components/ProProviders.d.ts +8 -2
  39. package/lib/components/RedoclyReferenceDocs.d.ts +2 -7
  40. package/lib/components/RedoclyReferenceDocs.js +1 -1
  41. package/lib/components/RedoclyReferenceDocsMultiStandalone.d.ts +8 -0
  42. package/lib/components/RedoclyReferenceDocsMultiStandalone.js +2 -0
  43. package/lib/components/Samples/ExampleSwitch.d.ts +1 -2
  44. package/lib/components/Samples/ExampleSwitch.js +1 -1
  45. package/lib/components/Samples/SamplesTabs.d.ts +3 -1
  46. package/lib/components/Samples/SamplesTabs.js +1 -1
  47. package/lib/components/Samples/use-example-key.js +1 -1
  48. package/lib/components/Search/ProSearchBox.js +1 -1
  49. package/lib/components/StoreProvider.d.ts +1 -1
  50. package/lib/components/StoreProvider.js +1 -1
  51. package/lib/components/Tabs/CollapsingTabs/CollapsingTabs.js +1 -1
  52. package/lib/components/Tabs/CollapsingTabs/CollapsingTabsBase.d.ts +1 -1
  53. package/lib/components/Tabs/CollapsingTabs/CollapsingTabsBase.js +1 -1
  54. package/lib/components/VersionSwitcher.d.ts +1 -1
  55. package/lib/components/common/CheckboxList.d.ts +1 -1
  56. package/lib/components/common/ClearButton/ClearButton.d.ts +3 -0
  57. package/lib/components/common/ClearButton/ClearButton.js +2 -0
  58. package/lib/components/common/ClearButton/index.d.ts +2 -0
  59. package/lib/components/common/ClearButton/index.js +2 -0
  60. package/lib/components/common/ClearButton/styled.d.ts +2 -0
  61. package/lib/components/common/ClearButton/styled.js +2 -0
  62. package/lib/components/common/ClearButton/types.d.ts +6 -0
  63. package/lib/components/common/ClearButton/types.js +2 -0
  64. package/lib/components/common/Dropdown/Dropdown.js +1 -1
  65. package/lib/components/common/Dropdown/styled.js +1 -1
  66. package/lib/components/common/Dropdown/types.d.ts +2 -0
  67. package/lib/components/common/FileUpload/FileUpload.d.ts +3 -2
  68. package/lib/components/common/FileUpload/FileUpload.js +1 -1
  69. package/lib/components/common/TextField.js +1 -1
  70. package/lib/components/console/ActionPanel.js +1 -1
  71. package/lib/components/console/AuthPanel/AuthPanel.d.ts +1 -1
  72. package/lib/components/console/AuthPanel/AuthPanel.js +1 -1
  73. package/lib/components/console/AuthPanel/types.d.ts +1 -1
  74. package/lib/components/console/CodemirrorInput.d.ts +16 -12
  75. package/lib/components/console/CodemirrorInput.js +1 -1
  76. package/lib/components/console/Console.d.ts +4 -10
  77. package/lib/components/console/Console.js +1 -1
  78. package/lib/components/console/ConsoleLazy.js +1 -1
  79. package/lib/components/console/OAuth2Flow.d.ts +2 -1
  80. package/lib/components/console/OAuth2Flow.js +1 -1
  81. package/lib/components/console/OAuth2TokenInput.d.ts +2 -1
  82. package/lib/components/console/OAuth2TokenInput.js +1 -1
  83. package/lib/components/console/OpenIDConnect.d.ts +4 -1
  84. package/lib/components/console/OpenIDConnect.js +1 -1
  85. package/lib/components/console/ParameterArray.d.ts +10 -0
  86. package/lib/components/console/ParameterArray.js +2 -0
  87. package/lib/components/console/ParameterDropdown.js +1 -1
  88. package/lib/components/console/RequestBody/RequestBody.d.ts +3 -0
  89. package/lib/components/console/RequestBody/RequestBody.js +2 -0
  90. package/lib/components/console/RequestBody/index.d.ts +2 -0
  91. package/lib/components/console/RequestBody/index.js +2 -0
  92. package/lib/components/console/RequestBody/types.d.ts +10 -0
  93. package/lib/components/console/RequestBody/types.js +2 -0
  94. package/lib/components/console/RequestBodyForm.d.ts +3 -2
  95. package/lib/components/console/RequestBodyForm.js +1 -1
  96. package/lib/components/console/ServersDropdown/ServersDropdown.d.ts +3 -0
  97. package/lib/components/console/ServersDropdown/ServersDropdown.js +2 -0
  98. package/lib/components/console/ServersDropdown/index.d.ts +1 -0
  99. package/lib/components/console/ServersDropdown/index.js +2 -0
  100. package/lib/components/console/ServersDropdown/types.d.ts +5 -0
  101. package/lib/components/console/ServersDropdown/types.js +2 -0
  102. package/lib/components/console/TryItPanel.d.ts +7 -0
  103. package/lib/components/console/TryItPanel.js +2 -0
  104. package/lib/components/console/codemirror-helpers.js +1 -1
  105. package/lib/components/console/styled.d.ts +7 -4
  106. package/lib/components/console/styled.js +1 -1
  107. package/lib/components/console/utils.d.ts +11 -1
  108. package/lib/components/console/utils.js +1 -1
  109. package/lib/components/index.d.ts +1 -0
  110. package/lib/components/index.js +1 -1
  111. package/lib/components/pluggable/PullRight.js +1 -1
  112. package/lib/components/pluggable/RedocResponse.js +1 -1
  113. package/lib/components/shared/index.d.ts +0 -1
  114. package/lib/components/shared/index.js +1 -1
  115. package/lib/components/types.d.ts +1 -1
  116. package/lib/hooks/index.d.ts +1 -0
  117. package/lib/hooks/index.js +1 -1
  118. package/lib/hooks/useDimensions.d.ts +1 -0
  119. package/lib/hooks/useDimensions.js +2 -0
  120. package/lib/index.d.ts +1 -1
  121. package/lib/models/file-upload.d.ts +0 -5
  122. package/lib/models/file-upload.js +1 -1
  123. package/lib/oauth2-redirect-page/handler/helpers.d.ts +1 -0
  124. package/lib/oauth2-redirect-page/handler/helpers.js +1 -1
  125. package/lib/redoc-lib/src/common-elements/LinkToField.js +1 -1
  126. package/lib/redoc-lib/src/common-elements/fields-layout.js +1 -1
  127. package/lib/redoc-lib/src/common-elements/fields.d.ts +1 -0
  128. package/lib/redoc-lib/src/common-elements/fields.js +1 -1
  129. package/lib/redoc-lib/src/common-elements/headers.d.ts +4 -1
  130. package/lib/redoc-lib/src/common-elements/headers.js +1 -1
  131. package/lib/redoc-lib/src/common-elements/icons.d.ts +1 -0
  132. package/lib/redoc-lib/src/common-elements/linkify.d.ts +2 -1
  133. package/lib/redoc-lib/src/common-elements/linkify.js +1 -1
  134. package/lib/redoc-lib/src/common-elements/panels.js +1 -1
  135. package/lib/redoc-lib/src/common-elements/perfect-scrollbar.d.ts +1 -1
  136. package/lib/redoc-lib/src/components/ApiInfo/ApiInfo.d.ts +1 -1
  137. package/lib/redoc-lib/src/components/ApiInfo/ApiInfo.js +1 -1
  138. package/lib/redoc-lib/src/components/CallbackSamples/CallbackReqSamples.js +1 -1
  139. package/lib/redoc-lib/src/components/CallbackSamples/CallbackSamples.js +1 -1
  140. package/lib/redoc-lib/src/components/Callbacks/CallbackDetails.js +1 -1
  141. package/lib/redoc-lib/src/components/Callbacks/CallbackOperation.js +1 -1
  142. package/lib/redoc-lib/src/components/Callbacks/CallbacksList.js +1 -1
  143. package/lib/redoc-lib/src/components/ContentItem/ContentItem.d.ts +10 -0
  144. package/lib/redoc-lib/src/components/ContentItem/ContentItem.js +2 -0
  145. package/lib/redoc-lib/src/components/ContentItem/index.d.ts +1 -0
  146. package/lib/redoc-lib/src/components/ContentItem/index.js +2 -0
  147. package/lib/redoc-lib/src/components/ContentItems/ContentItems.d.ts +3 -22
  148. package/lib/redoc-lib/src/components/ContentItems/ContentItems.js +1 -1
  149. package/lib/redoc-lib/src/components/ContentItems/Skeleton.d.ts +2 -0
  150. package/lib/redoc-lib/src/components/ContentItems/Skeleton.js +2 -0
  151. package/lib/redoc-lib/src/components/ContentItems/index.d.ts +1 -0
  152. package/lib/redoc-lib/src/components/ContentItems/index.js +2 -0
  153. package/lib/redoc-lib/src/components/ErrorBoundary.d.ts +1 -1
  154. package/lib/redoc-lib/src/components/ExternalDocumentation/ExternalDocumentation.js +1 -1
  155. package/lib/redoc-lib/src/components/Fields/EnumValues.js +1 -1
  156. package/lib/redoc-lib/src/components/Fields/Extensions.d.ts +1 -1
  157. package/lib/redoc-lib/src/components/Fields/Extensions.js +1 -1
  158. package/lib/redoc-lib/src/components/Fields/Field.d.ts +1 -1
  159. package/lib/redoc-lib/src/components/Fields/Field.js +1 -1
  160. package/lib/redoc-lib/src/components/Fields/FieldDetails.js +1 -1
  161. package/lib/redoc-lib/src/components/GenericChildrenSwitcher/GenericChildrenSwitcher.js +1 -1
  162. package/lib/redoc-lib/src/components/Loading/Loading.js +1 -1
  163. package/lib/redoc-lib/src/components/Loading/{Spinner.svg.d.ts → Spinner.d.ts} +0 -0
  164. package/lib/redoc-lib/src/components/Loading/{Spinner.svg.js → Spinner.js} +1 -1
  165. package/lib/redoc-lib/src/components/Markdown/AdvancedMarkdown.d.ts +3 -13
  166. package/lib/redoc-lib/src/components/Markdown/AdvancedMarkdown.js +1 -1
  167. package/lib/redoc-lib/src/components/Markdown/Markdown.d.ts +1 -13
  168. package/lib/redoc-lib/src/components/Markdown/Markdown.js +1 -1
  169. package/{lib-esm/redoc-lib/src/components/Markdown/SanitizedMdBlock.d.ts → lib/redoc-lib/src/components/Markdown/SanitizedMarkdownHTML.d.ts} +1 -1
  170. package/lib/redoc-lib/src/components/Markdown/SanitizedMarkdownHTML.js +2 -0
  171. package/lib/redoc-lib/src/components/Markdown/index.d.ts +4 -0
  172. package/lib/redoc-lib/src/components/Markdown/index.js +2 -0
  173. package/lib/redoc-lib/src/components/Markdown/{styled.elements.d.ts → styled.d.ts} +8 -2
  174. package/lib/redoc-lib/src/components/Markdown/{styled.elements.js → styled.js} +2 -2
  175. package/lib/redoc-lib/src/components/Markdown/types.d.ts +17 -0
  176. package/lib/redoc-lib/src/components/Markdown/types.js +2 -0
  177. package/lib/redoc-lib/src/components/MediaTypeSwitch/MediaTypesSwitch.js +1 -1
  178. package/lib/redoc-lib/src/components/Operation/Operation.js +1 -1
  179. package/lib/redoc-lib/src/components/Operation/index.d.ts +1 -0
  180. package/lib/redoc-lib/src/components/Operation/index.js +2 -0
  181. package/lib/redoc-lib/src/components/OperationItem/OperationItem.d.ts +7 -0
  182. package/lib/redoc-lib/src/components/OperationItem/OperationItem.js +2 -0
  183. package/lib/redoc-lib/src/components/OperationItem/index.d.ts +1 -0
  184. package/lib/redoc-lib/src/components/OperationItem/index.js +2 -0
  185. package/lib/redoc-lib/src/components/OptionsProvider.d.ts +1 -0
  186. package/lib/redoc-lib/src/components/OptionsProvider.js +1 -1
  187. package/lib/redoc-lib/src/components/Parameters/Parameters.js +1 -1
  188. package/lib/redoc-lib/src/components/PayloadSamples/Example.d.ts +1 -5
  189. package/lib/redoc-lib/src/components/PayloadSamples/Example.js +1 -1
  190. package/lib/redoc-lib/src/components/PayloadSamples/ExampleValue.d.ts +2 -5
  191. package/lib/redoc-lib/src/components/PayloadSamples/ExampleValue.js +1 -1
  192. package/lib/redoc-lib/src/components/PayloadSamples/MediaTypeSamples.d.ts +2 -7
  193. package/lib/redoc-lib/src/components/PayloadSamples/MediaTypeSamples.js +1 -1
  194. package/lib/redoc-lib/src/components/PayloadSamples/PayloadSamples.d.ts +1 -7
  195. package/lib/redoc-lib/src/components/PayloadSamples/PayloadSamples.js +1 -1
  196. package/lib/redoc-lib/src/components/PayloadSamples/index.d.ts +5 -0
  197. package/lib/redoc-lib/src/components/PayloadSamples/index.js +2 -0
  198. package/lib/redoc-lib/src/components/PayloadSamples/types.d.ts +23 -0
  199. package/lib/redoc-lib/src/components/PayloadSamples/types.js +2 -0
  200. package/lib/redoc-lib/src/components/PayloadSamples/{exernalExampleHook.d.ts → useExternalExample.d.ts} +0 -0
  201. package/lib/redoc-lib/src/components/PayloadSamples/{exernalExampleHook.js → useExternalExample.js} +1 -1
  202. package/lib/redoc-lib/src/components/RenderHook.d.ts +7 -0
  203. package/lib/redoc-lib/src/components/RenderHook.js +2 -0
  204. package/lib/redoc-lib/src/components/RequestSamples/CodeSample.js +1 -1
  205. package/lib/redoc-lib/src/components/RequestSamples/RequestSamples.d.ts +1 -1
  206. package/lib/redoc-lib/src/components/RequestSamples/RequestSamples.js +1 -1
  207. package/lib/redoc-lib/src/components/RequestSamples/languageSwitchEvent.d.ts +1 -1
  208. package/lib/redoc-lib/src/components/ResponseSamples/ResponseSamples.js +1 -1
  209. package/lib/redoc-lib/src/components/Responses/Response.d.ts +2 -5
  210. package/lib/redoc-lib/src/components/Responses/Response.js +1 -1
  211. package/lib/redoc-lib/src/components/Responses/ResponseDetails.d.ts +3 -8
  212. package/lib/redoc-lib/src/components/Responses/ResponseDetails.js +1 -1
  213. package/lib/redoc-lib/src/components/Responses/ResponseHeaders.d.ts +3 -9
  214. package/lib/redoc-lib/src/components/Responses/ResponseHeaders.js +1 -1
  215. package/lib/redoc-lib/src/components/Responses/ResponseSummary.d.ts +1 -5
  216. package/lib/redoc-lib/src/components/Responses/ResponseSummary.js +1 -1
  217. package/lib/redoc-lib/src/components/Responses/ResponsesList.d.ts +3 -8
  218. package/lib/redoc-lib/src/components/Responses/ResponsesList.js +1 -1
  219. package/lib/redoc-lib/src/components/Responses/index.d.ts +1 -0
  220. package/lib/redoc-lib/src/components/Responses/index.js +2 -0
  221. package/lib/redoc-lib/src/components/Responses/styled.d.ts +3 -0
  222. package/lib/redoc-lib/src/components/Responses/styled.js +2 -0
  223. package/lib/redoc-lib/src/components/Responses/types.d.ts +12 -0
  224. package/lib/redoc-lib/src/components/Responses/types.js +2 -0
  225. package/lib/redoc-lib/src/components/Schema/ArraySchema.js +1 -1
  226. package/lib/redoc-lib/src/components/Schema/DiscriminatorDropdown.js +1 -1
  227. package/lib/redoc-lib/src/components/Schema/ObjectSchema.d.ts +2 -7
  228. package/lib/redoc-lib/src/components/Schema/ObjectSchema.js +1 -1
  229. package/lib/redoc-lib/src/components/Schema/OneOfSchema.js +1 -1
  230. package/lib/redoc-lib/src/components/Schema/RecursiveSchema.d.ts +3 -0
  231. package/lib/redoc-lib/src/components/Schema/RecursiveSchema.js +2 -0
  232. package/lib/redoc-lib/src/components/Schema/Schema.js +1 -1
  233. package/lib/redoc-lib/src/components/SchemaDefinition/SchemaDefinition.js +1 -1
  234. package/lib/redoc-lib/src/components/SearchBox/SearchBox.d.ts +2 -3
  235. package/lib/redoc-lib/src/components/SearchBox/SearchBox.js +1 -1
  236. package/lib/redoc-lib/src/components/SectionItem/SectionItem.d.ts +7 -0
  237. package/lib/redoc-lib/src/components/SectionItem/SectionItem.js +2 -0
  238. package/lib/redoc-lib/src/components/SectionItem/index.d.ts +1 -0
  239. package/lib/redoc-lib/src/components/SectionItem/index.js +2 -0
  240. package/lib/redoc-lib/src/components/SecurityRequirement/RequiredScopesRow.d.ts +4 -0
  241. package/lib/redoc-lib/src/components/SecurityRequirement/RequiredScopesRow.js +2 -0
  242. package/lib/redoc-lib/src/components/SecurityRequirement/SecurityDefs.d.ts +8 -0
  243. package/lib/redoc-lib/src/components/SecurityRequirement/SecurityDefs.js +2 -0
  244. package/lib/redoc-lib/src/components/SecurityRequirement/SecurityRequirement.d.ts +9 -10
  245. package/lib/redoc-lib/src/components/SecurityRequirement/SecurityRequirement.js +1 -1
  246. package/lib/redoc-lib/src/components/SecurityRequirement/SecurityRequirementElement.d.ts +8 -0
  247. package/lib/redoc-lib/src/components/SecurityRequirement/SecurityRequirementElement.js +2 -0
  248. package/lib/redoc-lib/src/components/SecurityRequirement/SecurityRequirementPanelDescription.d.ts +8 -0
  249. package/lib/redoc-lib/src/components/SecurityRequirement/SecurityRequirementPanelDescription.js +2 -0
  250. package/lib/redoc-lib/src/components/SecuritySchemes/SecuritySchemes.d.ts +3 -16
  251. package/lib/redoc-lib/src/components/SecuritySchemes/SecuritySchemes.js +1 -1
  252. package/lib/redoc-lib/src/components/SecuritySchemes/helpers.d.ts +34 -0
  253. package/lib/redoc-lib/src/components/SecuritySchemes/helpers.js +2 -0
  254. package/lib/redoc-lib/src/components/SecuritySchemes/types.d.ts +7 -0
  255. package/lib/redoc-lib/src/components/SecuritySchemes/types.js +2 -0
  256. package/lib/redoc-lib/src/components/SeeMore/SeeMore.d.ts +7 -0
  257. package/lib/redoc-lib/src/components/SeeMore/SeeMore.js +2 -0
  258. package/lib/redoc-lib/src/components/SideMenu/MenuItem.js +1 -1
  259. package/lib/redoc-lib/src/components/SideMenu/MenuItems.js +1 -1
  260. package/lib/redoc-lib/src/components/SideMenu/SideMenu.d.ts +1 -1
  261. package/lib/redoc-lib/src/components/SideMenu/SideMenu.js +1 -1
  262. package/lib/redoc-lib/src/components/SideMenu/styled.elements.d.ts +2 -2
  263. package/lib/redoc-lib/src/components/SideMenu/styled.elements.js +1 -1
  264. package/lib/redoc-lib/src/components/StickySidebar/StickyResponsiveSidebar.d.ts +2 -2
  265. package/lib/redoc-lib/src/components/StoreBuilder.d.ts +3 -3
  266. package/lib/redoc-lib/src/components/StoreBuilder.js +1 -1
  267. package/lib/redoc-lib/src/components/index.d.ts +3 -7
  268. package/lib/redoc-lib/src/components/index.js +1 -1
  269. package/lib/redoc-lib/src/index.d.ts +0 -1
  270. package/lib/redoc-lib/src/services/Labels.d.ts +1 -28
  271. package/lib/redoc-lib/src/services/MarkdownRenderer.d.ts +2 -17
  272. package/lib/redoc-lib/src/services/MarkdownRenderer.js +1 -1
  273. package/lib/redoc-lib/src/services/MenuBuilder.d.ts +17 -25
  274. package/lib/redoc-lib/src/services/MenuBuilder.js +1 -1
  275. package/lib/redoc-lib/src/services/OpenAPIParser.d.ts +10 -17
  276. package/lib/redoc-lib/src/services/OpenAPIParser.js +1 -1
  277. package/lib/redoc-lib/src/services/RedocNormalizedOptions.d.ts +10 -113
  278. package/lib/redoc-lib/src/services/RedocNormalizedOptions.js +1 -1
  279. package/lib/redoc-lib/src/services/SearchStore.d.ts +1 -2
  280. package/lib/redoc-lib/src/services/SearchStore.js +1 -1
  281. package/lib/redoc-lib/src/services/SearchWorker.worker.d.ts +1 -9
  282. package/lib/redoc-lib/src/services/SpecStore.d.ts +2 -2
  283. package/lib/redoc-lib/src/services/constants.d.ts +4 -0
  284. package/lib/redoc-lib/src/services/constants.js +1 -1
  285. package/lib/redoc-lib/src/services/index.d.ts +11 -11
  286. package/lib/redoc-lib/src/services/index.js +1 -1
  287. package/lib/redoc-lib/src/services/models/ApiInfo.js +1 -1
  288. package/lib/redoc-lib/src/services/models/Callback.d.ts +1 -1
  289. package/lib/redoc-lib/src/services/models/Callback.js +1 -1
  290. package/lib/redoc-lib/src/services/models/Example.d.ts +4 -1
  291. package/lib/redoc-lib/src/services/models/Example.js +1 -1
  292. package/lib/redoc-lib/src/services/models/Field.d.ts +1 -1
  293. package/lib/redoc-lib/src/services/models/Field.js +1 -1
  294. package/lib/redoc-lib/src/services/models/Group.model.d.ts +2 -3
  295. package/lib/redoc-lib/src/services/models/Group.model.js +1 -1
  296. package/lib/redoc-lib/src/services/models/MediaContent.d.ts +1 -1
  297. package/lib/redoc-lib/src/services/models/MediaContent.js +1 -1
  298. package/lib/redoc-lib/src/services/models/MediaType.d.ts +2 -2
  299. package/lib/redoc-lib/src/services/models/MediaType.js +1 -1
  300. package/lib/redoc-lib/src/services/models/Operation.d.ts +12 -7
  301. package/lib/redoc-lib/src/services/models/Operation.js +1 -1
  302. package/lib/redoc-lib/src/services/models/RequestBody.d.ts +1 -1
  303. package/lib/redoc-lib/src/services/models/RequestBody.js +1 -1
  304. package/lib/redoc-lib/src/services/models/Response.d.ts +1 -1
  305. package/lib/redoc-lib/src/services/models/Response.js +1 -1
  306. package/lib/redoc-lib/src/services/models/Schema.d.ts +5 -5
  307. package/lib/redoc-lib/src/services/models/Schema.js +1 -1
  308. package/lib/redoc-lib/src/services/models/SecurityRequirement.js +1 -1
  309. package/lib/redoc-lib/src/services/models/SecuritySchemes.js +1 -1
  310. package/lib/redoc-lib/src/services/models/Webhook.d.ts +1 -1
  311. package/lib/redoc-lib/src/services/models/Webhook.js +1 -1
  312. package/lib/redoc-lib/src/services/models/index.d.ts +0 -1
  313. package/lib/redoc-lib/src/services/models/index.js +1 -1
  314. package/lib/redoc-lib/src/services/types.d.ts +218 -0
  315. package/lib/redoc-lib/src/services/types.js +2 -0
  316. package/lib/redoc-lib/src/types/open-api.d.ts +22 -2
  317. package/lib/redoc-lib/src/utils/argValuesHelpers.d.ts +1 -1
  318. package/lib/redoc-lib/src/utils/argValuesHelpers.js +1 -1
  319. package/lib/redoc-lib/src/utils/helpers.d.ts +3 -1
  320. package/lib/redoc-lib/src/utils/helpers.js +1 -1
  321. package/lib/redoc-lib/src/utils/openapi.d.ts +3 -4
  322. package/lib/redoc-lib/src/utils/openapi.js +1 -1
  323. package/lib/redoc-lib/src/utils/string.d.ts +1 -0
  324. package/lib/redoc-lib/src/utils/string.js +2 -0
  325. package/lib/services/OAuth2.d.ts +4 -2
  326. package/lib/services/OAuth2.js +1 -1
  327. package/lib/services/OpenIDConnect.d.ts +1 -1
  328. package/lib/services/ProMenu.js +1 -1
  329. package/lib/services/ProStore.d.ts +9 -7
  330. package/lib/services/ProStore.js +1 -1
  331. package/lib/services/SearchStore.d.ts +1 -1
  332. package/lib/services/VersionedSpecStore.d.ts +1 -1
  333. package/lib/services/VersionedSpecStore.js +1 -1
  334. package/lib/services/code-samples/generator.d.ts +1 -0
  335. package/lib/services/code-samples/generator.js +1 -1
  336. package/lib/services/code-samples/httpsnippet/index.js +1 -1
  337. package/lib/services/code-samples/httpsnippet/targets/csharp/httpclient.js +1 -1
  338. package/lib/services/code-samples/httpsnippet/targets/go/native.js +1 -1
  339. package/lib/services/code-samples/httpsnippet/targets/java/httpclient.js +1 -1
  340. package/lib/services/code-samples/httpsnippet/targets/java8/apachehttp.js +1 -1
  341. package/lib/services/code-samples/httpsnippet/targets/javascript/fetch.js +1 -1
  342. package/lib/services/code-samples/httpsnippet/targets/node/fetch.js +1 -1
  343. package/lib/services/code-samples/httpsnippet/targets/php/curl.js +1 -1
  344. package/lib/services/code-samples/httpsnippet/targets/python/requests.js +1 -1
  345. package/lib/services/code-samples/httpsnippet/targets/r/httr.js +1 -1
  346. package/lib/services/code-samples/httpsnippet/targets/ruby/native.js +1 -1
  347. package/lib/services/code-samples/httpsnippet/targets/shell/curl.js +1 -1
  348. package/lib/services/history/ProHashHistoryService.js +1 -1
  349. package/lib/services/utils.d.ts +2 -0
  350. package/lib/services/utils.js +1 -1
  351. package/lib/standalone.d.ts +1 -1
  352. package/lib/standalone.js +1 -1
  353. package/lib/types.d.ts +25 -0
  354. package/lib/types.js +2 -0
  355. package/lib/utils.d.ts +4 -13
  356. package/lib/utils.js +1 -1
  357. package/lib-esm/components/Endpoint/Endpoint.d.ts +1 -6
  358. package/lib-esm/components/Endpoint/Endpoint.js +1 -1
  359. package/lib-esm/components/Endpoint/ServerList.d.ts +2 -7
  360. package/lib-esm/components/Endpoint/ServerList.js +1 -1
  361. package/lib-esm/components/Endpoint/Summary.d.ts +1 -12
  362. package/lib-esm/components/Endpoint/Summary.js +1 -1
  363. package/lib-esm/components/Endpoint/index.d.ts +2 -1
  364. package/lib-esm/components/Endpoint/index.js +1 -1
  365. package/lib-esm/components/Endpoint/styled.d.ts +13 -0
  366. package/lib-esm/components/Endpoint/styled.js +2 -0
  367. package/lib-esm/components/Endpoint/types.d.ts +21 -0
  368. package/lib-esm/components/Endpoint/types.js +2 -0
  369. package/lib-esm/components/NextSectionButton.d.ts +6 -5
  370. package/lib-esm/components/NextSectionButton.js +1 -1
  371. package/lib-esm/components/OperationParameters/OperationParameters.d.ts +3 -0
  372. package/lib-esm/components/OperationParameters/OperationParameters.js +2 -0
  373. package/lib-esm/components/OperationParameters/index.d.ts +1 -0
  374. package/lib-esm/components/OperationParameters/index.js +2 -0
  375. package/lib-esm/components/{console/OperationParameters.d.ts → OperationParameters/types.d.ts} +5 -3
  376. package/lib-esm/components/OperationParameters/types.js +2 -0
  377. package/lib-esm/components/OperationParameters/utils.d.ts +7 -0
  378. package/lib-esm/components/OperationParameters/utils.js +2 -0
  379. package/lib-esm/components/Panel/Accordion.js +1 -1
  380. package/lib-esm/components/Panel/ContentPanel.js +1 -1
  381. package/lib-esm/components/Panel/Description.d.ts +1 -0
  382. package/lib-esm/components/Panel/Description.js +2 -0
  383. package/lib-esm/components/Panel/PanelComponent.d.ts +4 -2
  384. package/lib-esm/components/Panel/PanelComponent.js +1 -1
  385. package/lib-esm/components/Panel/ResponsePanel.js +1 -1
  386. package/lib-esm/components/Panel/Trigger.js +1 -1
  387. package/lib-esm/components/Panel/index.d.ts +1 -0
  388. package/lib-esm/components/Panel/index.js +1 -1
  389. package/lib-esm/components/ProProviders.d.ts +8 -2
  390. package/lib-esm/components/RedoclyReferenceDocs.d.ts +2 -7
  391. package/lib-esm/components/RedoclyReferenceDocs.js +1 -1
  392. package/lib-esm/components/RedoclyReferenceDocsMultiStandalone.d.ts +8 -0
  393. package/lib-esm/components/RedoclyReferenceDocsMultiStandalone.js +2 -0
  394. package/lib-esm/components/Samples/ExampleSwitch.d.ts +1 -2
  395. package/lib-esm/components/Samples/ExampleSwitch.js +1 -1
  396. package/lib-esm/components/Samples/SamplesTabs.d.ts +3 -1
  397. package/lib-esm/components/Samples/SamplesTabs.js +1 -1
  398. package/lib-esm/components/Samples/use-example-key.js +1 -1
  399. package/lib-esm/components/Search/ProSearchBox.js +1 -1
  400. package/lib-esm/components/StoreProvider.d.ts +1 -1
  401. package/lib-esm/components/StoreProvider.js +1 -1
  402. package/lib-esm/components/Tabs/CollapsingTabs/CollapsingTabs.js +1 -1
  403. package/lib-esm/components/Tabs/CollapsingTabs/CollapsingTabsBase.d.ts +1 -1
  404. package/lib-esm/components/Tabs/CollapsingTabs/CollapsingTabsBase.js +1 -1
  405. package/lib-esm/components/VersionSwitcher.d.ts +1 -1
  406. package/lib-esm/components/common/CheckboxList.d.ts +1 -1
  407. package/lib-esm/components/common/ClearButton/ClearButton.d.ts +3 -0
  408. package/lib-esm/components/common/ClearButton/ClearButton.js +2 -0
  409. package/lib-esm/components/common/ClearButton/index.d.ts +2 -0
  410. package/lib-esm/components/common/ClearButton/index.js +2 -0
  411. package/lib-esm/components/common/ClearButton/styled.d.ts +2 -0
  412. package/lib-esm/components/common/ClearButton/styled.js +2 -0
  413. package/lib-esm/components/common/ClearButton/types.d.ts +6 -0
  414. package/lib-esm/components/common/ClearButton/types.js +2 -0
  415. package/lib-esm/components/common/Dropdown/Dropdown.js +1 -1
  416. package/lib-esm/components/common/Dropdown/styled.js +1 -1
  417. package/lib-esm/components/common/Dropdown/types.d.ts +2 -0
  418. package/lib-esm/components/common/FileUpload/FileUpload.d.ts +3 -2
  419. package/lib-esm/components/common/FileUpload/FileUpload.js +1 -1
  420. package/lib-esm/components/common/TextField.js +1 -1
  421. package/lib-esm/components/console/ActionPanel.js +1 -1
  422. package/lib-esm/components/console/AuthPanel/AuthPanel.d.ts +1 -1
  423. package/lib-esm/components/console/AuthPanel/AuthPanel.js +1 -1
  424. package/lib-esm/components/console/AuthPanel/types.d.ts +1 -1
  425. package/lib-esm/components/console/CodemirrorInput.d.ts +16 -12
  426. package/lib-esm/components/console/CodemirrorInput.js +1 -1
  427. package/lib-esm/components/console/Console.d.ts +4 -10
  428. package/lib-esm/components/console/Console.js +1 -1
  429. package/lib-esm/components/console/ConsoleLazy.js +1 -1
  430. package/lib-esm/components/console/OAuth2Flow.d.ts +2 -1
  431. package/lib-esm/components/console/OAuth2Flow.js +1 -1
  432. package/lib-esm/components/console/OAuth2TokenInput.d.ts +2 -1
  433. package/lib-esm/components/console/OAuth2TokenInput.js +1 -1
  434. package/lib-esm/components/console/OpenIDConnect.d.ts +4 -1
  435. package/lib-esm/components/console/OpenIDConnect.js +1 -1
  436. package/lib-esm/components/console/ParameterArray.d.ts +10 -0
  437. package/lib-esm/components/console/ParameterArray.js +2 -0
  438. package/lib-esm/components/console/ParameterDropdown.js +1 -1
  439. package/lib-esm/components/console/RequestBody/RequestBody.d.ts +3 -0
  440. package/lib-esm/components/console/RequestBody/RequestBody.js +2 -0
  441. package/lib-esm/components/console/RequestBody/index.d.ts +2 -0
  442. package/lib-esm/components/console/RequestBody/index.js +2 -0
  443. package/lib-esm/components/console/RequestBody/types.d.ts +10 -0
  444. package/lib-esm/components/console/RequestBody/types.js +2 -0
  445. package/lib-esm/components/console/RequestBodyForm.d.ts +3 -2
  446. package/lib-esm/components/console/RequestBodyForm.js +1 -1
  447. package/lib-esm/components/console/ServersDropdown/ServersDropdown.d.ts +3 -0
  448. package/lib-esm/components/console/ServersDropdown/ServersDropdown.js +2 -0
  449. package/lib-esm/components/console/ServersDropdown/index.d.ts +1 -0
  450. package/lib-esm/components/console/ServersDropdown/index.js +2 -0
  451. package/lib-esm/components/console/ServersDropdown/types.d.ts +5 -0
  452. package/lib-esm/components/console/ServersDropdown/types.js +2 -0
  453. package/lib-esm/components/console/TryItPanel.d.ts +7 -0
  454. package/lib-esm/components/console/TryItPanel.js +2 -0
  455. package/lib-esm/components/console/codemirror-helpers.js +1 -1
  456. package/lib-esm/components/console/styled.d.ts +7 -4
  457. package/lib-esm/components/console/styled.js +1 -1
  458. package/lib-esm/components/console/utils.d.ts +11 -1
  459. package/lib-esm/components/console/utils.js +1 -1
  460. package/lib-esm/components/index.d.ts +1 -0
  461. package/lib-esm/components/index.js +1 -1
  462. package/lib-esm/components/pluggable/PullRight.js +1 -1
  463. package/lib-esm/components/pluggable/RedocResponse.js +1 -1
  464. package/lib-esm/components/shared/index.d.ts +0 -1
  465. package/lib-esm/components/shared/index.js +1 -1
  466. package/lib-esm/components/types.d.ts +1 -1
  467. package/lib-esm/hooks/index.d.ts +1 -0
  468. package/lib-esm/hooks/index.js +1 -1
  469. package/lib-esm/hooks/useDimensions.d.ts +1 -0
  470. package/lib-esm/hooks/useDimensions.js +2 -0
  471. package/lib-esm/index.d.ts +1 -1
  472. package/lib-esm/models/file-upload.d.ts +0 -5
  473. package/lib-esm/models/file-upload.js +1 -1
  474. package/lib-esm/oauth2-redirect-page/handler/helpers.d.ts +1 -0
  475. package/lib-esm/oauth2-redirect-page/handler/helpers.js +1 -1
  476. package/lib-esm/redoc-lib/src/common-elements/LinkToField.js +1 -1
  477. package/lib-esm/redoc-lib/src/common-elements/fields-layout.js +1 -1
  478. package/lib-esm/redoc-lib/src/common-elements/fields.d.ts +1 -0
  479. package/lib-esm/redoc-lib/src/common-elements/fields.js +1 -1
  480. package/lib-esm/redoc-lib/src/common-elements/headers.d.ts +4 -1
  481. package/lib-esm/redoc-lib/src/common-elements/headers.js +1 -1
  482. package/lib-esm/redoc-lib/src/common-elements/icons.d.ts +1 -0
  483. package/lib-esm/redoc-lib/src/common-elements/linkify.d.ts +2 -1
  484. package/lib-esm/redoc-lib/src/common-elements/linkify.js +1 -1
  485. package/lib-esm/redoc-lib/src/common-elements/panels.js +1 -1
  486. package/lib-esm/redoc-lib/src/common-elements/perfect-scrollbar.d.ts +1 -1
  487. package/lib-esm/redoc-lib/src/components/ApiInfo/ApiInfo.d.ts +1 -1
  488. package/lib-esm/redoc-lib/src/components/ApiInfo/ApiInfo.js +1 -1
  489. package/lib-esm/redoc-lib/src/components/CallbackSamples/CallbackReqSamples.js +1 -1
  490. package/lib-esm/redoc-lib/src/components/CallbackSamples/CallbackSamples.js +1 -1
  491. package/lib-esm/redoc-lib/src/components/Callbacks/CallbackDetails.js +1 -1
  492. package/lib-esm/redoc-lib/src/components/Callbacks/CallbackOperation.js +1 -1
  493. package/lib-esm/redoc-lib/src/components/Callbacks/CallbacksList.js +1 -1
  494. package/lib-esm/redoc-lib/src/components/ContentItem/ContentItem.d.ts +10 -0
  495. package/lib-esm/redoc-lib/src/components/ContentItem/ContentItem.js +2 -0
  496. package/lib-esm/redoc-lib/src/components/ContentItem/index.d.ts +1 -0
  497. package/lib-esm/redoc-lib/src/components/ContentItem/index.js +2 -0
  498. package/lib-esm/redoc-lib/src/components/ContentItems/ContentItems.d.ts +3 -22
  499. package/lib-esm/redoc-lib/src/components/ContentItems/ContentItems.js +1 -1
  500. package/lib-esm/redoc-lib/src/components/ContentItems/Skeleton.d.ts +2 -0
  501. package/lib-esm/redoc-lib/src/components/ContentItems/Skeleton.js +2 -0
  502. package/lib-esm/redoc-lib/src/components/ContentItems/index.d.ts +1 -0
  503. package/lib-esm/redoc-lib/src/components/ContentItems/index.js +2 -0
  504. package/lib-esm/redoc-lib/src/components/ErrorBoundary.d.ts +1 -1
  505. package/lib-esm/redoc-lib/src/components/ExternalDocumentation/ExternalDocumentation.js +1 -1
  506. package/lib-esm/redoc-lib/src/components/Fields/EnumValues.js +1 -1
  507. package/lib-esm/redoc-lib/src/components/Fields/Extensions.d.ts +1 -1
  508. package/lib-esm/redoc-lib/src/components/Fields/Extensions.js +1 -1
  509. package/lib-esm/redoc-lib/src/components/Fields/Field.d.ts +1 -1
  510. package/lib-esm/redoc-lib/src/components/Fields/Field.js +1 -1
  511. package/lib-esm/redoc-lib/src/components/Fields/FieldDetails.js +1 -1
  512. package/lib-esm/redoc-lib/src/components/GenericChildrenSwitcher/GenericChildrenSwitcher.js +1 -1
  513. package/lib-esm/redoc-lib/src/components/Loading/Loading.js +1 -1
  514. package/lib-esm/redoc-lib/src/components/Loading/{Spinner.svg.d.ts → Spinner.d.ts} +0 -0
  515. package/lib-esm/redoc-lib/src/components/Loading/{Spinner.svg.js → Spinner.js} +1 -1
  516. package/lib-esm/redoc-lib/src/components/Markdown/AdvancedMarkdown.d.ts +3 -13
  517. package/lib-esm/redoc-lib/src/components/Markdown/AdvancedMarkdown.js +1 -1
  518. package/lib-esm/redoc-lib/src/components/Markdown/Markdown.d.ts +1 -13
  519. package/lib-esm/redoc-lib/src/components/Markdown/Markdown.js +1 -1
  520. package/{lib/redoc-lib/src/components/Markdown/SanitizedMdBlock.d.ts → lib-esm/redoc-lib/src/components/Markdown/SanitizedMarkdownHTML.d.ts} +1 -1
  521. package/lib-esm/redoc-lib/src/components/Markdown/SanitizedMarkdownHTML.js +2 -0
  522. package/lib-esm/redoc-lib/src/components/Markdown/index.d.ts +4 -0
  523. package/lib-esm/redoc-lib/src/components/Markdown/index.js +2 -0
  524. package/lib-esm/redoc-lib/src/components/Markdown/{styled.elements.d.ts → styled.d.ts} +8 -2
  525. package/lib-esm/redoc-lib/src/components/Markdown/{styled.elements.js → styled.js} +2 -2
  526. package/lib-esm/redoc-lib/src/components/Markdown/types.d.ts +17 -0
  527. package/lib-esm/redoc-lib/src/components/Markdown/types.js +2 -0
  528. package/lib-esm/redoc-lib/src/components/MediaTypeSwitch/MediaTypesSwitch.js +1 -1
  529. package/lib-esm/redoc-lib/src/components/Operation/Operation.js +1 -1
  530. package/lib-esm/redoc-lib/src/components/Operation/index.d.ts +1 -0
  531. package/lib-esm/redoc-lib/src/components/Operation/index.js +2 -0
  532. package/lib-esm/redoc-lib/src/components/OperationItem/OperationItem.d.ts +7 -0
  533. package/lib-esm/redoc-lib/src/components/OperationItem/OperationItem.js +2 -0
  534. package/lib-esm/redoc-lib/src/components/OperationItem/index.d.ts +1 -0
  535. package/lib-esm/redoc-lib/src/components/OperationItem/index.js +2 -0
  536. package/lib-esm/redoc-lib/src/components/OptionsProvider.d.ts +1 -0
  537. package/lib-esm/redoc-lib/src/components/OptionsProvider.js +1 -1
  538. package/lib-esm/redoc-lib/src/components/Parameters/Parameters.js +1 -1
  539. package/lib-esm/redoc-lib/src/components/PayloadSamples/Example.d.ts +1 -5
  540. package/lib-esm/redoc-lib/src/components/PayloadSamples/Example.js +1 -1
  541. package/lib-esm/redoc-lib/src/components/PayloadSamples/ExampleValue.d.ts +2 -5
  542. package/lib-esm/redoc-lib/src/components/PayloadSamples/ExampleValue.js +1 -1
  543. package/lib-esm/redoc-lib/src/components/PayloadSamples/MediaTypeSamples.d.ts +2 -7
  544. package/lib-esm/redoc-lib/src/components/PayloadSamples/MediaTypeSamples.js +1 -1
  545. package/lib-esm/redoc-lib/src/components/PayloadSamples/PayloadSamples.d.ts +1 -7
  546. package/lib-esm/redoc-lib/src/components/PayloadSamples/PayloadSamples.js +1 -1
  547. package/lib-esm/redoc-lib/src/components/PayloadSamples/index.d.ts +5 -0
  548. package/lib-esm/redoc-lib/src/components/PayloadSamples/index.js +2 -0
  549. package/lib-esm/redoc-lib/src/components/PayloadSamples/types.d.ts +23 -0
  550. package/lib-esm/redoc-lib/src/components/PayloadSamples/types.js +2 -0
  551. package/lib-esm/redoc-lib/src/components/PayloadSamples/{exernalExampleHook.d.ts → useExternalExample.d.ts} +0 -0
  552. package/lib-esm/redoc-lib/src/components/PayloadSamples/{exernalExampleHook.js → useExternalExample.js} +1 -1
  553. package/lib-esm/redoc-lib/src/components/RenderHook.d.ts +7 -0
  554. package/lib-esm/redoc-lib/src/components/RenderHook.js +2 -0
  555. package/lib-esm/redoc-lib/src/components/RequestSamples/CodeSample.js +1 -1
  556. package/lib-esm/redoc-lib/src/components/RequestSamples/RequestSamples.d.ts +1 -1
  557. package/lib-esm/redoc-lib/src/components/RequestSamples/RequestSamples.js +1 -1
  558. package/lib-esm/redoc-lib/src/components/RequestSamples/languageSwitchEvent.d.ts +1 -1
  559. package/lib-esm/redoc-lib/src/components/ResponseSamples/ResponseSamples.js +1 -1
  560. package/lib-esm/redoc-lib/src/components/Responses/Response.d.ts +2 -5
  561. package/lib-esm/redoc-lib/src/components/Responses/Response.js +1 -1
  562. package/lib-esm/redoc-lib/src/components/Responses/ResponseDetails.d.ts +3 -8
  563. package/lib-esm/redoc-lib/src/components/Responses/ResponseDetails.js +1 -1
  564. package/lib-esm/redoc-lib/src/components/Responses/ResponseHeaders.d.ts +3 -9
  565. package/lib-esm/redoc-lib/src/components/Responses/ResponseHeaders.js +1 -1
  566. package/lib-esm/redoc-lib/src/components/Responses/ResponseSummary.d.ts +1 -5
  567. package/lib-esm/redoc-lib/src/components/Responses/ResponseSummary.js +1 -1
  568. package/lib-esm/redoc-lib/src/components/Responses/ResponsesList.d.ts +3 -8
  569. package/lib-esm/redoc-lib/src/components/Responses/ResponsesList.js +1 -1
  570. package/lib-esm/redoc-lib/src/components/Responses/index.d.ts +1 -0
  571. package/lib-esm/redoc-lib/src/components/Responses/index.js +2 -0
  572. package/lib-esm/redoc-lib/src/components/Responses/styled.d.ts +3 -0
  573. package/lib-esm/redoc-lib/src/components/Responses/styled.js +2 -0
  574. package/lib-esm/redoc-lib/src/components/Responses/types.d.ts +12 -0
  575. package/lib-esm/redoc-lib/src/components/Responses/types.js +2 -0
  576. package/lib-esm/redoc-lib/src/components/Schema/ArraySchema.js +1 -1
  577. package/lib-esm/redoc-lib/src/components/Schema/DiscriminatorDropdown.js +1 -1
  578. package/lib-esm/redoc-lib/src/components/Schema/ObjectSchema.d.ts +2 -7
  579. package/lib-esm/redoc-lib/src/components/Schema/ObjectSchema.js +1 -1
  580. package/lib-esm/redoc-lib/src/components/Schema/OneOfSchema.js +1 -1
  581. package/lib-esm/redoc-lib/src/components/Schema/RecursiveSchema.d.ts +3 -0
  582. package/lib-esm/redoc-lib/src/components/Schema/RecursiveSchema.js +2 -0
  583. package/lib-esm/redoc-lib/src/components/Schema/Schema.js +1 -1
  584. package/lib-esm/redoc-lib/src/components/SchemaDefinition/SchemaDefinition.js +1 -1
  585. package/lib-esm/redoc-lib/src/components/SearchBox/SearchBox.d.ts +2 -3
  586. package/lib-esm/redoc-lib/src/components/SearchBox/SearchBox.js +1 -1
  587. package/lib-esm/redoc-lib/src/components/SectionItem/SectionItem.d.ts +7 -0
  588. package/lib-esm/redoc-lib/src/components/SectionItem/SectionItem.js +2 -0
  589. package/lib-esm/redoc-lib/src/components/SectionItem/index.d.ts +1 -0
  590. package/lib-esm/redoc-lib/src/components/SectionItem/index.js +2 -0
  591. package/lib-esm/redoc-lib/src/components/SecurityRequirement/RequiredScopesRow.d.ts +4 -0
  592. package/lib-esm/redoc-lib/src/components/SecurityRequirement/RequiredScopesRow.js +2 -0
  593. package/lib-esm/redoc-lib/src/components/SecurityRequirement/SecurityDefs.d.ts +8 -0
  594. package/lib-esm/redoc-lib/src/components/SecurityRequirement/SecurityDefs.js +2 -0
  595. package/lib-esm/redoc-lib/src/components/SecurityRequirement/SecurityRequirement.d.ts +9 -10
  596. package/lib-esm/redoc-lib/src/components/SecurityRequirement/SecurityRequirement.js +1 -1
  597. package/lib-esm/redoc-lib/src/components/SecurityRequirement/SecurityRequirementElement.d.ts +8 -0
  598. package/lib-esm/redoc-lib/src/components/SecurityRequirement/SecurityRequirementElement.js +2 -0
  599. package/lib-esm/redoc-lib/src/components/SecurityRequirement/SecurityRequirementPanelDescription.d.ts +8 -0
  600. package/lib-esm/redoc-lib/src/components/SecurityRequirement/SecurityRequirementPanelDescription.js +2 -0
  601. package/lib-esm/redoc-lib/src/components/SecuritySchemes/SecuritySchemes.d.ts +3 -16
  602. package/lib-esm/redoc-lib/src/components/SecuritySchemes/SecuritySchemes.js +1 -1
  603. package/lib-esm/redoc-lib/src/components/SecuritySchemes/helpers.d.ts +34 -0
  604. package/lib-esm/redoc-lib/src/components/SecuritySchemes/helpers.js +2 -0
  605. package/lib-esm/redoc-lib/src/components/SecuritySchemes/types.d.ts +7 -0
  606. package/lib-esm/redoc-lib/src/components/SecuritySchemes/types.js +2 -0
  607. package/lib-esm/redoc-lib/src/components/SeeMore/SeeMore.d.ts +7 -0
  608. package/lib-esm/redoc-lib/src/components/SeeMore/SeeMore.js +2 -0
  609. package/lib-esm/redoc-lib/src/components/SideMenu/MenuItem.js +1 -1
  610. package/lib-esm/redoc-lib/src/components/SideMenu/MenuItems.js +1 -1
  611. package/lib-esm/redoc-lib/src/components/SideMenu/SideMenu.d.ts +1 -1
  612. package/lib-esm/redoc-lib/src/components/SideMenu/SideMenu.js +1 -1
  613. package/lib-esm/redoc-lib/src/components/SideMenu/styled.elements.d.ts +2 -2
  614. package/lib-esm/redoc-lib/src/components/SideMenu/styled.elements.js +1 -1
  615. package/lib-esm/redoc-lib/src/components/StickySidebar/StickyResponsiveSidebar.d.ts +2 -2
  616. package/lib-esm/redoc-lib/src/components/StoreBuilder.d.ts +3 -3
  617. package/lib-esm/redoc-lib/src/components/StoreBuilder.js +1 -1
  618. package/lib-esm/redoc-lib/src/components/index.d.ts +3 -7
  619. package/lib-esm/redoc-lib/src/components/index.js +1 -1
  620. package/lib-esm/redoc-lib/src/index.d.ts +0 -1
  621. package/lib-esm/redoc-lib/src/services/Labels.d.ts +1 -28
  622. package/lib-esm/redoc-lib/src/services/MarkdownRenderer.d.ts +2 -17
  623. package/lib-esm/redoc-lib/src/services/MarkdownRenderer.js +1 -1
  624. package/lib-esm/redoc-lib/src/services/MenuBuilder.d.ts +17 -25
  625. package/lib-esm/redoc-lib/src/services/MenuBuilder.js +1 -1
  626. package/lib-esm/redoc-lib/src/services/OpenAPIParser.d.ts +10 -17
  627. package/lib-esm/redoc-lib/src/services/OpenAPIParser.js +1 -1
  628. package/lib-esm/redoc-lib/src/services/RedocNormalizedOptions.d.ts +10 -113
  629. package/lib-esm/redoc-lib/src/services/RedocNormalizedOptions.js +1 -1
  630. package/lib-esm/redoc-lib/src/services/SearchStore.d.ts +1 -2
  631. package/lib-esm/redoc-lib/src/services/SearchStore.js +1 -1
  632. package/lib-esm/redoc-lib/src/services/SearchWorker.worker.d.ts +1 -9
  633. package/lib-esm/redoc-lib/src/services/SpecStore.d.ts +2 -2
  634. package/lib-esm/redoc-lib/src/services/constants.d.ts +4 -0
  635. package/lib-esm/redoc-lib/src/services/constants.js +1 -1
  636. package/lib-esm/redoc-lib/src/services/index.d.ts +11 -11
  637. package/lib-esm/redoc-lib/src/services/index.js +1 -1
  638. package/lib-esm/redoc-lib/src/services/models/ApiInfo.js +1 -1
  639. package/lib-esm/redoc-lib/src/services/models/Callback.d.ts +1 -1
  640. package/lib-esm/redoc-lib/src/services/models/Callback.js +1 -1
  641. package/lib-esm/redoc-lib/src/services/models/Example.d.ts +4 -1
  642. package/lib-esm/redoc-lib/src/services/models/Example.js +1 -1
  643. package/lib-esm/redoc-lib/src/services/models/Field.d.ts +1 -1
  644. package/lib-esm/redoc-lib/src/services/models/Field.js +1 -1
  645. package/lib-esm/redoc-lib/src/services/models/Group.model.d.ts +2 -3
  646. package/lib-esm/redoc-lib/src/services/models/Group.model.js +1 -1
  647. package/lib-esm/redoc-lib/src/services/models/MediaContent.d.ts +1 -1
  648. package/lib-esm/redoc-lib/src/services/models/MediaContent.js +1 -1
  649. package/lib-esm/redoc-lib/src/services/models/MediaType.d.ts +2 -2
  650. package/lib-esm/redoc-lib/src/services/models/MediaType.js +1 -1
  651. package/lib-esm/redoc-lib/src/services/models/Operation.d.ts +12 -7
  652. package/lib-esm/redoc-lib/src/services/models/Operation.js +1 -1
  653. package/lib-esm/redoc-lib/src/services/models/RequestBody.d.ts +1 -1
  654. package/lib-esm/redoc-lib/src/services/models/RequestBody.js +1 -1
  655. package/lib-esm/redoc-lib/src/services/models/Response.d.ts +1 -1
  656. package/lib-esm/redoc-lib/src/services/models/Response.js +1 -1
  657. package/lib-esm/redoc-lib/src/services/models/Schema.d.ts +5 -5
  658. package/lib-esm/redoc-lib/src/services/models/Schema.js +1 -1
  659. package/lib-esm/redoc-lib/src/services/models/SecurityRequirement.js +1 -1
  660. package/lib-esm/redoc-lib/src/services/models/SecuritySchemes.js +1 -1
  661. package/lib-esm/redoc-lib/src/services/models/Webhook.d.ts +1 -1
  662. package/lib-esm/redoc-lib/src/services/models/Webhook.js +1 -1
  663. package/lib-esm/redoc-lib/src/services/models/index.d.ts +0 -1
  664. package/lib-esm/redoc-lib/src/services/models/index.js +1 -1
  665. package/lib-esm/redoc-lib/src/services/types.d.ts +218 -0
  666. package/lib-esm/redoc-lib/src/services/types.js +2 -0
  667. package/lib-esm/redoc-lib/src/types/open-api.d.ts +22 -2
  668. package/lib-esm/redoc-lib/src/utils/argValuesHelpers.d.ts +1 -1
  669. package/lib-esm/redoc-lib/src/utils/argValuesHelpers.js +1 -1
  670. package/lib-esm/redoc-lib/src/utils/helpers.d.ts +3 -1
  671. package/lib-esm/redoc-lib/src/utils/helpers.js +1 -1
  672. package/lib-esm/redoc-lib/src/utils/openapi.d.ts +3 -4
  673. package/lib-esm/redoc-lib/src/utils/openapi.js +1 -1
  674. package/lib-esm/redoc-lib/src/utils/string.d.ts +1 -0
  675. package/lib-esm/redoc-lib/src/utils/string.js +2 -0
  676. package/lib-esm/services/OAuth2.d.ts +4 -2
  677. package/lib-esm/services/OAuth2.js +1 -1
  678. package/lib-esm/services/OpenIDConnect.d.ts +1 -1
  679. package/lib-esm/services/ProMenu.js +1 -1
  680. package/lib-esm/services/ProStore.d.ts +9 -7
  681. package/lib-esm/services/ProStore.js +1 -1
  682. package/lib-esm/services/SearchStore.d.ts +1 -1
  683. package/lib-esm/services/VersionedSpecStore.d.ts +1 -1
  684. package/lib-esm/services/VersionedSpecStore.js +1 -1
  685. package/lib-esm/services/code-samples/generator.d.ts +1 -0
  686. package/lib-esm/services/code-samples/generator.js +1 -1
  687. package/lib-esm/services/code-samples/httpsnippet/index.js +1 -1
  688. package/lib-esm/services/code-samples/httpsnippet/targets/csharp/httpclient.js +1 -1
  689. package/lib-esm/services/code-samples/httpsnippet/targets/go/native.js +1 -1
  690. package/lib-esm/services/code-samples/httpsnippet/targets/java/httpclient.js +1 -1
  691. package/lib-esm/services/code-samples/httpsnippet/targets/java8/apachehttp.js +1 -1
  692. package/lib-esm/services/code-samples/httpsnippet/targets/javascript/fetch.js +1 -1
  693. package/lib-esm/services/code-samples/httpsnippet/targets/node/fetch.js +1 -1
  694. package/lib-esm/services/code-samples/httpsnippet/targets/php/curl.js +1 -1
  695. package/lib-esm/services/code-samples/httpsnippet/targets/python/requests.js +1 -1
  696. package/lib-esm/services/code-samples/httpsnippet/targets/r/httr.js +1 -1
  697. package/lib-esm/services/code-samples/httpsnippet/targets/ruby/native.js +1 -1
  698. package/lib-esm/services/code-samples/httpsnippet/targets/shell/curl.js +1 -1
  699. package/lib-esm/services/history/ProHashHistoryService.js +1 -1
  700. package/lib-esm/services/utils.d.ts +2 -0
  701. package/lib-esm/services/utils.js +1 -1
  702. package/lib-esm/standalone.d.ts +1 -1
  703. package/lib-esm/standalone.js +1 -1
  704. package/lib-esm/types.d.ts +25 -0
  705. package/lib-esm/types.js +2 -0
  706. package/lib-esm/utils.d.ts +4 -13
  707. package/lib-esm/utils.js +1 -1
  708. package/package.json +26 -60
  709. package/lib/components/Endpoint/CopyLink.d.ts +0 -1
  710. package/lib/components/Endpoint/CopyLink.js +0 -2
  711. package/lib/components/Endpoint/Path.d.ts +0 -4
  712. package/lib/components/Endpoint/Path.js +0 -2
  713. package/lib/components/Endpoint/ServerItem.d.ts +0 -1
  714. package/lib/components/Endpoint/ServerItem.js +0 -2
  715. package/lib/components/Endpoint/ServerUrl.d.ts +0 -1
  716. package/lib/components/Endpoint/ServerUrl.js +0 -2
  717. package/lib/components/console/OperationParameters.js +0 -2
  718. package/lib/components/console/RequestBody.d.ts +0 -12
  719. package/lib/components/console/RequestBody.js +0 -2
  720. package/lib/components/console/ServerDropdown.d.ts +0 -24
  721. package/lib/components/console/ServerDropdown.js +0 -2
  722. package/lib/components/shared/SelectOnClick.d.ts +0 -6
  723. package/lib/components/shared/SelectOnClick.js +0 -2
  724. package/lib/redoc-lib/src/components/Markdown/SanitizedMdBlock.js +0 -2
  725. package/lib/redoc-lib/src/components/Responses/styled.elements.d.ts +0 -1
  726. package/lib/redoc-lib/src/components/Responses/styled.elements.js +0 -2
  727. package/lib/redoc-lib/src/components/helper.d.ts +0 -6
  728. package/lib/redoc-lib/src/components/helper.js +0 -2
  729. package/lib/redoc-lib/src/services/MenuStore.d.ts +0 -21
  730. package/lib-esm/components/Endpoint/CopyLink.d.ts +0 -1
  731. package/lib-esm/components/Endpoint/CopyLink.js +0 -2
  732. package/lib-esm/components/Endpoint/Path.d.ts +0 -4
  733. package/lib-esm/components/Endpoint/Path.js +0 -2
  734. package/lib-esm/components/Endpoint/ServerItem.d.ts +0 -1
  735. package/lib-esm/components/Endpoint/ServerItem.js +0 -2
  736. package/lib-esm/components/Endpoint/ServerUrl.d.ts +0 -1
  737. package/lib-esm/components/Endpoint/ServerUrl.js +0 -2
  738. package/lib-esm/components/console/OperationParameters.js +0 -2
  739. package/lib-esm/components/console/RequestBody.d.ts +0 -12
  740. package/lib-esm/components/console/RequestBody.js +0 -2
  741. package/lib-esm/components/console/ServerDropdown.d.ts +0 -24
  742. package/lib-esm/components/console/ServerDropdown.js +0 -2
  743. package/lib-esm/components/shared/SelectOnClick.d.ts +0 -6
  744. package/lib-esm/components/shared/SelectOnClick.js +0 -2
  745. package/lib-esm/redoc-lib/src/components/Markdown/SanitizedMdBlock.js +0 -2
  746. package/lib-esm/redoc-lib/src/components/Responses/styled.elements.d.ts +0 -1
  747. package/lib-esm/redoc-lib/src/components/Responses/styled.elements.js +0 -2
  748. package/lib-esm/redoc-lib/src/components/helper.d.ts +0 -6
  749. package/lib-esm/redoc-lib/src/components/helper.js +0 -2
  750. package/lib-esm/redoc-lib/src/services/MenuStore.d.ts +0 -21
  751. package/lib-esm/redoc-lib/src/services/MenuStore.js +0 -2
@@ -1,35 +1,39 @@
1
- import * as React from 'react';
2
- import { Controlled as CodeMirror } from 'react-codemirror2';
1
+ import type { ComponentType, LegacyRef } from 'react';
2
+ import React from 'react';
3
+ import type { FieldApi, FieldState } from 'informed';
4
+ import { Controlled as CodeMirror } from 'react-codemirror2-react-17';
3
5
  import type { Editor } from 'codemirror';
6
+ import type { OpenAPISchema, Referenced } from '../../redoc-lib';
4
7
  import './codemirror-helpers';
5
8
  export interface CodemirrorInputBase {
6
- forwardedRef?: React.Ref<any>;
9
+ forwardedRef?: LegacyRef<CodeMirror>;
7
10
  mode?: string;
8
11
  field: string;
9
- initialValue: any;
10
- validate: any;
11
- schema: any;
12
+ initialValue: string;
13
+ validate: () => string | undefined;
14
+ schema?: Referenced<OpenAPISchema>;
12
15
  id: string;
13
- onChange?: (e: any) => any;
14
- onBlur?: (e: any) => any;
16
+ onChange?: (e: any) => void;
17
+ onBlur?: (e: any) => void;
15
18
  }
16
19
  export interface CodemirrorInputProps extends CodemirrorInputBase {
17
- fieldApi: any;
18
- fieldState: any;
20
+ fieldApi: FieldApi;
21
+ fieldState: FieldState<string>;
19
22
  render: any;
20
23
  userProps: any;
21
24
  ref: any;
22
25
  }
23
- export declare class CodemirrorInput extends React.Component<CodemirrorInputProps> {
26
+ export declare class CodemirrorInput extends React.PureComponent<CodemirrorInputProps> {
24
27
  editor: Editor;
25
28
  _onKeyUp: (_cm: CodeMirror.Doc, event: {
26
29
  key: string;
27
30
  }) => void;
28
31
  initEditor: (editor: Editor) => void;
29
32
  refreshEditor: () => void;
33
+ showHintHandler: () => void;
30
34
  componentDidMount(): void;
31
35
  componentWillUnmount(): void;
32
36
  render(): JSX.Element;
33
37
  }
34
- declare const _default: React.ComponentType<CodemirrorInputBase>;
38
+ declare const _default: ComponentType<CodemirrorInputBase>;
35
39
  export default _default;
@@ -1,2 +1,2 @@
1
- import{__extends,__makeTemplateObject}from"tslib";import*as React from"react";import{createGlobalStyle}from"styled-components";import{asField}from"informed";import{Controlled as CodeMirror}from"react-codemirror2";import"./codemirror-helpers";var templateObject_1,CodeMirrorStyles=createGlobalStyle(templateObject_1||(templateObject_1=__makeTemplateObject(["\n .cm-s-material.CodeMirror {\n background-color: var(--samples-panel-controls-background-color)!important;\n color: var(--color-content-inverse)!important;\n font-family: var(--code-font-family);\n line-height: 18px;\n padding: 10px;\n }\n\n .CodeMirror-lint-mark-error {\n background-size: 4px;\n background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAGCAYAAAD+Bd/7AAAAVUlEQVR42mNgQAL/GRjigPg/EP8FYntkCX4gtoVKgvE/BoabcEVAhj6S5DUgfgFl/wFJ2gPxL6iuT1DF+kD2R5AYA5KRj6CS/FAMYvszIBltz4AFAAD9fz0YtLg13wAAAABJRU5ErkJggg==') !important;\n }\n\n .cm-s-material.CodeMirror-focused div.CodeMirror-selected {\n background: rgba(255, 255, 255, 0.3) !important;\n }\n\n .cm-s-material .CodeMirror-code .cm-string.cm-property {\n color: #9EFAA7;\n }\n\n .cm-s-material .CodeMirror-code .cm-string {\n color: #FEE39E;\n }\n\n .cm-s-material .CodeMirror-code .cm-atom {\n color: var(--color-content-inverse);\n }\n\n div .cm-s-material .CodeMirror-matchingbracket {\n outline: 1px solid grey;\n text-decoration: none;\n }\n\n .react-codemirror2 {\n display: flex;\n flex-direction: column;\n justify-content: flex-start;\n overflow: hidden;\n\n flex: 1;\n }\n\n .CodeMirror {\n flex: 1;\n border-radius: var(--panels-border-radius);\n }\n"],["\n .cm-s-material.CodeMirror {\n background-color: var(--samples-panel-controls-background-color)!important;\n color: var(--color-content-inverse)!important;\n font-family: var(--code-font-family);\n line-height: 18px;\n padding: 10px;\n }\n\n .CodeMirror-lint-mark-error {\n background-size: 4px;\n background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAGCAYAAAD+Bd/7AAAAVUlEQVR42mNgQAL/GRjigPg/EP8FYntkCX4gtoVKgvE/BoabcEVAhj6S5DUgfgFl/wFJ2gPxL6iuT1DF+kD2R5AYA5KRj6CS/FAMYvszIBltz4AFAAD9fz0YtLg13wAAAABJRU5ErkJggg==') !important;\n }\n\n .cm-s-material.CodeMirror-focused div.CodeMirror-selected {\n background: rgba(255, 255, 255, 0.3) !important;\n }\n\n .cm-s-material .CodeMirror-code .cm-string.cm-property {\n color: #9EFAA7;\n }\n\n .cm-s-material .CodeMirror-code .cm-string {\n color: #FEE39E;\n }\n\n .cm-s-material .CodeMirror-code .cm-atom {\n color: var(--color-content-inverse);\n }\n\n div .cm-s-material .CodeMirror-matchingbracket {\n outline: 1px solid grey;\n text-decoration: none;\n }\n\n .react-codemirror2 {\n display: flex;\n flex-direction: column;\n justify-content: flex-start;\n overflow: hidden;\n\n flex: 1;\n }\n\n .CodeMirror {\n flex: 1;\n border-radius: var(--panels-border-radius);\n }\n"]))),CodemirrorInput=function(e){function r(){var r=null!==e&&e.apply(this,arguments)||this;return Object.defineProperty(r,"editor",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(r,"_onKeyUp",{enumerable:!0,configurable:!0,writable:!0,value:function(e,o){/^[a-zA-Z0-9_":]$/.test(o.key)&&r.editor.execCommand("autocomplete")}}),Object.defineProperty(r,"initEditor",{enumerable:!0,configurable:!0,writable:!0,value:function(e){r.editor=e,e.on("keyup",r._onKeyUp)}}),Object.defineProperty(r,"refreshEditor",{enumerable:!0,configurable:!0,writable:!0,value:function(){r.editor.refresh()}}),r}return __extends(r,e),Object.defineProperty(r.prototype,"componentDidMount",{enumerable:!1,configurable:!0,writable:!0,value:function(){var e=this;setTimeout((function(){e.editor.refresh()}),0),document.addEventListener("click",this.refreshEditor)}}),Object.defineProperty(r.prototype,"componentWillUnmount",{enumerable:!1,configurable:!0,writable:!0,value:function(){document.removeEventListener("click",this.refreshEditor)}}),Object.defineProperty(r.prototype,"render",{enumerable:!1,configurable:!0,writable:!0,value:function(){var e=this,r=this.props.fieldState.value,o=this.props.fieldApi,n=o.setValue,t=o.setTouched,i=o.setError,a=this.props,l=a.onChange,c=a.onBlur,d=a.forwardedRef;return React.createElement(React.Fragment,null,React.createElement(CodeMirrorStyles,null),React.createElement(CodeMirror,{editorDidMount:this.initEditor,value:r||"",ref:d||void 0,onBeforeChange:function(e,r,o){n(o),l&&l(o)},onBlur:function(e){t(),c&&c(e)},options:{mode:this.props.mode||"application/json",theme:"material",matchBrackets:!0,autoCloseBrackets:!0,tabSize:2,foldGutter:!0,extraKeys:{"Cmd-Space":function(){return e.editor.showHint({completeSingle:!0})},"Ctrl-Space":function(){return e.editor.showHint({completeSingle:!0})}},hintOptions:{id:this.props.id,completeSingle:!1,schema:this.props.schema},lint:{id:this.props.id,schema:this.props.schema,setError:i}}}))}}),r}(React.Component);export{CodemirrorInput};export default asField(CodemirrorInput);
1
+ import{__extends,__makeTemplateObject}from"tslib";import React from"react";import{asField}from"informed";import{Controlled as CodeMirror}from"react-codemirror2-react-17";import{createGlobalStyle}from"styled-components";import"./codemirror-helpers";import{MediaTypes}from"../../types";var templateObject_1,CodeMirrorStyles=createGlobalStyle(templateObject_1||(templateObject_1=__makeTemplateObject(["\n .cm-s-material.CodeMirror {\n background-color: var(--samples-panel-controls-background-color)!important;\n color: var(--color-content-inverse)!important;\n font-family: var(--code-font-family);\n line-height: 18px;\n padding: 10px;\n }\n\n .CodeMirror-lint-mark-error {\n background-size: 4px;\n background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAGCAYAAAD+Bd/7AAAAVUlEQVR42mNgQAL/GRjigPg/EP8FYntkCX4gtoVKgvE/BoabcEVAhj6S5DUgfgFl/wFJ2gPxL6iuT1DF+kD2R5AYA5KRj6CS/FAMYvszIBltz4AFAAD9fz0YtLg13wAAAABJRU5ErkJggg==') !important;\n }\n\n .cm-s-material.CodeMirror-focused div.CodeMirror-selected {\n background: rgba(255, 255, 255, 0.3) !important;\n }\n\n .cm-s-material .CodeMirror-code .cm-string.cm-property {\n color: #9EFAA7;\n }\n\n .cm-s-material .CodeMirror-code .cm-string {\n color: #FEE39E;\n }\n\n .cm-s-material .CodeMirror-code .cm-atom {\n color: var(--color-content-inverse);\n }\n\n div .cm-s-material .CodeMirror-matchingbracket {\n outline: 1px solid grey;\n text-decoration: none;\n }\n\n .react-codemirror2 {\n display: flex;\n flex-direction: column;\n justify-content: flex-start;\n overflow: hidden;\n\n flex: 1;\n }\n\n .CodeMirror {\n flex: 1;\n border-radius: var(--panels-border-radius);\n }\n"],["\n .cm-s-material.CodeMirror {\n background-color: var(--samples-panel-controls-background-color)!important;\n color: var(--color-content-inverse)!important;\n font-family: var(--code-font-family);\n line-height: 18px;\n padding: 10px;\n }\n\n .CodeMirror-lint-mark-error {\n background-size: 4px;\n background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAGCAYAAAD+Bd/7AAAAVUlEQVR42mNgQAL/GRjigPg/EP8FYntkCX4gtoVKgvE/BoabcEVAhj6S5DUgfgFl/wFJ2gPxL6iuT1DF+kD2R5AYA5KRj6CS/FAMYvszIBltz4AFAAD9fz0YtLg13wAAAABJRU5ErkJggg==') !important;\n }\n\n .cm-s-material.CodeMirror-focused div.CodeMirror-selected {\n background: rgba(255, 255, 255, 0.3) !important;\n }\n\n .cm-s-material .CodeMirror-code .cm-string.cm-property {\n color: #9EFAA7;\n }\n\n .cm-s-material .CodeMirror-code .cm-string {\n color: #FEE39E;\n }\n\n .cm-s-material .CodeMirror-code .cm-atom {\n color: var(--color-content-inverse);\n }\n\n div .cm-s-material .CodeMirror-matchingbracket {\n outline: 1px solid grey;\n text-decoration: none;\n }\n\n .react-codemirror2 {\n display: flex;\n flex-direction: column;\n justify-content: flex-start;\n overflow: hidden;\n\n flex: 1;\n }\n\n .CodeMirror {\n flex: 1;\n border-radius: var(--panels-border-radius);\n }\n"]))),CodemirrorInput=function(e){function r(){var r=null!==e&&e.apply(this,arguments)||this;return Object.defineProperty(r,"editor",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(r,"_onKeyUp",{enumerable:!0,configurable:!0,writable:!0,value:function(e,o){/^[a-zA-Z0-9_":]$/.test(o.key)&&r.editor.execCommand("autocomplete")}}),Object.defineProperty(r,"initEditor",{enumerable:!0,configurable:!0,writable:!0,value:function(e){r.editor=e,e.on("keyup",r._onKeyUp)}}),Object.defineProperty(r,"refreshEditor",{enumerable:!0,configurable:!0,writable:!0,value:function(){r.editor.refresh()}}),Object.defineProperty(r,"showHintHandler",{enumerable:!0,configurable:!0,writable:!0,value:function(){return r.editor.showHint({completeSingle:!0})}}),r}return __extends(r,e),Object.defineProperty(r.prototype,"componentDidMount",{enumerable:!1,configurable:!0,writable:!0,value:function(){var e=this;setTimeout((function(){e.editor.refresh()}),0),document.addEventListener("click",this.refreshEditor)}}),Object.defineProperty(r.prototype,"componentWillUnmount",{enumerable:!1,configurable:!0,writable:!0,value:function(){document.removeEventListener("click",this.refreshEditor)}}),Object.defineProperty(r.prototype,"render",{enumerable:!1,configurable:!0,writable:!0,value:function(){var e=this.props.fieldState.value,r=this.props.fieldApi,o=r.setValue,n=r.setTouched,t=r.setError,i=this.props,a=i.onChange,l=i.onBlur,c=i.forwardedRef;return React.createElement(React.Fragment,null,React.createElement(CodeMirrorStyles,null),React.createElement(CodeMirror,{editorDidMount:this.initEditor,value:e||"",ref:c,onBeforeChange:function(e,r,n){o(n),a&&a(n)},onBlur:function(e){n(!1),l&&l(e)},options:{mode:this.props.mode||MediaTypes.JSON,theme:"material",matchBrackets:!0,autoCloseBrackets:!0,tabSize:2,foldGutter:!0,extraKeys:{"Cmd-Space":this.showHintHandler,"Ctrl-Space":this.showHintHandler},hintOptions:{id:this.props.id,completeSingle:!1,schema:this.props.schema},lint:{id:this.props.id,schema:this.props.schema,setError:t}}}))}}),r}(React.PureComponent);export{CodemirrorInput};export default asField(CodemirrorInput);
2
2
  //# sourceMappingURL=CodemirrorInput.js.map
@@ -1,10 +1,9 @@
1
1
  import * as React from 'react';
2
2
  import type { FormApi, FormState } from 'informed';
3
- import type { SecurityDetails } from '../../utils';
4
- import type { OpenApiResponseData } from './ResponsePanel';
3
+ import type { SecurityDetails } from '../../types';
5
4
  import type { ProStore } from '../../services';
6
5
  import type { OperationModel, Server } from '../../redoc-lib';
7
- import type { PanelComponentProps } from '../Panel';
6
+ import type { OpenApiResponseData } from './ResponsePanel';
8
7
  export declare type RequestAndResponseType = {
9
8
  request: Record<string, unknown>;
10
9
  response: OpenApiResponseData;
@@ -27,13 +26,13 @@ export interface ConsoleState {
27
26
  error?: Error & {
28
27
  response?: OpenApiResponseData;
29
28
  };
30
- resolvedRawSpec?: any;
29
+ resolvedRawSpec?: GenericObject;
31
30
  response?: OpenApiResponseData;
32
31
  time?: number;
33
32
  server: Server;
34
33
  }
35
34
  export declare class Console extends React.Component<ConsoleProps, ConsoleState> {
36
- formApi: FormApi;
35
+ formApi: FormApi | undefined;
37
36
  constructor(props: ConsoleProps);
38
37
  setFormApi: (formApi: FormApi, { values, ...rest }?: FormState<import("informed").FormValues>) => void;
39
38
  handleChange: ({ values, ...rest }: ConsoleState['form']) => void;
@@ -46,8 +45,3 @@ export declare class Console extends React.Component<ConsoleProps, ConsoleState>
46
45
  renderRequest(): JSX.Element;
47
46
  renderResponse(): JSX.Element;
48
47
  }
49
- export declare function TryItPanel({ header, error, success, ...rest }: React.PropsWithChildren<{
50
- header: string;
51
- error?: boolean;
52
- success?: boolean;
53
- } & PanelComponentProps>): JSX.Element;
@@ -1,2 +1,2 @@
1
- import{__assign,__awaiter,__decorate,__extends,__generator,__makeTemplateObject,__rest}from"tslib";import*as React from"react";import styled from"styled-components";import{Form,useField}from"informed";import{observer}from"mobx-react";import{get,useDimensions,unescapeFormId}from"../../utils";import{CloseButton,ConsoleBody,ConsoleWrap}from"./styled";import{ServerChooser}from"./ServerDropdown";import{OperationParameters}from"./OperationParameters";import{ActionPanel}from"./ActionPanel";import{ResponsePanel}from"./ResponsePanel";import{RequestBody}from"./RequestBody";import{ConsoleTabs}from"./ConsoleTabs";import{AuthPanel}from"./AuthPanel";import{AnalyticsEventType}from"../../services";import Swagger from"swagger-client";import{JsonPointer,ShelfIcon,CrossIcon,LockIcon,StoreContext}from"../../redoc-lib";import{RenderHook}from"../../redoc-lib/src/components/helper";import{l}from"../../redoc-lib/src/services/Labels";import{CodeHeader,Panel,Header,Accordion,Trigger,Title}from"../Panel";import{OAuth2}from"../../services/OAuth2";import{PanelBody}from"../Panel/PanelBody";import{getFileNameFromHeaders,getParameters,requiredValidator,unescapeQueryParams,updateStorage}from"./utils";import{isFileUploadMime}from"../common/FileUpload/helper";function normalizeUrlProtocol(e){return e.startsWith("//")?"https:"+e:e}var flexColumn={flex:1,display:"flex",flexDirection:"column"},Console=function(e){function t(t){var r=e.call(this,t)||this;return Object.defineProperty(r,"formApi",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(r,"setFormApi",{enumerable:!0,configurable:!0,writable:!0,value:function(e,t){void 0===t&&(t=e.getState());var o=t.values,n=__rest(t,["values"]);r.formApi=e,setTimeout((function(){var e=__assign(__assign({},n),{values:__assign(__assign({},o),{query:unescapeQueryParams(o.query||{})})});r.setState({form:e})}),0)}}),Object.defineProperty(r,"handleChange",{enumerable:!0,configurable:!0,writable:!0,value:function(e){var t=e.values,o=__rest(e,["values"]),n=__assign(__assign({},o),{values:__assign(__assign({},t),{query:unescapeQueryParams(t.query||{})})});r.setState({form:n}),updateStorage(n)}}),Object.defineProperty(r,"handleTabChange",{enumerable:!0,configurable:!0,writable:!0,value:function(e){r.setState({activeTab:e})}}),Object.defineProperty(r,"handleServerChange",{enumerable:!0,configurable:!0,writable:!0,value:function(e){r.setState({server:e}),r.props.operation.setActiveServer(e)}}),Object.defineProperty(r,"handleExecute",{enumerable:!0,configurable:!0,writable:!0,value:function(){return __awaiter(r,void 0,void 0,(function(){var e,t,r,o,n,a,s,i,l,c,u,p,d,m,h,v,f,g,y,_,b,P,R,S,C,E,I,w,T,x,A,k,O,q,F,B,j,H,U,V,D,N=this;return __generator(this,(function(W){switch(W.label){case 0:if(e=this.props,t=e.store,r=e.operation,o=e.onResponse,n=this.state.form,a=n.values,s=n.invalid,this.formApi.submitForm(),s)return this.setState({shaking:!0}),setTimeout((function(){return N.setState({shaking:!1})}),1e3),null===(B=null===(F=null==t?void 0:t.options.events)||void 0===F?void 0:F.tryItSent)||void 0===B||B.call(F,{eventType:AnalyticsEventType.TryItSent,resource:"Redocly_OperationTryIt",action:"ValidationFailed",operationId:r.operationId,operationPath:r.path,operationHttpVerb:r.httpVerb,operationSummary:r.description}),[2];if(i=this.props.operation.requestBody,l=i&&i.content&&i.content.active&&i.content.active.name||"",c=a.body,/json/.test(l))try{c=JSON.parse(c)}catch(e){console.error(e)}if(this.setState({loading:!0}),u=this.state.resolvedRawSpec,p=(r.httpVerb||"").toLowerCase(),!(d=get(u,["paths",r.path,p,"servers"])||get(u,["paths",r.path,"servers"])||get(u,["servers"])))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");m=d.find((function(e){return N.state.server.url.endsWith(e.url.endsWith("/")?e.url.substring(0,e.url.length-1):e.url)})),h=Date.now(),v=!!window.document.documentMode,g=a.auth,a.auth?(y=Object.keys(a.auth)[0],_=unescapeFormId(y),f=__assign(__assign({},u),{components:__assign(__assign({},u.components),{securitySchemes:__assign(__assign({},u.components.securitySchemes),(A={},A[_]=__assign(__assign({},u.components.securitySchemes[_]),{type:"openIdConnect"===u.components.securitySchemes[_].type?"oauth2":u.components.securitySchemes[_].type}),A))})}),g=__assign(__assign({},g),((k={})[_]=g[y],k))):f=__assign({},u),(b=t.options.corsProxyUrl)&&d.length&&(f.servers=d.map((function(e){return __assign(__assign({},e),{url:b+normalizeUrlProtocol(e.url)})})),f.paths=__assign(__assign({},f.paths),((O={})[r.path]=__assign(__assign({},f.paths[r.path]),((q={})[p]=__assign(__assign({},f.paths[r.path][p]),{servers:void 0}),q.servers=void 0,q)),O))),(P=(null===(H=null===(j=null==i?void 0:i.content)||void 0===j?void 0:j.active)||void 0===H?void 0:H.name)||null)&&c&&isFileUploadMime(P)&&(R=Object.values(c),c=R.length>1?R:R[0]),S=function(e,t){return function(r){return N.props.store.options.sendXUserAgentInTryIt&&(r.headers["X-User-Agent"]="Redocly Try it API console"),e?e(r,t):r}},C={userFetch:v&&require("cross-fetch").fetch,server:b?b+normalizeUrlProtocol(m.url):m.url,serverVariables:this.state.server.variables,spec:f,pathName:r.path,method:r.httpVerb,parameters:__assign(__assign(__assign(__assign({},a.path),a.query),a.header),a.cookie),securities:{authorized:g},requestBody:c,requestContentType:P,responseContentType:(null===(U=a.header)||void 0===U?void 0:U.Accept)||null,requestInterceptor:S(t.options.requestInterceptor,r)},W.label=1;case 1:return W.trys.push([1,5,8,9]),[4,Swagger.execute(C)];case 2:return E=W.sent(),(I=null==E?void 0:E.data)instanceof Blob?(isFileUploadMime(I.type)&&(E.fileInfo={rawData:I,fileName:getFileNameFromHeaders(E.headers)}),w=E,[4,I.text()]):[3,4];case 3:w.data=W.sent(),W.label=4;case 4:return null==o||o({request:C,response:E}),this.setState({response:E,error:void 0}),[3,9];case 5:return(T=W.sent())&&T.response&&T.response.data instanceof Blob?(x=T.response,[4,T.response.data.text()]):[3,7];case 6:x.data=W.sent(),null==o||o({request:C,response:T.response}),W.label=7;case 7:return this.setState({response:void 0,error:T}),[3,9];case 8:return this.setState({loading:!1,activeTab:1,time:Date.now()-h}),null===(D=null===(V=null==t?void 0:t.options.events)||void 0===V?void 0:V.tryItSent)||void 0===D||D.call(V,{eventType:AnalyticsEventType.TryItSent,resource:"Redocly_OperationTryIt",action:"Sent",operationId:r.operationId,operationPath:r.path,operationHttpVerb:r.httpVerb,operationSummary:r.description}),[7];case 9:return[2]}}))}))}}),r.state={form:{values:{path:getParameters(t.operation.parameters,"path"),cookie:getParameters(t.operation.parameters,"cookie"),header:getParameters(t.operation.parameters,"header"),query:getParameters(t.operation.parameters,"query")}},shaking:!1,loading:!1,activeTab:0,server:{}},r}return __extends(t,e),Object.defineProperty(t.prototype,"componentDidMount",{enumerable:!1,configurable:!0,writable:!0,value:function(){return __awaiter(this,void 0,void 0,(function(){var e,t,r,o;return __generator(this,(function(n){switch(n.label){case 0:return e=this.props,t=e.store,r=e.operation,[4,t.dereferenceSpecForTryIt(r)];case 1:return o=n.sent(),this.setState({resolvedRawSpec:o}),this.formApi.setValues({}),[2]}}))}))}}),Object.defineProperty(t.prototype,"componentDidUpdate",{enumerable:!1,configurable:!0,writable:!0,value:function(e){e.operation!==this.props.operation&&this.setState({response:void 0,error:void 0,activeTab:0})}}),Object.defineProperty(t.prototype,"render",{enumerable:!1,configurable:!0,writable:!0,value:function(){var e=this.props,t=e.operation,r=e.className,o=e.rootElement,n=this.state,a=n.shaking,s=n.activeTab,i=n.form,l=n.response,c=n.loading,u=n.error,p=!(!l&&!u);return React.createElement(ConsoleWrapHook,{shaking:a,className:r,rootElement:o},React.createElement(CodeHeader,null,React.createElement(ConsoleTabs,{active:s,hasResponse:p,onChange:this.handleTabChange}),this.props.onClose&&React.createElement(CloseButton,{onClick:this.props.onClose}," ✕ ")),React.createElement(ConsoleBody,{hidden:0!==s},this.renderRequest()),React.createElement(ConsoleBody,{hidden:1!==s},this.renderResponse()),React.createElement(ActionPanel,{hasResponse:p,params:i.values,operation:t,loading:c,execute:this.handleExecute}))}}),Object.defineProperty(t.prototype,"renderRequest",{enumerable:!1,configurable:!0,writable:!0,value:function(){var e,t=this.props,r=t.operation,o=t.store,n=t.properties,a=t.securityDefaults,s=this.state,i=s.form,c=s.resolvedRawSpec,u=s.server,p=i.errors||{},d=p.path||p.cookie||p.header||p.query,m=c&&JsonPointer.get(c,r.pointer),h=i.values&&i.values.auth&&Object.keys(i.values.auth)[0];h&&i.values.auth[h]||(h=void 0),!h||void 0===i.values.auth[h].token&&void 0===i.values.auth[h].client_id&&void 0===i.values.auth[h].client_secret||i.values.auth[h].token&&i.values.auth[h].token.access_token||(h=void 0),h&&null!=i.values.auth[h].username&&(i.values.auth[h].username&&i.values.auth[h].password||(h=void 0));var v=r.parameters||[],f=null===(e=null==o?void 0:o.options.hooks)||void 0===e?void 0:e.ReplaceTryItSecurityPanel;return!c&&React.createElement(React.Fragment,null,"Loading...")||React.createElement(React.Fragment,null,React.createElement(Form,{onChange:this.handleChange,getApi:this.setFormApi,style:__assign(__assign({},flexColumn),{margin:0})},React.createElement(Accordion,{initialActiveIdx:r.security.length&&h?1:0},r.security.length&&React.createElement(TryItPanel,{header:l("tryItAuth"),"data-cy":"security-trigger",renderChildrenHidden:!0,error:!h&&!!p.auth,success:!!h},f?React.createElement(AuthPanelHook,{field:"auth",validate:requiredValidator},(function(e){return React.createElement(RenderHook,{Hook:f,props:{server:u,operation:r,onChange:e,OAuth2:OAuth2}})})):React.createElement(AuthPanel,{formApi:this.formApi,form:i,operation:r,activeServer:u.url,authCorsProxyUrl:o.options.authCorsProxyUrl,securityDefaults:a}))||null,r.requestBody&&React.createElement(TryItPanel,{header:l("tryItBody"),"data-cy":"body-trigger",renderChildrenHidden:!0,error:!!p.body},React.createElement(RequestBody,{validate:allowBodyErrors,console:this,body:r.requestBody,id:r.id,resolvedBody:m.requestBody,properties:n}))||null,v.length&&React.createElement(TryItPanel,{header:l("tryItParameters"),"data-cy":"parameters-trigger",error:d,renderChildrenHidden:!0},React.createElement(OperationParameters,{operation:r,values:i.values,errors:i.errors||{}}))||null)),React.createElement(ServerChooser,{operation:r,onChange:this.handleServerChange}))}}),Object.defineProperty(t.prototype,"renderResponse",{enumerable:!1,configurable:!0,writable:!0,value:function(){var e=this.state,t=e.response,r=e.error,o=e.time;return React.createElement(ResponsePanel,{response:t,error:r,time:o})}}),t=__decorate([observer],t)}(React.Component);export{Console};function allowBodyErrors(){}function ConsoleWrapHook(e){var t=e.shaking,r=e.className,o=e.children,n=e.rootElement,a=useDimensions(n)[0],s=React.useContext(StoreContext);return React.createElement(ConsoleWrap,{scrollYOffset:null==s?void 0:s.options.scrollYOffset,shaking:t,className:r,"data-cy":"console",fullWidth:null==a?void 0:a.width},o)}function AuthPanelHook(e){var t=useField(__assign({},e)),r=t.fieldApi,o=t.render,n=t.userProps,a=r.setValue,s=n.children;return o(React.createElement(React.Fragment,null,s(a)))}export function TryItPanel(e){var t=e.header,r=e.error,o=e.success,n=__rest(e,["header","error","success"]);return React.createElement(StyledTryItPanel,__assign({},n,{header:function(e){var a=e.toggle,s=e.expanded;return React.createElement(Header,{onClick:a,isExpanded:s,"data-cy":n["data-cy"]},React.createElement(Trigger,null,React.createElement(Title,null,t),React.createElement(ShelfIcon,{direction:s?"down":"right"})),r&&React.createElement(CrossIcon,{size:"14px",color:"--color-error-500"})||null,o&&React.createElement(LockIcon,{size:"14px",color:"--color-success-500"})||null)}}))}var templateObject_1,StyledTryItPanel=styled(Panel)(templateObject_1||(templateObject_1=__makeTemplateObject(["\n "," {\n color: white;\n border: 1px solid ",";\n padding: 10px;\n }\n\n "," path {\n fill: white;\n }\n\n "," {\n padding: 15px 10px;\n background-color: #3e4c59;\n border: 1px solid ",";\n border-top: 0;\n }\n"],["\n "," {\n color: white;\n border: 1px solid ",";\n padding: 10px;\n }\n\n "," path {\n fill: white;\n }\n\n "," {\n padding: 15px 10px;\n background-color: #3e4c59;\n border: 1px solid ",";\n border-top: 0;\n }\n"])),Header,(function(e){return e.error?"#ff908b":"#89949f"}),ShelfIcon,PanelBody,(function(e){return e.error?"#ff908b":"#89949f"}));
1
+ import{__assign,__awaiter,__decorate,__extends,__generator,__rest}from"tslib";import*as React from"react";import{Form,useField}from"informed";import{observer}from"mobx-react";import Swagger from"swagger-client";import{get,unescapeFormId}from"../../utils";import{AnalyticsEventType}from"../../services";import{JsonPointer,StoreContext}from"../../redoc-lib";import{RenderHook}from"../../redoc-lib/src/components/RenderHook";import{l}from"../../redoc-lib/src/services/Labels";import{CodeHeader,Accordion}from"../Panel";import{OAuth2}from"../../services/OAuth2";import{isFileUploadMime}from"../common/FileUpload/helper";import{OperationParameters}from"../OperationParameters";import{useDimensions}from"../../hooks";import{getFileNameFromHeaders,getParameters,makeRequestInterceptor,unescapeQueryParams,updateStorage,requiredValidator}from"./utils";import{AuthPanel}from"./AuthPanel";import{RequestBody}from"./RequestBody";import{ResponsePanel}from"./ResponsePanel";import{ActionPanel}from"./ActionPanel";import{ServersDropdown}from"./ServersDropdown";import{TryItPanel}from"./TryItPanel";import{ConsoleTabs}from"./ConsoleTabs";import{CloseButton,ConsoleBody,ConsoleWrap}from"./styled";function normalizeUrlProtocol(e){return e.startsWith("//")?"https:"+e:e}var flexColumn={flex:1,display:"flex",flexDirection:"column"},Console=function(e){function t(t){var r=e.call(this,t)||this;return Object.defineProperty(r,"formApi",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(r,"setFormApi",{enumerable:!0,configurable:!0,writable:!0,value:function(e,t){void 0===t&&(t=e.getState());var o=t.values,a=__rest(t,["values"]);r.formApi=e,setTimeout((function(){var e=__assign(__assign({},a),{values:__assign(__assign({},o),{query:unescapeQueryParams(o.query||{})})});r.setState({form:e})}),0)}}),Object.defineProperty(r,"handleChange",{enumerable:!0,configurable:!0,writable:!0,value:function(e){var t=e.values,o=__rest(e,["values"]),a=__assign(__assign({},o),{values:__assign(__assign({},t),{query:unescapeQueryParams(t.query||{})})});r.setState({form:a}),updateStorage(a),r.props.operation.setRequestValues(t)}}),Object.defineProperty(r,"handleTabChange",{enumerable:!0,configurable:!0,writable:!0,value:function(e){r.setState({activeTab:e})}}),Object.defineProperty(r,"handleServerChange",{enumerable:!0,configurable:!0,writable:!0,value:function(e){r.setState({server:e}),r.props.operation.setActiveServer(e)}}),Object.defineProperty(r,"handleExecute",{enumerable:!0,configurable:!0,writable:!0,value:function(){return __awaiter(r,void 0,void 0,(function(){var e,t,r,o,a,n,s,i,l,u,c,p,d,m,h,v,f,y,g,_,b,P,R,S,C,w,A,E,I,k,T,q,O,x,F,B,H,j,D,V,U,N=this;return __generator(this,(function(W){switch(W.label){case 0:if(e=this.props,t=e.store,r=e.operation,o=e.onResponse,a=this.state.form,n=a.values,s=a.invalid,null===(x=this.formApi)||void 0===x||x.submitForm(),s)return this.setState({shaking:!0}),setTimeout((function(){return N.setState({shaking:!1})}),1e3),null===(B=null===(F=null==t?void 0:t.options.events)||void 0===F?void 0:F.tryItSent)||void 0===B||B.call(F,{eventType:AnalyticsEventType.TryItSent,resource:"Redocly_OperationTryIt",action:"ValidationFailed",operationId:r.operationId,operationPath:r.path,operationHttpVerb:r.httpVerb,operationSummary:r.description}),[2];if(i=this.props.operation.requestBody,l=i&&i.content&&i.content.active&&i.content.active.name||"",u=n.body,/json/.test(l))try{u=JSON.parse(u)}catch(e){console.error(e)}if(this.setState({loading:!0}),c=this.state.resolvedRawSpec,p=(r.httpVerb||"").toLowerCase(),!(d=get(c,["paths",r.path,p,"servers"])||get(c,["paths",r.path,"servers"])||get(c,["servers"])))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");m=d.find((function(e){return N.state.server.url.endsWith(e.url.endsWith("/")?e.url.substring(0,e.url.length-1):e.url)})),h=Date.now(),v=!!window.document.documentMode,y=n.auth,n.auth?(g=Object.keys(n.auth)[0],_=unescapeFormId(g),f=__assign(__assign({},c),{components:__assign(__assign({},null==c?void 0:c.components),{securitySchemes:__assign(__assign({},null==c?void 0:c.components.securitySchemes),(k={},k[_]=__assign(__assign({},null==c?void 0:c.components.securitySchemes[_]),{type:"openIdConnect"===(null==c?void 0:c.components.securitySchemes[_].type)?"oauth2":null==c?void 0:c.components.securitySchemes[_].type}),k))})}),y=__assign(__assign({},y),((T={})[_]=y[g],T))):f=__assign({},c),(b=t.options.corsProxyUrl)&&d.length&&(f.servers=d.map((function(e){return __assign(__assign({},e),{url:b+normalizeUrlProtocol(e.url)})})),f.paths=__assign(__assign({},f.paths),((q={})[r.path]=__assign(__assign({},f.paths[r.path]),((O={})[p]=__assign(__assign({},f.paths[r.path][p]),{servers:void 0}),O.servers=void 0,O)),q))),(P=(null===(j=null===(H=null==i?void 0:i.content)||void 0===H?void 0:H.active)||void 0===j?void 0:j.name)||null)&&u&&isFileUploadMime(P)&&(R=Object.values(u),u=R.length>1?R:R[0]),S={userFetch:v&&require("cross-fetch").fetch,server:b?b+normalizeUrlProtocol(m.url):m.url,serverVariables:this.state.server.variables,spec:f,pathName:r.path,method:r.httpVerb,parameters:__assign(__assign(__assign(__assign({},n.path),n.query),n.header),n.cookie),securities:{authorized:y},requestBody:u,requestContentType:P,responseContentType:(null===(D=n.header)||void 0===D?void 0:D.Accept)||null,requestInterceptor:makeRequestInterceptor(t.options,r,null==y?void 0:y.Authorization)},W.label=1;case 1:return W.trys.push([1,5,8,9]),[4,Swagger.execute(S)];case 2:return C=W.sent(),(w=null==C?void 0:C.data)instanceof Blob?(isFileUploadMime(w.type)&&(C.fileInfo={rawData:w,fileName:getFileNameFromHeaders(C.headers)}),A=C,[4,w.text()]):[3,4];case 3:A.data=W.sent(),W.label=4;case 4:return null==o||o({request:S,response:C}),this.setState({response:C,error:void 0}),[3,9];case 5:return(E=W.sent())&&E.response&&E.response.data instanceof Blob?(I=E.response,[4,E.response.data.text()]):[3,7];case 6:I.data=W.sent(),null==o||o({request:S,response:E.response}),W.label=7;case 7:return this.setState({response:void 0,error:E}),[3,9];case 8:return this.setState({loading:!1,activeTab:1,time:Date.now()-h}),null===(U=null===(V=null==t?void 0:t.options.events)||void 0===V?void 0:V.tryItSent)||void 0===U||U.call(V,{eventType:AnalyticsEventType.TryItSent,resource:"Redocly_OperationTryIt",action:"Sent",operationId:r.operationId,operationPath:r.path,operationHttpVerb:r.httpVerb,operationSummary:r.description}),[7];case 9:return[2]}}))}))}}),r.state={form:{values:{path:getParameters(t.operation.parameters,"path"),cookie:getParameters(t.operation.parameters,"cookie"),header:getParameters(t.operation.parameters,"header"),query:getParameters(t.operation.parameters,"query")}},shaking:!1,loading:!1,activeTab:0,server:{}},r}return __extends(t,e),Object.defineProperty(t.prototype,"componentDidMount",{enumerable:!1,configurable:!0,writable:!0,value:function(){var e;return __awaiter(this,void 0,void 0,(function(){var t,r,o,a;return __generator(this,(function(n){switch(n.label){case 0:return t=this.props,r=t.store,o=t.operation,[4,r.dereferenceSpecForTryIt(o)];case 1:return a=n.sent(),this.setState({resolvedRawSpec:a}),null===(e=this.formApi)||void 0===e||e.setValues({}),[2]}}))}))}}),Object.defineProperty(t.prototype,"componentDidUpdate",{enumerable:!1,configurable:!0,writable:!0,value:function(e){e.operation!==this.props.operation&&this.setState({response:void 0,error:void 0,activeTab:0})}}),Object.defineProperty(t.prototype,"render",{enumerable:!1,configurable:!0,writable:!0,value:function(){var e=this.props,t=e.operation,r=e.className,o=e.rootElement,a=this.state,n=a.shaking,s=a.activeTab,i=a.form,l=a.response,u=a.loading,c=a.error,p=!(!l&&!c);return React.createElement(ConsoleWrapHook,{shaking:n,className:r,rootElement:o},React.createElement(CodeHeader,null,React.createElement(ConsoleTabs,{active:s,hasResponse:p,onChange:this.handleTabChange}),this.props.onClose&&React.createElement(CloseButton,{onClick:this.props.onClose}," ✕ ")),React.createElement(ConsoleBody,{hidden:0!==s,"data-cy":"console-request-body"},this.renderRequest()),React.createElement(ConsoleBody,{hidden:1!==s,"data-cy":"console-response-body"},this.renderResponse()),React.createElement(ActionPanel,{hasResponse:p,params:i.values,operation:t,loading:u,execute:this.handleExecute}))}}),Object.defineProperty(t.prototype,"renderRequest",{enumerable:!1,configurable:!0,writable:!0,value:function(){var e,t=this.props,r=t.operation,o=t.store,a=t.properties,n=t.securityDefaults,s=this.state,i=s.form,u=s.resolvedRawSpec,c=s.server,p=i.errors||{},d=p.path||p.cookie||p.header||p.query,m=u&&JsonPointer.get(u,r.pointer),h=i.values&&i.values.auth&&Object.keys(i.values.auth)[0];h&&i.values.auth[h]||(h=void 0),!h||void 0===i.values.auth[h].token&&void 0===i.values.auth[h].client_id&&void 0===i.values.auth[h].client_secret||i.values.auth[h].token&&i.values.auth[h].token.access_token||(h=void 0),h&&null!=i.values.auth[h].username&&(i.values.auth[h].username&&i.values.auth[h].password||(h=void 0));var v=r.parameters||[],f=null===(e=null==o?void 0:o.options.hooks)||void 0===e?void 0:e.ReplaceTryItSecurityPanel;return!u&&React.createElement(React.Fragment,null,"Loading...")||React.createElement(Form,{onChange:this.handleChange,getApi:this.setFormApi,style:__assign(__assign({},flexColumn),{margin:0})},React.createElement(ServersDropdown,{operation:r,onChange:this.handleServerChange}),React.createElement(Accordion,{initialActiveIdx:r.security.length&&h?1:0},r.security.length&&this.formApi&&React.createElement(TryItPanel,{header:l("tryItAuth"),"data-cy":"security-trigger",renderChildrenHidden:!0,error:!h&&!!p.auth,success:!!h},f?React.createElement(AuthPanelHook,{field:"auth",validate:requiredValidator},(function(e){return React.createElement(RenderHook,{Hook:f,props:{server:c,operation:r,onChange:e,OAuth2:OAuth2}})})):React.createElement(AuthPanel,{formApi:this.formApi,form:i,operation:r,activeServer:c.url,authCorsProxyUrl:o.options.authCorsProxyUrl,securityDefaults:n}))||null,r.requestBody&&this.formApi&&React.createElement(TryItPanel,{header:l("tryItBody"),"data-cy":"body-trigger",renderChildrenHidden:!0,error:!!p.body},React.createElement(RequestBody,{validate:allowBodyErrors,formApi:this.formApi,body:r.requestBody,id:r.id,resolvedBody:null==m?void 0:m.requestBody,properties:a}))||null,v.length&&React.createElement(TryItPanel,{header:l("tryItParameters"),"data-cy":"parameters-trigger",error:d,renderChildrenHidden:!0},React.createElement(OperationParameters,{operation:r,values:i.values,errors:i.errors||{}}))||null))}}),Object.defineProperty(t.prototype,"renderResponse",{enumerable:!1,configurable:!0,writable:!0,value:function(){var e=this.state,t=e.response,r=e.error,o=e.time;return React.createElement(ResponsePanel,{response:t,error:r,time:o})}}),t=__decorate([observer],t)}(React.Component);export{Console};function allowBodyErrors(){}function ConsoleWrapHook(e){var t=e.shaking,r=e.className,o=e.children,a=e.rootElement,n=useDimensions(a)[0],s=React.useContext(StoreContext);return React.createElement(ConsoleWrap,{scrollYOffset:null==s?void 0:s.options.scrollYOffset,shaking:t,className:r,"data-cy":"console",fullWidth:null==n?void 0:n.width},o)}function AuthPanelHook(e){var t=useField(__assign({},e)),r=t.fieldApi,o=t.render,a=t.userProps,n=r.setValue,s=a.children;return o(React.createElement(React.Fragment,null,s(n)))}
2
2
  //# sourceMappingURL=Console.js.map
@@ -1,2 +1,2 @@
1
- import{__assign,__awaiter,__generator}from"tslib";import React from"react";import{useDimensions}from"../../utils";import{CodeHeader}from"../Panel";import{ConsoleWrap}from"./styled";import{StoreContext}from"../../redoc-lib";export function Console(e){var t=this,o=React.useState({}),r=o[0],n=o[1],s=React.useContext(StoreContext),a=useDimensions(e.rootElement)[0];return React.useEffect((function(){__awaiter(t,void 0,void 0,(function(){var e;return __generator(this,(function(t){switch(t.label){case 0:return[4,import("./Console")];case 1:return e=t.sent(),n({Console:e.Console}),[2]}}))}))}),[]),r.Console?React.createElement(r.Console,__assign({},e)):React.createElement(ConsoleWrap,{scrollYOffset:null==s?void 0:s.options.scrollYOffset,className:e.className,fullWidth:null==a?void 0:a.width},React.createElement(CodeHeader,null,"Loading..."))}
1
+ import{__assign,__awaiter,__generator}from"tslib";import React from"react";import{useDimensions}from"../../hooks";import{CodeHeader}from"../Panel";import{StoreContext}from"../../redoc-lib";import{ConsoleWrap}from"./styled";export function Console(e){var o=this,t=React.useState({}),r=t[0],n=t[1],s=React.useContext(StoreContext),a=useDimensions(e.rootElement)[0];return React.useEffect((function(){__awaiter(o,void 0,void 0,(function(){var e;return __generator(this,(function(o){switch(o.label){case 0:return[4,import("./Console")];case 1:return e=o.sent(),n({Console:e.Console}),[2]}}))}))}),[]),r.Console?React.createElement(r.Console,__assign({},e)):React.createElement(ConsoleWrap,{scrollYOffset:null==s?void 0:s.options.scrollYOffset,className:e.className,fullWidth:null==a?void 0:a.width},React.createElement(CodeHeader,null,"Loading..."))}
2
2
  //# sourceMappingURL=ConsoleLazy.js.map
@@ -1,7 +1,7 @@
1
1
  import * as React from 'react';
2
2
  import type { FormApi, FormState } from 'informed';
3
3
  import type { InputActionButtonProps } from '../common/TextField';
4
- import type { SecurityDetails } from '../../utils';
4
+ import type { SecurityDetails } from '../../types';
5
5
  import type { RedocProNormalizedOptions } from '../../services';
6
6
  export interface OAuth2FlowProps {
7
7
  authorizationUrl: string;
@@ -17,6 +17,7 @@ export interface OAuth2FlowProps {
17
17
  form: FormState;
18
18
  formApi: FormApi;
19
19
  flow: 'implicit' | 'authorizationCode';
20
+ tokenEndpointAuthMethod?: string | string[];
20
21
  clientId?: string;
21
22
  defaultValues?: SecurityDetails;
22
23
  }
@@ -1,2 +1,2 @@
1
- import{__assign,__awaiter,__extends,__generator,__makeTemplateObject}from"tslib";import*as React from"react";import styled from"styled-components";import{Button}from"@redocly/theme";import{OptionsContext}from"../../redoc-lib";import{LinearProgress}from"../common/LinearProgress";import{FormControl,FormLabel,FormError,FormWrapper,FormWarning}from"../common/form";import{FormDropdown,FormTextField,TextField}from"../common/TextField";import{Checkbox}from"../common/Checkbox";import Scope from"./Scope";import{OAuth2,deriveCodeChallenge}from"../../services/OAuth2";import{fromSessionStorage,getSecurityDetailsOptions}from"../../utils";import{normalizeUrlProtocol}from"./utils";import{isEmptyObject,randString}from"../../services/utils";function requiredValidator(e){if(!e)return"Field is required"}var OAuth2Flow=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return Object.defineProperty(t,"state",{enumerable:!0,configurable:!0,writable:!0,value:{error:null,loading:!1,showPkceOptions:!1}}),Object.defineProperty(t,"clearToken",{enumerable:!0,configurable:!0,writable:!0,value:function(){t.props.formApi.setValue("auth."+t.props.id+".token","")}}),Object.defineProperty(t,"togglePkceOptions",{enumerable:!0,configurable:!0,writable:!0,value:function(){t.setState((function(e){return{showPkceOptions:!e.showPkceOptions}}))}}),Object.defineProperty(t,"handleCodeVerifierChange",{enumerable:!0,configurable:!0,writable:!0,value:function(e){var r=e.target.value;return __awaiter(t,void 0,void 0,(function(){var e;return __generator(this,(function(t){switch(t.label){case 0:return[4,deriveCodeChallenge(r)];case 1:return e=t.sent(),this.setState({codeVerifier:r,validCodeChallenge:e}),[2]}}))}))}}),t}return __extends(t,e),Object.defineProperty(t.prototype,"values",{get:function(){var e,t;return(null===(t=null===(e=this.props.form.values)||void 0===e?void 0:e.auth)||void 0===t?void 0:t[this.props.id])||{}},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"errors",{get:function(){var e,t;return(null===(t=null===(e=this.props.form.errors)||void 0===e?void 0:e.auth)||void 0===t?void 0:t[this.props.id])||{}},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"pkceInputActionButtonProps",{get:function(){var e=this;if(void 0!==this.state.codeVerifier&&this.state.codeChallenge!==this.state.validCodeChallenge)return{label:"sync",onClick:function(){e.state.codeVerifier&&e.setState({codeChallenge:e.state.validCodeChallenge})}}},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"componentDidMount",{enumerable:!1,configurable:!0,writable:!0,value:function(){var e=this;if(this.props.usePkce){var t=randString(43);deriveCodeChallenge(t).then((function(r){e.setState({codeVerifier:t,codeChallenge:r,validCodeChallenge:r})}))}}}),Object.defineProperty(t.prototype,"handleAuthorize",{enumerable:!1,configurable:!0,writable:!0,value:function(e){var t=this;if(e){this.props.formApi.validate();var r=this.props,n=r.flow,o=r.usePkce,a=r.id,l=r.tokenUrl,i=r.authCorsProxyUrl;if(isEmptyObject(this.errors)){this.setState({loading:!0,error:null});var c=i?i+normalizeUrlProtocol(e):e,s=i&&l?i+normalizeUrlProtocol(l):l,u=this.props.formApi.getValue("auth."+a+".scopes"),p={authorizationUrl:c.startsWith("http")?c:this.props.server+c,clientId:this.values.client_id,scopes:u,redirectUri:this.context.oAuth2RedirectURI,routingBasePath:this.context.routingBasePath,successCallback:function(e){t.props.formApi.setValue("auth."+t.props.id+".token",e),t.setState({loading:!1,error:null})},errorCallback:function(e){t.setState({loading:!1,error:(null==e?void 0:e.message)||"Failed to retrieve the access token"})}};"implicit"===n&&OAuth2.authorizeImplicit(p),"authorizationCode"===n&&OAuth2.authorizeAuthorizationCode(__assign(__assign(__assign({},p),{tokenUrl:(null==s?void 0:s.startsWith("http"))?s:this.props.server+s,clientSecret:this.values.client_secret}),o&&{codeVerifier:this.state.codeVerifier,codeChallenge:this.state.codeChallenge}))}}}}),Object.defineProperty(t.prototype,"handleLogout",{enumerable:!1,configurable:!0,writable:!0,value:function(){this.clearToken(),this.setState({error:null})}}),Object.defineProperty(t.prototype,"handleCancel",{enumerable:!1,configurable:!0,writable:!0,value:function(){this.setState({loading:!1,error:null}),OAuth2.clearRedirectData(this.props.flow)}}),Object.defineProperty(t.prototype,"render",{enumerable:!1,configurable:!0,writable:!0,value:function(){var e=this,t=this.state,r=t.error,n=t.loading,o=this.props,a=o.id,l=o.scopes,i=o.authorizationUrl,c=o.flow,s=o.usePkce,u=o.defaultValues;if(!i)return React.createElement(FormError,null,"No flow info");var p=fromSessionStorage("auth."+a+".token")||JSON.stringify(null==u?void 0:u.token);p=p?JSON.parse(p):"";var d=getSecurityDetailsOptions(a,"client_id"),m={field:"auth."+a+".client_id",fullWidth:!0,initialValue:fromSessionStorage("auth."+a+".client_id")||this.props.clientId||(null==u?void 0:u.client_id),initValue:fromSessionStorage("auth."+a+".client_id")||this.props.clientId||(null==u?void 0:u.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: "),d?React.createElement(FormDropdown,__assign({},m,{options:d})):React.createElement(FormTextField,__assign({},m,{"data-cy":"client-id-input",panel:"try-it"}))),"authorizationCode"===c&&React.createElement(React.Fragment,null,(!(null==s?void 0:s.hideClientSecretInput)||!s)&&React.createElement(FormControl,null,React.createElement(FormLabel,null,"Client Secret:"),React.createElement(FormTextField,{type:"password",fullWidth:!0,field:"auth."+a+".client_secret",initialValue:fromSessionStorage("auth."+a+".client_secret")||(null==u?void 0:u.client_secret),validateOnBlur:!0,validateOnChange:!0,panel:"try-it","data-cy":"client-secret-input"})),s&&!s.disableManualConfiguration&&React.createElement(PkceOptionsWrapper,null,React.createElement(Checkbox,{id:"pkce-opitons-toggle",label:"Configure PKCE manually",checked:this.state.showPkceOptions,onChange:this.togglePkceOptions,"data-cy":"pkce-options-toggle"}),this.state.showPkceOptions&&React.createElement(PkceDetails,null,React.createElement(FormControl,null,React.createElement(FormLabel,null,"Code Verifier"),React.createElement(TextField,{fullWidth:!0,value:this.state.codeVerifier,onChange:this.handleCodeVerifierChange,panel:"try-it","data-cy":"code-verifier-input"})),React.createElement(FormControl,null,React.createElement(FormLabel,null,"Code Challenge"),React.createElement(TextField,{fullWidth:!0,value:this.state.codeChallenge,onChange:function(t){var r=t.target.value;e.setState({codeChallenge:r})},inputActionButton:this.pkceInputActionButtonProps,panel:"try-it","data-cy":"code-challenge-input"}))))),React.createElement(FormTextField,{fullWidth:!0,field:"auth."+a+".token",type:"hidden",initialValue:p,panel:"try-it"}),React.createElement(Scope,{id:a,scopes:l}),this.values.token&&this.values.token.access_token?React.createElement(FormControl,null,React.createElement(FormLabel,null," Access Token: "),React.createElement(TextField,{disabled:!0,type:"password",fullWidth:!0,value:this.values.token.access_token,panel:"try-it"})):null),React.createElement(ButtonsWrapper,null,this.values.token&&this.values.token.access_token?React.createElement(Button,{fullWidth:!0,onClick:function(){e.handleLogout()}},"Log out"):n?React.createElement(React.Fragment,null,React.createElement(Button,{fullWidth:!0,onClick:function(){e.handleCancel()}},"Cancel"),React.createElement(LinearProgress,null)):React.createElement(Button,{fullWidth:!0,disabled:!isEmptyObject(this.errors),onClick:function(){e.handleAuthorize(i)}},"Authorize")),n||r||!this.values.token||!this.values.token.access_token&&React.createElement(FormWrapper,null,React.createElement(FormControl,null,n?React.createElement(FormWarning,null,"Please, finish your authorization flow or cancel authorization."):r?React.createElement(React.Fragment,null,React.createElement(OriginalErrorMessage,null,React.createElement(FormError,null,r))):this.values.token&&this.values.token.access_token?null:React.createElement(FormWarning,null," No Access Token. Please, Authorize. "))))}}),Object.defineProperty(t,"contextType",{enumerable:!0,configurable:!0,writable:!0,value:OptionsContext}),t}(React.Component);export{OAuth2Flow};var templateObject_1,templateObject_2,templateObject_3,templateObject_4,OriginalErrorMessage=styled.div(templateObject_1||(templateObject_1=__makeTemplateObject(["\n font-family: var(--font-family-monospaced);\n margin-top: 10px;\n line-height: 1;\n padding-left: 10px;\n border-left: 1px solid gray;\n"],["\n font-family: var(--font-family-monospaced);\n margin-top: 10px;\n line-height: 1;\n padding-left: 10px;\n border-left: 1px solid gray;\n"]))),ButtonsWrapper=styled.div(templateObject_2||(templateObject_2=__makeTemplateObject(["\n margin-bottom: 15px;\n"],["\n margin-bottom: 15px;\n"]))),PkceOptionsWrapper=styled.div(templateObject_3||(templateObject_3=__makeTemplateObject(["\n padding: 8px 0 20px;\n"],["\n padding: 8px 0 20px;\n"]))),PkceDetails=styled.div(templateObject_4||(templateObject_4=__makeTemplateObject(["\n padding: 4px 0;\n"],["\n padding: 4px 0;\n"])));
1
+ import{__assign,__awaiter,__extends,__generator,__makeTemplateObject}from"tslib";import*as React from"react";import styled from"styled-components";import{Button}from"@redocly/theme";import{OptionsContext}from"../../redoc-lib";import{LinearProgress}from"../common/LinearProgress";import{FormControl,FormLabel,FormError,FormWrapper,FormWarning}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";function requiredValidator(e){if(!e)return"Field is required"}var OAuth2Flow=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return Object.defineProperty(t,"state",{enumerable:!0,configurable:!0,writable:!0,value:{error:null,loading:!1,showPkceOptions:!1}}),Object.defineProperty(t,"clearToken",{enumerable:!0,configurable:!0,writable:!0,value:function(){t.props.formApi.setValue("auth."+t.props.id+".token","")}}),Object.defineProperty(t,"togglePkceOptions",{enumerable:!0,configurable:!0,writable:!0,value:function(){t.setState((function(e){return{showPkceOptions:!e.showPkceOptions}}))}}),Object.defineProperty(t,"handleCodeVerifierChange",{enumerable:!0,configurable:!0,writable:!0,value:function(e){var r=e.target.value;return __awaiter(t,void 0,void 0,(function(){var e;return __generator(this,(function(t){switch(t.label){case 0:return[4,deriveCodeChallenge(r)];case 1:return e=t.sent(),this.setState({codeVerifier:r,validCodeChallenge:e}),[2]}}))}))}}),t}return __extends(t,e),Object.defineProperty(t.prototype,"values",{get:function(){var e,t;return(null===(t=null===(e=this.props.form.values)||void 0===e?void 0:e.auth)||void 0===t?void 0:t[this.props.id])||{}},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"errors",{get:function(){var e,t;return(null===(t=null===(e=this.props.form.errors)||void 0===e?void 0:e.auth)||void 0===t?void 0:t[this.props.id])||{}},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"pkceInputActionButtonProps",{get:function(){var e=this;if(void 0!==this.state.codeVerifier&&this.state.codeChallenge!==this.state.validCodeChallenge)return{label:"sync",onClick:function(){e.state.codeVerifier&&e.setState({codeChallenge:e.state.validCodeChallenge})}}},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"componentDidMount",{enumerable:!1,configurable:!0,writable:!0,value:function(){var e=this;if(this.props.usePkce){var t=randString(43);deriveCodeChallenge(t).then((function(r){e.setState({codeVerifier:t,codeChallenge:r,validCodeChallenge:r})}))}}}),Object.defineProperty(t.prototype,"handleAuthorize",{enumerable:!1,configurable:!0,writable:!0,value:function(e){var t=this;if(e){this.props.formApi.validate();var r=this.props,n=r.flow,o=r.usePkce,a=r.id,l=r.tokenUrl,i=r.authCorsProxyUrl,c=r.tokenEndpointAuthMethod;if(isEmptyObject(this.errors)){this.setState({loading:!0,error:null});var s=i?i+normalizeUrlProtocol(e):e,u=i&&l?i+normalizeUrlProtocol(l):l,d=this.props.formApi.getValue("auth."+a+".scopes"),p={authorizationUrl:s.startsWith("http")?s:this.props.server+s,clientId:this.values.client_id,scopes:d,redirectUri:this.context.oAuth2RedirectURI,routingBasePath:this.context.routingBasePath,successCallback:function(e){t.props.formApi.setValue("auth."+t.props.id+".token",e),t.setState({loading:!1,error:null})},errorCallback:function(e){t.setState({loading:!1,error:(null==e?void 0:e.message)||"Failed to retrieve the access token"})}};"implicit"===n&&OAuth2.authorizeImplicit(p),validateTokenEndpointMethod(c)?"authorizationCode"===n&&OAuth2.authorizeAuthorizationCode(__assign(__assign(__assign({},p),{tokenUrl:(null==u?void 0:u.startsWith("http"))?u:this.props.server+u,clientSecret:this.values.client_secret,extraHeaders:getOAuth2TokenEndpointAuthHeader({authMethod:c,clientId:this.values.client_id,clientSecret:this.values.client_secret})}),o&&{codeVerifier:this.state.codeVerifier,codeChallenge:this.state.codeChallenge})):console.log("Unsupported token endpoint auth method: "+c)}}}}),Object.defineProperty(t.prototype,"handleLogout",{enumerable:!1,configurable:!0,writable:!0,value:function(){this.clearToken(),this.setState({error:null})}}),Object.defineProperty(t.prototype,"handleCancel",{enumerable:!1,configurable:!0,writable:!0,value:function(){this.setState({loading:!1,error:null}),OAuth2.clearRedirectData(this.props.flow)}}),Object.defineProperty(t.prototype,"render",{enumerable:!1,configurable:!0,writable:!0,value:function(){var e=this,t=this.state,r=t.error,n=t.loading,o=this.props,a=o.id,l=o.scopes,i=o.authorizationUrl,c=o.flow,s=o.usePkce,u=o.defaultValues;if(!i)return React.createElement(FormError,null,"No flow info");var d=fromSessionStorage("auth."+a+".token")||JSON.stringify(null==u?void 0:u.token);d=d?JSON.parse(d):"";var p=getSecurityDetailsOptions(a,"client_id"),m={field:"auth."+a+".client_id",fullWidth:!0,initialValue:fromSessionStorage("auth."+a+".client_id")||this.props.clientId||(null==u?void 0:u.client_id),initValue:fromSessionStorage("auth."+a+".client_id")||this.props.clientId||(null==u?void 0:u.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: "),p?React.createElement(FormDropdown,__assign({},m,{options:p})):React.createElement(FormTextField,__assign({},m,{"data-cy":"client-id-input",panel:"try-it"}))),"authorizationCode"===c&&React.createElement(React.Fragment,null,(!(null==s?void 0:s.hideClientSecretInput)||!s)&&React.createElement(FormControl,null,React.createElement(FormLabel,null,"Client Secret:"),React.createElement(FormTextField,{type:"password",fullWidth:!0,field:"auth."+a+".client_secret",initialValue:fromSessionStorage("auth."+a+".client_secret")||(null==u?void 0:u.client_secret),validateOnBlur:!0,validateOnChange:!0,panel:"try-it","data-cy":"client-secret-input"})),s&&!s.disableManualConfiguration&&React.createElement(PkceOptionsWrapper,null,React.createElement(Checkbox,{id:"pkce-opitons-toggle",label:"Configure PKCE manually",checked:this.state.showPkceOptions,onChange:this.togglePkceOptions,"data-cy":"pkce-options-toggle"}),this.state.showPkceOptions&&React.createElement(PkceDetails,null,React.createElement(FormControl,null,React.createElement(FormLabel,null,"Code Verifier"),React.createElement(TextField,{fullWidth:!0,value:this.state.codeVerifier,onChange:this.handleCodeVerifierChange,panel:"try-it","data-cy":"code-verifier-input"})),React.createElement(FormControl,null,React.createElement(FormLabel,null,"Code Challenge"),React.createElement(TextField,{fullWidth:!0,value:this.state.codeChallenge,onChange:function(t){var r=t.target.value;e.setState({codeChallenge:r})},inputActionButton:this.pkceInputActionButtonProps,panel:"try-it","data-cy":"code-challenge-input"}))))),React.createElement(FormTextField,{fullWidth:!0,field:"auth."+a+".token",type:"hidden",initialValue:d,panel:"try-it"}),React.createElement(Scope,{id:a,scopes:l}),this.values.token&&this.values.token.access_token?React.createElement(FormControl,null,React.createElement(FormLabel,null," Access Token: "),React.createElement(TextField,{disabled:!0,type:"password",fullWidth:!0,value:this.values.token.access_token,panel:"try-it"})):null),React.createElement(ButtonsWrapper,null,this.values.token&&this.values.token.access_token?React.createElement(Button,{fullWidth:!0,onClick:function(){e.handleLogout()}},"Log out"):n?React.createElement(React.Fragment,null,React.createElement(Button,{fullWidth:!0,onClick:function(){e.handleCancel()}},"Cancel"),React.createElement(LinearProgress,null)):React.createElement(Button,{fullWidth:!0,disabled:!isEmptyObject(this.errors),onClick:function(){e.handleAuthorize(i)}},"Authorize")),n||r||!this.values.token||!this.values.token.access_token&&React.createElement(FormWrapper,null,React.createElement(FormControl,null,n?React.createElement(FormWarning,null,"Please, finish your authorization flow or cancel authorization."):r?React.createElement(React.Fragment,null,React.createElement(OriginalErrorMessage,null,React.createElement(FormError,null,r))):this.values.token&&this.values.token.access_token?null:React.createElement(FormWarning,null," No Access Token. Please, Authorize. "))))}}),Object.defineProperty(t,"contextType",{enumerable:!0,configurable:!0,writable:!0,value:OptionsContext}),t}(React.Component);export{OAuth2Flow};var templateObject_1,templateObject_2,templateObject_3,templateObject_4,OriginalErrorMessage=styled.div(templateObject_1||(templateObject_1=__makeTemplateObject(["\n font-family: var(--font-family-monospaced);\n margin-top: 10px;\n line-height: 1;\n padding-left: 10px;\n border-left: 1px solid gray;\n"],["\n font-family: var(--font-family-monospaced);\n margin-top: 10px;\n line-height: 1;\n padding-left: 10px;\n border-left: 1px solid gray;\n"]))),ButtonsWrapper=styled.div(templateObject_2||(templateObject_2=__makeTemplateObject(["\n margin-bottom: 15px;\n"],["\n margin-bottom: 15px;\n"]))),PkceOptionsWrapper=styled.div(templateObject_3||(templateObject_3=__makeTemplateObject(["\n padding: 8px 0 20px;\n"],["\n padding: 8px 0 20px;\n"]))),PkceDetails=styled.div(templateObject_4||(templateObject_4=__makeTemplateObject(["\n padding: 4px 0;\n"],["\n padding: 4px 0;\n"])));
2
2
  //# sourceMappingURL=OAuth2Flow.js.map
@@ -1,8 +1,9 @@
1
1
  import * as React from 'react';
2
- import type { SecurityDetails } from '../../utils';
2
+ import type { SecurityDetails } from '../../types';
3
3
  export interface OAuth2TokenInputProps {
4
4
  flow: {
5
5
  refreshUrl?: string;
6
+ 'x-tokenEndpointAuthMethod'?: 'none' | 'client_secret_basic' | string;
6
7
  scopes: Record<string, string>;
7
8
  tokenUrl: string;
8
9
  };
@@ -1,2 +1,2 @@
1
- import{__assign,__awaiter,__extends,__generator}from"tslib";import*as React from"react";import{Button}from"@redocly/theme";import{FormControl,FormLabel,FormError,FormWrapper,FormHeader,TokenField,TokenValue,TokenClear,TokenShowHide}from"../common/form";import{fromSessionStorage,getSecurityDetailsOptions,toSessionStorage}from"../../utils";import Scope from"./Scope";import{OAuth2}from"../../services/OAuth2";import{FormDropdown,FormTextField}from"../common/TextField";import{normalizeUrlProtocol}from"./utils";function validateToken(e){if(!e)return"Token is required"}var OAuth2TokenInput=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return Object.defineProperty(t,"state",{enumerable:!0,configurable:!0,writable:!0,value:{error:"",loading:!1,tokenMasked:!0}}),Object.defineProperty(t,"clearToken",{enumerable:!0,configurable:!0,writable:!0,value:function(){t.props.formApi.setValue("auth."+t.props.id+".token",""),toSessionStorage("auth."+t.props.id+".token","")}}),Object.defineProperty(t,"toggleTokenMask",{enumerable:!0,configurable:!0,writable:!0,value:function(){t.setState({tokenMasked:!t.state.tokenMasked})}}),Object.defineProperty(t,"requestToken",{enumerable:!0,configurable:!0,writable:!0,value:function(){return __awaiter(t,void 0,void 0,(function(){var e,t,o,r,n,i,l,a=this;return __generator(this,(function(s){switch(s.label){case 0:return this.state.loading?[2]:(e=this.props,t=e.server,o=e.flow,r=e.authCorsProxyUrl,n=r&&o.tokenUrl?r+normalizeUrlProtocol(o.tokenUrl):o.tokenUrl,this.errors.client_id||this.errors.client_secret?(console.log("Provide client_id and client_secret"),[2]):(i=this.values.client_id,l=this.values.client_secret,i&&l?(this.setState({loading:!0}),[4,OAuth2.authorizeClientCredentials({tokenUrl:n.startsWith("http")?n:t+n,clientId:i,clientSecret:l,scopes:this.values.scopes,successCallback:function(e){a.props.formApi.setValue("auth."+a.props.id+".token",e),a.setState({loading:!1})},errorCallback:function(e){a.clearToken(),a.setState({error:e.message,loading:!1})}})]):(console.log("Provide client_id and client_secret"),[2])));case 1:return s.sent(),[2]}}))}))}}),t}return __extends(t,e),Object.defineProperty(t.prototype,"values",{get:function(){var e,t,o;return(null===(o=null===(t=null===(e=this.props.form)||void 0===e?void 0:e.values)||void 0===t?void 0:t.auth)||void 0===o?void 0:o[this.props.id])||{}},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"errors",{get:function(){var e,t;return(null===(t=null===(e=this.props.form.errors)||void 0===e?void 0:e.auth)||void 0===t?void 0:t[this.props.id])||{}},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"render",{enumerable:!1,configurable:!0,writable:!0,value:function(){var e=this.state,t=e.loading,o=e.error,r=e.tokenMasked,n=this.props,i=n.id,l=n.defaultValues,a=Object.keys(this.props.flow.scopes),s=fromSessionStorage("auth."+i+".token")||JSON.stringify(null==l?void 0:l.token);s=s?JSON.parse(s):"";var c=getSecurityDetailsOptions(i,"client_id"),u={field:"auth."+i+".client_id",fullWidth:!0,initialValue:fromSessionStorage("auth."+i+".client_id")||this.props.clientId||(null==l?void 0:l.client_id),initValue:fromSessionStorage("auth."+i+".client_id")||this.props.clientId||(null==l?void 0:l.client_id),placeholder:"Your OAuth2 app Client ID"};return React.createElement(React.Fragment,null,React.createElement(FormWrapper,null,React.createElement(FormControl,null,React.createElement(FormLabel,null,"Client ID:"),c?React.createElement(FormDropdown,__assign({},u,{options:c})):React.createElement(FormTextField,__assign({},u,{type:"password",panel:"try-it"}))),React.createElement(FormControl,null,React.createElement(FormLabel,null,"Client Secret:"),React.createElement(FormTextField,{type:"password",fullWidth:!0,field:"auth."+i+".client_secret",initialValue:fromSessionStorage("auth."+i+".client_secret")||(null==l?void 0:l.client_secret),panel:"try-it"})),React.createElement(FormTextField,{fullWidth:!0,field:"auth."+i+".token",type:"hidden",initialValue:s,validate:validateToken}),React.createElement(Scope,{id:i,scopes:a})),React.createElement(Button,{color:"primary",onClick:this.requestToken,blinking:t},t?"Loading...":"Request Token"),React.createElement(FormHeader,null," Access Token "),o?React.createElement(FormError,{style:{marginBottom:"1em"}},"Failed to request token: ",React.createElement("pre",null,o)," "):this.values.token&&this.values.token.access_token?React.createElement(TokenField,null,React.createElement(TokenValue,{length:this.values.token.access_token.length,masked:r},this.values.token.access_token),React.createElement(TokenShowHide,{onClick:this.toggleTokenMask},r?"Show":"Hide"," "),React.createElement(TokenClear,{onClick:this.clearToken}," Clear ")):React.createElement(FormError,{style:{marginBottom:"1em"}},"No token"))}}),t}(React.Component);export{OAuth2TokenInput};export default OAuth2TokenInput;
1
+ import{__assign,__awaiter,__extends,__generator}from"tslib";import*as React from"react";import{Button}from"@redocly/theme";import{FormControl,FormLabel,FormError,FormWrapper,FormHeader,TokenField,TokenValue,TokenClear,TokenShowHide}from"../common/form";import{fromSessionStorage,getSecurityDetailsOptions,toSessionStorage}from"../../utils";import{OAuth2}from"../../services/OAuth2";import{FormDropdown,FormTextField}from"../common/TextField";import Scope from"./Scope";import{getOAuth2TokenEndpointAuthHeader,normalizeUrlProtocol,validateTokenEndpointMethod}from"./utils";function validateToken(e){if(!e)return"Token is required"}var OAuth2TokenInput=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return Object.defineProperty(t,"state",{enumerable:!0,configurable:!0,writable:!0,value:{error:"",loading:!1,tokenMasked:!0}}),Object.defineProperty(t,"clearToken",{enumerable:!0,configurable:!0,writable:!0,value:function(){t.props.formApi.setValue("auth."+t.props.id+".token",""),toSessionStorage("auth."+t.props.id+".token","")}}),Object.defineProperty(t,"toggleTokenMask",{enumerable:!0,configurable:!0,writable:!0,value:function(){t.setState({tokenMasked:!t.state.tokenMasked})}}),Object.defineProperty(t,"requestToken",{enumerable:!0,configurable:!0,writable:!0,value:function(){return __awaiter(t,void 0,void 0,(function(){var e,t,o,r,n,i,l,a,s=this;return __generator(this,(function(c){switch(c.label){case 0:return this.state.loading?[2]:(e=this.props,t=e.server,o=e.flow,r=e.authCorsProxyUrl,n=r&&o.tokenUrl?r+normalizeUrlProtocol(o.tokenUrl):o.tokenUrl,this.errors.client_id||this.errors.client_secret?(console.log("Provide client_id and client_secret"),[2]):(i=this.values.client_id,l=this.values.client_secret,i&&l?(this.setState({loading:!0}),a=o["x-tokenEndpointAuthMethod"],validateTokenEndpointMethod(a)?[4,OAuth2.authorizeClientCredentials({tokenUrl:n.startsWith("http")?n:t+n,clientId:i,clientSecret:l,scopes:this.values.scopes,extraHeaders:getOAuth2TokenEndpointAuthHeader({authMethod:a,clientId:i,clientSecret:l}),successCallback:function(e){s.props.formApi.setValue("auth."+s.props.id+".token",e),s.setState({loading:!1})},errorCallback:function(e){s.clearToken(),s.setState({error:e.message,loading:!1})}})]:(console.log("Unsupported token endpoint auth method: "+a),[2])):(console.log("Provide client_id and client_secret"),[2])));case 1:return c.sent(),[2]}}))}))}}),t}return __extends(t,e),Object.defineProperty(t.prototype,"values",{get:function(){var e,t,o;return(null===(o=null===(t=null===(e=this.props.form)||void 0===e?void 0:e.values)||void 0===t?void 0:t.auth)||void 0===o?void 0:o[this.props.id])||{}},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"errors",{get:function(){var e,t;return(null===(t=null===(e=this.props.form.errors)||void 0===e?void 0:e.auth)||void 0===t?void 0:t[this.props.id])||{}},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"render",{enumerable:!1,configurable:!0,writable:!0,value:function(){var e=this.state,t=e.loading,o=e.error,r=e.tokenMasked,n=this.props,i=n.id,l=n.defaultValues,a=Object.keys(this.props.flow.scopes),s=fromSessionStorage("auth."+i+".token")||JSON.stringify(null==l?void 0:l.token);s=s?JSON.parse(s):"";var c=getSecurityDetailsOptions(i,"client_id"),u={field:"auth."+i+".client_id",fullWidth:!0,initialValue:fromSessionStorage("auth."+i+".client_id")||this.props.clientId||(null==l?void 0:l.client_id),initValue:fromSessionStorage("auth."+i+".client_id")||this.props.clientId||(null==l?void 0:l.client_id),placeholder:"Your OAuth2 app Client ID"};return React.createElement(React.Fragment,null,React.createElement(FormWrapper,null,React.createElement(FormControl,null,React.createElement(FormLabel,null,"Client ID:"),c?React.createElement(FormDropdown,__assign({},u,{options:c})):React.createElement(FormTextField,__assign({},u,{type:"password",panel:"try-it"}))),React.createElement(FormControl,null,React.createElement(FormLabel,null,"Client Secret:"),React.createElement(FormTextField,{type:"password",fullWidth:!0,field:"auth."+i+".client_secret",initialValue:fromSessionStorage("auth."+i+".client_secret")||(null==l?void 0:l.client_secret),panel:"try-it"})),React.createElement(FormTextField,{fullWidth:!0,field:"auth."+i+".token",type:"hidden",initialValue:s,validate:validateToken}),React.createElement(Scope,{id:i,scopes:a})),React.createElement(Button,{color:"primary",onClick:this.requestToken,blinking:t},t?"Loading...":"Request Token"),React.createElement(FormHeader,null," Access Token "),o?React.createElement(FormError,{style:{marginBottom:"1em"}},"Failed to request token: ",React.createElement("pre",null,o)," "):this.values.token&&this.values.token.access_token?React.createElement(TokenField,null,React.createElement(TokenValue,{length:this.values.token.access_token.length,masked:r},this.values.token.access_token),React.createElement(TokenShowHide,{onClick:this.toggleTokenMask},r?"Show":"Hide"," "),React.createElement(TokenClear,{onClick:this.clearToken}," Clear ")):React.createElement(FormError,{style:{marginBottom:"1em"}},"No token"))}}),t}(React.Component);export{OAuth2TokenInput};export default OAuth2TokenInput;
2
2
  //# sourceMappingURL=OAuth2TokenInput.js.map
@@ -1,7 +1,7 @@
1
1
  /// <reference types="react" />
2
2
  import type { FormApi, FormState } from 'informed';
3
3
  import type { SecurityScheme } from '../../redoc-lib';
4
- import type { SecurityDetails } from '../../utils';
4
+ import type { SecurityDetails } from '../../types';
5
5
  export interface OpenIDConnectProps {
6
6
  server: string;
7
7
  authCorsProxyUrl: Maybe<string>;
@@ -13,3 +13,6 @@ export interface OpenIDConnectProps {
13
13
  defaultValues?: SecurityDetails;
14
14
  }
15
15
  export declare function OpenIDConnect(props: OpenIDConnectProps): JSX.Element;
16
+ export declare function Error({ message }: {
17
+ message: string;
18
+ }): JSX.Element;
@@ -1,2 +1,2 @@
1
- import{__awaiter,__generator,__makeTemplateObject}from"tslib";import*as React from"react";import styled from"styled-components";import{discoverOpenIDConnect}from"../../services/OpenIDConnect";import{OAuth2Flow}from"./OAuth2Flow";import{LinearProgress}from"../common/LinearProgress";import{FormError}from"../common/form";export function OpenIDConnect(e){var t,r=this,n=e.scheme,o=e.defaultValues,a=React.useState({}),l=a[0],c=a[1],i=React.useState(),m=i[0],s=i[1],u=React.useState(!1),p=u[0],d=u[1];React.useEffect((function(){f(n.openIdConnectUrl)}),[n.openIdConnectUrl]);var f=function(e){return __awaiter(r,void 0,void 0,(function(){var t,r;return __generator(this,(function(n){switch(n.label){case 0:d(!0),s(""),n.label=1;case 1:return n.trys.push([1,3,,4]),[4,discoverOpenIDConnect(e)];case 2:return t=n.sent(),c(t),[3,4];case 3:return r=n.sent(),s(r.message),[3,4];case 4:return d(!1),[2]}}))}))};return React.createElement("div",null,p?React.createElement("div",null,React.createElement("div",null,"Fetching OpenID Connect metadata..."),React.createElement(LinearProgress,null)):React.createElement("div",null,m?React.createElement(FormError,null,m):(null===(t=null==l?void 0:l.response_types_supported)||void 0===t?void 0:t.includes("token"))?React.createElement(React.Fragment,null,React.createElement(FlowName,null,"OAuth2 Implicit Flow"),React.createElement(OAuth2Flow,{key:e.id,authorizationUrl:l.authorization_endpoint,authCorsProxyUrl:e.authCorsProxyUrl,scopes:l.scopes_supported,server:e.server,id:e.id,form:e.form,formApi:e.formApi,clientId:e.clientId,flow:"implicit",defaultValues:o})):React.createElement("div",null,"Unsupported flow")))}var templateObject_1,FlowName=styled.div(templateObject_1||(templateObject_1=__makeTemplateObject(["\n margin-top: 5px;\n margin-bottom: 10px;\n"],["\n margin-top: 5px;\n margin-bottom: 10px;\n"])));
1
+ import{__awaiter,__generator}from"tslib";import React,{useState,useEffect}from"react";import{discoverOpenIDConnect}from"../../services/OpenIDConnect";import{LinearProgress}from"../common/LinearProgress";import{FormError}from"../common/form";import{OAuth2Flow}from"./OAuth2Flow";import{FlowName}from"./styled";export function OpenIDConnect(e){var t,r,o=this,n=e.scheme,a=e.defaultValues,l=useState({}),i=l[0],c=l[1],u=useState(),s=u[0],m=u[1],d=useState(!1),p=d[0],f=d[1];useEffect((function(){v(n.openIdConnectUrl)}),[n.openIdConnectUrl]);var v=function(e){return __awaiter(o,void 0,void 0,(function(){var t,r;return __generator(this,(function(o){switch(o.label){case 0:f(!0),m(""),o.label=1;case 1:return o.trys.push([1,3,,4]),[4,discoverOpenIDConnect(e)];case 2:return t=o.sent(),c(t),[3,4];case 3:return r=o.sent(),m(r.message),[3,4];case 4:return f(!1),[2]}}))}))};return p?React.createElement(Loading,null):s?React.createElement(Error,{message:s}):React.createElement("div",null,React.createElement("div",null,(null===(t=null==i?void 0:i.response_types_supported)||void 0===t?void 0:t.includes("token"))?React.createElement(React.Fragment,null,React.createElement(FlowName,null,"OAuth2 Implicit Flow"),React.createElement(OAuth2Flow,{key:e.id,authorizationUrl:i.authorization_endpoint,authCorsProxyUrl:e.authCorsProxyUrl,scopes:i.scopes_supported,server:e.server,id:e.id,form:e.form,formApi:e.formApi,clientId:e.clientId,flow:"implicit",defaultValues:a})):(null===(r=null==i?void 0:i.response_types_supported)||void 0===r?void 0:r.includes("code"))?React.createElement(React.Fragment,null,React.createElement(FlowName,null,"OAuth2 Authorization Flow"),React.createElement(OAuth2Flow,{key:e.id,authorizationUrl:i.authorization_endpoint,tokenUrl:i.token_endpoint,authCorsProxyUrl:e.authCorsProxyUrl,scopes:i.scopes_supported,server:e.server,id:e.id,form:e.form,formApi:e.formApi,clientId:e.clientId,tokenEndpointAuthMethod:null==i?void 0:i.token_endpoint_auth_methods_supported,flow:"authorizationCode",defaultValues:a})):React.createElement("div",null,"Unsupported flow")))}function Loading(){return React.createElement("div",null,React.createElement("div",null,React.createElement("div",null,"Fetching OpenID Connect metadata..."),React.createElement(LinearProgress,null)))}export function Error(e){var t=e.message;return React.createElement("div",null,React.createElement("div",null,React.createElement(FormError,null,t)))}
2
2
  //# sourceMappingURL=OpenIDConnect.js.map
@@ -0,0 +1,10 @@
1
+ /// <reference types="react" />
2
+ import type { FieldModel } from '../../redoc-lib';
3
+ interface ParameterArrayProps {
4
+ name: string;
5
+ param: FieldModel;
6
+ place: string;
7
+ renderParameter: any;
8
+ }
9
+ export declare const ParameterArray: ({ name, param, place, renderParameter, }: ParameterArrayProps) => JSX.Element;
10
+ export {};
@@ -0,0 +1,2 @@
1
+ import{__makeTemplateObject,__spreadArray}from"tslib";import*as React from"react";import styled from"styled-components";import{FormLabel}from"../common/form";export var ParameterArray=function(e){var n,t,r,a,o,l=e.name,i=e.param,c=e.place,m=e.renderParameter,s=React.useState([]),d=s[0],p=s[1],u=(null===(n=i.schema.items)||void 0===n?void 0:n.fields)?null===(t=i.schema.items)||void 0===t?void 0:t.fields:[{schema:(null===(r=i.schema.items)||void 0===r?void 0:r.schema)||i.schema.items,name:"",required:i.required,description:null===(a=i.schema.items)||void 0===a?void 0:a.description,externalDocs:null===(o=i.schema.items)||void 0===o?void 0:o.externalDocs,deprecated:!1,toggle:function(){return null},expanded:!1}];return React.createElement(React.Fragment,null,React.createElement(Row,null,React.createElement(FormLabel,{required:i.required},l,"(",d.length," items)"),React.createElement("span",{onClick:function(){p(__spreadArray(__spreadArray([],d,!0),[d.length?d[d.length-1]+1:0],!1))}},"Add item +")),null==d?void 0:d.map((function(e,n){return React.createElement(Row,{key:e},React.createElement(Delete,{onClick:function(){return n=e,void p(d.filter((function(e){return e!==n})));var n}},"delete"),u.map((function(t){return m(t,c,l+".["+e+"]","["+n+"]"+(t.name&&"."+t.name))})))})))};var templateObject_1,templateObject_2,Row=styled.div(templateObject_1||(templateObject_1=__makeTemplateObject(["\n display: flex;\n width: 100%;\n align-items: center;\n justify-content: space-between;\n flex-wrap: wrap;\n margin-bottom: 10px;\n label {\n padding-bottom: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n line-height: 1.5;\n }\n span {\n cursor: pointer;\n margin-left: auto;\n color: var(--color-content-secondary);\n &:hover {\n color: #fff;\n }\n }\n"],["\n display: flex;\n width: 100%;\n align-items: center;\n justify-content: space-between;\n flex-wrap: wrap;\n margin-bottom: 10px;\n label {\n padding-bottom: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n line-height: 1.5;\n }\n span {\n cursor: pointer;\n margin-left: auto;\n color: var(--color-content-secondary);\n &:hover {\n color: #fff;\n }\n }\n"]))),Delete=styled.span(templateObject_2||(templateObject_2=__makeTemplateObject(["\n background: transparent;\n border: none;\n cursor: pointer;\n position: relative;\n"],["\n background: transparent;\n border: none;\n cursor: pointer;\n position: relative;\n"])));
2
+ //# sourceMappingURL=ParameterArray.js.map
@@ -1,2 +1,2 @@
1
- import*as React from"react";import{asField}from"informed";import{useMount}from"../../hooks";import{TryItDropdown}from"./styled";var ParameterEnumDropdownComponent=function(e){var o=e.initValue,r=e.paramEnum,t=e.fieldApi,a=React.useState(o),n=a[0],u=a[1],m=r.map((function(e,o){return{idx:o,value:e}}));return useMount((function(){o&&t.setValue(o)})),React.createElement(TryItDropdown,{fullWidth:!0,variant:"dark",value:n,options:m,onChange:function(e){t.setValue(e.value),u(e.value)}})};export var ParameterEnumDropdown=asField(ParameterEnumDropdownComponent);
1
+ import*as React from"react";import{asField}from"informed";import{useMount}from"../../hooks";import{TryItDropdown}from"./styled";var ParameterEnumDropdownComponent=function(e){var r=e.initValue,a=e.paramEnum,t=e.fieldApi,n=React.useState(),o=n[0],u=n[1],i=a.map((function(e,r){return{idx:r,value:e}}));useMount((function(){if(r)if(Array.isArray(r)){var e=r.length?r[0]:"";u(e),t.setValue(e)}else u(r),t.setValue(r)}));return React.createElement(TryItDropdown,{clearable:!0,fullWidth:!0,variant:"dark",value:o,options:i,handleClear:function(){t.setValue(""),u("")},onChange:function(e){t.setValue(e.value),u(e.value)}})};export var ParameterEnumDropdown=asField(ParameterEnumDropdownComponent);
2
2
  //# sourceMappingURL=ParameterDropdown.js.map
@@ -0,0 +1,3 @@
1
+ import React from 'react';
2
+ import type { RequestBodyProps } from './types';
3
+ export declare const RequestBody: React.NamedExoticComponent<RequestBodyProps>;
@@ -0,0 +1,2 @@
1
+ import{__assign}from"tslib";import React,{memo,useCallback,useEffect}from"react";import{observer}from"mobx-react";import merge from"deepmerge";import{DropdownOrLabel,MediaTypesSwitch}from"../../../redoc-lib";import{ExampleSwitch,useExampleKey}from"../../Samples";import{arrayMergeStrategy}from"../../../services/utils";import{isRootFileUpload}from"../../common/FileUpload/helper";import{MediaTypes}from"../../../types";import{Dropdown}from"../../common/Dropdown";import{RequestBodyForm}from"../RequestBodyForm";import{RequestMimeLabel}from"../RequestMimeLabel";import CodemirrorInput from"../CodemirrorInput";import{encodeSample}from"../utils";import{fromSessionStorage,toSessionStorage}from"../../../utils";var RequestBodyComponent=observer((function(e){var o,r=e.body,t=e.formApi,a=e.resolvedBody,n=e.properties,i=e.id,m=e.validate,l=r.content,p=function(e){var o;if(!l||!l.hasSample)return"";var r=null===(o=l.active)||void 0===o?void 0:o.examples;if(!(null==r?void 0:r[e]))return"";var t=null==r?void 0:r[e].value,a=n?merge(t,n,{arrayMerge:arrayMergeStrategy}):t;return JSON.stringify(a,null,2)},s=null===(o=null==l?void 0:l.operation)||void 0===o?void 0:o.activeExampleName,d=function(e){var o;null===(o=null==l?void 0:l.operation)||void 0===o||o.activateExampleName(e),t.setValue("body",p(e))},u=function(e,o){(0,t.setValue)("body."+e,o)};useEffect((function(){!1!==s?t.setValue("body",fromSessionStorage(i+"_"+(s||""))||p(s||"")):t.setValue("body",JSON.stringify(n||{},null,2))}),[s]);var c=useCallback((function(e){return function(o){toSessionStorage(i+"_"+e,o)}}),[i]);return React.createElement(React.Fragment,null,React.createElement(MediaTypesSwitch,{content:r.content,renderDropdown:function(e){return React.createElement(DropdownOrLabel,__assign({},e,{variant:"dark",fullWidth:!0,Label:RequestMimeLabel,Dropdown:Dropdown}))}},(function(e){var o=e.examples||{},r=Object.keys(o),l=e.schema,p=isRootFileUpload(l||{},e.name)||e.name===MediaTypes.MULTIPART||e.name===MediaTypes.URL_ENCODED,s=useExampleKey(e.operation,o).exampleKey,f=fromSessionStorage(i+"_"+s)||encodeSample(o[s],n);return React.createElement(React.Fragment,null,r.length&&1!==r.length&&React.createElement(ExampleSwitch,{examples:o,onChange:d,exampleKey:s,panel:"try-it"})||null,p?React.createElement(RequestBodyForm,{mediaType:e,formApi:t,onChange:u}):React.createElement(CodemirrorInput,{id:"body"+i,field:"body",initialValue:f,schema:((null==a?void 0:a.content[e.name])||{}).schema,mode:e.name,validate:m,onChange:c(s)}))})))}));export var RequestBody=memo(RequestBodyComponent);
2
+ //# sourceMappingURL=RequestBody.js.map
@@ -0,0 +1,2 @@
1
+ export { RequestBody } from './RequestBody';
2
+ export * from './types';
@@ -0,0 +1,2 @@
1
+ export{RequestBody}from"./RequestBody";export*from"./types";
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,10 @@
1
+ import type { FormApi } from 'informed';
2
+ import type { RequestBodyModel, OpenAPIRequestBody } from '../../../redoc-lib';
3
+ export interface RequestBodyProps {
4
+ body: RequestBodyModel;
5
+ resolvedBody: OpenAPIRequestBody;
6
+ validate: () => string | undefined;
7
+ formApi: FormApi;
8
+ id: string;
9
+ properties: any;
10
+ }
@@ -0,0 +1,2 @@
1
+ export{};
2
+ //# sourceMappingURL=types.js.map
@@ -1,9 +1,10 @@
1
- import React from 'react';
1
+ /// <reference types="react" />
2
2
  import type { FormApi } from 'informed';
3
3
  import type { FieldModel, MediaTypeModel } from '../../redoc-lib';
4
+ import type { UploadFileType } from '../../models';
4
5
  export declare const RequestBodyForm: (props: {
5
6
  mediaType: MediaTypeModel;
6
- onChange: React.ChangeEventHandler<HTMLInputElement>;
7
+ onChange(key: string, file: UploadFileType): void;
7
8
  formApi?: FormApi<import("informed").FormValues> | undefined;
8
9
  }) => JSX.Element | null;
9
10
  export declare function getRequestBodyFormFields(mediaType: MediaTypeModel): FieldModel[];
@@ -1,2 +1,2 @@
1
- import{__makeTemplateObject}from"tslib";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,MediaTypes}from"../../models";import{useExampleKey}from"../Samples";export var RequestBodyForm=observer((function(e){var t,o=e.mediaType,l=e.onChange,n=e.formApi,a=o.examples||{},m=useExampleKey(o.operation,a).exampleKey,r=null===(t=a[m])||void 0===t?void 0:t.rawValue,i=getRequestBodyFormFields(o);useEffect((function(){return n&&i.forEach((function(e){var t,o,l=null==r?void 0:r[e.name],a=null!==(o=null!==(t=e.example)&&void 0!==t?t:null==l?void 0:l.example)&&void 0!==o?o:l;void 0!==a&&n.setValue("body."+e.name,""+a)}))}),[m]);var p=o.schema||{};return isRootFileUpload(p,o.name)?React.createElement(FileFormControlWrapper,null,React.createElement(FormControl,null,React.createElement(StyledFileUpload,{fullWidth:!0,id:"body."+o.name,name:"body."+o.name,accept:mimeTypeToAccept(o.name),schema:p,contentName:o.name,onChange:l}))):p.type===DefinitionTypes.OBJECT||i?React.createElement(FileFormControlWrapper,null,i.map((function(e){var t=e.schema||{},n=o.name===MediaTypes.MULTIPART&&isMultipartFileUploadProperty(t),a=t.contentMediaType||"",m=n?React.createElement(StyledFileUpload,{fullWidth:!0,id:"body."+e.name,name:"body."+e.name,accept:mimeTypeToAccept(a),multiple:"array"===t.type,schema:t,contentName:e.name,onChange:l}):React.createElement(FormTextField,{fullWidth:!0,id:"body."+e.name,field:"body."+e.name,placeholder:t.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: "'+o.name+'"',p),null)}));export function getRequestBodyFormFields(e){var t,o,l,n,a;return((null===(o=null===(t=e.schema)||void 0===t?void 0:t.oneOf)||void 0===o?void 0:o.length)?(null===(l=e.schema)||void 0===l?void 0:l.oneOf[null===(n=e.schema)||void 0===n?void 0:n.activeOneOf].fields)||[]:(null===(a=e.schema)||void 0===a?void 0:a.fields)||[]).filter((function(e){return!e.schema.readOnly}))}var templateObject_1,templateObject_2,FileFormControlWrapper=styled.div(templateObject_1||(templateObject_1=__makeTemplateObject(["\n > div {\n margin-top: 10px;\n }\n"],["\n > div {\n margin-top: 10px;\n }\n"]))),StyledFileUpload=styled(FileUpload)(templateObject_2||(templateObject_2=__makeTemplateObject(["\n ",";\n ",";\n ","\n"],["\n ",";\n ",";\n ","\n"])),getInvertedInputStyles("try-it"),(function(e){return"password"===e.inputType?"padding-right: 40px;":""}),(function(e){return e.fullWidth?"width: 100%;":""}));
1
+ import{__makeTemplateObject}from"tslib";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"../../types";import{useExampleKey}from"../Samples";export var RequestBodyForm=observer((function(e){var t,o=e.mediaType,n=e.onChange,l=e.formApi,a=o.examples||{},m=useExampleKey(o.operation,a).exampleKey,r=null===(t=a[m])||void 0===t?void 0:t.rawValue,i=getRequestBodyFormFields(o);useEffect((function(){return l&&i.forEach((function(e){var t,o,n=null==r?void 0:r[e.name],a=null!==(o=null!==(t=e.example)&&void 0!==t?t:null==n?void 0:n.example)&&void 0!==o?o:n,m="object"==typeof a?JSON.stringify(a):a;void 0!==a&&l.setValue("body."+e.name,""+m)}))}),[m]);var p=o.schema||{};return isRootFileUpload(p,o.name)?React.createElement(FileFormControlWrapper,null,React.createElement(FormControl,null,React.createElement(StyledFileUpload,{fullWidth:!0,id:"body."+o.name,name:"body."+o.name,accept:mimeTypeToAccept(o.name),schema:p,contentName:o.name,onChange:n}))):p.type===DefinitionTypes.OBJECT||i?React.createElement(FileFormControlWrapper,null,i.map((function(e){var t=e.schema||{},l=o.name===MediaTypes.MULTIPART&&isMultipartFileUploadProperty(t),a=t.contentMediaType||"",m=l?React.createElement(StyledFileUpload,{fullWidth:!0,id:"body."+e.name,name:"body."+e.name,accept:mimeTypeToAccept(a),multiple:"array"===t.type,schema:t,contentName:e.name,onChange:n}):React.createElement(FormTextField,{fullWidth:!0,id:"body."+e.name,field:"body."+e.name,placeholder:t.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: "'+o.name+'"',p),null)}));export function getRequestBodyFormFields(e){var t,o,n,l,a;return((null===(o=null===(t=e.schema)||void 0===t?void 0:t.oneOf)||void 0===o?void 0:o.length)?(null===(n=e.schema)||void 0===n?void 0:n.oneOf[null===(l=e.schema)||void 0===l?void 0:l.activeOneOf].fields)||[]:(null===(a=e.schema)||void 0===a?void 0:a.fields)||[]).filter((function(e){return!e.schema.readOnly}))}var templateObject_1,templateObject_2,FileFormControlWrapper=styled.div(templateObject_1||(templateObject_1=__makeTemplateObject(["\n > div {\n margin-top: 10px;\n }\n"],["\n > div {\n margin-top: 10px;\n }\n"]))),StyledFileUpload=styled(FileUpload)(templateObject_2||(templateObject_2=__makeTemplateObject(["\n ",";\n ",";\n ","\n"],["\n ",";\n ",";\n ","\n"])),getInvertedInputStyles("try-it"),(function(e){return"password"===e.inputType?"padding-right: 40px;":""}),(function(e){return e.fullWidth?"width: 100%;":""}));
2
2
  //# sourceMappingURL=RequestBodyForm.js.map
@@ -0,0 +1,3 @@
1
+ /// <reference types="react" />
2
+ import type { ServersDropdownProps } from './types';
3
+ export declare const ServersDropdown: ({ operation, onChange }: ServersDropdownProps) => JSX.Element;
@@ -0,0 +1,2 @@
1
+ import{__assign,__makeTemplateObject}from"tslib";import React,{useState}from"react";import{observer}from"mobx-react";import styled from"styled-components";import{fromSessionStorage,toSessionStorage}from"../../../utils";import{FormControl,FormLabel}from"../../common/form";import{expandDefaultServerVariables,expandVariables,getServerWithVariables,getDefaultOrStoredVariables,updateVariablesStorage}from"../utils";import ServerVariable from"../ServerVariable";import{useMount}from"../../../hooks";import{TryItDropdown}from"../styled";export var ServersDropdown=observer((function(e){var r=e.operation,t=e.onChange,a=fromSessionStorage("serverUrl"),o=r.servers.findIndex((function(e){return e.url===a})),n=useState(o<0?0:o),s=n[0],l=n[1],i=useState({}),m=i[0],u=i[1];useMount((function(){var e=getServerWithVariables(r.servers,s);t(e),u(e.variables)}));var v=r.servers.map((function(e,r){return{idx:r,serverUrl:e.url,value:"\n "+expandDefaultServerVariables(expandVariables(e.url,m),e.variables)+"\n - "+(e.description||"Default")+"\n "}})),p=Object.keys(m);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:v[s].value,options:v,fullWidth:!0,onChange:function(e){var a=r.servers.find((function(r){return r.url===e.serverUrl})),o=r.servers.findIndex((function(r){return r.url===e.serverUrl})),n=getDefaultOrStoredVariables(a);t({url:e.serverUrl||"",variables:n}),toSessionStorage("serverUrl",e.serverUrl||""),l(o),u(n)}})),null==p?void 0:p.map((function(e){var a,o=null===(a=r.servers[s].variables)||void 0===a?void 0:a[e];if(o)return React.createElement(ServerVariable,{key:e,name:e,value:m[e],defaultValue:o.default,onChange:function(a){return function(e,a){var o,n=r.servers[s],l=a||""===a?a:getDefaultOrStoredVariables(n)[e],i=__assign(__assign({},m),((o={})[e]=l,o));u(i),updateVariablesStorage(e,l),t(__assign(__assign({},n),{variables:i}))}(e,a)},variableEnum:o.enum,description:o.description})})))}));var templateObject_1,ServerDropdownWrap=styled.div(templateObject_1||(templateObject_1=__makeTemplateObject(["\n margin-bottom: 20px;\n"],["\n margin-bottom: 20px;\n"])));
2
+ //# sourceMappingURL=ServersDropdown.js.map
@@ -0,0 +1 @@
1
+ export { ServersDropdown } from './ServersDropdown';
@@ -0,0 +1,2 @@
1
+ export{ServersDropdown}from"./ServersDropdown";
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,5 @@
1
+ import type { OperationModel, Server } from '../../../redoc-lib';
2
+ export interface ServersDropdownProps {
3
+ operation: OperationModel;
4
+ onChange: (server: Server) => void;
5
+ }
@@ -0,0 +1,2 @@
1
+ export{};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1,7 @@
1
+ import React from 'react';
2
+ import type { PanelComponentProps } from '../Panel';
3
+ export declare function TryItPanel({ header, error, success, ...rest }: React.PropsWithChildren<{
4
+ header: string;
5
+ error?: boolean;
6
+ success?: boolean;
7
+ } & PanelComponentProps>): JSX.Element;
@@ -0,0 +1,2 @@
1
+ import{__assign,__makeTemplateObject,__rest}from"tslib";import React from"react";import styled from"styled-components";import{Header,Panel,Title,Trigger}from"../Panel";import{CrossIcon,LockIcon,ShelfIcon}from"../../redoc-lib";import{PanelBody}from"../Panel/PanelBody";export function TryItPanel(e){var n=e.header,r=e.error,t=e.success,o=__rest(e,["header","error","success"]);return React.createElement(StyledTryItPanel,__assign({},o,{header:function(e){var l=e.toggle,a=e.expanded;return React.createElement(Header,{onClick:l,isExpanded:a,"data-cy":o["data-cy"]},React.createElement(Trigger,null,React.createElement(Title,null,n),React.createElement(ShelfIcon,{direction:a?"down":"right"})),r&&React.createElement(CrossIcon,{size:"14px",color:"--color-error-500"})||null,t&&React.createElement(LockIcon,{size:"14px",color:"--color-success-500"})||null)}}))}var templateObject_1,StyledTryItPanel=styled(Panel)(templateObject_1||(templateObject_1=__makeTemplateObject(["\n "," {\n color: white;\n border: 1px solid ",";\n padding: 10px;\n }\n\n "," path {\n fill: white;\n }\n\n "," {\n padding: 15px 10px;\n background-color: #3e4c59;\n border: 1px solid ",";\n border-top: 0;\n }\n"],["\n "," {\n color: white;\n border: 1px solid ",";\n padding: 10px;\n }\n\n "," path {\n fill: white;\n }\n\n "," {\n padding: 15px 10px;\n background-color: #3e4c59;\n border: 1px solid ",";\n border-top: 0;\n }\n"])),Header,(function(e){return e.error?"#ff908b":"#89949f"}),ShelfIcon,PanelBody,(function(e){return e.error?"#ff908b":"#89949f"}));
2
+ //# sourceMappingURL=TryItPanel.js.map
@@ -1,2 +1,2 @@
1
- import{__awaiter,__generator}from"tslib";import*as CodeMirror from"codemirror";import{TextDocument}from"@redocly/vscode-json-languageservice";import{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";var serv=getLanguageService({});CodeMirror.registerHelper("lint","json",(function(r,e){return __awaiter(this,void 0,void 0,(function(){var t,o,i,n,a;return __generator(this,(function(s){switch(s.label){case 0:return t=e.schema,o=e.setError,serv.configure({validate:!0,schemas:[{uri:"stub://"+e.id,fileMatch:["*"],schema:t}]}),i=TextDocument.create(e.id+".json","json",0,r),n=serv.parseJSONDocument(i),[4,serv.doValidation(i,n)];case 1:return(a=s.sent()).length?o&&o(a[0].message):o&&o(void 0),[2,a.map((function(r){return{from:CodeMirror.Pos(r.range.start.line,r.range.start.character),to:CodeMirror.Pos(r.range.end.line,r.range.end.character),message:r.message}}))]}}))}))})),CodeMirror.registerHelper("hint","json",(function(r,e){return __awaiter(void 0,void 0,void 0,(function(){var t,o,i,n,a,s,c,d;return __generator(this,(function(m){switch(m.label){case 0:return(t=e.schema)?(serv.configure({validate:!0,schemas:[{uri:"stub://"+e.id,fileMatch:["*"],schema:t}]}),o=r.getDoc().getCursor(),i=r.getTokenAt(o),n=TextDocument.create(e.id+".json","json",0,r.getValue()),a=serv.parseJSONDocument(n),[4,serv.doComplete(n,{line:o.line,character:o.ch},a)]):[2];case 1:return s=m.sent(),c=function(r){for(var e="";r--;)e+=" ";return e},d=s?s.items.map((function(r){return{text:r.insertText,displayText:r.label,filter:r.filterText||r.label,from:{line:r.textEdit.range.start.line,ch:r.textEdit.range.start.character},to:{line:r.textEdit.range.end.line,ch:r.textEdit.range.end.character},hint:function(r,e,t){var o="_$__REDOC_CURSOR_HERE",i=t.text.replace(/(\$1|\${1:[^}]+})/,o)||"";if(i=i.replace(/(\$\d+|\${[^}]+})/g,"")||"",r.setSelection(t.from,t.to),i.indexOf("\n")>-1){var n=r.getLine(r.getCursor().line).search(/(\S|$)/);i=i.replace(/\n/g,"\n"+c(n))}r.replaceSelection(i);var a=r.getSearchCursor(o,t.from);a.findNext()&&(r.setCursor(a.from()),a.replace(""))}}})):[],/(property|string)/.test(i.type||"")&&(d=d.filter((function(r){return r.filter.replace(/(^"|"$)/g,"").startsWith(i.string.replace(/(^"|"$)/g,""))}))),[2,{from:CodeMirror.Pos(o.line,i.start),to:CodeMirror.Pos(o.line,o.ch),list:d}]}}))}))}));
1
+ import{__awaiter,__generator}from"tslib";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";var serv=getLanguageService({});CodeMirror.registerHelper("lint","json",(function(r,e){return __awaiter(this,void 0,void 0,(function(){var t,o,i,n,a;return __generator(this,(function(s){switch(s.label){case 0:return t=e.schema,o=e.setError,serv.configure({validate:!0,schemas:[{uri:"stub://"+e.id,fileMatch:["*"],schema:t}]}),i=TextDocument.create(e.id+".json","json",0,r),n=serv.parseJSONDocument(i),[4,serv.doValidation(i,n)];case 1:return(a=s.sent()).length?o&&o(a[0].message):o&&o(void 0),[2,a.map((function(r){return{from:CodeMirror.Pos(r.range.start.line,r.range.start.character),to:CodeMirror.Pos(r.range.end.line,r.range.end.character),message:r.message}}))]}}))}))})),CodeMirror.registerHelper("hint","json",(function(r,e){return __awaiter(void 0,void 0,void 0,(function(){var t,o,i,n,a,s,c,d;return __generator(this,(function(m){switch(m.label){case 0:return(t=e.schema)?(serv.configure({validate:!0,schemas:[{uri:"stub://"+e.id,fileMatch:["*"],schema:t}]}),o=r.getDoc().getCursor(),i=r.getTokenAt(o),n=TextDocument.create(e.id+".json","json",0,r.getValue()),a=serv.parseJSONDocument(n),[4,serv.doComplete(n,{line:o.line,character:o.ch},a)]):[2];case 1:return s=m.sent(),c=function(r){for(var e="";r--;)e+=" ";return e},d=s?s.items.map((function(r){return{text:r.insertText,displayText:r.label,filter:r.filterText||r.label,from:{line:r.textEdit.range.start.line,ch:r.textEdit.range.start.character},to:{line:r.textEdit.range.end.line,ch:r.textEdit.range.end.character},hint:function(r,e,t){var o="_$__REDOC_CURSOR_HERE",i=t.text.replace(/(\$1|\${1:[^}]+})/,o)||"";if(i=i.replace(/(\$\d+|\${[^}]+})/g,"")||"",r.setSelection(t.from,t.to),i.indexOf("\n")>-1){var n=r.getLine(r.getCursor().line).search(/(\S|$)/);i=i.replace(/\n/g,"\n"+c(n))}r.replaceSelection(i);var a=r.getSearchCursor(o,t.from);a.findNext()&&(r.setCursor(a.from()),a.replace(""))}}})):[],/(property|string)/.test(i.type||"")&&(d=d.filter((function(r){return r.filter.replace(/(^"|"$)/g,"").startsWith(i.string.replace(/(^"|"$)/g,""))}))),[2,{from:CodeMirror.Pos(o.line,i.start),to:CodeMirror.Pos(o.line,o.ch),list:d}]}}))}))}));
2
2
  //# sourceMappingURL=codemirror-helpers.js.map
@@ -1,5 +1,5 @@
1
1
  /// <reference types="react" />
2
- import type { DropdownOption } from '../common/Dropdown';
2
+ import type { DropdownProps } from '../common/Dropdown';
3
3
  export declare const blink: import("styled-components").Keyframes;
4
4
  export declare const ConsoleWrap: import("styled-components").StyledComponent<"div", any, {
5
5
  scrollYOffset?: (() => number) | undefined;
@@ -9,10 +9,13 @@ export declare const ConsoleWrap: import("styled-components").StyledComponent<"d
9
9
  export declare const ConsoleBody: import("styled-components").StyledComponent<"div", any, {}, never>;
10
10
  export declare const CloseButton: import("styled-components").StyledComponent<"span", any, {}, never>;
11
11
  export declare const invertedInputStyles: import("styled-components").FlattenSimpleInterpolation;
12
- export declare const TryItDropdown: import("styled-components").StyledComponent<import("react").NamedExoticComponent<import("../common/Dropdown").DropdownProps>, any, import("../common/Dropdown").DropdownProps & {
12
+ export declare const TryItDropdown: import("styled-components").StyledComponent<import("react").NamedExoticComponent<DropdownProps>, any, DropdownProps & {
13
13
  dense?: boolean | undefined;
14
14
  fullWidth?: boolean | undefined;
15
15
  variant?: "dark" | "light" | undefined;
16
- } & DropdownOption, never>;
17
- export declare const PanelPreCodeBlock: import("styled-components").StyledComponent<"pre", any, {}, never>;
16
+ }, never>;
17
+ export declare const PanelPreCodeBlock: import("styled-components").StyledComponent<"pre", any, {
18
+ 'data-component-name': string;
19
+ }, "data-component-name">;
18
20
  export declare const ResponseHeader: import("styled-components").StyledComponent<"div", any, {}, never>;
21
+ export declare const FlowName: import("styled-components").StyledComponent<"div", any, {}, never>;
@@ -1,2 +1,2 @@
1
- import{__makeTemplateObject}from"tslib";import styled,{css,keyframes}from"styled-components";import{Dropdown}from"../common/Dropdown";import{PreformattedCodeBlock}from"@redocly/theme";var shake=keyframes(templateObject_1||(templateObject_1=__makeTemplateObject(["\n 10%, 90% {\n transform: translate3d(-1px, 0, 0);\n }\n\n 20%, 80% {\n transform: translate3d(2px, 0, 0);\n }\n\n 30%, 50%, 70% {\n transform: translate3d(-4px, 0, 0);\n }\n\n 40%, 60% {\n transform: translate3d(4px, 0, 0);\n }\n"],["\n 10%, 90% {\n transform: translate3d(-1px, 0, 0);\n }\n\n 20%, 80% {\n transform: translate3d(2px, 0, 0);\n }\n\n 30%, 50%, 70% {\n transform: translate3d(-4px, 0, 0);\n }\n\n 40%, 60% {\n transform: translate3d(4px, 0, 0);\n }\n"])));export var blink=keyframes(templateObject_2||(templateObject_2=__makeTemplateObject(["\n 0% {\n background-color: #007abf;\n }\n\n 50% {\n background-color: #59C3FF;\n }\n\n 100% {\n background-color: #007abf;\n }\n"],["\n 0% {\n background-color: #007abf;\n }\n\n 50% {\n background-color: #59C3FF;\n }\n\n 100% {\n background-color: #007abf;\n }\n"])));var templateObject_1,templateObject_2,templateObject_3,templateObject_4,templateObject_5,templateObject_6,templateObject_7,templateObject_8,templateObject_9,templateObject_10,shakeAnimation=css(templateObject_3||(templateObject_3=__makeTemplateObject(["\n animation: "," 0.82s cubic-bezier(0.36, 0.07, 0.19, 0.97) both;\n"],["\n animation: "," 0.82s cubic-bezier(0.36, 0.07, 0.19, 0.97) both;\n"])),shake);export var ConsoleWrap=styled.div(templateObject_4||(templateObject_4=__makeTemplateObject(["\n background-color: var(--samples-panel-background-color);\n color: var(--color-content-inverse);\n font-family: var(--code-font-family);\n border-radius: var(--panels-border-radius);\n overflow: hidden;\n z-index: 10;\n display: flex;\n flex-direction: column;\n max-height: calc(85vh - ","px);\n margin-bottom: 10px;\n ",";\n > div:last-child {\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n }\n"],["\n background-color: var(--samples-panel-background-color);\n color: var(--color-content-inverse);\n font-family: var(--code-font-family);\n border-radius: var(--panels-border-radius);\n overflow: hidden;\n z-index: 10;\n display: flex;\n flex-direction: column;\n max-height: calc(85vh - ","px);\n margin-bottom: 10px;\n ",";\n > div:last-child {\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n }\n"])),(function(n){var e=n.scrollYOffset;return e?e():0}),(function(n){return n.shaking&&shakeAnimation}));export var ConsoleBody=styled.div(templateObject_5||(templateObject_5=__makeTemplateObject(["\n flex: 1;\n padding: 20px 20px 15px;\n overflow: auto;\n display: ",";\n flex-direction: column;\n position: relative;\n background-color: var(--samples-panel-background-color);\n"],["\n flex: 1;\n padding: 20px 20px 15px;\n overflow: auto;\n display: ",";\n flex-direction: column;\n position: relative;\n background-color: var(--samples-panel-background-color);\n"])),(function(n){return n.hidden?"none":"flex"}));export var CloseButton=styled.span(templateObject_6||(templateObject_6=__makeTemplateObject(["\n cursor: pointer;\n font-size: 24px;\n font-weight: bold;\n color: var(--color-content-inverse);\n"],["\n cursor: pointer;\n font-size: 24px;\n font-weight: bold;\n color: var(--color-content-inverse);\n"])));export var invertedInputStyles=css(templateObject_7||(templateObject_7=__makeTemplateObject(["\n border: none;\n outline: none;\n padding: 8px;\n border-radius: var(--global-border-radius);\n background-color: var(--samples-panel-controls-background-color);\n color: var(--color-content-inverse);\n font-family: var(--code-font-family);\n font-size: var(--font-size-base);\n\n &::placeholder {\n opacity: 0.6;\n color: var(--color-content-inverse);\n }\n\n &:-webkit-autofill {\n background-color: var(--samples-panel-background-color);\n }\n"],["\n border: none;\n outline: none;\n padding: 8px;\n border-radius: var(--global-border-radius);\n background-color: var(--samples-panel-controls-background-color);\n color: var(--color-content-inverse);\n font-family: var(--code-font-family);\n font-size: var(--font-size-base);\n\n &::placeholder {\n opacity: 0.6;\n color: var(--color-content-inverse);\n }\n\n &:-webkit-autofill {\n background-color: var(--samples-panel-background-color);\n }\n"])));export var TryItDropdown=styled(Dropdown)(templateObject_8||(templateObject_8=__makeTemplateObject(["\n .dropdown-select,\n label {\n background-color: var(--try-it-panel-controls-background-color);\n border-color: var(--try-it-panel-controls-background-color);\n }\n"],["\n .dropdown-select,\n label {\n background-color: var(--try-it-panel-controls-background-color);\n border-color: var(--try-it-panel-controls-background-color);\n }\n"])));export var PanelPreCodeBlock=styled(PreformattedCodeBlock)(templateObject_9||(templateObject_9=__makeTemplateObject(["\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n"],["\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n"])));export var ResponseHeader=styled.div(templateObject_10||(templateObject_10=__makeTemplateObject(["\n margin-bottom: 10px;\n\n &:not(:first-child) {\n margin-top: 10px;\n }\n"],["\n margin-bottom: 10px;\n\n &:not(:first-child) {\n margin-top: 10px;\n }\n"])));
1
+ import{__makeTemplateObject}from"tslib";import styled,{css,keyframes}from"styled-components";import{PreformattedCodeBlock}from"@redocly/theme";import{Dropdown}from"../common/Dropdown";var shake=keyframes(templateObject_1||(templateObject_1=__makeTemplateObject(["\n 10%, 90% {\n transform: translate3d(-1px, 0, 0);\n }\n\n 20%, 80% {\n transform: translate3d(2px, 0, 0);\n }\n\n 30%, 50%, 70% {\n transform: translate3d(-4px, 0, 0);\n }\n\n 40%, 60% {\n transform: translate3d(4px, 0, 0);\n }\n"],["\n 10%, 90% {\n transform: translate3d(-1px, 0, 0);\n }\n\n 20%, 80% {\n transform: translate3d(2px, 0, 0);\n }\n\n 30%, 50%, 70% {\n transform: translate3d(-4px, 0, 0);\n }\n\n 40%, 60% {\n transform: translate3d(4px, 0, 0);\n }\n"])));export var blink=keyframes(templateObject_2||(templateObject_2=__makeTemplateObject(["\n 0% {\n background-color: #007abf;\n }\n\n 50% {\n background-color: #59C3FF;\n }\n\n 100% {\n background-color: #007abf;\n }\n"],["\n 0% {\n background-color: #007abf;\n }\n\n 50% {\n background-color: #59C3FF;\n }\n\n 100% {\n background-color: #007abf;\n }\n"])));var templateObject_1,templateObject_2,templateObject_3,templateObject_4,templateObject_5,templateObject_6,templateObject_7,templateObject_8,templateObject_9,templateObject_10,templateObject_11,shakeAnimation=css(templateObject_3||(templateObject_3=__makeTemplateObject(["\n animation: "," 0.82s cubic-bezier(0.36, 0.07, 0.19, 0.97) both;\n"],["\n animation: "," 0.82s cubic-bezier(0.36, 0.07, 0.19, 0.97) both;\n"])),shake);export var ConsoleWrap=styled.div(templateObject_4||(templateObject_4=__makeTemplateObject(["\n background-color: var(--samples-panel-background-color);\n color: var(--color-content-inverse);\n font-family: var(--code-font-family);\n border-radius: var(--panels-border-radius);\n overflow: hidden;\n z-index: 10;\n display: flex;\n flex-direction: column;\n max-height: calc(85vh - ","px);\n margin-bottom: 10px;\n ",";\n > div:last-child {\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n }\n"],["\n background-color: var(--samples-panel-background-color);\n color: var(--color-content-inverse);\n font-family: var(--code-font-family);\n border-radius: var(--panels-border-radius);\n overflow: hidden;\n z-index: 10;\n display: flex;\n flex-direction: column;\n max-height: calc(85vh - ","px);\n margin-bottom: 10px;\n ",";\n > div:last-child {\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n }\n"])),(function(n){var e=n.scrollYOffset;return e?e():0}),(function(n){return n.shaking&&shakeAnimation}));export var ConsoleBody=styled.div(templateObject_5||(templateObject_5=__makeTemplateObject(["\n flex: 1;\n padding: 20px 20px 15px;\n overflow: auto;\n display: ",";\n flex-direction: column;\n position: relative;\n background-color: var(--samples-panel-background-color);\n"],["\n flex: 1;\n padding: 20px 20px 15px;\n overflow: auto;\n display: ",";\n flex-direction: column;\n position: relative;\n background-color: var(--samples-panel-background-color);\n"])),(function(n){return n.hidden?"none":"flex"}));export var CloseButton=styled.span(templateObject_6||(templateObject_6=__makeTemplateObject(["\n cursor: pointer;\n font-size: 24px;\n font-weight: bold;\n color: var(--color-content-inverse);\n"],["\n cursor: pointer;\n font-size: 24px;\n font-weight: bold;\n color: var(--color-content-inverse);\n"])));export var invertedInputStyles=css(templateObject_7||(templateObject_7=__makeTemplateObject(["\n border: none;\n outline: none;\n padding: 8px;\n border-radius: var(--global-border-radius);\n background-color: var(--samples-panel-controls-background-color);\n color: var(--color-content-inverse);\n font-family: var(--code-font-family);\n font-size: var(--font-size-base);\n\n &::placeholder {\n opacity: 0.6;\n color: var(--color-content-inverse);\n }\n\n &:-webkit-autofill {\n background-color: var(--samples-panel-background-color);\n }\n"],["\n border: none;\n outline: none;\n padding: 8px;\n border-radius: var(--global-border-radius);\n background-color: var(--samples-panel-controls-background-color);\n color: var(--color-content-inverse);\n font-family: var(--code-font-family);\n font-size: var(--font-size-base);\n\n &::placeholder {\n opacity: 0.6;\n color: var(--color-content-inverse);\n }\n\n &:-webkit-autofill {\n background-color: var(--samples-panel-background-color);\n }\n"])));export var TryItDropdown=styled(Dropdown)(templateObject_8||(templateObject_8=__makeTemplateObject(["\n .dropdown-select,\n label {\n background-color: var(--try-it-panel-controls-background-color);\n border-color: var(--try-it-panel-controls-background-color);\n }\n"],["\n .dropdown-select,\n label {\n background-color: var(--try-it-panel-controls-background-color);\n border-color: var(--try-it-panel-controls-background-color);\n }\n"])));export var PanelPreCodeBlock=styled(PreformattedCodeBlock)(templateObject_9||(templateObject_9=__makeTemplateObject(["\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n"],["\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n"])));export var ResponseHeader=styled.div(templateObject_10||(templateObject_10=__makeTemplateObject(["\n margin-bottom: 10px;\n\n &:not(:first-child) {\n margin-top: 10px;\n }\n"],["\n margin-bottom: 10px;\n\n &:not(:first-child) {\n margin-top: 10px;\n }\n"])));export var FlowName=styled.div(templateObject_11||(templateObject_11=__makeTemplateObject(["\n margin-top: 5px;\n margin-bottom: 10px;\n"],["\n margin-top: 5px;\n margin-bottom: 10px;\n"])));
2
2
  //# sourceMappingURL=styled.js.map