@mintlify/msft-sdk 1.1.24 → 1.1.26

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 (156) hide show
  1. package/dist/api-playground/ApiPlayground/ApiPlaygroundContext.js.map +1 -1
  2. package/dist/api-playground/ApiPlayground/Request/BodySection.js.map +1 -1
  3. package/dist/api-playground/ApiPlayground/Request/ParameterSection.js.map +1 -1
  4. package/dist/api-playground/ApiPlayground/Request/PlaygroundModal.js +46 -45
  5. package/dist/api-playground/ApiPlayground/Request/PlaygroundModal.js.map +1 -1
  6. package/dist/api-playground/ApiPlayground/Request/SecuritySection.js.map +1 -1
  7. package/dist/api-playground/ApiPlayground/Request/ServerSection.js.map +1 -1
  8. package/dist/api-playground/ApiPlayground/Request/index.js +18 -18
  9. package/dist/api-playground/ApiPlayground/Request/index.js.map +1 -1
  10. package/dist/api-playground/ApiPlayground/Request/inputs/ArrayInput.js.map +1 -1
  11. package/dist/api-playground/ApiPlayground/Request/inputs/FileInput.js.map +1 -1
  12. package/dist/api-playground/ApiPlayground/Request/inputs/NullInput.js.map +1 -1
  13. package/dist/api-playground/ApiPlayground/Request/inputs/NumberInput.js.map +1 -1
  14. package/dist/api-playground/ApiPlayground/Request/inputs/ObjectInput.js.map +1 -1
  15. package/dist/api-playground/ApiPlayground/Request/inputs/RecursiveInput.js.map +1 -1
  16. package/dist/api-playground/ApiPlayground/Request/inputs/SelectInput.js.map +1 -1
  17. package/dist/api-playground/ApiPlayground/Request/inputs/StringInput.js.map +1 -1
  18. package/dist/api-playground/ApiPlayground/Request/inputs/TextInput.js.map +1 -1
  19. package/dist/api-playground/ApiPlayground/Response/CopyFileToClipboardButton.js.map +1 -1
  20. package/dist/api-playground/ApiPlayground/Response/DownloadFileButton.js.map +1 -1
  21. package/dist/api-playground/ApiPlayground/Response/ResponseBody/CodeResponseContent.js.map +1 -1
  22. package/dist/api-playground/ApiPlayground/Response/ResponseBody/index.js.map +1 -1
  23. package/dist/api-playground/ApiPlayground/Response/ResponseError.js.map +1 -1
  24. package/dist/api-playground/ApiPlayground/Response/ResponseHeaders.js.map +1 -1
  25. package/dist/api-playground/ApiPlayground/Response/ResponsePlaceholder.js.map +1 -1
  26. package/dist/api-playground/ApiPlayground/Response/ResponseTable.js.map +1 -1
  27. package/dist/api-playground/ApiPlayground/Response/ResponseTopbar.js.map +1 -1
  28. package/dist/api-playground/ApiPlayground/Response/index.js.map +1 -1
  29. package/dist/api-playground/ApiPlayground/components/AdditionalPropertyButton.js.map +1 -1
  30. package/dist/api-playground/ApiPlayground/components/ArrayCount.js.map +1 -1
  31. package/dist/api-playground/ApiPlayground/components/EndpointsMenu.js +20 -21
  32. package/dist/api-playground/ApiPlayground/components/EndpointsMenu.js.map +1 -1
  33. package/dist/api-playground/ApiPlayground/components/EndpointsMenuLink.js +10 -11
  34. package/dist/api-playground/ApiPlayground/components/EndpointsMenuLink.js.map +1 -1
  35. package/dist/api-playground/ApiPlayground/components/InputContainer.js.map +1 -1
  36. package/dist/api-playground/ApiPlayground/components/InputSectionContainer.js.map +1 -1
  37. package/dist/api-playground/ApiPlayground/components/ObjectExpandButton.js.map +1 -1
  38. package/dist/api-playground/ApiPlayground/components/PathHeader.js.map +1 -1
  39. package/dist/api-playground/ApiPlayground/components/PlaygroundModalWrapper.js.map +1 -1
  40. package/dist/api-playground/ApiPlayground/components/TrashButton.js.map +1 -1
  41. package/dist/api-playground/ApiPlayground/components/TypeDropdown.js.map +1 -1
  42. package/dist/api-playground/ApiPlayground/index.js +30 -30
  43. package/dist/api-playground/ApiPlayground/index.js.map +1 -1
  44. package/dist/api-playground/EndpointFields/ParamFields/PrimitiveParamField/NumberMetadata.js.map +1 -1
  45. package/dist/api-playground/EndpointFields/ParamFields/PrimitiveParamField/StringMetadata.js.map +1 -1
  46. package/dist/api-playground/EndpointFields/ParamFields/PrimitiveParamField/index.js.map +1 -1
  47. package/dist/api-playground/EndpointFields/ParamFields/RecursiveParamField.js.map +1 -1
  48. package/dist/api-playground/EndpointFields/components/Description.js.map +1 -1
  49. package/dist/api-playground/EndpointFields/components/OneOfDropdown.js.map +1 -1
  50. package/dist/api-playground/EndpointFields/components/OptionDropdown.js.map +1 -1
  51. package/dist/api-playground/EndpointFields/components/SectionHeading.js.map +1 -1
  52. package/dist/api-playground/EndpointFields/index.js.map +1 -1
  53. package/dist/api-playground-2/Api.js.map +1 -1
  54. package/dist/api-playground-2/ApiExamples.js.map +1 -1
  55. package/dist/api-playground-2/ApiFields.js.map +1 -1
  56. package/dist/api-playground-2/components/EndpointFields/EndpointSecurity.js.map +1 -1
  57. package/dist/api-playground-2/components/EndpointFields/fields/NumberMetadata.js.map +1 -1
  58. package/dist/api-playground-2/components/EndpointFields/fields/PrimitiveParamField.js.map +1 -1
  59. package/dist/api-playground-2/components/EndpointFields/fields/SimpleArrayParamField.js.map +1 -1
  60. package/dist/api-playground-2/components/EndpointFields/fields/SimpleObjectParamField.js.map +1 -1
  61. package/dist/api-playground-2/components/EndpointFields/fields/SimplePrimitiveParamField.js.map +1 -1
  62. package/dist/api-playground-2/components/EndpointFields/fields/StringMetadata.js.map +1 -1
  63. package/dist/api-playground-2/components/Example/RequestExample.js +17 -15
  64. package/dist/api-playground-2/components/Example/RequestExample.js.map +1 -1
  65. package/dist/api-playground-2/components/Example/ResponseExample.js.map +1 -1
  66. package/dist/api-playground-2/components/Request/InputSectionContainer.js.map +1 -1
  67. package/dist/api-playground-2/components/TypeDropdown.js.map +1 -1
  68. package/dist/api-playground-2/constants/index.js +12 -3
  69. package/dist/api-playground-2/constants/index.js.map +1 -1
  70. package/dist/api-playground-2/contexts/ApiPlaygroundContext.js.map +1 -1
  71. package/dist/api-playground-2/generators/generateInteractiveCodeSample.js +10 -10
  72. package/dist/api-playground-2/generators/generateInteractiveCodeSample.js.map +1 -1
  73. package/dist/api-playground-2/generators/generateSnippetMap.js +24 -24
  74. package/dist/api-playground-2/generators/generateSnippetMap.js.map +1 -1
  75. package/dist/api-playground-2/hooks/useSendPlaygroundRequest.js.map +1 -1
  76. package/dist/api-playground-2/schemaGraph/addUniqueKeysToSchema.js +41 -0
  77. package/dist/api-playground-2/schemaGraph/addUniqueKeysToSchema.js.map +1 -0
  78. package/dist/api-playground-2/schemaGraph/errors.js +19 -0
  79. package/dist/api-playground-2/schemaGraph/errors.js.map +1 -0
  80. package/dist/api-playground-2/schemaGraph/getApiReferenceDataFromGraph.js +26 -0
  81. package/dist/api-playground-2/schemaGraph/getApiReferenceDataFromGraph.js.map +1 -0
  82. package/dist/api-playground-2/schemaGraph/getDocumentProperties.js +58 -0
  83. package/dist/api-playground-2/schemaGraph/getDocumentProperties.js.map +1 -0
  84. package/dist/api-playground-2/schemaGraph/getSchemaGraphOperationData.js +77 -0
  85. package/dist/api-playground-2/schemaGraph/getSchemaGraphOperationData.js.map +1 -0
  86. package/dist/api-playground-2/schemaGraph/getSchemaGraphSchemaData.js +16 -0
  87. package/dist/api-playground-2/schemaGraph/getSchemaGraphSchemaData.js.map +1 -0
  88. package/dist/api-playground-2/schemaGraph/processExamples.js +111 -34
  89. package/dist/api-playground-2/schemaGraph/processExamples.js.map +1 -1
  90. package/dist/api-playground-2/schemaGraph/reduceCompositions.js +283 -0
  91. package/dist/api-playground-2/schemaGraph/reduceCompositions.js.map +1 -0
  92. package/dist/api-playground-2/schemaGraph/resolveGraphNode.js +61 -0
  93. package/dist/api-playground-2/schemaGraph/resolveGraphNode.js.map +1 -0
  94. package/dist/api-playground-2/schemaGraph/resolveOperationWithDependencies.js +149 -0
  95. package/dist/api-playground-2/schemaGraph/resolveOperationWithDependencies.js.map +1 -0
  96. package/dist/api-playground-2/schemaGraph/resolveSchemaWithDependencies.js +33 -0
  97. package/dist/api-playground-2/schemaGraph/resolveSchemaWithDependencies.js.map +1 -0
  98. package/dist/api-playground-2/schemaGraph/sortSchemaByRequired.js +35 -0
  99. package/dist/api-playground-2/schemaGraph/sortSchemaByRequired.js.map +1 -0
  100. package/dist/api-playground-2/schemaGraph/utils.js +144 -98
  101. package/dist/api-playground-2/schemaGraph/utils.js.map +1 -1
  102. package/dist/common/parseApiTargetFromMetadata.js +24 -0
  103. package/dist/common/parseApiTargetFromMetadata.js.map +1 -0
  104. package/dist/common/parseOpenApiString.js +42 -0
  105. package/dist/common/parseOpenApiString.js.map +1 -0
  106. package/dist/components/Api/ApiReferenceProvider.js +6 -15
  107. package/dist/components/Api/ApiReferenceProvider.js.map +1 -1
  108. package/dist/components/Api/ErrorBoundary.js.map +1 -1
  109. package/dist/components/Api/Expandable.js.map +1 -1
  110. package/dist/components/Api/Markdown.js.map +1 -1
  111. package/dist/components/Api/MethodPill.js.map +1 -1
  112. package/dist/components/Api/Param.js.map +1 -1
  113. package/dist/components/Api/colors.js.map +1 -1
  114. package/dist/components/content-components/CodeGroupSelect/CodeGroupCopyButton.js.map +1 -1
  115. package/dist/components/content-components/CodeGroupSelect/CodeSelectDropdown.js.map +1 -1
  116. package/dist/components/content-components/CodeGroupSelect/index.js.map +1 -1
  117. package/dist/components/content-components/code-block.js.map +1 -1
  118. package/dist/components/content-components/code-group.js.map +1 -1
  119. package/dist/components/content-components/code-snippet.js.map +1 -1
  120. package/dist/components/content-components/code-snippets.js.map +1 -1
  121. package/dist/components/content-components/getNodeText.js.map +1 -1
  122. package/dist/components/docsLayout.js +29 -27
  123. package/dist/components/docsLayout.js.map +1 -1
  124. package/dist/components/nav-tree/index.js +165 -156
  125. package/dist/components/nav-tree/index.js.map +1 -1
  126. package/dist/contexts/CodeExampleLabelContext.js.map +1 -1
  127. package/dist/contexts/ConfigContext.js +61 -12
  128. package/dist/contexts/ConfigContext.js.map +1 -1
  129. package/dist/contexts/EndpointLocationContext.js.map +1 -1
  130. package/dist/contexts/MDXContentContext.js +0 -1
  131. package/dist/contexts/MDXContentContext.js.map +1 -1
  132. package/dist/hooks/useApiPlaygroundDisplay.js.map +1 -1
  133. package/dist/hooks/useApiPlaygroundInputs.js.map +1 -1
  134. package/dist/hooks/useBaseUrlOptions.js.map +1 -1
  135. package/dist/hooks/useEndpoint.js.map +1 -1
  136. package/dist/hooks/useKeyboardShortcut.js.map +1 -1
  137. package/dist/hooks/useMDXContent.js.map +1 -1
  138. package/dist/hooks/useMDXContentController/useApiPlaygroundInputs.js.map +1 -1
  139. package/dist/hooks/useMDXContentController/useMDXContentCallbacks/useSetApiBaseIndexCallback.js.map +1 -1
  140. package/dist/hooks/useMDXContentController/useMDXContentCallbacks/useSetApiPlaygroundInputsCallback.js.map +1 -1
  141. package/dist/hooks/usePlaygroundSchemaOptions.js.map +1 -1
  142. package/dist/hooks/usePrefilledInputs/index.js.map +1 -1
  143. package/dist/hooks/usePrefilledInputs/storedServerVariables.js.map +1 -1
  144. package/dist/hooks/useSecurityOption.js.map +1 -1
  145. package/dist/hooks/useSendPlaygroundRequest.js.map +1 -1
  146. package/dist/index.d.ts +129 -11
  147. package/dist/index.js +156 -144
  148. package/dist/index.js.map +1 -1
  149. package/dist/styles.css +1 -1
  150. package/package.json +1 -1
  151. package/dist/hooks/useCurrentPath.js +0 -17
  152. package/dist/hooks/useCurrentPath.js.map +0 -1
  153. package/dist/utils/decodeSlug.js +0 -8
  154. package/dist/utils/decodeSlug.js.map +0 -1
  155. package/dist/utils/optionallyAddLeadingSlash.js +0 -7
  156. package/dist/utils/optionallyAddLeadingSlash.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"InputSectionContainer.js","sources":["../../../../src/api-playground/ApiPlayground/components/InputSectionContainer.tsx"],"sourcesContent":["'use client';\n\nimport { ReactNode, useState } from 'react';\n\nimport { CheckmarkCircleRegular, ErrorCircleRegular } from '@fluentui/react-icons';\nimport { ChevronRightFilled } 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\nexport const InputSectionContainer = ({\n name,\n validationState,\n children,\n rightElement,\n}: InputSectionContainerParams) => {\n const [expanded, setExpanded] = useState(true);\n\n return (\n <div>\n <button\n aria-label=\"Expand Input Section\"\n onClick={() => setExpanded((prev) => !prev)}\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 mint: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(\n 'mint:h-3 mint:w-3 mint:bg-gray-400 mint:dark:bg-gray-500 mint:transition-transform',\n expanded && 'mint:rotate-180'\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 {rightElement}\n </button>\n {/* since the UI components maintain some state, we can't unmount them - hide instead */}\n <div\n className={cn(\n 'mint:bg-background-light mint: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 mint: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","jsxs","prev","cn","jsx","ChevronRightFilled","ValidIcon","InvalidIcon","CheckmarkCircleRegular","ErrorCircleRegular"],"mappings":";;;;AAeO,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;AAE7C,2BACG,OAAA,EACC,UAAA;AAAA,IAAA,gBAAAC;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,cAAW;AAAA,QACX,SAAS,MAAMF,EAAY,CAACG,MAAS,CAACA,CAAI;AAAA,QAC1C,WAAWC;AAAA,UACT;AAAA,UACAL,IAAW,oEAAoE;AAAA,QAAA;AAAA,QAGjF,UAAA;AAAA,UAAA,gBAAAG,EAAC,OAAA,EAAI,WAAU,8CACb,UAAA;AAAA,YAAA,gBAAAG;AAAA,cAACC;AAAA,cAAA;AAAA,gBACC,WAAWF;AAAA,kBACT;AAAA,kBACAL,KAAY;AAAA,gBAAA;AAAA,cACd;AAAA,YAAA;AAAA,YAEF,gBAAAG,EAAC,OAAA,EAAI,WAAU,0DACb,UAAA;AAAA,cAAA,gBAAAG,EAAC,OAAA,EAAI,WAAU,2FACZ,UAAAV,GACH;AAAA,cACCC,IACCA,MAAoB,YAClB,gBAAAS,EAACE,KAAU,IAEX,gBAAAF,EAACG,KAAY,IAEb;AAAA,YAAA,EAAA,CACN;AAAA,UAAA,GACF;AAAA,UACCV;AAAA,QAAA;AAAA,MAAA;AAAA,IAAA;AAAA,IAGH,gBAAAI;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,WAAWE;AAAA,UACT;AAAA,UACAL,KAAYF,IAAW,KAAK;AAAA,QAAA;AAAA,QAI9B,UAAA;AAAA,UAAA,gBAAAQ,EAAC,OAAA,EAAI;AAAA,UACJR;AAAA,QAAA;AAAA,MAAA;AAAA,IAAA;AAAA,EACH,GACF;AAEJ,GAEMU,IAAY,MAAM,gBAAAF,EAACI,GAAA,EAAuB,WAAU,sCAAA,CAAsC,GAE1FD,IAAc,MAAM,gBAAAH,EAACK,GAAA,EAAmB,WAAU,sCAAA,CAAsC;"}
1
+ {"version":3,"file":"InputSectionContainer.js","sources":["../../../../src/api-playground/ApiPlayground/components/InputSectionContainer.tsx"],"sourcesContent":["\nimport { ReactNode, useState } from 'react';\n\nimport { CheckmarkCircleRegular, ErrorCircleRegular } from '@fluentui/react-icons';\nimport { ChevronRightFilled } 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\nexport const InputSectionContainer = ({\n name,\n validationState,\n children,\n rightElement,\n}: InputSectionContainerParams) => {\n const [expanded, setExpanded] = useState(true);\n\n return (\n <div>\n <button\n aria-label=\"Expand Input Section\"\n onClick={() => setExpanded((prev) => !prev)}\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 mint: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(\n 'mint:h-3 mint:w-3 mint:bg-gray-400 mint:dark:bg-gray-500 mint:transition-transform',\n expanded && 'mint:rotate-180'\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 {rightElement}\n </button>\n {/* since the UI components maintain some state, we can't unmount them - hide instead */}\n <div\n className={cn(\n 'mint:bg-background-light mint: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 mint: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","jsxs","prev","cn","jsx","ChevronRightFilled","ValidIcon","InvalidIcon","CheckmarkCircleRegular","ErrorCircleRegular"],"mappings":";;;;AAcO,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;AAE7C,2BACG,OAAA,EACC,UAAA;AAAA,IAAA,gBAAAC;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,cAAW;AAAA,QACX,SAAS,MAAMF,EAAY,CAACG,MAAS,CAACA,CAAI;AAAA,QAC1C,WAAWC;AAAA,UACT;AAAA,UACAL,IAAW,oEAAoE;AAAA,QAAA;AAAA,QAGjF,UAAA;AAAA,UAAA,gBAAAG,EAAC,OAAA,EAAI,WAAU,8CACb,UAAA;AAAA,YAAA,gBAAAG;AAAA,cAACC;AAAA,cAAA;AAAA,gBACC,WAAWF;AAAA,kBACT;AAAA,kBACAL,KAAY;AAAA,gBAAA;AAAA,cACd;AAAA,YAAA;AAAA,YAEF,gBAAAG,EAAC,OAAA,EAAI,WAAU,0DACb,UAAA;AAAA,cAAA,gBAAAG,EAAC,OAAA,EAAI,WAAU,2FACZ,UAAAV,GACH;AAAA,cACCC,IACCA,MAAoB,YAClB,gBAAAS,EAACE,KAAU,IAEX,gBAAAF,EAACG,KAAY,IAEb;AAAA,YAAA,EAAA,CACN;AAAA,UAAA,GACF;AAAA,UACCV;AAAA,QAAA;AAAA,MAAA;AAAA,IAAA;AAAA,IAGH,gBAAAI;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,WAAWE;AAAA,UACT;AAAA,UACAL,KAAYF,IAAW,KAAK;AAAA,QAAA;AAAA,QAI9B,UAAA;AAAA,UAAA,gBAAAQ,EAAC,OAAA,EAAI;AAAA,UACJR;AAAA,QAAA;AAAA,MAAA;AAAA,IAAA;AAAA,EACH,GACF;AAEJ,GAEMU,IAAY,MAAM,gBAAAF,EAACI,GAAA,EAAuB,WAAU,sCAAA,CAAsC,GAE1FD,IAAc,MAAM,gBAAAH,EAACK,GAAA,EAAmB,WAAU,sCAAA,CAAsC;"}
@@ -1 +1 @@
1
- {"version":3,"file":"ObjectExpandButton.js","sources":["../../../../src/api-playground/ApiPlayground/components/ObjectExpandButton.tsx"],"sourcesContent":["'use client';\n\nimport { ChevronUpDownFilled } from '@fluentui/react-icons';\n\ntype ExpandButtonProps = {\n onClick: () => void;\n count?: number;\n labeled?: boolean;\n};\n\nexport const ObjectExpandButton = ({ onClick, count, labeled }: ExpandButtonProps) => {\n let expandText = '';\n if (count === 0) {\n return null;\n }\n if (count === 1) {\n expandText = 'show 1 property';\n } else {\n expandText = `show ${count} properties`;\n }\n\n if (labeled) {\n return (\n <button\n aria-label={expandText}\n onClick={onClick}\n className=\"mint:flex mint:justify-center mint:items-center mint:pt-0.5 mint:pb-0.5 mint:pl-2 mint:pr-1.5 mint:rounded-lg mint:border mint:border-gray-200 mint:dark:border-gray-800 mint:text-gray-600 mint:dark:text-gray-400\"\n >\n <span className=\"mint:text-sm mint:font-sans mint:font-medium mint:mr-1 mint:whitespace-nowrap\">{expandText}</span>\n <ChevronUpDownFilled className=\"mint:w-3.5 mint:h-3.5\" />\n </button>\n );\n } else {\n return (\n <button\n aria-label={expandText}\n onClick={onClick}\n className=\"mint:px-1 mint:text-gray-600 mint:dark:text-gray-500\"\n >\n <ChevronUpDownFilled className=\"mint:w-3.5 mint:h-3.5\" />\n </button>\n );\n }\n};\n"],"names":["ObjectExpandButton","onClick","count","labeled","expandText","jsxs","jsx","ChevronUpDownFilled"],"mappings":";;AAUO,MAAMA,IAAqB,CAAC,EAAE,SAAAC,GAAS,OAAAC,GAAO,SAAAC,QAAiC;AACpF,MAAIC,IAAa;AACjB,SAAIF,MAAU,IACL,QAELA,MAAU,IACZE,IAAa,oBAEbA,IAAa,QAAQF,CAAK,eAGxBC,IAEA,gBAAAE;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,cAAYD;AAAA,MACZ,SAAAH;AAAA,MACA,WAAU;AAAA,MAEV,UAAA;AAAA,QAAA,gBAAAK,EAAC,QAAA,EAAK,WAAU,iFAAiF,UAAAF,GAAW;AAAA,QAC5G,gBAAAE,EAACC,GAAA,EAAoB,WAAU,wBAAA,CAAwB;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA,IAKzD,gBAAAD;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,cAAYF;AAAA,MACZ,SAAAH;AAAA,MACA,WAAU;AAAA,MAEV,UAAA,gBAAAK,EAACC,GAAA,EAAoB,WAAU,wBAAA,CAAwB;AAAA,IAAA;AAAA,EAAA;AAI/D;"}
1
+ {"version":3,"file":"ObjectExpandButton.js","sources":["../../../../src/api-playground/ApiPlayground/components/ObjectExpandButton.tsx"],"sourcesContent":["\nimport { ChevronUpDownFilled } from '@fluentui/react-icons';\n\ntype ExpandButtonProps = {\n onClick: () => void;\n count?: number;\n labeled?: boolean;\n};\n\nexport const ObjectExpandButton = ({ onClick, count, labeled }: ExpandButtonProps) => {\n let expandText = '';\n if (count === 0) {\n return null;\n }\n if (count === 1) {\n expandText = 'show 1 property';\n } else {\n expandText = `show ${count} properties`;\n }\n\n if (labeled) {\n return (\n <button\n aria-label={expandText}\n onClick={onClick}\n className=\"mint:flex mint:justify-center mint:items-center mint:pt-0.5 mint:pb-0.5 mint:pl-2 mint:pr-1.5 mint:rounded-lg mint:border mint:border-gray-200 mint:dark:border-gray-800 mint:text-gray-600 mint:dark:text-gray-400\"\n >\n <span className=\"mint:text-sm mint:font-sans mint:font-medium mint:mr-1 mint:whitespace-nowrap\">{expandText}</span>\n <ChevronUpDownFilled className=\"mint:w-3.5 mint:h-3.5\" />\n </button>\n );\n } else {\n return (\n <button\n aria-label={expandText}\n onClick={onClick}\n className=\"mint:px-1 mint:text-gray-600 mint:dark:text-gray-500\"\n >\n <ChevronUpDownFilled className=\"mint:w-3.5 mint:h-3.5\" />\n </button>\n );\n }\n};\n"],"names":["ObjectExpandButton","onClick","count","labeled","expandText","jsxs","jsx","ChevronUpDownFilled"],"mappings":";;AASO,MAAMA,IAAqB,CAAC,EAAE,SAAAC,GAAS,OAAAC,GAAO,SAAAC,QAAiC;AACpF,MAAIC,IAAa;AACjB,SAAIF,MAAU,IACL,QAELA,MAAU,IACZE,IAAa,oBAEbA,IAAa,QAAQF,CAAK,eAGxBC,IAEA,gBAAAE;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,cAAYD;AAAA,MACZ,SAAAH;AAAA,MACA,WAAU;AAAA,MAEV,UAAA;AAAA,QAAA,gBAAAK,EAAC,QAAA,EAAK,WAAU,iFAAiF,UAAAF,GAAW;AAAA,QAC5G,gBAAAE,EAACC,GAAA,EAAoB,WAAU,wBAAA,CAAwB;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA,IAKzD,gBAAAD;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,cAAYF;AAAA,MACZ,SAAAH;AAAA,MACA,WAAU;AAAA,MAEV,UAAA,gBAAAK,EAACC,GAAA,EAAoB,WAAU,wBAAA,CAAwB;AAAA,IAAA;AAAA,EAAA;AAI/D;"}
@@ -1 +1 @@
1
- {"version":3,"file":"PathHeader.js","sources":["../../../../src/api-playground/ApiPlayground/components/PathHeader.tsx"],"sourcesContent":["'use client';\n\nimport { Endpoint } from '@mintlify/validation';\nimport { ChevronUpDownFilled } from '@fluentui/react-icons';\nimport { useContext, useEffect, useMemo, useState } from 'react';\n\nimport { getMethodColor } from '@/components/Api/colors';\nimport { MethodPill } from '../../../components/Api/MethodPill';\nimport { useApiPlaygroundInputs } from '@/hooks/useMDXContentController/useApiPlaygroundInputs';\nimport {\n addPathParams,\n addServerVariables,\n joinWithSingleSlash,\n} from '../../../hooks/useSendPlaygroundRequest';\nimport { MethodPillType } from '../../../api-playground-2/types/api';\nimport { CheckmarkCircleRegular, CopySelectRegular, SpinnerIosRegular, PlayRegular } from '@fluentui/react-icons';\nimport { copyToClipboard } from '@/utils/copyToClipboard';\n\nimport { ApiPlaygroundContext } from '../ApiPlaygroundContext';\nimport { cn } from \"../../../utils/cn\";\n\ntype EndpointHeaderProps = {\n endpoint: Endpoint;\n display: 'simple' | 'none' | 'interactive';\n onClickInteractive?: () => void;\n hasGrayBackground?: boolean;\n};\n\nexport const EndpointHeader = ({\n endpoint,\n display,\n onClickInteractive,\n hasGrayBackground,\n}: EndpointHeaderProps) => {\n return (\n <div className=\"mint:flex mint:items-center mint:space-x-1.5\">\n <PathHeader endpoint={endpoint} display={display} hasGrayBackground={hasGrayBackground} />\n {display === 'simple' ? null : (\n <SendPill method={endpoint.method} label=\"Try it\" onClick={onClickInteractive} />\n )}\n </div>\n );\n};\n\nconst BasePathSelector = () => {\n const { baseUrlOptions, selectedBaseUrlIndex, setSelectedBaseUrlIndex } =\n useContext(ApiPlaygroundContext);\n const [selectWidth, setSelectWidth] = useState(0);\n\n const selectedOption = baseUrlOptions?.[selectedBaseUrlIndex];\n\n useEffect(() => {\n // Create a temporary span to measure the text width to dynamically set the width of the select\n const span = document.createElement('span');\n span.className = 'mint:text-sm mint:absolute mint:font-mono mint:invisible';\n const storedBaseUrl = sessionStorage.getItem('selectedBaseUrl');\n if (\n storedBaseUrl &&\n storedBaseUrl !== selectedOption &&\n baseUrlOptions &&\n setSelectedBaseUrlIndex &&\n baseUrlOptions.includes(storedBaseUrl)\n ) {\n setSelectedBaseUrlIndex(baseUrlOptions.indexOf(storedBaseUrl));\n span.textContent = storedBaseUrl;\n } else {\n span.textContent = selectedOption ?? '';\n }\n document.body.appendChild(span);\n\n const paddingWidth = 16;\n\n setSelectWidth(span.offsetWidth + paddingWidth);\n document.body.removeChild(span);\n }, [selectedOption, setSelectedBaseUrlIndex, selectedBaseUrlIndex, baseUrlOptions]);\n\n if (!baseUrlOptions || baseUrlOptions.length <= 1 || !setSelectedBaseUrlIndex) return null;\n\n return (\n <div className=\"mint:flex mint:items-center mint:gap-1 mint:relative mint:-mr-1\">\n <select\n aria-label=\"Base Path Selector\"\n className=\"mint:bg-transparent mint:text-sm mint:text-gray-600 mint:dark:text-gray-400 mint:outline-0 mint:font-mono mint:cursor-pointer mint:hover:text-gray-900 mint:dark:hover:text-gray-300\"\n value={selectedBaseUrlIndex}\n onClick={(e) => e.stopPropagation()}\n onChange={(e) => {\n sessionStorage.setItem('selectedBaseUrl', baseUrlOptions[Number(e.target.value)] ?? '');\n setSelectedBaseUrlIndex(Number(e.target.value));\n }}\n style={{ width: `${selectWidth}px` }}\n >\n {baseUrlOptions.map((url, i) => (\n <option key={url} value={i}>\n {url}\n </option>\n ))}\n </select>\n <ChevronUpDownFilled\n className=\"mint:absolute mint:right-0 mint:w-3 mint:h-3 mint:text-gray-400 mint:dark:text-white/30 mint:pointer-events-none\"\n />\n </div>\n );\n};\n\nexport const PathHeader = ({ endpoint, display, hasGrayBackground }: EndpointHeaderProps) => {\n const [isCopiedActive, setIsCopiedActive] = useState(false);\n const { baseUrlOptions, selectedBaseUrlIndex } = useContext(ApiPlaygroundContext);\n const inputs = useApiPlaygroundInputs();\n\n const baseUrl = baseUrlOptions?.[selectedBaseUrlIndex] ?? baseUrlOptions?.[0] ?? '';\n\n const onCopy = async () => {\n const pathWithInputs = addPathParams(endpoint.path, inputs.path);\n const toCopy = joinWithSingleSlash(addServerVariables(baseUrl, inputs.server), pathWithInputs);\n\n const result = await copyToClipboard(toCopy);\n if (result === 'success') {\n setIsCopiedActive(true);\n setTimeout(() => {\n setIsCopiedActive(false);\n }, 2000);\n }\n };\n\n return (\n <div\n className={cn(\n 'mint:relative mint:flex-1 mint:flex mint:gap-2 mint:min-w-0 mint:rounded-xl mint:items-center mint:cursor-pointer mint:p-1.5 mint:pr-0 mint:overflow-hidden',\n display != 'simple' && 'mint:border-standard',\n hasGrayBackground && 'mint:bg-gray-50 mint:dark:bg-white/5'\n )}\n onClick={onCopy}\n >\n <MethodPill\n method={endpoint.type === 'webhook' ? 'webhook' : endpoint.method}\n isActive={false}\n />\n <div className=\"mint:flex mint:items-center mint:space-x-2 mint:overflow-x-auto mint:flex-1 mint:no-scrollbar\">\n {endpoint.type !== 'webhook' && <BasePathSelector />}\n <PrettyPath\n endpoint={endpoint}\n display={display}\n isCopiedActive={isCopiedActive}\n hasGrayBackground={hasGrayBackground}\n />\n </div>\n </div>\n );\n};\n\nconst PrettyPath = ({\n endpoint,\n isCopiedActive,\n hasGrayBackground,\n}: EndpointHeaderProps & { isCopiedActive: boolean }) => {\n const pathParts = useMemo(() => {\n return endpoint.path.split('/').flatMap((component, i) => {\n const componentParts = [];\n if (i > 0) {\n componentParts.push(<SlashPart key={i} />);\n }\n\n component.split('{').forEach((paramAndText, j) => {\n if (paramAndText.includes('}')) {\n const [param, text] = paramAndText.split('}');\n componentParts.push(\n <ParamPart key={`${i}-${j}-param`} method={endpoint.method}>\n { }\n {param!}\n </ParamPart>\n );\n if (text) {\n componentParts.push(<LiteralPart key={`${i}-${j}`}>{text}</LiteralPart>);\n }\n } else if (paramAndText) {\n componentParts.push(<LiteralPart key={`${i}-${j}`}>{paramAndText}</LiteralPart>);\n }\n });\n\n return componentParts;\n });\n }, [endpoint.path, endpoint.method]);\n\n return (\n <div className=\"mint:group mint:flex mint:items-center mint:flex-1 mint:gap-0.5 mint:font-mono mint:pr-1.5\">\n <div\n className={cn(\n 'mint:absolute mint:right-0 mint:p-2 mint:bg-background-light mint:dark:bg-background-dark mint:rounded-lg',\n hasGrayBackground && 'mint:bg-transparent mint:dark:bg-transparent',\n isCopiedActive ? 'mint:block' : 'mint:hidden mint:group-hover:block'\n )}\n >\n {isCopiedActive ? (\n <CheckmarkCircleRegular\n className=\"mint:w-4 mint:h-4 mint:bg-primary mint:dark:bg-primary-light\"\n />\n ) : (\n <CopySelectRegular className=\"mint:w-4 mint:h-4 mint:bg-gray-400 mint:dark:bg-white/30\" />\n )}\n </div>\n {pathParts}\n </div>\n );\n};\n\nconst LiteralPart = ({ children }: { children: string }) => (\n <div className=\"mint:text-sm mint:font-medium mint:text-gray-800 mint:dark:text-white mint:min-w-max\">{children}</div>\n);\n\nconst ParamPart = ({ children, method }: { children: string; method: MethodPillType }) => {\n const { activeNavPillBg, activeNavPillText, inactiveNavPillText, inactiveNavPillBg } = getMethodColor(method);\n return (\n <div\n className={cn('mint:text-sm mint:font-mono mint:font-medium mint:rounded-md mint:px-1 mint:border-2 mint:min-w-max', activeNavPillBg, activeNavPillText, inactiveNavPillText, inactiveNavPillBg)}\n >{`\\{${children}\\}`}</div>\n );\n};\n\nconst SlashPart = () => <div className=\"mint:text-sm mint:text-gray-400\">/</div>;\n\nexport const SendPill = ({\n label,\n method,\n onClick,\n isSending,\n className,\n}: {\n label: string;\n method: MethodPillType;\n onClick?: () => void;\n isSending?: boolean;\n className?: string;\n}) => {\n const { activeNavPillBg } = getMethodColor(method);\n return (\n <button\n className={cn(\n 'try-it-button',\n 'mint:flex mint:items-center mint:justify-center mint:px-3 mint:h-9 mint:text-white mint:font-medium mint:rounded-xl mint:mouse-pointer mint:disabled:opacity-70 mint:hover:opacity-80 mint:gap-1.5',\n activeNavPillBg,\n className\n )}\n onClick={onClick}\n disabled={isSending}\n data-testid=\"try-it-button\"\n >\n {isSending ? (\n <SpinnerIosRegular className=\"mint:w-4 mint:h-4 mint:bg-white mint:animate-spin\" />\n ) : (\n <>\n <span>{label}</span>\n <PlayRegular className=\"mint:w-3 mint:h-3 mint:bg-white\" />\n </>\n )}\n </button>\n );\n};\n"],"names":["EndpointHeader","endpoint","display","onClickInteractive","hasGrayBackground","jsxs","jsx","PathHeader","SendPill","BasePathSelector","baseUrlOptions","selectedBaseUrlIndex","setSelectedBaseUrlIndex","useContext","ApiPlaygroundContext","selectWidth","setSelectWidth","useState","selectedOption","useEffect","span","storedBaseUrl","url","i","ChevronUpDownFilled","isCopiedActive","setIsCopiedActive","inputs","useApiPlaygroundInputs","baseUrl","onCopy","pathWithInputs","addPathParams","toCopy","joinWithSingleSlash","addServerVariables","copyToClipboard","cn","MethodPill","PrettyPath","pathParts","useMemo","component","componentParts","SlashPart","paramAndText","j","param","text","ParamPart","LiteralPart","CheckmarkCircleRegular","CopySelectRegular","children","method","activeNavPillBg","activeNavPillText","inactiveNavPillText","inactiveNavPillBg","getMethodColor","label","onClick","isSending","className","SpinnerIosRegular","Fragment","PlayRegular"],"mappings":"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"}
1
+ {"version":3,"file":"PathHeader.js","sources":["../../../../src/api-playground/ApiPlayground/components/PathHeader.tsx"],"sourcesContent":["\nimport { Endpoint } from '@mintlify/validation';\nimport { ChevronUpDownFilled } from '@fluentui/react-icons';\nimport { useContext, useEffect, useMemo, useState } from 'react';\n\nimport { getMethodColor } from '@/components/Api/colors';\nimport { MethodPill } from '../../../components/Api/MethodPill';\nimport { useApiPlaygroundInputs } from '@/hooks/useMDXContentController/useApiPlaygroundInputs';\nimport {\n addPathParams,\n addServerVariables,\n joinWithSingleSlash,\n} from '../../../hooks/useSendPlaygroundRequest';\nimport { MethodPillType } from '../../../api-playground-2/types/api';\nimport { CheckmarkCircleRegular, CopySelectRegular, SpinnerIosRegular, PlayRegular } from '@fluentui/react-icons';\nimport { copyToClipboard } from '@/utils/copyToClipboard';\n\nimport { ApiPlaygroundContext } from '../ApiPlaygroundContext';\nimport { cn } from \"../../../utils/cn\";\n\ntype EndpointHeaderProps = {\n endpoint: Endpoint;\n display: 'simple' | 'none' | 'interactive';\n onClickInteractive?: () => void;\n hasGrayBackground?: boolean;\n};\n\nexport const EndpointHeader = ({\n endpoint,\n display,\n onClickInteractive,\n hasGrayBackground,\n}: EndpointHeaderProps) => {\n return (\n <div className=\"mint:flex mint:items-center mint:space-x-1.5\">\n <PathHeader endpoint={endpoint} display={display} hasGrayBackground={hasGrayBackground} />\n {display === 'simple' ? null : (\n <SendPill method={endpoint.method} label=\"Try it\" onClick={onClickInteractive} />\n )}\n </div>\n );\n};\n\nconst BasePathSelector = () => {\n const { baseUrlOptions, selectedBaseUrlIndex, setSelectedBaseUrlIndex } =\n useContext(ApiPlaygroundContext);\n const [selectWidth, setSelectWidth] = useState(0);\n\n const selectedOption = baseUrlOptions?.[selectedBaseUrlIndex];\n\n useEffect(() => {\n // Create a temporary span to measure the text width to dynamically set the width of the select\n const span = document.createElement('span');\n span.className = 'mint:text-sm mint:absolute mint:font-mono mint:invisible';\n const storedBaseUrl = sessionStorage.getItem('selectedBaseUrl');\n if (\n storedBaseUrl &&\n storedBaseUrl !== selectedOption &&\n baseUrlOptions &&\n setSelectedBaseUrlIndex &&\n baseUrlOptions.includes(storedBaseUrl)\n ) {\n setSelectedBaseUrlIndex(baseUrlOptions.indexOf(storedBaseUrl));\n span.textContent = storedBaseUrl;\n } else {\n span.textContent = selectedOption ?? '';\n }\n document.body.appendChild(span);\n\n const paddingWidth = 16;\n\n setSelectWidth(span.offsetWidth + paddingWidth);\n document.body.removeChild(span);\n }, [selectedOption, setSelectedBaseUrlIndex, selectedBaseUrlIndex, baseUrlOptions]);\n\n if (!baseUrlOptions || baseUrlOptions.length <= 1 || !setSelectedBaseUrlIndex) return null;\n\n return (\n <div className=\"mint:flex mint:items-center mint:gap-1 mint:relative mint:-mr-1\">\n <select\n aria-label=\"Base Path Selector\"\n className=\"mint:bg-transparent mint:text-sm mint:text-gray-600 mint:dark:text-gray-400 mint:outline-0 mint:font-mono mint:cursor-pointer mint:hover:text-gray-900 mint:dark:hover:text-gray-300\"\n value={selectedBaseUrlIndex}\n onClick={(e) => e.stopPropagation()}\n onChange={(e) => {\n sessionStorage.setItem('selectedBaseUrl', baseUrlOptions[Number(e.target.value)] ?? '');\n setSelectedBaseUrlIndex(Number(e.target.value));\n }}\n style={{ width: `${selectWidth}px` }}\n >\n {baseUrlOptions.map((url, i) => (\n <option key={url} value={i}>\n {url}\n </option>\n ))}\n </select>\n <ChevronUpDownFilled\n className=\"mint:absolute mint:right-0 mint:w-3 mint:h-3 mint:text-gray-400 mint:dark:text-white/30 mint:pointer-events-none\"\n />\n </div>\n );\n};\n\nexport const PathHeader = ({ endpoint, display, hasGrayBackground }: EndpointHeaderProps) => {\n const [isCopiedActive, setIsCopiedActive] = useState(false);\n const { baseUrlOptions, selectedBaseUrlIndex } = useContext(ApiPlaygroundContext);\n const inputs = useApiPlaygroundInputs();\n\n const baseUrl = baseUrlOptions?.[selectedBaseUrlIndex] ?? baseUrlOptions?.[0] ?? '';\n\n const onCopy = async () => {\n const pathWithInputs = addPathParams(endpoint.path, inputs.path);\n const toCopy = joinWithSingleSlash(addServerVariables(baseUrl, inputs.server), pathWithInputs);\n\n const result = await copyToClipboard(toCopy);\n if (result === 'success') {\n setIsCopiedActive(true);\n setTimeout(() => {\n setIsCopiedActive(false);\n }, 2000);\n }\n };\n\n return (\n <div\n className={cn(\n 'mint:relative mint:flex-1 mint:flex mint:gap-2 mint:min-w-0 mint:rounded-xl mint:items-center mint:cursor-pointer mint:p-1.5 mint:pr-0 mint:overflow-hidden',\n display != 'simple' && 'mint:border-standard',\n hasGrayBackground && 'mint:bg-gray-50 mint:dark:bg-white/5'\n )}\n onClick={onCopy}\n >\n <MethodPill\n method={endpoint.type === 'webhook' ? 'webhook' : endpoint.method}\n isActive={false}\n />\n <div className=\"mint:flex mint:items-center mint:space-x-2 mint:overflow-x-auto mint:flex-1 mint:no-scrollbar\">\n {endpoint.type !== 'webhook' && <BasePathSelector />}\n <PrettyPath\n endpoint={endpoint}\n display={display}\n isCopiedActive={isCopiedActive}\n hasGrayBackground={hasGrayBackground}\n />\n </div>\n </div>\n );\n};\n\nconst PrettyPath = ({\n endpoint,\n isCopiedActive,\n hasGrayBackground,\n}: EndpointHeaderProps & { isCopiedActive: boolean }) => {\n const pathParts = useMemo(() => {\n return endpoint.path.split('/').flatMap((component, i) => {\n const componentParts = [];\n if (i > 0) {\n componentParts.push(<SlashPart key={i} />);\n }\n\n component.split('{').forEach((paramAndText, j) => {\n if (paramAndText.includes('}')) {\n const [param, text] = paramAndText.split('}');\n componentParts.push(\n <ParamPart key={`${i}-${j}-param`} method={endpoint.method}>\n { }\n {param!}\n </ParamPart>\n );\n if (text) {\n componentParts.push(<LiteralPart key={`${i}-${j}`}>{text}</LiteralPart>);\n }\n } else if (paramAndText) {\n componentParts.push(<LiteralPart key={`${i}-${j}`}>{paramAndText}</LiteralPart>);\n }\n });\n\n return componentParts;\n });\n }, [endpoint.path, endpoint.method]);\n\n return (\n <div className=\"mint:group mint:flex mint:items-center mint:flex-1 mint:gap-0.5 mint:font-mono mint:pr-1.5\">\n <div\n className={cn(\n 'mint:absolute mint:right-0 mint:p-2 mint:bg-background-light mint:dark:bg-background-dark mint:rounded-lg',\n hasGrayBackground && 'mint:bg-transparent mint:dark:bg-transparent',\n isCopiedActive ? 'mint:block' : 'mint:hidden mint:group-hover:block'\n )}\n >\n {isCopiedActive ? (\n <CheckmarkCircleRegular\n className=\"mint:w-4 mint:h-4 mint:bg-primary mint:dark:bg-primary-light\"\n />\n ) : (\n <CopySelectRegular className=\"mint:w-4 mint:h-4 mint:bg-gray-400 mint:dark:bg-white/30\" />\n )}\n </div>\n {pathParts}\n </div>\n );\n};\n\nconst LiteralPart = ({ children }: { children: string }) => (\n <div className=\"mint:text-sm mint:font-medium mint:text-gray-800 mint:dark:text-white mint:min-w-max\">{children}</div>\n);\n\nconst ParamPart = ({ children, method }: { children: string; method: MethodPillType }) => {\n const { activeNavPillBg, activeNavPillText, inactiveNavPillText, inactiveNavPillBg } = getMethodColor(method);\n return (\n <div\n className={cn('mint:text-sm mint:font-mono mint:font-medium mint:rounded-md mint:px-1 mint:border-2 mint:min-w-max', activeNavPillBg, activeNavPillText, inactiveNavPillText, inactiveNavPillBg)}\n >{`\\{${children}\\}`}</div>\n );\n};\n\nconst SlashPart = () => <div className=\"mint:text-sm mint:text-gray-400\">/</div>;\n\nexport const SendPill = ({\n label,\n method,\n onClick,\n isSending,\n className,\n}: {\n label: string;\n method: MethodPillType;\n onClick?: () => void;\n isSending?: boolean;\n className?: string;\n}) => {\n const { activeNavPillBg } = getMethodColor(method);\n return (\n <button\n className={cn(\n 'try-it-button',\n 'mint:flex mint:items-center mint:justify-center mint:px-3 mint:h-9 mint:text-white mint:font-medium mint:rounded-xl mint:mouse-pointer mint:disabled:opacity-70 mint:hover:opacity-80 mint:gap-1.5',\n activeNavPillBg,\n className\n )}\n onClick={onClick}\n disabled={isSending}\n data-testid=\"try-it-button\"\n >\n {isSending ? (\n <SpinnerIosRegular className=\"mint:w-4 mint:h-4 mint:bg-white mint:animate-spin\" />\n ) : (\n <>\n <span>{label}</span>\n <PlayRegular className=\"mint:w-3 mint:h-3 mint:bg-white\" />\n </>\n )}\n </button>\n );\n};\n"],"names":["EndpointHeader","endpoint","display","onClickInteractive","hasGrayBackground","jsxs","jsx","PathHeader","SendPill","BasePathSelector","baseUrlOptions","selectedBaseUrlIndex","setSelectedBaseUrlIndex","useContext","ApiPlaygroundContext","selectWidth","setSelectWidth","useState","selectedOption","useEffect","span","storedBaseUrl","url","i","ChevronUpDownFilled","isCopiedActive","setIsCopiedActive","inputs","useApiPlaygroundInputs","baseUrl","onCopy","pathWithInputs","addPathParams","toCopy","joinWithSingleSlash","addServerVariables","copyToClipboard","cn","MethodPill","PrettyPath","pathParts","useMemo","component","componentParts","SlashPart","paramAndText","j","param","text","ParamPart","LiteralPart","CheckmarkCircleRegular","CopySelectRegular","children","method","activeNavPillBg","activeNavPillText","inactiveNavPillText","inactiveNavPillBg","getMethodColor","label","onClick","isSending","className","SpinnerIosRegular","Fragment","PlayRegular"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"PlaygroundModalWrapper.js","sources":["../../../../src/api-playground/ApiPlayground/components/PlaygroundModalWrapper.tsx"],"sourcesContent":["'use client';\n\nimport { Transition, TransitionChild } from '@headlessui/react';\nimport { Fragment } from 'react';\nimport { createPortal } from 'react-dom';\n\nimport { zIndex } from '@/constants/zIndex';\nimport { cn } from '@/api-playground-2/schemaGraph/utils';\n\ntype PlaygroundModalWrapperProps = {\n isPlaygroundExpanded: boolean;\n setIsPlaygroundExpanded?: (isPlaygroundExpanded: boolean) => void;\n children: React.ReactNode;\n};\n\nexport const PlaygroundModalWrapper = ({\n isPlaygroundExpanded,\n setIsPlaygroundExpanded,\n children,\n}: PlaygroundModalWrapperProps) => {\n if (typeof window === 'undefined') return null;\n\n return createPortal(\n <Transition show={isPlaygroundExpanded} as={Fragment}>\n <div className={cn(zIndex.Popup, 'mint:fixed mint:inset-0 mint:overflow-y-auto mint:p-4 mint:sm:p-6 mint:md:p-12')}>\n <TransitionChild\n as={Fragment}\n enter=\"mint:ease-out mint:duration-100\"\n enterFrom=\"mint:opacity-0\"\n enterTo=\"mint:opacity-100\"\n leave=\"mint:ease-in mint:duration-50\"\n leaveFrom=\"mint:opacity-100\"\n leaveTo=\"mint:opacity-0\"\n >\n <div\n className=\"mint:fixed mint:z-0 mint:inset-0 mint:bg-background-dark/20 mint:transition-opacity mint:backdrop-blur-sm\"\n onClick={() => setIsPlaygroundExpanded?.(false)}\n />\n </TransitionChild>\n <TransitionChild\n as={Fragment}\n enter=\"mint:ease-out mint:duration-100\"\n enterFrom=\"mint:opacity-0 mint:scale-95\"\n enterTo=\"mint:opacity-100 mint:scale-100\"\n leave=\"mint:ease-in mint:duration-50\"\n leaveFrom=\"mint:opacity-100 mint:scale-100\"\n leaveTo=\"mint:opacity-0 mint:scale-95\"\n >\n <div\n data-testid=\"api-playground-modal\"\n className=\"mint:relative mint:z-10 mint:flex mint:flex-col mint:mx-auto mint:max-w-screen-xl mint:transform mint:bg-background-light mint:dark:bg-background-dark mint:shadow-search mint:rounded-3xl mint:border-standard\">\n <div className=\"mint:p-4\">{children}</div>\n </div>\n </TransitionChild>\n </div>\n </Transition>,\n document.body\n );\n};\n"],"names":["PlaygroundModalWrapper","isPlaygroundExpanded","setIsPlaygroundExpanded","children","createPortal","jsx","Transition","Fragment","jsxs","cn","zIndex","TransitionChild"],"mappings":";;;;;;;AAeO,MAAMA,IAAyB,CAAC;AAAA,EACrC,sBAAAC;AAAA,EACA,yBAAAC;AAAA,EACA,UAAAC;AACF,MACM,OAAO,SAAW,MAAoB,OAEnCC;AAAA,EACL,gBAAAC,EAACC,GAAA,EAAW,MAAML,GAAsB,IAAIM,GAC1C,UAAA,gBAAAC,EAAC,OAAA,EAAI,WAAWC,EAAGC,EAAO,OAAO,gFAAgF,GAC/G,UAAA;AAAA,IAAA,gBAAAL;AAAA,MAACM;AAAA,MAAA;AAAA,QACC,IAAIJ;AAAA,QACJ,OAAM;AAAA,QACN,WAAU;AAAA,QACV,SAAQ;AAAA,QACR,OAAM;AAAA,QACN,WAAU;AAAA,QACV,SAAQ;AAAA,QAER,UAAA,gBAAAF;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,WAAU;AAAA,YACV,SAAS,MAAMH,KAAA,gBAAAA,EAA0B;AAAA,UAAK;AAAA,QAAA;AAAA,MAChD;AAAA,IAAA;AAAA,IAEF,gBAAAG;AAAA,MAACM;AAAA,MAAA;AAAA,QACC,IAAIJ;AAAA,QACJ,OAAM;AAAA,QACN,WAAU;AAAA,QACV,SAAQ;AAAA,QACR,OAAM;AAAA,QACN,WAAU;AAAA,QACV,SAAQ;AAAA,QAER,UAAA,gBAAAF;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,eAAY;AAAA,YACZ,WAAU;AAAA,YACV,UAAA,gBAAAA,EAAC,OAAA,EAAI,WAAU,YAAY,UAAAF,EAAA,CAAS;AAAA,UAAA;AAAA,QAAA;AAAA,MACtC;AAAA,IAAA;AAAA,EACF,EAAA,CACF,EAAA,CACF;AAAA,EACA,SAAS;AAAA;"}
1
+ {"version":3,"file":"PlaygroundModalWrapper.js","sources":["../../../../src/api-playground/ApiPlayground/components/PlaygroundModalWrapper.tsx"],"sourcesContent":["\nimport { Transition, TransitionChild } from '@headlessui/react';\nimport { Fragment } from 'react';\nimport { createPortal } from 'react-dom';\n\nimport { zIndex } from '@/constants/zIndex';\nimport { cn } from '@/api-playground-2/schemaGraph/utils';\n\ntype PlaygroundModalWrapperProps = {\n isPlaygroundExpanded: boolean;\n setIsPlaygroundExpanded?: (isPlaygroundExpanded: boolean) => void;\n children: React.ReactNode;\n};\n\nexport const PlaygroundModalWrapper = ({\n isPlaygroundExpanded,\n setIsPlaygroundExpanded,\n children,\n}: PlaygroundModalWrapperProps) => {\n if (typeof window === 'undefined') return null;\n\n return createPortal(\n <Transition show={isPlaygroundExpanded} as={Fragment}>\n <div className={cn(zIndex.Popup, 'mint:fixed mint:inset-0 mint:overflow-y-auto mint:p-4 mint:sm:p-6 mint:md:p-12')}>\n <TransitionChild\n as={Fragment}\n enter=\"mint:ease-out mint:duration-100\"\n enterFrom=\"mint:opacity-0\"\n enterTo=\"mint:opacity-100\"\n leave=\"mint:ease-in mint:duration-50\"\n leaveFrom=\"mint:opacity-100\"\n leaveTo=\"mint:opacity-0\"\n >\n <div\n className=\"mint:fixed mint:z-0 mint:inset-0 mint:bg-background-dark/20 mint:transition-opacity mint:backdrop-blur-sm\"\n onClick={() => setIsPlaygroundExpanded?.(false)}\n />\n </TransitionChild>\n <TransitionChild\n as={Fragment}\n enter=\"mint:ease-out mint:duration-100\"\n enterFrom=\"mint:opacity-0 mint:scale-95\"\n enterTo=\"mint:opacity-100 mint:scale-100\"\n leave=\"mint:ease-in mint:duration-50\"\n leaveFrom=\"mint:opacity-100 mint:scale-100\"\n leaveTo=\"mint:opacity-0 mint:scale-95\"\n >\n <div\n data-testid=\"api-playground-modal\"\n className=\"mint:relative mint:z-10 mint:flex mint:flex-col mint:mx-auto mint:max-w-screen-xl mint:transform mint:bg-background-light mint:dark:bg-background-dark mint:shadow-search mint:rounded-3xl mint:border-standard\">\n <div className=\"mint:p-4\">{children}</div>\n </div>\n </TransitionChild>\n </div>\n </Transition>,\n document.body\n );\n};\n"],"names":["PlaygroundModalWrapper","isPlaygroundExpanded","setIsPlaygroundExpanded","children","createPortal","jsx","Transition","Fragment","jsxs","cn","zIndex","TransitionChild"],"mappings":";;;;;;;AAcO,MAAMA,IAAyB,CAAC;AAAA,EACrC,sBAAAC;AAAA,EACA,yBAAAC;AAAA,EACA,UAAAC;AACF,MACM,OAAO,SAAW,MAAoB,OAEnCC;AAAA,EACL,gBAAAC,EAACC,GAAA,EAAW,MAAML,GAAsB,IAAIM,GAC1C,UAAA,gBAAAC,EAAC,OAAA,EAAI,WAAWC,EAAGC,EAAO,OAAO,gFAAgF,GAC/G,UAAA;AAAA,IAAA,gBAAAL;AAAA,MAACM;AAAA,MAAA;AAAA,QACC,IAAIJ;AAAA,QACJ,OAAM;AAAA,QACN,WAAU;AAAA,QACV,SAAQ;AAAA,QACR,OAAM;AAAA,QACN,WAAU;AAAA,QACV,SAAQ;AAAA,QAER,UAAA,gBAAAF;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,WAAU;AAAA,YACV,SAAS,MAAMH,KAAA,gBAAAA,EAA0B;AAAA,UAAK;AAAA,QAAA;AAAA,MAChD;AAAA,IAAA;AAAA,IAEF,gBAAAG;AAAA,MAACM;AAAA,MAAA;AAAA,QACC,IAAIJ;AAAA,QACJ,OAAM;AAAA,QACN,WAAU;AAAA,QACV,SAAQ;AAAA,QACR,OAAM;AAAA,QACN,WAAU;AAAA,QACV,SAAQ;AAAA,QAER,UAAA,gBAAAF;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,eAAY;AAAA,YACZ,WAAU;AAAA,YACV,UAAA,gBAAAA,EAAC,OAAA,EAAI,WAAU,YAAY,UAAAF,EAAA,CAAS;AAAA,UAAA;AAAA,QAAA;AAAA,MACtC;AAAA,IAAA;AAAA,EACF,EAAA,CACF,EAAA,CACF;AAAA,EACA,SAAS;AAAA;"}
@@ -1 +1 @@
1
- {"version":3,"file":"TrashButton.js","sources":["../../../../src/api-playground/ApiPlayground/components/TrashButton.tsx"],"sourcesContent":["'use client';\n\nimport { useSelectedLocale } from '@/utils/locales';\nimport { TrashIcon } from 'lucide-react';\nimport { cn } from '@/api-playground-2/schemaGraph/utils';\n\nexport const TrashButton = ({\n className,\n onClick,\n}: {\n className?: string;\n onClick?: () => void;\n}) => {\n const locale = useSelectedLocale();\n\n return (\n <button\n className={cn(\n 'mint:px-1 mint:text-gray-400 mint:dark:text-gray-600 mint:hover:text-gray-600 mint:dark:hover:text-gray-400',\n className\n )}\n onClick={onClick}\n aria-label={locale['aria.deleteItem']}\n >\n <TrashIcon className=\"mint:w-4 mint:h-4\" />\n </button>\n );\n};\n"],"names":["TrashButton","className","onClick","locale","useSelectedLocale","jsx","cn","TrashIcon"],"mappings":";;;;;AAMO,MAAMA,IAAc,CAAC;AAAA,EAC1B,WAAAC;AAAA,EACA,SAAAC;AACF,MAGM;AACJ,QAAMC,IAASC,EAAA;AAEf,SACE,gBAAAC;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAWC;AAAA,QACT;AAAA,QACAL;AAAA,MAAA;AAAA,MAEF,SAAAC;AAAA,MACA,cAAYC,EAAO,iBAAiB;AAAA,MAEpC,UAAA,gBAAAE,EAACE,GAAA,EAAU,WAAU,oBAAA,CAAoB;AAAA,IAAA;AAAA,EAAA;AAG/C;"}
1
+ {"version":3,"file":"TrashButton.js","sources":["../../../../src/api-playground/ApiPlayground/components/TrashButton.tsx"],"sourcesContent":["\nimport { useSelectedLocale } from '@/utils/locales';\nimport { TrashIcon } from 'lucide-react';\nimport { cn } from '@/api-playground-2/schemaGraph/utils';\n\nexport const TrashButton = ({\n className,\n onClick,\n}: {\n className?: string;\n onClick?: () => void;\n}) => {\n const locale = useSelectedLocale();\n\n return (\n <button\n className={cn(\n 'mint:px-1 mint:text-gray-400 mint:dark:text-gray-600 mint:hover:text-gray-600 mint:dark:hover:text-gray-400',\n className\n )}\n onClick={onClick}\n aria-label={locale['aria.deleteItem']}\n >\n <TrashIcon className=\"mint:w-4 mint:h-4\" />\n </button>\n );\n};\n"],"names":["TrashButton","className","onClick","locale","useSelectedLocale","jsx","cn","TrashIcon"],"mappings":";;;;;AAKO,MAAMA,IAAc,CAAC;AAAA,EAC1B,WAAAC;AAAA,EACA,SAAAC;AACF,MAGM;AACJ,QAAMC,IAASC,EAAA;AAEf,SACE,gBAAAC;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAWC;AAAA,QACT;AAAA,QACAL;AAAA,MAAA;AAAA,MAEF,SAAAC;AAAA,MACA,cAAYC,EAAO,iBAAiB;AAAA,MAEpC,UAAA,gBAAAE,EAACE,GAAA,EAAU,WAAU,oBAAA,CAAoB;AAAA,IAAA;AAAA,EAAA;AAG/C;"}
@@ -1 +1 @@
1
- {"version":3,"file":"TypeDropdown.js","sources":["../../../../src/api-playground/ApiPlayground/components/TypeDropdown.tsx"],"sourcesContent":["'use client';\n\nimport { ChevronDownFilled } from '@fluentui/react-icons';\n\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuTrigger,\n} from '@/components/Api/dropdown-menu';\nimport { SchemaWithLabelInfo } from '@/hooks/usePlaygroundSchemaOptions';\nimport { cn } from '@/api-playground-2/schemaGraph/utils';\n\ntype TypeDropdownParams = {\n options: SchemaWithLabelInfo[];\n selectedIndex: number;\n onSelectOption: (index: number) => void;\n className?: string;\n};\n\nfunction getOptionLabel(option?: SchemaWithLabelInfo) {\n if (!option) return;\n if (option.schema.deprecated) {\n return `${option.label}, deprecated`;\n }\n return option.label;\n}\n\nexport const TypeDropdown = ({\n options,\n selectedIndex,\n onSelectOption,\n className,\n}: TypeDropdownParams) => {\n const displayOptions = options.length > 1;\n const selectedOption = options[selectedIndex];\n\n return (\n <div\n className={cn(\n 'mint:relative mint:flex mint:items-center mint:px-2 mint:py-0.5 mint:text-gray-600 mint:dark:text-gray-300 mint:hover:text-gray-950 mint:dark:hover:text-white mint:font-medium',\n className\n )}\n >\n <DropdownMenu>\n <DropdownMenuTrigger\n disabled={!displayOptions}\n className=\"mint:font-mono mint:text-xs mint:text-gray-600 mint:dark:text-gray-300 mint:hover:text-gray-950 mint:dark:hover:text-white\"\n >\n <div className=\"mint:flex mint:items-center mint:gap-1.5\">\n <span>{getOptionLabel(selectedOption)}</span>\n {displayOptions && (\n <ChevronDownFilled className=\"mint:h-2.5 mint:w-2.5 mint:text-gray-500 mint:dark:text-gray-400 mint:shrink-0\" />\n )}\n </div>\n </DropdownMenuTrigger>\n <DropdownMenuContent className=\"mint:min-w-24\">\n {options.map((option, index) => (\n <DropdownMenuItem\n key={index}\n isSelected={index === selectedIndex}\n onSelect={() => onSelectOption(index)}\n className=\"mint:text-xs\"\n >\n {getOptionLabel(option)}\n </DropdownMenuItem>\n ))}\n </DropdownMenuContent>\n </DropdownMenu>\n </div>\n );\n};\n"],"names":["getOptionLabel","option","TypeDropdown","options","selectedIndex","onSelectOption","className","displayOptions","selectedOption","jsx","cn","DropdownMenu","DropdownMenuTrigger","jsxs","ChevronDownFilled","DropdownMenuContent","index","DropdownMenuItem"],"mappings":";;;;;AAoBA,SAASA,EAAeC,GAA8B;AACpD,MAAKA;AACL,WAAIA,EAAO,OAAO,aACT,GAAGA,EAAO,KAAK,iBAEjBA,EAAO;AAChB;AAEO,MAAMC,IAAe,CAAC;AAAA,EAC3B,SAAAC;AAAA,EACA,eAAAC;AAAA,EACA,gBAAAC;AAAA,EACA,WAAAC;AACF,MAA0B;AACxB,QAAMC,IAAiBJ,EAAQ,SAAS,GAClCK,IAAiBL,EAAQC,CAAa;AAE5C,SACE,gBAAAK;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAWC;AAAA,QACT;AAAA,QACAJ;AAAA,MAAA;AAAA,MAGF,4BAACK,GAAA,EACC,UAAA;AAAA,QAAA,gBAAAF;AAAA,UAACG;AAAA,UAAA;AAAA,YACC,UAAU,CAACL;AAAA,YACX,WAAU;AAAA,YAEV,UAAA,gBAAAM,EAAC,OAAA,EAAI,WAAU,4CACb,UAAA;AAAA,cAAA,gBAAAJ,EAAC,QAAA,EAAM,UAAAT,EAAeQ,CAAc,EAAA,CAAE;AAAA,cACrCD,KACC,gBAAAE,EAACK,GAAA,EAAkB,WAAU,iFAAA,CAAiF;AAAA,YAAA,EAAA,CAElH;AAAA,UAAA;AAAA,QAAA;AAAA,QAEF,gBAAAL,EAACM,KAAoB,WAAU,iBAC5B,YAAQ,IAAI,CAACd,GAAQe,MACpB,gBAAAP;AAAA,UAACQ;AAAA,UAAA;AAAA,YAEC,YAAYD,MAAUZ;AAAA,YACtB,UAAU,MAAMC,EAAeW,CAAK;AAAA,YACpC,WAAU;AAAA,YAET,YAAef,CAAM;AAAA,UAAA;AAAA,UALjBe;AAAA,QAAA,CAOR,EAAA,CACH;AAAA,MAAA,EAAA,CACF;AAAA,IAAA;AAAA,EAAA;AAGN;"}
1
+ {"version":3,"file":"TypeDropdown.js","sources":["../../../../src/api-playground/ApiPlayground/components/TypeDropdown.tsx"],"sourcesContent":["\nimport { ChevronDownFilled } from '@fluentui/react-icons';\n\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuTrigger,\n} from '@/components/Api/dropdown-menu';\nimport { SchemaWithLabelInfo } from '@/hooks/usePlaygroundSchemaOptions';\nimport { cn } from '@/api-playground-2/schemaGraph/utils';\n\ntype TypeDropdownParams = {\n options: SchemaWithLabelInfo[];\n selectedIndex: number;\n onSelectOption: (index: number) => void;\n className?: string;\n};\n\nfunction getOptionLabel(option?: SchemaWithLabelInfo) {\n if (!option) return;\n if (option.schema.deprecated) {\n return `${option.label}, deprecated`;\n }\n return option.label;\n}\n\nexport const TypeDropdown = ({\n options,\n selectedIndex,\n onSelectOption,\n className,\n}: TypeDropdownParams) => {\n const displayOptions = options.length > 1;\n const selectedOption = options[selectedIndex];\n\n return (\n <div\n className={cn(\n 'mint:relative mint:flex mint:items-center mint:px-2 mint:py-0.5 mint:text-gray-600 mint:dark:text-gray-300 mint:hover:text-gray-950 mint:dark:hover:text-white mint:font-medium',\n className\n )}\n >\n <DropdownMenu>\n <DropdownMenuTrigger\n disabled={!displayOptions}\n className=\"mint:font-mono mint:text-xs mint:text-gray-600 mint:dark:text-gray-300 mint:hover:text-gray-950 mint:dark:hover:text-white\"\n >\n <div className=\"mint:flex mint:items-center mint:gap-1.5\">\n <span>{getOptionLabel(selectedOption)}</span>\n {displayOptions && (\n <ChevronDownFilled className=\"mint:h-2.5 mint:w-2.5 mint:text-gray-500 mint:dark:text-gray-400 mint:shrink-0\" />\n )}\n </div>\n </DropdownMenuTrigger>\n <DropdownMenuContent className=\"mint:min-w-24\">\n {options.map((option, index) => (\n <DropdownMenuItem\n key={index}\n isSelected={index === selectedIndex}\n onSelect={() => onSelectOption(index)}\n className=\"mint:text-xs\"\n >\n {getOptionLabel(option)}\n </DropdownMenuItem>\n ))}\n </DropdownMenuContent>\n </DropdownMenu>\n </div>\n );\n};\n"],"names":["getOptionLabel","option","TypeDropdown","options","selectedIndex","onSelectOption","className","displayOptions","selectedOption","jsx","cn","DropdownMenu","DropdownMenuTrigger","jsxs","ChevronDownFilled","DropdownMenuContent","index","DropdownMenuItem"],"mappings":";;;;;AAmBA,SAASA,EAAeC,GAA8B;AACpD,MAAKA;AACL,WAAIA,EAAO,OAAO,aACT,GAAGA,EAAO,KAAK,iBAEjBA,EAAO;AAChB;AAEO,MAAMC,IAAe,CAAC;AAAA,EAC3B,SAAAC;AAAA,EACA,eAAAC;AAAA,EACA,gBAAAC;AAAA,EACA,WAAAC;AACF,MAA0B;AACxB,QAAMC,IAAiBJ,EAAQ,SAAS,GAClCK,IAAiBL,EAAQC,CAAa;AAE5C,SACE,gBAAAK;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAWC;AAAA,QACT;AAAA,QACAJ;AAAA,MAAA;AAAA,MAGF,4BAACK,GAAA,EACC,UAAA;AAAA,QAAA,gBAAAF;AAAA,UAACG;AAAA,UAAA;AAAA,YACC,UAAU,CAACL;AAAA,YACX,WAAU;AAAA,YAEV,UAAA,gBAAAM,EAAC,OAAA,EAAI,WAAU,4CACb,UAAA;AAAA,cAAA,gBAAAJ,EAAC,QAAA,EAAM,UAAAT,EAAeQ,CAAc,EAAA,CAAE;AAAA,cACrCD,KACC,gBAAAE,EAACK,GAAA,EAAkB,WAAU,iFAAA,CAAiF;AAAA,YAAA,EAAA,CAElH;AAAA,UAAA;AAAA,QAAA;AAAA,QAEF,gBAAAL,EAACM,KAAoB,WAAU,iBAC5B,YAAQ,IAAI,CAACd,GAAQe,MACpB,gBAAAP;AAAA,UAACQ;AAAA,UAAA;AAAA,YAEC,YAAYD,MAAUZ;AAAA,YACtB,UAAU,MAAMC,EAAeW,CAAK;AAAA,YACpC,WAAU;AAAA,YAET,YAAef,CAAM;AAAA,UAAA;AAAA,UALjBe;AAAA,QAAA,CAOR,EAAA,CACH;AAAA,MAAA,EAAA,CACF;AAAA,IAAA;AAAA,EAAA;AAGN;"}
@@ -1,32 +1,32 @@
1
1
  import { jsx as s } from "react/jsx-runtime";
2
- import { useContext as q, useState as n, useEffect as U } from "react";
3
- import { DocsConfigContext as b } from "../../contexts/ConfigContext.js";
4
- import { EndpointLocationProvider as L } from "../../contexts/EndpointLocationContext.js";
5
- import { useBaseUrlOptions as T } from "../../hooks/useBaseUrlOptions.js";
2
+ import { useContext as U, useState as n, useEffect as b } from "react";
3
+ import { DocsConfigContext as L } from "../../contexts/ConfigContext.js";
4
+ import { EndpointLocationProvider as T } from "../../contexts/EndpointLocationContext.js";
5
+ import { useBaseUrlOptions as j } from "../../hooks/useBaseUrlOptions.js";
6
6
  import { useKeyboardShortcut as y } from "../../hooks/useKeyboardShortcut.js";
7
- import { useApiPlaygroundInputs as j } from "../../hooks/useMDXContentController/useApiPlaygroundInputs.js";
8
- import { useSetApiBaseIndexCallback as F } from "../../hooks/useMDXContentController/useMDXContentCallbacks/useSetApiBaseIndexCallback.js";
9
- import { useSetApiPlaygroundInputsCallback as K } from "../../hooks/useMDXContentController/useMDXContentCallbacks/useSetApiPlaygroundInputsCallback.js";
10
- import { useSendPlaygroundRequest as D } from "../../hooks/useSendPlaygroundRequest.js";
11
- import N from "../../components/Api/ErrorBoundary.js";
12
- import { ApiPlaygroundContext as Q } from "./ApiPlaygroundContext.js";
13
- import { Request as W } from "./Request/index.js";
14
- const ne = ({ endpoint: r, display: f }) => {
7
+ import { useApiPlaygroundInputs as F } from "../../hooks/useMDXContentController/useApiPlaygroundInputs.js";
8
+ import { useSetApiBaseIndexCallback as K } from "../../hooks/useMDXContentController/useMDXContentCallbacks/useSetApiBaseIndexCallback.js";
9
+ import { useSetApiPlaygroundInputsCallback as D } from "../../hooks/useMDXContentController/useMDXContentCallbacks/useSetApiPlaygroundInputsCallback.js";
10
+ import { useSendPlaygroundRequest as N } from "../../hooks/useSendPlaygroundRequest.js";
11
+ import Q from "../../components/Api/ErrorBoundary.js";
12
+ import { ApiPlaygroundContext as W } from "./ApiPlaygroundContext.js";
13
+ import { Request as _ } from "./Request/index.js";
14
+ const oe = ({ endpoint: r, display: f, pathname: x }) => {
15
15
  var m, p;
16
- const { docsConfig: a } = q(b), x = j(), h = K(), I = F(), e = T(), [c, g] = n(0), [l, i] = n(!1), [P, S] = n(!1), [w, E] = n(), [B, _] = n(0), k = Object.keys(r.request.body)[B], [v, A] = n(0), C = (e == null ? void 0 : e[c]) ?? (e == null ? void 0 : e[0]) ?? "";
17
- U(() => {
16
+ const { docsConfig: a } = U(L), h = F(), I = D(), g = K(), e = j(), [c, P] = n(0), [l, i] = n(!1), [S, w] = n(!1), [E, B] = n(), [k, z] = n(0), v = Object.keys(r.request.body)[k], [A, C] = n(0), R = (e == null ? void 0 : e[c]) ?? (e == null ? void 0 : e[0]) ?? "";
17
+ b(() => {
18
18
  new URLSearchParams(window.location.search).has("playground") && requestAnimationFrame(() => {
19
19
  i(!0);
20
20
  });
21
21
  }, []);
22
- const d = D({
22
+ const d = N({
23
23
  endpoint: r,
24
- baseUrl: C,
25
- contentType: k ?? "application/json",
26
- setIsFetching: S,
27
- setResult: E
28
- }), R = (t) => {
29
- g(t), I(t);
24
+ baseUrl: R,
25
+ contentType: v ?? "application/json",
26
+ setIsFetching: w,
27
+ setResult: B
28
+ }), q = (t) => {
29
+ P(t), g(t);
30
30
  }, u = (t) => {
31
31
  if (i(t), t) {
32
32
  const o = new URL(window.location.href);
@@ -43,26 +43,26 @@ const ne = ({ endpoint: r, display: f }) => {
43
43
  key: "Escape",
44
44
  callback: l ? () => u(!1) : void 0,
45
45
  isSingleKey: !0
46
- }), /* @__PURE__ */ s(N, { children: /* @__PURE__ */ s(
47
- Q.Provider,
46
+ }), /* @__PURE__ */ s(Q, { children: /* @__PURE__ */ s(
47
+ W.Provider,
48
48
  {
49
49
  value: {
50
- isSending: P,
50
+ isSending: S,
51
51
  sendRequest: d,
52
- result: w,
53
- setSelectedBaseUrlIndex: R,
52
+ result: E,
53
+ setSelectedBaseUrlIndex: q,
54
54
  selectedBaseUrlIndex: c,
55
55
  baseUrlOptions: e,
56
56
  isPlaygroundExpanded: l,
57
57
  setIsPlaygroundExpanded: u,
58
- selectedExampleIndex: v,
59
- setSelectedExampleIndex: A
58
+ selectedExampleIndex: A,
59
+ setSelectedExampleIndex: C
60
60
  },
61
- children: /* @__PURE__ */ s("div", { className: "mint:mt-6 mint:flex mint:w-full mint:flex-col mint:space-y-4", children: /* @__PURE__ */ s(L, { location: "request", children: /* @__PURE__ */ s(W, { inputs: x, setInputs: h, endpoint: r, display: f }) }) })
61
+ children: /* @__PURE__ */ s("div", { className: "mint:mt-6 mint:flex mint:w-full mint:flex-col mint:space-y-4", children: /* @__PURE__ */ s(T, { location: "request", children: /* @__PURE__ */ s(_, { inputs: h, setInputs: I, endpoint: r, display: f, pathname: x }) }) })
62
62
  }
63
63
  ) });
64
64
  };
65
65
  export {
66
- ne as ApiPlayground
66
+ oe as ApiPlayground
67
67
  };
68
68
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/api-playground/ApiPlayground/index.tsx"],"sourcesContent":["'use client';\n\nimport { ApiPlaygroundResultType, ApiPlaygroundDisplayType } from '@mintlify/models';\nimport { Endpoint } from '@mintlify/validation';\nimport { useContext, useEffect, useState } from 'react';\n\nimport { DocsConfigContext } from '@/contexts/ConfigContext';\nimport { EndpointLocationProvider } from '@/contexts/EndpointLocationContext';\nimport { useBaseUrlOptions } from '../../hooks/useBaseUrlOptions';\nimport { useKeyboardShortcut } from '@/hooks/useKeyboardShortcut';\nimport { useApiPlaygroundInputs } from '@/hooks/useMDXContentController/useApiPlaygroundInputs';\nimport { useSetApiBaseIndexCallback } from '@/hooks/useMDXContentController/useMDXContentCallbacks/useSetApiBaseIndexCallback';\nimport { useSetApiPlaygroundInputsCallback } from '@/hooks/useMDXContentController/useMDXContentCallbacks/useSetApiPlaygroundInputsCallback';\nimport { useSendPlaygroundRequest } from '@/hooks/useSendPlaygroundRequest';\nimport ErrorBoundary from '@/components/Api/ErrorBoundary';\n\nimport { ApiPlaygroundContext } from './ApiPlaygroundContext';\nimport { Request } from './Request';\nimport { cn } from \"../../utils/cn\";\n\ntype ApiPlaygroundParams = {\n endpoint: Endpoint;\n display: ApiPlaygroundDisplayType;\n};\n\nexport const ApiPlayground = ({ endpoint, display }: ApiPlaygroundParams) => {\n const { docsConfig } = useContext(DocsConfigContext);\n const inputs = useApiPlaygroundInputs();\n const setInputs = useSetApiPlaygroundInputsCallback();\n const setApiBaseIndex = useSetApiBaseIndexCallback();\n\n const baseUrlOptions = useBaseUrlOptions();\n const [selectedBaseUrlIndex, setSelectedBaseUrlIndex] = useState(0);\n const [isPlaygroundExpanded, setIsPlaygroundExpanded] = useState(false);\n\n const [isSending, setIsSending] = useState(false);\n const [result, setResult] = useState<ApiPlaygroundResultType>();\n\n const [selectedContentTypeIndex, _setSelectedContentTypeIndex] = useState(0);\n const contentType = Object.keys(endpoint.request.body)[selectedContentTypeIndex];\n const [selectedExampleIndex, setSelectedExampleIndex] = useState(0);\n\n const baseUrl = baseUrlOptions?.[selectedBaseUrlIndex] ?? baseUrlOptions?.[0] ?? '';\n\n useEffect(() => {\n const searchParams = new URLSearchParams(window.location.search);\n if (searchParams.has('playground')) {\n requestAnimationFrame(() => {\n setIsPlaygroundExpanded(true);\n });\n }\n }, []);\n\n const sendRequest = useSendPlaygroundRequest({\n endpoint,\n baseUrl,\n contentType: contentType ?? 'application/json',\n setIsFetching: setIsSending,\n setResult,\n });\n\n const setBaseUrlIndex = (index: number) => {\n setSelectedBaseUrlIndex(index);\n setApiBaseIndex(index);\n };\n\n const setIsPlaygroundExpandedWithQueryParam = (expanded: boolean) => {\n setIsPlaygroundExpanded(expanded);\n if (expanded) {\n const url = new URL(window.location.href);\n url.searchParams.set('playground', 'open');\n window.history.replaceState({}, '', url);\n } else {\n const url = new URL(window.location.href);\n url.searchParams.delete('playground');\n window.history.replaceState({}, '', url);\n }\n };\n\n useKeyboardShortcut({\n key: 'Enter',\n callback: docsConfig?.api?.playground?.display === 'interactive' ? sendRequest : undefined,\n });\n useKeyboardShortcut({\n key: 'Escape',\n callback: isPlaygroundExpanded ? () => setIsPlaygroundExpandedWithQueryParam(false) : undefined,\n isSingleKey: true,\n });\n\n return (\n <ErrorBoundary>\n <ApiPlaygroundContext.Provider\n value={{\n isSending,\n sendRequest,\n result,\n setSelectedBaseUrlIndex: setBaseUrlIndex,\n selectedBaseUrlIndex,\n baseUrlOptions,\n isPlaygroundExpanded,\n setIsPlaygroundExpanded: setIsPlaygroundExpandedWithQueryParam,\n selectedExampleIndex,\n setSelectedExampleIndex,\n }}\n >\n <div className=\"mint:mt-6 mint:flex mint:w-full mint:flex-col mint:space-y-4\">\n <EndpointLocationProvider location=\"request\">\n <Request inputs={inputs} setInputs={setInputs} endpoint={endpoint} display={display} />\n </EndpointLocationProvider>\n </div>\n </ApiPlaygroundContext.Provider>\n </ErrorBoundary>\n );\n};\n"],"names":["ApiPlayground","endpoint","display","docsConfig","useContext","DocsConfigContext","inputs","useApiPlaygroundInputs","setInputs","useSetApiPlaygroundInputsCallback","setApiBaseIndex","useSetApiBaseIndexCallback","baseUrlOptions","useBaseUrlOptions","selectedBaseUrlIndex","setSelectedBaseUrlIndex","useState","isPlaygroundExpanded","setIsPlaygroundExpanded","isSending","setIsSending","result","setResult","selectedContentTypeIndex","_setSelectedContentTypeIndex","contentType","selectedExampleIndex","setSelectedExampleIndex","baseUrl","useEffect","sendRequest","useSendPlaygroundRequest","setBaseUrlIndex","index","setIsPlaygroundExpandedWithQueryParam","expanded","url","useKeyboardShortcut","_b","_a","ErrorBoundary","jsx","ApiPlaygroundContext","EndpointLocationProvider","Request"],"mappings":";;;;;;;;;;;;;AAyBO,MAAMA,KAAgB,CAAC,EAAE,UAAAC,GAAU,SAAAC,QAAmC;;AAC3E,QAAM,EAAE,YAAAC,EAAA,IAAeC,EAAWC,CAAiB,GAC7CC,IAASC,EAAA,GACTC,IAAYC,EAAA,GACZC,IAAkBC,EAAA,GAElBC,IAAiBC,EAAA,GACjB,CAACC,GAAsBC,CAAuB,IAAIC,EAAS,CAAC,GAC5D,CAACC,GAAsBC,CAAuB,IAAIF,EAAS,EAAK,GAEhE,CAACG,GAAWC,CAAY,IAAIJ,EAAS,EAAK,GAC1C,CAACK,GAAQC,CAAS,IAAIN,EAAA,GAEtB,CAACO,GAA0BC,CAA4B,IAAIR,EAAS,CAAC,GACrES,IAAc,OAAO,KAAKxB,EAAS,QAAQ,IAAI,EAAEsB,CAAwB,GACzE,CAACG,GAAsBC,CAAuB,IAAIX,EAAS,CAAC,GAE5DY,KAAUhB,KAAA,gBAAAA,EAAiBE,QAAyBF,KAAA,gBAAAA,EAAiB,OAAM;AAEjF,EAAAiB,EAAU,MAAM;AAEd,IADqB,IAAI,gBAAgB,OAAO,SAAS,MAAM,EAC9C,IAAI,YAAY,KAC/B,sBAAsB,MAAM;AAC1B,MAAAX,EAAwB,EAAI;AAAA,IAC9B,CAAC;AAAA,EAEL,GAAG,CAAA,CAAE;AAEL,QAAMY,IAAcC,EAAyB;AAAA,IAC3C,UAAA9B;AAAA,IACA,SAAA2B;AAAA,IACA,aAAaH,KAAe;AAAA,IAC5B,eAAeL;AAAA,IACf,WAAAE;AAAA,EAAA,CACD,GAEKU,IAAkB,CAACC,MAAkB;AACzC,IAAAlB,EAAwBkB,CAAK,GAC7BvB,EAAgBuB,CAAK;AAAA,EACvB,GAEMC,IAAwC,CAACC,MAAsB;AAEnE,QADAjB,EAAwBiB,CAAQ,GAC5BA,GAAU;AACZ,YAAMC,IAAM,IAAI,IAAI,OAAO,SAAS,IAAI;AACxC,MAAAA,EAAI,aAAa,IAAI,cAAc,MAAM,GACzC,OAAO,QAAQ,aAAa,CAAA,GAAI,IAAIA,CAAG;AAAA,IACzC,OAAO;AACL,YAAMA,IAAM,IAAI,IAAI,OAAO,SAAS,IAAI;AACxC,MAAAA,EAAI,aAAa,OAAO,YAAY,GACpC,OAAO,QAAQ,aAAa,CAAA,GAAI,IAAIA,CAAG;AAAA,IACzC;AAAA,EACF;AAEA,SAAAC,EAAoB;AAAA,IAClB,KAAK;AAAA,IACL,YAAUC,KAAAC,IAAApC,KAAA,gBAAAA,EAAY,QAAZ,gBAAAoC,EAAiB,eAAjB,gBAAAD,EAA6B,aAAY,gBAAgBR,IAAc;AAAA,EAAA,CAClF,GACDO,EAAoB;AAAA,IAClB,KAAK;AAAA,IACL,UAAUpB,IAAuB,MAAMiB,EAAsC,EAAK,IAAI;AAAA,IACtF,aAAa;AAAA,EAAA,CACd,qBAGEM,GAAA,EACC,UAAA,gBAAAC;AAAA,IAACC,EAAqB;AAAA,IAArB;AAAA,MACC,OAAO;AAAA,QACL,WAAAvB;AAAA,QACA,aAAAW;AAAA,QACA,QAAAT;AAAA,QACA,yBAAyBW;AAAA,QACzB,sBAAAlB;AAAA,QACA,gBAAAF;AAAA,QACA,sBAAAK;AAAA,QACA,yBAAyBiB;AAAA,QACzB,sBAAAR;AAAA,QACA,yBAAAC;AAAA,MAAA;AAAA,MAGF,UAAA,gBAAAc,EAAC,OAAA,EAAI,WAAU,gEACb,4BAACE,GAAA,EAAyB,UAAS,WACjC,UAAA,gBAAAF,EAACG,KAAQ,QAAAtC,GAAgB,WAAAE,GAAsB,UAAAP,GAAoB,SAAAC,GAAkB,GACvF,EAAA,CACF;AAAA,IAAA;AAAA,EAAA,GAEJ;AAEJ;"}
1
+ {"version":3,"file":"index.js","sources":["../../../src/api-playground/ApiPlayground/index.tsx"],"sourcesContent":["\nimport { ApiPlaygroundResultType, ApiPlaygroundDisplayType } from '@mintlify/models';\nimport { Endpoint } from '@mintlify/validation';\nimport { useContext, useEffect, useState } from 'react';\n\nimport { DocsConfigContext } from '@/contexts/ConfigContext';\nimport { EndpointLocationProvider } from '@/contexts/EndpointLocationContext';\nimport { useBaseUrlOptions } from '../../hooks/useBaseUrlOptions';\nimport { useKeyboardShortcut } from '@/hooks/useKeyboardShortcut';\nimport { useApiPlaygroundInputs } from '@/hooks/useMDXContentController/useApiPlaygroundInputs';\nimport { useSetApiBaseIndexCallback } from '@/hooks/useMDXContentController/useMDXContentCallbacks/useSetApiBaseIndexCallback';\nimport { useSetApiPlaygroundInputsCallback } from '@/hooks/useMDXContentController/useMDXContentCallbacks/useSetApiPlaygroundInputsCallback';\nimport { useSendPlaygroundRequest } from '@/hooks/useSendPlaygroundRequest';\nimport ErrorBoundary from '@/components/Api/ErrorBoundary';\n\nimport { ApiPlaygroundContext } from './ApiPlaygroundContext';\nimport { Request } from './Request';\nimport { cn } from \"../../utils/cn\";\n\ntype ApiPlaygroundParams = {\n endpoint: Endpoint;\n display: ApiPlaygroundDisplayType;\n pathname: string;\n};\n\nexport const ApiPlayground = ({ endpoint, display, pathname }: ApiPlaygroundParams) => {\n const { docsConfig } = useContext(DocsConfigContext);\n const inputs = useApiPlaygroundInputs();\n const setInputs = useSetApiPlaygroundInputsCallback();\n const setApiBaseIndex = useSetApiBaseIndexCallback();\n\n const baseUrlOptions = useBaseUrlOptions();\n const [selectedBaseUrlIndex, setSelectedBaseUrlIndex] = useState(0);\n const [isPlaygroundExpanded, setIsPlaygroundExpanded] = useState(false);\n\n const [isSending, setIsSending] = useState(false);\n const [result, setResult] = useState<ApiPlaygroundResultType>();\n\n const [selectedContentTypeIndex, _setSelectedContentTypeIndex] = useState(0);\n const contentType = Object.keys(endpoint.request.body)[selectedContentTypeIndex];\n const [selectedExampleIndex, setSelectedExampleIndex] = useState(0);\n\n const baseUrl = baseUrlOptions?.[selectedBaseUrlIndex] ?? baseUrlOptions?.[0] ?? '';\n\n useEffect(() => {\n const searchParams = new URLSearchParams(window.location.search);\n if (searchParams.has('playground')) {\n requestAnimationFrame(() => {\n setIsPlaygroundExpanded(true);\n });\n }\n }, []);\n\n const sendRequest = useSendPlaygroundRequest({\n endpoint,\n baseUrl,\n contentType: contentType ?? 'application/json',\n setIsFetching: setIsSending,\n setResult,\n });\n\n const setBaseUrlIndex = (index: number) => {\n setSelectedBaseUrlIndex(index);\n setApiBaseIndex(index);\n };\n\n const setIsPlaygroundExpandedWithQueryParam = (expanded: boolean) => {\n setIsPlaygroundExpanded(expanded);\n if (expanded) {\n const url = new URL(window.location.href);\n url.searchParams.set('playground', 'open');\n window.history.replaceState({}, '', url);\n } else {\n const url = new URL(window.location.href);\n url.searchParams.delete('playground');\n window.history.replaceState({}, '', url);\n }\n };\n\n useKeyboardShortcut({\n key: 'Enter',\n callback: docsConfig?.api?.playground?.display === 'interactive' ? sendRequest : undefined,\n });\n useKeyboardShortcut({\n key: 'Escape',\n callback: isPlaygroundExpanded ? () => setIsPlaygroundExpandedWithQueryParam(false) : undefined,\n isSingleKey: true,\n });\n\n return (\n <ErrorBoundary>\n <ApiPlaygroundContext.Provider\n value={{\n isSending,\n sendRequest,\n result,\n setSelectedBaseUrlIndex: setBaseUrlIndex,\n selectedBaseUrlIndex,\n baseUrlOptions,\n isPlaygroundExpanded,\n setIsPlaygroundExpanded: setIsPlaygroundExpandedWithQueryParam,\n selectedExampleIndex,\n setSelectedExampleIndex,\n }}\n >\n <div className=\"mint:mt-6 mint:flex mint:w-full mint:flex-col mint:space-y-4\">\n <EndpointLocationProvider location=\"request\">\n <Request inputs={inputs} setInputs={setInputs} endpoint={endpoint} display={display} pathname={pathname} />\n </EndpointLocationProvider>\n </div>\n </ApiPlaygroundContext.Provider>\n </ErrorBoundary>\n );\n};\n"],"names":["ApiPlayground","endpoint","display","pathname","docsConfig","useContext","DocsConfigContext","inputs","useApiPlaygroundInputs","setInputs","useSetApiPlaygroundInputsCallback","setApiBaseIndex","useSetApiBaseIndexCallback","baseUrlOptions","useBaseUrlOptions","selectedBaseUrlIndex","setSelectedBaseUrlIndex","useState","isPlaygroundExpanded","setIsPlaygroundExpanded","isSending","setIsSending","result","setResult","selectedContentTypeIndex","_setSelectedContentTypeIndex","contentType","selectedExampleIndex","setSelectedExampleIndex","baseUrl","useEffect","sendRequest","useSendPlaygroundRequest","setBaseUrlIndex","index","setIsPlaygroundExpandedWithQueryParam","expanded","url","useKeyboardShortcut","_b","_a","ErrorBoundary","jsx","ApiPlaygroundContext","EndpointLocationProvider","Request"],"mappings":";;;;;;;;;;;;;AAyBO,MAAMA,KAAgB,CAAC,EAAE,UAAAC,GAAU,SAAAC,GAAS,UAAAC,QAAoC;;AACrF,QAAM,EAAE,YAAAC,EAAA,IAAeC,EAAWC,CAAiB,GAC7CC,IAASC,EAAA,GACTC,IAAYC,EAAA,GACZC,IAAkBC,EAAA,GAElBC,IAAiBC,EAAA,GACjB,CAACC,GAAsBC,CAAuB,IAAIC,EAAS,CAAC,GAC5D,CAACC,GAAsBC,CAAuB,IAAIF,EAAS,EAAK,GAEhE,CAACG,GAAWC,CAAY,IAAIJ,EAAS,EAAK,GAC1C,CAACK,GAAQC,CAAS,IAAIN,EAAA,GAEtB,CAACO,GAA0BC,CAA4B,IAAIR,EAAS,CAAC,GACrES,IAAc,OAAO,KAAKzB,EAAS,QAAQ,IAAI,EAAEuB,CAAwB,GACzE,CAACG,GAAsBC,CAAuB,IAAIX,EAAS,CAAC,GAE5DY,KAAUhB,KAAA,gBAAAA,EAAiBE,QAAyBF,KAAA,gBAAAA,EAAiB,OAAM;AAEjF,EAAAiB,EAAU,MAAM;AAEd,IADqB,IAAI,gBAAgB,OAAO,SAAS,MAAM,EAC9C,IAAI,YAAY,KAC/B,sBAAsB,MAAM;AAC1B,MAAAX,EAAwB,EAAI;AAAA,IAC9B,CAAC;AAAA,EAEL,GAAG,CAAA,CAAE;AAEL,QAAMY,IAAcC,EAAyB;AAAA,IAC3C,UAAA/B;AAAA,IACA,SAAA4B;AAAA,IACA,aAAaH,KAAe;AAAA,IAC5B,eAAeL;AAAA,IACf,WAAAE;AAAA,EAAA,CACD,GAEKU,IAAkB,CAACC,MAAkB;AACzC,IAAAlB,EAAwBkB,CAAK,GAC7BvB,EAAgBuB,CAAK;AAAA,EACvB,GAEMC,IAAwC,CAACC,MAAsB;AAEnE,QADAjB,EAAwBiB,CAAQ,GAC5BA,GAAU;AACZ,YAAMC,IAAM,IAAI,IAAI,OAAO,SAAS,IAAI;AACxC,MAAAA,EAAI,aAAa,IAAI,cAAc,MAAM,GACzC,OAAO,QAAQ,aAAa,CAAA,GAAI,IAAIA,CAAG;AAAA,IACzC,OAAO;AACL,YAAMA,IAAM,IAAI,IAAI,OAAO,SAAS,IAAI;AACxC,MAAAA,EAAI,aAAa,OAAO,YAAY,GACpC,OAAO,QAAQ,aAAa,CAAA,GAAI,IAAIA,CAAG;AAAA,IACzC;AAAA,EACF;AAEA,SAAAC,EAAoB;AAAA,IAClB,KAAK;AAAA,IACL,YAAUC,KAAAC,IAAApC,KAAA,gBAAAA,EAAY,QAAZ,gBAAAoC,EAAiB,eAAjB,gBAAAD,EAA6B,aAAY,gBAAgBR,IAAc;AAAA,EAAA,CAClF,GACDO,EAAoB;AAAA,IAClB,KAAK;AAAA,IACL,UAAUpB,IAAuB,MAAMiB,EAAsC,EAAK,IAAI;AAAA,IACtF,aAAa;AAAA,EAAA,CACd,qBAGEM,GAAA,EACC,UAAA,gBAAAC;AAAA,IAACC,EAAqB;AAAA,IAArB;AAAA,MACC,OAAO;AAAA,QACL,WAAAvB;AAAA,QACA,aAAAW;AAAA,QACA,QAAAT;AAAA,QACA,yBAAyBW;AAAA,QACzB,sBAAAlB;AAAA,QACA,gBAAAF;AAAA,QACA,sBAAAK;AAAA,QACA,yBAAyBiB;AAAA,QACzB,sBAAAR;AAAA,QACA,yBAAAC;AAAA,MAAA;AAAA,MAGF,4BAAC,OAAA,EAAI,WAAU,gEACb,UAAA,gBAAAc,EAACE,KAAyB,UAAS,WACjC,UAAA,gBAAAF,EAACG,GAAA,EAAQ,QAAAtC,GAAgB,WAAAE,GAAsB,UAAAR,GAAoB,SAAAC,GAAkB,UAAAC,GAAoB,GAC3G,EAAA,CACF;AAAA,IAAA;AAAA,EAAA,GAEJ;AAEJ;"}
@@ -1 +1 @@
1
- {"version":3,"file":"NumberMetadata.js","sources":["../../../../../src/api-playground/EndpointFields/ParamFields/PrimitiveParamField/NumberMetadata.tsx"],"sourcesContent":["'use client';\n\nimport { NumberSchema } from '@mintlify/validation';\n\nexport const NumberMetadata = ({ schema }: { schema: NumberSchema }) => {\n const exclusiveMinimum = schema.exclusiveMinimum || schema.exclusiveMinimum !== undefined;\n const exclusiveMaximum = schema.exclusiveMaximum || schema.exclusiveMaximum !== undefined;\n let range = '';\n if (schema.maximum !== undefined) {\n range = `x ${exclusiveMaximum ? '<' : '<='} ${schema.maximum}`;\n }\n if (schema.minimum !== undefined) {\n range = `x ${exclusiveMinimum ? '>' : '>='} ${schema.minimum}`;\n }\n if (schema.maximum !== undefined && schema.minimum !== undefined) {\n range = `${schema.minimum} ${exclusiveMinimum ? '<' : '<='} x ${exclusiveMaximum ? '<' : '<='} ${schema.maximum}`;\n }\n if (range === '' && schema.multipleOf === undefined) {\n return null;\n }\n return (\n <div className=\"mint:prose mint:prose-sm mint:prose-gray mint:dark:prose-invert mint:mt-6\">\n {range && (\n <>\n Required range: <code>{range}</code>\n </>\n )}\n {schema.multipleOf && (\n <>\n Must be a multiple of <code>{schema.multipleOf}</code>\n </>\n )}\n </div>\n );\n};\n"],"names":["NumberMetadata","schema","exclusiveMinimum","exclusiveMaximum","range","jsxs","Fragment","jsx"],"mappings":";AAIO,MAAMA,IAAiB,CAAC,EAAE,QAAAC,QAAuC;AACtE,QAAMC,IAAmBD,EAAO,oBAAoBA,EAAO,qBAAqB,QAC1EE,IAAmBF,EAAO,oBAAoBA,EAAO,qBAAqB;AAChF,MAAIG,IAAQ;AAUZ,SATIH,EAAO,YAAY,WACrBG,IAAQ,KAAKD,IAAmB,MAAM,IAAI,IAAIF,EAAO,OAAO,KAE1DA,EAAO,YAAY,WACrBG,IAAQ,KAAKF,IAAmB,MAAM,IAAI,IAAID,EAAO,OAAO,KAE1DA,EAAO,YAAY,UAAaA,EAAO,YAAY,WACrDG,IAAQ,GAAGH,EAAO,OAAO,IAAIC,IAAmB,MAAM,IAAI,MAAMC,IAAmB,MAAM,IAAI,IAAIF,EAAO,OAAO,KAE7GG,MAAU,MAAMH,EAAO,eAAe,SACjC,OAGP,gBAAAI,EAAC,OAAA,EAAI,WAAU,6EACZ,UAAA;AAAA,IAAAD,KACC,gBAAAC,EAAAC,GAAA,EAAE,UAAA;AAAA,MAAA;AAAA,MACgB,gBAAAC,EAAC,UAAM,UAAAH,EAAA,CAAM;AAAA,IAAA,GAC/B;AAAA,IAEDH,EAAO,cACN,gBAAAI,EAAAC,GAAA,EAAE,UAAA;AAAA,MAAA;AAAA,MACsB,gBAAAC,EAAC,QAAA,EAAM,UAAAN,EAAO,WAAA,CAAW;AAAA,IAAA,EAAA,CACjD;AAAA,EAAA,GAEJ;AAEJ;"}
1
+ {"version":3,"file":"NumberMetadata.js","sources":["../../../../../src/api-playground/EndpointFields/ParamFields/PrimitiveParamField/NumberMetadata.tsx"],"sourcesContent":["\nimport { NumberSchema } from '@mintlify/validation';\n\nexport const NumberMetadata = ({ schema }: { schema: NumberSchema }) => {\n const exclusiveMinimum = schema.exclusiveMinimum || schema.exclusiveMinimum !== undefined;\n const exclusiveMaximum = schema.exclusiveMaximum || schema.exclusiveMaximum !== undefined;\n let range = '';\n if (schema.maximum !== undefined) {\n range = `x ${exclusiveMaximum ? '<' : '<='} ${schema.maximum}`;\n }\n if (schema.minimum !== undefined) {\n range = `x ${exclusiveMinimum ? '>' : '>='} ${schema.minimum}`;\n }\n if (schema.maximum !== undefined && schema.minimum !== undefined) {\n range = `${schema.minimum} ${exclusiveMinimum ? '<' : '<='} x ${exclusiveMaximum ? '<' : '<='} ${schema.maximum}`;\n }\n if (range === '' && schema.multipleOf === undefined) {\n return null;\n }\n return (\n <div className=\"mint:prose mint:prose-sm mint:prose-gray mint:dark:prose-invert mint:mt-6\">\n {range && (\n <>\n Required range: <code>{range}</code>\n </>\n )}\n {schema.multipleOf && (\n <>\n Must be a multiple of <code>{schema.multipleOf}</code>\n </>\n )}\n </div>\n );\n};\n"],"names":["NumberMetadata","schema","exclusiveMinimum","exclusiveMaximum","range","jsxs","Fragment","jsx"],"mappings":";AAGO,MAAMA,IAAiB,CAAC,EAAE,QAAAC,QAAuC;AACtE,QAAMC,IAAmBD,EAAO,oBAAoBA,EAAO,qBAAqB,QAC1EE,IAAmBF,EAAO,oBAAoBA,EAAO,qBAAqB;AAChF,MAAIG,IAAQ;AAUZ,SATIH,EAAO,YAAY,WACrBG,IAAQ,KAAKD,IAAmB,MAAM,IAAI,IAAIF,EAAO,OAAO,KAE1DA,EAAO,YAAY,WACrBG,IAAQ,KAAKF,IAAmB,MAAM,IAAI,IAAID,EAAO,OAAO,KAE1DA,EAAO,YAAY,UAAaA,EAAO,YAAY,WACrDG,IAAQ,GAAGH,EAAO,OAAO,IAAIC,IAAmB,MAAM,IAAI,MAAMC,IAAmB,MAAM,IAAI,IAAIF,EAAO,OAAO,KAE7GG,MAAU,MAAMH,EAAO,eAAe,SACjC,OAGP,gBAAAI,EAAC,OAAA,EAAI,WAAU,6EACZ,UAAA;AAAA,IAAAD,KACC,gBAAAC,EAAAC,GAAA,EAAE,UAAA;AAAA,MAAA;AAAA,MACgB,gBAAAC,EAAC,UAAM,UAAAH,EAAA,CAAM;AAAA,IAAA,GAC/B;AAAA,IAEDH,EAAO,cACN,gBAAAI,EAAAC,GAAA,EAAE,UAAA;AAAA,MAAA;AAAA,MACsB,gBAAAC,EAAC,QAAA,EAAM,UAAAN,EAAO,WAAA,CAAW;AAAA,IAAA,EAAA,CACjD;AAAA,EAAA,GAEJ;AAEJ;"}
@@ -1 +1 @@
1
- {"version":3,"file":"StringMetadata.js","sources":["../../../../../src/api-playground/EndpointFields/ParamFields/PrimitiveParamField/StringMetadata.tsx"],"sourcesContent":["'use client';\n\nimport { StringSchema } from '@mintlify/validation';\n\nimport { cn } from '@/api-playground-2/schemaGraph/utils';\n\nexport const StringMetadata = ({\n schema,\n description,\n}: {\n schema: StringSchema;\n description?: string;\n}) => {\n return (\n <>\n {schema.const !== undefined && (\n <div className={cn('mint:prose mint:prose-sm mint:prose-gray mint:dark:prose-invert', description && 'mint:mt-6')}>\n Allowed value: <code>{`\"${schema.const}\"`}</code>\n </div>\n )}\n {(schema.minLength !== undefined || schema.maxLength !== undefined) && (\n <div className={cn('mint:prose mint:prose-sm mint:prose-gray mint:dark:prose-invert', description && 'mint:mt-6')}>\n <StringLength minLength={schema.minLength} maxLength={schema.maxLength} />\n </div>\n )}\n </>\n );\n};\n\nconst StringLength = ({ minLength, maxLength }: { minLength?: number; maxLength?: number }) => {\n if (minLength === maxLength && minLength !== undefined) {\n return (\n <>\n Required string length: <code>{minLength}</code>\n </>\n );\n }\n if (minLength && maxLength) {\n return (\n <>\n Required string length: <code>{`${minLength} - ${maxLength}`}</code>\n </>\n );\n }\n if (minLength) {\n return (\n <>\n Minimum length: <code>{minLength}</code>\n </>\n );\n }\n if (maxLength) {\n return (\n <>\n Maximum length: <code>{maxLength}</code>\n </>\n );\n }\n return '';\n};\n"],"names":["StringMetadata","schema","description","jsxs","Fragment","cn","jsx","StringLength","minLength","maxLength"],"mappings":";;;AAMO,MAAMA,IAAiB,CAAC;AAAA,EAC7B,QAAAC;AAAA,EACA,aAAAC;AACF,MAKI,gBAAAC,EAAAC,GAAA,EACG,UAAA;AAAA,EAAAH,EAAO,UAAU,UAChB,gBAAAE,EAAC,OAAA,EAAI,WAAWE,EAAG,mEAAmEH,KAAe,WAAW,GAAG,UAAA;AAAA,IAAA;AAAA,IAClG,gBAAAI,EAAC,QAAA,EAAM,UAAA,IAAIL,EAAO,KAAK,IAAA,CAAI;AAAA,EAAA,GAC5C;AAAA,GAEAA,EAAO,cAAc,UAAaA,EAAO,cAAc,WACvD,gBAAAK,EAAC,OAAA,EAAI,WAAWD,EAAG,mEAAmEH,KAAe,WAAW,GAC9G,4BAACK,GAAA,EAAa,WAAWN,EAAO,WAAW,WAAWA,EAAO,UAAA,CAAW,EAAA,CAC1E;AAAA,GAEJ,GAIEM,IAAe,CAAC,EAAE,WAAAC,GAAW,WAAAC,QAC7BD,MAAcC,KAAaD,MAAc,SAEzC,gBAAAL,EAAAC,GAAA,EAAE,UAAA;AAAA,EAAA;AAAA,EACwB,gBAAAE,EAAC,UAAM,UAAAE,EAAA,CAAU;AAAA,GAC3C,IAGAA,KAAaC,IAEb,gBAAAN,EAAAC,GAAA,EAAE,UAAA;AAAA,EAAA;AAAA,oBACyB,QAAA,EAAM,UAAA,GAAGI,CAAS,MAAMC,CAAS,GAAA,CAAG;AAAA,GAC/D,IAGAD,IAEA,gBAAAL,EAAAC,GAAA,EAAE,UAAA;AAAA,EAAA;AAAA,EACgB,gBAAAE,EAAC,UAAM,UAAAE,EAAA,CAAU;AAAA,GACnC,IAGAC,IAEA,gBAAAN,EAAAC,GAAA,EAAE,UAAA;AAAA,EAAA;AAAA,EACgB,gBAAAE,EAAC,UAAM,UAAAG,EAAA,CAAU;AAAA,GACnC,IAGG;"}
1
+ {"version":3,"file":"StringMetadata.js","sources":["../../../../../src/api-playground/EndpointFields/ParamFields/PrimitiveParamField/StringMetadata.tsx"],"sourcesContent":["\nimport { StringSchema } from '@mintlify/validation';\n\nimport { cn } from '@/api-playground-2/schemaGraph/utils';\n\nexport const StringMetadata = ({\n schema,\n description,\n}: {\n schema: StringSchema;\n description?: string;\n}) => {\n return (\n <>\n {schema.const !== undefined && (\n <div className={cn('mint:prose mint:prose-sm mint:prose-gray mint:dark:prose-invert', description && 'mint:mt-6')}>\n Allowed value: <code>{`\"${schema.const}\"`}</code>\n </div>\n )}\n {(schema.minLength !== undefined || schema.maxLength !== undefined) && (\n <div className={cn('mint:prose mint:prose-sm mint:prose-gray mint:dark:prose-invert', description && 'mint:mt-6')}>\n <StringLength minLength={schema.minLength} maxLength={schema.maxLength} />\n </div>\n )}\n </>\n );\n};\n\nconst StringLength = ({ minLength, maxLength }: { minLength?: number; maxLength?: number }) => {\n if (minLength === maxLength && minLength !== undefined) {\n return (\n <>\n Required string length: <code>{minLength}</code>\n </>\n );\n }\n if (minLength && maxLength) {\n return (\n <>\n Required string length: <code>{`${minLength} - ${maxLength}`}</code>\n </>\n );\n }\n if (minLength) {\n return (\n <>\n Minimum length: <code>{minLength}</code>\n </>\n );\n }\n if (maxLength) {\n return (\n <>\n Maximum length: <code>{maxLength}</code>\n </>\n );\n }\n return '';\n};\n"],"names":["StringMetadata","schema","description","jsxs","Fragment","cn","jsx","StringLength","minLength","maxLength"],"mappings":";;;AAKO,MAAMA,IAAiB,CAAC;AAAA,EAC7B,QAAAC;AAAA,EACA,aAAAC;AACF,MAKI,gBAAAC,EAAAC,GAAA,EACG,UAAA;AAAA,EAAAH,EAAO,UAAU,UAChB,gBAAAE,EAAC,OAAA,EAAI,WAAWE,EAAG,mEAAmEH,KAAe,WAAW,GAAG,UAAA;AAAA,IAAA;AAAA,IAClG,gBAAAI,EAAC,QAAA,EAAM,UAAA,IAAIL,EAAO,KAAK,IAAA,CAAI;AAAA,EAAA,GAC5C;AAAA,GAEAA,EAAO,cAAc,UAAaA,EAAO,cAAc,WACvD,gBAAAK,EAAC,OAAA,EAAI,WAAWD,EAAG,mEAAmEH,KAAe,WAAW,GAC9G,4BAACK,GAAA,EAAa,WAAWN,EAAO,WAAW,WAAWA,EAAO,UAAA,CAAW,EAAA,CAC1E;AAAA,GAEJ,GAIEM,IAAe,CAAC,EAAE,WAAAC,GAAW,WAAAC,QAC7BD,MAAcC,KAAaD,MAAc,SAEzC,gBAAAL,EAAAC,GAAA,EAAE,UAAA;AAAA,EAAA;AAAA,EACwB,gBAAAE,EAAC,UAAM,UAAAE,EAAA,CAAU;AAAA,GAC3C,IAGAA,KAAaC,IAEb,gBAAAN,EAAAC,GAAA,EAAE,UAAA;AAAA,EAAA;AAAA,oBACyB,QAAA,EAAM,UAAA,GAAGI,CAAS,MAAMC,CAAS,GAAA,CAAG;AAAA,GAC/D,IAGAD,IAEA,gBAAAL,EAAAC,GAAA,EAAE,UAAA;AAAA,EAAA;AAAA,EACgB,gBAAAE,EAAC,UAAM,UAAAE,EAAA,CAAU;AAAA,GACnC,IAGAC,IAEA,gBAAAN,EAAAC,GAAA,EAAE,UAAA;AAAA,EAAA;AAAA,EACgB,gBAAAE,EAAC,UAAM,UAAAG,EAAA,CAAU;AAAA,GACnC,IAGG;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../../src/api-playground/EndpointFields/ParamFields/PrimitiveParamField/index.tsx"],"sourcesContent":["'use client';\n\nimport {\n AnySchema,\n BooleanSchema,\n DataSchema,\n DataSchemaArray,\n FileSchema,\n IncrementalDataSchema,\n IncrementalDataSchemaArray,\n NullSchema,\n NumberEnumSchema,\n NumberSchema,\n StringEnumSchema,\n StringSchema,\n} from '@mintlify/validation';\n\nimport { ParamHead } from '@/components/Api/Param';\nimport { cn } from '@/api-playground-2/schemaGraph/utils';\n\nimport { Description } from '../../components/Description';\nimport { ExampleDescription } from '../ExampleDescription';\nimport { EnumConstTable, EnumOptions } from './Enum';\nimport { NumberMetadata } from './NumberMetadata';\nimport { StringMetadata } from './StringMetadata';\nimport { FieldType } from '@/api-playground-2/types/api';\n\nexport type PrimitiveParamFieldParams = {\n fieldType: FieldType;\n schema:\n | BooleanSchema\n | StringSchema\n | NumberSchema\n | StringEnumSchema\n | NumberEnumSchema\n | FileSchema\n | NullSchema\n | AnySchema;\n schemaArray?: DataSchemaArray | IncrementalDataSchemaArray;\n typeOptions: string[];\n name?: string | null;\n location?: string;\n selectedIndex?: number;\n onSelectTypeOption?: (index: number) => void;\n parentName?: string;\n paramId?: string;\n style?: string;\n explode?: boolean;\n};\n\nexport const PrimitiveParamField = ({\n fieldType,\n schema,\n schemaArray,\n name,\n location,\n typeOptions,\n selectedIndex,\n onSelectTypeOption,\n parentName,\n paramId,\n style,\n explode,\n}: PrimitiveParamFieldParams) => {\n const typeLabel = typeOptions[selectedIndex ?? 0];\n\n const description =\n schema.description ??\n (name === undefined ? `The ${fieldType} is of type \\`${typeLabel}\\`.` : undefined);\n\n return (\n <div className=\"mint:py-6\">\n <ParamHead\n id={paramId}\n name={name}\n typeLabel={typeLabel}\n location={location}\n fieldType={fieldType}\n required={schema.required}\n deprecated={schema.deprecated}\n defaultValue={schema.default}\n typeOptions={typeOptions}\n selectedTypeOptionIndex={selectedIndex}\n onSelectTypeOption={onSelectTypeOption}\n parentName={parentName}\n style={style}\n explode={explode}\n />\n <div className={cn({ 'mint:mt-4': description || isEnum(schema) })}>\n {description && <Description markdown={description} />}\n {schemaArray && isEnumWithConsts(schemaArray) ? (\n <EnumConstTable schemaArray={schemaArray} />\n ) : (\n isEnum(schema) && <EnumOptions schema={schema} />\n )}\n {isStringSchema(schema) && <StringMetadata schema={schema} description={description} />}\n {isNumberSchema(schema) && <NumberMetadata schema={schema} />}\n <ExampleDescription schema={schema} />\n </div>\n </div>\n );\n};\n\nexport const isEnum = (\n schema: DataSchema | IncrementalDataSchema\n): schema is NumberEnumSchema | StringEnumSchema => {\n return (\n schema.type === 'enum<integer>' ||\n schema.type === 'enum<number>' ||\n schema.type === 'enum<string>'\n );\n};\n\nexport const isEnumWithConsts = (\n schemaArray?: DataSchemaArray | IncrementalDataSchemaArray\n): boolean => {\n if (!schemaArray) return false;\n return schemaArray.some((schema) => isEnum(schema) && 'const' in schema);\n};\n\nconst isStringSchema = (schema: DataSchema | IncrementalDataSchema): schema is StringSchema => {\n return schema.type === 'string';\n};\n\nconst isNumberSchema = (schema: DataSchema | IncrementalDataSchema): schema is NumberSchema => {\n return schema.type === 'number' || schema.type === 'integer';\n};\n"],"names":["isEnum","schema"],"mappings":";AAuGO,MAAMA,IAAS,CACpBC,MAGEA,EAAO,SAAS,mBAChBA,EAAO,SAAS,kBAChBA,EAAO,SAAS;"}
1
+ {"version":3,"file":"index.js","sources":["../../../../../src/api-playground/EndpointFields/ParamFields/PrimitiveParamField/index.tsx"],"sourcesContent":["\nimport {\n AnySchema,\n BooleanSchema,\n DataSchema,\n DataSchemaArray,\n FileSchema,\n IncrementalDataSchema,\n IncrementalDataSchemaArray,\n NullSchema,\n NumberEnumSchema,\n NumberSchema,\n StringEnumSchema,\n StringSchema,\n} from '@mintlify/validation';\n\nimport { ParamHead } from '@/components/Api/Param';\nimport { cn } from '@/api-playground-2/schemaGraph/utils';\n\nimport { Description } from '../../components/Description';\nimport { ExampleDescription } from '../ExampleDescription';\nimport { EnumConstTable, EnumOptions } from './Enum';\nimport { NumberMetadata } from './NumberMetadata';\nimport { StringMetadata } from './StringMetadata';\nimport { FieldType } from '@/api-playground-2/types/api';\n\nexport type PrimitiveParamFieldParams = {\n fieldType: FieldType;\n schema:\n | BooleanSchema\n | StringSchema\n | NumberSchema\n | StringEnumSchema\n | NumberEnumSchema\n | FileSchema\n | NullSchema\n | AnySchema;\n schemaArray?: DataSchemaArray | IncrementalDataSchemaArray;\n typeOptions: string[];\n name?: string | null;\n location?: string;\n selectedIndex?: number;\n onSelectTypeOption?: (index: number) => void;\n parentName?: string;\n paramId?: string;\n style?: string;\n explode?: boolean;\n};\n\nexport const PrimitiveParamField = ({\n fieldType,\n schema,\n schemaArray,\n name,\n location,\n typeOptions,\n selectedIndex,\n onSelectTypeOption,\n parentName,\n paramId,\n style,\n explode,\n}: PrimitiveParamFieldParams) => {\n const typeLabel = typeOptions[selectedIndex ?? 0];\n\n const description =\n schema.description ??\n (name === undefined ? `The ${fieldType} is of type \\`${typeLabel}\\`.` : undefined);\n\n return (\n <div className=\"mint:py-6\">\n <ParamHead\n id={paramId}\n name={name}\n typeLabel={typeLabel}\n location={location}\n fieldType={fieldType}\n required={schema.required}\n deprecated={schema.deprecated}\n defaultValue={schema.default}\n typeOptions={typeOptions}\n selectedTypeOptionIndex={selectedIndex}\n onSelectTypeOption={onSelectTypeOption}\n parentName={parentName}\n style={style}\n explode={explode}\n />\n <div className={cn({ 'mint:mt-4': description || isEnum(schema) })}>\n {description && <Description markdown={description} />}\n {schemaArray && isEnumWithConsts(schemaArray) ? (\n <EnumConstTable schemaArray={schemaArray} />\n ) : (\n isEnum(schema) && <EnumOptions schema={schema} />\n )}\n {isStringSchema(schema) && <StringMetadata schema={schema} description={description} />}\n {isNumberSchema(schema) && <NumberMetadata schema={schema} />}\n <ExampleDescription schema={schema} />\n </div>\n </div>\n );\n};\n\nexport const isEnum = (\n schema: DataSchema | IncrementalDataSchema\n): schema is NumberEnumSchema | StringEnumSchema => {\n return (\n schema.type === 'enum<integer>' ||\n schema.type === 'enum<number>' ||\n schema.type === 'enum<string>'\n );\n};\n\nexport const isEnumWithConsts = (\n schemaArray?: DataSchemaArray | IncrementalDataSchemaArray\n): boolean => {\n if (!schemaArray) return false;\n return schemaArray.some((schema) => isEnum(schema) && 'const' in schema);\n};\n\nconst isStringSchema = (schema: DataSchema | IncrementalDataSchema): schema is StringSchema => {\n return schema.type === 'string';\n};\n\nconst isNumberSchema = (schema: DataSchema | IncrementalDataSchema): schema is NumberSchema => {\n return schema.type === 'number' || schema.type === 'integer';\n};\n"],"names":["isEnum","schema"],"mappings":";AAsGO,MAAMA,IAAS,CACpBC,MAGEA,EAAO,SAAS,mBAChBA,EAAO,SAAS,kBAChBA,EAAO,SAAS;"}
@@ -1 +1 @@
1
- {"version":3,"file":"RecursiveParamField.js","sources":["../../../../src/api-playground/EndpointFields/ParamFields/RecursiveParamField.tsx"],"sourcesContent":["'use client';\n\nimport { DataSchema, DataSchemaArray, IncrementalDataSchemaArray } from '@mintlify/validation';\nimport slugify from '@sindresorhus/slugify';\n\nimport { useEndpointLocation } from '@/contexts/EndpointLocationContext';\nimport { getConstFilteredSchemaArray } from '@/openapi/filterEnums';\nimport {\n getAuthFilteredSchemaArray,\n isDataSchemaArrayOrIncrementalDataSchemaArray,\n} from '@/openapi/getAuthFilteredSchemaArray';\nimport { getNextPropertiesByType } from '@/utils/api-reference/getNextPropertiesByType';\n\nimport { RecursiveParamFieldWithChildrenObserver } from './RecursiveParamFieldWithChildrenObserver';\nimport { RecursiveParamFieldWithObserver } from './RecursiveParamFieldWithObserver';\nimport { FieldType, RenderedRefs } from '@/api-playground-2/types/api';\n\nexport type RecursiveParamFieldParams = {\n fieldType: FieldType;\n schemaArray: DataSchemaArray | IncrementalDataSchemaArray;\n renderedRefs?: RenderedRefs;\n name?: string | null;\n location?: string;\n parentName?: string;\n depth?: number;\n hideDescription?: boolean;\n circularRefs?: string[];\n paramId?: string;\n style?: string;\n explode?: boolean;\n};\n\nexport const RecursiveParamField = ({\n fieldType,\n schemaArray,\n name,\n location,\n parentName,\n depth = 0,\n hideDescription = false,\n renderedRefs = new Set(),\n circularRefs,\n paramId,\n style,\n explode,\n}: RecursiveParamFieldParams) => {\n const { anchor } = useEndpointLocation();\n let filteredSchemaArray: DataSchemaArray | IncrementalDataSchemaArray | null = schemaArray;\n filteredSchemaArray = getAuthFilteredSchemaArray({ schemaArray, userGroups: undefined });\n\n if (\n filteredSchemaArray &&\n filteredSchemaArray.some((schema) => 'enum' in schema && 'const' in schema)\n ) {\n filteredSchemaArray = getConstFilteredSchemaArray({ schemaArray });\n }\n\n if (!isDataSchemaArrayOrIncrementalDataSchemaArray(filteredSchemaArray)) {\n return null;\n }\n\n const RecursiveParamFieldType = anchor\n ? RecursiveParamFieldWithChildrenObserver\n : RecursiveParamFieldWithObserver;\n\n return (\n <RecursiveParamFieldType\n fieldType={fieldType}\n schemaArray={filteredSchemaArray}\n name={name}\n location={location}\n parentName={parentName}\n depth={depth}\n style={style}\n explode={explode}\n hideDescription={hideDescription}\n renderedRefs={renderedRefs}\n circularRefs={circularRefs}\n paramId={paramId}\n />\n );\n};\n\ntype RenderNextPropertiesRecursivelyParams = {\n properties: [string, DataSchemaArray | IncrementalDataSchemaArray][];\n fieldType: FieldType;\n depth: number;\n refs: Set<string>;\n parentName?: string;\n name?: string | null;\n currentSchemaRef: string | undefined;\n style?: string;\n explode?: boolean;\n hideParentName?: boolean;\n};\n\nexport const renderNextPropertiesRecursively = ({\n currentSchemaRef,\n properties,\n fieldType,\n parentName,\n name,\n depth,\n refs,\n style,\n explode,\n hideParentName,\n}: RenderNextPropertiesRecursivelyParams) => {\n // Create a new set with the current refs for this level\n const currentLevelRefs = new Set(refs);\n\n if (currentSchemaRef) {\n currentLevelRefs.add(currentSchemaRef);\n }\n\n if (currentLevelRefs.size > 0) {\n return properties.map((property) => {\n const [propertyName, schemaArray] = property;\n const nextSchemaArray = schemaArray[0];\n const nextSchemaArrayProperties = getNextPropertiesByType(nextSchemaArray);\n const paramId = buildRecursiveParamFieldId(fieldType, name, parentName, propertyName);\n const passedName = hideParentName ? '' : name;\n let circularReferences: string[] = [];\n if (\n Object.values(nextSchemaArrayProperties).some(\n (value: unknown) => typeof value === 'string' && currentLevelRefs.has(value)\n )\n ) {\n circularReferences = Object.values(nextSchemaArrayProperties).filter(\n (value: unknown) => typeof value === 'string' && currentLevelRefs.has(value)\n );\n }\n return (\n <RecursiveParamField\n paramId={paramId}\n fieldType={fieldType}\n key={propertyName}\n schemaArray={schemaArray}\n name={propertyName}\n parentName={\n style === 'deepObject' && explode\n ? getDeepObjectParentName(passedName, parentName)\n : getRecursiveParentName(passedName, parentName)\n }\n depth={depth + 1}\n renderedRefs={new Set(currentLevelRefs)}\n circularRefs={circularReferences}\n style={style}\n explode={explode}\n />\n );\n });\n } else {\n return properties.map(([propertyName, schemaArray]) => {\n const paramId = buildRecursiveParamFieldId(fieldType, name, parentName, propertyName);\n const passedName = hideParentName ? '' : name;\n return (\n <RecursiveParamField\n paramId={paramId}\n fieldType={fieldType}\n key={propertyName}\n schemaArray={schemaArray}\n name={propertyName}\n parentName={\n style === 'deepObject' && explode\n ? getDeepObjectParentName(passedName, parentName)\n : getRecursiveParentName(passedName, parentName)\n }\n depth={depth + 1}\n renderedRefs={new Set()}\n style={style}\n explode={explode}\n />\n );\n });\n }\n};\n\ntype RenderTruncatedNextPropertiesParams = {\n properties: [string, DataSchemaArray | IncrementalDataSchemaArray][];\n fieldType: FieldType;\n parentName?: string;\n name?: string | null;\n depth: number;\n};\n\nexport const renderTruncatedNextProperties = ({\n properties,\n fieldType,\n parentName,\n name,\n depth,\n}: RenderTruncatedNextPropertiesParams) => {\n return properties.map((property) => {\n const [propertyName, schemaArray] = property;\n const nextSchemaArray = schemaArray[0];\n const baseSchema: DataSchema = nextSchemaArray as DataSchema;\n if (baseSchema.type === 'array') {\n baseSchema.items = [{ type: 'any' }];\n } else if (baseSchema.type === 'object') {\n baseSchema.properties = {};\n }\n const paramId = buildRecursiveParamFieldId(fieldType, name, parentName);\n const id = `${paramId}-${propertyName}`;\n return (\n <RecursiveParamField\n fieldType={fieldType}\n key={propertyName}\n schemaArray={[baseSchema]}\n name={propertyName}\n paramId={id}\n depth={depth + 1}\n renderedRefs={new Set()}\n />\n );\n });\n};\n\nexport const buildRecursiveParamFieldId = (\n fieldType: FieldType | undefined,\n name: string | undefined | null,\n parentName: string | undefined,\n propertyName?: string | undefined\n) => {\n return slugify(\n `${fieldType ? `${fieldType}-` : ''}${parentName ? `${parentName}-` : ''}${name ? name : ''}-${propertyName ? propertyName : ''}`,\n {\n decamelize: true,\n }\n );\n};\n\nexport const getRecursiveParentName = (name?: string | null, parentName?: string): string => {\n if (!name) {\n return '';\n }\n\n return `${parentName ? `${parentName}` : ''}${name}.`;\n};\n\nexport const getDeepObjectParentName = (name?: string | null, parentName?: string): string => {\n if (!name) {\n return '';\n }\n\n return parentName ? `${parentName}${name}][` : `${name}[`;\n};\n"],"names":["buildRecursiveParamFieldId","fieldType","name","parentName","propertyName","slugify","getRecursiveParentName"],"mappings":";;AA0NO,MAAMA,IAA6B,CACxCC,GACAC,GACAC,GACAC,MAEOC;AAAA,EACL,GAAGJ,IAAY,GAAGA,CAAS,MAAM,EAAE,GAAGE,IAAa,GAAGA,CAAU,MAAM,EAAE,GAAGD,KAAc,EAAE;AAAA,EAC3F;AAAA,IACE,YAAY;AAAA,EAAA;AACd,GAISI,IAAyB,CAACJ,GAAsBC,MACtDD,IAIE,GAAGC,IAAa,GAAGA,CAAU,KAAK,EAAE,GAAGD,CAAI,MAHzC;"}
1
+ {"version":3,"file":"RecursiveParamField.js","sources":["../../../../src/api-playground/EndpointFields/ParamFields/RecursiveParamField.tsx"],"sourcesContent":["\nimport { DataSchema, DataSchemaArray, IncrementalDataSchemaArray } from '@mintlify/validation';\nimport slugify from '@sindresorhus/slugify';\n\nimport { useEndpointLocation } from '@/contexts/EndpointLocationContext';\nimport { getConstFilteredSchemaArray } from '@/openapi/filterEnums';\nimport {\n getAuthFilteredSchemaArray,\n isDataSchemaArrayOrIncrementalDataSchemaArray,\n} from '@/openapi/getAuthFilteredSchemaArray';\nimport { getNextPropertiesByType } from '@/utils/api-reference/getNextPropertiesByType';\n\nimport { RecursiveParamFieldWithChildrenObserver } from './RecursiveParamFieldWithChildrenObserver';\nimport { RecursiveParamFieldWithObserver } from './RecursiveParamFieldWithObserver';\nimport { FieldType, RenderedRefs } from '@/api-playground-2/types/api';\n\nexport type RecursiveParamFieldParams = {\n fieldType: FieldType;\n schemaArray: DataSchemaArray | IncrementalDataSchemaArray;\n renderedRefs?: RenderedRefs;\n name?: string | null;\n location?: string;\n parentName?: string;\n depth?: number;\n hideDescription?: boolean;\n circularRefs?: string[];\n paramId?: string;\n style?: string;\n explode?: boolean;\n};\n\nexport const RecursiveParamField = ({\n fieldType,\n schemaArray,\n name,\n location,\n parentName,\n depth = 0,\n hideDescription = false,\n renderedRefs = new Set(),\n circularRefs,\n paramId,\n style,\n explode,\n}: RecursiveParamFieldParams) => {\n const { anchor } = useEndpointLocation();\n let filteredSchemaArray: DataSchemaArray | IncrementalDataSchemaArray | null = schemaArray;\n filteredSchemaArray = getAuthFilteredSchemaArray({ schemaArray, userGroups: undefined });\n\n if (\n filteredSchemaArray &&\n filteredSchemaArray.some((schema) => 'enum' in schema && 'const' in schema)\n ) {\n filteredSchemaArray = getConstFilteredSchemaArray({ schemaArray });\n }\n\n if (!isDataSchemaArrayOrIncrementalDataSchemaArray(filteredSchemaArray)) {\n return null;\n }\n\n const RecursiveParamFieldType = anchor\n ? RecursiveParamFieldWithChildrenObserver\n : RecursiveParamFieldWithObserver;\n\n return (\n <RecursiveParamFieldType\n fieldType={fieldType}\n schemaArray={filteredSchemaArray}\n name={name}\n location={location}\n parentName={parentName}\n depth={depth}\n style={style}\n explode={explode}\n hideDescription={hideDescription}\n renderedRefs={renderedRefs}\n circularRefs={circularRefs}\n paramId={paramId}\n />\n );\n};\n\ntype RenderNextPropertiesRecursivelyParams = {\n properties: [string, DataSchemaArray | IncrementalDataSchemaArray][];\n fieldType: FieldType;\n depth: number;\n refs: Set<string>;\n parentName?: string;\n name?: string | null;\n currentSchemaRef: string | undefined;\n style?: string;\n explode?: boolean;\n hideParentName?: boolean;\n};\n\nexport const renderNextPropertiesRecursively = ({\n currentSchemaRef,\n properties,\n fieldType,\n parentName,\n name,\n depth,\n refs,\n style,\n explode,\n hideParentName,\n}: RenderNextPropertiesRecursivelyParams) => {\n // Create a new set with the current refs for this level\n const currentLevelRefs = new Set(refs);\n\n if (currentSchemaRef) {\n currentLevelRefs.add(currentSchemaRef);\n }\n\n if (currentLevelRefs.size > 0) {\n return properties.map((property) => {\n const [propertyName, schemaArray] = property;\n const nextSchemaArray = schemaArray[0];\n const nextSchemaArrayProperties = getNextPropertiesByType(nextSchemaArray);\n const paramId = buildRecursiveParamFieldId(fieldType, name, parentName, propertyName);\n const passedName = hideParentName ? '' : name;\n let circularReferences: string[] = [];\n if (\n Object.values(nextSchemaArrayProperties).some(\n (value: unknown) => typeof value === 'string' && currentLevelRefs.has(value)\n )\n ) {\n circularReferences = Object.values(nextSchemaArrayProperties).filter(\n (value: unknown) => typeof value === 'string' && currentLevelRefs.has(value)\n );\n }\n return (\n <RecursiveParamField\n paramId={paramId}\n fieldType={fieldType}\n key={propertyName}\n schemaArray={schemaArray}\n name={propertyName}\n parentName={\n style === 'deepObject' && explode\n ? getDeepObjectParentName(passedName, parentName)\n : getRecursiveParentName(passedName, parentName)\n }\n depth={depth + 1}\n renderedRefs={new Set(currentLevelRefs)}\n circularRefs={circularReferences}\n style={style}\n explode={explode}\n />\n );\n });\n } else {\n return properties.map(([propertyName, schemaArray]) => {\n const paramId = buildRecursiveParamFieldId(fieldType, name, parentName, propertyName);\n const passedName = hideParentName ? '' : name;\n return (\n <RecursiveParamField\n paramId={paramId}\n fieldType={fieldType}\n key={propertyName}\n schemaArray={schemaArray}\n name={propertyName}\n parentName={\n style === 'deepObject' && explode\n ? getDeepObjectParentName(passedName, parentName)\n : getRecursiveParentName(passedName, parentName)\n }\n depth={depth + 1}\n renderedRefs={new Set()}\n style={style}\n explode={explode}\n />\n );\n });\n }\n};\n\ntype RenderTruncatedNextPropertiesParams = {\n properties: [string, DataSchemaArray | IncrementalDataSchemaArray][];\n fieldType: FieldType;\n parentName?: string;\n name?: string | null;\n depth: number;\n};\n\nexport const renderTruncatedNextProperties = ({\n properties,\n fieldType,\n parentName,\n name,\n depth,\n}: RenderTruncatedNextPropertiesParams) => {\n return properties.map((property) => {\n const [propertyName, schemaArray] = property;\n const nextSchemaArray = schemaArray[0];\n const baseSchema: DataSchema = nextSchemaArray as DataSchema;\n if (baseSchema.type === 'array') {\n baseSchema.items = [{ type: 'any' }];\n } else if (baseSchema.type === 'object') {\n baseSchema.properties = {};\n }\n const paramId = buildRecursiveParamFieldId(fieldType, name, parentName);\n const id = `${paramId}-${propertyName}`;\n return (\n <RecursiveParamField\n fieldType={fieldType}\n key={propertyName}\n schemaArray={[baseSchema]}\n name={propertyName}\n paramId={id}\n depth={depth + 1}\n renderedRefs={new Set()}\n />\n );\n });\n};\n\nexport const buildRecursiveParamFieldId = (\n fieldType: FieldType | undefined,\n name: string | undefined | null,\n parentName: string | undefined,\n propertyName?: string | undefined\n) => {\n return slugify(\n `${fieldType ? `${fieldType}-` : ''}${parentName ? `${parentName}-` : ''}${name ? name : ''}-${propertyName ? propertyName : ''}`,\n {\n decamelize: true,\n }\n );\n};\n\nexport const getRecursiveParentName = (name?: string | null, parentName?: string): string => {\n if (!name) {\n return '';\n }\n\n return `${parentName ? `${parentName}` : ''}${name}.`;\n};\n\nexport const getDeepObjectParentName = (name?: string | null, parentName?: string): string => {\n if (!name) {\n return '';\n }\n\n return parentName ? `${parentName}${name}][` : `${name}[`;\n};\n"],"names":["buildRecursiveParamFieldId","fieldType","name","parentName","propertyName","slugify","getRecursiveParentName"],"mappings":";;AAyNO,MAAMA,IAA6B,CACxCC,GACAC,GACAC,GACAC,MAEOC;AAAA,EACL,GAAGJ,IAAY,GAAGA,CAAS,MAAM,EAAE,GAAGE,IAAa,GAAGA,CAAU,MAAM,EAAE,GAAGD,KAAc,EAAE;AAAA,EAC3F;AAAA,IACE,YAAY;AAAA,EAAA;AACd,GAISI,IAAyB,CAACJ,GAAsBC,MACtDD,IAIE,GAAGC,IAAa,GAAGA,CAAU,KAAK,EAAE,GAAGD,CAAI,MAHzC;"}
@@ -1 +1 @@
1
- {"version":3,"file":"Description.js","sources":["../../../../src/api-playground/EndpointFields/components/Description.tsx"],"sourcesContent":["'use client';\n\nimport { Markdown, MarkdownWithoutHeaders } from '../../../components/Api/Markdown';\nimport { cn } from '@/api-playground-2/schemaGraph/utils';\n\nexport const Description = ({ markdown, className }: { markdown: string; className?: string }) => {\n return (\n <div className={cn('mint:prose mint:prose-sm mint:prose-gray mint:dark:prose-invert mint:max-w-none mint:w-full mint:col-span-full', className)}>\n <Markdown>{markdown}</Markdown>\n </div>\n );\n};\n\nexport const DescriptionWithoutHeaders = ({\n markdown,\n className,\n}: {\n markdown: string;\n className?: string;\n}) => {\n return (\n <div className={cn('mint:prose mint:prose-sm mint:prose-gray mint:dark:prose-invert mint:max-w-none mint:w-full', className)}>\n <MarkdownWithoutHeaders>{markdown}</MarkdownWithoutHeaders>\n </div>\n );\n};\n"],"names":["Description","markdown","className","jsx","cn","Markdown","DescriptionWithoutHeaders","MarkdownWithoutHeaders"],"mappings":";;;;AAKO,MAAMA,IAAc,CAAC,EAAE,UAAAC,GAAU,WAAAC,QAEpC,gBAAAC,EAAC,OAAA,EAAI,WAAWC,EAAG,kHAAkHF,CAAS,GAC5I,UAAA,gBAAAC,EAACE,GAAA,EAAU,UAAAJ,EAAA,CAAS,EAAA,CACtB,GAISK,IAA4B,CAAC;AAAA,EACxC,UAAAL;AAAA,EACA,WAAAC;AACF,MAKI,gBAAAC,EAAC,OAAA,EAAI,WAAWC,EAAG,+FAA+FF,CAAS,GACzH,UAAA,gBAAAC,EAACI,GAAA,EAAwB,UAAAN,EAAA,CAAS,EAAA,CACpC;"}
1
+ {"version":3,"file":"Description.js","sources":["../../../../src/api-playground/EndpointFields/components/Description.tsx"],"sourcesContent":["\nimport { Markdown, MarkdownWithoutHeaders } from '../../../components/Api/Markdown';\nimport { cn } from '@/api-playground-2/schemaGraph/utils';\n\nexport const Description = ({ markdown, className }: { markdown: string; className?: string }) => {\n return (\n <div className={cn('mint:prose mint:prose-sm mint:prose-gray mint:dark:prose-invert mint:max-w-none mint:w-full mint:col-span-full', className)}>\n <Markdown>{markdown}</Markdown>\n </div>\n );\n};\n\nexport const DescriptionWithoutHeaders = ({\n markdown,\n className,\n}: {\n markdown: string;\n className?: string;\n}) => {\n return (\n <div className={cn('mint:prose mint:prose-sm mint:prose-gray mint:dark:prose-invert mint:max-w-none mint:w-full', className)}>\n <MarkdownWithoutHeaders>{markdown}</MarkdownWithoutHeaders>\n </div>\n );\n};\n"],"names":["Description","markdown","className","jsx","cn","Markdown","DescriptionWithoutHeaders","MarkdownWithoutHeaders"],"mappings":";;;;AAIO,MAAMA,IAAc,CAAC,EAAE,UAAAC,GAAU,WAAAC,QAEpC,gBAAAC,EAAC,OAAA,EAAI,WAAWC,EAAG,kHAAkHF,CAAS,GAC5I,UAAA,gBAAAC,EAACE,GAAA,EAAU,UAAAJ,EAAA,CAAS,EAAA,CACtB,GAISK,IAA4B,CAAC;AAAA,EACxC,UAAAL;AAAA,EACA,WAAAC;AACF,MAKI,gBAAAC,EAAC,OAAA,EAAI,WAAWC,EAAG,+FAA+FF,CAAS,GACzH,UAAA,gBAAAC,EAACI,GAAA,EAAwB,UAAAN,EAAA,CAAS,EAAA,CACpC;"}
@@ -1 +1 @@
1
- {"version":3,"file":"OneOfDropdown.js","sources":["../../../../src/api-playground/EndpointFields/components/OneOfDropdown.tsx"],"sourcesContent":["'use client';\n\nimport { Tab, Tabs } from '@/components/content-components/tabs';\nimport { cn } from \"../../../utils/cn\";\n\nexport const OneOfSelection = ({\n options,\n selectedIndex,\n onSelectOption,\n}: {\n options: string[];\n selectedIndex?: number;\n onSelectOption?: (index: number) => void;\n}) => (\n <div className=\"mint:-mt-2\">\n <Tabs\n defaultTabIndex={selectedIndex}\n onClickTab={onSelectOption}\n className=\"mint:border-gray-100! mint:mb-4! mint:dark:border-white/10!\"\n >\n {options.map((option) => (\n <Tab title={option} key={option} />\n ))}\n </Tabs>\n </div>\n);\n"],"names":["OneOfSelection","options","selectedIndex","onSelectOption","jsx","Tabs","option","Tab"],"mappings":";;;AAKO,MAAMA,IAAiB,CAAC;AAAA,EAC7B,SAAAC;AAAA,EACA,eAAAC;AAAA,EACA,gBAAAC;AACF,MAKE,gBAAAC,EAAC,OAAA,EAAI,WAAU,cACb,UAAA,gBAAAA;AAAA,EAACC;AAAA,EAAA;AAAA,IACC,iBAAiBH;AAAA,IACjB,YAAYC;AAAA,IACZ,WAAU;AAAA,IAET,UAAAF,EAAQ,IAAI,CAACK,wBACXC,GAAA,EAAI,OAAOD,EAAA,GAAaA,CAAQ,CAClC;AAAA,EAAA;AACH,EAAA,CACF;"}
1
+ {"version":3,"file":"OneOfDropdown.js","sources":["../../../../src/api-playground/EndpointFields/components/OneOfDropdown.tsx"],"sourcesContent":["\nimport { Tab, Tabs } from '@/components/content-components/tabs';\nimport { cn } from \"../../../utils/cn\";\n\nexport const OneOfSelection = ({\n options,\n selectedIndex,\n onSelectOption,\n}: {\n options: string[];\n selectedIndex?: number;\n onSelectOption?: (index: number) => void;\n}) => (\n <div className=\"mint:-mt-2\">\n <Tabs\n defaultTabIndex={selectedIndex}\n onClickTab={onSelectOption}\n className=\"mint:border-gray-100! mint:mb-4! mint:dark:border-white/10!\"\n >\n {options.map((option) => (\n <Tab title={option} key={option} />\n ))}\n </Tabs>\n </div>\n);\n"],"names":["OneOfSelection","options","selectedIndex","onSelectOption","jsx","Tabs","option","Tab"],"mappings":";;;AAIO,MAAMA,IAAiB,CAAC;AAAA,EAC7B,SAAAC;AAAA,EACA,eAAAC;AAAA,EACA,gBAAAC;AACF,MAKE,gBAAAC,EAAC,OAAA,EAAI,WAAU,cACb,UAAA,gBAAAA;AAAA,EAACC;AAAA,EAAA;AAAA,IACC,iBAAiBH;AAAA,IACjB,YAAYC;AAAA,IACZ,WAAU;AAAA,IAET,UAAAF,EAAQ,IAAI,CAACK,wBACXC,GAAA,EAAI,OAAOD,EAAA,GAAaA,CAAQ,CAClC;AAAA,EAAA;AACH,EAAA,CACF;"}
@@ -1 +1 @@
1
- {"version":3,"file":"OptionDropdown.js","sources":["../../../../src/api-playground/EndpointFields/components/OptionDropdown.tsx"],"sourcesContent":["'use client';\n\nimport { useSelectedLocale } from '@/utils/locales';\nimport { Classes } from '@/api-playground-2/types';\nimport { cn } from '@/api-playground-2/schemaGraph/utils';\n\nexport const OptionDropdown = ({\n options,\n selectedIndex,\n onSelectOption,\n noBackground,\n}: {\n options: string[];\n selectedIndex?: number;\n onSelectOption?: (index: number) => void;\n noBackground?: boolean;\n}) => {\n const locale = useSelectedLocale();\n return (\n <div className={cn(Classes.OptionDropdown, 'mint:inline-flex mint:relative mint:mr-0!')}>\n <div\n className={cn(\n 'mint:font-mono mint:text-xs mint:font-medium mint:inline-block! mint:leading-4! mint:items-center mint:rounded-md mint:text-gray-600 mint:dark:text-gray-200 mint:py-0.5',\n !noBackground && 'mint:bg-gray-100/50 mint:dark:bg-white/5'\n )}\n >\n <select\n aria-label={locale['aria.selectSchemaType']}\n className=\"mint:flex mint:bg-transparent mint:focus:outline-0 mint:cursor-pointer mint:text-start mint:pl-0 mint:pr-0 mint:hover:text-gray-950 mint:dark:hover:text-white\"\n onChange={(e) => onSelectOption?.(e.target.selectedIndex)}\n value={selectedIndex}\n >\n {options.map((option, index) => (\n <option value={index} key={index}>\n {option}\n </option>\n ))}\n </select>\n </div>\n </div>\n );\n};\n"],"names":["OptionDropdown","options","selectedIndex","onSelectOption","noBackground","locale","useSelectedLocale","cn","Classes","jsx","e","option","index"],"mappings":";;;;;AAMO,MAAMA,IAAiB,CAAC;AAAA,EAC7B,SAAAC;AAAA,EACA,eAAAC;AAAA,EACA,gBAAAC;AAAA,EACA,cAAAC;AACF,MAKM;AACJ,QAAMC,IAASC,EAAA;AACf,2BACG,OAAA,EAAI,WAAWC,EAAGC,EAAQ,gBAAgB,2CAA2C,GACpF,UAAA,gBAAAC;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAWF;AAAA,QACT;AAAA,QACA,CAACH,KAAgB;AAAA,MAAA;AAAA,MAGnB,UAAA,gBAAAK;AAAA,QAAC;AAAA,QAAA;AAAA,UACC,cAAYJ,EAAO,uBAAuB;AAAA,UAC1C,WAAU;AAAA,UACV,UAAU,CAACK,MAAMP,KAAA,gBAAAA,EAAiBO,EAAE,OAAO;AAAA,UAC3C,OAAOR;AAAA,UAEN,UAAAD,EAAQ,IAAI,CAACU,GAAQC,MACpB,gBAAAH,EAAC,UAAA,EAAO,OAAOG,GACZ,UAAAD,EAAA,GADwBC,CAE3B,CACD;AAAA,QAAA;AAAA,MAAA;AAAA,IACH;AAAA,EAAA,GAEJ;AAEJ;"}
1
+ {"version":3,"file":"OptionDropdown.js","sources":["../../../../src/api-playground/EndpointFields/components/OptionDropdown.tsx"],"sourcesContent":["\nimport { useSelectedLocale } from '@/utils/locales';\nimport { Classes } from '@/api-playground-2/types';\nimport { cn } from '@/api-playground-2/schemaGraph/utils';\n\nexport const OptionDropdown = ({\n options,\n selectedIndex,\n onSelectOption,\n noBackground,\n}: {\n options: string[];\n selectedIndex?: number;\n onSelectOption?: (index: number) => void;\n noBackground?: boolean;\n}) => {\n const locale = useSelectedLocale();\n return (\n <div className={cn(Classes.OptionDropdown, 'mint:inline-flex mint:relative mint:mr-0!')}>\n <div\n className={cn(\n 'mint:font-mono mint:text-xs mint:font-medium mint:inline-block! mint:leading-4! mint:items-center mint:rounded-md mint:text-gray-600 mint:dark:text-gray-200 mint:py-0.5',\n !noBackground && 'mint:bg-gray-100/50 mint:dark:bg-white/5'\n )}\n >\n <select\n aria-label={locale['aria.selectSchemaType']}\n className=\"mint:flex mint:bg-transparent mint:focus:outline-0 mint:cursor-pointer mint:text-start mint:pl-0 mint:pr-0 mint:hover:text-gray-950 mint:dark:hover:text-white\"\n onChange={(e) => onSelectOption?.(e.target.selectedIndex)}\n value={selectedIndex}\n >\n {options.map((option, index) => (\n <option value={index} key={index}>\n {option}\n </option>\n ))}\n </select>\n </div>\n </div>\n );\n};\n"],"names":["OptionDropdown","options","selectedIndex","onSelectOption","noBackground","locale","useSelectedLocale","cn","Classes","jsx","e","option","index"],"mappings":";;;;;AAKO,MAAMA,IAAiB,CAAC;AAAA,EAC7B,SAAAC;AAAA,EACA,eAAAC;AAAA,EACA,gBAAAC;AAAA,EACA,cAAAC;AACF,MAKM;AACJ,QAAMC,IAASC,EAAA;AACf,2BACG,OAAA,EAAI,WAAWC,EAAGC,EAAQ,gBAAgB,2CAA2C,GACpF,UAAA,gBAAAC;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAWF;AAAA,QACT;AAAA,QACA,CAACH,KAAgB;AAAA,MAAA;AAAA,MAGnB,UAAA,gBAAAK;AAAA,QAAC;AAAA,QAAA;AAAA,UACC,cAAYJ,EAAO,uBAAuB;AAAA,UAC1C,WAAU;AAAA,UACV,UAAU,CAACK,MAAMP,KAAA,gBAAAA,EAAiBO,EAAE,OAAO;AAAA,UAC3C,OAAOR;AAAA,UAEN,UAAAD,EAAQ,IAAI,CAACU,GAAQC,MACpB,gBAAAH,EAAC,UAAA,EAAO,OAAOG,GACZ,UAAAD,EAAA,GADwBC,CAE3B,CACD;AAAA,QAAA;AAAA,MAAA;AAAA,IACH;AAAA,EAAA,GAEJ;AAEJ;"}
@@ -1 +1 @@
1
- {"version":3,"file":"SectionHeading.js","sources":["../../../../src/api-playground/EndpointFields/components/SectionHeading.tsx"],"sourcesContent":["'use client';\n\nimport { ReactNode } from 'react';\n\nimport { Classes } from '@/api-playground-2/types';\nimport { cn } from '@/api-playground-2/schemaGraph/utils';\n\nimport { Description } from './Description';\nimport { OptionDropdown } from './OptionDropdown';\n\ntype SectionHeadingProps = {\n title: string;\n subtitle?: string;\n rightElement?: string | ReactNode;\n options?: string[];\n selectedIndex?: number;\n onSelectOption?: (index: number) => void;\n onToggleExpand?: () => void;\n children?: ReactNode;\n};\n\nexport const SectionHeading = ({\n title,\n subtitle,\n rightElement,\n options,\n selectedIndex,\n onSelectOption,\n children,\n}: SectionHeadingProps) => {\n return (\n <div className={cn(Classes.APISectionHeading, 'mint:flex mint:flex-col mint:gap-y-4 mint:w-full')}>\n <div className=\"mint:flex mint:items-baseline mint:border-b mint:pb-2.5 mint:border-gray-100 mint:dark:border-gray-800 mint:w-full\">\n <h4 className={cn(Classes.APISectionHeadingTitle, 'mint:flex-1 mint:mb-0')}>{title}</h4>\n {options && options.length > 1 && (\n <OptionDropdown\n options={options}\n selectedIndex={selectedIndex}\n onSelectOption={onSelectOption}\n noBackground\n />\n )}\n <div className=\"mint:flex mint:items-center\">\n {rightElement &&\n (typeof rightElement === 'string' ? (\n <div className=\"mint:font-mono mint:px-2 mint:py-0.5 mint:text-xs mint:font-medium mint:text-gray-600 mint:dark:text-gray-300\">\n {rightElement}\n </div>\n ) : (\n rightElement\n ))}\n </div>\n </div>\n {children}\n {subtitle && (\n <div\n className={cn(\n Classes.APISectionHeadingSubtitle,\n 'mint:text-sm mint:prose mint:prose-gray mint:dark:prose-invert mint:mb-2'\n )}\n >\n <Description markdown={subtitle} />\n </div>\n )}\n </div>\n );\n};\n"],"names":["SectionHeading","title","subtitle","rightElement","options","selectedIndex","onSelectOption","children","cn","Classes","jsxs","jsx","OptionDropdown","Description"],"mappings":";;;;;;AAqBO,MAAMA,IAAiB,CAAC;AAAA,EAC7B,OAAAC;AAAA,EACA,UAAAC;AAAA,EACA,cAAAC;AAAA,EACA,SAAAC;AAAA,EACA,eAAAC;AAAA,EACA,gBAAAC;AAAA,EACA,UAAAC;AACF,wBAEK,OAAA,EAAI,WAAWC,EAAGC,EAAQ,mBAAmB,kDAAkD,GAC9F,UAAA;AAAA,EAAA,gBAAAC,EAAC,OAAA,EAAI,WAAU,sHACb,UAAA;AAAA,IAAA,gBAAAC,EAAC,QAAG,WAAWH,EAAGC,EAAQ,wBAAwB,uBAAuB,GAAI,UAAAR,GAAM;AAAA,IAClFG,KAAWA,EAAQ,SAAS,KAC3B,gBAAAO;AAAA,MAACC;AAAA,MAAA;AAAA,QACC,SAAAR;AAAA,QACA,eAAAC;AAAA,QACA,gBAAAC;AAAA,QACA,cAAY;AAAA,MAAA;AAAA,IAAA;AAAA,IAGhB,gBAAAK,EAAC,OAAA,EAAI,WAAU,+BACZ,gBACE,OAAOR,KAAiB,WACvB,gBAAAQ,EAAC,OAAA,EAAI,WAAU,iHACZ,UAAAR,EAAA,CACH,IAEAA,GAAA,CAEN;AAAA,EAAA,GACF;AAAA,EACCI;AAAA,EACAL,KACC,gBAAAS;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAWH;AAAA,QACTC,EAAQ;AAAA,QACR;AAAA,MAAA;AAAA,MAGF,UAAA,gBAAAE,EAACE,GAAA,EAAY,UAAUX,EAAA,CAAU;AAAA,IAAA;AAAA,EAAA;AACnC,GAEJ;"}
1
+ {"version":3,"file":"SectionHeading.js","sources":["../../../../src/api-playground/EndpointFields/components/SectionHeading.tsx"],"sourcesContent":["\nimport { ReactNode } from 'react';\n\nimport { Classes } from '@/api-playground-2/types';\nimport { cn } from '@/api-playground-2/schemaGraph/utils';\n\nimport { Description } from './Description';\nimport { OptionDropdown } from './OptionDropdown';\n\ntype SectionHeadingProps = {\n title: string;\n subtitle?: string;\n rightElement?: string | ReactNode;\n options?: string[];\n selectedIndex?: number;\n onSelectOption?: (index: number) => void;\n onToggleExpand?: () => void;\n children?: ReactNode;\n};\n\nexport const SectionHeading = ({\n title,\n subtitle,\n rightElement,\n options,\n selectedIndex,\n onSelectOption,\n children,\n}: SectionHeadingProps) => {\n return (\n <div className={cn(Classes.APISectionHeading, 'mint:flex mint:flex-col mint:gap-y-4 mint:w-full')}>\n <div className=\"mint:flex mint:items-baseline mint:border-b mint:pb-2.5 mint:border-gray-100 mint:dark:border-gray-800 mint:w-full\">\n <h4 className={cn(Classes.APISectionHeadingTitle, 'mint:flex-1 mint:mb-0')}>{title}</h4>\n {options && options.length > 1 && (\n <OptionDropdown\n options={options}\n selectedIndex={selectedIndex}\n onSelectOption={onSelectOption}\n noBackground\n />\n )}\n <div className=\"mint:flex mint:items-center\">\n {rightElement &&\n (typeof rightElement === 'string' ? (\n <div className=\"mint:font-mono mint:px-2 mint:py-0.5 mint:text-xs mint:font-medium mint:text-gray-600 mint:dark:text-gray-300\">\n {rightElement}\n </div>\n ) : (\n rightElement\n ))}\n </div>\n </div>\n {children}\n {subtitle && (\n <div\n className={cn(\n Classes.APISectionHeadingSubtitle,\n 'mint:text-sm mint:prose mint:prose-gray mint:dark:prose-invert mint:mb-2'\n )}\n >\n <Description markdown={subtitle} />\n </div>\n )}\n </div>\n );\n};\n"],"names":["SectionHeading","title","subtitle","rightElement","options","selectedIndex","onSelectOption","children","cn","Classes","jsxs","jsx","OptionDropdown","Description"],"mappings":";;;;;;AAoBO,MAAMA,IAAiB,CAAC;AAAA,EAC7B,OAAAC;AAAA,EACA,UAAAC;AAAA,EACA,cAAAC;AAAA,EACA,SAAAC;AAAA,EACA,eAAAC;AAAA,EACA,gBAAAC;AAAA,EACA,UAAAC;AACF,wBAEK,OAAA,EAAI,WAAWC,EAAGC,EAAQ,mBAAmB,kDAAkD,GAC9F,UAAA;AAAA,EAAA,gBAAAC,EAAC,OAAA,EAAI,WAAU,sHACb,UAAA;AAAA,IAAA,gBAAAC,EAAC,QAAG,WAAWH,EAAGC,EAAQ,wBAAwB,uBAAuB,GAAI,UAAAR,GAAM;AAAA,IAClFG,KAAWA,EAAQ,SAAS,KAC3B,gBAAAO;AAAA,MAACC;AAAA,MAAA;AAAA,QACC,SAAAR;AAAA,QACA,eAAAC;AAAA,QACA,gBAAAC;AAAA,QACA,cAAY;AAAA,MAAA;AAAA,IAAA;AAAA,IAGhB,gBAAAK,EAAC,OAAA,EAAI,WAAU,+BACZ,gBACE,OAAOR,KAAiB,WACvB,gBAAAQ,EAAC,OAAA,EAAI,WAAU,iHACZ,UAAAR,EAAA,CACH,IAEAA,GAAA,CAEN;AAAA,EAAA,GACF;AAAA,EACCI;AAAA,EACAL,KACC,gBAAAS;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAWH;AAAA,QACTC,EAAQ;AAAA,QACR;AAAA,MAAA;AAAA,MAGF,UAAA,gBAAAE,EAACE,GAAA,EAAY,UAAUX,EAAA,CAAU;AAAA,IAAA;AAAA,EAAA;AACnC,GAEJ;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/api-playground/EndpointFields/index.tsx"],"sourcesContent":["'use client';\n\nimport { EndpointLocationProvider } from '@/contexts/EndpointLocationContext';\nimport { useOpenApiEndpoint } from '@/hooks/useEndpoint';\nimport { getFilteredSecurityOptions } from '@/utils/api-reference/getFilteredSecurityOptions';\n\nimport { EndpointBody } from './EndpointBody';\nimport { EndpointParameters } from './EndpointParameters';\nimport { EndpointResponse } from './EndpointResponse';\nimport { EndpointSecurity } from './EndpointSecurity';\n\nconst EndpointFields = () => {\n const endpoint = useOpenApiEndpoint();\n const newApiReferencePage = true;\n\n if (endpoint === undefined || newApiReferencePage) {\n return null;\n }\n\n // TODO(ronan): remove when all security options are handled (none should be empty)\n const filteredSecurityOptions = getFilteredSecurityOptions(endpoint);\n\n return (\n <>\n {filteredSecurityOptions.length > 0 && (\n <EndpointSecurity securityOptions={filteredSecurityOptions} />\n )}\n <EndpointParameters parameters={endpoint.request.parameters} />\n <EndpointLocationProvider location=\"request\">\n <EndpointBody body={endpoint.request.body} />\n </EndpointLocationProvider>\n <EndpointLocationProvider location=\"response\">\n {Object.entries(endpoint.response)[0] && <EndpointResponse response={endpoint.response} />}\n </EndpointLocationProvider>\n </>\n );\n};\n\nexport default EndpointFields;\n"],"names":["EndpointFields","useOpenApiEndpoint"],"mappings":";;AAWA,MAAMA,IAAiB,OACJC,EAAA,GAIR;"}
1
+ {"version":3,"file":"index.js","sources":["../../../src/api-playground/EndpointFields/index.tsx"],"sourcesContent":["\nimport { EndpointLocationProvider } from '@/contexts/EndpointLocationContext';\nimport { useOpenApiEndpoint } from '@/hooks/useEndpoint';\nimport { getFilteredSecurityOptions } from '@/utils/api-reference/getFilteredSecurityOptions';\n\nimport { EndpointBody } from './EndpointBody';\nimport { EndpointParameters } from './EndpointParameters';\nimport { EndpointResponse } from './EndpointResponse';\nimport { EndpointSecurity } from './EndpointSecurity';\n\nconst EndpointFields = () => {\n const endpoint = useOpenApiEndpoint();\n const newApiReferencePage = true;\n\n if (endpoint === undefined || newApiReferencePage) {\n return null;\n }\n\n // TODO(ronan): remove when all security options are handled (none should be empty)\n const filteredSecurityOptions = getFilteredSecurityOptions(endpoint);\n\n return (\n <>\n {filteredSecurityOptions.length > 0 && (\n <EndpointSecurity securityOptions={filteredSecurityOptions} />\n )}\n <EndpointParameters parameters={endpoint.request.parameters} />\n <EndpointLocationProvider location=\"request\">\n <EndpointBody body={endpoint.request.body} />\n </EndpointLocationProvider>\n <EndpointLocationProvider location=\"response\">\n {Object.entries(endpoint.response)[0] && <EndpointResponse response={endpoint.response} />}\n </EndpointLocationProvider>\n </>\n );\n};\n\nexport default EndpointFields;\n"],"names":["EndpointFields","useOpenApiEndpoint"],"mappings":";;AAUA,MAAMA,IAAiB,OACJC,EAAA,GAIR;"}
@@ -1 +1 @@
1
- {"version":3,"file":"Api.js","sources":["../../src/api-playground-2/Api.tsx"],"sourcesContent":["'use client';\n\nimport { ReactNode, useContext } from 'react';\n\nimport { ApiReferenceContext2 } from '@/contexts/ConfigContext';\n\nimport { OperationPage } from './OperationPage';\nimport { SchemaPage } from './SchemaPage';\n\nexport const Api = ({ children }: { children: ReactNode }) => {\n const { apiReferenceData2 } = useContext(ApiReferenceContext2);\n\n if (apiReferenceData2.operation) {\n return (\n <OperationPage apiReferenceData={apiReferenceData2} operation={apiReferenceData2.operation}>\n {children}\n </OperationPage>\n );\n }\n if (apiReferenceData2.schemaData) {\n return <SchemaPage apiReferenceData={apiReferenceData2}>{children}</SchemaPage>;\n }\n return null;\n};\n"],"names":["Api","children","apiReferenceData2","useContext","ApiReferenceContext2","OperationPage","jsx","SchemaPage"],"mappings":";;;;;AASO,MAAMA,IAAM,CAAC,EAAE,UAAAC,QAAwC;AAC5D,QAAM,EAAE,mBAAAC,EAAA,IAAsBC,EAAWC,CAAoB;AAE7D,SAAIF,EAAkB,8BAEjBG,GAAA,EAAc,kBAAkBH,GAAmB,WAAWA,EAAkB,WAC9E,UAAAD,GACH,IAGAC,EAAkB,aACb,gBAAAI,EAACC,GAAA,EAAW,kBAAkBL,GAAoB,UAAAD,EAAA,CAAS,IAE7D;AACT;"}
1
+ {"version":3,"file":"Api.js","sources":["../../src/api-playground-2/Api.tsx"],"sourcesContent":["\nimport { ReactNode, useContext } from 'react';\n\nimport { ApiReferenceContext2 } from '@/contexts/ConfigContext';\n\nimport { OperationPage } from './OperationPage';\nimport { SchemaPage } from './SchemaPage';\n\nexport const Api = ({ children }: { children: ReactNode }) => {\n const { apiReferenceData2 } = useContext(ApiReferenceContext2);\n\n if (apiReferenceData2.operation) {\n return (\n <OperationPage apiReferenceData={apiReferenceData2} operation={apiReferenceData2.operation}>\n {children}\n </OperationPage>\n );\n }\n if (apiReferenceData2.schemaData) {\n return <SchemaPage apiReferenceData={apiReferenceData2}>{children}</SchemaPage>;\n }\n return null;\n};\n"],"names":["Api","children","apiReferenceData2","useContext","ApiReferenceContext2","OperationPage","jsx","SchemaPage"],"mappings":";;;;;AAQO,MAAMA,IAAM,CAAC,EAAE,UAAAC,QAAwC;AAC5D,QAAM,EAAE,mBAAAC,EAAA,IAAsBC,EAAWC,CAAoB;AAE7D,SAAIF,EAAkB,8BAEjBG,GAAA,EAAc,kBAAkBH,GAAmB,WAAWA,EAAkB,WAC9E,UAAAD,GACH,IAGAC,EAAkB,aACb,gBAAAI,EAACC,GAAA,EAAW,kBAAkBL,GAAoB,UAAAD,EAAA,CAAS,IAE7D;AACT;"}
@@ -1 +1 @@
1
- {"version":3,"file":"ApiExamples.js","sources":["../../src/api-playground-2/ApiExamples.tsx"],"sourcesContent":["'use client';\n\nimport React, { useContext, useMemo, useState } from 'react';\n\nimport { usePlaygroundInputsStore } from '@/api-playground-2/hooks/usePlaygroundInputsStore';\nimport { CodeExampleLabelContext } from '@/contexts/CodeExampleLabelContext';\nimport { ApiReferenceContext2 } from '@/contexts/ConfigContext';\nimport ErrorBoundary from '../components/Api/ErrorBoundary';\nimport { clsx } from 'clsx';\n\nimport { RequestExample } from './components/Example/RequestExample';\nimport { ResponseExample } from './components/Example/ResponseExample';\nimport { ApiReferenceDataV2 } from './types';\nimport { useSelectedSecurityOption } from './hooks/usePlaygroundInputsStore';\nimport { initialApiPlaygroundInputs } from './constants';\n\n\ntype ApiExamplesProps = {\n className?: string;\n isModal?: boolean;\n apiReferenceData?: ApiReferenceDataV2;\n noInputs?: boolean;\n};\n\nexport const ApiExamples = ({ className, isModal = false, apiReferenceData, noInputs = false }: ApiExamplesProps) => {\n const { apiReferenceData2: apiReferenceData2FromContext } = useContext(ApiReferenceContext2);\n const apiReferenceData2 = apiReferenceData || apiReferenceData2FromContext;\n const { getApiPlaygroundInputs } = usePlaygroundInputsStore();\n const {selectedSecurityOptionIndex} = useSelectedSecurityOption();\n const inputs = getApiPlaygroundInputs();\n const [selectedLabel, setSelectedLabel] = useState<string | undefined>();\n\n const containerClassName = useMemo(\n () =>\n clsx(\n 'mint:w-full mint:xl:w-[28rem] mint:gap-6 mint:grid mint:grid-rows-[repeat(auto-fit,minmax(0,min-content))] mint:grid-rows mint:relative mint:max-h-[calc(100%-32px)] mint:min-h-[18rem]',\n className,\n ),\n [className, isModal]\n );\n\n return (\n <CodeExampleLabelContext.Provider value={{ selectedLabel, setSelectedLabel }}>\n <div className={containerClassName}>\n <ErrorBoundary>\n <RequestExample\n selectedSecurityOptionIndex={selectedSecurityOptionIndex}\n apiReferenceData={apiReferenceData2}\n inputs={noInputs ? initialApiPlaygroundInputs : inputs}\n maxHeight=\"mint:max-h-[40vh]\"\n />\n <ResponseExample apiReferenceData={apiReferenceData2} maxHeight=\"mint:max-h-[40vh]\" />\n {/* TODO - Api Playground Refactor: OpenApiSchemaExample */}\n </ErrorBoundary>\n </div>\n </CodeExampleLabelContext.Provider>\n );\n};\n\nexport default ApiExamples;\n"],"names":["ApiExamples","className","isModal","apiReferenceData","noInputs","apiReferenceData2FromContext","useContext","ApiReferenceContext2","apiReferenceData2","getApiPlaygroundInputs","usePlaygroundInputsStore","selectedSecurityOptionIndex","useSelectedSecurityOption","inputs","selectedLabel","setSelectedLabel","useState","containerClassName","useMemo","clsx","jsx","CodeExampleLabelContext","ErrorBoundary","RequestExample","initialApiPlaygroundInputs","ResponseExample"],"mappings":";;;;;;;;;;AAwBO,MAAMA,IAAc,CAAC,EAAE,WAAAC,GAAW,SAAAC,IAAU,IAAO,kBAAAC,GAAkB,UAAAC,IAAW,SAA8B;AACnH,QAAM,EAAE,mBAAmBC,MAAiCC,EAAWC,CAAoB,GACrFC,IAAoBL,KAAoBE,GACxC,EAAE,wBAAAI,EAAA,IAA2BC,EAAA,GAC7B,EAAC,6BAAAC,EAAA,IAA+BC,EAAA,GAChCC,IAASJ,EAAA,GACT,CAACK,GAAeC,CAAgB,IAAIC,EAAA,GAEpCC,IAAqBC;AAAA,IACzB,MACEC;AAAA,MACE;AAAA,MACAlB;AAAA,IAAA;AAAA,IAEJ,CAACA,GAAWC,CAAO;AAAA,EAAA;AAGrB,SACE,gBAAAkB,EAACC,EAAwB,UAAxB,EAAiC,OAAO,EAAE,eAAAP,GAAe,kBAAAC,KACxD,UAAA,gBAAAK,EAAC,OAAA,EAAI,WAAWH,GACd,4BAACK,GAAA,EACC,UAAA;AAAA,IAAA,gBAAAF;AAAA,MAACG;AAAA,MAAA;AAAA,QACC,6BAAAZ;AAAA,QACA,kBAAkBH;AAAA,QAClB,QAAQJ,IAAWoB,IAA6BX;AAAA,QAChD,WAAU;AAAA,MAAA;AAAA,IAAA;AAAA,IAEZ,gBAAAO,EAACK,GAAA,EAAgB,kBAAkBjB,GAAmB,WAAU,oBAAA,CAAoB;AAAA,EAAA,EAAA,CAEtF,GACF,GACF;AAEJ;"}
1
+ {"version":3,"file":"ApiExamples.js","sources":["../../src/api-playground-2/ApiExamples.tsx"],"sourcesContent":["\nimport React, { useContext, useMemo, useState } from 'react';\n\nimport { usePlaygroundInputsStore } from '@/api-playground-2/hooks/usePlaygroundInputsStore';\nimport { CodeExampleLabelContext } from '@/contexts/CodeExampleLabelContext';\nimport { ApiReferenceContext2 } from '@/contexts/ConfigContext';\nimport ErrorBoundary from '../components/Api/ErrorBoundary';\nimport { clsx } from 'clsx';\n\nimport { RequestExample } from './components/Example/RequestExample';\nimport { ResponseExample } from './components/Example/ResponseExample';\nimport { ApiReferenceDataV2 } from './types';\nimport { useSelectedSecurityOption } from './hooks/usePlaygroundInputsStore';\nimport { initialApiPlaygroundInputs } from './constants';\n\n\ntype ApiExamplesProps = {\n className?: string;\n isModal?: boolean;\n apiReferenceData?: ApiReferenceDataV2;\n noInputs?: boolean;\n};\n\nexport const ApiExamples = ({ className, isModal = false, apiReferenceData, noInputs = false }: ApiExamplesProps) => {\n const { apiReferenceData2: apiReferenceData2FromContext } = useContext(ApiReferenceContext2);\n const apiReferenceData2 = apiReferenceData || apiReferenceData2FromContext;\n const { getApiPlaygroundInputs } = usePlaygroundInputsStore();\n const {selectedSecurityOptionIndex} = useSelectedSecurityOption();\n const inputs = getApiPlaygroundInputs();\n const [selectedLabel, setSelectedLabel] = useState<string | undefined>();\n\n const containerClassName = useMemo(\n () =>\n clsx(\n 'mint:w-full mint:xl:w-[28rem] mint:gap-6 mint:grid mint:grid-rows-[repeat(auto-fit,minmax(0,min-content))] mint:grid-rows mint:relative mint:max-h-[calc(100%-32px)] mint:min-h-[18rem]',\n className,\n ),\n [className, isModal]\n );\n\n return (\n <CodeExampleLabelContext.Provider value={{ selectedLabel, setSelectedLabel }}>\n <div className={containerClassName}>\n <ErrorBoundary>\n <RequestExample\n selectedSecurityOptionIndex={selectedSecurityOptionIndex}\n apiReferenceData={apiReferenceData2}\n inputs={noInputs ? initialApiPlaygroundInputs : inputs}\n maxHeight=\"mint:max-h-[40vh]\"\n />\n <ResponseExample apiReferenceData={apiReferenceData2} maxHeight=\"mint:max-h-[40vh]\" />\n {/* TODO - Api Playground Refactor: OpenApiSchemaExample */}\n </ErrorBoundary>\n </div>\n </CodeExampleLabelContext.Provider>\n );\n};\n\nexport default ApiExamples;\n"],"names":["ApiExamples","className","isModal","apiReferenceData","noInputs","apiReferenceData2FromContext","useContext","ApiReferenceContext2","apiReferenceData2","getApiPlaygroundInputs","usePlaygroundInputsStore","selectedSecurityOptionIndex","useSelectedSecurityOption","inputs","selectedLabel","setSelectedLabel","useState","containerClassName","useMemo","clsx","jsx","CodeExampleLabelContext","ErrorBoundary","RequestExample","initialApiPlaygroundInputs","ResponseExample"],"mappings":";;;;;;;;;;AAuBO,MAAMA,IAAc,CAAC,EAAE,WAAAC,GAAW,SAAAC,IAAU,IAAO,kBAAAC,GAAkB,UAAAC,IAAW,SAA8B;AACnH,QAAM,EAAE,mBAAmBC,MAAiCC,EAAWC,CAAoB,GACrFC,IAAoBL,KAAoBE,GACxC,EAAE,wBAAAI,EAAA,IAA2BC,EAAA,GAC7B,EAAC,6BAAAC,EAAA,IAA+BC,EAAA,GAChCC,IAASJ,EAAA,GACT,CAACK,GAAeC,CAAgB,IAAIC,EAAA,GAEpCC,IAAqBC;AAAA,IACzB,MACEC;AAAA,MACE;AAAA,MACAlB;AAAA,IAAA;AAAA,IAEJ,CAACA,GAAWC,CAAO;AAAA,EAAA;AAGrB,SACE,gBAAAkB,EAACC,EAAwB,UAAxB,EAAiC,OAAO,EAAE,eAAAP,GAAe,kBAAAC,KACxD,UAAA,gBAAAK,EAAC,OAAA,EAAI,WAAWH,GACd,4BAACK,GAAA,EACC,UAAA;AAAA,IAAA,gBAAAF;AAAA,MAACG;AAAA,MAAA;AAAA,QACC,6BAAAZ;AAAA,QACA,kBAAkBH;AAAA,QAClB,QAAQJ,IAAWoB,IAA6BX;AAAA,QAChD,WAAU;AAAA,MAAA;AAAA,IAAA;AAAA,IAEZ,gBAAAO,EAACK,GAAA,EAAgB,kBAAkBjB,GAAmB,WAAU,oBAAA,CAAoB;AAAA,EAAA,EAAA,CAEtF,GACF,GACF;AAEJ;"}