@assistant-ui/store 0.0.6 → 0.1.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/README.md +13 -13
- package/dist/{AssistantIf.d.ts → AuiIf.d.ts} +4 -4
- package/dist/AuiIf.d.ts.map +1 -0
- package/dist/AuiIf.js +8 -0
- package/dist/AuiIf.js.map +1 -0
- package/dist/Derived.d.ts +2 -2
- package/dist/Derived.d.ts.map +1 -1
- package/dist/Derived.js +1 -1
- package/dist/index.d.ts +5 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -5
- package/dist/index.js.map +1 -1
- package/dist/tapClientList.d.ts.map +1 -1
- package/dist/tapClientList.js +16 -10
- package/dist/tapClientList.js.map +1 -1
- package/dist/tapClientLookup.d.ts +3 -3
- package/dist/tapClientLookup.d.ts.map +1 -1
- package/dist/tapClientLookup.js +28 -16
- package/dist/tapClientLookup.js.map +1 -1
- package/dist/tapClientResource.d.ts +6 -2
- package/dist/tapClientResource.d.ts.map +1 -1
- package/dist/tapClientResource.js +11 -5
- package/dist/tapClientResource.js.map +1 -1
- package/dist/types/client.d.ts +4 -2
- package/dist/types/client.d.ts.map +1 -1
- package/dist/useAui.d.ts +20 -0
- package/dist/useAui.d.ts.map +1 -0
- package/dist/{useAssistantClient.js → useAui.js} +65 -35
- package/dist/useAui.js.map +1 -0
- package/dist/useAuiEvent.d.ts +3 -0
- package/dist/useAuiEvent.d.ts.map +1 -0
- package/dist/{useAssistantEvent.js → useAuiEvent.js} +4 -4
- package/dist/useAuiEvent.js.map +1 -0
- package/dist/{useAssistantState.d.ts → useAuiState.d.ts} +4 -4
- package/dist/useAuiState.d.ts.map +1 -0
- package/dist/{useAssistantState.js → useAuiState.js} +6 -6
- package/dist/useAuiState.js.map +1 -0
- package/dist/utils/NotificationManager.d.ts +1 -1
- package/dist/utils/NotificationManager.d.ts.map +1 -1
- package/dist/utils/NotificationManager.js +3 -2
- package/dist/utils/NotificationManager.js.map +1 -1
- package/dist/utils/StoreResource.d.ts +1 -1
- package/dist/utils/StoreResource.d.ts.map +1 -1
- package/dist/utils/StoreResource.js +2 -4
- package/dist/utils/StoreResource.js.map +1 -1
- package/dist/utils/react-assistant-context.d.ts +5 -5
- package/dist/utils/react-assistant-context.d.ts.map +1 -1
- package/dist/utils/react-assistant-context.js +6 -6
- package/dist/utils/react-assistant-context.js.map +1 -1
- package/dist/utils/splitClients.d.ts +2 -20
- package/dist/utils/splitClients.d.ts.map +1 -1
- package/dist/utils/splitClients.js +13 -1
- package/dist/utils/splitClients.js.map +1 -1
- package/dist/utils/tap-assistant-context.d.ts.map +1 -1
- package/dist/utils/tap-assistant-context.js +3 -3
- package/dist/utils/tap-assistant-context.js.map +1 -1
- package/dist/utils/tap-client-stack-context.js +3 -3
- package/dist/utils/tap-client-stack-context.js.map +1 -1
- package/dist/wrapperResource.d.ts +3 -0
- package/dist/wrapperResource.d.ts.map +1 -0
- package/dist/wrapperResource.js +11 -0
- package/dist/wrapperResource.js.map +1 -0
- package/package.json +2 -2
- package/src/AuiIf.tsx +17 -0
- package/src/Derived.ts +1 -1
- package/src/index.ts +5 -5
- package/src/tapClientList.ts +27 -14
- package/src/tapClientLookup.ts +53 -33
- package/src/tapClientResource.ts +12 -6
- package/src/types/client.ts +2 -2
- package/src/{useAssistantClient.tsx → useAui.tsx} +95 -52
- package/src/{useAssistantEvent.ts → useAuiEvent.ts} +3 -3
- package/src/{useAssistantState.tsx → useAuiState.tsx} +5 -7
- package/src/utils/NotificationManager.ts +3 -2
- package/src/utils/StoreResource.ts +3 -5
- package/src/utils/react-assistant-context.tsx +9 -8
- package/src/utils/splitClients.ts +22 -7
- package/src/utils/tap-assistant-context.ts +5 -6
- package/src/utils/tap-client-stack-context.ts +4 -4
- package/src/wrapperResource.ts +17 -0
- package/dist/AssistantIf.d.ts.map +0 -1
- package/dist/AssistantIf.js +0 -8
- package/dist/AssistantIf.js.map +0 -1
- package/dist/useAssistantClient.d.ts +0 -17
- package/dist/useAssistantClient.d.ts.map +0 -1
- package/dist/useAssistantClient.js.map +0 -1
- package/dist/useAssistantEvent.d.ts +0 -3
- package/dist/useAssistantEvent.d.ts.map +0 -1
- package/dist/useAssistantEvent.js.map +0 -1
- package/dist/useAssistantState.d.ts.map +0 -1
- package/dist/useAssistantState.js.map +0 -1
- package/src/AssistantIf.tsx +0 -17
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
import { resource
|
|
1
|
+
import { resource } from "@assistant-ui/tap";
|
|
2
2
|
import type { ClientStack } from "./tap-client-stack-context";
|
|
3
3
|
import type {
|
|
4
4
|
AssistantEventName,
|
|
5
5
|
AssistantEventPayload,
|
|
6
6
|
} from "../types/events";
|
|
7
7
|
import { Unsubscribe } from "../types/client";
|
|
8
|
+
import { tapConst } from "@assistant-ui/tap";
|
|
8
9
|
|
|
9
10
|
type InternalCallback = (payload: unknown, clientStack: ClientStack) => void;
|
|
10
11
|
|
|
@@ -26,7 +27,7 @@ export type NotificationManager = {
|
|
|
26
27
|
};
|
|
27
28
|
|
|
28
29
|
export const NotificationManager = resource((): NotificationManager => {
|
|
29
|
-
return
|
|
30
|
+
return tapConst(() => {
|
|
30
31
|
const listeners = new Map<string, Set<InternalCallback>>();
|
|
31
32
|
const wildcardListeners = new Set<InternalCallback>();
|
|
32
33
|
const subscribers = new Set<() => void>();
|
|
@@ -11,7 +11,7 @@ export interface Store<TState> {
|
|
|
11
11
|
/**
|
|
12
12
|
* Get the current state of the store.
|
|
13
13
|
*/
|
|
14
|
-
|
|
14
|
+
getValue(): TState;
|
|
15
15
|
|
|
16
16
|
/**
|
|
17
17
|
* Subscribe to the store.
|
|
@@ -23,13 +23,11 @@ export const StoreResource = resource(
|
|
|
23
23
|
<TState>(element: ResourceElement<TState>): Store<TState> => {
|
|
24
24
|
const [handle] = tapState(() => createResource(element, { mount: false }));
|
|
25
25
|
|
|
26
|
-
tapEffect(() =>
|
|
27
|
-
return handle.unmount;
|
|
28
|
-
}, [handle]);
|
|
26
|
+
tapEffect(() => handle.unmount, [handle]);
|
|
29
27
|
|
|
30
28
|
tapEffect(() => {
|
|
31
29
|
handle.render(element);
|
|
32
|
-
}
|
|
30
|
+
});
|
|
33
31
|
|
|
34
32
|
return handle;
|
|
35
33
|
},
|
|
@@ -34,7 +34,7 @@ class DefaultAssistantClientProxyHandler
|
|
|
34
34
|
);
|
|
35
35
|
if (introspection !== false) return introspection;
|
|
36
36
|
return createErrorClientField(
|
|
37
|
-
|
|
37
|
+
"You are using a component or hook that requires an AuiProvider. Wrap your component in an <AuiProvider> component.",
|
|
38
38
|
);
|
|
39
39
|
}
|
|
40
40
|
|
|
@@ -50,7 +50,7 @@ class DefaultAssistantClientProxyHandler
|
|
|
50
50
|
);
|
|
51
51
|
}
|
|
52
52
|
}
|
|
53
|
-
/** Default context value - throws "wrap in
|
|
53
|
+
/** Default context value - throws "wrap in AuiProvider" error */
|
|
54
54
|
export const DefaultAssistantClient: AssistantClient =
|
|
55
55
|
new Proxy<AssistantClient>(
|
|
56
56
|
{} as AssistantClient,
|
|
@@ -67,6 +67,7 @@ export const createRootAssistantClient = (): AssistantClient =>
|
|
|
67
67
|
get(_: AssistantClient, prop: string | symbol) {
|
|
68
68
|
const introspection = handleIntrospectionProp(prop, "AssistantClient");
|
|
69
69
|
if (introspection !== false) return introspection;
|
|
70
|
+
|
|
70
71
|
return createErrorClientField(
|
|
71
72
|
`The current scope does not have a "${String(prop)}" property.`,
|
|
72
73
|
);
|
|
@@ -87,20 +88,20 @@ export const useAssistantContextValue = (): AssistantClient => {
|
|
|
87
88
|
*
|
|
88
89
|
* @example
|
|
89
90
|
* ```typescript
|
|
90
|
-
* <
|
|
91
|
+
* <AuiProvider value={aui}>
|
|
91
92
|
* <YourApp />
|
|
92
|
-
* </
|
|
93
|
+
* </AuiProvider>
|
|
93
94
|
* ```
|
|
94
95
|
*/
|
|
95
|
-
export const
|
|
96
|
-
|
|
96
|
+
export const AuiProvider = ({
|
|
97
|
+
value,
|
|
97
98
|
children,
|
|
98
99
|
}: {
|
|
99
|
-
|
|
100
|
+
value: AssistantClient;
|
|
100
101
|
children: React.ReactNode;
|
|
101
102
|
}): React.ReactElement => {
|
|
102
103
|
return (
|
|
103
|
-
<AssistantContext.Provider value={
|
|
104
|
+
<AssistantContext.Provider value={value}>
|
|
104
105
|
{children}
|
|
105
106
|
</AssistantContext.Provider>
|
|
106
107
|
);
|
|
@@ -5,7 +5,8 @@ import type {
|
|
|
5
5
|
ClientNames,
|
|
6
6
|
} from "../types/client";
|
|
7
7
|
import { getDefaultPeers } from "../attachDefaultPeers";
|
|
8
|
-
import type {
|
|
8
|
+
import type { useAui } from "../useAui";
|
|
9
|
+
import { tapMemo } from "@assistant-ui/tap";
|
|
9
10
|
|
|
10
11
|
export type RootClients = Partial<
|
|
11
12
|
Record<ClientNames, ClientElement<ClientNames>>
|
|
@@ -32,16 +33,13 @@ export type DerivedClients = Partial<
|
|
|
32
33
|
* // derivedClients = { bar: ... }
|
|
33
34
|
* ```
|
|
34
35
|
*/
|
|
35
|
-
|
|
36
|
-
clients: useAssistantClient.Props,
|
|
37
|
-
baseClient: AssistantClient,
|
|
38
|
-
) {
|
|
36
|
+
function splitClients(clients: useAui.Props, baseClient: AssistantClient) {
|
|
39
37
|
const rootClients: RootClients = {};
|
|
40
38
|
const derivedClients: DerivedClients = {};
|
|
41
39
|
|
|
42
40
|
for (const [key, clientElement] of Object.entries(clients) as [
|
|
43
|
-
keyof
|
|
44
|
-
NonNullable<
|
|
41
|
+
keyof useAui.Props,
|
|
42
|
+
NonNullable<useAui.Props[keyof useAui.Props]>,
|
|
45
43
|
][]) {
|
|
46
44
|
if (clientElement.type === Derived) {
|
|
47
45
|
derivedClients[key] = clientElement as DerivedElement<ClientNames>;
|
|
@@ -83,3 +81,20 @@ export function splitClients(
|
|
|
83
81
|
|
|
84
82
|
return { rootClients, derivedClients };
|
|
85
83
|
}
|
|
84
|
+
|
|
85
|
+
const tapShallowMemoObject = <T extends object>(object: T) => {
|
|
86
|
+
// biome-ignore lint/correctness/useExhaustiveDependencies: shallow memo
|
|
87
|
+
return tapMemo(() => object, [...Object.entries(object).flat()]);
|
|
88
|
+
};
|
|
89
|
+
|
|
90
|
+
export const tapSplitClients = (
|
|
91
|
+
clients: useAui.Props,
|
|
92
|
+
baseClient: AssistantClient,
|
|
93
|
+
) => {
|
|
94
|
+
const { rootClients, derivedClients } = splitClients(clients, baseClient);
|
|
95
|
+
|
|
96
|
+
return {
|
|
97
|
+
rootClients: tapShallowMemoObject(rootClients),
|
|
98
|
+
derivedClients: tapShallowMemoObject(derivedClients),
|
|
99
|
+
};
|
|
100
|
+
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
|
-
|
|
3
|
-
|
|
2
|
+
createResourceContext,
|
|
3
|
+
tap,
|
|
4
4
|
withContextProvider,
|
|
5
5
|
tapEffectEvent,
|
|
6
6
|
} from "@assistant-ui/tap";
|
|
@@ -22,9 +22,8 @@ export type AssistantTapContextValue = {
|
|
|
22
22
|
emit: EmitFn;
|
|
23
23
|
};
|
|
24
24
|
|
|
25
|
-
const AssistantTapContext =
|
|
26
|
-
null
|
|
27
|
-
);
|
|
25
|
+
const AssistantTapContext =
|
|
26
|
+
createResourceContext<AssistantTapContextValue | null>(null);
|
|
28
27
|
|
|
29
28
|
export const withAssistantTapContextProvider = <TResult>(
|
|
30
29
|
value: AssistantTapContextValue,
|
|
@@ -34,7 +33,7 @@ export const withAssistantTapContextProvider = <TResult>(
|
|
|
34
33
|
};
|
|
35
34
|
|
|
36
35
|
const tapAssistantTapContext = () => {
|
|
37
|
-
const ctx =
|
|
36
|
+
const ctx = tap(AssistantTapContext);
|
|
38
37
|
if (!ctx) throw new Error("AssistantTapContext is not available");
|
|
39
38
|
|
|
40
39
|
return ctx;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
|
-
|
|
3
|
-
|
|
2
|
+
createResourceContext,
|
|
3
|
+
tap,
|
|
4
4
|
withContextProvider,
|
|
5
5
|
tapMemo,
|
|
6
6
|
} from "@assistant-ui/tap";
|
|
@@ -25,13 +25,13 @@ export const getClientIndex = (client: ClientMethods): number => {
|
|
|
25
25
|
*/
|
|
26
26
|
export type ClientStack = readonly ClientMethods[];
|
|
27
27
|
|
|
28
|
-
const ClientStackContext =
|
|
28
|
+
const ClientStackContext = createResourceContext<ClientStack>([]);
|
|
29
29
|
|
|
30
30
|
/**
|
|
31
31
|
* Get the current client stack inside a tap resource.
|
|
32
32
|
*/
|
|
33
33
|
export const tapClientStack = (): ClientStack => {
|
|
34
|
-
return
|
|
34
|
+
return tap(ClientStackContext);
|
|
35
35
|
};
|
|
36
36
|
|
|
37
37
|
/**
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import {
|
|
2
|
+
type ResourceElement,
|
|
3
|
+
Resource,
|
|
4
|
+
resource,
|
|
5
|
+
withKey,
|
|
6
|
+
} from "@assistant-ui/tap";
|
|
7
|
+
|
|
8
|
+
export const wrapperResource = <R, P>(
|
|
9
|
+
fn: (props: ResourceElement<P>) => R,
|
|
10
|
+
): Resource<R, ResourceElement<P>> => {
|
|
11
|
+
const res = resource(fn);
|
|
12
|
+
return (props: ResourceElement<P>) => {
|
|
13
|
+
const el = res(props);
|
|
14
|
+
if (props.key === undefined) return el;
|
|
15
|
+
return withKey(props.key, el);
|
|
16
|
+
};
|
|
17
|
+
};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"AssistantIf.d.ts","sourceRoot":"","sources":["../src/AssistantIf.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,EAAE,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAEnD,OAAO,KAAK,EAAE,cAAc,EAAE,0BAAuB;AAErD,yBAAiB,WAAW,CAAC;IAC3B,KAAY,KAAK,GAAG,iBAAiB,CAAC;QAAE,SAAS,EAAE,WAAW,CAAC,SAAS,CAAA;KAAE,CAAC,CAAC;IAC5E,KAAY,SAAS,GAAG,CAAC,KAAK,EAAE,cAAc,KAAK,OAAO,CAAC;CAC5D;AAED,eAAO,MAAM,WAAW,EAAE,EAAE,CAAC,WAAW,CAAC,KAAK,CAG7C,CAAC"}
|
package/dist/AssistantIf.js
DELETED
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
import { useAssistantState } from "./useAssistantState.js";
|
|
3
|
-
export const AssistantIf = ({ children, condition }) => {
|
|
4
|
-
const result = useAssistantState(condition);
|
|
5
|
-
return result ? children : null;
|
|
6
|
-
};
|
|
7
|
-
AssistantIf.displayName = "AssistantIf";
|
|
8
|
-
//# sourceMappingURL=AssistantIf.js.map
|
package/dist/AssistantIf.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"AssistantIf.js","sourceRoot":"","sources":["../src/AssistantIf.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAGb,OAAO,EAAE,iBAAiB,EAAE,+BAA4B;AAQxD,MAAM,CAAC,MAAM,WAAW,GAA0B,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,EAAE;IAC5E,MAAM,MAAM,GAAG,iBAAiB,CAAC,SAAS,CAAC,CAAC;IAC5C,OAAO,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC;AAClC,CAAC,CAAC;AAEF,WAAW,CAAC,WAAW,GAAG,aAAa,CAAC"}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import type { AssistantClient, ClientNames, ClientElement } from "./types/client.js";
|
|
2
|
-
import { DerivedElement } from "./Derived.js";
|
|
3
|
-
/**
|
|
4
|
-
* Resource that creates an extended AssistantClient.
|
|
5
|
-
*/
|
|
6
|
-
export declare const AssistantClientResource: import("@assistant-ui/tap").Resource<AssistantClient, {
|
|
7
|
-
baseClient: AssistantClient;
|
|
8
|
-
clients: useAssistantClient.Props;
|
|
9
|
-
}>;
|
|
10
|
-
export declare namespace useAssistantClient {
|
|
11
|
-
type Props = {
|
|
12
|
-
[K in ClientNames]?: ClientElement<K> | DerivedElement<K>;
|
|
13
|
-
};
|
|
14
|
-
}
|
|
15
|
-
export declare function useAssistantClient(): AssistantClient;
|
|
16
|
-
export declare function useAssistantClient(clients: useAssistantClient.Props): AssistantClient;
|
|
17
|
-
//# sourceMappingURL=useAssistantClient.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useAssistantClient.d.ts","sourceRoot":"","sources":["../src/useAssistantClient.tsx"],"names":[],"mappings":"AAaA,OAAO,KAAK,EACV,eAAe,EAEf,WAAW,EACX,aAAa,EAEd,0BAAuB;AACxB,OAAO,EAAW,cAAc,EAAE,qBAAkB;AAmOpD;;GAEG;AACH,eAAO,MAAM,uBAAuB;gBAKpB,eAAe;aAClB,kBAAkB,CAAC,KAAK;EA4CpC,CAAC;AAEF,yBAAiB,kBAAkB,CAAC;IAClC,KAAY,KAAK,GAAG;SACjB,CAAC,IAAI,WAAW,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC;KAC1D,CAAC;CACH;AAED,wBAAgB,kBAAkB,IAAI,eAAe,CAAC;AACtD,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,kBAAkB,CAAC,KAAK,GAChC,eAAe,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useAssistantClient.js","sourceRoot":"","sources":["../src/useAssistantClient.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
import type { AssistantEventName, AssistantEventCallback, AssistantEventSelector } from "./types/events.js";
|
|
2
|
-
export declare const useAssistantEvent: <TEvent extends AssistantEventName>(selector: AssistantEventSelector<TEvent>, callback: AssistantEventCallback<TEvent>) => void;
|
|
3
|
-
//# sourceMappingURL=useAssistantEvent.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useAssistantEvent.d.ts","sourceRoot":"","sources":["../src/useAssistantEvent.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,kBAAkB,EAClB,sBAAsB,EACtB,sBAAsB,EACvB,0BAAuB;AAGxB,eAAO,MAAM,iBAAiB,GAAI,MAAM,SAAS,kBAAkB,EACjE,UAAU,sBAAsB,CAAC,MAAM,CAAC,EACxC,UAAU,sBAAsB,CAAC,MAAM,CAAC,SAOzC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useAssistantEvent.js","sourceRoot":"","sources":["../src/useAssistantEvent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAE,gCAA6B;AAM1D,OAAO,EAAE,sBAAsB,EAAE,0BAAuB;AAExD,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAC/B,QAAwC,EACxC,QAAwC,EACxC,EAAE;IACF,MAAM,GAAG,GAAG,kBAAkB,EAAE,CAAC;IACjC,MAAM,WAAW,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAC;IAE7C,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,sBAAsB,CAAC,QAAQ,CAAC,CAAC;IAC1D,SAAS,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,WAAW,CAAC,EAAE,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;AAC9E,CAAC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useAssistantState.d.ts","sourceRoot":"","sources":["../src/useAssistantState.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,0BAAuB;AAIrD;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,iBAAiB,GAAI,CAAC,EACjC,UAAU,CAAC,KAAK,EAAE,cAAc,KAAK,CAAC,KACrC,CAmBF,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useAssistantState.js","sourceRoot":"","sources":["../src/useAssistantState.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAE5D,OAAO,EAAE,kBAAkB,EAAE,gCAA6B;AAC1D,OAAO,EAAE,wBAAwB,EAAE,2CAAwC;AAE3E;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAC/B,QAAsC,EACnC,EAAE;IACL,MAAM,GAAG,GAAG,kBAAkB,EAAE,CAAC;IACjC,MAAM,YAAY,GAAG,wBAAwB,CAAC,GAAG,CAAC,CAAC;IAEnD,MAAM,KAAK,GAAG,oBAAoB,CAChC,GAAG,CAAC,SAAS,EACb,GAAG,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,EAC5B,GAAG,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,CAC7B,CAAC;IAEF,IAAI,KAAK,KAAK,YAAY,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CACb,oGAAoG,CACrG,CAAC;IACJ,CAAC;IAED,aAAa,CAAC,KAAK,CAAC,CAAC;IAErB,OAAO,KAAK,CAAC;AACf,CAAC,CAAC"}
|
package/src/AssistantIf.tsx
DELETED
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
|
|
3
|
-
import type { FC, PropsWithChildren } from "react";
|
|
4
|
-
import { useAssistantState } from "./useAssistantState";
|
|
5
|
-
import type { AssistantState } from "./types/client";
|
|
6
|
-
|
|
7
|
-
export namespace AssistantIf {
|
|
8
|
-
export type Props = PropsWithChildren<{ condition: AssistantIf.Condition }>;
|
|
9
|
-
export type Condition = (state: AssistantState) => boolean;
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
export const AssistantIf: FC<AssistantIf.Props> = ({ children, condition }) => {
|
|
13
|
-
const result = useAssistantState(condition);
|
|
14
|
-
return result ? children : null;
|
|
15
|
-
};
|
|
16
|
-
|
|
17
|
-
AssistantIf.displayName = "AssistantIf";
|