@peerbit/stream-interface 5.4.0-2ed894b → 5.4.0-4783d05

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.
@@ -14,6 +14,7 @@ export interface StreamEvents extends PeerEvents, MessageEvents {
14
14
  data: CustomEvent<DataMessage>;
15
15
  }
16
16
  export * from "./messages.js";
17
+ export * from "./route-hints.js";
17
18
  export type Target = "neighbor" | "reachable";
18
19
  export type Settle = "any" | "all";
19
20
  export interface WaitForBaseOpts {
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAE1D,cAAc,WAAW,CAAC;AAE1B,MAAM,WAAW,UAAU;IAC1B,cAAc,EAAE,WAAW,CAAC,aAAa,CAAC,CAAC;IAC3C,gBAAgB,EAAE,WAAW,CAAC,aAAa,CAAC,CAAC;IAC7C,kBAAkB,EAAE,WAAW,CAAC,aAAa,CAAC,CAAC;CAC/C;AAED,MAAM,WAAW,aAAa;IAC7B,OAAO,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;CAC9B;AACD,MAAM,WAAW,YAAa,SAAQ,UAAU,EAAE,aAAa;IAC9D,IAAI,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC;CAC/B;AAED,cAAc,eAAe,CAAC;AAG9B,MAAM,MAAM,MAAM,GAAG,UAAU,GAAG,WAAW,CAAC;AAC9C,MAAM,MAAM,MAAM,GAAG,KAAK,GAAG,KAAK,CAAC;AAEnC,MAAM,WAAW,eAAe;IAC/B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;CACpB;AAGD,MAAM,WAAW,kBAAmB,SAAQ,eAAe;IAC1D,IAAI,EAAE,SAAS,CAAC;IAChB,MAAM,CAAC,EAAE,UAAU,CAAC;CAEpB;AAGD,MAAM,WAAW,cAAe,SAAQ,eAAe;IACtD,IAAI,CAAC,EAAE,KAAK,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;CAChB;AACD,MAAM,MAAM,cAAc,GAAG,CAC5B,IAAI,EAAE,QAAQ,EACd,OAAO,CAAC,EAAE,kBAAkB,GAAG,cAAc,KACzC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;AACvB,MAAM,WAAW,WAAW;IAC3B,OAAO,CACN,IAAI,EAAE,QAAQ,EACd,OAAO,CAAC,EAAE,kBAAkB,GAAG,cAAc,GAC3C,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;CACrB;AAED,MAAM,WAAW,yBAAyB;IACzC,YAAY,CACX,IAAI,EAAE,MAAM,GACV,aAAa,GAAG,SAAS,GAAG,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC,CAAC;CAClE;AAED,qBAAa,eAAgB,SAAQ,KAAK;;CAIzC;AAED,qBAAa,aAAc,SAAQ,KAAK;CAAG;AAC3C,qBAAa,mBAAoB,SAAQ,KAAK;CAAG"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAE1D,cAAc,WAAW,CAAC;AAE1B,MAAM,WAAW,UAAU;IAC1B,cAAc,EAAE,WAAW,CAAC,aAAa,CAAC,CAAC;IAC3C,gBAAgB,EAAE,WAAW,CAAC,aAAa,CAAC,CAAC;IAC7C,kBAAkB,EAAE,WAAW,CAAC,aAAa,CAAC,CAAC;CAC/C;AAED,MAAM,WAAW,aAAa;IAC7B,OAAO,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;CAC9B;AACD,MAAM,WAAW,YAAa,SAAQ,UAAU,EAAE,aAAa;IAC9D,IAAI,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC;CAC/B;AAED,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AAGjC,MAAM,MAAM,MAAM,GAAG,UAAU,GAAG,WAAW,CAAC;AAC9C,MAAM,MAAM,MAAM,GAAG,KAAK,GAAG,KAAK,CAAC;AAEnC,MAAM,WAAW,eAAe;IAC/B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;CACpB;AAGD,MAAM,WAAW,kBAAmB,SAAQ,eAAe;IAC1D,IAAI,EAAE,SAAS,CAAC;IAChB,MAAM,CAAC,EAAE,UAAU,CAAC;CAEpB;AAGD,MAAM,WAAW,cAAe,SAAQ,eAAe;IACtD,IAAI,CAAC,EAAE,KAAK,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;CAChB;AACD,MAAM,MAAM,cAAc,GAAG,CAC5B,IAAI,EAAE,QAAQ,EACd,OAAO,CAAC,EAAE,kBAAkB,GAAG,cAAc,KACzC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;AACvB,MAAM,WAAW,WAAW;IAC3B,OAAO,CACN,IAAI,EAAE,QAAQ,EACd,OAAO,CAAC,EAAE,kBAAkB,GAAG,cAAc,GAC3C,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;CACrB;AAED,MAAM,WAAW,yBAAyB;IACzC,YAAY,CACX,IAAI,EAAE,MAAM,GACV,aAAa,GAAG,SAAS,GAAG,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC,CAAC;CAClE;AAED,qBAAa,eAAgB,SAAQ,KAAK;;CAIzC;AAED,qBAAa,aAAc,SAAQ,KAAK;CAAG;AAC3C,qBAAa,mBAAoB,SAAQ,KAAK;CAAG"}
package/dist/src/index.js CHANGED
@@ -1,5 +1,6 @@
1
1
  export * from "./keys.js";
2
2
  export * from "./messages.js";
3
+ export * from "./route-hints.js";
3
4
  export class NotStartedError extends Error {
4
5
  constructor() {
5
6
  super("Not started");
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAIA,cAAc,WAAW,CAAC;AAe1B,cAAc,eAAe,CAAC;AA0C9B,MAAM,OAAO,eAAgB,SAAQ,KAAK;IACzC;QACC,KAAK,CAAC,aAAa,CAAC,CAAC;IACtB,CAAC;CACD;AAED,MAAM,OAAO,aAAc,SAAQ,KAAK;CAAG;AAC3C,MAAM,OAAO,mBAAoB,SAAQ,KAAK;CAAG"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAIA,cAAc,WAAW,CAAC;AAe1B,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AA0CjC,MAAM,OAAO,eAAgB,SAAQ,KAAK;IACzC;QACC,KAAK,CAAC,aAAa,CAAC,CAAC;IACtB,CAAC;CACD;AAED,MAAM,OAAO,aAAc,SAAQ,KAAK;CAAG;AAC3C,MAAM,OAAO,mBAAoB,SAAQ,KAAK;CAAG"}
@@ -36,17 +36,21 @@ export declare class AcknowledgeDelivery extends DeliveryMode {
36
36
  });
37
37
  }
38
38
  /**
39
- * Deliver but with greedy fanout so that we eventually reach our target
40
- * Expect acknowledgement
39
+ * Flood (AnyWhere) but expect acknowledgement.
40
+ *
41
+ * This is primarily useful for control-plane probing / route discovery where
42
+ * the sender does not have (or does not want) an explicit recipient list.
41
43
  */
42
- export declare class SeekDelivery extends DeliveryMode {
43
- to?: string[];
44
+ export declare class AcknowledgeAnyWhere extends DeliveryMode {
44
45
  redundancy: number;
45
46
  constructor(properties: {
46
- to?: PeerRefs;
47
47
  redundancy: number;
48
48
  });
49
49
  }
50
+ /**
51
+ * Delivery mode used for acknowledgement frames and debugging.
52
+ * Carries a trace of hops.
53
+ */
50
54
  export declare class TracedDelivery extends DeliveryMode {
51
55
  trace: string[];
52
56
  constructor(trace: string[]);
@@ -69,7 +73,7 @@ export type WithTo = {
69
73
  to?: (string | PublicSignKey | PeerId)[] | Set<string>;
70
74
  };
71
75
  export type WithMode = {
72
- mode?: SilentDelivery | SeekDelivery | AcknowledgeDelivery | AnyWhere;
76
+ mode?: SilentDelivery | AcknowledgeDelivery | AcknowledgeAnyWhere | AnyWhere;
73
77
  };
74
78
  export type PriorityOptions = {
75
79
  priority?: number;
@@ -102,14 +106,14 @@ export declare class MessageHeader<T extends DeliveryMode = DeliveryMode> {
102
106
  verify(): boolean;
103
107
  }
104
108
  export declare abstract class Message<T extends DeliveryMode = DeliveryMode> {
105
- static from(bytes: Uint8ArrayList): DataMessage<SilentDelivery | AcknowledgeDelivery | SeekDelivery | AnyWhere> | ACK | Hello | Goodbye;
109
+ static from(bytes: Uint8ArrayList): DataMessage<SilentDelivery | AcknowledgeDelivery | AcknowledgeAnyWhere | AnyWhere> | ACK | Hello | Goodbye;
106
110
  abstract get header(): MessageHeader<T>;
107
111
  sign(signer: (bytes: Uint8Array) => Promise<SignatureWithKey> | SignatureWithKey): Promise<this>;
108
112
  abstract bytes(): Uint8ArrayList | Uint8Array;
109
113
  _verified: boolean;
110
114
  verify(expectSignatures: boolean): Promise<boolean>;
111
115
  }
112
- export declare class DataMessage<T extends SilentDelivery | SeekDelivery | AcknowledgeDelivery | AnyWhere = SilentDelivery | SeekDelivery | AcknowledgeDelivery | AnyWhere> extends Message<T> {
116
+ export declare class DataMessage<T extends SilentDelivery | AcknowledgeDelivery | AcknowledgeAnyWhere | AnyWhere = SilentDelivery | AcknowledgeDelivery | AcknowledgeAnyWhere | AnyWhere> extends Message<T> {
113
117
  private _header;
114
118
  private _data?;
115
119
  constructor(properties: {
@@ -1 +1 @@
1
- {"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../src/messages.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../src/messages.ts"],"names":[],"mappings":"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"}
@@ -33,7 +33,7 @@ var __runInitializers = (this && this.__runInitializers) || function (thisArg, i
33
33
  return useValue ? value : void 0;
34
34
  };
35
35
  import { deserialize, field, fixedArray, option, serialize, variant, vec, } from "@dao-xyz/borsh";
36
- import { PublicSignKey, SignatureWithKey, randomBytes, sha256Base64, verify, } from "@peerbit/crypto";
36
+ import { PublicSignKey, SignatureWithKey, randomBytes, toBase64, verify, } from "@peerbit/crypto";
37
37
  import { Uint8ArrayList } from "uint8arraylist";
38
38
  import { coercePeerRefsToHashes } from "./keys.js";
39
39
  export const ID_LENGTH = 32;
@@ -46,15 +46,12 @@ const SIGNATURES_SIZE_ENCODING = "u8"; // with 7 steps you know everyone in the
46
46
  export const getMsgId = async (msg) => {
47
47
  // first bytes fis discriminator,
48
48
  // next 32 bytes should be an id
49
- return sha256Base64(msg.subarray(0, 33)); // base64EncArr(msg, 0, ID_LENGTH + 1);
49
+ return toBase64(msg.subarray(0, 33)); // discriminator + id (33 bytes)
50
50
  };
51
51
  export const deliveryModeHasReceiver = (mode) => {
52
52
  if (mode instanceof SilentDelivery && mode.to.length > 0) {
53
53
  return true;
54
54
  }
55
- if (mode instanceof SeekDelivery && mode.to?.length && mode.to?.length > 0) {
56
- return true;
57
- }
58
55
  if (mode instanceof AcknowledgeDelivery && mode.to.length > 0) {
59
56
  return true;
60
57
  }
@@ -135,10 +132,11 @@ let AcknowledgeDelivery = (() => {
135
132
  constructor(properties) {
136
133
  super();
137
134
  __runInitializers(this, _redundancy_extraInitializers);
138
- if (this.to?.length === 0) {
135
+ const to = coercePeerRefsToHashes(properties.to);
136
+ if (to.length === 0) {
139
137
  throw new Error("Invalud value of property 'to', expecting either undefined or an array with more than one element");
140
138
  }
141
- this.to = coercePeerRefsToHashes(properties.to);
139
+ this.to = to;
142
140
  this.redundancy = properties.redundancy;
143
141
  }
144
142
  };
@@ -146,49 +144,45 @@ let AcknowledgeDelivery = (() => {
146
144
  })();
147
145
  export { AcknowledgeDelivery };
148
146
  /**
149
- * Deliver but with greedy fanout so that we eventually reach our target
150
- * Expect acknowledgement
147
+ * Flood (AnyWhere) but expect acknowledgement.
148
+ *
149
+ * This is primarily useful for control-plane probing / route discovery where
150
+ * the sender does not have (or does not want) an explicit recipient list.
151
151
  */
152
- let SeekDelivery = (() => {
153
- let _classDecorators = [variant(2)];
152
+ let AcknowledgeAnyWhere = (() => {
153
+ let _classDecorators = [variant(5)];
154
154
  let _classDescriptor;
155
155
  let _classExtraInitializers = [];
156
156
  let _classThis;
157
157
  let _classSuper = DeliveryMode;
158
- let _to_decorators;
159
- let _to_initializers = [];
160
- let _to_extraInitializers = [];
161
158
  let _redundancy_decorators;
162
159
  let _redundancy_initializers = [];
163
160
  let _redundancy_extraInitializers = [];
164
- var SeekDelivery = class extends _classSuper {
161
+ var AcknowledgeAnyWhere = class extends _classSuper {
165
162
  static { _classThis = this; }
166
163
  static {
167
164
  const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
168
- _to_decorators = [field({ type: option(vec("string")) })];
169
165
  _redundancy_decorators = [field({ type: "u8" })];
170
- __esDecorate(null, null, _to_decorators, { kind: "field", name: "to", static: false, private: false, access: { has: obj => "to" in obj, get: obj => obj.to, set: (obj, value) => { obj.to = value; } }, metadata: _metadata }, _to_initializers, _to_extraInitializers);
171
166
  __esDecorate(null, null, _redundancy_decorators, { kind: "field", name: "redundancy", static: false, private: false, access: { has: obj => "redundancy" in obj, get: obj => obj.redundancy, set: (obj, value) => { obj.redundancy = value; } }, metadata: _metadata }, _redundancy_initializers, _redundancy_extraInitializers);
172
167
  __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
173
- SeekDelivery = _classThis = _classDescriptor.value;
168
+ AcknowledgeAnyWhere = _classThis = _classDescriptor.value;
174
169
  if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
175
170
  __runInitializers(_classThis, _classExtraInitializers);
176
171
  }
177
- to = __runInitializers(this, _to_initializers, void 0);
178
- redundancy = (__runInitializers(this, _to_extraInitializers), __runInitializers(this, _redundancy_initializers, void 0));
172
+ redundancy = __runInitializers(this, _redundancy_initializers, void 0);
179
173
  constructor(properties) {
180
174
  super();
181
175
  __runInitializers(this, _redundancy_extraInitializers);
182
- if (this.to?.length === 0) {
183
- throw new Error("Invalud value of property 'to', expecting either undefined or an array with more than one element");
184
- }
185
- this.to = properties.to ? coercePeerRefsToHashes(properties.to) : undefined;
186
176
  this.redundancy = properties.redundancy;
187
177
  }
188
178
  };
189
- return SeekDelivery = _classThis;
179
+ return AcknowledgeAnyWhere = _classThis;
190
180
  })();
191
- export { SeekDelivery };
181
+ export { AcknowledgeAnyWhere };
182
+ /**
183
+ * Delivery mode used for acknowledgement frames and debugging.
184
+ * Carries a trace of hops.
185
+ */
192
186
  let TracedDelivery = (() => {
193
187
  let _classDecorators = [variant(3)];
194
188
  let _classDescriptor;
@@ -312,7 +306,7 @@ const getDefaultPriorityFromMode = (mode) => {
312
306
  if (mode instanceof AnyWhere) {
313
307
  return 0;
314
308
  }
315
- if (mode instanceof SeekDelivery) {
309
+ if (mode instanceof AcknowledgeAnyWhere) {
316
310
  return 1;
317
311
  }
318
312
  if (mode instanceof AcknowledgeDelivery) {
@@ -1 +1 @@
1
- {"version":3,"file":"messages.js","sourceRoot":"","sources":["../../src/messages.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EACN,WAAW,EACX,KAAK,EACL,UAAU,EACV,MAAM,EACN,SAAS,EACT,OAAO,EACP,GAAG,GACH,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACN,aAAa,EACb,gBAAgB,EAChB,WAAW,EACX,YAAY,EACZ,MAAM,GACN,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAiB,sBAAsB,EAAE,MAAM,WAAW,CAAC;AAElE,MAAM,CAAC,MAAM,SAAS,GAAG,EAAE,CAAC;AAE5B,MAAM,OAAO,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAExC,MAAM,wBAAwB,GAAG,IAAI,CAAC,CAAC,uEAAuE;AAE9G;;;GAGG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,KAAK,EAAE,GAAgC,EAAE,EAAE;IAClE,iCAAiC;IACjC,gCAAgC;IAChC,OAAO,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,uCAAuC;AAClF,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,uBAAuB,GAAG,CACtC,IAAkB,EACS,EAAE;IAC7B,IAAI,IAAI,YAAY,cAAc,IAAI,IAAI,CAAC,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1D,OAAO,IAAI,CAAC;IACb,CAAC;IACD,IAAI,IAAI,YAAY,YAAY,IAAI,IAAI,CAAC,EAAE,EAAE,MAAM,IAAI,IAAI,CAAC,EAAE,EAAE,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5E,OAAO,IAAI,CAAC;IACb,CAAC;IACD,IAAI,IAAI,YAAY,mBAAmB,IAAI,IAAI,CAAC,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/D,OAAO,IAAI,CAAC;IACb,CAAC;IACD,OAAO,KAAK,CAAC;AACd,CAAC,CAAC;AAEF,MAAM,OAAgB,YAAY;CAAG;AAErC;;GAEG;IAEU,cAAc;4BAD1B,OAAO,CAAC,CAAC,CAAC;;;;sBACyB,YAAY;;;;;;;8BAApB,SAAQ,WAAY;;;;8BAC9C,KAAK,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;sCAG9B,KAAK,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;YAFtB,wJAAA,EAAE,6BAAF,EAAE,+EAAW;YAGb,gLAAA,UAAU,6BAAV,UAAU,+FAAS;YALpB,6KAYC;;;YAZY,uDAAc;;QAE1B,EAAE,qDAAW;QAGb,UAAU,+GAAS;QAEnB,YAAY,UAAgD;YAC3D,KAAK,EAAE,CAAC;;YACR,IAAI,CAAC,EAAE,GAAG,sBAAsB,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;YAChD,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,UAAU,CAAC;SACxC;;;;SAXW,cAAc;AAc3B;;GAEG;IAEU,mBAAmB;4BAD/B,OAAO,CAAC,CAAC,CAAC;;;;sBAC8B,YAAY;;;;;;;mCAApB,SAAQ,WAAY;;;;8BACnD,KAAK,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;sCAG9B,KAAK,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;YAFtB,wJAAA,EAAE,6BAAF,EAAE,+EAAW;YAGb,gLAAA,UAAU,6BAAV,UAAU,+FAAS;YALpB,6KAiBC;;;YAjBY,uDAAmB;;QAE/B,EAAE,qDAAW;QAGb,UAAU,+GAAS;QAEnB,YAAY,UAAgD;YAC3D,KAAK,EAAE,CAAC;;YACR,IAAI,IAAI,CAAC,EAAE,EAAE,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC3B,MAAM,IAAI,KAAK,CACd,mGAAmG,CACnG,CAAC;YACH,CAAC;YACD,IAAI,CAAC,EAAE,GAAG,sBAAsB,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;YAChD,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,UAAU,CAAC;SACxC;;;;SAhBW,mBAAmB;AAmBhC;;;GAGG;IAEU,YAAY;4BADxB,OAAO,CAAC,CAAC,CAAC;;;;sBACuB,YAAY;;;;;;;4BAApB,SAAQ,WAAY;;;;8BAC5C,KAAK,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC;sCAGtC,KAAK,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;YAFtB,wJAAA,EAAE,6BAAF,EAAE,+EAAY;YAGd,gLAAA,UAAU,6BAAV,UAAU,+FAAS;YALpB,6KAiBC;;;YAjBY,uDAAY;;QAExB,EAAE,qDAAY;QAGd,UAAU,+GAAS;QAEnB,YAAY,UAAiD;YAC5D,KAAK,EAAE,CAAC;;YACR,IAAI,IAAI,CAAC,EAAE,EAAE,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC3B,MAAM,IAAI,KAAK,CACd,mGAAmG,CACnG,CAAC;YACH,CAAC;YACD,IAAI,CAAC,EAAE,GAAG,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,sBAAsB,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAC5E,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,UAAU,CAAC;SACxC;;;;SAhBW,YAAY;IAoBZ,cAAc;4BAD1B,OAAO,CAAC,CAAC,CAAC;;;;sBACyB,YAAY;;;;8BAApB,SAAQ,WAAY;;;;iCAC9C,KAAK,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC/B,iKAAA,KAAK,6BAAL,KAAK,qFAAW;YAFjB,6KAQC;;;YARY,uDAAc;;QAE1B,KAAK,wDAAW;QAEhB,YAAY,KAAe;YAC1B,KAAK,EAAE,CAAC;;YACR,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;SACnB;;;;SAPW,cAAc;IAWd,QAAQ;4BADpB,OAAO,CAAC,CAAC,CAAC;;;;sBACmB,YAAY;wBAApB,SAAQ,WAAY;;;;YAA1C,6KAA6C;;;YAAhC,uDAAQ;;;;;SAAR,QAAQ;IAGR,UAAU;4BADtB,OAAO,CAAC,CAAC,CAAC;;;;;;;;;;;sCAET,KAAK,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,gBAAgB,EAAE,wBAAwB,CAAC,EAAE,CAAC;YACjE,gLAAA,UAAU,6BAAV,UAAU,+FAAqB;YAFhC,6KAkBC;;;YAlBY,uDAAU;;QAEtB,UAAU,6DAAqB;QAE/B,YAAY,aAAiC,EAAE;;YAC9C,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;SAC7B;QAED,MAAM,CAAC,KAAiB;YACvB,OAAO,CACN,IAAI,CAAC,UAAU,CAAC,MAAM,KAAK,KAAK,CAAC,UAAU,CAAC,MAAM;gBAClD,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CACtE,CAAC;QACH,CAAC;QAED,IAAI,UAAU;YACb,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QAChD,CAAC;;;;SAjBW,UAAU;AAoBvB,MAAe,QAAQ;CAAG;IAGb,aAAa;4BADzB,OAAO,CAAC,CAAC,CAAC;;;;sBACwB,QAAQ;;;;6BAAhB,SAAQ,WAAQ;;;;sCACzC,KAAK,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC/B,gLAAA,UAAU,6BAAV,UAAU,+FAAW;YAFtB,6KAQC;;;YARY,uDAAa;;QAEzB,UAAU,6DAAW;QAErB,YAAY,UAAoB;YAC/B,KAAK,EAAE,CAAC;;YACR,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;SAC7B;;;;SAPW,aAAa;AAgC1B,MAAM,0BAA0B,GAAG,CAAC,IAAkB,EAAE,EAAE;IACzD,IAAI,IAAI,YAAY,cAAc,EAAE,CAAC;QACpC,OAAO,CAAC,CAAC;IACV,CAAC;IACD,IAAI,IAAI,YAAY,QAAQ,EAAE,CAAC;QAC9B,OAAO,CAAC,CAAC;IACV,CAAC;IACD,IAAI,IAAI,YAAY,YAAY,EAAE,CAAC;QAClC,OAAO,CAAC,CAAC;IACV,CAAC;IAED,IAAI,IAAI,YAAY,mBAAmB,EAAE,CAAC;QACzC,OAAO,CAAC,CAAC;IACV,CAAC;IACD,IAAI,IAAI,YAAY,cAAc,EAAE,CAAC;QACpC,OAAO,CAAC,CAAC;IACV,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,mBAAmB,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;AAC9D,CAAC,CAAC;IAGW,aAAa;4BADzB,OAAO,CAAC,CAAC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;+BAET,KAAK,CAAC,EAAE,IAAI,EAAE,UAAU,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC;qCAG5C,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;mCAGtB,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;mCAGtB,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;oCAItB,KAAK,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;mCAG9B,KAAK,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;gCAIjC,KAAK,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC;sCAIrC,KAAK,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC;YAvBpC,2JAAQ,GAAG,6BAAH,GAAG,iFAAa;YAGxB,6KAAA,SAAS,6BAAT,SAAS,6FAAS;YAGlB,uKAAA,OAAO,6BAAP,OAAO,yFAAS;YAGhB,uKAAA,OAAO,6BAAP,OAAO,yFAAS;YAIhB,0KAAA,QAAQ,6BAAR,QAAQ,2FAAU;YAGlB,uKAAQ,OAAO,6BAAP,OAAO,yFAAiB;YAIhC,8JAAA,IAAI,6BAAJ,IAAI,mFAAI;YAIR,gLAAA,UAAU,6BAAV,UAAU,+FAAyB;YA1BpC,6KA4DC;;;YA5DY,uDAAa;;QAEjB,GAAG,sDAAa;QAGxB,SAAS,+GAAS;QAGlB,OAAO,mHAAS;QAGhB,OAAO,iHAAS;QAEhB,sFAAsF;QAEtF,QAAQ,kHAAU;QAGV,OAAO,kHAAiB;QAEhC,8DAA8D;QAE9D,IAAI,8GAAI;QAER,8DAA8D;QAE9D,UAAU,iHAAyB;QAEnC,YAAY,UAOX;;YACA,IAAI,CAAC,GAAG,GAAG,UAAU,EAAE,EAAE,IAAI,WAAW,CAAC,SAAS,CAAC,CAAC;YACpD,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,UAAU,EAAE,OAAO,IAAI,CAAC,IAAI,IAAI,EAAE,GAAG,OAAO,CAAC,CAAC;YACpE,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;YACrC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YAC1C,IAAI,CAAC,UAAU,GAAG,IAAI,UAAU,EAAE,CAAC;YACnC,IAAI,CAAC,OAAO,GAAG,UAAU,EAAE,MAAM,CAAC;YAClC,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC;YAC5B,IAAI,CAAC,QAAQ;gBACZ,UAAU,CAAC,QAAQ,IAAI,IAAI;oBAC1B,CAAC,CAAC,UAAU,CAAC,QAAQ;oBACrB,CAAC,CAAC,0BAA0B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SAC1C;QAED,IAAI,EAAE;YACL,OAAO,IAAI,CAAC,GAAG,CAAC;QACjB,CAAC;QAED,IAAI,MAAM;YACT,OAAO,IAAI,CAAC,OAAO,CAAC;QACrB,CAAC;QAED,MAAM;YACL,OAAO,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC;QACpC,CAAC;;;;SA3DW,aAAa;AAkE1B,MAAM,IAAI,GAAG,KAAK,EACjB,GAAM,EACN,MAA2E,EAC9D,EAAE;IACf,MAAM,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC;IAC7B,GAAG,CAAC,MAAM,CAAC,IAAI,GAAG,SAAgB,CAAC;IACnC,MAAM,UAAU,GAAG,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC;IACzC,GAAG,CAAC,MAAM,CAAC,UAAU,GAAG,SAAS,CAAC;IAClC,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;IAC7B,yDAAyD;IACzD,GAAG,CAAC,MAAM,CAAC,UAAU,GAAG,UAAU,CAAC;IACnC,GAAG,CAAC,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC;IAEvB,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC,CAAC;IACtC,GAAG,CAAC,MAAM,CAAC,UAAU,GAAG,IAAI,UAAU,CACrC,UAAU,CAAC,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAChE,CAAC;IACF,GAAG,CAAC,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC;IACvB,OAAO,GAAG,CAAC;AACZ,CAAC,CAAC;AAEF,MAAM,cAAc,GAAG,KAAK,EAC3B,OAAmB,EACnB,gBAAyB,EACxB,EAAE;IACH,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC;IAC7C,IAAI,CAAC,UAAU,IAAI,UAAU,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvD,OAAO,CAAC,gBAAgB,CAAC;IAC1B,CAAC;IACD,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC;IAC/B,OAAO,CAAC,MAAM,CAAC,IAAI,GAAG,SAAgB,CAAC;IACvC,OAAO,CAAC,MAAM,CAAC,UAAU,GAAG,SAAS,CAAC;IACtC,MAAM,KAAK,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;IACjC,OAAO,CAAC,MAAM,CAAC,IAAI,GAAG,EAAE,CAAC;IACzB,OAAO,CAAC,MAAM,CAAC,UAAU,GAAG,UAAU,CAAC;IAEvC,KAAK,MAAM,SAAS,IAAI,UAAU,CAAC,UAAU,EAAE,CAAC;QAC/C,IAAI,CAAC,CAAC,MAAM,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC;YACvC,OAAO,KAAK,CAAC;QACd,CAAC;IACF,CAAC;IACD,OAAO,IAAI,CAAC;AACb,CAAC,CAAC;AAEF,MAAM,OAAgB,OAAO;IAC5B,MAAM,CAAC,IAAI,CAAC,KAAqB;QAChC,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,YAAY,EAAE,CAAC;YACnC,OAAO;YACP,OAAO,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAChC,CAAC;aAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,mBAAmB,EAAE,CAAC;YACjD,OAAO,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACxB,CAAC;aAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,aAAa,EAAE,CAAC;YAC3C,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC1B,CAAC;aAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,eAAe,EAAE,CAAC;YAC7C,OAAO,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC5B,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,aAAa,CAAC,CAAC;IAChC,CAAC;IAID,KAAK,CAAC,IAAI,CACT,MAA2E;QAE3E,OAAO,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAC3B,CAAC;IAED,+CAA+C;IAC/C,SAAS,CAAU;IAEnB,KAAK,CAAC,MAAM,CAAC,gBAAyB;QACrC,OAAO,IAAI,CAAC,SAAS,IAAI,IAAI;YAC5B,CAAC,CAAC,IAAI,CAAC,SAAS;YAChB,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS;gBACf,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;oBAC5B,CAAC,MAAM,cAAc,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC;IACpD,CAAC;CACD;AAED,gCAAgC;AAChC,MAAM,YAAY,GAAG,CAAC,CAAC;IAGV,WAAW;4BADvB,OAAO,CAAC,YAAY,CAAC;;;;sBAOZ,OAAO;;;;;;;2BAAf,SAAQ,WAAU;;;;mCAClB,KAAK,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC;iCAG9B,KAAK,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC;YAFpC,uKAAQ,OAAO,6BAAP,OAAO,yFAAmB;YAGlC,iKAAQ,KAAK,6BAAL,KAAK,qFAAc;YAX5B,6KA4CC;;;YA5CY,uDAAW;;QAQf,OAAO,0DAAmB;QAG1B,KAAK,+GAAc;QAE3B,YAAY,UAA2D;YACtE,KAAK,EAAE,CAAC;;YACR,IAAI,CAAC,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC;YAC7B,IAAI,CAAC,OAAO,GAAG,UAAU,CAAC,MAAM,CAAC;SACjC;QAED,IAAI,EAAE;YACL,OAAO,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QACxB,CAAC;QAED,IAAI,MAAM;YACT,OAAO,IAAI,CAAC,OAAO,CAAC;QACrB,CAAC;QAED,IAAI,IAAI;YACP,OAAO,IAAI,CAAC,KAAK,CAAC;QACnB,CAAC;QAED,6CAA6C;QAC7C,KAAK;YACJ,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC;QACxB,CAAC;QAED,MAAM,CAAC,IAAI,CAAC,KAAqB;YAChC,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;gBACxB,MAAM,IAAI,KAAK,CAAC,aAAa,CAAC,CAAC;YAChC,CAAC;YACD,MAAM,GAAG,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;YAC7B,MAAM,GAAG,GAAG,WAAW,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;YAC1C,OAAO,GAAG,CAAC;QACZ,CAAC;;;;SA3CW,WAAW;AA8CxB,MAAM,mBAAmB,GAAG,CAAC,CAAC;IAGjB,GAAG;4BADf,OAAO,CAAC,mBAAmB,CAAC;;;;sBACJ,OAAO;;;;;;;;;;mBAAf,SAAQ,WAAO;;;;kCAC9B,KAAK,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC;kDAG9B,KAAK,CAAC,EAAE,IAAI,EAAE,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC;uCAGrC,KAAK,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;YALtB,oKAAA,MAAM,6BAAN,MAAM,uFAAgC;YAGtC,oNAAA,sBAAsB,6BAAtB,sBAAsB,uHAAa;YAGnC,mLAAA,WAAW,6BAAX,WAAW,iGAAS;YARrB,6KAuCC;;;YAvCY,uDAAG;;QAEf,MAAM,yDAAgC;QAGtC,sBAAsB,+HAAa;QAGnC,WAAW,oIAAS,CAAC,wEAAwE;QAE7F,YAAY,UAIX;YACA,KAAK,EAAE,CAAC;;YACR,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;YAChC,IAAI,CAAC,sBAAsB,GAAG,UAAU,CAAC,sBAAsB,CAAC;YAChE,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC;SACzD;QAED,IAAI,EAAE;YACL,OAAO,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QACvB,CAAC;QAED,KAAK;YACJ,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC;QACxB,CAAC;QAED,MAAM,CAAC,IAAI,CAAC,KAAqB;YAChC,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE,GAAG,CAAC,CAAC;YAClD,IACC,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU;gBACzB,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,EAC/C,CAAC;gBACF,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;YAC1C,CAAC;YACD,OAAO,MAAM,CAAC;QACf,CAAC;;;;SAtCW,GAAG;AAyChB,MAAM,aAAa,GAAG,CAAC,CAAC;IAGX,KAAK;4BADjB,OAAO,CAAC,aAAa,CAAC;;;;sBACI,OAAO;;;;;;;qBAAf,SAAQ,WAAO;;;;kCAChC,KAAK,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC;kCAG9B,KAAK,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YAF/B,oKAAA,MAAM,6BAAN,MAAM,uFAAgB;YAGtB,oKAAA,MAAM,6BAAN,MAAM,uFAAW;YALlB,6KA8BC;;;YA9BY,uDAAK;;QAEjB,MAAM,yDAAgB;QAGtB,MAAM,+GAAW;QAEjB,YAAY,UAAgC;YAC3C,KAAK,EAAE,CAAC;;YACR,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;SAChC;QAED,IAAI,EAAE;YACL,OAAO,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QACvB,CAAC;QAED,KAAK;YACJ,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC;QACxB,CAAC;QAED,MAAM,CAAC,IAAI,CAAC,KAAqB;YAChC,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE,KAAK,CAAC,CAAC;YACpD,IACC,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU;gBACzB,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,EAC/C,CAAC;gBACF,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;YAC5C,CAAC;YACD,OAAO,MAAM,CAAC;QACf,CAAC;;;;SA7BW,KAAK;AAgClB,MAAM,eAAe,GAAG,CAAC,CAAC;IAGb,OAAO;4BADnB,OAAO,CAAC,eAAe,CAAC;;;;sBACI,OAAO;;;;;;;uBAAf,SAAQ,WAAO;;;;kCAClC,KAAK,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC;mCAG9B,KAAK,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YAF/B,oKAAA,MAAM,6BAAN,MAAM,uFAAsD;YAG5D,uKAAA,OAAO,6BAAP,OAAO,yFAAW;YALnB,6KAiCC;;;YAjCY,uDAAO;;QAEnB,MAAM,yDAAsD;QAG5D,OAAO,gHAAW;QAElB,YAAY,UAGX;YACA,KAAK,EAAE,CAAC;;YACR,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;YAChC,IAAI,CAAC,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC;SAClC;QACD,IAAI,EAAE;YACL,OAAO,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QACvB,CAAC;QAED,KAAK;YACJ,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC;QACxB,CAAC;QAED,MAAM,CAAC,IAAI,CAAC,KAAqB;YAChC,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE,OAAO,CAAC,CAAC;YACtD,IACC,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU;gBACzB,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,EAC/C,CAAC;gBACF,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;YAC9C,CAAC;YACD,OAAO,MAAM,CAAC;QACf,CAAC;;;;SAhCW,OAAO"}
1
+ {"version":3,"file":"messages.js","sourceRoot":"","sources":["../../src/messages.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ export type DirectStreamAckRouteHint = {
2
+ kind: "directstream-ack";
3
+ from: string;
4
+ target: string;
5
+ nextHop: string;
6
+ distance: number;
7
+ session: number;
8
+ updatedAt: number;
9
+ expiresAt?: number;
10
+ };
11
+ export type FanoutRouteTokenHint = {
12
+ kind: "fanout-token";
13
+ root: string;
14
+ target: string;
15
+ route: string[];
16
+ updatedAt: number;
17
+ expiresAt?: number;
18
+ };
19
+ export type RouteHint = DirectStreamAckRouteHint | FanoutRouteTokenHint;
20
+ //# sourceMappingURL=route-hints.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"route-hints.d.ts","sourceRoot":"","sources":["../../src/route-hints.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,wBAAwB,GAAG;IACtC,IAAI,EAAE,kBAAkB,CAAC;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IAClC,IAAI,EAAE,cAAc,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG,wBAAwB,GAAG,oBAAoB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=route-hints.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"route-hints.js","sourceRoot":"","sources":["../../src/route-hints.ts"],"names":[],"mappings":""}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@peerbit/stream-interface",
3
- "version": "5.4.0-2ed894b",
3
+ "version": "5.4.0-4783d05",
4
4
  "description": "Block store streaming",
5
5
  "sideEffects": false,
6
6
  "type": "module",
@@ -71,7 +71,7 @@
71
71
  "@dao-xyz/borsh": "^6.0.0",
72
72
  "@libp2p/interface": "^3.1.0",
73
73
  "uint8arraylist": "^2.4.8",
74
- "@peerbit/crypto": "2.4.1-2ed894b"
74
+ "@peerbit/crypto": "2.4.1-4783d05"
75
75
  },
76
76
  "scripts": {
77
77
  "clean": "aegir clean",
package/src/index.ts CHANGED
@@ -18,6 +18,7 @@ export interface StreamEvents extends PeerEvents, MessageEvents {
18
18
  }
19
19
 
20
20
  export * from "./messages.js";
21
+ export * from "./route-hints.js";
21
22
 
22
23
  // ---------- wait for peer types ----------
23
24
  export type Target = "neighbor" | "reachable";
package/src/messages.ts CHANGED
@@ -12,7 +12,7 @@ import {
12
12
  PublicSignKey,
13
13
  SignatureWithKey,
14
14
  randomBytes,
15
- sha256Base64,
15
+ toBase64,
16
16
  verify,
17
17
  } from "@peerbit/crypto";
18
18
  import { Uint8ArrayList } from "uint8arraylist";
@@ -31,7 +31,7 @@ const SIGNATURES_SIZE_ENCODING = "u8"; // with 7 steps you know everyone in the
31
31
  export const getMsgId = async (msg: Uint8ArrayList | Uint8Array) => {
32
32
  // first bytes fis discriminator,
33
33
  // next 32 bytes should be an id
34
- return sha256Base64(msg.subarray(0, 33)); // base64EncArr(msg, 0, ID_LENGTH + 1);
34
+ return toBase64(msg.subarray(0, 33)); // discriminator + id (33 bytes)
35
35
  };
36
36
 
37
37
  export const deliveryModeHasReceiver = (
@@ -40,9 +40,6 @@ export const deliveryModeHasReceiver = (
40
40
  if (mode instanceof SilentDelivery && mode.to.length > 0) {
41
41
  return true;
42
42
  }
43
- if (mode instanceof SeekDelivery && mode.to?.length && mode.to?.length > 0) {
44
- return true;
45
- }
46
43
  if (mode instanceof AcknowledgeDelivery && mode.to.length > 0) {
47
44
  return true;
48
45
  }
@@ -82,40 +79,38 @@ export class AcknowledgeDelivery extends DeliveryMode {
82
79
 
83
80
  constructor(properties: { to: PeerRefs; redundancy: number }) {
84
81
  super();
85
- if (this.to?.length === 0) {
82
+ const to = coercePeerRefsToHashes(properties.to);
83
+ if (to.length === 0) {
86
84
  throw new Error(
87
85
  "Invalud value of property 'to', expecting either undefined or an array with more than one element",
88
86
  );
89
87
  }
90
- this.to = coercePeerRefsToHashes(properties.to);
88
+ this.to = to;
91
89
  this.redundancy = properties.redundancy;
92
90
  }
93
91
  }
94
92
 
95
93
  /**
96
- * Deliver but with greedy fanout so that we eventually reach our target
97
- * Expect acknowledgement
94
+ * Flood (AnyWhere) but expect acknowledgement.
95
+ *
96
+ * This is primarily useful for control-plane probing / route discovery where
97
+ * the sender does not have (or does not want) an explicit recipient list.
98
98
  */
99
- @variant(2)
100
- export class SeekDelivery extends DeliveryMode {
101
- @field({ type: option(vec("string")) })
102
- to?: string[];
103
-
99
+ @variant(5)
100
+ export class AcknowledgeAnyWhere extends DeliveryMode {
104
101
  @field({ type: "u8" })
105
102
  redundancy: number;
106
103
 
107
- constructor(properties: { to?: PeerRefs; redundancy: number }) {
104
+ constructor(properties: { redundancy: number }) {
108
105
  super();
109
- if (this.to?.length === 0) {
110
- throw new Error(
111
- "Invalud value of property 'to', expecting either undefined or an array with more than one element",
112
- );
113
- }
114
- this.to = properties.to ? coercePeerRefsToHashes(properties.to) : undefined;
115
106
  this.redundancy = properties.redundancy;
116
107
  }
117
108
  }
118
109
 
110
+ /**
111
+ * Delivery mode used for acknowledgement frames and debugging.
112
+ * Carries a trace of hops.
113
+ */
119
114
  @variant(3)
120
115
  export class TracedDelivery extends DeliveryMode {
121
116
  @field({ type: vec("string") })
@@ -169,7 +164,7 @@ export type WithTo = {
169
164
  };
170
165
 
171
166
  export type WithMode = {
172
- mode?: SilentDelivery | SeekDelivery | AcknowledgeDelivery | AnyWhere;
167
+ mode?: SilentDelivery | AcknowledgeDelivery | AcknowledgeAnyWhere | AnyWhere;
173
168
  };
174
169
 
175
170
  export type PriorityOptions = {
@@ -193,7 +188,7 @@ const getDefaultPriorityFromMode = (mode: DeliveryMode) => {
193
188
  if (mode instanceof AnyWhere) {
194
189
  return 0;
195
190
  }
196
- if (mode instanceof SeekDelivery) {
191
+ if (mode instanceof AcknowledgeAnyWhere) {
197
192
  return 1;
198
193
  }
199
194
 
@@ -357,10 +352,14 @@ const DATA_VARIANT = 0;
357
352
 
358
353
  @variant(DATA_VARIANT)
359
354
  export class DataMessage<
360
- T extends SilentDelivery | SeekDelivery | AcknowledgeDelivery | AnyWhere =
355
+ T extends
356
+ | SilentDelivery
357
+ | AcknowledgeDelivery
358
+ | AcknowledgeAnyWhere
359
+ | AnyWhere =
361
360
  | SilentDelivery
362
- | SeekDelivery
363
361
  | AcknowledgeDelivery
362
+ | AcknowledgeAnyWhere
364
363
  | AnyWhere,
365
364
  > extends Message<T> {
366
365
  @field({ type: MessageHeader })
@@ -0,0 +1,21 @@
1
+ export type DirectStreamAckRouteHint = {
2
+ kind: "directstream-ack";
3
+ from: string;
4
+ target: string;
5
+ nextHop: string;
6
+ distance: number;
7
+ session: number;
8
+ updatedAt: number;
9
+ expiresAt?: number;
10
+ };
11
+
12
+ export type FanoutRouteTokenHint = {
13
+ kind: "fanout-token";
14
+ root: string;
15
+ target: string;
16
+ route: string[];
17
+ updatedAt: number;
18
+ expiresAt?: number;
19
+ };
20
+
21
+ export type RouteHint = DirectStreamAckRouteHint | FanoutRouteTokenHint;