@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
@@ -1,89 +1,94 @@
1
1
  import { jsx as l } from "react/jsx-runtime";
2
- import { useState as b, useEffect as q } from "react";
2
+ import { useState as q, useEffect as E } from "react";
3
3
  import { initialApiPlaygroundInputs as y } from "../../constants/index.js";
4
- import { generateSnippetMap as E } from "../../generators/generateSnippetMap.js";
5
- import { CodeGroupSelect as M } from "../../../components/content-components/CodeGroupSelect/index.js";
6
- import { CodeSnippets as O } from "../../../components/content-components/code-snippets.js";
7
- import { CodeBlock as x } from "../../../components/content-components/code-block.js";
8
- import { CodeGroup as U } from "../../../components/content-components/code-group.js";
9
- import { prismLangToDisplayLang as j } from "../../../constants/prism-languages.js";
10
- import { useApiPlaygroundDisplay as w } from "../../../hooks/useApiPlaygroundDisplay.js";
11
- import { GeneratedRequestExample as C } from "./GeneratedRequestExample.js";
4
+ import { generateSnippetMap as M } from "../../generators/generateSnippetMap.js";
5
+ import { CodeGroupSelect as O } from "../../../components/content-components/CodeGroupSelect/index.js";
6
+ import { CodeSnippets as U } from "../../../components/content-components/code-snippets.js";
7
+ import { CodeBlock as j } from "../../../components/content-components/code-block.js";
8
+ import { CodeGroup as w } from "../../../components/content-components/code-group.js";
9
+ import { prismLangToDisplayLang as x } from "../../../constants/prism-languages.js";
10
+ import { useApiPlaygroundDisplay as C } from "../../../hooks/useApiPlaygroundDisplay.js";
11
+ import { GeneratedRequestExample as L } from "./GeneratedRequestExample.js";
12
12
  const I = ({
13
13
  apiReferenceData: o,
14
- inputs: i = y,
15
- maxHeight: p
14
+ inputs: m = y,
15
+ maxHeight: p,
16
+ selectedSecurityOptionIndex: i
16
17
  }) => {
17
- var d, r, n, c, e;
18
- const u = (d = o.operation) == null ? void 0 : d.requestExamples, a = w(), m = (r = o.operation) == null ? void 0 : r.requestExampleLanguages, t = (n = o.operation) == null ? void 0 : n.requiredOnlyExamples;
18
+ var g, r, n, c, e;
19
+ const u = (g = o.operation) == null ? void 0 : g.requestExamples, a = C(), d = (r = o.operation) == null ? void 0 : r.requestExampleLanguages, s = (n = o.operation) == null ? void 0 : n.requiredOnlyExamples;
19
20
  switch ((c = o.operation) == null || c.requestExampleType, (e = o.operation) == null ? void 0 : e.requestExampleType) {
20
21
  case "mdx":
21
22
  if (!u) return null;
22
- const S = u.some((s) => s.dropdown ?? !1);
23
- return /* @__PURE__ */ l(U, { isSmallText: !0, dropdown: S, noMargins: !0, className: p, children: u.map((s, f) => /* @__PURE__ */ l(
24
- x,
23
+ const f = u.some((t) => t.dropdown ?? !1);
24
+ return /* @__PURE__ */ l(w, { isSmallText: !0, dropdown: f, noMargins: !0, className: p, children: u.map((t, b) => /* @__PURE__ */ l(
25
+ j,
25
26
  {
26
- language: s.language,
27
- fileName: s.filename,
28
- children: /* @__PURE__ */ l("span", { children: s.code })
27
+ language: t.language,
28
+ fileName: t.filename,
29
+ children: /* @__PURE__ */ l("span", { children: t.code })
29
30
  },
30
- `${s.filename}-${s.language}-${f}`
31
+ `${t.filename}-${t.language}-${b}`
31
32
  )) });
32
33
  case "codeSamples":
33
34
  return o.operation.codeSamples ? /* @__PURE__ */ l(
34
- L,
35
+ h,
35
36
  {
36
37
  apiReferenceData: o,
37
- inputs: i,
38
+ inputs: m,
38
39
  apiPlaygroundDisplay: a,
39
- requestExampleLanguages: m,
40
- requiredOnly: t,
41
- maxHeight: p
40
+ requestExampleLanguages: d,
41
+ requiredOnly: s,
42
+ maxHeight: p,
43
+ selectedSecurityOptionIndex: i
42
44
  }
43
45
  ) : null;
44
46
  case "generated":
45
- const g = o.operation.baseUrl ?? o.operation.baseUrlOptions[0];
46
- return g ? /* @__PURE__ */ l(
47
- C,
47
+ const S = o.operation.baseUrl ?? o.operation.baseUrlOptions[0];
48
+ return S ? /* @__PURE__ */ l(
49
+ L,
48
50
  {
49
51
  apiReferenceData: o,
50
- baseUrl: g,
51
- inputs: i,
52
- requestExampleLanguages: m,
53
- requiredOnly: t,
52
+ baseUrl: S,
53
+ inputs: m,
54
+ requestExampleLanguages: d,
55
+ selectedSecurityOptionIndex: i,
56
+ requiredOnly: s,
54
57
  maxHeight: p
55
58
  }
56
59
  ) : null;
57
60
  }
58
- }, L = ({
61
+ }, h = ({
59
62
  apiReferenceData: o,
60
- inputs: i,
63
+ inputs: m,
61
64
  apiPlaygroundDisplay: p,
62
- requestExampleLanguages: u,
63
- requiredOnly: a,
64
- maxHeight: m
65
+ requestExampleLanguages: i,
66
+ requiredOnly: u,
67
+ maxHeight: a,
68
+ selectedSecurityOptionIndex: d
65
69
  }) => {
66
- const [t, d] = b(null);
67
- if (q(() => {
70
+ const [s, g] = q(null);
71
+ if (E(() => {
68
72
  var r;
69
- (r = o.operation) != null && r.codeSamples && E({
73
+ (r = o.operation) != null && r.codeSamples && M({
70
74
  apiReferenceData: o,
71
75
  codeSamples: o.operation.codeSamples,
72
76
  baseUrl: o.operation.baseUrl ?? o.operation.baseUrlOptions[0],
73
77
  apiPlaygroundMode: p,
74
- requestExampleLanguages: u,
75
- requiredOnly: a,
76
- inputs: i
77
- }).then(d);
78
- }, [o, i, p, u, a]), !t) return null;
79
- if (Object.values(t).every((r) => Object.keys(r).length <= 1)) {
80
- let n = Object.values(t).flatMap((e) => Object.values(e));
78
+ requestExampleLanguages: i,
79
+ requiredOnly: u,
80
+ selectedSecurityOptionIndex: d,
81
+ inputs: m
82
+ }).then(g);
83
+ }, [o, m, p, i, u]), !s) return null;
84
+ if (Object.values(s).every((r) => Object.keys(r).length <= 1)) {
85
+ let n = Object.values(s).flatMap((e) => Object.values(e));
81
86
  return new Set(n.map((e) => e.filename)).size !== n.length && (n = n.map((e) => ({
82
87
  ...e,
83
- filename: j[e.language] ?? e.language
84
- }))), /* @__PURE__ */ l(O, { snippets: n, dropdown: !0, maxHeight: m });
88
+ filename: x[e.language] ?? e.language
89
+ }))), /* @__PURE__ */ l(U, { snippets: n, dropdown: !0, maxHeight: a });
85
90
  }
86
- return /* @__PURE__ */ l(M, { snippets: t, maxHeight: m });
91
+ return /* @__PURE__ */ l(O, { snippets: s, maxHeight: a });
87
92
  };
88
93
  export {
89
94
  I as RequestExample
@@ -1 +1 @@
1
- {"version":3,"file":"RequestExample.js","sources":["../../../../src/api-playground-2/components/Example/RequestExample.tsx"],"sourcesContent":["import { ApiPlaygroundInputs } from '@mintlify/validation';\nimport { useState, useEffect } from 'react';\n\nimport { initialApiPlaygroundInputs } from '@/api-playground-2/constants';\nimport { generateSnippetMap } from '@/api-playground-2/generators/generateSnippetMap';\nimport type { ApiReferenceDataV2, CodeExample } from '@/api-playground-2/types';\nimport { CodeGroupSelect } from '../../../components/content-components/CodeGroupSelect';\nimport { CodeSnippet } from '../../../components/content-components/code-snippet';\nimport { CodeSnippets } from '../../../components/content-components/code-snippets';\nimport { CodeBlock } from '../../../components/content-components/code-block';\nimport { CodeGroup } from '../../../components/content-components/code-group';\nimport { prismLangToDisplayLang } from '../../../constants/prism-languages';\nimport { useApiPlaygroundDisplay } from '../../../hooks/useApiPlaygroundDisplay';\nimport type { ExampleCodeSnippet } from '../../../types/exampleCodeSnippet';\n\nimport { GeneratedRequestExample } from './GeneratedRequestExample';\n\nexport const RequestExample = ({\n apiReferenceData,\n inputs = initialApiPlaygroundInputs,\n maxHeight,\n}: {\n apiReferenceData: ApiReferenceDataV2;\n inputs: ApiPlaygroundInputs;\n maxHeight?: string;\n}) => {\n const requestExamples = apiReferenceData.operation?.requestExamples;\n const apiPlaygroundDisplay = useApiPlaygroundDisplay();\n const requestExampleLanguages = apiReferenceData.operation?.requestExampleLanguages;\n const requiredOnly = apiReferenceData.operation?.requiredOnlyExamples;\n\n const requestExampleType = apiReferenceData.operation?.requestExampleType;\n\n switch (apiReferenceData.operation?.requestExampleType) {\n case 'mdx':\n if (!requestExamples) return null;\n const dropdown = requestExamples.some((example: CodeExample) => example.dropdown ?? false);\n return (\n <CodeGroup isSmallText dropdown={dropdown} noMargins className={maxHeight}>\n {requestExamples.map((example: CodeExample, index) => (\n <CodeBlock\n language={example.language}\n fileName={example.filename}\n key={`${example.filename}-${example.language}-${index}`}\n >\n <span>{example.code}</span>\n </CodeBlock>\n ))}\n </CodeGroup>\n );\n case 'codeSamples':\n if (!apiReferenceData.operation.codeSamples) return null;\n return (\n <CodeSamplesExample\n apiReferenceData={apiReferenceData}\n inputs={inputs}\n apiPlaygroundDisplay={apiPlaygroundDisplay}\n requestExampleLanguages={requestExampleLanguages}\n requiredOnly={requiredOnly}\n maxHeight={maxHeight}\n />\n );\n case 'generated':\n const baseUrl =\n apiReferenceData.operation.baseUrl ?? apiReferenceData.operation.baseUrlOptions[0];\n if (!baseUrl) return null;\n return (\n <GeneratedRequestExample\n apiReferenceData={apiReferenceData}\n baseUrl={baseUrl}\n inputs={inputs}\n requestExampleLanguages={requestExampleLanguages}\n requiredOnly={requiredOnly}\n maxHeight={maxHeight}\n />\n );\n }\n};\n\nconst CodeSamplesExample = ({\n apiReferenceData,\n inputs,\n apiPlaygroundDisplay,\n requestExampleLanguages,\n requiredOnly,\n maxHeight,\n}: {\n apiReferenceData: ApiReferenceDataV2;\n inputs: ApiPlaygroundInputs;\n apiPlaygroundDisplay: 'none' | 'simple' | 'interactive';\n requestExampleLanguages?: string[];\n requiredOnly?: boolean;\n maxHeight?: string;\n}) => {\n const [snippetMap, setSnippetMap] = useState<Record<string, Record<string, ExampleCodeSnippet>> | null>(null);\n\n useEffect(() => {\n if (!apiReferenceData.operation?.codeSamples) return;\n\n generateSnippetMap({\n apiReferenceData,\n codeSamples: apiReferenceData.operation.codeSamples,\n baseUrl: apiReferenceData.operation.baseUrl ?? apiReferenceData.operation.baseUrlOptions[0],\n apiPlaygroundMode: apiPlaygroundDisplay,\n requestExampleLanguages,\n requiredOnly,\n inputs,\n }).then(setSnippetMap);\n }, [apiReferenceData, inputs, apiPlaygroundDisplay, requestExampleLanguages, requiredOnly]);\n\n if (!snippetMap) return null;\n\n if (Object.values(snippetMap).every((value) => Object.keys(value).length <= 1)) {\n const codeSnippetMap = Object.values(snippetMap);\n let snippets = codeSnippetMap.flatMap((record) => Object.values(record));\n const uniqueLabels = new Set(snippets.map((snippet) => snippet.filename));\n if (uniqueLabels.size !== snippets.length) {\n snippets = snippets.map((snippet) => ({\n ...snippet,\n filename: prismLangToDisplayLang[snippet.language] ?? snippet.language,\n }));\n }\n return <CodeSnippets snippets={snippets} dropdown maxHeight={maxHeight} />;\n }\n\n return <CodeGroupSelect snippets={snippetMap} maxHeight={maxHeight} />;\n};\n"],"names":["RequestExample","apiReferenceData","inputs","initialApiPlaygroundInputs","maxHeight","requestExamples","_a","apiPlaygroundDisplay","useApiPlaygroundDisplay","requestExampleLanguages","_b","requiredOnly","_c","_d","_e","dropdown","example","jsx","CodeGroup","index","CodeBlock","CodeSamplesExample","baseUrl","GeneratedRequestExample","snippetMap","setSnippetMap","useState","useEffect","generateSnippetMap","value","snippets","record","snippet","prismLangToDisplayLang","CodeSnippets","CodeGroupSelect"],"mappings":"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"}
1
+ {"version":3,"file":"RequestExample.js","sources":["../../../../src/api-playground-2/components/Example/RequestExample.tsx"],"sourcesContent":["import { ApiPlaygroundInputs } from '@mintlify/validation';\nimport { useState, useEffect } from 'react';\n\nimport { initialApiPlaygroundInputs } from '@/api-playground-2/constants';\nimport { generateSnippetMap } from '@/api-playground-2/generators/generateSnippetMap';\nimport type { ApiReferenceDataV2, CodeExample } from '@/api-playground-2/types';\nimport { CodeGroupSelect } from '../../../components/content-components/CodeGroupSelect';\nimport { CodeSnippet } from '../../../components/content-components/code-snippet';\nimport { CodeSnippets } from '../../../components/content-components/code-snippets';\nimport { CodeBlock } from '../../../components/content-components/code-block';\nimport { CodeGroup } from '../../../components/content-components/code-group';\nimport { prismLangToDisplayLang } from '../../../constants/prism-languages';\nimport { useApiPlaygroundDisplay } from '../../../hooks/useApiPlaygroundDisplay';\nimport type { ExampleCodeSnippet } from '../../../types/exampleCodeSnippet';\n\nimport { GeneratedRequestExample } from './GeneratedRequestExample';\n\nexport const RequestExample = ({\n apiReferenceData,\n inputs = initialApiPlaygroundInputs,\n maxHeight,\n selectedSecurityOptionIndex,\n}: {\n apiReferenceData: ApiReferenceDataV2;\n inputs: ApiPlaygroundInputs;\n maxHeight?: string;\n selectedSecurityOptionIndex: number;\n}) => {\n const requestExamples = apiReferenceData.operation?.requestExamples;\n const apiPlaygroundDisplay = useApiPlaygroundDisplay();\n const requestExampleLanguages = apiReferenceData.operation?.requestExampleLanguages;\n const requiredOnly = apiReferenceData.operation?.requiredOnlyExamples;\n\n const requestExampleType = apiReferenceData.operation?.requestExampleType;\n\n switch (apiReferenceData.operation?.requestExampleType) {\n case 'mdx':\n if (!requestExamples) return null;\n const dropdown = requestExamples.some((example: CodeExample) => example.dropdown ?? false);\n return (\n <CodeGroup isSmallText dropdown={dropdown} noMargins className={maxHeight}>\n {requestExamples.map((example: CodeExample, index) => (\n <CodeBlock\n language={example.language}\n fileName={example.filename}\n key={`${example.filename}-${example.language}-${index}`}\n >\n <span>{example.code}</span>\n </CodeBlock>\n ))}\n </CodeGroup>\n );\n case 'codeSamples':\n if (!apiReferenceData.operation.codeSamples) return null;\n return (\n <CodeSamplesExample\n apiReferenceData={apiReferenceData}\n inputs={inputs}\n apiPlaygroundDisplay={apiPlaygroundDisplay}\n requestExampleLanguages={requestExampleLanguages}\n requiredOnly={requiredOnly}\n maxHeight={maxHeight}\n selectedSecurityOptionIndex={selectedSecurityOptionIndex}\n />\n );\n case 'generated':\n const baseUrl =\n apiReferenceData.operation.baseUrl ?? apiReferenceData.operation.baseUrlOptions[0];\n if (!baseUrl) return null;\n return (\n <GeneratedRequestExample\n apiReferenceData={apiReferenceData}\n baseUrl={baseUrl}\n inputs={inputs}\n requestExampleLanguages={requestExampleLanguages}\n selectedSecurityOptionIndex={selectedSecurityOptionIndex}\n requiredOnly={requiredOnly}\n maxHeight={maxHeight}\n />\n );\n }\n};\n\nconst CodeSamplesExample = ({\n apiReferenceData,\n inputs,\n apiPlaygroundDisplay,\n requestExampleLanguages,\n requiredOnly,\n maxHeight,\n selectedSecurityOptionIndex,\n}: {\n apiReferenceData: ApiReferenceDataV2;\n inputs: ApiPlaygroundInputs;\n apiPlaygroundDisplay: 'none' | 'simple' | 'interactive';\n requestExampleLanguages?: string[];\n requiredOnly?: boolean;\n maxHeight?: string;\n selectedSecurityOptionIndex: number;\n}) => {\n const [snippetMap, setSnippetMap] = useState<Record<string, Record<string, ExampleCodeSnippet>> | null>(null);\n\n useEffect(() => {\n if (!apiReferenceData.operation?.codeSamples) return;\n\n generateSnippetMap({\n apiReferenceData,\n codeSamples: apiReferenceData.operation.codeSamples,\n baseUrl: apiReferenceData.operation.baseUrl ?? apiReferenceData.operation.baseUrlOptions[0],\n apiPlaygroundMode: apiPlaygroundDisplay,\n requestExampleLanguages,\n requiredOnly,\n selectedSecurityOptionIndex,\n inputs,\n }).then(setSnippetMap);\n }, [apiReferenceData, inputs, apiPlaygroundDisplay, requestExampleLanguages, requiredOnly]);\n\n if (!snippetMap) return null;\n\n if (Object.values(snippetMap).every((value) => Object.keys(value).length <= 1)) {\n const codeSnippetMap = Object.values(snippetMap);\n let snippets = codeSnippetMap.flatMap((record) => Object.values(record));\n const uniqueLabels = new Set(snippets.map((snippet) => snippet.filename));\n if (uniqueLabels.size !== snippets.length) {\n snippets = snippets.map((snippet) => ({\n ...snippet,\n filename: prismLangToDisplayLang[snippet.language] ?? snippet.language,\n }));\n }\n return <CodeSnippets snippets={snippets} dropdown maxHeight={maxHeight} />;\n }\n\n return <CodeGroupSelect snippets={snippetMap} maxHeight={maxHeight} />;\n};\n"],"names":["RequestExample","apiReferenceData","inputs","initialApiPlaygroundInputs","maxHeight","selectedSecurityOptionIndex","requestExamples","_a","apiPlaygroundDisplay","useApiPlaygroundDisplay","requestExampleLanguages","_b","requiredOnly","_c","_d","_e","dropdown","example","jsx","CodeGroup","index","CodeBlock","CodeSamplesExample","baseUrl","GeneratedRequestExample","snippetMap","setSnippetMap","useState","useEffect","generateSnippetMap","value","snippets","record","snippet","prismLangToDisplayLang","CodeSnippets","CodeGroupSelect"],"mappings":"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"}
@@ -0,0 +1,41 @@
1
+ import { jsx as n } from "react/jsx-runtime";
2
+ import { apiPlaygroundInputKeys as u } from "../../constants/index.js";
3
+ import { isSchemaObject as a } from "../../schemaGraph/utils.js";
4
+ import { cn as f } from "../../../utils/cn.js";
5
+ import { TypeDropdown as y } from "../TypeDropdown.js";
6
+ import { InputSectionContainer as h } from "./InputSectionContainer.js";
7
+ import { DifferentiatedInput as S } from "./inputs/DifferentiatedInput.js";
8
+ const O = ({
9
+ apiReferenceData: m,
10
+ selectedContentTypeIndex: o,
11
+ setSelectedContentTypeIndex: s
12
+ }) => {
13
+ const { dependencies: p } = m, { requestBody: r } = p ?? {};
14
+ if (!r) return null;
15
+ const e = Object.entries(r.content).map(([t, c]) => a(c.schema) ? { contentType: t, schema: c.schema, label: t } : null).filter(
16
+ (t) => t !== null
17
+ ), i = e[o];
18
+ if (!i) return null;
19
+ const { schema: l } = i, d = `${u.body}`;
20
+ return /* @__PURE__ */ n(h, { name: "Body", rightElement: /* @__PURE__ */ n(() => /* @__PURE__ */ n(
21
+ "div",
22
+ {
23
+ onClick: (t) => t.stopPropagation(),
24
+ className: f("mint:text-xs mint:font-mono", e.length <= 1 && "mint:hidden"),
25
+ children: /* @__PURE__ */ n(
26
+ y,
27
+ {
28
+ options: e,
29
+ selectedIndex: o,
30
+ onSelectOption: (t) => {
31
+ s(t);
32
+ }
33
+ }
34
+ )
35
+ }
36
+ ), {}), children: /* @__PURE__ */ n(S, { schema: l, isBody: !0, depth: 0, inputKeyPrefix: d }) });
37
+ };
38
+ export {
39
+ O as BodySection
40
+ };
41
+ //# sourceMappingURL=BodySection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BodySection.js","sources":["../../../../src/api-playground-2/components/Request/BodySection.tsx"],"sourcesContent":["import { apiPlaygroundInputKeys } from '@/api-playground-2/constants';\nimport { isSchemaObject } from '@/api-playground-2/schemaGraph/utils';\nimport type { ApiReferenceDataV2, ResolvedSchemaObject } from '@/api-playground-2/types';\nimport { cn } from '@/utils/cn';\n\nimport { TypeDropdown } from '../TypeDropdown';\nimport { InputSectionContainer } from './InputSectionContainer';\nimport { DifferentiatedInput } from './inputs/DifferentiatedInput';\n\nexport const BodySection = ({\n apiReferenceData,\n selectedContentTypeIndex,\n setSelectedContentTypeIndex,\n}: {\n apiReferenceData: ApiReferenceDataV2;\n selectedContentTypeIndex: number;\n setSelectedContentTypeIndex: (index: number) => void;\n}) => {\n const { dependencies } = apiReferenceData;\n const { requestBody } = dependencies ?? {};\n\n if (!requestBody) return null;\n const contentTypesAndContents = Object.entries(requestBody.content)\n .map(([contentType, content]) => {\n if (isSchemaObject(content.schema)) {\n return { contentType, schema: content.schema, label: contentType };\n }\n return null;\n })\n .filter(\n (content): content is { contentType: string; schema: ResolvedSchemaObject; label: string } =>\n content !== null\n );\n const contentTypeAndContent = contentTypesAndContents[selectedContentTypeIndex];\n if (!contentTypeAndContent) return null;\n const { schema } = contentTypeAndContent;\n\n const bodyInputKey = `${apiPlaygroundInputKeys.body}`;\n\n const ContentTypeSelector = () => {\n return (\n <div\n onClick={(e) => e.stopPropagation()}\n className={cn(\"mint:text-xs mint:font-mono\", contentTypesAndContents.length <= 1 && 'mint:hidden')}\n >\n <TypeDropdown\n options={contentTypesAndContents}\n selectedIndex={selectedContentTypeIndex}\n onSelectOption={(index) => {\n setSelectedContentTypeIndex(index);\n }}\n />\n </div>\n );\n };\n\n return (\n <InputSectionContainer name=\"Body\" rightElement={<ContentTypeSelector />}>\n <DifferentiatedInput schema={schema} isBody depth={0} inputKeyPrefix={bodyInputKey} />\n </InputSectionContainer>\n );\n};\n"],"names":["BodySection","apiReferenceData","selectedContentTypeIndex","setSelectedContentTypeIndex","dependencies","requestBody","contentTypesAndContents","contentType","content","isSchemaObject","contentTypeAndContent","schema","bodyInputKey","apiPlaygroundInputKeys","InputSectionContainer","jsx","e","cn","TypeDropdown","index","DifferentiatedInput"],"mappings":";;;;;;;AASO,MAAMA,IAAc,CAAC;AAAA,EAC1B,kBAAAC;AAAA,EACA,0BAAAC;AAAA,EACA,6BAAAC;AACF,MAIM;AACJ,QAAM,EAAE,cAAAC,MAAiBH,GACnB,EAAE,aAAAI,MAAgBD,KAAgB,CAAA;AAExC,MAAI,CAACC,EAAa,QAAO;AACzB,QAAMC,IAA0B,OAAO,QAAQD,EAAY,OAAO,EAC/D,IAAI,CAAC,CAACE,GAAaC,CAAO,MACrBC,EAAeD,EAAQ,MAAM,IACxB,EAAE,aAAAD,GAAa,QAAQC,EAAQ,QAAQ,OAAOD,EAAA,IAEhD,IACR,EACA;AAAA,IACC,CAACC,MACCA,MAAY;AAAA,EAAA,GAEZE,IAAwBJ,EAAwBJ,CAAwB;AAC9E,MAAI,CAACQ,EAAuB,QAAO;AACnC,QAAM,EAAE,QAAAC,MAAWD,GAEbE,IAAe,GAAGC,EAAuB,IAAI;AAmBnD,2BACGC,GAAA,EAAsB,MAAK,QAAO,gCAlBT,MAExB,gBAAAC;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,SAAS,CAACC,MAAMA,EAAE,gBAAA;AAAA,MAClB,WAAWC,EAAG,+BAA+BX,EAAwB,UAAU,KAAK,aAAa;AAAA,MAEjG,UAAA,gBAAAS;AAAA,QAACG;AAAA,QAAA;AAAA,UACC,SAASZ;AAAA,UACT,eAAeJ;AAAA,UACf,gBAAgB,CAACiB,MAAU;AACzB,YAAAhB,EAA4BgB,CAAK;AAAA,UACnC;AAAA,QAAA;AAAA,MAAA;AAAA,IACF;AAAA,EAAA,GAM8C,CAAA,CAAoB,GACpE,UAAA,gBAAAJ,EAACK,GAAA,EAAoB,QAAAT,GAAgB,QAAM,IAAC,OAAO,GAAG,gBAAgBC,GAAc,GACtF;AAEJ;"}
@@ -0,0 +1,66 @@
1
+ import { jsxs as i, jsx as n } from "react/jsx-runtime";
2
+ import { useState as x } from "react";
3
+ import { useSelectedLocale as p } from "../../../utils/locales/index.js";
4
+ import { ChevronRightFilled as b, CheckmarkCircleRegular as g, ErrorCircleRegular as u } from "@fluentui/react-icons";
5
+ import { cn as r } from "../../../utils/cn.js";
6
+ const N = ({
7
+ name: o,
8
+ validationState: m,
9
+ children: a,
10
+ rightElement: l
11
+ }) => {
12
+ const [e, d] = x(!0), s = p();
13
+ return /* @__PURE__ */ i("div", { children: [
14
+ /* @__PURE__ */ i(
15
+ "div",
16
+ {
17
+ role: "button",
18
+ tabIndex: 0,
19
+ "aria-label": s["aria.expandInputSection"],
20
+ onClick: () => d((t) => !t),
21
+ onKeyDown: (t) => {
22
+ (t.key === "Enter" || t.key === " ") && (t.preventDefault(), d((c) => !c));
23
+ },
24
+ className: r(
25
+ "mint:flex mint:w-full mint:px-4 mint:py-2.5 mint:items-center mint:justify-between mint:border-standard mint:cursor-pointer mint:hover:bg-gray-50 dark:hover:bg-white/5",
26
+ e ? "mint:border-b-0! mint:border-t mint:border-x mint:rounded-t-2xl" : "mint:rounded-2xl"
27
+ ),
28
+ children: [
29
+ /* @__PURE__ */ i("div", { className: "mint:flex mint:items-center mint:gap-x-1.5", children: [
30
+ /* @__PURE__ */ n(
31
+ b,
32
+ {
33
+ className: r(
34
+ "mint:h-3 mint:w-3 mint:transition-transform",
35
+ e && "mint:rotate-90"
36
+ )
37
+ }
38
+ ),
39
+ /* @__PURE__ */ i("div", { className: "mint:flex-1 mint:flex mint:items-center mint:space-x-2", children: [
40
+ /* @__PURE__ */ n("div", { className: "mint:text-sm mint:font-medium mint:text-gray-800 mint:dark:text-gray-200 mint:leading-6", children: o }),
41
+ m ? m === "invalid" ? /* @__PURE__ */ n(h, {}) : /* @__PURE__ */ n(f, {}) : null
42
+ ] })
43
+ ] }),
44
+ /* @__PURE__ */ n("div", { onClick: (t) => t.stopPropagation(), onKeyDown: (t) => t.stopPropagation(), children: l })
45
+ ]
46
+ }
47
+ ),
48
+ /* @__PURE__ */ i(
49
+ "div",
50
+ {
51
+ className: r(
52
+ "mint:bg-background-light dark:bg-background-dark mint:flex-1 mint:px-4 mint:rounded-b-xl mint:border-standard mint:border-t-0! mint:divide-y mint:divide-gray-100 dark:divide-white/10",
53
+ e && a ? "" : "mint:hidden"
54
+ ),
55
+ children: [
56
+ /* @__PURE__ */ n("div", {}),
57
+ a
58
+ ]
59
+ }
60
+ )
61
+ ] });
62
+ }, h = () => /* @__PURE__ */ n(g, { className: "mint:h-4 mint:w-4 mint:bg-[#2AB673]" }), f = () => /* @__PURE__ */ n(u, { className: "mint:h-4 mint:w-4 mint:bg-[#CB3A32]" });
63
+ export {
64
+ N as InputSectionContainer
65
+ };
66
+ //# sourceMappingURL=InputSectionContainer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InputSectionContainer.js","sources":["../../../../src/api-playground-2/components/Request/InputSectionContainer.tsx"],"sourcesContent":["'use client';\n\nimport { ReactNode, useState } from 'react';\n\nimport { useSelectedLocale } from '@/utils/locales';\nimport { ChevronRightFilled, CheckmarkCircleRegular, ErrorCircleRegular } from '@fluentui/react-icons';\nimport { cn } from \"../../../utils/cn\";\n\ntype InputSectionContainerParams = {\n name: string;\n validationState?: 'valid' | 'invalid';\n children?: ReactNode;\n rightElement?: ReactNode;\n};\n\n// identical to v1 InputSectionContainer but doesn't use button and instead uses div with role=\"button\"\n// gets rid of error that <button> cannot be used as a child of <button> when we pass a button as rightElement\nexport const InputSectionContainer = ({\n name,\n validationState,\n children,\n rightElement,\n}: InputSectionContainerParams) => {\n const [expanded, setExpanded] = useState(true);\n const locale = useSelectedLocale();\n\n return (\n <div>\n <div\n role=\"button\"\n tabIndex={0}\n aria-label={locale['aria.expandInputSection']}\n onClick={() => setExpanded((prev) => !prev)}\n onKeyDown={(e) => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault();\n setExpanded((prev) => !prev);\n }\n }}\n className={cn(\n 'mint:flex mint:w-full mint:px-4 mint:py-2.5 mint:items-center mint:justify-between mint:border-standard mint:cursor-pointer mint:hover:bg-gray-50 dark:hover:bg-white/5',\n expanded ? 'mint:border-b-0! mint:border-t mint:border-x mint:rounded-t-2xl' : 'mint:rounded-2xl'\n )}\n >\n <div className=\"mint:flex mint:items-center mint:gap-x-1.5\">\n <ChevronRightFilled\n className={cn(\"mint:h-3 mint:w-3 mint:transition-transform\",\n expanded && 'mint:rotate-90'\n )}\n />\n <div className=\"mint:flex-1 mint:flex mint:items-center mint:space-x-2\">\n <div className=\"mint:text-sm mint:font-medium mint:text-gray-800 mint:dark:text-gray-200 mint:leading-6\">\n {name}\n </div>\n {validationState ? (\n validationState === 'invalid' ? (\n <ValidIcon />\n ) : (\n <InvalidIcon />\n )\n ) : null}\n </div>\n </div>\n <div onClick={(e) => e.stopPropagation()} onKeyDown={(e) => e.stopPropagation()}>\n {rightElement}\n </div>\n </div>\n {/* since the UI components maintain some state, we can't unmount them - hide instead */}\n <div\n className={cn(\"mint:bg-background-light dark:bg-background-dark mint:flex-1 mint:px-4 mint:rounded-b-xl mint:border-standard mint:border-t-0! mint:divide-y mint:divide-gray-100 dark:divide-white/10\",\n expanded && children ? '' : 'mint:hidden'\n )}\n >\n {/* Used to create the top border */}\n <div />\n {children}\n </div>\n </div>\n );\n};\n\nconst ValidIcon = () => <CheckmarkCircleRegular className=\"mint:h-4 mint:w-4 mint:bg-[#2AB673]\" />;\n\nconst InvalidIcon = () => <ErrorCircleRegular className=\"mint:h-4 mint:w-4 mint:bg-[#CB3A32]\" />;\n"],"names":["InputSectionContainer","name","validationState","children","rightElement","expanded","setExpanded","useState","locale","useSelectedLocale","jsxs","prev","e","cn","jsx","ChevronRightFilled","ValidIcon","InvalidIcon","CheckmarkCircleRegular","ErrorCircleRegular"],"mappings":";;;;;AAiBO,MAAMA,IAAwB,CAAC;AAAA,EACpC,MAAAC;AAAA,EACA,iBAAAC;AAAA,EACA,UAAAC;AAAA,EACA,cAAAC;AACF,MAAmC;AACjC,QAAM,CAACC,GAAUC,CAAW,IAAIC,EAAS,EAAI,GACvCC,IAASC,EAAA;AAEf,2BACG,OAAA,EACC,UAAA;AAAA,IAAA,gBAAAC;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,MAAK;AAAA,QACL,UAAU;AAAA,QACV,cAAYF,EAAO,yBAAyB;AAAA,QAC5C,SAAS,MAAMF,EAAY,CAACK,MAAS,CAACA,CAAI;AAAA,QAC1C,WAAW,CAACC,MAAM;AAChB,WAAIA,EAAE,QAAQ,WAAWA,EAAE,QAAQ,SACjCA,EAAE,eAAA,GACFN,EAAY,CAACK,MAAS,CAACA,CAAI;AAAA,QAE/B;AAAA,QACA,WAAWE;AAAA,UACT;AAAA,UACAR,IAAW,oEAAoE;AAAA,QAAA;AAAA,QAGjF,UAAA;AAAA,UAAA,gBAAAK,EAAC,OAAA,EAAI,WAAU,8CACb,UAAA;AAAA,YAAA,gBAAAI;AAAA,cAACC;AAAA,cAAA;AAAA,gBACC,WAAWF;AAAA,kBAAG;AAAA,kBACZR,KAAY;AAAA,gBAAA;AAAA,cACd;AAAA,YAAA;AAAA,YAEF,gBAAAK,EAAC,OAAA,EAAI,WAAU,0DACb,UAAA;AAAA,cAAA,gBAAAI,EAAC,OAAA,EAAI,WAAU,2FACZ,UAAAb,GACH;AAAA,cACCC,IACCA,MAAoB,YAClB,gBAAAY,EAACE,KAAU,IAEX,gBAAAF,EAACG,KAAY,IAEb;AAAA,YAAA,EAAA,CACN;AAAA,UAAA,GACF;AAAA,UACA,gBAAAH,EAAC,OAAA,EAAI,SAAS,CAACF,MAAMA,EAAE,gBAAA,GAAmB,WAAW,CAACA,MAAMA,EAAE,gBAAA,GAC3D,UAAAR,EAAA,CACH;AAAA,QAAA;AAAA,MAAA;AAAA,IAAA;AAAA,IAGF,gBAAAM;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,WAAWG;AAAA,UAAG;AAAA,UACZR,KAAYF,IAAW,KAAK;AAAA,QAAA;AAAA,QAI9B,UAAA;AAAA,UAAA,gBAAAW,EAAC,OAAA,EAAI;AAAA,UACJX;AAAA,QAAA;AAAA,MAAA;AAAA,IAAA;AAAA,EACH,GACF;AAEJ,GAEMa,IAAY,MAAM,gBAAAF,EAACI,GAAA,EAAuB,WAAU,sCAAA,CAAsC,GAE1FD,IAAc,MAAM,gBAAAH,EAACK,GAAA,EAAmB,WAAU,sCAAA,CAAsC;"}
@@ -0,0 +1,36 @@
1
+ import { jsxs as P, Fragment as g, jsx as n } from "react/jsx-runtime";
2
+ import { getParametersPerSection as y, isSchemaObject as I, mapParamInToPlaygroundInputKey as j, escapeDots as k } from "../../schemaGraph/utils.js";
3
+ import { InputSectionContainer as r } from "./InputSectionContainer.js";
4
+ import { DifferentiatedInput as x } from "./inputs/DifferentiatedInput.js";
5
+ const K = ({
6
+ apiReferenceData: o
7
+ }) => {
8
+ const { dependencies: l } = o, { parameters: a } = l ?? {};
9
+ if (!a || Object.keys(a).length === 0) return null;
10
+ const { header: h, path: u, query: p, cookie: d } = y(o), t = (e) => {
11
+ if (e === void 0)
12
+ return null;
13
+ if (I(e.schema)) {
14
+ const f = `${j(e.in)}.${k(e.name)}`;
15
+ return /* @__PURE__ */ n(
16
+ x,
17
+ {
18
+ name: e.name,
19
+ schema: e.schema,
20
+ inputKeyPrefix: f
21
+ },
22
+ e.name
23
+ );
24
+ }
25
+ }, i = h.map(t).filter((e) => e !== null), m = d.map(t).filter((e) => e !== null), s = u.map(t).filter((e) => e !== null), c = p.map(t).filter((e) => e !== null);
26
+ return /* @__PURE__ */ P(g, { children: [
27
+ i.length > 0 && /* @__PURE__ */ n(r, { name: "Header", children: i }),
28
+ m.length > 0 && /* @__PURE__ */ n(r, { name: "Cookies", children: m }),
29
+ s.length > 0 && /* @__PURE__ */ n(r, { name: "Path", children: s }),
30
+ c.length > 0 && /* @__PURE__ */ n(r, { name: "Query", children: c })
31
+ ] });
32
+ };
33
+ export {
34
+ K as ParameterSection
35
+ };
36
+ //# sourceMappingURL=ParameterSection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ParameterSection.js","sources":["../../../../src/api-playground-2/components/Request/ParameterSection.tsx"],"sourcesContent":["import { ParameterObject } from '@mintlify/validation';\n\nimport {\n escapeDots,\n getParametersPerSection,\n isSchemaObject,\n mapParamInToPlaygroundInputKey,\n} from '@/api-playground-2/schemaGraph/utils';\nimport type { ApiReferenceDataV2 } from '@/api-playground-2/types';\n\nimport { InputSectionContainer } from './InputSectionContainer';\nimport { DifferentiatedInput } from './inputs/DifferentiatedInput';\n\nexport const ParameterSection = ({\n apiReferenceData,\n}: {\n apiReferenceData: ApiReferenceDataV2;\n}) => {\n const { dependencies } = apiReferenceData;\n const { parameters } = dependencies ?? {};\n if (!parameters || Object.keys(parameters).length === 0) return null;\n const { header, path, query, cookie } = getParametersPerSection(apiReferenceData);\n\n const mapParamToInput = (parameter: ParameterObject | undefined): React.ReactNode | null => {\n if (parameter === undefined) {\n return null;\n }\n if (isSchemaObject(parameter.schema)) {\n const inputKeyPrefix = `${mapParamInToPlaygroundInputKey(parameter.in)}.${escapeDots(parameter.name)}`;\n return (\n <DifferentiatedInput\n key={parameter.name}\n name={parameter.name}\n schema={parameter.schema}\n inputKeyPrefix={inputKeyPrefix}\n />\n );\n }\n };\n\n const headerParameters = header\n .map(mapParamToInput)\n .filter((input): input is React.ReactNode => input !== null);\n const cookieParameters = cookie\n .map(mapParamToInput)\n .filter((input): input is React.ReactNode => input !== null);\n const pathParameters = path\n .map(mapParamToInput)\n .filter((input): input is React.ReactNode => input !== null);\n const queryParameters = query\n .map(mapParamToInput)\n .filter((input): input is React.ReactNode => input !== null);\n\n return (\n <>\n {headerParameters.length > 0 && (\n <InputSectionContainer name=\"Header\">{headerParameters}</InputSectionContainer>\n )}\n {cookieParameters.length > 0 && (\n <InputSectionContainer name=\"Cookies\">{cookieParameters}</InputSectionContainer>\n )}\n {pathParameters.length > 0 && (\n <InputSectionContainer name=\"Path\">{pathParameters}</InputSectionContainer>\n )}\n {queryParameters.length > 0 && (\n <InputSectionContainer name=\"Query\">{queryParameters}</InputSectionContainer>\n )}\n </>\n );\n};\n"],"names":["ParameterSection","apiReferenceData","dependencies","parameters","header","path","query","cookie","getParametersPerSection","mapParamToInput","parameter","isSchemaObject","inputKeyPrefix","mapParamInToPlaygroundInputKey","escapeDots","jsx","DifferentiatedInput","headerParameters","input","cookieParameters","pathParameters","queryParameters","jsxs","Fragment","InputSectionContainer"],"mappings":";;;;AAaO,MAAMA,IAAmB,CAAC;AAAA,EAC/B,kBAAAC;AACF,MAEM;AACJ,QAAM,EAAE,cAAAC,MAAiBD,GACnB,EAAE,YAAAE,MAAeD,KAAgB,CAAA;AACvC,MAAI,CAACC,KAAc,OAAO,KAAKA,CAAU,EAAE,WAAW,EAAG,QAAO;AAChE,QAAM,EAAE,QAAAC,GAAQ,MAAAC,GAAM,OAAAC,GAAO,QAAAC,EAAA,IAAWC,EAAwBP,CAAgB,GAE1EQ,IAAkB,CAACC,MAAmE;AAC1F,QAAIA,MAAc;AAChB,aAAO;AAET,QAAIC,EAAeD,EAAU,MAAM,GAAG;AACpC,YAAME,IAAiB,GAAGC,EAA+BH,EAAU,EAAE,CAAC,IAAII,EAAWJ,EAAU,IAAI,CAAC;AACpG,aACE,gBAAAK;AAAA,QAACC;AAAA,QAAA;AAAA,UAEC,MAAMN,EAAU;AAAA,UAChB,QAAQA,EAAU;AAAA,UAClB,gBAAAE;AAAA,QAAA;AAAA,QAHKF,EAAU;AAAA,MAAA;AAAA,IAMrB;AAAA,EACF,GAEMO,IAAmBb,EACtB,IAAIK,CAAe,EACnB,OAAO,CAACS,MAAoCA,MAAU,IAAI,GACvDC,IAAmBZ,EACtB,IAAIE,CAAe,EACnB,OAAO,CAACS,MAAoCA,MAAU,IAAI,GACvDE,IAAiBf,EACpB,IAAII,CAAe,EACnB,OAAO,CAACS,MAAoCA,MAAU,IAAI,GACvDG,IAAkBf,EACrB,IAAIG,CAAe,EACnB,OAAO,CAACS,MAAoCA,MAAU,IAAI;AAE7D,SACE,gBAAAI,EAAAC,GAAA,EACG,UAAA;AAAA,IAAAN,EAAiB,SAAS,KACzB,gBAAAF,EAACS,GAAA,EAAsB,MAAK,UAAU,UAAAP,GAAiB;AAAA,IAExDE,EAAiB,SAAS,uBACxBK,GAAA,EAAsB,MAAK,WAAW,UAAAL,GAAiB;AAAA,IAEzDC,EAAe,SAAS,uBACtBI,GAAA,EAAsB,MAAK,QAAQ,UAAAJ,GAAe;AAAA,IAEpDC,EAAgB,SAAS,uBACvBG,GAAA,EAAsB,MAAK,SAAS,UAAAH,EAAA,CAAgB;AAAA,EAAA,GAEzD;AAEJ;"}
@@ -0,0 +1,55 @@
1
+ import { jsx as o } from "react/jsx-runtime";
2
+ import { mapParamInToPlaygroundInputKey as O, escapeDots as x } from "../../schemaGraph/utils.js";
3
+ import { cn as g } from "../../../utils/cn.js";
4
+ import { TypeDropdown as P } from "../TypeDropdown.js";
5
+ import { InputSectionContainer as v } from "./InputSectionContainer.js";
6
+ import { DifferentiatedInput as D } from "./inputs/DifferentiatedInput.js";
7
+ import { useSelectedSecurityOption as K, usePlaygroundInputsStore as d } from "../../hooks/usePlaygroundInputsStore.js";
8
+ import { useRef as w, useEffect as E } from "react";
9
+ const S = (c) => {
10
+ const { scheme: t, schema: s } = c, r = "in" in t ? t.in : "header", i = "name" in t ? t.name : s.title ?? "";
11
+ return `${O(r)}.${x(i)}`;
12
+ }, N = ({ apiReferenceData: c }) => {
13
+ var l;
14
+ const { selectedSecurityOptionIndex: t, setSelectedSecurityOptionIndex: s } = K(), r = d((e) => e.inputs), i = d((e) => e.replaceInputs), p = w(t), n = (l = c.dependencies) == null ? void 0 : l.processedSecurityOptions;
15
+ if (E(() => {
16
+ if (p.current !== t) {
17
+ if (!n) return;
18
+ const e = n[p.current];
19
+ if (e) {
20
+ const I = S(e), m = { ...r };
21
+ Object.keys(m).forEach((f) => {
22
+ f.startsWith(I) && delete m[f];
23
+ }), i(m);
24
+ }
25
+ p.current = t;
26
+ }
27
+ }, [t, n, r, i]), !n || n.length === 0) return null;
28
+ const u = n[t];
29
+ if (!u) return null;
30
+ const y = n.map((e) => ({
31
+ label: e.schema.title ?? "Authorization",
32
+ schema: e.schema
33
+ })), { schema: a } = u, h = S(u);
34
+ return /* @__PURE__ */ o(v, { name: "Authorization", rightElement: /* @__PURE__ */ o(() => /* @__PURE__ */ o(
35
+ "div",
36
+ {
37
+ onClick: (e) => e.stopPropagation(),
38
+ className: g("mint:text-xs mint:font-mono", n.length <= 1 && "mint:hidden"),
39
+ children: /* @__PURE__ */ o(
40
+ P,
41
+ {
42
+ options: y,
43
+ selectedIndex: t,
44
+ onSelectOption: (e) => {
45
+ s(e);
46
+ }
47
+ }
48
+ )
49
+ }
50
+ ), {}), children: /* @__PURE__ */ o(D, { name: a.title, schema: a, inputKeyPrefix: h }) });
51
+ };
52
+ export {
53
+ N as SecuritySection
54
+ };
55
+ //# sourceMappingURL=SecuritySection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SecuritySection.js","sources":["../../../../src/api-playground-2/components/Request/SecuritySection.tsx"],"sourcesContent":["import { escapeDots, mapParamInToPlaygroundInputKey } from '@/api-playground-2/schemaGraph/utils';\nimport type { ApiReferenceDataV2, ProcessedSecurityOption, SecuritySchemeAndScope } from '@/api-playground-2/types';\nimport { cn } from '@/utils/cn';\n\nimport { TypeDropdown } from '../TypeDropdown';\nimport { InputSectionContainer } from './InputSectionContainer';\nimport { DifferentiatedInput } from './inputs/DifferentiatedInput';\nimport { usePlaygroundInputsStore, useSelectedSecurityOption } from '@/api-playground-2/hooks/usePlaygroundInputsStore';\nimport { useEffect, useRef } from 'react';\n\nconst getSecurityOptionInputKeyPrefix = (securityOption: ProcessedSecurityOption) => {\n const { scheme, schema } = securityOption;\n const parameterSection = 'in' in scheme ? scheme.in : 'header';\n const name = 'name' in scheme ? scheme.name : schema.title ?? '';\n return `${mapParamInToPlaygroundInputKey(parameterSection)}.${escapeDots(name)}`;\n}\n\nexport const SecuritySection = ({ apiReferenceData }: { apiReferenceData: ApiReferenceDataV2; }) => {\n \n const { selectedSecurityOptionIndex, setSelectedSecurityOptionIndex } =\n useSelectedSecurityOption();\n const inputs = usePlaygroundInputsStore((state) => state.inputs);\n const replaceInputs = usePlaygroundInputsStore((state) => state.replaceInputs);\n const prevIndexRef = useRef<number>(selectedSecurityOptionIndex)\n const securityOptions = apiReferenceData.dependencies?.processedSecurityOptions;\n \n // replace previous security option inputs when the selected security option changes\n useEffect(() => {\n if (prevIndexRef.current !== selectedSecurityOptionIndex) {\n if (!securityOptions) return;\n const prevSecurityOption = securityOptions[prevIndexRef.current];\n if (prevSecurityOption) {\n const prevInputKeyPrefix = getSecurityOptionInputKeyPrefix(prevSecurityOption);\n\n const newInputs = { ...inputs };\n Object.keys(newInputs).forEach((key) => {\n if (key.startsWith(prevInputKeyPrefix)) {\n delete newInputs[key];\n }\n });\n replaceInputs(newInputs);\n }\n prevIndexRef.current = selectedSecurityOptionIndex;\n }\n }, [selectedSecurityOptionIndex, securityOptions, inputs, replaceInputs])\n\n if (!securityOptions || securityOptions.length === 0) return null;\n const selectedSecurityOption = securityOptions[selectedSecurityOptionIndex];\n if (!selectedSecurityOption) return null;\n const securityOptionDropdownOptions = securityOptions.map((securityOption) => ({\n label: securityOption.schema.title ?? 'Authorization',\n schema: securityOption.schema,\n }));\n\n const { schema } = selectedSecurityOption;\n const inputKeyPrefix = getSecurityOptionInputKeyPrefix(selectedSecurityOption);\n\n const SecurityOptionSelector = () => {\n return (\n <div\n onClick={(e) => e.stopPropagation()}\n className={cn(\"mint:text-xs mint:font-mono\", securityOptions.length <= 1 && 'mint:hidden')}\n >\n <TypeDropdown\n options={securityOptionDropdownOptions}\n selectedIndex={selectedSecurityOptionIndex}\n onSelectOption={(index) => {\n setSelectedSecurityOptionIndex(index);\n }}\n />\n </div>\n );\n };\n\n return (\n <InputSectionContainer name=\"Authorization\" rightElement={<SecurityOptionSelector />}>\n <DifferentiatedInput name={schema.title} schema={schema} inputKeyPrefix={inputKeyPrefix} />\n </InputSectionContainer>\n );\n};\n\n// TODO - Api Playground Refactor: add optional transform fns passed to the getter and setter\n// eslint-disable-next-line unused-imports/no-unused-vars\nconst parseValueForParameter = ({\n scheme,\n value,\n}: {\n scheme: SecuritySchemeAndScope;\n value: unknown;\n}) => {\n if (\n scheme.type !== 'http' ||\n scheme.scheme !== 'basic' ||\n typeof value !== 'string' ||\n !value.startsWith('Basic ')\n )\n return value;\n\n const encoded = value.slice('Basic '.length);\n const decoded = Buffer.from(encoded, 'base64').toString('utf-8');\n const [username, password] = decoded.split(':');\n return { username, password };\n};\n\n// eslint-disable-next-line unused-imports/no-unused-vars\nconst getTransformForParameter = (scheme: SecuritySchemeAndScope) => {\n if (scheme.type !== 'http' || scheme.scheme !== 'basic') {\n return (value: unknown) => value;\n }\n\n return (value: unknown) => {\n const username =\n value && typeof value === 'object' && 'username' in value ? value['username'] : undefined;\n const password =\n value && typeof value === 'object' && 'password' in value ? value['password'] : undefined;\n const unencoded = `${username ?? ''}:${password ?? ''}`;\n const encoded = Buffer.from(unencoded).toString('base64');\n return `Basic ${encoded}`;\n };\n};\n"],"names":["getSecurityOptionInputKeyPrefix","securityOption","scheme","schema","parameterSection","name","mapParamInToPlaygroundInputKey","escapeDots","SecuritySection","apiReferenceData","selectedSecurityOptionIndex","setSelectedSecurityOptionIndex","useSelectedSecurityOption","inputs","usePlaygroundInputsStore","state","replaceInputs","prevIndexRef","useRef","securityOptions","_a","useEffect","prevSecurityOption","prevInputKeyPrefix","newInputs","key","selectedSecurityOption","securityOptionDropdownOptions","inputKeyPrefix","jsx","InputSectionContainer","cn","TypeDropdown","index","DifferentiatedInput"],"mappings":";;;;;;;;AAUA,MAAMA,IAAkC,CAACC,MAA4C;AACnF,QAAM,EAAE,QAAAC,GAAQ,QAAAC,EAAA,IAAWF,GACrBG,IAAmB,QAAQF,IAASA,EAAO,KAAK,UAChDG,IAAO,UAAUH,IAASA,EAAO,OAAOC,EAAO,SAAS;AAC9D,SAAO,GAAGG,EAA+BF,CAAgB,CAAC,IAAIG,EAAWF,CAAI,CAAC;AAChF,GAEaG,IAAkB,CAAC,EAAE,kBAAAC,QAAkE;;AAElG,QAAM,EAAE,6BAAAC,GAA6B,gCAAAC,EAAA,IACnCC,EAAA,GACIC,IAASC,EAAyB,CAACC,MAAUA,EAAM,MAAM,GACzDC,IAAgBF,EAAyB,CAACC,MAAUA,EAAM,aAAa,GACvEE,IAAeC,EAAeR,CAA2B,GACzDS,KAAkBC,IAAAX,EAAiB,iBAAjB,gBAAAW,EAA+B;AAsBvD,MAnBAC,EAAU,MAAM;AACd,QAAIJ,EAAa,YAAYP,GAA6B;AACxD,UAAI,CAACS,EAAiB;AACtB,YAAMG,IAAqBH,EAAgBF,EAAa,OAAO;AAC/D,UAAIK,GAAoB;AACtB,cAAMC,IAAqBvB,EAAgCsB,CAAkB,GAEvEE,IAAY,EAAE,GAAGX,EAAA;AACvB,eAAO,KAAKW,CAAS,EAAE,QAAQ,CAACC,MAAQ;AACtC,UAAIA,EAAI,WAAWF,CAAkB,KACnC,OAAOC,EAAUC,CAAG;AAAA,QAExB,CAAC,GACDT,EAAcQ,CAAS;AAAA,MACzB;AACA,MAAAP,EAAa,UAAUP;AAAA,IACzB;AAAA,EACF,GAAG,CAACA,GAA6BS,GAAiBN,GAAQG,CAAa,CAAC,GAEpE,CAACG,KAAmBA,EAAgB,WAAW,EAAG,QAAO;AAC7D,QAAMO,IAAyBP,EAAgBT,CAA2B;AAC1E,MAAI,CAACgB,EAAwB,QAAO;AACpC,QAAMC,IAAgCR,EAAgB,IAAI,CAAClB,OAAoB;AAAA,IAC7E,OAAOA,EAAe,OAAO,SAAS;AAAA,IACtC,QAAQA,EAAe;AAAA,EAAA,EACvB,GAEI,EAAE,QAAAE,MAAWuB,GACbE,IAAiB5B,EAAgC0B,CAAsB;AAmB7E,SACE,gBAAAG,EAACC,GAAA,EAAsB,MAAK,iBAAgB,cAAc,gBAAAD,EAlB7B,MAE3B,gBAAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,SAAS,CAAC,MAAM,EAAE,gBAAA;AAAA,MAClB,WAAWE,EAAG,+BAA+BZ,EAAgB,UAAU,KAAK,aAAa;AAAA,MAEzF,UAAA,gBAAAU;AAAA,QAACG;AAAA,QAAA;AAAA,UACC,SAASL;AAAA,UACT,eAAejB;AAAA,UACf,gBAAgB,CAACuB,MAAU;AACzB,YAAAtB,EAA+BsB,CAAK;AAAA,UACtC;AAAA,QAAA;AAAA,MAAA;AAAA,IACF;AAAA,EAAA,GAMuD,EAAuB,GAChF,UAAA,gBAAAJ,EAACK,KAAoB,MAAM/B,EAAO,OAAO,QAAAA,GAAgB,gBAAAyB,GAAgC,GAC3F;AAEJ;"}
@@ -0,0 +1,33 @@
1
+ import { jsx as s } from "react/jsx-runtime";
2
+ import { apiPlaygroundInputKeys as l } from "../../constants/index.js";
3
+ import { escapeDots as m } from "../../schemaGraph/utils.js";
4
+ import { InputSectionContainer as f } from "./InputSectionContainer.js";
5
+ import { DifferentiatedInput as v } from "./inputs/DifferentiatedInput.js";
6
+ const h = ({
7
+ apiReferenceData: o,
8
+ selectedBaseUrlIndex: i
9
+ }) => {
10
+ var n;
11
+ const { dependencies: c } = o, { servers: e } = c ?? {};
12
+ if (!e || Object.keys(e).length === 0) return null;
13
+ const r = (n = Object.values(e)[i]) == null ? void 0 : n.variables;
14
+ return !r || Object.keys(r).length === 0 ? null : /* @__PURE__ */ s(f, { name: "Server", children: Object.entries(r).map(([t, p]) => {
15
+ const u = {
16
+ ...p,
17
+ type: "string"
18
+ }, a = `${l.server}.${m(t)}`;
19
+ return /* @__PURE__ */ s(
20
+ v,
21
+ {
22
+ name: t,
23
+ schema: u,
24
+ inputKeyPrefix: a
25
+ },
26
+ t
27
+ );
28
+ }) });
29
+ };
30
+ export {
31
+ h as ServerSection
32
+ };
33
+ //# sourceMappingURL=ServerSection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ServerSection.js","sources":["../../../../src/api-playground-2/components/Request/ServerSection.tsx"],"sourcesContent":["import { apiPlaygroundInputKeys } from '@/api-playground-2/constants';\nimport { escapeDots } from '@/api-playground-2/schemaGraph/utils';\nimport type { ApiReferenceDataV2, ResolvedSchemaObject } from '@/api-playground-2/types';\n\nimport { InputSectionContainer } from './InputSectionContainer';\nimport { DifferentiatedInput } from './inputs/DifferentiatedInput';\n\nexport const ServerSection = ({\n apiReferenceData,\n selectedBaseUrlIndex,\n}: {\n apiReferenceData: ApiReferenceDataV2;\n selectedBaseUrlIndex: number;\n}) => {\n const { dependencies } = apiReferenceData;\n const { servers } = dependencies ?? {};\n\n if (!servers || Object.keys(servers).length === 0) return null;\n const serverObjects = Object.values(servers);\n const serverVariables = serverObjects[selectedBaseUrlIndex]?.variables;\n if (!serverVariables || Object.keys(serverVariables).length === 0) return null;\n return (\n <InputSectionContainer name=\"Server\">\n {Object.entries(serverVariables).map(([name, variable]) => {\n \n const schema = {\n ...variable,\n type: 'string',\n } as ResolvedSchemaObject;\n const inputKeyPrefix = `${apiPlaygroundInputKeys.server}.${escapeDots(name)}`;\n\n return (\n <DifferentiatedInput\n key={name}\n name={name}\n schema={schema}\n inputKeyPrefix={inputKeyPrefix}\n />\n );\n })}\n </InputSectionContainer>\n );\n};\n"],"names":["ServerSection","apiReferenceData","selectedBaseUrlIndex","dependencies","servers","serverVariables","_a","jsx","InputSectionContainer","name","variable","schema","inputKeyPrefix","apiPlaygroundInputKeys","escapeDots","DifferentiatedInput"],"mappings":";;;;;AAOO,MAAMA,IAAgB,CAAC;AAAA,EAC5B,kBAAAC;AAAA,EACA,sBAAAC;AACF,MAGM;;AACJ,QAAM,EAAE,cAAAC,MAAiBF,GACnB,EAAE,SAAAG,MAAYD,KAAgB,CAAA;AAEpC,MAAI,CAACC,KAAW,OAAO,KAAKA,CAAO,EAAE,WAAW,EAAG,QAAO;AAE1D,QAAMC,KAAkBC,IADF,OAAO,OAAOF,CAAO,EACLF,CAAoB,MAAlC,gBAAAI,EAAqC;AAC7D,SAAI,CAACD,KAAmB,OAAO,KAAKA,CAAe,EAAE,WAAW,IAAU,OAExE,gBAAAE,EAACC,GAAA,EAAsB,MAAK,UACzB,UAAA,OAAO,QAAQH,CAAe,EAAE,IAAI,CAAC,CAACI,GAAMC,CAAQ,MAAM;AAEzD,UAAMC,IAAS;AAAA,MACb,GAAGD;AAAA,MACH,MAAM;AAAA,IAAA,GAEFE,IAAiB,GAAGC,EAAuB,MAAM,IAAIC,EAAWL,CAAI,CAAC;AAE3E,WACE,gBAAAF;AAAA,MAACQ;AAAA,MAAA;AAAA,QAEC,MAAAN;AAAA,QACA,QAAAE;AAAA,QACA,gBAAAC;AAAA,MAAA;AAAA,MAHKH;AAAA,IAAA;AAAA,EAMX,CAAC,EAAA,CACH;AAEJ;"}
@@ -0,0 +1,55 @@
1
+ import { jsxs as I, Fragment as y, jsx as m } from "react/jsx-runtime";
2
+ import { useState as A } from "react";
3
+ import { v4 as s } from "uuid";
4
+ import { isSchemaObject as h } from "../../../schemaGraph/utils.js";
5
+ import { AdditionalItemButton as x } from "../../../../api-playground/ApiPlayground/components/AdditionalItemButton.js";
6
+ import { cn as b } from "../../../../utils/cn.js";
7
+ import { DifferentiatedInput as c } from "./DifferentiatedInput.js";
8
+ const k = ({ schema: n, depth: d, parentNames: r, inputKeyPrefix: a }) => {
9
+ const u = s(), t = "items" in n && h(n.items) ? n.items : void 0, [e, l] = A([]);
10
+ if (!t) return null;
11
+ const p = () => {
12
+ const o = s(), i = [...e, o];
13
+ l(i);
14
+ };
15
+ return /* @__PURE__ */ I(y, { children: [
16
+ /* @__PURE__ */ m(
17
+ c,
18
+ {
19
+ schema: t,
20
+ arrayIndex: 0,
21
+ depth: (d ?? 0) + 1,
22
+ parentNames: r,
23
+ inputKeyPrefix: a
24
+ }
25
+ ),
26
+ e.map((o, i) => {
27
+ const f = i + 1;
28
+ return /* @__PURE__ */ m(
29
+ c,
30
+ {
31
+ schema: t,
32
+ arrayIndex: f,
33
+ depth: (d ?? 0) + 1,
34
+ parentNames: r,
35
+ inputKeyPrefix: a
36
+ },
37
+ o
38
+ );
39
+ }),
40
+ /* @__PURE__ */ m(
41
+ x,
42
+ {
43
+ label: "Add an item",
44
+ className: b(e.length > 0 && "mint:mt-4"),
45
+ onClick: p,
46
+ dataTestId: ("name" in t && t.name ? t.name : "") + "-add-item-button"
47
+ },
48
+ "add-item-button" + u
49
+ )
50
+ ] });
51
+ };
52
+ export {
53
+ k as ArrayInput
54
+ };
55
+ //# sourceMappingURL=ArrayInput.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ArrayInput.js","sources":["../../../../../src/api-playground-2/components/Request/inputs/ArrayInput.tsx"],"sourcesContent":["import { UUID } from '@mintlify/validation';\nimport { useState } from 'react';\nimport { v4 as uuidv4 } from 'uuid';\n\nimport { isSchemaObject } from '@/api-playground-2/schemaGraph/utils';\nimport { AdditionalItemButton } from '@/api-playground/ApiPlayground/components/AdditionalItemButton';\nimport { cn } from '@/utils/cn';\n\nimport { DifferentiatedInput, InputParams } from './DifferentiatedInput';\n\nexport const ArrayInput = ({ schema, depth, parentNames, inputKeyPrefix }: InputParams) => {\n const additionalItemButtonKey = uuidv4();\n const itemsSchema = 'items' in schema && isSchemaObject(schema.items) ? schema.items : undefined;\n const [additionalInputKeys, setAdditionalInputKeys] = useState<UUID[]>([]);\n\n if (!itemsSchema) return null;\n\n const onAddElement = () => {\n const uuid = uuidv4();\n const newAdditionalInputKeys = [...additionalInputKeys, uuid];\n setAdditionalInputKeys(newAdditionalInputKeys);\n };\n\n return (\n <>\n <DifferentiatedInput\n schema={itemsSchema}\n arrayIndex={0}\n depth={(depth ?? 0) + 1}\n parentNames={parentNames}\n inputKeyPrefix={inputKeyPrefix}\n />\n {additionalInputKeys.map((uuid, index) => {\n const indexOffset = index + 1;\n return (\n <DifferentiatedInput\n key={uuid}\n schema={itemsSchema}\n arrayIndex={indexOffset}\n depth={(depth ?? 0) + 1}\n parentNames={parentNames}\n inputKeyPrefix={inputKeyPrefix}\n />\n );\n })}\n <AdditionalItemButton\n key={'add-item-button' + additionalItemButtonKey}\n label=\"Add an item\"\n className={cn(additionalInputKeys.length > 0 && 'mint:mt-4')}\n onClick={onAddElement}\n dataTestId={\n ('name' in itemsSchema && itemsSchema.name ? itemsSchema.name : '') + '-add-item-button'\n }\n />\n </>\n );\n};\n"],"names":["ArrayInput","schema","depth","parentNames","inputKeyPrefix","additionalItemButtonKey","uuidv4","itemsSchema","isSchemaObject","additionalInputKeys","setAdditionalInputKeys","useState","onAddElement","uuid","newAdditionalInputKeys","jsxs","Fragment","jsx","DifferentiatedInput","index","indexOffset","AdditionalItemButton","cn"],"mappings":";;;;;;;AAUO,MAAMA,IAAa,CAAC,EAAE,QAAAC,GAAQ,OAAAC,GAAO,aAAAC,GAAa,gBAAAC,QAAkC;AACzF,QAAMC,IAA0BC,EAAA,GAC1BC,IAAc,WAAWN,KAAUO,EAAeP,EAAO,KAAK,IAAIA,EAAO,QAAQ,QACjF,CAACQ,GAAqBC,CAAsB,IAAIC,EAAiB,CAAA,CAAE;AAEzE,MAAI,CAACJ,EAAa,QAAO;AAEzB,QAAMK,IAAe,MAAM;AACzB,UAAMC,IAAOP,EAAA,GACPQ,IAAyB,CAAC,GAAGL,GAAqBI,CAAI;AAC5D,IAAAH,EAAuBI,CAAsB;AAAA,EAC/C;AAEA,SACE,gBAAAC,EAAAC,GAAA,EACE,UAAA;AAAA,IAAA,gBAAAC;AAAA,MAACC;AAAA,MAAA;AAAA,QACC,QAAQX;AAAA,QACR,YAAY;AAAA,QACZ,QAAQL,KAAS,KAAK;AAAA,QACtB,aAAAC;AAAA,QACA,gBAAAC;AAAA,MAAA;AAAA,IAAA;AAAA,IAEDK,EAAoB,IAAI,CAACI,GAAMM,MAAU;AACxC,YAAMC,IAAcD,IAAQ;AAC5B,aACE,gBAAAF;AAAA,QAACC;AAAA,QAAA;AAAA,UAEC,QAAQX;AAAA,UACR,YAAYa;AAAA,UACZ,QAAQlB,KAAS,KAAK;AAAA,UACtB,aAAAC;AAAA,UACA,gBAAAC;AAAA,QAAA;AAAA,QALKS;AAAA,MAAA;AAAA,IAQX,CAAC;AAAA,IACD,gBAAAI;AAAA,MAACI;AAAA,MAAA;AAAA,QAEC,OAAM;AAAA,QACN,WAAWC,EAAGb,EAAoB,SAAS,KAAK,WAAW;AAAA,QAC3D,SAASG;AAAA,QACT,aACG,UAAUL,KAAeA,EAAY,OAAOA,EAAY,OAAO,MAAM;AAAA,MAAA;AAAA,MALnE,oBAAoBF;AAAA,IAAA;AAAA,EAO3B,GACF;AAEJ;"}
@@ -0,0 +1,48 @@
1
+ import { jsx as n } from "react/jsx-runtime";
2
+ import { getDifferentiatedType as c } from "../../../schemaGraph/utils.js";
3
+ import { ArrayInput as a } from "./ArrayInput.js";
4
+ import { FileInput as f } from "./FileInput.js";
5
+ import { InputContainer as t } from "./InputContainer.js";
6
+ import { NullInput as l } from "./NullInput.js";
7
+ import { NumberInput as i } from "./NumberInput.js";
8
+ import { ObjectInput as u } from "./ObjectInput.js";
9
+ import { OneOfInput as d } from "./OneOfInput.js";
10
+ import { SelectInput as r } from "./SelectInput.js";
11
+ import { StringInput as h } from "./StringInput.js";
12
+ import { TextInput as y } from "./TextInput.js";
13
+ const S = ({ ...e }) => {
14
+ switch (c(e.schema)) {
15
+ case "oneOf":
16
+ return /* @__PURE__ */ n(d, { ...e });
17
+ case "string": {
18
+ const m = e.isBody && e.depth === 0 || e.skipContainer ? y : h;
19
+ return /* @__PURE__ */ n(t, { ...e, children: /* @__PURE__ */ n(m, { ...e }) });
20
+ }
21
+ case "object":
22
+ return e.isBody && e.depth === 0 || e.skipContainer ? /* @__PURE__ */ n(u, { ...e }) : /* @__PURE__ */ n(t, { ...e, children: /* @__PURE__ */ n(u, { ...e }) });
23
+ case "number":
24
+ return /* @__PURE__ */ n(t, { ...e, children: /* @__PURE__ */ n(i, { ...e, numberType: "number" }) });
25
+ case "integer":
26
+ return /* @__PURE__ */ n(t, { ...e, children: /* @__PURE__ */ n(i, { ...e, numberType: "integer" }) });
27
+ case "array":
28
+ return /* @__PURE__ */ n(t, { ...e, children: /* @__PURE__ */ n(a, { ...e }) });
29
+ case "boolean":
30
+ return /* @__PURE__ */ n(t, { ...e, children: /* @__PURE__ */ n(r, { ...e, enumType: "boolean" }) });
31
+ case "enum<string>":
32
+ return /* @__PURE__ */ n(t, { ...e, children: /* @__PURE__ */ n(r, { ...e, enumType: "string" }) });
33
+ case "enum<number>":
34
+ return /* @__PURE__ */ n(t, { ...e, children: /* @__PURE__ */ n(r, { ...e, enumType: "number" }) });
35
+ case "enum<integer>":
36
+ return /* @__PURE__ */ n(t, { ...e, children: /* @__PURE__ */ n(r, { ...e, enumType: "integer" }) });
37
+ case "file":
38
+ return /* @__PURE__ */ n(t, { ...e, children: /* @__PURE__ */ n(f, { ...e }) });
39
+ case "null":
40
+ return /* @__PURE__ */ n(t, { ...e, children: /* @__PURE__ */ n(l, {}) });
41
+ default:
42
+ return null;
43
+ }
44
+ };
45
+ export {
46
+ S as DifferentiatedInput
47
+ };
48
+ //# sourceMappingURL=DifferentiatedInput.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DifferentiatedInput.js","sources":["../../../../../src/api-playground-2/components/Request/inputs/DifferentiatedInput.tsx"],"sourcesContent":["import { getDifferentiatedType } from '@/api-playground-2/schemaGraph/utils';\nimport type { ResolvedSchemaObject } from '@/api-playground-2/types';\n\nimport { ArrayInput } from './ArrayInput';\nimport { FileInput } from './FileInput';\nimport { InputContainer } from './InputContainer';\nimport { NullInput } from './NullInput';\nimport { NumberInput } from './NumberInput';\nimport { ObjectInput } from './ObjectInput';\nimport { OneOfInput } from './OneOfInput';\nimport { SelectInput } from './SelectInput';\nimport { StringInput } from './StringInput';\nimport { TextInput } from './TextInput';\n\nexport type InputParams = {\n name?: string;\n schema: ResolvedSchemaObject;\n clearValue?: (() => void) | undefined;\n // TODO - Api Playground Refactor: build name, name with parents dot style, name with parents deepObject style so that we don't have to pass parentNames, style, and explode to every component\n parentNames?: string[];\n style?: string;\n explode?: boolean;\n depth?: number;\n inputKeyPrefix: string;\n arrayIndex?: number;\n};\n\nexport type InputContainerParams = InputParams & {\n defaultExpanded?: boolean;\n typeDropdown?: React.ReactNode;\n children?: React.ReactNode;\n isBody?: boolean;\n skipContainer?: boolean;\n arrayIndex?: number;\n};\n\nexport const DifferentiatedInput = ({ ...props }: InputParams & InputContainerParams) => {\n const differentiatedType = getDifferentiatedType(props.schema);\n\n switch (differentiatedType) {\n case 'oneOf': {\n return <OneOfInput {...props} />;\n }\n case 'string': {\n const Input =\n (props.isBody && props.depth === 0) || props.skipContainer ? TextInput : StringInput;\n return (\n <InputContainer {...props}>\n <Input {...props} />\n </InputContainer>\n );\n }\n\n case 'object': {\n if ((props.isBody && props.depth === 0) || props.skipContainer) {\n return <ObjectInput {...props} />;\n }\n return (\n <InputContainer {...props}>\n <ObjectInput {...props} />\n </InputContainer>\n );\n }\n case 'number': {\n return (\n <InputContainer {...props}>\n <NumberInput {...props} numberType=\"number\" />\n </InputContainer>\n );\n }\n case 'integer': {\n return (\n <InputContainer {...props}>\n <NumberInput {...props} numberType=\"integer\" />\n </InputContainer>\n );\n }\n case 'array': {\n return (\n <InputContainer {...props}>\n <ArrayInput {...props} />\n </InputContainer>\n );\n }\n case 'boolean': {\n return (\n <InputContainer {...props}>\n <SelectInput {...props} enumType=\"boolean\" />\n </InputContainer>\n );\n }\n case 'enum<string>': {\n return (\n <InputContainer {...props}>\n <SelectInput {...props} enumType=\"string\" />\n </InputContainer>\n );\n }\n case 'enum<number>': {\n return (\n <InputContainer {...props}>\n <SelectInput {...props} enumType=\"number\" />\n </InputContainer>\n );\n }\n case 'enum<integer>': {\n return (\n <InputContainer {...props}>\n <SelectInput {...props} enumType=\"integer\" />\n </InputContainer>\n );\n }\n case 'file': {\n return (\n <InputContainer {...props}>\n <FileInput {...props} />\n </InputContainer>\n );\n }\n case 'null': {\n return (\n <InputContainer {...props}>\n <NullInput />\n </InputContainer>\n );\n }\n default: {\n return null;\n }\n }\n};\n"],"names":["DifferentiatedInput","props","getDifferentiatedType","jsx","OneOfInput","Input","TextInput","StringInput","InputContainer","ObjectInput","NumberInput","ArrayInput","SelectInput","FileInput","NullInput"],"mappings":";;;;;;;;;;;;AAoCO,MAAMA,IAAsB,CAAC,EAAE,GAAGC,QAAgD;AAGvF,UAF2BC,EAAsBD,EAAM,MAAM,GAErD;AAAA,IACN,KAAK;AACH,aAAO,gBAAAE,EAACC,GAAA,EAAY,GAAGH,EAAA,CAAO;AAAA,IAEhC,KAAK,UAAU;AACb,YAAMI,IACHJ,EAAM,UAAUA,EAAM,UAAU,KAAMA,EAAM,gBAAgBK,IAAYC;AAC3E,aACE,gBAAAJ,EAACK,KAAgB,GAAGP,GAClB,4BAACI,GAAA,EAAO,GAAGJ,GAAO,EAAA,CACpB;AAAA,IAEJ;AAAA,IAEA,KAAK;AACH,aAAKA,EAAM,UAAUA,EAAM,UAAU,KAAMA,EAAM,gBACxC,gBAAAE,EAACM,GAAA,EAAa,GAAGR,EAAA,CAAO,IAG/B,gBAAAE,EAACK,KAAgB,GAAGP,GAClB,4BAACQ,GAAA,EAAa,GAAGR,GAAO,EAAA,CAC1B;AAAA,IAGJ,KAAK;AACH,aACE,gBAAAE,EAACK,GAAA,EAAgB,GAAGP,GAClB,UAAA,gBAAAE,EAACO,KAAa,GAAGT,GAAO,YAAW,SAAA,CAAS,EAAA,CAC9C;AAAA,IAGJ,KAAK;AACH,aACE,gBAAAE,EAACK,GAAA,EAAgB,GAAGP,GAClB,UAAA,gBAAAE,EAACO,KAAa,GAAGT,GAAO,YAAW,UAAA,CAAU,EAAA,CAC/C;AAAA,IAGJ,KAAK;AACH,aACE,gBAAAE,EAACK,KAAgB,GAAGP,GAClB,4BAACU,GAAA,EAAY,GAAGV,GAAO,EAAA,CACzB;AAAA,IAGJ,KAAK;AACH,aACE,gBAAAE,EAACK,GAAA,EAAgB,GAAGP,GAClB,UAAA,gBAAAE,EAACS,KAAa,GAAGX,GAAO,UAAS,UAAA,CAAU,EAAA,CAC7C;AAAA,IAGJ,KAAK;AACH,aACE,gBAAAE,EAACK,GAAA,EAAgB,GAAGP,GAClB,UAAA,gBAAAE,EAACS,KAAa,GAAGX,GAAO,UAAS,SAAA,CAAS,EAAA,CAC5C;AAAA,IAGJ,KAAK;AACH,aACE,gBAAAE,EAACK,GAAA,EAAgB,GAAGP,GAClB,UAAA,gBAAAE,EAACS,KAAa,GAAGX,GAAO,UAAS,SAAA,CAAS,EAAA,CAC5C;AAAA,IAGJ,KAAK;AACH,aACE,gBAAAE,EAACK,GAAA,EAAgB,GAAGP,GAClB,UAAA,gBAAAE,EAACS,KAAa,GAAGX,GAAO,UAAS,UAAA,CAAU,EAAA,CAC7C;AAAA,IAGJ,KAAK;AACH,aACE,gBAAAE,EAACK,KAAgB,GAAGP,GAClB,4BAACY,GAAA,EAAW,GAAGZ,GAAO,EAAA,CACxB;AAAA,IAGJ,KAAK;AACH,+BACGO,GAAA,EAAgB,GAAGP,GAClB,UAAA,gBAAAE,EAACW,KAAU,GACb;AAAA,IAGJ;AACE,aAAO;AAAA,EACT;AAEJ;"}