@redocly/reference-docs 3.0.0-alpha.2 → 3.0.0-alpha.5

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 (670) hide show
  1. package/bin/cli/assets/assets/redoc-fast-scroll.js +23 -0
  2. package/bin/cli/assets/assets/template.hbs +25 -0
  3. package/bin/cli/commands/redocly-docs-cli.min.js +799 -743
  4. package/bin/cli/commands/redocly-docs-cli.min.js.LICENSE.txt +14 -30
  5. package/dist/console.redocly-reference-docs.min.js +229 -196
  6. package/dist/oauth2-redirect.js +1 -1
  7. package/dist/redocly-reference-docs.min.js +5583 -2663
  8. package/lib/components/Endpoint/Endpoint.d.ts +1 -6
  9. package/lib/components/Endpoint/Endpoint.js +1 -1
  10. package/lib/components/Endpoint/ServerList.d.ts +2 -7
  11. package/lib/components/Endpoint/ServerList.js +1 -1
  12. package/lib/components/Endpoint/Summary.d.ts +1 -12
  13. package/lib/components/Endpoint/Summary.js +1 -1
  14. package/lib/components/Endpoint/index.d.ts +2 -1
  15. package/lib/components/Endpoint/index.js +1 -1
  16. package/lib/components/Endpoint/styled.d.ts +9 -0
  17. package/lib/components/Endpoint/styled.js +2 -0
  18. package/lib/components/Endpoint/types.d.ts +21 -0
  19. package/lib/components/Endpoint/types.js +2 -0
  20. package/lib/components/NextSectionButton.d.ts +6 -5
  21. package/lib/components/NextSectionButton.js +1 -1
  22. package/lib/components/OperationParameters/OperationParameters.js +1 -1
  23. package/lib/components/OperationParameters/utils.d.ts +1 -1
  24. package/lib/components/OperationParameters/utils.js +1 -1
  25. package/lib/components/Panel/Accordion.js +1 -1
  26. package/lib/components/Panel/CodeHeader.d.ts +5 -3
  27. package/lib/components/Panel/CodeHeader.js +1 -1
  28. package/lib/components/Panel/CodePanel.d.ts +4 -1
  29. package/lib/components/Panel/CodePanel.js +1 -1
  30. package/lib/components/Panel/ContentPanel.d.ts +4 -1
  31. package/lib/components/Panel/ContentPanel.js +1 -1
  32. package/lib/components/Panel/Description.d.ts +1 -0
  33. package/lib/components/Panel/Description.js +2 -0
  34. package/lib/components/Panel/ResponsePanel.d.ts +8 -3
  35. package/lib/components/Panel/ResponsePanel.js +1 -1
  36. package/lib/components/Panel/index.d.ts +1 -6
  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 +1 -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/SamplesTabs.d.ts +3 -1
  44. package/lib/components/Samples/SamplesTabs.js +1 -1
  45. package/lib/components/Samples/use-example-key.js +1 -1
  46. package/lib/components/Search/MenuItemProSearch.js +1 -1
  47. package/lib/components/Search/ProSearchBox.js +1 -1
  48. package/lib/components/Search/SearchField.js +1 -1
  49. package/lib/components/Search/styled.d.ts +1 -3
  50. package/lib/components/Search/styled.js +1 -1
  51. package/lib/components/StoreProvider.d.ts +1 -1
  52. package/lib/components/Tabs/CollapsingTabs/CollapsingTabList.js +1 -1
  53. package/lib/components/Tabs/CollapsingTabs/CollapsingTabsBase.d.ts +1 -1
  54. package/lib/components/Tabs/CollapsingTabs/CollapsingTabsBase.js +1 -1
  55. package/lib/components/Tabs/Tab.js +1 -1
  56. package/lib/components/common/CheckboxList.d.ts +1 -1
  57. package/lib/components/common/CheckboxList.js +1 -1
  58. package/lib/components/common/Dropdown/styled.d.ts +8 -4
  59. package/lib/components/common/Dropdown/styled.js +1 -1
  60. package/lib/components/common/FileUpload/FileUpload.d.ts +3 -2
  61. package/lib/components/common/FileUpload/FileUpload.js +1 -1
  62. package/lib/components/common/LinearProgress.js +1 -1
  63. package/lib/components/common/TextField.d.ts +1 -1
  64. package/lib/components/common/TextField.js +1 -1
  65. package/lib/components/console/ActionPanel.js +1 -1
  66. package/lib/components/console/AuthPanel/AuthPanel.d.ts +1 -1
  67. package/lib/components/console/AuthPanel/AuthPanel.js +1 -1
  68. package/lib/components/console/AuthPanel/types.d.ts +1 -1
  69. package/lib/components/console/CodemirrorInput.d.ts +15 -11
  70. package/lib/components/console/CodemirrorInput.js +1 -1
  71. package/lib/components/console/Console.d.ts +3 -3
  72. package/lib/components/console/Console.js +1 -1
  73. package/lib/components/console/ConsoleLazy.js +1 -1
  74. package/lib/components/console/ConsoleTabs/styled.js +1 -1
  75. package/lib/components/console/OAuth2Flow.d.ts +2 -1
  76. package/lib/components/console/OAuth2Flow.js +1 -1
  77. package/lib/components/console/OAuth2TokenInput.d.ts +2 -1
  78. package/lib/components/console/OAuth2TokenInput.js +1 -1
  79. package/lib/components/console/OpenIDConnect.d.ts +4 -1
  80. package/lib/components/console/OpenIDConnect.js +1 -1
  81. package/lib/components/console/ParameterArray.d.ts +10 -0
  82. package/lib/components/console/ParameterArray.js +2 -0
  83. package/lib/components/console/RequestBody/RequestBody.d.ts +3 -0
  84. package/lib/components/console/RequestBody/RequestBody.js +2 -0
  85. package/lib/components/console/RequestBody/index.d.ts +2 -0
  86. package/lib/components/console/RequestBody/index.js +2 -0
  87. package/lib/components/console/RequestBody/types.d.ts +10 -0
  88. package/lib/components/console/RequestBody/types.js +2 -0
  89. package/lib/components/console/RequestBodyForm.d.ts +3 -2
  90. package/lib/components/console/RequestMimeLabel.js +1 -1
  91. package/lib/components/console/ResponsePanel.js +1 -1
  92. package/lib/components/console/ServersDropdown/ServersDropdown.d.ts +3 -0
  93. package/lib/components/console/ServersDropdown/ServersDropdown.js +2 -0
  94. package/lib/components/console/ServersDropdown/index.d.ts +1 -0
  95. package/lib/components/console/ServersDropdown/index.js +2 -0
  96. package/lib/components/console/ServersDropdown/types.d.ts +5 -0
  97. package/lib/components/console/ServersDropdown/types.js +2 -0
  98. package/lib/components/console/TryItPanel.d.ts +1 -1
  99. package/lib/components/console/TryItPanel.js +1 -1
  100. package/lib/components/console/styled.d.ts +4 -2
  101. package/lib/components/console/styled.js +1 -1
  102. package/lib/components/console/utils.d.ts +9 -1
  103. package/lib/components/console/utils.js +1 -1
  104. package/lib/components/index.d.ts +1 -0
  105. package/lib/components/index.js +1 -1
  106. package/lib/components/pluggable/PullRight.js +1 -1
  107. package/lib/components/pluggable/styled.components.js +1 -1
  108. package/lib/components/shared/HttpVerb.d.ts +4 -2
  109. package/lib/components/shared/HttpVerb.js +1 -1
  110. package/lib/components/shared/MimeLabel.js +1 -1
  111. package/lib/components/shared/index.d.ts +0 -1
  112. package/lib/components/shared/index.js +1 -1
  113. package/lib/components/styled.elements.js +1 -1
  114. package/lib/hooks/index.d.ts +1 -0
  115. package/lib/hooks/index.js +1 -1
  116. package/lib/hooks/useDimensions.d.ts +1 -0
  117. package/lib/hooks/useDimensions.js +2 -0
  118. package/lib/index.d.ts +1 -1
  119. package/lib/oauth2-redirect-page/handler/helpers.d.ts +1 -0
  120. package/lib/oauth2-redirect-page/handler/helpers.js +1 -1
  121. package/lib/redoc-lib/src/common-elements/Download.js +1 -1
  122. package/lib/redoc-lib/src/common-elements/LinkToField.js +1 -1
  123. package/lib/redoc-lib/src/common-elements/fields-layout.js +1 -1
  124. package/lib/redoc-lib/src/common-elements/fields.d.ts +6 -2
  125. package/lib/redoc-lib/src/common-elements/fields.js +1 -1
  126. package/lib/redoc-lib/src/common-elements/headers.js +1 -1
  127. package/lib/redoc-lib/src/common-elements/icons.d.ts +5 -0
  128. package/lib/redoc-lib/src/common-elements/icons.js +1 -1
  129. package/lib/redoc-lib/src/common-elements/linkify.d.ts +1 -1
  130. package/lib/redoc-lib/src/common-elements/linkify.js +1 -1
  131. package/lib/redoc-lib/src/common-elements/panels.d.ts +2 -3
  132. package/lib/redoc-lib/src/common-elements/panels.js +1 -1
  133. package/lib/redoc-lib/src/common-elements/perfect-scrollbar.d.ts +1 -1
  134. package/lib/redoc-lib/src/common-elements/schema.d.ts +1 -1
  135. package/lib/redoc-lib/src/common-elements/schema.js +1 -1
  136. package/lib/redoc-lib/src/common-elements/shelfs.js +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/CallbackSummary.d.ts +1 -1
  143. package/lib/redoc-lib/src/components/Callbacks/CallbackSummary.js +1 -1
  144. package/lib/redoc-lib/src/components/Callbacks/CallbackTitle.d.ts +3 -1
  145. package/lib/redoc-lib/src/components/Callbacks/CallbackTitle.js +1 -1
  146. package/lib/redoc-lib/src/components/Callbacks/CallbacksList.js +1 -1
  147. package/lib/redoc-lib/src/components/ContentItem/ContentItem.d.ts +10 -0
  148. package/lib/redoc-lib/src/components/ContentItem/ContentItem.js +2 -0
  149. package/lib/redoc-lib/src/components/ContentItem/index.d.ts +1 -0
  150. package/lib/redoc-lib/src/components/ContentItem/index.js +2 -0
  151. package/lib/redoc-lib/src/components/ContentItems/ContentItems.d.ts +2 -18
  152. package/lib/redoc-lib/src/components/ContentItems/ContentItems.js +1 -1
  153. package/lib/redoc-lib/src/components/ContentItems/Skeleton.d.ts +2 -0
  154. package/lib/redoc-lib/src/components/ContentItems/Skeleton.js +2 -0
  155. package/lib/redoc-lib/src/components/ContentItems/index.d.ts +1 -0
  156. package/lib/redoc-lib/src/components/ContentItems/index.js +2 -0
  157. package/lib/redoc-lib/src/components/DownloadButton/DownloadButton.js +1 -1
  158. package/lib/redoc-lib/src/components/DropdownOrLabel/DropdownOrLabel.js +1 -1
  159. package/lib/redoc-lib/src/components/ErrorBoundary.d.ts +1 -1
  160. package/lib/redoc-lib/src/components/Fields/EnumValues.js +1 -1
  161. package/lib/redoc-lib/src/components/Fields/Extensions.js +1 -1
  162. package/lib/redoc-lib/src/components/Fields/Field.d.ts +0 -1
  163. package/lib/redoc-lib/src/components/Fields/Field.js +1 -1
  164. package/lib/redoc-lib/src/components/Fields/FieldDetail.d.ts +2 -1
  165. package/lib/redoc-lib/src/components/Fields/FieldDetail.js +1 -1
  166. package/lib/redoc-lib/src/components/Fields/FieldDetails.js +1 -1
  167. package/lib/redoc-lib/src/components/GenericChildrenSwitcher/GenericChildrenSwitcher.js +1 -1
  168. package/lib/redoc-lib/src/components/Markdown/AdvancedMarkdown.js +1 -1
  169. package/lib/redoc-lib/src/components/Markdown/styled.d.ts +6 -2
  170. package/lib/redoc-lib/src/components/Markdown/styled.js +1 -1
  171. package/lib/redoc-lib/src/components/MediaTypeSwitch/MediaTypesSwitch.js +1 -1
  172. package/lib/redoc-lib/src/components/Operation/Operation.js +1 -1
  173. package/lib/redoc-lib/src/components/Operation/index.d.ts +1 -0
  174. package/lib/redoc-lib/src/components/Operation/index.js +2 -0
  175. package/lib/redoc-lib/src/components/OperationItem/OperationItem.d.ts +7 -0
  176. package/lib/redoc-lib/src/components/OperationItem/OperationItem.js +2 -0
  177. package/lib/redoc-lib/src/components/OperationItem/index.d.ts +1 -0
  178. package/lib/redoc-lib/src/components/OperationItem/index.js +2 -0
  179. package/lib/redoc-lib/src/components/Parameters/Parameters.js +1 -1
  180. package/lib/redoc-lib/src/components/Parameters/ParametersGroup.js +1 -1
  181. package/lib/redoc-lib/src/components/PayloadSamples/Example.d.ts +1 -5
  182. package/lib/redoc-lib/src/components/PayloadSamples/Example.js +1 -1
  183. package/lib/redoc-lib/src/components/PayloadSamples/ExampleValue.d.ts +1 -8
  184. package/lib/redoc-lib/src/components/PayloadSamples/MediaTypeSamples.d.ts +2 -7
  185. package/lib/redoc-lib/src/components/PayloadSamples/MediaTypeSamples.js +1 -1
  186. package/lib/redoc-lib/src/components/PayloadSamples/PayloadSamples.d.ts +1 -7
  187. package/lib/redoc-lib/src/components/PayloadSamples/PayloadSamples.js +1 -1
  188. package/lib/redoc-lib/src/components/PayloadSamples/index.d.ts +5 -0
  189. package/lib/redoc-lib/src/components/PayloadSamples/index.js +2 -0
  190. package/lib/redoc-lib/src/components/PayloadSamples/styled.js +1 -1
  191. package/lib/redoc-lib/src/components/PayloadSamples/types.d.ts +23 -0
  192. package/lib/redoc-lib/src/components/PayloadSamples/types.js +2 -0
  193. package/lib/redoc-lib/src/components/PayloadSamples/{exernalExampleHook.d.ts → useExternalExample.d.ts} +0 -0
  194. package/lib/redoc-lib/src/components/PayloadSamples/{exernalExampleHook.js → useExternalExample.js} +1 -1
  195. package/lib/redoc-lib/src/components/RenderHook.d.ts +1 -1
  196. package/lib/redoc-lib/src/components/RenderHook.js +1 -1
  197. package/lib/redoc-lib/src/components/RequestSamples/CodeSample.js +1 -1
  198. package/lib/redoc-lib/src/components/RequestSamples/RequestSamples.d.ts +1 -1
  199. package/lib/redoc-lib/src/components/RequestSamples/RequestSamples.js +1 -1
  200. package/lib/redoc-lib/src/components/RequestSamples/languageSwitchEvent.d.ts +1 -1
  201. package/lib/redoc-lib/src/components/ResponseSamples/ResponseSamples.js +1 -1
  202. package/lib/redoc-lib/src/components/Responses/Response.d.ts +2 -5
  203. package/lib/redoc-lib/src/components/Responses/Response.js +1 -1
  204. package/lib/redoc-lib/src/components/Responses/ResponseDetails.d.ts +3 -8
  205. package/lib/redoc-lib/src/components/Responses/ResponseDetails.js +1 -1
  206. package/lib/redoc-lib/src/components/Responses/ResponseHeaders.d.ts +3 -9
  207. package/lib/redoc-lib/src/components/Responses/ResponseHeaders.js +1 -1
  208. package/lib/redoc-lib/src/components/Responses/ResponseSummary.d.ts +1 -5
  209. package/lib/redoc-lib/src/components/Responses/ResponseSummary.js +1 -1
  210. package/lib/redoc-lib/src/components/Responses/ResponsesList.d.ts +3 -8
  211. package/lib/redoc-lib/src/components/Responses/ResponsesList.js +1 -1
  212. package/lib/redoc-lib/src/components/Responses/index.d.ts +1 -0
  213. package/lib/redoc-lib/src/components/Responses/index.js +2 -0
  214. package/lib/redoc-lib/src/components/Responses/{styled.elements.d.ts → styled.d.ts} +1 -0
  215. package/lib/redoc-lib/src/components/Responses/styled.js +2 -0
  216. package/lib/redoc-lib/src/components/Responses/types.d.ts +12 -0
  217. package/lib/redoc-lib/src/components/Responses/types.js +2 -0
  218. package/lib/redoc-lib/src/components/Schema/DiscriminatorDropdown.js +1 -1
  219. package/lib/redoc-lib/src/components/Schema/ObjectSchema.d.ts +1 -1
  220. package/lib/redoc-lib/src/components/Schema/ObjectSchema.js +1 -1
  221. package/lib/redoc-lib/src/components/Schema/OneOfSchema.js +1 -1
  222. package/lib/redoc-lib/src/components/Schema/RecursiveSchema.d.ts +3 -0
  223. package/lib/redoc-lib/src/components/Schema/RecursiveSchema.js +2 -0
  224. package/lib/redoc-lib/src/components/Schema/Schema.js +1 -1
  225. package/lib/redoc-lib/src/components/Schema/types.d.ts +0 -1
  226. package/lib/redoc-lib/src/components/SchemaDefinition/SchemaDefinition.js +1 -1
  227. package/lib/redoc-lib/src/components/SearchBox/SearchBox.d.ts +1 -1
  228. package/lib/redoc-lib/src/components/SearchBox/styled.js +1 -1
  229. package/lib/redoc-lib/src/components/SectionItem/SectionItem.d.ts +7 -0
  230. package/lib/redoc-lib/src/components/SectionItem/SectionItem.js +2 -0
  231. package/lib/redoc-lib/src/components/SectionItem/index.d.ts +1 -0
  232. package/lib/redoc-lib/src/components/SectionItem/index.js +2 -0
  233. package/lib/redoc-lib/src/components/SecurityRequirement/RequiredScopesRow.js +1 -1
  234. package/lib/redoc-lib/src/components/SecurityRequirement/SecurityDefs.js +1 -1
  235. package/lib/redoc-lib/src/components/SecurityRequirement/SecurityRequirement.js +1 -1
  236. package/lib/redoc-lib/src/components/SecurityRequirement/SecurityRequirementElement.js +1 -1
  237. package/lib/redoc-lib/src/components/SecurityRequirement/SecurityRequirementPanelDescription.js +1 -1
  238. package/lib/redoc-lib/src/components/SecuritySchemes/SecuritySchemes.js +1 -1
  239. package/lib/redoc-lib/src/components/SecuritySchemes/helpers.d.ts +4 -0
  240. package/lib/redoc-lib/src/components/SeeMore/SeeMore.js +1 -1
  241. package/lib/redoc-lib/src/components/SideMenu/MenuItem.js +1 -1
  242. package/lib/redoc-lib/src/components/SideMenu/MenuItems.js +1 -1
  243. package/lib/redoc-lib/src/components/SideMenu/styled.elements.js +1 -1
  244. package/lib/redoc-lib/src/components/SourceCodeWithFile/SourceCodeWithFile.js +1 -1
  245. package/lib/redoc-lib/src/components/StickySidebar/StickyResponsiveSidebar.d.ts +1 -1
  246. package/lib/redoc-lib/src/components/StickySidebar/StickyResponsiveSidebar.js +1 -1
  247. package/lib/redoc-lib/src/components/index.d.ts +5 -4
  248. package/lib/redoc-lib/src/components/index.js +1 -1
  249. package/lib/redoc-lib/src/services/MarkdownRenderer.js +1 -1
  250. package/lib/redoc-lib/src/services/MenuBuilder.d.ts +1 -1
  251. package/lib/redoc-lib/src/services/MenuBuilder.js +1 -1
  252. package/lib/redoc-lib/src/services/OpenAPIParser.d.ts +9 -12
  253. package/lib/redoc-lib/src/services/OpenAPIParser.js +1 -1
  254. package/lib/redoc-lib/src/services/RedocNormalizedOptions.d.ts +7 -0
  255. package/lib/redoc-lib/src/services/RedocNormalizedOptions.js +1 -1
  256. package/lib/redoc-lib/src/services/SearchStore.js +1 -1
  257. package/lib/redoc-lib/src/services/models/Callback.js +1 -1
  258. package/lib/redoc-lib/src/services/models/Example.js +1 -1
  259. package/lib/redoc-lib/src/services/models/Field.d.ts +1 -1
  260. package/lib/redoc-lib/src/services/models/Field.js +1 -1
  261. package/lib/redoc-lib/src/services/models/MediaContent.d.ts +1 -1
  262. package/lib/redoc-lib/src/services/models/MediaContent.js +1 -1
  263. package/lib/redoc-lib/src/services/models/MediaType.d.ts +2 -2
  264. package/lib/redoc-lib/src/services/models/MediaType.js +1 -1
  265. package/lib/redoc-lib/src/services/models/Operation.d.ts +3 -2
  266. package/lib/redoc-lib/src/services/models/Operation.js +1 -1
  267. package/lib/redoc-lib/src/services/models/RequestBody.d.ts +1 -1
  268. package/lib/redoc-lib/src/services/models/RequestBody.js +1 -1
  269. package/lib/redoc-lib/src/services/models/Response.d.ts +1 -1
  270. package/lib/redoc-lib/src/services/models/Response.js +1 -1
  271. package/lib/redoc-lib/src/services/models/Schema.d.ts +4 -5
  272. package/lib/redoc-lib/src/services/models/Schema.js +1 -1
  273. package/lib/redoc-lib/src/services/models/SecurityRequirement.js +1 -1
  274. package/lib/redoc-lib/src/services/models/SecuritySchemes.js +1 -1
  275. package/lib/redoc-lib/src/services/models/Webhook.js +1 -1
  276. package/lib/redoc-lib/src/services/types.d.ts +14 -2
  277. package/lib/redoc-lib/src/types/open-api.d.ts +4 -0
  278. package/lib/redoc-lib/src/utils/helpers.d.ts +3 -1
  279. package/lib/redoc-lib/src/utils/helpers.js +1 -1
  280. package/lib/redoc-lib/src/utils/openapi.d.ts +3 -2
  281. package/lib/redoc-lib/src/utils/openapi.js +1 -1
  282. package/lib/redoc-lib/src/utils/string.d.ts +1 -0
  283. package/lib/redoc-lib/src/utils/string.js +2 -0
  284. package/lib/redoc-lib/src/utils/theme-helpers.js +1 -1
  285. package/lib/services/OAuth2.d.ts +4 -2
  286. package/lib/services/OAuth2.js +1 -1
  287. package/lib/services/OpenIDConnect.d.ts +1 -1
  288. package/lib/services/ProMenu.js +1 -1
  289. package/lib/services/ProStore.d.ts +6 -6
  290. package/lib/services/ProStore.js +1 -1
  291. package/lib/services/SearchStore.d.ts +1 -1
  292. package/lib/services/VersionedSpecStore.d.ts +1 -1
  293. package/lib/services/code-samples/generator.d.ts +1 -0
  294. package/lib/services/code-samples/generator.js +1 -1
  295. package/lib/services/code-samples/httpsnippet/index.js +1 -1
  296. package/lib/services/code-samples/httpsnippet/targets/csharp/httpclient.js +1 -1
  297. package/lib/services/code-samples/httpsnippet/targets/java8/apachehttp.js +1 -1
  298. package/lib/services/code-samples/httpsnippet/targets/javascript/fetch.js +1 -1
  299. package/lib/services/code-samples/httpsnippet/targets/node/fetch.js +1 -1
  300. package/lib/services/code-samples/httpsnippet/targets/python/requests.js +1 -1
  301. package/lib/services/utils.d.ts +2 -0
  302. package/lib/services/utils.js +1 -1
  303. package/lib/standalone.d.ts +1 -1
  304. package/lib/standalone.js +1 -1
  305. package/lib/types.d.ts +11 -0
  306. package/lib/utils.d.ts +3 -13
  307. package/lib/utils.js +1 -1
  308. package/lib-esm/components/Endpoint/Endpoint.d.ts +1 -6
  309. package/lib-esm/components/Endpoint/Endpoint.js +1 -1
  310. package/lib-esm/components/Endpoint/ServerList.d.ts +2 -7
  311. package/lib-esm/components/Endpoint/ServerList.js +1 -1
  312. package/lib-esm/components/Endpoint/Summary.d.ts +1 -12
  313. package/lib-esm/components/Endpoint/Summary.js +1 -1
  314. package/lib-esm/components/Endpoint/index.d.ts +2 -1
  315. package/lib-esm/components/Endpoint/index.js +1 -1
  316. package/lib-esm/components/Endpoint/styled.d.ts +9 -0
  317. package/lib-esm/components/Endpoint/styled.js +2 -0
  318. package/lib-esm/components/Endpoint/types.d.ts +21 -0
  319. package/lib-esm/components/Endpoint/types.js +2 -0
  320. package/lib-esm/components/NextSectionButton.d.ts +6 -5
  321. package/lib-esm/components/NextSectionButton.js +1 -1
  322. package/lib-esm/components/OperationParameters/OperationParameters.js +1 -1
  323. package/lib-esm/components/OperationParameters/utils.d.ts +1 -1
  324. package/lib-esm/components/OperationParameters/utils.js +1 -1
  325. package/lib-esm/components/Panel/Accordion.js +1 -1
  326. package/lib-esm/components/Panel/CodeHeader.d.ts +5 -3
  327. package/lib-esm/components/Panel/CodeHeader.js +1 -1
  328. package/lib-esm/components/Panel/CodePanel.d.ts +4 -1
  329. package/lib-esm/components/Panel/CodePanel.js +1 -1
  330. package/lib-esm/components/Panel/ContentPanel.d.ts +4 -1
  331. package/lib-esm/components/Panel/ContentPanel.js +1 -1
  332. package/lib-esm/components/Panel/Description.d.ts +1 -0
  333. package/lib-esm/components/Panel/Description.js +2 -0
  334. package/lib-esm/components/Panel/ResponsePanel.d.ts +8 -3
  335. package/lib-esm/components/Panel/ResponsePanel.js +1 -1
  336. package/lib-esm/components/Panel/index.d.ts +1 -6
  337. package/lib-esm/components/Panel/index.js +1 -1
  338. package/lib-esm/components/ProProviders.d.ts +8 -2
  339. package/lib-esm/components/RedoclyReferenceDocs.d.ts +1 -7
  340. package/lib-esm/components/RedoclyReferenceDocs.js +1 -1
  341. package/lib-esm/components/RedoclyReferenceDocsMultiStandalone.d.ts +8 -0
  342. package/lib-esm/components/RedoclyReferenceDocsMultiStandalone.js +2 -0
  343. package/lib-esm/components/Samples/SamplesTabs.d.ts +3 -1
  344. package/lib-esm/components/Samples/SamplesTabs.js +1 -1
  345. package/lib-esm/components/Samples/use-example-key.js +1 -1
  346. package/lib-esm/components/Search/MenuItemProSearch.js +1 -1
  347. package/lib-esm/components/Search/ProSearchBox.js +1 -1
  348. package/lib-esm/components/Search/SearchField.js +1 -1
  349. package/lib-esm/components/Search/styled.d.ts +1 -3
  350. package/lib-esm/components/Search/styled.js +1 -1
  351. package/lib-esm/components/StoreProvider.d.ts +1 -1
  352. package/lib-esm/components/Tabs/CollapsingTabs/CollapsingTabList.js +1 -1
  353. package/lib-esm/components/Tabs/CollapsingTabs/CollapsingTabsBase.d.ts +1 -1
  354. package/lib-esm/components/Tabs/CollapsingTabs/CollapsingTabsBase.js +1 -1
  355. package/lib-esm/components/Tabs/Tab.js +1 -1
  356. package/lib-esm/components/common/CheckboxList.d.ts +1 -1
  357. package/lib-esm/components/common/CheckboxList.js +1 -1
  358. package/lib-esm/components/common/Dropdown/styled.d.ts +8 -4
  359. package/lib-esm/components/common/Dropdown/styled.js +1 -1
  360. package/lib-esm/components/common/FileUpload/FileUpload.d.ts +3 -2
  361. package/lib-esm/components/common/FileUpload/FileUpload.js +1 -1
  362. package/lib-esm/components/common/LinearProgress.js +1 -1
  363. package/lib-esm/components/common/TextField.d.ts +1 -1
  364. package/lib-esm/components/common/TextField.js +1 -1
  365. package/lib-esm/components/console/ActionPanel.js +1 -1
  366. package/lib-esm/components/console/AuthPanel/AuthPanel.d.ts +1 -1
  367. package/lib-esm/components/console/AuthPanel/AuthPanel.js +1 -1
  368. package/lib-esm/components/console/AuthPanel/types.d.ts +1 -1
  369. package/lib-esm/components/console/CodemirrorInput.d.ts +15 -11
  370. package/lib-esm/components/console/CodemirrorInput.js +1 -1
  371. package/lib-esm/components/console/Console.d.ts +3 -3
  372. package/lib-esm/components/console/Console.js +1 -1
  373. package/lib-esm/components/console/ConsoleLazy.js +1 -1
  374. package/lib-esm/components/console/ConsoleTabs/styled.js +1 -1
  375. package/lib-esm/components/console/OAuth2Flow.d.ts +2 -1
  376. package/lib-esm/components/console/OAuth2Flow.js +1 -1
  377. package/lib-esm/components/console/OAuth2TokenInput.d.ts +2 -1
  378. package/lib-esm/components/console/OAuth2TokenInput.js +1 -1
  379. package/lib-esm/components/console/OpenIDConnect.d.ts +4 -1
  380. package/lib-esm/components/console/OpenIDConnect.js +1 -1
  381. package/lib-esm/components/console/ParameterArray.d.ts +10 -0
  382. package/lib-esm/components/console/ParameterArray.js +2 -0
  383. package/lib-esm/components/console/RequestBody/RequestBody.d.ts +3 -0
  384. package/lib-esm/components/console/RequestBody/RequestBody.js +2 -0
  385. package/lib-esm/components/console/RequestBody/index.d.ts +2 -0
  386. package/lib-esm/components/console/RequestBody/index.js +2 -0
  387. package/lib-esm/components/console/RequestBody/types.d.ts +10 -0
  388. package/lib-esm/components/console/RequestBody/types.js +2 -0
  389. package/lib-esm/components/console/RequestBodyForm.d.ts +3 -2
  390. package/lib-esm/components/console/RequestMimeLabel.js +1 -1
  391. package/lib-esm/components/console/ResponsePanel.js +1 -1
  392. package/lib-esm/components/console/ServersDropdown/ServersDropdown.d.ts +3 -0
  393. package/lib-esm/components/console/ServersDropdown/ServersDropdown.js +2 -0
  394. package/lib-esm/components/console/ServersDropdown/index.d.ts +1 -0
  395. package/lib-esm/components/console/ServersDropdown/index.js +2 -0
  396. package/lib-esm/components/console/ServersDropdown/types.d.ts +5 -0
  397. package/lib-esm/components/console/ServersDropdown/types.js +2 -0
  398. package/lib-esm/components/console/TryItPanel.d.ts +1 -1
  399. package/lib-esm/components/console/TryItPanel.js +1 -1
  400. package/lib-esm/components/console/styled.d.ts +4 -2
  401. package/lib-esm/components/console/styled.js +1 -1
  402. package/lib-esm/components/console/utils.d.ts +9 -1
  403. package/lib-esm/components/console/utils.js +1 -1
  404. package/lib-esm/components/index.d.ts +1 -0
  405. package/lib-esm/components/index.js +1 -1
  406. package/lib-esm/components/pluggable/PullRight.js +1 -1
  407. package/lib-esm/components/pluggable/styled.components.js +1 -1
  408. package/lib-esm/components/shared/HttpVerb.d.ts +4 -2
  409. package/lib-esm/components/shared/HttpVerb.js +1 -1
  410. package/lib-esm/components/shared/MimeLabel.js +1 -1
  411. package/lib-esm/components/shared/index.d.ts +0 -1
  412. package/lib-esm/components/shared/index.js +1 -1
  413. package/lib-esm/components/styled.elements.js +1 -1
  414. package/lib-esm/hooks/index.d.ts +1 -0
  415. package/lib-esm/hooks/index.js +1 -1
  416. package/lib-esm/hooks/useDimensions.d.ts +1 -0
  417. package/lib-esm/hooks/useDimensions.js +2 -0
  418. package/lib-esm/index.d.ts +1 -1
  419. package/lib-esm/oauth2-redirect-page/handler/helpers.d.ts +1 -0
  420. package/lib-esm/oauth2-redirect-page/handler/helpers.js +1 -1
  421. package/lib-esm/redoc-lib/src/common-elements/Download.js +1 -1
  422. package/lib-esm/redoc-lib/src/common-elements/LinkToField.js +1 -1
  423. package/lib-esm/redoc-lib/src/common-elements/fields-layout.js +1 -1
  424. package/lib-esm/redoc-lib/src/common-elements/fields.d.ts +6 -2
  425. package/lib-esm/redoc-lib/src/common-elements/fields.js +1 -1
  426. package/lib-esm/redoc-lib/src/common-elements/headers.js +1 -1
  427. package/lib-esm/redoc-lib/src/common-elements/icons.d.ts +5 -0
  428. package/lib-esm/redoc-lib/src/common-elements/icons.js +1 -1
  429. package/lib-esm/redoc-lib/src/common-elements/linkify.d.ts +1 -1
  430. package/lib-esm/redoc-lib/src/common-elements/linkify.js +1 -1
  431. package/lib-esm/redoc-lib/src/common-elements/panels.d.ts +2 -3
  432. package/lib-esm/redoc-lib/src/common-elements/panels.js +1 -1
  433. package/lib-esm/redoc-lib/src/common-elements/perfect-scrollbar.d.ts +1 -1
  434. package/lib-esm/redoc-lib/src/common-elements/schema.d.ts +1 -1
  435. package/lib-esm/redoc-lib/src/common-elements/schema.js +1 -1
  436. package/lib-esm/redoc-lib/src/common-elements/shelfs.js +1 -1
  437. package/lib-esm/redoc-lib/src/components/ApiInfo/ApiInfo.js +1 -1
  438. package/lib-esm/redoc-lib/src/components/CallbackSamples/CallbackReqSamples.js +1 -1
  439. package/lib-esm/redoc-lib/src/components/CallbackSamples/CallbackSamples.js +1 -1
  440. package/lib-esm/redoc-lib/src/components/Callbacks/CallbackDetails.js +1 -1
  441. package/lib-esm/redoc-lib/src/components/Callbacks/CallbackOperation.js +1 -1
  442. package/lib-esm/redoc-lib/src/components/Callbacks/CallbackSummary.d.ts +1 -1
  443. package/lib-esm/redoc-lib/src/components/Callbacks/CallbackSummary.js +1 -1
  444. package/lib-esm/redoc-lib/src/components/Callbacks/CallbackTitle.d.ts +3 -1
  445. package/lib-esm/redoc-lib/src/components/Callbacks/CallbackTitle.js +1 -1
  446. package/lib-esm/redoc-lib/src/components/Callbacks/CallbacksList.js +1 -1
  447. package/lib-esm/redoc-lib/src/components/ContentItem/ContentItem.d.ts +10 -0
  448. package/lib-esm/redoc-lib/src/components/ContentItem/ContentItem.js +2 -0
  449. package/lib-esm/redoc-lib/src/components/ContentItem/index.d.ts +1 -0
  450. package/lib-esm/redoc-lib/src/components/ContentItem/index.js +2 -0
  451. package/lib-esm/redoc-lib/src/components/ContentItems/ContentItems.d.ts +2 -18
  452. package/lib-esm/redoc-lib/src/components/ContentItems/ContentItems.js +1 -1
  453. package/lib-esm/redoc-lib/src/components/ContentItems/Skeleton.d.ts +2 -0
  454. package/lib-esm/redoc-lib/src/components/ContentItems/Skeleton.js +2 -0
  455. package/lib-esm/redoc-lib/src/components/ContentItems/index.d.ts +1 -0
  456. package/lib-esm/redoc-lib/src/components/ContentItems/index.js +2 -0
  457. package/lib-esm/redoc-lib/src/components/DownloadButton/DownloadButton.js +1 -1
  458. package/lib-esm/redoc-lib/src/components/DropdownOrLabel/DropdownOrLabel.js +1 -1
  459. package/lib-esm/redoc-lib/src/components/ErrorBoundary.d.ts +1 -1
  460. package/lib-esm/redoc-lib/src/components/Fields/EnumValues.js +1 -1
  461. package/lib-esm/redoc-lib/src/components/Fields/Extensions.js +1 -1
  462. package/lib-esm/redoc-lib/src/components/Fields/Field.d.ts +0 -1
  463. package/lib-esm/redoc-lib/src/components/Fields/Field.js +1 -1
  464. package/lib-esm/redoc-lib/src/components/Fields/FieldDetail.d.ts +2 -1
  465. package/lib-esm/redoc-lib/src/components/Fields/FieldDetail.js +1 -1
  466. package/lib-esm/redoc-lib/src/components/Fields/FieldDetails.js +1 -1
  467. package/lib-esm/redoc-lib/src/components/GenericChildrenSwitcher/GenericChildrenSwitcher.js +1 -1
  468. package/lib-esm/redoc-lib/src/components/Markdown/AdvancedMarkdown.js +1 -1
  469. package/lib-esm/redoc-lib/src/components/Markdown/styled.d.ts +6 -2
  470. package/lib-esm/redoc-lib/src/components/Markdown/styled.js +1 -1
  471. package/lib-esm/redoc-lib/src/components/MediaTypeSwitch/MediaTypesSwitch.js +1 -1
  472. package/lib-esm/redoc-lib/src/components/Operation/Operation.js +1 -1
  473. package/lib-esm/redoc-lib/src/components/Operation/index.d.ts +1 -0
  474. package/lib-esm/redoc-lib/src/components/Operation/index.js +2 -0
  475. package/lib-esm/redoc-lib/src/components/OperationItem/OperationItem.d.ts +7 -0
  476. package/lib-esm/redoc-lib/src/components/OperationItem/OperationItem.js +2 -0
  477. package/lib-esm/redoc-lib/src/components/OperationItem/index.d.ts +1 -0
  478. package/lib-esm/redoc-lib/src/components/OperationItem/index.js +2 -0
  479. package/lib-esm/redoc-lib/src/components/Parameters/Parameters.js +1 -1
  480. package/lib-esm/redoc-lib/src/components/Parameters/ParametersGroup.js +1 -1
  481. package/lib-esm/redoc-lib/src/components/PayloadSamples/Example.d.ts +1 -5
  482. package/lib-esm/redoc-lib/src/components/PayloadSamples/Example.js +1 -1
  483. package/lib-esm/redoc-lib/src/components/PayloadSamples/ExampleValue.d.ts +1 -8
  484. package/lib-esm/redoc-lib/src/components/PayloadSamples/MediaTypeSamples.d.ts +2 -7
  485. package/lib-esm/redoc-lib/src/components/PayloadSamples/MediaTypeSamples.js +1 -1
  486. package/lib-esm/redoc-lib/src/components/PayloadSamples/PayloadSamples.d.ts +1 -7
  487. package/lib-esm/redoc-lib/src/components/PayloadSamples/PayloadSamples.js +1 -1
  488. package/lib-esm/redoc-lib/src/components/PayloadSamples/index.d.ts +5 -0
  489. package/lib-esm/redoc-lib/src/components/PayloadSamples/index.js +2 -0
  490. package/lib-esm/redoc-lib/src/components/PayloadSamples/styled.js +1 -1
  491. package/lib-esm/redoc-lib/src/components/PayloadSamples/types.d.ts +23 -0
  492. package/lib-esm/redoc-lib/src/components/PayloadSamples/types.js +2 -0
  493. package/lib-esm/redoc-lib/src/components/PayloadSamples/{exernalExampleHook.d.ts → useExternalExample.d.ts} +0 -0
  494. package/lib-esm/redoc-lib/src/components/PayloadSamples/{exernalExampleHook.js → useExternalExample.js} +1 -1
  495. package/lib-esm/redoc-lib/src/components/RenderHook.d.ts +1 -1
  496. package/lib-esm/redoc-lib/src/components/RenderHook.js +1 -1
  497. package/lib-esm/redoc-lib/src/components/RequestSamples/CodeSample.js +1 -1
  498. package/lib-esm/redoc-lib/src/components/RequestSamples/RequestSamples.d.ts +1 -1
  499. package/lib-esm/redoc-lib/src/components/RequestSamples/RequestSamples.js +1 -1
  500. package/lib-esm/redoc-lib/src/components/RequestSamples/languageSwitchEvent.d.ts +1 -1
  501. package/lib-esm/redoc-lib/src/components/ResponseSamples/ResponseSamples.js +1 -1
  502. package/lib-esm/redoc-lib/src/components/Responses/Response.d.ts +2 -5
  503. package/lib-esm/redoc-lib/src/components/Responses/Response.js +1 -1
  504. package/lib-esm/redoc-lib/src/components/Responses/ResponseDetails.d.ts +3 -8
  505. package/lib-esm/redoc-lib/src/components/Responses/ResponseDetails.js +1 -1
  506. package/lib-esm/redoc-lib/src/components/Responses/ResponseHeaders.d.ts +3 -9
  507. package/lib-esm/redoc-lib/src/components/Responses/ResponseHeaders.js +1 -1
  508. package/lib-esm/redoc-lib/src/components/Responses/ResponseSummary.d.ts +1 -5
  509. package/lib-esm/redoc-lib/src/components/Responses/ResponseSummary.js +1 -1
  510. package/lib-esm/redoc-lib/src/components/Responses/ResponsesList.d.ts +3 -8
  511. package/lib-esm/redoc-lib/src/components/Responses/ResponsesList.js +1 -1
  512. package/lib-esm/redoc-lib/src/components/Responses/index.d.ts +1 -0
  513. package/lib-esm/redoc-lib/src/components/Responses/index.js +2 -0
  514. package/lib-esm/redoc-lib/src/components/Responses/{styled.elements.d.ts → styled.d.ts} +1 -0
  515. package/lib-esm/redoc-lib/src/components/Responses/styled.js +2 -0
  516. package/lib-esm/redoc-lib/src/components/Responses/types.d.ts +12 -0
  517. package/lib-esm/redoc-lib/src/components/Responses/types.js +2 -0
  518. package/lib-esm/redoc-lib/src/components/Schema/DiscriminatorDropdown.js +1 -1
  519. package/lib-esm/redoc-lib/src/components/Schema/ObjectSchema.d.ts +1 -1
  520. package/lib-esm/redoc-lib/src/components/Schema/ObjectSchema.js +1 -1
  521. package/lib-esm/redoc-lib/src/components/Schema/OneOfSchema.js +1 -1
  522. package/lib-esm/redoc-lib/src/components/Schema/RecursiveSchema.d.ts +3 -0
  523. package/lib-esm/redoc-lib/src/components/Schema/RecursiveSchema.js +2 -0
  524. package/lib-esm/redoc-lib/src/components/Schema/Schema.js +1 -1
  525. package/lib-esm/redoc-lib/src/components/Schema/types.d.ts +0 -1
  526. package/lib-esm/redoc-lib/src/components/SchemaDefinition/SchemaDefinition.js +1 -1
  527. package/lib-esm/redoc-lib/src/components/SearchBox/SearchBox.d.ts +1 -1
  528. package/lib-esm/redoc-lib/src/components/SearchBox/styled.js +1 -1
  529. package/lib-esm/redoc-lib/src/components/SectionItem/SectionItem.d.ts +7 -0
  530. package/lib-esm/redoc-lib/src/components/SectionItem/SectionItem.js +2 -0
  531. package/lib-esm/redoc-lib/src/components/SectionItem/index.d.ts +1 -0
  532. package/lib-esm/redoc-lib/src/components/SectionItem/index.js +2 -0
  533. package/lib-esm/redoc-lib/src/components/SecurityRequirement/RequiredScopesRow.js +1 -1
  534. package/lib-esm/redoc-lib/src/components/SecurityRequirement/SecurityDefs.js +1 -1
  535. package/lib-esm/redoc-lib/src/components/SecurityRequirement/SecurityRequirement.js +1 -1
  536. package/lib-esm/redoc-lib/src/components/SecurityRequirement/SecurityRequirementElement.js +1 -1
  537. package/lib-esm/redoc-lib/src/components/SecurityRequirement/SecurityRequirementPanelDescription.js +1 -1
  538. package/lib-esm/redoc-lib/src/components/SecuritySchemes/SecuritySchemes.js +1 -1
  539. package/lib-esm/redoc-lib/src/components/SecuritySchemes/helpers.d.ts +4 -0
  540. package/lib-esm/redoc-lib/src/components/SeeMore/SeeMore.js +1 -1
  541. package/lib-esm/redoc-lib/src/components/SideMenu/MenuItem.js +1 -1
  542. package/lib-esm/redoc-lib/src/components/SideMenu/MenuItems.js +1 -1
  543. package/lib-esm/redoc-lib/src/components/SideMenu/styled.elements.js +1 -1
  544. package/lib-esm/redoc-lib/src/components/SourceCodeWithFile/SourceCodeWithFile.js +1 -1
  545. package/lib-esm/redoc-lib/src/components/StickySidebar/StickyResponsiveSidebar.d.ts +1 -1
  546. package/lib-esm/redoc-lib/src/components/StickySidebar/StickyResponsiveSidebar.js +1 -1
  547. package/lib-esm/redoc-lib/src/components/index.d.ts +5 -4
  548. package/lib-esm/redoc-lib/src/components/index.js +1 -1
  549. package/lib-esm/redoc-lib/src/services/MarkdownRenderer.js +1 -1
  550. package/lib-esm/redoc-lib/src/services/MenuBuilder.d.ts +1 -1
  551. package/lib-esm/redoc-lib/src/services/MenuBuilder.js +1 -1
  552. package/lib-esm/redoc-lib/src/services/OpenAPIParser.d.ts +9 -12
  553. package/lib-esm/redoc-lib/src/services/OpenAPIParser.js +1 -1
  554. package/lib-esm/redoc-lib/src/services/RedocNormalizedOptions.d.ts +7 -0
  555. package/lib-esm/redoc-lib/src/services/RedocNormalizedOptions.js +1 -1
  556. package/lib-esm/redoc-lib/src/services/SearchStore.js +1 -1
  557. package/lib-esm/redoc-lib/src/services/models/Callback.js +1 -1
  558. package/lib-esm/redoc-lib/src/services/models/Example.js +1 -1
  559. package/lib-esm/redoc-lib/src/services/models/Field.d.ts +1 -1
  560. package/lib-esm/redoc-lib/src/services/models/Field.js +1 -1
  561. package/lib-esm/redoc-lib/src/services/models/MediaContent.d.ts +1 -1
  562. package/lib-esm/redoc-lib/src/services/models/MediaContent.js +1 -1
  563. package/lib-esm/redoc-lib/src/services/models/MediaType.d.ts +2 -2
  564. package/lib-esm/redoc-lib/src/services/models/MediaType.js +1 -1
  565. package/lib-esm/redoc-lib/src/services/models/Operation.d.ts +3 -2
  566. package/lib-esm/redoc-lib/src/services/models/Operation.js +1 -1
  567. package/lib-esm/redoc-lib/src/services/models/RequestBody.d.ts +1 -1
  568. package/lib-esm/redoc-lib/src/services/models/RequestBody.js +1 -1
  569. package/lib-esm/redoc-lib/src/services/models/Response.d.ts +1 -1
  570. package/lib-esm/redoc-lib/src/services/models/Response.js +1 -1
  571. package/lib-esm/redoc-lib/src/services/models/Schema.d.ts +4 -5
  572. package/lib-esm/redoc-lib/src/services/models/Schema.js +1 -1
  573. package/lib-esm/redoc-lib/src/services/models/SecurityRequirement.js +1 -1
  574. package/lib-esm/redoc-lib/src/services/models/SecuritySchemes.js +1 -1
  575. package/lib-esm/redoc-lib/src/services/models/Webhook.js +1 -1
  576. package/lib-esm/redoc-lib/src/services/types.d.ts +14 -2
  577. package/lib-esm/redoc-lib/src/types/open-api.d.ts +4 -0
  578. package/lib-esm/redoc-lib/src/utils/helpers.d.ts +3 -1
  579. package/lib-esm/redoc-lib/src/utils/helpers.js +1 -1
  580. package/lib-esm/redoc-lib/src/utils/openapi.d.ts +3 -2
  581. package/lib-esm/redoc-lib/src/utils/openapi.js +1 -1
  582. package/lib-esm/redoc-lib/src/utils/string.d.ts +1 -0
  583. package/lib-esm/redoc-lib/src/utils/string.js +2 -0
  584. package/lib-esm/redoc-lib/src/utils/theme-helpers.js +1 -1
  585. package/lib-esm/services/OAuth2.d.ts +4 -2
  586. package/lib-esm/services/OAuth2.js +1 -1
  587. package/lib-esm/services/OpenIDConnect.d.ts +1 -1
  588. package/lib-esm/services/ProMenu.js +1 -1
  589. package/lib-esm/services/ProStore.d.ts +6 -6
  590. package/lib-esm/services/ProStore.js +1 -1
  591. package/lib-esm/services/SearchStore.d.ts +1 -1
  592. package/lib-esm/services/VersionedSpecStore.d.ts +1 -1
  593. package/lib-esm/services/code-samples/generator.d.ts +1 -0
  594. package/lib-esm/services/code-samples/generator.js +1 -1
  595. package/lib-esm/services/code-samples/httpsnippet/index.js +1 -1
  596. package/lib-esm/services/code-samples/httpsnippet/targets/csharp/httpclient.js +1 -1
  597. package/lib-esm/services/code-samples/httpsnippet/targets/java8/apachehttp.js +1 -1
  598. package/lib-esm/services/code-samples/httpsnippet/targets/javascript/fetch.js +1 -1
  599. package/lib-esm/services/code-samples/httpsnippet/targets/node/fetch.js +1 -1
  600. package/lib-esm/services/code-samples/httpsnippet/targets/python/requests.js +1 -1
  601. package/lib-esm/services/utils.d.ts +2 -0
  602. package/lib-esm/services/utils.js +1 -1
  603. package/lib-esm/standalone.d.ts +1 -1
  604. package/lib-esm/standalone.js +1 -1
  605. package/lib-esm/types.d.ts +11 -0
  606. package/lib-esm/utils.d.ts +3 -13
  607. package/lib-esm/utils.js +1 -1
  608. package/package.json +13 -52
  609. package/lib/components/Endpoint/CopyLink.d.ts +0 -1
  610. package/lib/components/Endpoint/CopyLink.js +0 -2
  611. package/lib/components/Endpoint/Path.d.ts +0 -4
  612. package/lib/components/Endpoint/Path.js +0 -2
  613. package/lib/components/Endpoint/ServerItem.d.ts +0 -1
  614. package/lib/components/Endpoint/ServerItem.js +0 -2
  615. package/lib/components/Endpoint/ServerUrl.d.ts +0 -1
  616. package/lib/components/Endpoint/ServerUrl.js +0 -2
  617. package/lib/components/Panel/CallbackPanel.d.ts +0 -1
  618. package/lib/components/Panel/CallbackPanel.js +0 -2
  619. package/lib/components/Panel/DarkHeader.d.ts +0 -1
  620. package/lib/components/Panel/DarkHeader.js +0 -2
  621. package/lib/components/Panel/Header.d.ts +0 -4
  622. package/lib/components/Panel/Header.js +0 -2
  623. package/lib/components/Panel/Panel.d.ts +0 -2
  624. package/lib/components/Panel/Panel.js +0 -2
  625. package/lib/components/Panel/PanelBody.d.ts +0 -4
  626. package/lib/components/Panel/PanelBody.js +0 -2
  627. package/lib/components/Panel/PanelComponent.d.ts +0 -17
  628. package/lib/components/Panel/PanelComponent.js +0 -2
  629. package/lib/components/Panel/ScrollableContentPanel.d.ts +0 -1
  630. package/lib/components/Panel/ScrollableContentPanel.js +0 -2
  631. package/lib/components/Panel/Title.d.ts +0 -1
  632. package/lib/components/Panel/Title.js +0 -2
  633. package/lib/components/console/RequestBody.d.ts +0 -12
  634. package/lib/components/console/RequestBody.js +0 -2
  635. package/lib/components/console/ServerDropdown.d.ts +0 -24
  636. package/lib/components/console/ServerDropdown.js +0 -2
  637. package/lib/components/shared/SelectOnClick.d.ts +0 -6
  638. package/lib/components/shared/SelectOnClick.js +0 -2
  639. package/lib/redoc-lib/src/components/Responses/styled.elements.js +0 -2
  640. package/lib-esm/components/Endpoint/CopyLink.d.ts +0 -1
  641. package/lib-esm/components/Endpoint/CopyLink.js +0 -2
  642. package/lib-esm/components/Endpoint/Path.d.ts +0 -4
  643. package/lib-esm/components/Endpoint/Path.js +0 -2
  644. package/lib-esm/components/Endpoint/ServerItem.d.ts +0 -1
  645. package/lib-esm/components/Endpoint/ServerItem.js +0 -2
  646. package/lib-esm/components/Endpoint/ServerUrl.d.ts +0 -1
  647. package/lib-esm/components/Endpoint/ServerUrl.js +0 -2
  648. package/lib-esm/components/Panel/CallbackPanel.d.ts +0 -1
  649. package/lib-esm/components/Panel/CallbackPanel.js +0 -2
  650. package/lib-esm/components/Panel/DarkHeader.d.ts +0 -1
  651. package/lib-esm/components/Panel/DarkHeader.js +0 -2
  652. package/lib-esm/components/Panel/Header.d.ts +0 -4
  653. package/lib-esm/components/Panel/Header.js +0 -2
  654. package/lib-esm/components/Panel/Panel.d.ts +0 -2
  655. package/lib-esm/components/Panel/Panel.js +0 -2
  656. package/lib-esm/components/Panel/PanelBody.d.ts +0 -4
  657. package/lib-esm/components/Panel/PanelBody.js +0 -2
  658. package/lib-esm/components/Panel/PanelComponent.d.ts +0 -17
  659. package/lib-esm/components/Panel/PanelComponent.js +0 -2
  660. package/lib-esm/components/Panel/ScrollableContentPanel.d.ts +0 -1
  661. package/lib-esm/components/Panel/ScrollableContentPanel.js +0 -2
  662. package/lib-esm/components/Panel/Title.d.ts +0 -1
  663. package/lib-esm/components/Panel/Title.js +0 -2
  664. package/lib-esm/components/console/RequestBody.d.ts +0 -12
  665. package/lib-esm/components/console/RequestBody.js +0 -2
  666. package/lib-esm/components/console/ServerDropdown.d.ts +0 -24
  667. package/lib-esm/components/console/ServerDropdown.js +0 -2
  668. package/lib-esm/components/shared/SelectOnClick.d.ts +0 -6
  669. package/lib-esm/components/shared/SelectOnClick.js +0 -2
  670. package/lib-esm/redoc-lib/src/components/Responses/styled.elements.js +0 -2
@@ -1,2 +1,2 @@
1
- import{__makeTemplateObject}from"tslib";import styled from"styled-components";import{TabList}from"../TabList";export var CollapsingTabList=styled(TabList)(templateObject_1||(templateObject_1=__makeTemplateObject(["\n border-bottom: 4px solid var(--global-border-color-secondary);\n margin: 0 0 10px;\n"],["\n border-bottom: 4px solid var(--global-border-color-secondary);\n margin: 0 0 10px;\n"])));var templateObject_1;
1
+ import{__makeTemplateObject}from"tslib";import styled from"styled-components";import{TabList}from"../TabList";export var CollapsingTabList=styled(TabList)(templateObject_1||(templateObject_1=__makeTemplateObject(["\n margin: 0 0 10px;\n"],["\n margin: 0 0 10px;\n"])));var templateObject_1;
2
2
  //# sourceMappingURL=CollapsingTabList.js.map
@@ -14,5 +14,5 @@ interface CollapsingTabsComponentProps extends TabsProps {
14
14
  activeIndex: number;
15
15
  onChange: (idx: number) => void;
16
16
  }
17
- export declare const CollapsingTabsBase: ({ tabs, children, hidden, activeIndex, onChange, }: CollapsingTabsComponentProps) => JSX.Element;
17
+ export declare const CollapsingTabsBase: React.NamedExoticComponent<CollapsingTabsComponentProps>;
18
18
  export {};
@@ -1,2 +1,2 @@
1
- import React,{useContext,useEffect,useMemo,useState}from"react";import{Tabs}from"react-tabs";import{OptionsContext}from"../../../redoc-lib";import{CollapsingDropdown}from"../../common/Dropdown";import{CollapsingTabList}from"./CollapsingTabList";import{CollapsingTab}from"./CollapsingTab";export var CollapsingTabsBase=function(e){var t=e.tabs,n=e.children,o=e.hidden,a=e.activeIndex,i=e.onChange,l=useContext(OptionsContext).samplesTabsMaxCount,r=useMemo((function(){return t.slice(l).map((function(e,t){return{idx:t,value:e.title}}))}),[t,l]),s=r.length+" more",c=useState(s),p=c[0],m=c[1],u=React.useCallback((function(){var e=a>=l;p!==s&&p===t[a].title||!e?p===s||e||m(s):m(t[a].title)}),[a,l,p,s,t]);useEffect((function(){setTimeout(u,0)}),[a,l,u]);return React.createElement(Tabs,{selectedIndex:a,onSelect:i},React.createElement(CollapsingTabList,{hidden:o},t.map((function(e,t){return React.createElement(CollapsingTab,{key:e.key,disabled:t>=l},e.title)})),r.length?React.createElement(CollapsingDropdown,{options:r,onChange:function(e){i(l+e.idx)},placeholder:s,value:p,active:a>=l}):null),n)};
1
+ import React,{memo,useContext,useEffect,useMemo,useState}from"react";import{Tabs}from"react-tabs";import{OptionsContext}from"../../../redoc-lib";import{CollapsingDropdown}from"../../common/Dropdown";import{CollapsingTabList}from"./CollapsingTabList";import{CollapsingTab}from"./CollapsingTab";function CollapsingTabsBaseComponent(e){var t=e.tabs,o=e.children,n=e.hidden,a=e.activeIndex,l=e.onChange,i=useContext(OptionsContext).samplesTabsMaxCount,s=useMemo((function(){return t.slice(i).map((function(e,t){return{idx:t,value:e.title}}))}),[t,i]),r=s.length+" more",c=useState(r),m=c[0],p=c[1],u=React.useCallback((function(){var e=a>=i;m!==r&&m===t[a].title||!e?m===r||e||p(r):p(t[a].title)}),[a,i,m,r,t]);useEffect((function(){setTimeout(u,0)}),[a,i,u]);return React.createElement(Tabs,{selectedIndex:a,onSelect:l},React.createElement(CollapsingTabList,{hidden:n},t.map((function(e,t){return React.createElement(CollapsingTab,{key:e.key,disabled:t>=i},e.title)})),s.length?React.createElement(CollapsingDropdown,{options:s,onChange:function(e){l(i+e.idx)},placeholder:r,value:m,active:a>=i}):null),o)}export var CollapsingTabsBase=memo(CollapsingTabsBaseComponent);
2
2
  //# sourceMappingURL=CollapsingTabsBase.js.map
@@ -1,2 +1,2 @@
1
- import{__makeTemplateObject}from"tslib";import{Tab as ReactTab}from"react-tabs";import styled from"styled-components";export var Tab=styled(ReactTab)(templateObject_1||(templateObject_1=__makeTemplateObject(["\n flex: 1;\n cursor: pointer;\n padding: 5px 10px;\n font-size: 14px;\n line-height: 26px;\n font-weight: 400;\n text-align: center;\n color: var(--color-content-inverse);\n background-color: var(--samples-panel-background-color);\n\n &.react-tabs__tab--selected {\n background-color: var(--samples-panel-controls-background-color);\n border-bottom: 4px solid var(--samples-panel-controls-active-border-color);\n margin-bottom: -4px;\n }\n\n &:first-child {\n border-top-left-radius: var(--global-border-radius);\n }\n\n &:last-child {\n border-top-right-radius: var(--global-border-radius);\n }\n"],["\n flex: 1;\n cursor: pointer;\n padding: 5px 10px;\n font-size: 14px;\n line-height: 26px;\n font-weight: 400;\n text-align: center;\n color: var(--color-content-inverse);\n background-color: var(--samples-panel-background-color);\n\n &.react-tabs__tab--selected {\n background-color: var(--samples-panel-controls-background-color);\n border-bottom: 4px solid var(--samples-panel-controls-active-border-color);\n margin-bottom: -4px;\n }\n\n &:first-child {\n border-top-left-radius: var(--global-border-radius);\n }\n\n &:last-child {\n border-top-right-radius: var(--global-border-radius);\n }\n"])));var templateObject_1;
1
+ import{__makeTemplateObject}from"tslib";import{Tab as ReactTab}from"react-tabs";import styled from"styled-components";export var Tab=styled(ReactTab)(templateObject_1||(templateObject_1=__makeTemplateObject(["\n flex: 1;\n cursor: pointer;\n padding: 5px 10px;\n font-size: var(--panel-samples-tabs-font-size);\n line-height: 26px;\n font-weight: var(--panel-samples-tabs-font-weight);\n text-align: center;\n color: var(--panel-samples-tabs-text-color);\n background-color: var(--panel-samples-tabs-background-color);\n border-bottom: 4px solid var(--panel-samples-tabs-border-color);\n margin-bottom: -4px;\n\n &.react-tabs__tab--selected {\n background-color: var(--panel-samples-tabs-active-background-color);\n border-color: var(--panel-samples-tabs-active-border-color);\n }\n\n &:hover {\n border-color: var(--panel-samples-tabs-hover-border-color);\n background-color: var(--panel-samples-tabs-hover-background-color);\n }\n\n &:first-child {\n border-top-left-radius: var(--border-radius);\n }\n\n &:last-child {\n border-top-right-radius: var(--border-radius);\n }\n"],["\n flex: 1;\n cursor: pointer;\n padding: 5px 10px;\n font-size: var(--panel-samples-tabs-font-size);\n line-height: 26px;\n font-weight: var(--panel-samples-tabs-font-weight);\n text-align: center;\n color: var(--panel-samples-tabs-text-color);\n background-color: var(--panel-samples-tabs-background-color);\n border-bottom: 4px solid var(--panel-samples-tabs-border-color);\n margin-bottom: -4px;\n\n &.react-tabs__tab--selected {\n background-color: var(--panel-samples-tabs-active-background-color);\n border-color: var(--panel-samples-tabs-active-border-color);\n }\n\n &:hover {\n border-color: var(--panel-samples-tabs-hover-border-color);\n background-color: var(--panel-samples-tabs-hover-background-color);\n }\n\n &:first-child {\n border-top-left-radius: var(--border-radius);\n }\n\n &:last-child {\n border-top-right-radius: var(--border-radius);\n }\n"])));var templateObject_1;
2
2
  //# sourceMappingURL=Tab.js.map
@@ -1,6 +1,6 @@
1
- import type { ChangeEvent } from 'react';
2
1
  import React from 'react';
3
2
  import type { FieldContext } from 'informed';
3
+ import type { ChangeEvent } from 'react';
4
4
  declare type FieldValue = string[];
5
5
  interface CheckboxListComponentState {
6
6
  collapsed: boolean;
@@ -1,2 +1,2 @@
1
- import{__extends,__makeTemplateObject,__spreadArray}from"tslib";import React from"react";import styled from"styled-components";import{asField}from"informed";import{SampleControls,SamplesControlButton}from"@redocly/theme";import{FormError}from"./form";import{Checkbox}from"./Checkbox";var DEFAULT_MAX_ITEMS=11,CheckboxListComponent=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:{collapsed:!0}}),t}return __extends(t,e),Object.defineProperty(t.prototype,"onCheckBoxClick",{enumerable:!1,configurable:!0,writable:!0,value:function(e){var t=e.target.value,l=e.target.checked;this.props.fieldApi.setTouched(!0);var r,o=this.props.fieldApi.getValue()||[];if(l)r=__spreadArray(__spreadArray([],o,!0),[t],!1);else{var a=o.indexOf(t);r=__spreadArray(__spreadArray([],o.slice(0,a),!0),o.slice(a+1),!0)}this.props.fieldApi.setValue(r)}}),Object.defineProperty(t.prototype,"isFieldChecked",{enumerable:!1,configurable:!0,writable:!0,value:function(e){return this.props.fieldApi.getValue().includes(e)}}),Object.defineProperty(t.prototype,"toggle",{enumerable:!1,configurable:!0,writable:!0,value:function(){this.setState({collapsed:!this.state.collapsed})}}),Object.defineProperty(t.prototype,"selectAll",{enumerable:!1,configurable:!0,writable:!0,value:function(){this.props.fieldApi.setValue(this.props.items)}}),Object.defineProperty(t.prototype,"clearAll",{enumerable:!1,configurable:!0,writable:!0,value:function(){this.props.fieldApi.setValue([])}}),Object.defineProperty(t.prototype,"render",{enumerable:!1,configurable:!0,writable:!0,value:function(){var e=this,t=this.props,l=t.items,r=t.fieldApi,o=t.validateOnChange,a=t.maxDisplayedItems,n=t.showControls,i=t.trimItemsLength,c=this.state.collapsed,p=r.getError(),s=a||DEFAULT_MAX_ITEMS,m=i&&this.state.collapsed?l.slice(0,s):l;return React.createElement("div",null,n?React.createElement(ControlButtonsWrapper,null,React.createElement(SamplesControlButton,{onClick:function(){e.selectAll()}},"Select all"),React.createElement(SamplesControlButton,{onClick:function(){e.clearAll()}},"Clear")):null,React.createElement("div",null,m.map((function(t){return React.createElement(Checkbox,{fullWidth:!0,id:t,value:t,checked:e.isFieldChecked(t),label:t,key:t,onChange:function(t){e.onCheckBoxClick(t),o&&r.validate()}})})),l.length>s&&i?React.createElement(ToggleButton,{onClick:function(){e.toggle()}},c?"Show all":"Collapse"):null),p?React.createElement(FormError,null,p):"")}}),t}(React.Component);export{CheckboxListComponent};export var CheckboxList=asField(CheckboxListComponent);var templateObject_1,templateObject_2,ControlButtonsWrapper=styled(SampleControls)(templateObject_1||(templateObject_1=__makeTemplateObject(["\n opacity: 1;\n text-align: left;\n"],["\n opacity: 1;\n text-align: left;\n"]))),ToggleButton=styled(SamplesControlButton)(templateObject_2||(templateObject_2=__makeTemplateObject(["\n float: right;\n"],["\n float: right;\n"])));
1
+ import{__extends,__makeTemplateObject,__spreadArray}from"tslib";import React from"react";import styled from"styled-components";import{asField}from"informed";import{SampleControls,SamplesControlButton}from"@redocly/theme/SamplesPanelControls";import{FormError}from"./form";import{Checkbox}from"./Checkbox";var DEFAULT_MAX_ITEMS=11,CheckboxListComponent=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:{collapsed:!0}}),t}return __extends(t,e),Object.defineProperty(t.prototype,"onCheckBoxClick",{enumerable:!1,configurable:!0,writable:!0,value:function(e){var t=e.target.value,l=e.target.checked;this.props.fieldApi.setTouched(!0);var r,o=this.props.fieldApi.getValue()||[];if(l)r=__spreadArray(__spreadArray([],o,!0),[t],!1);else{var a=o.indexOf(t);r=__spreadArray(__spreadArray([],o.slice(0,a),!0),o.slice(a+1),!0)}this.props.fieldApi.setValue(r)}}),Object.defineProperty(t.prototype,"isFieldChecked",{enumerable:!1,configurable:!0,writable:!0,value:function(e){return this.props.fieldApi.getValue().includes(e)}}),Object.defineProperty(t.prototype,"toggle",{enumerable:!1,configurable:!0,writable:!0,value:function(){this.setState({collapsed:!this.state.collapsed})}}),Object.defineProperty(t.prototype,"selectAll",{enumerable:!1,configurable:!0,writable:!0,value:function(){this.props.fieldApi.setValue(this.props.items)}}),Object.defineProperty(t.prototype,"clearAll",{enumerable:!1,configurable:!0,writable:!0,value:function(){this.props.fieldApi.setValue([])}}),Object.defineProperty(t.prototype,"render",{enumerable:!1,configurable:!0,writable:!0,value:function(){var e=this,t=this.props,l=t.items,r=t.fieldApi,o=t.validateOnChange,a=t.maxDisplayedItems,n=t.showControls,i=t.trimItemsLength,c=this.state.collapsed,p=r.getError(),s=a||DEFAULT_MAX_ITEMS,m=i&&this.state.collapsed?l.slice(0,s):l;return React.createElement("div",null,n?React.createElement(ControlButtonsWrapper,null,React.createElement(SamplesControlButton,{onClick:function(){e.selectAll()}},"Select all"),React.createElement(SamplesControlButton,{onClick:function(){e.clearAll()}},"Clear")):null,React.createElement("div",null,m.map((function(t){return React.createElement(Checkbox,{fullWidth:!0,id:t,value:t,checked:e.isFieldChecked(t),label:t,key:t,onChange:function(t){e.onCheckBoxClick(t),o&&r.validate()}})})),l.length>s&&i?React.createElement(ToggleButton,{onClick:function(){e.toggle()}},c?"Show all":"Collapse"):null),p?React.createElement(FormError,null,p):"")}}),t}(React.Component);export{CheckboxListComponent};export var CheckboxList=asField(CheckboxListComponent);var templateObject_1,templateObject_2,ControlButtonsWrapper=styled(SampleControls)(templateObject_1||(templateObject_1=__makeTemplateObject(["\n opacity: 1;\n text-align: left;\n"],["\n opacity: 1;\n text-align: left;\n"]))),ToggleButton=styled(SamplesControlButton)(templateObject_2||(templateObject_2=__makeTemplateObject(["\n float: right;\n"],["\n float: right;\n"])));
2
2
  //# sourceMappingURL=CheckboxList.js.map
@@ -1,24 +1,28 @@
1
1
  /// <reference types="react" />
2
2
  import type { DropdownProps } from './types';
3
3
  export declare const Dropdown: import("styled-components").StyledComponent<import("react").NamedExoticComponent<DropdownProps>, any, DropdownProps & {
4
- dense?: boolean | undefined;
5
4
  fullWidth?: boolean | undefined;
6
5
  variant?: "dark" | "light" | undefined;
7
6
  }, never>;
8
7
  export declare const SimpleDropdown: import("styled-components").StyledComponent<import("react").NamedExoticComponent<DropdownProps>, any, DropdownProps & {
9
- dense?: boolean | undefined;
10
8
  fullWidth?: boolean | undefined;
11
9
  variant?: "dark" | "light" | undefined;
12
10
  }, never>;
13
11
  export declare const CollapsingDropdown: import("styled-components").StyledComponent<import("react").NamedExoticComponent<DropdownProps>, any, DropdownProps & {
14
- dense?: boolean | undefined;
15
12
  fullWidth?: boolean | undefined;
16
13
  variant?: "dark" | "light" | undefined;
17
14
  } & {
18
15
  active?: boolean | undefined;
19
16
  }, never>;
20
17
  export declare const VersionDropdown: import("styled-components").StyledComponent<import("react").NamedExoticComponent<DropdownProps>, any, DropdownProps & {
21
- dense?: boolean | undefined;
18
+ fullWidth?: boolean | undefined;
19
+ variant?: "dark" | "light" | undefined;
20
+ }, never>;
21
+ export declare const SchemaDiscriminatorDropdown: import("styled-components").StyledComponent<import("react").NamedExoticComponent<DropdownProps>, any, DropdownProps & {
22
+ fullWidth?: boolean | undefined;
23
+ variant?: "dark" | "light" | undefined;
24
+ }, never>;
25
+ export declare const SchemaMimeTypeDropdown: import("styled-components").StyledComponent<import("react").NamedExoticComponent<DropdownProps>, any, DropdownProps & {
22
26
  fullWidth?: boolean | undefined;
23
27
  variant?: "dark" | "light" | undefined;
24
28
  }, never>;
@@ -1,2 +1,2 @@
1
- import{__makeTemplateObject}from"tslib";import styled,{css}from"styled-components";import{Dropdown as DropdownComponent}from"./Dropdown";var templateObject_1,templateObject_2,templateObject_3,templateObject_4,templateObject_5,darkDropdownStyle=css(templateObject_1||(templateObject_1=__makeTemplateObject(["\n background-color: var(--samples-panel-controls-background-color);\n border-color: var(--samples-panel-controls-background-color);\n color: var(--color-content-inverse);\n\n &,\n &:hover,\n &:focus-within {\n border: none;\n box-shadow: none;\n }\n"],["\n background-color: var(--samples-panel-controls-background-color);\n border-color: var(--samples-panel-controls-background-color);\n color: var(--color-content-inverse);\n\n &,\n &:hover,\n &:focus-within {\n border: none;\n box-shadow: none;\n }\n"])));export var Dropdown=styled(DropdownComponent)(templateObject_2||(templateObject_2=__makeTemplateObject(["\n box-sizing: border-box;\n outline: none;\n display: inline-block;\n border-radius: var(--global-border-radius);\n vertical-align: bottom;\n position: relative;\n width: ",";\n cursor: pointer;\n text-transform: none;\n\n label {\n box-sizing: border-box;\n min-width: 90px;\n height: ",";\n outline: none;\n display: inline-block;\n color: var(--color-content);\n border-radius: var(--global-border-radius);\n padding: ",";\n vertical-align: bottom;\n width: ",";\n text-transform: none;\n line-height: inherit;\n font-size: 14px;\n font-family: inherit;\n text-overflow: ellipsis;\n overflow: hidden;\n white-space: nowrap;\n\n &,\n &:hover,\n &:focus-within {\n border: 1px solid var(--global-border-color);\n box-shadow: none;\n }\n\n ",";\n }\n\n .dropdown-select {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n opacity: 0;\n border: none;\n appearance: none;\n cursor: pointer;\n\n color: var(--color-content);\n line-height: inherit;\n font-size: 14px;\n font-family: inherit;\n padding: ",";\n ",";\n }\n"],["\n box-sizing: border-box;\n outline: none;\n display: inline-block;\n border-radius: var(--global-border-radius);\n vertical-align: bottom;\n position: relative;\n width: ",";\n cursor: pointer;\n text-transform: none;\n\n label {\n box-sizing: border-box;\n min-width: 90px;\n height: ",";\n outline: none;\n display: inline-block;\n color: var(--color-content);\n border-radius: var(--global-border-radius);\n padding: ",";\n vertical-align: bottom;\n width: ",";\n text-transform: none;\n line-height: inherit;\n font-size: 14px;\n font-family: inherit;\n text-overflow: ellipsis;\n overflow: hidden;\n white-space: nowrap;\n\n &,\n &:hover,\n &:focus-within {\n border: 1px solid var(--global-border-color);\n box-shadow: none;\n }\n\n ",";\n }\n\n .dropdown-select {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n opacity: 0;\n border: none;\n appearance: none;\n cursor: pointer;\n\n color: var(--color-content);\n line-height: inherit;\n font-size: 14px;\n font-family: inherit;\n padding: ",";\n ",";\n }\n"])),(function(n){return n.fullWidth?"100%":"auto"}),(function(n){return n.dense?"26px":"36px"}),(function(n){return n.dense?"2px 24px 2px 8px":"8px 26px 8px 10px"}),(function(n){return n.fullWidth?"100%":"auto"}),(function(n){return"dark"===n.variant?darkDropdownStyle:""}),(function(n){return n.dense?"2px 24px 2px 8px":"8px 26px 8px 10px"}),(function(n){return"dark"===n.variant?darkDropdownStyle:""}));export var SimpleDropdown=styled(Dropdown)(templateObject_3||(templateObject_3=__makeTemplateObject(["\n svg {\n top: 60%;\n transform: translateY(-60%);\n }\n label {\n padding: 0 26px 0 4px;\n border: none;\n background: transparent;\n font-size: 14px;\n font-weight: 400;\n appearance: none;\n height: auto;\n\n &:hover,\n &:focus-within {\n border: none;\n box-shadow: none;\n }\n }\n"],["\n svg {\n top: 60%;\n transform: translateY(-60%);\n }\n label {\n padding: 0 26px 0 4px;\n border: none;\n background: transparent;\n font-size: 14px;\n font-weight: 400;\n appearance: none;\n height: auto;\n\n &:hover,\n &:focus-within {\n border: none;\n box-shadow: none;\n }\n }\n"])));export var CollapsingDropdown=styled(Dropdown)(templateObject_4||(templateObject_4=__makeTemplateObject(["\n svg {\n top: 60%;\n transform: translateY(-60%);\n }\n label {\n ",";\n\n height: 40px;\n border-radius: 0 var(--global-border-radius) 0 0;\n margin: 0 0 -4px;\n transition: none;\n min-width: auto;\n background: ",";\n & {\n border-bottom: 4px solid\n ",";\n\n &[open],\n &:focus-within,\n &:hover {\n background: var(--global-border-color-secondary);\n border-bottom: 4px solid\n ",";\n }\n }\n }\n"],["\n svg {\n top: 60%;\n transform: translateY(-60%);\n }\n label {\n ",";\n\n height: 40px;\n border-radius: 0 var(--global-border-radius) 0 0;\n margin: 0 0 -4px;\n transition: none;\n min-width: auto;\n background: ",";\n & {\n border-bottom: 4px solid\n ",";\n\n &[open],\n &:focus-within,\n &:hover {\n background: var(--global-border-color-secondary);\n border-bottom: 4px solid\n ",";\n }\n }\n }\n"])),darkDropdownStyle,(function(n){return n.active?"var(--global-border-color-secondary)":"none"}),(function(n){return n.active?"var(--samples-panel-controls-active-border-color)":"transparent"}),(function(n){return n.active?"var(--samples-panel-controls-active-border-color)":"transparent"}));export var VersionDropdown=styled(Dropdown)(templateObject_5||(templateObject_5=__makeTemplateObject(["\n width: 90%;\n label {\n width: 100%;\n font-weight: 600;\n color: var(--color-content);\n }\n"],["\n width: 90%;\n label {\n width: 100%;\n font-weight: 600;\n color: var(--color-content);\n }\n"])));
1
+ import{__makeTemplateObject}from"tslib";import styled,{css}from"styled-components";import{Dropdown as DropdownComponent}from"./Dropdown";var templateObject_1,templateObject_2,templateObject_3,templateObject_4,templateObject_5,templateObject_6,templateObject_7,samplesDropdownStyle=css(templateObject_1||(templateObject_1=__makeTemplateObject(["\n background-color: var(--panel-samples-dropdown-background-color);\n border: var(--panel-samples-dropdown-border);\n color: var(--panel-samples-dropdown-color);\n\n &,\n &:hover,\n &:focus-within {\n border: none;\n box-shadow: none;\n }\n"],["\n background-color: var(--panel-samples-dropdown-background-color);\n border: var(--panel-samples-dropdown-border);\n color: var(--panel-samples-dropdown-color);\n\n &,\n &:hover,\n &:focus-within {\n border: none;\n box-shadow: none;\n }\n"])));export var Dropdown=styled(DropdownComponent)(templateObject_2||(templateObject_2=__makeTemplateObject(["\n box-sizing: border-box;\n outline: none;\n display: inline-block;\n border-radius: var(--border-radius);\n vertical-align: bottom;\n position: relative;\n width: ",";\n cursor: pointer;\n text-transform: none;\n\n label {\n box-sizing: border-box;\n min-width: 90px;\n height: 36px;\n outline: none;\n display: inline-block;\n color: var(--dropdown-text-color);\n border-radius: var(--border-radius);\n border: var(--dropdown-border);\n padding: var(--dropdown-padding);\n vertical-align: bottom;\n width: ",";\n text-transform: none;\n line-height: inherit;\n font-size: var(--dropdown-font-size);\n font-family: inherit;\n text-overflow: ellipsis;\n overflow: hidden;\n white-space: nowrap;\n\n &,\n &:hover,\n &:focus-within {\n border: 1px solid var(--border-color);\n box-shadow: none;\n }\n\n ",";\n }\n\n .dropdown-select {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n opacity: 0;\n border: none;\n appearance: none;\n cursor: pointer;\n\n color: var(--text-color);\n line-height: inherit;\n font-size: 14px;\n font-family: inherit;\n padding: var(--dropdown-padding);\n ",";\n }\n"],["\n box-sizing: border-box;\n outline: none;\n display: inline-block;\n border-radius: var(--border-radius);\n vertical-align: bottom;\n position: relative;\n width: ",";\n cursor: pointer;\n text-transform: none;\n\n label {\n box-sizing: border-box;\n min-width: 90px;\n height: 36px;\n outline: none;\n display: inline-block;\n color: var(--dropdown-text-color);\n border-radius: var(--border-radius);\n border: var(--dropdown-border);\n padding: var(--dropdown-padding);\n vertical-align: bottom;\n width: ",";\n text-transform: none;\n line-height: inherit;\n font-size: var(--dropdown-font-size);\n font-family: inherit;\n text-overflow: ellipsis;\n overflow: hidden;\n white-space: nowrap;\n\n &,\n &:hover,\n &:focus-within {\n border: 1px solid var(--border-color);\n box-shadow: none;\n }\n\n ",";\n }\n\n .dropdown-select {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n opacity: 0;\n border: none;\n appearance: none;\n cursor: pointer;\n\n color: var(--text-color);\n line-height: inherit;\n font-size: 14px;\n font-family: inherit;\n padding: var(--dropdown-padding);\n ",";\n }\n"])),(function(n){return n.fullWidth?"100%":"auto"}),(function(n){return n.fullWidth?"100%":"auto"}),(function(n){return"dark"===n.variant?samplesDropdownStyle:""}),(function(n){return"dark"===n.variant?samplesDropdownStyle:""}));export var SimpleDropdown=styled(Dropdown)(templateObject_3||(templateObject_3=__makeTemplateObject(["\n svg {\n top: 60%;\n transform: translateY(-60%);\n }\n label {\n padding: 0 26px 0 4px;\n border: none;\n background: transparent;\n font-size: 14px;\n font-weight: 400;\n appearance: none;\n height: auto;\n\n &:hover,\n &:focus-within {\n border: none;\n box-shadow: none;\n }\n }\n"],["\n svg {\n top: 60%;\n transform: translateY(-60%);\n }\n label {\n padding: 0 26px 0 4px;\n border: none;\n background: transparent;\n font-size: 14px;\n font-weight: 400;\n appearance: none;\n height: auto;\n\n &:hover,\n &:focus-within {\n border: none;\n box-shadow: none;\n }\n }\n"])));export var CollapsingDropdown=styled(Dropdown)(templateObject_4||(templateObject_4=__makeTemplateObject(["\n svg {\n top: 60%;\n transform: translateY(-60%);\n }\n label {\n ",";\n\n height: 40px;\n border-radius: 0 var(--border-radius) 0 0;\n margin: 0 0 -4px;\n transition: none;\n min-width: auto;\n background: ",";\n & {\n border-bottom: 4px solid\n ",";\n\n &[open],\n &:focus-within,\n &:hover {\n background: var(--border-color-secondary);\n border-bottom: 4px solid\n ",";\n }\n }\n }\n"],["\n svg {\n top: 60%;\n transform: translateY(-60%);\n }\n label {\n ",";\n\n height: 40px;\n border-radius: 0 var(--border-radius) 0 0;\n margin: 0 0 -4px;\n transition: none;\n min-width: auto;\n background: ",";\n & {\n border-bottom: 4px solid\n ",";\n\n &[open],\n &:focus-within,\n &:hover {\n background: var(--border-color-secondary);\n border-bottom: 4px solid\n ",";\n }\n }\n }\n"])),samplesDropdownStyle,(function(n){return n.active?"var(--panel-samples-tabs-active-background-color)":"none"}),(function(n){return n.active?"var(--panel-samples-tabs-active-border-color)":"transparent"}),(function(n){return n.active?"var( --panel-samples-tabs-active-border-color)":"transparent"}));export var VersionDropdown=styled(Dropdown)(templateObject_5||(templateObject_5=__makeTemplateObject(["\n width: 90%;\n label {\n width: 100%;\n font-weight: 600;\n color: var(--text-color);\n }\n"],["\n width: 90%;\n label {\n width: 100%;\n font-weight: 600;\n color: var(--text-color);\n }\n"])));export var SchemaDiscriminatorDropdown=styled(Dropdown)(templateObject_6||(templateObject_6=__makeTemplateObject(["\n .dropdown-select {\n padding: var(--schemas-discriminator-dropdown-padding);\n }\n\n label {\n height: 26px;\n padding: var(--schemas-discriminator-dropdown-padding);\n border: var(--schemas-discriminator-dropdown-border);\n font-size: var(--schemas-discriminator-font-size);\n color: var(--schemas-discriminator-dropdown-text-color);\n }\n"],["\n .dropdown-select {\n padding: var(--schemas-discriminator-dropdown-padding);\n }\n\n label {\n height: 26px;\n padding: var(--schemas-discriminator-dropdown-padding);\n border: var(--schemas-discriminator-dropdown-border);\n font-size: var(--schemas-discriminator-font-size);\n color: var(--schemas-discriminator-dropdown-text-color);\n }\n"])));export var SchemaMimeTypeDropdown=styled(SimpleDropdown)(templateObject_7||(templateObject_7=__makeTemplateObject(["\n label {\n padding: var(--schemas-mime-type-dropdown-padding);\n border: var(--schemas-mime-type-dropdown-border);\n font-size: var(--schemas-mime-type-dropdown-font-size);\n color: var(--schemas-mime-type-dropdown-text-color);\n }\n"],["\n label {\n padding: var(--schemas-mime-type-dropdown-padding);\n border: var(--schemas-mime-type-dropdown-border);\n font-size: var(--schemas-mime-type-dropdown-font-size);\n color: var(--schemas-mime-type-dropdown-text-color);\n }\n"])));
2
2
  //# sourceMappingURL=styled.js.map
@@ -1,9 +1,10 @@
1
1
  import * as React from 'react';
2
2
  import type { SchemaModel } from '../../../redoc-lib/src/services/models/Schema';
3
+ import type { UploadFileType } from '../../../models';
3
4
  export interface FileUploadProps {
4
5
  schema: SchemaModel | GenericObject;
5
6
  contentName: string;
6
- onChange(string: any, UploadFileType: any): void;
7
+ onChange(key: string, file: UploadFileType): void;
7
8
  name: string;
8
9
  }
9
- export declare const FileUpload: React.ForwardRefExoticComponent<React.InputHTMLAttributes<HTMLInputElement> & FileUploadProps & React.RefAttributes<HTMLInputElement>>;
10
+ export declare const FileUpload: React.ForwardRefExoticComponent<Omit<React.InputHTMLAttributes<HTMLInputElement>, "onChange"> & FileUploadProps & React.RefAttributes<HTMLInputElement>>;
@@ -1,2 +1,2 @@
1
- import{__assign,__awaiter,__generator,__rest}from"tslib";import*as React from"react";import{useField}from"informed";import{getFileToUpload}from"./helper";export var FileUpload=React.forwardRef((function(e,a){var t=__rest(e,[]),r=t.schema,i=t.contentName,n=t.onChange,o=t.name;return(0,useField(__assign({field:o},t)).render)(React.createElement("input",{"data-cy":"file-upload-input",type:"file",id:t.id,className:t.className,name:t.name,onChange:function(e){return __awaiter(void 0,void 0,void 0,(function(){var a;return __generator(this,(function(t){switch(t.label){case 0:return[4,getFileToUpload(e.target.files,r)];case 1:return a=t.sent(),n(i,a),[2]}}))}))},multiple:t.multiple,accept:t.accept,ref:a}))}));FileUpload.displayName="FileUpload";
1
+ import{__assign,__awaiter,__generator,__rest}from"tslib";import*as React from"react";import{useField}from"informed";import{getFileToUpload}from"./helper";export var FileUpload=React.forwardRef((function(e,a){var t=__rest(e,[]),r=t.schema,i=t.contentName,n=t.onChange,o=t.name,l=__rest(t,["schema","contentName","onChange","name"]);return(0,useField(__assign({field:o},l)).render)(React.createElement("input",{"data-cy":"file-upload-input",type:"file",id:t.id,className:t.className,name:t.name,onChange:function(e){return __awaiter(void 0,void 0,void 0,(function(){var a;return __generator(this,(function(t){switch(t.label){case 0:return[4,getFileToUpload(e.target.files,r)];case 1:return a=t.sent(),n(i,a),[2]}}))}))},multiple:t.multiple,accept:t.accept,ref:a}))}));FileUpload.displayName="FileUpload";
2
2
  //# sourceMappingURL=FileUpload.js.map
@@ -1,2 +1,2 @@
1
- import{__makeTemplateObject}from"tslib";import*as React from"react";import styled from"styled-components";var templateObject_1,LoadingLine=styled.div(templateObject_1||(templateObject_1=__makeTemplateObject(["\n position: relative;\n height: 4px;\n display: block;\n width: 100%;\n background-color: var(--linear-progress-background-color);\n border-radius: var(--global-border-radius);\n background-clip: padding-box;\n margin: 0.5rem 0 1rem 0;\n overflow: hidden;\n\n .determinate {\n position: absolute;\n top: 0;\n bottom: 0;\n background-color: var(--linear-progress-color);\n transition: width 0.3s linear;\n }\n .indeterminate {\n background-color: var(--linear-progress-color);\n }\n .indeterminate:before {\n content: '';\n position: absolute;\n background-color: inherit;\n top: 0;\n left: 0;\n bottom: 0;\n will-change: left, right;\n -webkit-animation: indeterminate 2.1s cubic-bezier(0.65, 0.815, 0.735, 0.395) infinite;\n animation: indeterminate 2.1s cubic-bezier(0.65, 0.815, 0.735, 0.395) infinite;\n }\n .indeterminate:after {\n content: '';\n position: absolute;\n background-color: inherit;\n top: 0;\n left: 0;\n bottom: 0;\n will-change: left, right;\n -webkit-animation: indeterminate-short 2.1s cubic-bezier(0.165, 0.84, 0.44, 1) infinite;\n animation: indeterminate-short 2.1s cubic-bezier(0.165, 0.84, 0.44, 1) infinite;\n -webkit-animation-delay: 1.15s;\n animation-delay: 1.15s;\n }\n\n @-webkit-keyframes indeterminate {\n 0% {\n left: -35%;\n right: 100%;\n }\n 60% {\n left: 100%;\n right: -90%;\n }\n 100% {\n left: 100%;\n right: -90%;\n }\n }\n @keyframes indeterminate {\n 0% {\n left: -35%;\n right: 100%;\n }\n 60% {\n left: 100%;\n right: -90%;\n }\n 100% {\n left: 100%;\n right: -90%;\n }\n }\n @-webkit-keyframes indeterminate-short {\n 0% {\n left: -200%;\n right: 100%;\n }\n 60% {\n left: 107%;\n right: -8%;\n }\n 100% {\n left: 107%;\n right: -8%;\n }\n }\n @keyframes indeterminate-short {\n 0% {\n left: -200%;\n right: 100%;\n }\n 60% {\n left: 107%;\n right: -8%;\n }\n 100% {\n left: 107%;\n right: -8%;\n }\n }\n"],["\n position: relative;\n height: 4px;\n display: block;\n width: 100%;\n background-color: var(--linear-progress-background-color);\n border-radius: var(--global-border-radius);\n background-clip: padding-box;\n margin: 0.5rem 0 1rem 0;\n overflow: hidden;\n\n .determinate {\n position: absolute;\n top: 0;\n bottom: 0;\n background-color: var(--linear-progress-color);\n transition: width 0.3s linear;\n }\n .indeterminate {\n background-color: var(--linear-progress-color);\n }\n .indeterminate:before {\n content: '';\n position: absolute;\n background-color: inherit;\n top: 0;\n left: 0;\n bottom: 0;\n will-change: left, right;\n -webkit-animation: indeterminate 2.1s cubic-bezier(0.65, 0.815, 0.735, 0.395) infinite;\n animation: indeterminate 2.1s cubic-bezier(0.65, 0.815, 0.735, 0.395) infinite;\n }\n .indeterminate:after {\n content: '';\n position: absolute;\n background-color: inherit;\n top: 0;\n left: 0;\n bottom: 0;\n will-change: left, right;\n -webkit-animation: indeterminate-short 2.1s cubic-bezier(0.165, 0.84, 0.44, 1) infinite;\n animation: indeterminate-short 2.1s cubic-bezier(0.165, 0.84, 0.44, 1) infinite;\n -webkit-animation-delay: 1.15s;\n animation-delay: 1.15s;\n }\n\n @-webkit-keyframes indeterminate {\n 0% {\n left: -35%;\n right: 100%;\n }\n 60% {\n left: 100%;\n right: -90%;\n }\n 100% {\n left: 100%;\n right: -90%;\n }\n }\n @keyframes indeterminate {\n 0% {\n left: -35%;\n right: 100%;\n }\n 60% {\n left: 100%;\n right: -90%;\n }\n 100% {\n left: 100%;\n right: -90%;\n }\n }\n @-webkit-keyframes indeterminate-short {\n 0% {\n left: -200%;\n right: 100%;\n }\n 60% {\n left: 107%;\n right: -8%;\n }\n 100% {\n left: 107%;\n right: -8%;\n }\n }\n @keyframes indeterminate-short {\n 0% {\n left: -200%;\n right: 100%;\n }\n 60% {\n left: 107%;\n right: -8%;\n }\n 100% {\n left: 107%;\n right: -8%;\n }\n }\n"])));export var LinearProgress=function(){return React.createElement(LoadingLine,null,React.createElement("div",{className:"indeterminate"}))};
1
+ import{__makeTemplateObject}from"tslib";import*as React from"react";import styled from"styled-components";var templateObject_1,LoadingLine=styled.div(templateObject_1||(templateObject_1=__makeTemplateObject(["\n position: relative;\n height: 4px;\n display: block;\n width: 100%;\n background-color: var(--linear-progress-background-color);\n border-radius: var(--border-radius);\n background-clip: padding-box;\n margin: 0.5rem 0 1rem 0;\n overflow: hidden;\n\n .determinate {\n position: absolute;\n top: 0;\n bottom: 0;\n background-color: var(--linear-progress-color);\n transition: width 0.3s linear;\n }\n .indeterminate {\n background-color: var(--linear-progress-color);\n }\n .indeterminate:before {\n content: '';\n position: absolute;\n background-color: inherit;\n top: 0;\n left: 0;\n bottom: 0;\n will-change: left, right;\n -webkit-animation: indeterminate 2.1s cubic-bezier(0.65, 0.815, 0.735, 0.395) infinite;\n animation: indeterminate 2.1s cubic-bezier(0.65, 0.815, 0.735, 0.395) infinite;\n }\n .indeterminate:after {\n content: '';\n position: absolute;\n background-color: inherit;\n top: 0;\n left: 0;\n bottom: 0;\n will-change: left, right;\n -webkit-animation: indeterminate-short 2.1s cubic-bezier(0.165, 0.84, 0.44, 1) infinite;\n animation: indeterminate-short 2.1s cubic-bezier(0.165, 0.84, 0.44, 1) infinite;\n -webkit-animation-delay: 1.15s;\n animation-delay: 1.15s;\n }\n\n @-webkit-keyframes indeterminate {\n 0% {\n left: -35%;\n right: 100%;\n }\n 60% {\n left: 100%;\n right: -90%;\n }\n 100% {\n left: 100%;\n right: -90%;\n }\n }\n @keyframes indeterminate {\n 0% {\n left: -35%;\n right: 100%;\n }\n 60% {\n left: 100%;\n right: -90%;\n }\n 100% {\n left: 100%;\n right: -90%;\n }\n }\n @-webkit-keyframes indeterminate-short {\n 0% {\n left: -200%;\n right: 100%;\n }\n 60% {\n left: 107%;\n right: -8%;\n }\n 100% {\n left: 107%;\n right: -8%;\n }\n }\n @keyframes indeterminate-short {\n 0% {\n left: -200%;\n right: 100%;\n }\n 60% {\n left: 107%;\n right: -8%;\n }\n 100% {\n left: 107%;\n right: -8%;\n }\n }\n"],["\n position: relative;\n height: 4px;\n display: block;\n width: 100%;\n background-color: var(--linear-progress-background-color);\n border-radius: var(--border-radius);\n background-clip: padding-box;\n margin: 0.5rem 0 1rem 0;\n overflow: hidden;\n\n .determinate {\n position: absolute;\n top: 0;\n bottom: 0;\n background-color: var(--linear-progress-color);\n transition: width 0.3s linear;\n }\n .indeterminate {\n background-color: var(--linear-progress-color);\n }\n .indeterminate:before {\n content: '';\n position: absolute;\n background-color: inherit;\n top: 0;\n left: 0;\n bottom: 0;\n will-change: left, right;\n -webkit-animation: indeterminate 2.1s cubic-bezier(0.65, 0.815, 0.735, 0.395) infinite;\n animation: indeterminate 2.1s cubic-bezier(0.65, 0.815, 0.735, 0.395) infinite;\n }\n .indeterminate:after {\n content: '';\n position: absolute;\n background-color: inherit;\n top: 0;\n left: 0;\n bottom: 0;\n will-change: left, right;\n -webkit-animation: indeterminate-short 2.1s cubic-bezier(0.165, 0.84, 0.44, 1) infinite;\n animation: indeterminate-short 2.1s cubic-bezier(0.165, 0.84, 0.44, 1) infinite;\n -webkit-animation-delay: 1.15s;\n animation-delay: 1.15s;\n }\n\n @-webkit-keyframes indeterminate {\n 0% {\n left: -35%;\n right: 100%;\n }\n 60% {\n left: 100%;\n right: -90%;\n }\n 100% {\n left: 100%;\n right: -90%;\n }\n }\n @keyframes indeterminate {\n 0% {\n left: -35%;\n right: 100%;\n }\n 60% {\n left: 100%;\n right: -90%;\n }\n 100% {\n left: 100%;\n right: -90%;\n }\n }\n @-webkit-keyframes indeterminate-short {\n 0% {\n left: -200%;\n right: 100%;\n }\n 60% {\n left: 107%;\n right: -8%;\n }\n 100% {\n left: 107%;\n right: -8%;\n }\n }\n @keyframes indeterminate-short {\n 0% {\n left: -200%;\n right: 100%;\n }\n 60% {\n left: 107%;\n right: -8%;\n }\n 100% {\n left: 107%;\n right: -8%;\n }\n }\n"])));export var LinearProgress=function(){return React.createElement(LoadingLine,null,React.createElement("div",{className:"indeterminate"}))};
2
2
  //# sourceMappingURL=LinearProgress.js.map
@@ -2,7 +2,7 @@ import React from 'react';
2
2
  import type { FieldProps } from 'informed';
3
3
  import type { FlattenInterpolation, ThemeProps } from 'styled-components';
4
4
  import type { DropdownOption, DropdownProps } from './Dropdown';
5
- export declare const getInvertedInputStyles: (panel: 'samples' | 'try-it') => FlattenInterpolation<ThemeProps<unknown>>;
5
+ export declare const getInvertedInputStyles: (panelType: 'samples' | 'try-it') => FlattenInterpolation<ThemeProps<unknown>>;
6
6
  export declare const StyledInput: import("styled-components").StyledComponent<"input", any, {
7
7
  fullWidth?: boolean | undefined;
8
8
  inputType?: string | undefined;
@@ -1,2 +1,2 @@
1
- import{__assign,__makeTemplateObject,__rest}from"tslib";import React from"react";import{asField,useField}from"informed";import styled,{css}from"styled-components";import{useMount}from"../../hooks";import{FormError}from"./form";import{Dropdown}from"./Dropdown";export var getInvertedInputStyles=function(e){return css(templateObject_1||(templateObject_1=__makeTemplateObject(["\n border: none;\n outline: none;\n padding: 8px;\n border-radius: var(--global-border-radius);\n background-color: var(--","-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(--","-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(--","-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(--","-panel-background-color);\n }\n"])),e,e)};var TextFieldWrapper=styled.div(templateObject_2||(templateObject_2=__makeTemplateObject(["\n display: ",";\n ","\n"],["\n display: ",";\n ","\n"])),(function(e){return"hidden"===e.type?"none":"inline-block"}),(function(e){return e.fullWidth?"width: 100%;":""})),InputWrap=styled.div(templateObject_3||(templateObject_3=__makeTemplateObject(["\n position: relative;\n"],["\n position: relative;\n"])));export var StyledInput=styled.input(templateObject_4||(templateObject_4=__makeTemplateObject(["\n ","\n ",";\n ","\n"],["\n ","\n ",";\n ","\n"])),(function(e){var t=e.panel;return getInvertedInputStyles(t)}),(function(e){var t=e.inputType,n=e.inputActionButton;return"password"===t||n?"padding-right: 40px;":""}),(function(e){return e.fullWidth?"width: 100%;":""}));var InputActionButton=styled.span(templateObject_5||(templateObject_5=__makeTemplateObject(["\n position: absolute;\n right: 0;\n line-height: normal;\n\n font-size: 0.8em;\n padding: calc(8px / 0.8);\n cursor: pointer;\n text-align: center;\n color: var(--samples-panel-text-color);\n"],["\n position: absolute;\n right: 0;\n line-height: normal;\n\n font-size: 0.8em;\n padding: calc(8px / 0.8);\n cursor: pointer;\n text-align: center;\n color: var(--samples-panel-text-color);\n"])));function TextFieldComponent(e,t){var n=e.fullWidth,r=e.errorMessage,o=e.type,a=e.inputActionButton,l=e.panel,i=void 0===l?"samples":l,c=__rest(e,["fullWidth","errorMessage","type","inputActionButton","panel"]),p=React.useState("password"===o),u=p[0],d=p[1],s=React.useCallback((function(){d(!u)}),[u]);return React.createElement(TextFieldWrapper,{fullWidth:n,type:o},React.createElement(InputWrap,null,React.createElement(StyledInput,__assign({fullWidth:n,inputActionButton:a,type:u?"password":"text",inputType:o,ref:t,panel:i},c)),a?React.createElement(InputActionButton,{onClick:a.onClick},a.label):"password"===o?React.createElement(InputActionButton,{onClick:s},u?"show":"hide"):null),r?React.createElement(FormError,null,r):null)}export var TextField=React.forwardRef(TextFieldComponent);export function FormTextField(e){var t=useField(__assign({fieldType:"text"},e)),n=t.userProps,r=t.render,o=t.fieldState,a=t.informed;return r(React.createElement(TextField,__assign({},n,a,{errorMessage:o.error})))}var templateObject_1,templateObject_2,templateObject_3,templateObject_4,templateObject_5,FormDropdownInt=function(e){var t=e.initValue,n=e.options,r=e.fieldApi,o=e.fieldState,a=n.map((function(e,t){return{value:e.title||e.value,idx:t,origValue:e.value}})),l=a.find((function(e){return e.origValue===t})),i=React.useState(null==l?void 0:l.value),c=i[0],p=i[1];useMount((function(){t&&r.setValue(t)}));var u=React.useCallback((function(e){r.setValue(a[e.idx].origValue),p(a[e.idx].value)}),[a,r]);return React.createElement(TextFieldWrapper,{fullWidth:!0},React.createElement(Dropdown,{fullWidth:!0,variant:"dark",value:c,options:a,onChange:u}),o.error?React.createElement(FormError,null,o.error):null)};export var FormDropdown=asField(FormDropdownInt);
1
+ import{__assign,__makeTemplateObject,__rest}from"tslib";import React from"react";import{asField,useField}from"informed";import styled,{css}from"styled-components";import{useMount}from"../../hooks";import{FormError}from"./form";import{Dropdown}from"./Dropdown";export var getInvertedInputStyles=function(e){return css(templateObject_1||(templateObject_1=__makeTemplateObject(["\n border: var(--input-border);\n outline: none;\n padding: var(--input-padding);\n border-radius: var(--input-border-radius);\n background-color: var(--panel-","-input-background-color);\n color: var(--input-text-color);\n font-family: var(--input-font-family);\n font-size: var(--input-font-size);\n line-height: var(--input-line-height);\n\n &::placeholder {\n opacity: 0.6;\n color: var(--input-placeholder-text-color);\n }\n\n &:hover {\n color: var(--input-hover-text-color);\n border: var(--input-hover-border);\n }\n\n &:focus {\n color: var(--input-focus-text-color);\n border: var(--input-focus-border);\n }\n\n &:-webkit-autofill {\n background-color: var(--panel-","-input-background-color);\n }\n"],["\n border: var(--input-border);\n outline: none;\n padding: var(--input-padding);\n border-radius: var(--input-border-radius);\n background-color: var(--panel-","-input-background-color);\n color: var(--input-text-color);\n font-family: var(--input-font-family);\n font-size: var(--input-font-size);\n line-height: var(--input-line-height);\n\n &::placeholder {\n opacity: 0.6;\n color: var(--input-placeholder-text-color);\n }\n\n &:hover {\n color: var(--input-hover-text-color);\n border: var(--input-hover-border);\n }\n\n &:focus {\n color: var(--input-focus-text-color);\n border: var(--input-focus-border);\n }\n\n &:-webkit-autofill {\n background-color: var(--panel-","-input-background-color);\n }\n"])),e,e)};var TextFieldWrapper=styled.div(templateObject_2||(templateObject_2=__makeTemplateObject(["\n display: ",";\n ","\n"],["\n display: ",";\n ","\n"])),(function(e){return"hidden"===e.type?"none":"inline-block"}),(function(e){return e.fullWidth?"width: 100%;":""})),InputWrap=styled.div(templateObject_3||(templateObject_3=__makeTemplateObject(["\n position: relative;\n"],["\n position: relative;\n"])));export var StyledInput=styled.input(templateObject_4||(templateObject_4=__makeTemplateObject(["\n ","\n ",";\n ","\n"],["\n ","\n ",";\n ","\n"])),(function(e){var t=e.panel;return getInvertedInputStyles(t)}),(function(e){var t=e.inputType,n=e.inputActionButton;return"password"===t||n?"padding-right: 40px;":""}),(function(e){return e.fullWidth?"width: 100%;":""}));var InputActionButton=styled.span(templateObject_5||(templateObject_5=__makeTemplateObject(["\n position: absolute;\n right: 0;\n line-height: normal;\n\n font-size: 0.8em;\n padding: calc(8px / 0.8);\n cursor: pointer;\n text-align: center;\n color: var(--panel-samples-text-color);\n"],["\n position: absolute;\n right: 0;\n line-height: normal;\n\n font-size: 0.8em;\n padding: calc(8px / 0.8);\n cursor: pointer;\n text-align: center;\n color: var(--panel-samples-text-color);\n"])));function TextFieldComponent(e,t){var n=e.fullWidth,r=e.errorMessage,o=e.type,a=e.inputActionButton,l=e.panel,i=void 0===l?"samples":l,p=__rest(e,["fullWidth","errorMessage","type","inputActionButton","panel"]),u=React.useState("password"===o),c=u[0],d=u[1],s=React.useCallback((function(){d(!c)}),[c]);return React.createElement(TextFieldWrapper,{fullWidth:n,type:o},React.createElement(InputWrap,null,React.createElement(StyledInput,__assign({fullWidth:n,inputActionButton:a,type:c?"password":"text",inputType:o,ref:t,panel:i},p)),a?React.createElement(InputActionButton,{onClick:a.onClick},a.label):"password"===o?React.createElement(InputActionButton,{onClick:s},c?"show":"hide"):null),r?React.createElement(FormError,null,r):null)}export var TextField=React.forwardRef(TextFieldComponent);export function FormTextField(e){var t=useField(__assign({fieldType:"text"},e)),n=t.userProps,r=t.render,o=t.fieldState,a=t.informed;return r(React.createElement(TextField,__assign({},n,a,{errorMessage:o.error})))}var templateObject_1,templateObject_2,templateObject_3,templateObject_4,templateObject_5,FormDropdownInt=function(e){var t=e.initValue,n=e.options,r=e.fieldApi,o=e.fieldState,a=n.map((function(e,t){return{value:e.title||e.value,idx:t,origValue:e.value}})),l=a.find((function(e){return e.origValue===t})),i=React.useState(null==l?void 0:l.value),p=i[0],u=i[1];useMount((function(){t&&r.setValue(t)}));var c=React.useCallback((function(e){r.setValue(a[e.idx].origValue),u(a[e.idx].value)}),[a,r]);return React.createElement(TextFieldWrapper,{fullWidth:!0},React.createElement(Dropdown,{fullWidth:!0,variant:"dark",value:p,options:a,onChange:c}),o.error?React.createElement(FormError,null,o.error):null)};export var FormDropdown=asField(FormDropdownInt);
2
2
  //# sourceMappingURL=TextField.js.map
@@ -1,2 +1,2 @@
1
- import{__makeTemplateObject}from"tslib";import*as React from"react";import styled from"styled-components";import{Button}from"@redocly/theme";import{serializeParameterValue}from"../../redoc-lib";import{CodeHeader}from"../Panel";import{Path,PathWrapper}from"../Endpoint/Path";import{HttpVerb}from"../shared";import{expandVariables}from"./utils";function formatPath(e,t,r){var a=t.path||{},n=t.query||{},o=Object.keys(n),i=expandVariables(e,a);return o.length&&(i+="?"+o.map((function(e){if(!n[e])return"";var t=function(e){return r.find((function(t){return t.name===e&&"query"===t.in}))}(e);return t?serializeParameterValue(t,n[e]):e+"="+encodeURIComponent(n[e])})).filter(Boolean).join("&")),i}export var ActionPanelComponent=function(e){var t=e.loading,r=e.operation,a=e.hasResponse,n=e.execute,o=e.params,i=void 0===o?{}:o;return React.createElement(TryItHeader,null,React.createElement(PathWrapper,null,React.createElement(HttpVerb,{type:r.httpVerb},r.httpVerb),React.createElement(Path,{wrap:"true"},formatPath(r.path,i,r.parameters))),React.createElement(SendButton,{"data-cy":"send-button",color:"primary",blinking:t,onClick:function(){return!t&&n()}},t?"Sending...":a?"Resend":"Send"))};var templateObject_1,templateObject_2,SendButton=styled(Button)(templateObject_1||(templateObject_1=__makeTemplateObject(["\n width: var(--try-it-panel-action-button-width);\n"],["\n width: var(--try-it-panel-action-button-width);\n"]))),TryItHeader=styled(CodeHeader)(templateObject_2||(templateObject_2=__makeTemplateObject(["\n flex-direction: row;\n align-items: flex-start;\n flex-wrap: wrap;\n"],["\n flex-direction: row;\n align-items: flex-start;\n flex-wrap: wrap;\n"])));export var ActionPanel=React.memo(ActionPanelComponent);
1
+ import{__makeTemplateObject}from"tslib";import*as React from"react";import styled from"styled-components";import{Button}from"@redocly/theme/Button";import{serializeParameterValue}from"../../redoc-lib";import{CodeHeader}from"../Panel";import{Path,PathWrapper}from"../Endpoint";import{HttpVerb}from"../shared";import{expandVariables}from"./utils";function formatPath(e,t,r){var n=t.path||{},a=t.query||{},o=Object.keys(a),i=expandVariables(e,n);return o.length&&(i+="?"+o.map((function(e){if(!a[e])return"";var t=function(e){return r.find((function(t){return t.name===e&&"query"===t.in}))}(e);return t?serializeParameterValue(t,a[e]):e+"="+encodeURIComponent(a[e])})).filter(Boolean).join("&")),i}export var ActionPanelComponent=function(e){var t=e.loading,r=e.operation,n=e.hasResponse,a=e.execute,o=e.params,i=void 0===o?{}:o;return React.createElement(CodeHeader,null,React.createElement(PathWrapper,null,React.createElement(HttpVerb,{type:r.httpVerb},r.httpVerb),React.createElement(Path,{wrap:"true"},formatPath(r.path,i,r.parameters))),React.createElement(SendButton,{"data-cy":"send-button",color:"primary",blinking:t,onClick:function(){return!t&&a()}},t?"Sending...":n?"Resend":"Send"))};var templateObject_1,SendButton=styled(Button)(templateObject_1||(templateObject_1=__makeTemplateObject(["\n width: var(--panel-try-it-action-button-width);\n"],["\n width: var(--panel-try-it-action-button-width);\n"])));export var ActionPanel=React.memo(ActionPanelComponent);
2
2
  //# sourceMappingURL=ActionPanel.js.map
@@ -1,6 +1,6 @@
1
1
  import * as React from 'react';
2
- import type { DropdownOption } from '../../common/Dropdown';
3
2
  import type { AuthPanelProps, AuthPanelState } from './types';
3
+ import type { DropdownOption } from '../../common/Dropdown';
4
4
  export declare class AuthPanel extends React.Component<AuthPanelProps, AuthPanelState> {
5
5
  static getDerivedStateFromProps(props: AuthPanelProps): AuthPanelState;
6
6
  state: {
@@ -1,2 +1,2 @@
1
- import{__assign,__extends}from"tslib";import*as React from"react";import{fromSessionStorage,getSecurityDetailsOptions,toSessionStorage,escapeFormId}from"../../../utils";import OAuth2TokenInput from"../OAuth2TokenInput";import{OAuth2Flow}from"../OAuth2Flow";import{OpenIDConnect}from"../OpenIDConnect";import{FormDropdown,FormTextField}from"../../common/TextField";import{FormControl,FormLabel,FormWrapper}from"../../common/form";import{l}from"../../../redoc-lib/src/services/Labels";import{TryItDropdown}from"../styled";import{requiredValidator,fromCookie}from"../utils";var AuthPanel=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:{activeScheme:0}}),Object.defineProperty(t,"handleSchemeChange",{enumerable:!0,configurable:!0,writable:!0,value:function(e){t.setState({activeScheme:e.idx}),toSessionStorage("securityRequirementName",e.value)}}),t}return __extends(t,e),Object.defineProperty(t,"getDerivedStateFromProps",{enumerable:!1,configurable:!0,writable:!0,value:function(e){var t=e.operation.security.map((function(e){return e.schemes.map((function(e){return e.id})).join(" and ")})),r=fromSessionStorage("securityRequirementName"),o=t.findIndex((function(e){return e===r}));return{activeScheme:o<0?0:o}}}),Object.defineProperty(t.prototype,"render",{enumerable:!1,configurable:!0,writable:!0,value:function(){var e=this,t=this.props.securityDefaults,r=this.state.activeScheme,o=this.props.operation.security,a=o.map((function(e){return e.schemes.map((function(e){return e.id})).join(" and ")})).map((function(e,t){return{value:e,idx:t}}));return 0===a.length?null:React.createElement(React.Fragment,null,React.createElement(FormWrapper,null,a.length>1&&React.createElement(FormControl,null,React.createElement(FormLabel,null," Security scheme: "),React.createElement(TryItDropdown,{variant:"dark",fullWidth:!0,options:a,value:a[r].value,onChange:this.handleSchemeChange}))||null,o[r].schemes.map((function(r){var o,a,n,i,u,s,c,m=escapeFormId(r.id);if("apiKey"===r.type){var d=getSecurityDetailsOptions(m,""),p={field:"auth."+m,fullWidth:!0,initialValue:fromCookie(r)||fromSessionStorage("auth."+m)||(null==t?void 0:t[m]),initValue:fromCookie(r)||fromSessionStorage("auth."+m)||(null==t?void 0:t[m]),validate:requiredValidator,validateOnBlur:!0,validateOnChange:!0};return React.createElement(FormControl,{key:m},React.createElement(FormLabel,null," ",r.name,": "),d?React.createElement(FormDropdown,__assign({},p,{options:d})):React.createElement(FormTextField,__assign({},p,{type:"password",panel:"try-it","data-cy":"apiKey-auth-password"})))}if("http"===r.type){if("basic"===r.scheme){var f=getSecurityDetailsOptions(m,"username");p={field:"auth."+m+".username",fullWidth:!0,initialValue:fromSessionStorage("auth."+m+".username")||(null===(o=null==t?void 0:t[m])||void 0===o?void 0:o.username),initValue:fromSessionStorage("auth."+m+".username")||(null===(a=null==t?void 0:t[m])||void 0===a?void 0:a.username),validate:requiredValidator,validateOnBlur:!0,validateOnChange:!0};return React.createElement(React.Fragment,{key:m},React.createElement(FormControl,null,React.createElement(FormLabel,null," ",l("tryItAuthBasicUsername"),": "),f?React.createElement(FormDropdown,__assign({},p,{options:f})):React.createElement(FormTextField,__assign({},p,{panel:"try-it"}))),React.createElement(FormControl,null,React.createElement(FormLabel,null," ",l("tryItAuthBasicPassword"),": "),React.createElement(FormTextField,{type:"password","data-cy":"http-auth-password",fullWidth:!0,field:"auth."+m+".password",initialValue:fromSessionStorage("auth."+m+".password")||(null===(n=null==t?void 0:t[m])||void 0===n?void 0:n.password)||"",validateOnBlur:!0,validateOnChange:!0,panel:"try-it"})))}if("bearer"===r.scheme){var h=getSecurityDetailsOptions(m,"");p={field:"auth."+m,fullWidth:!0,initialValue:fromSessionStorage("auth."+m)||(null==t?void 0:t[m]),initValue:fromSessionStorage("auth."+m)||(null==t?void 0:t[m]),validate:requiredValidator,validateOnBlur:!0,validateOnChange:!0};return React.createElement(React.Fragment,{key:m},React.createElement(FormControl,null,React.createElement(FormLabel,null," Bearer Token: "),h?React.createElement(FormDropdown,__assign({},p,{options:h})):React.createElement(FormTextField,__assign({},p,{type:"password",placeholder:"(without 'Bearer')",panel:"try-it"}))))}}else{if("oauth2"===r.type&&r.flows&&r.flows.clientCredentials)return React.createElement(OAuth2TokenInput,{key:m,flow:r.flows.clientCredentials,server:e.props.activeServer,authCorsProxyUrl:e.props.authCorsProxyUrl,id:m,form:e.props.form,formApi:e.props.formApi,clientId:r.flows.clientCredentials["x-defaultClientId"]||r["x-defaultClientId"],defaultValues:null==t?void 0:t[m]});if("oauth2"===r.type&&r.flows&&r.flows.implicit)return React.createElement(OAuth2Flow,{key:m,authorizationUrl:r.flows.implicit.authorizationUrl,authCorsProxyUrl:e.props.authCorsProxyUrl,scopes:Object.keys((null===(u=null===(i=null==r?void 0:r.flows)||void 0===i?void 0:i.implicit)||void 0===u?void 0:u.scopes)||{}),server:e.props.activeServer,id:m,form:e.props.form,formApi:e.props.formApi,clientId:r.flows.implicit["x-defaultClientId"]||r["x-defaultClientId"],flow:"implicit",defaultValues:null==t?void 0:t[m]});if("oauth2"===r.type&&r.flows&&r.flows.authorizationCode)return React.createElement(OAuth2Flow,{key:m,authorizationUrl:r.flows.authorizationCode.authorizationUrl,tokenUrl:r.flows.authorizationCode.tokenUrl,authCorsProxyUrl:e.props.authCorsProxyUrl,scopes:Object.keys((null===(s=r.flows.authorizationCode)||void 0===s?void 0:s.scopes)||{}),server:e.props.activeServer,id:m,form:e.props.form,formApi:e.props.formApi,clientId:r.flows.authorizationCode["x-defaultClientId"]||r["x-defaultClientId"],flow:"authorizationCode",usePkce:r.flows.authorizationCode["x-usePkce"],defaultValues:null==t?void 0:t[m]});if("oauth2"===r.type){var v=fromSessionStorage("auth."+m+".token")||JSON.stringify(null===(c=null==t?void 0:t[m])||void 0===c?void 0:c.token);return v=v?JSON.parse(v):{},React.createElement(React.Fragment,{key:m},React.createElement(FormControl,null,React.createElement(FormLabel,null," Access Token Type: "),React.createElement(FormTextField,{fullWidth:!0,field:"auth."+m+".token.token_type",initialValue:v.token_type||"Bearer",panel:"try-it"})),React.createElement(FormControl,null,React.createElement(FormLabel,null," Access Token: "),React.createElement(FormTextField,{type:"password",fullWidth:!0,field:"auth."+m+".token.access_token",validate:requiredValidator,initialValue:v.access_token,validateOnBlur:!0,validateOnChange:!0,panel:"try-it"})))}if("openIdConnect"===r.type)return React.createElement(OpenIDConnect,{key:m,server:e.props.activeServer,authCorsProxyUrl:e.props.authCorsProxyUrl,id:m,form:e.props.form,formApi:e.props.formApi,scheme:r,clientId:r["x-defaultClientId"],defaultValues:null==t?void 0:t[m]})}}))),React.createElement("small",null,React.createElement("strong",null,"Note"),": Your credentials will be saved until the end of the browser session"))}}),t}(React.Component);export{AuthPanel};
1
+ import{__assign,__extends}from"tslib";import*as React from"react";import{escapeFormId,fromSessionStorage,getSecurityDetailsOptions,toSessionStorage}from"../../../utils";import{TryItDropdown}from"../styled";import{FormControl,FormLabel,FormWrapper}from"../../common/form";import{FormDropdown,FormTextField}from"../../common/TextField";import{OpenIDConnect,Error}from"../OpenIDConnect";import{fromCookie,requiredValidator}from"../utils";import{OAuth2Flow}from"../OAuth2Flow";import{l}from"../../../redoc-lib/src/services/Labels";import OAuth2TokenInput from"../OAuth2TokenInput";var AuthPanel=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:{activeScheme:0}}),Object.defineProperty(t,"handleSchemeChange",{enumerable:!0,configurable:!0,writable:!0,value:function(e){t.setState({activeScheme:e.idx}),toSessionStorage("securityRequirementName",e.value)}}),t}return __extends(t,e),Object.defineProperty(t,"getDerivedStateFromProps",{enumerable:!1,configurable:!0,writable:!0,value:function(e){var t=e.operation.security.map((function(e){return e.schemes.map((function(e){return e.id})).join(" and ")})),r=fromSessionStorage("securityRequirementName"),o=t.findIndex((function(e){return e===r}));return{activeScheme:o<0?0:o}}}),Object.defineProperty(t.prototype,"render",{enumerable:!1,configurable:!0,writable:!0,value:function(){var e=this,t=this.props.securityDefaults,r=this.state.activeScheme,o=this.props.operation.security,a=o.map((function(e){return e.schemes.map((function(e){return e.id})).join(" and ")})).filter(Boolean).map((function(e,t){return{value:e,idx:t}}));return 0===a.length?React.createElement(Error,{message:"Cannot find security schema in the definition"}):React.createElement(React.Fragment,null,React.createElement(FormWrapper,null,a.length>1&&React.createElement(FormControl,null,React.createElement(FormLabel,null," Security scheme: "),React.createElement(TryItDropdown,{variant:"dark",fullWidth:!0,options:a,value:a[r].value,onChange:this.handleSchemeChange}))||null,o[r].schemes.map((function(r){var o,a,n,i,s,u,c,m=escapeFormId(r.id);if("apiKey"===r.type){var d=getSecurityDetailsOptions(m,""),p={field:"auth."+m,fullWidth:!0,initialValue:fromCookie(r)||fromSessionStorage("auth."+m)||(null==t?void 0:t[m]),initValue:fromCookie(r)||fromSessionStorage("auth."+m)||(null==t?void 0:t[m]),validate:requiredValidator,validateOnBlur:!0,validateOnChange:!0};return React.createElement(FormControl,{key:m},React.createElement(FormLabel,null," ",r.name,": "),d?React.createElement(FormDropdown,__assign({},p,{options:d})):React.createElement(FormTextField,__assign({},p,{type:"password",panel:"try-it","data-cy":"apiKey-auth-password"})))}if("http"===r.type){if("basic"===r.scheme){var f=getSecurityDetailsOptions(m,"username");p={field:"auth."+m+".username",fullWidth:!0,initialValue:fromSessionStorage("auth."+m+".username")||(null===(o=null==t?void 0:t[m])||void 0===o?void 0:o.username),initValue:fromSessionStorage("auth."+m+".username")||(null===(a=null==t?void 0:t[m])||void 0===a?void 0:a.username),validate:requiredValidator,validateOnBlur:!0,validateOnChange:!0};return React.createElement(React.Fragment,{key:m},React.createElement(FormControl,null,React.createElement(FormLabel,null," ",l("tryItAuthBasicUsername"),": "),f?React.createElement(FormDropdown,__assign({},p,{options:f})):React.createElement(FormTextField,__assign({},p,{panel:"try-it"}))),React.createElement(FormControl,null,React.createElement(FormLabel,null," ",l("tryItAuthBasicPassword"),": "),React.createElement(FormTextField,{type:"password","data-cy":"http-auth-password",fullWidth:!0,field:"auth."+m+".password",initialValue:fromSessionStorage("auth."+m+".password")||(null===(n=null==t?void 0:t[m])||void 0===n?void 0:n.password)||"",validateOnBlur:!0,validateOnChange:!0,panel:"try-it"})))}if("bearer"===r.scheme){var h=getSecurityDetailsOptions(m,"");p={field:"auth."+m,fullWidth:!0,initialValue:fromSessionStorage("auth."+m)||(null==t?void 0:t[m]),initValue:fromSessionStorage("auth."+m)||(null==t?void 0:t[m]),validate:requiredValidator,validateOnBlur:!0,validateOnChange:!0};return React.createElement(React.Fragment,{key:m},React.createElement(FormControl,null,React.createElement(FormLabel,null," Bearer Token: "),h?React.createElement(FormDropdown,__assign({},p,{options:h})):React.createElement(FormTextField,__assign({},p,{type:"password",placeholder:"(without 'Bearer')",panel:"try-it"}))))}}else{if("oauth2"===r.type&&r.flows&&r.flows.clientCredentials)return React.createElement(OAuth2TokenInput,{key:m,flow:r.flows.clientCredentials,server:e.props.activeServer,authCorsProxyUrl:e.props.authCorsProxyUrl,id:m,form:e.props.form,formApi:e.props.formApi,clientId:r.flows.clientCredentials["x-defaultClientId"]||r["x-defaultClientId"],defaultValues:null==t?void 0:t[m]});if("oauth2"===r.type&&r.flows&&r.flows.implicit)return React.createElement(OAuth2Flow,{key:m,authorizationUrl:r.flows.implicit.authorizationUrl,authCorsProxyUrl:e.props.authCorsProxyUrl,scopes:Object.keys((null===(s=null===(i=null==r?void 0:r.flows)||void 0===i?void 0:i.implicit)||void 0===s?void 0:s.scopes)||{}),server:e.props.activeServer,id:m,form:e.props.form,formApi:e.props.formApi,clientId:r.flows.implicit["x-defaultClientId"]||r["x-defaultClientId"],flow:"implicit",defaultValues:null==t?void 0:t[m]});if("oauth2"===r.type&&r.flows&&r.flows.authorizationCode)return React.createElement(OAuth2Flow,{key:m,authorizationUrl:r.flows.authorizationCode.authorizationUrl,tokenUrl:r.flows.authorizationCode.tokenUrl,authCorsProxyUrl:e.props.authCorsProxyUrl,scopes:Object.keys((null===(u=r.flows.authorizationCode)||void 0===u?void 0:u.scopes)||{}),server:e.props.activeServer,id:m,form:e.props.form,formApi:e.props.formApi,clientId:r.flows.authorizationCode["x-defaultClientId"]||r["x-defaultClientId"],flow:"authorizationCode",tokenEndpointAuthMethod:r.flows.authorizationCode["x-tokenEndpointAuthMethod"],usePkce:r.flows.authorizationCode["x-usePkce"],defaultValues:null==t?void 0:t[m]});if("oauth2"===r.type){var v=fromSessionStorage("auth."+m+".token")||JSON.stringify(null===(c=null==t?void 0:t[m])||void 0===c?void 0:c.token);return v=v?JSON.parse(v):{},React.createElement(React.Fragment,{key:m},React.createElement(FormControl,null,React.createElement(FormLabel,null," Access Token Type: "),React.createElement(FormTextField,{fullWidth:!0,field:"auth."+m+".token.token_type",initialValue:v.token_type||"Bearer",panel:"try-it"})),React.createElement(FormControl,null,React.createElement(FormLabel,null," Access Token: "),React.createElement(FormTextField,{type:"password",fullWidth:!0,field:"auth."+m+".token.access_token",validate:requiredValidator,initialValue:v.access_token,validateOnBlur:!0,validateOnChange:!0,panel:"try-it"})))}if("openIdConnect"===r.type)return React.createElement(OpenIDConnect,{key:m,server:e.props.activeServer,authCorsProxyUrl:e.props.authCorsProxyUrl,id:m,form:e.props.form,formApi:e.props.formApi,scheme:r,clientId:r["x-defaultClientId"],defaultValues:null==t?void 0:t[m]})}}))),React.createElement("small",null,React.createElement("strong",null,"Note"),": Your credentials will be saved until the end of the browser session"))}}),t}(React.Component);export{AuthPanel};
2
2
  //# sourceMappingURL=AuthPanel.js.map
@@ -1,6 +1,6 @@
1
1
  import type { FormApi, FormState } from 'informed';
2
2
  import type { OperationModel } from '../../../redoc-lib';
3
- import type { SecurityDetails } from '../../../utils';
3
+ import type { SecurityDetails } from '../../../types';
4
4
  export interface AuthPanelProps {
5
5
  operation: OperationModel;
6
6
  form: FormState;
@@ -1,35 +1,39 @@
1
- import * as React from 'react';
1
+ import type { ComponentType, LegacyRef } from 'react';
2
+ import React from 'react';
3
+ import type { FieldApi, FieldState } from 'informed';
2
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-react-17";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()}}),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||MediaTypes.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(--text-color-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: var(--code-block-tokens-property-string-color);\n }\n\n .cm-s-material .CodeMirror-code .cm-string {\n color: var(--code-block-tokens-string-color);\n }\n\n .cm-s-material .CodeMirror-code .cm-atom {\n color: var(--text-color-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(--panel-border-radius);\n }\n"],["\n .cm-s-material.CodeMirror {\n background-color: var(--samples-panel-controls-background-color)!important;\n color: var(--text-color-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: var(--code-block-tokens-property-string-color);\n }\n\n .cm-s-material .CodeMirror-code .cm-string {\n color: var(--code-block-tokens-string-color);\n }\n\n .cm-s-material .CodeMirror-code .cm-atom {\n color: var(--text-color-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(--panel-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,6 +1,6 @@
1
1
  import * as React from 'react';
2
2
  import type { FormApi, FormState } from 'informed';
3
- import type { SecurityDetails } from '../../utils';
3
+ import type { SecurityDetails } from '../../types';
4
4
  import type { ProStore } from '../../services';
5
5
  import type { OperationModel, Server } from '../../redoc-lib';
6
6
  import type { OpenApiResponseData } from './ResponsePanel';
@@ -26,13 +26,13 @@ export interface ConsoleState {
26
26
  error?: Error & {
27
27
  response?: OpenApiResponseData;
28
28
  };
29
- resolvedRawSpec?: any;
29
+ resolvedRawSpec?: GenericObject;
30
30
  response?: OpenApiResponseData;
31
31
  time?: number;
32
32
  server: Server;
33
33
  }
34
34
  export declare class Console extends React.Component<ConsoleProps, ConsoleState> {
35
- formApi: FormApi;
35
+ formApi: FormApi | undefined;
36
36
  constructor(props: ConsoleProps);
37
37
  setFormApi: (formApi: FormApi, { values, ...rest }?: FormState<import("informed").FormValues>) => void;
38
38
  handleChange: ({ values, ...rest }: ConsoleState['form']) => void;
@@ -1,2 +1,2 @@
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,useDimensions,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{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{ServerChooser}from"./ServerDropdown";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,g,y,_,b,P,R,C,S,w,A,E,I,T,k,O,q,F,x,B,H,j,V,D,U=this;return __generator(this,(function(N){switch(N.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,this.formApi.submitForm(),s)return this.setState({shaking:!0}),setTimeout((function(){return U.setState({shaking:!1})}),1e3),null===(x=null===(F=null==t?void 0:t.options.events)||void 0===F?void 0:F.tryItSent)||void 0===x||x.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 U.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=n.auth,n.auth?(y=Object.keys(n.auth)[0],_=unescapeFormId(y),f=__assign(__assign({},c),{components:__assign(__assign({},c.components),{securitySchemes:__assign(__assign({},c.components.securitySchemes),(T={},T[_]=__assign(__assign({},c.components.securitySchemes[_]),{type:"openIdConnect"===c.components.securitySchemes[_].type?"oauth2":c.components.securitySchemes[_].type}),T))})}),g=__assign(__assign({},g),((k={})[_]=g[y],k))):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),((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===(B=null==i?void 0:i.content)||void 0===B?void 0:B.active)||void 0===H?void 0:H.name)||null)&&u&&isFileUploadMime(P)&&(R=Object.values(u),u=R.length>1?R:R[0]),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({},n.path),n.query),n.header),n.cookie),securities:{authorized:g},requestBody:u,requestContentType:P,responseContentType:(null===(j=n.header)||void 0===j?void 0:j.Accept)||null,requestInterceptor:makeRequestInterceptor(t.options,r,null==g?void 0:g.Authorization)},N.label=1;case 1:return N.trys.push([1,5,8,9]),[4,Swagger.execute(C)];case 2:return S=N.sent(),(w=null==S?void 0:S.data)instanceof Blob?(isFileUploadMime(w.type)&&(S.fileInfo={rawData:w,fileName:getFileNameFromHeaders(S.headers)}),A=S,[4,w.text()]):[3,4];case 3:A.data=N.sent(),N.label=4;case 4:return null==o||o({request:C,response:S}),this.setState({response:S,error:void 0}),[3,9];case 5:return(E=N.sent())&&E.response&&E.response.data instanceof Blob?(I=E.response,[4,E.response.data.text()]):[3,7];case 6:I.data=N.sent(),null==o||o({request:C,response:E.response}),N.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===(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(a){switch(a.label){case 0:return e=this.props,t=e.store,r=e.operation,[4,t.dereferenceSpecForTryIt(r)];case 1:return o=a.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,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},this.renderRequest()),React.createElement(ConsoleBody,{hidden:1!==s},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(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: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&&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: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)),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,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)))}
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{Accordion,StyledCodeHeader}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/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,j,H,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===(H=null===(j=null==i?void 0:i.content)||void 0===j?void 0:j.active)||void 0===H?void 0:H.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(StyledCodeHeader,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",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",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},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{StoreContext}from"../../redoc-lib";import{ConsoleWrap}from"./styled";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,2 +1,2 @@
1
- import{__makeTemplateObject}from"tslib";import styled,{css}from"styled-components";export var TabsWrap=styled.div(templateObject_1||(templateObject_1=__makeTemplateObject(["\n display: flex;\n font-size: 12px;\n button {\n margin: 0;\n }\n"],["\n display: flex;\n font-size: 12px;\n button {\n margin: 0;\n }\n"])));export var Tab=styled.button(templateObject_4||(templateObject_4=__makeTemplateObject(["\n outline: none;\n border: none;\n background-color: var(--try-it-panel-tab-background-color);\n text-align: center;\n cursor: pointer;\n color: var(--color-content-inverse);\n min-width: 80px;\n min-height: 30px;\n border-radius: var(--global-border-radius);\n font-size: 12px;\n padding: 0 10px;\n border-top: 4px solid transparent;\n border-bottom: 4px solid transparent;\n\n &:first-child {\n border-radius: var(--global-border-radius) 0 0 var(--global-border-radius);\n }\n\n &:last-child {\n border-radius: 0 var(--global-border-radius) var(--global-border-radius) 0;\n }\n\n ","\n\n ","\n"],["\n outline: none;\n border: none;\n background-color: var(--try-it-panel-tab-background-color);\n text-align: center;\n cursor: pointer;\n color: var(--color-content-inverse);\n min-width: 80px;\n min-height: 30px;\n border-radius: var(--global-border-radius);\n font-size: 12px;\n padding: 0 10px;\n border-top: 4px solid transparent;\n border-bottom: 4px solid transparent;\n\n &:first-child {\n border-radius: var(--global-border-radius) 0 0 var(--global-border-radius);\n }\n\n &:last-child {\n border-radius: 0 var(--global-border-radius) var(--global-border-radius) 0;\n }\n\n ","\n\n ","\n"])),(function(r){return r.active&&css(templateObject_2||(templateObject_2=__makeTemplateObject(["\n border-bottom: 4px solid var(--try-it-panel-active-tab-border-color);\n background-color: var(--try-it-panel-active-tab-background-color);\n "],["\n border-bottom: 4px solid var(--try-it-panel-active-tab-border-color);\n background-color: var(--try-it-panel-active-tab-background-color);\n "])))||""}),(function(r){return r.disabled&&css(templateObject_3||(templateObject_3=__makeTemplateObject(["\n cursor: default;\n color: var(--try-it-panel-disabled-tab-color);\n "],["\n cursor: default;\n color: var(--try-it-panel-disabled-tab-color);\n "])))||""}));var templateObject_1,templateObject_2,templateObject_3,templateObject_4;
1
+ import{__makeTemplateObject}from"tslib";import styled,{css}from"styled-components";export var TabsWrap=styled.div(templateObject_1||(templateObject_1=__makeTemplateObject(["\n display: flex;\n font-size: 12px;\n button {\n margin: 0;\n }\n"],["\n display: flex;\n font-size: 12px;\n button {\n margin: 0;\n }\n"])));export var Tab=styled.button(templateObject_4||(templateObject_4=__makeTemplateObject(["\n outline: none;\n border: none;\n background-color: var(--panel-try-it-tabs-background-color);\n text-align: center;\n cursor: pointer;\n color: var(--panel-try-it-tabs-text-color);\n min-width: 80px;\n min-height: 30px;\n border-radius: var(--border-radius);\n font-size: var(--panel-try-it-tabs-font-size);\n font-family: var(--panel-try-it-tabs-font-family);\n font-weight: var(--panel-try-it-tabs-font-weight);\n padding: 0 10px;\n border-bottom: 4px solid var(--panel-try-it-tabs-border-color);\n\n &:first-child {\n border-radius: var(--border-radius) 0 0 var(--border-radius);\n }\n\n &:last-child {\n border-radius: 0 var(--border-radius) var(--border-radius) 0;\n }\n\n &:hover:not(:disabled) {\n border-color: var(--panel-try-it-tabs-hover-border-color);\n background-color: var(--panel-try-it-tabs-hover-background-color);\n }\n\n ","\n\n ","\n"],["\n outline: none;\n border: none;\n background-color: var(--panel-try-it-tabs-background-color);\n text-align: center;\n cursor: pointer;\n color: var(--panel-try-it-tabs-text-color);\n min-width: 80px;\n min-height: 30px;\n border-radius: var(--border-radius);\n font-size: var(--panel-try-it-tabs-font-size);\n font-family: var(--panel-try-it-tabs-font-family);\n font-weight: var(--panel-try-it-tabs-font-weight);\n padding: 0 10px;\n border-bottom: 4px solid var(--panel-try-it-tabs-border-color);\n\n &:first-child {\n border-radius: var(--border-radius) 0 0 var(--border-radius);\n }\n\n &:last-child {\n border-radius: 0 var(--border-radius) var(--border-radius) 0;\n }\n\n &:hover:not(:disabled) {\n border-color: var(--panel-try-it-tabs-hover-border-color);\n background-color: var(--panel-try-it-tabs-hover-background-color);\n }\n\n ","\n\n ","\n"])),(function(r){return r.active&&css(templateObject_2||(templateObject_2=__makeTemplateObject(["\n border-color: var(--panel-try-it-tabs-active-border-color);\n background-color: var(--panel-try-it-tabs-active-background-color);\n "],["\n border-color: var(--panel-try-it-tabs-active-border-color);\n background-color: var(--panel-try-it-tabs-active-background-color);\n "])))||""}),(function(r){return r.disabled&&css(templateObject_3||(templateObject_3=__makeTemplateObject(["\n cursor: default;\n border-color: var(--panel-try-it-tabs-disables-border-color)\n background-color: var(--panel-try-it-tabs-disabled-background-color);\n color: var(--panel-try-it-tabs-disabled-text-color);\n "],["\n cursor: default;\n border-color: var(--panel-try-it-tabs-disables-border-color)\n background-color: var(--panel-try-it-tabs-disabled-background-color);\n color: var(--panel-try-it-tabs-disabled-text-color);\n "])))||""}));var templateObject_1,templateObject_2,templateObject_3,templateObject_4;
2
2
  //# sourceMappingURL=styled.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{OAuth2,deriveCodeChallenge}from"../../services/OAuth2";import{fromSessionStorage,getSecurityDetailsOptions}from"../../utils";import{isEmptyObject,randString}from"../../services/utils";import{normalizeUrlProtocol}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;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/Button";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
  };