@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
package/LICENSE ADDED
@@ -0,0 +1,22 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2025 Supernal AI
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
22
+
package/README.md ADDED
@@ -0,0 +1,165 @@
1
+ # @supernal/interface
2
+
3
+ **Universal AI Interface** - Make any application AI-controllable with decorators.
4
+
5
+ Open source core framework for creating AI-friendly applications. Decorate your functions with `@Tool` and automatically expose them to AI assistants with full type safety.
6
+
7
+ ## Features
8
+
9
+ ### ✅ Core Framework (Open Source)
10
+
11
+ - **Decorator System** - `@Tool`, `@ToolProvider`, `@Component` decorators
12
+ - **Tool Registry** - Automatic tool discovery and registration
13
+ - **Adapter System** - Swap chat UI providers (CopilotKit, native, custom)
14
+ - **Storage** - LocalStorage, Chrome extension, memory adapters
15
+ - **Testing Utilities** - Playwright helpers, Gherkin parsing, test runners
16
+ - **Type Safety** - Full TypeScript support with inference
17
+ - **React Hooks** - `useToolBinding`, `usePersistedState`, `useChatWithContext`
18
+
19
+ ### 🚀 Enterprise Features
20
+
21
+ Advanced capabilities available at [https://supernal.ai/enterprise](https://supernal.ai/enterprise):
22
+
23
+ - **Test Generation** - Auto-generate tests from decorators
24
+ - **Story System** - 50-80% performance boost via test composition
25
+ - **Architecture Visualization** - Real-time component trees
26
+ - **Advanced AI** - Multi-model routing, parameter extraction
27
+ - **File Storage** - Node.js filesystem adapters
28
+ - **Audit & Compliance** - Enterprise logging and tracking
29
+
30
+ ## Installation
31
+
32
+ ```bash
33
+ npm install @supernal/interface
34
+ ```
35
+
36
+ ## Quick Start
37
+
38
+ ### 1. Decorate Your Functions
39
+
40
+ ```typescript
41
+ import { Tool } from '@supernal/interface';
42
+
43
+ class TodoList {
44
+ @Tool({
45
+ name: 'add_todo',
46
+ description: 'Add a new todo item',
47
+ category: 'productivity'
48
+ })
49
+ async addTodo(text: string) {
50
+ // Your implementation
51
+ }
52
+ }
53
+ ```
54
+
55
+ ### 2. Choose an Adapter
56
+
57
+ ```typescript
58
+ import { CopilotKitAdapter, ChatUIProvider } from '@supernal/interface';
59
+
60
+ const adapter = createCopilotKitAdapter({
61
+ autoRegisterTools: true
62
+ });
63
+
64
+ function App() {
65
+ return (
66
+ <ChatUIProvider adapter={adapter}>
67
+ <YourApp />
68
+ </ChatUIProvider>
69
+ );
70
+ }
71
+ ```
72
+
73
+ ### 3. AI Can Now Call Your Functions
74
+
75
+ That's it! Your decorated functions are now accessible to AI assistants with full type checking.
76
+
77
+ ## Adapters
78
+
79
+ ### CopilotKit
80
+
81
+ ```typescript
82
+ import { createCopilotKitAdapter } from '@supernal/interface';
83
+
84
+ const adapter = createCopilotKitAdapter({
85
+ autoRegisterTools: true,
86
+ autoRegisterReadables: true
87
+ });
88
+ ```
89
+
90
+ ### Custom Adapter
91
+
92
+ ```typescript
93
+ import { ChatUIAdapter } from '@supernal/interface';
94
+
95
+ class MyCustomAdapter implements ChatUIAdapter {
96
+ name = 'my-adapter';
97
+
98
+ registerTools(tools) {
99
+ // Convert to your format
100
+ }
101
+
102
+ render(props) {
103
+ return <MyChat {...props} />;
104
+ }
105
+ }
106
+ ```
107
+
108
+ ## Testing
109
+
110
+ ```typescript
111
+ import { GherkinParser, TestRunner } from '@supernal/interface/testing';
112
+
113
+ // Parse Gherkin features
114
+ const feature = GherkinParser.parseFeature(featureText);
115
+
116
+ // Generate tests
117
+ const tests = await TestRunner.generateTests({
118
+ includeGherkin: true,
119
+ framework: 'jest'
120
+ });
121
+ ```
122
+
123
+ ## Storage
124
+
125
+ ```typescript
126
+ import { StateManager, LocalStorageAdapter } from '@supernal/interface/storage';
127
+
128
+ const storage = StateManager.getInstance('myapp', new LocalStorageAdapter());
129
+
130
+ await storage.setState('user', { name: 'Alice' });
131
+ const user = await storage.getState('user');
132
+ ```
133
+
134
+ ## Documentation
135
+
136
+ - [Full Documentation](https://supernal.ai/docs)
137
+ - [API Reference](https://supernal.ai/docs/api)
138
+ - [Examples](https://github.com/supernalintelligence/supernal-interface/tree/main/examples)
139
+
140
+ ## Community
141
+
142
+ - [Discord](https://discord.gg/supernal-ai)
143
+ - [GitHub Discussions](https://github.com/supernalintelligence/supernal-interface/discussions)
144
+ - [Twitter](https://twitter.com/supernal_ai)
145
+
146
+ ## Contributing
147
+
148
+ We welcome contributions! See [CONTRIBUTING.md](https://github.com/supernalintelligence/supernal-interface/blob/main/CONTRIBUTING.md).
149
+
150
+ ## License
151
+
152
+ MIT © 2025 Supernal AI
153
+
154
+ See [LICENSE](LICENSE) for details.
155
+
156
+ ## Enterprise Edition
157
+
158
+ Need advanced features like test generation, architecture visualization, or enterprise support?
159
+
160
+ Visit [https://supernal.ai/enterprise](https://supernal.ai/enterprise)
161
+
162
+ ---
163
+
164
+ **Open source core • Enterprise features available • Built with TypeScript**
165
+
@@ -0,0 +1,104 @@
1
+ "use strict";
2
+ /**
3
+ * API Endpoint Names - Hierarchical ID Contracts
4
+ *
5
+ * This file defines stable, hierarchical ID constants for API endpoints.
6
+ * Services import these IDs before tools are generated, establishing
7
+ * a contract between the API layer and the tool system.
8
+ *
9
+ * Pattern: API.Resource.Action
10
+ */
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.API = void 0;
13
+ exports.getAllAPIIds = getAllAPIIds;
14
+ exports.validateAPIIds = validateAPIIds;
15
+ exports.API = {
16
+ /**
17
+ * User Management Endpoints
18
+ */
19
+ Users: {
20
+ list: 'api-users-list',
21
+ get: 'api-users-get',
22
+ create: 'api-users-create',
23
+ update: 'api-users-update',
24
+ delete: 'api-users-delete',
25
+ search: 'api-users-search',
26
+ },
27
+ /**
28
+ * Authentication Endpoints
29
+ */
30
+ Auth: {
31
+ login: 'api-auth-login',
32
+ logout: 'api-auth-logout',
33
+ register: 'api-auth-register',
34
+ refreshToken: 'api-auth-refresh-token',
35
+ verifyEmail: 'api-auth-verify-email',
36
+ resetPassword: 'api-auth-reset-password',
37
+ },
38
+ /**
39
+ * Data Management Endpoints
40
+ */
41
+ Data: {
42
+ fetch: 'api-data-fetch',
43
+ save: 'api-data-save',
44
+ sync: 'api-data-sync',
45
+ export: 'api-data-export',
46
+ import: 'api-data-import',
47
+ },
48
+ /**
49
+ * Settings Endpoints
50
+ */
51
+ Settings: {
52
+ get: 'api-settings-get',
53
+ update: 'api-settings-update',
54
+ reset: 'api-settings-reset',
55
+ },
56
+ /**
57
+ * Notification Endpoints
58
+ */
59
+ Notifications: {
60
+ list: 'api-notifications-list',
61
+ markRead: 'api-notifications-mark-read',
62
+ markAllRead: 'api-notifications-mark-all-read',
63
+ delete: 'api-notifications-delete',
64
+ },
65
+ };
66
+ /**
67
+ * Helper function to get all API IDs as a flat array
68
+ */
69
+ function getAllAPIIds() {
70
+ const ids = [];
71
+ function collectIds(obj) {
72
+ for (const key in obj) {
73
+ if (typeof obj[key] === 'string') {
74
+ ids.push(obj[key]);
75
+ }
76
+ else if (typeof obj[key] === 'object') {
77
+ collectIds(obj[key]);
78
+ }
79
+ }
80
+ }
81
+ collectIds(exports.API);
82
+ return ids;
83
+ }
84
+ /**
85
+ * Helper function to validate API ID uniqueness
86
+ */
87
+ function validateAPIIds() {
88
+ const ids = getAllAPIIds();
89
+ const seen = new Set();
90
+ const duplicates = [];
91
+ for (const id of ids) {
92
+ if (seen.has(id)) {
93
+ duplicates.push(id);
94
+ }
95
+ else {
96
+ seen.add(id);
97
+ }
98
+ }
99
+ return {
100
+ valid: duplicates.length === 0,
101
+ duplicates,
102
+ };
103
+ }
104
+ //# sourceMappingURL=API.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"API.js","sourceRoot":"","sources":["../../../names/API.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;AA6DH,oCAeC;AAKD,wCAiBC;AAhGY,QAAA,GAAG,GAAG;IACjB;;OAEG;IACH,KAAK,EAAE;QACL,IAAI,EAAE,gBAAgB;QACtB,GAAG,EAAE,eAAe;QACpB,MAAM,EAAE,kBAAkB;QAC1B,MAAM,EAAE,kBAAkB;QAC1B,MAAM,EAAE,kBAAkB;QAC1B,MAAM,EAAE,kBAAkB;KAC3B;IAED;;OAEG;IACH,IAAI,EAAE;QACJ,KAAK,EAAE,gBAAgB;QACvB,MAAM,EAAE,iBAAiB;QACzB,QAAQ,EAAE,mBAAmB;QAC7B,YAAY,EAAE,wBAAwB;QACtC,WAAW,EAAE,uBAAuB;QACpC,aAAa,EAAE,yBAAyB;KACzC;IAED;;OAEG;IACH,IAAI,EAAE;QACJ,KAAK,EAAE,gBAAgB;QACvB,IAAI,EAAE,eAAe;QACrB,IAAI,EAAE,eAAe;QACrB,MAAM,EAAE,iBAAiB;QACzB,MAAM,EAAE,iBAAiB;KAC1B;IAED;;OAEG;IACH,QAAQ,EAAE;QACR,GAAG,EAAE,kBAAkB;QACvB,MAAM,EAAE,qBAAqB;QAC7B,KAAK,EAAE,oBAAoB;KAC5B;IAED;;OAEG;IACH,aAAa,EAAE;QACb,IAAI,EAAE,wBAAwB;QAC9B,QAAQ,EAAE,6BAA6B;QACvC,WAAW,EAAE,iCAAiC;QAC9C,MAAM,EAAE,0BAA0B;KACnC;CACO,CAAC;AAEX;;GAEG;AACH,SAAgB,YAAY;IAC1B,MAAM,GAAG,GAAa,EAAE,CAAC;IAEzB,SAAS,UAAU,CAAC,GAAQ;QAC1B,KAAK,MAAM,GAAG,IAAI,GAAG,EAAE,CAAC;YACtB,IAAI,OAAO,GAAG,CAAC,GAAG,CAAC,KAAK,QAAQ,EAAE,CAAC;gBACjC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;YACrB,CAAC;iBAAM,IAAI,OAAO,GAAG,CAAC,GAAG,CAAC,KAAK,QAAQ,EAAE,CAAC;gBACxC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;YACvB,CAAC;QACH,CAAC;IACH,CAAC;IAED,UAAU,CAAC,WAAG,CAAC,CAAC;IAChB,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;GAEG;AACH,SAAgB,cAAc;IAC5B,MAAM,GAAG,GAAG,YAAY,EAAE,CAAC;IAC3B,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,MAAM,UAAU,GAAa,EAAE,CAAC;IAEhC,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC;QACrB,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;YACjB,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACtB,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACf,CAAC;IACH,CAAC;IAED,OAAO;QACL,KAAK,EAAE,UAAU,CAAC,MAAM,KAAK,CAAC;QAC9B,UAAU;KACX,CAAC;AACJ,CAAC"}
@@ -0,0 +1,104 @@
1
+ "use strict";
2
+ /**
3
+ * Component Names - Atomic UI Element IDs
4
+ *
5
+ * Components are individual UI elements (buttons, inputs, etc.) that tools interact with.
6
+ * These are flat, reusable identifiers that can appear in multiple containers.
7
+ *
8
+ * Containers define WHICH components they contain (see Containers.ts).
9
+ * ToolProviders operate within a Container namespace and act on Components.
10
+ *
11
+ * Pattern: Components.ElementName = 'element-id'
12
+ */
13
+ Object.defineProperty(exports, "__esModule", { value: true });
14
+ exports.Components = void 0;
15
+ exports.getAllComponentIds = getAllComponentIds;
16
+ exports.validateComponentIds = validateComponentIds;
17
+ exports.Components = {
18
+ // Chat components
19
+ ChatInput: 'chat-message-input',
20
+ ChatSendButton: 'chat-send-button',
21
+ ChatClearButton: 'chat-clear-button',
22
+ ChatToggleButton: 'chat-bubble-toggle',
23
+ ChatMessageList: 'chat-message-list',
24
+ ChatTypingIndicator: 'chat-typing-indicator',
25
+ // Demo widget components - buttons
26
+ OpenMenuButton: 'open-main-menu',
27
+ CloseMenuButton: 'close-main-menu',
28
+ // Demo widget components - checkboxes
29
+ FeatureToggle: 'feature-toggle',
30
+ NotificationsToggle: 'notification-toggle',
31
+ // Demo widget components - radios
32
+ PriorityHighRadio: 'priority-high',
33
+ PriorityMediumRadio: 'priority-medium',
34
+ PriorityLowRadio: 'priority-low',
35
+ // Demo widget components - selects
36
+ StatusSelect: 'status-dropdown',
37
+ ThemeSelect: 'theme-toggle',
38
+ // Demo widget components - form
39
+ FormNameInput: 'form-name',
40
+ DemoFormSubmitButton: 'form-submit',
41
+ // Generic widget components
42
+ WidgetButton: 'widget-button',
43
+ WidgetInput: 'widget-input',
44
+ WidgetSelect: 'widget-select',
45
+ WidgetCheckbox: 'widget-checkbox',
46
+ WidgetRadio: 'widget-radio',
47
+ WidgetTextarea: 'widget-textarea',
48
+ // Tool command components
49
+ ToolCommandsList: 'tool-commands-list',
50
+ ToolExecuteButton: 'tool-execute-button',
51
+ ToolApprovalButton: 'tool-approval-button',
52
+ ToolMetadataDisplay: 'tool-metadata-display',
53
+ // Navigation components
54
+ NavMainMenu: 'nav-main-menu',
55
+ NavHomeLink: 'nav-home-link',
56
+ NavToolsLink: 'nav-tools-link',
57
+ NavSettingsLink: 'nav-settings-link',
58
+ NavBackButton: 'nav-back-button',
59
+ // Form components
60
+ FormSubmitButton: 'form-submit-button',
61
+ FormCancelButton: 'form-cancel-button',
62
+ FormResetButton: 'form-reset-button',
63
+ FormTextInput: 'form-text-input',
64
+ FormEmailInput: 'form-email-input',
65
+ FormPasswordInput: 'form-password-input',
66
+ // Modal components
67
+ ModalCloseButton: 'modal-close-button',
68
+ ModalConfirmButton: 'modal-confirm-button',
69
+ ModalCancelButton: 'modal-cancel-button',
70
+ ModalOverlay: 'modal-overlay',
71
+ // Status/Feedback components
72
+ StatusSuccessMessage: 'status-success-message',
73
+ StatusErrorMessage: 'status-error-message',
74
+ StatusWarningMessage: 'status-warning-message',
75
+ StatusLoadingSpinner: 'status-loading-spinner',
76
+ StatusProgressBar: 'status-progress-bar',
77
+ };
78
+ /**
79
+ * Helper function to get all component IDs as a flat array
80
+ */
81
+ function getAllComponentIds() {
82
+ return Object.values(exports.Components);
83
+ }
84
+ /**
85
+ * Helper function to validate component ID uniqueness
86
+ */
87
+ function validateComponentIds() {
88
+ const ids = getAllComponentIds();
89
+ const seen = new Set();
90
+ const duplicates = [];
91
+ for (const id of ids) {
92
+ if (seen.has(id)) {
93
+ duplicates.push(id);
94
+ }
95
+ else {
96
+ seen.add(id);
97
+ }
98
+ }
99
+ return {
100
+ valid: duplicates.length === 0,
101
+ duplicates,
102
+ };
103
+ }
104
+ //# sourceMappingURL=Components.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Components.js","sourceRoot":"","sources":["../../../names/Components.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;GAUG;;;AA8EH,gDAEC;AAKD,oDAiBC;AApGY,QAAA,UAAU,GAAG;IACxB,kBAAkB;IAClB,SAAS,EAAE,oBAAoB;IAC/B,cAAc,EAAE,kBAAkB;IAClC,eAAe,EAAE,mBAAmB;IACpC,gBAAgB,EAAE,oBAAoB;IACtC,eAAe,EAAE,mBAAmB;IACpC,mBAAmB,EAAE,uBAAuB;IAE5C,mCAAmC;IACnC,cAAc,EAAE,gBAAgB;IAChC,eAAe,EAAE,iBAAiB;IAElC,sCAAsC;IACtC,aAAa,EAAE,gBAAgB;IAC/B,mBAAmB,EAAE,qBAAqB;IAE1C,kCAAkC;IAClC,iBAAiB,EAAE,eAAe;IAClC,mBAAmB,EAAE,iBAAiB;IACtC,gBAAgB,EAAE,cAAc;IAEhC,mCAAmC;IACnC,YAAY,EAAE,iBAAiB;IAC/B,WAAW,EAAE,cAAc;IAE3B,gCAAgC;IAChC,aAAa,EAAE,WAAW;IAC1B,oBAAoB,EAAE,aAAa;IAEnC,4BAA4B;IAC5B,YAAY,EAAE,eAAe;IAC7B,WAAW,EAAE,cAAc;IAC3B,YAAY,EAAE,eAAe;IAC7B,cAAc,EAAE,iBAAiB;IACjC,WAAW,EAAE,cAAc;IAC3B,cAAc,EAAE,iBAAiB;IAEjC,0BAA0B;IAC1B,gBAAgB,EAAE,oBAAoB;IACtC,iBAAiB,EAAE,qBAAqB;IACxC,kBAAkB,EAAE,sBAAsB;IAC1C,mBAAmB,EAAE,uBAAuB;IAE5C,wBAAwB;IACxB,WAAW,EAAE,eAAe;IAC5B,WAAW,EAAE,eAAe;IAC5B,YAAY,EAAE,gBAAgB;IAC9B,eAAe,EAAE,mBAAmB;IACpC,aAAa,EAAE,iBAAiB;IAEhC,kBAAkB;IAClB,gBAAgB,EAAE,oBAAoB;IACtC,gBAAgB,EAAE,oBAAoB;IACtC,eAAe,EAAE,mBAAmB;IACpC,aAAa,EAAE,iBAAiB;IAChC,cAAc,EAAE,kBAAkB;IAClC,iBAAiB,EAAE,qBAAqB;IAExC,mBAAmB;IACnB,gBAAgB,EAAE,oBAAoB;IACtC,kBAAkB,EAAE,sBAAsB;IAC1C,iBAAiB,EAAE,qBAAqB;IACxC,YAAY,EAAE,eAAe;IAE7B,6BAA6B;IAC7B,oBAAoB,EAAE,wBAAwB;IAC9C,kBAAkB,EAAE,sBAAsB;IAC1C,oBAAoB,EAAE,wBAAwB;IAC9C,oBAAoB,EAAE,wBAAwB;IAC9C,iBAAiB,EAAE,qBAAqB;CAChC,CAAC;AAEX;;GAEG;AACH,SAAgB,kBAAkB;IAChC,OAAO,MAAM,CAAC,MAAM,CAAC,kBAAU,CAAC,CAAC;AACnC,CAAC;AAED;;GAEG;AACH,SAAgB,oBAAoB;IAClC,MAAM,GAAG,GAAG,kBAAkB,EAAE,CAAC;IACjC,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,MAAM,UAAU,GAAa,EAAE,CAAC;IAEhC,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC;QACrB,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;YACjB,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACtB,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACf,CAAC;IACH,CAAC;IAED,OAAO;QACL,KAAK,EAAE,UAAU,CAAC,MAAM,KAAK,CAAC;QAC9B,UAAU;KACX,CAAC;AACJ,CAAC"}
@@ -0,0 +1,99 @@
1
+ "use strict";
2
+ /**
3
+ * Container Names - Context Boundary IDs
4
+ *
5
+ * Containers define the namespace/scope where ToolProviders operate.
6
+ * Each ToolProvider is bound to a container, which represents a modal, page, or section.
7
+ *
8
+ * Hierarchy: ToolProvider → Container (namespace) → Tools → Components
9
+ *
10
+ * Pattern: Containers.ContainerName = 'container-id'
11
+ */
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ exports.Containers = void 0;
14
+ exports.getAllContainerIds = getAllContainerIds;
15
+ exports.validateContainerIds = validateContainerIds;
16
+ exports.Containers = {
17
+ /**
18
+ * Chat container/modal
19
+ * Used by: ChatTools provider
20
+ */
21
+ Chat: 'chat-container',
22
+ /**
23
+ * Widget gallery container
24
+ * Used by: WidgetTools provider
25
+ */
26
+ Widgets: 'widgets-container',
27
+ /**
28
+ * Tool commands container
29
+ * Used by: ToolCommandTools provider
30
+ */
31
+ ToolCommands: 'tool-commands-container',
32
+ /**
33
+ * Main modal container
34
+ * Used by: ModalTools provider
35
+ */
36
+ Modal: 'modal-container',
37
+ /**
38
+ * Sidebar container
39
+ * Used by: SidebarTools provider
40
+ */
41
+ Sidebar: 'sidebar-container',
42
+ /**
43
+ * Main application container
44
+ * Used by: AppTools provider
45
+ */
46
+ App: 'app-container',
47
+ /**
48
+ * Settings container
49
+ * Used by: SettingsTools provider
50
+ */
51
+ Settings: 'settings-container',
52
+ /**
53
+ * Dashboard container
54
+ * Used by: DashboardTools provider
55
+ */
56
+ Dashboard: 'dashboard-container',
57
+ /**
58
+ * Workspace container
59
+ * Used by: WorkspaceTools provider
60
+ */
61
+ Workspace: 'workspace-container',
62
+ /**
63
+ * Home/Landing page container
64
+ * Used by: HomePageTools provider
65
+ */
66
+ HomePage: 'homepage-container',
67
+ /**
68
+ * Stories page container
69
+ * Used by: Story execution and visualization
70
+ */
71
+ StoriesPage: 'stories-page-container',
72
+ };
73
+ /**
74
+ * Helper to get all container IDs
75
+ */
76
+ function getAllContainerIds() {
77
+ return Object.values(exports.Containers);
78
+ }
79
+ /**
80
+ * Helper to validate container ID uniqueness
81
+ */
82
+ function validateContainerIds() {
83
+ const ids = getAllContainerIds();
84
+ const seen = new Set();
85
+ const duplicates = [];
86
+ for (const id of ids) {
87
+ if (seen.has(id)) {
88
+ duplicates.push(id);
89
+ }
90
+ else {
91
+ seen.add(id);
92
+ }
93
+ }
94
+ return {
95
+ valid: duplicates.length === 0,
96
+ duplicates,
97
+ };
98
+ }
99
+ //# sourceMappingURL=Containers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Containers.js","sourceRoot":"","sources":["../../../names/Containers.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;AAyEH,gDAEC;AAKD,oDAiBC;AA/FY,QAAA,UAAU,GAAG;IACxB;;;OAGG;IACH,IAAI,EAAE,gBAAgB;IAEtB;;;OAGG;IACH,OAAO,EAAE,mBAAmB;IAE5B;;;OAGG;IACH,YAAY,EAAE,yBAAyB;IAEvC;;;OAGG;IACH,KAAK,EAAE,iBAAiB;IAExB;;;OAGG;IACH,OAAO,EAAE,mBAAmB;IAE5B;;;OAGG;IACH,GAAG,EAAE,eAAe;IAEpB;;;OAGG;IACH,QAAQ,EAAE,oBAAoB;IAE9B;;;OAGG;IACH,SAAS,EAAE,qBAAqB;IAEhC;;;OAGG;IACH,SAAS,EAAE,qBAAqB;IAEhC;;;OAGG;IACH,QAAQ,EAAE,oBAAoB;IAE9B;;;OAGG;IACH,WAAW,EAAE,wBAAwB;CAC7B,CAAC;AAEX;;GAEG;AACH,SAAgB,kBAAkB;IAChC,OAAO,MAAM,CAAC,MAAM,CAAC,kBAAU,CAAC,CAAC;AACnC,CAAC;AAED;;GAEG;AACH,SAAgB,oBAAoB;IAClC,MAAM,GAAG,GAAG,kBAAkB,EAAE,CAAC;IACjC,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,MAAM,UAAU,GAAa,EAAE,CAAC;IAEhC,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC;QACrB,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;YACjB,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACtB,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACf,CAAC;IACH,CAAC;IAED,OAAO;QACL,KAAK,EAAE,UAAU,CAAC,MAAM,KAAK,CAAC;QAC9B,UAAU;KACX,CAAC;AACJ,CAAC"}
@@ -0,0 +1,114 @@
1
+ "use strict";
2
+ /**
3
+ * Function Names - Hierarchical ID Contracts
4
+ *
5
+ * This file defines stable, hierarchical ID constants for pure functions.
6
+ * Utilities import these IDs before tools are generated, establishing
7
+ * a contract between computational functions and the tool system.
8
+ *
9
+ * Pattern: Functions.Category.Operation
10
+ */
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.Functions = void 0;
13
+ exports.getAllFunctionIds = getAllFunctionIds;
14
+ exports.validateFunctionIds = validateFunctionIds;
15
+ exports.Functions = {
16
+ /**
17
+ * Mathematical Operations
18
+ */
19
+ Math: {
20
+ add: 'func-math-add',
21
+ subtract: 'func-math-subtract',
22
+ multiply: 'func-math-multiply',
23
+ divide: 'func-math-divide',
24
+ calculate: 'func-math-calculate',
25
+ },
26
+ /**
27
+ * String Operations
28
+ */
29
+ String: {
30
+ format: 'func-string-format',
31
+ capitalize: 'func-string-capitalize',
32
+ truncate: 'func-string-truncate',
33
+ slugify: 'func-string-slugify',
34
+ sanitize: 'func-string-sanitize',
35
+ },
36
+ /**
37
+ * Array Operations
38
+ */
39
+ Array: {
40
+ filter: 'func-array-filter',
41
+ map: 'func-array-map',
42
+ reduce: 'func-array-reduce',
43
+ sort: 'func-array-sort',
44
+ deduplicate: 'func-array-deduplicate',
45
+ },
46
+ /**
47
+ * Date Operations
48
+ */
49
+ Date: {
50
+ format: 'func-date-format',
51
+ parse: 'func-date-parse',
52
+ diff: 'func-date-diff',
53
+ add: 'func-date-add',
54
+ isValid: 'func-date-is-valid',
55
+ },
56
+ /**
57
+ * Validation Operations
58
+ */
59
+ Validation: {
60
+ email: 'func-validation-email',
61
+ url: 'func-validation-url',
62
+ phone: 'func-validation-phone',
63
+ zipCode: 'func-validation-zip-code',
64
+ creditCard: 'func-validation-credit-card',
65
+ },
66
+ /**
67
+ * Transformation Operations
68
+ */
69
+ Transform: {
70
+ camelToSnake: 'func-transform-camel-to-snake',
71
+ snakeToCamel: 'func-transform-snake-to-camel',
72
+ jsonToCsv: 'func-transform-json-to-csv',
73
+ csvToJson: 'func-transform-csv-to-json',
74
+ },
75
+ };
76
+ /**
77
+ * Helper function to get all function IDs as a flat array
78
+ */
79
+ function getAllFunctionIds() {
80
+ const ids = [];
81
+ function collectIds(obj) {
82
+ for (const key in obj) {
83
+ if (typeof obj[key] === 'string') {
84
+ ids.push(obj[key]);
85
+ }
86
+ else if (typeof obj[key] === 'object') {
87
+ collectIds(obj[key]);
88
+ }
89
+ }
90
+ }
91
+ collectIds(exports.Functions);
92
+ return ids;
93
+ }
94
+ /**
95
+ * Helper function to validate function ID uniqueness
96
+ */
97
+ function validateFunctionIds() {
98
+ const ids = getAllFunctionIds();
99
+ const seen = new Set();
100
+ const duplicates = [];
101
+ for (const id of ids) {
102
+ if (seen.has(id)) {
103
+ duplicates.push(id);
104
+ }
105
+ else {
106
+ seen.add(id);
107
+ }
108
+ }
109
+ return {
110
+ valid: duplicates.length === 0,
111
+ duplicates,
112
+ };
113
+ }
114
+ //# sourceMappingURL=Functions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Functions.js","sourceRoot":"","sources":["../../../names/Functions.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;AAwEH,8CAeC;AAKD,kDAiBC;AA3GY,QAAA,SAAS,GAAG;IACvB;;OAEG;IACH,IAAI,EAAE;QACJ,GAAG,EAAE,eAAe;QACpB,QAAQ,EAAE,oBAAoB;QAC9B,QAAQ,EAAE,oBAAoB;QAC9B,MAAM,EAAE,kBAAkB;QAC1B,SAAS,EAAE,qBAAqB;KACjC;IAED;;OAEG;IACH,MAAM,EAAE;QACN,MAAM,EAAE,oBAAoB;QAC5B,UAAU,EAAE,wBAAwB;QACpC,QAAQ,EAAE,sBAAsB;QAChC,OAAO,EAAE,qBAAqB;QAC9B,QAAQ,EAAE,sBAAsB;KACjC;IAED;;OAEG;IACH,KAAK,EAAE;QACL,MAAM,EAAE,mBAAmB;QAC3B,GAAG,EAAE,gBAAgB;QACrB,MAAM,EAAE,mBAAmB;QAC3B,IAAI,EAAE,iBAAiB;QACvB,WAAW,EAAE,wBAAwB;KACtC;IAED;;OAEG;IACH,IAAI,EAAE;QACJ,MAAM,EAAE,kBAAkB;QAC1B,KAAK,EAAE,iBAAiB;QACxB,IAAI,EAAE,gBAAgB;QACtB,GAAG,EAAE,eAAe;QACpB,OAAO,EAAE,oBAAoB;KAC9B;IAED;;OAEG;IACH,UAAU,EAAE;QACV,KAAK,EAAE,uBAAuB;QAC9B,GAAG,EAAE,qBAAqB;QAC1B,KAAK,EAAE,uBAAuB;QAC9B,OAAO,EAAE,0BAA0B;QACnC,UAAU,EAAE,6BAA6B;KAC1C;IAED;;OAEG;IACH,SAAS,EAAE;QACT,YAAY,EAAE,+BAA+B;QAC7C,YAAY,EAAE,+BAA+B;QAC7C,SAAS,EAAE,4BAA4B;QACvC,SAAS,EAAE,4BAA4B;KACxC;CACO,CAAC;AAEX;;GAEG;AACH,SAAgB,iBAAiB;IAC/B,MAAM,GAAG,GAAa,EAAE,CAAC;IAEzB,SAAS,UAAU,CAAC,GAAQ;QAC1B,KAAK,MAAM,GAAG,IAAI,GAAG,EAAE,CAAC;YACtB,IAAI,OAAO,GAAG,CAAC,GAAG,CAAC,KAAK,QAAQ,EAAE,CAAC;gBACjC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;YACrB,CAAC;iBAAM,IAAI,OAAO,GAAG,CAAC,GAAG,CAAC,KAAK,QAAQ,EAAE,CAAC;gBACxC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;YACvB,CAAC;QACH,CAAC;IACH,CAAC;IAED,UAAU,CAAC,iBAAS,CAAC,CAAC;IACtB,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;GAEG;AACH,SAAgB,mBAAmB;IACjC,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;IAChC,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,MAAM,UAAU,GAAa,EAAE,CAAC;IAEhC,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC;QACrB,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;YACjB,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACtB,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACf,CAAC;IACH,CAAC;IAED,OAAO;QACL,KAAK,EAAE,UAAU,CAAC,MAAM,KAAK,CAAC;QAC9B,UAAU;KACX,CAAC;AACJ,CAAC"}