@redocly/openapi-docs 3.4.0-rc.5 → 3.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (407) hide show
  1. package/dist/redocly-openapi-docs.min.js +1565 -1366
  2. package/lib/components/ApiInfo/ApiInfo.js +1 -1
  3. package/lib/components/ApiInfo/Metadata.d.ts +3 -1
  4. package/lib/components/ApiInfo/Metadata.js +1 -1
  5. package/lib/components/CallbackSamples/CallbackSamples.d.ts +2 -1
  6. package/lib/components/CallbackSamples/CallbackSamples.js +1 -1
  7. package/lib/components/Callbacks/CallbackDetails.d.ts +2 -1
  8. package/lib/components/Callbacks/CallbackDetails.js +1 -1
  9. package/lib/components/Callbacks/CallbackOperation.js +1 -1
  10. package/lib/components/Callbacks/CallbackSummary.d.ts +3 -2
  11. package/lib/components/Callbacks/CallbackSummary.js +1 -1
  12. package/lib/components/Callbacks/CallbacksList.d.ts +0 -1
  13. package/lib/components/Callbacks/styled.d.ts +1 -1
  14. package/lib/components/Content/Content.d.ts +0 -1
  15. package/lib/components/Content/useAutoScroll.js +1 -1
  16. package/lib/components/ContentItem/ContentItem.d.ts +0 -1
  17. package/lib/components/ContentItem/useIsExpanded.js +1 -1
  18. package/lib/components/ContentItems/ContentItems.d.ts +0 -1
  19. package/lib/components/ContentItems/helpers.js +1 -1
  20. package/lib/components/Discriminator/Discriminator.d.ts +2 -1
  21. package/lib/components/Discriminator/Discriminator.js +1 -1
  22. package/lib/components/ExpandAllButton/ExpandAllButton.js +1 -1
  23. package/lib/components/ExpandAllButton/getAllNestedSchema.d.ts +4 -4
  24. package/lib/components/ExpandAllButton/useUpdateExpandedFields.js +1 -1
  25. package/lib/components/ExternalDocumentation/ExternalDocumentation.d.ts +0 -1
  26. package/lib/components/Language/LanguageList.d.ts +0 -1
  27. package/lib/components/Language/styled.d.ts +12 -13
  28. package/lib/components/MediaTypeSwitch/MediaTypesSwitch.js +1 -1
  29. package/lib/components/OperationItem/Description.js +1 -1
  30. package/lib/components/OperationItem/OperationItem.d.ts +0 -1
  31. package/lib/components/OperationItem/OperationItem.js +2 -2
  32. package/lib/components/Overview/Overview.d.ts +8 -3
  33. package/lib/components/Overview/Overview.js +1 -1
  34. package/lib/components/PageFooter/PageFooter.d.ts +0 -1
  35. package/lib/components/PageFooter/PageFooter.js +1 -1
  36. package/lib/components/PanelItem/styled.d.ts +5 -6
  37. package/lib/components/PayloadSamples/Example.js +1 -1
  38. package/lib/components/PayloadSamples/ExampleValue.d.ts +0 -1
  39. package/lib/components/PayloadSamples/ExampleValue.js +1 -1
  40. package/lib/components/PayloadSamples/ExternalExample.js +1 -1
  41. package/lib/components/PayloadSamples/MediaTypeSamples.d.ts +0 -1
  42. package/lib/components/PayloadSamples/MediaTypeSamples.js +1 -1
  43. package/lib/components/PayloadSamples/PayloadSamples.d.ts +0 -1
  44. package/lib/components/PayloadSamples/PayloadSamples.js +1 -1
  45. package/lib/components/PayloadSamples/useExternalExample.js +1 -1
  46. package/lib/components/PropertyDetails/DescriptionEnums.d.ts +1 -1
  47. package/lib/components/PropertyDetails/DescriptionEnums.js +2 -2
  48. package/lib/components/PropertyDetails/EnumValues.d.ts +0 -1
  49. package/lib/components/PropertyDetails/EnumValues.js +1 -1
  50. package/lib/components/PropertyDetails/Examples.js +1 -1
  51. package/lib/components/PropertyDetails/Extensions.d.ts +0 -1
  52. package/lib/components/PropertyDetails/FieldDetail.d.ts +1 -1
  53. package/lib/components/PropertyDetails/FieldDetail.js +1 -1
  54. package/lib/components/PropertyDetails/FieldDetails.d.ts +0 -1
  55. package/lib/components/PropertyDetails/FieldDetails.js +4 -3
  56. package/lib/components/PropertyDetails/Pattern.js +1 -1
  57. package/lib/components/PropertyDetails/PlusCircleIcon.js +1 -1
  58. package/lib/components/PropertyDetails/PropertyDetails.d.ts +0 -1
  59. package/lib/components/PropertyDetails/SchemaTypeInfo.js +1 -1
  60. package/lib/components/PropertyDetails/SimpleEnums.d.ts +1 -1
  61. package/lib/components/PropertyDetails/SimpleEnums.js +1 -1
  62. package/lib/components/PropertyDetails/styled.d.ts +1 -10
  63. package/lib/components/PropertyDetails/types.d.ts +3 -0
  64. package/lib/components/RedoclyOpenAPIDocs/Providers.js +1 -1
  65. package/lib/components/RedoclyOpenAPIDocs/RedoclyOpenAPIDocs.js +1 -1
  66. package/lib/components/RedoclyOpenAPIDocs/styled.d.ts +0 -4
  67. package/lib/components/RedoclyOpenAPIDocs/styled.js +1 -30
  68. package/lib/components/RedoclyOpenAPIDocs/types.d.ts +0 -3
  69. package/lib/components/RedoclyOpenAPIDocs/utils.js +1 -1
  70. package/lib/components/RenderHook/RenderHook.js +1 -1
  71. package/lib/components/Replay/EmbeddedReplay.d.ts +0 -1
  72. package/lib/components/Replay/EmbeddedReplay.js +1 -1
  73. package/lib/components/Replay/Replay.d.ts +0 -1
  74. package/lib/components/Replay/Replay.js +2 -9
  75. package/lib/components/Replay/utils.js +1 -1
  76. package/lib/components/Request/RequestDetails.d.ts +0 -1
  77. package/lib/components/Request/RequestDetails.js +1 -1
  78. package/lib/components/Request/types.d.ts +2 -0
  79. package/lib/components/RequestParameters/Body.d.ts +0 -1
  80. package/lib/components/RequestParameters/ParametersGroup.d.ts +0 -1
  81. package/lib/components/RequestParameters/RequestParameters.js +1 -1
  82. package/lib/components/RequestSamples/CodeSample.d.ts +0 -1
  83. package/lib/components/RequestSamples/RequestSamples.d.ts +0 -1
  84. package/lib/components/RequestSamples/useCodeSamples.js +1 -1
  85. package/lib/components/ResponseSamples/Summary.js +1 -1
  86. package/lib/components/Responses/OperationResponseList.js +1 -1
  87. package/lib/components/Responses/ResponseDetails.d.ts +0 -1
  88. package/lib/components/Responses/ResponseHeaders.d.ts +0 -1
  89. package/lib/components/Responses/ResponseHeaders.js +1 -1
  90. package/lib/components/Responses/styled.d.ts +1 -2
  91. package/lib/components/RightPanel/RightPanel.js +1 -1
  92. package/lib/components/Samples/use-example-key.js +1 -1
  93. package/lib/components/Schema/ArraySchema.d.ts +0 -1
  94. package/lib/components/Schema/ObjectSchema.d.ts +0 -1
  95. package/lib/components/Schema/ObjectSchema.js +1 -1
  96. package/lib/components/Schema/OneOfSchema.d.ts +0 -1
  97. package/lib/components/Schema/OneOfSchema.js +1 -1
  98. package/lib/components/Schema/RecursiveSchema.d.ts +0 -1
  99. package/lib/components/Schema/RecursiveSchema.js +1 -1
  100. package/lib/components/Schema/Schema.d.ts +0 -1
  101. package/lib/components/Schema/SubSchema.js +1 -1
  102. package/lib/components/Schema/helpers.d.ts +1 -1
  103. package/lib/components/Schema/helpers.js +1 -1
  104. package/lib/components/Schema/useOneOfLocationIdx.js +1 -1
  105. package/lib/components/SchemaDefinition/SchemaDefinition.d.ts +0 -1
  106. package/lib/components/SectionContent/SectionContent.js +1 -1
  107. package/lib/components/SectionItem/SectionItem.d.ts +0 -1
  108. package/lib/components/Security/Divider.js +1 -1
  109. package/lib/components/Security/OAuthFlow.js +1 -1
  110. package/lib/components/Security/Security.js +1 -1
  111. package/lib/components/Security/SecurityButton.js +1 -1
  112. package/lib/components/Security/SecurityFlow.js +1 -1
  113. package/lib/components/Security/SecurityModal.js +1 -1
  114. package/lib/components/Security/SecuritySchemeItem.js +1 -1
  115. package/lib/components/Security/helper.js +1 -1
  116. package/lib/components/SelectOrLabel/SelectOrLabel.js +2 -2
  117. package/lib/components/ServerList/ServerList.d.ts +1 -1
  118. package/lib/components/ServerList/ServerList.js +1 -1
  119. package/lib/components/ServerList/types.d.ts +4 -1
  120. package/lib/components/ServerListDropdown/ServerListDropdown.js +1 -1
  121. package/lib/components/ServerListDropdown/styled.d.ts +0 -1
  122. package/lib/components/SideMenu/SideMenu.d.ts +0 -1
  123. package/lib/components/SideMenu/hooks/useMenuItems.js +1 -1
  124. package/lib/components/Tabs/Tabs.js +1 -1
  125. package/lib/components/Tabs/useTabsState.js +1 -1
  126. package/lib/components/TagItem/OperationNavigationItems.d.ts +9 -0
  127. package/lib/components/TagItem/OperationNavigationItems.js +37 -0
  128. package/lib/components/TagItem/OperationsNavigation.d.ts +1 -7
  129. package/lib/components/TagItem/OperationsNavigation.js +1 -40
  130. package/lib/components/TagItem/TagItem.js +1 -1
  131. package/lib/components/TagItem/styled.d.ts +1 -0
  132. package/lib/components/TagItem/styled.js +6 -0
  133. package/lib/components/TagItem/types.d.ts +5 -0
  134. package/lib/components/TagItem/types.js +2 -0
  135. package/lib/components/common/Badges.d.ts +2 -2
  136. package/lib/components/common/BodyContent/BodyContent.d.ts +0 -1
  137. package/lib/components/common/BodyContent/BodyContent.js +1 -1
  138. package/lib/components/common/ClearButton/ClearButton.d.ts +0 -1
  139. package/lib/components/common/ClearButton/styled.d.ts +0 -1
  140. package/lib/components/common/ConstraintsView.d.ts +0 -1
  141. package/lib/components/common/ExpandableExample/ExpandableExample.js +1 -1
  142. package/lib/components/common/Extensions.d.ts +0 -1
  143. package/lib/components/common/Fields/fields-layout.d.ts +3 -3
  144. package/lib/components/common/Fields/fields.d.ts +1 -2
  145. package/lib/components/common/LinkToField.js +1 -1
  146. package/lib/components/common/Select/Select.d.ts +0 -1
  147. package/lib/components/common/Select/styled.d.ts +11 -12
  148. package/lib/components/common/Skeleton/Skeleton.d.ts +1 -1
  149. package/lib/components/common/Skeleton/Skeleton.js +2 -2
  150. package/lib/components/common/linkify.js +2 -2
  151. package/lib/components/common/panels.d.ts +7 -7
  152. package/lib/components/common/panels.js +2 -2
  153. package/lib/components/pluggable/styled.components.d.ts +3 -3
  154. package/lib/events/creator.js +1 -1
  155. package/lib/hoc/utils.js +1 -1
  156. package/lib/hoc/withRouter.js +1 -1
  157. package/lib/hoc/withStore.js +1 -1
  158. package/lib/hooks/index.d.ts +1 -0
  159. package/lib/hooks/index.js +1 -1
  160. package/lib/hooks/useActivateExample.js +1 -1
  161. package/lib/hooks/useActiveWithFallback.js +1 -1
  162. package/lib/hooks/useDimensions.js +1 -1
  163. package/lib/hooks/useLicense.js +1 -1
  164. package/lib/hooks/usePrevious.js +1 -1
  165. package/lib/hooks/useRouter.d.ts +1 -1
  166. package/lib/hooks/useTranslate.d.ts +2 -0
  167. package/lib/hooks/useTranslate.js +2 -0
  168. package/lib/hooks/useUppercase2LowercaseRedirect.js +1 -1
  169. package/lib/index.js +1 -1
  170. package/lib/jotai/app.d.ts +2 -4
  171. package/lib/jotai/app.js +1 -1
  172. package/lib/jotai/operation.js +1 -1
  173. package/lib/models/callback.js +1 -1
  174. package/lib/models/example.js +1 -1
  175. package/lib/models/field.js +1 -1
  176. package/lib/models/group.js +1 -1
  177. package/lib/models/mediaContent.js +1 -1
  178. package/lib/models/mediaType.js +1 -1
  179. package/lib/models/operation.js +1 -1
  180. package/lib/models/request.js +1 -1
  181. package/lib/models/response.js +1 -1
  182. package/lib/models/schema.js +1 -1
  183. package/lib/models/security.js +1 -1
  184. package/lib/models/tab.d.ts +1 -1
  185. package/lib/services/OpenAPIParser.js +1 -1
  186. package/lib/services/check.js +1 -1
  187. package/lib/services/code-samples/generator.d.ts +3 -1
  188. package/lib/services/code-samples/generator.js +1 -1
  189. package/lib/services/code-samples/httpsnippet/helpers/code-helpers.js +1 -1
  190. package/lib/services/code-samples/httpsnippet/targets/__mocks__/mock.d.ts +46 -0
  191. package/lib/services/code-samples/httpsnippet/targets/__mocks__/mock.js +1 -1
  192. package/lib/services/code-samples/httpsnippet/targets/index.d.ts +2 -2
  193. package/lib/services/code-samples/httpsnippet/targets/java/httpclient.js +1 -1
  194. package/lib/services/code-samples/httpsnippet/targets/java8/apachehttp.js +1 -1
  195. package/lib/services/code-samples/httpsnippet/targets/javascript/fetch.js +1 -1
  196. package/lib/services/code-samples/httpsnippet/targets/javascript/index.d.ts +1 -1
  197. package/lib/services/code-samples/httpsnippet/targets/node/fetch.js +1 -1
  198. package/lib/services/code-samples/httpsnippet/targets/php/utils.js +1 -1
  199. package/lib/services/code-samples/httpsnippet/targets/python/requests.js +1 -1
  200. package/lib/services/code-samples/httpsnippet/targets/r/utils.js +1 -1
  201. package/lib/services/code-samples/httpsnippet/targets/shell/index.d.ts +1 -1
  202. package/lib/services/config-options/helpers.js +1 -1
  203. package/lib/services/config-options/normalizeOptions.js +1 -1
  204. package/lib/services/history/helpers.js +1 -1
  205. package/lib/services/menu/builder.js +1 -1
  206. package/lib/services/menu/markdown.js +1 -1
  207. package/lib/services/menu/operation.js +1 -1
  208. package/lib/services/menu/tags.js +1 -1
  209. package/lib/services/utils.js +1 -1
  210. package/lib/standalone.js +1 -1
  211. package/lib/utils/areArraysEqual.js +1 -1
  212. package/lib/utils/argValuesHelpers.js +1 -1
  213. package/lib/utils/compose.d.ts +1 -1
  214. package/lib/utils/convertExamplesFormat.d.ts +2 -0
  215. package/lib/utils/convertExamplesFormat.js +2 -0
  216. package/lib/utils/cookies.js +1 -1
  217. package/lib/utils/createParsedDocument.js +1 -1
  218. package/lib/utils/debounce.js +1 -1
  219. package/lib/utils/debug.js +1 -1
  220. package/lib/utils/dom.js +1 -1
  221. package/lib/utils/environments.js +1 -1
  222. package/lib/utils/helpers.d.ts +2 -2
  223. package/lib/utils/helpers.js +1 -1
  224. package/lib/utils/highlight.js +1 -1
  225. package/lib/utils/isMobile.js +1 -1
  226. package/lib/utils/loadAndBundleSpec.js +1 -1
  227. package/lib/utils/local-storage.js +1 -1
  228. package/lib/utils/object.js +1 -1
  229. package/lib/utils/openapi.d.ts +2 -1
  230. package/lib/utils/openapi.js +1 -1
  231. package/lib/utils/parameters.js +1 -1
  232. package/lib/utils/path.js +1 -1
  233. package/lib/utils/replaceVariables.js +1 -1
  234. package/lib/utils/saveTextBeforeHeading.js +1 -1
  235. package/lib/utils/security-details.js +1 -1
  236. package/lib/utils/session-storage.js +1 -1
  237. package/lib/utils/sort.js +1 -1
  238. package/lib/utils/string.js +1 -1
  239. package/lib/utils/test-utils.js +1 -1
  240. package/lib/utils/theme-helpers.js +2 -2
  241. package/lib-esm/components/ApiInfo/ApiInfo.js +1 -1
  242. package/lib-esm/components/ApiInfo/Metadata.d.ts +3 -1
  243. package/lib-esm/components/ApiInfo/Metadata.js +1 -1
  244. package/lib-esm/components/CallbackSamples/CallbackSamples.d.ts +2 -1
  245. package/lib-esm/components/CallbackSamples/CallbackSamples.js +1 -1
  246. package/lib-esm/components/Callbacks/CallbackDetails.d.ts +2 -1
  247. package/lib-esm/components/Callbacks/CallbackDetails.js +1 -1
  248. package/lib-esm/components/Callbacks/CallbackOperation.js +1 -1
  249. package/lib-esm/components/Callbacks/CallbackSummary.d.ts +3 -2
  250. package/lib-esm/components/Callbacks/CallbackSummary.js +1 -1
  251. package/lib-esm/components/Callbacks/CallbacksList.d.ts +0 -1
  252. package/lib-esm/components/Callbacks/styled.d.ts +1 -1
  253. package/lib-esm/components/Content/Content.d.ts +0 -1
  254. package/lib-esm/components/ContentItem/ContentItem.d.ts +0 -1
  255. package/lib-esm/components/ContentItems/ContentItems.d.ts +0 -1
  256. package/lib-esm/components/Discriminator/Discriminator.d.ts +2 -1
  257. package/lib-esm/components/Discriminator/Discriminator.js +1 -1
  258. package/lib-esm/components/ExpandAllButton/ExpandAllButton.js +1 -1
  259. package/lib-esm/components/ExpandAllButton/getAllNestedSchema.d.ts +4 -4
  260. package/lib-esm/components/ExternalDocumentation/ExternalDocumentation.d.ts +0 -1
  261. package/lib-esm/components/Language/LanguageList.d.ts +0 -1
  262. package/lib-esm/components/Language/styled.d.ts +12 -13
  263. package/lib-esm/components/MediaTypeSwitch/MediaTypesSwitch.js +1 -1
  264. package/lib-esm/components/OperationItem/OperationItem.d.ts +0 -1
  265. package/lib-esm/components/OperationItem/OperationItem.js +2 -2
  266. package/lib-esm/components/Overview/Overview.d.ts +8 -3
  267. package/lib-esm/components/Overview/Overview.js +1 -1
  268. package/lib-esm/components/PageFooter/PageFooter.d.ts +0 -1
  269. package/lib-esm/components/PanelItem/styled.d.ts +5 -6
  270. package/lib-esm/components/PayloadSamples/Example.js +1 -1
  271. package/lib-esm/components/PayloadSamples/ExampleValue.d.ts +0 -1
  272. package/lib-esm/components/PayloadSamples/MediaTypeSamples.d.ts +0 -1
  273. package/lib-esm/components/PayloadSamples/MediaTypeSamples.js +1 -1
  274. package/lib-esm/components/PayloadSamples/PayloadSamples.d.ts +0 -1
  275. package/lib-esm/components/PayloadSamples/PayloadSamples.js +1 -1
  276. package/lib-esm/components/PropertyDetails/DescriptionEnums.d.ts +1 -1
  277. package/lib-esm/components/PropertyDetails/DescriptionEnums.js +1 -1
  278. package/lib-esm/components/PropertyDetails/EnumValues.d.ts +0 -1
  279. package/lib-esm/components/PropertyDetails/EnumValues.js +1 -1
  280. package/lib-esm/components/PropertyDetails/Examples.js +1 -1
  281. package/lib-esm/components/PropertyDetails/Extensions.d.ts +0 -1
  282. package/lib-esm/components/PropertyDetails/FieldDetail.d.ts +1 -1
  283. package/lib-esm/components/PropertyDetails/FieldDetail.js +1 -1
  284. package/lib-esm/components/PropertyDetails/FieldDetails.d.ts +0 -1
  285. package/lib-esm/components/PropertyDetails/FieldDetails.js +4 -3
  286. package/lib-esm/components/PropertyDetails/Pattern.js +1 -1
  287. package/lib-esm/components/PropertyDetails/PropertyDetails.d.ts +0 -1
  288. package/lib-esm/components/PropertyDetails/SimpleEnums.d.ts +1 -1
  289. package/lib-esm/components/PropertyDetails/SimpleEnums.js +1 -1
  290. package/lib-esm/components/PropertyDetails/styled.d.ts +1 -10
  291. package/lib-esm/components/PropertyDetails/types.d.ts +3 -0
  292. package/lib-esm/components/RedoclyOpenAPIDocs/Providers.js +1 -1
  293. package/lib-esm/components/RedoclyOpenAPIDocs/RedoclyOpenAPIDocs.js +1 -1
  294. package/lib-esm/components/RedoclyOpenAPIDocs/styled.d.ts +0 -4
  295. package/lib-esm/components/RedoclyOpenAPIDocs/styled.js +1 -30
  296. package/lib-esm/components/RedoclyOpenAPIDocs/types.d.ts +0 -3
  297. package/lib-esm/components/Replay/EmbeddedReplay.d.ts +0 -1
  298. package/lib-esm/components/Replay/EmbeddedReplay.js +1 -1
  299. package/lib-esm/components/Replay/Replay.d.ts +0 -1
  300. package/lib-esm/components/Replay/Replay.js +2 -9
  301. package/lib-esm/components/Request/RequestDetails.d.ts +0 -1
  302. package/lib-esm/components/Request/RequestDetails.js +1 -1
  303. package/lib-esm/components/Request/types.d.ts +2 -0
  304. package/lib-esm/components/RequestParameters/Body.d.ts +0 -1
  305. package/lib-esm/components/RequestParameters/ParametersGroup.d.ts +0 -1
  306. package/lib-esm/components/RequestParameters/RequestParameters.js +1 -1
  307. package/lib-esm/components/RequestSamples/CodeSample.d.ts +0 -1
  308. package/lib-esm/components/RequestSamples/RequestSamples.d.ts +0 -1
  309. package/lib-esm/components/RequestSamples/useCodeSamples.js +1 -1
  310. package/lib-esm/components/ResponseSamples/Summary.js +1 -1
  311. package/lib-esm/components/Responses/OperationResponseList.js +1 -1
  312. package/lib-esm/components/Responses/ResponseDetails.d.ts +0 -1
  313. package/lib-esm/components/Responses/ResponseHeaders.d.ts +0 -1
  314. package/lib-esm/components/Responses/ResponseHeaders.js +1 -1
  315. package/lib-esm/components/Responses/styled.d.ts +1 -2
  316. package/lib-esm/components/RightPanel/RightPanel.js +1 -1
  317. package/lib-esm/components/Schema/ArraySchema.d.ts +0 -1
  318. package/lib-esm/components/Schema/ObjectSchema.d.ts +0 -1
  319. package/lib-esm/components/Schema/ObjectSchema.js +1 -1
  320. package/lib-esm/components/Schema/OneOfSchema.d.ts +0 -1
  321. package/lib-esm/components/Schema/OneOfSchema.js +1 -1
  322. package/lib-esm/components/Schema/RecursiveSchema.d.ts +0 -1
  323. package/lib-esm/components/Schema/RecursiveSchema.js +1 -1
  324. package/lib-esm/components/Schema/Schema.d.ts +0 -1
  325. package/lib-esm/components/Schema/SubSchema.js +1 -1
  326. package/lib-esm/components/Schema/helpers.d.ts +1 -1
  327. package/lib-esm/components/Schema/helpers.js +1 -1
  328. package/lib-esm/components/SchemaDefinition/SchemaDefinition.d.ts +0 -1
  329. package/lib-esm/components/SectionItem/SectionItem.d.ts +0 -1
  330. package/lib-esm/components/Security/OAuthFlow.js +1 -1
  331. package/lib-esm/components/Security/SecurityFlow.js +1 -1
  332. package/lib-esm/components/Security/SecurityModal.js +1 -1
  333. package/lib-esm/components/ServerList/ServerList.d.ts +1 -1
  334. package/lib-esm/components/ServerList/ServerList.js +1 -1
  335. package/lib-esm/components/ServerList/types.d.ts +4 -1
  336. package/lib-esm/components/ServerListDropdown/ServerListDropdown.js +1 -1
  337. package/lib-esm/components/ServerListDropdown/styled.d.ts +0 -1
  338. package/lib-esm/components/SideMenu/SideMenu.d.ts +0 -1
  339. package/lib-esm/components/TagItem/OperationNavigationItems.d.ts +9 -0
  340. package/lib-esm/components/TagItem/OperationNavigationItems.js +37 -0
  341. package/lib-esm/components/TagItem/OperationsNavigation.d.ts +1 -7
  342. package/lib-esm/components/TagItem/OperationsNavigation.js +1 -40
  343. package/lib-esm/components/TagItem/TagItem.js +2 -2
  344. package/lib-esm/components/TagItem/styled.d.ts +1 -0
  345. package/lib-esm/components/TagItem/styled.js +6 -0
  346. package/lib-esm/components/TagItem/types.d.ts +5 -0
  347. package/lib-esm/components/TagItem/types.js +2 -0
  348. package/lib-esm/components/common/Badges.d.ts +2 -2
  349. package/lib-esm/components/common/BodyContent/BodyContent.d.ts +0 -1
  350. package/lib-esm/components/common/BodyContent/BodyContent.js +1 -1
  351. package/lib-esm/components/common/ClearButton/ClearButton.d.ts +0 -1
  352. package/lib-esm/components/common/ClearButton/styled.d.ts +0 -1
  353. package/lib-esm/components/common/ConstraintsView.d.ts +0 -1
  354. package/lib-esm/components/common/ExpandableExample/ExpandableExample.js +1 -1
  355. package/lib-esm/components/common/Extensions.d.ts +0 -1
  356. package/lib-esm/components/common/Fields/fields-layout.d.ts +3 -3
  357. package/lib-esm/components/common/Fields/fields.d.ts +1 -2
  358. package/lib-esm/components/common/Select/Select.d.ts +0 -1
  359. package/lib-esm/components/common/Select/styled.d.ts +11 -12
  360. package/lib-esm/components/common/Skeleton/Skeleton.d.ts +1 -1
  361. package/lib-esm/components/common/panels.d.ts +7 -7
  362. package/lib-esm/components/common/panels.js +2 -2
  363. package/lib-esm/components/pluggable/styled.components.d.ts +3 -3
  364. package/lib-esm/hooks/index.d.ts +1 -0
  365. package/lib-esm/hooks/index.js +1 -1
  366. package/lib-esm/hooks/useRouter.d.ts +1 -1
  367. package/lib-esm/hooks/useTranslate.d.ts +2 -0
  368. package/lib-esm/hooks/useTranslate.js +2 -0
  369. package/lib-esm/jotai/app.d.ts +2 -4
  370. package/lib-esm/jotai/app.js +1 -1
  371. package/lib-esm/models/mediaType.js +1 -1
  372. package/lib-esm/models/tab.d.ts +1 -1
  373. package/lib-esm/services/code-samples/generator.d.ts +3 -1
  374. package/lib-esm/services/code-samples/generator.js +1 -1
  375. package/lib-esm/services/code-samples/httpsnippet/targets/__mocks__/mock.d.ts +46 -0
  376. package/lib-esm/services/code-samples/httpsnippet/targets/__mocks__/mock.js +1 -1
  377. package/lib-esm/services/code-samples/httpsnippet/targets/index.d.ts +2 -2
  378. package/lib-esm/services/code-samples/httpsnippet/targets/java/httpclient.js +1 -1
  379. package/lib-esm/services/code-samples/httpsnippet/targets/java8/apachehttp.js +1 -1
  380. package/lib-esm/services/code-samples/httpsnippet/targets/javascript/fetch.js +1 -1
  381. package/lib-esm/services/code-samples/httpsnippet/targets/javascript/index.d.ts +1 -1
  382. package/lib-esm/services/code-samples/httpsnippet/targets/node/fetch.js +1 -1
  383. package/lib-esm/services/code-samples/httpsnippet/targets/python/requests.js +1 -1
  384. package/lib-esm/services/code-samples/httpsnippet/targets/shell/index.d.ts +1 -1
  385. package/lib-esm/utils/compose.d.ts +1 -1
  386. package/lib-esm/utils/convertExamplesFormat.d.ts +2 -0
  387. package/lib-esm/utils/convertExamplesFormat.js +2 -0
  388. package/lib-esm/utils/helpers.d.ts +2 -2
  389. package/lib-esm/utils/openapi.d.ts +2 -1
  390. package/lib-esm/utils/openapi.js +1 -1
  391. package/package.json +15 -14
  392. package/lib/components/UnsupportedFeatureScreen/UnsupportedFeatureScreen.d.ts +0 -1
  393. package/lib/components/UnsupportedFeatureScreen/UnsupportedFeatureScreen.js +0 -18
  394. package/lib/components/UnsupportedFeatureScreen/index.d.ts +0 -1
  395. package/lib/components/UnsupportedFeatureScreen/index.js +0 -2
  396. package/lib/setupTests.d.ts +0 -2
  397. package/lib/setupTests.js +0 -2
  398. package/lib/testProviders.d.ts +0 -3
  399. package/lib/testProviders.js +0 -2
  400. package/lib-esm/components/UnsupportedFeatureScreen/UnsupportedFeatureScreen.d.ts +0 -1
  401. package/lib-esm/components/UnsupportedFeatureScreen/UnsupportedFeatureScreen.js +0 -18
  402. package/lib-esm/components/UnsupportedFeatureScreen/index.d.ts +0 -1
  403. package/lib-esm/components/UnsupportedFeatureScreen/index.js +0 -2
  404. package/lib-esm/setupTests.d.ts +0 -2
  405. package/lib-esm/setupTests.js +0 -2
  406. package/lib-esm/testProviders.d.ts +0 -3
  407. package/lib-esm/testProviders.js +0 -2
@@ -1,2 +1,2 @@
1
- "use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.safeJsonParse=exports.safeSlugify=exports.encodeBackSlashes=exports.unescapeFormId=exports.escapeFormId=exports.strikethroughText=void 0;const slugify_1=__importDefault(require("slugify"));function strikethroughText(e){return e.split("").map((e=>e+"̵")).join("")}function escapeFormId(e){return e.replace(/[.[\]]/g,(e=>({".":"%2e","[":"%5b","]":"%5d"}[e]||"")))}function unescapeFormId(e){return e.replace(/%2e|%5b|%5d/g,(e=>({"%2e":".","%5b":"[","%5d":"]"}[e]||"")))}function encodeBackSlashes(e){return e.replace(/\\/g,"%5C")}function safeSlugify(e){return(0,slugify_1.default)(e)||e.toString().toLowerCase().replace(/\s+/g,"-").replace(/&/g,"-and-").replace(/--+/g,"-").replace(/^-+/,"").replace(/-+$/,"")}function safeJsonParse(e,r={}){try{return JSON.parse(e)}catch(e){return r}}exports.strikethroughText=strikethroughText,exports.escapeFormId=escapeFormId,exports.unescapeFormId=unescapeFormId,exports.encodeBackSlashes=encodeBackSlashes,exports.safeSlugify=safeSlugify,exports.safeJsonParse=safeJsonParse;
1
+ "use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.strikethroughText=strikethroughText,exports.escapeFormId=escapeFormId,exports.unescapeFormId=unescapeFormId,exports.encodeBackSlashes=encodeBackSlashes,exports.safeSlugify=safeSlugify,exports.safeJsonParse=safeJsonParse;const slugify_1=__importDefault(require("slugify"));function strikethroughText(e){return e.split("").map((e=>e+"̵")).join("")}function escapeFormId(e){return e.replace(/[.[\]]/g,(e=>({".":"%2e","[":"%5b","]":"%5d"}[e]||"")))}function unescapeFormId(e){return e.replace(/%2e|%5b|%5d/g,(e=>({"%2e":".","%5b":"[","%5d":"]"}[e]||"")))}function encodeBackSlashes(e){return e.replace(/\\/g,"%5C")}function safeSlugify(e){return(0,slugify_1.default)(e)||e.toString().toLowerCase().replace(/\s+/g,"-").replace(/&/g,"-and-").replace(/--+/g,"-").replace(/^-+/,"").replace(/-+$/,"")}function safeJsonParse(e,r={}){try{return JSON.parse(e)}catch(e){return r}}
2
2
  //# sourceMappingURL=string.js.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.filterPropsDeep=void 0;const object_1=require("./object");function traverseComponent(e,o){if(e&&(o(e),e.children))for(const r of e.children)traverseComponent(r,o)}function filterPropsDeep(e,o){return traverseComponent(e,(e=>{if(e.props)for(const r of o)(0,object_1.objectHas)(e.props,r)&&(0,object_1.objectSet)(e.props,r,"<<<filtered>>>")})),e}exports.filterPropsDeep=filterPropsDeep;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.filterPropsDeep=filterPropsDeep;const object_1=require("./object");function traverseComponent(e,o){if(e&&(o(e),e.children))for(const r of e.children)traverseComponent(r,o)}function filterPropsDeep(e,o){return traverseComponent(e,(e=>{if(e.props)for(const r of o)(0,object_1.objectHas)(e.props,r)&&(0,object_1.objectSet)(e.props,r,"<<<filtered>>>")})),e}
2
2
  //# sourceMappingURL=test-utils.js.map
@@ -1,4 +1,4 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.typography=exports.getTypographyCssRulesByComponentName=void 0;const styled_components_1=require("styled-components"),typographyProperties=Object.entries({fontSize:"font-size",fontWeight:"font-weight",fontFamily:"font-family",lineHeight:"line-height",color:"text-color",textTransform:"text-transform"});function getTypographyCssRulesByComponentName(e,t){const o={};for(const[s,r]of typographyProperties){const n=`--${e}-${r}`,p=t?`,var(--${t}-${r})`:"";o[s]=`var(${n}${p})`}return o}function typography(e,t){return styled_components_1.css`
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.getTypographyCssRulesByComponentName=getTypographyCssRulesByComponentName,exports.typography=typography;const styled_components_1=require("styled-components"),typographyProperties=Object.entries({fontSize:"font-size",fontWeight:"font-weight",fontFamily:"font-family",lineHeight:"line-height",color:"text-color",textTransform:"text-transform"});function getTypographyCssRulesByComponentName(e,t){const o={};for(const[n,s]of typographyProperties){const r=`--${e}-${s}`,p=t?`,var(--${t}-${s})`:"";o[n]=`var(${r}${p})`}return o}function typography(e,t){return styled_components_1.css`
2
2
  ${getTypographyCssRulesByComponentName(e,t)}
3
- `}exports.getTypographyCssRulesByComponentName=getTypographyCssRulesByComponentName,exports.typography=typography;
3
+ `}
4
4
  //# sourceMappingURL=theme-helpers.js.map
@@ -1,4 +1,4 @@
1
- import{jsxs as _jsxs,jsx as _jsx}from"react/jsx-runtime";import{useAtomValue}from"jotai";import{AfterOpenApiTitle,LayoutVariant}from"@redocly/theme";import styled from"styled-components";import{layoutAtom}from"../../jotai/app";import{SamplesMiddlePanel,Row,SamplesPanel}from"../common";import{ExternalDocumentation}from"../ExternalDocumentation";import{Markdown}from"../Markdown";import{ApiHeader}from"./styled";import{globalStoreAtom}from"../../jotai/store";import{saveTextBeforeHeading}from"../../utils/saveTextBeforeHeading";import{getValueFromMdParsedExtension}from"../../utils/helpers";import{RenderHook}from"../RenderHook";import{Metadata}from"./Metadata";import{RightPanel}from"../RightPanel/RightPanel";export function ApiInfo({item:e}){const{options:{unstable_hooks:o,hideInfoMetadata:t},parser:{definition:a}}=useAtomValue(globalStoreAtom),r=useAtomValue(layoutAtom),i=e.infoDefinition;if(!i)return null;const n=saveTextBeforeHeading(getValueFromMdParsedExtension(i,"description")||""),s=getValueFromMdParsedExtension(i,"summary")||void 0,l=null==a?void 0:a.externalDocs,m=i.version&&_jsxs("span",{children:["(",i.version,")"]})||null,d=r===LayoutVariant.STACKED;return _jsxs(Row,{layout:r,children:[_jsxs(SamplesMiddlePanel,{fullWidth:!0,className:"api-info",isStacked:d,children:[_jsxs(ApiHeader,{children:[i.title," ",m]}),_jsx(RenderHook,{Hook:AfterOpenApiTitle||(null==o?void 0:o.AfterApiTitle),props:{info:i}}),s&&_jsx(Markdown,{source:s,"data-role":"redoc-summary"}),n&&_jsx(Markdown,{source:n,"data-role":"redoc-description"}),l&&_jsx(ExternalDocumentation,{externalDocs:l}),!t&&_jsx(Metadata,{metadata:i["x-metadata"]})]}),d&&_jsx(RightPanelContainer,{isStacked:d,children:_jsx(RightPanel,{item:e})})]})}const RightPanelContainer=styled(SamplesPanel)`
1
+ import{jsxs as _jsxs,jsx as _jsx}from"react/jsx-runtime";import{useAtomValue}from"jotai";import{AfterOpenApiTitle,LayoutVariant}from"@redocly/theme";import styled from"styled-components";import{layoutAtom}from"../../jotai/app";import{SamplesMiddlePanel,Row,SamplesPanel}from"../common";import{ExternalDocumentation}from"../ExternalDocumentation";import{Markdown}from"../Markdown";import{ApiHeader}from"./styled";import{globalStoreAtom}from"../../jotai/store";import{saveTextBeforeHeading}from"../../utils/saveTextBeforeHeading";import{getValueFromMdParsedExtension}from"../../utils/helpers";import{RenderHook}from"../RenderHook";import{Metadata}from"./Metadata";import{RightPanel}from"../RightPanel";import{useTranslate}from"../../hooks";export function ApiInfo({item:e}){const o=useTranslate(),{options:{unstable_hooks:t,hideInfoMetadata:a},parser:{definition:r}}=useAtomValue(globalStoreAtom),i=useAtomValue(layoutAtom),n=e.infoDefinition;if(!n)return null;const s=saveTextBeforeHeading(getValueFromMdParsedExtension(n,"description")||""),l=getValueFromMdParsedExtension(n,"summary")||void 0,m=null==r?void 0:r.externalDocs,d=n.version&&_jsxs("span",{children:["(",n.version,")"]})||null,p=i===LayoutVariant.STACKED;return _jsxs(Row,{layout:i,children:[_jsxs(SamplesMiddlePanel,{fullWidth:!0,className:"api-info",isStacked:p,children:[_jsxs(ApiHeader,{children:[n.title," ",d]}),_jsx(RenderHook,{Hook:AfterOpenApiTitle||(null==t?void 0:t.AfterApiTitle),props:{info:n}}),l&&_jsx(Markdown,{source:l,"data-role":"redoc-summary"}),s&&_jsx(Markdown,{source:s,"data-role":"redoc-description"}),m&&_jsx(ExternalDocumentation,{externalDocs:m}),!a&&_jsx(Metadata,{metadata:n["x-metadata"],translate:o})]}),p&&_jsx(RightPanelContainer,{isStacked:p,children:_jsx(RightPanel,{item:e})})]})}const RightPanelContainer=styled(SamplesPanel)`
2
2
  position: static;
3
3
  `;
4
4
  //# sourceMappingURL=ApiInfo.js.map
@@ -1,7 +1,9 @@
1
+ import type { TFunction } from '@redocly/theme';
1
2
  import type { ReactElement } from 'react';
2
3
  import type { OpenAPIInfo } from '../../types';
3
4
  interface MetadataProps {
4
5
  metadata: OpenAPIInfo['x-metadata'];
6
+ translate: TFunction;
5
7
  }
6
- export declare function Metadata({ metadata }: MetadataProps): ReactElement | null;
8
+ export declare function Metadata({ metadata, translate }: MetadataProps): ReactElement | null;
7
9
  export {};
@@ -1,2 +1,2 @@
1
- import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";import{useMemo}from"react";import{Markdown as MarkdownWrapper,H3,isNotNull}from"@redocly/theme";import{isAbsoluteUrl}from"../../utils/helpers";const FILTER_OUT_KEYS=["title","description"];function metadataMap([e,r]){return FILTER_OUT_KEYS.includes(e)?null:Array.isArray(r)?{key:e,value:r.filter((e=>"object"!=typeof e)).join(", ")}:"object"==typeof r?null:{key:e,value:r}}export function Metadata({metadata:e}){const r=useMemo((()=>Object.entries(e||{}).map(metadataMap).filter(isNotNull)),[e]);return e?_jsxs(MarkdownWrapper,{children:[_jsx(H3,{children:"Metadata"}),_jsxs("table",{className:"md",children:[_jsx("thead",{children:_jsxs("tr",{children:[_jsx("th",{scope:"col",children:"Key"}),_jsx("th",{scope:"col",children:"Value"})]})}),_jsx("tbody",{children:r.map((({key:e,value:r})=>_jsxs("tr",{children:[_jsx("td",{children:e}),_jsx("td",{children:"string"==typeof r&&isAbsoluteUrl(r)?_jsx("a",{href:r,target:"_blank",rel:"noreferrer",children:r}):String(r)})]},e)))})]})]}):null}
1
+ import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";import{useMemo}from"react";import{Markdown as MarkdownWrapper,H3,isNotNull}from"@redocly/theme";const FILTER_OUT_KEYS=["title","description"];function metadataMap([e,t]){return FILTER_OUT_KEYS.includes(e)?null:Array.isArray(t)?{key:e,value:t.filter((e=>"object"!=typeof e)).join(", ")}:"object"==typeof t?null:{key:e,value:t}}export function Metadata({metadata:e,translate:t}){const a=useMemo((()=>Object.entries(e||{}).map(metadataMap).filter(isNotNull)),[e]);return e?_jsxs(MarkdownWrapper,{children:[_jsx(H3,{children:t("openapi.info.metadata.title","Metadata")}),_jsxs("table",{className:"md",children:[_jsx("thead",{children:_jsxs("tr",{children:[_jsx("th",{scope:"col",children:t("openapi.key","Key")}),_jsx("th",{scope:"col",children:t("openapi.value","Value")})]})}),_jsx("tbody",{children:a.map((({key:e,value:t})=>_jsxs("tr",{children:[_jsx("td",{children:e}),_jsx("td",{children:`${t}`})]},e)))})]})]}):null}
2
2
  //# sourceMappingURL=Metadata.js.map
@@ -1,6 +1,7 @@
1
- /// <reference types="react" />
1
+ import type { TFunction } from '@redocly/theme';
2
2
  import type { OperationModel } from '../../models';
3
3
  export interface CallbackSamplesProps {
4
4
  callback: OperationModel;
5
+ translate: TFunction;
5
6
  }
6
7
  export declare const CallbackSamples: import("react").NamedExoticComponent<CallbackSamplesProps>;
@@ -1,4 +1,4 @@
1
- import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";import{memo}from"react";import{PanelHeader}from"@redocly/theme";import styled from"styled-components";import{PayloadSamples}from"../PayloadSamples";import{ServerListDropdown}from"../ServerListDropdown";import{CodeBlockPanel}from"../common";function CallbackSamplesComponent({callback:e}){var o;if(!(null==e?void 0:e.hasSamples))return null;return _jsx(CodeBlockPanel,{className:"panel-callback-samples",header:()=>_jsxs(StyledPanelHeader,{isExpandable:!1,children:[_jsx(StyledServerListDropdown,{operation:e}),_jsx(PayloadTitle,{children:"Payload"})]}),isExpandable:!1,children:(null===(o=null==e?void 0:e.payload)||void 0===o?void 0:o.requestBodyContent)&&_jsx(PayloadSamples,{content:e.payload.requestBodyContent})})}export const CallbackSamples=memo(CallbackSamplesComponent);const PayloadTitle=styled.div`
1
+ import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";import{memo}from"react";import{PanelHeader}from"@redocly/theme";import styled from"styled-components";import{PayloadSamples}from"../PayloadSamples";import{ServerListDropdown}from"../ServerListDropdown";import{CodeBlockPanel}from"../common";function CallbackSamplesComponent({callback:e,translate:a}){var o;if(!(null==e?void 0:e.hasSamples))return null;return _jsx(CodeBlockPanel,{className:"panel-callback-samples",header:()=>_jsxs(StyledPanelHeader,{isExpandable:!1,children:[_jsx(StyledServerListDropdown,{operation:e}),_jsx(PayloadTitle,{children:a("openapi.payload","Payload")})]}),isExpandable:!1,children:(null===(o=null==e?void 0:e.payload)||void 0===o?void 0:o.requestBodyContent)&&_jsx(PayloadSamples,{content:e.payload.requestBodyContent})})}export const CallbackSamples=memo(CallbackSamplesComponent);const PayloadTitle=styled.div`
2
2
  font-size: var(--font-size-sm);
3
3
  font-style: normal;
4
4
  font-weight: var(--font-weight-regular);
@@ -1,6 +1,7 @@
1
- /// <reference types="react" />
1
+ import type { TFunction } from '@redocly/theme';
2
2
  import type { OperationModel } from '../../models';
3
3
  export interface CallbackDetailsProps {
4
4
  operation: OperationModel;
5
+ translate: TFunction;
5
6
  }
6
7
  export declare const CallbackDetails: import("react").NamedExoticComponent<CallbackDetailsProps>;
@@ -1,4 +1,4 @@
1
- import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from"react/jsx-runtime";import{memo,useCallback}from"react";import styled from"styled-components";import{LinkIcon}from"@redocly/theme";import{OperationResponseList}from"../Responses";import{RequestDetails}from"../Request/RequestDetails";import{LinkToField}from"../common/LinkToField";import{makeDeepLink}from"../../services";function CallbackDetailsComponent({operation:e}){var i;const t=useCallback((i=>_jsxs(Title,{children:[_jsx(LinkToField,{to:makeDeepLink(e.id,`${e.callbackId}/callback-response&c=${i.key}`)}),"Callback Response"]})),[e.callbackId,e.id]);return _jsxs(_Fragment,{children:[_jsx(RequestDetails,{operation:e,title:_jsxs(_Fragment,{children:[_jsx(LinkToField,{to:makeDeepLink(e.id,`${e.callbackId}/callback-request`)}),"Callback Request"]})}),(null===(i=e.responses)||void 0===i?void 0:i.length)?_jsx(OperationResponseList,{responses:e.responses,operationId:e.id,operationPointer:e.pointer,callbackId:e.callbackId,renderTitle:t}):null]})}export const CallbackDetails=memo(CallbackDetailsComponent);const Title=styled.h4`
1
+ import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from"react/jsx-runtime";import{memo,useCallback}from"react";import styled from"styled-components";import{LinkIcon}from"@redocly/theme";import{OperationResponseList}from"../Responses";import{RequestDetails}from"../Request/RequestDetails";import{LinkToField}from"../common/LinkToField";import{makeDeepLink}from"../../services";function CallbackDetailsComponent({operation:e,translate:t}){var i;const s=useCallback((i=>_jsxs(Title,{children:[_jsx(LinkToField,{to:makeDeepLink(e.id,`${e.callbackId}/callback-response&c=${i.key}`)}),t("openapi.callbackResponse","Callback Response")]})),[e.callbackId,e.id,t]);return _jsxs(_Fragment,{children:[_jsx(RequestDetails,{operation:e,title:_jsxs(_Fragment,{children:[_jsx(LinkToField,{to:makeDeepLink(e.id,`${e.callbackId}/callback-request`)}),t("openapi.callbackRequest","Callback Request")]})}),(null===(i=e.responses)||void 0===i?void 0:i.length)?_jsx(OperationResponseList,{responses:e.responses,operationId:e.id,operationPointer:e.pointer,callbackId:e.callbackId,renderTitle:s}):null]})}export const CallbackDetails=memo(CallbackDetailsComponent);const Title=styled.h4`
2
2
  position: relative;
3
3
  font-size: var(--font-size-lg);
4
4
  font-weight: var(--h4-font-weight);
@@ -1,4 +1,4 @@
1
- import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";import styled from"styled-components";import{useLocation}from"react-router-dom";import{CallbackPanel}from"../Panel";import{CallbackDetails}from"./CallbackDetails";import{CallbackSummary}from"./CallbackSummary";import{pathIncludesLink}from"../../utils";export const CallbackOperation=({operation:a,operation:{callbackId:l},onExpand:e,selectedCallback:o})=>{const t=useLocation();return _jsx(CallbackPanel,{header:({expanded:l,toggle:o})=>_jsx(CallbackSummary,{callback:a,toggle:t=>{null==o||o(t),null==e||e(l?null:a)},expanded:l}),expanded:(null==o?void 0:o.callbackId)===l||pathIncludesLink(t,l),className:"panel-response-callback",children:_jsxs(CallbackDetailsWrap,{children:[_jsx(CallbackDetails,{operation:a}),_jsx(LeftBorder,{})]})})};const CallbackDetailsWrap=styled.div`
1
+ import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";import styled from"styled-components";import{useLocation}from"react-router-dom";import{useTranslate}from"../../hooks";import{CallbackPanel}from"../Panel";import{CallbackDetails}from"./CallbackDetails";import{CallbackSummary}from"./CallbackSummary";import{pathIncludesLink}from"../../utils";export const CallbackOperation=({operation:a,operation:{callbackId:l},onExpand:e,selectedCallback:o})=>{const t=useTranslate(),r=useLocation();return _jsx(CallbackPanel,{header:({expanded:l,toggle:o})=>_jsx(CallbackSummary,{callback:a,toggle:t=>{null==o||o(t),null==e||e(l?null:a)},expanded:l,translate:t}),expanded:(null==o?void 0:o.callbackId)===l||pathIncludesLink(r,l),className:"panel-response-callback",children:_jsxs(CallbackDetailsWrap,{children:[_jsx(CallbackDetails,{operation:a,translate:t}),_jsx(LeftBorder,{})]})})};const CallbackDetailsWrap=styled.div`
2
2
  position: relative;
3
3
  .property:last-child {
4
4
  border-bottom: none;
@@ -1,7 +1,8 @@
1
1
  import type { ReactElement } from 'react';
2
- import type { PanelHeaderProps } from '@redocly/theme';
2
+ import type { PanelHeaderProps, TFunction } from '@redocly/theme';
3
3
  import type { OperationModel } from '../../models';
4
4
  export interface CallbackTitleProps extends PanelHeaderProps {
5
5
  callback: OperationModel;
6
+ translate: TFunction;
6
7
  }
7
- export declare function CallbackSummary({ expanded, toggle, callback: { name, httpVerb, deprecated, callbackId, id }, }: CallbackTitleProps): ReactElement;
8
+ export declare function CallbackSummary({ expanded, toggle, callback: { name, httpVerb, deprecated, callbackId, id }, translate, }: CallbackTitleProps): ReactElement;
@@ -1,4 +1,4 @@
1
- import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";import{PanelHeader,Badge}from"@redocly/theme";import styled from"styled-components";import{Trigger}from"../Panel";import{HttpVerb}from"../common";import{makeDeepLink}from"../../services";import{shortenHTTPVerb}from"../../utils";import{CallbackTitle}from"./styled";import{CircleIcon}from"../PropertyDetails/PlusCircleIcon";import{LinkToField}from"../common/LinkToField";export function CallbackSummary({expanded:e=!1,toggle:r,callback:{name:a,httpVerb:i,deprecated:o,callbackId:n,id:l}}){return _jsxs(CallbackHeader,{expanded:e,onClick:r,children:[_jsx(LinkToField,{to:makeDeepLink(l,`callbacks/${n}`)}),_jsxs(Trigger,{children:[_jsx(CircleIconWrap,{children:_jsx(CircleIcon,{sign:e?"-":"+"})}),_jsx(CallbackTitle,{deprecated:o,children:a}),_jsx(HttpVerb,{color:i,children:shortenHTTPVerb(i)}),o?_jsx(Badge,{deprecated:!0,children:"Deprecated"}):null]})]})}const CallbackHeader=styled(PanelHeader)`
1
+ import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";import{PanelHeader,Badge}from"@redocly/theme";import styled from"styled-components";import{Trigger}from"../Panel";import{HttpVerb}from"../common";import{makeDeepLink}from"../../services";import{shortenHTTPVerb}from"../../utils";import{CallbackTitle}from"./styled";import{CircleIcon}from"../PropertyDetails/PlusCircleIcon";import{LinkToField}from"../common/LinkToField";export function CallbackSummary({expanded:e=!1,toggle:r,callback:{name:a,httpVerb:i,deprecated:n,callbackId:o,id:l},translate:t}){return _jsxs(CallbackHeader,{expanded:e,onClick:r,children:[_jsx(LinkToField,{to:makeDeepLink(l,`callbacks/${o}`)}),_jsxs(Trigger,{children:[_jsx(CircleIconWrap,{children:_jsx(CircleIcon,{sign:e?"-":"+"})}),_jsx(CallbackTitle,{deprecated:n,children:a}),_jsx(HttpVerb,{color:i,children:shortenHTTPVerb(i)}),n?_jsx(Badge,{deprecated:!0,children:t("openapi.badges.deprecated","Deprecated")}):null]})]})}const CallbackHeader=styled(PanelHeader)`
2
2
  padding: var(--spacing-sm) 0 var(--spacing-sm) calc(var(--spacing-unit) / 2);
3
3
  margin: 0;
4
4
  line-height: var(--line-height-base);
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import type { CallbackModel, OperationModel } from '../../models';
3
2
  export interface CallbacksListProps {
4
3
  callbacks: CallbackModel[];
@@ -1,3 +1,3 @@
1
1
  export declare const CallbackTitle: import("styled-components").StyledComponent<"span", any, {
2
- deprecated?: boolean | undefined;
2
+ deprecated?: boolean;
3
3
  }, never>;
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import type { ContentItemModel } from '../../models';
3
2
  interface ContentProps {
4
3
  items: ContentItemModel[];
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import type { ContentItemModel } from '../../models';
3
2
  interface ContentItemProps {
4
3
  item: ContentItemModel;
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import type { ContentItemModel } from '../../models';
3
2
  interface ContentItemsProps {
4
3
  root?: boolean;
@@ -1,9 +1,10 @@
1
- /// <reference types="react" />
1
+ import type { TFunction } from '@redocly/theme';
2
2
  import type { SchemaModel } from '../../models';
3
3
  interface DiscriminatorDropdownProps {
4
4
  activeOneOfIdx: number;
5
5
  parent: SchemaModel;
6
6
  onChange?: (idx: number) => void;
7
+ translate: TFunction;
7
8
  }
8
9
  export declare const Discriminator: import("react").NamedExoticComponent<DiscriminatorDropdownProps>;
9
10
  export {};
@@ -1,4 +1,4 @@
1
- import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";import{memo,useMemo}from"react";import styled from"styled-components";import{strikethroughText}from"../../utils";import{SchemaSelection}from"../common/SchemaSelection";import{SelectionTitle}from"../common";function DiscriminatorDropdownComponent({activeOneOfIdx:e,parent:o,onChange:t}){const i=useMemo((()=>(o.oneOf||[]).map(((e,o)=>({label:e.schema.deprecated?`${strikethroughText(e.title)} (deprecated)`:e.title,value:o})))),[o.oneOf]);return void 0===o.oneOf?null:_jsxs(Wrapper,{children:[_jsx(SelectionTitle,{children:"Discriminator"}),_jsx(SchemaSelection,{options:i,pointer:o.operationPointer,onChange:t,schema:o,defaultOneOfIdx:e})]})}export const Discriminator=memo(DiscriminatorDropdownComponent);const Wrapper=styled.div`
1
+ import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";import{memo,useMemo}from"react";import styled from"styled-components";import{strikethroughText}from"../../utils";import{SchemaSelection}from"../common/SchemaSelection";import{SelectionTitle}from"../common";function DiscriminatorDropdownComponent({activeOneOfIdx:e,parent:o,onChange:t,translate:i}){const r=useMemo((()=>(o.oneOf||[]).map(((e,o)=>({label:e.schema.deprecated?`${strikethroughText(e.title)} (${i("openapi.badges.deprecated","deprecated").toLowerCase()}`:e.title,value:o})))),[o.oneOf,i]);return void 0===o.oneOf?null:_jsxs(Wrapper,{children:[_jsx(SelectionTitle,{children:i("openapi.discriminator","Discriminator")}),_jsx(SchemaSelection,{options:r,pointer:o.operationPointer,onChange:t,schema:o,defaultOneOfIdx:e})]})}export const Discriminator=memo(DiscriminatorDropdownComponent);const Wrapper=styled.div`
2
2
  display: flex;
3
3
  flex-direction: column;
4
4
  align-items: flex-start;
@@ -1,4 +1,4 @@
1
- import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";import{useMemo}from"react";import styled from"styled-components";import{Button,MaximizeIcon}from"@redocly/theme";import{useAtom}from"jotai/index";import{operationStore}from"../../jotai/operation";export const ExpandAllButton=({operationPointer:t,type:e})=>{const[o,n]=useAtom(operationStore(t)),s=useMemo((()=>Object.values(o[e].expandedFields).includes(!1)),[o,e]);if(!Object.keys(o[e].expandedFields).length)return null;return _jsxs(StyledButton,{icon:_jsx(MaximizeIcon,{}),iconPosition:"right",size:"small",variant:"ghost",onClick:()=>{n((t=>{const o={};for(const n in t[e].expandedFields)o[n]=s;return Object.assign(Object.assign({},t),{[e]:{expandedFields:o}})}))},children:[s?"Expand":"Collapse"," all"]})};const StyledButton=styled(Button)`
1
+ import{jsx as _jsx}from"react/jsx-runtime";import{useMemo}from"react";import styled from"styled-components";import{Button,MaximizeIcon}from"@redocly/theme";import{useAtom}from"jotai/index";import{operationStore}from"../../jotai/operation";import{useTranslate}from"../../hooks";export const ExpandAllButton=({operationPointer:e,type:o})=>{const t=useTranslate(),[n,i]=useAtom(operationStore(e)),s=useMemo((()=>Object.values(n[o].expandedFields).includes(!1)),[n,o]);if(!Object.keys(n[o].expandedFields).length)return null;return _jsx(StyledButton,{icon:_jsx(MaximizeIcon,{}),iconPosition:"right",size:"small",variant:"ghost",onClick:()=>{i((e=>{const t={};for(const n in e[o].expandedFields)t[n]=s;return Object.assign(Object.assign({},e),{[o]:{expandedFields:t}})}))},children:s?t("openapi.expandAll","Expand all"):t("openapi.collapseAll","Collapse all")})};const StyledButton=styled(Button)`
2
2
  margin-left: auto;
3
3
  `;
4
4
  //# sourceMappingURL=ExpandAllButton.js.map
@@ -1,8 +1,8 @@
1
1
  import type { SchemaModel } from '../../models';
2
2
  import type { OperationStore } from '../../jotai/operation';
3
3
  export declare const getAllNestedSchema: ({ schema, activeOneOf, skipReadOnly, skipWriteOnly, }: {
4
- schema?: SchemaModel | undefined;
5
- activeOneOf: OperationStore['activeOneOf'];
6
- skipReadOnly?: boolean | undefined;
7
- skipWriteOnly?: boolean | undefined;
4
+ schema?: SchemaModel;
5
+ activeOneOf: OperationStore["activeOneOf"];
6
+ skipReadOnly?: boolean;
7
+ skipWriteOnly?: boolean;
8
8
  }) => any;
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import type { OpenAPIExternalDocumentation } from '../../types';
3
2
  interface ExternalDocumentationProps {
4
3
  externalDocs: OpenAPIExternalDocumentation;
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import type { TabType } from '../../models/tab';
3
2
  type LangTypeType = TabType<{
4
3
  lang: string;
@@ -1,8 +1,7 @@
1
- /// <reference types="react" />
2
1
  import { DropdownMenuItem } from '@redocly/theme';
3
2
  export declare const Container: import("styled-components").StyledComponent<"span", any, {}, never>;
4
3
  export declare const LanguageTitle: import("styled-components").StyledComponent<"span", any, {
5
- active?: boolean | undefined;
4
+ active?: boolean;
6
5
  }, never>;
7
6
  export declare const LanguageTitleContainer: import("styled-components").StyledComponent<"span", any, {}, never>;
8
7
  export declare const LanguageIcon: import("styled-components").StyledComponent<"span", any, {}, never>;
@@ -14,17 +13,17 @@ export declare const StyledDropdownMenuItem: import("styled-components").StyledC
14
13
  prefix?: import("react").ReactNode;
15
14
  suffix?: import("react").ReactNode;
16
15
  content?: import("react").ReactNode;
17
- separatorLine?: boolean | undefined;
18
- dataAttributes?: Record<string, string> | undefined;
19
- className?: string | undefined;
20
- style?: import("react").CSSProperties | undefined;
21
- role?: string | undefined;
22
- separator?: boolean | undefined;
23
- disabled?: boolean | undefined;
24
- dangerous?: boolean | undefined;
25
- onAction?: (() => void) | undefined;
26
- active?: boolean | undefined;
16
+ separatorLine?: boolean;
17
+ dataAttributes?: Record<string, string>;
18
+ className?: string;
19
+ style?: import("react").CSSProperties;
20
+ role?: string;
21
+ separator?: boolean;
22
+ disabled?: boolean;
23
+ dangerous?: boolean;
24
+ onAction?: () => void;
25
+ active?: boolean;
27
26
  } & {
28
- $width?: number | undefined;
27
+ $width?: number;
29
28
  }, never>;
30
29
  export declare const DropdownTriggerButton: import("styled-components").StyledComponent<import("react").FC<import("@redocly/theme").ButtonProps>, any, import("@redocly/theme").ButtonProps, never>;
@@ -1,2 +1,2 @@
1
- import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from"react/jsx-runtime";import{memo,useCallback,useRef}from"react";import{useAtom}from"jotai";import{SelectLabel,SelectWrapper}from"../PayloadSamples";import{Container}from"../common";import{activeMimeNameAtom}from"../../jotai/app";import{getActiveMediaType}from"../../models";function Wrapper({children:e,withLabel:t,innerRef:n}){return e?t?_jsxs(SelectWrapper,{ref:n,children:[_jsx(SelectLabel,{children:"Content type"}),e]}):_jsx(Container,{ref:n,children:e}):null}function MediaTypesSwitchComponent({content:e,withLabel:t,renderSelect:n,children:r}){const[i,a]=useAtom(activeMimeNameAtom),o=useCallback((({value:t})=>{if(!e||!m.current)return null;const n=m.current.getBoundingClientRect().y;a(t),requestAnimationFrame((()=>{if(!m.current||null==n)return;const e=m.current.getBoundingClientRect().y;window.scrollBy(0,e-n)}))}),[e,a]),m=useRef(null);if(!e||!e.mediaTypes||!e.mediaTypes.length)return null;const l=e.mediaTypes.map(((e,t)=>({value:e.name,idx:t}))),c=getActiveMediaType(e,i);return _jsxs(_Fragment,{children:[_jsx(Wrapper,{innerRef:m,withLabel:t,children:n({value:c.name,options:l,onChange:o,ariaLabel:"Content type"})}),r(c)]})}export const MediaTypesSwitch=memo(MediaTypesSwitchComponent);
1
+ import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from"react/jsx-runtime";import{memo,useCallback,useRef}from"react";import{useAtom}from"jotai";import{SelectLabel,SelectWrapper}from"../PayloadSamples";import{Container}from"../common";import{activeMimeNameAtom}from"../../jotai/app";import{getActiveMediaType}from"../../models";import{useTranslate}from"../../hooks";function Wrapper({children:e,withLabel:t,innerRef:n,translate:r}){return e?t?_jsxs(SelectWrapper,{ref:n,children:[_jsx(SelectLabel,{children:r("openapi.contentType","Content type")}),e]}):_jsx(Container,{ref:n,children:e}):null}function MediaTypesSwitchComponent({content:e,withLabel:t,renderSelect:n,children:r}){const a=useTranslate(),[i,o]=useAtom(activeMimeNameAtom),l=useCallback((({value:t})=>{if(!e||!m.current)return null;const n=m.current.getBoundingClientRect().y;o(t),requestAnimationFrame((()=>{if(!m.current||null==n)return;const e=m.current.getBoundingClientRect().y;window.scrollBy(0,e-n)}))}),[e,o]),m=useRef(null);if(!e||!e.mediaTypes||!e.mediaTypes.length)return null;const s=e.mediaTypes.map(((e,t)=>({value:e.name,idx:t}))),c=getActiveMediaType(e,i);return _jsxs(_Fragment,{children:[_jsx(Wrapper,{innerRef:m,withLabel:t,translate:a,children:n({value:c.name,options:s,onChange:l,ariaLabel:"Content type"})}),r(c)]})}export const MediaTypesSwitch=memo(MediaTypesSwitchComponent);
2
2
  //# sourceMappingURL=MediaTypesSwitch.js.map
@@ -1,3 +1,2 @@
1
- /// <reference types="react" />
2
1
  import type { OperationItemProps } from './types';
3
2
  export declare const OperationItem: import("react").NamedExoticComponent<OperationItemProps>;
@@ -1,7 +1,7 @@
1
- import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from"react/jsx-runtime";import{memo,useState,useCallback,useMemo}from"react";import styled from"styled-components";import{useAtomValue}from"jotai";import{Feedback,LayoutVariant,BeforeOpenApiOperation,AfterOpenApiOperation}from"@redocly/theme";import{SamplesMiddlePanel,SamplesPanel,ShareLink,Row,CustomBadges}from"../common";import{CallbacksList}from"../Callbacks";import{CallbackSamples}from"../CallbackSamples";import{RequestSamples}from"../RequestSamples";import{OperationResponseList}from"../Responses";import{ResponseSamples}from"../ResponseSamples";import{makeDeepLink}from"../../services";import{layoutAtom}from"../../jotai/app";import{globalStoreAtom}from"../../jotai/store";import{getOperation}from"../../models/operation";import{RenderHook}from"../RenderHook";import{Heading,Title}from"../common/OperationItemTitle";import{LinkToField}from"../common/LinkToField";import{RequestDetails}from"../Request/RequestDetails";import{StyledBadge}from"../common/Badges";const OperationSamplesPanel=styled(SamplesPanel)`
1
+ import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from"react/jsx-runtime";import{memo,useState,useCallback,useMemo}from"react";import styled from"styled-components";import{useAtomValue}from"jotai";import{Feedback,LayoutVariant,BeforeOpenApiOperation,AfterOpenApiOperation}from"@redocly/theme";import{SamplesMiddlePanel,SamplesPanel,ShareLink,Row,CustomBadges}from"../common";import{CallbacksList}from"../Callbacks";import{CallbackSamples}from"../CallbackSamples";import{RequestSamples}from"../RequestSamples";import{OperationResponseList}from"../Responses";import{ResponseSamples}from"../ResponseSamples";import{makeDeepLink,joinWithSeparator}from"../../services";import{layoutAtom}from"../../jotai/app";import{globalStoreAtom}from"../../jotai/store";import{getOperation}from"../../models/operation";import{RenderHook}from"../RenderHook";import{Heading,Title}from"../common/OperationItemTitle";import{LinkToField}from"../common/LinkToField";import{RequestDetails}from"../Request/RequestDetails";import{StyledBadge}from"../common/Badges";import{useTranslate}from"../../hooks";function OperationItemComponent({item:{operationDefinition:e,parent:a,href:o}}){var t,s;const l=useTranslate(),{parser:i,options:n}=useAtomValue(globalStoreAtom),r=useAtomValue(layoutAtom),[p,d]=useState(),{unstable_hooks:m,feedback:c}=n,u=useMemo((()=>getOperation(i,e,a,n,o)),[o,e,n,a,i]),{name:k,deprecated:S,isWebhook:b,badges:x}=u,h=r===LayoutVariant.STACKED,j=(null==c?void 0:c.type)||"sentiment",f=!0!==(null==c?void 0:c.hide),[g,_]=useState(null),y=useCallback((e=>{p!==e&&d(e)}),[p]);return _jsxs(OperationRow,{layout:r,children:[_jsx(OperationSubRowStyled,{layout:r,children:_jsxs(SamplesMiddlePanel,{isStacked:h,children:[_jsx(RenderHook,{Hook:BeforeOpenApiOperation||(null==m?void 0:m.BeforeOperation),props:{operation:u}}),_jsxs(Heading,{"data-testid":"operation-item-header",children:[_jsx(ShareLink,{to:o,"aria-label":`link to ${k}`}),_jsx(CustomBadges,{badges:x,children:k}),S&&_jsx(StyledBadge,{deprecated:!0,children:l("openapi.badges.deprecated","Deprecated")}),b&&_jsx(StyledBadge,{children:l("openapi.badges.webhook","Webhook")})]})]})}),_jsxs(OperationSubRowStyled,{layout:r,children:[_jsx(SamplesMiddlePanel,{isStacked:h,children:_jsx(RequestDetails,{operation:u,translate:l})}),_jsx(OperationSamplesPanel,{isStacked:h,"data-testid":"samples-block",className:"panel-container-request-samples",children:_jsx(RequestSamples,{operation:u})})]}),_jsxs(OperationSubRowStyled,{layout:r,children:[_jsx(SamplesMiddlePanel,{isStacked:h,children:(null===(t=u.responses)||void 0===t?void 0:t.length)?_jsx(OperationResponseList,{responses:u.responses,operationId:u.id,operationPointer:u.pointer,callbackId:u.callbackId,activeResponseTab:p,onTabChange:y}):null}),_jsx(OperationSamplesPanel,{isStacked:h,"data-testid":"samples-block",className:"panel-container-response-samples",children:_jsx(ResponseSamples,{operation:u,activeResponseTab:p,onTabChange:y})})]}),_jsxs(OperationSubRowStyled,{layout:r,children:[_jsxs(SamplesMiddlePanel,{isStacked:h,children:[(null===(s=u.callbacks)||void 0===s?void 0:s.length)?_jsxs(_Fragment,{children:[_jsxs(Title,{children:[_jsx(LinkToField,{to:makeDeepLink(u.id,"callbacks")}),l("openapi.callbacks","Callbacks")]}),_jsx(CallbacksList,{callbacks:u.callbacks,onExpand:_,selectedCallback:g})]}):null,_jsx(RenderHook,{Hook:AfterOpenApiOperation||(null==m?void 0:m.AfterOperation),props:{operation:u}})]}),g?_jsx(OperationSamplesPanel,{isStacked:h,"data-testid":"samples-block",children:_jsx(CallbackSamples,{callback:g,translate:l})}):null]}),_jsx(OperationSubRowStyled,{layout:r,children:_jsx(SamplesMiddlePanel,{isStacked:h,fullWidth:!0,children:f?_jsx(FeedbackWrapper,{children:_jsx(Feedback,{type:j,settings:c.settings,path:joinWithSeparator(n.routingBasePath,u.href)})}):null})})]})}export const OperationItem=memo(OperationItemComponent);const OperationSamplesPanel=styled(SamplesPanel)`
2
2
  margin-left: auto;
3
3
  --code-block-padding: var(--spacing-xs) 0 var(--spacing-xs) 20px;
4
- `;function OperationItemComponent({item:{operationDefinition:e,parent:a,href:o}}){var t,s;const{parser:l,options:i}=useAtomValue(globalStoreAtom),n=useAtomValue(layoutAtom),[r,p]=useState(),{unstable_hooks:d,feedback:m}=i,c=useMemo((()=>getOperation(l,e,a,i,o)),[o,e,i,a,l]),{name:u,deprecated:k,isWebhook:S,badges:x}=c,b=n===LayoutVariant.STACKED,h=(null==m?void 0:m.type)||"sentiment",j=!0!==(null==m?void 0:m.hide),[f,g]=useState(null);console.log("routerBasePath",i.routingBasePath+c.href);const _=useCallback((e=>{r!==e&&p(e)}),[r]);return _jsxs(OperationRow,{layout:n,children:[_jsx(OperationSubRowStyled,{layout:n,children:_jsxs(SamplesMiddlePanel,{isStacked:b,children:[_jsx(RenderHook,{Hook:BeforeOpenApiOperation||(null==d?void 0:d.BeforeOperation),props:{operation:c}}),_jsxs(Heading,{"data-testid":"operation-item-header",children:[_jsx(ShareLink,{to:o,"aria-label":`link to ${u}`}),_jsx(CustomBadges,{badges:x,children:u}),k&&_jsx(StyledBadge,{deprecated:!0,children:"Deprecated"}),S&&_jsx(StyledBadge,{children:"Webhook"})]})]})}),_jsxs(OperationSubRowStyled,{layout:n,children:[_jsx(SamplesMiddlePanel,{isStacked:b,children:_jsx(RequestDetails,{operation:c})}),_jsx(OperationSamplesPanel,{isStacked:b,"data-testid":"samples-block",className:"panel-container-request-samples",children:_jsx(RequestSamples,{operation:c})})]}),_jsxs(OperationSubRowStyled,{layout:n,children:[_jsx(SamplesMiddlePanel,{isStacked:b,children:(null===(t=c.responses)||void 0===t?void 0:t.length)?_jsx(OperationResponseList,{responses:c.responses,operationId:c.id,operationPointer:c.pointer,callbackId:c.callbackId,activeResponseTab:r,onTabChange:_}):null}),_jsx(OperationSamplesPanel,{isStacked:b,"data-testid":"samples-block",className:"panel-container-response-samples",children:_jsx(ResponseSamples,{operation:c,activeResponseTab:r,onTabChange:_})})]}),_jsxs(OperationSubRowStyled,{layout:n,children:[_jsxs(SamplesMiddlePanel,{isStacked:b,children:[(null===(s=c.callbacks)||void 0===s?void 0:s.length)?_jsxs(_Fragment,{children:[_jsxs(Title,{children:[_jsx(LinkToField,{to:makeDeepLink(c.id,"callbacks")}),"Callbacks"]}),_jsx(CallbacksList,{callbacks:c.callbacks,onExpand:g,selectedCallback:f})]}):null,_jsx(RenderHook,{Hook:AfterOpenApiOperation||(null==d?void 0:d.AfterOperation),props:{operation:c}})]}),f?_jsx(OperationSamplesPanel,{isStacked:b,"data-testid":"samples-block",children:_jsx(CallbackSamples,{callback:f})}):null]}),_jsx(OperationSubRowStyled,{layout:n,children:_jsx(SamplesMiddlePanel,{isStacked:b,fullWidth:!0,children:j?_jsx(FeedbackWrapper,{children:_jsx(Feedback,{type:h,settings:m.settings,path:i.routingBasePath+c.href})}):null})})]})}export const OperationItem=memo(OperationItemComponent);const FeedbackWrapper=styled.div`
4
+ `,FeedbackWrapper=styled.div`
5
5
  & > div {
6
6
  flex: 1 1 auto;
7
7
  display: flex;
@@ -1,4 +1,9 @@
1
+ import type { TFunction } from '@redocly/theme';
1
2
  import type { ReactElement } from 'react';
2
- export declare function Overview({ info }: {
3
- info: any;
4
- }): ReactElement;
3
+ import type { OpenAPIInfo } from '../../types';
4
+ type OverviewProps = {
5
+ info: OpenAPIInfo;
6
+ translate: TFunction;
7
+ };
8
+ export declare function Overview({ info, translate }: OverviewProps): ReactElement;
9
+ export {};
@@ -1,2 +1,2 @@
1
- import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from"react/jsx-runtime";import{CopyButton,NewTabButton,EmailButton}from"@redocly/theme";import{PanelItem,PanelItemDescription,PanelItemsList}from"../PanelItem";export function Overview({info:e}){var t;const n=e.contact&&e.contact.url&&_jsx(PanelItem,{header:_jsx(PanelItemDescription,{children:"URL"}),title:_jsx("a",{href:e.contact.url,target:"_blank",rel:"noreferrer",children:e.contact.url}),actions:[_jsx(NewTabButton,{data:e.contact.url},"NewTabButton")]})||null,a=e.contact&&e.contact.email&&_jsx(PanelItem,{header:_jsx(PanelItemDescription,{children:e.contact.name||"E-mail"}),title:_jsx("a",{href:"mailto:"+e.contact.email,children:e.contact.email}),actions:[_jsx(CopyButton,{data:e.contact.email},"CopyButton"),_jsx(EmailButton,{data:e.contact.email},"EmailButton")]})||null,r=e.license&&_jsx(PanelItem,{header:_jsx(PanelItemDescription,{children:"License"}),title:e.license.identifier?e.license.identifier:_jsx("a",{href:e.license.url,target:"_blank",rel:"noreferrer",children:e.license.name}),actions:[_jsx(NewTabButton,{data:e.license.url},"NewTabButton")]})||null,l=e.termsOfService&&_jsx(PanelItem,{title:_jsx("a",{href:e.termsOfService,target:"_blank",rel:"noreferrer",children:"Terms of Service"}),actions:[_jsx(NewTabButton,{data:e.termsOfService},e.termsOfService)]})||null,i=(null===(t=e["x-links"])||void 0===t?void 0:t.map((e=>_jsx(PanelItem,{header:_jsx(PanelItemDescription,{children:e.name}),title:_jsx("a",{href:e.url,target:"_blank",rel:"noreferrer",children:e.url}),actions:[_jsx(NewTabButton,{data:e.url},"NewTabButton")]},e.url))))||null;return _jsx(_Fragment,{children:_jsxs(PanelItemsList,{children:[n,a,r,l,i]})})}
1
+ import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from"react/jsx-runtime";import{CopyButton,NewTabButton,EmailButton}from"@redocly/theme";import{PanelItem,PanelItemDescription,PanelItemsList}from"../PanelItem";export function Overview({info:e,translate:t}){const n=e.contact&&e.contact.url&&_jsx(PanelItem,{header:_jsx(PanelItemDescription,{children:t("openapi.info.contact.url","URL")}),title:_jsx("a",{href:e.contact.url,target:"_blank",rel:"noreferrer",children:e.contact.url}),actions:[_jsx(NewTabButton,{data:e.contact.url},"NewTabButton")]})||null,a=e.contact&&e.contact.email&&_jsx(PanelItem,{header:_jsx(PanelItemDescription,{children:e.contact.name||t("openapi.info.contact.name","E-mail")}),title:_jsx("a",{href:"mailto:"+e.contact.email,children:e.contact.email}),actions:[_jsx(CopyButton,{data:e.contact.email},"CopyButton"),_jsx(EmailButton,{data:e.contact.email},"EmailButton")]})||null,r=e.license&&_jsx(PanelItem,{header:_jsx(PanelItemDescription,{children:t("openapi.info.license","License")}),title:e.license.identifier?e.license.identifier:_jsx("a",{href:e.license.url,target:"_blank",rel:"noreferrer",children:e.license.name}),actions:[_jsx(NewTabButton,{data:e.license.url||""},"NewTabButton")]})||null,i=e.termsOfService&&_jsx(PanelItem,{title:_jsx("a",{href:e.termsOfService,target:"_blank",rel:"noreferrer",children:t("openapi.info.termsOfService","Terms of Service")}),actions:[_jsx(NewTabButton,{data:e.termsOfService},e.termsOfService)]})||null;return _jsx(_Fragment,{children:_jsxs(PanelItemsList,{children:[n,a,r,i]})})}
2
2
  //# sourceMappingURL=Overview.js.map
@@ -1,3 +1,2 @@
1
- /// <reference types="react" />
2
1
  export declare function PageFooterComponent(): import("react/jsx-runtime").JSX.Element | null;
3
2
  export declare const PageFooter: import("react").MemoExoticComponent<typeof PageFooterComponent>;
@@ -1,17 +1,16 @@
1
- /// <reference types="react" />
2
1
  export declare const PanelItemWrap: import("styled-components").StyledComponent<"span", any, {}, never>;
3
2
  export declare const Item: import("styled-components").StyledComponent<"span", any, {}, never>;
4
3
  export declare const Header: import("styled-components").StyledComponent<"span", any, {}, never>;
5
4
  export declare const Title: import("styled-components").StyledComponent<"span", any, {
6
- active?: boolean | undefined;
5
+ active?: boolean;
7
6
  }, never>;
8
7
  export declare const ActionsWrap: import("styled-components").StyledComponent<"div", any, {}, never>;
9
8
  export declare const PanelItemsList: import("styled-components").StyledComponent<"div", any, {}, never>;
10
9
  export declare const PanelItemDescription: import("styled-components").StyledComponent<"span", any, {}, never>;
11
- export declare const StyledCheckmarkIcon: import("styled-components").StyledComponent<(props: import("@redocly/theme/lib/icons/types").IconProps) => import("react").JSX.Element, any, {
10
+ export declare const StyledCheckmarkIcon: import("styled-components").StyledComponent<(props: import("@redocly/theme/lib/icons/types").IconProps) => React.JSX.Element, any, {
12
11
  'data-component-name': string;
13
12
  } & {
14
- color?: string | undefined;
15
- size?: string | undefined;
16
- className?: string | undefined;
13
+ color?: string;
14
+ size?: string;
15
+ className?: string;
17
16
  } & import("react").SVGProps<SVGSVGElement>, "data-component-name">;
@@ -1,2 +1,2 @@
1
- import{jsx as _jsx}from"react/jsx-runtime";import{ExampleValue}from"./ExampleValue";import{ExternalExample}from"./ExternalExample";export function Example({example:e,mimeType:l,onCopyClick:a}){return void 0===e.value&&e.externalValueUrl?e.externalValueUrl.endsWith(".pdf")?_jsx(ExampleValue,{value:"PDF file",mimeType:l,encoding:e.encoding,onCopyClick:a}):_jsx(ExternalExample,{example:e,mimeType:l,onCopyClick:a}):_jsx(ExampleValue,{value:e.value,mimeType:l,encoding:e.encoding,onCopyClick:a})}
1
+ import{jsx as _jsx}from"react/jsx-runtime";import{ExampleValue}from"./ExampleValue";import{ExternalExample}from"./ExternalExample";import{useTranslate}from"../../hooks";export function Example({example:e,mimeType:l,onCopyClick:a}){const m=useTranslate();return void 0===e.value&&e.externalValueUrl?e.externalValueUrl.endsWith(".pdf")?_jsx(ExampleValue,{value:m("openapi.pdfFileSample","PDF file"),mimeType:l,encoding:e.encoding,onCopyClick:a}):_jsx(ExternalExample,{example:e,mimeType:l,onCopyClick:a}):_jsx(ExampleValue,{value:e.value,mimeType:l,encoding:e.encoding,onCopyClick:a})}
2
2
  //# sourceMappingURL=Example.js.map
@@ -1,3 +1,2 @@
1
- /// <reference types="react" />
2
1
  import type { ExampleValueProps } from './types';
3
2
  export declare function ExampleValue({ value, mimeType, encoding, onCopyClick, }: ExampleValueProps): React.ReactNode;
@@ -1,3 +1,2 @@
1
- /// <reference types="react" />
2
1
  import type { MediaTypeSamplesProps } from './types';
3
2
  export declare const MediaTypeSamples: import("react").NamedExoticComponent<MediaTypeSamplesProps>;
@@ -1,4 +1,4 @@
1
- import{jsx as _jsx,Fragment as _Fragment,jsxs as _jsxs}from"react/jsx-runtime";import{memo}from"react";import merge from"deepmerge";import styled from"styled-components";import{Markdown}from"../Markdown";import{Example}from"./Example";import{ExampleSwitch,useExampleKey}from"../Samples";import{arrayMergeStrategy}from"../../services/utils";import{StyledCodeBlock}from"./styled";function MediaTypeSamplesComponent({mediaType:e,properties:r,onChange:a,onCopyClick:m}){const o=e.examples||e.formExamples||{},s=e.name,t=Object.keys(o),{exampleKey:p}=useExampleKey(e.operation,o),n=1===t.length?Object.values(o)[0]:o[p];if(!t.length)return _jsx(StyledCodeBlock,{lang:"clike",source:"No response example",header:{controls:!1}});const l=r?Object.assign(Object.assign({},n),{value:merge(n.value,r,{arrayMerge:arrayMergeStrategy})}):n,i=l.description;return _jsxs(_Fragment,{children:[_jsx(ExampleSwitch,{examples:o,exampleKey:p,onChange:a}),i&&_jsx(StyledMarkdown,{source:i}),_jsx(Example,{example:l,mimeType:s,onCopyClick:m})]})}const StyledMarkdown=styled(Markdown)`
1
+ import{jsx as _jsx,Fragment as _Fragment,jsxs as _jsxs}from"react/jsx-runtime";import{memo}from"react";import merge from"deepmerge";import styled from"styled-components";import{Markdown}from"../Markdown";import{Example}from"./Example";import{ExampleSwitch,useExampleKey}from"../Samples";import{arrayMergeStrategy}from"../../services/utils";import{StyledCodeBlock}from"./styled";import{useTranslate}from"../../hooks";function MediaTypeSamplesComponent({mediaType:e,properties:r,onChange:a,onCopyClick:o}){const m=e.examples||e.formExamples||{},s=e.name,t=Object.keys(m),p=useTranslate(),{exampleKey:n}=useExampleKey(e.operation,m),l=1===t.length?Object.values(m)[0]:m[n];if(!t.length)return _jsx(StyledCodeBlock,{lang:"clike",source:p("openapi.noResponseExample","No response example"),header:{controls:!1}});const i=r?Object.assign(Object.assign({},l),{value:merge(l.value,r,{arrayMerge:arrayMergeStrategy})}):l,c=i.description;return _jsxs(_Fragment,{children:[_jsx(ExampleSwitch,{examples:m,exampleKey:n,onChange:a}),c&&_jsx(StyledMarkdown,{source:c}),_jsx(Example,{example:i,mimeType:s,onCopyClick:o})]})}const StyledMarkdown=styled(Markdown)`
2
2
  margin: 0 var(--spacing-md) var(--spacing-sm);
3
3
  `;export const MediaTypeSamples=memo(MediaTypeSamplesComponent);
4
4
  //# sourceMappingURL=MediaTypeSamples.js.map
@@ -1,3 +1,2 @@
1
- /// <reference types="react" />
2
1
  import type { PayloadSamplesProps } from './types';
3
2
  export declare const PayloadSamples: import("react").NamedExoticComponent<PayloadSamplesProps>;
@@ -1,2 +1,2 @@
1
- var __rest=this&&this.__rest||function(e,t){var o={};for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&t.indexOf(a)<0&&(o[a]=e[a]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var r=0;for(a=Object.getOwnPropertySymbols(e);r<a.length;r++)t.indexOf(a[r])<0&&Object.prototype.propertyIsEnumerable.call(e,a[r])&&(o[a[r]]=e[a[r]])}return o};import{jsx as _jsx}from"react/jsx-runtime";import{memo,useCallback}from"react";import{useAtomValue}from"jotai";import{SelectOrLabel}from"../SelectOrLabel";import{MediaTypesSwitch}from"../MediaTypeSwitch";import{MimeLabel,Select}from"../common";import{MediaTypeSamples}from"./MediaTypeSamples";import{SelectWrapper,StyledCodeBlock}from"./styled";import{activeMimeNameAtom}from"../../jotai/app";import{useActivateExample}from"../../hooks";function PayloadSamplesComponent(e){var{onlyDefaultMimeType:t,content:o}=e,a=__rest(e,["onlyDefaultMimeType","content"]);const r=useActivateExample(o),l=useAtomValue(activeMimeNameAtom),m=t&&l,i=useCallback((e=>m?null:_jsx(SelectWrapper,{children:_jsx(SelectOrLabel,Object.assign({Label:MimeLabel,Select:Select,variant:"dark",fullWidth:!0},e))})),[m]),p=e=>r(e);return o?_jsx(MediaTypesSwitch,{content:o,renderSelect:i,children:e=>_jsx(MediaTypeSamples,Object.assign({mediaType:e},a,{onChange:p}),"samples")}):_jsx(StyledCodeBlock,{lang:"text",source:"No request payload",header:{controls:!1}})}export const PayloadSamples=memo(PayloadSamplesComponent);
1
+ var __rest=this&&this.__rest||function(e,t){var o={};for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&t.indexOf(a)<0&&(o[a]=e[a]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var r=0;for(a=Object.getOwnPropertySymbols(e);r<a.length;r++)t.indexOf(a[r])<0&&Object.prototype.propertyIsEnumerable.call(e,a[r])&&(o[a[r]]=e[a[r]])}return o};import{jsx as _jsx}from"react/jsx-runtime";import{memo,useCallback}from"react";import{useAtomValue}from"jotai";import{SelectOrLabel}from"../SelectOrLabel";import{MediaTypesSwitch}from"../MediaTypeSwitch";import{MimeLabel,Select}from"../common";import{MediaTypeSamples}from"./MediaTypeSamples";import{SelectWrapper,StyledCodeBlock}from"./styled";import{activeMimeNameAtom}from"../../jotai/app";import{useActivateExample,useTranslate}from"../../hooks";import{convertExamplesFormat}from"../../utils/convertExamplesFormat";function PayloadSamplesComponent(e){var{onlyDefaultMimeType:t,content:o}=e,a=__rest(e,["onlyDefaultMimeType","content"]);const r=useActivateExample(o),l=useAtomValue(activeMimeNameAtom),m=t&&l,s=useTranslate(),p=useCallback((e=>m?null:_jsx(SelectWrapper,{children:_jsx(SelectOrLabel,Object.assign({Label:MimeLabel,Select:Select,variant:"dark",fullWidth:!0},e))})),[m]),n=e=>r(e);return o?_jsx(MediaTypesSwitch,{content:o,renderSelect:p,children:e=>{const t=convertExamplesFormat(e);return _jsx(MediaTypeSamples,Object.assign({mediaType:t},a,{onChange:n}),"samples")}}):_jsx(StyledCodeBlock,{lang:"text",source:s("openapi.noRequestPayload","No request payload"),header:{controls:!1}})}export const PayloadSamples=memo(PayloadSamplesComponent);
2
2
  //# sourceMappingURL=PayloadSamples.js.map
@@ -1,4 +1,4 @@
1
1
  import type { ReactElement } from 'react';
2
2
  import type { DescriptionEnumsProps } from './types';
3
- export declare function DescriptionEnumsComponent({ enums, toggle, showToggleButton, toggleButtonText, type, }: DescriptionEnumsProps): ReactElement;
3
+ export declare function DescriptionEnumsComponent({ enums, toggle, showToggleButton, toggleButtonText, type, translate, }: DescriptionEnumsProps): ReactElement;
4
4
  export declare const DescriptionEnums: import("react").NamedExoticComponent<DescriptionEnumsProps>;
@@ -6,5 +6,5 @@ import{jsxs as _jsxs,jsx as _jsx,Fragment as _Fragment}from"react/jsx-runtime";i
6
6
  p:only-of-type {
7
7
  margin: 0;
8
8
  }
9
- `;export function DescriptionEnumsComponent({enums:e,toggle:t,showToggleButton:n,toggleButtonText:o,type:r}){return _jsx(_Fragment,{children:_jsx(DescriptionEnumsBlock,{children:_jsxs("table",{className:"md",children:[_jsx("thead",{children:_jsxs("tr",{children:[_jsxs("th",{style:{width:"30%"},children:["array"===r?"Items":""," ",1===e.length?"Value":"Enum Value"]}),_jsx("th",{children:"Description"})]})}),_jsx("tbody",{children:e.map((({description:e,value:t})=>_jsxs("tr",{children:[_jsx(EnumValueStyled,{children:t}),_jsx(DescriptionValueStyled,{children:_jsx(Markdown,{source:e})})]},t)))}),n?_jsx("tfoot",{children:_jsx("tr",{children:_jsx("td",{colSpan:2,children:_jsx(ToggleButton,{onClick:t,children:o})})})}):null]})})})}export const DescriptionEnums=memo(DescriptionEnumsComponent);
9
+ `;export function DescriptionEnumsComponent({enums:e,toggle:t,showToggleButton:n,toggleButtonText:o,type:s,translate:r}){return _jsx(_Fragment,{children:_jsx(DescriptionEnumsBlock,{children:_jsxs("table",{className:"md",children:[_jsx("thead",{children:_jsxs("tr",{children:[_jsxs("th",{style:{width:"30%"},children:["array"===s?r("openapi.items","Items"):""," ",1===e.length?r("openapi.value","Value"):`${r("openapi.enum","Enum")} ${r("openapi.value","Value")}`]}),_jsx("th",{children:r("openapi.description","Description")})]})}),_jsx("tbody",{children:e.map((({description:e,value:t})=>_jsxs("tr",{children:[_jsx(EnumValueStyled,{children:t}),_jsx(DescriptionValueStyled,{children:_jsx(Markdown,{source:e})})]},t)))}),n?_jsx("tfoot",{children:_jsx("tr",{children:_jsx("td",{colSpan:2,children:_jsx(ToggleButton,{onClick:t,children:o})})})}):null]})})})}export const DescriptionEnums=memo(DescriptionEnumsComponent);
10
10
  //# sourceMappingURL=DescriptionEnums.js.map
@@ -1,3 +1,2 @@
1
- /// <reference types="react" />
2
1
  import type { EnumValuesProps } from './types';
3
2
  export declare const EnumValues: import("react").NamedExoticComponent<EnumValuesProps>;
@@ -1,2 +1,2 @@
1
- import{jsx as _jsx,Fragment as _Fragment}from"react/jsx-runtime";import{useState,memo,useCallback,useMemo}from"react";import{useAtomValue}from"jotai";import{SimpleEnums}from"./SimpleEnums";import{DescriptionEnums}from"./DescriptionEnums";import{globalOptionsAtom}from"../../jotai/store";function getEnums(e){return Array.isArray(e)&&e||Object.entries(e||{}).map((([e,t])=>({value:e,description:t})))}function EnumValuesComponent({values:e,type:t}){const[o,m]=useState(!0),{maxDisplayedEnumValues:n}=useAtomValue(globalOptionsAtom),s=useCallback((()=>{m(!o)}),[o]),r=!Array.isArray(e),u=getEnums(e),l=useMemo((()=>o&&n?u.slice(0,n):u),[u,o,n]);if(!u.length)return null;const a=!!n&&u.length>n,i=n?o?`+${u.length-n} more`:"Hide":"";return _jsx(_Fragment,{children:r?_jsx(DescriptionEnums,{enums:l,toggle:s,showToggleButton:a,toggleButtonText:i,type:t}):_jsx(SimpleEnums,{enums:l,type:t,toggle:s,toggleButtonText:i,showToggleButton:a})})}export const EnumValues=memo(EnumValuesComponent);
1
+ import{jsx as _jsx,Fragment as _Fragment}from"react/jsx-runtime";import{useState,memo,useCallback,useMemo}from"react";import{useAtomValue}from"jotai";import{SimpleEnums}from"./SimpleEnums";import{DescriptionEnums}from"./DescriptionEnums";import{globalOptionsAtom}from"../../jotai/store";import{useTranslate}from"../../hooks";function getEnums(e){return Array.isArray(e)&&e||Object.entries(e||{}).map((([e,t])=>({value:e,description:t})))}function EnumValuesComponent({values:e,type:t}){const o=useTranslate(),[s,n]=useState(!0),{maxDisplayedEnumValues:m}=useAtomValue(globalOptionsAtom),r=useCallback((()=>{n(!s)}),[s]),a=!Array.isArray(e),u=getEnums(e),i=useMemo((()=>s&&m?u.slice(0,m):u),[u,s,m]);if(!u.length)return null;const l=!!m&&u.length>m,p=m?s?`+${u.length-m} ${o("openapi.actions.more","more")}`:o("openapi.actions.hide","Hide"):"";return _jsx(_Fragment,{children:a?_jsx(DescriptionEnums,{enums:i,toggle:r,showToggleButton:l,toggleButtonText:p,type:t,translate:o}):_jsx(SimpleEnums,{enums:i,type:t,toggle:r,toggleButtonText:p,showToggleButton:l,translate:o})})}export const EnumValues=memo(EnumValuesComponent);
2
2
  //# sourceMappingURL=EnumValues.js.map
@@ -1,2 +1,2 @@
1
- import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from"react/jsx-runtime";import{ExampleValue,FieldLabel}from"../common";import{normalizeText,serializeParameterValue}from"../../utils";import{ExampleWrap,ExamplesList,ExampleSummary,ExampleDescription}from"./styled";export function Examples({field:e}){return e.examples?_jsxs(_Fragment,{children:[_jsx(FieldLabel,{children:" Examples: "}),_jsx(ExamplesList,{children:Object.entries(e.examples).map((([r,a])=>{const l=normalizeText(a.description);return _jsxs(ExampleWrap,{children:[_jsxs(ExampleSummary,{children:[normalizeText(a.summary)||r," "]}),l&&_jsxs(ExampleDescription,{children:[l," "]}),_jsx(ExampleValue,{children:getSerializedValue(e,a.value)})]},r)}))})]}):null}export function getSerializedValue(e,r){return e.in?decodeURIComponent(serializeParameterValue(e,r)):r}
1
+ import{jsxs as _jsxs,jsx as _jsx,Fragment as _Fragment}from"react/jsx-runtime";import{ExampleValue,FieldLabel}from"../common";import{normalizeText,serializeParameterValue}from"../../utils";import{ExampleWrap,ExamplesList,ExampleSummary,ExampleDescription}from"./styled";import{useTranslate}from"../../hooks";export function Examples({field:e}){const a=useTranslate();return e.examples?_jsxs(_Fragment,{children:[_jsxs(FieldLabel,{children:[" ",a("openapi.examples","Examples"),": "]}),_jsx(ExamplesList,{children:Object.entries(e.examples).map((([a,r])=>{const l=normalizeText(r.description);return _jsxs(ExampleWrap,{children:[_jsxs(ExampleSummary,{children:[normalizeText(r.summary)||a," "]}),l&&_jsxs(ExampleDescription,{children:[l," "]}),_jsx(ExampleValue,{children:getSerializedValue(e,r.value)})]},a)}))})]}):null}export function getSerializedValue(e,a){return e.in?decodeURIComponent(serializeParameterValue(e,a)):a}
2
2
  //# sourceMappingURL=Examples.js.map
@@ -1,3 +1,2 @@
1
- /// <reference types="react" />
2
1
  import type { ExtensionsProps } from './types';
3
2
  export declare const Extensions: import("react").NamedExoticComponent<ExtensionsProps>;
@@ -1,7 +1,7 @@
1
- /// <reference types="react" />
2
1
  export interface FieldDetailProps {
3
2
  value?: any;
4
3
  label: string;
5
4
  raw?: boolean;
5
+ type?: 'default' | 'example' | 'other';
6
6
  }
7
7
  export declare const FieldDetail: import("react").NamedExoticComponent<FieldDetailProps>;
@@ -1,4 +1,4 @@
1
- import{jsxs as _jsxs,jsx as _jsx}from"react/jsx-runtime";import{memo}from"react";import styled from"styled-components";import{FieldLabel,DefaultValue,FieldValueLabel,ExpandableExample}from"../common";function FieldDetailComponent({value:e,label:l,raw:a}){if(void 0===e)return null;const i=a?String(e):JSON.stringify(e);return _jsxs(Wrapper,{children:[_jsxs(FieldLabel,{children:[" ",l," "]}),"Default"===l?_jsx(DefaultValue,{children:i}):"Example:"===l?_jsx(ExpandableExample,{value:i}):_jsx(FieldValueLabel,{children:i})]})}export const FieldDetail=memo(FieldDetailComponent);const Wrapper=styled.div`
1
+ import{jsxs as _jsxs,jsx as _jsx}from"react/jsx-runtime";import{memo}from"react";import styled from"styled-components";import{FieldLabel,DefaultValue,FieldValueLabel,ExpandableExample}from"../common";function FieldDetailComponent({value:e,label:l,raw:a,type:i="other"}){if(void 0===e)return null;const r=a?String(e):JSON.stringify(e);return _jsxs(Wrapper,{children:[_jsxs(FieldLabel,{children:[" ",l," "]}),"default"===i?_jsx(DefaultValue,{children:r}):"example"===i?_jsx(ExpandableExample,{value:r}):_jsx(FieldValueLabel,{children:r})]})}export const FieldDetail=memo(FieldDetailComponent);const Wrapper=styled.div`
2
2
  margin-top: var(--spacing-xxs);
3
3
  display: flex;
4
4
  align-items: baseline;
@@ -1,3 +1,2 @@
1
- /// <reference types="react" />
2
1
  import type { FieldProps } from './types';
3
2
  export declare const FieldDetails: import("react").NamedExoticComponent<FieldProps>;
@@ -1,4 +1,4 @@
1
- import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from"react/jsx-runtime";import{memo,useMemo}from"react";import{useAtomValue}from"jotai";import styled from"styled-components";import{LinkIcon}from"@redocly/theme";import{RecursiveLabel,Tag,AccessLabel,RequiredLabel,StyledBadge}from"../common";import{ExternalDocumentation}from"../ExternalDocumentation";import{Markdown}from"../Markdown";import{FieldDetail}from"./FieldDetail";import{Extensions}from"./Extensions";import{EnumValues}from"./EnumValues";import{Examples,getSerializedValue}from"./Examples";import{globalOptionsAtom}from"../../jotai/store";import{SchemaTypeInfo}from"./SchemaTypeInfo";import{LinkToField}from"../common/LinkToField";import{Pattern}from"./Pattern";import{getAccessModeLabelText}from"../RenderHook";function FieldDetailsComponent({field:e,renderDiscriminatorSwitch:t,deepLink:i,fieldParentsName:a=[]}){var o;const{hidePropertiesPrefix:r,hideSchemaTitles:s}=useAtomValue(globalOptionsAtom),{schema:n,description:l,example:m,deprecated:p,examples:c,kind:d,required:x,name:f}=e,h="header"===e.in,u=useMemo((()=>{if(void 0!==m||void 0!==c){if(void 0!==c)return _jsx(Examples,{field:e});{const t=!!e.in;return _jsx(FieldDetail,{label:"Example:",value:getSerializedValue(e,e.example),raw:t})}}return null}),[m,c,e]),y=getAccessModeLabelText(e.schema);return _jsxs(_Fragment,{children:[_jsxs(Row,{children:[f&&_jsxs(Name,{children:[i&&_jsx(LinkToField,{to:i}),!r&&a.map((e=>e+".")),_jsx(SchemaName,{className:"schema-name",children:f})]}),_jsx(SchemaTypeInfo,{type:n.typePrefix+n.displayType}),_jsx(SchemaTypeInfo,{type:n.displayFormat&&`(${n.displayFormat})`}),_jsx(SchemaTypeInfo,{type:n.contentEncoding}),_jsx(SchemaTypeInfo,{type:n.title&&!s?`(${n.title})`:""}),null===(o=n.constraints)||void 0===o?void 0:o.map((e=>_jsx(SchemaTypeInfo,{type:e},e))),p&&_jsx(StyledBadge,{deprecated:!0,children:"Deprecated"}),_jsx(Pattern,{pattern:n.pattern}),"additionalProperties"===d&&_jsx(Tag,{children:"additional property"}),"patternProperties"===d&&_jsx(Tag,{children:"pattern property"}),y&&_jsx(AccessLabel,{children:y}),x&&_jsx(RequiredLabel,{children:"required"}),n.isCircular&&_jsx(RecursiveLabel,{children:"Recursive"})]}),_jsx(StyledDescription,{source:l}),_jsx(FieldDetail,{raw:h,label:"Default",value:n.default}),_jsx(EnumValues,{type:n.type,values:n["x-enumDescriptions"]||n.enum}),u,_jsx(Extensions,{extensions:Object.assign(Object.assign({},e.extensions),n.extensions)}),n.externalDocs&&_jsx(ExternalDocumentation,{externalDocs:n.externalDocs,compact:!0}),null==t?void 0:t(),_jsx(FieldDetail,{label:"Value",value:e.const||void 0})]})}export const FieldDetails=memo(FieldDetailsComponent);const Row=styled.div`
1
+ import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from"react/jsx-runtime";import{memo,useMemo}from"react";import{useAtomValue}from"jotai";import styled from"styled-components";import{LinkIcon}from"@redocly/theme";import{RecursiveLabel,Tag,AccessLabel,RequiredLabel,StyledBadge}from"../common";import{ExternalDocumentation}from"../ExternalDocumentation";import{Markdown}from"../Markdown";import{FieldDetail}from"./FieldDetail";import{Extensions}from"./Extensions";import{EnumValues}from"./EnumValues";import{Examples,getSerializedValue}from"./Examples";import{globalOptionsAtom}from"../../jotai/store";import{SchemaTypeInfo}from"./SchemaTypeInfo";import{LinkToField}from"../common/LinkToField";import{Pattern}from"./Pattern";import{getAccessModeLabelText}from"../RenderHook";import{useTranslate}from"../../hooks";function FieldDetailsComponent({field:e,renderDiscriminatorSwitch:a,deepLink:t,fieldParentsName:i=[]}){var o;const r=useTranslate(),{hidePropertiesPrefix:s,hideSchemaTitles:n}=useAtomValue(globalOptionsAtom),{schema:l,description:p,example:m,deprecated:d,examples:c,kind:x,required:f,name:u}=e,h="header"===e.in,y=useMemo((()=>{if(void 0!==m||void 0!==c){if(void 0!==c)return _jsx(Examples,{field:e});{const a=!!e.in;return _jsx(FieldDetail,{label:`${r("openapi.example","Example")}:`,value:getSerializedValue(e,e.example),raw:a})}}return null}),[m,c,e,r]),v=getAccessModeLabelText(e.schema);return _jsxs(_Fragment,{children:[_jsxs(Row,{children:[u&&_jsxs(Name,{children:[t&&_jsx(LinkToField,{to:t}),!s&&i.map((e=>e+".​")),_jsx(SchemaName,{className:"schema-name",children:u})]}),_jsx(SchemaTypeInfo,{type:l.typePrefix+l.displayType}),_jsx(SchemaTypeInfo,{type:l.displayFormat&&`(${l.displayFormat})`}),_jsx(SchemaTypeInfo,{type:l.contentEncoding}),_jsx(SchemaTypeInfo,{type:l.title&&!n?`(${l.title})`:""}),null===(o=l.constraints)||void 0===o?void 0:o.map((e=>_jsx(SchemaTypeInfo,{type:e},e))),d&&_jsx(StyledBadge,{deprecated:!0,children:r("openapi.badges.deprecated","Deprecated")}),_jsx(Pattern,{pattern:l.pattern}),"additionalProperties"===x&&_jsx(Tag,{children:r("openapi.additionalProperties","additional property")}),"patternProperties"===x&&_jsx(Tag,{children:r("openapi.patternProperties","pattern property")}),v&&_jsx(AccessLabel,{children:v}),f&&_jsx(RequiredLabel,{children:r("openapi.required","required")}),l.isCircular&&_jsx(RecursiveLabel,{children:r("openapi.recursive","Recursive")})]}),_jsx(StyledDescription,{source:p}),_jsx(FieldDetail,{raw:h,type:"default",label:r("openapi.default","Default"),value:l.default}),_jsx(EnumValues,{type:l.type,values:l["x-enumDescriptions"]||l.enum}),y,_jsx(Extensions,{extensions:Object.assign(Object.assign({},e.extensions),l.extensions)}),l.externalDocs&&_jsx(ExternalDocumentation,{externalDocs:l.externalDocs,compact:!0}),null==a?void 0:a(),_jsx(FieldDetail,{label:r("openapi.value","Value"),value:e.const||void 0})]})}export const FieldDetails=memo(FieldDetailsComponent);const Row=styled.div`
2
2
  display: flex;
3
3
  align-items: center;
4
4
  gap: calc(var(--spacing-xxs) / 4) var(--spacing-xxs);
@@ -19,8 +19,9 @@ import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from"react/jsx-runtime";i
19
19
  font-size: var(--font-size-base);
20
20
  color: var(--text-color-description);
21
21
  max-width: 100%;
22
- display: flex;
23
- flex-wrap: wrap;
22
+ word-wrap: break-word;
23
+ overflow-wrap: break-word;
24
+ white-space: pre-wrap;
24
25
 
25
26
  :hover {
26
27
  ${LinkIcon} {
@@ -1,2 +1,2 @@
1
- import{jsx as _jsx,Fragment as _Fragment,jsxs as _jsxs}from"react/jsx-runtime";import{useState}from"react";import{Tag,ToggleButton}from"../common";const MAX_PATTERN_LENGTH=45;export function Pattern({pattern:t}){const[e,n]=useState(!1);if(!t)return null;return _jsxs(_Fragment,{children:[_jsx(Tag,{children:e||t.length<MAX_PATTERN_LENGTH?t:`${t.slice(0,MAX_PATTERN_LENGTH)}...`}),t.length>MAX_PATTERN_LENGTH&&_jsx(ToggleButton,{onClick:()=>{n(!e)},children:e?"Hide pattern":"Show pattern"})]})}
1
+ import{jsx as _jsx,Fragment as _Fragment,jsxs as _jsxs}from"react/jsx-runtime";import{useState}from"react";import{Tag,ToggleButton}from"../common";import{useTranslate}from"../../hooks";const MAX_PATTERN_LENGTH=45;export function Pattern({pattern:t}){const e=useTranslate(),[n,r]=useState(!1);if(!t)return null;return _jsxs(_Fragment,{children:[_jsx(Tag,{children:n||t.length<MAX_PATTERN_LENGTH?t:`${t.slice(0,MAX_PATTERN_LENGTH)}...`}),t.length>MAX_PATTERN_LENGTH&&_jsx(ToggleButton,{onClick:()=>{r(!n)},children:n?e("openapi.hidePattern","Hide pattern"):e("openapi.showPattern","Show pattern")})]})}
2
2
  //# sourceMappingURL=Pattern.js.map
@@ -1,3 +1,2 @@
1
- /// <reference types="react" />
2
1
  import type { FieldProps } from './types';
3
2
  export declare const PropertyDetails: import("react").NamedExoticComponent<FieldProps>;
@@ -1,4 +1,4 @@
1
1
  import type { ReactElement } from 'react';
2
2
  import type { SimpleEnumsProps } from './types';
3
- export declare function SimpleEnumsComponent({ enums, type, toggle, showToggleButton, toggleButtonText, }: SimpleEnumsProps): ReactElement;
3
+ export declare function SimpleEnumsComponent({ enums, type, toggle, showToggleButton, toggleButtonText, translate, }: SimpleEnumsProps): ReactElement;
4
4
  export declare const SimpleEnums: import("react").NamedExoticComponent<SimpleEnumsProps>;
@@ -1,4 +1,4 @@
1
- import{jsxs as _jsxs,jsx as _jsx}from"react/jsx-runtime";import{memo}from"react";import styled from"styled-components";import{FieldLabel,Tag,ToggleButton}from"../common";export function SimpleEnumsComponent({enums:e,type:o,toggle:t,showToggleButton:n,toggleButtonText:s}){return _jsxs(Row,{children:[_jsxs(FieldLabel,{children:["array"===o?"Items":""," ",1===e.length?"Value":"Enum"]}),e.map(((e,o)=>_jsx(Tag,{children:JSON.stringify(e)},e+o))),n?_jsx(ToggleButton,{onClick:t,children:s}):null]})}export const SimpleEnums=memo(SimpleEnumsComponent);const Row=styled.div`
1
+ import{jsxs as _jsxs,jsx as _jsx}from"react/jsx-runtime";import{memo}from"react";import styled from"styled-components";import{FieldLabel,Tag,ToggleButton}from"../common";export function SimpleEnumsComponent({enums:e,type:n,toggle:o,showToggleButton:t,toggleButtonText:s,translate:m}){return _jsxs(Row,{children:[_jsxs(FieldLabel,{children:["array"===n?m("openapi.items","Items"):""," ",1===e.length?m("openapi.value","Value"):m("openapi.enum","Enum")]}),e.map(((e,n)=>_jsx(Tag,{children:JSON.stringify(e)},e+n))),t?_jsx(ToggleButton,{onClick:o,children:s}):null]})}export const SimpleEnums=memo(SimpleEnumsComponent);const Row=styled.div`
2
2
  display: flex;
3
3
  flex-wrap: wrap;
4
4
  align-items: center;