@assistant-ui/store 0.0.4 → 0.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (79) hide show
  1. package/dist/AssistantIf.d.ts +1 -1
  2. package/dist/AssistantIf.d.ts.map +1 -1
  3. package/dist/AssistantIf.js +3 -8
  4. package/dist/AssistantIf.js.map +1 -1
  5. package/dist/Derived.d.ts +1 -1
  6. package/dist/Derived.d.ts.map +1 -1
  7. package/dist/Derived.js +21 -8
  8. package/dist/Derived.js.map +1 -1
  9. package/dist/attachDefaultPeers.d.ts +2 -2
  10. package/dist/attachDefaultPeers.d.ts.map +1 -1
  11. package/dist/attachDefaultPeers.js +47 -18
  12. package/dist/attachDefaultPeers.js.map +1 -1
  13. package/dist/index.d.ts +14 -14
  14. package/dist/index.d.ts.map +1 -1
  15. package/dist/index.js +15 -29
  16. package/dist/index.js.map +1 -1
  17. package/dist/tapClientList.d.ts +1 -1
  18. package/dist/tapClientList.d.ts.map +1 -1
  19. package/dist/tapClientList.js +56 -66
  20. package/dist/tapClientList.js.map +1 -1
  21. package/dist/tapClientLookup.d.ts +1 -1
  22. package/dist/tapClientLookup.d.ts.map +1 -1
  23. package/dist/tapClientLookup.js +25 -37
  24. package/dist/tapClientLookup.js.map +1 -1
  25. package/dist/tapClientResource.d.ts +1 -1
  26. package/dist/tapClientResource.d.ts.map +1 -1
  27. package/dist/tapClientResource.js +85 -88
  28. package/dist/tapClientResource.js.map +1 -1
  29. package/dist/types/client.d.ts +1 -1
  30. package/dist/types/client.d.ts.map +1 -1
  31. package/dist/types/client.js +1 -0
  32. package/dist/types/client.js.map +1 -1
  33. package/dist/types/events.d.ts +1 -1
  34. package/dist/types/events.d.ts.map +1 -1
  35. package/dist/types/events.js +6 -10
  36. package/dist/types/events.js.map +1 -1
  37. package/dist/useAssistantClient.d.ts +2 -2
  38. package/dist/useAssistantClient.d.ts.map +1 -1
  39. package/dist/useAssistantClient.js +118 -194
  40. package/dist/useAssistantClient.js.map +1 -1
  41. package/dist/useAssistantEvent.d.ts +1 -1
  42. package/dist/useAssistantEvent.d.ts.map +1 -1
  43. package/dist/useAssistantEvent.js +5 -9
  44. package/dist/useAssistantEvent.js.map +1 -1
  45. package/dist/useAssistantState.d.ts +1 -1
  46. package/dist/useAssistantState.d.ts.map +1 -1
  47. package/dist/useAssistantState.js +24 -19
  48. package/dist/useAssistantState.js.map +1 -1
  49. package/dist/utils/BaseProxyHandler.js +43 -38
  50. package/dist/utils/BaseProxyHandler.js.map +1 -1
  51. package/dist/utils/NotificationManager.d.ts +3 -3
  52. package/dist/utils/NotificationManager.d.ts.map +1 -1
  53. package/dist/utils/NotificationManager.js +76 -77
  54. package/dist/utils/NotificationManager.js.map +1 -1
  55. package/dist/utils/StoreResource.d.ts +1 -1
  56. package/dist/utils/StoreResource.d.ts.map +1 -1
  57. package/dist/utils/StoreResource.js +5 -16
  58. package/dist/utils/StoreResource.js.map +1 -1
  59. package/dist/utils/proxied-assistant-state.d.ts +1 -1
  60. package/dist/utils/proxied-assistant-state.d.ts.map +1 -1
  61. package/dist/utils/proxied-assistant-state.js +26 -33
  62. package/dist/utils/proxied-assistant-state.js.map +1 -1
  63. package/dist/utils/react-assistant-context.d.ts +1 -1
  64. package/dist/utils/react-assistant-context.d.ts.map +1 -1
  65. package/dist/utils/react-assistant-context.js +61 -66
  66. package/dist/utils/react-assistant-context.js.map +1 -1
  67. package/dist/utils/splitClients.d.ts +3 -3
  68. package/dist/utils/splitClients.d.ts.map +1 -1
  69. package/dist/utils/splitClients.js +48 -31
  70. package/dist/utils/splitClients.js.map +1 -1
  71. package/dist/utils/tap-assistant-context.d.ts +3 -3
  72. package/dist/utils/tap-assistant-context.d.ts.map +1 -1
  73. package/dist/utils/tap-assistant-context.js +17 -31
  74. package/dist/utils/tap-assistant-context.js.map +1 -1
  75. package/dist/utils/tap-client-stack-context.d.ts +1 -1
  76. package/dist/utils/tap-client-stack-context.d.ts.map +1 -1
  77. package/dist/utils/tap-client-stack-context.js +24 -26
  78. package/dist/utils/tap-client-stack-context.js.map +1 -1
  79. package/package.json +23 -9
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/utils/splitClients.ts"],"sourcesContent":["import { Derived, DerivedElement } from \"../Derived\";\nimport type {\n AssistantClient,\n ClientElement,\n ClientNames,\n} from \"../types/client\";\nimport { getDefaultPeers } from \"../attachDefaultPeers\";\nimport type { useAssistantClient } from \"../useAssistantClient\";\n\nexport type RootClients = Partial<\n Record<ClientNames, ClientElement<ClientNames>>\n>;\nexport type DerivedClients = Partial<\n Record<ClientNames, DerivedElement<ClientNames>>\n>;\n\n/**\n * Splits a clients object into root clients and derived clients.\n *\n * @param clients - The clients input object to split\n * @returns An object with { rootClients, derivedClients }\n *\n * @example\n * ```typescript\n * const clients = {\n * foo: RootClient({ ... }),\n * bar: Derived({ ... }),\n * };\n *\n * const { rootClients, derivedClients } = splitClients(clients);\n * // rootClients = { foo: ... }\n * // derivedClients = { bar: ... }\n * ```\n */\nexport function splitClients(\n clients: useAssistantClient.Props,\n baseClient: AssistantClient,\n) {\n const rootClients: RootClients = {};\n const derivedClients: DerivedClients = {};\n\n for (const [key, clientElement] of Object.entries(clients) as [\n keyof useAssistantClient.Props,\n NonNullable<useAssistantClient.Props[keyof useAssistantClient.Props]>,\n ][]) {\n if (clientElement.type === Derived) {\n derivedClients[key] = clientElement as DerivedElement<ClientNames>;\n } else {\n rootClients[key] = clientElement as ClientElement<ClientNames>;\n }\n }\n\n for (const [clientKey, clientElement] of Object.entries(rootClients) as [\n ClientNames,\n ClientElement<ClientNames>,\n ][]) {\n const defaultPeers = getDefaultPeers(clientElement.type);\n if (!defaultPeers) continue;\n\n for (const [key, peerElement] of Object.entries(defaultPeers) as [\n ClientNames,\n ClientElement<ClientNames> | DerivedElement<ClientNames>,\n ][]) {\n if (\n key in rootClients ||\n key in derivedClients ||\n baseClient[key].source !== null\n )\n continue;\n\n if (peerElement.type === Derived<ClientNames>) {\n derivedClients[key] = peerElement as DerivedElement<ClientNames>;\n } else {\n rootClients[key] = peerElement as ClientElement<ClientNames>;\n const subDefaultPeers = getDefaultPeers(peerElement.type);\n if (subDefaultPeers)\n throw new Error(\n `Nested default peers are not supported. Client \"${clientKey}\" has default peers, but its peer \"${key}\" also has default peers.`,\n );\n }\n }\n }\n\n return { rootClients, derivedClients };\n}\n"],"mappings":";AAAA,SAAS,eAA+B;AAMxC,SAAS,uBAAuB;AA4BzB,SAAS,aACd,SACA,YACA;AACA,QAAM,cAA2B,CAAC;AAClC,QAAM,iBAAiC,CAAC;AAExC,aAAW,CAAC,KAAK,aAAa,KAAK,OAAO,QAAQ,OAAO,GAGpD;AACH,QAAI,cAAc,SAAS,SAAS;AAClC,qBAAe,GAAG,IAAI;AAAA,IACxB,OAAO;AACL,kBAAY,GAAG,IAAI;AAAA,IACrB;AAAA,EACF;AAEA,aAAW,CAAC,WAAW,aAAa,KAAK,OAAO,QAAQ,WAAW,GAG9D;AACH,UAAM,eAAe,gBAAgB,cAAc,IAAI;AACvD,QAAI,CAAC,aAAc;AAEnB,eAAW,CAAC,KAAK,WAAW,KAAK,OAAO,QAAQ,YAAY,GAGvD;AACH,UACE,OAAO,eACP,OAAO,kBACP,WAAW,GAAG,EAAE,WAAW;AAE3B;AAEF,UAAI,YAAY,SAAS,SAAsB;AAC7C,uBAAe,GAAG,IAAI;AAAA,MACxB,OAAO;AACL,oBAAY,GAAG,IAAI;AACnB,cAAM,kBAAkB,gBAAgB,YAAY,IAAI;AACxD,YAAI;AACF,gBAAM,IAAI;AAAA,YACR,mDAAmD,SAAS,sCAAsC,GAAG;AAAA,UACvG;AAAA,MACJ;AAAA,IACF;AAAA,EACF;AAEA,SAAO,EAAE,aAAa,eAAe;AACvC;","names":[]}
1
+ {"version":3,"file":"splitClients.js","sourceRoot":"","sources":["../../src/utils/splitClients.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAkB,sBAAmB;AAMrD,OAAO,EAAE,eAAe,EAAE,iCAA8B;AAUxD;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,YAAY,CAC1B,OAAiC,EACjC,UAA2B;IAE3B,MAAM,WAAW,GAAgB,EAAE,CAAC;IACpC,MAAM,cAAc,GAAmB,EAAE,CAAC;IAE1C,KAAK,MAAM,CAAC,GAAG,EAAE,aAAa,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAGtD,EAAE,CAAC;QACJ,IAAI,aAAa,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YACnC,cAAc,CAAC,GAAG,CAAC,GAAG,aAA4C,CAAC;QACrE,CAAC;aAAM,CAAC;YACN,WAAW,CAAC,GAAG,CAAC,GAAG,aAA2C,CAAC;QACjE,CAAC;IACH,CAAC;IAED,KAAK,MAAM,CAAC,SAAS,EAAE,aAAa,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,WAAW,CAGhE,EAAE,CAAC;QACJ,MAAM,YAAY,GAAG,eAAe,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QACzD,IAAI,CAAC,YAAY;YAAE,SAAS;QAE5B,KAAK,MAAM,CAAC,GAAG,EAAE,WAAW,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,YAAY,CAGzD,EAAE,CAAC;YACJ,IACE,GAAG,IAAI,WAAW;gBAClB,GAAG,IAAI,cAAc;gBACrB,UAAU,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK,IAAI;gBAE/B,SAAS;YAEX,IAAI,WAAW,CAAC,IAAI,MAAK,OAAoB,CAAA,EAAE,CAAC;gBAC9C,cAAc,CAAC,GAAG,CAAC,GAAG,WAA0C,CAAC;YACnE,CAAC;iBAAM,CAAC;gBACN,WAAW,CAAC,GAAG,CAAC,GAAG,WAAyC,CAAC;gBAC7D,MAAM,eAAe,GAAG,eAAe,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;gBAC1D,IAAI,eAAe;oBACjB,MAAM,IAAI,KAAK,CACb,mDAAmD,SAAS,sCAAsC,GAAG,2BAA2B,CACjI,CAAC;YACN,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,CAAC;AACzC,CAAC"}
@@ -1,6 +1,6 @@
1
- import type { AssistantEventName, AssistantEventPayload } from "../types/events";
2
- import type { AssistantClient } from "../types/client";
3
- import { type ClientStack } from "./tap-client-stack-context";
1
+ import type { AssistantEventName, AssistantEventPayload } from "../types/events.js";
2
+ import type { AssistantClient } from "../types/client.js";
3
+ import { type ClientStack } from "./tap-client-stack-context.js";
4
4
  type EmitFn = <TEvent extends Exclude<AssistantEventName, "*">>(event: TEvent, payload: AssistantEventPayload[TEvent], clientStack: ClientStack) => void;
5
5
  export type AssistantTapContextValue = {
6
6
  clientRef: {
@@ -1 +1 @@
1
- {"version":3,"file":"tap-assistant-context.d.ts","sourceRoot":"","sources":["../../src/utils/tap-assistant-context.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EACV,kBAAkB,EAClB,qBAAqB,EACtB,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAkB,KAAK,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAE9E,KAAK,MAAM,GAAG,CAAC,MAAM,SAAS,OAAO,CAAC,kBAAkB,EAAE,GAAG,CAAC,EAC5D,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,qBAAqB,CAAC,MAAM,CAAC,EACtC,WAAW,EAAE,WAAW,KACrB,IAAI,CAAC;AAEV,MAAM,MAAM,wBAAwB,GAAG;IACrC,SAAS,EAAE;QAAE,MAAM,EAAE,eAAe,CAAC;QAAC,OAAO,EAAE,eAAe,GAAG,IAAI,CAAA;KAAE,CAAC;IACxE,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAMF,eAAO,MAAM,+BAA+B,GAAI,OAAO,EACrD,OAAO,wBAAwB,EAC/B,IAAI,MAAM,OAAO,YAGlB,CAAC;AASF,eAAO,MAAM,qBAAqB;YAtBX,eAAe;aAAW,eAAe,GAAG,IAAI;CAwBtE,CAAC;AAEF,eAAO,MAAM,gBAAgB,SAKxB,MAAM,SAAS,OAAO,CAAC,kBAAkB,EAAE,GAAG,CAAC,SACvC,MAAM,WACJ,qBAAqB,CAAC,MAAM,CAAC,SAK3C,CAAC"}
1
+ {"version":3,"file":"tap-assistant-context.d.ts","sourceRoot":"","sources":["../../src/utils/tap-assistant-context.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EACV,kBAAkB,EAClB,qBAAqB,EACtB,2BAAwB;AACzB,OAAO,KAAK,EAAE,eAAe,EAAE,2BAAwB;AACvD,OAAO,EAAkB,KAAK,WAAW,EAAE,sCAAmC;AAE9E,KAAK,MAAM,GAAG,CAAC,MAAM,SAAS,OAAO,CAAC,kBAAkB,EAAE,GAAG,CAAC,EAC5D,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,qBAAqB,CAAC,MAAM,CAAC,EACtC,WAAW,EAAE,WAAW,KACrB,IAAI,CAAC;AAEV,MAAM,MAAM,wBAAwB,GAAG;IACrC,SAAS,EAAE;QAAE,MAAM,EAAE,eAAe,CAAC;QAAC,OAAO,EAAE,eAAe,GAAG,IAAI,CAAA;KAAE,CAAC;IACxE,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAMF,eAAO,MAAM,+BAA+B,GAAI,OAAO,EACrD,OAAO,wBAAwB,EAC/B,IAAI,MAAM,OAAO,YAGlB,CAAC;AASF,eAAO,MAAM,qBAAqB;YAtBX,eAAe;aAAW,eAAe,GAAG,IAAI;CAwBtE,CAAC;AAEF,eAAO,MAAM,gBAAgB,SAKxB,MAAM,SAAS,OAAO,CAAC,kBAAkB,EAAE,GAAG,CAAC,SACvC,MAAM,WACJ,qBAAqB,CAAC,MAAM,CAAC,SAK3C,CAAC"}
@@ -1,37 +1,23 @@
1
- // src/utils/tap-assistant-context.ts
2
- import {
3
- createContext,
4
- tapContext,
5
- withContextProvider,
6
- tapEffectEvent
7
- } from "@assistant-ui/tap";
1
+ import { createContext, tapContext, withContextProvider, tapEffectEvent, } from "@assistant-ui/tap";
8
2
  import { tapClientStack } from "./tap-client-stack-context.js";
9
- var AssistantTapContext = createContext(
10
- null
11
- );
12
- var withAssistantTapContextProvider = (value, fn) => {
13
- return withContextProvider(AssistantTapContext, value, fn);
3
+ const AssistantTapContext = createContext(null);
4
+ export const withAssistantTapContextProvider = (value, fn) => {
5
+ return withContextProvider(AssistantTapContext, value, fn);
14
6
  };
15
- var tapAssistantTapContext = () => {
16
- const ctx = tapContext(AssistantTapContext);
17
- if (!ctx) throw new Error("AssistantTapContext is not available");
18
- return ctx;
7
+ const tapAssistantTapContext = () => {
8
+ const ctx = tapContext(AssistantTapContext);
9
+ if (!ctx)
10
+ throw new Error("AssistantTapContext is not available");
11
+ return ctx;
19
12
  };
20
- var tapAssistantClientRef = () => {
21
- return tapAssistantTapContext().clientRef;
13
+ export const tapAssistantClientRef = () => {
14
+ return tapAssistantTapContext().clientRef;
22
15
  };
23
- var tapAssistantEmit = () => {
24
- const { emit } = tapAssistantTapContext();
25
- const clientStack = tapClientStack();
26
- return tapEffectEvent(
27
- (event, payload) => {
28
- emit(event, payload, clientStack);
29
- }
30
- );
31
- };
32
- export {
33
- tapAssistantClientRef,
34
- tapAssistantEmit,
35
- withAssistantTapContextProvider
16
+ export const tapAssistantEmit = () => {
17
+ const { emit } = tapAssistantTapContext();
18
+ const clientStack = tapClientStack();
19
+ return tapEffectEvent((event, payload) => {
20
+ emit(event, payload, clientStack);
21
+ });
36
22
  };
37
23
  //# sourceMappingURL=tap-assistant-context.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/utils/tap-assistant-context.ts"],"sourcesContent":["import {\n createContext,\n tapContext,\n withContextProvider,\n tapEffectEvent,\n} from \"@assistant-ui/tap\";\nimport type {\n AssistantEventName,\n AssistantEventPayload,\n} from \"../types/events\";\nimport type { AssistantClient } from \"../types/client\";\nimport { tapClientStack, type ClientStack } from \"./tap-client-stack-context\";\n\ntype EmitFn = <TEvent extends Exclude<AssistantEventName, \"*\">>(\n event: TEvent,\n payload: AssistantEventPayload[TEvent],\n clientStack: ClientStack,\n) => void;\n\nexport type AssistantTapContextValue = {\n clientRef: { parent: AssistantClient; current: AssistantClient | null };\n emit: EmitFn;\n};\n\nconst AssistantTapContext = createContext<AssistantTapContextValue | null>(\n null,\n);\n\nexport const withAssistantTapContextProvider = <TResult>(\n value: AssistantTapContextValue,\n fn: () => TResult,\n) => {\n return withContextProvider(AssistantTapContext, value, fn);\n};\n\nconst tapAssistantTapContext = () => {\n const ctx = tapContext(AssistantTapContext);\n if (!ctx) throw new Error(\"AssistantTapContext is not available\");\n\n return ctx;\n};\n\nexport const tapAssistantClientRef = () => {\n return tapAssistantTapContext().clientRef;\n};\n\nexport const tapAssistantEmit = () => {\n const { emit } = tapAssistantTapContext();\n const clientStack = tapClientStack();\n\n return tapEffectEvent(\n <TEvent extends Exclude<AssistantEventName, \"*\">>(\n event: TEvent,\n payload: AssistantEventPayload[TEvent],\n ) => {\n emit(event, payload, clientStack);\n },\n );\n};\n"],"mappings":";AAAA;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAMP,SAAS,sBAAwC;AAajD,IAAM,sBAAsB;AAAA,EAC1B;AACF;AAEO,IAAM,kCAAkC,CAC7C,OACA,OACG;AACH,SAAO,oBAAoB,qBAAqB,OAAO,EAAE;AAC3D;AAEA,IAAM,yBAAyB,MAAM;AACnC,QAAM,MAAM,WAAW,mBAAmB;AAC1C,MAAI,CAAC,IAAK,OAAM,IAAI,MAAM,sCAAsC;AAEhE,SAAO;AACT;AAEO,IAAM,wBAAwB,MAAM;AACzC,SAAO,uBAAuB,EAAE;AAClC;AAEO,IAAM,mBAAmB,MAAM;AACpC,QAAM,EAAE,KAAK,IAAI,uBAAuB;AACxC,QAAM,cAAc,eAAe;AAEnC,SAAO;AAAA,IACL,CACE,OACA,YACG;AACH,WAAK,OAAO,SAAS,WAAW;AAAA,IAClC;AAAA,EACF;AACF;","names":[]}
1
+ {"version":3,"file":"tap-assistant-context.js","sourceRoot":"","sources":["../../src/utils/tap-assistant-context.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EACb,UAAU,EACV,mBAAmB,EACnB,cAAc,GACf,MAAM,mBAAmB,CAAC;AAM3B,OAAO,EAAE,cAAc,EAAoB,sCAAmC;AAa9E,MAAM,mBAAmB,GAAG,aAAa,CACvC,IAAI,CACL,CAAC;AAEF,MAAM,CAAC,MAAM,+BAA+B,GAAG,CAC7C,KAA+B,EAC/B,EAAiB,EACjB,EAAE;IACF,OAAO,mBAAmB,CAAC,mBAAmB,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;AAC7D,CAAC,CAAC;AAEF,MAAM,sBAAsB,GAAG,GAAG,EAAE;IAClC,MAAM,GAAG,GAAG,UAAU,CAAC,mBAAmB,CAAC,CAAC;IAC5C,IAAI,CAAC,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;IAElE,OAAO,GAAG,CAAC;AACb,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAAG,EAAE;IACxC,OAAO,sBAAsB,EAAE,CAAC,SAAS,CAAC;AAC5C,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAG,EAAE;IACnC,MAAM,EAAE,IAAI,EAAE,GAAG,sBAAsB,EAAE,CAAC;IAC1C,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IAErC,OAAO,cAAc,CACnB,CACE,KAAa,EACb,OAAsC,EACtC,EAAE;QACF,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;IACpC,CAAC,CACF,CAAC;AACJ,CAAC,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { ClientMethods } from "../types/client";
1
+ import type { ClientMethods } from "../types/client.js";
2
2
  /**
3
3
  * Symbol used to get the client index from a ClientProxy.
4
4
  */
@@ -1 +1 @@
1
- {"version":3,"file":"tap-client-stack-context.d.ts","sourceRoot":"","sources":["../../src/utils/tap-client-stack-context.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAErD;;GAEG;AACH,eAAO,MAAM,mBAAmB,eAA2C,CAAC;AAE5E;;GAEG;AACH,eAAO,MAAM,cAAc,GAAI,QAAQ,aAAa,KAAG,MAItD,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,SAAS,aAAa,EAAE,CAAC;AAInD;;GAEG;AACH,eAAO,MAAM,cAAc,QAAO,WAEjC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,kBAAkB,GAAI,CAAC,EAClC,QAAQ,aAAa,EACrB,UAAU,MAAM,CAAC,KAChB,CAOF,CAAC"}
1
+ {"version":3,"file":"tap-client-stack-context.d.ts","sourceRoot":"","sources":["../../src/utils/tap-client-stack-context.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,aAAa,EAAE,2BAAwB;AAErD;;GAEG;AACH,eAAO,MAAM,mBAAmB,eAA2C,CAAC;AAE5E;;GAEG;AACH,eAAO,MAAM,cAAc,GAAI,QAAQ,aAAa,KAAG,MAItD,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,SAAS,aAAa,EAAE,CAAC;AAInD;;GAEG;AACH,eAAO,MAAM,cAAc,QAAO,WAEjC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,kBAAkB,GAAI,CAAC,EAClC,QAAQ,aAAa,EACrB,UAAU,MAAM,CAAC,KAChB,CAOF,CAAC"}
@@ -1,30 +1,28 @@
1
- // src/utils/tap-client-stack-context.ts
2
- import {
3
- createContext,
4
- tapContext,
5
- withContextProvider,
6
- tapMemo
7
- } from "@assistant-ui/tap";
8
- var SYMBOL_CLIENT_INDEX = /* @__PURE__ */ Symbol("assistant-ui.store.clientIndex");
9
- var getClientIndex = (client) => {
10
- return client[SYMBOL_CLIENT_INDEX];
1
+ import { createContext, tapContext, withContextProvider, tapMemo, } from "@assistant-ui/tap";
2
+ /**
3
+ * Symbol used to get the client index from a ClientProxy.
4
+ */
5
+ export const SYMBOL_CLIENT_INDEX = Symbol("assistant-ui.store.clientIndex");
6
+ /**
7
+ * Get the index of a client (its position in the client stack when created).
8
+ */
9
+ export const getClientIndex = (client) => {
10
+ return client[SYMBOL_CLIENT_INDEX];
11
11
  };
12
- var ClientStackContext = createContext([]);
13
- var tapClientStack = () => {
14
- return tapContext(ClientStackContext);
12
+ const ClientStackContext = createContext([]);
13
+ /**
14
+ * Get the current client stack inside a tap resource.
15
+ */
16
+ export const tapClientStack = () => {
17
+ return tapContext(ClientStackContext);
15
18
  };
16
- var tapWithClientStack = (client, callback) => {
17
- const currentStack = tapClientStack();
18
- const newStack = tapMemo(
19
- () => [...currentStack, client],
20
- [currentStack, client]
21
- );
22
- return withContextProvider(ClientStackContext, newStack, callback);
23
- };
24
- export {
25
- SYMBOL_CLIENT_INDEX,
26
- getClientIndex,
27
- tapClientStack,
28
- tapWithClientStack
19
+ /**
20
+ * Execute a callback with a client pushed onto the stack.
21
+ * The stack is duplicated, not mutated.
22
+ */
23
+ export const tapWithClientStack = (client, callback) => {
24
+ const currentStack = tapClientStack();
25
+ const newStack = tapMemo(() => [...currentStack, client], [currentStack, client]);
26
+ return withContextProvider(ClientStackContext, newStack, callback);
29
27
  };
30
28
  //# sourceMappingURL=tap-client-stack-context.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/utils/tap-client-stack-context.ts"],"sourcesContent":["import {\n createContext,\n tapContext,\n withContextProvider,\n tapMemo,\n} from \"@assistant-ui/tap\";\nimport type { ClientMethods } from \"../types/client\";\n\n/**\n * Symbol used to get the client index from a ClientProxy.\n */\nexport const SYMBOL_CLIENT_INDEX = Symbol(\"assistant-ui.store.clientIndex\");\n\n/**\n * Get the index of a client (its position in the client stack when created).\n */\nexport const getClientIndex = (client: ClientMethods): number => {\n return (client as unknown as { [SYMBOL_CLIENT_INDEX]: number })[\n SYMBOL_CLIENT_INDEX\n ];\n};\n\n/**\n * The client stack - an array of clients representing the current hierarchy.\n */\nexport type ClientStack = readonly ClientMethods[];\n\nconst ClientStackContext = createContext<ClientStack>([]);\n\n/**\n * Get the current client stack inside a tap resource.\n */\nexport const tapClientStack = (): ClientStack => {\n return tapContext(ClientStackContext);\n};\n\n/**\n * Execute a callback with a client pushed onto the stack.\n * The stack is duplicated, not mutated.\n */\nexport const tapWithClientStack = <T>(\n client: ClientMethods,\n callback: () => T,\n): T => {\n const currentStack = tapClientStack();\n const newStack = tapMemo(\n () => [...currentStack, client],\n [currentStack, client],\n );\n return withContextProvider(ClientStackContext, newStack, callback);\n};\n"],"mappings":";AAAA;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAMA,IAAM,sBAAsB,uBAAO,gCAAgC;AAKnE,IAAM,iBAAiB,CAAC,WAAkC;AAC/D,SAAQ,OACN,mBACF;AACF;AAOA,IAAM,qBAAqB,cAA2B,CAAC,CAAC;AAKjD,IAAM,iBAAiB,MAAmB;AAC/C,SAAO,WAAW,kBAAkB;AACtC;AAMO,IAAM,qBAAqB,CAChC,QACA,aACM;AACN,QAAM,eAAe,eAAe;AACpC,QAAM,WAAW;AAAA,IACf,MAAM,CAAC,GAAG,cAAc,MAAM;AAAA,IAC9B,CAAC,cAAc,MAAM;AAAA,EACvB;AACA,SAAO,oBAAoB,oBAAoB,UAAU,QAAQ;AACnE;","names":[]}
1
+ {"version":3,"file":"tap-client-stack-context.js","sourceRoot":"","sources":["../../src/utils/tap-client-stack-context.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EACb,UAAU,EACV,mBAAmB,EACnB,OAAO,GACR,MAAM,mBAAmB,CAAC;AAG3B;;GAEG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,MAAM,CAAC,gCAAgC,CAAC,CAAC;AAE5E;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,MAAqB,EAAU,EAAE;IAC9D,OAAQ,MAAuD,CAC7D,mBAAmB,CACpB,CAAC;AACJ,CAAC,CAAC;AAOF,MAAM,kBAAkB,GAAG,aAAa,CAAc,EAAE,CAAC,CAAC;AAE1D;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,GAAgB,EAAE;IAC9C,OAAO,UAAU,CAAC,kBAAkB,CAAC,CAAC;AACxC,CAAC,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAChC,MAAqB,EACrB,QAAiB,EACd,EAAE;IACL,MAAM,YAAY,GAAG,cAAc,EAAE,CAAC;IACtC,MAAM,QAAQ,GAAG,OAAO,CACtB,GAAG,EAAE,CAAC,CAAC,GAAG,YAAY,EAAE,MAAM,CAAC,EAC/B,CAAC,YAAY,EAAE,MAAM,CAAC,CACvB,CAAC;IACF,OAAO,mBAAmB,CAAC,kBAAkB,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;AACrE,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,16 +1,24 @@
1
1
  {
2
2
  "name": "@assistant-ui/store",
3
+ "version": "0.0.5",
3
4
  "description": "Tap-based state management for @assistant-ui",
4
- "version": "0.0.4",
5
+ "keywords": [
6
+ "state-management",
7
+ "store",
8
+ "tap",
9
+ "assistant-ui",
10
+ "react"
11
+ ],
12
+ "author": "AgentbaseAI Inc.",
5
13
  "license": "MIT",
6
14
  "type": "module",
7
15
  "exports": {
8
16
  ".": {
17
+ "aui-source": "./src/index.ts",
9
18
  "types": "./dist/index.d.ts",
10
19
  "default": "./dist/index.js"
11
20
  }
12
21
  },
13
- "source": "./src/index.ts",
14
22
  "main": "./dist/index.js",
15
23
  "types": "./dist/index.d.ts",
16
24
  "files": [
@@ -20,15 +28,20 @@
20
28
  ],
21
29
  "sideEffects": false,
22
30
  "dependencies": {
23
- "@assistant-ui/tap": "0.3.4"
31
+ "@assistant-ui/tap": "^0.3.5"
24
32
  },
25
33
  "peerDependencies": {
26
- "react": "^18.0.0 || ^19.0.0"
34
+ "@types/react": "*",
35
+ "react": "^18 || ^19"
36
+ },
37
+ "peerDependenciesMeta": {
38
+ "@types/react": {
39
+ "optional": true
40
+ }
27
41
  },
28
42
  "devDependencies": {
29
- "@types/node": "^25.0.0",
30
- "@types/react": "19.2.7",
31
- "tsx": "^4.21.0",
43
+ "@types/react": "^19.2.7",
44
+ "react": "19.2.3",
32
45
  "@assistant-ui/x-buildutils": "0.0.1"
33
46
  },
34
47
  "publishConfig": {
@@ -38,12 +51,13 @@
38
51
  "homepage": "https://www.assistant-ui.com/",
39
52
  "repository": {
40
53
  "type": "git",
41
- "url": "https://github.com/assistant-ui/assistant-ui/tree/main/packages/store"
54
+ "url": "git+https://github.com/assistant-ui/assistant-ui.git",
55
+ "directory": "packages/store"
42
56
  },
43
57
  "bugs": {
44
58
  "url": "https://github.com/assistant-ui/assistant-ui/issues"
45
59
  },
46
60
  "scripts": {
47
- "build": "tsx scripts/build.mts"
61
+ "build": "aui-build"
48
62
  }
49
63
  }