@mintlify/msft-sdk 1.1.24 → 1.1.25

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 (61) hide show
  1. package/dist/api-playground/ApiPlayground/Request/PlaygroundModal.js +46 -45
  2. package/dist/api-playground/ApiPlayground/Request/PlaygroundModal.js.map +1 -1
  3. package/dist/api-playground/ApiPlayground/Request/index.js +18 -18
  4. package/dist/api-playground/ApiPlayground/Request/index.js.map +1 -1
  5. package/dist/api-playground/ApiPlayground/components/EndpointsMenu.js +20 -21
  6. package/dist/api-playground/ApiPlayground/components/EndpointsMenu.js.map +1 -1
  7. package/dist/api-playground/ApiPlayground/components/EndpointsMenuLink.js +10 -11
  8. package/dist/api-playground/ApiPlayground/components/EndpointsMenuLink.js.map +1 -1
  9. package/dist/api-playground/ApiPlayground/index.js +30 -30
  10. package/dist/api-playground/ApiPlayground/index.js.map +1 -1
  11. package/dist/api-playground-2/constants/index.js +12 -3
  12. package/dist/api-playground-2/constants/index.js.map +1 -1
  13. package/dist/api-playground-2/schemaGraph/addUniqueKeysToSchema.js +41 -0
  14. package/dist/api-playground-2/schemaGraph/addUniqueKeysToSchema.js.map +1 -0
  15. package/dist/api-playground-2/schemaGraph/errors.js +19 -0
  16. package/dist/api-playground-2/schemaGraph/errors.js.map +1 -0
  17. package/dist/api-playground-2/schemaGraph/getApiReferenceDataFromGraph.js +26 -0
  18. package/dist/api-playground-2/schemaGraph/getApiReferenceDataFromGraph.js.map +1 -0
  19. package/dist/api-playground-2/schemaGraph/getDocumentProperties.js +58 -0
  20. package/dist/api-playground-2/schemaGraph/getDocumentProperties.js.map +1 -0
  21. package/dist/api-playground-2/schemaGraph/getSchemaGraphOperationData.js +77 -0
  22. package/dist/api-playground-2/schemaGraph/getSchemaGraphOperationData.js.map +1 -0
  23. package/dist/api-playground-2/schemaGraph/getSchemaGraphSchemaData.js +16 -0
  24. package/dist/api-playground-2/schemaGraph/getSchemaGraphSchemaData.js.map +1 -0
  25. package/dist/api-playground-2/schemaGraph/processExamples.js +111 -34
  26. package/dist/api-playground-2/schemaGraph/processExamples.js.map +1 -1
  27. package/dist/api-playground-2/schemaGraph/reduceCompositions.js +283 -0
  28. package/dist/api-playground-2/schemaGraph/reduceCompositions.js.map +1 -0
  29. package/dist/api-playground-2/schemaGraph/resolveGraphNode.js +61 -0
  30. package/dist/api-playground-2/schemaGraph/resolveGraphNode.js.map +1 -0
  31. package/dist/api-playground-2/schemaGraph/resolveOperationWithDependencies.js +149 -0
  32. package/dist/api-playground-2/schemaGraph/resolveOperationWithDependencies.js.map +1 -0
  33. package/dist/api-playground-2/schemaGraph/resolveSchemaWithDependencies.js +33 -0
  34. package/dist/api-playground-2/schemaGraph/resolveSchemaWithDependencies.js.map +1 -0
  35. package/dist/api-playground-2/schemaGraph/sortSchemaByRequired.js +35 -0
  36. package/dist/api-playground-2/schemaGraph/sortSchemaByRequired.js.map +1 -0
  37. package/dist/api-playground-2/schemaGraph/utils.js +144 -98
  38. package/dist/api-playground-2/schemaGraph/utils.js.map +1 -1
  39. package/dist/common/parseApiTargetFromMetadata.js +24 -0
  40. package/dist/common/parseApiTargetFromMetadata.js.map +1 -0
  41. package/dist/common/parseOpenApiString.js +42 -0
  42. package/dist/common/parseOpenApiString.js.map +1 -0
  43. package/dist/components/Api/ApiReferenceProvider.js +6 -15
  44. package/dist/components/Api/ApiReferenceProvider.js.map +1 -1
  45. package/dist/components/nav-tree/index.js +135 -109
  46. package/dist/components/nav-tree/index.js.map +1 -1
  47. package/dist/contexts/ConfigContext.js +61 -12
  48. package/dist/contexts/ConfigContext.js.map +1 -1
  49. package/dist/contexts/MDXContentContext.js +0 -1
  50. package/dist/contexts/MDXContentContext.js.map +1 -1
  51. package/dist/index.d.ts +125 -9
  52. package/dist/index.js +156 -144
  53. package/dist/index.js.map +1 -1
  54. package/dist/styles.css +1 -1
  55. package/package.json +1 -1
  56. package/dist/hooks/useCurrentPath.js +0 -17
  57. package/dist/hooks/useCurrentPath.js.map +0 -1
  58. package/dist/utils/decodeSlug.js +0 -8
  59. package/dist/utils/decodeSlug.js.map +0 -1
  60. package/dist/utils/optionallyAddLeadingSlash.js +0 -7
  61. package/dist/utils/optionallyAddLeadingSlash.js.map +0 -1
@@ -1,41 +1,42 @@
1
1
  import { jsxs as s, jsx as r } from "react/jsx-runtime";
2
- import { useState as V, useContext as C, useEffect as B } from "react";
3
- import { DescriptionWithoutHeaders as J } from "../../EndpointFields/components/Description.js";
4
- import { useApiPlaygroundPrefillExamples as H } from "../../../hooks/useApiPlaygroundPrefillExamples.js";
5
- import { useMDXContent as I } from "../../../hooks/useMDXContent.js";
6
- import { parseAuthInputsFromUserInfo as R } from "../../../hooks/usePrefilledInputs/index.js";
7
- import { useSecurityOption as G } from "../../../hooks/useSecurityOption.js";
8
- import { getDefaultsFromParameterGroup as U, getDefaultFromSchema as W } from "../../../utils/api-playground/defaults.js";
2
+ import { useState as C, useContext as B, useEffect as J } from "react";
3
+ import { DescriptionWithoutHeaders as H } from "../../EndpointFields/components/Description.js";
4
+ import { useApiPlaygroundPrefillExamples as I } from "../../../hooks/useApiPlaygroundPrefillExamples.js";
5
+ import { useMDXContent as R } from "../../../hooks/useMDXContent.js";
6
+ import { parseAuthInputsFromUserInfo as G } from "../../../hooks/usePrefilledInputs/index.js";
7
+ import { useSecurityOption as U } from "../../../hooks/useSecurityOption.js";
8
+ import { getDefaultsFromParameterGroup as W, getDefaultFromSchema as Q } from "../../../utils/api-playground/defaults.js";
9
9
  import { paramFieldDefaults as w } from "../../../utils/api-playground/paramFieldDefaults.js";
10
- import { getFilteredSecurityOptions as Q } from "../../../utils/api-reference/getFilteredSecurityOptions.js";
10
+ import { getFilteredSecurityOptions as X } from "../../../utils/api-reference/getFilteredSecurityOptions.js";
11
11
  import "@mintlify/validation";
12
- import { cn as X } from "../../../utils/cn.js";
13
- import { ApiPlaygroundContext as z } from "../ApiPlaygroundContext.js";
12
+ import { cn as z } from "../../../utils/cn.js";
13
+ import { ApiPlaygroundContext as K } from "../ApiPlaygroundContext.js";
14
14
  import { Response as P } from "../Response/index.js";
15
- import { EndpointsMenu as K } from "../components/EndpointsMenu.js";
16
- import { PathHeader as L, SendPill as T } from "../components/PathHeader.js";
17
- import { PlaygroundModalWrapper as Y } from "../components/PlaygroundModalWrapper.js";
18
- import { BodySection as Z } from "./BodySection.js";
15
+ import { EndpointsMenu as L } from "../components/EndpointsMenu.js";
16
+ import { PathHeader as T, SendPill as Y } from "../components/PathHeader.js";
17
+ import { PlaygroundModalWrapper as Z } from "../components/PlaygroundModalWrapper.js";
18
+ import { BodySection as _ } from "./BodySection.js";
19
19
  import { ParameterSection as y } from "./ParameterSection.js";
20
- import { SecuritySection as _ } from "./SecuritySection.js";
21
- import { ServerSection as $ } from "./ServerSection.js";
22
- import { ApiExamples as ee } from "../../../api-playground-2/ApiExamples.js";
23
- function Ne({
20
+ import { SecuritySection as $ } from "./SecuritySection.js";
21
+ import { ServerSection as ee } from "./ServerSection.js";
22
+ import { ApiExamples as te } from "../../../api-playground-2/ApiExamples.js";
23
+ function Oe({
24
24
  endpoint: t,
25
25
  inputs: a,
26
- setInputs: m
26
+ setInputs: m,
27
+ pathname: j
27
28
  }) {
28
29
  var k;
29
- const [{ pageMetadata: b }] = I(), [v, j] = V(0), { prefillExamplesEnabled: f, generatedRequestExampleData: p } = H(), S = G(t.request.security), {
30
- isSending: A,
31
- selectedBaseUrlIndex: E,
30
+ const [{ pageMetadata: b }] = R(), [v, A] = C(0), { prefillExamplesEnabled: f, generatedRequestExampleData: p } = I(), S = U(t.request.security), {
31
+ isSending: E,
32
+ selectedBaseUrlIndex: D,
32
33
  isPlaygroundExpanded: g,
33
- setIsPlaygroundExpanded: D,
34
- sendRequest: F,
34
+ setIsPlaygroundExpanded: F,
35
+ sendRequest: M,
35
36
  result: l,
36
37
  selectedExampleIndex: d
37
- } = C(z), h = (k = t.servers) == null ? void 0 : k[E], q = Q(t), M = q[v], n = h == null ? void 0 : h.variables;
38
- return B(() => {
38
+ } = B(K), h = (k = t.servers) == null ? void 0 : k[D], q = X(t), V = q[v], n = h == null ? void 0 : h.variables;
39
+ return J(() => {
39
40
  var N;
40
41
  if (!g) return;
41
42
  const e = f ? p[d ?? 0] : JSON.parse(JSON.stringify(a));
@@ -52,20 +53,20 @@ function Ne({
52
53
  ["cookie", t.request.parameters.cookie]
53
54
  ].forEach(([i, o]) => {
54
55
  var O;
55
- const c = f ? (O = p[d ?? 0]) == null ? void 0 : O[i] : U(o);
56
+ const c = f ? (O = p[d ?? 0]) == null ? void 0 : O[i] : W(o);
56
57
  e[i] = {
57
58
  ...c,
58
59
  ...w[i],
59
60
  ...e[i]
60
61
  };
61
62
  });
62
- const x = R(
63
+ const x = G(
63
64
  S
64
65
  );
65
66
  e.query = { ...e.query, ...x.query }, e.header = { ...e.header, ...x.header }, e.cookie = { ...e.cookie, ...x.cookie };
66
67
  const u = Object.values(t.request.body)[0];
67
68
  if (u != null && u.schemaArray.length) {
68
- const i = f ? (N = p[d ?? 0]) == null ? void 0 : N.body : W(u.schemaArray[0]), o = w.body;
69
+ const i = f ? (N = p[d ?? 0]) == null ? void 0 : N.body : Q(u.schemaArray[0]), o = w.body;
69
70
  if (typeof i == "object" && i !== null)
70
71
  e.body = Object.assign(
71
72
  {},
@@ -80,21 +81,21 @@ function Ne({
80
81
  }
81
82
  JSON.stringify(e) !== JSON.stringify(a) && m(e);
82
83
  }, [g, t, d, S]), /* @__PURE__ */ s(
83
- Y,
84
+ Z,
84
85
  {
85
86
  isPlaygroundExpanded: g,
86
- setIsPlaygroundExpanded: D,
87
+ setIsPlaygroundExpanded: F,
87
88
  children: [
88
89
  /* @__PURE__ */ s("div", { className: "mint:flex mint:items-center mint:justify-between mint:gap-x-2", children: [
89
- /* @__PURE__ */ r(K, { endpoint: t }),
90
- /* @__PURE__ */ r(L, { endpoint: t, hasGrayBackground: !0, display: "interactive" }),
90
+ /* @__PURE__ */ r(L, { endpoint: t, pathname: j }),
91
+ /* @__PURE__ */ r(T, { endpoint: t, hasGrayBackground: !0, display: "interactive" }),
91
92
  /* @__PURE__ */ r(
92
- T,
93
+ Y,
93
94
  {
94
95
  label: "Send",
95
96
  method: t.method,
96
- isSending: A,
97
- onClick: F,
97
+ isSending: E,
98
+ onClick: M,
98
99
  className: "mint:w-20"
99
100
  }
100
101
  )
@@ -104,7 +105,7 @@ function Ne({
104
105
  /* @__PURE__ */ s("div", { className: "mint:space-y-1 mint:min-w-full mint:w-full mint:max-w-full mint:overflow-hidden", children: [
105
106
  /* @__PURE__ */ r("div", { className: "mint:text-base mint:font-medium mint:text-gray-900 mint:dark:text-white mint:max-w-full", children: t.title }),
106
107
  /* @__PURE__ */ r("div", { className: "mint:flex mint:items-start mint:gap-x-12 mint:justify-between mint:max-w-full! mint:overflow-x-auto", children: b.description && /* @__PURE__ */ r(
107
- J,
108
+ H,
108
109
  {
109
110
  markdown: b.description,
110
111
  className: "mint:text-sm mint:text-gray-500 mint:dark:text-gray-400"
@@ -114,21 +115,21 @@ function Ne({
114
115
  l && /* @__PURE__ */ r(P, { result: l, className: "mint:mt-6 mint:block mint:lg:hidden" }),
115
116
  /* @__PURE__ */ s("div", { className: "mint:space-y-2 mint:mt-6", children: [
116
117
  n && Object.keys(n).length > 0 && /* @__PURE__ */ r(
117
- $,
118
+ ee,
118
119
  {
119
120
  variables: n,
120
121
  value: a.server,
121
122
  setValue: (e) => m({ ...a, server: e })
122
123
  }
123
124
  ),
124
- M && /* @__PURE__ */ r(
125
- _,
125
+ V && /* @__PURE__ */ r(
126
+ $,
126
127
  {
127
128
  inputs: a,
128
129
  setInputs: m,
129
130
  securityOptions: q,
130
131
  selectedSecurityOptionIndex: v,
131
- setSelectedSecurityOptionIndex: j
132
+ setSelectedSecurityOptionIndex: A
132
133
  }
133
134
  ),
134
135
  /* @__PURE__ */ r(
@@ -168,7 +169,7 @@ function Ne({
168
169
  }
169
170
  ),
170
171
  /* @__PURE__ */ r(
171
- Z,
172
+ _,
172
173
  {
173
174
  value: a.body,
174
175
  setValue: (e) => m({ ...a, body: e }),
@@ -180,13 +181,13 @@ function Ne({
180
181
  /* @__PURE__ */ s(
181
182
  "div",
182
183
  {
183
- className: X(
184
+ className: z(
184
185
  "mint:p-px mint:col-span-1 mint:lg:col-span-2 mint:lg:space-y-6 mint:lg:flex mint:lg:sticky mint:lg:top-0 mint:lg:self-start mint:lg:h-[calc(100vh-5.5rem)]",
185
186
  l && "mint:lg:flex-col mint:overflow-y-auto mint:lg:-top-12 mint:lg:h-screen"
186
187
  ),
187
188
  children: [
188
189
  l && /* @__PURE__ */ r(P, { result: l, className: "mint:hidden mint:lg:block mint:min-h-fit" }),
189
- /* @__PURE__ */ r(ee, { isModal: !0, "data-testid": "api-playground-request-example", className: "mint:xl:w-full" })
190
+ /* @__PURE__ */ r(te, { isModal: !0, "data-testid": "api-playground-request-example", className: "mint:xl:w-full" })
190
191
  ]
191
192
  }
192
193
  )
@@ -196,6 +197,6 @@ function Ne({
196
197
  );
197
198
  }
198
199
  export {
199
- Ne as PlaygroundModal
200
+ Oe as PlaygroundModal
200
201
  };
201
202
  //# sourceMappingURL=PlaygroundModal.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PlaygroundModal.js","sources":["../../../../src/api-playground/ApiPlayground/Request/PlaygroundModal.tsx"],"sourcesContent":["'use client';\n\nimport { ApiPlaygroundInputs, Endpoint } from '@mintlify/validation';\nimport { useContext, useState, useEffect } from 'react';\n\nimport { DescriptionWithoutHeaders } from '@/api-playground/EndpointFields/components/Description';\nimport { useApiPlaygroundPrefillExamples } from '@/hooks/useApiPlaygroundPrefillExamples';\nimport { useMDXContent } from '@/hooks/useMDXContent';\nimport { parseAuthInputsFromUserInfo } from '@/hooks/usePrefilledInputs';\nimport { useSecurityOption } from '@/hooks/useSecurityOption';\nimport {\n getDefaultsFromParameterGroup,\n getDefaultFromSchema,\n} from '@/utils/api-playground/defaults';\nimport { paramFieldDefaults } from '@/utils/api-playground/paramFieldDefaults';\nimport { getFilteredSecurityOptions } from '@/utils/api-reference/getFilteredSecurityOptions';\nimport { cn } from '@/api-playground-2/schemaGraph/utils';\n\nimport { ApiPlaygroundContext } from '../ApiPlaygroundContext';\nimport { Response } from '../Response';\nimport { EndpointsMenu } from '../components/EndpointsMenu';\nimport { PathHeader, SendPill } from '../components/PathHeader';\nimport { PlaygroundModalWrapper } from '../components/PlaygroundModalWrapper';\nimport { BodySection } from './BodySection';\nimport { ParameterSection } from './ParameterSection';\nimport { SecuritySection } from './SecuritySection';\nimport { ServerSection } from './ServerSection';\nimport ApiExamples from '@/api-playground-2/ApiExamples';\n\nexport function PlaygroundModal({\n endpoint,\n inputs,\n setInputs,\n}: {\n endpoint: Endpoint;\n inputs: ApiPlaygroundInputs;\n setInputs: (inputs: ApiPlaygroundInputs) => void;\n}) {\n const [{ pageMetadata }] = useMDXContent();\n const [selectedSecurityOptionIndex, setSelectedSecurityOptionIndex] = useState(0);\n const { prefillExamplesEnabled, generatedRequestExampleData } = useApiPlaygroundPrefillExamples();\n const securityOption = useSecurityOption(endpoint.request.security);\n\n const {\n isSending,\n selectedBaseUrlIndex,\n isPlaygroundExpanded,\n setIsPlaygroundExpanded,\n sendRequest,\n result,\n selectedExampleIndex,\n } = useContext(ApiPlaygroundContext);\n const server = endpoint.servers?.[selectedBaseUrlIndex];\n\n const filteredSecurityOptions = getFilteredSecurityOptions(endpoint);\n\n const selectedSecurityOption = filteredSecurityOptions[selectedSecurityOptionIndex];\n\n const variables = server?.variables;\n\n useEffect(() => {\n if (!isPlaygroundExpanded) return;\n\n const nextInputs: ApiPlaygroundInputs = prefillExamplesEnabled\n ? generatedRequestExampleData[selectedExampleIndex ?? 0]\n : JSON.parse(JSON.stringify(inputs));\n\n if (variables) {\n const serverDefaults: Record<string, string> = {};\n Object.entries(variables).forEach(([k, v]) => {\n if (nextInputs.server[k] === undefined) {\n serverDefaults[k] = String(v.default);\n }\n });\n nextInputs.server = { ...nextInputs.server, ...serverDefaults };\n }\n\n const paramSections: Array<\n ['header' | 'path' | 'query' | 'cookie', typeof endpoint.request.parameters.header]\n > = [\n ['header', endpoint.request.parameters.header],\n ['path', endpoint.request.parameters.path],\n ['query', endpoint.request.parameters.query],\n ['cookie', endpoint.request.parameters.cookie],\n ];\n\n paramSections.forEach(([section, group]) => {\n const spec = prefillExamplesEnabled\n ? generatedRequestExampleData[selectedExampleIndex ?? 0]?.[section]\n : getDefaultsFromParameterGroup(group);\n\n nextInputs[section] = {\n ...spec,\n ...paramFieldDefaults[section],\n ...nextInputs[section],\n };\n });\n\n const userInfoAuthInputs = parseAuthInputsFromUserInfo(\n securityOption,\n undefined\n );\n\n nextInputs.query = { ...nextInputs.query, ...userInfoAuthInputs.query };\n nextInputs.header = { ...nextInputs.header, ...userInfoAuthInputs.header };\n nextInputs.cookie = { ...nextInputs.cookie, ...userInfoAuthInputs.cookie };\n\n const bodyEntry = Object.values(endpoint.request.body)[0];\n if (bodyEntry?.schemaArray.length) {\n const bodyDefaultFromSpec = prefillExamplesEnabled\n ? generatedRequestExampleData[selectedExampleIndex ?? 0]?.body\n : getDefaultFromSchema(bodyEntry.schemaArray[0]);\n\n const bodyDefaultsFromParamField: Record<string, unknown> = paramFieldDefaults.body;\n\n if (typeof bodyDefaultFromSpec === 'object' && bodyDefaultFromSpec !== null) {\n nextInputs.body = Object.assign(\n {},\n bodyDefaultFromSpec,\n bodyDefaultsFromParamField,\n typeof nextInputs.body === 'object' &&\n nextInputs.body !== null &&\n !Array.isArray(nextInputs.body)\n ? nextInputs.body\n : {}\n );\n } else if (Object.keys(bodyDefaultsFromParamField).length) {\n const existingBody =\n typeof nextInputs.body === 'object' &&\n nextInputs.body !== null &&\n !Array.isArray(nextInputs.body)\n ? nextInputs.body\n : {};\n nextInputs.body = { ...bodyDefaultsFromParamField, ...existingBody };\n } else if (nextInputs.body === undefined && bodyDefaultFromSpec !== undefined) {\n nextInputs.body = bodyDefaultFromSpec;\n }\n }\n\n if (JSON.stringify(nextInputs) !== JSON.stringify(inputs)) {\n setInputs(nextInputs);\n }\n }, [isPlaygroundExpanded, endpoint, selectedExampleIndex, securityOption]);\n\n return (\n <PlaygroundModalWrapper\n isPlaygroundExpanded={isPlaygroundExpanded}\n setIsPlaygroundExpanded={setIsPlaygroundExpanded}\n >\n <div className=\"mint:flex mint:items-center mint:justify-between mint:gap-x-2\">\n <EndpointsMenu endpoint={endpoint} />\n <PathHeader endpoint={endpoint} hasGrayBackground display=\"interactive\" />\n <SendPill\n label=\"Send\"\n method={endpoint.method}\n isSending={isSending}\n onClick={sendRequest}\n className=\"mint:w-20\"\n />\n </div>\n <div className=\"mint:grid mint:grid-cols-1 mint:lg:grid-cols-5 mint:gap-x-8 mint:gap-y-6 mint:mt-5 mint:relative\">\n <div className=\"mint:col-span-1 mint:lg:col-span-3\">\n <div className=\"mint:space-y-1 mint:min-w-full mint:w-full mint:max-w-full mint:overflow-hidden\">\n <div className=\"mint:text-base mint:font-medium mint:text-gray-900 mint:dark:text-white mint:max-w-full\">\n {endpoint.title}\n </div>\n <div className=\"mint:flex mint:items-start mint:gap-x-12 mint:justify-between mint:max-w-full! mint:overflow-x-auto\">\n {pageMetadata.description && (\n <DescriptionWithoutHeaders\n markdown={pageMetadata.description}\n className=\"mint:text-sm mint:text-gray-500 mint:dark:text-gray-400\"\n />\n )}\n </div>\n </div>\n {result && <Response result={result} className=\"mint:mt-6 mint:block mint:lg:hidden\" />}\n <div className=\"mint:space-y-2 mint:mt-6\">\n {variables && Object.keys(variables).length > 0 && (\n <ServerSection\n variables={variables}\n value={inputs.server}\n setValue={(server) => setInputs({ ...inputs, server })}\n />\n )}\n {selectedSecurityOption && (\n <SecuritySection\n inputs={inputs}\n setInputs={setInputs}\n securityOptions={filteredSecurityOptions}\n selectedSecurityOptionIndex={selectedSecurityOptionIndex}\n setSelectedSecurityOptionIndex={setSelectedSecurityOptionIndex}\n />\n )}\n <ParameterSection\n name=\"Header\"\n value={inputs.header}\n setValue={(header) => setInputs({ ...inputs, header })}\n parameters={endpoint.request.parameters.header}\n />\n <ParameterSection\n name=\"Cookie\"\n value={inputs.cookie}\n setValue={(cookie) => setInputs({ ...inputs, cookie })}\n parameters={endpoint.request.parameters.cookie}\n />\n <ParameterSection\n name=\"Path\"\n value={inputs.path}\n setValue={(path) => setInputs({ ...inputs, path })}\n parameters={endpoint.request.parameters.path}\n />\n <ParameterSection\n name=\"Query\"\n value={inputs.query}\n setValue={(query) => setInputs({ ...inputs, query })}\n parameters={endpoint.request.parameters.query}\n />\n <BodySection\n value={inputs.body}\n setValue={(body) => setInputs({ ...inputs, body })}\n body={endpoint.request.body}\n />\n </div>\n </div>\n <div\n className={cn(\n 'mint:p-px mint:col-span-1 mint:lg:col-span-2 mint:lg:space-y-6 mint:lg:flex mint:lg:sticky mint:lg:top-0 mint:lg:self-start mint:lg:h-[calc(100vh-5.5rem)]',\n result && 'mint:lg:flex-col mint:overflow-y-auto mint:lg:-top-12 mint:lg:h-screen'\n )}\n >\n {result && <Response result={result} className=\"mint:hidden mint:lg:block mint:min-h-fit\" />}\n <ApiExamples isModal data-testid=\"api-playground-request-example\" className=\"mint:xl:w-full\" />\n </div>\n </div>\n </PlaygroundModalWrapper>\n );\n}\n"],"names":["PlaygroundModal","endpoint","inputs","setInputs","pageMetadata","useMDXContent","selectedSecurityOptionIndex","setSelectedSecurityOptionIndex","useState","prefillExamplesEnabled","generatedRequestExampleData","useApiPlaygroundPrefillExamples","securityOption","useSecurityOption","isSending","selectedBaseUrlIndex","isPlaygroundExpanded","setIsPlaygroundExpanded","sendRequest","result","selectedExampleIndex","useContext","ApiPlaygroundContext","server","_a","filteredSecurityOptions","getFilteredSecurityOptions","selectedSecurityOption","variables","useEffect","nextInputs","serverDefaults","k","v","section","group","spec","getDefaultsFromParameterGroup","paramFieldDefaults","userInfoAuthInputs","parseAuthInputsFromUserInfo","bodyEntry","bodyDefaultFromSpec","getDefaultFromSchema","bodyDefaultsFromParamField","existingBody","jsxs","PlaygroundModalWrapper","jsx","EndpointsMenu","PathHeader","SendPill","DescriptionWithoutHeaders","Response","ServerSection","SecuritySection","ParameterSection","header","cookie","path","query","BodySection","body","cn","ApiExamples"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AA6BO,SAASA,GAAgB;AAAA,EAC9B,UAAAC;AAAA,EACA,QAAAC;AAAA,EACA,WAAAC;AACF,GAIG;;AACD,QAAM,CAAC,EAAE,cAAAC,GAAc,IAAIC,EAAA,GACrB,CAACC,GAA6BC,CAA8B,IAAIC,EAAS,CAAC,GAC1E,EAAE,wBAAAC,GAAwB,6BAAAC,EAAA,IAAgCC,EAAA,GAC1DC,IAAiBC,EAAkBZ,EAAS,QAAQ,QAAQ,GAE5D;AAAA,IACJ,WAAAa;AAAA,IACA,sBAAAC;AAAA,IACA,sBAAAC;AAAA,IACA,yBAAAC;AAAA,IACA,aAAAC;AAAA,IACA,QAAAC;AAAA,IACA,sBAAAC;AAAA,EAAA,IACEC,EAAWC,CAAoB,GAC7BC,KAASC,IAAAvB,EAAS,YAAT,gBAAAuB,EAAmBT,IAE5BU,IAA0BC,EAA2BzB,CAAQ,GAE7D0B,IAAyBF,EAAwBnB,CAA2B,GAE5EsB,IAAYL,KAAA,gBAAAA,EAAQ;AAE1B,SAAAM,EAAU,MAAM;;AACd,QAAI,CAACb,EAAsB;AAE3B,UAAMc,IAAkCrB,IACpCC,EAA4BU,KAAwB,CAAC,IACrD,KAAK,MAAM,KAAK,UAAUlB,CAAM,CAAC;AAErC,QAAI0B,GAAW;AACb,YAAMG,IAAyC,CAAA;AAC/C,aAAO,QAAQH,CAAS,EAAE,QAAQ,CAAC,CAACI,GAAGC,CAAC,MAAM;AAC5C,QAAIH,EAAW,OAAOE,CAAC,MAAM,WAC3BD,EAAeC,CAAC,IAAI,OAAOC,EAAE,OAAO;AAAA,MAExC,CAAC,GACDH,EAAW,SAAS,EAAE,GAAGA,EAAW,QAAQ,GAAGC,EAAA;AAAA,IACjD;AAWA,IAPI;AAAA,MACF,CAAC,UAAU9B,EAAS,QAAQ,WAAW,MAAM;AAAA,MAC7C,CAAC,QAAQA,EAAS,QAAQ,WAAW,IAAI;AAAA,MACzC,CAAC,SAASA,EAAS,QAAQ,WAAW,KAAK;AAAA,MAC3C,CAAC,UAAUA,EAAS,QAAQ,WAAW,MAAM;AAAA,IAAA,EAGjC,QAAQ,CAAC,CAACiC,GAASC,CAAK,MAAM;;AAC1C,YAAMC,IAAO3B,KACTe,IAAAd,EAA4BU,KAAwB,CAAC,MAArD,gBAAAI,EAAyDU,KACzDG,EAA8BF,CAAK;AAEvC,MAAAL,EAAWI,CAAO,IAAI;AAAA,QACpB,GAAGE;AAAA,QACH,GAAGE,EAAmBJ,CAAO;AAAA,QAC7B,GAAGJ,EAAWI,CAAO;AAAA,MAAA;AAAA,IAEzB,CAAC;AAED,UAAMK,IAAqBC;AAAA,MACzB5B;AAAA,IAEF;AAEA,IAAAkB,EAAW,QAAQ,EAAE,GAAGA,EAAW,OAAO,GAAGS,EAAmB,MAAA,GAChET,EAAW,SAAS,EAAE,GAAGA,EAAW,QAAQ,GAAGS,EAAmB,OAAA,GAClET,EAAW,SAAS,EAAE,GAAGA,EAAW,QAAQ,GAAGS,EAAmB,OAAA;AAElE,UAAME,IAAY,OAAO,OAAOxC,EAAS,QAAQ,IAAI,EAAE,CAAC;AACxD,QAAIwC,KAAA,QAAAA,EAAW,YAAY,QAAQ;AACjC,YAAMC,IAAsBjC,KACxBe,IAAAd,EAA4BU,KAAwB,CAAC,MAArD,gBAAAI,EAAwD,OACxDmB,EAAqBF,EAAU,YAAY,CAAC,CAAC,GAE3CG,IAAsDN,EAAmB;AAE/E,UAAI,OAAOI,KAAwB,YAAYA,MAAwB;AACrE,QAAAZ,EAAW,OAAO,OAAO;AAAA,UACvB,CAAA;AAAA,UACAY;AAAA,UACAE;AAAA,UACA,OAAOd,EAAW,QAAS,YACzBA,EAAW,SAAS,QACpB,CAAC,MAAM,QAAQA,EAAW,IAAI,IAC5BA,EAAW,OACX,CAAA;AAAA,QAAC;AAAA,eAEE,OAAO,KAAKc,CAA0B,EAAE,QAAQ;AACzD,cAAMC,IACJ,OAAOf,EAAW,QAAS,YAC3BA,EAAW,SAAS,QACpB,CAAC,MAAM,QAAQA,EAAW,IAAI,IAC1BA,EAAW,OACX,CAAA;AACN,QAAAA,EAAW,OAAO,EAAE,GAAGc,GAA4B,GAAGC,EAAA;AAAA,MACxD,MAAA,CAAWf,EAAW,SAAS,UAAaY,MAAwB,WAClEZ,EAAW,OAAOY;AAAA,IAEtB;AAEA,IAAI,KAAK,UAAUZ,CAAU,MAAM,KAAK,UAAU5B,CAAM,KACtDC,EAAU2B,CAAU;AAAA,EAExB,GAAG,CAACd,GAAsBf,GAAUmB,GAAsBR,CAAc,CAAC,GAGvE,gBAAAkC;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,sBAAA/B;AAAA,MACA,yBAAAC;AAAA,MAEA,UAAA;AAAA,QAAA,gBAAA6B,EAAC,OAAA,EAAI,WAAU,iEACb,UAAA;AAAA,UAAA,gBAAAE,EAACC,KAAc,UAAAhD,GAAoB;AAAA,4BAClCiD,GAAA,EAAW,UAAAjD,GAAoB,mBAAiB,IAAC,SAAQ,eAAc;AAAA,UACxE,gBAAA+C;AAAA,YAACG;AAAA,YAAA;AAAA,cACC,OAAM;AAAA,cACN,QAAQlD,EAAS;AAAA,cACjB,WAAAa;AAAA,cACA,SAASI;AAAA,cACT,WAAU;AAAA,YAAA;AAAA,UAAA;AAAA,QACZ,GACF;AAAA,QACA,gBAAA4B,EAAC,OAAA,EAAI,WAAU,oGACb,UAAA;AAAA,UAAA,gBAAAA,EAAC,OAAA,EAAI,WAAU,sCACb,UAAA;AAAA,YAAA,gBAAAA,EAAC,OAAA,EAAI,WAAU,mFACb,UAAA;AAAA,cAAA,gBAAAE,EAAC,OAAA,EAAI,WAAU,2FACZ,UAAA/C,EAAS,OACZ;AAAA,cACA,gBAAA+C,EAAC,OAAA,EAAI,WAAU,uGACZ,YAAa,eACZ,gBAAAA;AAAA,gBAACI;AAAA,gBAAA;AAAA,kBACC,UAAUhD,EAAa;AAAA,kBACvB,WAAU;AAAA,gBAAA;AAAA,cAAA,EACZ,CAEJ;AAAA,YAAA,GACF;AAAA,YACCe,KAAU,gBAAA6B,EAACK,GAAA,EAAS,QAAAlC,GAAgB,WAAU,uCAAsC;AAAA,YACrF,gBAAA2B,EAAC,OAAA,EAAI,WAAU,4BACZ,UAAA;AAAA,cAAAlB,KAAa,OAAO,KAAKA,CAAS,EAAE,SAAS,KAC5C,gBAAAoB;AAAA,gBAACM;AAAA,gBAAA;AAAA,kBACC,WAAA1B;AAAA,kBACA,OAAO1B,EAAO;AAAA,kBACd,UAAU,CAACqB,MAAWpB,EAAU,EAAE,GAAGD,GAAQ,QAAAqB,EAAAA,CAAQ;AAAA,gBAAA;AAAA,cAAA;AAAA,cAGxDI,KACC,gBAAAqB;AAAA,gBAACO;AAAA,gBAAA;AAAA,kBACC,QAAArD;AAAA,kBACA,WAAAC;AAAA,kBACA,iBAAiBsB;AAAA,kBACjB,6BAAAnB;AAAA,kBACA,gCAAAC;AAAA,gBAAA;AAAA,cAAA;AAAA,cAGJ,gBAAAyC;AAAA,gBAACQ;AAAA,gBAAA;AAAA,kBACC,MAAK;AAAA,kBACL,OAAOtD,EAAO;AAAA,kBACd,UAAU,CAACuD,MAAWtD,EAAU,EAAE,GAAGD,GAAQ,QAAAuD,GAAQ;AAAA,kBACrD,YAAYxD,EAAS,QAAQ,WAAW;AAAA,gBAAA;AAAA,cAAA;AAAA,cAE1C,gBAAA+C;AAAA,gBAACQ;AAAA,gBAAA;AAAA,kBACC,MAAK;AAAA,kBACL,OAAOtD,EAAO;AAAA,kBACd,UAAU,CAACwD,MAAWvD,EAAU,EAAE,GAAGD,GAAQ,QAAAwD,GAAQ;AAAA,kBACrD,YAAYzD,EAAS,QAAQ,WAAW;AAAA,gBAAA;AAAA,cAAA;AAAA,cAE1C,gBAAA+C;AAAA,gBAACQ;AAAA,gBAAA;AAAA,kBACC,MAAK;AAAA,kBACL,OAAOtD,EAAO;AAAA,kBACd,UAAU,CAACyD,MAASxD,EAAU,EAAE,GAAGD,GAAQ,MAAAyD,GAAM;AAAA,kBACjD,YAAY1D,EAAS,QAAQ,WAAW;AAAA,gBAAA;AAAA,cAAA;AAAA,cAE1C,gBAAA+C;AAAA,gBAACQ;AAAA,gBAAA;AAAA,kBACC,MAAK;AAAA,kBACL,OAAOtD,EAAO;AAAA,kBACd,UAAU,CAAC0D,MAAUzD,EAAU,EAAE,GAAGD,GAAQ,OAAA0D,GAAO;AAAA,kBACnD,YAAY3D,EAAS,QAAQ,WAAW;AAAA,gBAAA;AAAA,cAAA;AAAA,cAE1C,gBAAA+C;AAAA,gBAACa;AAAA,gBAAA;AAAA,kBACC,OAAO3D,EAAO;AAAA,kBACd,UAAU,CAAC4D,MAAS3D,EAAU,EAAE,GAAGD,GAAQ,MAAA4D,GAAM;AAAA,kBACjD,MAAM7D,EAAS,QAAQ;AAAA,gBAAA;AAAA,cAAA;AAAA,YACzB,EAAA,CACF;AAAA,UAAA,GACF;AAAA,UACA,gBAAA6C;AAAA,YAAC;AAAA,YAAA;AAAA,cACC,WAAWiB;AAAA,gBACT;AAAA,gBACA5C,KAAU;AAAA,cAAA;AAAA,cAGX,UAAA;AAAA,gBAAAA,KAAU,gBAAA6B,EAACK,GAAA,EAAS,QAAAlC,GAAgB,WAAU,4CAA2C;AAAA,kCACzF6C,IAAA,EAAY,SAAO,IAAC,eAAY,kCAAiC,WAAU,iBAAA,CAAiB;AAAA,cAAA;AAAA,YAAA;AAAA,UAAA;AAAA,QAC/F,EAAA,CACF;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAGN;"}
1
+ {"version":3,"file":"PlaygroundModal.js","sources":["../../../../src/api-playground/ApiPlayground/Request/PlaygroundModal.tsx"],"sourcesContent":["'use client';\n\nimport { ApiPlaygroundInputs, Endpoint } from '@mintlify/validation';\nimport { useContext, useState, useEffect } from 'react';\n\nimport { DescriptionWithoutHeaders } from '@/api-playground/EndpointFields/components/Description';\nimport { useApiPlaygroundPrefillExamples } from '@/hooks/useApiPlaygroundPrefillExamples';\nimport { useMDXContent } from '@/hooks/useMDXContent';\nimport { parseAuthInputsFromUserInfo } from '@/hooks/usePrefilledInputs';\nimport { useSecurityOption } from '@/hooks/useSecurityOption';\nimport {\n getDefaultsFromParameterGroup,\n getDefaultFromSchema,\n} from '@/utils/api-playground/defaults';\nimport { paramFieldDefaults } from '@/utils/api-playground/paramFieldDefaults';\nimport { getFilteredSecurityOptions } from '@/utils/api-reference/getFilteredSecurityOptions';\nimport { cn } from '@/api-playground-2/schemaGraph/utils';\n\nimport { ApiPlaygroundContext } from '../ApiPlaygroundContext';\nimport { Response } from '../Response';\nimport { EndpointsMenu } from '../components/EndpointsMenu';\nimport { PathHeader, SendPill } from '../components/PathHeader';\nimport { PlaygroundModalWrapper } from '../components/PlaygroundModalWrapper';\nimport { BodySection } from './BodySection';\nimport { ParameterSection } from './ParameterSection';\nimport { SecuritySection } from './SecuritySection';\nimport { ServerSection } from './ServerSection';\nimport ApiExamples from '@/api-playground-2/ApiExamples';\n\nexport function PlaygroundModal({\n endpoint,\n inputs,\n setInputs,\n pathname,\n}: {\n endpoint: Endpoint;\n inputs: ApiPlaygroundInputs;\n setInputs: (inputs: ApiPlaygroundInputs) => void;\n pathname: string;\n}) {\n const [{ pageMetadata }] = useMDXContent();\n const [selectedSecurityOptionIndex, setSelectedSecurityOptionIndex] = useState(0);\n const { prefillExamplesEnabled, generatedRequestExampleData } = useApiPlaygroundPrefillExamples();\n const securityOption = useSecurityOption(endpoint.request.security);\n\n const {\n isSending,\n selectedBaseUrlIndex,\n isPlaygroundExpanded,\n setIsPlaygroundExpanded,\n sendRequest,\n result,\n selectedExampleIndex,\n } = useContext(ApiPlaygroundContext);\n const server = endpoint.servers?.[selectedBaseUrlIndex];\n\n const filteredSecurityOptions = getFilteredSecurityOptions(endpoint);\n\n const selectedSecurityOption = filteredSecurityOptions[selectedSecurityOptionIndex];\n\n const variables = server?.variables;\n\n useEffect(() => {\n if (!isPlaygroundExpanded) return;\n\n const nextInputs: ApiPlaygroundInputs = prefillExamplesEnabled\n ? generatedRequestExampleData[selectedExampleIndex ?? 0]\n : JSON.parse(JSON.stringify(inputs));\n\n if (variables) {\n const serverDefaults: Record<string, string> = {};\n Object.entries(variables).forEach(([k, v]) => {\n if (nextInputs.server[k] === undefined) {\n serverDefaults[k] = String(v.default);\n }\n });\n nextInputs.server = { ...nextInputs.server, ...serverDefaults };\n }\n\n const paramSections: Array<\n ['header' | 'path' | 'query' | 'cookie', typeof endpoint.request.parameters.header]\n > = [\n ['header', endpoint.request.parameters.header],\n ['path', endpoint.request.parameters.path],\n ['query', endpoint.request.parameters.query],\n ['cookie', endpoint.request.parameters.cookie],\n ];\n\n paramSections.forEach(([section, group]) => {\n const spec = prefillExamplesEnabled\n ? generatedRequestExampleData[selectedExampleIndex ?? 0]?.[section]\n : getDefaultsFromParameterGroup(group);\n\n nextInputs[section] = {\n ...spec,\n ...paramFieldDefaults[section],\n ...nextInputs[section],\n };\n });\n\n const userInfoAuthInputs = parseAuthInputsFromUserInfo(\n securityOption,\n undefined\n );\n\n nextInputs.query = { ...nextInputs.query, ...userInfoAuthInputs.query };\n nextInputs.header = { ...nextInputs.header, ...userInfoAuthInputs.header };\n nextInputs.cookie = { ...nextInputs.cookie, ...userInfoAuthInputs.cookie };\n\n const bodyEntry = Object.values(endpoint.request.body)[0];\n if (bodyEntry?.schemaArray.length) {\n const bodyDefaultFromSpec = prefillExamplesEnabled\n ? generatedRequestExampleData[selectedExampleIndex ?? 0]?.body\n : getDefaultFromSchema(bodyEntry.schemaArray[0]);\n\n const bodyDefaultsFromParamField: Record<string, unknown> = paramFieldDefaults.body;\n\n if (typeof bodyDefaultFromSpec === 'object' && bodyDefaultFromSpec !== null) {\n nextInputs.body = Object.assign(\n {},\n bodyDefaultFromSpec,\n bodyDefaultsFromParamField,\n typeof nextInputs.body === 'object' &&\n nextInputs.body !== null &&\n !Array.isArray(nextInputs.body)\n ? nextInputs.body\n : {}\n );\n } else if (Object.keys(bodyDefaultsFromParamField).length) {\n const existingBody =\n typeof nextInputs.body === 'object' &&\n nextInputs.body !== null &&\n !Array.isArray(nextInputs.body)\n ? nextInputs.body\n : {};\n nextInputs.body = { ...bodyDefaultsFromParamField, ...existingBody };\n } else if (nextInputs.body === undefined && bodyDefaultFromSpec !== undefined) {\n nextInputs.body = bodyDefaultFromSpec;\n }\n }\n\n if (JSON.stringify(nextInputs) !== JSON.stringify(inputs)) {\n setInputs(nextInputs);\n }\n }, [isPlaygroundExpanded, endpoint, selectedExampleIndex, securityOption]);\n\n return (\n <PlaygroundModalWrapper\n isPlaygroundExpanded={isPlaygroundExpanded}\n setIsPlaygroundExpanded={setIsPlaygroundExpanded}\n >\n <div className=\"mint:flex mint:items-center mint:justify-between mint:gap-x-2\">\n <EndpointsMenu endpoint={endpoint} pathname={pathname} />\n <PathHeader endpoint={endpoint} hasGrayBackground display=\"interactive\" />\n <SendPill\n label=\"Send\"\n method={endpoint.method}\n isSending={isSending}\n onClick={sendRequest}\n className=\"mint:w-20\"\n />\n </div>\n <div className=\"mint:grid mint:grid-cols-1 mint:lg:grid-cols-5 mint:gap-x-8 mint:gap-y-6 mint:mt-5 mint:relative\">\n <div className=\"mint:col-span-1 mint:lg:col-span-3\">\n <div className=\"mint:space-y-1 mint:min-w-full mint:w-full mint:max-w-full mint:overflow-hidden\">\n <div className=\"mint:text-base mint:font-medium mint:text-gray-900 mint:dark:text-white mint:max-w-full\">\n {endpoint.title}\n </div>\n <div className=\"mint:flex mint:items-start mint:gap-x-12 mint:justify-between mint:max-w-full! mint:overflow-x-auto\">\n {pageMetadata.description && (\n <DescriptionWithoutHeaders\n markdown={pageMetadata.description}\n className=\"mint:text-sm mint:text-gray-500 mint:dark:text-gray-400\"\n />\n )}\n </div>\n </div>\n {result && <Response result={result} className=\"mint:mt-6 mint:block mint:lg:hidden\" />}\n <div className=\"mint:space-y-2 mint:mt-6\">\n {variables && Object.keys(variables).length > 0 && (\n <ServerSection\n variables={variables}\n value={inputs.server}\n setValue={(server) => setInputs({ ...inputs, server })}\n />\n )}\n {selectedSecurityOption && (\n <SecuritySection\n inputs={inputs}\n setInputs={setInputs}\n securityOptions={filteredSecurityOptions}\n selectedSecurityOptionIndex={selectedSecurityOptionIndex}\n setSelectedSecurityOptionIndex={setSelectedSecurityOptionIndex}\n />\n )}\n <ParameterSection\n name=\"Header\"\n value={inputs.header}\n setValue={(header) => setInputs({ ...inputs, header })}\n parameters={endpoint.request.parameters.header}\n />\n <ParameterSection\n name=\"Cookie\"\n value={inputs.cookie}\n setValue={(cookie) => setInputs({ ...inputs, cookie })}\n parameters={endpoint.request.parameters.cookie}\n />\n <ParameterSection\n name=\"Path\"\n value={inputs.path}\n setValue={(path) => setInputs({ ...inputs, path })}\n parameters={endpoint.request.parameters.path}\n />\n <ParameterSection\n name=\"Query\"\n value={inputs.query}\n setValue={(query) => setInputs({ ...inputs, query })}\n parameters={endpoint.request.parameters.query}\n />\n <BodySection\n value={inputs.body}\n setValue={(body) => setInputs({ ...inputs, body })}\n body={endpoint.request.body}\n />\n </div>\n </div>\n <div\n className={cn(\n 'mint:p-px mint:col-span-1 mint:lg:col-span-2 mint:lg:space-y-6 mint:lg:flex mint:lg:sticky mint:lg:top-0 mint:lg:self-start mint:lg:h-[calc(100vh-5.5rem)]',\n result && 'mint:lg:flex-col mint:overflow-y-auto mint:lg:-top-12 mint:lg:h-screen'\n )}\n >\n {result && <Response result={result} className=\"mint:hidden mint:lg:block mint:min-h-fit\" />}\n <ApiExamples isModal data-testid=\"api-playground-request-example\" className=\"mint:xl:w-full\" />\n </div>\n </div>\n </PlaygroundModalWrapper>\n );\n}\n"],"names":["PlaygroundModal","endpoint","inputs","setInputs","pathname","pageMetadata","useMDXContent","selectedSecurityOptionIndex","setSelectedSecurityOptionIndex","useState","prefillExamplesEnabled","generatedRequestExampleData","useApiPlaygroundPrefillExamples","securityOption","useSecurityOption","isSending","selectedBaseUrlIndex","isPlaygroundExpanded","setIsPlaygroundExpanded","sendRequest","result","selectedExampleIndex","useContext","ApiPlaygroundContext","server","_a","filteredSecurityOptions","getFilteredSecurityOptions","selectedSecurityOption","variables","useEffect","nextInputs","serverDefaults","k","v","section","group","spec","getDefaultsFromParameterGroup","paramFieldDefaults","userInfoAuthInputs","parseAuthInputsFromUserInfo","bodyEntry","bodyDefaultFromSpec","getDefaultFromSchema","bodyDefaultsFromParamField","existingBody","jsxs","PlaygroundModalWrapper","jsx","EndpointsMenu","PathHeader","SendPill","DescriptionWithoutHeaders","Response","ServerSection","SecuritySection","ParameterSection","header","cookie","path","query","BodySection","body","cn","ApiExamples"],"mappings":"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"}
@@ -1,44 +1,44 @@
1
- import { jsx as e, jsxs as c } from "react/jsx-runtime";
2
- import { useContext as d } from "react";
3
- import { usePrefilledInputs as f } from "../../../hooks/usePrefilledInputs/index.js";
4
- import { useSecurityOption as a } from "../../../hooks/useSecurityOption.js";
5
- import p from "../../../components/Api/ErrorBoundary.js";
1
+ import { jsx as e, jsxs as d } from "react/jsx-runtime";
2
+ import { useContext as f } from "react";
3
+ import { usePrefilledInputs as a } from "../../../hooks/usePrefilledInputs/index.js";
4
+ import { useSecurityOption as p } from "../../../hooks/useSecurityOption.js";
5
+ import x from "../../../components/Api/ErrorBoundary.js";
6
6
  import "@mintlify/validation";
7
- import { cn as x } from "../../../utils/cn.js";
8
- import { ApiPlaygroundContext as b } from "../ApiPlaygroundContext.js";
9
- import { EndpointHeader as g } from "../components/PathHeader.js";
10
- import { PlaygroundModal as k } from "./PlaygroundModal.js";
11
- const U = ({ endpoint: r, inputs: i, setInputs: m, display: n }) => {
7
+ import { cn as b } from "../../../utils/cn.js";
8
+ import { ApiPlaygroundContext as g } from "../ApiPlaygroundContext.js";
9
+ import { EndpointHeader as k } from "../components/PathHeader.js";
10
+ import { PlaygroundModal as y } from "./PlaygroundModal.js";
11
+ const w = ({ endpoint: r, inputs: i, setInputs: m, display: n, pathname: s }) => {
12
12
  var l;
13
- const { selectedBaseUrlIndex: s, setIsPlaygroundExpanded: o } = d(b), t = (l = r.servers) == null ? void 0 : l[s], u = a(r.request.security);
14
- return f({
13
+ const { selectedBaseUrlIndex: u, setIsPlaygroundExpanded: o } = f(g), t = (l = r.servers) == null ? void 0 : l[u], c = p(r.request.security);
14
+ return a({
15
15
  inputs: i,
16
16
  setInputs: m,
17
17
  baseUrl: t == null ? void 0 : t.url,
18
- securityOption: u,
18
+ securityOption: c,
19
19
  userInfoInputs: void 0
20
- }), /* @__PURE__ */ e(p, { children: /* @__PURE__ */ c(
20
+ }), /* @__PURE__ */ e(x, { children: /* @__PURE__ */ d(
21
21
  "div",
22
22
  {
23
- className: x(
23
+ className: b(
24
24
  "mint:flex mint:w-full mint:flex-col mint:bg-background-light mint:dark:bg-background-dark mint:border-standard mint:rounded-2xl",
25
25
  n === "simple" ? "mint:p-1" : "mint:p-1.5"
26
26
  ),
27
27
  children: [
28
28
  /* @__PURE__ */ e(
29
- g,
29
+ k,
30
30
  {
31
31
  endpoint: r,
32
32
  display: n,
33
33
  onClickInteractive: () => o == null ? void 0 : o(!0)
34
34
  }
35
35
  ),
36
- /* @__PURE__ */ e(k, { endpoint: r, inputs: i, setInputs: m })
36
+ /* @__PURE__ */ e(y, { endpoint: r, inputs: i, setInputs: m, pathname: s })
37
37
  ]
38
38
  }
39
39
  ) });
40
40
  };
41
41
  export {
42
- U as Request
42
+ w as Request
43
43
  };
44
44
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/api-playground/ApiPlayground/Request/index.tsx"],"sourcesContent":["'use client';\n\nimport { ApiPlaygroundDisplayType } from '@mintlify/models';\nimport { ApiPlaygroundInputs, Endpoint } from '@mintlify/validation';\nimport { useContext } from 'react';\n\nimport { usePrefilledInputs } from '@/hooks/usePrefilledInputs';\nimport { useSecurityOption } from '@/hooks/useSecurityOption';\nimport ErrorBoundary from '@/components/Api/ErrorBoundary';\nimport { cn } from '@/api-playground-2/schemaGraph/utils';\n\nimport { ApiPlaygroundContext } from '../ApiPlaygroundContext';\nimport { EndpointHeader } from '../components/PathHeader';\nimport { PlaygroundModal } from './PlaygroundModal';\n\ntype RequestParams = {\n endpoint: Endpoint;\n inputs: ApiPlaygroundInputs;\n setInputs: (inputs: ApiPlaygroundInputs) => void;\n display: ApiPlaygroundDisplayType;\n};\n\nexport const Request = ({ endpoint, inputs, setInputs, display }: RequestParams) => {\n const { selectedBaseUrlIndex, setIsPlaygroundExpanded } = useContext(ApiPlaygroundContext);\n const server = endpoint.servers?.[selectedBaseUrlIndex];\n\n const securityOption = useSecurityOption(endpoint.request.security);\n usePrefilledInputs({\n inputs,\n setInputs,\n baseUrl: server?.url,\n securityOption,\n userInfoInputs: undefined,\n });\n\n return (\n <ErrorBoundary>\n <div\n className={cn(\n 'mint:flex mint:w-full mint:flex-col mint:bg-background-light mint:dark:bg-background-dark mint:border-standard mint:rounded-2xl',\n display === 'simple' ? 'mint:p-1' : 'mint:p-1.5'\n )}\n >\n <EndpointHeader\n endpoint={endpoint}\n display={display}\n onClickInteractive={() => setIsPlaygroundExpanded?.(true)}\n />\n <PlaygroundModal endpoint={endpoint} inputs={inputs} setInputs={setInputs} />\n </div>\n </ErrorBoundary>\n );\n};\n"],"names":["Request","endpoint","inputs","setInputs","display","selectedBaseUrlIndex","setIsPlaygroundExpanded","useContext","ApiPlaygroundContext","server","_a","securityOption","useSecurityOption","usePrefilledInputs","ErrorBoundary","jsxs","cn","jsx","EndpointHeader","PlaygroundModal"],"mappings":";;;;;;;;;;AAsBO,MAAMA,IAAU,CAAC,EAAE,UAAAC,GAAU,QAAAC,GAAQ,WAAAC,GAAW,SAAAC,QAA6B;;AAClF,QAAM,EAAE,sBAAAC,GAAsB,yBAAAC,MAA4BC,EAAWC,CAAoB,GACnFC,KAASC,IAAAT,EAAS,YAAT,gBAAAS,EAAmBL,IAE5BM,IAAiBC,EAAkBX,EAAS,QAAQ,QAAQ;AAClE,SAAAY,EAAmB;AAAA,IACjB,QAAAX;AAAA,IACA,WAAAC;AAAA,IACA,SAASM,KAAA,gBAAAA,EAAQ;AAAA,IACjB,gBAAAE;AAAA,IACA,gBAAgB;AAAA,EAAA,CACjB,qBAGEG,GAAA,EACC,UAAA,gBAAAC;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAWC;AAAA,QACT;AAAA,QACAZ,MAAY,WAAW,aAAa;AAAA,MAAA;AAAA,MAGtC,UAAA;AAAA,QAAA,gBAAAa;AAAA,UAACC;AAAA,UAAA;AAAA,YACC,UAAAjB;AAAA,YACA,SAAAG;AAAA,YACA,oBAAoB,MAAME,KAAA,gBAAAA,EAA0B;AAAA,UAAI;AAAA,QAAA;AAAA,QAE1D,gBAAAW,EAACE,GAAA,EAAgB,UAAAlB,GAAoB,QAAAC,GAAgB,WAAAC,EAAA,CAAsB;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA,GAE/E;AAEJ;"}
1
+ {"version":3,"file":"index.js","sources":["../../../../src/api-playground/ApiPlayground/Request/index.tsx"],"sourcesContent":["'use client';\n\nimport { ApiPlaygroundDisplayType } from '@mintlify/models';\nimport { ApiPlaygroundInputs, Endpoint } from '@mintlify/validation';\nimport { useContext } from 'react';\n\nimport { usePrefilledInputs } from '@/hooks/usePrefilledInputs';\nimport { useSecurityOption } from '@/hooks/useSecurityOption';\nimport ErrorBoundary from '@/components/Api/ErrorBoundary';\nimport { cn } from '@/api-playground-2/schemaGraph/utils';\n\nimport { ApiPlaygroundContext } from '../ApiPlaygroundContext';\nimport { EndpointHeader } from '../components/PathHeader';\nimport { PlaygroundModal } from './PlaygroundModal';\n\ntype RequestParams = {\n endpoint: Endpoint;\n inputs: ApiPlaygroundInputs;\n setInputs: (inputs: ApiPlaygroundInputs) => void;\n display: ApiPlaygroundDisplayType;\n pathname: string;\n};\n\nexport const Request = ({ endpoint, inputs, setInputs, display, pathname }: RequestParams) => {\n const { selectedBaseUrlIndex, setIsPlaygroundExpanded } = useContext(ApiPlaygroundContext);\n const server = endpoint.servers?.[selectedBaseUrlIndex];\n\n const securityOption = useSecurityOption(endpoint.request.security);\n usePrefilledInputs({\n inputs,\n setInputs,\n baseUrl: server?.url,\n securityOption,\n userInfoInputs: undefined,\n });\n\n return (\n <ErrorBoundary>\n <div\n className={cn(\n 'mint:flex mint:w-full mint:flex-col mint:bg-background-light mint:dark:bg-background-dark mint:border-standard mint:rounded-2xl',\n display === 'simple' ? 'mint:p-1' : 'mint:p-1.5'\n )}\n >\n <EndpointHeader\n endpoint={endpoint}\n display={display}\n onClickInteractive={() => setIsPlaygroundExpanded?.(true)}\n />\n <PlaygroundModal endpoint={endpoint} inputs={inputs} setInputs={setInputs} pathname={pathname} />\n </div>\n </ErrorBoundary>\n );\n};\n"],"names":["Request","endpoint","inputs","setInputs","display","pathname","selectedBaseUrlIndex","setIsPlaygroundExpanded","useContext","ApiPlaygroundContext","server","_a","securityOption","useSecurityOption","usePrefilledInputs","ErrorBoundary","jsxs","cn","jsx","EndpointHeader","PlaygroundModal"],"mappings":";;;;;;;;;;AAuBO,MAAMA,IAAU,CAAC,EAAE,UAAAC,GAAU,QAAAC,GAAQ,WAAAC,GAAW,SAAAC,GAAS,UAAAC,QAA8B;;AAC5F,QAAM,EAAE,sBAAAC,GAAsB,yBAAAC,MAA4BC,EAAWC,CAAoB,GACnFC,KAASC,IAAAV,EAAS,YAAT,gBAAAU,EAAmBL,IAE5BM,IAAiBC,EAAkBZ,EAAS,QAAQ,QAAQ;AAClE,SAAAa,EAAmB;AAAA,IACjB,QAAAZ;AAAA,IACA,WAAAC;AAAA,IACA,SAASO,KAAA,gBAAAA,EAAQ;AAAA,IACjB,gBAAAE;AAAA,IACA,gBAAgB;AAAA,EAAA,CACjB,qBAGEG,GAAA,EACC,UAAA,gBAAAC;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAWC;AAAA,QACT;AAAA,QACAb,MAAY,WAAW,aAAa;AAAA,MAAA;AAAA,MAGtC,UAAA;AAAA,QAAA,gBAAAc;AAAA,UAACC;AAAA,UAAA;AAAA,YACC,UAAAlB;AAAA,YACA,SAAAG;AAAA,YACA,oBAAoB,MAAMG,KAAA,gBAAAA,EAA0B;AAAA,UAAI;AAAA,QAAA;AAAA,QAE1D,gBAAAW,EAACE,GAAA,EAAgB,UAAAnB,GAAoB,QAAAC,GAAgB,WAAAC,GAAsB,UAAAE,EAAA,CAAoB;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA,GAEnG;AAEJ;"}
@@ -1,15 +1,14 @@
1
- import { jsxs as a, jsx as i } from "react/jsx-runtime";
1
+ import { jsxs as l, jsx as i } from "react/jsx-runtime";
2
2
  import { potentiallyParseOpenApiString as M } from "../../../common/potentiallyParseOpenApiString.js";
3
- import { slugToTitle as h } from "../../../common/slugToTitle.js";
4
- import { ChevronDownFilled as P } from "@fluentui/react-icons";
5
- import { useState as k, useMemo as u } from "react";
3
+ import { slugToTitle as f } from "../../../common/slugToTitle.js";
4
+ import { ChevronDownFilled as k } from "@fluentui/react-icons";
5
+ import { useState as P, useMemo as h } from "react";
6
6
  import { MethodPill as A } from "../../../components/Api/MethodPill.js";
7
- import { DropdownMenu as y, DropdownMenuTrigger as C, DropdownMenuContent as D } from "../../../components/Api/dropdown-menu.js";
8
- import { useCurrentPath as N } from "../../../hooks/useCurrentPath.js";
7
+ import { DropdownMenu as y, DropdownMenuTrigger as D, DropdownMenuContent as N } from "../../../components/Api/dropdown-menu.js";
9
8
  import { useMDXContent as S } from "../../../hooks/useMDXContent.js";
10
- import { EndpointsMenuLink as T } from "./EndpointsMenuLink.js";
11
- import { EndpointsMenuSearch as E } from "./EndpointsMenuSearch.js";
12
- const f = (r) => r.reduce((t, e) => "pages" in e ? [...t, ...f(e.pages)] : "openapi" in e || "api" in e || "asyncapi" in e ? [...t, e] : t, []), L = (r) => r.map((t) => {
9
+ import { EndpointsMenuLink as C } from "./EndpointsMenuLink.js";
10
+ import { EndpointsMenuSearch as T } from "./EndpointsMenuSearch.js";
11
+ const g = (r) => r.reduce((t, e) => "pages" in e ? [...t, ...g(e.pages)] : "openapi" in e || "api" in e || "asyncapi" in e ? [...t, e] : t, []), E = (r) => r.map((t) => {
13
12
  {
14
13
  const e = t.openapi || t.api;
15
14
  if (e == null)
@@ -17,28 +16,28 @@ const f = (r) => r.reduce((t, e) => "pages" in e ? [...t, ...f(e.pages)] : "open
17
16
  const n = M(e);
18
17
  return n == null ? void 0 : {
19
18
  method: n.method,
20
- title: t.title || h(t.href),
19
+ title: t.title || f(t.href),
21
20
  href: t.href,
22
21
  type: "openapi",
23
22
  playground: t.playground
24
23
  };
25
24
  }
26
- }).filter((t) => t != null), I = ({ endpoint: r, channel: t, operation: e }) => {
27
- var c;
28
- const [{ pageMetadata: n }] = S(), g = N(), s = n.title || h(g), [m, x] = k(""), l = f(((c = n.navigation) == null ? void 0 : c.groupsOrPages) ?? []), d = u(() => L(l), [l]), v = e ? e.title || s : r ? r.title || s : (t == null ? void 0 : t.title) || s, p = e ? e.method : r ? r.method : "websocket", w = p === "websocket", b = u(() => m ? d.filter((o) => o.title.toLowerCase().includes(m.toLowerCase())) : d, [m, d]);
29
- return /* @__PURE__ */ a(y, { children: [
30
- /* @__PURE__ */ i(C, { className: "mint:hidden mint:lg:block", children: /* @__PURE__ */ a("div", { className: "mint:flex mint:items-center mint:gap-x-2 mint:border-standard mint:rounded-xl mint:p-1.5 mint:pr-3 mint:min-w-80 mint:hover:bg-gray-50 mint:dark:hover:bg-white/5", children: [
31
- /* @__PURE__ */ i(A, { method: p, shortMethod: w, isActive: !0 }),
25
+ }).filter((t) => t != null), G = ({ endpoint: r, channel: t, operation: e, pathname: n }) => {
26
+ var u;
27
+ const [{ pageMetadata: a }] = S(), s = a.title || f(n), [m, x] = P(""), p = g(((u = a.navigation) == null ? void 0 : u.groupsOrPages) ?? []), d = h(() => E(p), [p]), v = e ? e.title || s : r ? r.title || s : (t == null ? void 0 : t.title) || s, c = e ? e.method : r ? r.method : "websocket", w = c === "websocket", b = h(() => m ? d.filter((o) => o.title.toLowerCase().includes(m.toLowerCase())) : d, [m, d]);
28
+ return /* @__PURE__ */ l(y, { children: [
29
+ /* @__PURE__ */ i(D, { className: "mint:hidden mint:lg:block", children: /* @__PURE__ */ l("div", { className: "mint:flex mint:items-center mint:gap-x-2 mint:border-standard mint:rounded-xl mint:p-1.5 mint:pr-3 mint:min-w-80 mint:hover:bg-gray-50 mint:dark:hover:bg-white/5", children: [
30
+ /* @__PURE__ */ i(A, { method: c, shortMethod: w, isActive: !0 }),
32
31
  /* @__PURE__ */ i("div", { className: "mint:flex-1 mint:text-left mint:text-sm mint:font-medium mint:text-gray-900 mint:dark:text-white mint:truncate", children: v }),
33
- /* @__PURE__ */ i("div", { children: /* @__PURE__ */ i(P, { className: "mint:w-4 mint:h-4 mint:text-gray-500 mint:dark:text-gray-400" }) })
32
+ /* @__PURE__ */ i("div", { children: /* @__PURE__ */ i(k, { className: "mint:w-4 mint:h-4 mint:text-gray-500 mint:dark:text-gray-400" }) })
34
33
  ] }) }),
35
- /* @__PURE__ */ i(D, { className: "mint:hidden mint:lg:block mint:w-80 mint:border mint:border-gray-100 mint:dark:border-white/10 mint:rounded-xl mint:px-2 mint:pb-2 mint:pt-0", children: /* @__PURE__ */ a("div", { className: "mint:flex mint:flex-col", children: [
36
- /* @__PURE__ */ i(E, { search: m, setSearch: x }),
37
- b.map((o) => /* @__PURE__ */ i("div", { children: /* @__PURE__ */ i(T, { page: o }) }, `search-${o.title}-${o.href}`))
34
+ /* @__PURE__ */ i(N, { className: "mint:hidden mint:lg:block mint:w-80 mint:border mint:border-gray-100 mint:dark:border-white/10 mint:rounded-xl mint:px-2 mint:pb-2 mint:pt-0", children: /* @__PURE__ */ l("div", { className: "mint:flex mint:flex-col", children: [
35
+ /* @__PURE__ */ i(T, { search: m, setSearch: x }),
36
+ b.map((o) => /* @__PURE__ */ i("div", { children: /* @__PURE__ */ i(C, { page: o, pathname: n }) }, `search-${o.title}-${o.href}`))
38
37
  ] }) })
39
38
  ] });
40
39
  };
41
40
  export {
42
- I as EndpointsMenu
41
+ G as EndpointsMenu
43
42
  };
44
43
  //# sourceMappingURL=EndpointsMenu.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"EndpointsMenu.js","sources":["../../../../src/api-playground/ApiPlayground/components/EndpointsMenu.tsx"],"sourcesContent":["import { potentiallyParseOpenApiString} from '../../../common/potentiallyParseOpenApiString';\nimport { slugToTitle } from '../../../common/slugToTitle';\nimport type { ChannelData } from '@mintlify/common';\nimport { DecoratedNavigationPage } from '@mintlify/models';\nimport { DecoratedPageOrGroupConfig, Endpoint } from '@mintlify/validation';\nimport { ChevronDownFilled } from '@fluentui/react-icons';\nimport { useState, useMemo } from 'react';\n\nimport { MethodPill } from '../../../components/Api/MethodPill';\nimport { DropdownMenu, DropdownMenuContent, DropdownMenuTrigger } from '../../../components/Api/dropdown-menu';\nimport { useCurrentPath } from '../../../hooks/useCurrentPath';\nimport { useMDXContent } from '@/hooks/useMDXContent';\nimport { ApiPageData } from '../../../api-playground-2/types/api';\n\nimport { EndpointsMenuLink } from './EndpointsMenuLink';\nimport { EndpointsMenuSearch } from './EndpointsMenuSearch';\n\ntype EndpointsMenuProps = {\n endpoint?: Endpoint;\n channel?: ChannelData;\n operation?: { title: string; method: string };\n};\n\nconst getAllApiPages = (navigation: DecoratedPageOrGroupConfig[]): DecoratedNavigationPage[] => {\n return navigation.reduce<DecoratedNavigationPage[]>((acc, entry) => {\n if ('pages' in entry) {\n \n return [...acc, ...getAllApiPages(entry.pages as DecoratedPageOrGroupConfig[])];\n } else if ('openapi' in entry || 'api' in entry || 'asyncapi' in entry) {\n return [...acc, entry];\n }\n return acc;\n }, []);\n};\n\nconst mapApiPageData = (pages: DecoratedNavigationPage[]): ApiPageData[] => {\n return pages\n .map((page: DecoratedNavigationPage): ApiPageData | undefined => {\n {\n const endpointStr = page.openapi || page.api;\n if (endpointStr == undefined) {\n return undefined;\n }\n const potentiallyParsedOpenApiString = potentiallyParseOpenApiString(endpointStr);\n if (potentiallyParsedOpenApiString == undefined) {\n return undefined;\n }\n return {\n method: potentiallyParsedOpenApiString.method,\n title: page.title || slugToTitle(page.href),\n href: page.href,\n type: 'openapi',\n playground: page.playground,\n };\n }\n })\n .filter((pageData) => pageData != undefined);\n};\n\nexport const EndpointsMenu = ({ endpoint, channel, operation }: EndpointsMenuProps) => {\n const [{ pageMetadata }] = useMDXContent() as unknown as [{ pageMetadata: { title?: string; navigation?: { groupsOrPages?: DecoratedPageOrGroupConfig[] } } }];\n const currentPath = useCurrentPath();\n const pageTitle = pageMetadata.title || slugToTitle(currentPath);\n const [search, setSearch] = useState('');\n\n const allApiPages = getAllApiPages(pageMetadata.navigation?.groupsOrPages ?? []);\n const apiPages = useMemo(() => mapApiPageData(allApiPages), [allApiPages]);\n\n const title = operation\n ? operation.title || pageTitle\n : endpoint\n ? endpoint.title || pageTitle\n : channel?.title || pageTitle;\n const method = operation ? operation.method : endpoint ? endpoint.method : 'websocket';\n const shortMethod = method === 'websocket';\n\n const searchResults = useMemo(() => {\n if (!search) return apiPages;\n return apiPages.filter((page) => {\n return page.title.toLowerCase().includes(search.toLowerCase());\n });\n }, [search, apiPages]);\n\n return (\n <DropdownMenu>\n <DropdownMenuTrigger className=\"mint:hidden mint:lg:block\">\n <div className=\"mint:flex mint:items-center mint:gap-x-2 mint:border-standard mint:rounded-xl mint:p-1.5 mint:pr-3 mint:min-w-80 mint:hover:bg-gray-50 mint:dark:hover:bg-white/5\">\n <MethodPill method={method} shortMethod={shortMethod} isActive={true} />\n <div className=\"mint:flex-1 mint:text-left mint:text-sm mint:font-medium mint:text-gray-900 mint:dark:text-white mint:truncate\">\n {title}\n </div>\n <div>\n <ChevronDownFilled className=\"mint:w-4 mint:h-4 mint:text-gray-500 mint:dark:text-gray-400\" />\n </div>\n </div>\n </DropdownMenuTrigger>\n <DropdownMenuContent className=\"mint:hidden mint:lg:block mint:w-80 mint:border mint:border-gray-100 mint:dark:border-white/10 mint:rounded-xl mint:px-2 mint:pb-2 mint:pt-0\">\n <div className=\"mint:flex mint:flex-col\">\n <EndpointsMenuSearch search={search} setSearch={setSearch} />\n {searchResults.map((page) => (\n <div key={`search-${page.title}-${page.href}`}>\n <EndpointsMenuLink page={page} />\n </div>\n ))}\n </div>\n </DropdownMenuContent>\n </DropdownMenu>\n );\n};\n"],"names":["getAllApiPages","navigation","acc","entry","mapApiPageData","pages","page","endpointStr","potentiallyParsedOpenApiString","potentiallyParseOpenApiString","slugToTitle","pageData","EndpointsMenu","endpoint","channel","operation","pageMetadata","useMDXContent","currentPath","useCurrentPath","pageTitle","search","setSearch","useState","allApiPages","_a","apiPages","useMemo","title","method","shortMethod","searchResults","DropdownMenu","jsx","DropdownMenuTrigger","jsxs","MethodPill","ChevronDownFilled","DropdownMenuContent","EndpointsMenuSearch","EndpointsMenuLink"],"mappings":";;;;;;;;;;;AAuBA,MAAMA,IAAiB,CAACC,MACfA,EAAW,OAAkC,CAACC,GAAKC,MACpD,WAAWA,IAEN,CAAC,GAAGD,GAAK,GAAGF,EAAeG,EAAM,KAAqC,CAAC,IACrE,aAAaA,KAAS,SAASA,KAAS,cAAcA,IACxD,CAAC,GAAGD,GAAKC,CAAK,IAEhBD,GACN,CAAA,CAAE,GAGDE,IAAiB,CAACC,MACfA,EACJ,IAAI,CAACC,MAA2D;AAC9D;AACC,UAAMC,IAAcD,EAAK,WAAWA,EAAK;AACzC,QAAIC,KAAe;AACjB;AAEF,UAAMC,IAAiCC,EAA8BF,CAAW;AAChF,WAAIC,KAAkC,OACpC,SAEK;AAAA,MACL,QAAQA,EAA+B;AAAA,MACvC,OAAOF,EAAK,SAASI,EAAYJ,EAAK,IAAI;AAAA,MAC1C,MAAMA,EAAK;AAAA,MACX,MAAM;AAAA,MACN,YAAYA,EAAK;AAAA,IAAA;AAAA,EAErB;AACF,CAAC,EACA,OAAO,CAACK,MAAaA,KAAY,IAAS,GAGlCC,IAAgB,CAAC,EAAE,UAAAC,GAAU,SAAAC,GAAS,WAAAC,QAAoC;;AACrF,QAAM,CAAC,EAAE,cAAAC,GAAc,IAAIC,EAAA,GACrBC,IAAcC,EAAA,GACdC,IAAYJ,EAAa,SAASN,EAAYQ,CAAW,GACzD,CAACG,GAAQC,CAAS,IAAIC,EAAS,EAAE,GAEjCC,IAAcxB,IAAeyB,IAAAT,EAAa,eAAb,gBAAAS,EAAyB,kBAAiB,CAAA,CAAE,GACzEC,IAAWC,EAAQ,MAAMvB,EAAeoB,CAAW,GAAG,CAACA,CAAW,CAAC,GAEnEI,IAAQb,IACVA,EAAU,SAASK,IACnBP,IACEA,EAAS,SAASO,KAClBN,KAAA,gBAAAA,EAAS,UAASM,GAClBS,IAASd,IAAYA,EAAU,SAASF,IAAWA,EAAS,SAAS,aACrEiB,IAAcD,MAAW,aAEzBE,IAAgBJ,EAAQ,MACvBN,IACEK,EAAS,OAAO,CAACpB,MACfA,EAAK,MAAM,YAAA,EAAc,SAASe,EAAO,aAAa,CAC9D,IAHmBK,GAInB,CAACL,GAAQK,CAAQ,CAAC;AAErB,2BACGM,GAAA,EACC,UAAA;AAAA,IAAA,gBAAAC,EAACC,KAAoB,WAAU,6BAC7B,UAAA,gBAAAC,EAAC,OAAA,EAAI,WAAU,qKACb,UAAA;AAAA,MAAA,gBAAAF,EAACG,GAAA,EAAW,QAAAP,GAAgB,aAAAC,GAA0B,UAAU,IAAM;AAAA,MACtE,gBAAAG,EAAC,OAAA,EAAI,WAAU,kHACZ,UAAAL,GACH;AAAA,wBACC,OAAA,EACC,UAAA,gBAAAK,EAACI,GAAA,EAAkB,WAAU,gEAA+D,EAAA,CAC9F;AAAA,IAAA,EAAA,CACF,EAAA,CACF;AAAA,sBACCC,GAAA,EAAoB,WAAU,gJAC7B,UAAA,gBAAAH,EAAC,OAAA,EAAI,WAAU,2BACb,UAAA;AAAA,MAAA,gBAAAF,EAACM,GAAA,EAAoB,QAAAlB,GAAgB,WAAAC,EAAA,CAAsB;AAAA,MAC1DS,EAAc,IAAI,CAACzB,MAClB,gBAAA2B,EAAC,SACC,UAAA,gBAAAA,EAACO,GAAA,EAAkB,MAAAlC,EAAA,CAAY,EAAA,GADvB,UAAUA,EAAK,KAAK,IAAIA,EAAK,IAAI,EAE3C,CACD;AAAA,IAAA,EAAA,CACH,EAAA,CACF;AAAA,EAAA,GACF;AAEJ;"}
1
+ {"version":3,"file":"EndpointsMenu.js","sources":["../../../../src/api-playground/ApiPlayground/components/EndpointsMenu.tsx"],"sourcesContent":["import { potentiallyParseOpenApiString} from '../../../common/potentiallyParseOpenApiString';\nimport { slugToTitle } from '../../../common/slugToTitle';\nimport type { ChannelData } from '@mintlify/common';\nimport { DecoratedNavigationPage } from '@mintlify/models';\nimport { DecoratedPageOrGroupConfig, Endpoint } from '@mintlify/validation';\nimport { ChevronDownFilled } from '@fluentui/react-icons';\nimport { useState, useMemo } from 'react';\n\nimport { MethodPill } from '../../../components/Api/MethodPill';\nimport { DropdownMenu, DropdownMenuContent, DropdownMenuTrigger } from '../../../components/Api/dropdown-menu';\nimport { useMDXContent } from '@/hooks/useMDXContent';\nimport { ApiPageData } from '../../../api-playground-2/types/api';\n\nimport { EndpointsMenuLink } from './EndpointsMenuLink';\nimport { EndpointsMenuSearch } from './EndpointsMenuSearch';\n\ntype EndpointsMenuProps = {\n endpoint?: Endpoint;\n channel?: ChannelData;\n operation?: { title: string; method: string };\n pathname: string;\n};\n\nconst getAllApiPages = (navigation: DecoratedPageOrGroupConfig[]): DecoratedNavigationPage[] => {\n return navigation.reduce<DecoratedNavigationPage[]>((acc, entry) => {\n if ('pages' in entry) {\n \n return [...acc, ...getAllApiPages(entry.pages as DecoratedPageOrGroupConfig[])];\n } else if ('openapi' in entry || 'api' in entry || 'asyncapi' in entry) {\n return [...acc, entry];\n }\n return acc;\n }, []);\n};\n\nconst mapApiPageData = (pages: DecoratedNavigationPage[]): ApiPageData[] => {\n return pages\n .map((page: DecoratedNavigationPage): ApiPageData | undefined => {\n {\n const endpointStr = page.openapi || page.api;\n if (endpointStr == undefined) {\n return undefined;\n }\n const potentiallyParsedOpenApiString = potentiallyParseOpenApiString(endpointStr);\n if (potentiallyParsedOpenApiString == undefined) {\n return undefined;\n }\n return {\n method: potentiallyParsedOpenApiString.method,\n title: page.title || slugToTitle(page.href),\n href: page.href,\n type: 'openapi',\n playground: page.playground,\n };\n }\n })\n .filter((pageData) => pageData != undefined);\n};\n\nexport const EndpointsMenu = ({ endpoint, channel, operation, pathname }: EndpointsMenuProps) => {\n const [{ pageMetadata }] = useMDXContent() as unknown as [{ pageMetadata: { title?: string; navigation?: { groupsOrPages?: DecoratedPageOrGroupConfig[] } } }];\n const pageTitle = pageMetadata.title || slugToTitle(pathname);\n const [search, setSearch] = useState('');\n\n const allApiPages = getAllApiPages(pageMetadata.navigation?.groupsOrPages ?? []);\n const apiPages = useMemo(() => mapApiPageData(allApiPages), [allApiPages]);\n\n const title = operation\n ? operation.title || pageTitle\n : endpoint\n ? endpoint.title || pageTitle\n : channel?.title || pageTitle;\n const method = operation ? operation.method : endpoint ? endpoint.method : 'websocket';\n const shortMethod = method === 'websocket';\n\n const searchResults = useMemo(() => {\n if (!search) return apiPages;\n return apiPages.filter((page) => {\n return page.title.toLowerCase().includes(search.toLowerCase());\n });\n }, [search, apiPages]);\n\n return (\n <DropdownMenu>\n <DropdownMenuTrigger className=\"mint:hidden mint:lg:block\">\n <div className=\"mint:flex mint:items-center mint:gap-x-2 mint:border-standard mint:rounded-xl mint:p-1.5 mint:pr-3 mint:min-w-80 mint:hover:bg-gray-50 mint:dark:hover:bg-white/5\">\n <MethodPill method={method} shortMethod={shortMethod} isActive={true} />\n <div className=\"mint:flex-1 mint:text-left mint:text-sm mint:font-medium mint:text-gray-900 mint:dark:text-white mint:truncate\">\n {title}\n </div>\n <div>\n <ChevronDownFilled className=\"mint:w-4 mint:h-4 mint:text-gray-500 mint:dark:text-gray-400\" />\n </div>\n </div>\n </DropdownMenuTrigger>\n <DropdownMenuContent className=\"mint:hidden mint:lg:block mint:w-80 mint:border mint:border-gray-100 mint:dark:border-white/10 mint:rounded-xl mint:px-2 mint:pb-2 mint:pt-0\">\n <div className=\"mint:flex mint:flex-col\">\n <EndpointsMenuSearch search={search} setSearch={setSearch} />\n {searchResults.map((page) => (\n <div key={`search-${page.title}-${page.href}`}>\n <EndpointsMenuLink page={page} pathname={pathname} />\n </div>\n ))}\n </div>\n </DropdownMenuContent>\n </DropdownMenu>\n );\n};\n"],"names":["getAllApiPages","navigation","acc","entry","mapApiPageData","pages","page","endpointStr","potentiallyParsedOpenApiString","potentiallyParseOpenApiString","slugToTitle","pageData","EndpointsMenu","endpoint","channel","operation","pathname","pageMetadata","useMDXContent","pageTitle","search","setSearch","useState","allApiPages","_a","apiPages","useMemo","title","method","shortMethod","searchResults","DropdownMenu","jsx","DropdownMenuTrigger","jsxs","MethodPill","ChevronDownFilled","DropdownMenuContent","EndpointsMenuSearch","EndpointsMenuLink"],"mappings":";;;;;;;;;;AAuBA,MAAMA,IAAiB,CAACC,MACfA,EAAW,OAAkC,CAACC,GAAKC,MACpD,WAAWA,IAEN,CAAC,GAAGD,GAAK,GAAGF,EAAeG,EAAM,KAAqC,CAAC,IACrE,aAAaA,KAAS,SAASA,KAAS,cAAcA,IACxD,CAAC,GAAGD,GAAKC,CAAK,IAEhBD,GACN,CAAA,CAAE,GAGDE,IAAiB,CAACC,MACfA,EACJ,IAAI,CAACC,MAA2D;AAC9D;AACC,UAAMC,IAAcD,EAAK,WAAWA,EAAK;AACzC,QAAIC,KAAe;AACjB;AAEF,UAAMC,IAAiCC,EAA8BF,CAAW;AAChF,WAAIC,KAAkC,OACpC,SAEK;AAAA,MACL,QAAQA,EAA+B;AAAA,MACvC,OAAOF,EAAK,SAASI,EAAYJ,EAAK,IAAI;AAAA,MAC1C,MAAMA,EAAK;AAAA,MACX,MAAM;AAAA,MACN,YAAYA,EAAK;AAAA,IAAA;AAAA,EAErB;AACF,CAAC,EACA,OAAO,CAACK,MAAaA,KAAY,IAAS,GAGlCC,IAAgB,CAAC,EAAE,UAAAC,GAAU,SAAAC,GAAS,WAAAC,GAAW,UAAAC,QAAmC;;AAC/F,QAAM,CAAC,EAAE,cAAAC,GAAc,IAAIC,EAAA,GACrBC,IAAYF,EAAa,SAASP,EAAYM,CAAQ,GACtD,CAACI,GAAQC,CAAS,IAAIC,EAAS,EAAE,GAEjCC,IAAcvB,IAAewB,IAAAP,EAAa,eAAb,gBAAAO,EAAyB,kBAAiB,CAAA,CAAE,GACzEC,IAAWC,EAAQ,MAAMtB,EAAemB,CAAW,GAAG,CAACA,CAAW,CAAC,GAEnEI,IAAQZ,IACVA,EAAU,SAASI,IACnBN,IACEA,EAAS,SAASM,KAClBL,KAAA,gBAAAA,EAAS,UAASK,GAClBS,IAASb,IAAYA,EAAU,SAASF,IAAWA,EAAS,SAAS,aACrEgB,IAAcD,MAAW,aAEzBE,IAAgBJ,EAAQ,MACvBN,IACEK,EAAS,OAAO,CAACnB,MACfA,EAAK,MAAM,YAAA,EAAc,SAASc,EAAO,aAAa,CAC9D,IAHmBK,GAInB,CAACL,GAAQK,CAAQ,CAAC;AAErB,2BACGM,GAAA,EACC,UAAA;AAAA,IAAA,gBAAAC,EAACC,KAAoB,WAAU,6BAC7B,UAAA,gBAAAC,EAAC,OAAA,EAAI,WAAU,qKACb,UAAA;AAAA,MAAA,gBAAAF,EAACG,GAAA,EAAW,QAAAP,GAAgB,aAAAC,GAA0B,UAAU,IAAM;AAAA,MACtE,gBAAAG,EAAC,OAAA,EAAI,WAAU,kHACZ,UAAAL,GACH;AAAA,wBACC,OAAA,EACC,UAAA,gBAAAK,EAACI,GAAA,EAAkB,WAAU,gEAA+D,EAAA,CAC9F;AAAA,IAAA,EAAA,CACF,EAAA,CACF;AAAA,sBACCC,GAAA,EAAoB,WAAU,gJAC7B,UAAA,gBAAAH,EAAC,OAAA,EAAI,WAAU,2BACb,UAAA;AAAA,MAAA,gBAAAF,EAACM,GAAA,EAAoB,QAAAlB,GAAgB,WAAAC,EAAA,CAAsB;AAAA,MAC1DS,EAAc,IAAI,CAACxB,MAClB,gBAAA0B,EAAC,OAAA,EACC,4BAACO,GAAA,EAAkB,MAAAjC,GAAY,UAAAU,GAAoB,EAAA,GAD3C,UAAUV,EAAK,KAAK,IAAIA,EAAK,IAAI,EAE3C,CACD;AAAA,IAAA,EAAA,CACH,EAAA,CACF;AAAA,EAAA,GACF;AAEJ;"}
@@ -1,10 +1,9 @@
1
- import { jsx as n, jsxs as a } from "react/jsx-runtime";
2
- import { MethodPill as l } from "../../../components/Api/MethodPill.js";
3
- import { useCurrentPath as c } from "../../../hooks/useCurrentPath.js";
4
- import { isEqualIgnoringLeadingSlash as u } from "../../../paths/isEqualIgnoringLeadingSlash.js";
5
- import { cn as f } from "../../../utils/cn.js";
6
- const k = ({ page: t }) => {
7
- const o = c(), i = u(t.href, o), m = t.type === "openapi", d = t.playground === "none" || t.playground === "simple" || t.method === "webhook", s = (h) => {
1
+ import { jsx as n, jsxs as l } from "react/jsx-runtime";
2
+ import { MethodPill as a } from "../../../components/Api/MethodPill.js";
3
+ import { isEqualIgnoringLeadingSlash as c } from "../../../paths/isEqualIgnoringLeadingSlash.js";
4
+ import { cn as u } from "../../../utils/cn.js";
5
+ const w = ({ page: t, pathname: o }) => {
6
+ const i = c(t.href, o), m = t.type === "openapi", d = t.playground === "none" || t.playground === "simple" || t.method === "webhook", s = (h) => {
8
7
  h.preventDefault();
9
8
  const e = d ? t.href : `${t.href}?playground=open`;
10
9
  if (typeof window < "u" && window.next) {
@@ -16,17 +15,17 @@ const k = ({ page: t }) => {
16
15
  }
17
16
  window.location.href = e;
18
17
  };
19
- return /* @__PURE__ */ n("a", { href: t.href, title: t.title, children: /* @__PURE__ */ a(
18
+ return /* @__PURE__ */ n("a", { href: t.href, title: t.title, children: /* @__PURE__ */ l(
20
19
  "div",
21
20
  {
22
21
  onClick: s,
23
- className: f(
22
+ className: u(
24
23
  "mint:flex mint:items-center mint:gap-x-2 mint:hover:bg-gray-50 mint:dark:hover:bg-white/5 mint:rounded-xl mint:p-1.5 mint:group mint:cursor-pointer",
25
24
  i ? "mint:bg-gray-50 mint:dark:bg-white/5 mint:text-[#643FB2] mint:dark:text-[#C9AAF9] mint:font-medium" : "mint:text-gray-700 mint:hover:text-gray-900 mint:dark:text-gray-400 mint:dark:hover:text-gray-300"
26
25
  ),
27
26
  children: [
28
27
  /* @__PURE__ */ n(
29
- l,
28
+ a,
30
29
  {
31
30
  method: t.method,
32
31
  shortMethod: m,
@@ -40,6 +39,6 @@ const k = ({ page: t }) => {
40
39
  ) });
41
40
  };
42
41
  export {
43
- k as EndpointsMenuLink
42
+ w as EndpointsMenuLink
44
43
  };
45
44
  //# sourceMappingURL=EndpointsMenuLink.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"EndpointsMenuLink.js","sources":["../../../../src/api-playground/ApiPlayground/components/EndpointsMenuLink.tsx"],"sourcesContent":["'use client';\n\nimport { MethodPill } from '../../../components/Api/MethodPill';\nimport { useCurrentPath } from '@/hooks/useCurrentPath';\nimport { ApiPageData } from '../../../api-playground-2/types/api';\nimport { isEqualIgnoringLeadingSlash } from '../../../../src/paths/isEqualIgnoringLeadingSlash';\nimport { cn } from '@/utils/cn';\n\nexport const EndpointsMenuLink = ({ page }: { page: ApiPageData }) => {\n const pathname = useCurrentPath();\n const isActive = isEqualIgnoringLeadingSlash(page.href, pathname);\n const shortMethod = page.type === 'openapi';\n const noPlayground =\n page.playground === 'none' || page.playground === 'simple' || page.method === 'webhook';\n\n const handleClick = (e: React.MouseEvent) => {\n e.preventDefault();\n const targetHref = noPlayground ? page.href : `${page.href}?playground=open`;\n\n // Check if we're in a Next.js environment\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n if (typeof window !== 'undefined' && (window as any).next) {\n // Use Next.js router if available\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const router = (window as any).next.router;\n if (router) {\n router.push(targetHref);\n return;\n }\n }\n\n // Fallback to standard navigation\n window.location.href = targetHref;\n };\n\n return (\n <a href={page.href} title={page.title}>\n <div\n onClick={handleClick}\n className={cn(\n 'mint:flex mint:items-center mint:gap-x-2 mint:hover:bg-gray-50 mint:dark:hover:bg-white/5 mint:rounded-xl mint:p-1.5 mint:group mint:cursor-pointer',\n isActive\n ? 'mint:bg-gray-50 mint:dark:bg-white/5 mint:text-[#643FB2] mint:dark:text-[#C9AAF9] mint:font-medium'\n : 'mint:text-gray-700 mint:hover:text-gray-900 mint:dark:text-gray-400 mint:dark:hover:text-gray-300'\n )}\n >\n <MethodPill\n method={page.method}\n shortMethod={shortMethod}\n className=\"mint:font-medium mint:px-1 mint:py-px mint:text-xs mint:rounded-md\"\n isActive={isActive}\n />\n <div className=\"mint:text-sm mint:truncate\">{page.title}</div>\n </div>\n </a>\n );\n};\n"],"names":["EndpointsMenuLink","page","pathname","useCurrentPath","isActive","isEqualIgnoringLeadingSlash","shortMethod","noPlayground","handleClick","e","targetHref","router","jsxs","cn","jsx","MethodPill"],"mappings":";;;;;AAQO,MAAMA,IAAoB,CAAC,EAAE,MAAAC,QAAkC;AACpE,QAAMC,IAAWC,EAAA,GACXC,IAAWC,EAA4BJ,EAAK,MAAMC,CAAQ,GAC1DI,IAAcL,EAAK,SAAS,WAC5BM,IACJN,EAAK,eAAe,UAAUA,EAAK,eAAe,YAAYA,EAAK,WAAW,WAE1EO,IAAc,CAACC,MAAwB;AAC3C,IAAAA,EAAE,eAAA;AACF,UAAMC,IAAaH,IAAeN,EAAK,OAAO,GAAGA,EAAK,IAAI;AAI1D,QAAI,OAAO,SAAW,OAAgB,OAAe,MAAM;AAGzD,YAAMU,IAAU,OAAe,KAAK;AACpC,UAAIA,GAAQ;AACV,QAAAA,EAAO,KAAKD,CAAU;AACtB;AAAA,MACF;AAAA,IACF;AAGA,WAAO,SAAS,OAAOA;AAAA,EACzB;AAEA,2BACG,KAAA,EAAE,MAAMT,EAAK,MAAM,OAAOA,EAAK,OAC9B,UAAA,gBAAAW;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,SAASJ;AAAA,MACT,WAAWK;AAAA,QACT;AAAA,QACAT,IACI,uGACA;AAAA,MAAA;AAAA,MAGN,UAAA;AAAA,QAAA,gBAAAU;AAAA,UAACC;AAAA,UAAA;AAAA,YACC,QAAQd,EAAK;AAAA,YACb,aAAAK;AAAA,YACA,WAAU;AAAA,YACV,UAAAF;AAAA,UAAA;AAAA,QAAA;AAAA,QAEF,gBAAAU,EAAC,OAAA,EAAI,WAAU,8BAA8B,YAAK,MAAA,CAAM;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA,GAE5D;AAEJ;"}
1
+ {"version":3,"file":"EndpointsMenuLink.js","sources":["../../../../src/api-playground/ApiPlayground/components/EndpointsMenuLink.tsx"],"sourcesContent":["'use client';\n\nimport { MethodPill } from '../../../components/Api/MethodPill';\nimport { ApiPageData } from '../../../api-playground-2/types/api';\nimport { isEqualIgnoringLeadingSlash } from '../../../../src/paths/isEqualIgnoringLeadingSlash';\nimport { cn } from '@/utils/cn';\n\nexport const EndpointsMenuLink = ({ page, pathname }: { page: ApiPageData; pathname: string }) => {\n const isActive = isEqualIgnoringLeadingSlash(page.href, pathname);\n const shortMethod = page.type === 'openapi';\n const noPlayground =\n page.playground === 'none' || page.playground === 'simple' || page.method === 'webhook';\n\n const handleClick = (e: React.MouseEvent) => {\n e.preventDefault();\n const targetHref = noPlayground ? page.href : `${page.href}?playground=open`;\n\n // Check if we're in a Next.js environment\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n if (typeof window !== 'undefined' && (window as any).next) {\n // Use Next.js router if available\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const router = (window as any).next.router;\n if (router) {\n router.push(targetHref);\n return;\n }\n }\n\n // Fallback to standard navigation\n window.location.href = targetHref;\n };\n\n return (\n <a href={page.href} title={page.title}>\n <div\n onClick={handleClick}\n className={cn(\n 'mint:flex mint:items-center mint:gap-x-2 mint:hover:bg-gray-50 mint:dark:hover:bg-white/5 mint:rounded-xl mint:p-1.5 mint:group mint:cursor-pointer',\n isActive\n ? 'mint:bg-gray-50 mint:dark:bg-white/5 mint:text-[#643FB2] mint:dark:text-[#C9AAF9] mint:font-medium'\n : 'mint:text-gray-700 mint:hover:text-gray-900 mint:dark:text-gray-400 mint:dark:hover:text-gray-300'\n )}\n >\n <MethodPill\n method={page.method}\n shortMethod={shortMethod}\n className=\"mint:font-medium mint:px-1 mint:py-px mint:text-xs mint:rounded-md\"\n isActive={isActive}\n />\n <div className=\"mint:text-sm mint:truncate\">{page.title}</div>\n </div>\n </a>\n );\n};\n"],"names":["EndpointsMenuLink","page","pathname","isActive","isEqualIgnoringLeadingSlash","shortMethod","noPlayground","handleClick","e","targetHref","router","jsxs","cn","jsx","MethodPill"],"mappings":";;;;AAOO,MAAMA,IAAoB,CAAC,EAAE,MAAAC,GAAM,UAAAC,QAAwD;AAChG,QAAMC,IAAWC,EAA4BH,EAAK,MAAMC,CAAQ,GAC1DG,IAAcJ,EAAK,SAAS,WAC5BK,IACJL,EAAK,eAAe,UAAUA,EAAK,eAAe,YAAYA,EAAK,WAAW,WAE1EM,IAAc,CAACC,MAAwB;AAC3C,IAAAA,EAAE,eAAA;AACF,UAAMC,IAAaH,IAAeL,EAAK,OAAO,GAAGA,EAAK,IAAI;AAI1D,QAAI,OAAO,SAAW,OAAgB,OAAe,MAAM;AAGzD,YAAMS,IAAU,OAAe,KAAK;AACpC,UAAIA,GAAQ;AACV,QAAAA,EAAO,KAAKD,CAAU;AACtB;AAAA,MACF;AAAA,IACF;AAGA,WAAO,SAAS,OAAOA;AAAA,EACzB;AAEA,2BACG,KAAA,EAAE,MAAMR,EAAK,MAAM,OAAOA,EAAK,OAC9B,UAAA,gBAAAU;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,SAASJ;AAAA,MACT,WAAWK;AAAA,QACT;AAAA,QACAT,IACI,uGACA;AAAA,MAAA;AAAA,MAGN,UAAA;AAAA,QAAA,gBAAAU;AAAA,UAACC;AAAA,UAAA;AAAA,YACC,QAAQb,EAAK;AAAA,YACb,aAAAI;AAAA,YACA,WAAU;AAAA,YACV,UAAAF;AAAA,UAAA;AAAA,QAAA;AAAA,QAEF,gBAAAU,EAAC,OAAA,EAAI,WAAU,8BAA8B,YAAK,MAAA,CAAM;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA,GAE5D;AAEJ;"}