skybridge 0.0.0-dev.b570187 → 0.0.0-dev.b59ee59

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 (307) hide show
  1. package/LICENSE +21 -674
  2. package/bin/run.js +9 -0
  3. package/dist/cli/use-version.d.ts +1 -0
  4. package/dist/cli/use-version.js +33 -0
  5. package/dist/cli/use-version.js.map +1 -0
  6. package/dist/commands/dev.d.ts +7 -0
  7. package/dist/commands/dev.js +30 -0
  8. package/dist/commands/dev.js.map +1 -0
  9. package/dist/server/index.d.ts +4 -0
  10. package/dist/{src/server → server}/index.js +0 -1
  11. package/dist/server/index.js.map +1 -0
  12. package/dist/{src/server → server}/inferUtilityTypes.d.ts +10 -0
  13. package/dist/server/inferUtilityTypes.js.map +1 -0
  14. package/dist/server/server.d.ts +101 -0
  15. package/dist/server/server.js +132 -0
  16. package/dist/server/server.js.map +1 -0
  17. package/dist/{src/server → server}/templateHelper.d.ts +3 -0
  18. package/dist/{src/server → server}/templateHelper.js +5 -4
  19. package/dist/server/templateHelper.js.map +1 -0
  20. package/dist/server/templates/development.hbs +66 -0
  21. package/dist/{src/server → server}/templates/production.hbs +1 -0
  22. package/dist/{src/server → server}/widgetsDevServer.d.ts +2 -2
  23. package/dist/{src/server → server}/widgetsDevServer.js +12 -4
  24. package/dist/server/widgetsDevServer.js.map +1 -0
  25. package/dist/{src/test → test}/utils.d.ts +54 -8
  26. package/dist/{src/test → test}/utils.js +86 -8
  27. package/dist/test/utils.js.map +1 -0
  28. package/dist/test/widget.test.js +234 -0
  29. package/dist/test/widget.test.js.map +1 -0
  30. package/dist/web/bridges/adaptors/apps-sdk-adaptor.d.ts +13 -0
  31. package/dist/web/bridges/adaptors/apps-sdk-adaptor.js +33 -0
  32. package/dist/web/bridges/adaptors/apps-sdk-adaptor.js.map +1 -0
  33. package/dist/web/bridges/adaptors/mcp-app-adaptor.d.ts +16 -0
  34. package/dist/web/bridges/adaptors/mcp-app-adaptor.js +115 -0
  35. package/dist/web/bridges/adaptors/mcp-app-adaptor.js.map +1 -0
  36. package/dist/web/bridges/apps-sdk-bridge.d.ts +10 -0
  37. package/dist/web/bridges/apps-sdk-bridge.js +46 -0
  38. package/dist/web/bridges/apps-sdk-bridge.js.map +1 -0
  39. package/dist/web/bridges/hooks/use-adaptor.d.ts +2 -0
  40. package/dist/web/bridges/hooks/use-adaptor.js +8 -0
  41. package/dist/web/bridges/hooks/use-adaptor.js.map +1 -0
  42. package/dist/web/bridges/hooks/use-apps-sdk-bridge.d.ts +2 -0
  43. package/dist/web/bridges/hooks/use-apps-sdk-bridge.js +7 -0
  44. package/dist/web/bridges/hooks/use-apps-sdk-bridge.js.map +1 -0
  45. package/dist/web/bridges/hooks/use-bridge.d.ts +2 -0
  46. package/dist/web/bridges/hooks/use-bridge.js +8 -0
  47. package/dist/web/bridges/hooks/use-bridge.js.map +1 -0
  48. package/dist/web/bridges/hooks/use-mcp-app-bridge.d.ts +5 -0
  49. package/dist/web/bridges/hooks/use-mcp-app-bridge.js +7 -0
  50. package/dist/web/bridges/hooks/use-mcp-app-bridge.js.map +1 -0
  51. package/dist/web/bridges/hooks/use-mcp-app-bridge.test.js +62 -0
  52. package/dist/web/bridges/hooks/use-mcp-app-bridge.test.js.map +1 -0
  53. package/dist/web/bridges/index.d.ts +4 -0
  54. package/dist/web/bridges/index.js +5 -0
  55. package/dist/web/bridges/index.js.map +1 -0
  56. package/dist/web/bridges/mcp-app-bridge.d.ts +46 -0
  57. package/dist/web/bridges/mcp-app-bridge.js +217 -0
  58. package/dist/web/bridges/mcp-app-bridge.js.map +1 -0
  59. package/dist/web/bridges/types.d.ts +57 -0
  60. package/dist/{src/emulator/src → web/bridges}/types.js.map +1 -1
  61. package/dist/{src/web → web}/create-store.js +1 -1
  62. package/dist/web/create-store.js.map +1 -0
  63. package/dist/{src/web → web}/create-store.test.js +1 -1
  64. package/dist/web/create-store.test.js.map +1 -0
  65. package/dist/{src/web → web}/data-llm.js +6 -4
  66. package/dist/web/data-llm.js.map +1 -0
  67. package/dist/web/data-llm.test.js.map +1 -0
  68. package/dist/{src/web → web}/generate-helpers.d.ts +9 -7
  69. package/dist/{src/web → web}/generate-helpers.js +4 -2
  70. package/dist/web/generate-helpers.js.map +1 -0
  71. package/dist/{src/web → web}/generate-helpers.test-d.js +59 -3
  72. package/dist/web/generate-helpers.test-d.js.map +1 -0
  73. package/dist/{src/web → web}/generate-helpers.test.js +1 -1
  74. package/dist/web/generate-helpers.test.js.map +1 -0
  75. package/dist/{src/web → web}/helpers/state.js +1 -1
  76. package/dist/web/helpers/state.js.map +1 -0
  77. package/dist/{src/web → web}/helpers/state.test.js +2 -2
  78. package/dist/web/helpers/state.test.js.map +1 -0
  79. package/dist/{src/web → web}/hooks/index.d.ts +4 -5
  80. package/dist/{src/web → web}/hooks/index.js +3 -4
  81. package/dist/web/hooks/index.js.map +1 -0
  82. package/dist/web/hooks/test/utils.d.ts +10 -0
  83. package/dist/web/hooks/test/utils.js +40 -0
  84. package/dist/web/hooks/test/utils.js.map +1 -0
  85. package/dist/{src/web → web}/hooks/use-call-tool.d.ts +2 -2
  86. package/dist/{src/web → web}/hooks/use-call-tool.js +12 -4
  87. package/dist/web/hooks/use-call-tool.js.map +1 -0
  88. package/dist/{src/web → web}/hooks/use-call-tool.test-d.js +2 -2
  89. package/dist/web/hooks/use-call-tool.test-d.js.map +1 -0
  90. package/dist/{src/web → web}/hooks/use-call-tool.test.js +37 -18
  91. package/dist/web/hooks/use-call-tool.test.js.map +1 -0
  92. package/dist/{src/web → web}/hooks/use-display-mode.d.ts +1 -1
  93. package/dist/web/hooks/use-display-mode.js +10 -0
  94. package/dist/web/hooks/use-display-mode.js.map +1 -0
  95. package/dist/{src/web → web}/hooks/use-display-mode.test.js +3 -2
  96. package/dist/web/hooks/use-display-mode.test.js.map +1 -0
  97. package/dist/web/hooks/use-files.js.map +1 -0
  98. package/dist/{src/web → web}/hooks/use-files.test.js +1 -1
  99. package/dist/web/hooks/use-files.test.js.map +1 -0
  100. package/dist/web/hooks/use-layout.d.ts +22 -0
  101. package/dist/web/hooks/use-layout.js +23 -0
  102. package/dist/web/hooks/use-layout.js.map +1 -0
  103. package/dist/web/hooks/use-layout.test.js +95 -0
  104. package/dist/web/hooks/use-layout.test.js.map +1 -0
  105. package/dist/web/hooks/use-open-external.js +8 -0
  106. package/dist/web/hooks/use-open-external.js.map +1 -0
  107. package/dist/web/hooks/use-open-external.test.js +50 -0
  108. package/dist/web/hooks/use-open-external.test.js.map +1 -0
  109. package/dist/web/hooks/use-openai-global.d.ts +3 -0
  110. package/dist/web/hooks/use-openai-global.js +6 -0
  111. package/dist/web/hooks/use-openai-global.js.map +1 -0
  112. package/dist/web/hooks/use-request-modal.d.ts +9 -0
  113. package/dist/web/hooks/use-request-modal.js +14 -0
  114. package/dist/web/hooks/use-request-modal.js.map +1 -0
  115. package/dist/web/hooks/use-request-modal.test.js +57 -0
  116. package/dist/web/hooks/use-request-modal.test.js.map +1 -0
  117. package/dist/web/hooks/use-send-follow-up-message.js +8 -0
  118. package/dist/web/hooks/use-send-follow-up-message.js.map +1 -0
  119. package/dist/{src/web → web}/hooks/use-tool-info.d.ts +13 -2
  120. package/dist/web/hooks/use-tool-info.js +26 -0
  121. package/dist/web/hooks/use-tool-info.js.map +1 -0
  122. package/dist/{src/web → web}/hooks/use-tool-info.test-d.js +40 -5
  123. package/dist/web/hooks/use-tool-info.test-d.js.map +1 -0
  124. package/dist/web/hooks/use-tool-info.test.js +130 -0
  125. package/dist/web/hooks/use-tool-info.test.js.map +1 -0
  126. package/dist/web/hooks/use-user.d.ts +18 -0
  127. package/dist/web/hooks/use-user.js +19 -0
  128. package/dist/web/hooks/use-user.js.map +1 -0
  129. package/dist/web/hooks/use-user.test.js +93 -0
  130. package/dist/web/hooks/use-user.test.js.map +1 -0
  131. package/dist/{src/web → web}/hooks/use-widget-state.js +3 -3
  132. package/dist/web/hooks/use-widget-state.js.map +1 -0
  133. package/dist/{src/web → web}/hooks/use-widget-state.test.js +3 -2
  134. package/dist/web/hooks/use-widget-state.test.js.map +1 -0
  135. package/dist/{src/web → web}/index.d.ts +5 -4
  136. package/dist/{src/web → web}/index.js +5 -4
  137. package/dist/web/index.js.map +1 -0
  138. package/dist/web/mount-widget.js.map +1 -0
  139. package/dist/web/plugin/data-llm.test.js.map +1 -0
  140. package/dist/{src/web → web}/plugin/plugin.js +10 -4
  141. package/dist/web/plugin/plugin.js.map +1 -0
  142. package/dist/{src/web → web}/plugin/transform-data-llm.js +6 -3
  143. package/dist/web/plugin/transform-data-llm.js.map +1 -0
  144. package/dist/web/plugin/transform-data-llm.test.js.map +1 -0
  145. package/dist/{src/web → web}/proxy.js +6 -1
  146. package/dist/web/proxy.js.map +1 -0
  147. package/dist/{src/web → web}/types.d.ts +31 -15
  148. package/dist/web/types.js.map +1 -0
  149. package/package.json +50 -31
  150. package/README.md +0 -415
  151. package/dist/src/emulator/dist/assets/index-BZr5jCa4.js +0 -9
  152. package/dist/src/emulator/dist/assets/index-DmQYZ06G.css +0 -1
  153. package/dist/src/emulator/dist/index.html +0 -14
  154. package/dist/src/emulator/dist/vite.svg +0 -1
  155. package/dist/src/emulator/eslint.config.d.ts +0 -2
  156. package/dist/src/emulator/eslint.config.js +0 -23
  157. package/dist/src/emulator/eslint.config.js.map +0 -1
  158. package/dist/src/emulator/postcss.config.d.ts +0 -7
  159. package/dist/src/emulator/postcss.config.js +0 -7
  160. package/dist/src/emulator/postcss.config.js.map +0 -1
  161. package/dist/src/emulator/src/App.d.ts +0 -2
  162. package/dist/src/emulator/src/App.js +0 -100
  163. package/dist/src/emulator/src/App.js.map +0 -1
  164. package/dist/src/emulator/src/components/Inspector.d.ts +0 -8
  165. package/dist/src/emulator/src/components/Inspector.js +0 -14
  166. package/dist/src/emulator/src/components/Inspector.js.map +0 -1
  167. package/dist/src/emulator/src/components/Logs.d.ts +0 -10
  168. package/dist/src/emulator/src/components/Logs.js +0 -5
  169. package/dist/src/emulator/src/components/Logs.js.map +0 -1
  170. package/dist/src/emulator/src/components/ToolList.d.ts +0 -7
  171. package/dist/src/emulator/src/components/ToolList.js +0 -8
  172. package/dist/src/emulator/src/components/ToolList.js.map +0 -1
  173. package/dist/src/emulator/src/components/Widget.d.ts +0 -9
  174. package/dist/src/emulator/src/components/Widget.js +0 -10
  175. package/dist/src/emulator/src/components/Widget.js.map +0 -1
  176. package/dist/src/emulator/src/lib/utils.d.ts +0 -2
  177. package/dist/src/emulator/src/lib/utils.js +0 -6
  178. package/dist/src/emulator/src/lib/utils.js.map +0 -1
  179. package/dist/src/emulator/src/main.d.ts +0 -1
  180. package/dist/src/emulator/src/main.js +0 -7
  181. package/dist/src/emulator/src/main.js.map +0 -1
  182. package/dist/src/emulator/src/types.d.ts +0 -20
  183. package/dist/src/emulator/tailwind.config.d.ts +0 -50
  184. package/dist/src/emulator/tailwind.config.js +0 -51
  185. package/dist/src/emulator/tailwind.config.js.map +0 -1
  186. package/dist/src/emulator/vite.config.d.ts +0 -2
  187. package/dist/src/emulator/vite.config.js +0 -7
  188. package/dist/src/emulator/vite.config.js.map +0 -1
  189. package/dist/src/server/emulatorStaticServer.d.ts +0 -14
  190. package/dist/src/server/emulatorStaticServer.js +0 -41
  191. package/dist/src/server/emulatorStaticServer.js.map +0 -1
  192. package/dist/src/server/index.d.ts +0 -5
  193. package/dist/src/server/index.js.map +0 -1
  194. package/dist/src/server/inferUtilityTypes.js.map +0 -1
  195. package/dist/src/server/server.d.ts +0 -48
  196. package/dist/src/server/server.js +0 -62
  197. package/dist/src/server/server.js.map +0 -1
  198. package/dist/src/server/templateHelper.js.map +0 -1
  199. package/dist/src/server/templates/development.hbs +0 -12
  200. package/dist/src/server/widgetsDevServer.js.map +0 -1
  201. package/dist/src/test/utils.js.map +0 -1
  202. package/dist/src/test/widget.test.js +0 -90
  203. package/dist/src/test/widget.test.js.map +0 -1
  204. package/dist/src/web/create-store.js.map +0 -1
  205. package/dist/src/web/create-store.test.js.map +0 -1
  206. package/dist/src/web/data-llm.js.map +0 -1
  207. package/dist/src/web/data-llm.test.js.map +0 -1
  208. package/dist/src/web/generate-helpers.js.map +0 -1
  209. package/dist/src/web/generate-helpers.test-d.js.map +0 -1
  210. package/dist/src/web/generate-helpers.test.js.map +0 -1
  211. package/dist/src/web/helpers/state.js.map +0 -1
  212. package/dist/src/web/helpers/state.test.js.map +0 -1
  213. package/dist/src/web/hooks/index.js.map +0 -1
  214. package/dist/src/web/hooks/use-call-tool.js.map +0 -1
  215. package/dist/src/web/hooks/use-call-tool.test-d.js.map +0 -1
  216. package/dist/src/web/hooks/use-call-tool.test.js.map +0 -1
  217. package/dist/src/web/hooks/use-display-mode.js +0 -7
  218. package/dist/src/web/hooks/use-display-mode.js.map +0 -1
  219. package/dist/src/web/hooks/use-display-mode.test.js.map +0 -1
  220. package/dist/src/web/hooks/use-files.js.map +0 -1
  221. package/dist/src/web/hooks/use-files.test.js.map +0 -1
  222. package/dist/src/web/hooks/use-locale.d.ts +0 -1
  223. package/dist/src/web/hooks/use-locale.js +0 -5
  224. package/dist/src/web/hooks/use-locale.js.map +0 -1
  225. package/dist/src/web/hooks/use-locale.test.js +0 -21
  226. package/dist/src/web/hooks/use-locale.test.js.map +0 -1
  227. package/dist/src/web/hooks/use-open-external.js +0 -6
  228. package/dist/src/web/hooks/use-open-external.js.map +0 -1
  229. package/dist/src/web/hooks/use-open-external.test.js +0 -24
  230. package/dist/src/web/hooks/use-open-external.test.js.map +0 -1
  231. package/dist/src/web/hooks/use-openai-global.d.ts +0 -2
  232. package/dist/src/web/hooks/use-openai-global.js +0 -23
  233. package/dist/src/web/hooks/use-openai-global.js.map +0 -1
  234. package/dist/src/web/hooks/use-request-modal.d.ts +0 -6
  235. package/dist/src/web/hooks/use-request-modal.js +0 -9
  236. package/dist/src/web/hooks/use-request-modal.js.map +0 -1
  237. package/dist/src/web/hooks/use-request-modal.test.js +0 -24
  238. package/dist/src/web/hooks/use-request-modal.test.js.map +0 -1
  239. package/dist/src/web/hooks/use-send-follow-up-message.js +0 -11
  240. package/dist/src/web/hooks/use-send-follow-up-message.js.map +0 -1
  241. package/dist/src/web/hooks/use-theme.d.ts +0 -1
  242. package/dist/src/web/hooks/use-theme.js +0 -5
  243. package/dist/src/web/hooks/use-theme.js.map +0 -1
  244. package/dist/src/web/hooks/use-theme.test.js +0 -26
  245. package/dist/src/web/hooks/use-theme.test.js.map +0 -1
  246. package/dist/src/web/hooks/use-tool-info.js +0 -22
  247. package/dist/src/web/hooks/use-tool-info.js.map +0 -1
  248. package/dist/src/web/hooks/use-tool-info.test-d.js.map +0 -1
  249. package/dist/src/web/hooks/use-tool-info.test.js +0 -59
  250. package/dist/src/web/hooks/use-tool-info.test.js.map +0 -1
  251. package/dist/src/web/hooks/use-user-agent.d.ts +0 -1
  252. package/dist/src/web/hooks/use-user-agent.js +0 -5
  253. package/dist/src/web/hooks/use-user-agent.js.map +0 -1
  254. package/dist/src/web/hooks/use-user-agent.test.js +0 -31
  255. package/dist/src/web/hooks/use-user-agent.test.js.map +0 -1
  256. package/dist/src/web/hooks/use-widget-state.js.map +0 -1
  257. package/dist/src/web/hooks/use-widget-state.test.js.map +0 -1
  258. package/dist/src/web/index.js.map +0 -1
  259. package/dist/src/web/mount-widget.js.map +0 -1
  260. package/dist/src/web/plugin/data-llm.test.js.map +0 -1
  261. package/dist/src/web/plugin/plugin.js.map +0 -1
  262. package/dist/src/web/plugin/transform-data-llm.js.map +0 -1
  263. package/dist/src/web/plugin/transform-data-llm.test.js.map +0 -1
  264. package/dist/src/web/proxy.js.map +0 -1
  265. package/dist/src/web/types.js.map +0 -1
  266. package/dist/vitest.config.d.ts +0 -2
  267. package/dist/vitest.config.js +0 -8
  268. package/dist/vitest.config.js.map +0 -1
  269. /package/dist/{src/server → server}/inferUtilityTypes.js +0 -0
  270. /package/dist/{src/test → test}/widget.test.d.ts +0 -0
  271. /package/dist/{src/web/create-store.test.d.ts → web/bridges/hooks/use-mcp-app-bridge.test.d.ts} +0 -0
  272. /package/dist/{src/emulator/src → web/bridges}/types.js +0 -0
  273. /package/dist/{src/web → web}/create-store.d.ts +0 -0
  274. /package/dist/{src/web/data-llm.test.d.ts → web/create-store.test.d.ts} +0 -0
  275. /package/dist/{src/web → web}/data-llm.d.ts +0 -0
  276. /package/dist/{src/web/plugin → web}/data-llm.test.d.ts +0 -0
  277. /package/dist/{src/web → web}/data-llm.test.js +0 -0
  278. /package/dist/{src/web → web}/generate-helpers.test-d.d.ts +0 -0
  279. /package/dist/{src/web → web}/generate-helpers.test.d.ts +0 -0
  280. /package/dist/{src/web → web}/helpers/state.d.ts +0 -0
  281. /package/dist/{src/web → web}/helpers/state.test.d.ts +0 -0
  282. /package/dist/{src/web → web}/hooks/use-call-tool.test-d.d.ts +0 -0
  283. /package/dist/{src/web → web}/hooks/use-call-tool.test.d.ts +0 -0
  284. /package/dist/{src/web → web}/hooks/use-display-mode.test.d.ts +0 -0
  285. /package/dist/{src/web → web}/hooks/use-files.d.ts +0 -0
  286. /package/dist/{src/web → web}/hooks/use-files.js +0 -0
  287. /package/dist/{src/web → web}/hooks/use-files.test.d.ts +0 -0
  288. /package/dist/{src/web/hooks/use-locale.test.d.ts → web/hooks/use-layout.test.d.ts} +0 -0
  289. /package/dist/{src/web → web}/hooks/use-open-external.d.ts +0 -0
  290. /package/dist/{src/web → web}/hooks/use-open-external.test.d.ts +0 -0
  291. /package/dist/{src/web → web}/hooks/use-request-modal.test.d.ts +0 -0
  292. /package/dist/{src/web → web}/hooks/use-send-follow-up-message.d.ts +0 -0
  293. /package/dist/{src/web → web}/hooks/use-tool-info.test-d.d.ts +0 -0
  294. /package/dist/{src/web → web}/hooks/use-tool-info.test.d.ts +0 -0
  295. /package/dist/{src/web/hooks/use-theme.test.d.ts → web/hooks/use-user.test.d.ts} +0 -0
  296. /package/dist/{src/web → web}/hooks/use-widget-state.d.ts +0 -0
  297. /package/dist/{src/web → web}/hooks/use-widget-state.test.d.ts +0 -0
  298. /package/dist/{src/web → web}/mount-widget.d.ts +0 -0
  299. /package/dist/{src/web → web}/mount-widget.js +0 -0
  300. /package/dist/{src/web/hooks/use-user-agent.test.d.ts → web/plugin/data-llm.test.d.ts} +0 -0
  301. /package/dist/{src/web → web}/plugin/data-llm.test.js +0 -0
  302. /package/dist/{src/web → web}/plugin/plugin.d.ts +0 -0
  303. /package/dist/{src/web → web}/plugin/transform-data-llm.d.ts +0 -0
  304. /package/dist/{src/web → web}/plugin/transform-data-llm.test.d.ts +0 -0
  305. /package/dist/{src/web → web}/plugin/transform-data-llm.test.js +0 -0
  306. /package/dist/{src/web → web}/proxy.d.ts +0 -0
  307. /package/dist/{src/web → web}/types.js +0 -0
@@ -1 +0,0 @@
1
- *,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}:root{--background: 0 0% 100%;--foreground: 222.2 84% 4.9%;--card: 0 0% 100%;--card-foreground: 222.2 84% 4.9%;--popover: 0 0% 100%;--popover-foreground: 222.2 84% 4.9%;--primary: 222.2 47.4% 11.2%;--primary-foreground: 210 40% 98%;--secondary: 210 40% 96.1%;--secondary-foreground: 222.2 47.4% 11.2%;--muted: 210 40% 96.1%;--muted-foreground: 215.4 16.3% 46.9%;--accent: 210 40% 96.1%;--accent-foreground: 222.2 47.4% 11.2%;--destructive: 0 84.2% 60.2%;--destructive-foreground: 210 40% 98%;--border: 214.3 31.8% 91.4%;--input: 214.3 31.8% 91.4%;--ring: 222.2 84% 4.9%;--radius: .5rem}.dark{--background: 222.2 84% 4.9%;--foreground: 210 40% 98%;--card: 222.2 84% 4.9%;--card-foreground: 210 40% 98%;--popover: 222.2 84% 4.9%;--popover-foreground: 210 40% 98%;--primary: 210 40% 98%;--primary-foreground: 222.2 47.4% 11.2%;--secondary: 217.2 32.6% 17.5%;--secondary-foreground: 210 40% 98%;--muted: 217.2 32.6% 17.5%;--muted-foreground: 215 20.2% 65.1%;--accent: 217.2 32.6% 17.5%;--accent-foreground: 210 40% 98%;--destructive: 0 62.8% 30.6%;--destructive-foreground: 210 40% 98%;--border: 217.2 32.6% 17.5%;--input: 217.2 32.6% 17.5%;--ring: 212.7 26.8% 83.9%}*{border-color:hsl(var(--border))}html,body{height:100%;width:100%}body{background-color:hsl(var(--background));color:hsl(var(--foreground))}#root{height:100%;width:100%}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.ml-2{margin-left:.5rem}.mt-2{margin-top:.5rem}.flex{display:flex}.h-12{height:3rem}.h-24{height:6rem}.h-48{height:12rem}.h-full{height:100%}.h-screen{height:100vh}.min-h-0{min-height:0px}.w-24{width:6rem}.w-64{width:16rem}.w-80{width:20rem}.w-full{width:100%}.w-screen{width:100vw}.min-w-0{min-width:0px}.flex-1{flex:1 1 0%}.flex-shrink-0{flex-shrink:0}.resize-none{resize:none}.flex-col{flex-direction:column}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-center{justify-content:center}.gap-4{gap:1rem}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.whitespace-pre-wrap{white-space:pre-wrap}.rounded{border-radius:.25rem}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) - 2px)}.border{border-width:1px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-r{border-right-width:1px}.border-border{border-color:hsl(var(--border))}.border-input{border-color:hsl(var(--input))}.border-primary{border-color:hsl(var(--primary))}.bg-background{background-color:hsl(var(--background))}.bg-card{background-color:hsl(var(--card))}.bg-muted\/30{background-color:hsl(var(--muted) / .3)}.bg-muted\/50{background-color:hsl(var(--muted) / .5)}.bg-primary{background-color:hsl(var(--primary))}.bg-yellow-50{--tw-bg-opacity: 1;background-color:rgb(254 252 232 / var(--tw-bg-opacity, 1))}.object-contain{-o-object-fit:contain;object-fit:contain}.p-2{padding:.5rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.text-left{text-align:left}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.tracking-wide{letter-spacing:.025em}.text-foreground{color:hsl(var(--foreground))}.text-muted-foreground{color:hsl(var(--muted-foreground))}.text-primary-foreground{color:hsl(var(--primary-foreground))}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.hover\:bg-muted:hover{background-color:hsl(var(--muted))}.hover\:bg-primary\/90:hover{background-color:hsl(var(--primary) / .9)}.hover\:text-foreground:hover{color:hsl(var(--foreground))}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-ring:focus{--tw-ring-color: hsl(var(--ring))}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.dark\:bg-yellow-950\/20:is(.dark *){background-color:#42200633}
@@ -1,14 +0,0 @@
1
- <!DOCTYPE html>
2
- <html lang="en">
3
- <head>
4
- <meta charset="UTF-8" />
5
- <link rel="icon" type="image/svg+xml" href="/vite.svg" />
6
- <meta name="viewport" content="width=device-width, initial-scale=1.0" />
7
- <title>Skybridge MCP Emulator</title>
8
- <script type="module" crossorigin src="/assets/index-BZr5jCa4.js"></script>
9
- <link rel="stylesheet" crossorigin href="/assets/index-DmQYZ06G.css">
10
- </head>
11
- <body>
12
- <div id="root"></div>
13
- </body>
14
- </html>
@@ -1 +0,0 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" class="iconify iconify--logos" width="31.88" height="32" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 257"><defs><linearGradient id="IconifyId1813088fe1fbc01fb466" x1="-.828%" x2="57.636%" y1="7.652%" y2="78.411%"><stop offset="0%" stop-color="#41D1FF"></stop><stop offset="100%" stop-color="#BD34FE"></stop></linearGradient><linearGradient id="IconifyId1813088fe1fbc01fb467" x1="43.376%" x2="50.316%" y1="2.242%" y2="89.03%"><stop offset="0%" stop-color="#FFEA83"></stop><stop offset="8.333%" stop-color="#FFDD35"></stop><stop offset="100%" stop-color="#FFA800"></stop></linearGradient></defs><path fill="url(#IconifyId1813088fe1fbc01fb466)" d="M255.153 37.938L134.897 252.976c-2.483 4.44-8.862 4.466-11.382.048L.875 37.958c-2.746-4.814 1.371-10.646 6.827-9.67l120.385 21.517a6.537 6.537 0 0 0 2.322-.004l117.867-21.483c5.438-.991 9.574 4.796 6.877 9.62Z"></path><path fill="url(#IconifyId1813088fe1fbc01fb467)" d="M185.432.063L96.44 17.501a3.268 3.268 0 0 0-2.634 3.014l-5.474 92.456a3.268 3.268 0 0 0 3.997 3.378l24.777-5.718c2.318-.535 4.413 1.507 3.936 3.838l-7.361 36.047c-.495 2.426 1.782 4.5 4.151 3.78l15.304-4.649c2.372-.72 4.652 1.36 4.15 3.788l-11.698 56.621c-.732 3.542 3.979 5.473 5.943 2.437l1.313-2.028l72.516-144.72c1.215-2.423-.88-5.186-3.54-4.672l-25.505 4.922c-2.396.462-4.435-1.77-3.759-4.114l16.646-57.705c.677-2.35-1.37-4.583-3.769-4.113Z"></path></svg>
@@ -1,2 +0,0 @@
1
- declare const _default: import("eslint/config").Config[];
2
- export default _default;
@@ -1,23 +0,0 @@
1
- import js from '@eslint/js';
2
- import globals from 'globals';
3
- import reactHooks from 'eslint-plugin-react-hooks';
4
- import reactRefresh from 'eslint-plugin-react-refresh';
5
- import tseslint from 'typescript-eslint';
6
- import { defineConfig, globalIgnores } from 'eslint/config';
7
- export default defineConfig([
8
- globalIgnores(['dist']),
9
- {
10
- files: ['**/*.{ts,tsx}'],
11
- extends: [
12
- js.configs.recommended,
13
- tseslint.configs.recommended,
14
- reactHooks.configs.flat.recommended,
15
- reactRefresh.configs.vite,
16
- ],
17
- languageOptions: {
18
- ecmaVersion: 2020,
19
- globals: globals.browser,
20
- },
21
- },
22
- ]);
23
- //# sourceMappingURL=eslint.config.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"eslint.config.js","sourceRoot":"","sources":["../../../src/emulator/eslint.config.js"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,YAAY,CAAA;AAC3B,OAAO,OAAO,MAAM,SAAS,CAAA;AAC7B,OAAO,UAAU,MAAM,2BAA2B,CAAA;AAClD,OAAO,YAAY,MAAM,6BAA6B,CAAA;AACtD,OAAO,QAAQ,MAAM,mBAAmB,CAAA;AACxC,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAE3D,eAAe,YAAY,CAAC;IAC1B,aAAa,CAAC,CAAC,MAAM,CAAC,CAAC;IACvB;QACE,KAAK,EAAE,CAAC,eAAe,CAAC;QACxB,OAAO,EAAE;YACP,EAAE,CAAC,OAAO,CAAC,WAAW;YACtB,QAAQ,CAAC,OAAO,CAAC,WAAW;YAC5B,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW;YACnC,YAAY,CAAC,OAAO,CAAC,IAAI;SAC1B;QACD,eAAe,EAAE;YACf,WAAW,EAAE,IAAI;YACjB,OAAO,EAAE,OAAO,CAAC,OAAO;SACzB;KACF;CACF,CAAC,CAAA"}
@@ -1,7 +0,0 @@
1
- declare namespace _default {
2
- namespace plugins {
3
- let tailwindcss: {};
4
- let autoprefixer: {};
5
- }
6
- }
7
- export default _default;
@@ -1,7 +0,0 @@
1
- export default {
2
- plugins: {
3
- tailwindcss: {},
4
- autoprefixer: {},
5
- },
6
- };
7
- //# sourceMappingURL=postcss.config.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"postcss.config.js","sourceRoot":"","sources":["../../../src/emulator/postcss.config.js"],"names":[],"mappings":"AAAA,eAAe;IACb,OAAO,EAAE;QACP,WAAW,EAAE,EAAE;QACf,YAAY,EAAE,EAAE;KACjB;CACF,CAAC"}
@@ -1,2 +0,0 @@
1
- declare function App(): import("react/jsx-runtime").JSX.Element;
2
- export default App;
@@ -1,100 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { useState, useEffect } from "react";
3
- import SuperJSON from "superjson";
4
- import { ToolList } from "./components/ToolList.js";
5
- import { Inspector } from "./components/Inspector.js";
6
- import { Logs } from "./components/Logs.js";
7
- import { Widget } from "./components/Widget.js";
8
- function App() {
9
- const [metadata, setMetadata] = useState();
10
- const [selectedTool, setSelectedTool] = useState(null);
11
- const [input, setInput] = useState("");
12
- const [output, setOutput] = useState("");
13
- const [executionTime, setExecutionTime] = useState(null);
14
- const [isCalling, setIsCalling] = useState(false);
15
- useEffect(() => {
16
- fetch("/_emulator/metadata")
17
- .then((res) => {
18
- if (!res.ok) {
19
- throw new Error(`HTTP error! status: ${res.status}`);
20
- }
21
- return res
22
- .json()
23
- .then((data) => SuperJSON.deserialize(data));
24
- })
25
- .then((data) => {
26
- setMetadata(data);
27
- // Set first tool as selected if available
28
- const tools = Object.keys(data.registeredTools || {});
29
- if (tools.length > 0 && !selectedTool) {
30
- setSelectedTool(tools[0]);
31
- }
32
- })
33
- .catch((err) => {
34
- console.error("Failed to fetch metadata:", err);
35
- setMetadata(undefined);
36
- });
37
- }, [selectedTool]);
38
- const tools = metadata ? Object.keys(metadata.registeredTools || {}) : [];
39
- const selectedToolData = selectedTool && metadata?.registeredTools[selectedTool];
40
- const handleCall = async () => {
41
- if (!selectedTool)
42
- return;
43
- setIsCalling(true);
44
- const startTime = Date.now();
45
- try {
46
- // Simulate API call
47
- await new Promise((resolve) => setTimeout(resolve, 2000));
48
- // Mock output based on input
49
- const inputObj = input ? JSON.parse(input) : {};
50
- const mockOutput = {
51
- ...inputObj,
52
- ...(inputObj.name === "pikachu" && { type: "electric" }),
53
- };
54
- setOutput(JSON.stringify(mockOutput, null, 2));
55
- setExecutionTime(Date.now() - startTime);
56
- }
57
- catch (err) {
58
- console.error("Failed to call tool:", err);
59
- setOutput(JSON.stringify({ error: "Invalid input" }, null, 2));
60
- setExecutionTime(Date.now() - startTime);
61
- }
62
- finally {
63
- setIsCalling(false);
64
- }
65
- };
66
- // Mock widget data for demonstration
67
- const widgetData = input.includes("pikachu")
68
- ? {
69
- name: "Pikachu",
70
- type: "electric",
71
- image: "https://raw.githubusercontent.com/PokeAPI/sprites/master/sprites/pokemon/25.png",
72
- }
73
- : undefined;
74
- // Mock logs
75
- const logs = [
76
- {
77
- timestamp: "01:02",
78
- message: "requestModal called",
79
- type: "request",
80
- },
81
- {
82
- timestamp: "01:05",
83
- message: "sendFollowUpMessage called",
84
- type: "response",
85
- },
86
- { timestamp: "", message: "- Display current pokemon evolution" },
87
- ];
88
- // Mock state and inspect data
89
- const localState = widgetData ? { count: 4 } : {};
90
- const globalInspect = {
91
- height: 100,
92
- theme: "dark",
93
- locale: "en",
94
- };
95
- return (_jsxs("div", { className: "h-screen w-screen flex overflow-hidden bg-background", children: [_jsx("div", { className: "w-64 flex-shrink-0", children: _jsx(ToolList, { tools: tools, selectedTool: selectedTool, onSelectTool: setSelectedTool }) }), _jsxs("div", { className: "flex-1 flex flex-col overflow-hidden", children: [_jsx("div", { className: "h-12 flex-shrink-0 border-b border-border bg-muted/30 px-4 flex items-center", children: _jsx("h1", { className: "text-sm font-semibold", children: selectedToolData
96
- ? `${selectedTool} - ${selectedToolData.description || "Tool"}`
97
- : "No tool selected" }) }), _jsxs("div", { className: "h-48 flex-shrink-0 border-b border-border p-4 flex gap-4", children: [_jsxs("div", { className: "flex-1 bg-card border border-border rounded-lg p-4 flex flex-col", children: [_jsx("label", { className: "text-xs font-semibold text-muted-foreground mb-2 uppercase", children: "Input" }), _jsx("textarea", { value: input, onChange: (e) => setInput(e.target.value), placeholder: '{ "name": "pikachu" }', className: "flex-1 font-mono text-sm bg-background border border-input rounded p-2 resize-none focus:outline-none focus:ring-2 focus:ring-ring" })] }), _jsx("div", { className: "flex items-center", children: _jsx("button", { onClick: handleCall, disabled: !selectedTool || isCalling, className: "h-full px-6 bg-primary text-primary-foreground rounded-lg hover:bg-primary/90 disabled:opacity-50 disabled:cursor-not-allowed transition-colors font-medium", children: "Call Button" }) }), _jsxs("div", { className: "flex-1 bg-card border border-border rounded-lg p-4 flex flex-col", children: [_jsx("label", { className: "text-xs font-semibold text-muted-foreground mb-2 uppercase", children: "Output" }), _jsx("div", { className: "flex-1 bg-background border border-input rounded p-2 overflow-auto", children: _jsx("pre", { className: "text-xs font-mono text-foreground whitespace-pre-wrap", children: output || "No output yet" }) }), executionTime !== null && (_jsxs("div", { className: "mt-2 text-xs text-muted-foreground", children: ["Executed in ", (executionTime / 1000).toFixed(1), "s"] }))] })] }), _jsxs("div", { className: "flex-1 flex gap-4 p-4 overflow-hidden", children: [_jsx("div", { className: "flex-1 min-w-0", children: _jsx(Widget, { data: widgetData }) }), _jsxs("div", { className: "w-80 flex-shrink-0 flex flex-col gap-4", children: [_jsx("div", { className: "flex-1 min-h-0", children: _jsx(Inspector, { title: "Local Inspector", state: localState, inspect: localState }) }), _jsx("div", { className: "h-48 flex-shrink-0", children: _jsx(Logs, { logs: logs }) })] }), _jsx("div", { className: "w-80 flex-shrink-0", children: _jsx(Inspector, { title: "Global Inspector", state: globalInspect, inspect: globalInspect }) })] })] })] }));
98
- }
99
- export default App;
100
- //# sourceMappingURL=App.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"App.js","sourceRoot":"","sources":["../../../../src/emulator/src/App.tsx"],"names":[],"mappings":"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"}
@@ -1,8 +0,0 @@
1
- interface InspectorProps {
2
- title: string;
3
- state?: Record<string, unknown>;
4
- inspect?: Record<string, unknown>;
5
- className?: string;
6
- }
7
- export declare function Inspector({ title, state, inspect, className, }: InspectorProps): import("react/jsx-runtime").JSX.Element;
8
- export {};
@@ -1,14 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { useState } from "react";
3
- import { cn } from "../lib/utils.js";
4
- export function Inspector({ title, state, inspect, className, }) {
5
- const [activeTab, setActiveTab] = useState("state");
6
- return (_jsxs("div", { className: cn("bg-card border border-border rounded-lg overflow-hidden", className), children: [_jsx("div", { className: "px-4 py-2 border-b border-border bg-muted/50", children: _jsx("h3", { className: "text-sm font-semibold", children: title }) }), _jsxs("div", { className: "flex border-b border-border", children: [_jsx("button", { onClick: () => setActiveTab("state"), className: cn("px-4 py-2 text-sm font-medium transition-colors", activeTab === "state"
7
- ? "bg-background text-foreground border-b-2 border-primary"
8
- : "text-muted-foreground hover:text-foreground"), children: "state" }), _jsx("button", { onClick: () => setActiveTab("inspect"), className: cn("px-4 py-2 text-sm font-medium transition-colors", activeTab === "inspect"
9
- ? "bg-background text-foreground border-b-2 border-primary"
10
- : "text-muted-foreground hover:text-foreground"), children: "inspect" })] }), _jsx("div", { className: "p-4 bg-background", children: _jsx("pre", { className: "text-xs font-mono text-foreground whitespace-pre-wrap", children: activeTab === "state"
11
- ? JSON.stringify(state || {}, null, 2)
12
- : JSON.stringify(inspect || {}, null, 2) }) })] }));
13
- }
14
- //# sourceMappingURL=Inspector.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Inspector.js","sourceRoot":"","sources":["../../../../../src/emulator/src/components/Inspector.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AASrC,MAAM,UAAU,SAAS,CAAC,EACxB,KAAK,EACL,KAAK,EACL,OAAO,EACP,SAAS,GACM;IACf,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAsB,OAAO,CAAC,CAAC;IAEzE,OAAO,CACL,eACE,SAAS,EAAE,EAAE,CACX,yDAAyD,EACzD,SAAS,CACV,aAED,cAAK,SAAS,EAAC,8CAA8C,YAC3D,aAAI,SAAS,EAAC,uBAAuB,YAAE,KAAK,GAAM,GAC9C,EACN,eAAK,SAAS,EAAC,6BAA6B,aAC1C,iBACE,OAAO,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,EACpC,SAAS,EAAE,EAAE,CACX,iDAAiD,EACjD,SAAS,KAAK,OAAO;4BACnB,CAAC,CAAC,yDAAyD;4BAC3D,CAAC,CAAC,6CAA6C,CAClD,sBAGM,EACT,iBACE,OAAO,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,SAAS,CAAC,EACtC,SAAS,EAAE,EAAE,CACX,iDAAiD,EACjD,SAAS,KAAK,SAAS;4BACrB,CAAC,CAAC,yDAAyD;4BAC3D,CAAC,CAAC,6CAA6C,CAClD,wBAGM,IACL,EACN,cAAK,SAAS,EAAC,mBAAmB,YAChC,cAAK,SAAS,EAAC,uDAAuD,YACnE,SAAS,KAAK,OAAO;wBACpB,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;wBACtC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,GACtC,GACF,IACF,CACP,CAAC;AACJ,CAAC"}
@@ -1,10 +0,0 @@
1
- interface LogEntry {
2
- timestamp: string;
3
- message: string;
4
- type?: "request" | "response";
5
- }
6
- interface LogsProps {
7
- logs: LogEntry[];
8
- }
9
- export declare function Logs({ logs }: LogsProps): import("react/jsx-runtime").JSX.Element;
10
- export {};
@@ -1,5 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- export function Logs({ logs }) {
3
- return (_jsxs("div", { className: "h-full bg-card border border-border rounded-lg overflow-hidden flex flex-col", children: [_jsx("div", { className: "px-4 py-2 border-b border-border bg-muted/50", children: _jsx("h3", { className: "text-sm font-semibold", children: "Logs" }) }), _jsxs("div", { className: "flex-1 overflow-y-auto p-4 space-y-2", children: [logs.map((log, index) => (_jsxs("div", { className: "text-xs font-mono text-muted-foreground", children: [_jsx("span", { className: "text-foreground", children: log.timestamp }), log.type === "request" && _jsx("span", { className: "ml-2", children: " > " }), log.type === "response" && _jsx("span", { className: "ml-2", children: " v " }), _jsx("span", { className: "ml-2", children: log.message })] }, index))), logs.length === 0 && (_jsx("div", { className: "text-xs text-muted-foreground", children: "No logs yet" }))] })] }));
4
- }
5
- //# sourceMappingURL=Logs.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Logs.js","sourceRoot":"","sources":["../../../../../src/emulator/src/components/Logs.tsx"],"names":[],"mappings":";AAUA,MAAM,UAAU,IAAI,CAAC,EAAE,IAAI,EAAa;IACtC,OAAO,CACL,eAAK,SAAS,EAAC,8EAA8E,aAC3F,cAAK,SAAS,EAAC,8CAA8C,YAC3D,aAAI,SAAS,EAAC,uBAAuB,qBAAU,GAC3C,EACN,eAAK,SAAS,EAAC,sCAAsC,aAClD,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,CACxB,eAAiB,SAAS,EAAC,yCAAyC,aAClE,eAAM,SAAS,EAAC,iBAAiB,YAAE,GAAG,CAAC,SAAS,GAAQ,EACvD,GAAG,CAAC,IAAI,KAAK,SAAS,IAAI,eAAM,SAAS,EAAC,MAAM,YAAE,KAAK,GAAQ,EAC/D,GAAG,CAAC,IAAI,KAAK,UAAU,IAAI,eAAM,SAAS,EAAC,MAAM,YAAE,KAAK,GAAQ,EACjE,eAAM,SAAS,EAAC,MAAM,YAAE,GAAG,CAAC,OAAO,GAAQ,KAJnC,KAAK,CAKT,CACP,CAAC,EACD,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,CACpB,cAAK,SAAS,EAAC,+BAA+B,4BAAkB,CACjE,IACG,IACF,CACP,CAAC;AACJ,CAAC"}
@@ -1,7 +0,0 @@
1
- interface ToolListProps {
2
- tools: string[];
3
- selectedTool: string | null;
4
- onSelectTool: (tool: string) => void;
5
- }
6
- export declare function ToolList({ tools, selectedTool, onSelectTool }: ToolListProps): import("react/jsx-runtime").JSX.Element;
7
- export {};
@@ -1,8 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { cn } from "../lib/utils.js";
3
- export function ToolList({ tools, selectedTool, onSelectTool }) {
4
- return (_jsx("div", { className: "h-full bg-muted/50 border-r border-border overflow-y-auto", children: _jsxs("div", { className: "p-4", children: [_jsx("h2", { className: "text-sm font-semibold text-muted-foreground uppercase tracking-wide mb-4", children: "Tool list" }), _jsx("div", { className: "space-y-1", children: tools.map((tool) => (_jsx("button", { onClick: () => onSelectTool(tool), className: cn("w-full text-left px-3 py-2 rounded-md text-sm transition-colors", selectedTool === tool
5
- ? "bg-primary text-primary-foreground"
6
- : "hover:bg-muted text-foreground"), children: tool }, tool))) })] }) }));
7
- }
8
- //# sourceMappingURL=ToolList.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ToolList.js","sourceRoot":"","sources":["../../../../../src/emulator/src/components/ToolList.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AAQrC,MAAM,UAAU,QAAQ,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE,YAAY,EAAiB;IAC3E,OAAO,CACL,cAAK,SAAS,EAAC,2DAA2D,YACxE,eAAK,SAAS,EAAC,KAAK,aAClB,aAAI,SAAS,EAAC,0EAA0E,0BAEnF,EACL,cAAK,SAAS,EAAC,WAAW,YACvB,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CACnB,iBAEE,OAAO,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,EACjC,SAAS,EAAE,EAAE,CACX,iEAAiE,EACjE,YAAY,KAAK,IAAI;4BACnB,CAAC,CAAC,oCAAoC;4BACtC,CAAC,CAAC,gCAAgC,CACrC,YAEA,IAAI,IATA,IAAI,CAUF,CACV,CAAC,GACE,IACF,GACF,CACP,CAAC;AACJ,CAAC"}
@@ -1,9 +0,0 @@
1
- interface WidgetProps {
2
- data?: {
3
- name?: string;
4
- type?: string;
5
- image?: string;
6
- };
7
- }
8
- export declare function Widget({ data }: WidgetProps): import("react/jsx-runtime").JSX.Element;
9
- export {};
@@ -1,10 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { useState } from "react";
3
- export function Widget({ data }) {
4
- const [count, setCount] = useState(4);
5
- if (!data) {
6
- return (_jsx("div", { className: "h-full bg-yellow-50 dark:bg-yellow-950/20 border border-border rounded-lg flex items-center justify-center", children: _jsx("p", { className: "text-muted-foreground", children: "No widget data" }) }));
7
- }
8
- return (_jsx("div", { className: "h-full bg-yellow-50 dark:bg-yellow-950/20 border border-border rounded-lg p-6", children: _jsxs("div", { className: "flex items-start gap-4", children: [data.image && (_jsx("img", { src: data.image, alt: data.name || "Widget", className: "w-24 h-24 object-contain" })), _jsxs("div", { className: "flex-1", children: [_jsxs("h3", { className: "text-xl font-semibold mb-1", children: [data.name || "Unknown", data.type && (_jsxs("span", { className: "text-muted-foreground ml-2", children: ["- ", data.type] }))] }), _jsxs("p", { className: "text-sm text-muted-foreground mb-4", children: ["counter: ", count] }), _jsx("button", { onClick: () => setCount(count + 1), className: "px-4 py-2 bg-primary text-primary-foreground rounded-md hover:bg-primary/90 transition-colors", children: "increment" })] })] }) }));
9
- }
10
- //# sourceMappingURL=Widget.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Widget.js","sourceRoot":"","sources":["../../../../../src/emulator/src/components/Widget.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAUjC,MAAM,UAAU,MAAM,CAAC,EAAE,IAAI,EAAe;IAC1C,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAEtC,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,CACL,cAAK,SAAS,EAAC,4GAA4G,YACzH,YAAG,SAAS,EAAC,uBAAuB,+BAAmB,GACnD,CACP,CAAC;IACJ,CAAC;IAED,OAAO,CACL,cAAK,SAAS,EAAC,+EAA+E,YAC5F,eAAK,SAAS,EAAC,wBAAwB,aACpC,IAAI,CAAC,KAAK,IAAI,CACb,cACE,GAAG,EAAE,IAAI,CAAC,KAAK,EACf,GAAG,EAAE,IAAI,CAAC,IAAI,IAAI,QAAQ,EAC1B,SAAS,EAAC,0BAA0B,GACpC,CACH,EACD,eAAK,SAAS,EAAC,QAAQ,aACrB,cAAI,SAAS,EAAC,4BAA4B,aACvC,IAAI,CAAC,IAAI,IAAI,SAAS,EACtB,IAAI,CAAC,IAAI,IAAI,CACZ,gBAAM,SAAS,EAAC,4BAA4B,mBAAI,IAAI,CAAC,IAAI,IAAQ,CAClE,IACE,EACL,aAAG,SAAS,EAAC,oCAAoC,0BAAW,KAAK,IAAK,EACtE,iBACE,OAAO,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,GAAG,CAAC,CAAC,EAClC,SAAS,EAAC,+FAA+F,0BAGlG,IACL,IACF,GACF,CACP,CAAC;AACJ,CAAC"}
@@ -1,2 +0,0 @@
1
- import { type ClassValue } from "clsx";
2
- export declare function cn(...inputs: ClassValue[]): string;
@@ -1,6 +0,0 @@
1
- import { clsx } from "clsx";
2
- import { twMerge } from "tailwind-merge";
3
- export function cn(...inputs) {
4
- return twMerge(clsx(inputs));
5
- }
6
- //# sourceMappingURL=utils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../../src/emulator/src/lib/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,IAAI,EAAE,MAAM,MAAM,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAEzC,MAAM,UAAU,EAAE,CAAC,GAAG,MAAoB;IACxC,OAAO,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;AAC/B,CAAC"}
@@ -1 +0,0 @@
1
- import "./index.css";
@@ -1,7 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import { StrictMode } from "react";
3
- import { createRoot } from "react-dom/client";
4
- import "./index.css";
5
- import App from "./App.js";
6
- createRoot(document.getElementById("root")).render(_jsx(StrictMode, { children: _jsx(App, {}) }));
7
- //# sourceMappingURL=main.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"main.js","sourceRoot":"","sources":["../../../../src/emulator/src/main.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AACnC,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,aAAa,CAAC;AACrB,OAAO,GAAG,MAAM,UAAU,CAAC;AAE3B,UAAU,CAAC,QAAQ,CAAC,cAAc,CAAC,MAAM,CAAE,CAAC,CAAC,MAAM,CACjD,KAAC,UAAU,cACT,KAAC,GAAG,KAAG,GACI,CACd,CAAC"}
@@ -1,20 +0,0 @@
1
- import type { RegisteredResource, RegisteredResourceTemplate, RegisteredTool, RegisteredPrompt } from "@modelcontextprotocol/sdk/server/mcp.js";
2
- type _registeredResources = {
3
- [uri: string]: RegisteredResource;
4
- };
5
- type _registeredResourceTemplates = {
6
- [name: string]: RegisteredResourceTemplate;
7
- };
8
- type _registeredTools = {
9
- [name: string]: RegisteredTool;
10
- };
11
- type _registeredPrompts = {
12
- [name: string]: RegisteredPrompt;
13
- };
14
- export type EmulatorMetadata = {
15
- registeredResources: _registeredResources;
16
- registeredResourceTemplates: _registeredResourceTemplates;
17
- registeredTools: _registeredTools;
18
- registeredPrompts: _registeredPrompts;
19
- };
20
- export {};
@@ -1,50 +0,0 @@
1
- declare const _default: {
2
- darkMode: ["class"];
3
- content: string[];
4
- theme: {
5
- extend: {
6
- colors: {
7
- background: string;
8
- foreground: string;
9
- card: {
10
- DEFAULT: string;
11
- foreground: string;
12
- };
13
- popover: {
14
- DEFAULT: string;
15
- foreground: string;
16
- };
17
- primary: {
18
- DEFAULT: string;
19
- foreground: string;
20
- };
21
- secondary: {
22
- DEFAULT: string;
23
- foreground: string;
24
- };
25
- muted: {
26
- DEFAULT: string;
27
- foreground: string;
28
- };
29
- accent: {
30
- DEFAULT: string;
31
- foreground: string;
32
- };
33
- destructive: {
34
- DEFAULT: string;
35
- foreground: string;
36
- };
37
- border: string;
38
- input: string;
39
- ring: string;
40
- };
41
- borderRadius: {
42
- lg: string;
43
- md: string;
44
- sm: string;
45
- };
46
- };
47
- };
48
- plugins: never[];
49
- };
50
- export default _default;
@@ -1,51 +0,0 @@
1
- /** @type {import('tailwindcss').Config} */
2
- export default {
3
- darkMode: ["class"],
4
- content: ["./index.html", "./src/**/*.{js,ts,jsx,tsx}"],
5
- theme: {
6
- extend: {
7
- colors: {
8
- background: "hsl(var(--background))",
9
- foreground: "hsl(var(--foreground))",
10
- card: {
11
- DEFAULT: "hsl(var(--card))",
12
- foreground: "hsl(var(--card-foreground))",
13
- },
14
- popover: {
15
- DEFAULT: "hsl(var(--popover))",
16
- foreground: "hsl(var(--popover-foreground))",
17
- },
18
- primary: {
19
- DEFAULT: "hsl(var(--primary))",
20
- foreground: "hsl(var(--primary-foreground))",
21
- },
22
- secondary: {
23
- DEFAULT: "hsl(var(--secondary))",
24
- foreground: "hsl(var(--secondary-foreground))",
25
- },
26
- muted: {
27
- DEFAULT: "hsl(var(--muted))",
28
- foreground: "hsl(var(--muted-foreground))",
29
- },
30
- accent: {
31
- DEFAULT: "hsl(var(--accent))",
32
- foreground: "hsl(var(--accent-foreground))",
33
- },
34
- destructive: {
35
- DEFAULT: "hsl(var(--destructive))",
36
- foreground: "hsl(var(--destructive-foreground))",
37
- },
38
- border: "hsl(var(--border))",
39
- input: "hsl(var(--input))",
40
- ring: "hsl(var(--ring))",
41
- },
42
- borderRadius: {
43
- lg: "var(--radius)",
44
- md: "calc(var(--radius) - 2px)",
45
- sm: "calc(var(--radius) - 4px)",
46
- },
47
- },
48
- },
49
- plugins: [],
50
- };
51
- //# sourceMappingURL=tailwind.config.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tailwind.config.js","sourceRoot":"","sources":["../../../src/emulator/tailwind.config.js"],"names":[],"mappings":"AAAA,2CAA2C;AAC3C,eAAe;IACb,QAAQ,EAAE,CAAC,OAAO,CAAC;IACnB,OAAO,EAAE,CAAC,cAAc,EAAE,4BAA4B,CAAC;IACvD,KAAK,EAAE;QACL,MAAM,EAAE;YACN,MAAM,EAAE;gBACN,UAAU,EAAE,wBAAwB;gBACpC,UAAU,EAAE,wBAAwB;gBACpC,IAAI,EAAE;oBACJ,OAAO,EAAE,kBAAkB;oBAC3B,UAAU,EAAE,6BAA6B;iBAC1C;gBACD,OAAO,EAAE;oBACP,OAAO,EAAE,qBAAqB;oBAC9B,UAAU,EAAE,gCAAgC;iBAC7C;gBACD,OAAO,EAAE;oBACP,OAAO,EAAE,qBAAqB;oBAC9B,UAAU,EAAE,gCAAgC;iBAC7C;gBACD,SAAS,EAAE;oBACT,OAAO,EAAE,uBAAuB;oBAChC,UAAU,EAAE,kCAAkC;iBAC/C;gBACD,KAAK,EAAE;oBACL,OAAO,EAAE,mBAAmB;oBAC5B,UAAU,EAAE,8BAA8B;iBAC3C;gBACD,MAAM,EAAE;oBACN,OAAO,EAAE,oBAAoB;oBAC7B,UAAU,EAAE,+BAA+B;iBAC5C;gBACD,WAAW,EAAE;oBACX,OAAO,EAAE,yBAAyB;oBAClC,UAAU,EAAE,oCAAoC;iBACjD;gBACD,MAAM,EAAE,oBAAoB;gBAC5B,KAAK,EAAE,mBAAmB;gBAC1B,IAAI,EAAE,kBAAkB;aACzB;YACD,YAAY,EAAE;gBACZ,EAAE,EAAE,eAAe;gBACnB,EAAE,EAAE,2BAA2B;gBAC/B,EAAE,EAAE,2BAA2B;aAChC;SACF;KACF;IACD,OAAO,EAAE,EAAE;CACZ,CAAC"}
@@ -1,2 +0,0 @@
1
- declare const _default: import("vite").UserConfig;
2
- export default _default;
@@ -1,7 +0,0 @@
1
- import { defineConfig } from "vite";
2
- import react from "@vitejs/plugin-react";
3
- // https://vite.dev/config/
4
- export default defineConfig({
5
- plugins: [react()],
6
- });
7
- //# sourceMappingURL=vite.config.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"vite.config.js","sourceRoot":"","sources":["../../../src/emulator/vite.config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,MAAM,CAAC;AACpC,OAAO,KAAK,MAAM,sBAAsB,CAAC;AAEzC,2BAA2B;AAC3B,eAAe,YAAY,CAAC;IAC1B,OAAO,EAAE,CAAC,KAAK,EAAE,CAAC;CACnB,CAAC,CAAC"}
@@ -1,14 +0,0 @@
1
- import { type RequestHandler } from "express";
2
- import type { McpServer } from "./server.js";
3
- /**
4
- * Serve the built emulator React app
5
- * This router serves static files from the emulator's dist directory.
6
- * It should be installed at the application root, like so:
7
- *
8
- * const app = express();
9
- *
10
- * if (env.NODE_ENV === "production") {
11
- * app.use(await emulatorStaticServer(server));
12
- * }
13
- */
14
- export declare const emulatorStaticServer: (server: McpServer) => Promise<RequestHandler>;
@@ -1,41 +0,0 @@
1
- import cors from "cors";
2
- import express, {} from "express";
3
- import { readFileSync } from "node:fs";
4
- import path from "node:path";
5
- import { fileURLToPath } from "node:url";
6
- import SuperJSON from "superjson";
7
- /**
8
- * Serve the built emulator React app
9
- * This router serves static files from the emulator's dist directory.
10
- * It should be installed at the application root, like so:
11
- *
12
- * const app = express();
13
- *
14
- * if (env.NODE_ENV === "production") {
15
- * app.use(await emulatorStaticServer(server));
16
- * }
17
- */
18
- export const emulatorStaticServer = async (server) => {
19
- const router = express.Router();
20
- const currentDir = path.dirname(fileURLToPath(import.meta.url));
21
- const distPath = path.join(currentDir, "..", "emulator", "dist");
22
- router.use(cors());
23
- router.get("/_emulator/metadata", async (_req, res) => {
24
- const metadata = SuperJSON.serialize(server);
25
- res.json(metadata);
26
- });
27
- router.use(express.static(distPath));
28
- router.get("/{*splat}", (_req, res, next) => {
29
- const indexHtmlPath = path.join(distPath, "index.html");
30
- try {
31
- const indexHtml = readFileSync(indexHtmlPath, "utf-8");
32
- res.setHeader("Content-Type", "text/html");
33
- res.send(indexHtml);
34
- }
35
- catch (error) {
36
- next(error);
37
- }
38
- });
39
- return router;
40
- };
41
- //# sourceMappingURL=emulatorStaticServer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"emulatorStaticServer.js","sourceRoot":"","sources":["../../../src/server/emulatorStaticServer.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,OAAO,EAAE,EAAuB,MAAM,SAAS,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,SAAS,MAAM,WAAW,CAAC;AAGlC;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,KAAK,EACvC,MAAiB,EACQ,EAAE;IAC3B,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAChC,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IAChE,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;IAEjE,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;IAEnB,MAAM,CAAC,GAAG,CAAC,qBAAqB,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE;QACpD,MAAM,QAAQ,GAAG,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAC7C,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACrB,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;IAErC,MAAM,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QAC1C,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;QACxD,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,YAAY,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;YACvD,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,WAAW,CAAC,CAAC;YAC3C,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACtB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,KAAK,CAAC,CAAC;QACd,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC"}
@@ -1,5 +0,0 @@
1
- export { McpServer } from "./server.js";
2
- export { widgetsDevServer } from "./widgetsDevServer.js";
3
- export { emulatorStaticServer } from "./emulatorStaticServer.js";
4
- export type { ToolDef, McpServerTypes } from "./server.js";
5
- export type { InferTools, AnyToolRegistry, ToolNames, ToolInput, ToolOutput, } from "./inferUtilityTypes.js";
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/server/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"inferUtilityTypes.js","sourceRoot":"","sources":["../../../src/server/inferUtilityTypes.ts"],"names":[],"mappings":""}