@matter/general 0.13.0-alpha.0-20250318-c1aa38b08 → 0.13.0-alpha.0-20250323-770919c6a

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 (119) hide show
  1. package/dist/cjs/codec/DnsCodec.js +1 -1
  2. package/dist/cjs/codec/DnsCodec.js.map +1 -1
  3. package/dist/cjs/log/Console.d.ts +21 -0
  4. package/dist/cjs/log/Console.d.ts.map +1 -0
  5. package/dist/cjs/log/Console.js +58 -0
  6. package/dist/cjs/log/Console.js.map +6 -0
  7. package/dist/cjs/log/Diagnostic.d.ts +6 -0
  8. package/dist/cjs/log/Diagnostic.d.ts.map +1 -1
  9. package/dist/cjs/log/Diagnostic.js +16 -0
  10. package/dist/cjs/log/Diagnostic.js.map +1 -1
  11. package/dist/cjs/log/LogDestination.d.ts +67 -0
  12. package/dist/cjs/log/LogDestination.d.ts.map +1 -0
  13. package/dist/cjs/log/LogDestination.js +65 -0
  14. package/dist/cjs/log/LogDestination.js.map +6 -0
  15. package/dist/cjs/log/LogFormat.d.ts +18 -12
  16. package/dist/cjs/log/LogFormat.d.ts.map +1 -1
  17. package/dist/cjs/log/LogFormat.js +17 -24
  18. package/dist/cjs/log/LogFormat.js.map +1 -1
  19. package/dist/cjs/log/LogLevel.d.ts +19 -9
  20. package/dist/cjs/log/LogLevel.d.ts.map +1 -1
  21. package/dist/cjs/log/LogLevel.js +40 -25
  22. package/dist/cjs/log/LogLevel.js.map +1 -1
  23. package/dist/cjs/log/Logger.d.ts +165 -109
  24. package/dist/cjs/log/Logger.d.ts.map +1 -1
  25. package/dist/cjs/log/Logger.js +307 -254
  26. package/dist/cjs/log/Logger.js.map +2 -2
  27. package/dist/cjs/log/index.d.ts +1 -0
  28. package/dist/cjs/log/index.d.ts.map +1 -1
  29. package/dist/cjs/log/index.js +1 -0
  30. package/dist/cjs/log/index.js.map +1 -1
  31. package/dist/cjs/time/Time.d.ts +1 -0
  32. package/dist/cjs/time/Time.d.ts.map +1 -1
  33. package/dist/cjs/time/Time.js +3 -0
  34. package/dist/cjs/time/Time.js.map +1 -1
  35. package/dist/cjs/transaction/Participant.d.ts +3 -3
  36. package/dist/cjs/transaction/Participant.d.ts.map +1 -1
  37. package/dist/cjs/transaction/Transaction.d.ts +20 -20
  38. package/dist/cjs/transaction/Tx.js +3 -3
  39. package/dist/cjs/transaction/Tx.js.map +1 -1
  40. package/dist/cjs/util/Construction.js +2 -2
  41. package/dist/cjs/util/Construction.js.map +1 -1
  42. package/dist/cjs/util/DataReadQueue.d.ts +4 -0
  43. package/dist/cjs/util/DataReadQueue.d.ts.map +1 -1
  44. package/dist/cjs/util/DataReadQueue.js +6 -0
  45. package/dist/cjs/util/DataReadQueue.js.map +1 -1
  46. package/dist/cjs/util/FormattedText.js +4 -2
  47. package/dist/cjs/util/FormattedText.js.map +1 -1
  48. package/dist/cjs/util/Observable.d.ts +137 -12
  49. package/dist/cjs/util/Observable.d.ts.map +1 -1
  50. package/dist/cjs/util/Observable.js +297 -35
  51. package/dist/cjs/util/Observable.js.map +2 -2
  52. package/dist/esm/codec/DnsCodec.js +1 -1
  53. package/dist/esm/codec/DnsCodec.js.map +1 -1
  54. package/dist/esm/log/Console.d.ts +21 -0
  55. package/dist/esm/log/Console.d.ts.map +1 -0
  56. package/dist/esm/log/Console.js +38 -0
  57. package/dist/esm/log/Console.js.map +6 -0
  58. package/dist/esm/log/Diagnostic.d.ts +6 -0
  59. package/dist/esm/log/Diagnostic.d.ts.map +1 -1
  60. package/dist/esm/log/Diagnostic.js +16 -0
  61. package/dist/esm/log/Diagnostic.js.map +1 -1
  62. package/dist/esm/log/LogDestination.d.ts +67 -0
  63. package/dist/esm/log/LogDestination.d.ts.map +1 -0
  64. package/dist/esm/log/LogDestination.js +45 -0
  65. package/dist/esm/log/LogDestination.js.map +6 -0
  66. package/dist/esm/log/LogFormat.d.ts +18 -12
  67. package/dist/esm/log/LogFormat.d.ts.map +1 -1
  68. package/dist/esm/log/LogFormat.js +17 -24
  69. package/dist/esm/log/LogFormat.js.map +1 -1
  70. package/dist/esm/log/LogLevel.d.ts +19 -9
  71. package/dist/esm/log/LogLevel.d.ts.map +1 -1
  72. package/dist/esm/log/LogLevel.js +40 -25
  73. package/dist/esm/log/LogLevel.js.map +1 -1
  74. package/dist/esm/log/Logger.d.ts +165 -109
  75. package/dist/esm/log/Logger.d.ts.map +1 -1
  76. package/dist/esm/log/Logger.js +307 -254
  77. package/dist/esm/log/Logger.js.map +2 -2
  78. package/dist/esm/log/index.d.ts +1 -0
  79. package/dist/esm/log/index.d.ts.map +1 -1
  80. package/dist/esm/log/index.js +1 -0
  81. package/dist/esm/log/index.js.map +1 -1
  82. package/dist/esm/time/Time.d.ts +1 -0
  83. package/dist/esm/time/Time.d.ts.map +1 -1
  84. package/dist/esm/time/Time.js +3 -0
  85. package/dist/esm/time/Time.js.map +1 -1
  86. package/dist/esm/transaction/Participant.d.ts +3 -3
  87. package/dist/esm/transaction/Participant.d.ts.map +1 -1
  88. package/dist/esm/transaction/Transaction.d.ts +20 -20
  89. package/dist/esm/transaction/Tx.js +3 -3
  90. package/dist/esm/transaction/Tx.js.map +1 -1
  91. package/dist/esm/util/Construction.js +2 -2
  92. package/dist/esm/util/Construction.js.map +1 -1
  93. package/dist/esm/util/DataReadQueue.d.ts +4 -0
  94. package/dist/esm/util/DataReadQueue.d.ts.map +1 -1
  95. package/dist/esm/util/DataReadQueue.js +6 -0
  96. package/dist/esm/util/DataReadQueue.js.map +1 -1
  97. package/dist/esm/util/FormattedText.js +4 -2
  98. package/dist/esm/util/FormattedText.js.map +1 -1
  99. package/dist/esm/util/Observable.d.ts +137 -12
  100. package/dist/esm/util/Observable.d.ts.map +1 -1
  101. package/dist/esm/util/Observable.js +297 -35
  102. package/dist/esm/util/Observable.js.map +2 -2
  103. package/package.json +2 -2
  104. package/src/codec/DnsCodec.ts +1 -1
  105. package/src/log/Console.ts +52 -0
  106. package/src/log/Diagnostic.ts +21 -0
  107. package/src/log/LogDestination.ts +113 -0
  108. package/src/log/LogFormat.ts +39 -36
  109. package/src/log/LogLevel.ts +55 -25
  110. package/src/log/Logger.ts +394 -314
  111. package/src/log/index.ts +1 -0
  112. package/src/time/Time.ts +4 -0
  113. package/src/transaction/Participant.ts +3 -3
  114. package/src/transaction/Transaction.ts +1 -1
  115. package/src/transaction/Tx.ts +3 -3
  116. package/src/util/Construction.ts +2 -2
  117. package/src/util/DataReadQueue.ts +7 -0
  118. package/src/util/FormattedText.ts +4 -2
  119. package/src/util/Observable.ts +453 -47
package/src/log/index.ts CHANGED
@@ -6,6 +6,7 @@
6
6
 
7
7
  export * from "./Diagnostic.js";
8
8
  export * from "./DiagnosticSource.js";
9
+ export * from "./LogDestination.js";
9
10
  export * from "./LogFormat.js";
10
11
  export * from "./Logger.js";
11
12
  export * from "./LogLevel.js";
package/src/time/Time.ts CHANGED
@@ -85,6 +85,10 @@ export class Time {
85
85
  static unregister(timer: Timer) {
86
86
  registry.delete(timer);
87
87
  }
88
+
89
+ static get timers() {
90
+ return registry;
91
+ }
88
92
  }
89
93
 
90
94
  const time = new Time();
@@ -35,12 +35,12 @@ export interface Participant {
35
35
  /**
36
36
  * Commit phase one.
37
37
  */
38
- commit1(): MaybePromise;
38
+ commit1?: () => MaybePromise;
39
39
 
40
40
  /**
41
41
  * Commit phase two.
42
42
  */
43
- commit2(): MaybePromise;
43
+ commit2?: () => MaybePromise;
44
44
 
45
45
  /**
46
46
  * Post-commit logic.
@@ -50,5 +50,5 @@ export interface Participant {
50
50
  /**
51
51
  * Drop isolated writes and revert to original canonical source.
52
52
  */
53
- rollback(): MaybePromise;
53
+ rollback?: () => MaybePromise;
54
54
  }
@@ -55,7 +55,7 @@ export interface Transaction {
55
55
  readonly waitingOn: Iterable<Transaction> | undefined;
56
56
 
57
57
  /**
58
- * Listen for transaction commit or roll back. This may occur more than once for a given.
58
+ * Listen for transaction commit or roll back. This may occur more than once for a given transaction.
59
59
  */
60
60
  onShared(actor: () => void, once?: boolean): void;
61
61
 
@@ -564,7 +564,7 @@ class Tx implements Transaction {
564
564
  };
565
565
 
566
566
  try {
567
- const result = participant.commit1();
567
+ const result = participant.commit1?.();
568
568
  if (MaybePromise.is(result)) {
569
569
  if (!asyncCommits) {
570
570
  asyncCommits = [];
@@ -605,7 +605,7 @@ class Tx implements Transaction {
605
605
  let ongoing: undefined | Array<Promise<void>>;
606
606
  for (const participant of this.participants) {
607
607
  const promise = MaybePromise.then(
608
- () => participant.commit2(),
608
+ () => participant.commit2?.(),
609
609
  undefined,
610
610
  error => {
611
611
  logger.error(`Error committing (phase two) ${participant}, state inconsistency possible:`, error);
@@ -671,7 +671,7 @@ class Tx implements Transaction {
671
671
  for (const participant of this.participants) {
672
672
  // Perform rollback
673
673
  const promise = MaybePromise.then(
674
- () => participant.rollback(),
674
+ () => participant.rollback?.(),
675
675
  undefined,
676
676
  error => {
677
677
  logger.error(`Error rolling back ${participant}, state inconsistency possible:`, error);
@@ -239,7 +239,7 @@ export function Construction<const T extends Constructable>(
239
239
  let change: Observable<[status: Lifecycle.Status, subject: T]> | undefined;
240
240
 
241
241
  const self: Construction<any> = {
242
- [Symbol.toStringTag]: "AsyncConstruction",
242
+ [Symbol.toStringTag]: "Construction",
243
243
 
244
244
  get error() {
245
245
  return error;
@@ -663,7 +663,7 @@ export function Construction<const T extends Constructable>(
663
663
 
664
664
  function createErrorHandler(name: string) {
665
665
  return (e: any) => {
666
- unhandledError(`Unhandled error in ${self} ${name}:`, e);
666
+ unhandledError(`Unhandled error in ${subject} ${name}:`, e);
667
667
  };
668
668
  }
669
669
  }
@@ -35,6 +35,13 @@ export class DataReadQueue<T> implements Stream<T> {
35
35
  }
36
36
 
37
37
  async write(data: T) {
38
+ this.push(data);
39
+ }
40
+
41
+ /**
42
+ * Same as write but doesn't require the await required to satisfy {@link Stream#write}.
43
+ */
44
+ push(data: T) {
38
45
  if (this.#closed) throw new EndOfStreamError();
39
46
  if (this.#pendingRead !== undefined) {
40
47
  this.#pendingRead.timeoutTimer?.stop();
@@ -144,7 +144,7 @@ function detectStructure(text: string): TextStructure {
144
144
  }
145
145
 
146
146
  function wrapParagraph(input: string, into: string[], wrapWidth: number, padding: number, prefixWidth: number) {
147
- const segments = input.match(/\s+/g);
147
+ const segments = input.split(/\s+/);
148
148
  if (!segments) {
149
149
  return;
150
150
  }
@@ -205,10 +205,12 @@ function wrapParagraph(input: string, into: string[], wrapWidth: number, padding
205
205
 
206
206
  // Add to the line
207
207
  line.push(s);
208
- length += segmentLength;
208
+ line.push(" ");
209
+ length += segmentLength + 1;
209
210
  }
210
211
 
211
212
  // If there is a remaining line, add it
213
+ line.length = line.length - 1; // Remove ending space
212
214
  if (line.length) {
213
215
  addLine();
214
216
  }