edfcore 0.4.117 → 0.4.119

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.
@@ -109,5 +109,5 @@ export declare const SIGNAL_FIELD_BLOCK_OFFSETS: {
109
109
  readonly reserved: 224;
110
110
  };
111
111
  /** Published package version. Kept in sync with package.json by a test. */
112
- export declare const VERSION = "0.4.117";
112
+ export declare const VERSION = "0.4.119";
113
113
  //# sourceMappingURL=constants.d.ts.map
package/dist/constants.js CHANGED
@@ -79,5 +79,5 @@ export const SIGNAL_FIELD_BLOCK_OFFSETS = {
79
79
  reserved: 224,
80
80
  };
81
81
  /** Published package version. Kept in sync with package.json by a test. */
82
- export const VERSION = '0.4.117';
82
+ export const VERSION = '0.4.119';
83
83
  //# sourceMappingURL=constants.js.map
@@ -42,6 +42,11 @@ export type EdfDiagnosticCode = EdfKnownDiagnosticCode | (string & {});
42
42
  export declare const DIAGNOSTIC_DISPOSITIONS: Readonly<Record<EdfKnownDiagnosticCode, EdfDiagnosticDisposition>>;
43
43
  /** Unknown codes are treated as warnings — an unrecognised note must never escalate. */
44
44
  export declare function dispositionOf(code: EdfDiagnosticCode): EdfDiagnosticDisposition;
45
+ /**
46
+ * The severity a consumer sees, collapsed from the disposition. `fatal` and `deferred` both
47
+ * surface as `error` on purpose: they differ in WHEN they stop a parse, not in how wrong the file
48
+ * is, and that distinction is this module's business rather than a reader's.
49
+ */
45
50
  export declare function severityOf(code: EdfDiagnosticCode): EdfSeverity;
46
51
  /** Fires regardless of `strict`: proceeding would require inventing data. */
47
52
  export declare function isAlwaysFatal(code: EdfDiagnosticCode): boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"codes.d.ts","sourceRoot":"","sources":["../../src/diagnostics/codes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH;;;;GAIG;AACH,MAAM,MAAM,WAAW,GAAG,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC;AAEvD,gEAAgE;AAChE,MAAM,MAAM,wBAAwB,GAAG,OAAO,GAAG,UAAU,GAAG,SAAS,GAAG,MAAM,CAAC;AAEjF;;;;;;GAMG;AACH,MAAM,MAAM,sBAAsB,GAE9B,iBAAiB,GACjB,kBAAkB,GAClB,sBAAsB,GACtB,uBAAuB,GACvB,yBAAyB,GACzB,kBAAkB,GAClB,mCAAmC,GACnC,wBAAwB,GACxB,gCAAgC,GAEhC,0BAA0B,GAC1B,2BAA2B,GAC3B,wBAAwB,GACxB,yBAAyB,GACzB,mBAAmB,GAEnB,sBAAsB,GACtB,wBAAwB,GACxB,gBAAgB,GAChB,sBAAsB,GACtB,gBAAgB,GAChB,+BAA+B,GAC/B,4BAA4B,GAC5B,wBAAwB,GACxB,kCAAkC,GAClC,sBAAsB,GACtB,kBAAkB,GAClB,uBAAuB,GACvB,0BAA0B,GAC1B,4BAA4B,GAC5B,wBAAwB,GACxB,8BAA8B,GAC9B,yBAAyB,GACzB,sBAAsB,GACtB,wCAAwC,GACxC,wBAAwB,GACxB,yBAAyB,GACzB,+BAA+B,GAC/B,2BAA2B,GAC3B,eAAe,GACf,6BAA6B,GAC7B,+BAA+B,GAC/B,0BAA0B,GAC1B,gCAAgC,GAChC,kCAAkC,GAElC,2BAA2B,GAC3B,yBAAyB,GACzB,2BAA2B,CAAC;AAiHhC;;;GAGG;AACH,MAAM,MAAM,iBAAiB,GAAG,sBAAsB,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;AAEvE;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,EAAE,QAAQ,CAC5C,MAAM,CAAC,sBAAsB,EAAE,wBAAwB,CAAC,CAC1C,CAAC;AAEjB,wFAAwF;AACxF,wBAAgB,aAAa,CAAC,IAAI,EAAE,iBAAiB,GAAG,wBAAwB,CAE/E;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,iBAAiB,GAAG,WAAW,CAK/D;AAED,6EAA6E;AAC7E,wBAAgB,aAAa,CAAC,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAE9D"}
1
+ {"version":3,"file":"codes.d.ts","sourceRoot":"","sources":["../../src/diagnostics/codes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH;;;;GAIG;AACH,MAAM,MAAM,WAAW,GAAG,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC;AAEvD,gEAAgE;AAChE,MAAM,MAAM,wBAAwB,GAAG,OAAO,GAAG,UAAU,GAAG,SAAS,GAAG,MAAM,CAAC;AAEjF;;;;;;GAMG;AACH,MAAM,MAAM,sBAAsB,GAE9B,iBAAiB,GACjB,kBAAkB,GAClB,sBAAsB,GACtB,uBAAuB,GACvB,yBAAyB,GACzB,kBAAkB,GAClB,mCAAmC,GACnC,wBAAwB,GACxB,gCAAgC,GAEhC,0BAA0B,GAC1B,2BAA2B,GAC3B,wBAAwB,GACxB,yBAAyB,GACzB,mBAAmB,GAEnB,sBAAsB,GACtB,wBAAwB,GACxB,gBAAgB,GAChB,sBAAsB,GACtB,gBAAgB,GAChB,+BAA+B,GAC/B,4BAA4B,GAC5B,wBAAwB,GACxB,kCAAkC,GAClC,sBAAsB,GACtB,kBAAkB,GAClB,uBAAuB,GACvB,0BAA0B,GAC1B,4BAA4B,GAC5B,wBAAwB,GACxB,8BAA8B,GAC9B,yBAAyB,GACzB,sBAAsB,GACtB,wCAAwC,GACxC,wBAAwB,GACxB,yBAAyB,GACzB,+BAA+B,GAC/B,2BAA2B,GAC3B,eAAe,GACf,6BAA6B,GAC7B,+BAA+B,GAC/B,0BAA0B,GAC1B,gCAAgC,GAChC,kCAAkC,GAElC,2BAA2B,GAC3B,yBAAyB,GACzB,2BAA2B,CAAC;AAiHhC;;;GAGG;AACH,MAAM,MAAM,iBAAiB,GAAG,sBAAsB,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;AAEvE;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,EAAE,QAAQ,CAC5C,MAAM,CAAC,sBAAsB,EAAE,wBAAwB,CAAC,CAC1C,CAAC;AAEjB,wFAAwF;AACxF,wBAAgB,aAAa,CAAC,IAAI,EAAE,iBAAiB,GAAG,wBAAwB,CAE/E;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,iBAAiB,GAAG,WAAW,CAK/D;AAED,6EAA6E;AAC7E,wBAAgB,aAAa,CAAC,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAE9D"}
@@ -130,6 +130,11 @@ export const DIAGNOSTIC_DISPOSITIONS = DISPOSITIONS;
130
130
  export function dispositionOf(code) {
131
131
  return DISPOSITIONS[code] ?? 'warning';
132
132
  }
133
+ /**
134
+ * The severity a consumer sees, collapsed from the disposition. `fatal` and `deferred` both
135
+ * surface as `error` on purpose: they differ in WHEN they stop a parse, not in how wrong the file
136
+ * is, and that distinction is this module's business rather than a reader's.
137
+ */
133
138
  export function severityOf(code) {
134
139
  const disposition = dispositionOf(code);
135
140
  if (disposition === 'fatal' || disposition === 'deferred')
@@ -1 +1 @@
1
- {"version":3,"file":"codes.js","sourceRoot":"","sources":["../../src/diagnostics/codes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"codes.js","sourceRoot":"","sources":["../../src/diagnostics/codes.ts"],"names":[],"mappings":"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"}
@@ -58,6 +58,11 @@ export declare function appendDiagnostics(target: EdfDiagnostic[], source: reado
58
58
  * that is the entire point.
59
59
  */
60
60
  export declare function appendChunkDiagnostics(target: EdfDiagnostic[], source: readonly EdfDiagnostic[], seen: Set<string>): void;
61
+ /**
62
+ * Builds a diagnostic with its severity derived rather than supplied. A caller choosing its own
63
+ * severity is how one code comes to mean two different things, so the code is the only input and
64
+ * `severityOf` decides — every diagnostic with the same code ranks the same everywhere.
65
+ */
61
66
  export declare function createDiagnostic(init: DiagnosticInit): EdfDiagnostic;
62
67
  /**
63
68
  * The one way to turn a diagnostic into the error that carries it. `EdfFormatError` re-derives
@@ -1 +1 @@
1
- {"version":3,"file":"collector.d.ts","sourceRoot":"","sources":["../../src/diagnostics/collector.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,cAAc,EAA2B,MAAM,cAAc,CAAC;AACvE,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC/D,OAAO,EAAE,KAAK,iBAAiB,EAA6B,MAAM,YAAY,CAAC;AAE/E;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAC;IACjC,4FAA4F;IAC5F,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,QAAQ,CAAC,EAAE,UAAU,CAAC;IAC/B,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,6DAA6D;IAC7D,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;CACjC;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,aAAa,EAAE,EAAE,MAAM,EAAE,SAAS,aAAa,EAAE,GAAG,IAAI,CAEjG;AAwBD;;;;;GAKG;AACH,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,aAAa,EAAE,EACvB,MAAM,EAAE,SAAS,aAAa,EAAE,EAChC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,GAChB,IAAI,CAQN;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,cAAc,GAAG,aAAa,CAkBpE;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAC3B,UAAU,EAAE,aAAa,EACzB,KAAK,CAAC,EAAE,OAAO,EACf,SAAS,CAAC,EAAE,SAAS,aAAa,EAAE,GACnC,cAAc,CAUhB;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,cAAc,EAAE,KAAK,CAAC,EAAE,OAAO,GAAG,cAAc,CAEhF;AAED;;;;GAIG;AACH,qBAAa,cAAc;;IACzB;;;OAGG;IACH,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;gBAIb,OAAO,CAAC,EAAE,YAAY;IAIlC,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED;;;;;;;;;OASG;IACH;;;;;;OAMG;IACH,KAAK,CAAC,IAAI,EAAE,cAAc,EAAE,KAAK,CAAC,EAAE,OAAO,GAAG,cAAc;IAI5D,MAAM,CAAC,IAAI,EAAE,cAAc,GAAG,IAAI;IASlC,iGAAiG;IACjG,IAAI,WAAW,IAAI,SAAS,aAAa,EAAE,CAE1C;IAED,oEAAoE;IACpE,KAAK,IAAI,SAAS,aAAa,EAAE;CAKlC"}
1
+ {"version":3,"file":"collector.d.ts","sourceRoot":"","sources":["../../src/diagnostics/collector.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,cAAc,EAA2B,MAAM,cAAc,CAAC;AACvE,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC/D,OAAO,EAAE,KAAK,iBAAiB,EAA6B,MAAM,YAAY,CAAC;AAE/E;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAC;IACjC,4FAA4F;IAC5F,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,QAAQ,CAAC,EAAE,UAAU,CAAC;IAC/B,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,6DAA6D;IAC7D,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;CACjC;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,aAAa,EAAE,EAAE,MAAM,EAAE,SAAS,aAAa,EAAE,GAAG,IAAI,CAEjG;AAwBD;;;;;GAKG;AACH,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,aAAa,EAAE,EACvB,MAAM,EAAE,SAAS,aAAa,EAAE,EAChC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,GAChB,IAAI,CAQN;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,cAAc,GAAG,aAAa,CAkBpE;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAC3B,UAAU,EAAE,aAAa,EACzB,KAAK,CAAC,EAAE,OAAO,EACf,SAAS,CAAC,EAAE,SAAS,aAAa,EAAE,GACnC,cAAc,CAUhB;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,cAAc,EAAE,KAAK,CAAC,EAAE,OAAO,GAAG,cAAc,CAEhF;AAED;;;;GAIG;AACH,qBAAa,cAAc;;IACzB;;;OAGG;IACH,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;gBAIb,OAAO,CAAC,EAAE,YAAY;IAIlC,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED;;;;;;;;;OASG;IACH;;;;;;OAMG;IACH,KAAK,CAAC,IAAI,EAAE,cAAc,EAAE,KAAK,CAAC,EAAE,OAAO,GAAG,cAAc;IAI5D,MAAM,CAAC,IAAI,EAAE,cAAc,GAAG,IAAI;IASlC,iGAAiG;IACjG,IAAI,WAAW,IAAI,SAAS,aAAa,EAAE,CAE1C;IAED,oEAAoE;IACpE,KAAK,IAAI,SAAS,aAAa,EAAE;CAKlC"}
@@ -69,6 +69,11 @@ export function appendChunkDiagnostics(target, source, seen) {
69
69
  target.push(diagnostic);
70
70
  }
71
71
  }
72
+ /**
73
+ * Builds a diagnostic with its severity derived rather than supplied. A caller choosing its own
74
+ * severity is how one code comes to mean two different things, so the code is the only input and
75
+ * `severityOf` decides — every diagnostic with the same code ranks the same everywhere.
76
+ */
72
77
  export function createDiagnostic(init) {
73
78
  return {
74
79
  code: init.code,
@@ -1 +1 @@
1
- {"version":3,"file":"collector.js","sourceRoot":"","sources":["../../src/diagnostics/collector.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"collector.js","sourceRoot":"","sources":["../../src/diagnostics/collector.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,cAAc,EAA2B,MAAM,cAAc,CAAC;AAEvE,OAAO,EAA0B,aAAa,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAwB/E;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,iBAAiB,CAAC,MAAuB,EAAE,MAAgC;IACzF,KAAK,MAAM,UAAU,IAAI,MAAM;QAAE,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;AAC3D,CAAC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,wBAAwB,GAAwB,IAAI,GAAG,CAAC,CAAC,2BAA2B,CAAC,CAAC,CAAC;AAE7F;;;;;GAKG;AACH,MAAM,UAAU,sBAAsB,CACpC,MAAuB,EACvB,MAAgC,EAChC,IAAiB;IAEjB,KAAK,MAAM,UAAU,IAAI,MAAM,EAAE,CAAC;QAChC,IAAI,wBAAwB,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YAClD,IAAI,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC;gBAAE,SAAS;YACxC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAC5B,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC1B,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,gBAAgB,CAAC,IAAoB;IACnD,OAAO;QACL,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,QAAQ,EAAE,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC;QAC/B,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,yFAAyF;QACzF,4EAA4E;QAC5E,QAAQ,EAAE,IAAI,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE;QACzE,GAAG,EAAE,IAAI,CAAC,GAAG;QACb,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,aAAa,EAAE,IAAI,CAAC,aAAa;KAClC,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,aAAa,CAC3B,UAAyB,EACzB,KAAe,EACf,SAAoC;IAEpC,MAAM,IAAI,GAAuB;QAC/B,IAAI,EAAE,UAAU,CAAC,IAAI;QACrB,UAAU;QACV,GAAG,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC;QACzC,wFAAwF;QACxF,wBAAwB;QACxB,GAAG,CAAC,SAAS,KAAK,SAAS,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,GAAG,SAAS,CAAC,EAAE,CAAC;KAC5F,CAAC;IACF,OAAO,IAAI,cAAc,CAAC,IAAI,UAAU,CAAC,IAAI,KAAK,UAAU,CAAC,OAAO,EAAE,EAAE,IAAI,CAAC,CAAC;AAChF,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,UAAU,CAAC,IAAoB,EAAE,KAAe;IAC9D,OAAO,aAAa,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,CAAC;AACtD,CAAC;AAED;;;;GAIG;AACH,MAAM,OAAO,cAAc;IACzB;;;OAGG;IACM,MAAM,CAAU;IAEzB,UAAU,GAAoB,EAAE,CAAC;IAEjC,YAAY,OAAsB;QAChC,IAAI,CAAC,MAAM,GAAG,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,CAAC;IAED,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;IAChC,CAAC;IAED;;;;;;;;;OASG;IACH;;;;;;OAMG;IACH,KAAK,CAAC,IAAoB,EAAE,KAAe;QACzC,OAAO,aAAa,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IACvE,CAAC;IAED,MAAM,CAAC,IAAoB;QACzB,MAAM,UAAU,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC;QAC1C,IAAI,aAAa,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,UAAU,CAAC,QAAQ,KAAK,MAAM,CAAC,EAAE,CAAC;YACtF,yEAAyE;YACzE,MAAM,aAAa,CAAC,UAAU,EAAE,SAAS,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QAC9D,CAAC;QACD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACnC,CAAC;IAED,iGAAiG;IACjG,IAAI,WAAW;QACb,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC;IAChD,CAAC;IAED,oEAAoE;IACpE,KAAK;QACH,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC;QACnC,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;QACrB,OAAO,SAAS,CAAC;IACnB,CAAC;CACF"}
package/docs/CHANGELOG.md CHANGED
@@ -6,6 +6,18 @@ alone does not tell you whether you were affected.
6
6
  edfcore is pre-1.0. Patch releases have carried behaviour changes where the old behaviour was a
7
7
  defect; those are called out below.
8
8
 
9
+ ## 0.4.119
10
+
11
+ - **Added** a docblock to `createDiagnostic` naming why severity is derived from the code rather
12
+ than passed in: a caller choosing its own is how one code comes to mean two different things,
13
+ and 0.3.12-0.3.22 was a sweep of exactly that class.
14
+
15
+ ## 0.4.118
16
+
17
+ - **Added** a docblock to `severityOf` saying why `fatal` and `deferred` both surface as `error`:
18
+ they differ in when they stop a parse, not in how wrong the file is, and that distinction is
19
+ internal rather than something a consumer should branch on.
20
+
9
21
  ## 0.4.117
10
22
 
11
23
  - **Added** a docblock to `DIAGNOSTIC_DISPOSITIONS` naming the property that makes it the registry
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "edfcore",
3
- "version": "0.4.117",
3
+ "version": "0.4.119",
4
4
  "description": "Modern, typed, zero-dependency reader for EDF, EDF+, BDF and BDF+ biosignal files. Works in browsers and Node with true random access.",
5
5
  "keywords": [
6
6
  "edf",
package/src/constants.ts CHANGED
@@ -93,4 +93,4 @@ export const SIGNAL_FIELD_BLOCK_OFFSETS = {
93
93
  } as const;
94
94
 
95
95
  /** Published package version. Kept in sync with package.json by a test. */
96
- export const VERSION = '0.4.117';
96
+ export const VERSION = '0.4.119';
@@ -214,6 +214,11 @@ export function dispositionOf(code: EdfDiagnosticCode): EdfDiagnosticDisposition
214
214
  return DISPOSITIONS[code as EdfKnownDiagnosticCode] ?? 'warning';
215
215
  }
216
216
 
217
+ /**
218
+ * The severity a consumer sees, collapsed from the disposition. `fatal` and `deferred` both
219
+ * surface as `error` on purpose: they differ in WHEN they stop a parse, not in how wrong the file
220
+ * is, and that distinction is this module's business rather than a reader's.
221
+ */
217
222
  export function severityOf(code: EdfDiagnosticCode): EdfSeverity {
218
223
  const disposition = dispositionOf(code);
219
224
  if (disposition === 'fatal' || disposition === 'deferred') return 'error';
@@ -99,6 +99,11 @@ export function appendChunkDiagnostics(
99
99
  }
100
100
  }
101
101
 
102
+ /**
103
+ * Builds a diagnostic with its severity derived rather than supplied. A caller choosing its own
104
+ * severity is how one code comes to mean two different things, so the code is the only input and
105
+ * `severityOf` decides — every diagnostic with the same code ranks the same everywhere.
106
+ */
102
107
  export function createDiagnostic(init: DiagnosticInit): EdfDiagnostic {
103
108
  return {
104
109
  code: init.code,