@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.
- package/LICENSE +22 -0
- package/README.md +165 -0
- package/dist/cjs/names/API.js +104 -0
- package/dist/cjs/names/API.js.map +1 -0
- package/dist/cjs/names/Components.js +104 -0
- package/dist/cjs/names/Components.js.map +1 -0
- package/dist/cjs/names/Containers.js +99 -0
- package/dist/cjs/names/Containers.js.map +1 -0
- package/dist/cjs/names/Functions.js +114 -0
- package/dist/cjs/names/Functions.js.map +1 -0
- package/dist/cjs/names/index.js +118 -0
- package/dist/cjs/names/index.js.map +1 -0
- package/dist/cjs/src/adapters/ChatUIProvider.js +176 -0
- package/dist/cjs/src/adapters/ChatUIProvider.js.map +1 -0
- package/dist/cjs/src/adapters/bridge.js +225 -0
- package/dist/cjs/src/adapters/bridge.js.map +1 -0
- package/dist/cjs/src/adapters/copilotkit/CopilotKitAdapter.js +289 -0
- package/dist/cjs/src/adapters/copilotkit/CopilotKitAdapter.js.map +1 -0
- package/dist/cjs/src/adapters/copilotkit/index.js +10 -0
- package/dist/cjs/src/adapters/copilotkit/index.js.map +1 -0
- package/dist/cjs/src/adapters/index.js +63 -0
- package/dist/cjs/src/adapters/index.js.map +1 -0
- package/dist/cjs/src/adapters/native/NativeAdapter.js +268 -0
- package/dist/cjs/src/adapters/native/NativeAdapter.js.map +1 -0
- package/dist/cjs/src/adapters/native/index.js +10 -0
- package/dist/cjs/src/adapters/native/index.js.map +1 -0
- package/dist/cjs/src/adapters/types/index.js +9 -0
- package/dist/cjs/src/adapters/types/index.js.map +1 -0
- package/dist/cjs/src/ai/ToolExecutor.js +211 -0
- package/dist/cjs/src/ai/ToolExecutor.js.map +1 -0
- package/dist/cjs/src/ai/ToolMatcher.js +202 -0
- package/dist/cjs/src/ai/ToolMatcher.js.map +1 -0
- package/dist/cjs/src/ai/index.js +29 -0
- package/dist/cjs/src/ai/index.js.map +1 -0
- package/dist/cjs/src/architecture/createContainer.js +106 -0
- package/dist/cjs/src/architecture/createContainer.js.map +1 -0
- package/dist/cjs/src/architecture/initialize.js +125 -0
- package/dist/cjs/src/architecture/initialize.js.map +1 -0
- package/dist/cjs/src/architecture/registry.js +111 -0
- package/dist/cjs/src/architecture/registry.js.map +1 -0
- package/dist/cjs/src/background/architecture/ArchitectureInitializer.js +174 -0
- package/dist/cjs/src/background/architecture/ArchitectureInitializer.js.map +1 -0
- package/dist/cjs/src/background/architecture/Containers.js +46 -0
- package/dist/cjs/src/background/architecture/Containers.js.map +1 -0
- package/dist/cjs/src/background/architecture/DataContractTypes.js +28 -0
- package/dist/cjs/src/background/architecture/DataContractTypes.js.map +1 -0
- package/dist/cjs/src/background/architecture/index.js +24 -0
- package/dist/cjs/src/background/architecture/index.js.map +1 -0
- package/dist/cjs/src/background/navigation/NavigationGraph.js +71 -0
- package/dist/cjs/src/background/navigation/NavigationGraph.js.map +1 -0
- package/dist/cjs/src/background/navigation/RuntimeTreeBuilder.js +66 -0
- package/dist/cjs/src/background/navigation/RuntimeTreeBuilder.js.map +1 -0
- package/dist/cjs/src/background/navigation/useComponentTracking.js +20 -0
- package/dist/cjs/src/background/navigation/useComponentTracking.js.map +1 -0
- package/dist/cjs/src/background/registry/ComponentRegistry.js +340 -0
- package/dist/cjs/src/background/registry/ComponentRegistry.js.map +1 -0
- package/dist/cjs/src/background/registry/ToolRegistry.js +668 -0
- package/dist/cjs/src/background/registry/ToolRegistry.js.map +1 -0
- package/dist/cjs/src/browser.js +70 -0
- package/dist/cjs/src/browser.js.map +1 -0
- package/dist/cjs/src/components/ComponentScanner.js +362 -0
- package/dist/cjs/src/components/ComponentScanner.js.map +1 -0
- package/dist/cjs/src/components/index.js +24 -0
- package/dist/cjs/src/components/index.js.map +1 -0
- package/dist/cjs/src/data/TestDataManager.js +187 -0
- package/dist/cjs/src/data/TestDataManager.js.map +1 -0
- package/dist/cjs/src/data/index.js +23 -0
- package/dist/cjs/src/data/index.js.map +1 -0
- package/dist/cjs/src/decorators/Component.js +108 -0
- package/dist/cjs/src/decorators/Component.js.map +1 -0
- package/dist/cjs/src/decorators/ContainerHelpers.js +45 -0
- package/dist/cjs/src/decorators/ContainerHelpers.js.map +1 -0
- package/dist/cjs/src/decorators/SpecializedTools.js +386 -0
- package/dist/cjs/src/decorators/SpecializedTools.js.map +1 -0
- package/dist/cjs/src/decorators/Tool.js +700 -0
- package/dist/cjs/src/decorators/Tool.js.map +1 -0
- package/dist/cjs/src/decorators/ToolHelpers.js +261 -0
- package/dist/cjs/src/decorators/ToolHelpers.js.map +1 -0
- package/dist/cjs/src/decorators/ToolPreset.js +270 -0
- package/dist/cjs/src/decorators/ToolPreset.js.map +1 -0
- package/dist/cjs/src/decorators/ToolProvider.js +86 -0
- package/dist/cjs/src/decorators/ToolProvider.js.map +1 -0
- package/dist/cjs/src/decorators/index.js +44 -0
- package/dist/cjs/src/decorators/index.js.map +1 -0
- package/dist/cjs/src/execution/DOMExecutor.js +233 -0
- package/dist/cjs/src/execution/DOMExecutor.js.map +1 -0
- package/dist/cjs/src/execution/PlaywrightExecutor.js +196 -0
- package/dist/cjs/src/execution/PlaywrightExecutor.js.map +1 -0
- package/dist/cjs/src/exposure/ExposureCollector.js +358 -0
- package/dist/cjs/src/exposure/ExposureCollector.js.map +1 -0
- package/dist/cjs/src/exposure/index.js +26 -0
- package/dist/cjs/src/exposure/index.js.map +1 -0
- package/dist/cjs/src/index.js +187 -0
- package/dist/cjs/src/index.js.map +1 -0
- package/dist/cjs/src/interfaces/StatefulComponent.js +50 -0
- package/dist/cjs/src/interfaces/StatefulComponent.js.map +1 -0
- package/dist/cjs/src/name-contracts/ContractScanner.js +15 -0
- package/dist/cjs/src/name-contracts/ContractScanner.js.map +1 -0
- package/dist/cjs/src/name-contracts/RouteContractScanner.js +225 -0
- package/dist/cjs/src/name-contracts/RouteContractScanner.js.map +1 -0
- package/dist/cjs/src/name-contracts/index.js +15 -0
- package/dist/cjs/src/name-contracts/index.js.map +1 -0
- package/dist/cjs/src/names/createNames.js +86 -0
- package/dist/cjs/src/names/createNames.js.map +1 -0
- package/dist/cjs/src/react/hooks/useChatWithContext.js +221 -0
- package/dist/cjs/src/react/hooks/useChatWithContext.js.map +1 -0
- package/dist/cjs/src/react/index.js +28 -0
- package/dist/cjs/src/react/index.js.map +1 -0
- package/dist/cjs/src/react/useNavigationHandler.js +88 -0
- package/dist/cjs/src/react/useNavigationHandler.js.map +1 -0
- package/dist/cjs/src/react/usePersistedState.js +72 -0
- package/dist/cjs/src/react/usePersistedState.js.map +1 -0
- package/dist/cjs/src/react/useToolBinding.js +110 -0
- package/dist/cjs/src/react/useToolBinding.js.map +1 -0
- package/dist/cjs/src/routes/RouteContractGenerator.js +119 -0
- package/dist/cjs/src/routes/RouteContractGenerator.js.map +1 -0
- package/dist/cjs/src/routes/RouteContractsConfig.js +39 -0
- package/dist/cjs/src/routes/RouteContractsConfig.js.map +1 -0
- package/dist/cjs/src/routes/index.js +20 -0
- package/dist/cjs/src/routes/index.js.map +1 -0
- package/dist/cjs/src/routes/scanners/NameExtractor.js +193 -0
- package/dist/cjs/src/routes/scanners/NameExtractor.js.map +1 -0
- package/dist/cjs/src/routes/scanners/NextjsDynamicScanner.js +102 -0
- package/dist/cjs/src/routes/scanners/NextjsDynamicScanner.js.map +1 -0
- package/dist/cjs/src/routes/scanners/RouteScanner.js +13 -0
- package/dist/cjs/src/routes/scanners/RouteScanner.js.map +1 -0
- package/dist/cjs/src/storage/LocalStorageAdapter.js +87 -0
- package/dist/cjs/src/storage/LocalStorageAdapter.js.map +1 -0
- package/dist/cjs/src/storage/StateManager.js +299 -0
- package/dist/cjs/src/storage/StateManager.js.map +1 -0
- package/dist/cjs/src/storage/StorageAdapter.js +164 -0
- package/dist/cjs/src/storage/StorageAdapter.js.map +1 -0
- package/dist/cjs/src/storage/index.js +37 -0
- package/dist/cjs/src/storage/index.js.map +1 -0
- package/dist/cjs/src/testing/BrowserStateInjection.js +130 -0
- package/dist/cjs/src/testing/BrowserStateInjection.js.map +1 -0
- package/dist/cjs/src/testing/ComponentStateHelpers.js +200 -0
- package/dist/cjs/src/testing/ComponentStateHelpers.js.map +1 -0
- package/dist/cjs/src/testing/GherkinParser.js +252 -0
- package/dist/cjs/src/testing/GherkinParser.js.map +1 -0
- package/dist/cjs/src/testing/PlaywrightStateHelpers.js +254 -0
- package/dist/cjs/src/testing/PlaywrightStateHelpers.js.map +1 -0
- package/dist/cjs/src/testing/TestRunner.js +158 -0
- package/dist/cjs/src/testing/TestRunner.js.map +1 -0
- package/dist/cjs/src/testing/index.js +46 -0
- package/dist/cjs/src/testing/index.js.map +1 -0
- package/dist/cjs/src/testing/selectors.js +84 -0
- package/dist/cjs/src/testing/selectors.js.map +1 -0
- package/dist/cjs/src/tools/SystemTools.js +262 -0
- package/dist/cjs/src/tools/SystemTools.js.map +1 -0
- package/dist/cjs/src/types/ClassifiedTool.js +50 -0
- package/dist/cjs/src/types/ClassifiedTool.js.map +1 -0
- package/dist/cjs/src/types/ComponentState.js +30 -0
- package/dist/cjs/src/types/ComponentState.js.map +1 -0
- package/dist/cjs/src/types/DiscoverableToolProvider.js +9 -0
- package/dist/cjs/src/types/DiscoverableToolProvider.js.map +1 -0
- package/dist/cjs/src/types/ExposureState.js +25 -0
- package/dist/cjs/src/types/ExposureState.js.map +1 -0
- package/dist/cjs/src/types/NavigationGraph.js +8 -0
- package/dist/cjs/src/types/NavigationGraph.js.map +1 -0
- package/dist/cjs/src/types/OperationType.js +49 -0
- package/dist/cjs/src/types/OperationType.js.map +1 -0
- package/dist/cjs/src/types/StateManagers.js +39 -0
- package/dist/cjs/src/types/StateManagers.js.map +1 -0
- package/dist/cjs/src/types/Tool.js +41 -0
- package/dist/cjs/src/types/Tool.js.map +1 -0
- package/dist/cjs/src/types/ToolPermissions.js +54 -0
- package/dist/cjs/src/types/ToolPermissions.js.map +1 -0
- package/dist/cjs/src/types/ToolResult.js +25 -0
- package/dist/cjs/src/types/ToolResult.js.map +1 -0
- package/dist/cjs/src/types/index.js +59 -0
- package/dist/cjs/src/types/index.js.map +1 -0
- package/dist/cjs/src/ui/react/chat/ChatBubble.js +221 -0
- package/dist/cjs/src/ui/react/chat/ChatBubble.js.map +1 -0
- package/dist/esm/names/API.d.ts +77 -0
- package/dist/esm/names/API.d.ts.map +1 -0
- package/dist/esm/names/API.js +99 -0
- package/dist/esm/names/API.js.map +1 -0
- package/dist/esm/names/Components.d.ts +77 -0
- package/dist/esm/names/Components.d.ts.map +1 -0
- package/dist/esm/names/Components.js +99 -0
- package/dist/esm/names/Components.js.map +1 -0
- package/dist/esm/names/Containers.d.ts +84 -0
- package/dist/esm/names/Containers.d.ts.map +1 -0
- package/dist/esm/names/Containers.js +94 -0
- package/dist/esm/names/Containers.js.map +1 -0
- package/dist/esm/names/Functions.d.ts +87 -0
- package/dist/esm/names/Functions.d.ts.map +1 -0
- package/dist/esm/names/Functions.js +109 -0
- package/dist/esm/names/Functions.js.map +1 -0
- package/dist/esm/names/index.d.ts +187 -0
- package/dist/esm/names/index.d.ts.map +1 -0
- package/dist/esm/names/index.js +99 -0
- package/dist/esm/names/index.js.map +1 -0
- package/dist/esm/src/adapters/ChatUIProvider.d.ts +76 -0
- package/dist/esm/src/adapters/ChatUIProvider.d.ts.map +1 -0
- package/dist/esm/src/adapters/ChatUIProvider.js +136 -0
- package/dist/esm/src/adapters/ChatUIProvider.js.map +1 -0
- package/dist/esm/src/adapters/bridge.d.ts +145 -0
- package/dist/esm/src/adapters/bridge.d.ts.map +1 -0
- package/dist/esm/src/adapters/bridge.js +218 -0
- package/dist/esm/src/adapters/bridge.js.map +1 -0
- package/dist/esm/src/adapters/copilotkit/CopilotKitAdapter.d.ts +49 -0
- package/dist/esm/src/adapters/copilotkit/CopilotKitAdapter.d.ts.map +1 -0
- package/dist/esm/src/adapters/copilotkit/CopilotKitAdapter.js +251 -0
- package/dist/esm/src/adapters/copilotkit/CopilotKitAdapter.js.map +1 -0
- package/dist/esm/src/adapters/copilotkit/index.d.ts +6 -0
- package/dist/esm/src/adapters/copilotkit/index.d.ts.map +1 -0
- package/dist/esm/src/adapters/copilotkit/index.js +5 -0
- package/dist/esm/src/adapters/copilotkit/index.js.map +1 -0
- package/dist/esm/src/adapters/index.d.ts +31 -0
- package/dist/esm/src/adapters/index.d.ts.map +1 -0
- package/dist/esm/src/adapters/index.js +32 -0
- package/dist/esm/src/adapters/index.js.map +1 -0
- package/dist/esm/src/adapters/native/NativeAdapter.d.ts +47 -0
- package/dist/esm/src/adapters/native/NativeAdapter.d.ts.map +1 -0
- package/dist/esm/src/adapters/native/NativeAdapter.js +230 -0
- package/dist/esm/src/adapters/native/NativeAdapter.js.map +1 -0
- package/dist/esm/src/adapters/native/index.d.ts +6 -0
- package/dist/esm/src/adapters/native/index.d.ts.map +1 -0
- package/dist/esm/src/adapters/native/index.js +5 -0
- package/dist/esm/src/adapters/native/index.js.map +1 -0
- package/dist/esm/src/adapters/types/index.d.ts +155 -0
- package/dist/esm/src/adapters/types/index.d.ts.map +1 -0
- package/dist/esm/src/adapters/types/index.js +8 -0
- package/dist/esm/src/adapters/types/index.js.map +1 -0
- package/dist/esm/src/ai/ToolExecutor.d.ts +49 -0
- package/dist/esm/src/ai/ToolExecutor.d.ts.map +1 -0
- package/dist/esm/src/ai/ToolExecutor.js +174 -0
- package/dist/esm/src/ai/ToolExecutor.js.map +1 -0
- package/dist/esm/src/ai/ToolMatcher.d.ts +61 -0
- package/dist/esm/src/ai/ToolMatcher.d.ts.map +1 -0
- package/dist/esm/src/ai/ToolMatcher.js +198 -0
- package/dist/esm/src/ai/ToolMatcher.js.map +1 -0
- package/dist/esm/src/ai/index.d.ts +9 -0
- package/dist/esm/src/ai/index.d.ts.map +1 -0
- package/dist/esm/src/ai/index.js +13 -0
- package/dist/esm/src/ai/index.js.map +1 -0
- package/dist/esm/src/architecture/createContainer.d.ts +60 -0
- package/dist/esm/src/architecture/createContainer.d.ts.map +1 -0
- package/dist/esm/src/architecture/createContainer.js +102 -0
- package/dist/esm/src/architecture/createContainer.js.map +1 -0
- package/dist/esm/src/architecture/initialize.d.ts +81 -0
- package/dist/esm/src/architecture/initialize.d.ts.map +1 -0
- package/dist/esm/src/architecture/initialize.js +121 -0
- package/dist/esm/src/architecture/initialize.js.map +1 -0
- package/dist/esm/src/architecture/registry.d.ts +61 -0
- package/dist/esm/src/architecture/registry.d.ts.map +1 -0
- package/dist/esm/src/architecture/registry.js +107 -0
- package/dist/esm/src/architecture/registry.js.map +1 -0
- package/dist/esm/src/background/architecture/ArchitectureInitializer.d.ts +95 -0
- package/dist/esm/src/background/architecture/ArchitectureInitializer.d.ts.map +1 -0
- package/dist/esm/src/background/architecture/ArchitectureInitializer.js +170 -0
- package/dist/esm/src/background/architecture/ArchitectureInitializer.js.map +1 -0
- package/dist/esm/src/background/architecture/Containers.d.ts +52 -0
- package/dist/esm/src/background/architecture/Containers.d.ts.map +1 -0
- package/dist/esm/src/background/architecture/Containers.js +40 -0
- package/dist/esm/src/background/architecture/Containers.js.map +1 -0
- package/dist/esm/src/background/architecture/DataContractTypes.d.ts +33 -0
- package/dist/esm/src/background/architecture/DataContractTypes.d.ts.map +1 -0
- package/dist/esm/src/background/architecture/DataContractTypes.js +22 -0
- package/dist/esm/src/background/architecture/DataContractTypes.js.map +1 -0
- package/dist/esm/src/background/architecture/index.d.ts +12 -0
- package/dist/esm/src/background/architecture/index.d.ts.map +1 -0
- package/dist/esm/src/background/architecture/index.js +13 -0
- package/dist/esm/src/background/architecture/index.js.map +1 -0
- package/dist/esm/src/background/navigation/NavigationGraph.d.ts +48 -0
- package/dist/esm/src/background/navigation/NavigationGraph.d.ts.map +1 -0
- package/dist/esm/src/background/navigation/NavigationGraph.js +67 -0
- package/dist/esm/src/background/navigation/NavigationGraph.js.map +1 -0
- package/dist/esm/src/background/navigation/RuntimeTreeBuilder.d.ts +30 -0
- package/dist/esm/src/background/navigation/RuntimeTreeBuilder.d.ts.map +1 -0
- package/dist/esm/src/background/navigation/RuntimeTreeBuilder.js +60 -0
- package/dist/esm/src/background/navigation/RuntimeTreeBuilder.js.map +1 -0
- package/dist/esm/src/background/navigation/useComponentTracking.d.ts +10 -0
- package/dist/esm/src/background/navigation/useComponentTracking.d.ts.map +1 -0
- package/dist/esm/src/background/navigation/useComponentTracking.js +17 -0
- package/dist/esm/src/background/navigation/useComponentTracking.js.map +1 -0
- package/dist/esm/src/background/registry/ComponentRegistry.d.ts +192 -0
- package/dist/esm/src/background/registry/ComponentRegistry.d.ts.map +1 -0
- package/dist/esm/src/background/registry/ComponentRegistry.js +336 -0
- package/dist/esm/src/background/registry/ComponentRegistry.js.map +1 -0
- package/dist/esm/src/background/registry/ToolRegistry.d.ts +232 -0
- package/dist/esm/src/background/registry/ToolRegistry.d.ts.map +1 -0
- package/dist/esm/src/background/registry/ToolRegistry.js +664 -0
- package/dist/esm/src/background/registry/ToolRegistry.js.map +1 -0
- package/dist/esm/src/browser.d.ts +21 -0
- package/dist/esm/src/browser.d.ts.map +1 -0
- package/dist/esm/src/browser.js +31 -0
- package/dist/esm/src/browser.js.map +1 -0
- package/dist/esm/src/components/ComponentScanner.d.ts +99 -0
- package/dist/esm/src/components/ComponentScanner.d.ts.map +1 -0
- package/dist/esm/src/components/ComponentScanner.js +325 -0
- package/dist/esm/src/components/ComponentScanner.js.map +1 -0
- package/dist/esm/src/components/index.d.ts +9 -0
- package/dist/esm/src/components/index.d.ts.map +1 -0
- package/dist/esm/src/components/index.js +8 -0
- package/dist/esm/src/components/index.js.map +1 -0
- package/dist/esm/src/data/TestDataManager.d.ts +125 -0
- package/dist/esm/src/data/TestDataManager.d.ts.map +1 -0
- package/dist/esm/src/data/TestDataManager.js +183 -0
- package/dist/esm/src/data/TestDataManager.js.map +1 -0
- package/dist/esm/src/data/index.d.ts +7 -0
- package/dist/esm/src/data/index.d.ts.map +1 -0
- package/dist/esm/src/data/index.js +7 -0
- package/dist/esm/src/data/index.js.map +1 -0
- package/dist/esm/src/decorators/Component.d.ts +59 -0
- package/dist/esm/src/decorators/Component.d.ts.map +1 -0
- package/dist/esm/src/decorators/Component.js +103 -0
- package/dist/esm/src/decorators/Component.js.map +1 -0
- package/dist/esm/src/decorators/ContainerHelpers.d.ts +26 -0
- package/dist/esm/src/decorators/ContainerHelpers.d.ts.map +1 -0
- package/dist/esm/src/decorators/ContainerHelpers.js +42 -0
- package/dist/esm/src/decorators/ContainerHelpers.js.map +1 -0
- package/dist/esm/src/decorators/SpecializedTools.d.ts +218 -0
- package/dist/esm/src/decorators/SpecializedTools.d.ts.map +1 -0
- package/dist/esm/src/decorators/SpecializedTools.js +383 -0
- package/dist/esm/src/decorators/SpecializedTools.js.map +1 -0
- package/dist/esm/src/decorators/Tool.d.ts +210 -0
- package/dist/esm/src/decorators/Tool.d.ts.map +1 -0
- package/dist/esm/src/decorators/Tool.js +694 -0
- package/dist/esm/src/decorators/Tool.js.map +1 -0
- package/dist/esm/src/decorators/ToolHelpers.d.ts +74 -0
- package/dist/esm/src/decorators/ToolHelpers.d.ts.map +1 -0
- package/dist/esm/src/decorators/ToolHelpers.js +219 -0
- package/dist/esm/src/decorators/ToolHelpers.js.map +1 -0
- package/dist/esm/src/decorators/ToolPreset.d.ts +138 -0
- package/dist/esm/src/decorators/ToolPreset.d.ts.map +1 -0
- package/dist/esm/src/decorators/ToolPreset.js +259 -0
- package/dist/esm/src/decorators/ToolPreset.js.map +1 -0
- package/dist/esm/src/decorators/ToolProvider.d.ts +65 -0
- package/dist/esm/src/decorators/ToolProvider.d.ts.map +1 -0
- package/dist/esm/src/decorators/ToolProvider.js +81 -0
- package/dist/esm/src/decorators/ToolProvider.js.map +1 -0
- package/dist/esm/src/decorators/index.d.ts +13 -0
- package/dist/esm/src/decorators/index.d.ts.map +1 -0
- package/dist/esm/src/decorators/index.js +14 -0
- package/dist/esm/src/decorators/index.js.map +1 -0
- package/dist/esm/src/execution/DOMExecutor.d.ts +43 -0
- package/dist/esm/src/execution/DOMExecutor.d.ts.map +1 -0
- package/dist/esm/src/execution/DOMExecutor.js +229 -0
- package/dist/esm/src/execution/DOMExecutor.js.map +1 -0
- package/dist/esm/src/execution/PlaywrightExecutor.d.ts +38 -0
- package/dist/esm/src/execution/PlaywrightExecutor.d.ts.map +1 -0
- package/dist/esm/src/execution/PlaywrightExecutor.js +192 -0
- package/dist/esm/src/execution/PlaywrightExecutor.js.map +1 -0
- package/dist/esm/src/exposure/ExposureCollector.d.ts +88 -0
- package/dist/esm/src/exposure/ExposureCollector.d.ts.map +1 -0
- package/dist/esm/src/exposure/ExposureCollector.js +354 -0
- package/dist/esm/src/exposure/ExposureCollector.js.map +1 -0
- package/dist/esm/src/exposure/index.d.ts +8 -0
- package/dist/esm/src/exposure/index.d.ts.map +1 -0
- package/dist/esm/src/exposure/index.js +10 -0
- package/dist/esm/src/exposure/index.js.map +1 -0
- package/dist/esm/src/index.d.ts +49 -0
- package/dist/esm/src/index.d.ts.map +1 -0
- package/dist/esm/src/index.js +79 -0
- package/dist/esm/src/index.js.map +1 -0
- package/dist/esm/src/interfaces/StatefulComponent.d.ts +72 -0
- package/dist/esm/src/interfaces/StatefulComponent.d.ts.map +1 -0
- package/dist/esm/src/interfaces/StatefulComponent.js +47 -0
- package/dist/esm/src/interfaces/StatefulComponent.js.map +1 -0
- package/dist/esm/src/name-contracts/ContractScanner.d.ts +61 -0
- package/dist/esm/src/name-contracts/ContractScanner.d.ts.map +1 -0
- package/dist/esm/src/name-contracts/ContractScanner.js +11 -0
- package/dist/esm/src/name-contracts/ContractScanner.js.map +1 -0
- package/dist/esm/src/name-contracts/RouteContractScanner.d.ts +30 -0
- package/dist/esm/src/name-contracts/RouteContractScanner.d.ts.map +1 -0
- package/dist/esm/src/name-contracts/RouteContractScanner.js +188 -0
- package/dist/esm/src/name-contracts/RouteContractScanner.js.map +1 -0
- package/dist/esm/src/name-contracts/index.d.ts +10 -0
- package/dist/esm/src/name-contracts/index.d.ts.map +1 -0
- package/dist/esm/src/name-contracts/index.js +10 -0
- package/dist/esm/src/name-contracts/index.js.map +1 -0
- package/dist/esm/src/names/createNames.d.ts +49 -0
- package/dist/esm/src/names/createNames.d.ts.map +1 -0
- package/dist/esm/src/names/createNames.js +81 -0
- package/dist/esm/src/names/createNames.js.map +1 -0
- package/dist/esm/src/react/hooks/useChatWithContext.d.ts +68 -0
- package/dist/esm/src/react/hooks/useChatWithContext.d.ts.map +1 -0
- package/dist/esm/src/react/hooks/useChatWithContext.js +218 -0
- package/dist/esm/src/react/hooks/useChatWithContext.js.map +1 -0
- package/dist/esm/src/react/index.d.ts +12 -0
- package/dist/esm/src/react/index.d.ts.map +1 -0
- package/dist/esm/src/react/index.js +21 -0
- package/dist/esm/src/react/index.js.map +1 -0
- package/dist/esm/src/react/useNavigationHandler.d.ts +42 -0
- package/dist/esm/src/react/useNavigationHandler.d.ts.map +1 -0
- package/dist/esm/src/react/useNavigationHandler.js +85 -0
- package/dist/esm/src/react/useNavigationHandler.js.map +1 -0
- package/dist/esm/src/react/usePersistedState.d.ts +13 -0
- package/dist/esm/src/react/usePersistedState.d.ts.map +1 -0
- package/dist/esm/src/react/usePersistedState.js +69 -0
- package/dist/esm/src/react/usePersistedState.js.map +1 -0
- package/dist/esm/src/react/useToolBinding.d.ts +8 -0
- package/dist/esm/src/react/useToolBinding.d.ts.map +1 -0
- package/dist/esm/src/react/useToolBinding.js +107 -0
- package/dist/esm/src/react/useToolBinding.js.map +1 -0
- package/dist/esm/src/routes/RouteContractGenerator.d.ts +37 -0
- package/dist/esm/src/routes/RouteContractGenerator.d.ts.map +1 -0
- package/dist/esm/src/routes/RouteContractGenerator.js +115 -0
- package/dist/esm/src/routes/RouteContractGenerator.js.map +1 -0
- package/dist/esm/src/routes/RouteContractsConfig.d.ts +93 -0
- package/dist/esm/src/routes/RouteContractsConfig.d.ts.map +1 -0
- package/dist/esm/src/routes/RouteContractsConfig.js +36 -0
- package/dist/esm/src/routes/RouteContractsConfig.js.map +1 -0
- package/dist/esm/src/routes/index.d.ts +13 -0
- package/dist/esm/src/routes/index.d.ts.map +1 -0
- package/dist/esm/src/routes/index.js +13 -0
- package/dist/esm/src/routes/index.js.map +1 -0
- package/dist/esm/src/routes/scanners/NameExtractor.d.ts +36 -0
- package/dist/esm/src/routes/scanners/NameExtractor.d.ts.map +1 -0
- package/dist/esm/src/routes/scanners/NameExtractor.js +156 -0
- package/dist/esm/src/routes/scanners/NameExtractor.js.map +1 -0
- package/dist/esm/src/routes/scanners/NextjsDynamicScanner.d.ts +35 -0
- package/dist/esm/src/routes/scanners/NextjsDynamicScanner.d.ts.map +1 -0
- package/dist/esm/src/routes/scanners/NextjsDynamicScanner.js +98 -0
- package/dist/esm/src/routes/scanners/NextjsDynamicScanner.js.map +1 -0
- package/dist/esm/src/routes/scanners/RouteScanner.d.ts +64 -0
- package/dist/esm/src/routes/scanners/RouteScanner.d.ts.map +1 -0
- package/dist/esm/src/routes/scanners/RouteScanner.js +9 -0
- package/dist/esm/src/routes/scanners/RouteScanner.js.map +1 -0
- package/dist/esm/src/storage/LocalStorageAdapter.d.ts +29 -0
- package/dist/esm/src/storage/LocalStorageAdapter.d.ts.map +1 -0
- package/dist/esm/src/storage/LocalStorageAdapter.js +83 -0
- package/dist/esm/src/storage/LocalStorageAdapter.js.map +1 -0
- package/dist/esm/src/storage/StateManager.d.ts +175 -0
- package/dist/esm/src/storage/StateManager.d.ts.map +1 -0
- package/dist/esm/src/storage/StateManager.js +295 -0
- package/dist/esm/src/storage/StateManager.js.map +1 -0
- package/dist/esm/src/storage/StorageAdapter.d.ts +94 -0
- package/dist/esm/src/storage/StorageAdapter.d.ts.map +1 -0
- package/dist/esm/src/storage/StorageAdapter.js +158 -0
- package/dist/esm/src/storage/StorageAdapter.js.map +1 -0
- package/dist/esm/src/storage/index.d.ts +12 -0
- package/dist/esm/src/storage/index.d.ts.map +1 -0
- package/dist/esm/src/storage/index.js +17 -0
- package/dist/esm/src/storage/index.js.map +1 -0
- package/dist/esm/src/testing/BrowserStateInjection.d.ts +74 -0
- package/dist/esm/src/testing/BrowserStateInjection.d.ts.map +1 -0
- package/dist/esm/src/testing/BrowserStateInjection.js +126 -0
- package/dist/esm/src/testing/BrowserStateInjection.js.map +1 -0
- package/dist/esm/src/testing/ComponentStateHelpers.d.ts +121 -0
- package/dist/esm/src/testing/ComponentStateHelpers.d.ts.map +1 -0
- package/dist/esm/src/testing/ComponentStateHelpers.js +190 -0
- package/dist/esm/src/testing/ComponentStateHelpers.js.map +1 -0
- package/dist/esm/src/testing/GherkinParser.d.ts +87 -0
- package/dist/esm/src/testing/GherkinParser.d.ts.map +1 -0
- package/dist/esm/src/testing/GherkinParser.js +248 -0
- package/dist/esm/src/testing/GherkinParser.js.map +1 -0
- package/dist/esm/src/testing/PlaywrightStateHelpers.d.ts +163 -0
- package/dist/esm/src/testing/PlaywrightStateHelpers.d.ts.map +1 -0
- package/dist/esm/src/testing/PlaywrightStateHelpers.js +242 -0
- package/dist/esm/src/testing/PlaywrightStateHelpers.js.map +1 -0
- package/dist/esm/src/testing/TestRunner.d.ts +50 -0
- package/dist/esm/src/testing/TestRunner.d.ts.map +1 -0
- package/dist/esm/src/testing/TestRunner.js +121 -0
- package/dist/esm/src/testing/TestRunner.js.map +1 -0
- package/dist/esm/src/testing/index.d.ts +12 -0
- package/dist/esm/src/testing/index.d.ts.map +1 -0
- package/dist/esm/src/testing/index.js +25 -0
- package/dist/esm/src/testing/index.js.map +1 -0
- package/dist/esm/src/testing/selectors.d.ts +65 -0
- package/dist/esm/src/testing/selectors.d.ts.map +1 -0
- package/dist/esm/src/testing/selectors.js +76 -0
- package/dist/esm/src/testing/selectors.js.map +1 -0
- package/dist/esm/src/tools/SystemTools.d.ts +139 -0
- package/dist/esm/src/tools/SystemTools.d.ts.map +1 -0
- package/dist/esm/src/tools/SystemTools.js +258 -0
- package/dist/esm/src/tools/SystemTools.js.map +1 -0
- package/dist/esm/src/types/ClassifiedTool.d.ts +61 -0
- package/dist/esm/src/types/ClassifiedTool.d.ts.map +1 -0
- package/dist/esm/src/types/ClassifiedTool.js +47 -0
- package/dist/esm/src/types/ClassifiedTool.js.map +1 -0
- package/dist/esm/src/types/ComponentState.d.ts +207 -0
- package/dist/esm/src/types/ComponentState.d.ts.map +1 -0
- package/dist/esm/src/types/ComponentState.js +25 -0
- package/dist/esm/src/types/ComponentState.js.map +1 -0
- package/dist/esm/src/types/DiscoverableToolProvider.d.ts +59 -0
- package/dist/esm/src/types/DiscoverableToolProvider.d.ts.map +1 -0
- package/dist/esm/src/types/DiscoverableToolProvider.js +8 -0
- package/dist/esm/src/types/DiscoverableToolProvider.js.map +1 -0
- package/dist/esm/src/types/ExposureState.d.ts +75 -0
- package/dist/esm/src/types/ExposureState.d.ts.map +1 -0
- package/dist/esm/src/types/ExposureState.js +22 -0
- package/dist/esm/src/types/ExposureState.js.map +1 -0
- package/dist/esm/src/types/NavigationGraph.d.ts +98 -0
- package/dist/esm/src/types/NavigationGraph.d.ts.map +1 -0
- package/dist/esm/src/types/NavigationGraph.js +7 -0
- package/dist/esm/src/types/NavigationGraph.js.map +1 -0
- package/dist/esm/src/types/OperationType.d.ts +45 -0
- package/dist/esm/src/types/OperationType.d.ts.map +1 -0
- package/dist/esm/src/types/OperationType.js +46 -0
- package/dist/esm/src/types/OperationType.js.map +1 -0
- package/dist/esm/src/types/StateManagers.d.ts +35 -0
- package/dist/esm/src/types/StateManagers.d.ts.map +1 -0
- package/dist/esm/src/types/StateManagers.js +36 -0
- package/dist/esm/src/types/StateManagers.js.map +1 -0
- package/dist/esm/src/types/Tool.d.ts +162 -0
- package/dist/esm/src/types/Tool.d.ts.map +1 -0
- package/dist/esm/src/types/Tool.js +38 -0
- package/dist/esm/src/types/Tool.js.map +1 -0
- package/dist/esm/src/types/ToolPermissions.d.ts +73 -0
- package/dist/esm/src/types/ToolPermissions.d.ts.map +1 -0
- package/dist/esm/src/types/ToolPermissions.js +51 -0
- package/dist/esm/src/types/ToolPermissions.js.map +1 -0
- package/dist/esm/src/types/ToolResult.d.ts +129 -0
- package/dist/esm/src/types/ToolResult.d.ts.map +1 -0
- package/dist/esm/src/types/ToolResult.js +22 -0
- package/dist/esm/src/types/ToolResult.js.map +1 -0
- package/dist/esm/src/types/index.d.ts +47 -0
- package/dist/esm/src/types/index.d.ts.map +1 -0
- package/dist/esm/src/types/index.js +42 -0
- package/dist/esm/src/types/index.js.map +1 -0
- package/dist/esm/src/ui/react/chat/ChatBubble.d.ts +23 -0
- package/dist/esm/src/ui/react/chat/ChatBubble.d.ts.map +1 -0
- package/dist/esm/src/ui/react/chat/ChatBubble.js +184 -0
- package/dist/esm/src/ui/react/chat/ChatBubble.js.map +1 -0
- package/package.json +118 -0
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Discoverable Tool Provider Interface
|
|
3
|
+
*
|
|
4
|
+
* Extends the base ToolProvider with classification and discovery capabilities.
|
|
5
|
+
* Provides methods for intelligent tool discovery and metadata management.
|
|
6
|
+
*/
|
|
7
|
+
interface ToolProvider {
|
|
8
|
+
name: string;
|
|
9
|
+
description?: string;
|
|
10
|
+
version?: string;
|
|
11
|
+
}
|
|
12
|
+
import { ClassifiedTool } from './ClassifiedTool';
|
|
13
|
+
/**
|
|
14
|
+
* Tool provider with classification and discovery capabilities
|
|
15
|
+
*/
|
|
16
|
+
export interface DiscoverableToolProvider extends ToolProvider {
|
|
17
|
+
/**
|
|
18
|
+
* Get all classified tools available from this provider
|
|
19
|
+
* @returns Array of classified tool definitions
|
|
20
|
+
*/
|
|
21
|
+
getAvailableTools(): ClassifiedTool[];
|
|
22
|
+
/**
|
|
23
|
+
* Get metadata about this tool provider
|
|
24
|
+
* @returns An object containing metadata
|
|
25
|
+
*/
|
|
26
|
+
getMetadata(): Record<string, any>;
|
|
27
|
+
/**
|
|
28
|
+
* Check if a specific tool is enabled
|
|
29
|
+
* @param toolId The unique identifier of the tool
|
|
30
|
+
* @returns True if the tool is enabled
|
|
31
|
+
*/
|
|
32
|
+
isToolEnabled(toolId: string): boolean;
|
|
33
|
+
/**
|
|
34
|
+
* Enable or disable a specific tool
|
|
35
|
+
* @param toolId The unique identifier of the tool
|
|
36
|
+
* @param enabled Whether the tool should be enabled
|
|
37
|
+
*/
|
|
38
|
+
setToolEnabled(toolId: string, enabled: boolean): void;
|
|
39
|
+
/**
|
|
40
|
+
* Get the list of recently used tools
|
|
41
|
+
* @param limit Maximum number of tools to return
|
|
42
|
+
* @returns Array of recently used tool IDs
|
|
43
|
+
*/
|
|
44
|
+
getRecentTools?(limit?: number): string[];
|
|
45
|
+
/**
|
|
46
|
+
* Get tools filtered by category
|
|
47
|
+
* @param category Tool category to filter by
|
|
48
|
+
* @returns Array of tools in the specified category
|
|
49
|
+
*/
|
|
50
|
+
getToolsByCategory?(category: string): ClassifiedTool[];
|
|
51
|
+
/**
|
|
52
|
+
* Search tools by keywords or tags
|
|
53
|
+
* @param query Search query
|
|
54
|
+
* @returns Array of matching tools
|
|
55
|
+
*/
|
|
56
|
+
searchTools?(query: string): ClassifiedTool[];
|
|
57
|
+
}
|
|
58
|
+
export {};
|
|
59
|
+
//# sourceMappingURL=DiscoverableToolProvider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DiscoverableToolProvider.d.ts","sourceRoot":"","sources":["../../../../src/types/DiscoverableToolProvider.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,UAAU,YAAY;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AACD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD;;GAEG;AACH,MAAM,WAAW,wBAAyB,SAAQ,YAAY;IAC5D;;;OAGG;IACH,iBAAiB,IAAI,cAAc,EAAE,CAAC;IAEtC;;;OAGG;IACH,WAAW,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAEnC;;;;OAIG;IACH,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC;IAEvC;;;;OAIG;IACH,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;IAEvD;;;;OAIG;IACH,cAAc,CAAC,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAE1C;;;;OAIG;IACH,kBAAkB,CAAC,CAAC,QAAQ,EAAE,MAAM,GAAG,cAAc,EAAE,CAAC;IAExD;;;;OAIG;IACH,WAAW,CAAC,CAAC,KAAK,EAAE,MAAM,GAAG,cAAc,EAAE,CAAC;CAC/C"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Discoverable Tool Provider Interface
|
|
3
|
+
*
|
|
4
|
+
* Extends the base ToolProvider with classification and discovery capabilities.
|
|
5
|
+
* Provides methods for intelligent tool discovery and metadata management.
|
|
6
|
+
*/
|
|
7
|
+
export {};
|
|
8
|
+
//# sourceMappingURL=DiscoverableToolProvider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DiscoverableToolProvider.js","sourceRoot":"","sources":["../../../../src/types/DiscoverableToolProvider.ts"],"names":[],"mappings":"AAAA;;;;;GAKG"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Tool Exposure State Types (REQ-004)
|
|
3
|
+
*
|
|
4
|
+
* Production-quality types for state-dependent tool exposure detection.
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* Represents the current exposure state of a tool in the UI
|
|
8
|
+
*/
|
|
9
|
+
export declare enum ExposureState {
|
|
10
|
+
/** Tool's DOM element does not exist in the document */
|
|
11
|
+
NOT_PRESENT = 0,
|
|
12
|
+
/** Tool exists in DOM but may not be visible (display:none, hidden, etc) */
|
|
13
|
+
PRESENT = 1,
|
|
14
|
+
/** Tool is visible (not hidden, has non-zero dimensions) */
|
|
15
|
+
VISIBLE = 2,
|
|
16
|
+
/** Tool is visible AND currently in viewport (IntersectionObserver) */
|
|
17
|
+
EXPOSED = 3,
|
|
18
|
+
/** Tool is exposed AND enabled (not disabled, not aria-disabled) */
|
|
19
|
+
INTERACTABLE = 4
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* State change event emitted by tools
|
|
23
|
+
*/
|
|
24
|
+
export interface ExposureStateChange {
|
|
25
|
+
/** Unique tool identifier */
|
|
26
|
+
toolId: string;
|
|
27
|
+
/** Previous state */
|
|
28
|
+
oldState: ExposureState;
|
|
29
|
+
/** New state */
|
|
30
|
+
newState: ExposureState;
|
|
31
|
+
/** Timestamp of state change */
|
|
32
|
+
timestamp: number;
|
|
33
|
+
/** Optional metadata about the state change */
|
|
34
|
+
metadata?: {
|
|
35
|
+
reason?: string;
|
|
36
|
+
element?: Element;
|
|
37
|
+
[key: string]: any;
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Current state of a tool with metadata
|
|
42
|
+
*/
|
|
43
|
+
export interface ToolState {
|
|
44
|
+
/** Unique tool identifier */
|
|
45
|
+
toolId: string;
|
|
46
|
+
/** Current exposure state */
|
|
47
|
+
state: ExposureState;
|
|
48
|
+
/** DOM element (if present) */
|
|
49
|
+
element?: Element;
|
|
50
|
+
/** Last update timestamp */
|
|
51
|
+
lastUpdate: number;
|
|
52
|
+
/** Optional metadata */
|
|
53
|
+
metadata?: {
|
|
54
|
+
reason?: string;
|
|
55
|
+
path?: string;
|
|
56
|
+
context?: string;
|
|
57
|
+
[key: string]: any;
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Observer callback for state changes
|
|
62
|
+
*/
|
|
63
|
+
export type ExposureStateObserver = (change: ExposureStateChange) => void;
|
|
64
|
+
/**
|
|
65
|
+
* Options for waiting for a specific state
|
|
66
|
+
*/
|
|
67
|
+
export interface WaitForStateOptions {
|
|
68
|
+
/** Timeout in milliseconds (default: 5000) */
|
|
69
|
+
timeout?: number;
|
|
70
|
+
/** Poll interval in milliseconds (default: 100) */
|
|
71
|
+
pollInterval?: number;
|
|
72
|
+
/** Minimum state required (default: INTERACTABLE) */
|
|
73
|
+
minState?: ExposureState;
|
|
74
|
+
}
|
|
75
|
+
//# sourceMappingURL=ExposureState.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ExposureState.d.ts","sourceRoot":"","sources":["../../../../src/types/ExposureState.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;GAEG;AACH,oBAAY,aAAa;IACvB,wDAAwD;IACxD,WAAW,IAAI;IAEf,4EAA4E;IAC5E,OAAO,IAAI;IAEX,4DAA4D;IAC5D,OAAO,IAAI;IAEX,uEAAuE;IACvE,OAAO,IAAI;IAEX,oEAAoE;IACpE,YAAY,IAAI;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,6BAA6B;IAC7B,MAAM,EAAE,MAAM,CAAC;IAEf,qBAAqB;IACrB,QAAQ,EAAE,aAAa,CAAC;IAExB,gBAAgB;IAChB,QAAQ,EAAE,aAAa,CAAC;IAExB,gCAAgC;IAChC,SAAS,EAAE,MAAM,CAAC;IAElB,+CAA+C;IAC/C,QAAQ,CAAC,EAAE;QACT,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;KACpB,CAAC;CACH;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,6BAA6B;IAC7B,MAAM,EAAE,MAAM,CAAC;IAEf,6BAA6B;IAC7B,KAAK,EAAE,aAAa,CAAC;IAErB,+BAA+B;IAC/B,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB,4BAA4B;IAC5B,UAAU,EAAE,MAAM,CAAC;IAEnB,wBAAwB;IACxB,QAAQ,CAAC,EAAE;QACT,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;KACpB,CAAC;CACH;AAED;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAAG,CAAC,MAAM,EAAE,mBAAmB,KAAK,IAAI,CAAC;AAE1E;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,8CAA8C;IAC9C,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,mDAAmD;IACnD,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,qDAAqD;IACrD,QAAQ,CAAC,EAAE,aAAa,CAAC;CAC1B"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Tool Exposure State Types (REQ-004)
|
|
3
|
+
*
|
|
4
|
+
* Production-quality types for state-dependent tool exposure detection.
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* Represents the current exposure state of a tool in the UI
|
|
8
|
+
*/
|
|
9
|
+
export var ExposureState;
|
|
10
|
+
(function (ExposureState) {
|
|
11
|
+
/** Tool's DOM element does not exist in the document */
|
|
12
|
+
ExposureState[ExposureState["NOT_PRESENT"] = 0] = "NOT_PRESENT";
|
|
13
|
+
/** Tool exists in DOM but may not be visible (display:none, hidden, etc) */
|
|
14
|
+
ExposureState[ExposureState["PRESENT"] = 1] = "PRESENT";
|
|
15
|
+
/** Tool is visible (not hidden, has non-zero dimensions) */
|
|
16
|
+
ExposureState[ExposureState["VISIBLE"] = 2] = "VISIBLE";
|
|
17
|
+
/** Tool is visible AND currently in viewport (IntersectionObserver) */
|
|
18
|
+
ExposureState[ExposureState["EXPOSED"] = 3] = "EXPOSED";
|
|
19
|
+
/** Tool is exposed AND enabled (not disabled, not aria-disabled) */
|
|
20
|
+
ExposureState[ExposureState["INTERACTABLE"] = 4] = "INTERACTABLE";
|
|
21
|
+
})(ExposureState || (ExposureState = {}));
|
|
22
|
+
//# sourceMappingURL=ExposureState.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ExposureState.js","sourceRoot":"","sources":["../../../../src/types/ExposureState.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;GAEG;AACH,MAAM,CAAN,IAAY,aAeX;AAfD,WAAY,aAAa;IACvB,wDAAwD;IACxD,+DAAe,CAAA;IAEf,4EAA4E;IAC5E,uDAAW,CAAA;IAEX,4DAA4D;IAC5D,uDAAW,CAAA;IAEX,uEAAuE;IACvE,uDAAW,CAAA;IAEX,oEAAoE;IACpE,iEAAgB,CAAA;AAClB,CAAC,EAfW,aAAa,KAAb,aAAa,QAexB"}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Navigation Graph Types (REQ-005)
|
|
3
|
+
*
|
|
4
|
+
* Production-quality types for context-aware tool discovery and navigation.
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* Represents a context in the application (page, modal, tab, etc)
|
|
8
|
+
*/
|
|
9
|
+
export interface NavigationContext {
|
|
10
|
+
/** Unique context identifier (e.g., 'dashboard', 'settings', 'settings.profile') */
|
|
11
|
+
id: string;
|
|
12
|
+
/** Display name */
|
|
13
|
+
name: string;
|
|
14
|
+
/** Parent context (if nested) */
|
|
15
|
+
parent?: string;
|
|
16
|
+
/** Child contexts */
|
|
17
|
+
children: string[];
|
|
18
|
+
/** Tools available in this context */
|
|
19
|
+
tools: string[];
|
|
20
|
+
/** How to navigate TO this context from parent */
|
|
21
|
+
enterAction?: {
|
|
22
|
+
/** Tool to execute (e.g., 'nav-settings-button') */
|
|
23
|
+
toolId: string;
|
|
24
|
+
/** Parameters for the tool (if any) */
|
|
25
|
+
parameters?: Record<string, any>;
|
|
26
|
+
};
|
|
27
|
+
/** Optional metadata */
|
|
28
|
+
metadata?: {
|
|
29
|
+
path?: string;
|
|
30
|
+
url?: string;
|
|
31
|
+
component?: string;
|
|
32
|
+
[key: string]: any;
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Edge in the navigation graph
|
|
37
|
+
*/
|
|
38
|
+
export interface NavigationEdge {
|
|
39
|
+
/** Source context */
|
|
40
|
+
from: string;
|
|
41
|
+
/** Target context */
|
|
42
|
+
to: string;
|
|
43
|
+
/** Tool that performs the navigation */
|
|
44
|
+
navigationTool: string;
|
|
45
|
+
/** Optional parameters */
|
|
46
|
+
parameters?: Record<string, any>;
|
|
47
|
+
/** Estimated cost/weight (for pathfinding) */
|
|
48
|
+
cost?: number;
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Navigation path from A to B
|
|
52
|
+
*/
|
|
53
|
+
export interface NavigationPath {
|
|
54
|
+
/** Starting context */
|
|
55
|
+
from: string;
|
|
56
|
+
/** Ending context */
|
|
57
|
+
to: string;
|
|
58
|
+
/** Ordered list of steps */
|
|
59
|
+
steps: NavigationEdge[];
|
|
60
|
+
/** Total cost */
|
|
61
|
+
totalCost: number;
|
|
62
|
+
/** Estimated time (ms) */
|
|
63
|
+
estimatedTime: number;
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Options for computing navigation paths
|
|
67
|
+
*/
|
|
68
|
+
export interface PathComputeOptions {
|
|
69
|
+
/** Maximum path length (default: 10) */
|
|
70
|
+
maxDepth?: number;
|
|
71
|
+
/** Prefer shorter paths vs. faster paths (default: true) */
|
|
72
|
+
preferShorterPaths?: boolean;
|
|
73
|
+
/** Avoid certain contexts */
|
|
74
|
+
avoidContexts?: string[];
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* Context detection strategy
|
|
78
|
+
*/
|
|
79
|
+
export type ContextDetectionStrategy = 'convention' | 'react-tree' | 'dom-observation' | 'manual';
|
|
80
|
+
/**
|
|
81
|
+
* Context detection metadata
|
|
82
|
+
*/
|
|
83
|
+
export interface ContextDetection {
|
|
84
|
+
/** Which strategy was used */
|
|
85
|
+
strategy: ContextDetectionStrategy;
|
|
86
|
+
/** Detected context ID */
|
|
87
|
+
contextId: string;
|
|
88
|
+
/** Confidence level (0-1) */
|
|
89
|
+
confidence: number;
|
|
90
|
+
/** Additional metadata */
|
|
91
|
+
metadata?: {
|
|
92
|
+
filePath?: string;
|
|
93
|
+
componentName?: string;
|
|
94
|
+
domPath?: string;
|
|
95
|
+
[key: string]: any;
|
|
96
|
+
};
|
|
97
|
+
}
|
|
98
|
+
//# sourceMappingURL=NavigationGraph.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NavigationGraph.d.ts","sourceRoot":"","sources":["../../../../src/types/NavigationGraph.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,oFAAoF;IACpF,EAAE,EAAE,MAAM,CAAC;IAEX,mBAAmB;IACnB,IAAI,EAAE,MAAM,CAAC;IAEb,iCAAiC;IACjC,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,qBAAqB;IACrB,QAAQ,EAAE,MAAM,EAAE,CAAC;IAEnB,sCAAsC;IACtC,KAAK,EAAE,MAAM,EAAE,CAAC;IAEhB,kDAAkD;IAClD,WAAW,CAAC,EAAE;QACZ,oDAAoD;QACpD,MAAM,EAAE,MAAM,CAAC;QAEf,uCAAuC;QACvC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;KAClC,CAAC;IAEF,wBAAwB;IACxB,QAAQ,CAAC,EAAE;QACT,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;KACpB,CAAC;CACH;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,qBAAqB;IACrB,IAAI,EAAE,MAAM,CAAC;IAEb,qBAAqB;IACrB,EAAE,EAAE,MAAM,CAAC;IAEX,wCAAwC;IACxC,cAAc,EAAE,MAAM,CAAC;IAEvB,0BAA0B;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAEjC,8CAA8C;IAC9C,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,uBAAuB;IACvB,IAAI,EAAE,MAAM,CAAC;IAEb,qBAAqB;IACrB,EAAE,EAAE,MAAM,CAAC;IAEX,4BAA4B;IAC5B,KAAK,EAAE,cAAc,EAAE,CAAC;IAExB,iBAAiB;IACjB,SAAS,EAAE,MAAM,CAAC;IAElB,0BAA0B;IAC1B,aAAa,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,wCAAwC;IACxC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,4DAA4D;IAC5D,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAE7B,6BAA6B;IAC7B,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,MAAM,wBAAwB,GAChC,YAAY,GACZ,YAAY,GACZ,iBAAiB,GACjB,QAAQ,CAAC;AAEb;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,8BAA8B;IAC9B,QAAQ,EAAE,wBAAwB,CAAC;IAEnC,0BAA0B;IAC1B,SAAS,EAAE,MAAM,CAAC;IAElB,6BAA6B;IAC7B,UAAU,EAAE,MAAM,CAAC;IAEnB,0BAA0B;IAC1B,QAAQ,CAAC,EAAE;QACT,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;KACpB,CAAC;CACH"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NavigationGraph.js","sourceRoot":"","sources":["../../../../src/types/NavigationGraph.ts"],"names":[],"mappings":"AAAA;;;;GAIG"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Operation Type Classifications
|
|
3
|
+
*
|
|
4
|
+
* Defines the type of operation a function tool performs.
|
|
5
|
+
* Used for function tools (not UI components).
|
|
6
|
+
*/
|
|
7
|
+
export declare enum OperationType {
|
|
8
|
+
/**
|
|
9
|
+
* Reads data without side effects
|
|
10
|
+
*/
|
|
11
|
+
READ = "read",
|
|
12
|
+
/**
|
|
13
|
+
* Modifies existing data
|
|
14
|
+
*/
|
|
15
|
+
WRITE = "write",
|
|
16
|
+
/**
|
|
17
|
+
* Creates new data
|
|
18
|
+
*/
|
|
19
|
+
CREATE = "create",
|
|
20
|
+
/**
|
|
21
|
+
* Removes data
|
|
22
|
+
*/
|
|
23
|
+
DELETE = "delete",
|
|
24
|
+
/**
|
|
25
|
+
* Searches/queries data
|
|
26
|
+
*/
|
|
27
|
+
SEARCH = "search",
|
|
28
|
+
/**
|
|
29
|
+
* Validates data
|
|
30
|
+
*/
|
|
31
|
+
VALIDATE = "validate",
|
|
32
|
+
/**
|
|
33
|
+
* Transforms/processes data
|
|
34
|
+
*/
|
|
35
|
+
TRANSFORM = "transform",
|
|
36
|
+
/**
|
|
37
|
+
* Navigates between contexts
|
|
38
|
+
*/
|
|
39
|
+
NAVIGATE = "navigate",
|
|
40
|
+
/**
|
|
41
|
+
* Manages subscriptions/events
|
|
42
|
+
*/
|
|
43
|
+
SUBSCRIBE = "subscribe"
|
|
44
|
+
}
|
|
45
|
+
//# sourceMappingURL=OperationType.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OperationType.d.ts","sourceRoot":"","sources":["../../../../src/types/OperationType.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,oBAAY,aAAa;IACvB;;OAEG;IACH,IAAI,SAAS;IAEb;;OAEG;IACH,KAAK,UAAU;IAEf;;OAEG;IACH,MAAM,WAAW;IAEjB;;OAEG;IACH,MAAM,WAAW;IAEjB;;OAEG;IACH,MAAM,WAAW;IAEjB;;OAEG;IACH,QAAQ,aAAa;IAErB;;OAEG;IACH,SAAS,cAAc;IAEvB;;OAEG;IACH,QAAQ,aAAa;IAErB;;OAEG;IACH,SAAS,cAAc;CACxB"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Operation Type Classifications
|
|
3
|
+
*
|
|
4
|
+
* Defines the type of operation a function tool performs.
|
|
5
|
+
* Used for function tools (not UI components).
|
|
6
|
+
*/
|
|
7
|
+
export var OperationType;
|
|
8
|
+
(function (OperationType) {
|
|
9
|
+
/**
|
|
10
|
+
* Reads data without side effects
|
|
11
|
+
*/
|
|
12
|
+
OperationType["READ"] = "read";
|
|
13
|
+
/**
|
|
14
|
+
* Modifies existing data
|
|
15
|
+
*/
|
|
16
|
+
OperationType["WRITE"] = "write";
|
|
17
|
+
/**
|
|
18
|
+
* Creates new data
|
|
19
|
+
*/
|
|
20
|
+
OperationType["CREATE"] = "create";
|
|
21
|
+
/**
|
|
22
|
+
* Removes data
|
|
23
|
+
*/
|
|
24
|
+
OperationType["DELETE"] = "delete";
|
|
25
|
+
/**
|
|
26
|
+
* Searches/queries data
|
|
27
|
+
*/
|
|
28
|
+
OperationType["SEARCH"] = "search";
|
|
29
|
+
/**
|
|
30
|
+
* Validates data
|
|
31
|
+
*/
|
|
32
|
+
OperationType["VALIDATE"] = "validate";
|
|
33
|
+
/**
|
|
34
|
+
* Transforms/processes data
|
|
35
|
+
*/
|
|
36
|
+
OperationType["TRANSFORM"] = "transform";
|
|
37
|
+
/**
|
|
38
|
+
* Navigates between contexts
|
|
39
|
+
*/
|
|
40
|
+
OperationType["NAVIGATE"] = "navigate";
|
|
41
|
+
/**
|
|
42
|
+
* Manages subscriptions/events
|
|
43
|
+
*/
|
|
44
|
+
OperationType["SUBSCRIBE"] = "subscribe";
|
|
45
|
+
})(OperationType || (OperationType = {}));
|
|
46
|
+
//# sourceMappingURL=OperationType.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OperationType.js","sourceRoot":"","sources":["../../../../src/types/OperationType.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,CAAN,IAAY,aA6CX;AA7CD,WAAY,aAAa;IACvB;;OAEG;IACH,8BAAa,CAAA;IAEb;;OAEG;IACH,gCAAe,CAAA;IAEf;;OAEG;IACH,kCAAiB,CAAA;IAEjB;;OAEG;IACH,kCAAiB,CAAA;IAEjB;;OAEG;IACH,kCAAiB,CAAA;IAEjB;;OAEG;IACH,sCAAqB,CAAA;IAErB;;OAEG;IACH,wCAAuB,CAAA;IAEvB;;OAEG;IACH,sCAAqB,CAAA;IAErB;;OAEG;IACH,wCAAuB,CAAA;AACzB,CAAC,EA7CW,aAAa,KAAb,aAAa,QA6CxB"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* State Manager Names
|
|
3
|
+
*
|
|
4
|
+
* Enum defining named StateManager instances for multi-context support.
|
|
5
|
+
* Each name represents an isolated state tree for specific use cases.
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```typescript
|
|
9
|
+
* const coreState = StateManager.getInstance(StateManagers.SupernalCoreV1, adapter);
|
|
10
|
+
* const userState = StateManager.getInstance(StateManagers.UserSession, adapter);
|
|
11
|
+
* ```
|
|
12
|
+
*/
|
|
13
|
+
export declare enum StateManagers {
|
|
14
|
+
/**
|
|
15
|
+
* Core application state manager (v1)
|
|
16
|
+
* Used for fundamental system state
|
|
17
|
+
*/
|
|
18
|
+
SupernalCoreV1 = "supernal_core_v1",
|
|
19
|
+
/**
|
|
20
|
+
* User session state manager
|
|
21
|
+
* Isolated user-specific data
|
|
22
|
+
*/
|
|
23
|
+
UserSession = "user_session",
|
|
24
|
+
/**
|
|
25
|
+
* Testing state manager
|
|
26
|
+
* Used for test isolation
|
|
27
|
+
*/
|
|
28
|
+
Testing = "testing",
|
|
29
|
+
/**
|
|
30
|
+
* Demo state manager
|
|
31
|
+
* For demo/example scenarios
|
|
32
|
+
*/
|
|
33
|
+
Demo = "demo"
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=StateManagers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StateManagers.d.ts","sourceRoot":"","sources":["../../../../src/types/StateManagers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,oBAAY,aAAa;IACvB;;;OAGG;IACH,cAAc,qBAAqB;IAEnC;;;OAGG;IACH,WAAW,iBAAiB;IAE5B;;;OAGG;IACH,OAAO,YAAY;IAEnB;;;OAGG;IACH,IAAI,SAAS;CACd"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* State Manager Names
|
|
3
|
+
*
|
|
4
|
+
* Enum defining named StateManager instances for multi-context support.
|
|
5
|
+
* Each name represents an isolated state tree for specific use cases.
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```typescript
|
|
9
|
+
* const coreState = StateManager.getInstance(StateManagers.SupernalCoreV1, adapter);
|
|
10
|
+
* const userState = StateManager.getInstance(StateManagers.UserSession, adapter);
|
|
11
|
+
* ```
|
|
12
|
+
*/
|
|
13
|
+
export var StateManagers;
|
|
14
|
+
(function (StateManagers) {
|
|
15
|
+
/**
|
|
16
|
+
* Core application state manager (v1)
|
|
17
|
+
* Used for fundamental system state
|
|
18
|
+
*/
|
|
19
|
+
StateManagers["SupernalCoreV1"] = "supernal_core_v1";
|
|
20
|
+
/**
|
|
21
|
+
* User session state manager
|
|
22
|
+
* Isolated user-specific data
|
|
23
|
+
*/
|
|
24
|
+
StateManagers["UserSession"] = "user_session";
|
|
25
|
+
/**
|
|
26
|
+
* Testing state manager
|
|
27
|
+
* Used for test isolation
|
|
28
|
+
*/
|
|
29
|
+
StateManagers["Testing"] = "testing";
|
|
30
|
+
/**
|
|
31
|
+
* Demo state manager
|
|
32
|
+
* For demo/example scenarios
|
|
33
|
+
*/
|
|
34
|
+
StateManagers["Demo"] = "demo";
|
|
35
|
+
})(StateManagers || (StateManagers = {}));
|
|
36
|
+
//# sourceMappingURL=StateManagers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StateManagers.js","sourceRoot":"","sources":["../../../../src/types/StateManagers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,MAAM,CAAN,IAAY,aAwBX;AAxBD,WAAY,aAAa;IACvB;;;OAGG;IACH,oDAAmC,CAAA;IAEnC;;;OAGG;IACH,6CAA4B,CAAA;IAE5B;;;OAGG;IACH,oCAAmB,CAAA;IAEnB;;;OAGG;IACH,8BAAa,CAAA;AACf,CAAC,EAxBW,aAAa,KAAb,aAAa,QAwBxB"}
|
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Tool Interface
|
|
3
|
+
*
|
|
4
|
+
* This interface defines the structure for callable tools that can be used by LLMs.
|
|
5
|
+
* Tools are exposed by ToolProviders and follow industry standards for compatibility
|
|
6
|
+
* with OpenAI, Anthropic, and LangChain.
|
|
7
|
+
*/
|
|
8
|
+
import { ToolPermissions } from './ToolPermissions';
|
|
9
|
+
/**
|
|
10
|
+
* Category of tool functionality
|
|
11
|
+
*/
|
|
12
|
+
export declare enum ToolCategory {
|
|
13
|
+
CONTENT_CREATION = "content_creation",
|
|
14
|
+
CONTENT_RETRIEVAL = "content_retrieval",
|
|
15
|
+
DATA_MANIPULATION = "data_manipulation",
|
|
16
|
+
EXTERNAL_SERVICE = "external_service",
|
|
17
|
+
SYSTEM = "system",
|
|
18
|
+
USER_INTERACTION = "user_interaction",
|
|
19
|
+
MEMORY = "memory",
|
|
20
|
+
DATA = "data",
|
|
21
|
+
SEARCH = "search",
|
|
22
|
+
UTILITY = "utility",
|
|
23
|
+
TIME = "time",
|
|
24
|
+
DOM = "dom",
|
|
25
|
+
API = "api",
|
|
26
|
+
FILE = "file",
|
|
27
|
+
COMMUNICATION = "communication",
|
|
28
|
+
CONTEXT_APP = "context-app",
|
|
29
|
+
WORKFLOW = "workflow",
|
|
30
|
+
CHAT = "chat",
|
|
31
|
+
SETTINGS = "settings",
|
|
32
|
+
NAVIGATION = "navigation",
|
|
33
|
+
ONBOARDING = "onboarding"
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Example of tool usage with input/output
|
|
37
|
+
*/
|
|
38
|
+
export interface ToolExample {
|
|
39
|
+
input: Record<string, any>;
|
|
40
|
+
output: Record<string, any>;
|
|
41
|
+
description?: string;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* JSON Schema type (simplified for TypeScript)
|
|
45
|
+
*/
|
|
46
|
+
export type JSONSchema = {
|
|
47
|
+
type: string;
|
|
48
|
+
properties?: Record<string, any>;
|
|
49
|
+
required?: string[];
|
|
50
|
+
description?: string;
|
|
51
|
+
items?: any;
|
|
52
|
+
enum?: string[];
|
|
53
|
+
[key: string]: any;
|
|
54
|
+
};
|
|
55
|
+
/**
|
|
56
|
+
* Component storage interface for persisting state
|
|
57
|
+
*/
|
|
58
|
+
export interface ComponentStorage {
|
|
59
|
+
get<T>(key: string): Promise<T | null>;
|
|
60
|
+
set<T>(key: string, value: T): Promise<void>;
|
|
61
|
+
update<T>(key: string, value: T): Promise<void>;
|
|
62
|
+
delete(key: string): Promise<void>;
|
|
63
|
+
search(query: string): Promise<string[]>;
|
|
64
|
+
list(filter?: (key: string) => boolean): Promise<string[]>;
|
|
65
|
+
clear(): Promise<void>;
|
|
66
|
+
count(): Promise<number>;
|
|
67
|
+
keys(): Promise<string[]>;
|
|
68
|
+
values(): Promise<any[]>;
|
|
69
|
+
entries(): Promise<[string, any][]>;
|
|
70
|
+
size(): Promise<number>;
|
|
71
|
+
isEmpty(): Promise<boolean>;
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* Runtime options for tool invocation
|
|
75
|
+
* Provides callbacks and storage integration
|
|
76
|
+
*/
|
|
77
|
+
export interface ToolOptions {
|
|
78
|
+
onSuccess?: (result: any) => void;
|
|
79
|
+
onError?: (error: Error) => void;
|
|
80
|
+
onStart?: () => void;
|
|
81
|
+
onComplete?: () => void;
|
|
82
|
+
storage?: ComponentStorage;
|
|
83
|
+
validate?: (input: any) => boolean | Promise<boolean>;
|
|
84
|
+
onNavigate?: (path: string) => void;
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Tool interface defining the structure of callable functions
|
|
88
|
+
*/
|
|
89
|
+
export interface Tool {
|
|
90
|
+
/**
|
|
91
|
+
* Unique identifier for the tool
|
|
92
|
+
*/
|
|
93
|
+
id: string;
|
|
94
|
+
/**
|
|
95
|
+
* Name of the tool (must match regex ^[a-zA-Z0-9_-]{1,64}$)
|
|
96
|
+
*/
|
|
97
|
+
name: string;
|
|
98
|
+
/**
|
|
99
|
+
* Detailed description (3-4 sentences minimum)
|
|
100
|
+
*/
|
|
101
|
+
description: string;
|
|
102
|
+
/**
|
|
103
|
+
* Category for grouping related tools
|
|
104
|
+
*/
|
|
105
|
+
category: ToolCategory;
|
|
106
|
+
/**
|
|
107
|
+
* JSON Schema defining expected parameters
|
|
108
|
+
*/
|
|
109
|
+
inputSchema: JSONSchema;
|
|
110
|
+
/**
|
|
111
|
+
* JSON Schema defining return type
|
|
112
|
+
*/
|
|
113
|
+
outputSchema: JSONSchema;
|
|
114
|
+
/**
|
|
115
|
+
* Tool's declared return format (markdown or json)
|
|
116
|
+
*/
|
|
117
|
+
returnType?: 'markdown' | 'json';
|
|
118
|
+
/**
|
|
119
|
+
* Optional usage examples
|
|
120
|
+
*/
|
|
121
|
+
examples?: ToolExample[];
|
|
122
|
+
/**
|
|
123
|
+
* Required permissions to use the tool
|
|
124
|
+
*/
|
|
125
|
+
permissions: ToolPermissions;
|
|
126
|
+
/**
|
|
127
|
+
* Which platforms this tool supports
|
|
128
|
+
*/
|
|
129
|
+
platformSupport: {
|
|
130
|
+
chrome: boolean;
|
|
131
|
+
web: boolean;
|
|
132
|
+
desktop: boolean;
|
|
133
|
+
};
|
|
134
|
+
/**
|
|
135
|
+
* Version of the tool
|
|
136
|
+
*/
|
|
137
|
+
version?: string;
|
|
138
|
+
/**
|
|
139
|
+
* Whether the tool is currently enabled
|
|
140
|
+
*/
|
|
141
|
+
enabled?: boolean;
|
|
142
|
+
/**
|
|
143
|
+
* Additional tool metadata
|
|
144
|
+
*/
|
|
145
|
+
metadata?: Record<string, any>;
|
|
146
|
+
/**
|
|
147
|
+
* Component state classification (NEW)
|
|
148
|
+
* Discriminated union: 'ui-component' or 'function-tool'
|
|
149
|
+
*/
|
|
150
|
+
componentKind?: 'ui-component' | 'function-tool';
|
|
151
|
+
/**
|
|
152
|
+
* HTML semantics (for UI components)
|
|
153
|
+
*/
|
|
154
|
+
htmlTag?: string;
|
|
155
|
+
htmlType?: string;
|
|
156
|
+
htmlRole?: string;
|
|
157
|
+
/**
|
|
158
|
+
* Operation type (for function tools)
|
|
159
|
+
*/
|
|
160
|
+
operationType?: string;
|
|
161
|
+
}
|
|
162
|
+
//# sourceMappingURL=Tool.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Tool.d.ts","sourceRoot":"","sources":["../../../../src/types/Tool.ts"],"names":[],"mappings":"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"}
|