use-everywhere 0.5.0 → 0.7.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 CHANGED
@@ -103,7 +103,7 @@ function PayButton() {
103
103
  }),
104
104
  );
105
105
 
106
- if (pay.status === 'done') return <p>Paid — receipt {pay.result!.receiptId}</p>;
106
+ if (pay.status === 'done') return <p>Paid — receipt {pay.result.receiptId}</p>;
107
107
  if (pay.status === 'closed-early') return <p>Payment window was closed.</p>;
108
108
 
109
109
  return (
@@ -67,7 +67,14 @@ var INERT = Object.freeze({
67
67
  var createServerStore = () => INERT;
68
68
  var createServerPresence = () => INERT;
69
69
  var NO_LEADER = Object.freeze({ leaderId: null, isLeader: false });
70
- var createServerLeader = () => ({ ...INERT, getSnapshot: () => NO_LEADER });
70
+ var NEVER = () => new Promise(() => {
71
+ });
72
+ var createServerLeader = () => ({
73
+ ...INERT,
74
+ strategy: "heartbeat",
75
+ getSnapshot: () => NO_LEADER,
76
+ waitForLeadership: NEVER
77
+ });
71
78
  var createServerChannel = (name) => ({ ...INERT, name, post: noop, on: unsubscribe });
72
79
 
73
80
  // src/registry.ts
@@ -2,7 +2,7 @@
2
2
  import {
3
3
  getSharedStore,
4
4
  usePeers
5
- } from "../chunk-YOXUZYKA.js";
5
+ } from "../chunk-LNJEF4DI.js";
6
6
 
7
7
  // src/devtools/inspector.tsx
8
8
  import { useCallback, useEffect, useRef, useState, useSyncExternalStore } from "react";
package/dist/index.cjs CHANGED
@@ -16,17 +16,38 @@ var __copyProps = (to, from, except, desc) => {
16
16
  }
17
17
  return to;
18
18
  };
19
- var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
20
19
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
21
20
 
22
21
  // src/index.ts
23
22
  var src_exports = {};
24
23
  __export(src_exports, {
24
+ BroadcastChannelTransport: () => import_core3.BroadcastChannelTransport,
25
+ CID_PARAM: () => import_core3.CID_PARAM,
25
26
  DEFAULT_NAME: () => import_core.DEFAULT_NAME,
27
+ HandshakeTimeoutError: () => import_core3.HandshakeTimeoutError,
28
+ NoopTransport: () => import_core3.NoopTransport,
29
+ StorageTransport: () => import_core3.StorageTransport,
30
+ WindowClosedError: () => import_core3.WindowClosedError,
31
+ connectToOpener: () => import_core3.connectToOpener,
32
+ createChannel: () => import_core3.createChannel,
33
+ createLeader: () => import_core3.createLeader,
34
+ createPresence: () => import_core3.createPresence,
35
+ createSharedStore: () => import_core3.createSharedStore,
36
+ defaultTransport: () => import_core3.defaultTransport,
26
37
  defineChannel: () => defineChannel,
27
38
  defineStore: () => defineStore,
39
+ enableDebug: () => import_core3.enableDebug,
40
+ getBusNames: () => import_core3.getBusNames,
28
41
  getLeader: () => getLeader,
29
42
  getSharedStore: () => getSharedStore,
43
+ getTransportKind: () => import_core3.getTransportKind,
44
+ isBroadcastChannelAvailable: () => import_core3.isBroadcastChannelAvailable,
45
+ isStorageEventAvailable: () => import_core3.isStorageEventAvailable,
46
+ localStorageAdapter: () => import_core3.localStorageAdapter,
47
+ newer: () => import_core3.newer,
48
+ observeBus: () => import_core3.observeBus,
49
+ openWindow: () => import_core3.openWindow,
50
+ sessionStorageAdapter: () => import_core3.sessionStorageAdapter,
30
51
  useChannel: () => useChannel,
31
52
  useClientId: () => useClientId,
32
53
  useIsLeader: () => useIsLeader,
@@ -36,7 +57,8 @@ __export(src_exports, {
36
57
  useOpenedWindow: () => useOpenedWindow,
37
58
  usePeers: () => usePeers,
38
59
  useSend: () => useSend,
39
- useSharedState: () => useSharedState
60
+ useSharedState: () => useSharedState,
61
+ webStorageAdapter: () => import_core3.webStorageAdapter
40
62
  });
41
63
  module.exports = __toCommonJS(src_exports);
42
64
 
@@ -103,7 +125,14 @@ var INERT = Object.freeze({
103
125
  var createServerStore = () => INERT;
104
126
  var createServerPresence = () => INERT;
105
127
  var NO_LEADER = Object.freeze({ leaderId: null, isLeader: false });
106
- var createServerLeader = () => ({ ...INERT, getSnapshot: () => NO_LEADER });
128
+ var NEVER = () => new Promise(() => {
129
+ });
130
+ var createServerLeader = () => ({
131
+ ...INERT,
132
+ strategy: "heartbeat",
133
+ getSnapshot: () => NO_LEADER,
134
+ waitForLeadership: NEVER
135
+ });
107
136
  var createServerChannel = (name) => ({ ...INERT, name, post: noop, on: unsubscribe });
108
137
 
109
138
  // src/registry.ts
@@ -365,14 +394,36 @@ function useOpenedWindow(factory) {
365
394
  }
366
395
 
367
396
  // src/index.ts
368
- __reExport(src_exports, require("@use-everywhere/core"), module.exports);
397
+ var import_core3 = require("@use-everywhere/core");
369
398
  // Annotate the CommonJS export names for ESM import in node:
370
399
  0 && (module.exports = {
400
+ BroadcastChannelTransport,
401
+ CID_PARAM,
371
402
  DEFAULT_NAME,
403
+ HandshakeTimeoutError,
404
+ NoopTransport,
405
+ StorageTransport,
406
+ WindowClosedError,
407
+ connectToOpener,
408
+ createChannel,
409
+ createLeader,
410
+ createPresence,
411
+ createSharedStore,
412
+ defaultTransport,
372
413
  defineChannel,
373
414
  defineStore,
415
+ enableDebug,
416
+ getBusNames,
374
417
  getLeader,
375
418
  getSharedStore,
419
+ getTransportKind,
420
+ isBroadcastChannelAvailable,
421
+ isStorageEventAvailable,
422
+ localStorageAdapter,
423
+ newer,
424
+ observeBus,
425
+ openWindow,
426
+ sessionStorageAdapter,
376
427
  useChannel,
377
428
  useClientId,
378
429
  useIsLeader,
@@ -383,5 +434,5 @@ __reExport(src_exports, require("@use-everywhere/core"), module.exports);
383
434
  usePeers,
384
435
  useSend,
385
436
  useSharedState,
386
- ...require("@use-everywhere/core")
437
+ webStorageAdapter
387
438
  });
package/dist/index.d.cts CHANGED
@@ -1,6 +1,5 @@
1
1
  import { SharedStore, LeaderOptions, Leader, MessageMap, Channel, MessageMeta, PersistAdapter, Peer, LeaderSnapshot, OpenedWindow, WindowClosedError } from '@use-everywhere/core';
2
- export * from '@use-everywhere/core';
3
- export { DEFAULT_NAME } from '@use-everywhere/core';
2
+ export { BroadcastChannelTransport, BusEvent, BusObserver, BusWire, CID_PARAM, Channel, CommonOptions, ConnectToOpenerOptions, DEFAULT_NAME, DebugOptions, HandshakeTimeoutError, Leader, LeaderOptions, LeaderSnapshot, LeaderStrategy, MessageEventLike, MessageMap, MessageMeta, NoopTransport, OpenWindowOptions, OpenedWindow, OpenerConnection, Peer, PeerKind, PersistAdapter, PersistOptions, Persisted, Presence, PresenceOptions, SharedStore, SharedStoreOptions, StorageLike, StorageTransport, Transport, TransportKind, Version, WebStorageAdapterOptions, WindowClosedError, WindowEventTarget, WindowLike, connectToOpener, createChannel, createLeader, createPresence, createSharedStore, defaultTransport, enableDebug, getBusNames, getTransportKind, isBroadcastChannelAvailable, isStorageEventAvailable, localStorageAdapter, newer, observeBus, openWindow, sessionStorageAdapter, webStorageAdapter } from '@use-everywhere/core';
4
3
 
5
4
  /**
6
5
  * How far a shared value travels:
package/dist/index.d.ts CHANGED
@@ -1,6 +1,5 @@
1
1
  import { SharedStore, LeaderOptions, Leader, MessageMap, Channel, MessageMeta, PersistAdapter, Peer, LeaderSnapshot, OpenedWindow, WindowClosedError } from '@use-everywhere/core';
2
- export * from '@use-everywhere/core';
3
- export { DEFAULT_NAME } from '@use-everywhere/core';
2
+ export { BroadcastChannelTransport, BusEvent, BusObserver, BusWire, CID_PARAM, Channel, CommonOptions, ConnectToOpenerOptions, DEFAULT_NAME, DebugOptions, HandshakeTimeoutError, Leader, LeaderOptions, LeaderSnapshot, LeaderStrategy, MessageEventLike, MessageMap, MessageMeta, NoopTransport, OpenWindowOptions, OpenedWindow, OpenerConnection, Peer, PeerKind, PersistAdapter, PersistOptions, Persisted, Presence, PresenceOptions, SharedStore, SharedStoreOptions, StorageLike, StorageTransport, Transport, TransportKind, Version, WebStorageAdapterOptions, WindowClosedError, WindowEventTarget, WindowLike, connectToOpener, createChannel, createLeader, createPresence, createSharedStore, defaultTransport, enableDebug, getBusNames, getTransportKind, isBroadcastChannelAvailable, isStorageEventAvailable, localStorageAdapter, newer, observeBus, openWindow, sessionStorageAdapter, webStorageAdapter } from '@use-everywhere/core';
4
3
 
5
4
  /**
6
5
  * How far a shared value travels:
package/dist/index.js CHANGED
@@ -9,7 +9,7 @@ import {
9
9
  useClientId,
10
10
  usePeers,
11
11
  warnOnInitialMismatch
12
- } from "./chunk-YOXUZYKA.js";
12
+ } from "./chunk-LNJEF4DI.js";
13
13
 
14
14
  // src/use-shared-state.ts
15
15
  import { useCallback, useSyncExternalStore } from "react";
@@ -167,13 +167,59 @@ function useOpenedWindow(factory) {
167
167
  }
168
168
 
169
169
  // src/index.ts
170
- export * from "@use-everywhere/core";
170
+ import {
171
+ createChannel,
172
+ createSharedStore,
173
+ createPresence,
174
+ createLeader,
175
+ webStorageAdapter,
176
+ localStorageAdapter,
177
+ sessionStorageAdapter,
178
+ openWindow,
179
+ connectToOpener,
180
+ CID_PARAM,
181
+ WindowClosedError as WindowClosedError2,
182
+ HandshakeTimeoutError,
183
+ newer,
184
+ observeBus,
185
+ enableDebug,
186
+ getBusNames,
187
+ getTransportKind,
188
+ BroadcastChannelTransport,
189
+ NoopTransport,
190
+ StorageTransport,
191
+ defaultTransport,
192
+ isBroadcastChannelAvailable,
193
+ isStorageEventAvailable
194
+ } from "@use-everywhere/core";
171
195
  export {
196
+ BroadcastChannelTransport,
197
+ CID_PARAM,
172
198
  DEFAULT_NAME,
199
+ HandshakeTimeoutError,
200
+ NoopTransport,
201
+ StorageTransport,
202
+ WindowClosedError2 as WindowClosedError,
203
+ connectToOpener,
204
+ createChannel,
205
+ createLeader,
206
+ createPresence,
207
+ createSharedStore,
208
+ defaultTransport,
173
209
  defineChannel,
174
210
  defineStore,
211
+ enableDebug,
212
+ getBusNames,
175
213
  getLeader,
176
214
  getSharedStore,
215
+ getTransportKind,
216
+ isBroadcastChannelAvailable,
217
+ isStorageEventAvailable,
218
+ localStorageAdapter,
219
+ newer,
220
+ observeBus,
221
+ openWindow,
222
+ sessionStorageAdapter,
177
223
  useChannel,
178
224
  useClientId,
179
225
  useIsLeader,
@@ -183,5 +229,6 @@ export {
183
229
  useOpenedWindow,
184
230
  usePeers,
185
231
  useSend,
186
- useSharedState
232
+ useSharedState,
233
+ webStorageAdapter
187
234
  };
@@ -0,0 +1,33 @@
1
+ 'use client';
2
+ "use strict";
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all)
9
+ __defProp(target, name, { get: all[name], enumerable: true });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from))
14
+ if (!__hasOwnProp.call(to, key) && key !== except)
15
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
+ }
17
+ return to;
18
+ };
19
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
20
+
21
+ // src/testing.ts
22
+ var testing_exports = {};
23
+ __export(testing_exports, {
24
+ MemoryHub: () => import_testing.MemoryHub,
25
+ MemoryTransport: () => import_testing.MemoryTransport
26
+ });
27
+ module.exports = __toCommonJS(testing_exports);
28
+ var import_testing = require("@use-everywhere/core/testing");
29
+ // Annotate the CommonJS export names for ESM import in node:
30
+ 0 && (module.exports = {
31
+ MemoryHub,
32
+ MemoryTransport
33
+ });
@@ -0,0 +1 @@
1
+ export { MemoryHub, MemoryTransport } from '@use-everywhere/core/testing';
@@ -0,0 +1 @@
1
+ export { MemoryHub, MemoryTransport } from '@use-everywhere/core/testing';
@@ -0,0 +1,8 @@
1
+ 'use client';
2
+
3
+ // src/testing.ts
4
+ import { MemoryHub, MemoryTransport } from "@use-everywhere/core/testing";
5
+ export {
6
+ MemoryHub,
7
+ MemoryTransport
8
+ };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "use-everywhere",
3
- "version": "0.5.0",
3
+ "version": "0.7.0",
4
4
  "description": "React hooks for state and messages shared across tabs, windows, and workers",
5
5
  "license": "MIT",
6
6
  "author": "Jonatan Kruszewski <jonakrusze@gmail.com>",
@@ -49,6 +49,16 @@
49
49
  "types": "./dist/devtools/index.d.cts",
50
50
  "default": "./dist/devtools/index.cjs"
51
51
  }
52
+ },
53
+ "./testing": {
54
+ "import": {
55
+ "types": "./dist/testing.d.ts",
56
+ "default": "./dist/testing.js"
57
+ },
58
+ "require": {
59
+ "types": "./dist/testing.d.cts",
60
+ "default": "./dist/testing.cjs"
61
+ }
52
62
  }
53
63
  },
54
64
  "files": [
@@ -59,53 +69,59 @@
59
69
  "name": "everything (import *)",
60
70
  "path": "dist/index.js",
61
71
  "import": "*",
62
- "limit": "6.6 kB"
72
+ "limit": "8.92 kB"
63
73
  },
64
74
  {
65
75
  "name": "useSharedState",
66
76
  "path": "dist/index.js",
67
77
  "import": "{ useSharedState }",
68
- "limit": "2.85 kB"
78
+ "limit": "3.89 kB"
69
79
  },
70
80
  {
71
81
  "name": "useChannel + useMessage + useSend",
72
82
  "path": "dist/index.js",
73
83
  "import": "{ useChannel, useMessage, useSend }",
74
- "limit": "1.6 kB"
84
+ "limit": "2.39 kB"
75
85
  },
76
86
  {
77
87
  "name": "usePeers + useClientId",
78
88
  "path": "dist/index.js",
79
89
  "import": "{ usePeers, useClientId }",
80
- "limit": "1.7 kB"
90
+ "limit": "2.57 kB"
81
91
  },
82
92
  {
83
93
  "name": "useOpenedWindow + openWindow",
84
94
  "path": "dist/index.js",
85
95
  "import": "{ useOpenedWindow, openWindow }",
86
- "limit": "1.5 kB"
96
+ "limit": "1.76 kB"
87
97
  },
88
98
  {
89
99
  "name": "useLeader + useLeaderEffect",
90
100
  "path": "dist/index.js",
91
101
  "import": "{ useLeader, useLeaderEffect }",
92
- "limit": "2.15 kB"
102
+ "limit": "3.84 kB"
93
103
  },
94
104
  {
95
105
  "name": "defineStore (persisted)",
96
106
  "path": "dist/index.js",
97
107
  "import": "{ defineStore, localStorageAdapter }",
98
- "limit": "3.3 kB"
108
+ "limit": "4.38 kB"
99
109
  },
100
110
  {
101
111
  "name": "Inspector (devtools subpath)",
102
112
  "path": "dist/devtools/index.js",
103
113
  "import": "{ Inspector }",
104
- "limit": "5 kB"
114
+ "limit": "5.81 kB"
115
+ },
116
+ {
117
+ "name": "MemoryHub (testing subpath)",
118
+ "path": "dist/testing.js",
119
+ "import": "{ MemoryHub }",
120
+ "limit": "400 B"
105
121
  }
106
122
  ],
107
123
  "dependencies": {
108
- "@use-everywhere/core": "0.5.0"
124
+ "@use-everywhere/core": "0.7.0"
109
125
  },
110
126
  "peerDependencies": {
111
127
  "react": ">=18"
@@ -130,6 +146,9 @@
130
146
  "*": {
131
147
  "devtools": [
132
148
  "./dist/devtools/index.d.ts"
149
+ ],
150
+ "testing": [
151
+ "./dist/testing.d.ts"
133
152
  ]
134
153
  }
135
154
  },