@supernal/interface 1.0.2 → 1.0.4
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 +1 -1
- package/README.md +1 -1
- package/dist/cjs/src/background/location/LocationContext.js +159 -0
- package/dist/cjs/src/background/location/LocationContext.js.map +1 -0
- package/dist/cjs/src/background/navigation/ContentResolver.js +37 -0
- package/dist/cjs/src/background/navigation/ContentResolver.js.map +1 -0
- package/dist/cjs/src/background/navigation/NavigationGraph.js +125 -11
- package/dist/cjs/src/background/navigation/NavigationGraph.js.map +1 -1
- package/dist/cjs/src/background/registry/ToolRegistry.js +98 -0
- package/dist/cjs/src/background/registry/ToolRegistry.js.map +1 -1
- package/dist/cjs/src/browser.js.map +1 -1
- package/dist/cjs/src/decorators/Component.js +30 -19
- package/dist/cjs/src/decorators/Component.js.map +1 -1
- package/dist/cjs/src/decorators/LocationScope.js +65 -0
- package/dist/cjs/src/decorators/LocationScope.js.map +1 -0
- package/dist/cjs/src/decorators/Tool.js +14 -1
- package/dist/cjs/src/decorators/Tool.js.map +1 -1
- package/dist/cjs/src/decorators/ToolProvider.js +11 -0
- package/dist/cjs/src/decorators/ToolProvider.js.map +1 -1
- package/dist/cjs/src/decorators/index.js +20 -2
- package/dist/cjs/src/decorators/index.js.map +1 -1
- package/dist/cjs/src/index.js +14 -3
- package/dist/cjs/src/index.js.map +1 -1
- package/dist/cjs/src/mcp/index.js +16 -0
- package/dist/cjs/src/mcp/index.js.map +1 -0
- package/dist/cjs/src/mcp/server.js +281 -0
- package/dist/cjs/src/mcp/server.js.map +1 -0
- package/dist/cjs/src/mcp/transport.js +131 -0
- package/dist/cjs/src/mcp/transport.js.map +1 -0
- package/dist/cjs/src/mcp/types.js +23 -0
- package/dist/cjs/src/mcp/types.js.map +1 -0
- package/dist/cjs/src/mcp-cli.js +55 -0
- package/dist/cjs/src/mcp-cli.js.map +1 -0
- package/dist/cjs/src/mcp-server.js +17 -0
- package/dist/cjs/src/mcp-server.js.map +1 -0
- package/dist/cjs/src/react/useNavigationHandler.js +53 -12
- package/dist/cjs/src/react/useNavigationHandler.js.map +1 -1
- package/dist/cjs/src/react/usePersistedState.js +1 -1
- package/dist/cjs/src/react/usePersistedState.js.map +1 -1
- package/dist/cjs/src/state/StateSync.js +130 -0
- package/dist/cjs/src/state/StateSync.js.map +1 -0
- package/dist/cjs/src/storage/LocalStorageAdapter.js +1 -1
- package/dist/cjs/src/storage/LocalStorageAdapter.js.map +1 -1
- package/dist/cjs/src/storage/StateManager.js +2 -2
- package/dist/cjs/src/tools/SystemTools.js +1 -1
- package/dist/cjs/src/tools/SystemTools.js.map +1 -1
- package/dist/cjs/src/types/StateManagers.js +2 -2
- package/dist/cjs/src/types/StateManagers.js.map +1 -1
- package/dist/cjs/src/ui/react/chat/ChatBubble.js +3 -3
- package/dist/cjs/src/ui/react/chat/ChatBubble.js.map +1 -1
- package/dist/esm/src/background/location/LocationContext.d.ts +118 -0
- package/dist/esm/src/background/location/LocationContext.d.ts.map +1 -0
- package/dist/esm/src/background/location/LocationContext.js +155 -0
- package/dist/esm/src/background/location/LocationContext.js.map +1 -0
- package/dist/esm/src/background/navigation/ContentResolver.d.ts +139 -0
- package/dist/esm/src/background/navigation/ContentResolver.d.ts.map +1 -0
- package/dist/esm/src/background/navigation/ContentResolver.js +36 -0
- package/dist/esm/src/background/navigation/ContentResolver.js.map +1 -0
- package/dist/esm/src/background/navigation/INavigationGraph.d.ts +1 -0
- package/dist/esm/src/background/navigation/INavigationGraph.d.ts.map +1 -1
- package/dist/esm/src/background/navigation/NavigationGraph.d.ts +24 -0
- package/dist/esm/src/background/navigation/NavigationGraph.d.ts.map +1 -1
- package/dist/esm/src/background/navigation/NavigationGraph.js +125 -11
- package/dist/esm/src/background/navigation/NavigationGraph.js.map +1 -1
- package/dist/esm/src/background/registry/ToolRegistry.d.ts +48 -0
- package/dist/esm/src/background/registry/ToolRegistry.d.ts.map +1 -1
- package/dist/esm/src/background/registry/ToolRegistry.js +98 -0
- package/dist/esm/src/background/registry/ToolRegistry.js.map +1 -1
- package/dist/esm/src/browser.d.ts +1 -0
- package/dist/esm/src/browser.d.ts.map +1 -1
- package/dist/esm/src/browser.js.map +1 -1
- package/dist/esm/src/decorators/Component.d.ts.map +1 -1
- package/dist/esm/src/decorators/Component.js +30 -19
- package/dist/esm/src/decorators/Component.js.map +1 -1
- package/dist/esm/src/decorators/LocationScope.d.ts +49 -0
- package/dist/esm/src/decorators/LocationScope.d.ts.map +1 -0
- package/dist/esm/src/decorators/LocationScope.js +60 -0
- package/dist/esm/src/decorators/LocationScope.js.map +1 -0
- package/dist/esm/src/decorators/Tool.d.ts +3 -1
- package/dist/esm/src/decorators/Tool.d.ts.map +1 -1
- package/dist/esm/src/decorators/Tool.js +14 -1
- package/dist/esm/src/decorators/Tool.js.map +1 -1
- package/dist/esm/src/decorators/ToolProvider.d.ts +11 -0
- package/dist/esm/src/decorators/ToolProvider.d.ts.map +1 -1
- package/dist/esm/src/decorators/ToolProvider.js +10 -0
- package/dist/esm/src/decorators/ToolProvider.js.map +1 -1
- package/dist/esm/src/decorators/index.d.ts +19 -1
- package/dist/esm/src/decorators/index.d.ts.map +1 -1
- package/dist/esm/src/decorators/index.js +19 -1
- package/dist/esm/src/decorators/index.js.map +1 -1
- package/dist/esm/src/index.d.ts +5 -2
- package/dist/esm/src/index.d.ts.map +1 -1
- package/dist/esm/src/index.js +6 -2
- package/dist/esm/src/index.js.map +1 -1
- package/dist/esm/src/mcp/index.d.ts +10 -0
- package/dist/esm/src/mcp/index.d.ts.map +1 -0
- package/dist/esm/src/mcp/index.js +9 -0
- package/dist/esm/src/mcp/index.js.map +1 -0
- package/dist/esm/src/mcp/server.d.ts +84 -0
- package/dist/esm/src/mcp/server.d.ts.map +1 -0
- package/dist/esm/src/mcp/server.js +276 -0
- package/dist/esm/src/mcp/server.js.map +1 -0
- package/dist/esm/src/mcp/transport.d.ts +53 -0
- package/dist/esm/src/mcp/transport.d.ts.map +1 -0
- package/dist/esm/src/mcp/transport.js +126 -0
- package/dist/esm/src/mcp/transport.js.map +1 -0
- package/dist/esm/src/mcp/types.d.ts +175 -0
- package/dist/esm/src/mcp/types.d.ts.map +1 -0
- package/dist/esm/src/mcp/types.js +20 -0
- package/dist/esm/src/mcp/types.js.map +1 -0
- package/dist/esm/src/mcp-cli.d.ts +25 -0
- package/dist/esm/src/mcp-cli.d.ts.map +1 -0
- package/dist/esm/src/mcp-cli.js +53 -0
- package/dist/esm/src/mcp-cli.js.map +1 -0
- package/dist/esm/src/mcp-server.d.ts +10 -0
- package/dist/esm/src/mcp-server.d.ts.map +1 -0
- package/dist/esm/src/mcp-server.js +10 -0
- package/dist/esm/src/mcp-server.js.map +1 -0
- package/dist/esm/src/react/useNavigationHandler.d.ts +29 -11
- package/dist/esm/src/react/useNavigationHandler.d.ts.map +1 -1
- package/dist/esm/src/react/useNavigationHandler.js +53 -12
- package/dist/esm/src/react/useNavigationHandler.js.map +1 -1
- package/dist/esm/src/react/usePersistedState.js +1 -1
- package/dist/esm/src/react/usePersistedState.js.map +1 -1
- package/dist/esm/src/state/StateSync.d.ts +57 -0
- package/dist/esm/src/state/StateSync.d.ts.map +1 -0
- package/dist/esm/src/state/StateSync.js +123 -0
- package/dist/esm/src/state/StateSync.js.map +1 -0
- package/dist/esm/src/storage/LocalStorageAdapter.d.ts.map +1 -1
- package/dist/esm/src/storage/LocalStorageAdapter.js +1 -1
- package/dist/esm/src/storage/LocalStorageAdapter.js.map +1 -1
- package/dist/esm/src/storage/StateManager.d.ts +2 -2
- package/dist/esm/src/storage/StateManager.js +2 -2
- package/dist/esm/src/tools/SystemTools.js +1 -1
- package/dist/esm/src/tools/SystemTools.js.map +1 -1
- package/dist/esm/src/types/StateManagers.d.ts +2 -2
- package/dist/esm/src/types/StateManagers.d.ts.map +1 -1
- package/dist/esm/src/types/StateManagers.js +2 -2
- package/dist/esm/src/types/StateManagers.js.map +1 -1
- package/dist/esm/src/ui/react/chat/ChatBubble.d.ts +4 -0
- package/dist/esm/src/ui/react/chat/ChatBubble.d.ts.map +1 -1
- package/dist/esm/src/ui/react/chat/ChatBubble.js +3 -3
- package/dist/esm/src/ui/react/chat/ChatBubble.js.map +1 -1
- package/package.json +9 -17
|
@@ -17,7 +17,7 @@ import { StateManagers } from '../types/StateManagers.js';
|
|
|
17
17
|
let browserStateManager = null;
|
|
18
18
|
function getBrowserStateManager() {
|
|
19
19
|
if (!browserStateManager && typeof window !== 'undefined') {
|
|
20
|
-
browserStateManager = StateManager.getInstance(StateManagers.
|
|
20
|
+
browserStateManager = StateManager.getInstance(StateManagers.CoreV1, new LocalStorageAdapter());
|
|
21
21
|
}
|
|
22
22
|
return browserStateManager;
|
|
23
23
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usePersistedState.js","sourceRoot":"","sources":["../../../../src/react/usePersistedState.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AACrE,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAGvD,2DAA2D;AAC3D,IAAI,mBAAmB,GAAwB,IAAI,CAAC;AAEpD,SAAS,sBAAsB;IAC7B,IAAI,CAAC,mBAAmB,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE,CAAC;QAC1D,mBAAmB,GAAG,YAAY,CAAC,WAAW,CAC5C,aAAa,CAAC,
|
|
1
|
+
{"version":3,"file":"usePersistedState.js","sourceRoot":"","sources":["../../../../src/react/usePersistedState.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AACrE,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAGvD,2DAA2D;AAC3D,IAAI,mBAAmB,GAAwB,IAAI,CAAC;AAEpD,SAAS,sBAAsB;IAC7B,IAAI,CAAC,mBAAmB,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE,CAAC;QAC1D,mBAAmB,GAAG,YAAY,CAAC,WAAW,CAC5C,aAAa,CAAC,MAAM,EACpB,IAAI,mBAAmB,EAAE,CAC1B,CAAC;IACJ,CAAC;IACD,OAAO,mBAAoB,CAAC;AAC9B,CAAC;AAED,MAAM,UAAU,iBAAiB,CAC/B,GAAW,EACX,YAAe;IAEf,gDAAgD;IAChD,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAI,YAAY,CAAC,CAAC;IACpD,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAEpD,iDAAiD;IACjD,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,OAAO,MAAM,KAAK,WAAW;YAAE,OAAO;QAE1C,MAAM,YAAY,GAAG,sBAAsB,EAAE,CAAC;QAE9C,CAAC,KAAK,IAAI,EAAE;YACV,IAAI,CAAC;gBACH,MAAM,YAAY,CAAC,UAAU,EAAE,CAAC;gBAChC,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,GAAG,CAAgC,GAAG,CAAC,CAAC;gBAC1E,IAAI,MAAM,IAAI,OAAO,IAAI,MAAM,EAAE,CAAC;oBAChC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACzB,CAAC;YACH,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,sCAAsC;gBACtC,OAAO,CAAC,IAAI,CAAC,uCAAuC,GAAG,IAAI,EAAE,CAAC,CAAC,CAAC;YAClE,CAAC;YAED,aAAa,CAAC,IAAI,CAAC,CAAC;QACtB,CAAC,CAAC,EAAE,CAAC;IACP,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAEV,2DAA2D;IAC3D,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,UAAU,IAAI,OAAO,MAAM,KAAK,WAAW;YAAE,OAAO;QAEzD,MAAM,YAAY,GAAG,sBAAsB,EAAE,CAAC;QAE9C,CAAC,KAAK,IAAI,EAAE;YACV,IAAI,CAAC;gBACH,MAAM,YAAY,CAAC,GAAG,CAAgC,GAAG,EAAE;oBACzD,IAAI,EAAE,cAAc;oBACpB,WAAW,EAAE,GAAG;oBAChB,KAAK,EAAE,KAAK;iBACN,CAAC,CAAC,CAAE,6DAA6D;YAC3E,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,sCAAsC;gBACtC,OAAO,CAAC,IAAI,CAAC,uCAAuC,GAAG,IAAI,EAAE,CAAC,CAAC,CAAC;YAClE,CAAC;QACH,CAAC,CAAC,EAAE,CAAC;IACP,CAAC,EAAE,CAAC,GAAG,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC;IAE7B,OAAO,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;AAC3B,CAAC"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* State Synchronization Utilities
|
|
3
|
+
*
|
|
4
|
+
* Handles automatic syncing of component state to DOM and event triggering.
|
|
5
|
+
* Used by @Component decorator for stateful components.
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* State change event detail
|
|
9
|
+
*/
|
|
10
|
+
export interface StateChangeEventDetail {
|
|
11
|
+
/** Component name */
|
|
12
|
+
component: string;
|
|
13
|
+
/** New state */
|
|
14
|
+
state: any;
|
|
15
|
+
/** Timestamp */
|
|
16
|
+
timestamp: number;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Sync component state to DOM by writing to data-state attribute
|
|
20
|
+
*
|
|
21
|
+
* @param componentName - Component identifier (from @Component decorator)
|
|
22
|
+
* @param state - Current component state
|
|
23
|
+
*/
|
|
24
|
+
export declare function syncStateToDom(componentName: string, state: any): void;
|
|
25
|
+
/**
|
|
26
|
+
* Trigger state change event for test utilities and observers
|
|
27
|
+
*
|
|
28
|
+
* @param componentName - Component identifier
|
|
29
|
+
* @param state - New state
|
|
30
|
+
*/
|
|
31
|
+
export declare function triggerStateChange(componentName: string, state: any): void;
|
|
32
|
+
/**
|
|
33
|
+
* Get component state from DOM (read data-state attribute)
|
|
34
|
+
*
|
|
35
|
+
* @param componentName - Component identifier
|
|
36
|
+
* @returns Parsed state or null if not found
|
|
37
|
+
*/
|
|
38
|
+
export declare function getStateFromDom(componentName: string): any | null;
|
|
39
|
+
/**
|
|
40
|
+
* Wait for component state to match predicate
|
|
41
|
+
* Useful for testing async state changes
|
|
42
|
+
*
|
|
43
|
+
* @param componentName - Component identifier
|
|
44
|
+
* @param predicate - Function that returns true when state is as expected
|
|
45
|
+
* @param timeoutMs - Maximum wait time (default: 5000ms)
|
|
46
|
+
* @returns Promise that resolves when predicate returns true
|
|
47
|
+
*/
|
|
48
|
+
export declare function waitForState<T = any>(componentName: string, predicate: (state: T) => boolean, timeoutMs?: number): Promise<T>;
|
|
49
|
+
/**
|
|
50
|
+
* Subscribe to component state changes
|
|
51
|
+
*
|
|
52
|
+
* @param componentName - Component to watch (or '*' for all)
|
|
53
|
+
* @param callback - Function to call on state change
|
|
54
|
+
* @returns Unsubscribe function
|
|
55
|
+
*/
|
|
56
|
+
export declare function onStateChange(componentName: string | '*', callback: (detail: StateChangeEventDetail) => void): () => void;
|
|
57
|
+
//# sourceMappingURL=StateSync.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StateSync.d.ts","sourceRoot":"","sources":["../../../../src/state/StateSync.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,qBAAqB;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB;IAChB,KAAK,EAAE,GAAG,CAAC;IACX,gBAAgB;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,aAAa,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,IAAI,CAmBtE;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,aAAa,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,IAAI,CAc1E;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,aAAa,EAAE,MAAM,GAAG,GAAG,GAAG,IAAI,CAsBjE;AAED;;;;;;;;GAQG;AACH,wBAAsB,YAAY,CAAC,CAAC,GAAG,GAAG,EACxC,aAAa,EAAE,MAAM,EACrB,SAAS,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,OAAO,EAChC,SAAS,GAAE,MAAa,GACvB,OAAO,CAAC,CAAC,CAAC,CA4BZ;AAED;;;;;;GAMG;AACH,wBAAgB,aAAa,CAC3B,aAAa,EAAE,MAAM,GAAG,GAAG,EAC3B,QAAQ,EAAE,CAAC,MAAM,EAAE,sBAAsB,KAAK,IAAI,GACjD,MAAM,IAAI,CAgBZ"}
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* State Synchronization Utilities
|
|
3
|
+
*
|
|
4
|
+
* Handles automatic syncing of component state to DOM and event triggering.
|
|
5
|
+
* Used by @Component decorator for stateful components.
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Sync component state to DOM by writing to data-state attribute
|
|
9
|
+
*
|
|
10
|
+
* @param componentName - Component identifier (from @Component decorator)
|
|
11
|
+
* @param state - Current component state
|
|
12
|
+
*/
|
|
13
|
+
export function syncStateToDom(componentName, state) {
|
|
14
|
+
// Find element by data-component attribute
|
|
15
|
+
const element = document.querySelector(`[data-component="${componentName}"]`);
|
|
16
|
+
if (element) {
|
|
17
|
+
try {
|
|
18
|
+
// Serialize state to JSON and write to data-state
|
|
19
|
+
const stateJson = JSON.stringify(state);
|
|
20
|
+
element.setAttribute('data-state', stateJson);
|
|
21
|
+
}
|
|
22
|
+
catch (error) {
|
|
23
|
+
console.error(`[StateSync] Failed to serialize state for component '${componentName}':`, error);
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
else {
|
|
27
|
+
// Element not in DOM yet - this is OK during initialization
|
|
28
|
+
// Component might be created before rendering
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Trigger state change event for test utilities and observers
|
|
33
|
+
*
|
|
34
|
+
* @param componentName - Component identifier
|
|
35
|
+
* @param state - New state
|
|
36
|
+
*/
|
|
37
|
+
export function triggerStateChange(componentName, state) {
|
|
38
|
+
const detail = {
|
|
39
|
+
component: componentName,
|
|
40
|
+
state,
|
|
41
|
+
timestamp: Date.now()
|
|
42
|
+
};
|
|
43
|
+
const event = new CustomEvent('component:state:change', {
|
|
44
|
+
detail,
|
|
45
|
+
bubbles: false, // Don't bubble - listen on window
|
|
46
|
+
cancelable: false
|
|
47
|
+
});
|
|
48
|
+
window.dispatchEvent(event);
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Get component state from DOM (read data-state attribute)
|
|
52
|
+
*
|
|
53
|
+
* @param componentName - Component identifier
|
|
54
|
+
* @returns Parsed state or null if not found
|
|
55
|
+
*/
|
|
56
|
+
export function getStateFromDom(componentName) {
|
|
57
|
+
const element = document.querySelector(`[data-component="${componentName}"]`);
|
|
58
|
+
if (!element) {
|
|
59
|
+
return null;
|
|
60
|
+
}
|
|
61
|
+
const stateAttr = element.getAttribute('data-state');
|
|
62
|
+
if (!stateAttr) {
|
|
63
|
+
return null;
|
|
64
|
+
}
|
|
65
|
+
try {
|
|
66
|
+
return JSON.parse(stateAttr);
|
|
67
|
+
}
|
|
68
|
+
catch (error) {
|
|
69
|
+
console.error(`[StateSync] Failed to parse state for component '${componentName}':`, error);
|
|
70
|
+
return null;
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* Wait for component state to match predicate
|
|
75
|
+
* Useful for testing async state changes
|
|
76
|
+
*
|
|
77
|
+
* @param componentName - Component identifier
|
|
78
|
+
* @param predicate - Function that returns true when state is as expected
|
|
79
|
+
* @param timeoutMs - Maximum wait time (default: 5000ms)
|
|
80
|
+
* @returns Promise that resolves when predicate returns true
|
|
81
|
+
*/
|
|
82
|
+
export async function waitForState(componentName, predicate, timeoutMs = 5000) {
|
|
83
|
+
const startTime = Date.now();
|
|
84
|
+
return new Promise((resolve, reject) => {
|
|
85
|
+
const checkState = () => {
|
|
86
|
+
const state = getStateFromDom(componentName);
|
|
87
|
+
if (state && predicate(state)) {
|
|
88
|
+
resolve(state);
|
|
89
|
+
return;
|
|
90
|
+
}
|
|
91
|
+
if (Date.now() - startTime > timeoutMs) {
|
|
92
|
+
reject(new Error(`Timeout waiting for component '${componentName}' state to match predicate`));
|
|
93
|
+
return;
|
|
94
|
+
}
|
|
95
|
+
// Check again after short delay
|
|
96
|
+
setTimeout(checkState, 50);
|
|
97
|
+
};
|
|
98
|
+
// Start checking
|
|
99
|
+
checkState();
|
|
100
|
+
});
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* Subscribe to component state changes
|
|
104
|
+
*
|
|
105
|
+
* @param componentName - Component to watch (or '*' for all)
|
|
106
|
+
* @param callback - Function to call on state change
|
|
107
|
+
* @returns Unsubscribe function
|
|
108
|
+
*/
|
|
109
|
+
export function onStateChange(componentName, callback) {
|
|
110
|
+
const handler = (event) => {
|
|
111
|
+
const customEvent = event;
|
|
112
|
+
const { component } = customEvent.detail;
|
|
113
|
+
if (componentName === '*' || component === componentName) {
|
|
114
|
+
callback(customEvent.detail);
|
|
115
|
+
}
|
|
116
|
+
};
|
|
117
|
+
window.addEventListener('component:state:change', handler);
|
|
118
|
+
// Return unsubscribe function
|
|
119
|
+
return () => {
|
|
120
|
+
window.removeEventListener('component:state:change', handler);
|
|
121
|
+
};
|
|
122
|
+
}
|
|
123
|
+
//# sourceMappingURL=StateSync.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StateSync.js","sourceRoot":"","sources":["../../../../src/state/StateSync.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LocalStorageAdapter.d.ts","sourceRoot":"","sources":["../../../../src/storage/LocalStorageAdapter.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,MAAM,WAAW,cAAc;IAC7B,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IAC/B,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5C,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACnC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACnC,IAAI,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;CAC3B;AAED;;;GAGG;AACH,qBAAa,mBAAoB,YAAW,cAAc;IACxD,OAAO,CAAC,MAAM,CAAS;gBAEX,MAAM,GAAE,
|
|
1
|
+
{"version":3,"file":"LocalStorageAdapter.d.ts","sourceRoot":"","sources":["../../../../src/storage/LocalStorageAdapter.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,MAAM,WAAW,cAAc;IAC7B,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IAC/B,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5C,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACnC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACnC,IAAI,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;CAC3B;AAED;;;GAGG;AACH,qBAAa,mBAAoB,YAAW,cAAc;IACxD,OAAO,CAAC,MAAM,CAAS;gBAEX,MAAM,GAAE,MAAe;IAInC,OAAO,CAAC,MAAM;IAIR,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAa9B,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IAY3C,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAWlC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAYtB,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAMlC,IAAI,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;CAYhC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LocalStorageAdapter.js","sourceRoot":"","sources":["../../../../src/storage/LocalStorageAdapter.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAWH;;;GAGG;AACH,MAAM,OAAO,mBAAmB;IAG9B,YAAY,SAAiB,
|
|
1
|
+
{"version":3,"file":"LocalStorageAdapter.js","sourceRoot":"","sources":["../../../../src/storage/LocalStorageAdapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,13 +14,13 @@
|
|
|
14
14
|
* ```typescript
|
|
15
15
|
* // Browser
|
|
16
16
|
* const state = StateManager.getInstance(
|
|
17
|
-
* StateManagers.
|
|
17
|
+
* StateManagers.CoreV1,
|
|
18
18
|
* new LocalStorageAdapter()
|
|
19
19
|
* );
|
|
20
20
|
*
|
|
21
21
|
* // Chrome Extension MV3
|
|
22
22
|
* const state = StateManager.getInstance(
|
|
23
|
-
* StateManagers.
|
|
23
|
+
* StateManagers.CoreV1,
|
|
24
24
|
* new ChromeStorageAdapter()
|
|
25
25
|
* );
|
|
26
26
|
*
|
|
@@ -14,13 +14,13 @@
|
|
|
14
14
|
* ```typescript
|
|
15
15
|
* // Browser
|
|
16
16
|
* const state = StateManager.getInstance(
|
|
17
|
-
* StateManagers.
|
|
17
|
+
* StateManagers.CoreV1,
|
|
18
18
|
* new LocalStorageAdapter()
|
|
19
19
|
* );
|
|
20
20
|
*
|
|
21
21
|
* // Chrome Extension MV3
|
|
22
22
|
* const state = StateManager.getInstance(
|
|
23
|
-
* StateManagers.
|
|
23
|
+
* StateManagers.CoreV1,
|
|
24
24
|
* new ChromeStorageAdapter()
|
|
25
25
|
* );
|
|
26
26
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SystemTools.js","sourceRoot":"","sources":["../../../../src/tools/SystemTools.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAIH,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AA8EnE;;GAEG;AACH,SAAS,mBAAmB,CAAC,CAAS,EAAE,CAAS;IAC/C,MAAM,MAAM,GAAe,EAAE,CAAC;IAE9B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACnC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACnC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IACnB,CAAC;IAED,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACnC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACnC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;gBACxC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YACtC,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CACrB,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,eAAe;gBACzC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,EAAM,YAAY;gBACtC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAM,WAAW;iBACtC,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;AACpC,CAAC;AAED;;GAEG;AACH,SAAS,eAAe,CAAC,CAAS,EAAE,CAAS;IAC3C,MAAM,QAAQ,GAAG,mBAAmB,CAAC,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;IACvE,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;IAC/C,OAAO,CAAC,GAAG,CAAC,QAAQ,GAAG,SAAS,CAAC,CAAC;AACpC,CAAC;AAED;;GAEG;AACH,MAAM,OAAO,WAAW;IAWtB;;OAEG;IACH,MAAM,CAAC,KAAK,CAAC,IAAI;QACf,MAAM,QAAQ,GAAG,YAAY,CAAC,QAAQ,EAAE,CAAC;QACzC,MAAM,UAAU,GAAG,IAAI,GAAG,EAAgB,CAAC;QAE3C,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YACtB,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAClB,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAChC,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,OAAO;YACL,OAAO,EAAE;gBACP,
|
|
1
|
+
{"version":3,"file":"SystemTools.js","sourceRoot":"","sources":["../../../../src/tools/SystemTools.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
*
|
|
7
7
|
* @example
|
|
8
8
|
* ```typescript
|
|
9
|
-
* const coreState = StateManager.getInstance(StateManagers.
|
|
9
|
+
* const coreState = StateManager.getInstance(StateManagers.CoreV1, adapter);
|
|
10
10
|
* const userState = StateManager.getInstance(StateManagers.UserSession, adapter);
|
|
11
11
|
* ```
|
|
12
12
|
*/
|
|
@@ -15,7 +15,7 @@ export declare enum StateManagers {
|
|
|
15
15
|
* Core application state manager (v1)
|
|
16
16
|
* Used for fundamental system state
|
|
17
17
|
*/
|
|
18
|
-
|
|
18
|
+
CoreV1 = "core_v1",
|
|
19
19
|
/**
|
|
20
20
|
* User session state manager
|
|
21
21
|
* Isolated user-specific data
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StateManagers.d.ts","sourceRoot":"","sources":["../../../../src/types/StateManagers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,oBAAY,aAAa;IACvB;;;OAGG;IACH,
|
|
1
|
+
{"version":3,"file":"StateManagers.d.ts","sourceRoot":"","sources":["../../../../src/types/StateManagers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,oBAAY,aAAa;IACvB;;;OAGG;IACH,MAAM,YAAY;IAElB;;;OAGG;IACH,WAAW,iBAAiB;IAE5B;;;OAGG;IACH,OAAO,YAAY;IAEnB;;;OAGG;IACH,IAAI,SAAS;CACd"}
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
*
|
|
7
7
|
* @example
|
|
8
8
|
* ```typescript
|
|
9
|
-
* const coreState = StateManager.getInstance(StateManagers.
|
|
9
|
+
* const coreState = StateManager.getInstance(StateManagers.CoreV1, adapter);
|
|
10
10
|
* const userState = StateManager.getInstance(StateManagers.UserSession, adapter);
|
|
11
11
|
* ```
|
|
12
12
|
*/
|
|
@@ -16,7 +16,7 @@ export var StateManagers;
|
|
|
16
16
|
* Core application state manager (v1)
|
|
17
17
|
* Used for fundamental system state
|
|
18
18
|
*/
|
|
19
|
-
StateManagers["
|
|
19
|
+
StateManagers["CoreV1"] = "core_v1";
|
|
20
20
|
/**
|
|
21
21
|
* User session state manager
|
|
22
22
|
* Isolated user-specific data
|
|
@@ -1 +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,
|
|
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,mCAAkB,CAAA;IAElB;;;OAGG;IACH,6CAA4B,CAAA;IAE5B;;;OAGG;IACH,oCAAmB,CAAA;IAEnB;;;OAGG;IACH,8BAAa,CAAA;AACf,CAAC,EAxBW,aAAa,KAAb,aAAa,QAwBxB"}
|
|
@@ -17,6 +17,10 @@ interface ChatBubbleProps {
|
|
|
17
17
|
messages: Message[];
|
|
18
18
|
onSendMessage: (message: string) => void;
|
|
19
19
|
onClearChat?: () => void;
|
|
20
|
+
/** Storage key prefix for localStorage persistence. Default: 'chat-' */
|
|
21
|
+
storagePrefix?: string;
|
|
22
|
+
/** Title displayed in the chat header. Default: 'Chat' */
|
|
23
|
+
title?: string;
|
|
20
24
|
}
|
|
21
25
|
export declare const ChatBubble: React.FC<ChatBubbleProps>;
|
|
22
26
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChatBubble.d.ts","sourceRoot":"","sources":["../../../../../../src/ui/react/chat/ChatBubble.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAsC,MAAM,OAAO,CAAC;AAgB3D,UAAU,OAAO;IACf,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,QAAQ,CAAC;IAC/B,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,UAAU,eAAe;IACvB,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,aAAa,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"ChatBubble.d.ts","sourceRoot":"","sources":["../../../../../../src/ui/react/chat/ChatBubble.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAsC,MAAM,OAAO,CAAC;AAgB3D,UAAU,OAAO;IACf,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,QAAQ,CAAC;IAC/B,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,UAAU,eAAe;IACvB,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,aAAa,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IACzB,wEAAwE;IACxE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,0DAA0D;IAC1D,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CA6RhD,CAAC"}
|
|
@@ -19,8 +19,8 @@ const ChatNames = {
|
|
|
19
19
|
const useChatInput = () => ({
|
|
20
20
|
registerInput: (callback) => { }
|
|
21
21
|
});
|
|
22
|
-
const
|
|
23
|
-
|
|
22
|
+
export const ChatBubble = ({ messages, onSendMessage, onClearChat, storagePrefix = 'chat-', title = 'Chat', }) => {
|
|
23
|
+
const CHAT_EXPANDED_KEY = `${storagePrefix}expanded`;
|
|
24
24
|
// Initialize with default value (true) for both server and client to prevent hydration mismatch
|
|
25
25
|
const [isExpanded, setIsExpanded] = useState(true);
|
|
26
26
|
const [inputValue, setInputValue] = useState('');
|
|
@@ -125,7 +125,7 @@ export const ChatBubble = ({ messages, onSendMessage, onClearChat }) => {
|
|
|
125
125
|
React.createElement("span", { className: "text-white text-base sm:text-lg" }, "\uD83E\uDD16")),
|
|
126
126
|
React.createElement("div", { className: "absolute -bottom-1 -right-1 w-3 h-3 sm:w-4 sm:h-4 bg-green-500 rounded-full border-2 border-white" })),
|
|
127
127
|
React.createElement("div", null,
|
|
128
|
-
React.createElement("h3", { className: "font-bold text-gray-900 text-sm sm:text-base" },
|
|
128
|
+
React.createElement("h3", { className: "font-bold text-gray-900 text-sm sm:text-base" }, title),
|
|
129
129
|
React.createElement("p", { className: "text-xs text-gray-600 hidden sm:block" }, "I'm a TOOL system AI can use to control this site"))),
|
|
130
130
|
React.createElement("div", { className: "flex items-center space-x-1" },
|
|
131
131
|
onClearChat && (React.createElement("button", { onClick: onClearChat, className: "p-1 text-gray-400 hover:text-gray-600 transition-colors", title: "Clear chat", "data-testid": ChatNames.clearButton },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChatBubble.js","sourceRoot":"","sources":["../../../../../../src/ui/react/chat/ChatBubble.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAE1D,2DAA2D;AAC3D,MAAM,SAAS,GAAG;IAChB,MAAM,EAAE,UAAU,CAAC,gBAAgB;IACnC,KAAK,EAAE,UAAU,CAAC,SAAS;IAC3B,UAAU,EAAE,UAAU,CAAC,cAAc;IACrC,WAAW,EAAE,UAAU,CAAC,eAAe;CACxC,CAAC;AAEF,2EAA2E;AAC3E,MAAM,YAAY,GAAG,GAAG,EAAE,CAAC,CAAC;IAC1B,aAAa,EAAE,CAAC,QAAkD,EAAE,EAAE,GAAE,CAAC;CAC1E,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"ChatBubble.js","sourceRoot":"","sources":["../../../../../../src/ui/react/chat/ChatBubble.tsx"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@supernal/interface",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.4",
|
|
4
4
|
"description": "Universal AI Interface - Make any application AI-controllable with decorators (Open Source Edition)",
|
|
5
5
|
"main": "./dist/cjs/src/index.js",
|
|
6
6
|
"module": "./dist/esm/src/index.js",
|
|
@@ -11,20 +11,10 @@
|
|
|
11
11
|
"require": "./dist/cjs/src/index.js",
|
|
12
12
|
"types": "./dist/esm/src/index.d.ts"
|
|
13
13
|
},
|
|
14
|
-
"./
|
|
15
|
-
"import": "./dist/esm/src/
|
|
16
|
-
"require": "./dist/cjs/src/
|
|
17
|
-
"types": "./dist/esm/src/
|
|
18
|
-
},
|
|
19
|
-
"./react": {
|
|
20
|
-
"import": "./dist/esm/src/react/index.js",
|
|
21
|
-
"require": "./dist/cjs/src/react/index.js",
|
|
22
|
-
"types": "./dist/esm/src/react/index.d.ts"
|
|
23
|
-
},
|
|
24
|
-
"./testing": {
|
|
25
|
-
"import": "./dist/esm/src/testing/index.js",
|
|
26
|
-
"require": "./dist/cjs/src/testing/index.js",
|
|
27
|
-
"types": "./dist/esm/src/testing/index.d.ts"
|
|
14
|
+
"./mcp-server": {
|
|
15
|
+
"import": "./dist/esm/src/mcp-server.js",
|
|
16
|
+
"require": "./dist/cjs/src/mcp-server.js",
|
|
17
|
+
"types": "./dist/esm/src/mcp-server.d.ts"
|
|
28
18
|
},
|
|
29
19
|
"./browser": {
|
|
30
20
|
"import": "./dist/esm/src/browser.js",
|
|
@@ -88,14 +78,16 @@
|
|
|
88
78
|
"adapter-pattern",
|
|
89
79
|
"typescript"
|
|
90
80
|
],
|
|
91
|
-
"author": "Supernal
|
|
81
|
+
"author": "Supernal Intelligence",
|
|
92
82
|
"license": "MIT",
|
|
93
83
|
"publishConfig": {
|
|
94
84
|
"access": "public"
|
|
95
85
|
},
|
|
96
86
|
"dependencies": {
|
|
87
|
+
"@ai-sdk/mcp": "^0.0.8",
|
|
97
88
|
"@playwright/test": "^1.57.0",
|
|
98
|
-
"glob": "^13.0.0"
|
|
89
|
+
"glob": "^13.0.0",
|
|
90
|
+
"reflect-metadata": "^0.2.2"
|
|
99
91
|
},
|
|
100
92
|
"peerDependencies": {
|
|
101
93
|
"react": ">=18.0.0",
|