@knocklabs/client 0.11.4 → 0.12.0-rc.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.
Files changed (36) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/README.md +3 -6
  3. package/dist/cjs/api.js.map +1 -1
  4. package/dist/cjs/clients/feed/feed.js.map +1 -1
  5. package/dist/cjs/clients/feed/index.js.map +1 -1
  6. package/dist/cjs/clients/feed/store.js +1 -1
  7. package/dist/cjs/clients/feed/store.js.map +1 -1
  8. package/dist/cjs/clients/feed/utils.js.map +1 -1
  9. package/dist/cjs/clients/messages/index.js.map +1 -1
  10. package/dist/cjs/clients/ms-teams/index.js.map +1 -1
  11. package/dist/cjs/clients/objects/index.js.map +1 -1
  12. package/dist/cjs/clients/preferences/index.js.map +1 -1
  13. package/dist/cjs/clients/slack/index.js.map +1 -1
  14. package/dist/cjs/clients/users/index.js.map +1 -1
  15. package/dist/cjs/knock.js.map +1 -1
  16. package/dist/cjs/networkStatus.js.map +1 -1
  17. package/dist/esm/api.mjs.map +1 -1
  18. package/dist/esm/clients/feed/feed.mjs.map +1 -1
  19. package/dist/esm/clients/feed/index.mjs.map +1 -1
  20. package/dist/esm/clients/feed/store.mjs +18 -22
  21. package/dist/esm/clients/feed/store.mjs.map +1 -1
  22. package/dist/esm/clients/feed/utils.mjs.map +1 -1
  23. package/dist/esm/clients/messages/index.mjs.map +1 -1
  24. package/dist/esm/clients/ms-teams/index.mjs.map +1 -1
  25. package/dist/esm/clients/objects/index.mjs.map +1 -1
  26. package/dist/esm/clients/preferences/index.mjs.map +1 -1
  27. package/dist/esm/clients/slack/index.mjs.map +1 -1
  28. package/dist/esm/clients/users/index.mjs.map +1 -1
  29. package/dist/esm/knock.mjs.map +1 -1
  30. package/dist/esm/networkStatus.mjs.map +1 -1
  31. package/dist/types/clients/feed/feed.d.ts.map +1 -1
  32. package/dist/types/clients/feed/store.d.ts +1 -1
  33. package/dist/types/clients/feed/store.d.ts.map +1 -1
  34. package/package.json +3 -3
  35. package/src/clients/feed/feed.ts +1 -2
  36. package/src/clients/feed/store.ts +2 -8
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@knocklabs/client",
3
- "version": "0.11.4",
3
+ "version": "0.12.0-rc.1.0",
4
4
  "description": "The clientside library for interacting with Knock",
5
5
  "homepage": "https://github.com/knocklabs/javascript/tree/main/packages/client",
6
6
  "author": "@knocklabs",
@@ -63,7 +63,7 @@
63
63
  "jsonwebtoken": "^9.0.2",
64
64
  "prettier": "^3.4.2",
65
65
  "rimraf": "^6.0.1",
66
- "rollup": "^4.27.4",
66
+ "rollup": "^4.34.8",
67
67
  "typescript": "^5.7.3",
68
68
  "vite": "^5.0.0",
69
69
  "vitest": "^2.1.8"
@@ -77,6 +77,6 @@
77
77
  "eventemitter2": "^6.4.5",
78
78
  "jwt-decode": "^4.0.0",
79
79
  "phoenix": "1.7.19",
80
- "zustand": "^3.7.2"
80
+ "zustand": "^4.5.6"
81
81
  }
82
82
  }
@@ -1,7 +1,7 @@
1
1
  import { GenericData } from "@knocklabs/types";
2
2
  import EventEmitter from "eventemitter2";
3
3
  import { Channel } from "phoenix";
4
- import { StoreApi } from "zustand";
4
+ import type { StoreApi } from "zustand";
5
5
 
6
6
  import Knock from "../../knock";
7
7
  import { NetworkStatus, isRequestInFlight } from "../../networkStatus";
@@ -577,7 +577,6 @@ class Feed {
577
577
  metadata,
578
578
  }: FeedMessagesReceivedPayload) {
579
579
  this.knock.log("[Feed] Received new real-time message");
580
-
581
580
  // Handle the new message coming in
582
581
  const { items, ...state } = this.store.getState();
583
582
  const currentHead: FeedItem | undefined = items[0];
@@ -1,5 +1,5 @@
1
1
  import { GenericData } from "@knocklabs/types";
2
- import zustand from "zustand/vanilla";
2
+ import { createStore as createVanillaZustandStore } from "zustand";
3
3
 
4
4
  import { NetworkStatus } from "../../networkStatus";
5
5
 
@@ -7,12 +7,6 @@ import { FeedItem } from "./interfaces";
7
7
  import { FeedStoreState } from "./types";
8
8
  import { deduplicateItems, sortItems } from "./utils";
9
9
 
10
- // Get the correct Zustand function. Caused by some issues in v3 exports
11
- // https://github.com/pmndrs/zustand/issues/334
12
- const create: typeof zustand =
13
- // @ts-expect-error workaround for issue above
14
- typeof zustand === "function" ? zustand : zustand.default;
15
-
16
10
  function processItems(items: FeedItem[]) {
17
11
  const deduped = deduplicateItems(items);
18
12
  const sorted = sortItems(deduped);
@@ -40,7 +34,7 @@ const initialStoreState = {
40
34
  };
41
35
 
42
36
  export default function createStore() {
43
- return create<FeedStoreState>((set) => ({
37
+ return createVanillaZustandStore<FeedStoreState>()((set) => ({
44
38
  // Keeps track of all of the items loaded
45
39
  ...initialStoreState,
46
40
  // The network status indicates what's happening with the request