cojson 0.13.11 → 0.13.12

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 (72) hide show
  1. package/.turbo/turbo-build.log +1 -1
  2. package/CHANGELOG.md +6 -0
  3. package/dist/CoValuesStore.d.ts +3 -1
  4. package/dist/CoValuesStore.d.ts.map +1 -1
  5. package/dist/CoValuesStore.js +7 -6
  6. package/dist/CoValuesStore.js.map +1 -1
  7. package/dist/PeerState.d.ts +0 -2
  8. package/dist/PeerState.d.ts.map +1 -1
  9. package/dist/PeerState.js +0 -1
  10. package/dist/PeerState.js.map +1 -1
  11. package/dist/SyncStateManager.js +2 -2
  12. package/dist/SyncStateManager.js.map +1 -1
  13. package/dist/coValueCore.js +2 -2
  14. package/dist/coValueCore.js.map +1 -1
  15. package/dist/coValueState.d.ts +21 -46
  16. package/dist/coValueState.d.ts.map +1 -1
  17. package/dist/coValueState.js +174 -246
  18. package/dist/coValueState.js.map +1 -1
  19. package/dist/coValues/group.js +2 -2
  20. package/dist/coValues/group.js.map +1 -1
  21. package/dist/exports.d.ts +2 -4
  22. package/dist/exports.d.ts.map +1 -1
  23. package/dist/exports.js +1 -2
  24. package/dist/exports.js.map +1 -1
  25. package/dist/localNode.d.ts.map +1 -1
  26. package/dist/localNode.js +20 -16
  27. package/dist/localNode.js.map +1 -1
  28. package/dist/sync.d.ts.map +1 -1
  29. package/dist/sync.js +32 -41
  30. package/dist/sync.js.map +1 -1
  31. package/dist/tests/coValueState.test.js +57 -104
  32. package/dist/tests/coValueState.test.js.map +1 -1
  33. package/dist/tests/group.test.js +1 -2
  34. package/dist/tests/group.test.js.map +1 -1
  35. package/dist/tests/messagesTestUtils.d.ts +4 -1
  36. package/dist/tests/messagesTestUtils.d.ts.map +1 -1
  37. package/dist/tests/messagesTestUtils.js +10 -0
  38. package/dist/tests/messagesTestUtils.js.map +1 -1
  39. package/dist/tests/sync.peerReconciliation.test.js +8 -8
  40. package/dist/tests/sync.peerReconciliation.test.js.map +1 -1
  41. package/dist/tests/sync.test.js +6 -4
  42. package/dist/tests/sync.test.js.map +1 -1
  43. package/package.json +1 -1
  44. package/src/CoValuesStore.ts +9 -6
  45. package/src/PeerState.ts +0 -2
  46. package/src/SyncStateManager.ts +2 -2
  47. package/src/coValueCore.ts +2 -2
  48. package/src/coValueState.ts +197 -317
  49. package/src/coValues/group.ts +2 -2
  50. package/src/exports.ts +0 -6
  51. package/src/localNode.ts +30 -21
  52. package/src/sync.ts +35 -43
  53. package/src/tests/coValueState.test.ts +55 -106
  54. package/src/tests/group.test.ts +2 -2
  55. package/src/tests/messagesTestUtils.ts +12 -1
  56. package/src/tests/sync.peerReconciliation.test.ts +8 -8
  57. package/src/tests/sync.test.ts +8 -23
  58. package/dist/storage/FileSystem.d.ts +0 -37
  59. package/dist/storage/FileSystem.d.ts.map +0 -1
  60. package/dist/storage/FileSystem.js +0 -48
  61. package/dist/storage/FileSystem.js.map +0 -1
  62. package/dist/storage/chunksAndKnownStates.d.ts +0 -7
  63. package/dist/storage/chunksAndKnownStates.d.ts.map +0 -1
  64. package/dist/storage/chunksAndKnownStates.js +0 -98
  65. package/dist/storage/chunksAndKnownStates.js.map +0 -1
  66. package/dist/storage/index.d.ts +0 -52
  67. package/dist/storage/index.d.ts.map +0 -1
  68. package/dist/storage/index.js +0 -335
  69. package/dist/storage/index.js.map +0 -1
  70. package/src/storage/FileSystem.ts +0 -113
  71. package/src/storage/chunksAndKnownStates.ts +0 -137
  72. package/src/storage/index.ts +0 -531
@@ -1,69 +1,17 @@
1
1
  import { ValueType } from "@opentelemetry/api";
2
2
  import { metrics } from "@opentelemetry/api";
3
3
  import { logger } from "./logger.js";
4
+ import { emptyKnownState } from "./sync.js";
4
5
  export const CO_VALUE_LOADING_CONFIG = {
5
6
  MAX_RETRIES: 2,
6
7
  TIMEOUT: 30000,
7
8
  };
8
- export class CoValueUnknownState {
9
- constructor() {
10
- this.type = "unknown";
11
- }
12
- }
13
- export class CoValueLoadingState {
14
- constructor(peersIds) {
15
- this.type = "loading";
16
- this.peers = new Map();
17
- this.peers = new Map();
18
- for (const peerId of peersIds) {
19
- this.peers.set(peerId, createResolvablePromise());
20
- }
21
- const { resolve, promise } = createResolvablePromise();
22
- this.result = promise;
23
- this.resolveResult = resolve;
24
- }
25
- markAsUnavailable(peerId) {
26
- const entry = this.peers.get(peerId);
27
- if (entry) {
28
- entry.resolve();
29
- }
30
- this.peers.delete(peerId);
31
- // If none of the peers have the coValue, we resolve to unavailable
32
- if (this.peers.size === 0) {
33
- this.resolve("unavailable");
34
- }
35
- }
36
- resolve(value) {
37
- this.resolveResult(value);
38
- for (const entry of this.peers.values()) {
39
- entry.resolve();
40
- }
41
- this.peers.clear();
42
- }
43
- // Wait for a specific peer to have a known state
44
- waitForPeer(peerId) {
45
- const entry = this.peers.get(peerId);
46
- if (!entry) {
47
- return Promise.resolve();
48
- }
49
- return entry.promise;
50
- }
51
- }
52
- export class CoValueAvailableState {
53
- constructor(coValue) {
54
- this.coValue = coValue;
55
- this.type = "available";
56
- }
57
- }
58
- export class CoValueUnavailableState {
59
- constructor() {
60
- this.type = "unavailable";
61
- }
62
- }
63
9
  export class CoValueState {
64
- constructor(id, state) {
10
+ constructor(id) {
11
+ this.peers = new Map();
12
+ this.core = null;
13
+ this.listeners = new Set();
65
14
  this.id = id;
66
- this.state = state;
67
15
  this.counter = metrics
68
16
  .getMeter("cojson")
69
17
  .createUpDownCounter("jazz.covalues.loaded", {
@@ -71,204 +19,200 @@ export class CoValueState {
71
19
  unit: "covalue",
72
20
  valueType: ValueType.INT,
73
21
  });
74
- this.counter.add(1, {
75
- state: this.state.type,
76
- });
22
+ this.updateCounter(null);
77
23
  }
78
- static Unknown(id) {
79
- return new CoValueState(id, new CoValueUnknownState());
24
+ get highLevelState() {
25
+ if (this.core) {
26
+ return "available";
27
+ }
28
+ else {
29
+ if (this.peers.size === 0) {
30
+ return "unknown";
31
+ }
32
+ else if (this.peers
33
+ .values()
34
+ .every((p) => p.type === "unavailable" || p.type === "errored")) {
35
+ return "unavailable";
36
+ }
37
+ else if (this.peers.values().some((p) => p.type === "pending")) {
38
+ return "loading";
39
+ }
40
+ else {
41
+ return "unknown";
42
+ }
43
+ }
80
44
  }
81
- static Loading(id, peersIds) {
82
- return new CoValueState(id, new CoValueLoadingState(peersIds));
45
+ isErroredInPeer(peerId) {
46
+ return this.peers.get(peerId)?.type === "errored";
83
47
  }
84
- static Available(coValue) {
85
- return new CoValueState(coValue.id, new CoValueAvailableState(coValue));
48
+ isAvailable() {
49
+ return !!this.core;
86
50
  }
87
- static Unavailable(id) {
88
- return new CoValueState(id, new CoValueUnavailableState());
51
+ addListener(listener) {
52
+ this.listeners.add(listener);
53
+ listener(this);
89
54
  }
90
- async getCoValue() {
91
- if (this.state.type === "available") {
92
- return this.state.coValue;
55
+ removeListener(listener) {
56
+ this.listeners.delete(listener);
57
+ }
58
+ notifyListeners() {
59
+ for (const listener of this.listeners) {
60
+ listener(this);
93
61
  }
94
- if (this.state.type === "unavailable") {
62
+ }
63
+ async getCoValue() {
64
+ if (this.highLevelState === "unavailable") {
95
65
  return "unavailable";
96
66
  }
97
- // If we don't have a resolved state we return a new promise
98
- // that will be resolved when the state will move to available or unavailable
99
- if (!this.promise) {
100
- const { promise, resolve } = createResolvablePromise();
101
- this.promise = promise;
102
- this.resolve = resolve;
103
- }
104
- return this.promise;
105
- }
106
- moveToState(value) {
107
- this.counter.add(-1, {
108
- state: this.state.type,
109
- });
110
- this.state = value;
111
- this.counter.add(1, {
112
- state: this.state.type,
67
+ return new Promise((resolve) => {
68
+ const listener = (state) => {
69
+ if (state.core) {
70
+ resolve(state.core);
71
+ this.removeListener(listener);
72
+ }
73
+ };
74
+ this.addListener(listener);
113
75
  });
114
- if (!this.resolve) {
115
- return;
116
- }
117
- // If the state is available we resolve the promise
118
- // and clear it to handle the possible transition from unavailable to available
119
- if (value.type === "available") {
120
- this.resolve(value.coValue);
121
- this.clearPromise();
122
- }
123
- else if (value.type === "unavailable") {
124
- this.resolve("unavailable");
125
- this.clearPromise();
126
- }
127
- }
128
- clearPromise() {
129
- this.promise = undefined;
130
- this.resolve = undefined;
131
76
  }
132
77
  async loadFromPeers(peers) {
133
- const state = this.state;
134
- if (state.type === "loading" || state.type === "available") {
135
- return;
136
- }
137
78
  if (peers.length === 0) {
138
- this.moveToState(new CoValueUnavailableState());
139
79
  return;
140
80
  }
141
- const doLoad = async (peersToLoadFrom) => {
142
- const peersWithoutErrors = getPeersWithoutErrors(peersToLoadFrom, this.id);
143
- // If we are in the loading state we move to a new loading state
144
- // to reset all the loading promises
145
- if (this.state.type === "loading" ||
146
- this.state.type === "unknown" ||
147
- this.state.type === "unavailable") {
148
- this.moveToState(new CoValueLoadingState(peersWithoutErrors.map((p) => p.id)));
81
+ const loadAttempt = async (peersToLoadFrom) => {
82
+ const peersToActuallyLoadFrom = [];
83
+ for (const peer of peersToLoadFrom) {
84
+ const currentState = this.peers.get(peer.id);
85
+ if (currentState?.type === "available") {
86
+ continue;
87
+ }
88
+ if (currentState?.type === "errored") {
89
+ continue;
90
+ }
91
+ if (currentState?.type === "unavailable" ||
92
+ currentState?.type === "pending") {
93
+ if (peer.shouldRetryUnavailableCoValues()) {
94
+ this.markPending(peer.id);
95
+ peersToActuallyLoadFrom.push(peer);
96
+ }
97
+ continue;
98
+ }
99
+ if (!currentState || currentState?.type === "unknown") {
100
+ this.markPending(peer.id);
101
+ peersToActuallyLoadFrom.push(peer);
102
+ }
149
103
  }
150
- // Assign the current state to a variable to not depend on the state changes
151
- // that may happen while we wait for loadCoValueFromPeers to complete
152
- const currentState = this.state;
153
- // If we entered successfully the loading state, we load the coValue from the peers
154
- //
155
- // We may not enter the loading state if the coValue has become available in between
156
- // of the retries
157
- if (currentState.type === "loading") {
158
- await loadCoValueFromPeers(this, peersWithoutErrors);
159
- const result = await currentState.result;
160
- return result !== "unavailable";
104
+ for (const peer of peersToActuallyLoadFrom) {
105
+ if (peer.closed) {
106
+ this.markNotFoundInPeer(peer.id);
107
+ continue;
108
+ }
109
+ peer
110
+ .pushOutgoingMessage({
111
+ action: "load",
112
+ ...(this.core ? this.core.knownState() : emptyKnownState(this.id)),
113
+ })
114
+ .catch((err) => {
115
+ logger.warn(`Failed to push load message to peer ${peer.id}`, {
116
+ err,
117
+ });
118
+ });
119
+ /**
120
+ * Use a very long timeout for storage peers, because under pressure
121
+ * they may take a long time to consume the messages queue
122
+ *
123
+ * TODO: Track errors on storage and do not rely on timeout
124
+ */
125
+ const timeoutDuration = peer.role === "storage"
126
+ ? CO_VALUE_LOADING_CONFIG.TIMEOUT * 10
127
+ : CO_VALUE_LOADING_CONFIG.TIMEOUT;
128
+ const waitingForPeer = new Promise((resolve) => {
129
+ const markNotFound = () => {
130
+ if (this.peers.get(peer.id)?.type === "pending") {
131
+ this.markNotFoundInPeer(peer.id);
132
+ }
133
+ };
134
+ const timeout = setTimeout(markNotFound, timeoutDuration);
135
+ const removeCloseListener = peer.addCloseListener(markNotFound);
136
+ const listener = (state) => {
137
+ const peerState = state.peers.get(peer.id);
138
+ if (state.isAvailable() || // might have become available from another peer e.g. through handleNewContent
139
+ peerState?.type === "available" ||
140
+ peerState?.type === "errored" ||
141
+ peerState?.type === "unavailable") {
142
+ state.removeListener(listener);
143
+ removeCloseListener();
144
+ clearTimeout(timeout);
145
+ resolve();
146
+ }
147
+ };
148
+ this.addListener(listener);
149
+ });
150
+ await waitingForPeer;
161
151
  }
162
- return currentState.type === "available";
163
152
  };
164
- await doLoad(peers);
153
+ await loadAttempt(peers);
154
+ if (this.isAvailable()) {
155
+ return;
156
+ }
165
157
  // Retry loading from peers that have the retry flag enabled
166
158
  const peersWithRetry = peers.filter((p) => p.shouldRetryUnavailableCoValues());
167
159
  if (peersWithRetry.length > 0) {
160
+ const waitingForCoValue = new Promise((resolve) => {
161
+ const listener = (state) => {
162
+ if (state.isAvailable()) {
163
+ resolve();
164
+ this.removeListener(listener);
165
+ }
166
+ };
167
+ this.addListener(listener);
168
+ });
168
169
  // We want to exit early if the coValue becomes available in between the retries
169
170
  await Promise.race([
170
- this.getCoValue(),
171
- runWithRetry(() => doLoad(peersWithRetry), CO_VALUE_LOADING_CONFIG.MAX_RETRIES),
171
+ waitingForCoValue,
172
+ runWithRetry(() => loadAttempt(peersWithRetry), CO_VALUE_LOADING_CONFIG.MAX_RETRIES),
172
173
  ]);
173
174
  }
174
- // If after the retries the coValue is still loading, we consider the load failed
175
- if (this.state.type === "loading") {
176
- this.moveToState(new CoValueUnavailableState());
177
- }
178
- }
179
- dispatch(action) {
180
- const currentState = this.state;
181
- switch (action.type) {
182
- case "available":
183
- if (currentState.type === "loading") {
184
- currentState.resolve(action.coValue);
185
- }
186
- // It should be always possible to move to the available state
187
- this.moveToState(new CoValueAvailableState(action.coValue));
188
- break;
189
- case "not-found-in-peer":
190
- if (currentState.type === "loading") {
191
- currentState.markAsUnavailable(action.peerId);
192
- }
193
- break;
194
- }
195
175
  }
196
- }
197
- async function loadCoValueFromPeers(coValueEntry, peers) {
198
- for (const peer of peers) {
199
- if (peer.closed) {
200
- coValueEntry.dispatch({
201
- type: "not-found-in-peer",
202
- peerId: peer.id,
203
- });
204
- continue;
205
- }
206
- if (coValueEntry.state.type === "available") {
207
- /**
208
- * We don't need to wait for the message to be delivered here.
209
- *
210
- * This way when the coValue becomes available because it's cached we don't wait for the server
211
- * peer to consume the messages queue before moving forward.
212
- */
213
- peer
214
- .pushOutgoingMessage({
215
- action: "load",
216
- ...coValueEntry.state.coValue.knownState(),
217
- })
218
- .catch((err) => {
219
- logger.warn(`Failed to push load message to peer ${peer.id}`, {
220
- err,
221
- });
222
- });
223
- }
224
- else {
225
- /**
226
- * We only wait for the load state to be resolved.
227
- */
228
- peer
229
- .pushOutgoingMessage({
230
- action: "load",
231
- id: coValueEntry.id,
232
- header: false,
233
- sessions: {},
234
- })
235
- .catch((err) => {
236
- logger.warn(`Failed to push load message to peer ${peer.id}`, {
237
- err,
238
- });
239
- });
240
- }
241
- if (coValueEntry.state.type === "loading") {
242
- const { promise, resolve } = createResolvablePromise();
243
- /**
244
- * Use a very long timeout for storage peers, because under pressure
245
- * they may take a long time to consume the messages queue
246
- *
247
- * TODO: Track errors on storage and do not rely on timeout
248
- */
249
- const timeoutDuration = peer.role === "storage"
250
- ? CO_VALUE_LOADING_CONFIG.TIMEOUT * 10
251
- : CO_VALUE_LOADING_CONFIG.TIMEOUT;
252
- const handleTimeoutOrClose = () => {
253
- if (coValueEntry.state.type === "loading") {
254
- logger.warn("Failed to load coValue from peer", {
255
- coValueId: coValueEntry.id,
256
- peerId: peer.id,
257
- peerRole: peer.role,
258
- });
259
- coValueEntry.dispatch({
260
- type: "not-found-in-peer",
261
- peerId: peer.id,
262
- });
263
- resolve();
264
- }
265
- };
266
- const timeout = setTimeout(handleTimeoutOrClose, timeoutDuration);
267
- const closeListener = peer.addCloseListener(handleTimeoutOrClose);
268
- await Promise.race([promise, coValueEntry.state.waitForPeer(peer.id)]);
269
- clearTimeout(timeout);
270
- closeListener();
271
- }
176
+ updateCounter(previousState) {
177
+ const newState = this.highLevelState;
178
+ if (previousState !== newState) {
179
+ if (previousState) {
180
+ this.counter.add(-1, { state: previousState });
181
+ }
182
+ this.counter.add(1, { state: newState });
183
+ }
184
+ }
185
+ markNotFoundInPeer(peerId) {
186
+ const previousState = this.highLevelState;
187
+ this.peers.set(peerId, { type: "unavailable" });
188
+ this.updateCounter(previousState);
189
+ this.notifyListeners();
190
+ }
191
+ // TODO: rename to "provided"
192
+ markAvailable(coValue, fromPeerId) {
193
+ const previousState = this.highLevelState;
194
+ this.core = coValue;
195
+ this.peers.set(fromPeerId, { type: "available" });
196
+ this.updateCounter(previousState);
197
+ this.notifyListeners();
198
+ }
199
+ internalMarkMagicallyAvailable(coValue) {
200
+ const previousState = this.highLevelState;
201
+ this.core = coValue;
202
+ this.updateCounter(previousState);
203
+ this.notifyListeners();
204
+ }
205
+ markErrored(peerId, error) {
206
+ const previousState = this.highLevelState;
207
+ this.peers.set(peerId, { type: "errored", error });
208
+ this.updateCounter(previousState);
209
+ this.notifyListeners();
210
+ }
211
+ markPending(peerId) {
212
+ const previousState = this.highLevelState;
213
+ this.peers.set(peerId, { type: "pending" });
214
+ this.updateCounter(previousState);
215
+ this.notifyListeners();
272
216
  }
273
217
  }
274
218
  async function runWithRetry(fn, maxRetries) {
@@ -289,23 +233,7 @@ async function runWithRetry(fn, maxRetries) {
289
233
  retries++;
290
234
  }
291
235
  }
292
- function createResolvablePromise() {
293
- let resolve;
294
- const promise = new Promise((res) => {
295
- resolve = res;
296
- });
297
- return { promise, resolve };
298
- }
299
236
  function sleep(ms) {
300
237
  return new Promise((resolve) => setTimeout(resolve, ms));
301
238
  }
302
- function getPeersWithoutErrors(peers, coValueId) {
303
- return peers.filter((p) => {
304
- if (p.erroredCoValues.has(coValueId)) {
305
- logger.warn(`Skipping load on errored coValue ${coValueId} from peer ${p.id}`);
306
- return false;
307
- }
308
- return true;
309
- });
310
- }
311
239
  //# sourceMappingURL=coValueState.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"coValueState.js","sourceRoot":"","sources":["../src/coValueState.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"coValueState.js","sourceRoot":"","sources":["../src/coValueState.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAiB,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAI5D,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAU,eAAe,EAAE,MAAM,WAAW,CAAC;AAEpD,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACrC,WAAW,EAAE,CAAC;IACd,OAAO,EAAE,KAAM;CAChB,CAAC;AAEF,MAAM,OAAO,YAAY;IAgBvB,YAAY,EAAW;QAff,UAAK,GAAG,IAAI,GAAG,EAOpB,CAAC;QAEJ,SAAI,GAAuB,IAAI,CAAC;QAGxB,cAAS,GAAuC,IAAI,GAAG,EAAE,CAAC;QAIhE,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;QAEb,IAAI,CAAC,OAAO,GAAG,OAAO;aACnB,QAAQ,CAAC,QAAQ,CAAC;aAClB,mBAAmB,CAAC,sBAAsB,EAAE;YAC3C,WAAW,EAAE,sCAAsC;YACnD,IAAI,EAAE,SAAS;YACf,SAAS,EAAE,SAAS,CAAC,GAAG;SACzB,CAAC,CAAC;QAEL,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;IAED,IAAI,cAAc;QAChB,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,OAAO,WAAW,CAAC;QACrB,CAAC;aAAM,CAAC;YACN,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;gBAC1B,OAAO,SAAS,CAAC;YACnB,CAAC;iBAAM,IACL,IAAI,CAAC,KAAK;iBACP,MAAM,EAAE;iBACR,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,aAAa,IAAI,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,EACjE,CAAC;gBACD,OAAO,aAAa,CAAC;YACvB,CAAC;iBAAM,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC;gBACjE,OAAO,SAAS,CAAC;YACnB,CAAC;iBAAM,CAAC;gBACN,OAAO,SAAS,CAAC;YACnB,CAAC;QACH,CAAC;IACH,CAAC;IAED,eAAe,CAAC,MAAc;QAC5B,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,IAAI,KAAK,SAAS,CAAC;IACpD,CAAC;IAED,WAAW;QACT,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;IACrB,CAAC;IAED,WAAW,CAAC,QAAuC;QACjD,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC7B,QAAQ,CAAC,IAAI,CAAC,CAAC;IACjB,CAAC;IAED,cAAc,CAAC,QAAuC;QACpD,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAClC,CAAC;IAEO,eAAe;QACrB,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACtC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACjB,CAAC;IACH,CAAC;IAED,KAAK,CAAC,UAAU;QACd,IAAI,IAAI,CAAC,cAAc,KAAK,aAAa,EAAE,CAAC;YAC1C,OAAO,aAAa,CAAC;QACvB,CAAC;QAED,OAAO,IAAI,OAAO,CAAc,CAAC,OAAO,EAAE,EAAE;YAC1C,MAAM,QAAQ,GAAG,CAAC,KAAmB,EAAE,EAAE;gBACvC,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;oBACf,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;oBACpB,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;gBAChC,CAAC;YACH,CAAC,CAAC;YAEF,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAC7B,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,KAAkB;QACpC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,OAAO;QACT,CAAC;QAED,MAAM,WAAW,GAAG,KAAK,EAAE,eAA4B,EAAE,EAAE;YACzD,MAAM,uBAAuB,GAAG,EAAE,CAAC;YACnC,KAAK,MAAM,IAAI,IAAI,eAAe,EAAE,CAAC;gBACnC,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAE7C,IAAI,YAAY,EAAE,IAAI,KAAK,WAAW,EAAE,CAAC;oBACvC,SAAS;gBACX,CAAC;gBAED,IAAI,YAAY,EAAE,IAAI,KAAK,SAAS,EAAE,CAAC;oBACrC,SAAS;gBACX,CAAC;gBAED,IACE,YAAY,EAAE,IAAI,KAAK,aAAa;oBACpC,YAAY,EAAE,IAAI,KAAK,SAAS,EAChC,CAAC;oBACD,IAAI,IAAI,CAAC,8BAA8B,EAAE,EAAE,CAAC;wBAC1C,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;wBAC1B,uBAAuB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACrC,CAAC;oBAED,SAAS;gBACX,CAAC;gBAED,IAAI,CAAC,YAAY,IAAI,YAAY,EAAE,IAAI,KAAK,SAAS,EAAE,CAAC;oBACtD,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBAC1B,uBAAuB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACrC,CAAC;YACH,CAAC;YAED,KAAK,MAAM,IAAI,IAAI,uBAAuB,EAAE,CAAC;gBAC3C,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;oBAChB,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBACjC,SAAS;gBACX,CAAC;gBAED,IAAI;qBACD,mBAAmB,CAAC;oBACnB,MAAM,EAAE,MAAM;oBACd,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;iBACnE,CAAC;qBACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;oBACb,MAAM,CAAC,IAAI,CAAC,uCAAuC,IAAI,CAAC,EAAE,EAAE,EAAE;wBAC5D,GAAG;qBACJ,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;gBAEL;;;;;mBAKG;gBACH,MAAM,eAAe,GACnB,IAAI,CAAC,IAAI,KAAK,SAAS;oBACrB,CAAC,CAAC,uBAAuB,CAAC,OAAO,GAAG,EAAE;oBACtC,CAAC,CAAC,uBAAuB,CAAC,OAAO,CAAC;gBAEtC,MAAM,cAAc,GAAG,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;oBACnD,MAAM,YAAY,GAAG,GAAG,EAAE;wBACxB,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,IAAI,KAAK,SAAS,EAAE,CAAC;4BAChD,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;wBACnC,CAAC;oBACH,CAAC,CAAC;oBAEF,MAAM,OAAO,GAAG,UAAU,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC;oBAC1D,MAAM,mBAAmB,GAAG,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC;oBAEhE,MAAM,QAAQ,GAAG,CAAC,KAAmB,EAAE,EAAE;wBACvC,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;wBAC3C,IACE,KAAK,CAAC,WAAW,EAAE,IAAI,8EAA8E;4BACrG,SAAS,EAAE,IAAI,KAAK,WAAW;4BAC/B,SAAS,EAAE,IAAI,KAAK,SAAS;4BAC7B,SAAS,EAAE,IAAI,KAAK,aAAa,EACjC,CAAC;4BACD,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;4BAC/B,mBAAmB,EAAE,CAAC;4BACtB,YAAY,CAAC,OAAO,CAAC,CAAC;4BACtB,OAAO,EAAE,CAAC;wBACZ,CAAC;oBACH,CAAC,CAAC;oBAEF,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;gBAC7B,CAAC,CAAC,CAAC;gBAEH,MAAM,cAAc,CAAC;YACvB,CAAC;QACH,CAAC,CAAC;QAEF,MAAM,WAAW,CAAC,KAAK,CAAC,CAAC;QAEzB,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;YACvB,OAAO;QACT,CAAC;QAED,4DAA4D;QAC5D,MAAM,cAAc,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CACxC,CAAC,CAAC,8BAA8B,EAAE,CACnC,CAAC;QAEF,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9B,MAAM,iBAAiB,GAAG,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;gBACtD,MAAM,QAAQ,GAAG,CAAC,KAAmB,EAAE,EAAE;oBACvC,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;wBACxB,OAAO,EAAE,CAAC;wBACV,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;oBAChC,CAAC;gBACH,CAAC,CAAC;gBAEF,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;YAC7B,CAAC,CAAC,CAAC;YAEH,gFAAgF;YAChF,MAAM,OAAO,CAAC,IAAI,CAAC;gBACjB,iBAAiB;gBACjB,YAAY,CACV,GAAG,EAAE,CAAC,WAAW,CAAC,cAAc,CAAC,EACjC,uBAAuB,CAAC,WAAW,CACpC;aACF,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAEO,aAAa,CAAC,aAA4B;QAChD,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC;QAErC,IAAI,aAAa,KAAK,QAAQ,EAAE,CAAC;YAC/B,IAAI,aAAa,EAAE,CAAC;gBAClB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC,CAAC;YACjD,CAAC;YACD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC3C,CAAC;IACH,CAAC;IAED,kBAAkB,CAAC,MAAc;QAC/B,MAAM,aAAa,GAAG,IAAI,CAAC,cAAc,CAAC;QAC1C,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC,CAAC;QAChD,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;QAClC,IAAI,CAAC,eAAe,EAAE,CAAC;IACzB,CAAC;IAED,6BAA6B;IAC7B,aAAa,CAAC,OAAoB,EAAE,UAAkB;QACpD,MAAM,aAAa,GAAG,IAAI,CAAC,cAAc,CAAC;QAC1C,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC;QACpB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC;QAClD,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;QAClC,IAAI,CAAC,eAAe,EAAE,CAAC;IACzB,CAAC;IAED,8BAA8B,CAAC,OAAoB;QACjD,MAAM,aAAa,GAAG,IAAI,CAAC,cAAc,CAAC;QAC1C,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC;QACpB,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;QAClC,IAAI,CAAC,eAAe,EAAE,CAAC;IACzB,CAAC;IAED,WAAW,CAAC,MAAc,EAAE,KAA8B;QACxD,MAAM,aAAa,GAAG,IAAI,CAAC,cAAc,CAAC;QAC1C,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;QACnD,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;QAClC,IAAI,CAAC,eAAe,EAAE,CAAC;IACzB,CAAC;IAEO,WAAW,CAAC,MAAc;QAChC,MAAM,aAAa,GAAG,IAAI,CAAC,cAAc,CAAC;QAC1C,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;QAC5C,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;QAClC,IAAI,CAAC,eAAe,EAAE,CAAC;IACzB,CAAC;CACF;AAED,KAAK,UAAU,YAAY,CAAI,EAAoB,EAAE,UAAkB;IACrE,IAAI,OAAO,GAAG,CAAC,CAAC;IAEhB,OAAO,OAAO,GAAG,UAAU,EAAE,CAAC;QAC5B;;;;;;WAMG;QACH,MAAM,KAAK,CAAC,CAAC,IAAI,OAAO,GAAG,GAAG,CAAC,CAAC;QAEhC,MAAM,MAAM,GAAG,MAAM,EAAE,EAAE,CAAC;QAE1B,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;YACpB,OAAO;QACT,CAAC;QAED,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED,SAAS,KAAK,CAAC,EAAU;IACvB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;AAC3D,CAAC"}
@@ -109,8 +109,8 @@ export class RawGroup extends RawCoMap {
109
109
  }
110
110
  const id = getChildGroupId(key);
111
111
  const child = store.get(id);
112
- if (child.state.type === "unknown" ||
113
- child.state.type === "unavailable") {
112
+ if (child.highLevelState === "unknown" ||
113
+ child.highLevelState === "unavailable") {
114
114
  child.loadFromPeers(peers).catch(() => {
115
115
  logger.error(`Failed to load child group ${id}`);
116
116
  });
@@ -1 +1 @@
1
- {"version":3,"file":"group.js","sourceRoot":"","sources":["../../src/coValues/group.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"group.js","sourceRoot":"","sources":["../../src/coValues/group.ts"],"names":[],"mappings":"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"}