@brainfish-ai/devdoc 0.1.42 → 0.1.43

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 (388) hide show
  1. package/dist/cli/commands/dev.js +19 -10
  2. package/package.json +3 -2
  3. package/renderer/app/api/assets/[...path]/route.js +108 -0
  4. package/renderer/app/api/assets/route.js +114 -0
  5. package/renderer/app/api/assets/upload/route.js +163 -0
  6. package/renderer/app/api/auth-schemes/route.js +58 -0
  7. package/renderer/app/api/chat/route.js +759 -0
  8. package/renderer/app/api/codegen/route.js +52 -0
  9. package/renderer/app/api/collections/route.js +675 -0
  10. package/renderer/app/api/debug/route.js +47 -0
  11. package/renderer/app/api/deploy/route.js +199 -0
  12. package/renderer/app/api/device/route.js +36 -0
  13. package/renderer/app/api/docs/route.js +205 -0
  14. package/renderer/app/api/domains/add/route.js +121 -0
  15. package/renderer/app/api/domains/lookup/route.js +43 -0
  16. package/renderer/app/api/domains/remove/route.js +89 -0
  17. package/renderer/app/api/domains/status/route.js +140 -0
  18. package/renderer/app/api/domains/verify/route.js +168 -0
  19. package/renderer/app/api/keys/regenerate/route.js +71 -0
  20. package/renderer/app/api/local-assets/[...path]/route.js +108 -0
  21. package/renderer/app/api/openapi-spec/route.js +73 -0
  22. package/renderer/app/api/projects/[slug]/route.js +129 -0
  23. package/renderer/app/api/projects/[slug]/stats/route.js +80 -0
  24. package/renderer/app/api/projects/register/route.js +176 -0
  25. package/renderer/app/api/proxy/route.js +139 -0
  26. package/renderer/app/api/proxy-stream/route.js +156 -0
  27. package/renderer/app/api/redirects/route.js +35 -0
  28. package/renderer/app/api/schema/route.js +85 -0
  29. package/renderer/app/api/subdomains/check/route.js +158 -0
  30. package/renderer/app/api/suggestions/route.js +175 -0
  31. package/renderer/app/layout.js +47 -0
  32. package/renderer/app/llms-full.txt/route.js +257 -0
  33. package/renderer/app/llms.txt/route.js +219 -0
  34. package/renderer/app/page.js +12 -0
  35. package/renderer/app/robots.txt/route.js +66 -0
  36. package/renderer/app/sitemap.xml/route.js +145 -0
  37. package/renderer/components/docs/index.js +8 -0
  38. package/renderer/components/docs/mdx/accordion.js +113 -0
  39. package/renderer/components/docs/mdx/badge.js +72 -0
  40. package/renderer/components/docs/mdx/callouts.js +137 -0
  41. package/renderer/components/docs/mdx/cards.js +175 -0
  42. package/renderer/components/docs/mdx/changelog.js +100 -0
  43. package/renderer/components/docs/mdx/code-block.js +147 -0
  44. package/renderer/components/docs/mdx/code-group.js +287 -0
  45. package/renderer/components/docs/mdx/file-embeds.js +82 -0
  46. package/renderer/components/docs/mdx/frame.js +59 -0
  47. package/renderer/components/docs/mdx/highlight.js +90 -0
  48. package/renderer/components/docs/mdx/iframe.js +69 -0
  49. package/renderer/components/docs/mdx/image.js +135 -0
  50. package/renderer/components/docs/mdx/index.js +134 -0
  51. package/renderer/components/docs/mdx/landing.js +315 -0
  52. package/renderer/components/docs/mdx/mermaid.js +212 -0
  53. package/renderer/components/docs/mdx/param-field.js +112 -0
  54. package/renderer/components/docs/mdx/steps.js +74 -0
  55. package/renderer/components/docs/mdx/tabs.js +50 -0
  56. package/renderer/components/docs/mdx-renderer.js +77 -0
  57. package/renderer/components/docs/navigation/breadcrumbs.js +64 -0
  58. package/renderer/components/docs/navigation/index.js +6 -0
  59. package/renderer/components/docs/navigation/page-nav.js +57 -0
  60. package/renderer/components/docs/navigation/sidebar.js +375 -0
  61. package/renderer/components/docs/navigation/toc.js +89 -0
  62. package/renderer/components/docs/notice.js +77 -0
  63. package/renderer/components/docs-header.js +202 -0
  64. package/renderer/components/docs-viewer/agent/agent-chat.js +1930 -0
  65. package/renderer/components/docs-viewer/agent/cards/debug-context-card.js +107 -0
  66. package/renderer/components/docs-viewer/agent/cards/endpoint-context-card.js +57 -0
  67. package/renderer/components/docs-viewer/agent/cards/index.js +45 -0
  68. package/renderer/components/docs-viewer/agent/cards/response-options-card.js +154 -0
  69. package/renderer/components/docs-viewer/agent/cards/types.js +22 -0
  70. package/renderer/components/docs-viewer/agent/chat-message.js +2 -0
  71. package/renderer/components/docs-viewer/agent/index.js +4 -0
  72. package/renderer/components/docs-viewer/agent/messages/assistant-message.js +108 -0
  73. package/renderer/components/docs-viewer/agent/messages/chat-message.js +34 -0
  74. package/renderer/components/docs-viewer/agent/messages/index.js +6 -0
  75. package/renderer/components/docs-viewer/agent/messages/tool-call-display.js +1065 -0
  76. package/renderer/components/docs-viewer/agent/messages/types.js +2 -0
  77. package/renderer/components/docs-viewer/agent/messages/typing-indicator.js +26 -0
  78. package/renderer/components/docs-viewer/agent/messages/user-message.js +37 -0
  79. package/renderer/components/docs-viewer/code-editor/{index.tsx → index.js} +1 -1
  80. package/renderer/components/docs-viewer/code-editor/notes-mode.js +1338 -0
  81. package/renderer/components/docs-viewer/content/changelog-page.js +297 -0
  82. package/renderer/components/docs-viewer/content/doc-page.js +264 -0
  83. package/renderer/components/docs-viewer/content/documentation-viewer.js +14 -0
  84. package/renderer/components/docs-viewer/content/index.js +29 -0
  85. package/renderer/components/docs-viewer/content/not-found-page.js +300 -0
  86. package/renderer/components/docs-viewer/content/request-details.js +528 -0
  87. package/renderer/components/docs-viewer/content/sections/auth.js +108 -0
  88. package/renderer/components/docs-viewer/content/sections/body.js +80 -0
  89. package/renderer/components/docs-viewer/content/sections/headers.js +64 -0
  90. package/renderer/components/docs-viewer/content/sections/overview.js +56 -0
  91. package/renderer/components/docs-viewer/content/sections/parameters.js +64 -0
  92. package/renderer/components/docs-viewer/content/sections/responses.js +91 -0
  93. package/renderer/components/docs-viewer/global-auth-modal.js +427 -0
  94. package/renderer/components/docs-viewer/index.js +1552 -0
  95. package/renderer/components/docs-viewer/playground/auth-editor.js +418 -0
  96. package/renderer/components/docs-viewer/playground/body-editor.js +240 -0
  97. package/renderer/components/docs-viewer/playground/code-editor.js +135 -0
  98. package/renderer/components/docs-viewer/playground/code-snippet.js +393 -0
  99. package/renderer/components/docs-viewer/playground/graphql-playground.js +734 -0
  100. package/renderer/components/docs-viewer/playground/index.js +682 -0
  101. package/renderer/components/docs-viewer/playground/key-value-editor.js +317 -0
  102. package/renderer/components/docs-viewer/playground/method-selector.js +65 -0
  103. package/renderer/components/docs-viewer/playground/request-builder.js +181 -0
  104. package/renderer/components/docs-viewer/playground/request-tabs.js +240 -0
  105. package/renderer/components/docs-viewer/playground/response-cards/idle-card.js +42 -0
  106. package/renderer/components/docs-viewer/playground/response-cards/index.js +72 -0
  107. package/renderer/components/docs-viewer/playground/response-cards/loading-card.js +24 -0
  108. package/renderer/components/docs-viewer/playground/response-cards/network-error-card.js +28 -0
  109. package/renderer/components/docs-viewer/playground/response-cards/response-body-card.js +308 -0
  110. package/renderer/components/docs-viewer/playground/response-cards/types.js +9 -0
  111. package/renderer/components/docs-viewer/playground/response-viewer.js +18 -0
  112. package/renderer/components/docs-viewer/search/index.js +2 -0
  113. package/renderer/components/docs-viewer/search/search-dialog.js +367 -0
  114. package/renderer/components/docs-viewer/search/use-search.js +89 -0
  115. package/renderer/components/docs-viewer/shared/markdown-renderer.js +423 -0
  116. package/renderer/components/docs-viewer/shared/method-badge.js +23 -0
  117. package/renderer/components/docs-viewer/shared/schema-viewer.js +321 -0
  118. package/renderer/components/docs-viewer/sidebar/collection-tree.js +222 -0
  119. package/renderer/components/docs-viewer/sidebar/endpoint-options.js +512 -0
  120. package/renderer/components/docs-viewer/sidebar/index.js +196 -0
  121. package/renderer/components/docs-viewer/sidebar/right-sidebar.js +163 -0
  122. package/renderer/components/docs-viewer/sidebar/sidebar-group.js +87 -0
  123. package/renderer/components/docs-viewer/sidebar/sidebar-item.js +172 -0
  124. package/renderer/components/docs-viewer/sidebar/sidebar-section.js +31 -0
  125. package/renderer/components/theme-provider.js +10 -0
  126. package/renderer/components/theme-toggle.js +106 -0
  127. package/renderer/components/ui/badge.js +29 -0
  128. package/renderer/components/ui/button.js +40 -0
  129. package/renderer/components/ui/dialog.js +50 -0
  130. package/renderer/components/ui/dropdown-menu.js +143 -0
  131. package/renderer/components/ui/input.js +12 -0
  132. package/renderer/components/ui/label.js +13 -0
  133. package/renderer/components/ui/navigation-menu.js +83 -0
  134. package/renderer/components/ui/select.js +116 -0
  135. package/renderer/components/ui/spinner.js +92 -0
  136. package/renderer/components/ui/tabs.js +34 -0
  137. package/renderer/components/ui/tooltip.js +43 -0
  138. package/renderer/hooks/use-code-copy.js +76 -0
  139. package/renderer/hooks/use-openapi-title.js +33 -0
  140. package/renderer/lib/api-docs/agent/index.js +4 -0
  141. package/renderer/lib/api-docs/agent/indexer.js +254 -0
  142. package/renderer/lib/api-docs/agent/spec-summary.js +227 -0
  143. package/renderer/lib/api-docs/agent/types.js +5 -0
  144. package/renderer/lib/api-docs/auth/auth-context.js +157 -0
  145. package/renderer/lib/api-docs/auth/auth-storage.js +66 -0
  146. package/renderer/lib/api-docs/auth/crypto.js +64 -0
  147. package/renderer/lib/api-docs/auth/index.js +3 -0
  148. package/renderer/lib/api-docs/code-editor/db.js +145 -0
  149. package/renderer/lib/api-docs/code-editor/hooks.js +254 -0
  150. package/renderer/lib/api-docs/code-editor/{index.ts → index.js} +3 -4
  151. package/renderer/lib/api-docs/code-editor/mode-context.js +154 -0
  152. package/renderer/lib/api-docs/code-editor/types.js +53 -0
  153. package/renderer/lib/api-docs/codegen/definitions.js +258 -0
  154. package/renderer/lib/api-docs/codegen/har.js +171 -0
  155. package/renderer/lib/api-docs/codegen/index.js +118 -0
  156. package/renderer/lib/api-docs/factories.js +136 -0
  157. package/renderer/lib/api-docs/{index.ts → index.js} +5 -10
  158. package/renderer/lib/api-docs/mobile-context.js +79 -0
  159. package/renderer/lib/api-docs/navigation-context.js +62 -0
  160. package/renderer/lib/api-docs/parsers/graphql/index.js +50 -0
  161. package/renderer/lib/api-docs/parsers/graphql/parser.js +350 -0
  162. package/renderer/lib/api-docs/parsers/graphql/transformer.js +215 -0
  163. package/renderer/lib/api-docs/parsers/graphql/types.js +46 -0
  164. package/renderer/lib/api-docs/parsers/openapi/dereferencer.js +43 -0
  165. package/renderer/lib/api-docs/parsers/openapi/extractors/auth.js +486 -0
  166. package/renderer/lib/api-docs/parsers/openapi/extractors/body.js +295 -0
  167. package/renderer/lib/api-docs/parsers/openapi/extractors/index.js +132 -0
  168. package/renderer/lib/api-docs/parsers/openapi/index.js +127 -0
  169. package/renderer/lib/api-docs/parsers/openapi/transformer.js +192 -0
  170. package/renderer/lib/api-docs/parsers/openapi/validator.js +24 -0
  171. package/renderer/lib/api-docs/playground/context.js +65 -0
  172. package/renderer/lib/api-docs/playground/navigation-context.js +74 -0
  173. package/renderer/lib/api-docs/playground/request-builder.js +163 -0
  174. package/renderer/lib/api-docs/playground/request-runner.js +224 -0
  175. package/renderer/lib/api-docs/playground/types.js +5 -0
  176. package/renderer/lib/api-docs/types.js +23 -0
  177. package/renderer/lib/api-docs/utils.js +212 -0
  178. package/renderer/lib/cache.js +157 -0
  179. package/renderer/lib/docs/config/domain-schema.js +161 -0
  180. package/renderer/lib/docs/config/index.js +5 -0
  181. package/renderer/lib/docs/config/loader.js +113 -0
  182. package/renderer/lib/docs/config/schema.js +269 -0
  183. package/renderer/lib/docs/index.js +8 -0
  184. package/renderer/lib/docs/mdx/compiler.js +128 -0
  185. package/renderer/lib/docs/mdx/frontmatter.js +73 -0
  186. package/renderer/lib/docs/mdx/index.js +8 -0
  187. package/renderer/lib/docs/navigation/generator.js +269 -0
  188. package/renderer/lib/docs/navigation/index.js +4 -0
  189. package/renderer/lib/docs/navigation/types.js +9 -0
  190. package/renderer/lib/docs-navigation-context.js +40 -0
  191. package/renderer/lib/multi-tenant/context.js +80 -0
  192. package/renderer/lib/storage/blob.js +767 -0
  193. package/renderer/lib/utils/icons.js +30 -0
  194. package/renderer/lib/utils.js +5 -0
  195. package/renderer/next.config.js +62 -0
  196. package/renderer/tsconfig.json +23 -5
  197. package/renderer/app/api/assets/[...path]/route.ts +0 -123
  198. package/renderer/app/api/assets/route.ts +0 -124
  199. package/renderer/app/api/assets/upload/route.ts +0 -177
  200. package/renderer/app/api/auth-schemes/route.ts +0 -77
  201. package/renderer/app/api/chat/route.ts +0 -858
  202. package/renderer/app/api/codegen/route.ts +0 -72
  203. package/renderer/app/api/collections/route.ts +0 -1002
  204. package/renderer/app/api/debug/route.ts +0 -53
  205. package/renderer/app/api/deploy/route.ts +0 -234
  206. package/renderer/app/api/device/route.ts +0 -42
  207. package/renderer/app/api/docs/route.ts +0 -201
  208. package/renderer/app/api/domains/add/route.ts +0 -132
  209. package/renderer/app/api/domains/lookup/route.ts +0 -43
  210. package/renderer/app/api/domains/remove/route.ts +0 -100
  211. package/renderer/app/api/domains/status/route.ts +0 -158
  212. package/renderer/app/api/domains/verify/route.ts +0 -181
  213. package/renderer/app/api/keys/regenerate/route.ts +0 -80
  214. package/renderer/app/api/local-assets/[...path]/route.ts +0 -122
  215. package/renderer/app/api/openapi-spec/route.ts +0 -151
  216. package/renderer/app/api/projects/[slug]/route.ts +0 -153
  217. package/renderer/app/api/projects/[slug]/stats/route.ts +0 -96
  218. package/renderer/app/api/projects/register/route.ts +0 -152
  219. package/renderer/app/api/proxy/route.ts +0 -149
  220. package/renderer/app/api/proxy-stream/route.ts +0 -168
  221. package/renderer/app/api/redirects/route.ts +0 -47
  222. package/renderer/app/api/schema/route.ts +0 -73
  223. package/renderer/app/api/subdomains/check/route.ts +0 -172
  224. package/renderer/app/api/suggestions/route.ts +0 -144
  225. package/renderer/app/layout.tsx +0 -54
  226. package/renderer/app/llms-full.txt/route.ts +0 -346
  227. package/renderer/app/llms.txt/route.ts +0 -279
  228. package/renderer/app/page.tsx +0 -14
  229. package/renderer/app/robots.txt/route.ts +0 -84
  230. package/renderer/app/sitemap.xml/route.ts +0 -199
  231. package/renderer/components/docs/index.ts +0 -12
  232. package/renderer/components/docs/mdx/accordion.tsx +0 -169
  233. package/renderer/components/docs/mdx/badge.tsx +0 -132
  234. package/renderer/components/docs/mdx/callouts.tsx +0 -154
  235. package/renderer/components/docs/mdx/cards.tsx +0 -241
  236. package/renderer/components/docs/mdx/changelog.tsx +0 -120
  237. package/renderer/components/docs/mdx/code-block.tsx +0 -186
  238. package/renderer/components/docs/mdx/code-group.tsx +0 -421
  239. package/renderer/components/docs/mdx/file-embeds.tsx +0 -105
  240. package/renderer/components/docs/mdx/frame.tsx +0 -112
  241. package/renderer/components/docs/mdx/highlight.tsx +0 -151
  242. package/renderer/components/docs/mdx/iframe.tsx +0 -134
  243. package/renderer/components/docs/mdx/image.tsx +0 -235
  244. package/renderer/components/docs/mdx/index.ts +0 -237
  245. package/renderer/components/docs/mdx/landing.tsx +0 -684
  246. package/renderer/components/docs/mdx/mermaid.tsx +0 -240
  247. package/renderer/components/docs/mdx/param-field.tsx +0 -200
  248. package/renderer/components/docs/mdx/steps.tsx +0 -113
  249. package/renderer/components/docs/mdx/tabs.tsx +0 -86
  250. package/renderer/components/docs/mdx-renderer.tsx +0 -100
  251. package/renderer/components/docs/navigation/breadcrumbs.tsx +0 -76
  252. package/renderer/components/docs/navigation/index.ts +0 -8
  253. package/renderer/components/docs/navigation/page-nav.tsx +0 -64
  254. package/renderer/components/docs/navigation/sidebar.tsx +0 -515
  255. package/renderer/components/docs/navigation/toc.tsx +0 -113
  256. package/renderer/components/docs/notice.tsx +0 -105
  257. package/renderer/components/docs-header.tsx +0 -278
  258. package/renderer/components/docs-viewer/agent/agent-chat.tsx +0 -2076
  259. package/renderer/components/docs-viewer/agent/cards/debug-context-card.tsx +0 -90
  260. package/renderer/components/docs-viewer/agent/cards/endpoint-context-card.tsx +0 -49
  261. package/renderer/components/docs-viewer/agent/cards/index.tsx +0 -50
  262. package/renderer/components/docs-viewer/agent/cards/response-options-card.tsx +0 -212
  263. package/renderer/components/docs-viewer/agent/cards/types.ts +0 -84
  264. package/renderer/components/docs-viewer/agent/chat-message.tsx +0 -17
  265. package/renderer/components/docs-viewer/agent/index.tsx +0 -6
  266. package/renderer/components/docs-viewer/agent/messages/assistant-message.tsx +0 -119
  267. package/renderer/components/docs-viewer/agent/messages/chat-message.tsx +0 -46
  268. package/renderer/components/docs-viewer/agent/messages/index.ts +0 -17
  269. package/renderer/components/docs-viewer/agent/messages/tool-call-display.tsx +0 -721
  270. package/renderer/components/docs-viewer/agent/messages/types.ts +0 -61
  271. package/renderer/components/docs-viewer/agent/messages/typing-indicator.tsx +0 -24
  272. package/renderer/components/docs-viewer/agent/messages/user-message.tsx +0 -51
  273. package/renderer/components/docs-viewer/code-editor/notes-mode.tsx +0 -1283
  274. package/renderer/components/docs-viewer/content/changelog-page.tsx +0 -331
  275. package/renderer/components/docs-viewer/content/doc-page.tsx +0 -367
  276. package/renderer/components/docs-viewer/content/documentation-viewer.tsx +0 -17
  277. package/renderer/components/docs-viewer/content/index.tsx +0 -29
  278. package/renderer/components/docs-viewer/content/not-found-page.tsx +0 -330
  279. package/renderer/components/docs-viewer/content/request-details.tsx +0 -330
  280. package/renderer/components/docs-viewer/content/sections/auth.tsx +0 -69
  281. package/renderer/components/docs-viewer/content/sections/body.tsx +0 -66
  282. package/renderer/components/docs-viewer/content/sections/headers.tsx +0 -43
  283. package/renderer/components/docs-viewer/content/sections/overview.tsx +0 -40
  284. package/renderer/components/docs-viewer/content/sections/parameters.tsx +0 -43
  285. package/renderer/components/docs-viewer/content/sections/responses.tsx +0 -87
  286. package/renderer/components/docs-viewer/global-auth-modal.tsx +0 -352
  287. package/renderer/components/docs-viewer/index.tsx +0 -1670
  288. package/renderer/components/docs-viewer/playground/auth-editor.tsx +0 -280
  289. package/renderer/components/docs-viewer/playground/body-editor.tsx +0 -221
  290. package/renderer/components/docs-viewer/playground/code-editor.tsx +0 -224
  291. package/renderer/components/docs-viewer/playground/code-snippet.tsx +0 -387
  292. package/renderer/components/docs-viewer/playground/graphql-playground.tsx +0 -745
  293. package/renderer/components/docs-viewer/playground/index.tsx +0 -671
  294. package/renderer/components/docs-viewer/playground/key-value-editor.tsx +0 -261
  295. package/renderer/components/docs-viewer/playground/method-selector.tsx +0 -60
  296. package/renderer/components/docs-viewer/playground/request-builder.tsx +0 -179
  297. package/renderer/components/docs-viewer/playground/request-tabs.tsx +0 -237
  298. package/renderer/components/docs-viewer/playground/response-cards/idle-card.tsx +0 -21
  299. package/renderer/components/docs-viewer/playground/response-cards/index.tsx +0 -93
  300. package/renderer/components/docs-viewer/playground/response-cards/loading-card.tsx +0 -16
  301. package/renderer/components/docs-viewer/playground/response-cards/network-error-card.tsx +0 -23
  302. package/renderer/components/docs-viewer/playground/response-cards/response-body-card.tsx +0 -268
  303. package/renderer/components/docs-viewer/playground/response-cards/types.ts +0 -82
  304. package/renderer/components/docs-viewer/playground/response-viewer.tsx +0 -43
  305. package/renderer/components/docs-viewer/search/index.ts +0 -2
  306. package/renderer/components/docs-viewer/search/search-dialog.tsx +0 -331
  307. package/renderer/components/docs-viewer/search/use-search.ts +0 -117
  308. package/renderer/components/docs-viewer/shared/markdown-renderer.tsx +0 -431
  309. package/renderer/components/docs-viewer/shared/method-badge.tsx +0 -41
  310. package/renderer/components/docs-viewer/shared/schema-viewer.tsx +0 -349
  311. package/renderer/components/docs-viewer/sidebar/collection-tree.tsx +0 -259
  312. package/renderer/components/docs-viewer/sidebar/endpoint-options.tsx +0 -316
  313. package/renderer/components/docs-viewer/sidebar/index.tsx +0 -282
  314. package/renderer/components/docs-viewer/sidebar/right-sidebar.tsx +0 -202
  315. package/renderer/components/docs-viewer/sidebar/sidebar-group.tsx +0 -118
  316. package/renderer/components/docs-viewer/sidebar/sidebar-item.tsx +0 -212
  317. package/renderer/components/docs-viewer/sidebar/sidebar-section.tsx +0 -38
  318. package/renderer/components/theme-provider.tsx +0 -11
  319. package/renderer/components/theme-toggle.tsx +0 -76
  320. package/renderer/components/ui/badge.tsx +0 -46
  321. package/renderer/components/ui/button.tsx +0 -59
  322. package/renderer/components/ui/dialog.tsx +0 -118
  323. package/renderer/components/ui/dropdown-menu.tsx +0 -257
  324. package/renderer/components/ui/input.tsx +0 -21
  325. package/renderer/components/ui/label.tsx +0 -24
  326. package/renderer/components/ui/navigation-menu.tsx +0 -168
  327. package/renderer/components/ui/select.tsx +0 -190
  328. package/renderer/components/ui/spinner.tsx +0 -114
  329. package/renderer/components/ui/tabs.tsx +0 -66
  330. package/renderer/components/ui/tooltip.tsx +0 -61
  331. package/renderer/hooks/use-code-copy.ts +0 -88
  332. package/renderer/hooks/use-openapi-title.ts +0 -44
  333. package/renderer/lib/api-docs/agent/index.ts +0 -6
  334. package/renderer/lib/api-docs/agent/indexer.ts +0 -323
  335. package/renderer/lib/api-docs/agent/spec-summary.ts +0 -335
  336. package/renderer/lib/api-docs/agent/types.ts +0 -116
  337. package/renderer/lib/api-docs/auth/auth-context.tsx +0 -225
  338. package/renderer/lib/api-docs/auth/auth-storage.ts +0 -87
  339. package/renderer/lib/api-docs/auth/crypto.ts +0 -89
  340. package/renderer/lib/api-docs/auth/index.ts +0 -4
  341. package/renderer/lib/api-docs/code-editor/db.ts +0 -164
  342. package/renderer/lib/api-docs/code-editor/hooks.ts +0 -266
  343. package/renderer/lib/api-docs/code-editor/mode-context.tsx +0 -207
  344. package/renderer/lib/api-docs/code-editor/types.ts +0 -105
  345. package/renderer/lib/api-docs/codegen/definitions.ts +0 -297
  346. package/renderer/lib/api-docs/codegen/har.ts +0 -251
  347. package/renderer/lib/api-docs/codegen/index.ts +0 -159
  348. package/renderer/lib/api-docs/factories.ts +0 -170
  349. package/renderer/lib/api-docs/mobile-context.tsx +0 -112
  350. package/renderer/lib/api-docs/navigation-context.tsx +0 -88
  351. package/renderer/lib/api-docs/parsers/graphql/README.md +0 -129
  352. package/renderer/lib/api-docs/parsers/graphql/index.ts +0 -91
  353. package/renderer/lib/api-docs/parsers/graphql/parser.ts +0 -491
  354. package/renderer/lib/api-docs/parsers/graphql/transformer.ts +0 -246
  355. package/renderer/lib/api-docs/parsers/graphql/types.ts +0 -283
  356. package/renderer/lib/api-docs/parsers/openapi/README.md +0 -32
  357. package/renderer/lib/api-docs/parsers/openapi/dereferencer.ts +0 -60
  358. package/renderer/lib/api-docs/parsers/openapi/extractors/auth.ts +0 -574
  359. package/renderer/lib/api-docs/parsers/openapi/extractors/body.ts +0 -403
  360. package/renderer/lib/api-docs/parsers/openapi/extractors/index.ts +0 -232
  361. package/renderer/lib/api-docs/parsers/openapi/index.ts +0 -171
  362. package/renderer/lib/api-docs/parsers/openapi/transformer.ts +0 -278
  363. package/renderer/lib/api-docs/parsers/openapi/validator.ts +0 -31
  364. package/renderer/lib/api-docs/playground/context.tsx +0 -107
  365. package/renderer/lib/api-docs/playground/navigation-context.tsx +0 -124
  366. package/renderer/lib/api-docs/playground/request-builder.ts +0 -223
  367. package/renderer/lib/api-docs/playground/request-runner.ts +0 -282
  368. package/renderer/lib/api-docs/playground/types.ts +0 -35
  369. package/renderer/lib/api-docs/types.ts +0 -269
  370. package/renderer/lib/api-docs/utils.ts +0 -311
  371. package/renderer/lib/cache.ts +0 -193
  372. package/renderer/lib/docs/config/domain-schema.ts +0 -260
  373. package/renderer/lib/docs/config/index.ts +0 -43
  374. package/renderer/lib/docs/config/loader.ts +0 -142
  375. package/renderer/lib/docs/config/schema.ts +0 -308
  376. package/renderer/lib/docs/index.ts +0 -12
  377. package/renderer/lib/docs/mdx/compiler.ts +0 -176
  378. package/renderer/lib/docs/mdx/frontmatter.ts +0 -91
  379. package/renderer/lib/docs/mdx/index.ts +0 -26
  380. package/renderer/lib/docs/navigation/generator.ts +0 -348
  381. package/renderer/lib/docs/navigation/index.ts +0 -12
  382. package/renderer/lib/docs/navigation/types.ts +0 -123
  383. package/renderer/lib/docs-navigation-context.tsx +0 -80
  384. package/renderer/lib/multi-tenant/context.ts +0 -105
  385. package/renderer/lib/storage/blob.ts +0 -1083
  386. package/renderer/lib/utils/icons.ts +0 -48
  387. package/renderer/lib/utils.ts +0 -6
  388. package/renderer/next.config.ts +0 -76
@@ -0,0 +1,528 @@
1
+ 'use client';
2
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
3
+ import { useState } from 'react';
4
+ import { CaretDown, CaretRight, Play } from '@phosphor-icons/react';
5
+ import { MethodBadge } from '../shared/method-badge';
6
+ import { MarkdownRenderer } from '../shared/markdown-renderer';
7
+ import { Badge } from '@/components/ui/badge';
8
+ import { Button } from '@/components/ui/button';
9
+ import { CodeViewer } from '../playground/code-editor';
10
+ import { ResponseSchema } from '../shared/schema-viewer';
11
+ import { CodeSnippetCompact } from '../playground/code-snippet';
12
+ import { useModeContext } from '@/lib/api-docs/code-editor';
13
+ // Collapsible section component
14
+ function CollapsibleSection({ title, children, defaultOpen = true }) {
15
+ const [isOpen, setIsOpen] = useState(defaultOpen);
16
+ return /*#__PURE__*/ _jsxs("div", {
17
+ className: "docs-api-section border-b border-border",
18
+ children: [
19
+ /*#__PURE__*/ _jsxs("button", {
20
+ onClick: ()=>setIsOpen(!isOpen),
21
+ className: "docs-api-section-header w-full flex items-center justify-between p-4 hover:bg-muted/50 transition-colors",
22
+ children: [
23
+ /*#__PURE__*/ _jsx("span", {
24
+ className: "font-semibold text-sm",
25
+ children: title
26
+ }),
27
+ isOpen ? /*#__PURE__*/ _jsx(CaretDown, {
28
+ className: "h-4 w-4 text-muted-foreground",
29
+ weight: "bold"
30
+ }) : /*#__PURE__*/ _jsx(CaretRight, {
31
+ className: "h-4 w-4 text-muted-foreground",
32
+ weight: "bold"
33
+ })
34
+ ]
35
+ }),
36
+ isOpen && /*#__PURE__*/ _jsx("div", {
37
+ className: "docs-api-section-content px-4 pb-4",
38
+ children: children
39
+ })
40
+ ]
41
+ });
42
+ }
43
+ export function RequestDetails({ request }) {
44
+ const { switchToApiClient } = useModeContext();
45
+ return /*#__PURE__*/ _jsxs("div", {
46
+ className: "docs-api-endpoint h-full overflow-y-auto bg-background",
47
+ children: [
48
+ /*#__PURE__*/ _jsxs("div", {
49
+ className: "docs-api-endpoint-header p-4 border-b border-border",
50
+ children: [
51
+ /*#__PURE__*/ _jsxs("div", {
52
+ className: "flex items-center justify-between gap-2 mb-2",
53
+ children: [
54
+ /*#__PURE__*/ _jsxs("div", {
55
+ className: "flex items-center gap-2 min-w-0",
56
+ children: [
57
+ /*#__PURE__*/ _jsx(MethodBadge, {
58
+ method: request.method
59
+ }),
60
+ /*#__PURE__*/ _jsx("h2", {
61
+ className: "docs-api-endpoint-name font-semibold text-lg truncate",
62
+ children: request.name
63
+ })
64
+ ]
65
+ }),
66
+ /*#__PURE__*/ _jsxs(Button, {
67
+ size: "sm",
68
+ onClick: ()=>switchToApiClient(),
69
+ className: "docs-button docs-button-try-it shrink-0",
70
+ children: [
71
+ /*#__PURE__*/ _jsx(Play, {
72
+ className: "h-3.5 w-3.5 mr-1.5",
73
+ weight: "fill"
74
+ }),
75
+ "Try it out"
76
+ ]
77
+ })
78
+ ]
79
+ }),
80
+ /*#__PURE__*/ _jsx("code", {
81
+ className: "docs-api-path text-xs text-muted-foreground font-mono break-all",
82
+ children: request.endpoint
83
+ })
84
+ ]
85
+ }),
86
+ /*#__PURE__*/ _jsx(CodeSnippetCompact, {
87
+ request: request
88
+ }),
89
+ request.description?.trim() && /*#__PURE__*/ _jsx(CollapsibleSection, {
90
+ title: "Description",
91
+ defaultOpen: true,
92
+ children: /*#__PURE__*/ _jsx("div", {
93
+ className: "text-sm text-muted-foreground",
94
+ children: /*#__PURE__*/ _jsx(MarkdownRenderer, {
95
+ content: request.description
96
+ })
97
+ })
98
+ }),
99
+ request.params.length > 0 && /*#__PURE__*/ _jsx(CollapsibleSection, {
100
+ title: "Parameters",
101
+ defaultOpen: false,
102
+ children: /*#__PURE__*/ _jsx("div", {
103
+ className: "border rounded-sm overflow-x-auto",
104
+ children: /*#__PURE__*/ _jsxs("table", {
105
+ className: "w-full text-sm min-w-[400px]",
106
+ children: [
107
+ /*#__PURE__*/ _jsx("thead", {
108
+ className: "bg-muted/50",
109
+ children: /*#__PURE__*/ _jsxs("tr", {
110
+ children: [
111
+ /*#__PURE__*/ _jsx("th", {
112
+ className: "px-3 py-2 text-left text-xs font-semibold whitespace-nowrap",
113
+ children: "Name"
114
+ }),
115
+ /*#__PURE__*/ _jsx("th", {
116
+ className: "px-3 py-2 text-left text-xs font-semibold whitespace-nowrap",
117
+ children: "Description"
118
+ }),
119
+ /*#__PURE__*/ _jsx("th", {
120
+ className: "px-3 py-2 text-left text-xs font-semibold whitespace-nowrap",
121
+ children: "Required"
122
+ })
123
+ ]
124
+ })
125
+ }),
126
+ /*#__PURE__*/ _jsx("tbody", {
127
+ children: request.params.map((param)=>/*#__PURE__*/ _jsxs("tr", {
128
+ className: "border-t",
129
+ children: [
130
+ /*#__PURE__*/ _jsx("td", {
131
+ className: "px-3 py-2 font-mono text-xs whitespace-nowrap",
132
+ children: param.key
133
+ }),
134
+ /*#__PURE__*/ _jsx("td", {
135
+ className: "px-3 py-2 text-xs text-muted-foreground",
136
+ children: param.description || '-'
137
+ }),
138
+ /*#__PURE__*/ _jsx("td", {
139
+ className: "px-3 py-2 text-xs whitespace-nowrap",
140
+ children: param.active ? /*#__PURE__*/ _jsx(Badge, {
141
+ variant: "default",
142
+ className: "text-xs",
143
+ children: "Required"
144
+ }) : /*#__PURE__*/ _jsx("span", {
145
+ className: "text-muted-foreground",
146
+ children: "Optional"
147
+ })
148
+ })
149
+ ]
150
+ }, param.key))
151
+ })
152
+ ]
153
+ })
154
+ })
155
+ }),
156
+ request.headers.length > 0 && /*#__PURE__*/ _jsx(CollapsibleSection, {
157
+ title: "Headers",
158
+ defaultOpen: false,
159
+ children: /*#__PURE__*/ _jsx("div", {
160
+ className: "border rounded-sm overflow-x-auto",
161
+ children: /*#__PURE__*/ _jsxs("table", {
162
+ className: "w-full text-sm min-w-[400px]",
163
+ children: [
164
+ /*#__PURE__*/ _jsx("thead", {
165
+ className: "bg-muted/50",
166
+ children: /*#__PURE__*/ _jsxs("tr", {
167
+ children: [
168
+ /*#__PURE__*/ _jsx("th", {
169
+ className: "px-3 py-2 text-left text-xs font-semibold whitespace-nowrap",
170
+ children: "Name"
171
+ }),
172
+ /*#__PURE__*/ _jsx("th", {
173
+ className: "px-3 py-2 text-left text-xs font-semibold whitespace-nowrap",
174
+ children: "Description"
175
+ }),
176
+ /*#__PURE__*/ _jsx("th", {
177
+ className: "px-3 py-2 text-left text-xs font-semibold whitespace-nowrap",
178
+ children: "Required"
179
+ })
180
+ ]
181
+ })
182
+ }),
183
+ /*#__PURE__*/ _jsx("tbody", {
184
+ children: request.headers.map((header)=>/*#__PURE__*/ _jsxs("tr", {
185
+ className: "border-t",
186
+ children: [
187
+ /*#__PURE__*/ _jsx("td", {
188
+ className: "px-3 py-2 font-mono text-xs whitespace-nowrap",
189
+ children: header.key
190
+ }),
191
+ /*#__PURE__*/ _jsx("td", {
192
+ className: "px-3 py-2 text-xs text-muted-foreground",
193
+ children: header.description || '-'
194
+ }),
195
+ /*#__PURE__*/ _jsx("td", {
196
+ className: "px-3 py-2 text-xs whitespace-nowrap",
197
+ children: header.active ? /*#__PURE__*/ _jsx(Badge, {
198
+ variant: "default",
199
+ className: "text-xs",
200
+ children: "Required"
201
+ }) : /*#__PURE__*/ _jsx("span", {
202
+ className: "text-muted-foreground",
203
+ children: "Optional"
204
+ })
205
+ })
206
+ ]
207
+ }, header.key))
208
+ })
209
+ ]
210
+ })
211
+ })
212
+ }),
213
+ request.auth.authType !== 'none' && /*#__PURE__*/ _jsx(CollapsibleSection, {
214
+ title: "Authentication",
215
+ defaultOpen: false,
216
+ children: /*#__PURE__*/ _jsxs("div", {
217
+ className: "border rounded-sm overflow-hidden",
218
+ children: [
219
+ request.auth.authType === 'basic' && /*#__PURE__*/ _jsxs(_Fragment, {
220
+ children: [
221
+ /*#__PURE__*/ _jsx("div", {
222
+ className: "px-3 py-2 border-b bg-muted/30",
223
+ children: /*#__PURE__*/ _jsxs("div", {
224
+ className: "flex items-center gap-2",
225
+ children: [
226
+ /*#__PURE__*/ _jsx("span", {
227
+ className: "font-semibold text-sm",
228
+ children: "Basic Auth"
229
+ }),
230
+ /*#__PURE__*/ _jsx("span", {
231
+ className: "text-xs text-orange-500 font-medium",
232
+ children: "required"
233
+ })
234
+ ]
235
+ })
236
+ }),
237
+ /*#__PURE__*/ _jsxs("div", {
238
+ className: "p-3 space-y-2",
239
+ children: [
240
+ /*#__PURE__*/ _jsxs("div", {
241
+ className: "flex items-center justify-between py-2 border-b border-border/50",
242
+ children: [
243
+ /*#__PURE__*/ _jsx("span", {
244
+ className: "text-sm font-medium",
245
+ children: "username"
246
+ }),
247
+ /*#__PURE__*/ _jsx("span", {
248
+ className: "text-xs text-muted-foreground",
249
+ children: "string"
250
+ })
251
+ ]
252
+ }),
253
+ /*#__PURE__*/ _jsxs("div", {
254
+ className: "flex items-center justify-between py-2",
255
+ children: [
256
+ /*#__PURE__*/ _jsx("span", {
257
+ className: "text-sm font-medium",
258
+ children: "password"
259
+ }),
260
+ /*#__PURE__*/ _jsx("span", {
261
+ className: "text-xs text-muted-foreground",
262
+ children: "string"
263
+ })
264
+ ]
265
+ })
266
+ ]
267
+ })
268
+ ]
269
+ }),
270
+ request.auth.authType === 'bearer' && /*#__PURE__*/ _jsxs(_Fragment, {
271
+ children: [
272
+ /*#__PURE__*/ _jsx("div", {
273
+ className: "px-3 py-2 border-b bg-muted/30",
274
+ children: /*#__PURE__*/ _jsxs("div", {
275
+ className: "flex items-center gap-2",
276
+ children: [
277
+ /*#__PURE__*/ _jsx("span", {
278
+ className: "font-semibold text-sm",
279
+ children: "Bearer Token"
280
+ }),
281
+ /*#__PURE__*/ _jsx("span", {
282
+ className: "text-xs text-orange-500 font-medium",
283
+ children: "required"
284
+ })
285
+ ]
286
+ })
287
+ }),
288
+ /*#__PURE__*/ _jsxs("div", {
289
+ className: "p-3",
290
+ children: [
291
+ /*#__PURE__*/ _jsxs("div", {
292
+ className: "flex items-center justify-between py-2",
293
+ children: [
294
+ /*#__PURE__*/ _jsx("span", {
295
+ className: "text-sm font-medium",
296
+ children: "Authorization"
297
+ }),
298
+ /*#__PURE__*/ _jsx("span", {
299
+ className: "text-xs text-muted-foreground font-mono",
300
+ children: "Bearer <token>"
301
+ })
302
+ ]
303
+ }),
304
+ /*#__PURE__*/ _jsx("p", {
305
+ className: "text-xs text-muted-foreground mt-1",
306
+ children: "Pass the token in the Authorization header"
307
+ })
308
+ ]
309
+ })
310
+ ]
311
+ }),
312
+ request.auth.authType === 'api-key' && /*#__PURE__*/ _jsxs(_Fragment, {
313
+ children: [
314
+ /*#__PURE__*/ _jsx("div", {
315
+ className: "px-3 py-2 border-b bg-muted/30",
316
+ children: /*#__PURE__*/ _jsxs("div", {
317
+ className: "flex items-center gap-2",
318
+ children: [
319
+ /*#__PURE__*/ _jsx("span", {
320
+ className: "font-semibold text-sm",
321
+ children: "API Key"
322
+ }),
323
+ /*#__PURE__*/ _jsx("span", {
324
+ className: "text-xs text-orange-500 font-medium",
325
+ children: "required"
326
+ })
327
+ ]
328
+ })
329
+ }),
330
+ /*#__PURE__*/ _jsxs("div", {
331
+ className: "p-3 space-y-3",
332
+ children: [
333
+ /*#__PURE__*/ _jsxs("div", {
334
+ className: "border-b border-border/50 pb-3",
335
+ children: [
336
+ /*#__PURE__*/ _jsxs("div", {
337
+ className: "flex items-start gap-2 flex-wrap",
338
+ children: [
339
+ /*#__PURE__*/ _jsx("span", {
340
+ className: "font-semibold text-sm",
341
+ children: request.auth.key
342
+ }),
343
+ /*#__PURE__*/ _jsx("span", {
344
+ className: "text-xs text-muted-foreground",
345
+ children: "string"
346
+ }),
347
+ /*#__PURE__*/ _jsx("span", {
348
+ className: "text-xs text-orange-500 font-medium",
349
+ children: "required"
350
+ })
351
+ ]
352
+ }),
353
+ /*#__PURE__*/ _jsx("p", {
354
+ className: "text-xs text-muted-foreground mt-1",
355
+ children: "Your API key for authentication"
356
+ })
357
+ ]
358
+ }),
359
+ /*#__PURE__*/ _jsxs("div", {
360
+ className: "flex items-center gap-2 text-xs",
361
+ children: [
362
+ /*#__PURE__*/ _jsx("span", {
363
+ className: "text-muted-foreground",
364
+ children: "Location:"
365
+ }),
366
+ /*#__PURE__*/ _jsx("code", {
367
+ className: "bg-muted px-2 py-0.5 rounded font-mono",
368
+ children: request.auth.addTo === 'HEADERS' ? 'Header' : 'Query'
369
+ })
370
+ ]
371
+ })
372
+ ]
373
+ })
374
+ ]
375
+ }),
376
+ request.auth.authType === 'oauth-2' && /*#__PURE__*/ _jsxs(_Fragment, {
377
+ children: [
378
+ /*#__PURE__*/ _jsx("div", {
379
+ className: "px-3 py-2 border-b bg-muted/30",
380
+ children: /*#__PURE__*/ _jsxs("div", {
381
+ className: "flex items-center gap-2",
382
+ children: [
383
+ /*#__PURE__*/ _jsx("span", {
384
+ className: "font-semibold text-sm",
385
+ children: "OAuth 2.0"
386
+ }),
387
+ /*#__PURE__*/ _jsx("span", {
388
+ className: "text-xs text-orange-500 font-medium",
389
+ children: "required"
390
+ })
391
+ ]
392
+ })
393
+ }),
394
+ /*#__PURE__*/ _jsxs("div", {
395
+ className: "p-3 space-y-3",
396
+ children: [
397
+ /*#__PURE__*/ _jsx("div", {
398
+ className: "border-b border-border/50 pb-3",
399
+ children: /*#__PURE__*/ _jsxs("div", {
400
+ className: "flex items-start gap-2 flex-wrap",
401
+ children: [
402
+ /*#__PURE__*/ _jsx("span", {
403
+ className: "font-semibold text-sm",
404
+ children: "Grant Type"
405
+ }),
406
+ /*#__PURE__*/ _jsx("span", {
407
+ className: "text-xs text-muted-foreground",
408
+ children: request.auth.grantTypeInfo.grantType.replace('_', ' ')
409
+ })
410
+ ]
411
+ })
412
+ }),
413
+ request.auth.grantTypeInfo.authEndpoint && /*#__PURE__*/ _jsxs("div", {
414
+ className: "border-b border-border/50 pb-3",
415
+ children: [
416
+ /*#__PURE__*/ _jsxs("div", {
417
+ className: "flex items-start gap-2 flex-wrap",
418
+ children: [
419
+ /*#__PURE__*/ _jsx("span", {
420
+ className: "font-semibold text-sm",
421
+ children: "authEndpoint"
422
+ }),
423
+ /*#__PURE__*/ _jsx("span", {
424
+ className: "text-xs text-muted-foreground",
425
+ children: "string"
426
+ })
427
+ ]
428
+ }),
429
+ /*#__PURE__*/ _jsx("code", {
430
+ className: "text-xs text-muted-foreground mt-1 block break-all",
431
+ children: request.auth.grantTypeInfo.authEndpoint
432
+ })
433
+ ]
434
+ }),
435
+ request.auth.grantTypeInfo.tokenEndpoint && /*#__PURE__*/ _jsxs("div", {
436
+ className: "pb-1",
437
+ children: [
438
+ /*#__PURE__*/ _jsxs("div", {
439
+ className: "flex items-start gap-2 flex-wrap",
440
+ children: [
441
+ /*#__PURE__*/ _jsx("span", {
442
+ className: "font-semibold text-sm",
443
+ children: "tokenEndpoint"
444
+ }),
445
+ /*#__PURE__*/ _jsx("span", {
446
+ className: "text-xs text-muted-foreground",
447
+ children: "string"
448
+ })
449
+ ]
450
+ }),
451
+ /*#__PURE__*/ _jsx("code", {
452
+ className: "text-xs text-muted-foreground mt-1 block break-all",
453
+ children: request.auth.grantTypeInfo.tokenEndpoint
454
+ })
455
+ ]
456
+ })
457
+ ]
458
+ })
459
+ ]
460
+ })
461
+ ]
462
+ })
463
+ }),
464
+ request.body.body !== null && /*#__PURE__*/ _jsx(CollapsibleSection, {
465
+ title: "Request Body",
466
+ defaultOpen: false,
467
+ children: /*#__PURE__*/ _jsxs("div", {
468
+ className: "border rounded-sm overflow-hidden",
469
+ children: [
470
+ /*#__PURE__*/ _jsxs("div", {
471
+ className: "bg-muted/50 px-3 py-2 border-b",
472
+ children: [
473
+ /*#__PURE__*/ _jsx("span", {
474
+ className: "text-xs font-medium",
475
+ children: "Content-Type: "
476
+ }),
477
+ /*#__PURE__*/ _jsx("code", {
478
+ className: "text-xs",
479
+ children: request.body.contentType
480
+ })
481
+ ]
482
+ }),
483
+ Array.isArray(request.body.body) ? /*#__PURE__*/ _jsx("div", {
484
+ className: "p-3 space-y-1",
485
+ children: request.body.body.map((item, index)=>/*#__PURE__*/ _jsxs("div", {
486
+ className: "flex items-center gap-2 text-xs",
487
+ children: [
488
+ /*#__PURE__*/ _jsx("code", {
489
+ className: "bg-background px-2 py-1 rounded",
490
+ children: item.key
491
+ }),
492
+ /*#__PURE__*/ _jsx("span", {
493
+ className: "text-muted-foreground",
494
+ children: item.isFile ? '(file)' : '(text)'
495
+ })
496
+ ]
497
+ }, index))
498
+ }) : /*#__PURE__*/ _jsx("div", {
499
+ className: "dark-editor",
500
+ children: /*#__PURE__*/ _jsx(CodeViewer, {
501
+ value: typeof request.body.body === 'string' ? request.body.body : JSON.stringify(request.body.body),
502
+ language: request.body.contentType?.includes('json') ? 'json' : request.body.contentType?.includes('xml') ? 'xml' : 'plaintext',
503
+ theme: "dark",
504
+ height: "auto",
505
+ minHeight: 80,
506
+ maxHeight: 250,
507
+ showBorder: false,
508
+ rounded: false
509
+ })
510
+ })
511
+ ]
512
+ })
513
+ }),
514
+ Object.keys(request.responses).length > 0 && /*#__PURE__*/ _jsx(CollapsibleSection, {
515
+ title: "Responses",
516
+ defaultOpen: true,
517
+ children: /*#__PURE__*/ _jsx("div", {
518
+ children: Object.entries(request.responses).map(([name, response])=>/*#__PURE__*/ _jsx(ResponseSchema, {
519
+ code: response.code,
520
+ status: response.status,
521
+ description: name !== response.status ? name : undefined,
522
+ schema: response.body
523
+ }, name))
524
+ })
525
+ })
526
+ ]
527
+ });
528
+ }
@@ -0,0 +1,108 @@
1
+ 'use client';
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ export function AuthSection({ auth }) {
4
+ if (auth.authType === 'none' || auth.authType === 'inherit') {
5
+ return null;
6
+ }
7
+ return /*#__PURE__*/ _jsxs("section", {
8
+ children: [
9
+ /*#__PURE__*/ _jsx("h2", {
10
+ className: "text-2xl font-semibold mb-4",
11
+ children: "Authentication"
12
+ }),
13
+ /*#__PURE__*/ _jsxs("div", {
14
+ className: "bg-muted/50 rounded-sm p-6",
15
+ children: [
16
+ auth.authType === 'basic' && /*#__PURE__*/ _jsxs("div", {
17
+ className: "space-y-2",
18
+ children: [
19
+ /*#__PURE__*/ _jsx("p", {
20
+ className: "text-sm font-medium",
21
+ children: "Type: Basic Authentication"
22
+ }),
23
+ /*#__PURE__*/ _jsx("p", {
24
+ className: "text-sm text-muted-foreground",
25
+ children: "Username and password required"
26
+ })
27
+ ]
28
+ }),
29
+ auth.authType === 'bearer' && /*#__PURE__*/ _jsxs("div", {
30
+ className: "space-y-2",
31
+ children: [
32
+ /*#__PURE__*/ _jsx("p", {
33
+ className: "text-sm font-medium",
34
+ children: "Type: Bearer Token"
35
+ }),
36
+ /*#__PURE__*/ _jsx("p", {
37
+ className: "text-sm text-muted-foreground",
38
+ children: "Token required in Authorization header"
39
+ })
40
+ ]
41
+ }),
42
+ auth.authType === 'api-key' && /*#__PURE__*/ _jsxs("div", {
43
+ className: "space-y-2",
44
+ children: [
45
+ /*#__PURE__*/ _jsx("p", {
46
+ className: "text-sm font-medium",
47
+ children: "Type: API Key"
48
+ }),
49
+ /*#__PURE__*/ _jsxs("p", {
50
+ className: "text-sm text-muted-foreground",
51
+ children: [
52
+ "Key: ",
53
+ /*#__PURE__*/ _jsx("code", {
54
+ className: "bg-background px-2 py-1 rounded",
55
+ children: auth.key
56
+ })
57
+ ]
58
+ }),
59
+ /*#__PURE__*/ _jsxs("p", {
60
+ className: "text-sm text-muted-foreground",
61
+ children: [
62
+ "Location: ",
63
+ auth.addTo === 'HEADERS' ? 'Header' : 'Query Parameter'
64
+ ]
65
+ })
66
+ ]
67
+ }),
68
+ auth.authType === 'oauth-2' && /*#__PURE__*/ _jsxs("div", {
69
+ className: "space-y-2",
70
+ children: [
71
+ /*#__PURE__*/ _jsx("p", {
72
+ className: "text-sm font-medium",
73
+ children: "Type: OAuth 2.0"
74
+ }),
75
+ /*#__PURE__*/ _jsxs("p", {
76
+ className: "text-sm text-muted-foreground",
77
+ children: [
78
+ "Grant Type: ",
79
+ auth.grantTypeInfo.grantType.replace('_', ' ')
80
+ ]
81
+ }),
82
+ auth.grantTypeInfo.authEndpoint && /*#__PURE__*/ _jsxs("p", {
83
+ className: "text-sm text-muted-foreground",
84
+ children: [
85
+ "Auth Endpoint: ",
86
+ /*#__PURE__*/ _jsx("code", {
87
+ className: "bg-background px-2 py-1 rounded",
88
+ children: auth.grantTypeInfo.authEndpoint
89
+ })
90
+ ]
91
+ }),
92
+ auth.grantTypeInfo.tokenEndpoint && /*#__PURE__*/ _jsxs("p", {
93
+ className: "text-sm text-muted-foreground",
94
+ children: [
95
+ "Token Endpoint: ",
96
+ /*#__PURE__*/ _jsx("code", {
97
+ className: "bg-background px-2 py-1 rounded",
98
+ children: auth.grantTypeInfo.tokenEndpoint
99
+ })
100
+ ]
101
+ })
102
+ ]
103
+ })
104
+ ]
105
+ })
106
+ ]
107
+ });
108
+ }