@stainless-api/docs-ui 0.1.0-beta.5 → 0.1.0-beta.51

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 (212) hide show
  1. package/dist/breadcrumbs-BdYnaHA8.d.ts +20 -0
  2. package/dist/breadcrumbs-CA7GmW_8.d.ts +20 -0
  3. package/dist/breadcrumbs-nSFZO5Gf.js +63 -0
  4. package/dist/chunk-DRcLgZ1e.js +18 -0
  5. package/dist/component-DRO8kQSp.js +23 -0
  6. package/dist/component-generics-B6Fn47Mz.js +45 -0
  7. package/dist/component-generics-BHFUK06s.d.ts +30 -0
  8. package/dist/component-generics-BJSyydZ-.d.ts +30 -0
  9. package/dist/components/MaskedInput.d.ts +14 -0
  10. package/dist/components/MaskedInput.js +76 -0
  11. package/dist/components/breadcrumbs.d.ts +2 -0
  12. package/dist/components/breadcrumbs.js +9 -0
  13. package/dist/components/icons.d.ts +55 -0
  14. package/dist/components/icons.js +3 -0
  15. package/dist/components/index.d.ts +10 -0
  16. package/dist/components/index.js +18 -0
  17. package/dist/components/method.d.ts +2 -0
  18. package/dist/components/method.js +10 -0
  19. package/dist/components/overview.d.ts +2 -0
  20. package/dist/components/overview.js +11 -0
  21. package/dist/components/primitives.d.ts +2 -0
  22. package/dist/components/primitives.js +8 -0
  23. package/dist/components/properties.d.ts +2 -0
  24. package/dist/components/properties.js +9 -0
  25. package/dist/components/sdk.d.ts +2 -0
  26. package/dist/components/sdk.js +10 -0
  27. package/dist/components/sidebar.d.ts +2 -0
  28. package/dist/components/sidebar.js +11 -0
  29. package/dist/components/snippets.d.ts +3 -0
  30. package/dist/components/snippets.js +9 -0
  31. package/dist/components-D7M-BwNI.js +71 -0
  32. package/dist/contexts/component-generics.d.ts +2 -0
  33. package/dist/contexts/component-generics.js +3 -0
  34. package/dist/contexts/component-types.d.ts +16 -0
  35. package/dist/contexts/component-types.js +0 -0
  36. package/dist/contexts/component.d.ts +29 -0
  37. package/dist/contexts/component.js +27 -0
  38. package/dist/contexts/docs.d.ts +2 -0
  39. package/dist/contexts/docs.js +3 -0
  40. package/dist/contexts/index.d.ts +16 -0
  41. package/dist/contexts/index.js +7 -0
  42. package/dist/contexts/markdown.d.ts +2 -0
  43. package/dist/contexts/markdown.js +4 -0
  44. package/dist/contexts/navigation.d.ts +2 -0
  45. package/dist/contexts/navigation.js +3 -0
  46. package/dist/contexts/use-components.d.ts +14 -0
  47. package/dist/contexts/use-components.js +4 -0
  48. package/dist/contexts-p3rRZDlM.js +39 -0
  49. package/dist/csharp-CDSxfCZE.js +283 -0
  50. package/dist/docs-BUS__I1m.d.ts +47 -0
  51. package/dist/docs-CXqi26jB.js +54 -0
  52. package/dist/docs-fKyo35eI.d.ts +47 -0
  53. package/dist/go-1c3S5ETL.js +303 -0
  54. package/dist/http-2QNWXH9t.js +330 -0
  55. package/dist/icons-Ckod9aod.js +869 -0
  56. package/dist/index-5Yl-BBg3.d.ts +15 -0
  57. package/dist/index-9LRO8R1a.d.ts +274 -0
  58. package/dist/index-CBIJwoyp.d.ts +13 -0
  59. package/dist/index-ClCZKGcw.d.ts +274 -0
  60. package/dist/index-pMKpm2Jk.d.ts +13 -0
  61. package/dist/index-q3bZhNWj.d.ts +15 -0
  62. package/dist/index.d.ts +19 -0
  63. package/dist/index.js +29 -7542
  64. package/dist/java-BbjF_oUI.js +403 -0
  65. package/dist/languages/csharp.d.ts +11 -0
  66. package/dist/languages/csharp.js +9 -0
  67. package/dist/languages/go.d.ts +11 -0
  68. package/dist/languages/go.js +9 -0
  69. package/dist/languages/http.d.ts +11 -0
  70. package/dist/languages/http.js +19 -0
  71. package/dist/languages/index.d.ts +11 -0
  72. package/dist/languages/index.js +26 -0
  73. package/dist/languages/java.d.ts +11 -0
  74. package/dist/languages/java.js +9 -0
  75. package/dist/languages/python.d.ts +11 -0
  76. package/dist/languages/python.js +9 -0
  77. package/dist/languages/ruby.d.ts +11 -0
  78. package/dist/languages/ruby.js +9 -0
  79. package/dist/languages/typescript.d.ts +11 -0
  80. package/dist/languages/typescript.js +9 -0
  81. package/dist/languages-BCYZjzuS.js +26 -0
  82. package/dist/markdown/index.d.ts +12 -0
  83. package/dist/markdown/index.js +104 -0
  84. package/dist/markdown/md.d.ts +15 -0
  85. package/dist/markdown/md.js +3 -0
  86. package/dist/markdown/printer.d.ts +2 -0
  87. package/dist/markdown/printer.js +28 -0
  88. package/dist/markdown/utils.d.ts +3 -0
  89. package/dist/markdown/utils.js +3 -0
  90. package/dist/markdown-C8o8WrwG.d.ts +22 -0
  91. package/dist/markdown-CqJohZei.d.ts +22 -0
  92. package/dist/markdown-CxdeWgjV.js +48 -0
  93. package/dist/md-oM2tUaCA.js +41 -0
  94. package/dist/method-CE08mUME.js +115 -0
  95. package/dist/method-CMt6uyix.d.ts +71 -0
  96. package/dist/method-r5UAB40b.d.ts +71 -0
  97. package/dist/navigation-9_4wRkcT.d.ts +29 -0
  98. package/dist/navigation-C5TN0SgC.js +24 -0
  99. package/dist/navigation-zuoWsXzh.d.ts +29 -0
  100. package/dist/overview-DXmLmmr7.d.ts +39 -0
  101. package/dist/overview-S2hUqPXA.js +139 -0
  102. package/dist/overview-ixhAhHj8.d.ts +39 -0
  103. package/dist/primitives-BIWfwN5L.js +258 -0
  104. package/dist/primitives-BVXfSSiS.d.ts +97 -0
  105. package/dist/primitives-Bl0wzAGo.d.ts +97 -0
  106. package/dist/printer-DBw4S_Jn.d.ts +13 -0
  107. package/dist/printer-bNxiG6UB.js +74 -0
  108. package/dist/properties-C-NU_ghj.d.ts +54 -0
  109. package/dist/properties-GT9ixNTg.d.ts +54 -0
  110. package/dist/properties-jlGW3USi.js +131 -0
  111. package/dist/python-USOwFDv_.js +279 -0
  112. package/dist/routing-CMqh1cTZ.d.ts +54 -0
  113. package/dist/routing-Wbb7YECB.js +194 -0
  114. package/dist/routing.d.ts +2 -0
  115. package/dist/routing.js +3 -180
  116. package/dist/ruby-CSvGbSLe.js +387 -0
  117. package/dist/sdk-B5W3VipN.d.ts +118 -0
  118. package/dist/sdk-CS6A3HW3.d.ts +118 -0
  119. package/dist/sdk-CSCbbn3O.js +336 -0
  120. package/dist/sidebar-C3fZrgmP.d.ts +36 -0
  121. package/dist/sidebar-CWyvCrJ0.js +81 -0
  122. package/dist/sidebar-CbCLUteD.d.ts +36 -0
  123. package/dist/snippets-BQLXEIf6.js +161 -0
  124. package/dist/snippets-C72s2IwS.d.ts +51 -0
  125. package/dist/snippets-DcFph7ir.d.ts +51 -0
  126. package/dist/spec.d.ts +65 -0
  127. package/dist/spec.js +167 -0
  128. package/dist/style-D7RO5ymE.d.ts +168 -0
  129. package/dist/style-gnVEeXFj.js +169 -0
  130. package/dist/style.d.ts +2 -0
  131. package/dist/style.js +3 -0
  132. package/dist/styles/main.css +727 -754
  133. package/dist/styles/main.js +0 -0
  134. package/dist/styles/primitives.css +317 -461
  135. package/dist/styles/primitives.js +0 -0
  136. package/dist/styles/resets.css +32 -41
  137. package/dist/styles/resets.js +0 -0
  138. package/dist/styles/search.css +175 -274
  139. package/dist/styles/search.js +0 -0
  140. package/dist/styles/sidebar.css +59 -60
  141. package/dist/styles/sidebar.js +0 -0
  142. package/dist/styles/variables.css +26 -89
  143. package/dist/styles/variables.js +0 -0
  144. package/dist/styles.css +2910 -0
  145. package/dist/styles.mjs +1 -0
  146. package/dist/typescript-DXG9psK3.js +449 -0
  147. package/dist/use-components-RWQbviGq.js +7 -0
  148. package/dist/utils-CqnL9Fc3.js +31 -0
  149. package/dist/utils-DGnJ6mcU.d.ts +21 -0
  150. package/dist/utils-D_1AWSRX.js +32 -0
  151. package/dist/utils-d8paVwKN.d.ts +14 -0
  152. package/dist/utils-uQbtk0-_.d.ts +21 -0
  153. package/dist/utils.d.ts +2 -0
  154. package/dist/utils.js +3 -0
  155. package/package.json +73 -21
  156. package/dist/mcp.js +0 -16003
  157. package/dist/styles/snippets.css +0 -132
  158. package/src/components/breadcrumbs.tsx +0 -94
  159. package/src/components/chat.tsx +0 -154
  160. package/src/components/dropdown.tsx +0 -91
  161. package/src/components/icons.tsx +0 -584
  162. package/src/components/index.ts +0 -9
  163. package/src/components/method.tsx +0 -144
  164. package/src/components/overview.tsx +0 -159
  165. package/src/components/primitives.tsx +0 -284
  166. package/src/components/properties.tsx +0 -130
  167. package/src/components/scripts/dropdown.ts +0 -78
  168. package/src/components/sdk.tsx +0 -402
  169. package/src/components/sidebar.tsx +0 -99
  170. package/src/components/snippets.tsx +0 -179
  171. package/src/contexts/component-generics.tsx +0 -48
  172. package/src/contexts/component-types.tsx +0 -5
  173. package/src/contexts/component.tsx +0 -32
  174. package/src/contexts/docs.tsx +0 -75
  175. package/src/contexts/index.tsx +0 -17
  176. package/src/contexts/markdown.tsx +0 -43
  177. package/src/contexts/navigation.tsx +0 -44
  178. package/src/contexts/search.tsx +0 -28
  179. package/src/contexts/use-components.tsx +0 -4
  180. package/src/index.ts +0 -6
  181. package/src/languages/go.tsx +0 -281
  182. package/src/languages/http.tsx +0 -321
  183. package/src/languages/index.ts +0 -26
  184. package/src/languages/java.tsx +0 -358
  185. package/src/languages/python.tsx +0 -255
  186. package/src/languages/ruby.tsx +0 -320
  187. package/src/languages/typescript.tsx +0 -393
  188. package/src/markdown/index.ts +0 -107
  189. package/src/markdown/md.ts +0 -45
  190. package/src/markdown/utils.ts +0 -49
  191. package/src/routing.ts +0 -238
  192. package/src/search/form.tsx +0 -127
  193. package/src/search/index.tsx +0 -1
  194. package/src/search/indexer.ts +0 -246
  195. package/src/search/mcp.ts +0 -61
  196. package/src/search/printer.tsx +0 -86
  197. package/src/search/providers/algolia.ts +0 -88
  198. package/src/search/providers/fuse.ts +0 -19
  199. package/src/search/providers/pagefind.ts +0 -17
  200. package/src/search/providers/walker.ts +0 -30
  201. package/src/search/results.tsx +0 -181
  202. package/src/search/state.ts +0 -64
  203. package/src/search/types.ts +0 -116
  204. package/src/style.ts +0 -197
  205. package/src/styles/main.css +0 -993
  206. package/src/styles/primitives.css +0 -573
  207. package/src/styles/resets.css +0 -47
  208. package/src/styles/search.css +0 -342
  209. package/src/styles/sidebar.css +0 -87
  210. package/src/styles/snippets.css +0 -132
  211. package/src/styles/variables.css +0 -90
  212. package/src/utils.ts +0 -41
@@ -0,0 +1 @@
1
+ export { };
@@ -0,0 +1,449 @@
1
+ import { t as __export } from "./chunk-DRcLgZ1e.js";
2
+ import { a as useLanguage, l as useSpec, r as useDeclaration } from "./docs-CXqi26jB.js";
3
+ import { n as useLanguageComponents } from "./contexts-p3rRZDlM.js";
4
+ import { t as useComponents } from "./use-components-RWQbviGq.js";
5
+ import { t as style_default } from "./style-gnVEeXFj.js";
6
+ import * as React$1 from "react";
7
+ import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
8
+
9
+ //#region src/languages/typescript.tsx
10
+ var typescript_exports = /* @__PURE__ */ __export({
11
+ Declaration: () => Declaration,
12
+ MethodSignature: () => MethodSignature,
13
+ Property: () => Property,
14
+ Type: () => Type,
15
+ TypeName: () => TypeName
16
+ });
17
+ const ComplexTypes = {
18
+ TSTypeObject: "object",
19
+ TSTypeUnion: "union",
20
+ TSTypeInterface: "interface",
21
+ TSTypeIntersection: "intersection",
22
+ TSTypeArray: "array"
23
+ };
24
+ const constStyle = {
25
+ string: style_default.LiteralString,
26
+ number: style_default.LiteralNumeric,
27
+ boolean: style_default.LiteralBoolean
28
+ };
29
+ function Identifier({ name, optional }) {
30
+ return /* @__PURE__ */ jsxs(Fragment$1, { children: [/* @__PURE__ */ jsx("span", {
31
+ className: style_default.TextIdentifier,
32
+ children: /^[_a-zA-Z][_a-zA-Z0-9]*$/.test(name) ? name : JSON.stringify(name)
33
+ }), optional && /* @__PURE__ */ jsx("span", {
34
+ className: style_default.TextPunctuation,
35
+ children: "?"
36
+ })] });
37
+ }
38
+ function TypeParams({ params }) {
39
+ const Lang = useLanguageComponents();
40
+ const { Join } = useComponents();
41
+ if (!params?.length) return null;
42
+ const typeParams = params?.map((param, key) => param.constraint ? /* @__PURE__ */ jsxs(React$1.Fragment, { children: [
43
+ /* @__PURE__ */ jsx("span", {
44
+ className: style_default.TypeReference,
45
+ children: param.name
46
+ }),
47
+ /* @__PURE__ */ jsx("span", {
48
+ className: style_default.TextKeyword,
49
+ children: "extends "
50
+ }),
51
+ /* @__PURE__ */ jsx(Lang.Type, { type: param.constraint })
52
+ ] }, key) : /* @__PURE__ */ jsx(React$1.Fragment, { children: "param.name" }, key));
53
+ return /* @__PURE__ */ jsxs(Fragment$1, { children: [
54
+ /* @__PURE__ */ jsx("span", {
55
+ className: style_default.TypeBracket,
56
+ children: "<"
57
+ }),
58
+ /* @__PURE__ */ jsx(Join, {
59
+ items: typeParams,
60
+ limit: 3,
61
+ children: /* @__PURE__ */ jsx("span", {
62
+ className: style_default.TextOperator,
63
+ children: ", "
64
+ })
65
+ }),
66
+ /* @__PURE__ */ jsx("span", {
67
+ className: style_default.TypeBracket,
68
+ children: ">"
69
+ })
70
+ ] });
71
+ }
72
+ function TypePreview({ path }) {
73
+ const spec = useSpec();
74
+ const language = useLanguage();
75
+ const decl = useDeclaration(path, false);
76
+ const { Join } = useComponents();
77
+ if (!(decl && "children" in decl && decl.children && decl.children.length > 0) || decl && "type" in decl && "kind" in decl["type"] && decl["type"]["kind"] === "TSTypeUnion") return;
78
+ const items = decl.children.map((prop, key) => {
79
+ const p = spec?.decls?.[language]?.[prop];
80
+ return /* @__PURE__ */ jsx("span", {
81
+ className: style_default.TypePropertyName,
82
+ children: /* @__PURE__ */ jsx("span", {
83
+ className: style_default.TextIdentifier,
84
+ children: p && "key" in p ? p["key"] : null
85
+ })
86
+ }, key);
87
+ });
88
+ return /* @__PURE__ */ jsxs("span", {
89
+ className: style_default.TypePreview,
90
+ "data-stldocs-type-preview": "properties",
91
+ children: [
92
+ /* @__PURE__ */ jsx("span", {
93
+ className: style_default.TypeBrace,
94
+ children: " {"
95
+ }),
96
+ /* @__PURE__ */ jsxs("span", {
97
+ className: style_default.TypePreviewContent,
98
+ children: [
99
+ " ",
100
+ /* @__PURE__ */ jsx(Join, {
101
+ items,
102
+ limit: 3,
103
+ children: /* @__PURE__ */ jsx("span", {
104
+ className: style_default.TextOperator,
105
+ children: ", "
106
+ })
107
+ }),
108
+ " "
109
+ ]
110
+ }),
111
+ /* @__PURE__ */ jsx("span", {
112
+ className: style_default.TypeBrace,
113
+ children: "} "
114
+ })
115
+ ]
116
+ });
117
+ }
118
+ function TypeName({ type }) {
119
+ const Lang = useLanguageComponents();
120
+ return ComplexTypes[type.kind] ?? /* @__PURE__ */ jsx(Lang.Type, { type });
121
+ }
122
+ function Type({ type }) {
123
+ const Lang = useLanguageComponents();
124
+ const { Join, SDKReference } = useComponents();
125
+ switch (type.kind) {
126
+ case "TSTypeUnknown":
127
+ case "TSTypeUndefined":
128
+ case "TSTypeNever":
129
+ case "TSTypeVoid":
130
+ case "TSTypeNull":
131
+ case "TSTypeAny":
132
+ case "TSTypeBoolean":
133
+ case "TSTypeNumber": return /* @__PURE__ */ jsx("span", {
134
+ className: style_default.Type,
135
+ children: /* @__PURE__ */ jsx("span", {
136
+ className: style_default.TypeKeyword,
137
+ children: type.kind.slice(6).toLowerCase()
138
+ })
139
+ });
140
+ case "TSTypeString": return /* @__PURE__ */ jsx("span", {
141
+ className: style_default.Type,
142
+ children: /* @__PURE__ */ jsx("span", {
143
+ className: style_default.TypeString,
144
+ children: "string"
145
+ })
146
+ });
147
+ case "TSTypeLiteral": return /* @__PURE__ */ jsx("span", {
148
+ className: style_default.Type,
149
+ children: /* @__PURE__ */ jsx("span", {
150
+ className: constStyle[typeof type.literal],
151
+ children: JSON.stringify(type.literal)
152
+ })
153
+ });
154
+ case "TSTypeArray": return /* @__PURE__ */ jsxs("span", {
155
+ className: style_default.Type,
156
+ children: [
157
+ /* @__PURE__ */ jsx("span", {
158
+ className: style_default.TypeArray,
159
+ children: "Array<"
160
+ }),
161
+ /* @__PURE__ */ jsx(Lang.Type, { type: type.elementType }),
162
+ /* @__PURE__ */ jsx("span", {
163
+ className: style_default.TypeArray,
164
+ children: ">"
165
+ })
166
+ ]
167
+ });
168
+ case "TSTypeReference": {
169
+ const name = type.ident.split(".").at(-1);
170
+ const params = type.typeParameters?.map((param, key) => /* @__PURE__ */ jsx(Lang.Type, { type: param }, key));
171
+ return /* @__PURE__ */ jsxs("span", {
172
+ className: style_default.Type,
173
+ children: [
174
+ /* @__PURE__ */ jsx(SDKReference, {
175
+ stainlessPath: type.$ref,
176
+ children: name
177
+ }),
178
+ params && params.length > 0 && /* @__PURE__ */ jsxs(Fragment$1, { children: [
179
+ /* @__PURE__ */ jsx("span", {
180
+ className: style_default.TypeBracket,
181
+ children: "<"
182
+ }),
183
+ /* @__PURE__ */ jsx(Join, {
184
+ items: params,
185
+ limit: 3,
186
+ children: /* @__PURE__ */ jsx("span", {
187
+ className: style_default.TextOperator,
188
+ children: ", "
189
+ })
190
+ }),
191
+ /* @__PURE__ */ jsx("span", {
192
+ className: style_default.TypeBracket,
193
+ children: ">"
194
+ })
195
+ ] }),
196
+ /* @__PURE__ */ jsx(TypePreview, { path: type.$ref })
197
+ ]
198
+ });
199
+ }
200
+ case "TSTypeIntersection":
201
+ case "TSTypeUnion": {
202
+ const items = type.types.map((t, key) => /* @__PURE__ */ jsx(Lang.Type, { type: t }, key));
203
+ const delimiter = type.kind === "TSTypeUnion" ? "|" : "&";
204
+ return /* @__PURE__ */ jsx("span", {
205
+ className: style_default.Type,
206
+ children: /* @__PURE__ */ jsx("span", {
207
+ className: style_default.TypePreview,
208
+ "data-stldocs-type-preview": "union",
209
+ children: /* @__PURE__ */ jsx("span", {
210
+ className: style_default.TypePreviewContent,
211
+ children: /* @__PURE__ */ jsx(Join, {
212
+ items,
213
+ limit: 3,
214
+ children: /* @__PURE__ */ jsxs("span", {
215
+ className: style_default.TextOperator,
216
+ children: [
217
+ " ",
218
+ delimiter,
219
+ " "
220
+ ]
221
+ })
222
+ })
223
+ })
224
+ })
225
+ });
226
+ }
227
+ case "TSTypeObject":
228
+ case "TSTypeInterface": {
229
+ const extend = type.kind === "TSTypeObject" ? null : type.extends?.map((ref, key) => /* @__PURE__ */ jsx(Lang.Type, { type: ref }, key));
230
+ const items = type.members.map((prop, key) => /* @__PURE__ */ jsxs(React$1.Fragment, { children: [
231
+ /* @__PURE__ */ jsx("span", {
232
+ className: style_default.TypePropertyName,
233
+ children: /* @__PURE__ */ jsx(Identifier, {
234
+ name: prop.ident,
235
+ optional: prop.optional
236
+ })
237
+ }),
238
+ /* @__PURE__ */ jsx("span", {
239
+ className: style_default.TextPunctuation,
240
+ children: ": "
241
+ }),
242
+ /* @__PURE__ */ jsx(Lang.Type, { type: prop.type })
243
+ ] }, key));
244
+ return /* @__PURE__ */ jsxs("span", {
245
+ className: style_default.Type,
246
+ children: [extend?.length && /* @__PURE__ */ jsxs(Fragment$1, { children: [/* @__PURE__ */ jsx("span", {
247
+ className: style_default.TypeKeyword,
248
+ children: " extends "
249
+ }), /* @__PURE__ */ jsx(Join, {
250
+ items: extend,
251
+ limit: 3,
252
+ children: /* @__PURE__ */ jsx("span", {
253
+ className: style_default.TextOperator,
254
+ children: ", "
255
+ })
256
+ })] }), /* @__PURE__ */ jsxs("span", {
257
+ className: style_default.TypePreview,
258
+ "data-stldocs-type-preview": "properties",
259
+ children: [
260
+ /* @__PURE__ */ jsx("span", {
261
+ className: style_default.TypeBrace,
262
+ children: "{ "
263
+ }),
264
+ /* @__PURE__ */ jsx("span", {
265
+ className: style_default.TypePreviewContent,
266
+ children: /* @__PURE__ */ jsx(Join, {
267
+ items,
268
+ limit: 3,
269
+ children: /* @__PURE__ */ jsx("span", {
270
+ className: style_default.TextOperator,
271
+ children: ", "
272
+ })
273
+ })
274
+ }),
275
+ /* @__PURE__ */ jsx("span", {
276
+ className: style_default.TypeBrace,
277
+ children: "} "
278
+ })
279
+ ]
280
+ })]
281
+ });
282
+ }
283
+ }
284
+ }
285
+ function MethodSignature({ decl }) {
286
+ const Lang = useLanguageComponents();
287
+ const { Join, Tooltip } = useComponents();
288
+ const params = decl.signature.parameters.map((param, i) => /* @__PURE__ */ jsxs(React$1.Fragment, { children: [/* @__PURE__ */ jsx(Tooltip, {
289
+ content: /* @__PURE__ */ jsx(Lang.Type, { type: param.type }),
290
+ children: /* @__PURE__ */ jsx("span", {
291
+ className: style_default.TextIdentifier,
292
+ children: param.ident
293
+ })
294
+ }), param.optional && /* @__PURE__ */ jsx("span", {
295
+ className: style_default.TextPunctuation,
296
+ children: "?"
297
+ })] }, i));
298
+ return /* @__PURE__ */ jsx("div", {
299
+ className: style_default.MethodSignature,
300
+ children: /* @__PURE__ */ jsxs("span", {
301
+ className: style_default.SignatureTitle,
302
+ children: [
303
+ decl.signature.async && /* @__PURE__ */ jsx("span", {
304
+ className: style_default.TextKeyword,
305
+ children: "async "
306
+ }),
307
+ /* @__PURE__ */ jsx("span", {
308
+ className: style_default.SignatureQualified,
309
+ children: /* @__PURE__ */ jsx("span", {
310
+ className: style_default.TextIdentifier,
311
+ children: decl.qualified?.slice(0, -decl.ident.length)
312
+ })
313
+ }),
314
+ /* @__PURE__ */ jsx("span", {
315
+ className: style_default.SignatureName,
316
+ children: /* @__PURE__ */ jsx("span", {
317
+ className: style_default.TextIdentifier,
318
+ children: decl.ident
319
+ })
320
+ }),
321
+ /* @__PURE__ */ jsxs("span", {
322
+ className: style_default.MethodSignature,
323
+ children: [
324
+ decl.signature.typeParameters && /* @__PURE__ */ jsx(TypeParams, { params: decl.signature.typeParameters }),
325
+ /* @__PURE__ */ jsx("span", {
326
+ className: style_default.SignatureParen,
327
+ children: "("
328
+ }),
329
+ /* @__PURE__ */ jsx("span", {
330
+ className: style_default.SignatureParams,
331
+ children: /* @__PURE__ */ jsx(Join, {
332
+ items: params,
333
+ children: /* @__PURE__ */ jsx("span", {
334
+ className: style_default.TextOperator,
335
+ children: ", "
336
+ })
337
+ })
338
+ }),
339
+ /* @__PURE__ */ jsx("span", {
340
+ className: style_default.SignatureParen,
341
+ children: ")"
342
+ }),
343
+ decl.signature.returns && /* @__PURE__ */ jsxs(Fragment$1, { children: [/* @__PURE__ */ jsx("span", {
344
+ className: style_default.TextPunctuation,
345
+ children: ": "
346
+ }), /* @__PURE__ */ jsx(Lang.Type, { type: decl.signature.returns })] })
347
+ ]
348
+ })
349
+ ]
350
+ })
351
+ });
352
+ }
353
+ function Property({ decl, children }) {
354
+ const Lang = useLanguageComponents();
355
+ if (!decl) return;
356
+ switch (decl.kind) {
357
+ case "TSDeclProperty": return children({
358
+ name: decl.key,
359
+ typeName: /* @__PURE__ */ jsx(Lang.TypeName, { type: decl.type }),
360
+ type: decl.type.kind in ComplexTypes && /* @__PURE__ */ jsx(Lang.Type, { type: decl.type })
361
+ });
362
+ case "TSDeclTypeAlias": return children({
363
+ name: decl.ident,
364
+ typeName: "alias",
365
+ type: /* @__PURE__ */ jsx(Lang.Type, { type: decl.type })
366
+ });
367
+ case "TSDeclReference": return children({ type: /* @__PURE__ */ jsx(Lang.Type, { type: decl.type }) });
368
+ case "TSDeclInterface": return children({ type: /* @__PURE__ */ jsxs(Fragment$1, { children: [
369
+ /* @__PURE__ */ jsx("span", {
370
+ className: style_default.TextIdentifier,
371
+ children: decl.ident
372
+ }),
373
+ decl.typeParameters && /* @__PURE__ */ jsx(TypeParams, { params: decl.typeParameters }),
374
+ decl.extends?.flatMap((t, key) => /* @__PURE__ */ jsxs(React$1.Fragment, { children: [/* @__PURE__ */ jsx("span", {
375
+ className: style_default.TextKeyword,
376
+ children: " extends "
377
+ }), /* @__PURE__ */ jsx(Lang.Type, { type: t })] }, `extends:${key}`))
378
+ ] }) });
379
+ }
380
+ }
381
+ function Declaration({ decl }) {
382
+ const Lang = useLanguageComponents();
383
+ if (!decl) return;
384
+ switch (decl.kind) {
385
+ case "TSDeclProperty": return /* @__PURE__ */ jsxs(Fragment$1, { children: [
386
+ decl.declare && /* @__PURE__ */ jsx("span", {
387
+ className: style_default.TextKeyword,
388
+ children: "declare "
389
+ }),
390
+ /* @__PURE__ */ jsx("span", {
391
+ className: style_default.TypePropertyName,
392
+ children: /* @__PURE__ */ jsx(Identifier, {
393
+ name: decl.key,
394
+ optional: decl.optional
395
+ })
396
+ }),
397
+ /* @__PURE__ */ jsx("span", {
398
+ className: style_default.TextPunctuation,
399
+ children: ": "
400
+ }),
401
+ /* @__PURE__ */ jsx(Lang.Type, { type: decl.type })
402
+ ] });
403
+ case "TSDeclFunction": return /* @__PURE__ */ jsx(Lang.MethodSignature, { decl });
404
+ case "TSDeclTypeAlias": return /* @__PURE__ */ jsxs(Fragment$1, { children: [
405
+ /* @__PURE__ */ jsx(Identifier, { name: decl.ident }),
406
+ /* @__PURE__ */ jsx(TypeParams, { params: decl.typeParameters }),
407
+ /* @__PURE__ */ jsx("span", {
408
+ className: style_default.TextOperator,
409
+ children: " = "
410
+ }),
411
+ /* @__PURE__ */ jsx(Lang.Type, { type: decl.type })
412
+ ] });
413
+ case "TSDeclReference": return /* @__PURE__ */ jsx(Lang.Type, { type: decl.type });
414
+ case "TSDeclInterface": return /* @__PURE__ */ jsxs(Fragment$1, { children: [
415
+ /* @__PURE__ */ jsx("span", {
416
+ className: style_default.TextIdentifier,
417
+ children: decl.ident
418
+ }),
419
+ /* @__PURE__ */ jsx(TypeParams, { params: decl.typeParameters }),
420
+ decl.extends?.map((t, index) => /* @__PURE__ */ jsxs(React$1.Fragment, { children: [/* @__PURE__ */ jsx("span", {
421
+ className: style_default.TextKeyword,
422
+ children: " extends "
423
+ }), /* @__PURE__ */ jsx(Lang.Type, { type: t })] }, index)),
424
+ /* @__PURE__ */ jsx(TypePreview, { path: decl.stainlessPath })
425
+ ] });
426
+ case "TSDeclClass": return /* @__PURE__ */ jsxs(Fragment$1, { children: [
427
+ /* @__PURE__ */ jsx("span", {
428
+ className: style_default.TextKeyword,
429
+ children: "class "
430
+ }),
431
+ /* @__PURE__ */ jsx("span", {
432
+ className: style_default.TextIdentifier,
433
+ children: decl.ident
434
+ }),
435
+ /* @__PURE__ */ jsx(TypeParams, { params: decl.typeParameters }),
436
+ decl.superClass ? /* @__PURE__ */ jsxs(Fragment$1, { children: [/* @__PURE__ */ jsx("span", {
437
+ className: style_default.TextKeyword,
438
+ children: " extends "
439
+ }), /* @__PURE__ */ jsx(Lang.Type, { type: decl.superClass })] }) : null,
440
+ decl.implements?.map((t, index) => /* @__PURE__ */ jsxs(React$1.Fragment, { children: [/* @__PURE__ */ jsx("span", {
441
+ className: style_default.TextKeyword,
442
+ children: " implements "
443
+ }), /* @__PURE__ */ jsx(Lang.Type, { type: t })] }, index))
444
+ ] });
445
+ }
446
+ }
447
+
448
+ //#endregion
449
+ export { TypeName as a, Type as i, MethodSignature as n, typescript_exports as o, Property as r, Declaration as t };
@@ -0,0 +1,7 @@
1
+ import { i as useComponents } from "./component-generics-B6Fn47Mz.js";
2
+
3
+ //#region src/contexts/use-components.tsx
4
+ const useComponents$1 = () => useComponents();
5
+
6
+ //#endregion
7
+ export { useComponents$1 as t };
@@ -0,0 +1,31 @@
1
+ import { Parser } from "htmlparser2";
2
+
3
+ //#region src/markdown/utils.ts
4
+ function getDecl(env, path) {
5
+ const decl = env.spec?.decls?.[env.language]?.[path];
6
+ if (decl?.kind?.endsWith("Reference")) {
7
+ const refId = "type" in decl && typeof decl["type"] === "object" && "$ref" in decl["type"] ? decl["type"]["$ref"] : null;
8
+ if (refId === path) return decl;
9
+ if (refId) return getDecl(env, refId);
10
+ }
11
+ return decl;
12
+ }
13
+ function getSnippet(env, path) {
14
+ const lang = env.language === "http" ? "http.curl" : `${env.language}.default`;
15
+ let snippet = env.spec?.snippets?.[lang]?.[path];
16
+ if (typeof snippet === "string" && env.transforms?.transformRequestSnippet) snippet = env.transforms.transformRequestSnippet({
17
+ snippet,
18
+ language: env.language
19
+ });
20
+ return snippet;
21
+ }
22
+ function stripMarkup(content) {
23
+ let output = "";
24
+ new Parser({ ontext(content$1) {
25
+ output += content$1;
26
+ } }).parseComplete(content);
27
+ return output;
28
+ }
29
+
30
+ //#endregion
31
+ export { getSnippet as n, stripMarkup as r, getDecl as t };
@@ -0,0 +1,21 @@
1
+ import { t as DocsLanguage } from "./routing-CMqh1cTZ.js";
2
+ import { C as TransformRequestSnippetFn } from "./sdk-B5W3VipN.js";
3
+ import * as SDKJSON from "@stainless/sdk-json";
4
+
5
+ //#region src/markdown/utils.d.ts
6
+ type EnvironmentType = {
7
+ spec: SDKJSON.Spec;
8
+ language: DocsLanguage;
9
+ transforms?: {
10
+ transformRequestSnippet?: TransformRequestSnippetFn;
11
+ };
12
+ options: {
13
+ renderNestedResources?: boolean;
14
+ includeModelProperties?: boolean;
15
+ };
16
+ };
17
+ declare function getDecl(env: EnvironmentType, path: string): SDKJSON.LanguageDeclNodes[SDKJSON.SpecLanguage] | undefined;
18
+ declare function getSnippet(env: EnvironmentType, path: string): string | undefined;
19
+ declare function stripMarkup(content: string): string;
20
+ //#endregion
21
+ export { stripMarkup as i, getDecl as n, getSnippet as r, EnvironmentType as t };
@@ -0,0 +1,32 @@
1
+ import { t as __export } from "./chunk-DRcLgZ1e.js";
2
+ import { f as parseStainlessPath } from "./routing-Wbb7YECB.js";
3
+
4
+ //#region src/utils.ts
5
+ var utils_exports = /* @__PURE__ */ __export({
6
+ flatResources: () => flatResources,
7
+ getResourceFromSpec: () => getResourceFromSpec,
8
+ isResourceEmpty: () => isResourceEmpty
9
+ });
10
+ function flatResources(resources, parents) {
11
+ return Object.keys(resources ?? {}).flatMap((key) => {
12
+ const resource = resources[key];
13
+ return [{
14
+ resource,
15
+ parents
16
+ }, ...resource.subresources ? flatResources(resource.subresources, [...parents, resource]) : []];
17
+ });
18
+ }
19
+ function getResourceFromSpec(stainlessPath, spec) {
20
+ if (typeof stainlessPath === "string") {
21
+ const parsed = parseStainlessPath(stainlessPath);
22
+ if (!parsed?.resource) return null;
23
+ stainlessPath = parsed.resource;
24
+ }
25
+ return stainlessPath.slice(1).reduce((acc, cur) => acc?.subresources?.[cur], spec.resources[stainlessPath[0]]) ?? null;
26
+ }
27
+ function isResourceEmpty(resource) {
28
+ return !(Object.values(resource.methods).length > 0 || Object.values(resource.models).length > 0 || Object.values(resource.subresources).length > 0);
29
+ }
30
+
31
+ //#endregion
32
+ export { utils_exports as i, getResourceFromSpec as n, isResourceEmpty as r, flatResources as t };
@@ -0,0 +1,14 @@
1
+ import * as SDKJSON from "@stainless/sdk-json";
2
+
3
+ //#region src/utils.d.ts
4
+ declare namespace utils_d_exports {
5
+ export { flatResources, getResourceFromSpec, isResourceEmpty };
6
+ }
7
+ declare function flatResources(resources: Record<string, SDKJSON.Resource> | undefined, parents: SDKJSON.Resource[]): {
8
+ resource: SDKJSON.Resource;
9
+ parents: SDKJSON.Resource[];
10
+ }[];
11
+ declare function getResourceFromSpec(stainlessPath: string | string[], spec: SDKJSON.Spec): SDKJSON.Resource | null;
12
+ declare function isResourceEmpty(resource: SDKJSON.Resource): boolean;
13
+ //#endregion
14
+ export { utils_d_exports as i, getResourceFromSpec as n, isResourceEmpty as r, flatResources as t };
@@ -0,0 +1,21 @@
1
+ import { t as DocsLanguage } from "./routing-CMqh1cTZ.js";
2
+ import { C as TransformRequestSnippetFn } from "./sdk-CS6A3HW3.js";
3
+ import * as SDKJSON from "@stainless/sdk-json";
4
+
5
+ //#region src/markdown/utils.d.ts
6
+ type EnvironmentType = {
7
+ spec: SDKJSON.Spec;
8
+ language: DocsLanguage;
9
+ transforms?: {
10
+ transformRequestSnippet?: TransformRequestSnippetFn;
11
+ };
12
+ options: {
13
+ renderNestedResources?: boolean;
14
+ includeModelProperties?: boolean;
15
+ };
16
+ };
17
+ declare function getDecl(env: EnvironmentType, path: string): SDKJSON.LanguageDeclNodes[SDKJSON.SpecLanguage] | undefined;
18
+ declare function getSnippet(env: EnvironmentType, path: string): string | undefined;
19
+ declare function stripMarkup(content: string): string;
20
+ //#endregion
21
+ export { stripMarkup as i, getDecl as n, getSnippet as r, EnvironmentType as t };
@@ -0,0 +1,2 @@
1
+ import { n as getResourceFromSpec, r as isResourceEmpty, t as flatResources } from "./utils-d8paVwKN.js";
2
+ export { flatResources, getResourceFromSpec, isResourceEmpty };
package/dist/utils.js ADDED
@@ -0,0 +1,3 @@
1
+ import { n as getResourceFromSpec, r as isResourceEmpty, t as flatResources } from "./utils-D_1AWSRX.js";
2
+
3
+ export { flatResources, getResourceFromSpec, isResourceEmpty };