@matter/general 0.15.1 → 0.15.2-alpha.0-20250704-2715344f0

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 (135) hide show
  1. package/dist/cjs/MatterError.d.ts +5 -0
  2. package/dist/cjs/MatterError.d.ts.map +1 -1
  3. package/dist/cjs/MatterError.js +3 -0
  4. package/dist/cjs/MatterError.js.map +1 -1
  5. package/dist/cjs/crypto/MockCrypto.d.ts +4 -0
  6. package/dist/cjs/crypto/MockCrypto.d.ts.map +1 -1
  7. package/dist/cjs/crypto/MockCrypto.js +37 -18
  8. package/dist/cjs/crypto/MockCrypto.js.map +1 -1
  9. package/dist/cjs/log/Diagnostic.js +8 -1
  10. package/dist/cjs/log/Diagnostic.js.map +1 -1
  11. package/dist/cjs/net/UdpChannel.d.ts +6 -1
  12. package/dist/cjs/net/UdpChannel.d.ts.map +1 -1
  13. package/dist/cjs/net/index.d.ts +1 -3
  14. package/dist/cjs/net/index.d.ts.map +1 -1
  15. package/dist/cjs/net/index.js +1 -3
  16. package/dist/cjs/net/index.js.map +1 -1
  17. package/dist/cjs/net/mock/MockNetwork.d.ts +8 -1
  18. package/dist/cjs/net/mock/MockNetwork.d.ts.map +1 -1
  19. package/dist/cjs/net/mock/MockNetwork.js +17 -8
  20. package/dist/cjs/net/mock/MockNetwork.js.map +1 -1
  21. package/dist/cjs/net/mock/MockRouter.d.ts +28 -0
  22. package/dist/cjs/net/mock/MockRouter.d.ts.map +1 -0
  23. package/dist/cjs/net/mock/MockRouter.js +46 -0
  24. package/dist/cjs/net/mock/MockRouter.js.map +6 -0
  25. package/dist/cjs/net/mock/MockUdpChannel.d.ts +6 -5
  26. package/dist/cjs/net/mock/MockUdpChannel.d.ts.map +1 -1
  27. package/dist/cjs/net/mock/MockUdpChannel.js +47 -21
  28. package/dist/cjs/net/mock/MockUdpChannel.js.map +1 -1
  29. package/dist/cjs/net/mock/NetworkSimulator.d.ts +6 -5
  30. package/dist/cjs/net/mock/NetworkSimulator.d.ts.map +1 -1
  31. package/dist/cjs/net/mock/NetworkSimulator.js +2 -37
  32. package/dist/cjs/net/mock/NetworkSimulator.js.map +1 -1
  33. package/dist/cjs/net/mock/index.d.ts +10 -0
  34. package/dist/cjs/net/mock/index.d.ts.map +1 -0
  35. package/dist/cjs/net/mock/index.js +27 -0
  36. package/dist/cjs/net/mock/index.js.map +6 -0
  37. package/dist/cjs/storage/StorageBackendMemory.d.ts.map +1 -1
  38. package/dist/cjs/storage/StorageBackendMemory.js +12 -6
  39. package/dist/cjs/storage/StorageBackendMemory.js.map +1 -1
  40. package/dist/cjs/time/Time.d.ts +7 -1
  41. package/dist/cjs/time/Time.d.ts.map +1 -1
  42. package/dist/cjs/time/Time.js +19 -7
  43. package/dist/cjs/time/Time.js.map +1 -1
  44. package/dist/cjs/util/Cancelable.d.ts +1 -1
  45. package/dist/cjs/util/Cancelable.d.ts.map +1 -1
  46. package/dist/cjs/util/Cancelable.js +1 -1
  47. package/dist/cjs/util/Cancelable.js.map +1 -1
  48. package/dist/cjs/util/Construction.d.ts +2 -0
  49. package/dist/cjs/util/Construction.d.ts.map +1 -1
  50. package/dist/cjs/util/Construction.js +9 -3
  51. package/dist/cjs/util/Construction.js.map +1 -1
  52. package/dist/cjs/util/Promises.d.ts +2 -3
  53. package/dist/cjs/util/Promises.d.ts.map +1 -1
  54. package/dist/cjs/util/Promises.js +1 -5
  55. package/dist/cjs/util/Promises.js.map +1 -1
  56. package/dist/cjs/util/String.d.ts +5 -0
  57. package/dist/cjs/util/String.d.ts.map +1 -1
  58. package/dist/cjs/util/String.js +51 -1
  59. package/dist/cjs/util/String.js.map +2 -2
  60. package/dist/esm/MatterError.d.ts +5 -0
  61. package/dist/esm/MatterError.d.ts.map +1 -1
  62. package/dist/esm/MatterError.js +3 -0
  63. package/dist/esm/MatterError.js.map +1 -1
  64. package/dist/esm/crypto/MockCrypto.d.ts +4 -0
  65. package/dist/esm/crypto/MockCrypto.d.ts.map +1 -1
  66. package/dist/esm/crypto/MockCrypto.js +37 -18
  67. package/dist/esm/crypto/MockCrypto.js.map +1 -1
  68. package/dist/esm/log/Diagnostic.js +8 -1
  69. package/dist/esm/log/Diagnostic.js.map +1 -1
  70. package/dist/esm/net/UdpChannel.d.ts +6 -1
  71. package/dist/esm/net/UdpChannel.d.ts.map +1 -1
  72. package/dist/esm/net/index.d.ts +1 -3
  73. package/dist/esm/net/index.d.ts.map +1 -1
  74. package/dist/esm/net/index.js +1 -3
  75. package/dist/esm/net/index.js.map +1 -1
  76. package/dist/esm/net/mock/MockNetwork.d.ts +8 -1
  77. package/dist/esm/net/mock/MockNetwork.d.ts.map +1 -1
  78. package/dist/esm/net/mock/MockNetwork.js +18 -9
  79. package/dist/esm/net/mock/MockNetwork.js.map +1 -1
  80. package/dist/esm/net/mock/MockRouter.d.ts +28 -0
  81. package/dist/esm/net/mock/MockRouter.d.ts.map +1 -0
  82. package/dist/esm/net/mock/MockRouter.js +26 -0
  83. package/dist/esm/net/mock/MockRouter.js.map +6 -0
  84. package/dist/esm/net/mock/MockUdpChannel.d.ts +6 -5
  85. package/dist/esm/net/mock/MockUdpChannel.d.ts.map +1 -1
  86. package/dist/esm/net/mock/MockUdpChannel.js +47 -21
  87. package/dist/esm/net/mock/MockUdpChannel.js.map +1 -1
  88. package/dist/esm/net/mock/NetworkSimulator.d.ts +6 -5
  89. package/dist/esm/net/mock/NetworkSimulator.d.ts.map +1 -1
  90. package/dist/esm/net/mock/NetworkSimulator.js +2 -37
  91. package/dist/esm/net/mock/NetworkSimulator.js.map +1 -1
  92. package/dist/esm/net/mock/index.d.ts +10 -0
  93. package/dist/esm/net/mock/index.d.ts.map +1 -0
  94. package/dist/esm/net/mock/index.js +10 -0
  95. package/dist/esm/net/mock/index.js.map +6 -0
  96. package/dist/esm/storage/StorageBackendMemory.d.ts.map +1 -1
  97. package/dist/esm/storage/StorageBackendMemory.js +12 -6
  98. package/dist/esm/storage/StorageBackendMemory.js.map +1 -1
  99. package/dist/esm/time/Time.d.ts +7 -1
  100. package/dist/esm/time/Time.d.ts.map +1 -1
  101. package/dist/esm/time/Time.js +19 -7
  102. package/dist/esm/time/Time.js.map +1 -1
  103. package/dist/esm/util/Cancelable.d.ts +1 -1
  104. package/dist/esm/util/Cancelable.d.ts.map +1 -1
  105. package/dist/esm/util/Cancelable.js +2 -2
  106. package/dist/esm/util/Cancelable.js.map +1 -1
  107. package/dist/esm/util/Construction.d.ts +2 -0
  108. package/dist/esm/util/Construction.d.ts.map +1 -1
  109. package/dist/esm/util/Construction.js +9 -3
  110. package/dist/esm/util/Construction.js.map +1 -1
  111. package/dist/esm/util/Promises.d.ts +2 -3
  112. package/dist/esm/util/Promises.d.ts.map +1 -1
  113. package/dist/esm/util/Promises.js +2 -6
  114. package/dist/esm/util/Promises.js.map +1 -1
  115. package/dist/esm/util/String.d.ts +5 -0
  116. package/dist/esm/util/String.d.ts.map +1 -1
  117. package/dist/esm/util/String.js +51 -1
  118. package/dist/esm/util/String.js.map +2 -2
  119. package/package.json +2 -2
  120. package/src/MatterError.ts +5 -0
  121. package/src/crypto/MockCrypto.ts +48 -20
  122. package/src/log/Diagnostic.ts +10 -1
  123. package/src/net/UdpChannel.ts +7 -3
  124. package/src/net/index.ts +1 -3
  125. package/src/net/mock/MockNetwork.ts +19 -9
  126. package/src/net/mock/MockRouter.ts +48 -0
  127. package/src/net/mock/MockUdpChannel.ts +55 -26
  128. package/src/net/mock/NetworkSimulator.ts +2 -46
  129. package/src/net/mock/index.ts +10 -0
  130. package/src/storage/StorageBackendMemory.ts +14 -6
  131. package/src/time/Time.ts +17 -2
  132. package/src/util/Cancelable.ts +3 -3
  133. package/src/util/Construction.ts +18 -4
  134. package/src/util/Promises.ts +2 -7
  135. package/src/util/String.ts +66 -0
@@ -84,6 +84,11 @@ export declare class UnexpectedDataError extends MatterError {
84
84
  */
85
85
  export declare class ImplementationError extends MatterError {
86
86
  }
87
+ /**
88
+ * Thrown when a dynamic component cannot be loaded.
89
+ */
90
+ export declare class ImportError extends MatterError {
91
+ }
87
92
  /**
88
93
  * Thrown for write attempts against immutable data.
89
94
  */
@@ -1 +1 @@
1
- {"version":3,"file":"MatterError.d.ts","sourceRoot":"","sources":["../../src/MatterError.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,QAAA,MAAM,OAAO,eAA2C,CAAC;AAIzD;;GAEG;AACH,qBAAa,WAAY,SAAQ,KAAK;IAClC;;;;;OAKG;IACH,MAAM,CAAC,MAAM,GAAE,OAAO,GAAG,MAAM,GAAG,MAAgB,EAAE,OAAO,SAAI,GAgB1C,MAAM;IAG3B;;OAEG;IACH,IAAI,EAAE,WAEL;IAED;;OAEG;IACH,MAAM,KAAK,EAAE,WAEZ;IAED;;OAEG;IACH,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE;IAwBnC;;;;;;;OAOG;IACH,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,iBAAiB,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE;IAcjE;;OAEG;IACH,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,WAAW,EAAE,IAAI,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,KAAK,IAAI,CAAC;IAOzG;;OAEG;IACH,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI;IAMnC;;OAEG;IACH,MAAM,CAAC,uBAAuB,iCAA2B;IAEzD;;OAEG;IACH,MAAM,CAAC,YAAY,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,MAAM,KAAK,OAAO,CAClD;CAU3C;AAED;;;GAGG;AACH,qBAAa,eAAgB,SAAQ,WAAW;CAAG;AAEnD;;;GAGG;AACH,qBAAa,aAAc,SAAQ,WAAW;CAAG;AAEjD,qFAAqF;AACrF,qBAAa,mBAAoB,SAAQ,aAAa;CAAG;AAEzD,yGAAyG;AACzG,qBAAa,eAAgB,SAAQ,WAAW;CAAG;AAEnD,sFAAsF;AACtF,qBAAa,mBAAoB,SAAQ,WAAW;CAAG;AAEvD;;;GAGG;AACH,qBAAa,mBAAoB,SAAQ,WAAW;CAAG;AAEvD;;GAEG;AACH,qBAAa,aAAc,SAAQ,mBAAmB;gBACtC,OAAO,SAA2B;CAGjD;AAED;;GAEG;AACH,qBAAa,oBAAqB,SAAQ,cAAc;gBACxC,MAAM,EAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,EAAE,MAAM;IAQvD;;OAEG;IACH,IAAI,EAAE,WAEL;IAED;;OAEG;IACH,MAAM,KAAK,EAAE,WAEZ;WAGe,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,QAAQ,EAAE,OAAO;IAOtD;;;;OAIG;WACU,UAAU,CAAC,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,SAAoB,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;CASxG;AAOD;;GAEG;AACH,iBAAS,iBAAiB,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,SAAI,UA2CrD;AAED;;GAEG;AACH,qBAAa,aAAc,SAAQ,WAAW;gBAC9B,OAAO,SAAuB,EAAE,OAAO,CAAC,EAAE,YAAY;CAGrE;AAED;;GAEG;AACH,qBAAa,YAAa,SAAQ,aAAa;gBAC/B,OAAO,SAAwB,EAAE,OAAO,CAAC,EAAE,YAAY;CAGtE"}
1
+ {"version":3,"file":"MatterError.d.ts","sourceRoot":"","sources":["../../src/MatterError.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,QAAA,MAAM,OAAO,eAA2C,CAAC;AAIzD;;GAEG;AACH,qBAAa,WAAY,SAAQ,KAAK;IAClC;;;;;OAKG;IACH,MAAM,CAAC,MAAM,GAAE,OAAO,GAAG,MAAM,GAAG,MAAgB,EAAE,OAAO,SAAI,GAgB1C,MAAM;IAG3B;;OAEG;IACH,IAAI,EAAE,WAEL;IAED;;OAEG;IACH,MAAM,KAAK,EAAE,WAEZ;IAED;;OAEG;IACH,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE;IAwBnC;;;;;;;OAOG;IACH,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,iBAAiB,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE;IAcjE;;OAEG;IACH,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,WAAW,EAAE,IAAI,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,KAAK,IAAI,CAAC;IAOzG;;OAEG;IACH,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI;IAMnC;;OAEG;IACH,MAAM,CAAC,uBAAuB,iCAA2B;IAEzD;;OAEG;IACH,MAAM,CAAC,YAAY,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,MAAM,KAAK,OAAO,CAClD;CAU3C;AAED;;;GAGG;AACH,qBAAa,eAAgB,SAAQ,WAAW;CAAG;AAEnD;;;GAGG;AACH,qBAAa,aAAc,SAAQ,WAAW;CAAG;AAEjD,qFAAqF;AACrF,qBAAa,mBAAoB,SAAQ,aAAa;CAAG;AAEzD,yGAAyG;AACzG,qBAAa,eAAgB,SAAQ,WAAW;CAAG;AAEnD,sFAAsF;AACtF,qBAAa,mBAAoB,SAAQ,WAAW;CAAG;AAEvD;;;GAGG;AACH,qBAAa,mBAAoB,SAAQ,WAAW;CAAG;AAEvD;;GAEG;AACH,qBAAa,WAAY,SAAQ,WAAW;CAAG;AAE/C;;GAEG;AACH,qBAAa,aAAc,SAAQ,mBAAmB;gBACtC,OAAO,SAA2B;CAGjD;AAED;;GAEG;AACH,qBAAa,oBAAqB,SAAQ,cAAc;gBACxC,MAAM,EAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,EAAE,MAAM;IAQvD;;OAEG;IACH,IAAI,EAAE,WAEL;IAED;;OAEG;IACH,MAAM,KAAK,EAAE,WAEZ;WAGe,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,QAAQ,EAAE,OAAO;IAOtD;;;;OAIG;WACU,UAAU,CAAC,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,SAAoB,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;CASxG;AAOD;;GAEG;AACH,iBAAS,iBAAiB,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,SAAI,UA2CrD;AAED;;GAEG;AACH,qBAAa,aAAc,SAAQ,WAAW;gBAC9B,OAAO,SAAuB,EAAE,OAAO,CAAC,EAAE,YAAY;CAGrE;AAED;;GAEG;AACH,qBAAa,YAAa,SAAQ,aAAa;gBAC/B,OAAO,SAAwB,EAAE,OAAO,CAAC,EAAE,YAAY;CAGtE"}
@@ -20,6 +20,7 @@ var MatterError_exports = {};
20
20
  __export(MatterError_exports, {
21
21
  CanceledError: () => CanceledError,
22
22
  ImplementationError: () => ImplementationError,
23
+ ImportError: () => ImportError,
23
24
  InternalError: () => InternalError,
24
25
  MatterAggregateError: () => MatterAggregateError,
25
26
  MatterError: () => MatterError,
@@ -160,6 +161,8 @@ class UnexpectedDataError extends MatterError {
160
161
  }
161
162
  class ImplementationError extends MatterError {
162
163
  }
164
+ class ImportError extends MatterError {
165
+ }
163
166
  class ReadOnlyError extends ImplementationError {
164
167
  constructor(message = "This view is read-only") {
165
168
  super(message);
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/MatterError.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": ["value", "indents"]
6
6
  }
@@ -19,6 +19,10 @@ export interface MockCrypto extends Crypto {
19
19
  * The index of the random space. May be modified to adjust computations going forward.
20
20
  */
21
21
  index: number;
22
+ /**
23
+ * Control whether the implementation supplies normal randomness (false by default).
24
+ */
25
+ entropic: boolean;
22
26
  }
23
27
  export declare function MockCrypto(index?: number, implementation?: new () => Crypto): MockCrypto;
24
28
  //# sourceMappingURL=MockCrypto.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"MockCrypto.d.ts","sourceRoot":"","sources":["../../../src/crypto/MockCrypto.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,MAAM,EAAM,MAAM,aAAa,CAAC;AAIzC;;;;;;;;;GASG;AACH,MAAM,WAAW,UAAW,SAAQ,MAAM;IACtC;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,UAAU,CAAC,KAAK,GAAE,MAAa,EAAE,cAAc,GAAE,UAAU,MAAuB,GAkC7E,UAAU,CAC9B"}
1
+ {"version":3,"file":"MockCrypto.d.ts","sourceRoot":"","sources":["../../../src/crypto/MockCrypto.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,MAAM,EAAM,MAAM,aAAa,CAAC;AAIzC;;;;;;;;;GASG;AACH,MAAM,WAAW,UAAW,SAAQ,MAAM;IACtC;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,QAAQ,EAAE,OAAO,CAAC;CACrB;AAED,wBAAgB,UAAU,CAAC,KAAK,GAAE,MAAa,EAAE,cAAc,GAAE,UAAU,MAAuB,GAsC7E,UAAU,CAoB9B"}
@@ -35,27 +35,46 @@ function MockCrypto(index = 128, implementation = import_StandardCrypto.Standard
35
35
  throw new import_MatterError.ImplementationError(`Index for stable crypto must be 0-255`);
36
36
  }
37
37
  const crypto = new implementation();
38
- crypto.randomBytes = function getRandomDataNONENTROPIC(length) {
39
- const result = new Uint8Array(length);
40
- result.fill(index);
41
- return result;
42
- };
43
- crypto.createKeyPair = function getRandomDataNONENTROPIC() {
44
- const privateBits = import_Crypto.ec.mapHashToField(new Uint8Array(crypto.randomBytes(48)), import_Crypto.ec.p256.CURVE.n);
45
- return (0, import_Key.Key)({
46
- kty: import_Key.KeyType.EC,
47
- crv: import_Key.CurveType.p256,
48
- privateBits
49
- });
50
- };
51
- Object.defineProperty(crypto, "index", {
52
- get() {
53
- return index;
38
+ const { randomBytes, createKeyPair } = crypto;
39
+ Object.defineProperties(crypto, {
40
+ index: {
41
+ get() {
42
+ return index;
43
+ },
44
+ set(newIndex) {
45
+ index = newIndex % 256;
46
+ }
54
47
  },
55
- set(newIndex) {
56
- index = newIndex % 256;
48
+ entropic: {
49
+ get() {
50
+ return crypto.randomBytes === randomBytes;
51
+ },
52
+ set(entropic) {
53
+ if (entropic) {
54
+ crypto.randomBytes = randomBytes;
55
+ crypto.createKeyPair = createKeyPair;
56
+ } else {
57
+ disableEntropy();
58
+ }
59
+ }
57
60
  }
58
61
  });
62
+ disableEntropy();
59
63
  return crypto;
64
+ function disableEntropy() {
65
+ crypto.randomBytes = function getRandomDataNONENTROPIC(length) {
66
+ const result = new Uint8Array(length);
67
+ result.fill(index);
68
+ return result;
69
+ };
70
+ crypto.createKeyPair = function getRandomDataNONENTROPIC() {
71
+ const privateBits = import_Crypto.ec.mapHashToField(new Uint8Array(crypto.randomBytes(48)), import_Crypto.ec.p256.CURVE.n);
72
+ return (0, import_Key.Key)({
73
+ kty: import_Key.KeyType.EC,
74
+ crv: import_Key.CurveType.p256,
75
+ privateBits
76
+ });
77
+ };
78
+ }
60
79
  }
61
80
  //# sourceMappingURL=MockCrypto.js.map
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/crypto/MockCrypto.ts"],
4
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,yBAAoC;AACpC,oBAA2B;AAC3B,iBAAoD;AACpD,4BAA+B;AAT/B;AAAA;AAAA;AAAA;AAAA;AA4BO,SAAS,WAAW,QAAgB,KAAM,iBAAmC,sCAAgB;AAChG,MAAI,QAAQ,KAAK,QAAQ,KAAK;AAC1B,UAAM,IAAI,uCAAoB,uCAAuC;AAAA,EACzE;AAEA,QAAM,SAAS,IAAI,eAAe;AAGlC,SAAO,cAAc,SAAS,yBAAyB,QAAQ;AAC3D,UAAM,SAAS,IAAI,WAAW,MAAM;AACpC,WAAO,KAAK,KAAK;AACjB,WAAO;AAAA,EACX;AAGA,SAAO,gBAAgB,SAAS,2BAA2B;AACvD,UAAM,cAAc,iBAAG,eAAe,IAAI,WAAW,OAAO,YAAY,EAAE,CAAC,GAAG,iBAAG,KAAK,MAAM,CAAC;AAC7F,eAAO,gBAAI;AAAA,MACP,KAAK,mBAAQ;AAAA,MACb,KAAK,qBAAU;AAAA,MACf;AAAA,IACJ,CAAC;AAAA,EACL;AAEA,SAAO,eAAe,QAAQ,SAAS;AAAA,IACnC,MAAM;AACF,aAAO;AAAA,IACX;AAAA,IAEA,IAAI,UAAkB;AAClB,cAAQ,WAAW;AAAA,IACvB;AAAA,EACJ,CAAC;AAED,SAAO;AACX;",
4
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,yBAAoC;AACpC,oBAA2B;AAC3B,iBAAoD;AACpD,4BAA+B;AAT/B;AAAA;AAAA;AAAA;AAAA;AAiCO,SAAS,WAAW,QAAgB,KAAM,iBAAmC,sCAAgB;AAChG,MAAI,QAAQ,KAAK,QAAQ,KAAK;AAC1B,UAAM,IAAI,uCAAoB,uCAAuC;AAAA,EACzE;AAEA,QAAM,SAAS,IAAI,eAAe;AAElC,QAAM,EAAE,aAAa,cAAc,IAAI;AAEvC,SAAO,iBAAiB,QAAQ;AAAA,IAC5B,OAAO;AAAA,MACH,MAAM;AACF,eAAO;AAAA,MACX;AAAA,MAEA,IAAI,UAAkB;AAClB,gBAAQ,WAAW;AAAA,MACvB;AAAA,IACJ;AAAA,IAEA,UAAU;AAAA,MACN,MAAM;AACF,eAAO,OAAO,gBAAgB;AAAA,MAClC;AAAA,MAEA,IAAI,UAAmB;AACnB,YAAI,UAAU;AACV,iBAAO,cAAc;AACrB,iBAAO,gBAAgB;AAAA,QAC3B,OAAO;AACH,yBAAe;AAAA,QACnB;AAAA,MACJ;AAAA,IACJ;AAAA,EACJ,CAAC;AAED,iBAAe;AAEf,SAAO;AAEP,WAAS,iBAAiB;AAEtB,WAAO,cAAc,SAAS,yBAAyB,QAAQ;AAC3D,YAAM,SAAS,IAAI,WAAW,MAAM;AACpC,aAAO,KAAK,KAAK;AACjB,aAAO;AAAA,IACX;AAGA,WAAO,gBAAgB,SAAS,2BAA2B;AACvD,YAAM,cAAc,iBAAG,eAAe,IAAI,WAAW,OAAO,YAAY,EAAE,CAAC,GAAG,iBAAG,KAAK,MAAM,CAAC;AAC7F,iBAAO,gBAAI;AAAA,QACP,KAAK,mBAAQ;AAAA,QACb,KAAK,qBAAU;AAAA,QACf;AAAA,MACJ,CAAC;AAAA,IACL;AAAA,EACJ;AACJ;",
5
5
  "names": []
6
6
  }
@@ -361,8 +361,12 @@ function formatError(error, options = {}) {
361
361
  message,
362
362
  Diagnostic("error" /* Error */, Diagnostic.squash(...messageDiagnostic))
363
363
  );
364
- let cause, errors;
364
+ let cause, errors, secondary;
365
365
  if (typeof error === "object" && error !== null) {
366
+ if ("error" in error && "suppressed" in error) {
367
+ secondary = error.error;
368
+ error = error.suppressed;
369
+ }
366
370
  ({ cause, errors } = error);
367
371
  }
368
372
  if (errorCollector?.(error)) {
@@ -396,6 +400,9 @@ function formatError(error, options = {}) {
396
400
  )
397
401
  );
398
402
  }
403
+ if (secondary) {
404
+ list.push(Diagnostic.list([formatError(secondary, { messagePrefix: "Secondary error during disposal:" })]));
405
+ }
399
406
  return list;
400
407
  }
401
408
  //# sourceMappingURL=Diagnostic.js.map
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/log/Diagnostic.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": ["Diagnostic", "Presentation", "error", "value", "via", "message", "pos", "cause"]
6
6
  }
@@ -19,10 +19,15 @@ export interface UdpChannel {
19
19
  maxPayloadSize: number;
20
20
  addMembership(address: string): MaybePromise<void>;
21
21
  dropMembership(address: string): MaybePromise<void>;
22
- onData(listener: (netInterface: string | undefined, peerAddress: string, peerPort: number, data: Uint8Array) => void): TransportInterface.Listener;
22
+ onData(listener: UdpChannel.Callback): TransportInterface.Listener;
23
23
  send(host: string, port: number, data: Uint8Array): Promise<void>;
24
24
  close(): Promise<void>;
25
25
  get port(): number;
26
26
  supports(type: ChannelType, address?: string): boolean;
27
27
  }
28
+ export declare namespace UdpChannel {
29
+ interface Callback {
30
+ (netInterface: string | undefined, peerAddress: string, peerPort: number, data: Uint8Array): void;
31
+ }
32
+ }
28
33
  //# sourceMappingURL=UdpChannel.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"UdpChannel.d.ts","sourceRoot":"","sources":["../../../src/net/UdpChannel.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAE7D,wDAAwD;AACxD,eAAO,MAAM,oBAAoB,QAAY,CAAC;AAE9C,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,MAAM,CAAC;AAE5C,MAAM,WAAW,iBAAiB;IAC9B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,IAAI,EAAE,aAAa,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,UAAU;IACvB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;IACnD,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;IACpD,MAAM,CACF,QAAQ,EAAE,CAAC,YAAY,EAAE,MAAM,GAAG,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,KAAK,IAAI,GAC9G,kBAAkB,CAAC,QAAQ,CAAC;IAC/B,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAClE,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,IAAI,IAAI,IAAI,MAAM,CAAC;IACnB,QAAQ,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;CAC1D"}
1
+ {"version":3,"file":"UdpChannel.d.ts","sourceRoot":"","sources":["../../../src/net/UdpChannel.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAE7D,wDAAwD;AACxD,eAAO,MAAM,oBAAoB,QAAY,CAAC;AAE9C,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,MAAM,CAAC;AAE5C,MAAM,WAAW,iBAAiB;IAC9B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,IAAI,EAAE,aAAa,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,UAAU;IACvB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;IACnD,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;IACpD,MAAM,CAAC,QAAQ,EAAE,UAAU,CAAC,QAAQ,GAAG,kBAAkB,CAAC,QAAQ,CAAC;IACnE,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAClE,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,IAAI,IAAI,IAAI,MAAM,CAAC;IACnB,QAAQ,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;CAC1D;AAED,yBAAiB,UAAU,CAAC;IACxB,UAAiB,QAAQ;QACrB,CAAC,YAAY,EAAE,MAAM,GAAG,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,GAAG,IAAI,CAAC;KACrG;CACJ"}
@@ -4,9 +4,7 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
  export * from "./Channel.js";
7
- export * from "./mock/MockNetwork.js";
8
- export * from "./mock/MockUdpChannel.js";
9
- export * from "./mock/NetworkSimulator.js";
7
+ export * from "./mock/index.js";
10
8
  export * from "./NetInterface.js";
11
9
  export * from "./Network.js";
12
10
  export * from "./ServerAddress.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/net/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,cAAc,CAAC;AAC7B,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,mBAAmB,CAAC;AAClC,cAAc,cAAc,CAAC;AAC7B,cAAc,oBAAoB,CAAC;AACnC,cAAc,yBAAyB,CAAC;AACxC,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,yBAAyB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/net/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,cAAc,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,cAAc,CAAC;AAC7B,cAAc,oBAAoB,CAAC;AACnC,cAAc,yBAAyB,CAAC;AACxC,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,yBAAyB,CAAC"}
@@ -16,9 +16,7 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
16
16
  var net_exports = {};
17
17
  module.exports = __toCommonJS(net_exports);
18
18
  __reExport(net_exports, require("./Channel.js"), module.exports);
19
- __reExport(net_exports, require("./mock/MockNetwork.js"), module.exports);
20
- __reExport(net_exports, require("./mock/MockUdpChannel.js"), module.exports);
21
- __reExport(net_exports, require("./mock/NetworkSimulator.js"), module.exports);
19
+ __reExport(net_exports, require("./mock/index.js"), module.exports);
22
20
  __reExport(net_exports, require("./NetInterface.js"), module.exports);
23
21
  __reExport(net_exports, require("./Network.js"), module.exports);
24
22
  __reExport(net_exports, require("./ServerAddress.js"), module.exports);
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/net/index.ts"],
4
- "mappings": ";;;;;;;;;;;;;;;AAAA;AAAA;AAMA,wBAAc,yBANd;AAOA,wBAAc,kCAPd;AAQA,wBAAc,qCARd;AASA,wBAAc,uCATd;AAUA,wBAAc,8BAVd;AAWA,wBAAc,yBAXd;AAYA,wBAAc,+BAZd;AAaA,wBAAc,oCAbd;AAcA,wBAAc,4BAdd;AAeA,wBAAc,8BAfd;AAgBA,wBAAc,oCAhBd;AAAA;AAAA;AAAA;AAAA;AAAA;",
4
+ "mappings": ";;;;;;;;;;;;;;;AAAA;AAAA;AAMA,wBAAc,yBANd;AAOA,wBAAc,4BAPd;AAQA,wBAAc,8BARd;AASA,wBAAc,yBATd;AAUA,wBAAc,+BAVd;AAWA,wBAAc,oCAXd;AAYA,wBAAc,4BAZd;AAaA,wBAAc,8BAbd;AAcA,wBAAc,oCAdd;AAAA;AAAA;AAAA;AAAA;AAAA;",
5
5
  "names": []
6
6
  }
@@ -6,15 +6,22 @@
6
6
  import { ChannelType } from "#net/Channel.js";
7
7
  import { Network, NetworkInterface, NetworkInterfaceDetails } from "../Network.js";
8
8
  import { UdpChannelOptions } from "../UdpChannel.js";
9
+ import { MockRouter } from "./MockRouter.js";
9
10
  import { MockUdpChannel } from "./MockUdpChannel.js";
10
11
  import type { NetworkSimulator } from "./NetworkSimulator.js";
11
12
  export declare class MockNetwork extends Network {
12
13
  #private;
14
+ readonly router: {
15
+ (packet: MockRouter.Packet): void;
16
+ add: (value: MockRouter.Route) => Set<MockRouter.Route>;
17
+ delete: (value: MockRouter.Route) => boolean;
18
+ };
13
19
  constructor(simulator: NetworkSimulator, mac: string, ips: string[]);
14
20
  get simulator(): NetworkSimulator;
15
21
  getNetInterfaces(): NetworkInterface[];
16
- getIpMac(_netInterface: string): NetworkInterfaceDetails;
22
+ getIpMac(name: string): NetworkInterfaceDetails;
17
23
  createUdpChannel(options: UdpChannelOptions): Promise<MockUdpChannel>;
18
24
  supports(type: ChannelType, _address: string): type is ChannelType.UDP;
25
+ close(): Promise<void>;
19
26
  }
20
27
  //# sourceMappingURL=MockNetwork.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"MockNetwork.d.ts","sourceRoot":"","sources":["../../../../src/net/mock/MockNetwork.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C,OAAO,EAAE,OAAO,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AACnF,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAE9D,qBAAa,WAAY,SAAQ,OAAO;;gBAMxB,SAAS,EAAE,gBAAgB,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE;IAQnE,IAAI,SAAS,qBAEZ;IAED,gBAAgB,IAAI,gBAAgB,EAAE;IAItC,QAAQ,CAAC,aAAa,EAAE,MAAM,GAAG,uBAAuB;IAI/C,gBAAgB,CAAC,OAAO,EAAE,iBAAiB;IAIpD,QAAQ,CAAC,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM;CAG/C"}
1
+ {"version":3,"file":"MockNetwork.d.ts","sourceRoot":"","sources":["../../../../src/net/mock/MockNetwork.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C,OAAO,EAAE,OAAO,EAAgB,gBAAgB,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AACjG,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAE9D,qBAAa,WAAY,SAAQ,OAAO;;IACpC,QAAQ,CAAC,MAAM;;;;MAAgB;gBAInB,SAAS,EAAE,gBAAgB,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE;IAWnE,IAAI,SAAS,qBAEZ;IAED,gBAAgB,IAAI,gBAAgB,EAAE;IAItC,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,uBAAuB;IAOtC,gBAAgB,CAAC,OAAO,EAAE,iBAAiB;IAIpD,QAAQ,CAAC,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM;IAI7B,KAAK;CAGvB"}
@@ -24,6 +24,7 @@ module.exports = __toCommonJS(MockNetwork_exports);
24
24
  var import_Channel = require("#net/Channel.js");
25
25
  var import_Ip = require("../../util/Ip.js");
26
26
  var import_Network = require("../Network.js");
27
+ var import_MockRouter = require("./MockRouter.js");
27
28
  var import_MockUdpChannel = require("./MockUdpChannel.js");
28
29
  /**
29
30
  * @license
@@ -31,16 +32,18 @@ var import_MockUdpChannel = require("./MockUdpChannel.js");
31
32
  * SPDX-License-Identifier: Apache-2.0
32
33
  */
33
34
  class MockNetwork extends import_Network.Network {
35
+ router = (0, import_MockRouter.MockRouter)();
34
36
  #simulator;
35
- #mac;
36
- #ipV4;
37
- #ipV6;
37
+ #intf;
38
38
  constructor(simulator, mac, ips) {
39
39
  super();
40
40
  this.#simulator = simulator;
41
- this.#mac = mac;
42
- this.#ipV4 = ips.filter((ip) => (0, import_Ip.isIPv4)(ip));
43
- this.#ipV6 = ips.filter((ip) => !(0, import_Ip.isIPv4)(ip));
41
+ this.#intf = {
42
+ mac,
43
+ ipV4: ips.filter((ip) => (0, import_Ip.isIPv4)(ip)),
44
+ ipV6: ips.filter((ip) => !(0, import_Ip.isIPv4)(ip))
45
+ };
46
+ this.#simulator.router.add(this.router);
44
47
  }
45
48
  get simulator() {
46
49
  return this.#simulator;
@@ -48,8 +51,11 @@ class MockNetwork extends import_Network.Network {
48
51
  getNetInterfaces() {
49
52
  return [{ name: "fake0" }];
50
53
  }
51
- getIpMac(_netInterface) {
52
- return { mac: this.#mac, ipV4: this.#ipV4, ipV6: this.#ipV6 };
54
+ getIpMac(name) {
55
+ if (name !== "fake0") {
56
+ throw new import_Network.NetworkError(`No such interface ${name}`);
57
+ }
58
+ return this.#intf;
53
59
  }
54
60
  createUdpChannel(options) {
55
61
  return Promise.resolve(new import_MockUdpChannel.MockUdpChannel(this, options));
@@ -57,5 +63,8 @@ class MockNetwork extends import_Network.Network {
57
63
  supports(type, _address) {
58
64
  return type === import_Channel.ChannelType.UDP;
59
65
  }
66
+ async close() {
67
+ this.#simulator.router.delete(this.router);
68
+ }
60
69
  }
61
70
  //# sourceMappingURL=MockNetwork.js.map
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/net/mock/MockNetwork.ts"],
4
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,qBAA4B;AAC5B,gBAAuB;AACvB,qBAAmE;AAEnE,4BAA+B;AAV/B;AAAA;AAAA;AAAA;AAAA;AAaO,MAAM,oBAAoB,uBAAQ;AAAA,EAC5B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAET,YAAY,WAA6B,KAAa,KAAe;AACjE,UAAM;AACN,SAAK,aAAa;AAClB,SAAK,OAAO;AACZ,SAAK,QAAQ,IAAI,OAAO,YAAM,kBAAO,EAAE,CAAC;AACxC,SAAK,QAAQ,IAAI,OAAO,QAAM,KAAC,kBAAO,EAAE,CAAC;AAAA,EAC7C;AAAA,EAEA,IAAI,YAAY;AACZ,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,mBAAuC;AACnC,WAAO,CAAC,EAAE,MAAM,QAAQ,CAAC;AAAA,EAC7B;AAAA,EAEA,SAAS,eAAgD;AACrD,WAAO,EAAE,KAAK,KAAK,MAAM,MAAM,KAAK,OAAO,MAAM,KAAK,MAAM;AAAA,EAChE;AAAA,EAES,iBAAiB,SAA4B;AAClD,WAAO,QAAQ,QAAQ,IAAI,qCAAe,MAAM,OAAO,CAAC;AAAA,EAC5D;AAAA,EAEA,SAAS,MAAmB,UAAkB;AAC1C,WAAO,SAAS,2BAAY;AAAA,EAChC;AACJ;",
4
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,qBAA4B;AAC5B,gBAAuB;AACvB,qBAAiF;AAEjF,wBAA2B;AAC3B,4BAA+B;AAX/B;AAAA;AAAA;AAAA;AAAA;AAcO,MAAM,oBAAoB,uBAAQ;AAAA,EAC5B,aAAS,8BAAW;AAAA,EACpB;AAAA,EACA;AAAA,EAET,YAAY,WAA6B,KAAa,KAAe;AACjE,UAAM;AACN,SAAK,aAAa;AAClB,SAAK,QAAQ;AAAA,MACT;AAAA,MACA,MAAM,IAAI,OAAO,YAAM,kBAAO,EAAE,CAAC;AAAA,MACjC,MAAM,IAAI,OAAO,QAAM,KAAC,kBAAO,EAAE,CAAC;AAAA,IACtC;AACA,SAAK,WAAW,OAAO,IAAI,KAAK,MAAM;AAAA,EAC1C;AAAA,EAEA,IAAI,YAAY;AACZ,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,mBAAuC;AACnC,WAAO,CAAC,EAAE,MAAM,QAAQ,CAAC;AAAA,EAC7B;AAAA,EAEA,SAAS,MAAuC;AAC5C,QAAI,SAAS,SAAS;AAClB,YAAM,IAAI,4BAAa,qBAAqB,IAAI,EAAE;AAAA,IACtD;AACA,WAAO,KAAK;AAAA,EAChB;AAAA,EAES,iBAAiB,SAA4B;AAClD,WAAO,QAAQ,QAAQ,IAAI,qCAAe,MAAM,OAAO,CAAC;AAAA,EAC5D;AAAA,EAEA,SAAS,MAAmB,UAAkB;AAC1C,WAAO,SAAS,2BAAY;AAAA,EAChC;AAAA,EAEA,MAAe,QAAQ;AACnB,SAAK,WAAW,OAAO,OAAO,KAAK,MAAM;AAAA,EAC7C;AACJ;",
5
5
  "names": []
6
6
  }
@@ -0,0 +1,28 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2022-2025 Matter.js Authors
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ export interface MockRouter extends MockRouter.Route {
7
+ add(route: MockRouter.Route): void;
8
+ delete(route: MockRouter.Route): void;
9
+ }
10
+ export declare function MockRouter(): {
11
+ (packet: MockRouter.Packet): void;
12
+ add: (value: MockRouter.Route) => Set<MockRouter.Route>;
13
+ delete: (value: MockRouter.Route) => boolean;
14
+ };
15
+ export declare namespace MockRouter {
16
+ interface Packet {
17
+ kind: "udp";
18
+ sourceAddress: string;
19
+ sourcePort: number;
20
+ destAddress: string;
21
+ destPort: number;
22
+ payload: Uint8Array;
23
+ }
24
+ interface Route {
25
+ (packet: Packet): void;
26
+ }
27
+ }
28
+ //# sourceMappingURL=MockRouter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MockRouter.d.ts","sourceRoot":"","sources":["../../../../src/net/mock/MockRouter.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,MAAM,WAAW,UAAW,SAAQ,UAAU,CAAC,KAAK;IAChD,GAAG,CAAC,KAAK,EAAE,UAAU,CAAC,KAAK,GAAG,IAAI,CAAC;IACnC,MAAM,CAAC,KAAK,EAAE,UAAU,CAAC,KAAK,GAAG,IAAI,CAAC;CACzC;AAED,wBAAgB,UAAU;aAGiB,UAAU,CAAC,MAAM;;;EAc3D;AAED,yBAAiB,UAAU,CAAC;IACxB,UAAiB,MAAM;QACnB,IAAI,EAAE,KAAK,CAAC;QACZ,aAAa,EAAE,MAAM,CAAC;QACtB,UAAU,EAAE,MAAM,CAAC;QACnB,WAAW,EAAE,MAAM,CAAC;QACpB,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,UAAU,CAAC;KACvB;IAED,UAAiB,KAAK;QAClB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;KAC1B;CACJ"}
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var MockRouter_exports = {};
20
+ __export(MockRouter_exports, {
21
+ MockRouter: () => MockRouter
22
+ });
23
+ module.exports = __toCommonJS(MockRouter_exports);
24
+ var import_Logger = require("#log/Logger.js");
25
+ /**
26
+ * @license
27
+ * Copyright 2022-2025 Matter.js Authors
28
+ * SPDX-License-Identifier: Apache-2.0
29
+ */
30
+ const logger = import_Logger.Logger.get("MockRouter");
31
+ function MockRouter() {
32
+ const routes = /* @__PURE__ */ new Set();
33
+ const router = function router2(packet) {
34
+ for (const route of routes) {
35
+ try {
36
+ route(packet);
37
+ } catch (e) {
38
+ logger.error("Unhandled error in network listener", e);
39
+ }
40
+ }
41
+ };
42
+ router.add = routes.add.bind(routes);
43
+ router.delete = routes.delete.bind(routes);
44
+ return router;
45
+ }
46
+ //# sourceMappingURL=MockRouter.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/net/mock/MockRouter.ts"],
4
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,oBAAuB;AANvB;AAAA;AAAA;AAAA;AAAA;AAQA,MAAM,SAAS,qBAAO,IAAI,YAAY;AAO/B,SAAS,aAAa;AACzB,QAAM,SAAS,oBAAI,IAAsB;AAEzC,QAAM,SAAS,SAASA,QAAO,QAA2B;AACtD,eAAW,SAAS,QAAQ;AACxB,UAAI;AACA,cAAM,MAAM;AAAA,MAChB,SAAS,GAAG;AACR,eAAO,MAAM,uCAAuC,CAAC;AAAA,MACzD;AAAA,IACJ;AAAA,EACJ;AAEA,SAAO,MAAM,OAAO,IAAI,KAAK,MAAM;AACnC,SAAO,SAAS,OAAO,OAAO,KAAK,MAAM;AAEzC,SAAO;AACX;",
5
+ "names": ["router"]
6
+ }
@@ -4,20 +4,21 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
  import { ChannelType } from "#net/Channel.js";
7
- import { TransportInterface } from "../TransportInterface.js";
8
7
  import { UdpChannel, UdpChannelOptions } from "../UdpChannel.js";
9
8
  import { MockNetwork } from "./MockNetwork.js";
10
9
  export declare class MockUdpChannel implements UdpChannel {
11
10
  #private;
12
11
  readonly maxPayloadSize: number;
13
12
  constructor(network: MockNetwork, { listeningAddress, listeningPort, netInterface, type }: UdpChannelOptions);
14
- onData(listener: (netInterface: string, peerAddress: string, peerPort: number, data: Uint8Array) => void): TransportInterface.Listener;
15
- send(host: string, port: number, data: Uint8Array): Promise<void>;
13
+ onData(listener: UdpChannel.Callback): {
14
+ close: () => Promise<void>;
15
+ };
16
+ send(host: string, port: number, payload: Uint8Array): Promise<void>;
16
17
  close(): Promise<void>;
17
18
  [Symbol.asyncDispose](): Promise<void>;
18
19
  get port(): number;
19
20
  supports(type: ChannelType, _address: string): type is ChannelType.UDP;
20
- addMembership(_address: string): void;
21
- dropMembership(_address: string): void;
21
+ addMembership(address: string): void;
22
+ dropMembership(address: string): void;
22
23
  }
23
24
  //# sourceMappingURL=MockUdpChannel.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"MockUdpChannel.d.ts","sourceRoot":"","sources":["../../../../src/net/mock/MockUdpChannel.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAwB,UAAU,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACvF,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAG/C,qBAAa,cAAe,YAAW,UAAU;;IAM7C,QAAQ,CAAC,cAAc,SAAwB;gBAEnC,OAAO,EAAE,WAAW,EAAE,EAAE,gBAAgB,EAAE,aAAa,EAAE,YAAY,EAAE,IAAI,EAAE,EAAE,iBAAiB;IAY5G,MAAM,CAAC,QAAQ,EAAE,CAAC,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,KAAK,IAAI;IAMlG,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU;IAIjD,KAAK;IAOL,CAAC,MAAM,CAAC,YAAY,CAAC;IAI3B,IAAI,IAAI,WAEP;IAED,QAAQ,CAAC,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM;IAI5C,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAIrC,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;CAGzC"}
1
+ {"version":3,"file":"MockUdpChannel.d.ts","sourceRoot":"","sources":["../../../../src/net/mock/MockUdpChannel.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C,OAAO,EAAwB,UAAU,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACvF,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAG/C,qBAAa,cAAe,YAAW,UAAU;;IAM7C,QAAQ,CAAC,cAAc,SAAwB;gBAEnC,OAAO,EAAE,WAAW,EAAE,EAAE,gBAAgB,EAAE,aAAa,EAAE,YAAY,EAAE,IAAI,EAAE,EAAE,iBAAiB;IAqB5G,MAAM,CAAC,QAAQ,EAAE,UAAU,CAAC,QAAQ;;;IAuB9B,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU;IAWpD,KAAK;IAIL,CAAC,MAAM,CAAC,YAAY,CAAC;IAI3B,IAAI,IAAI,WAEP;IAED,QAAQ,CAAC,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM;IAI5C,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAIpC,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;CAGxC"}
@@ -24,42 +24,66 @@ module.exports = __toCommonJS(MockUdpChannel_exports);
24
24
  var import_Channel = require("#net/Channel.js");
25
25
  var import_Network = require("../Network.js");
26
26
  var import_UdpChannel = require("../UdpChannel.js");
27
+ var import_MockRouter = require("./MockRouter.js");
27
28
  /**
28
29
  * @license
29
30
  * Copyright 2022-2025 Matter.js Authors
30
31
  * SPDX-License-Identifier: Apache-2.0
31
32
  */
32
33
  class MockUdpChannel {
33
- #netListeners = new Array();
34
- #simulatedNetwork;
35
- #listeningAddress;
36
- #localAddress;
34
+ #host;
35
+ #router = (0, import_MockRouter.MockRouter)();
36
+ #sendFrom;
37
+ #receiveFrom;
37
38
  #listeningPort;
38
39
  maxPayloadSize = import_UdpChannel.MAX_UDP_MESSAGE_SIZE;
39
40
  constructor(network, { listeningAddress, listeningPort, netInterface, type }) {
40
41
  const { ipV4, ipV6 } = network.getIpMac(netInterface ?? "fake0");
41
- const localAddress = type === "udp4" ? ipV4[0] : ipV6[0] ?? ipV4[0];
42
- if (localAddress === void 0) {
43
- throw new import_Network.NetworkError("No matching IP on the specified interface");
42
+ let addresses = type === "udp4" ? ipV4 : ipV6;
43
+ this.#sendFrom = addresses[0];
44
+ if (listeningAddress !== void 0 && listeningAddress !== "*") {
45
+ addresses = addresses.filter((addr) => addr === listeningAddress);
44
46
  }
45
- this.#localAddress = localAddress;
46
- this.#simulatedNetwork = network.simulator;
47
- this.#listeningAddress = listeningAddress;
47
+ if (!addresses.length) {
48
+ throw new import_Network.NetworkError(`No ${type} IP matches ${listeningAddress ?? "*"} on the specified interface`);
49
+ }
50
+ this.#host = network;
51
+ this.#receiveFrom = new Set(addresses);
48
52
  this.#listeningPort = listeningPort ?? 1024 + Math.floor(Math.random() * 64511);
53
+ network.router.add(this.#router);
49
54
  }
50
55
  onData(listener) {
51
- const netListener = this.#simulatedNetwork.onUdpData(this.#listeningAddress, this.#listeningPort, listener);
52
- this.#netListeners.push(netListener);
53
- return netListener;
56
+ const router = (packet) => {
57
+ if (packet.kind !== "udp") {
58
+ return;
59
+ }
60
+ if (!this.#receiveFrom.has(packet.destAddress)) {
61
+ return;
62
+ }
63
+ if (packet.destPort !== this.#listeningPort) {
64
+ return;
65
+ }
66
+ listener("fake0", packet.sourceAddress, packet.sourcePort, packet.payload);
67
+ };
68
+ this.#router.add(router);
69
+ return {
70
+ close: async () => {
71
+ this.#router.delete(router);
72
+ }
73
+ };
54
74
  }
55
- async send(host, port, data) {
56
- this.#simulatedNetwork.sendUdp(this.#localAddress, this.#listeningPort, host, port, data);
75
+ async send(host, port, payload) {
76
+ this.#host.simulator.router({
77
+ kind: "udp",
78
+ sourceAddress: this.#sendFrom,
79
+ sourcePort: this.#listeningPort,
80
+ destAddress: host,
81
+ destPort: port,
82
+ payload
83
+ });
57
84
  }
58
85
  async close() {
59
- for (const netListener of this.#netListeners) {
60
- await netListener.close();
61
- }
62
- this.#netListeners.length = 0;
86
+ this.#host.router.delete(this.#router);
63
87
  }
64
88
  async [Symbol.asyncDispose]() {
65
89
  return this.close();
@@ -70,9 +94,11 @@ class MockUdpChannel {
70
94
  supports(type, _address) {
71
95
  return type === import_Channel.ChannelType.UDP;
72
96
  }
73
- addMembership(_address) {
97
+ addMembership(address) {
98
+ this.#receiveFrom.add(address);
74
99
  }
75
- dropMembership(_address) {
100
+ dropMembership(address) {
101
+ this.#receiveFrom.delete(address);
76
102
  }
77
103
  }
78
104
  //# sourceMappingURL=MockUdpChannel.js.map