@particle-academy/holy-sheet 2.4.1 → 2.4.3

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.
package/dist/index.d.cts CHANGED
@@ -223,7 +223,7 @@ interface SetMetaOp {
223
223
  }
224
224
 
225
225
  /** This package's own version, pinned to package.json by `version.test.ts`. */
226
- declare const VERSION = "2.4.1";
226
+ declare const VERSION = "2.4.3";
227
227
  type Any$6 = any;
228
228
  /**
229
229
  * Agent — the structured-tool surface for Holy Sheet. Mirrors PHP `Agent`.
@@ -295,7 +295,7 @@ type Any$5 = any;
295
295
  * over `Agent`. Provided for parity / DI ergonomics; most callers use `Agent`.
296
296
  */
297
297
  declare class HolySheet {
298
- static readonly VERSION = "2.4.1";
298
+ static readonly VERSION = "2.4.3";
299
299
  validate(schema: Any$5): ValidationError[];
300
300
  toBytes(schema: Any$5): Uint8Array;
301
301
  write(schema: Any$5, path: string): Promise<WriteResult>;
@@ -702,6 +702,21 @@ declare const SheetDiff: {
702
702
  * example `columnWidths` decoded from `{"1":140,"0":120}`) as a map, not a
703
703
  * list, and so as different from the same widths in order. A JS object has
704
704
  * no such order to compare.
705
+ *
706
+ * Throws a `TypeError` on a value JSON cannot hold, as PHP 2.3.2 throws
707
+ * `JsonException`, rather than calling two such values the same:
708
+ *
709
+ * - a non-finite number (PHP: NAN, INF);
710
+ * - a lone UTF-16 surrogate in a string or a key, which is this runtime's
711
+ * invalid UTF-8 (a JS string cannot hold invalid UTF-8, and PHP's own
712
+ * `json_decode` refuses a lone surrogate);
713
+ * - a function or a symbol, which `JSON.stringify` would silently drop
714
+ * (a bigint already throws there);
715
+ * - nesting deeper than PHP's `json_encode` depth of 4096, where every object
716
+ * and array is a level, an empty one included. The walk is iterative, so
717
+ * this is PHP's limit and not the call stack's.
718
+ *
719
+ * `undefined` stays what JSON makes it: an absent key, and `null` in a list.
705
720
  */
706
721
  same(a: unknown, b: unknown): boolean;
707
722
  /**
package/dist/index.d.ts CHANGED
@@ -223,7 +223,7 @@ interface SetMetaOp {
223
223
  }
224
224
 
225
225
  /** This package's own version, pinned to package.json by `version.test.ts`. */
226
- declare const VERSION = "2.4.1";
226
+ declare const VERSION = "2.4.3";
227
227
  type Any$6 = any;
228
228
  /**
229
229
  * Agent — the structured-tool surface for Holy Sheet. Mirrors PHP `Agent`.
@@ -295,7 +295,7 @@ type Any$5 = any;
295
295
  * over `Agent`. Provided for parity / DI ergonomics; most callers use `Agent`.
296
296
  */
297
297
  declare class HolySheet {
298
- static readonly VERSION = "2.4.1";
298
+ static readonly VERSION = "2.4.3";
299
299
  validate(schema: Any$5): ValidationError[];
300
300
  toBytes(schema: Any$5): Uint8Array;
301
301
  write(schema: Any$5, path: string): Promise<WriteResult>;
@@ -702,6 +702,21 @@ declare const SheetDiff: {
702
702
  * example `columnWidths` decoded from `{"1":140,"0":120}`) as a map, not a
703
703
  * list, and so as different from the same widths in order. A JS object has
704
704
  * no such order to compare.
705
+ *
706
+ * Throws a `TypeError` on a value JSON cannot hold, as PHP 2.3.2 throws
707
+ * `JsonException`, rather than calling two such values the same:
708
+ *
709
+ * - a non-finite number (PHP: NAN, INF);
710
+ * - a lone UTF-16 surrogate in a string or a key, which is this runtime's
711
+ * invalid UTF-8 (a JS string cannot hold invalid UTF-8, and PHP's own
712
+ * `json_decode` refuses a lone surrogate);
713
+ * - a function or a symbol, which `JSON.stringify` would silently drop
714
+ * (a bigint already throws there);
715
+ * - nesting deeper than PHP's `json_encode` depth of 4096, where every object
716
+ * and array is a level, an empty one included. The walk is iterative, so
717
+ * this is PHP's limit and not the call stack's.
718
+ *
719
+ * `undefined` stays what JSON makes it: an absent key, and `null` in a list.
705
720
  */
706
721
  same(a: unknown, b: unknown): boolean;
707
722
  /**