@supernal/interface 1.0.0

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 (519) hide show
  1. package/LICENSE +22 -0
  2. package/README.md +165 -0
  3. package/dist/cjs/names/API.js +104 -0
  4. package/dist/cjs/names/API.js.map +1 -0
  5. package/dist/cjs/names/Components.js +104 -0
  6. package/dist/cjs/names/Components.js.map +1 -0
  7. package/dist/cjs/names/Containers.js +99 -0
  8. package/dist/cjs/names/Containers.js.map +1 -0
  9. package/dist/cjs/names/Functions.js +114 -0
  10. package/dist/cjs/names/Functions.js.map +1 -0
  11. package/dist/cjs/names/index.js +118 -0
  12. package/dist/cjs/names/index.js.map +1 -0
  13. package/dist/cjs/src/adapters/ChatUIProvider.js +176 -0
  14. package/dist/cjs/src/adapters/ChatUIProvider.js.map +1 -0
  15. package/dist/cjs/src/adapters/bridge.js +225 -0
  16. package/dist/cjs/src/adapters/bridge.js.map +1 -0
  17. package/dist/cjs/src/adapters/copilotkit/CopilotKitAdapter.js +289 -0
  18. package/dist/cjs/src/adapters/copilotkit/CopilotKitAdapter.js.map +1 -0
  19. package/dist/cjs/src/adapters/copilotkit/index.js +10 -0
  20. package/dist/cjs/src/adapters/copilotkit/index.js.map +1 -0
  21. package/dist/cjs/src/adapters/index.js +63 -0
  22. package/dist/cjs/src/adapters/index.js.map +1 -0
  23. package/dist/cjs/src/adapters/native/NativeAdapter.js +268 -0
  24. package/dist/cjs/src/adapters/native/NativeAdapter.js.map +1 -0
  25. package/dist/cjs/src/adapters/native/index.js +10 -0
  26. package/dist/cjs/src/adapters/native/index.js.map +1 -0
  27. package/dist/cjs/src/adapters/types/index.js +9 -0
  28. package/dist/cjs/src/adapters/types/index.js.map +1 -0
  29. package/dist/cjs/src/ai/ToolExecutor.js +211 -0
  30. package/dist/cjs/src/ai/ToolExecutor.js.map +1 -0
  31. package/dist/cjs/src/ai/ToolMatcher.js +202 -0
  32. package/dist/cjs/src/ai/ToolMatcher.js.map +1 -0
  33. package/dist/cjs/src/ai/index.js +29 -0
  34. package/dist/cjs/src/ai/index.js.map +1 -0
  35. package/dist/cjs/src/architecture/createContainer.js +106 -0
  36. package/dist/cjs/src/architecture/createContainer.js.map +1 -0
  37. package/dist/cjs/src/architecture/initialize.js +125 -0
  38. package/dist/cjs/src/architecture/initialize.js.map +1 -0
  39. package/dist/cjs/src/architecture/registry.js +111 -0
  40. package/dist/cjs/src/architecture/registry.js.map +1 -0
  41. package/dist/cjs/src/background/architecture/ArchitectureInitializer.js +174 -0
  42. package/dist/cjs/src/background/architecture/ArchitectureInitializer.js.map +1 -0
  43. package/dist/cjs/src/background/architecture/Containers.js +46 -0
  44. package/dist/cjs/src/background/architecture/Containers.js.map +1 -0
  45. package/dist/cjs/src/background/architecture/DataContractTypes.js +28 -0
  46. package/dist/cjs/src/background/architecture/DataContractTypes.js.map +1 -0
  47. package/dist/cjs/src/background/architecture/index.js +24 -0
  48. package/dist/cjs/src/background/architecture/index.js.map +1 -0
  49. package/dist/cjs/src/background/navigation/NavigationGraph.js +71 -0
  50. package/dist/cjs/src/background/navigation/NavigationGraph.js.map +1 -0
  51. package/dist/cjs/src/background/navigation/RuntimeTreeBuilder.js +66 -0
  52. package/dist/cjs/src/background/navigation/RuntimeTreeBuilder.js.map +1 -0
  53. package/dist/cjs/src/background/navigation/useComponentTracking.js +20 -0
  54. package/dist/cjs/src/background/navigation/useComponentTracking.js.map +1 -0
  55. package/dist/cjs/src/background/registry/ComponentRegistry.js +340 -0
  56. package/dist/cjs/src/background/registry/ComponentRegistry.js.map +1 -0
  57. package/dist/cjs/src/background/registry/ToolRegistry.js +668 -0
  58. package/dist/cjs/src/background/registry/ToolRegistry.js.map +1 -0
  59. package/dist/cjs/src/browser.js +70 -0
  60. package/dist/cjs/src/browser.js.map +1 -0
  61. package/dist/cjs/src/components/ComponentScanner.js +362 -0
  62. package/dist/cjs/src/components/ComponentScanner.js.map +1 -0
  63. package/dist/cjs/src/components/index.js +24 -0
  64. package/dist/cjs/src/components/index.js.map +1 -0
  65. package/dist/cjs/src/data/TestDataManager.js +187 -0
  66. package/dist/cjs/src/data/TestDataManager.js.map +1 -0
  67. package/dist/cjs/src/data/index.js +23 -0
  68. package/dist/cjs/src/data/index.js.map +1 -0
  69. package/dist/cjs/src/decorators/Component.js +108 -0
  70. package/dist/cjs/src/decorators/Component.js.map +1 -0
  71. package/dist/cjs/src/decorators/ContainerHelpers.js +45 -0
  72. package/dist/cjs/src/decorators/ContainerHelpers.js.map +1 -0
  73. package/dist/cjs/src/decorators/SpecializedTools.js +386 -0
  74. package/dist/cjs/src/decorators/SpecializedTools.js.map +1 -0
  75. package/dist/cjs/src/decorators/Tool.js +700 -0
  76. package/dist/cjs/src/decorators/Tool.js.map +1 -0
  77. package/dist/cjs/src/decorators/ToolHelpers.js +261 -0
  78. package/dist/cjs/src/decorators/ToolHelpers.js.map +1 -0
  79. package/dist/cjs/src/decorators/ToolPreset.js +270 -0
  80. package/dist/cjs/src/decorators/ToolPreset.js.map +1 -0
  81. package/dist/cjs/src/decorators/ToolProvider.js +86 -0
  82. package/dist/cjs/src/decorators/ToolProvider.js.map +1 -0
  83. package/dist/cjs/src/decorators/index.js +44 -0
  84. package/dist/cjs/src/decorators/index.js.map +1 -0
  85. package/dist/cjs/src/execution/DOMExecutor.js +233 -0
  86. package/dist/cjs/src/execution/DOMExecutor.js.map +1 -0
  87. package/dist/cjs/src/execution/PlaywrightExecutor.js +196 -0
  88. package/dist/cjs/src/execution/PlaywrightExecutor.js.map +1 -0
  89. package/dist/cjs/src/exposure/ExposureCollector.js +358 -0
  90. package/dist/cjs/src/exposure/ExposureCollector.js.map +1 -0
  91. package/dist/cjs/src/exposure/index.js +26 -0
  92. package/dist/cjs/src/exposure/index.js.map +1 -0
  93. package/dist/cjs/src/index.js +187 -0
  94. package/dist/cjs/src/index.js.map +1 -0
  95. package/dist/cjs/src/interfaces/StatefulComponent.js +50 -0
  96. package/dist/cjs/src/interfaces/StatefulComponent.js.map +1 -0
  97. package/dist/cjs/src/name-contracts/ContractScanner.js +15 -0
  98. package/dist/cjs/src/name-contracts/ContractScanner.js.map +1 -0
  99. package/dist/cjs/src/name-contracts/RouteContractScanner.js +225 -0
  100. package/dist/cjs/src/name-contracts/RouteContractScanner.js.map +1 -0
  101. package/dist/cjs/src/name-contracts/index.js +15 -0
  102. package/dist/cjs/src/name-contracts/index.js.map +1 -0
  103. package/dist/cjs/src/names/createNames.js +86 -0
  104. package/dist/cjs/src/names/createNames.js.map +1 -0
  105. package/dist/cjs/src/react/hooks/useChatWithContext.js +221 -0
  106. package/dist/cjs/src/react/hooks/useChatWithContext.js.map +1 -0
  107. package/dist/cjs/src/react/index.js +28 -0
  108. package/dist/cjs/src/react/index.js.map +1 -0
  109. package/dist/cjs/src/react/useNavigationHandler.js +88 -0
  110. package/dist/cjs/src/react/useNavigationHandler.js.map +1 -0
  111. package/dist/cjs/src/react/usePersistedState.js +72 -0
  112. package/dist/cjs/src/react/usePersistedState.js.map +1 -0
  113. package/dist/cjs/src/react/useToolBinding.js +110 -0
  114. package/dist/cjs/src/react/useToolBinding.js.map +1 -0
  115. package/dist/cjs/src/routes/RouteContractGenerator.js +119 -0
  116. package/dist/cjs/src/routes/RouteContractGenerator.js.map +1 -0
  117. package/dist/cjs/src/routes/RouteContractsConfig.js +39 -0
  118. package/dist/cjs/src/routes/RouteContractsConfig.js.map +1 -0
  119. package/dist/cjs/src/routes/index.js +20 -0
  120. package/dist/cjs/src/routes/index.js.map +1 -0
  121. package/dist/cjs/src/routes/scanners/NameExtractor.js +193 -0
  122. package/dist/cjs/src/routes/scanners/NameExtractor.js.map +1 -0
  123. package/dist/cjs/src/routes/scanners/NextjsDynamicScanner.js +102 -0
  124. package/dist/cjs/src/routes/scanners/NextjsDynamicScanner.js.map +1 -0
  125. package/dist/cjs/src/routes/scanners/RouteScanner.js +13 -0
  126. package/dist/cjs/src/routes/scanners/RouteScanner.js.map +1 -0
  127. package/dist/cjs/src/storage/LocalStorageAdapter.js +87 -0
  128. package/dist/cjs/src/storage/LocalStorageAdapter.js.map +1 -0
  129. package/dist/cjs/src/storage/StateManager.js +299 -0
  130. package/dist/cjs/src/storage/StateManager.js.map +1 -0
  131. package/dist/cjs/src/storage/StorageAdapter.js +164 -0
  132. package/dist/cjs/src/storage/StorageAdapter.js.map +1 -0
  133. package/dist/cjs/src/storage/index.js +37 -0
  134. package/dist/cjs/src/storage/index.js.map +1 -0
  135. package/dist/cjs/src/testing/BrowserStateInjection.js +130 -0
  136. package/dist/cjs/src/testing/BrowserStateInjection.js.map +1 -0
  137. package/dist/cjs/src/testing/ComponentStateHelpers.js +200 -0
  138. package/dist/cjs/src/testing/ComponentStateHelpers.js.map +1 -0
  139. package/dist/cjs/src/testing/GherkinParser.js +252 -0
  140. package/dist/cjs/src/testing/GherkinParser.js.map +1 -0
  141. package/dist/cjs/src/testing/PlaywrightStateHelpers.js +254 -0
  142. package/dist/cjs/src/testing/PlaywrightStateHelpers.js.map +1 -0
  143. package/dist/cjs/src/testing/TestRunner.js +158 -0
  144. package/dist/cjs/src/testing/TestRunner.js.map +1 -0
  145. package/dist/cjs/src/testing/index.js +46 -0
  146. package/dist/cjs/src/testing/index.js.map +1 -0
  147. package/dist/cjs/src/testing/selectors.js +84 -0
  148. package/dist/cjs/src/testing/selectors.js.map +1 -0
  149. package/dist/cjs/src/tools/SystemTools.js +262 -0
  150. package/dist/cjs/src/tools/SystemTools.js.map +1 -0
  151. package/dist/cjs/src/types/ClassifiedTool.js +50 -0
  152. package/dist/cjs/src/types/ClassifiedTool.js.map +1 -0
  153. package/dist/cjs/src/types/ComponentState.js +30 -0
  154. package/dist/cjs/src/types/ComponentState.js.map +1 -0
  155. package/dist/cjs/src/types/DiscoverableToolProvider.js +9 -0
  156. package/dist/cjs/src/types/DiscoverableToolProvider.js.map +1 -0
  157. package/dist/cjs/src/types/ExposureState.js +25 -0
  158. package/dist/cjs/src/types/ExposureState.js.map +1 -0
  159. package/dist/cjs/src/types/NavigationGraph.js +8 -0
  160. package/dist/cjs/src/types/NavigationGraph.js.map +1 -0
  161. package/dist/cjs/src/types/OperationType.js +49 -0
  162. package/dist/cjs/src/types/OperationType.js.map +1 -0
  163. package/dist/cjs/src/types/StateManagers.js +39 -0
  164. package/dist/cjs/src/types/StateManagers.js.map +1 -0
  165. package/dist/cjs/src/types/Tool.js +41 -0
  166. package/dist/cjs/src/types/Tool.js.map +1 -0
  167. package/dist/cjs/src/types/ToolPermissions.js +54 -0
  168. package/dist/cjs/src/types/ToolPermissions.js.map +1 -0
  169. package/dist/cjs/src/types/ToolResult.js +25 -0
  170. package/dist/cjs/src/types/ToolResult.js.map +1 -0
  171. package/dist/cjs/src/types/index.js +59 -0
  172. package/dist/cjs/src/types/index.js.map +1 -0
  173. package/dist/cjs/src/ui/react/chat/ChatBubble.js +221 -0
  174. package/dist/cjs/src/ui/react/chat/ChatBubble.js.map +1 -0
  175. package/dist/esm/names/API.d.ts +77 -0
  176. package/dist/esm/names/API.d.ts.map +1 -0
  177. package/dist/esm/names/API.js +99 -0
  178. package/dist/esm/names/API.js.map +1 -0
  179. package/dist/esm/names/Components.d.ts +77 -0
  180. package/dist/esm/names/Components.d.ts.map +1 -0
  181. package/dist/esm/names/Components.js +99 -0
  182. package/dist/esm/names/Components.js.map +1 -0
  183. package/dist/esm/names/Containers.d.ts +84 -0
  184. package/dist/esm/names/Containers.d.ts.map +1 -0
  185. package/dist/esm/names/Containers.js +94 -0
  186. package/dist/esm/names/Containers.js.map +1 -0
  187. package/dist/esm/names/Functions.d.ts +87 -0
  188. package/dist/esm/names/Functions.d.ts.map +1 -0
  189. package/dist/esm/names/Functions.js +109 -0
  190. package/dist/esm/names/Functions.js.map +1 -0
  191. package/dist/esm/names/index.d.ts +187 -0
  192. package/dist/esm/names/index.d.ts.map +1 -0
  193. package/dist/esm/names/index.js +99 -0
  194. package/dist/esm/names/index.js.map +1 -0
  195. package/dist/esm/src/adapters/ChatUIProvider.d.ts +76 -0
  196. package/dist/esm/src/adapters/ChatUIProvider.d.ts.map +1 -0
  197. package/dist/esm/src/adapters/ChatUIProvider.js +136 -0
  198. package/dist/esm/src/adapters/ChatUIProvider.js.map +1 -0
  199. package/dist/esm/src/adapters/bridge.d.ts +145 -0
  200. package/dist/esm/src/adapters/bridge.d.ts.map +1 -0
  201. package/dist/esm/src/adapters/bridge.js +218 -0
  202. package/dist/esm/src/adapters/bridge.js.map +1 -0
  203. package/dist/esm/src/adapters/copilotkit/CopilotKitAdapter.d.ts +49 -0
  204. package/dist/esm/src/adapters/copilotkit/CopilotKitAdapter.d.ts.map +1 -0
  205. package/dist/esm/src/adapters/copilotkit/CopilotKitAdapter.js +251 -0
  206. package/dist/esm/src/adapters/copilotkit/CopilotKitAdapter.js.map +1 -0
  207. package/dist/esm/src/adapters/copilotkit/index.d.ts +6 -0
  208. package/dist/esm/src/adapters/copilotkit/index.d.ts.map +1 -0
  209. package/dist/esm/src/adapters/copilotkit/index.js +5 -0
  210. package/dist/esm/src/adapters/copilotkit/index.js.map +1 -0
  211. package/dist/esm/src/adapters/index.d.ts +31 -0
  212. package/dist/esm/src/adapters/index.d.ts.map +1 -0
  213. package/dist/esm/src/adapters/index.js +32 -0
  214. package/dist/esm/src/adapters/index.js.map +1 -0
  215. package/dist/esm/src/adapters/native/NativeAdapter.d.ts +47 -0
  216. package/dist/esm/src/adapters/native/NativeAdapter.d.ts.map +1 -0
  217. package/dist/esm/src/adapters/native/NativeAdapter.js +230 -0
  218. package/dist/esm/src/adapters/native/NativeAdapter.js.map +1 -0
  219. package/dist/esm/src/adapters/native/index.d.ts +6 -0
  220. package/dist/esm/src/adapters/native/index.d.ts.map +1 -0
  221. package/dist/esm/src/adapters/native/index.js +5 -0
  222. package/dist/esm/src/adapters/native/index.js.map +1 -0
  223. package/dist/esm/src/adapters/types/index.d.ts +155 -0
  224. package/dist/esm/src/adapters/types/index.d.ts.map +1 -0
  225. package/dist/esm/src/adapters/types/index.js +8 -0
  226. package/dist/esm/src/adapters/types/index.js.map +1 -0
  227. package/dist/esm/src/ai/ToolExecutor.d.ts +49 -0
  228. package/dist/esm/src/ai/ToolExecutor.d.ts.map +1 -0
  229. package/dist/esm/src/ai/ToolExecutor.js +174 -0
  230. package/dist/esm/src/ai/ToolExecutor.js.map +1 -0
  231. package/dist/esm/src/ai/ToolMatcher.d.ts +61 -0
  232. package/dist/esm/src/ai/ToolMatcher.d.ts.map +1 -0
  233. package/dist/esm/src/ai/ToolMatcher.js +198 -0
  234. package/dist/esm/src/ai/ToolMatcher.js.map +1 -0
  235. package/dist/esm/src/ai/index.d.ts +9 -0
  236. package/dist/esm/src/ai/index.d.ts.map +1 -0
  237. package/dist/esm/src/ai/index.js +13 -0
  238. package/dist/esm/src/ai/index.js.map +1 -0
  239. package/dist/esm/src/architecture/createContainer.d.ts +60 -0
  240. package/dist/esm/src/architecture/createContainer.d.ts.map +1 -0
  241. package/dist/esm/src/architecture/createContainer.js +102 -0
  242. package/dist/esm/src/architecture/createContainer.js.map +1 -0
  243. package/dist/esm/src/architecture/initialize.d.ts +81 -0
  244. package/dist/esm/src/architecture/initialize.d.ts.map +1 -0
  245. package/dist/esm/src/architecture/initialize.js +121 -0
  246. package/dist/esm/src/architecture/initialize.js.map +1 -0
  247. package/dist/esm/src/architecture/registry.d.ts +61 -0
  248. package/dist/esm/src/architecture/registry.d.ts.map +1 -0
  249. package/dist/esm/src/architecture/registry.js +107 -0
  250. package/dist/esm/src/architecture/registry.js.map +1 -0
  251. package/dist/esm/src/background/architecture/ArchitectureInitializer.d.ts +95 -0
  252. package/dist/esm/src/background/architecture/ArchitectureInitializer.d.ts.map +1 -0
  253. package/dist/esm/src/background/architecture/ArchitectureInitializer.js +170 -0
  254. package/dist/esm/src/background/architecture/ArchitectureInitializer.js.map +1 -0
  255. package/dist/esm/src/background/architecture/Containers.d.ts +52 -0
  256. package/dist/esm/src/background/architecture/Containers.d.ts.map +1 -0
  257. package/dist/esm/src/background/architecture/Containers.js +40 -0
  258. package/dist/esm/src/background/architecture/Containers.js.map +1 -0
  259. package/dist/esm/src/background/architecture/DataContractTypes.d.ts +33 -0
  260. package/dist/esm/src/background/architecture/DataContractTypes.d.ts.map +1 -0
  261. package/dist/esm/src/background/architecture/DataContractTypes.js +22 -0
  262. package/dist/esm/src/background/architecture/DataContractTypes.js.map +1 -0
  263. package/dist/esm/src/background/architecture/index.d.ts +12 -0
  264. package/dist/esm/src/background/architecture/index.d.ts.map +1 -0
  265. package/dist/esm/src/background/architecture/index.js +13 -0
  266. package/dist/esm/src/background/architecture/index.js.map +1 -0
  267. package/dist/esm/src/background/navigation/NavigationGraph.d.ts +48 -0
  268. package/dist/esm/src/background/navigation/NavigationGraph.d.ts.map +1 -0
  269. package/dist/esm/src/background/navigation/NavigationGraph.js +67 -0
  270. package/dist/esm/src/background/navigation/NavigationGraph.js.map +1 -0
  271. package/dist/esm/src/background/navigation/RuntimeTreeBuilder.d.ts +30 -0
  272. package/dist/esm/src/background/navigation/RuntimeTreeBuilder.d.ts.map +1 -0
  273. package/dist/esm/src/background/navigation/RuntimeTreeBuilder.js +60 -0
  274. package/dist/esm/src/background/navigation/RuntimeTreeBuilder.js.map +1 -0
  275. package/dist/esm/src/background/navigation/useComponentTracking.d.ts +10 -0
  276. package/dist/esm/src/background/navigation/useComponentTracking.d.ts.map +1 -0
  277. package/dist/esm/src/background/navigation/useComponentTracking.js +17 -0
  278. package/dist/esm/src/background/navigation/useComponentTracking.js.map +1 -0
  279. package/dist/esm/src/background/registry/ComponentRegistry.d.ts +192 -0
  280. package/dist/esm/src/background/registry/ComponentRegistry.d.ts.map +1 -0
  281. package/dist/esm/src/background/registry/ComponentRegistry.js +336 -0
  282. package/dist/esm/src/background/registry/ComponentRegistry.js.map +1 -0
  283. package/dist/esm/src/background/registry/ToolRegistry.d.ts +232 -0
  284. package/dist/esm/src/background/registry/ToolRegistry.d.ts.map +1 -0
  285. package/dist/esm/src/background/registry/ToolRegistry.js +664 -0
  286. package/dist/esm/src/background/registry/ToolRegistry.js.map +1 -0
  287. package/dist/esm/src/browser.d.ts +21 -0
  288. package/dist/esm/src/browser.d.ts.map +1 -0
  289. package/dist/esm/src/browser.js +31 -0
  290. package/dist/esm/src/browser.js.map +1 -0
  291. package/dist/esm/src/components/ComponentScanner.d.ts +99 -0
  292. package/dist/esm/src/components/ComponentScanner.d.ts.map +1 -0
  293. package/dist/esm/src/components/ComponentScanner.js +325 -0
  294. package/dist/esm/src/components/ComponentScanner.js.map +1 -0
  295. package/dist/esm/src/components/index.d.ts +9 -0
  296. package/dist/esm/src/components/index.d.ts.map +1 -0
  297. package/dist/esm/src/components/index.js +8 -0
  298. package/dist/esm/src/components/index.js.map +1 -0
  299. package/dist/esm/src/data/TestDataManager.d.ts +125 -0
  300. package/dist/esm/src/data/TestDataManager.d.ts.map +1 -0
  301. package/dist/esm/src/data/TestDataManager.js +183 -0
  302. package/dist/esm/src/data/TestDataManager.js.map +1 -0
  303. package/dist/esm/src/data/index.d.ts +7 -0
  304. package/dist/esm/src/data/index.d.ts.map +1 -0
  305. package/dist/esm/src/data/index.js +7 -0
  306. package/dist/esm/src/data/index.js.map +1 -0
  307. package/dist/esm/src/decorators/Component.d.ts +59 -0
  308. package/dist/esm/src/decorators/Component.d.ts.map +1 -0
  309. package/dist/esm/src/decorators/Component.js +103 -0
  310. package/dist/esm/src/decorators/Component.js.map +1 -0
  311. package/dist/esm/src/decorators/ContainerHelpers.d.ts +26 -0
  312. package/dist/esm/src/decorators/ContainerHelpers.d.ts.map +1 -0
  313. package/dist/esm/src/decorators/ContainerHelpers.js +42 -0
  314. package/dist/esm/src/decorators/ContainerHelpers.js.map +1 -0
  315. package/dist/esm/src/decorators/SpecializedTools.d.ts +218 -0
  316. package/dist/esm/src/decorators/SpecializedTools.d.ts.map +1 -0
  317. package/dist/esm/src/decorators/SpecializedTools.js +383 -0
  318. package/dist/esm/src/decorators/SpecializedTools.js.map +1 -0
  319. package/dist/esm/src/decorators/Tool.d.ts +210 -0
  320. package/dist/esm/src/decorators/Tool.d.ts.map +1 -0
  321. package/dist/esm/src/decorators/Tool.js +694 -0
  322. package/dist/esm/src/decorators/Tool.js.map +1 -0
  323. package/dist/esm/src/decorators/ToolHelpers.d.ts +74 -0
  324. package/dist/esm/src/decorators/ToolHelpers.d.ts.map +1 -0
  325. package/dist/esm/src/decorators/ToolHelpers.js +219 -0
  326. package/dist/esm/src/decorators/ToolHelpers.js.map +1 -0
  327. package/dist/esm/src/decorators/ToolPreset.d.ts +138 -0
  328. package/dist/esm/src/decorators/ToolPreset.d.ts.map +1 -0
  329. package/dist/esm/src/decorators/ToolPreset.js +259 -0
  330. package/dist/esm/src/decorators/ToolPreset.js.map +1 -0
  331. package/dist/esm/src/decorators/ToolProvider.d.ts +65 -0
  332. package/dist/esm/src/decorators/ToolProvider.d.ts.map +1 -0
  333. package/dist/esm/src/decorators/ToolProvider.js +81 -0
  334. package/dist/esm/src/decorators/ToolProvider.js.map +1 -0
  335. package/dist/esm/src/decorators/index.d.ts +13 -0
  336. package/dist/esm/src/decorators/index.d.ts.map +1 -0
  337. package/dist/esm/src/decorators/index.js +14 -0
  338. package/dist/esm/src/decorators/index.js.map +1 -0
  339. package/dist/esm/src/execution/DOMExecutor.d.ts +43 -0
  340. package/dist/esm/src/execution/DOMExecutor.d.ts.map +1 -0
  341. package/dist/esm/src/execution/DOMExecutor.js +229 -0
  342. package/dist/esm/src/execution/DOMExecutor.js.map +1 -0
  343. package/dist/esm/src/execution/PlaywrightExecutor.d.ts +38 -0
  344. package/dist/esm/src/execution/PlaywrightExecutor.d.ts.map +1 -0
  345. package/dist/esm/src/execution/PlaywrightExecutor.js +192 -0
  346. package/dist/esm/src/execution/PlaywrightExecutor.js.map +1 -0
  347. package/dist/esm/src/exposure/ExposureCollector.d.ts +88 -0
  348. package/dist/esm/src/exposure/ExposureCollector.d.ts.map +1 -0
  349. package/dist/esm/src/exposure/ExposureCollector.js +354 -0
  350. package/dist/esm/src/exposure/ExposureCollector.js.map +1 -0
  351. package/dist/esm/src/exposure/index.d.ts +8 -0
  352. package/dist/esm/src/exposure/index.d.ts.map +1 -0
  353. package/dist/esm/src/exposure/index.js +10 -0
  354. package/dist/esm/src/exposure/index.js.map +1 -0
  355. package/dist/esm/src/index.d.ts +49 -0
  356. package/dist/esm/src/index.d.ts.map +1 -0
  357. package/dist/esm/src/index.js +79 -0
  358. package/dist/esm/src/index.js.map +1 -0
  359. package/dist/esm/src/interfaces/StatefulComponent.d.ts +72 -0
  360. package/dist/esm/src/interfaces/StatefulComponent.d.ts.map +1 -0
  361. package/dist/esm/src/interfaces/StatefulComponent.js +47 -0
  362. package/dist/esm/src/interfaces/StatefulComponent.js.map +1 -0
  363. package/dist/esm/src/name-contracts/ContractScanner.d.ts +61 -0
  364. package/dist/esm/src/name-contracts/ContractScanner.d.ts.map +1 -0
  365. package/dist/esm/src/name-contracts/ContractScanner.js +11 -0
  366. package/dist/esm/src/name-contracts/ContractScanner.js.map +1 -0
  367. package/dist/esm/src/name-contracts/RouteContractScanner.d.ts +30 -0
  368. package/dist/esm/src/name-contracts/RouteContractScanner.d.ts.map +1 -0
  369. package/dist/esm/src/name-contracts/RouteContractScanner.js +188 -0
  370. package/dist/esm/src/name-contracts/RouteContractScanner.js.map +1 -0
  371. package/dist/esm/src/name-contracts/index.d.ts +10 -0
  372. package/dist/esm/src/name-contracts/index.d.ts.map +1 -0
  373. package/dist/esm/src/name-contracts/index.js +10 -0
  374. package/dist/esm/src/name-contracts/index.js.map +1 -0
  375. package/dist/esm/src/names/createNames.d.ts +49 -0
  376. package/dist/esm/src/names/createNames.d.ts.map +1 -0
  377. package/dist/esm/src/names/createNames.js +81 -0
  378. package/dist/esm/src/names/createNames.js.map +1 -0
  379. package/dist/esm/src/react/hooks/useChatWithContext.d.ts +68 -0
  380. package/dist/esm/src/react/hooks/useChatWithContext.d.ts.map +1 -0
  381. package/dist/esm/src/react/hooks/useChatWithContext.js +218 -0
  382. package/dist/esm/src/react/hooks/useChatWithContext.js.map +1 -0
  383. package/dist/esm/src/react/index.d.ts +12 -0
  384. package/dist/esm/src/react/index.d.ts.map +1 -0
  385. package/dist/esm/src/react/index.js +21 -0
  386. package/dist/esm/src/react/index.js.map +1 -0
  387. package/dist/esm/src/react/useNavigationHandler.d.ts +42 -0
  388. package/dist/esm/src/react/useNavigationHandler.d.ts.map +1 -0
  389. package/dist/esm/src/react/useNavigationHandler.js +85 -0
  390. package/dist/esm/src/react/useNavigationHandler.js.map +1 -0
  391. package/dist/esm/src/react/usePersistedState.d.ts +13 -0
  392. package/dist/esm/src/react/usePersistedState.d.ts.map +1 -0
  393. package/dist/esm/src/react/usePersistedState.js +69 -0
  394. package/dist/esm/src/react/usePersistedState.js.map +1 -0
  395. package/dist/esm/src/react/useToolBinding.d.ts +8 -0
  396. package/dist/esm/src/react/useToolBinding.d.ts.map +1 -0
  397. package/dist/esm/src/react/useToolBinding.js +107 -0
  398. package/dist/esm/src/react/useToolBinding.js.map +1 -0
  399. package/dist/esm/src/routes/RouteContractGenerator.d.ts +37 -0
  400. package/dist/esm/src/routes/RouteContractGenerator.d.ts.map +1 -0
  401. package/dist/esm/src/routes/RouteContractGenerator.js +115 -0
  402. package/dist/esm/src/routes/RouteContractGenerator.js.map +1 -0
  403. package/dist/esm/src/routes/RouteContractsConfig.d.ts +93 -0
  404. package/dist/esm/src/routes/RouteContractsConfig.d.ts.map +1 -0
  405. package/dist/esm/src/routes/RouteContractsConfig.js +36 -0
  406. package/dist/esm/src/routes/RouteContractsConfig.js.map +1 -0
  407. package/dist/esm/src/routes/index.d.ts +13 -0
  408. package/dist/esm/src/routes/index.d.ts.map +1 -0
  409. package/dist/esm/src/routes/index.js +13 -0
  410. package/dist/esm/src/routes/index.js.map +1 -0
  411. package/dist/esm/src/routes/scanners/NameExtractor.d.ts +36 -0
  412. package/dist/esm/src/routes/scanners/NameExtractor.d.ts.map +1 -0
  413. package/dist/esm/src/routes/scanners/NameExtractor.js +156 -0
  414. package/dist/esm/src/routes/scanners/NameExtractor.js.map +1 -0
  415. package/dist/esm/src/routes/scanners/NextjsDynamicScanner.d.ts +35 -0
  416. package/dist/esm/src/routes/scanners/NextjsDynamicScanner.d.ts.map +1 -0
  417. package/dist/esm/src/routes/scanners/NextjsDynamicScanner.js +98 -0
  418. package/dist/esm/src/routes/scanners/NextjsDynamicScanner.js.map +1 -0
  419. package/dist/esm/src/routes/scanners/RouteScanner.d.ts +64 -0
  420. package/dist/esm/src/routes/scanners/RouteScanner.d.ts.map +1 -0
  421. package/dist/esm/src/routes/scanners/RouteScanner.js +9 -0
  422. package/dist/esm/src/routes/scanners/RouteScanner.js.map +1 -0
  423. package/dist/esm/src/storage/LocalStorageAdapter.d.ts +29 -0
  424. package/dist/esm/src/storage/LocalStorageAdapter.d.ts.map +1 -0
  425. package/dist/esm/src/storage/LocalStorageAdapter.js +83 -0
  426. package/dist/esm/src/storage/LocalStorageAdapter.js.map +1 -0
  427. package/dist/esm/src/storage/StateManager.d.ts +175 -0
  428. package/dist/esm/src/storage/StateManager.d.ts.map +1 -0
  429. package/dist/esm/src/storage/StateManager.js +295 -0
  430. package/dist/esm/src/storage/StateManager.js.map +1 -0
  431. package/dist/esm/src/storage/StorageAdapter.d.ts +94 -0
  432. package/dist/esm/src/storage/StorageAdapter.d.ts.map +1 -0
  433. package/dist/esm/src/storage/StorageAdapter.js +158 -0
  434. package/dist/esm/src/storage/StorageAdapter.js.map +1 -0
  435. package/dist/esm/src/storage/index.d.ts +12 -0
  436. package/dist/esm/src/storage/index.d.ts.map +1 -0
  437. package/dist/esm/src/storage/index.js +17 -0
  438. package/dist/esm/src/storage/index.js.map +1 -0
  439. package/dist/esm/src/testing/BrowserStateInjection.d.ts +74 -0
  440. package/dist/esm/src/testing/BrowserStateInjection.d.ts.map +1 -0
  441. package/dist/esm/src/testing/BrowserStateInjection.js +126 -0
  442. package/dist/esm/src/testing/BrowserStateInjection.js.map +1 -0
  443. package/dist/esm/src/testing/ComponentStateHelpers.d.ts +121 -0
  444. package/dist/esm/src/testing/ComponentStateHelpers.d.ts.map +1 -0
  445. package/dist/esm/src/testing/ComponentStateHelpers.js +190 -0
  446. package/dist/esm/src/testing/ComponentStateHelpers.js.map +1 -0
  447. package/dist/esm/src/testing/GherkinParser.d.ts +87 -0
  448. package/dist/esm/src/testing/GherkinParser.d.ts.map +1 -0
  449. package/dist/esm/src/testing/GherkinParser.js +248 -0
  450. package/dist/esm/src/testing/GherkinParser.js.map +1 -0
  451. package/dist/esm/src/testing/PlaywrightStateHelpers.d.ts +163 -0
  452. package/dist/esm/src/testing/PlaywrightStateHelpers.d.ts.map +1 -0
  453. package/dist/esm/src/testing/PlaywrightStateHelpers.js +242 -0
  454. package/dist/esm/src/testing/PlaywrightStateHelpers.js.map +1 -0
  455. package/dist/esm/src/testing/TestRunner.d.ts +50 -0
  456. package/dist/esm/src/testing/TestRunner.d.ts.map +1 -0
  457. package/dist/esm/src/testing/TestRunner.js +121 -0
  458. package/dist/esm/src/testing/TestRunner.js.map +1 -0
  459. package/dist/esm/src/testing/index.d.ts +12 -0
  460. package/dist/esm/src/testing/index.d.ts.map +1 -0
  461. package/dist/esm/src/testing/index.js +25 -0
  462. package/dist/esm/src/testing/index.js.map +1 -0
  463. package/dist/esm/src/testing/selectors.d.ts +65 -0
  464. package/dist/esm/src/testing/selectors.d.ts.map +1 -0
  465. package/dist/esm/src/testing/selectors.js +76 -0
  466. package/dist/esm/src/testing/selectors.js.map +1 -0
  467. package/dist/esm/src/tools/SystemTools.d.ts +139 -0
  468. package/dist/esm/src/tools/SystemTools.d.ts.map +1 -0
  469. package/dist/esm/src/tools/SystemTools.js +258 -0
  470. package/dist/esm/src/tools/SystemTools.js.map +1 -0
  471. package/dist/esm/src/types/ClassifiedTool.d.ts +61 -0
  472. package/dist/esm/src/types/ClassifiedTool.d.ts.map +1 -0
  473. package/dist/esm/src/types/ClassifiedTool.js +47 -0
  474. package/dist/esm/src/types/ClassifiedTool.js.map +1 -0
  475. package/dist/esm/src/types/ComponentState.d.ts +207 -0
  476. package/dist/esm/src/types/ComponentState.d.ts.map +1 -0
  477. package/dist/esm/src/types/ComponentState.js +25 -0
  478. package/dist/esm/src/types/ComponentState.js.map +1 -0
  479. package/dist/esm/src/types/DiscoverableToolProvider.d.ts +59 -0
  480. package/dist/esm/src/types/DiscoverableToolProvider.d.ts.map +1 -0
  481. package/dist/esm/src/types/DiscoverableToolProvider.js +8 -0
  482. package/dist/esm/src/types/DiscoverableToolProvider.js.map +1 -0
  483. package/dist/esm/src/types/ExposureState.d.ts +75 -0
  484. package/dist/esm/src/types/ExposureState.d.ts.map +1 -0
  485. package/dist/esm/src/types/ExposureState.js +22 -0
  486. package/dist/esm/src/types/ExposureState.js.map +1 -0
  487. package/dist/esm/src/types/NavigationGraph.d.ts +98 -0
  488. package/dist/esm/src/types/NavigationGraph.d.ts.map +1 -0
  489. package/dist/esm/src/types/NavigationGraph.js +7 -0
  490. package/dist/esm/src/types/NavigationGraph.js.map +1 -0
  491. package/dist/esm/src/types/OperationType.d.ts +45 -0
  492. package/dist/esm/src/types/OperationType.d.ts.map +1 -0
  493. package/dist/esm/src/types/OperationType.js +46 -0
  494. package/dist/esm/src/types/OperationType.js.map +1 -0
  495. package/dist/esm/src/types/StateManagers.d.ts +35 -0
  496. package/dist/esm/src/types/StateManagers.d.ts.map +1 -0
  497. package/dist/esm/src/types/StateManagers.js +36 -0
  498. package/dist/esm/src/types/StateManagers.js.map +1 -0
  499. package/dist/esm/src/types/Tool.d.ts +162 -0
  500. package/dist/esm/src/types/Tool.d.ts.map +1 -0
  501. package/dist/esm/src/types/Tool.js +38 -0
  502. package/dist/esm/src/types/Tool.js.map +1 -0
  503. package/dist/esm/src/types/ToolPermissions.d.ts +73 -0
  504. package/dist/esm/src/types/ToolPermissions.d.ts.map +1 -0
  505. package/dist/esm/src/types/ToolPermissions.js +51 -0
  506. package/dist/esm/src/types/ToolPermissions.js.map +1 -0
  507. package/dist/esm/src/types/ToolResult.d.ts +129 -0
  508. package/dist/esm/src/types/ToolResult.d.ts.map +1 -0
  509. package/dist/esm/src/types/ToolResult.js +22 -0
  510. package/dist/esm/src/types/ToolResult.js.map +1 -0
  511. package/dist/esm/src/types/index.d.ts +47 -0
  512. package/dist/esm/src/types/index.d.ts.map +1 -0
  513. package/dist/esm/src/types/index.js +42 -0
  514. package/dist/esm/src/types/index.js.map +1 -0
  515. package/dist/esm/src/ui/react/chat/ChatBubble.d.ts +23 -0
  516. package/dist/esm/src/ui/react/chat/ChatBubble.d.ts.map +1 -0
  517. package/dist/esm/src/ui/react/chat/ChatBubble.js +184 -0
  518. package/dist/esm/src/ui/react/chat/ChatBubble.js.map +1 -0
  519. package/package.json +118 -0
@@ -0,0 +1,218 @@
1
+ /**
2
+ * Auto-Bridging Utilities
3
+ *
4
+ * Zero-config bridging from @supernal-interface registries to any ChatUIAdapter.
5
+ * These utilities automatically expose tools and state to the chat UI.
6
+ */
7
+ import { ToolRegistry } from '../background/registry/ToolRegistry.js';
8
+ /**
9
+ * Bridge ToolRegistry to a ChatUIAdapter
10
+ *
11
+ * Automatically registers all AI-enabled tools from ToolRegistry
12
+ * with the adapter, converting them to the adapter's native format.
13
+ *
14
+ * @example
15
+ * ```typescript
16
+ * const adapter = createCopilotKitAdapter();
17
+ * const unsubscribe = bridgeToolRegistry(adapter);
18
+ *
19
+ * // Later, to stop watching for new tools:
20
+ * unsubscribe();
21
+ * ```
22
+ */
23
+ export function bridgeToolRegistry(adapter, options = {}) {
24
+ const { filter = (tool) => tool.aiEnabled === true, watch = true, onBridge, } = options;
25
+ // Get current tools and register them
26
+ const allTools = Array.from(ToolRegistry.getAllTools().values());
27
+ const filteredTools = allTools.filter(filter);
28
+ adapter.registerTools(filteredTools);
29
+ onBridge?.(filteredTools);
30
+ // eslint-disable-next-line no-console
31
+ console.log(`[bridgeToolRegistry] Bridged ${filteredTools.length} tools to ${adapter.name}`);
32
+ // Watch for new registrations if enabled
33
+ if (watch) {
34
+ // Note: ToolRegistry.onRegister would need to be implemented
35
+ // For now, return a no-op unsubscribe
36
+ return () => {
37
+ // eslint-disable-next-line no-console
38
+ console.log(`[bridgeToolRegistry] Unsubscribed from ${adapter.name}`);
39
+ };
40
+ }
41
+ return () => { };
42
+ }
43
+ /**
44
+ * Bridge ComponentRegistry state to a ChatUIAdapter as readables
45
+ *
46
+ * Automatically exposes component state so the AI can "see"
47
+ * the current state of the application.
48
+ *
49
+ * @example
50
+ * ```typescript
51
+ * const adapter = createCopilotKitAdapter();
52
+ * bridgeComponentState(adapter);
53
+ *
54
+ * // AI can now see: "Counter is currently at 5"
55
+ * ```
56
+ */
57
+ export function bridgeComponentState(adapter, options = {}) {
58
+ const { filter: _filter = () => true, descriptionGenerator: _descriptionGenerator = defaultDescriptionGenerator, } = options;
59
+ const readables = [];
60
+ // Try to get components from ComponentRegistry
61
+ // Note: ComponentRegistry may not have getAllComponents - check if it exists
62
+ try {
63
+ // Get registered component IDs from metadata
64
+ // ComponentRegistry stores metadata internally, we can access via getState
65
+ // For now, we'll register readables that are explicitly provided
66
+ // This is a placeholder until ComponentRegistry exposes getAllComponents
67
+ // eslint-disable-next-line no-console
68
+ console.log(`[bridgeComponentState] ComponentRegistry state bridging not yet implemented`);
69
+ // eslint-disable-next-line no-console
70
+ console.log(`[bridgeComponentState] Use registerReadables directly on the adapter for now`);
71
+ }
72
+ catch (error) {
73
+ // eslint-disable-next-line no-console
74
+ console.warn(`[bridgeComponentState] Could not bridge component state:`, error);
75
+ }
76
+ adapter.registerReadables(readables);
77
+ // eslint-disable-next-line no-console
78
+ console.log(`[bridgeComponentState] Bridged ${readables.length} component states to ${adapter.name}`);
79
+ return () => {
80
+ // Cleanup subscriptions if needed
81
+ };
82
+ }
83
+ /**
84
+ * Manually register a readable state
85
+ *
86
+ * Use this when you want to expose specific state to the AI.
87
+ *
88
+ * @example
89
+ * ```typescript
90
+ * const adapter = createCopilotKitAdapter();
91
+ *
92
+ * // Register a counter's state
93
+ * registerReadable(adapter, {
94
+ * id: 'counter',
95
+ * description: 'Current counter value',
96
+ * getValue: () => counterState.value,
97
+ * });
98
+ * ```
99
+ */
100
+ export function registerReadable(adapter, readable) {
101
+ adapter.registerReadables([readable]);
102
+ }
103
+ /**
104
+ * Default description generator for component state
105
+ */
106
+ function defaultDescriptionGenerator(id, state) {
107
+ const componentName = id.split('.').pop() || id;
108
+ if (state === null || state === undefined) {
109
+ return `${componentName} has no state`;
110
+ }
111
+ if (typeof state === 'object') {
112
+ const keys = Object.keys(state);
113
+ if (keys.length === 0) {
114
+ return `${componentName} is empty`;
115
+ }
116
+ if (keys.length === 1) {
117
+ const key = keys[0];
118
+ const value = state[key];
119
+ return `${componentName} ${key} is ${formatValue(value)}`;
120
+ }
121
+ return `${componentName} state: ${JSON.stringify(state)}`;
122
+ }
123
+ return `${componentName} is ${formatValue(state)}`;
124
+ }
125
+ /**
126
+ * Format a value for display
127
+ */
128
+ function formatValue(value) {
129
+ if (typeof value === 'boolean') {
130
+ return value ? 'enabled' : 'disabled';
131
+ }
132
+ if (typeof value === 'number') {
133
+ return String(value);
134
+ }
135
+ if (typeof value === 'string') {
136
+ return `"${value}"`;
137
+ }
138
+ return JSON.stringify(value);
139
+ }
140
+ /**
141
+ * Create an audit trail for tool executions
142
+ *
143
+ * Tracks all tool executions through the adapter for compliance,
144
+ * debugging, and analytics purposes.
145
+ *
146
+ * @example
147
+ * ```typescript
148
+ * const adapter = createCopilotKitAdapter();
149
+ * const { getExecutions, clear, unsubscribe } = createAuditTrail(adapter);
150
+ *
151
+ * // Later:
152
+ * const history = getExecutions();
153
+ * console.log(`${history.length} tools executed`);
154
+ * ```
155
+ */
156
+ export function createAuditTrail(adapter, options = {}) {
157
+ const { maxExecutions = 100, logToConsole = false, logger, filter = () => true, } = options;
158
+ const executions = [];
159
+ const callback = (execution) => {
160
+ if (!filter(execution))
161
+ return;
162
+ executions.push(execution);
163
+ // Trim if over max
164
+ while (executions.length > maxExecutions) {
165
+ executions.shift();
166
+ }
167
+ // Log if enabled
168
+ if (logToConsole) {
169
+ const status = execution.success ? '✅' : '❌';
170
+ // eslint-disable-next-line no-console
171
+ console.log(`[AuditTrail] ${status} ${execution.toolName} (${execution.duration}ms)`, execution.args);
172
+ }
173
+ // Custom logger
174
+ logger?.(execution);
175
+ };
176
+ const unsubscribe = adapter.onToolExecution(callback);
177
+ return {
178
+ getExecutions: () => [...executions],
179
+ getLastExecution: () => executions[executions.length - 1],
180
+ clear: () => {
181
+ executions.length = 0;
182
+ },
183
+ unsubscribe,
184
+ };
185
+ }
186
+ /**
187
+ * Combined bridge setup for convenience
188
+ *
189
+ * Sets up tool bridging, state bridging, and audit trail in one call.
190
+ *
191
+ * @example
192
+ * ```typescript
193
+ * const adapter = createCopilotKitAdapter();
194
+ * const { audit, cleanup } = setupBridge(adapter);
195
+ *
196
+ * // Use the app...
197
+ *
198
+ * // Check audit trail
199
+ * console.log(audit.getExecutions());
200
+ *
201
+ * // Cleanup when done
202
+ * cleanup();
203
+ * ```
204
+ */
205
+ export function setupBridge(adapter, options = {}) {
206
+ const toolCleanup = bridgeToolRegistry(adapter, options.tools);
207
+ const stateCleanup = bridgeComponentState(adapter, options.state);
208
+ const audit = createAuditTrail(adapter, options.audit);
209
+ return {
210
+ audit,
211
+ cleanup: () => {
212
+ toolCleanup();
213
+ stateCleanup();
214
+ audit.unsubscribe();
215
+ },
216
+ };
217
+ }
218
+ //# sourceMappingURL=bridge.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bridge.js","sourceRoot":"","sources":["../../../../src/adapters/bridge.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,49 @@
1
+ /**
2
+ * CopilotKit Adapter
3
+ *
4
+ * Implements ChatUIAdapter for CopilotKit integration.
5
+ * Provides wrapper components around CopilotKit with our API.
6
+ *
7
+ * Strategy: Hybrid approach
8
+ * - Bridge: Our ToolRegistry → useCopilotAction (for tool execution)
9
+ * - Wrapper: Our components → CopilotKit components (for consistent API)
10
+ */
11
+ import React from 'react';
12
+ import type { ChatUIAdapter, ChatUIProps, ReadableState, ToolExecutionCallback } from '../types';
13
+ import type { ToolMetadata } from '../../decorators/Tool';
14
+ /**
15
+ * Configuration for CopilotKit adapter
16
+ */
17
+ export interface CopilotKitAdapterConfig {
18
+ /** Runtime URL for CopilotKit backend */
19
+ runtimeUrl?: string;
20
+ /** Default system prompt */
21
+ systemPrompt?: string;
22
+ /** Whether to auto-import CopilotKit CSS */
23
+ importStyles?: boolean;
24
+ }
25
+ /**
26
+ * CopilotKit Adapter Implementation
27
+ */
28
+ export declare class CopilotKitAdapter implements ChatUIAdapter {
29
+ readonly name = "copilotkit";
30
+ private tools;
31
+ private readables;
32
+ private executionCallbacks;
33
+ private config;
34
+ private initialized;
35
+ constructor(config?: CopilotKitAdapterConfig);
36
+ initialize(): Promise<void>;
37
+ registerTools(tools: ToolMetadata[]): void;
38
+ registerReadables(readables: ReadableState[]): void;
39
+ onToolExecution(callback: ToolExecutionCallback): () => void;
40
+ private notifyExecution;
41
+ isReady(): boolean;
42
+ dispose(): void;
43
+ render(props: ChatUIProps): React.ReactNode;
44
+ }
45
+ /**
46
+ * Factory function for creating CopilotKit adapter
47
+ */
48
+ export declare function createCopilotKitAdapter(config?: CopilotKitAdapterConfig): CopilotKitAdapter;
49
+ //# sourceMappingURL=CopilotKitAdapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CopilotKitAdapter.d.ts","sourceRoot":"","sources":["../../../../../src/adapters/copilotkit/CopilotKitAdapter.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAA4B,MAAM,OAAO,CAAC;AACjD,OAAO,KAAK,EACV,aAAa,EACb,WAAW,EACX,aAAa,EAEb,qBAAqB,EACtB,MAAM,UAAU,CAAC;AAClB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAgC1D;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,yCAAyC;IACzC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,4BAA4B;IAC5B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,4CAA4C;IAC5C,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAqBD;;GAEG;AACH,qBAAa,iBAAkB,YAAW,aAAa;IACrD,QAAQ,CAAC,IAAI,gBAAgB;IAE7B,OAAO,CAAC,KAAK,CAAsB;IACnC,OAAO,CAAC,SAAS,CAAuB;IACxC,OAAO,CAAC,kBAAkB,CAA+B;IACzD,OAAO,CAAC,MAAM,CAA0B;IACxC,OAAO,CAAC,WAAW,CAAS;gBAEhB,MAAM,GAAE,uBAA4B;IAS1C,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAqBjC,aAAa,CAAC,KAAK,EAAE,YAAY,EAAE,GAAG,IAAI;IAI1C,iBAAiB,CAAC,SAAS,EAAE,aAAa,EAAE,GAAG,IAAI;IAInD,eAAe,CAAC,QAAQ,EAAE,qBAAqB,GAAG,MAAM,IAAI;IAO5D,OAAO,CAAC,eAAe;IAUvB,OAAO,IAAI,OAAO;IAIlB,OAAO,IAAI,IAAI;IAMf,MAAM,CAAC,KAAK,EAAE,WAAW,GAAG,KAAK,CAAC,SAAS;CAe5C;AA2JD;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,CAAC,EAAE,uBAAuB,GAAG,iBAAiB,CAE3F"}
@@ -0,0 +1,251 @@
1
+ /**
2
+ * CopilotKit Adapter
3
+ *
4
+ * Implements ChatUIAdapter for CopilotKit integration.
5
+ * Provides wrapper components around CopilotKit with our API.
6
+ *
7
+ * Strategy: Hybrid approach
8
+ * - Bridge: Our ToolRegistry → useCopilotAction (for tool execution)
9
+ * - Wrapper: Our components → CopilotKit components (for consistent API)
10
+ */
11
+ import React, { useEffect, useRef } from 'react';
12
+ // CopilotKit imports - these are peer dependencies
13
+ // Users must install @copilotkit/react-core and @copilotkit/react-ui
14
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
15
+ let CopilotPopup = null;
16
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
17
+ let useCopilotAction = null;
18
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
19
+ let useCopilotReadable = null;
20
+ // Dynamic import to avoid hard dependency
21
+ async function loadCopilotKit() {
22
+ try {
23
+ // Dynamic imports - these will fail if packages not installed
24
+ // eslint-disable-next-line @typescript-eslint/no-require-imports
25
+ const reactCore = await import(/* webpackIgnore: true */ '@copilotkit/react-core');
26
+ // eslint-disable-next-line @typescript-eslint/no-require-imports
27
+ const reactUI = await import(/* webpackIgnore: true */ '@copilotkit/react-ui');
28
+ useCopilotAction = reactCore.useCopilotAction;
29
+ useCopilotReadable = reactCore.useCopilotReadable;
30
+ CopilotPopup = reactUI.CopilotPopup;
31
+ return true;
32
+ }
33
+ catch {
34
+ // eslint-disable-next-line no-console
35
+ console.warn('[CopilotKitAdapter] CopilotKit packages not installed. Install @copilotkit/react-core and @copilotkit/react-ui');
36
+ return false;
37
+ }
38
+ }
39
+ /**
40
+ * Default system prompt for Supernal-enabled apps
41
+ */
42
+ const DEFAULT_SYSTEM_PROMPT = `You are an AI assistant that can control this application using tools.
43
+
44
+ Available capabilities:
45
+ - Navigate between pages and sections
46
+ - Interact with UI components (buttons, inputs, forms)
47
+ - Read and modify application state
48
+ - Execute registered tool actions
49
+
50
+ Guidelines:
51
+ - When users ask you to do something, use the appropriate tool
52
+ - Always confirm what action you took
53
+ - If a tool fails, explain what went wrong
54
+ - Be helpful and concise
55
+
56
+ This application uses @supernal-interface for AI-controllable UI.`;
57
+ /**
58
+ * CopilotKit Adapter Implementation
59
+ */
60
+ export class CopilotKitAdapter {
61
+ constructor(config = {}) {
62
+ this.name = 'copilotkit';
63
+ this.tools = [];
64
+ this.readables = [];
65
+ this.executionCallbacks = [];
66
+ this.initialized = false;
67
+ this.config = {
68
+ runtimeUrl: '/api/copilotkit',
69
+ systemPrompt: DEFAULT_SYSTEM_PROMPT,
70
+ importStyles: true,
71
+ ...config,
72
+ };
73
+ }
74
+ async initialize() {
75
+ if (this.initialized)
76
+ return;
77
+ const loaded = await loadCopilotKit();
78
+ if (!loaded) {
79
+ throw new Error('CopilotKit packages not available');
80
+ }
81
+ // Import styles if requested
82
+ if (this.config.importStyles) {
83
+ try {
84
+ // eslint-disable-next-line @typescript-eslint/no-require-imports
85
+ await import(/* webpackIgnore: true */ '@copilotkit/react-ui/styles.css');
86
+ }
87
+ catch {
88
+ // Styles may already be imported or not available
89
+ }
90
+ }
91
+ this.initialized = true;
92
+ }
93
+ registerTools(tools) {
94
+ this.tools = tools;
95
+ }
96
+ registerReadables(readables) {
97
+ this.readables = readables;
98
+ }
99
+ onToolExecution(callback) {
100
+ this.executionCallbacks.push(callback);
101
+ return () => {
102
+ this.executionCallbacks = this.executionCallbacks.filter(cb => cb !== callback);
103
+ };
104
+ }
105
+ notifyExecution(execution) {
106
+ this.executionCallbacks.forEach(cb => {
107
+ try {
108
+ cb(execution);
109
+ }
110
+ catch {
111
+ // Ignore callback errors
112
+ }
113
+ });
114
+ }
115
+ isReady() {
116
+ return this.initialized && CopilotPopup !== null;
117
+ }
118
+ dispose() {
119
+ this.executionCallbacks = [];
120
+ this.tools = [];
121
+ this.readables = [];
122
+ }
123
+ render(props) {
124
+ if (!this.isReady()) {
125
+ return null;
126
+ }
127
+ return (React.createElement(CopilotKitChatWrapper, { adapter: this, tools: this.tools, readables: this.readables, config: this.config, ...props }));
128
+ }
129
+ }
130
+ function CopilotKitChatWrapper({ adapter, tools, readables, config, title = 'AI Assistant', placeholder: _placeholder, initialMessage = 'How can I help you today?', systemPrompt, defaultOpen = false, ...props }) {
131
+ // Suppress unused variable warning
132
+ void _placeholder;
133
+ const registeredRef = useRef(false);
134
+ // Register tools as CopilotKit actions
135
+ useEffect(() => {
136
+ if (registeredRef.current || !useCopilotAction)
137
+ return;
138
+ registeredRef.current = true;
139
+ // eslint-disable-next-line no-console
140
+ console.log(`[CopilotKitAdapter] Registering ${tools.length} tools`);
141
+ }, [tools.length]);
142
+ // Register tools - must be called conditionally to avoid dynamic hook calls
143
+ useEffect(() => {
144
+ if (!useCopilotAction)
145
+ return;
146
+ // Tools will be registered through the useCopilotAction hook below
147
+ // This effect ensures we only register when the hook is available
148
+ }, [tools]);
149
+ // Register each tool using useCopilotAction hook
150
+ // Note: This must be called unconditionally, at the same position in each render
151
+ tools.forEach((tool) => {
152
+ if (!useCopilotAction)
153
+ return;
154
+ useCopilotAction({
155
+ name: tool.name || `${tool.componentName}.${tool.methodName}`,
156
+ description: tool.aiDescription || tool.description || `Execute ${tool.methodName}`,
157
+ parameters: convertInputSchema(tool.inputSchema),
158
+ handler: async (args) => {
159
+ const start = Date.now();
160
+ try {
161
+ // Execute through tool's method if available
162
+ let result;
163
+ if (tool.method) {
164
+ result = await tool.method(...Object.values(args));
165
+ }
166
+ else if (tool.instance && tool.methodName) {
167
+ result = await tool.instance[tool.methodName](...Object.values(args));
168
+ }
169
+ else {
170
+ throw new Error(`Tool ${tool.name} has no executable method`);
171
+ }
172
+ const execution = {
173
+ toolId: tool.toolId,
174
+ toolName: tool.name || tool.methodName || 'unknown',
175
+ args: args,
176
+ result,
177
+ success: true,
178
+ timestamp: new Date(),
179
+ duration: Date.now() - start,
180
+ containerId: tool.containerId,
181
+ dangerLevel: tool.dangerLevel,
182
+ approvalRequired: tool.requiresApproval,
183
+ };
184
+ adapter.notifyExecution(execution);
185
+ // Return message for chat display
186
+ if (typeof result === 'object' && result !== null && 'message' in result) {
187
+ return result.message;
188
+ }
189
+ return `Executed ${tool.name}`;
190
+ }
191
+ catch (error) {
192
+ const execution = {
193
+ toolId: tool.toolId,
194
+ toolName: tool.name || tool.methodName || 'unknown',
195
+ args: args,
196
+ result: null,
197
+ success: false,
198
+ error: error instanceof Error ? error : new Error(String(error)),
199
+ timestamp: new Date(),
200
+ duration: Date.now() - start,
201
+ containerId: tool.containerId,
202
+ dangerLevel: tool.dangerLevel,
203
+ approvalRequired: tool.requiresApproval,
204
+ };
205
+ adapter.notifyExecution(execution);
206
+ throw error;
207
+ }
208
+ },
209
+ });
210
+ });
211
+ // Register readables
212
+ readables.forEach((readable) => {
213
+ if (!useCopilotReadable)
214
+ return;
215
+ useCopilotReadable({
216
+ description: readable.description,
217
+ value: readable.getValue(),
218
+ });
219
+ });
220
+ if (!CopilotPopup) {
221
+ return null;
222
+ }
223
+ return (React.createElement(CopilotPopup, { instructions: systemPrompt || config.systemPrompt, labels: {
224
+ title,
225
+ initial: initialMessage,
226
+ }, defaultOpen: defaultOpen, ...props }));
227
+ }
228
+ /**
229
+ * Convert our inputSchema to CopilotKit parameter format
230
+ */
231
+ function convertInputSchema(schema) {
232
+ if (!schema || Object.keys(schema).length === 0) {
233
+ return [];
234
+ }
235
+ return Object.entries(schema).map(([name, def]) => {
236
+ const typeDef = def;
237
+ return {
238
+ name,
239
+ type: typeDef.type || 'string',
240
+ description: typeDef.description || name,
241
+ required: typeDef.required ?? false,
242
+ };
243
+ });
244
+ }
245
+ /**
246
+ * Factory function for creating CopilotKit adapter
247
+ */
248
+ export function createCopilotKitAdapter(config) {
249
+ return new CopilotKitAdapter(config);
250
+ }
251
+ //# sourceMappingURL=CopilotKitAdapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CopilotKitAdapter.js","sourceRoot":"","sources":["../../../../../src/adapters/copilotkit/CopilotKitAdapter.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * CopilotKit Adapter Exports
3
+ */
4
+ export { CopilotKitAdapter, createCopilotKitAdapter } from './CopilotKitAdapter';
5
+ export type { CopilotKitAdapterConfig } from './CopilotKitAdapter';
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/adapters/copilotkit/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AACjF,YAAY,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * CopilotKit Adapter Exports
3
+ */
4
+ export { CopilotKitAdapter, createCopilotKitAdapter } from './CopilotKitAdapter.js';
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/adapters/copilotkit/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC"}
@@ -0,0 +1,31 @@
1
+ /**
2
+ * Chat UI Adapters
3
+ *
4
+ * Swappable chat UI layer that allows @supernal-interface tools
5
+ * to work with multiple chat providers.
6
+ *
7
+ * @example
8
+ * ```tsx
9
+ * import { ChatUIProvider, ChatUI, createCopilotKitAdapter } from '@supernal-interface/core';
10
+ *
11
+ * const adapter = createCopilotKitAdapter({ runtimeUrl: '/api/copilotkit' });
12
+ *
13
+ * function App() {
14
+ * return (
15
+ * <ChatUIProvider adapter={adapter}>
16
+ * <YourApp />
17
+ * <ChatUI position="bottom-right" />
18
+ * </ChatUIProvider>
19
+ * );
20
+ * }
21
+ * ```
22
+ */
23
+ export * from './types';
24
+ export { ChatUIProvider, ChatUI, useChatUI, useChatUIOptional, withChatUI } from './ChatUIProvider';
25
+ export { CopilotKitAdapter, createCopilotKitAdapter } from './copilotkit';
26
+ export type { CopilotKitAdapterConfig } from './copilotkit';
27
+ export { NativeAdapter, createNativeAdapter } from './native';
28
+ export type { NativeAdapterConfig } from './native';
29
+ export { bridgeToolRegistry, bridgeComponentState, registerReadable, createAuditTrail, setupBridge, } from './bridge';
30
+ export type { BridgeToolRegistryOptions, BridgeComponentStateOptions, AuditTrailOptions, } from './bridge';
31
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/adapters/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAGH,cAAc,SAAS,CAAC;AAGxB,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,SAAS,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAGpG,OAAO,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AAC1E,YAAY,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AAE5D,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAC9D,YAAY,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAGpD,OAAO,EACL,kBAAkB,EAClB,oBAAoB,EACpB,gBAAgB,EAChB,gBAAgB,EAChB,WAAW,GACZ,MAAM,UAAU,CAAC;AAClB,YAAY,EACV,yBAAyB,EACzB,2BAA2B,EAC3B,iBAAiB,GAClB,MAAM,UAAU,CAAC"}
@@ -0,0 +1,32 @@
1
+ /**
2
+ * Chat UI Adapters
3
+ *
4
+ * Swappable chat UI layer that allows @supernal-interface tools
5
+ * to work with multiple chat providers.
6
+ *
7
+ * @example
8
+ * ```tsx
9
+ * import { ChatUIProvider, ChatUI, createCopilotKitAdapter } from '@supernal-interface/core';
10
+ *
11
+ * const adapter = createCopilotKitAdapter({ runtimeUrl: '/api/copilotkit' });
12
+ *
13
+ * function App() {
14
+ * return (
15
+ * <ChatUIProvider adapter={adapter}>
16
+ * <YourApp />
17
+ * <ChatUI position="bottom-right" />
18
+ * </ChatUIProvider>
19
+ * );
20
+ * }
21
+ * ```
22
+ */
23
+ // Types
24
+ export * from './types/index.js';
25
+ // Provider
26
+ export { ChatUIProvider, ChatUI, useChatUI, useChatUIOptional, withChatUI } from './ChatUIProvider.js';
27
+ // Adapters
28
+ export { CopilotKitAdapter, createCopilotKitAdapter } from './copilotkit/index.js';
29
+ export { NativeAdapter, createNativeAdapter } from './native/index.js';
30
+ // Bridge utilities
31
+ export { bridgeToolRegistry, bridgeComponentState, registerReadable, createAuditTrail, setupBridge, } from './bridge.js';
32
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/adapters/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,QAAQ;AACR,cAAc,SAAS,CAAC;AAExB,WAAW;AACX,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,SAAS,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEpG,WAAW;AACX,OAAO,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AAG1E,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAG9D,mBAAmB;AACnB,OAAO,EACL,kBAAkB,EAClB,oBAAoB,EACpB,gBAAgB,EAChB,gBAAgB,EAChB,WAAW,GACZ,MAAM,UAAU,CAAC"}