@mintlify/msft-sdk 1.1.22 → 1.1.24

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 (346) hide show
  1. package/dist/api-playground/ApiPlayground/Request/BodySection.js +65 -0
  2. package/dist/api-playground/ApiPlayground/Request/BodySection.js.map +1 -0
  3. package/dist/api-playground/ApiPlayground/Request/ParameterSection.js +33 -0
  4. package/dist/api-playground/ApiPlayground/Request/ParameterSection.js.map +1 -0
  5. package/dist/api-playground/ApiPlayground/Request/PlaygroundModal.js +201 -0
  6. package/dist/api-playground/ApiPlayground/Request/PlaygroundModal.js.map +1 -0
  7. package/dist/api-playground/ApiPlayground/Request/SecuritySection.js +147 -0
  8. package/dist/api-playground/ApiPlayground/Request/SecuritySection.js.map +1 -0
  9. package/dist/api-playground/ApiPlayground/Request/ServerSection.js +31 -0
  10. package/dist/api-playground/ApiPlayground/Request/ServerSection.js.map +1 -0
  11. package/dist/api-playground/ApiPlayground/Request/index.js +44 -0
  12. package/dist/api-playground/ApiPlayground/Request/index.js.map +1 -0
  13. package/dist/api-playground/ApiPlayground/Request/inputs/ArrayInput.js +94 -0
  14. package/dist/api-playground/ApiPlayground/Request/inputs/ArrayInput.js.map +1 -0
  15. package/dist/api-playground/ApiPlayground/Request/inputs/DifferentiatedInput.js +91 -0
  16. package/dist/api-playground/ApiPlayground/Request/inputs/DifferentiatedInput.js.map +1 -0
  17. package/dist/api-playground/ApiPlayground/Request/inputs/FileInput.js +63 -0
  18. package/dist/api-playground/ApiPlayground/Request/inputs/FileInput.js.map +1 -0
  19. package/dist/api-playground/ApiPlayground/Request/inputs/NullInput.js +34 -0
  20. package/dist/api-playground/ApiPlayground/Request/inputs/NullInput.js.map +1 -0
  21. package/dist/api-playground/ApiPlayground/Request/inputs/NumberInput.js +62 -0
  22. package/dist/api-playground/ApiPlayground/Request/inputs/NumberInput.js.map +1 -0
  23. package/dist/api-playground/ApiPlayground/Request/inputs/ObjectChildren.js +110 -0
  24. package/dist/api-playground/ApiPlayground/Request/inputs/ObjectChildren.js.map +1 -0
  25. package/dist/api-playground/ApiPlayground/Request/inputs/ObjectInput.js +88 -0
  26. package/dist/api-playground/ApiPlayground/Request/inputs/ObjectInput.js.map +1 -0
  27. package/dist/api-playground/ApiPlayground/Request/inputs/RecursiveInput.js +62 -0
  28. package/dist/api-playground/ApiPlayground/Request/inputs/RecursiveInput.js.map +1 -0
  29. package/dist/api-playground/ApiPlayground/Request/inputs/SelectInput.js +55 -0
  30. package/dist/api-playground/ApiPlayground/Request/inputs/SelectInput.js.map +1 -0
  31. package/dist/api-playground/ApiPlayground/Request/inputs/StringInput.js +68 -0
  32. package/dist/api-playground/ApiPlayground/Request/inputs/StringInput.js.map +1 -0
  33. package/dist/api-playground/ApiPlayground/Request/inputs/TextInput.js +45 -0
  34. package/dist/api-playground/ApiPlayground/Request/inputs/TextInput.js.map +1 -0
  35. package/dist/api-playground/ApiPlayground/Response/CopyFileToClipboardButton.js +7 -0
  36. package/dist/api-playground/ApiPlayground/Response/CopyFileToClipboardButton.js.map +1 -0
  37. package/dist/api-playground/ApiPlayground/Response/DownloadFileButton.js +45 -0
  38. package/dist/api-playground/ApiPlayground/Response/DownloadFileButton.js.map +1 -0
  39. package/dist/api-playground/ApiPlayground/Response/ResponseBody/CodeResponseContent.js +54 -0
  40. package/dist/api-playground/ApiPlayground/Response/ResponseBody/CodeResponseContent.js.map +1 -0
  41. package/dist/api-playground/ApiPlayground/Response/ResponseBody/index.js +15 -0
  42. package/dist/api-playground/ApiPlayground/Response/ResponseBody/index.js.map +1 -0
  43. package/dist/api-playground/ApiPlayground/Response/ResponseError.js +14 -0
  44. package/dist/api-playground/ApiPlayground/Response/ResponseError.js.map +1 -0
  45. package/dist/api-playground/ApiPlayground/Response/ResponseHeaders.js +12 -0
  46. package/dist/api-playground/ApiPlayground/Response/ResponseHeaders.js.map +1 -0
  47. package/dist/api-playground/ApiPlayground/Response/ResponsePlaceholder.js +20 -0
  48. package/dist/api-playground/ApiPlayground/Response/ResponsePlaceholder.js.map +1 -0
  49. package/dist/api-playground/ApiPlayground/Response/ResponseTable.js +21 -0
  50. package/dist/api-playground/ApiPlayground/Response/ResponseTable.js.map +1 -0
  51. package/dist/api-playground/ApiPlayground/Response/ResponseTopbar.js +93 -0
  52. package/dist/api-playground/ApiPlayground/Response/ResponseTopbar.js.map +1 -0
  53. package/dist/api-playground/ApiPlayground/Response/index.js +80 -0
  54. package/dist/api-playground/ApiPlayground/Response/index.js.map +1 -0
  55. package/dist/api-playground/ApiPlayground/components/AdditionalItemButton.js +24 -0
  56. package/dist/api-playground/ApiPlayground/components/AdditionalItemButton.js.map +1 -0
  57. package/dist/api-playground/ApiPlayground/components/AdditionalPropertyButton.js +45 -0
  58. package/dist/api-playground/ApiPlayground/components/AdditionalPropertyButton.js.map +1 -0
  59. package/dist/api-playground/ApiPlayground/components/ArrayCount.js +18 -0
  60. package/dist/api-playground/ApiPlayground/components/ArrayCount.js.map +1 -0
  61. package/dist/api-playground/ApiPlayground/components/BasePathSelector.js +40 -0
  62. package/dist/api-playground/ApiPlayground/components/BasePathSelector.js.map +1 -0
  63. package/dist/api-playground/ApiPlayground/components/EndpointsMenu.js +44 -0
  64. package/dist/api-playground/ApiPlayground/components/EndpointsMenu.js.map +1 -0
  65. package/dist/api-playground/ApiPlayground/components/EndpointsMenuLink.js +45 -0
  66. package/dist/api-playground/ApiPlayground/components/EndpointsMenuLink.js.map +1 -0
  67. package/dist/api-playground/ApiPlayground/components/EndpointsMenuSearch.js +39 -0
  68. package/dist/api-playground/ApiPlayground/components/EndpointsMenuSearch.js.map +1 -0
  69. package/dist/api-playground/ApiPlayground/components/InputContainer.js +129 -0
  70. package/dist/api-playground/ApiPlayground/components/InputContainer.js.map +1 -0
  71. package/dist/api-playground/ApiPlayground/components/InputSectionContainer.js +60 -0
  72. package/dist/api-playground/ApiPlayground/components/InputSectionContainer.js.map +1 -0
  73. package/dist/api-playground/ApiPlayground/components/ModalHeader.js +16 -0
  74. package/dist/api-playground/ApiPlayground/components/ModalHeader.js.map +1 -0
  75. package/dist/api-playground/ApiPlayground/components/ObjectExpandButton.js +29 -0
  76. package/dist/api-playground/ApiPlayground/components/ObjectExpandButton.js.map +1 -0
  77. package/dist/api-playground/ApiPlayground/components/ParamFieldWrapper.js +20 -0
  78. package/dist/api-playground/ApiPlayground/components/ParamFieldWrapper.js.map +1 -0
  79. package/dist/api-playground/ApiPlayground/components/PathHeader.js +163 -0
  80. package/dist/api-playground/ApiPlayground/components/PathHeader.js.map +1 -0
  81. package/dist/api-playground/ApiPlayground/components/PlaygroundModalWrapper.js +59 -0
  82. package/dist/api-playground/ApiPlayground/components/PlaygroundModalWrapper.js.map +1 -0
  83. package/dist/api-playground/ApiPlayground/components/PrettyPath.js +50 -0
  84. package/dist/api-playground/ApiPlayground/components/PrettyPath.js.map +1 -0
  85. package/dist/api-playground/ApiPlayground/components/SendPill.js +40 -0
  86. package/dist/api-playground/ApiPlayground/components/SendPill.js.map +1 -0
  87. package/dist/api-playground/ApiPlayground/components/TrashButton.js +27 -0
  88. package/dist/api-playground/ApiPlayground/components/TrashButton.js.map +1 -0
  89. package/dist/api-playground/ApiPlayground/components/TypeDropdown.js +53 -0
  90. package/dist/api-playground/ApiPlayground/components/TypeDropdown.js.map +1 -0
  91. package/dist/api-playground/ApiPlayground/index.js +68 -0
  92. package/dist/api-playground/ApiPlayground/index.js.map +1 -0
  93. package/dist/api-playground/EndpointFields/ParamFields/ExampleDescription.js +51 -0
  94. package/dist/api-playground/EndpointFields/ParamFields/ExampleDescription.js.map +1 -0
  95. package/dist/api-playground/EndpointFields/ParamFields/PrimitiveParamField/Enum.js +20 -0
  96. package/dist/api-playground/EndpointFields/ParamFields/PrimitiveParamField/Enum.js.map +1 -0
  97. package/dist/api-playground/EndpointFields/ParamFields/PrimitiveParamField/NumberMetadata.js +19 -0
  98. package/dist/api-playground/EndpointFields/ParamFields/PrimitiveParamField/NumberMetadata.js.map +1 -0
  99. package/dist/api-playground/EndpointFields/ParamFields/PrimitiveParamField/StringMetadata.js +29 -0
  100. package/dist/api-playground/EndpointFields/ParamFields/PrimitiveParamField/StringMetadata.js.map +1 -0
  101. package/dist/api-playground/EndpointFields/ParamFields/PrimitiveParamField/index.js +6 -0
  102. package/dist/api-playground/EndpointFields/ParamFields/PrimitiveParamField/index.js.map +1 -0
  103. package/dist/api-playground/EndpointFields/ParamFields/RecursiveParamField.js +13 -0
  104. package/dist/api-playground/EndpointFields/ParamFields/RecursiveParamField.js.map +1 -0
  105. package/dist/api-playground/EndpointFields/components/Description.js +13 -0
  106. package/dist/api-playground/EndpointFields/components/Description.js.map +1 -0
  107. package/dist/api-playground/EndpointFields/components/OneOfDropdown.js +20 -0
  108. package/dist/api-playground/EndpointFields/components/OneOfDropdown.js.map +1 -0
  109. package/dist/api-playground/EndpointFields/components/OptionDropdown.js +36 -0
  110. package/dist/api-playground/EndpointFields/components/OptionDropdown.js.map +1 -0
  111. package/dist/api-playground/EndpointFields/components/SectionHeading.js +44 -0
  112. package/dist/api-playground/EndpointFields/components/SectionHeading.js.map +1 -0
  113. package/dist/api-playground/EndpointFields/index.js +7 -0
  114. package/dist/api-playground/EndpointFields/index.js.map +1 -0
  115. package/dist/api-playground-2/Api.js +13 -0
  116. package/dist/api-playground-2/Api.js.map +1 -0
  117. package/dist/api-playground-2/ApiExamples.js +27 -18
  118. package/dist/api-playground-2/ApiExamples.js.map +1 -1
  119. package/dist/api-playground-2/ApiFields.js +253 -0
  120. package/dist/api-playground-2/ApiFields.js.map +1 -0
  121. package/dist/api-playground-2/EndpointHeader.js +52 -0
  122. package/dist/api-playground-2/EndpointHeader.js.map +1 -0
  123. package/dist/api-playground-2/OperationPage.js +101 -0
  124. package/dist/api-playground-2/OperationPage.js.map +1 -0
  125. package/dist/api-playground-2/Playground.js +136 -0
  126. package/dist/api-playground-2/Playground.js.map +1 -0
  127. package/dist/api-playground-2/SchemaPage.js +14 -0
  128. package/dist/api-playground-2/SchemaPage.js.map +1 -0
  129. package/dist/api-playground-2/components/EndpointFields/EndpointSecurity.js +88 -0
  130. package/dist/api-playground-2/components/EndpointFields/EndpointSecurity.js.map +1 -0
  131. package/dist/api-playground-2/components/EndpointFields/fields/Enum.js +16 -0
  132. package/dist/api-playground-2/components/EndpointFields/fields/Enum.js.map +1 -0
  133. package/dist/api-playground-2/components/EndpointFields/fields/NumberMetadata.js +21 -0
  134. package/dist/api-playground-2/components/EndpointFields/fields/NumberMetadata.js.map +1 -0
  135. package/dist/api-playground-2/components/EndpointFields/fields/PrimitiveParamField.js +57 -0
  136. package/dist/api-playground-2/components/EndpointFields/fields/PrimitiveParamField.js.map +1 -0
  137. package/dist/api-playground-2/components/EndpointFields/fields/SimpleArrayParamField.js +90 -0
  138. package/dist/api-playground-2/components/EndpointFields/fields/SimpleArrayParamField.js.map +1 -0
  139. package/dist/api-playground-2/components/EndpointFields/fields/SimpleObjectParamField.js +122 -0
  140. package/dist/api-playground-2/components/EndpointFields/fields/SimpleObjectParamField.js.map +1 -0
  141. package/dist/api-playground-2/components/EndpointFields/fields/SimplePrimitiveParamField.js +75 -0
  142. package/dist/api-playground-2/components/EndpointFields/fields/SimplePrimitiveParamField.js.map +1 -0
  143. package/dist/api-playground-2/components/EndpointFields/fields/SimpleSchemaField.js +253 -0
  144. package/dist/api-playground-2/components/EndpointFields/fields/SimpleSchemaField.js.map +1 -0
  145. package/dist/api-playground-2/components/EndpointFields/fields/StringMetadata.js +28 -0
  146. package/dist/api-playground-2/components/EndpointFields/fields/StringMetadata.js.map +1 -0
  147. package/dist/api-playground-2/components/Example/GeneratedRequestExample.js +113 -118
  148. package/dist/api-playground-2/components/Example/GeneratedRequestExample.js.map +1 -1
  149. package/dist/api-playground-2/components/Example/RequestExample.js +55 -50
  150. package/dist/api-playground-2/components/Example/RequestExample.js.map +1 -1
  151. package/dist/api-playground-2/components/Request/BodySection.js +41 -0
  152. package/dist/api-playground-2/components/Request/BodySection.js.map +1 -0
  153. package/dist/api-playground-2/components/Request/InputSectionContainer.js +66 -0
  154. package/dist/api-playground-2/components/Request/InputSectionContainer.js.map +1 -0
  155. package/dist/api-playground-2/components/Request/ParameterSection.js +36 -0
  156. package/dist/api-playground-2/components/Request/ParameterSection.js.map +1 -0
  157. package/dist/api-playground-2/components/Request/SecuritySection.js +55 -0
  158. package/dist/api-playground-2/components/Request/SecuritySection.js.map +1 -0
  159. package/dist/api-playground-2/components/Request/ServerSection.js +33 -0
  160. package/dist/api-playground-2/components/Request/ServerSection.js.map +1 -0
  161. package/dist/api-playground-2/components/Request/inputs/ArrayInput.js +55 -0
  162. package/dist/api-playground-2/components/Request/inputs/ArrayInput.js.map +1 -0
  163. package/dist/api-playground-2/components/Request/inputs/DifferentiatedInput.js +48 -0
  164. package/dist/api-playground-2/components/Request/inputs/DifferentiatedInput.js.map +1 -0
  165. package/dist/api-playground-2/components/Request/inputs/FileInput.js +43 -0
  166. package/dist/api-playground-2/components/Request/inputs/FileInput.js.map +1 -0
  167. package/dist/api-playground-2/components/Request/inputs/InputContainer.js +127 -0
  168. package/dist/api-playground-2/components/Request/inputs/InputContainer.js.map +1 -0
  169. package/dist/api-playground-2/components/Request/inputs/NullInput.js +15 -0
  170. package/dist/api-playground-2/components/Request/inputs/NullInput.js.map +1 -0
  171. package/dist/api-playground-2/components/Request/inputs/NumberInput.js +46 -0
  172. package/dist/api-playground-2/components/Request/inputs/NumberInput.js.map +1 -0
  173. package/dist/api-playground-2/components/Request/inputs/ObjectInput.js +104 -0
  174. package/dist/api-playground-2/components/Request/inputs/ObjectInput.js.map +1 -0
  175. package/dist/api-playground-2/components/Request/inputs/OneOfInput.js +77 -0
  176. package/dist/api-playground-2/components/Request/inputs/OneOfInput.js.map +1 -0
  177. package/dist/api-playground-2/components/Request/inputs/SelectInput.js +54 -0
  178. package/dist/api-playground-2/components/Request/inputs/SelectInput.js.map +1 -0
  179. package/dist/api-playground-2/components/Request/inputs/StringInput.js +44 -0
  180. package/dist/api-playground-2/components/Request/inputs/StringInput.js.map +1 -0
  181. package/dist/api-playground-2/components/Request/inputs/TextInput.js +29 -0
  182. package/dist/api-playground-2/components/Request/inputs/TextInput.js.map +1 -0
  183. package/dist/api-playground-2/components/TypeDropdown.js +48 -0
  184. package/dist/api-playground-2/components/TypeDropdown.js.map +1 -0
  185. package/dist/api-playground-2/constants/index.js +6 -4
  186. package/dist/api-playground-2/constants/index.js.map +1 -1
  187. package/dist/api-playground-2/contexts/ApiPlaygroundContext.js +11 -0
  188. package/dist/api-playground-2/contexts/ApiPlaygroundContext.js.map +1 -0
  189. package/dist/api-playground-2/generators/createBodyData.js +1 -1
  190. package/dist/api-playground-2/generators/createBodyData.js.map +1 -1
  191. package/dist/api-playground-2/generators/createHeaders.js +18 -18
  192. package/dist/api-playground-2/generators/createHeaders.js.map +1 -1
  193. package/dist/api-playground-2/generators/generateInteractiveCodeSample.js +21 -19
  194. package/dist/api-playground-2/generators/generateInteractiveCodeSample.js.map +1 -1
  195. package/dist/api-playground-2/generators/generateRequest.js +26 -25
  196. package/dist/api-playground-2/generators/generateRequest.js.map +1 -1
  197. package/dist/api-playground-2/generators/generateSnippet.js +187 -36
  198. package/dist/api-playground-2/generators/generateSnippet.js.map +1 -1
  199. package/dist/api-playground-2/generators/generateSnippetMap.js +13 -11
  200. package/dist/api-playground-2/generators/generateSnippetMap.js.map +1 -1
  201. package/dist/api-playground-2/hooks/useCopyPathWithInputs.js +14 -0
  202. package/dist/api-playground-2/hooks/useCopyPathWithInputs.js.map +1 -0
  203. package/dist/api-playground-2/hooks/useInitializeInputs.js +101 -0
  204. package/dist/api-playground-2/hooks/useInitializeInputs.js.map +1 -0
  205. package/dist/api-playground-2/hooks/usePlaygroundInputsStore.js +24 -13
  206. package/dist/api-playground-2/hooks/usePlaygroundInputsStore.js.map +1 -1
  207. package/dist/api-playground-2/hooks/useSendPlaygroundRequest.js +156 -0
  208. package/dist/api-playground-2/hooks/useSendPlaygroundRequest.js.map +1 -0
  209. package/dist/api-playground-2/schemaGraph/addApiReferenceDataFromMdxAndDocsConfig.js +57 -0
  210. package/dist/api-playground-2/schemaGraph/addApiReferenceDataFromMdxAndDocsConfig.js.map +1 -0
  211. package/dist/api-playground-2/schemaGraph/processExamples.js +41 -8
  212. package/dist/api-playground-2/schemaGraph/processExamples.js.map +1 -1
  213. package/dist/api-playground-2/schemaGraph/processSecurityOptions.js +107 -0
  214. package/dist/api-playground-2/schemaGraph/processSecurityOptions.js.map +1 -0
  215. package/dist/api-playground-2/schemaGraph/utils.js +195 -43
  216. package/dist/api-playground-2/schemaGraph/utils.js.map +1 -1
  217. package/dist/api-playground-2/types/index.js +118 -0
  218. package/dist/api-playground-2/types/index.js.map +1 -0
  219. package/dist/common/guards.js +37 -0
  220. package/dist/common/guards.js.map +1 -0
  221. package/dist/common/potentiallyParseOpenApiString.js +25 -0
  222. package/dist/common/potentiallyParseOpenApiString.js.map +1 -0
  223. package/dist/common/replaceSlashIndex.js +7 -0
  224. package/dist/common/replaceSlashIndex.js.map +1 -0
  225. package/dist/common/slugToTitle.js +11 -0
  226. package/dist/common/slugToTitle.js.map +1 -0
  227. package/dist/components/Api/Expandable.js +119 -0
  228. package/dist/components/Api/Expandable.js.map +1 -0
  229. package/dist/components/Api/Markdown.js +66 -0
  230. package/dist/components/Api/Markdown.js.map +1 -0
  231. package/dist/components/Api/Param.js +191 -0
  232. package/dist/components/Api/Param.js.map +1 -0
  233. package/dist/components/content-components/code-block.js +68 -61
  234. package/dist/components/content-components/code-block.js.map +1 -1
  235. package/dist/components/content-components/code-group.js +36 -25
  236. package/dist/components/content-components/code-group.js.map +1 -1
  237. package/dist/components/content-components/getNodeText.js +5 -0
  238. package/dist/components/content-components/getNodeText.js.map +1 -0
  239. package/dist/components/toc/index.js +4 -4
  240. package/dist/components/toc/index.js.map +1 -1
  241. package/dist/constants/index.js +5 -0
  242. package/dist/constants/index.js.map +1 -0
  243. package/dist/constants/zIndex.js +7 -0
  244. package/dist/constants/zIndex.js.map +1 -0
  245. package/dist/contexts/ApiPlaygroundInputsContext.js +18 -0
  246. package/dist/contexts/ApiPlaygroundInputsContext.js.map +1 -0
  247. package/dist/contexts/ConfigContext.js +2 -3
  248. package/dist/contexts/ConfigContext.js.map +1 -1
  249. package/dist/contexts/EndpointLocationContext.js +18 -0
  250. package/dist/contexts/EndpointLocationContext.js.map +1 -0
  251. package/dist/contexts/MDXContentContext.js +19 -0
  252. package/dist/contexts/MDXContentContext.js.map +1 -0
  253. package/dist/env.js +6 -1
  254. package/dist/env.js.map +1 -1
  255. package/dist/hooks/useApiPlaygroundInputs.js +7 -0
  256. package/dist/hooks/useApiPlaygroundInputs.js.map +1 -0
  257. package/dist/hooks/useApiPlaygroundPrefillExamples.js +40 -0
  258. package/dist/hooks/useApiPlaygroundPrefillExamples.js.map +1 -0
  259. package/dist/hooks/useBaseUrlOptions.js +19 -0
  260. package/dist/hooks/useBaseUrlOptions.js.map +1 -0
  261. package/dist/hooks/useCheckHash.js +18 -0
  262. package/dist/hooks/useCheckHash.js.map +1 -0
  263. package/dist/hooks/useComponentSchemas.js +10 -0
  264. package/dist/hooks/useComponentSchemas.js.map +1 -0
  265. package/dist/hooks/useCurrentPath.js +17 -0
  266. package/dist/hooks/useCurrentPath.js.map +1 -0
  267. package/dist/hooks/useEndpoint.js +3 -3
  268. package/dist/hooks/useExpandableMemory.js +46 -0
  269. package/dist/hooks/useExpandableMemory.js.map +1 -0
  270. package/dist/hooks/useGenerateNextAdditionalProperties.js +12 -0
  271. package/dist/hooks/useGenerateNextAdditionalProperties.js.map +1 -0
  272. package/dist/hooks/useGenerateNextItems.js +12 -0
  273. package/dist/hooks/useGenerateNextItems.js.map +1 -0
  274. package/dist/hooks/useGenerateNextProperties.js +12 -0
  275. package/dist/hooks/useGenerateNextProperties.js.map +1 -0
  276. package/dist/hooks/useKeyboardShortcut.js +26 -0
  277. package/dist/hooks/useKeyboardShortcut.js.map +1 -0
  278. package/dist/hooks/useMDXContent.js +7 -0
  279. package/dist/hooks/useMDXContent.js.map +1 -0
  280. package/dist/hooks/useMDXContentController/useApiPlaygroundInputs.js +10 -0
  281. package/dist/hooks/useMDXContentController/useApiPlaygroundInputs.js.map +1 -0
  282. package/dist/hooks/useMDXContentController/useMDXContentCallbacks/useSetApiBaseIndexCallback.js +16 -0
  283. package/dist/hooks/useMDXContentController/useMDXContentCallbacks/useSetApiBaseIndexCallback.js.map +1 -0
  284. package/dist/hooks/useMDXContentController/useMDXContentCallbacks/useSetApiPlaygroundInputsCallback.js +16 -0
  285. package/dist/hooks/useMDXContentController/useMDXContentCallbacks/useSetApiPlaygroundInputsCallback.js.map +1 -0
  286. package/dist/hooks/usePlaygroundSchemaOptions.js +43 -0
  287. package/dist/hooks/usePlaygroundSchemaOptions.js.map +1 -0
  288. package/dist/hooks/usePrefilledInputs/index.js +66 -0
  289. package/dist/hooks/usePrefilledInputs/index.js.map +1 -0
  290. package/dist/hooks/usePrefilledInputs/storedServerVariables.js +30 -0
  291. package/dist/hooks/usePrefilledInputs/storedServerVariables.js.map +1 -0
  292. package/dist/hooks/useSecurityOption.js +11 -0
  293. package/dist/hooks/useSecurityOption.js.map +1 -0
  294. package/dist/hooks/useSendPlaygroundRequest.js +146 -15
  295. package/dist/hooks/useSendPlaygroundRequest.js.map +1 -1
  296. package/dist/hooks/useSetDefaultValue.js +64 -0
  297. package/dist/hooks/useSetDefaultValue.js.map +1 -0
  298. package/dist/index.d.ts +281 -0
  299. package/dist/index.js +143 -108
  300. package/dist/index.js.map +1 -1
  301. package/dist/openapi/filterEnums.js +21 -0
  302. package/dist/openapi/filterEnums.js.map +1 -0
  303. package/dist/openapi/generateNextAdditionalProperties.js +8 -0
  304. package/dist/openapi/generateNextAdditionalProperties.js.map +1 -0
  305. package/dist/openapi/generateNextItems.js +8 -0
  306. package/dist/openapi/generateNextItems.js.map +1 -0
  307. package/dist/openapi/generateNextProperties.js +24 -0
  308. package/dist/openapi/generateNextProperties.js.map +1 -0
  309. package/dist/openapi/generateOptionLabels.js +21 -0
  310. package/dist/openapi/generateOptionLabels.js.map +1 -0
  311. package/dist/openapi/generateSimpleLabels.js +5 -0
  312. package/dist/openapi/generateSimpleLabels.js.map +1 -0
  313. package/dist/openapi/generateTypeStringFromSchema.js +34 -0
  314. package/dist/openapi/generateTypeStringFromSchema.js.map +1 -0
  315. package/dist/openapi/getAuthFilteredSchemaArray.js +19 -0
  316. package/dist/openapi/getAuthFilteredSchemaArray.js.map +1 -0
  317. package/dist/paths/isEqualIgnoringLeadingSlash.js +22 -0
  318. package/dist/paths/isEqualIgnoringLeadingSlash.js.map +1 -0
  319. package/dist/paths/optionallyRemoveLeadingSlash.js +7 -0
  320. package/dist/paths/optionallyRemoveLeadingSlash.js.map +1 -0
  321. package/dist/paths/optionallyRemoveTrailingSlash.js +7 -0
  322. package/dist/paths/optionallyRemoveTrailingSlash.js.map +1 -0
  323. package/dist/styles.css +1 -1
  324. package/dist/utils/api-playground/defaults.js +16 -0
  325. package/dist/utils/api-playground/defaults.js.map +1 -0
  326. package/dist/utils/api-playground/paramFieldDefaults.js +11 -0
  327. package/dist/utils/api-playground/paramFieldDefaults.js.map +1 -0
  328. package/dist/utils/api-reference/getFilteredSecurityOptions.js +5 -0
  329. package/dist/utils/api-reference/getFilteredSecurityOptions.js.map +1 -0
  330. package/dist/utils/api-reference/getNextPropertiesByType.js +6 -0
  331. package/dist/utils/api-reference/getNextPropertiesByType.js.map +1 -0
  332. package/dist/utils/containsMarkdownTable.js +5 -0
  333. package/dist/utils/containsMarkdownTable.js.map +1 -0
  334. package/dist/utils/copyToClipboard.js +12 -0
  335. package/dist/utils/copyToClipboard.js.map +1 -0
  336. package/dist/utils/decodeSlug.js +8 -0
  337. package/dist/utils/decodeSlug.js.map +1 -0
  338. package/dist/utils/flattenObject.js +11 -0
  339. package/dist/utils/flattenObject.js.map +1 -0
  340. package/dist/utils/formatJSON.js +39 -0
  341. package/dist/utils/formatJSON.js.map +1 -0
  342. package/dist/utils/optionallyAddLeadingSlash.js +7 -0
  343. package/dist/utils/optionallyAddLeadingSlash.js.map +1 -0
  344. package/dist/utils/scrollElementIntoView.js +21 -0
  345. package/dist/utils/scrollElementIntoView.js.map +1 -0
  346. package/package.json +2 -3
@@ -0,0 +1,156 @@
1
+ import { useCallback as j } from "react";
2
+ import { NEXT_PUBLIC as h } from "../../env.js";
3
+ import { usePlaygroundInputsStore as w } from "./usePlaygroundInputsStore.js";
4
+ const J = ({
5
+ apiReferenceData: r,
6
+ baseUrl: n,
7
+ contentType: t = "application/json",
8
+ setResult: s,
9
+ setIsSending: e
10
+ }) => {
11
+ var l, u, y;
12
+ const { getApiPlaygroundInputs: a } = w(), o = a(), d = (l = r.operation) == null ? void 0 : l.disableProxy, c = (u = r.operation) == null ? void 0 : u.path, f = (y = r.operation) == null ? void 0 : y.method;
13
+ return j(async () => {
14
+ if (e(!0), !c || !n || !f || !t || !n) {
15
+ e(!1), s({
16
+ error: !0,
17
+ errorMessage: "Missing required fields to send a playground request"
18
+ }), console.error(
19
+ `Missing some required field to send a playground request:
20
+
21
+ path=${c}
22
+ method=${f}
23
+ contentType=${t}
24
+ baseUrl=${n}`
25
+ );
26
+ return;
27
+ }
28
+ const m = await import("axios").then((i) => i.default), b = O(c, o.path), g = x(P(n, o.server), b), S = A(o.header, t), p = {
29
+ method: f,
30
+ url: g,
31
+ header: S,
32
+ body: o.body,
33
+ cookie: o.cookie,
34
+ query: o.query
35
+ };
36
+ try {
37
+ if (d) {
38
+ const i = await $(p);
39
+ s({
40
+ error: !1,
41
+ response: {
42
+ status: i.status,
43
+ statusText: i.statusText,
44
+ headers: i.headers,
45
+ data: i.data
46
+ }
47
+ });
48
+ } else if (t && t.includes("multipart/form-data")) {
49
+ const i = await E(p);
50
+ s(i);
51
+ } else {
52
+ const { data: i } = await m.post(
53
+ `${h.BASE_PATH}/_mintlify/api/request`,
54
+ p
55
+ );
56
+ s(i);
57
+ }
58
+ } catch (i) {
59
+ s({
60
+ error: !0,
61
+ errorMessage: "unable to complete request"
62
+ }), console.error(i);
63
+ }
64
+ e(!1);
65
+ }, [
66
+ f,
67
+ c,
68
+ e,
69
+ o,
70
+ n,
71
+ t,
72
+ d,
73
+ s
74
+ ]);
75
+ }, O = (r, n) => Object.entries(n).reduce((t, [s, e]) => e == null ? t : t.replace(`{${s}}`, encodeURIComponent(e.toString())), r), P = (r, n) => {
76
+ let t = r;
77
+ return Object.entries(n).forEach(([s, e]) => {
78
+ e && (t = t.replace(`{${s}}`, e));
79
+ }), t;
80
+ }, x = (r, n) => r.replace(/\/$/, "") + "/" + n.replace(/^\//, ""), A = (r, n) => Object.keys(r).some((t) => t.toLowerCase() === "content-type") ? r : {
81
+ ...r,
82
+ "content-type": n
83
+ }, $ = async (r) => {
84
+ const n = await import("axios").then((a) => a.default), t = Object.keys(r.header).find(
85
+ (a) => a.toLowerCase() === "content-type"
86
+ );
87
+ let s = r.body, e = r.header;
88
+ if (t != null && t.includes("multipart/form-data")) {
89
+ const { data: a, headers: o } = F(r);
90
+ s = a, e = o;
91
+ }
92
+ return n({
93
+ url: r.url,
94
+ method: r.method,
95
+ params: r.query,
96
+ data: s,
97
+ headers: e,
98
+ // prevent axios from adding [] after array query params
99
+ paramsSerializer: {
100
+ indexes: null
101
+ },
102
+ responseType: "arraybuffer",
103
+ // prevent axios from erroring on bad status codes
104
+ validateStatus: () => !0,
105
+ // prevent axios from parsing json, losing whitespace information, and using default utf-8 encoding
106
+ // we can't use `responseEncoding` as it's ignored client-side
107
+ transformResponse: (a) => Buffer.from(a).toString("base64")
108
+ });
109
+ }, E = async (r) => {
110
+ const n = await import("axios").then((e) => e.default), t = new FormData();
111
+ t.append(
112
+ "requestInfo",
113
+ JSON.stringify({
114
+ method: r.method,
115
+ url: r.url,
116
+ header: r.header,
117
+ query: r.query,
118
+ cookie: r.cookie
119
+ })
120
+ ), typeof r.body == "object" && r.body !== null && Object.entries(r.body).forEach(([e, a]) => {
121
+ a instanceof File ? t.append(e, a) : Array.isArray(a) ? a.forEach((o) => {
122
+ o instanceof File ? t.append(e, o) : o != null && t.append(e, typeof o == "object" ? JSON.stringify(o) : o.toString());
123
+ }) : a != null && t.append(e, typeof a == "object" ? JSON.stringify(a) : a.toString());
124
+ });
125
+ const { data: s } = await n.post(
126
+ `${h.BASE_PATH}/_mintlify/api/file-request`,
127
+ t
128
+ );
129
+ return s;
130
+ }, F = (r) => {
131
+ var s;
132
+ let n = r.body;
133
+ const t = r.header;
134
+ if ((s = t["content-type"]) != null && s.includes("multipart/form-data")) {
135
+ const e = new FormData();
136
+ typeof n == "object" && n !== null && (Object.entries(n).forEach(([a, o]) => {
137
+ o instanceof File ? e.append(a, o) : Array.isArray(o) ? o.forEach((d) => {
138
+ d instanceof File ? e.append(a, d) : d != null && e.append(
139
+ a,
140
+ typeof d == "object" ? JSON.stringify(d) : d.toString()
141
+ );
142
+ }) : o != null && e.append(
143
+ a,
144
+ typeof o == "object" ? JSON.stringify(o) : o.toString()
145
+ );
146
+ }), n = e, delete t["content-type"]);
147
+ }
148
+ return { data: n, headers: t };
149
+ };
150
+ export {
151
+ O as addPathParams,
152
+ P as addServerVariables,
153
+ x as joinWithSingleSlash,
154
+ J as useSendPlaygroundRequest
155
+ };
156
+ //# sourceMappingURL=useSendPlaygroundRequest.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useSendPlaygroundRequest.js","sources":["../../../src/api-playground-2/hooks/useSendPlaygroundRequest.ts"],"sourcesContent":["'use client';\n\nimport { ApiPlaygroundResultType } from '@mintlify/models';\nimport { HttpMethod } from '@mintlify/validation';\nimport { AxiosResponse } from 'axios';\nimport { useCallback } from 'react';\nimport { NEXT_PUBLIC } from '@/env';\n\n\nimport { ApiReferenceDataV2 } from '../types';\nimport { usePlaygroundInputsStore } from './usePlaygroundInputsStore';\n\nexport type UseSendPlaygroundRequestProps = {\n apiReferenceData: ApiReferenceDataV2;\n baseUrl: string | undefined;\n contentType: string | undefined;\n setResult: (result: ApiPlaygroundResultType) => void;\n setIsSending: (isSending: boolean) => void;\n};\n\nexport type RequestInfo = {\n method: HttpMethod;\n url: string;\n header: Record<string, unknown>;\n query: Record<string, unknown>;\n cookie: Record<string, unknown>;\n body: unknown;\n};\n\nexport const useSendPlaygroundRequest = ({\n apiReferenceData,\n baseUrl,\n contentType = 'application/json',\n setResult,\n setIsSending,\n}: UseSendPlaygroundRequestProps) => {\n // replace with msft analytics \n const { getApiPlaygroundInputs } = usePlaygroundInputsStore();\n const inputs = getApiPlaygroundInputs();\n\n const disableProxy = apiReferenceData.operation?.disableProxy;\n const path = apiReferenceData.operation?.path;\n const method = apiReferenceData.operation?.method;\n\n return useCallback(async () => {\n setIsSending(true);\n if (!path || !baseUrl || !method || !contentType || !baseUrl) {\n setIsSending(false);\n setResult({\n error: true,\n errorMessage: 'Missing required fields to send a playground request',\n });\n console.error(\n `Missing some required field to send a playground request:\\n\\npath=${path}\\nmethod=${method}\\ncontentType=${contentType}\\nbaseUrl=${baseUrl}`\n );\n return;\n }\n const axios = await import('axios').then((x) => x.default);\n\n const pathWithInputs = addPathParams(path, inputs.path);\n\n const url = joinWithSingleSlash(addServerVariables(baseUrl, inputs.server), pathWithInputs);\n\n const headers = addContentType(inputs.header, contentType);\n\n const request: RequestInfo = {\n method,\n url,\n header: headers,\n body: inputs.body,\n cookie: inputs.cookie,\n query: inputs.query,\n };\n\n try {\n if (disableProxy) {\n const response = await performDirectRequest(request);\n setResult({\n error: false,\n response: {\n status: response.status,\n statusText: response.statusText,\n headers: response.headers,\n data: response.data,\n },\n });\n } else {\n if (contentType && contentType.includes('multipart/form-data')) {\n const data = await performFileRequest(request);\n\n setResult(data);\n } else {\n const { data } = await axios.post<unknown, AxiosResponse<ApiPlaygroundResultType>>(\n `${NEXT_PUBLIC.BASE_PATH}/_mintlify/api/request`,\n request\n );\n setResult(data);\n }\n }\n } catch (err) {\n setResult({\n error: true,\n errorMessage: 'unable to complete request',\n });\n console.error(err);\n }\n setIsSending(false);\n }, [\n method,\n path,\n setIsSending,\n inputs,\n baseUrl,\n contentType,\n disableProxy,\n setResult,\n ]);\n};\n\nexport const addPathParams = (path: string, pathInputs: Record<string, unknown>) => {\n return Object.entries(pathInputs).reduce((path, [inputName, inputValue]) => {\n if (inputValue == undefined) return path;\n return path.replace(`{${inputName}}`, encodeURIComponent(inputValue.toString()));\n }, path);\n};\n\nexport const addServerVariables = (baseUrl: string, variables: Record<string, string>): string => {\n let url = baseUrl;\n Object.entries(variables).forEach(([key, input]) => {\n if (input) url = url.replace(`{${key}}`, input);\n });\n return url;\n};\n\nexport const joinWithSingleSlash = (baseUrl: string, path: string): string => {\n // remove the last slash of the baseUrl and the first slash of the path, and join with slash\n return baseUrl.replace(/\\/$/, '') + '/' + path.replace(/^\\//, '');\n};\n\nconst addContentType = (headers: Record<string, unknown>, contentType: string) => {\n if (Object.keys(headers).some((name) => name.toLowerCase() === 'content-type')) {\n return headers;\n }\n\n return {\n ...headers,\n ['content-type']: contentType,\n };\n};\n\nconst performDirectRequest = async (request: RequestInfo) => {\n const axios = await import('axios').then((it) => it.default);\n\n const contentType = Object.keys(request.header).find(\n (key) => key.toLowerCase() === 'content-type'\n );\n let data = request.body;\n \n let headers = request.header as Record<string, string>;\n if (contentType?.includes('multipart/form-data')) {\n const { data: formData, headers: formHeaders } = handleFormData(request);\n data = formData;\n headers = formHeaders;\n }\n\n return axios({\n url: request.url,\n method: request.method,\n params: request.query,\n data,\n headers,\n // prevent axios from adding [] after array query params\n paramsSerializer: {\n indexes: null,\n },\n responseType: 'arraybuffer',\n // prevent axios from erroring on bad status codes\n validateStatus: () => true,\n // prevent axios from parsing json, losing whitespace information, and using default utf-8 encoding\n // we can't use `responseEncoding` as it's ignored client-side\n transformResponse: (data) => {\n return Buffer.from(data).toString('base64');\n },\n });\n};\n\nconst performFileRequest = async (request: RequestInfo) => {\n const axios = await import('axios').then((it) => it.default);\n const formData = new FormData();\n formData.append(\n 'requestInfo',\n JSON.stringify({\n method: request.method,\n url: request.url,\n header: request.header,\n query: request.query,\n cookie: request.cookie,\n })\n );\n if (typeof request.body === 'object' && request.body !== null) {\n Object.entries(request.body).forEach(([key, value]) => {\n if (value instanceof File) {\n formData.append(key, value);\n } else if (Array.isArray(value)) {\n value.forEach((item) => {\n if (item instanceof File) {\n formData.append(key, item);\n } else if (item !== undefined && item !== null) {\n formData.append(key, typeof item === 'object' ? JSON.stringify(item) : item.toString());\n }\n });\n } else if (value !== undefined && value !== null) {\n formData.append(key, typeof value === 'object' ? JSON.stringify(value) : value.toString());\n }\n });\n }\n\n const { data } = await axios.post<unknown, AxiosResponse<ApiPlaygroundResultType>>(\n `${NEXT_PUBLIC.BASE_PATH}/_mintlify/api/file-request`,\n formData\n );\n return data;\n};\n\nconst handleFormData = (request: RequestInfo) => {\n let data = request.body;\n \n const headers = request.header as Record<string, string>;\n\n if (headers['content-type']?.includes('multipart/form-data')) {\n const formData = new FormData();\n if (typeof data === 'object' && data !== null) {\n Object.entries(data).forEach(([key, value]) => {\n if (value instanceof File) {\n formData.append(key, value);\n } else if (Array.isArray(value)) {\n value.forEach((item) => {\n if (item instanceof File) {\n formData.append(key, item);\n } else if (item !== undefined && item !== null) {\n formData.append(\n key,\n typeof item === 'object' ? JSON.stringify(item) : item.toString()\n );\n }\n });\n } else if (value !== undefined && value !== null) {\n formData.append(\n key,\n typeof value === 'object' ? JSON.stringify(value) : value.toString()\n );\n }\n });\n data = formData;\n delete headers['content-type'];\n }\n }\n return { data, headers };\n};\n"],"names":["useSendPlaygroundRequest","apiReferenceData","baseUrl","contentType","setResult","setIsSending","getApiPlaygroundInputs","usePlaygroundInputsStore","inputs","disableProxy","_a","path","_b","method","_c","useCallback","axios","x","pathWithInputs","addPathParams","url","joinWithSingleSlash","addServerVariables","headers","addContentType","request","response","performDirectRequest","data","performFileRequest","NEXT_PUBLIC","err","pathInputs","inputName","inputValue","variables","key","input","name","it","formData","formHeaders","handleFormData","value","item"],"mappings":"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"}
@@ -0,0 +1,57 @@
1
+ import { toShikiLang as w } from "../../constants/snippetPresets.js";
2
+ import { mdxCodeExampleToExamples as f, getFirstWebhookExample as B } from "./processExamples.js";
3
+ import { getDocsJsonSecurityOptions as F } from "./processSecurityOptions.js";
4
+ import { generatePrefillRequestData as J } from "./utils.js";
5
+ const R = (a) => {
6
+ var p;
7
+ const t = ((p = a.servers) == null ? void 0 : p.map((e) => e.url)) ?? [];
8
+ let r;
9
+ return t.length > 1, r = t[0], {
10
+ path: a.path,
11
+ method: a.method,
12
+ title: a.title ?? "",
13
+ description: a.description ?? "",
14
+ type: a.type ?? "path",
15
+ baseUrl: r,
16
+ baseUrlOptions: t,
17
+ deprecated: a.deprecated
18
+ };
19
+ }, G = ({
20
+ pageMetadata: a,
21
+ apiReferenceData2: t,
22
+ mdxExtracts: r,
23
+ docsConfig: p
24
+ }) => {
25
+ var y, h, b, q, U, O, E, S, T, v, x, P, k, d, A, D;
26
+ const e = t ?? { operation: void 0 };
27
+ if (!t && (r != null && r.endpoint) && (e.operation = R(r.endpoint)), a.description && e.operation && (e.operation.description = a.description), !e.operation)
28
+ return e;
29
+ const l = (h = (y = p == null ? void 0 : p.api) == null ? void 0 : y.mdx) == null ? void 0 : h.server, i = (q = (b = p == null ? void 0 : p.api) == null ? void 0 : b.mdx) == null ? void 0 : q.auth, s = e.operation.baseUrl || e.operation.baseUrlOptions.length > 0;
30
+ if (typeof l == "string" && !s ? e.operation.baseUrl = l : Array.isArray(l) && !s && (l.length > 1 ? e.operation.baseUrlOptions = l : e.operation.baseUrl = l[0]), i && Object.keys(((U = e.dependencies) == null ? void 0 : U.security) ?? {}).length === 0) {
31
+ const o = F({
32
+ method: i.method,
33
+ name: i.name
34
+ });
35
+ o && (e.dependencies || (e.dependencies = {
36
+ servers: {},
37
+ security: {}
38
+ }), e.dependencies.security = { ...o });
39
+ }
40
+ const n = (O = r == null ? void 0 : r.codeExamples) == null ? void 0 : O.request, m = (E = r == null ? void 0 : r.codeExamples) == null ? void 0 : E.response;
41
+ if (n)
42
+ e.operation.requestExamples = f(n), e.operation.requestExampleType = "mdx";
43
+ else if (e.operation.type === "webhook")
44
+ e.operation.requestExamples = B(e), e.operation.requestExampleType = "webhook";
45
+ else if (e.operation.codeSamples && e.operation.codeSamples.length > 0) {
46
+ const o = (v = (T = (S = p == null ? void 0 : p.api) == null ? void 0 : S.examples) == null ? void 0 : T.languages) == null ? void 0 : v.map(w);
47
+ e.operation.requestExampleType = "codeSamples", e.operation.requestExampleLanguages = o, e.operation.requiredOnlyExamples = ((P = (x = p == null ? void 0 : p.api) == null ? void 0 : x.examples) == null ? void 0 : P.defaults) === "required";
48
+ } else
49
+ e.operation.requestExampleType = "generated";
50
+ m ? (e.operation.responseExamples = f(m), e.operation.responseExampleType = "mdx") : e.operation.responseExampleType = "generated";
51
+ const L = e.operation.baseUrl || e.operation.baseUrlOptions.length > 0, u = ((d = (k = p == null ? void 0 : p.api) == null ? void 0 : k.examples) == null ? void 0 : d.prefill) && L;
52
+ return u && (e.operation.prefillPlaygroundWithExample = !!u, e.operation.prefillPlaygroundExamples = J(e)), ((D = (A = p == null ? void 0 : p.api) == null ? void 0 : A.playground) == null ? void 0 : D.proxy) === !1 && (e.operation.disableProxy = !0), e;
53
+ };
54
+ export {
55
+ G as addApiReferenceDataFromMdxAndDocsConfig
56
+ };
57
+ //# sourceMappingURL=addApiReferenceDataFromMdxAndDocsConfig.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"addApiReferenceDataFromMdxAndDocsConfig.js","sources":["../../../src/api-playground-2/schemaGraph/addApiReferenceDataFromMdxAndDocsConfig.ts"],"sourcesContent":["import type { MdxExtracts } from '@mintlify/common';\nimport { PageMetaTags } from '@mintlify/models';\nimport { DocsConfig, Endpoint } from '@mintlify/validation';\n\nimport type { ApiReferenceDataV2, OperationV2 } from '@/api-playground-2/types';\nimport { toShikiLang } from '@/constants/snippetPresets';\n\nimport { getFirstWebhookExample, mdxCodeExampleToExamples } from './processExamples';\nimport { getDocsJsonSecurityOptions } from './processSecurityOptions';\nimport { generatePrefillRequestData } from './utils';\n\nconst mapEndpointToOperationV2 = (endpoint: Endpoint): OperationV2 => {\n const baseUrlOptions = endpoint.servers?.map((server) => server.url) ?? [];\n let baseUrl: string | undefined = undefined;\n if (baseUrlOptions.length > 1) {\n baseUrl = baseUrlOptions[0];\n } else {\n baseUrl = baseUrlOptions[0];\n }\n // ignore security options added from mdx endpoint, they are just copied from docs.json\n\n return {\n path: endpoint.path,\n method: endpoint.method,\n title: endpoint.title ?? '',\n description: endpoint.description ?? '',\n type: endpoint.type ?? 'path',\n baseUrl,\n baseUrlOptions,\n deprecated: endpoint.deprecated,\n };\n};\n\nexport const addApiReferenceDataFromMdxAndDocsConfig = ({\n pageMetadata,\n apiReferenceData2,\n mdxExtracts,\n docsConfig,\n}: {\n pageMetadata: PageMetaTags;\n apiReferenceData2: ApiReferenceDataV2 | undefined;\n mdxExtracts: MdxExtracts | undefined;\n docsConfig: DocsConfig | undefined;\n}): ApiReferenceDataV2 => {\n const apiReferenceData: ApiReferenceDataV2 = apiReferenceData2 ?? { operation: undefined };\n\n // if apiReferenceData2 is undefined, we need to add the operation from mdxExtracts\n if (!apiReferenceData2 && mdxExtracts?.endpoint) {\n apiReferenceData.operation = mapEndpointToOperationV2(mdxExtracts.endpoint);\n }\n\n // If we have a description from the frontmatter, use it instead of the OpenAPI description\n if (pageMetadata.description && apiReferenceData.operation) {\n apiReferenceData.operation.description = pageMetadata.description;\n }\n\n // now we should have a valid operationV2 either built by apiReferenceData from page props or just created from mdxExtracts\n // if there isn't, something went wrong and ngmi, operation remains undefined\n if (!apiReferenceData.operation) {\n return apiReferenceData;\n }\n\n // add docsConfig data to operation (either built by apiReferenceData from page props or just created from mdxExtracts)\n const configUrlOrUrls = docsConfig?.api?.mdx?.server;\n const configSecurity = docsConfig?.api?.mdx?.auth;\n\n // openapi servers > mdx servers > docs.json servers\n const alreadyHasServers =\n apiReferenceData.operation.baseUrl || apiReferenceData.operation.baseUrlOptions.length > 0;\n\n if (typeof configUrlOrUrls === 'string' && !alreadyHasServers) {\n apiReferenceData.operation.baseUrl = configUrlOrUrls;\n } else if (Array.isArray(configUrlOrUrls) && !alreadyHasServers) {\n if (configUrlOrUrls.length > 1) {\n apiReferenceData.operation.baseUrlOptions = configUrlOrUrls;\n } else {\n apiReferenceData.operation.baseUrl = configUrlOrUrls[0];\n }\n }\n\n if (configSecurity && Object.keys(apiReferenceData.dependencies?.security ?? {}).length === 0) {\n const docsJsonSecurityOptions = getDocsJsonSecurityOptions({\n method: configSecurity.method,\n name: configSecurity.name,\n });\n if (docsJsonSecurityOptions) {\n if (!apiReferenceData.dependencies) {\n apiReferenceData.dependencies = {\n servers: {},\n security: {},\n };\n }\n apiReferenceData.dependencies.security = { ...docsJsonSecurityOptions };\n }\n }\n\n const requestExamples = mdxExtracts?.codeExamples?.request;\n const responseExamples = mdxExtracts?.codeExamples?.response;\n\n // for examples, mdx > webhook example > codeSamples > generated\n if (requestExamples) {\n apiReferenceData.operation.requestExamples = mdxCodeExampleToExamples(requestExamples);\n apiReferenceData.operation.requestExampleType = 'mdx';\n } else {\n if (apiReferenceData.operation.type === 'webhook') {\n apiReferenceData.operation.requestExamples = getFirstWebhookExample(apiReferenceData);\n apiReferenceData.operation.requestExampleType = 'webhook';\n } else if (\n apiReferenceData.operation.codeSamples &&\n apiReferenceData.operation.codeSamples.length > 0\n ) {\n const requestExampleLanguages = docsConfig?.api?.examples?.languages?.map(toShikiLang);\n apiReferenceData.operation.requestExampleType = 'codeSamples';\n apiReferenceData.operation.requestExampleLanguages = requestExampleLanguages;\n apiReferenceData.operation.requiredOnlyExamples =\n docsConfig?.api?.examples?.defaults === 'required';\n } else {\n apiReferenceData.operation.requestExampleType = 'generated';\n }\n }\n\n if (responseExamples) {\n apiReferenceData.operation.responseExamples = mdxCodeExampleToExamples(responseExamples);\n apiReferenceData.operation.responseExampleType = 'mdx';\n } else {\n apiReferenceData.operation.responseExampleType = 'generated';\n }\n\n const hasBaseUrl =\n apiReferenceData.operation.baseUrl || apiReferenceData.operation.baseUrlOptions.length > 0;\n const prefillExamplesEnabled = docsConfig?.api?.examples?.prefill && hasBaseUrl;\n if (prefillExamplesEnabled) {\n apiReferenceData.operation.prefillPlaygroundWithExample = Boolean(prefillExamplesEnabled);\n apiReferenceData.operation.prefillPlaygroundExamples =\n generatePrefillRequestData(apiReferenceData);\n }\n\n const disableProxy = docsConfig?.api?.playground?.proxy === false;\n if (disableProxy) {\n apiReferenceData.operation.disableProxy = true;\n }\n\n return apiReferenceData;\n};\n"],"names":["mapEndpointToOperationV2","endpoint","baseUrlOptions","_a","server","baseUrl","addApiReferenceDataFromMdxAndDocsConfig","pageMetadata","apiReferenceData2","mdxExtracts","docsConfig","apiReferenceData","configUrlOrUrls","_b","configSecurity","_d","_c","alreadyHasServers","_e","docsJsonSecurityOptions","getDocsJsonSecurityOptions","requestExamples","_f","responseExamples","_g","mdxCodeExampleToExamples","getFirstWebhookExample","requestExampleLanguages","_j","_i","_h","toShikiLang","_l","_k","hasBaseUrl","prefillExamplesEnabled","_n","_m","generatePrefillRequestData","_p","_o"],"mappings":"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"}
@@ -1,13 +1,46 @@
1
- import "html-react-parser";
2
- const i = (t) => {
3
- const a = Object.keys(t)[0];
4
- if (a) {
5
- const e = t[a], s = Object.values((e == null ? void 0 : e.examples) ?? {})[0];
6
- if (s && "value" in s)
7
- return s.value;
1
+ import p from "html-react-parser";
2
+ function m(s, t) {
3
+ const e = /language-(\w+)/.exec(s ?? "");
4
+ return e ? e[1] ?? "text" : t ?? "text";
5
+ }
6
+ const i = (s) => {
7
+ var o, n;
8
+ const t = [], e = (o = s.attributes) == null ? void 0 : o.some(
9
+ (a) => a.name === "dropdown" && a.value !== "false"
10
+ );
11
+ return (n = s.children) == null || n.map((a) => {
12
+ const r = p(a.html ?? ""), l = typeof r == "object" && !Array.isArray(r) && r.type === "pre" ? r.props.language ?? m(r.props.className, a.filename) : void 0;
13
+ t.push({
14
+ dropdown: e,
15
+ language: l,
16
+ code: r,
17
+ filename: a.filename
18
+ });
19
+ }), t;
20
+ }, u = (s) => {
21
+ const t = Object.keys(s)[0];
22
+ if (t) {
23
+ const e = s[t], n = Object.values((e == null ? void 0 : e.examples) ?? {})[0];
24
+ if (n && "value" in n)
25
+ return n.value;
8
26
  }
27
+ }, x = (s) => {
28
+ var e, o;
29
+ const t = [];
30
+ if ((o = (e = s.dependencies) == null ? void 0 : e.requestBody) != null && o.content) {
31
+ const n = u(s.dependencies.requestBody.content);
32
+ n && t.push({
33
+ language: "json",
34
+ filename: "Example Request Body",
35
+ code: JSON.stringify(n.value, null, 2)
36
+ });
37
+ }
38
+ return t;
9
39
  };
10
40
  export {
11
- i as getFirstExampleValue
41
+ u as getFirstExampleValue,
42
+ x as getFirstWebhookExample,
43
+ m as getLanguageFromClassName,
44
+ i as mdxCodeExampleToExamples
12
45
  };
13
46
  //# sourceMappingURL=processExamples.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"processExamples.js","sources":["../../../src/api-playground-2/schemaGraph/processExamples.ts"],"sourcesContent":["import { MdxCodeExampleData } from '@mintlify/common';\nimport { ExampleObject, ExampleOrRefObject, MediaObject, SchemaObject } from '@mintlify/validation';\nimport parse from 'html-react-parser';\n\nimport type {\n ApiReferenceDataV2,\n CodeExample,\n SchemaGeneratedExample,\n} from '@/api-playground-2/types';\n\nimport { isSchemaObject } from './utils';\n\n// duplicated from shiki/index.ts\nexport function getLanguageFromClassName(className: string | undefined, fallback?: string): string {\n const match = /language-(\\w+)/.exec(className ?? '');\n return match ? match[1] ?? 'text' : fallback ?? 'text';\n}\n\nexport const mdxCodeExampleToExamples = (mdxCodeExampleData: MdxCodeExampleData): CodeExample[] => {\n const examples: CodeExample[] = [];\n const dropdown = mdxCodeExampleData.attributes?.some(\n (attr) => attr.name === 'dropdown' && attr.value !== 'false'\n );\n mdxCodeExampleData.children?.map((child) => {\n const jsx = parse(child.html ?? '');\n const lang =\n typeof jsx === 'object' && !Array.isArray(jsx) && jsx.type === 'pre'\n ? jsx.props.language ?? getLanguageFromClassName(jsx.props.className, child.filename)\n : undefined;\n examples.push({\n dropdown,\n language: lang,\n code: jsx,\n filename: child.filename,\n });\n });\n return examples;\n};\n\n// same logic as in OpenApiToEndpointConverter convertExamples\nexport const generateExamplesFromSchema = (\n content: Record<string, MediaObject>\n): Record<string, MediaObject> => {\n Object.entries(content).forEach(([contentType, mediaObject]) => {\n const examples: Record<string, SchemaGeneratedExample> = {};\n if (mediaObject.examples) {\n Object.entries(mediaObject.examples).forEach(\n ([exampleName, example]: [string, ExampleOrRefObject]) => {\n if (!('$ref' in example)) {\n examples[exampleName] = {\n title: exampleName,\n description: example.description,\n value: example.value,\n };\n }\n }\n );\n if (content[contentType]) {\n content[contentType].examples = examples;\n }\n } else if (mediaObject.example) {\n examples['Example'] = {\n title: 'Example',\n value: mediaObject.example,\n };\n if (content[contentType]) {\n content[contentType].examples = examples;\n }\n } else if (isSchemaObject(mediaObject.schema)) {\n examples['Example'] = generateExampleFromSchema(mediaObject.schema);\n if (content[contentType]) {\n content[contentType].examples = examples;\n }\n }\n });\n return content;\n};\n\nexport const generateExampleFromSchema = (schema: SchemaObject): SchemaGeneratedExample => {\n const example: SchemaGeneratedExample = {\n title: 'Example',\n value: undefined,\n };\n if (schema.example !== undefined) {\n example.value = schema.example;\n return example;\n }\n if (schema.default !== undefined) {\n example.value = schema.default;\n return example;\n }\n\n if (schema.enum) {\n example.value = schema.enum[0];\n return example;\n }\n\n // Handle oneOf - generate example from first option\n if (schema.oneOf && Array.isArray(schema.oneOf) && schema.oneOf.length > 0) {\n const firstOption = schema.oneOf[0];\n if (isSchemaObject(firstOption)) {\n return generateExampleFromSchema(firstOption);\n }\n }\n\n switch (schema.type) {\n case 'string':\n example.value = generateStringExample(schema);\n return example;\n case 'boolean':\n example.value = true;\n return example;\n case 'number':\n case 'integer':\n example.value = generateNumericExample(schema);\n return example;\n case 'object':\n example.value = Object.fromEntries(\n Object.entries(schema.properties ?? {}).map(([propName, subschema]) => [\n propName,\n \n generateExampleFromSchema(subschema as SchemaObject).value,\n ])\n );\n return example;\n case 'array':\n \n example.value = [generateExampleFromSchema(schema.items as SchemaObject).value];\n return example;\n default:\n example.value = '<unknown>';\n return example;\n }\n};\n\nconst generateNumericExample = (schema: SchemaObject): number => {\n // if schema type is integer, make sure example is integer\n const format: (n: number) => number = schema.type === 'integer' ? Math.floor : (n) => n;\n\n if (schema.minimum !== undefined && schema.maximum !== undefined) {\n return format((schema.minimum + schema.maximum) / 2);\n } else if (schema.minimum !== undefined) {\n return format(schema.minimum + 1);\n } else if (schema.maximum !== undefined) {\n return 123 < schema.maximum ? 123 : format(schema.maximum - 1);\n } else {\n return 123;\n }\n};\n\nconst generateStringExample = (schema: SchemaObject): string => {\n switch (schema.format?.toLowerCase()) {\n case 'byte':\n case 'base64':\n return 'aSDinaTvuI8gbWludGxpZnk=';\n case 'date':\n return '2023-12-25';\n case 'date-time':\n return '2023-11-07T05:31:56Z';\n case 'email':\n return 'jsmith@example.com';\n case 'uuid':\n return '3c90c3cc-0d44-4b50-8888-8dd25736052a';\n case 'ipv4':\n return '127.0.0.1';\n case 'ipv6':\n return '2606:4700:3108::ac42:2835';\n default:\n return '<string>';\n }\n};\n\nexport const getFirstExampleValue = (\n content: Record<string, MediaObject>\n): ExampleObject | undefined => {\n const firstContentType = Object.keys(content)[0];\n if (firstContentType) {\n const contentTypeObject = content[firstContentType];\n const examples = Object.values(contentTypeObject?.examples ?? {});\n const firstExample = examples[0];\n if (firstExample && 'value' in firstExample) {\n return firstExample.value;\n }\n }\n return undefined;\n};\n\nexport const getFirstWebhookExample = (apiReferenceData: ApiReferenceDataV2): CodeExample[] => {\n const requestExamples: CodeExample[] = [];\n if (apiReferenceData.dependencies?.requestBody?.content) {\n const firstExample = getFirstExampleValue(apiReferenceData.dependencies.requestBody.content);\n if (firstExample) {\n requestExamples.push({\n language: 'json',\n filename: 'Example Request Body',\n code: JSON.stringify(firstExample.value, null, 2),\n });\n }\n }\n return requestExamples;\n};\n"],"names":["getFirstExampleValue","content","firstContentType","contentTypeObject","firstExample"],"mappings":";AA4KO,MAAMA,IAAuB,CAClCC,MAC8B;AAC9B,QAAMC,IAAmB,OAAO,KAAKD,CAAO,EAAE,CAAC;AAC/C,MAAIC,GAAkB;AACpB,UAAMC,IAAoBF,EAAQC,CAAgB,GAE5CE,IADW,OAAO,QAAOD,KAAA,gBAAAA,EAAmB,aAAY,CAAA,CAAE,EAClC,CAAC;AAC/B,QAAIC,KAAgB,WAAWA;AAC7B,aAAOA,EAAa;AAAA,EAExB;AAEF;"}
1
+ {"version":3,"file":"processExamples.js","sources":["../../../src/api-playground-2/schemaGraph/processExamples.ts"],"sourcesContent":["import type { MdxCodeExampleData } from '@mintlify/common';\nimport { ExampleObject, ExampleOrRefObject, MediaObject, SchemaObject } from '@mintlify/validation';\nimport parse from 'html-react-parser';\n\nimport type {\n ApiReferenceDataV2,\n CodeExample,\n SchemaGeneratedExample,\n} from '@/api-playground-2/types';\n\nimport { isSchemaObject } from './utils';\n\n// duplicated from shiki/index.ts\nexport function getLanguageFromClassName(className: string | undefined, fallback?: string): string {\n const match = /language-(\\w+)/.exec(className ?? '');\n return match ? match[1] ?? 'text' : fallback ?? 'text';\n}\n\nexport const mdxCodeExampleToExamples = (mdxCodeExampleData: MdxCodeExampleData): CodeExample[] => {\n const examples: CodeExample[] = [];\n const dropdown = mdxCodeExampleData.attributes?.some(\n (attr) => attr.name === 'dropdown' && attr.value !== 'false'\n );\n mdxCodeExampleData.children?.map((child) => {\n const jsx = parse(child.html ?? '');\n const lang =\n typeof jsx === 'object' && !Array.isArray(jsx) && jsx.type === 'pre'\n ? jsx.props.language ?? getLanguageFromClassName(jsx.props.className, child.filename)\n : undefined;\n examples.push({\n dropdown,\n language: lang,\n code: jsx,\n filename: child.filename,\n });\n });\n return examples;\n};\n\n// same logic as in OpenApiToEndpointConverter convertExamples\nexport const generateExamplesFromSchema = (\n content: Record<string, MediaObject>\n): Record<string, MediaObject> => {\n Object.entries(content).forEach(([contentType, mediaObject]) => {\n const examples: Record<string, SchemaGeneratedExample> = {};\n if (mediaObject.examples) {\n Object.entries(mediaObject.examples).forEach(\n ([exampleName, example]: [string, ExampleOrRefObject]) => {\n if (!('$ref' in example)) {\n examples[exampleName] = {\n title: exampleName,\n description: example.description,\n value: example.value,\n };\n }\n }\n );\n if (content[contentType]) {\n content[contentType].examples = examples;\n }\n } else if (mediaObject.example) {\n examples['Example'] = {\n title: 'Example',\n value: mediaObject.example,\n };\n if (content[contentType]) {\n content[contentType].examples = examples;\n }\n } else if (isSchemaObject(mediaObject.schema)) {\n examples['Example'] = generateExampleFromSchema(mediaObject.schema);\n if (content[contentType]) {\n content[contentType].examples = examples;\n }\n }\n });\n return content;\n};\n\nexport const generateExampleFromSchema = (schema: SchemaObject): SchemaGeneratedExample => {\n const example: SchemaGeneratedExample = {\n title: 'Example',\n value: undefined,\n };\n if (schema.example !== undefined) {\n example.value = schema.example;\n return example;\n }\n if (schema.default !== undefined) {\n example.value = schema.default;\n return example;\n }\n\n if (schema.enum) {\n example.value = schema.enum[0];\n return example;\n }\n\n // Handle oneOf - generate example from first option\n if (schema.oneOf && Array.isArray(schema.oneOf) && schema.oneOf.length > 0) {\n const firstOption = schema.oneOf[0];\n if (isSchemaObject(firstOption)) {\n return generateExampleFromSchema(firstOption);\n }\n }\n\n switch (schema.type) {\n case 'string':\n example.value = generateStringExample(schema);\n return example;\n case 'boolean':\n example.value = true;\n return example;\n case 'number':\n case 'integer':\n example.value = generateNumericExample(schema);\n return example;\n case 'object':\n example.value = Object.fromEntries(\n Object.entries(schema.properties ?? {}).map(([propName, subschema]) => [\n propName,\n \n generateExampleFromSchema(subschema as SchemaObject).value,\n ])\n );\n return example;\n case 'array':\n \n example.value = [generateExampleFromSchema(schema.items as SchemaObject).value];\n return example;\n default:\n example.value = '<unknown>';\n return example;\n }\n};\n\nconst generateNumericExample = (schema: SchemaObject): number => {\n // if schema type is integer, make sure example is integer\n const format: (n: number) => number = schema.type === 'integer' ? Math.floor : (n) => n;\n\n if (schema.minimum !== undefined && schema.maximum !== undefined) {\n return format((schema.minimum + schema.maximum) / 2);\n } else if (schema.minimum !== undefined) {\n return format(schema.minimum + 1);\n } else if (schema.maximum !== undefined) {\n return 123 < schema.maximum ? 123 : format(schema.maximum - 1);\n } else {\n return 123;\n }\n};\n\nconst generateStringExample = (schema: SchemaObject): string => {\n switch (schema.format?.toLowerCase()) {\n case 'byte':\n case 'base64':\n return 'aSDinaTvuI8gbWludGxpZnk=';\n case 'date':\n return '2023-12-25';\n case 'date-time':\n return '2023-11-07T05:31:56Z';\n case 'email':\n return 'jsmith@example.com';\n case 'uuid':\n return '3c90c3cc-0d44-4b50-8888-8dd25736052a';\n case 'ipv4':\n return '127.0.0.1';\n case 'ipv6':\n return '2606:4700:3108::ac42:2835';\n default:\n return '<string>';\n }\n};\n\nexport const getFirstExampleValue = (\n content: Record<string, MediaObject>\n): ExampleObject | undefined => {\n const firstContentType = Object.keys(content)[0];\n if (firstContentType) {\n const contentTypeObject = content[firstContentType];\n const examples = Object.values(contentTypeObject?.examples ?? {});\n const firstExample = examples[0];\n if (firstExample && 'value' in firstExample) {\n return firstExample.value;\n }\n }\n return undefined;\n};\n\nexport const getFirstWebhookExample = (apiReferenceData: ApiReferenceDataV2): CodeExample[] => {\n const requestExamples: CodeExample[] = [];\n if (apiReferenceData.dependencies?.requestBody?.content) {\n const firstExample = getFirstExampleValue(apiReferenceData.dependencies.requestBody.content);\n if (firstExample) {\n requestExamples.push({\n language: 'json',\n filename: 'Example Request Body',\n code: JSON.stringify(firstExample.value, null, 2),\n });\n }\n }\n return requestExamples;\n};\n"],"names":["getLanguageFromClassName","className","fallback","match","mdxCodeExampleToExamples","mdxCodeExampleData","examples","dropdown","_a","attr","_b","child","jsx","parse","lang","getFirstExampleValue","content","firstContentType","contentTypeObject","firstExample","getFirstWebhookExample","apiReferenceData","requestExamples"],"mappings":";AAaO,SAASA,EAAyBC,GAA+BC,GAA2B;AACjG,QAAMC,IAAQ,iBAAiB,KAAKF,KAAa,EAAE;AACnD,SAAOE,IAAQA,EAAM,CAAC,KAAK,SAASD,KAAY;AAClD;AAEO,MAAME,IAA2B,CAACC,MAA0D;;AACjG,QAAMC,IAA0B,CAAA,GAC1BC,KAAWC,IAAAH,EAAmB,eAAnB,gBAAAG,EAA+B;AAAA,IAC9C,CAACC,MAASA,EAAK,SAAS,cAAcA,EAAK,UAAU;AAAA;AAEvD,UAAAC,IAAAL,EAAmB,aAAnB,QAAAK,EAA6B,IAAI,CAACC,MAAU;AAC1C,UAAMC,IAAMC,EAAMF,EAAM,QAAQ,EAAE,GAC5BG,IACJ,OAAOF,KAAQ,YAAY,CAAC,MAAM,QAAQA,CAAG,KAAKA,EAAI,SAAS,QAC3DA,EAAI,MAAM,YAAYZ,EAAyBY,EAAI,MAAM,WAAWD,EAAM,QAAQ,IAClF;AACN,IAAAL,EAAS,KAAK;AAAA,MACZ,UAAAC;AAAA,MACA,UAAUO;AAAA,MACV,MAAMF;AAAA,MACN,UAAUD,EAAM;AAAA,IAAA,CACjB;AAAA,EACH,IACOL;AACT,GAuIaS,IAAuB,CAClCC,MAC8B;AAC9B,QAAMC,IAAmB,OAAO,KAAKD,CAAO,EAAE,CAAC;AAC/C,MAAIC,GAAkB;AACpB,UAAMC,IAAoBF,EAAQC,CAAgB,GAE5CE,IADW,OAAO,QAAOD,KAAA,gBAAAA,EAAmB,aAAY,CAAA,CAAE,EAClC,CAAC;AAC/B,QAAIC,KAAgB,WAAWA;AAC7B,aAAOA,EAAa;AAAA,EAExB;AAEF,GAEaC,IAAyB,CAACC,MAAwD;;AAC7F,QAAMC,IAAiC,CAAA;AACvC,OAAIZ,KAAAF,IAAAa,EAAiB,iBAAjB,gBAAAb,EAA+B,gBAA/B,QAAAE,EAA4C,SAAS;AACvD,UAAMS,IAAeJ,EAAqBM,EAAiB,aAAa,YAAY,OAAO;AAC3F,IAAIF,KACFG,EAAgB,KAAK;AAAA,MACnB,UAAU;AAAA,MACV,UAAU;AAAA,MACV,MAAM,KAAK,UAAUH,EAAa,OAAO,MAAM,CAAC;AAAA,IAAA,CACjD;AAAA,EAEL;AACA,SAAOG;AACT;"}
@@ -0,0 +1,107 @@
1
+ import { v4 as n } from "uuid";
2
+ const c = ["apiKey", "http", "oauth2"], l = ({
3
+ method: e,
4
+ name: i
5
+ }) => {
6
+ const r = n();
7
+ let t;
8
+ switch (e) {
9
+ case "basic":
10
+ t = {
11
+ [r]: {
12
+ Authorization: {
13
+ type: "http",
14
+ scheme: "basic",
15
+ description: "Basic authentication header of the form `Basic <encoded-value>`, where `<encoded-value>` is the base64-encoded string `username:password`."
16
+ }
17
+ }
18
+ };
19
+ break;
20
+ case "bearer":
21
+ t = {
22
+ [r]: {
23
+ Authorization: {
24
+ type: "http",
25
+ scheme: "bearer",
26
+ description: "Bearer authentication header of the form `Bearer <token>`, where `<token>` is your auth token."
27
+ }
28
+ }
29
+ };
30
+ break;
31
+ case "key":
32
+ t = {
33
+ [r]: {
34
+ Key: {
35
+ name: i ?? "Key",
36
+ type: "apiKey",
37
+ in: "header"
38
+ }
39
+ }
40
+ };
41
+ break;
42
+ }
43
+ return t;
44
+ }, b = (e) => {
45
+ var t;
46
+ const i = ((t = e.dependencies) == null ? void 0 : t.security) ?? {};
47
+ if (Object.keys(i).length === 0) return [];
48
+ const r = [];
49
+ return Object.entries(i).forEach(
50
+ ([y, a]) => {
51
+ const s = Object.values(a)[0];
52
+ if (s && c.includes(s.type)) {
53
+ const o = h(s);
54
+ o && r.push({ scheme: s, schema: o });
55
+ }
56
+ }
57
+ ), r;
58
+ }, u = "Basic authentication header of the form `Basic <encoded-value>`, where `<encoded-value>` is the base64-encoded string `username:password`.", d = "Bearer authentication header of the form `Bearer <token>`, where `<token>` is your auth token.", p = "The access token received from the authorization server in the OAuth 2.0 flow.", h = (e) => {
59
+ switch (e.type) {
60
+ case "apiKey":
61
+ return {
62
+ title: e.name,
63
+ type: "string",
64
+ description: e.description,
65
+ isRequired: !0,
66
+ default: e["x-default"]
67
+ };
68
+ case "http":
69
+ return e.scheme === "basic" ? {
70
+ title: "Basic Auth",
71
+ type: "object",
72
+ description: e.description ?? u,
73
+ isRequired: !0,
74
+ properties: {
75
+ username: { type: "string" },
76
+ password: { type: "string" }
77
+ },
78
+ additionalProperties: !1,
79
+ default: e["x-default"]
80
+ } : {
81
+ title: "Bearer Auth",
82
+ type: "string",
83
+ isRequired: !0,
84
+ description: e.description ?? d,
85
+ format: "bearer",
86
+ default: e["x-default"]
87
+ };
88
+ case "oauth2":
89
+ return {
90
+ title: "OAuth2 Auth",
91
+ type: "string",
92
+ isRequired: !0,
93
+ description: e.description ?? p,
94
+ format: "bearer"
95
+ };
96
+ default:
97
+ return;
98
+ }
99
+ };
100
+ export {
101
+ u as basicDescription,
102
+ d as bearerDescription,
103
+ l as getDocsJsonSecurityOptions,
104
+ p as oauth2Description,
105
+ b as processSecurityOptions
106
+ };
107
+ //# sourceMappingURL=processSecurityOptions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"processSecurityOptions.js","sources":["../../../src/api-playground-2/schemaGraph/processSecurityOptions.ts"],"sourcesContent":["import { UUID } from '@mintlify/validation';\nimport { v4 as uuidv4 } from 'uuid';\n\nimport {\n ApiReferenceDataV2,\n ResolvedSecurityObject,\n SecuritySchemeAndScope,\n ProcessedSecurityOption,\n} from '@/api-playground-2/types';\nimport type { ResolvedSchemaObject } from '@/api-playground-2/types';\n\n// Ronan left TODOs for supporting openIdConnect circa 2023 (but we do support this in mcp?) & we don't support all features of oauth2 in UI yet (circa 2025, no UI for selecting scopes)\nconst supportedSecurityTypes = ['apiKey', 'http', 'oauth2'];\n\n// docs.json security types are basic = http basic, bearer = http bearer, key = apiKey - see getSecurityOptionsForAuthMethod\n// all docs.json security types go in header, but only apiKey needs to specify that in scheme\n\nexport const getDocsJsonSecurityOptions = ({\n method,\n name,\n}: {\n method: string | undefined;\n name?: string;\n}): Record<UUID, ResolvedSecurityObject> | undefined => {\n const uuid = uuidv4();\n let securityRequirement: Record<UUID, ResolvedSecurityObject> | undefined = undefined;\n switch (method) {\n case 'basic':\n securityRequirement = {\n [uuid]: {\n Authorization: {\n type: 'http',\n scheme: 'basic',\n description:\n 'Basic authentication header of the form `Basic <encoded-value>`, where `<encoded-value>` is the base64-encoded string `username:password`.',\n },\n },\n };\n break;\n case 'bearer':\n securityRequirement = {\n [uuid]: {\n Authorization: {\n type: 'http',\n scheme: 'bearer',\n description:\n 'Bearer authentication header of the form `Bearer <token>`, where `<token>` is your auth token.',\n },\n },\n };\n break;\n case 'key':\n securityRequirement = {\n [uuid]: {\n Key: {\n name: name ?? 'Key',\n type: 'apiKey',\n in: 'header',\n },\n },\n };\n break;\n }\n return securityRequirement;\n};\n\nexport const processSecurityOptions = (\n apiReferenceData: ApiReferenceDataV2\n): ProcessedSecurityOption[] => {\n const securityOptions = apiReferenceData.dependencies?.security ?? {};\n if (Object.keys(securityOptions).length === 0) return [];\n const processedSecurityOptions: ProcessedSecurityOption[] = [];\n\n Object.entries(securityOptions).forEach(\n ([_id, securityScheme]: [UUID, ResolvedSecurityObject]) => {\n // this differs from SchemaConverter where we build the title from the security requirement scheme names\n // by converting underscore to spaces and joining with \"&\"\n // because 1. it's ugly, 2. it never dealt with camel case, and\n // 3. we either have a nice title specific to the API Key name or the scheme type consistently from OpenAPI or docs.json\n // if we really want the ugly titles back, we can uncoment this and pass it into the schemas as the title, and override the title in the heading to always be \"Authorization\" (but not the dropdown options)\n // const name = Object.keys(securityScheme)[0];\n // const title = name?.replace(/[_-]/g, ' ') ?? 'Authorization';\n const scheme = Object.values(securityScheme)[0];\n if (!scheme) return;\n // only process supported security schemes\n if (supportedSecurityTypes.includes(scheme.type)) {\n const schema = getSchemaForSecurityScheme(scheme);\n // don't add security options that don't have a schema for rendering\n if (schema) {\n processedSecurityOptions.push({ scheme, schema });\n }\n }\n }\n );\n\n return processedSecurityOptions;\n};\n\nexport const basicDescription =\n 'Basic authentication header of the form `Basic <encoded-value>`, where `<encoded-value>` is the base64-encoded string `username:password`.';\nexport const bearerDescription =\n 'Bearer authentication header of the form `Bearer <token>`, where `<token>` is your auth token.';\nexport const oauth2Description =\n 'The access token received from the authorization server in the OAuth 2.0 flow.';\n\n// TODO - Api Playground Refactor: by default we add required: true to these schemas\n// not sure if we correctly handle the case where operation has\n// - security [] to override global security requirements\n// or when there is a security: [{}]\n// empty object option in array of security requirements on operation also makes it optional\nconst getSchemaForSecurityScheme = (\n scheme: SecuritySchemeAndScope\n): ResolvedSchemaObject | undefined => {\n switch (scheme.type) {\n case 'apiKey':\n return {\n title: scheme.name,\n type: 'string',\n description: scheme.description,\n isRequired: true,\n default: scheme['x-default'],\n };\n case 'http':\n return scheme.scheme === 'basic'\n ? {\n title: 'Basic Auth',\n type: 'object',\n description: scheme.description ?? basicDescription,\n isRequired: true,\n properties: {\n username: { type: 'string' },\n password: { type: 'string' },\n },\n additionalProperties: false,\n default: scheme['x-default'],\n }\n : {\n title: 'Bearer Auth',\n type: 'string',\n isRequired: true,\n description: scheme.description ?? bearerDescription,\n format: 'bearer',\n default: scheme['x-default'],\n };\n case 'oauth2':\n return {\n title: 'OAuth2 Auth',\n type: 'string',\n isRequired: true,\n description: scheme.description ?? oauth2Description,\n format: 'bearer',\n };\n default:\n return undefined;\n }\n};\n"],"names":["supportedSecurityTypes","getDocsJsonSecurityOptions","method","name","uuid","uuidv4","securityRequirement","processSecurityOptions","apiReferenceData","securityOptions","_a","processedSecurityOptions","_id","securityScheme","scheme","schema","getSchemaForSecurityScheme","basicDescription","bearerDescription","oauth2Description"],"mappings":";AAYA,MAAMA,IAAyB,CAAC,UAAU,QAAQ,QAAQ,GAK7CC,IAA6B,CAAC;AAAA,EACzC,QAAAC;AAAA,EACA,MAAAC;AACF,MAGwD;AACtD,QAAMC,IAAOC,EAAA;AACb,MAAIC;AACJ,UAAQJ,GAAA;AAAA,IACN,KAAK;AACH,MAAAI,IAAsB;AAAA,QACpB,CAACF,CAAI,GAAG;AAAA,UACN,eAAe;AAAA,YACb,MAAM;AAAA,YACN,QAAQ;AAAA,YACR,aACE;AAAA,UAAA;AAAA,QACJ;AAAA,MACF;AAEF;AAAA,IACF,KAAK;AACH,MAAAE,IAAsB;AAAA,QACpB,CAACF,CAAI,GAAG;AAAA,UACN,eAAe;AAAA,YACb,MAAM;AAAA,YACN,QAAQ;AAAA,YACR,aACE;AAAA,UAAA;AAAA,QACJ;AAAA,MACF;AAEF;AAAA,IACF,KAAK;AACH,MAAAE,IAAsB;AAAA,QACpB,CAACF,CAAI,GAAG;AAAA,UACN,KAAK;AAAA,YACH,MAAMD,KAAQ;AAAA,YACd,MAAM;AAAA,YACN,IAAI;AAAA,UAAA;AAAA,QACN;AAAA,MACF;AAEF;AAAA,EAAA;AAEJ,SAAOG;AACT,GAEaC,IAAyB,CACpCC,MAC8B;;AAC9B,QAAMC,MAAkBC,IAAAF,EAAiB,iBAAjB,gBAAAE,EAA+B,aAAY,CAAA;AACnE,MAAI,OAAO,KAAKD,CAAe,EAAE,WAAW,UAAU,CAAA;AACtD,QAAME,IAAsD,CAAA;AAE5D,gBAAO,QAAQF,CAAe,EAAE;AAAA,IAC9B,CAAC,CAACG,GAAKC,CAAc,MAAsC;AAQzD,YAAMC,IAAS,OAAO,OAAOD,CAAc,EAAE,CAAC;AAC9C,UAAKC,KAEDd,EAAuB,SAASc,EAAO,IAAI,GAAG;AAChD,cAAMC,IAASC,EAA2BF,CAAM;AAEhD,QAAIC,KACFJ,EAAyB,KAAK,EAAE,QAAAG,GAAQ,QAAAC,EAAA,CAAQ;AAAA,MAEpD;AAAA,IACF;AAAA,EAAA,GAGKJ;AACT,GAEaM,IACX,8IACWC,IACX,kGACWC,IACX,kFAOIH,IAA6B,CACjCF,MACqC;AACrC,UAAQA,EAAO,MAAA;AAAA,IACb,KAAK;AACH,aAAO;AAAA,QACL,OAAOA,EAAO;AAAA,QACd,MAAM;AAAA,QACN,aAAaA,EAAO;AAAA,QACpB,YAAY;AAAA,QACZ,SAASA,EAAO,WAAW;AAAA,MAAA;AAAA,IAE/B,KAAK;AACH,aAAOA,EAAO,WAAW,UACrB;AAAA,QACE,OAAO;AAAA,QACP,MAAM;AAAA,QACN,aAAaA,EAAO,eAAeG;AAAA,QACnC,YAAY;AAAA,QACZ,YAAY;AAAA,UACV,UAAU,EAAE,MAAM,SAAA;AAAA,UAClB,UAAU,EAAE,MAAM,SAAA;AAAA,QAAS;AAAA,QAE7B,sBAAsB;AAAA,QACtB,SAASH,EAAO,WAAW;AAAA,MAAA,IAE7B;AAAA,QACE,OAAO;AAAA,QACP,MAAM;AAAA,QACN,YAAY;AAAA,QACZ,aAAaA,EAAO,eAAeI;AAAA,QACnC,QAAQ;AAAA,QACR,SAASJ,EAAO,WAAW;AAAA,MAAA;AAAA,IAEnC,KAAK;AACH,aAAO;AAAA,QACL,OAAO;AAAA,QACP,MAAM;AAAA,QACN,YAAY;AAAA,QACZ,aAAaA,EAAO,eAAeK;AAAA,QACnC,QAAQ;AAAA,MAAA;AAAA,IAEZ;AACE;AAAA,EAAO;AAEb;"}