@graphty/graph-io 0.3.3 → 0.3.5

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 (87) hide show
  1. package/README.md +17 -4
  2. package/dist/chunks/{escape-DXbOoLKl.js → escape-BjmIaFFo.js} +2 -2
  3. package/dist/chunks/{escape-DXbOoLKl.js.map → escape-BjmIaFFo.js.map} +1 -1
  4. package/dist/chunks/{importer-BELrICWM.js → importer-BOxwmef_.js} +352 -19
  5. package/dist/chunks/importer-BOxwmef_.js.map +1 -0
  6. package/dist/chunks/{importer-B9qF4e32.js → importer-BddBW3sf.js} +2 -2
  7. package/dist/chunks/{importer-B9qF4e32.js.map → importer-BddBW3sf.js.map} +1 -1
  8. package/dist/chunks/{importer-xoHpRG5x.js → importer-BtHFICnf.js} +2 -2
  9. package/dist/chunks/{importer-xoHpRG5x.js.map → importer-BtHFICnf.js.map} +1 -1
  10. package/dist/chunks/{importer-C2caVvl6.js → importer-DfI8POXb.js} +272 -63
  11. package/dist/chunks/importer-DfI8POXb.js.map +1 -0
  12. package/dist/csv.js +1 -1
  13. package/dist/dot.js +1 -1
  14. package/dist/gexf.js +1 -1
  15. package/dist/gml.js +1 -1
  16. package/dist/graph-io.js +11 -10
  17. package/dist/graph-io.js.map +1 -1
  18. package/dist/graphml.js +1 -1
  19. package/dist/json.js +1 -1
  20. package/dist/neo4j.js +51 -16
  21. package/dist/neo4j.js.map +1 -1
  22. package/dist/pajek.js +1 -1
  23. package/dist/src/common/escape.d.ts +4 -3
  24. package/dist/src/common/escape.d.ts.map +1 -1
  25. package/dist/src/common/escape.js +5 -4
  26. package/dist/src/common/escape.js.map +1 -1
  27. package/dist/src/formats/json/dialect.d.ts +21 -4
  28. package/dist/src/formats/json/dialect.d.ts.map +1 -1
  29. package/dist/src/formats/json/dialect.js +29 -4
  30. package/dist/src/formats/json/dialect.js.map +1 -1
  31. package/dist/src/formats/json/exporter.d.ts.map +1 -1
  32. package/dist/src/formats/json/exporter.js +27 -7
  33. package/dist/src/formats/json/exporter.js.map +1 -1
  34. package/dist/src/formats/json/importer.d.ts +17 -4
  35. package/dist/src/formats/json/importer.d.ts.map +1 -1
  36. package/dist/src/formats/json/importer.js +356 -8
  37. package/dist/src/formats/json/importer.js.map +1 -1
  38. package/dist/src/formats/json/index.d.ts +1 -1
  39. package/dist/src/formats/json/index.d.ts.map +1 -1
  40. package/dist/src/formats/json/index.js +1 -1
  41. package/dist/src/formats/json/index.js.map +1 -1
  42. package/dist/src/formats/neo4j/exporter.d.ts +3 -1
  43. package/dist/src/formats/neo4j/exporter.d.ts.map +1 -1
  44. package/dist/src/formats/neo4j/exporter.js +34 -6
  45. package/dist/src/formats/neo4j/exporter.js.map +1 -1
  46. package/dist/src/formats/neo4j/importer.d.ts +16 -3
  47. package/dist/src/formats/neo4j/importer.d.ts.map +1 -1
  48. package/dist/src/formats/neo4j/importer.js +49 -11
  49. package/dist/src/formats/neo4j/importer.js.map +1 -1
  50. package/dist/src/formats/neo4j/index.d.ts +3 -3
  51. package/dist/src/formats/neo4j/index.d.ts.map +1 -1
  52. package/dist/src/formats/neo4j/index.js +3 -3
  53. package/dist/src/formats/neo4j/index.js.map +1 -1
  54. package/dist/src/formats/pajek/exporter.d.ts.map +1 -1
  55. package/dist/src/formats/pajek/exporter.js +3 -2
  56. package/dist/src/formats/pajek/exporter.js.map +1 -1
  57. package/dist/src/formats/pajek/importer.d.ts +14 -8
  58. package/dist/src/formats/pajek/importer.d.ts.map +1 -1
  59. package/dist/src/formats/pajek/importer.js +233 -61
  60. package/dist/src/formats/pajek/importer.js.map +1 -1
  61. package/dist/src/formats/pajek/syntax.d.ts +39 -8
  62. package/dist/src/formats/pajek/syntax.d.ts.map +1 -1
  63. package/dist/src/formats/pajek/syntax.js +81 -11
  64. package/dist/src/formats/pajek/syntax.js.map +1 -1
  65. package/dist/src/index.d.ts +2 -2
  66. package/dist/src/index.d.ts.map +1 -1
  67. package/dist/src/index.js +1 -1
  68. package/dist/src/index.js.map +1 -1
  69. package/dist/src/sniff.d.ts +3 -3
  70. package/dist/src/sniff.d.ts.map +1 -1
  71. package/dist/src/sniff.js.map +1 -1
  72. package/package.json +2 -2
  73. package/src/common/escape.ts +5 -4
  74. package/src/formats/json/dialect.ts +40 -6
  75. package/src/formats/json/exporter.ts +28 -7
  76. package/src/formats/json/importer.ts +411 -21
  77. package/src/formats/json/index.ts +7 -1
  78. package/src/formats/neo4j/exporter.ts +43 -6
  79. package/src/formats/neo4j/importer.ts +56 -11
  80. package/src/formats/neo4j/index.ts +10 -3
  81. package/src/formats/pajek/exporter.ts +3 -1
  82. package/src/formats/pajek/importer.ts +284 -60
  83. package/src/formats/pajek/syntax.ts +98 -12
  84. package/src/index.ts +2 -0
  85. package/src/sniff.ts +3 -3
  86. package/dist/chunks/importer-BELrICWM.js.map +0 -1
  87. package/dist/chunks/importer-C2caVvl6.js.map +0 -1
package/dist/pajek.js CHANGED
@@ -1,4 +1,4 @@
1
- import { P, a, p, b } from "./chunks/importer-C2caVvl6.js";
1
+ import { P, a, p, b } from "./chunks/importer-DfI8POXb.js";
2
2
  export {
3
3
  P as PAJEK_ISSUE,
4
4
  a as PAJEK_LOSS,
@@ -85,9 +85,10 @@ export declare function quoteCsvCell(text: string, delimiter?: string): string;
85
85
  */
86
86
  export declare function isPajekLabel(text: string): boolean;
87
87
  /**
88
- * Write a Pajek label: bare when it is a single run of non-space, non-quote characters, otherwise
89
- * double-quoted. E_UNSUPPORTED (reason "pajek label") for a text isPajekLabel() rejects; the
90
- * exporter's check() counts those.
88
+ * Write a Pajek label: bare when it is a single run of non-space, non-quote characters that does
89
+ * not start with `[` (a bare `[` opens a time set, which the reader groups up to its `]`),
90
+ * otherwise double-quoted. E_UNSUPPORTED (reason "pajek label") for a text isPajekLabel() rejects;
91
+ * the exporter's check() counts those.
91
92
  * @param text - the label text
92
93
  * @returns the label as written
93
94
  */
@@ -1 +1 @@
1
- {"version":3,"file":"escape.d.ts","sourceRoot":"","sources":["../../../src/common/escape.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAkBH;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAKlD;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAKvD;AAgBD;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAcnD;AA2BD;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,GAAG,MAAM,CAe1F;AAKD;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAKjD;AAuBD;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEvD;AAED;;;;;;;GAOG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAK/C;AAED;;;;;;;;;GASG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,SAAM,GAAG,MAAM,CAclE;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAElD;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAWpD"}
1
+ {"version":3,"file":"escape.d.ts","sourceRoot":"","sources":["../../../src/common/escape.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAkBH;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAKlD;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAKvD;AAgBD;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAcnD;AA2BD;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,GAAG,MAAM,CAe1F;AAKD;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAKjD;AAuBD;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEvD;AAED;;;;;;;GAOG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAK/C;AAED;;;;;;;;;GASG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,SAAM,GAAG,MAAM,CAclE;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAElD;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAWpD"}
@@ -218,9 +218,10 @@ export function isPajekLabel(text) {
218
218
  return !text.includes('"') && !text.includes("\n") && !text.includes("\r");
219
219
  }
220
220
  /**
221
- * Write a Pajek label: bare when it is a single run of non-space, non-quote characters, otherwise
222
- * double-quoted. E_UNSUPPORTED (reason "pajek label") for a text isPajekLabel() rejects; the
223
- * exporter's check() counts those.
221
+ * Write a Pajek label: bare when it is a single run of non-space, non-quote characters that does
222
+ * not start with `[` (a bare `[` opens a time set, which the reader groups up to its `]`),
223
+ * otherwise double-quoted. E_UNSUPPORTED (reason "pajek label") for a text isPajekLabel() rejects;
224
+ * the exporter's check() counts those.
224
225
  * @param text - the label text
225
226
  * @returns the label as written
226
227
  */
@@ -231,7 +232,7 @@ export function quotePajekLabel(text) {
231
232
  value: text,
232
233
  });
233
234
  }
234
- if (text.length > 0 && !/[\s"]/.test(text)) {
235
+ if (text.length > 0 && !/[\s"]/.test(text) && !text.startsWith("[")) {
235
236
  return text;
236
237
  }
237
238
  return `"${text}"`;
@@ -1 +1 @@
1
- {"version":3,"file":"escape.js","sourceRoot":"","sources":["../../../src/common/escape.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"escape.js","sourceRoot":"","sources":["../../../src/common/escape.ts"],"names":[],"mappings":"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"}
@@ -9,7 +9,8 @@
9
9
  * JSON Graph Format v2 (`graph.nodes` keyed by id, per-edge `directed`, hyperedges), Cytoscape.js
10
10
  * elements (`data.id` / `data.source` / `data.target`, `position`, `classes`, `data.parent`),
11
11
  * graphology serialisation (`key` / `attributes`, `undirected` edges, `options.type` / `multi`) and
12
- * vis.js (`from` / `to`).
12
+ * vis.js (`from` / `to`); read only: NetworkX adjacency_data (`nodes` + `adjacency`) and tree_data
13
+ * (nested `id` / `children`).
13
14
  */
14
15
  import { type GraphMeta } from "@graphty/graph-format";
15
16
  import { type ExportCapabilities } from "../../types.js";
@@ -17,6 +18,14 @@ import { type ExportCapabilities } from "../../types.js";
17
18
  export type JsonDialect = "node-link" | "d3" | "jgf" | "cytoscape" | "graphology" | "vis";
18
19
  /** Every dialect name, for option checking and messages. */
19
20
  export declare const JSON_DIALECTS: readonly JsonDialect[];
21
+ /**
22
+ * The dialects the importer reads: every JsonDialect plus two it only reads, NetworkX
23
+ * adjacency_data (`nodes` plus one neighbour list per node under `adjacency`) and tree_data (a
24
+ * nested `id` / `children` record). The exporter writes neither; write node-link instead.
25
+ */
26
+ export type JsonImportDialect = JsonDialect | "adjacency" | "tree";
27
+ /** Every dialect the importer reads, for option checking and messages. */
28
+ export declare const JSON_IMPORT_DIALECTS: readonly JsonImportDialect[];
20
29
  /** The key under `meta.extra` that holds the shape record (design section 8.5). */
21
30
  export declare const META_KEY = "json";
22
31
  /**
@@ -66,17 +75,25 @@ export declare function hasKey(record: Readonly<Record<string, unknown>>, key: s
66
75
  * @returns true for one of JSON_DIALECTS
67
76
  */
68
77
  export declare function isJsonDialect(value: unknown): value is JsonDialect;
78
+ /**
79
+ * Whether a text names a dialect the importer reads.
80
+ * @param value - any value
81
+ * @returns true for one of JSON_IMPORT_DIALECTS
82
+ */
83
+ export declare function isJsonImportDialect(value: unknown): value is JsonImportDialect;
69
84
  /**
70
85
  * The dialect of a parsed JSON document, by the shape rules of design section 8.2 (Cytoscape:
71
86
  * `elements` or a top-level array of `{ data }` elements; JGF: `graph.nodes` / `graph.edges` or
72
87
  * `graphs[]`; graphology: `options.type` / `options.multi`, `key` nodes without `id`, edges with
73
88
  * `undirected` or an `attributes` record; vis: edges with `from` / `to`; d3: `links` without
74
- * `directed` / `multigraph` / `graph`; else node-link). Pure: the importer wraps it with its issue
89
+ * `directed` / `multigraph` / `graph`; NetworkX adjacency_data: `nodes` and `adjacency` without
90
+ * `links` / `edges`; NetworkX tree_data: `children` without `nodes` / `links` / `edges`; else
91
+ * node-link). Pure: the importer wraps it with its issue
75
92
  * codes, the registry's sniff() uses it on a head that parses as a whole document.
76
93
  * @param root - the parsed document
77
94
  * @returns the dialect, or null when the document is not a graph document in any dialect
78
95
  */
79
- export declare function sniffJsonDialect(root: unknown): JsonDialect | null;
96
+ export declare function sniffJsonDialect(root: unknown): JsonImportDialect | null;
80
97
  /**
81
98
  * The shape record of a snapshot's metadata, or an empty record when the snapshot did not come
82
99
  * from the JSON importer.
@@ -85,7 +102,7 @@ export declare function sniffJsonDialect(root: unknown): JsonDialect | null;
85
102
  */
86
103
  export declare function shapeMetaOf(meta: GraphMeta): JsonShapeMeta;
87
104
  /** The direction a dialect assumes when the file declares none (design section 8.4, `defaultDirected`). */
88
- export declare const DIALECT_DEFAULT_DIRECTED: Readonly<Record<JsonDialect, boolean>>;
105
+ export declare const DIALECT_DEFAULT_DIRECTED: Readonly<Record<JsonImportDialect, boolean>>;
89
106
  /**
90
107
  * What one dialect can express (design section 8.5): positions and visual columns are written as
91
108
  * plain attributes (an array for a multi-component column) and read back without their role,
@@ -1 +1 @@
1
- {"version":3,"file":"dialect.d.ts","sourceRoot":"","sources":["../../../../src/formats/json/dialect.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dialect.d.ts","sourceRoot":"","sources":["../../../../src/formats/json/dialect.ts"],"names":[],"mappings":"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"}
@@ -9,7 +9,8 @@
9
9
  * JSON Graph Format v2 (`graph.nodes` keyed by id, per-edge `directed`, hyperedges), Cytoscape.js
10
10
  * elements (`data.id` / `data.source` / `data.target`, `position`, `classes`, `data.parent`),
11
11
  * graphology serialisation (`key` / `attributes`, `undirected` edges, `options.type` / `multi`) and
12
- * vis.js (`from` / `to`).
12
+ * vis.js (`from` / `to`); read only: NetworkX adjacency_data (`nodes` + `adjacency`) and tree_data
13
+ * (nested `id` / `children`).
13
14
  */
14
15
  import { capabilities } from "../../common/export.js";
15
16
  /** Every dialect name, for option checking and messages. */
@@ -21,6 +22,12 @@ export const JSON_DIALECTS = Object.freeze([
21
22
  "graphology",
22
23
  "vis",
23
24
  ]);
25
+ /** Every dialect the importer reads, for option checking and messages. */
26
+ export const JSON_IMPORT_DIALECTS = Object.freeze([
27
+ ...JSON_DIALECTS,
28
+ "adjacency",
29
+ "tree",
30
+ ]);
24
31
  /** The key under `meta.extra` that holds the shape record (design section 8.5). */
25
32
  export const META_KEY = "json";
26
33
  /**
@@ -49,12 +56,22 @@ export function hasKey(record, key) {
49
56
  export function isJsonDialect(value) {
50
57
  return typeof value === "string" && JSON_DIALECTS.includes(value);
51
58
  }
59
+ /**
60
+ * Whether a text names a dialect the importer reads.
61
+ * @param value - any value
62
+ * @returns true for one of JSON_IMPORT_DIALECTS
63
+ */
64
+ export function isJsonImportDialect(value) {
65
+ return typeof value === "string" && JSON_IMPORT_DIALECTS.includes(value);
66
+ }
52
67
  /**
53
68
  * The dialect of a parsed JSON document, by the shape rules of design section 8.2 (Cytoscape:
54
69
  * `elements` or a top-level array of `{ data }` elements; JGF: `graph.nodes` / `graph.edges` or
55
70
  * `graphs[]`; graphology: `options.type` / `options.multi`, `key` nodes without `id`, edges with
56
71
  * `undirected` or an `attributes` record; vis: edges with `from` / `to`; d3: `links` without
57
- * `directed` / `multigraph` / `graph`; else node-link). Pure: the importer wraps it with its issue
72
+ * `directed` / `multigraph` / `graph`; NetworkX adjacency_data: `nodes` and `adjacency` without
73
+ * `links` / `edges`; NetworkX tree_data: `children` without `nodes` / `links` / `edges`; else
74
+ * node-link). Pure: the importer wraps it with its issue
58
75
  * codes, the registry's sniff() uses it on a head that parses as a whole document.
59
76
  * @param root - the parsed document
60
77
  * @returns the dialect, or null when the document is not a graph document in any dialect
@@ -76,8 +93,13 @@ export function sniffJsonDialect(root) {
76
93
  if (Array.isArray(root.graphs)) {
77
94
  return "jgf";
78
95
  }
79
- if (!hasKey(root, "nodes") && !hasKey(root, "edges") && !hasKey(root, "links")) {
80
- return null;
96
+ if (!hasKey(root, "edges") && !hasKey(root, "links")) {
97
+ if (hasKey(root, "nodes") && hasKey(root, "adjacency")) {
98
+ return "adjacency";
99
+ }
100
+ if (!hasKey(root, "nodes")) {
101
+ return hasKey(root, "children") ? "tree" : null;
102
+ }
81
103
  }
82
104
  const firstNode = firstJsonObject(root.nodes);
83
105
  const firstEdge = firstJsonObject(hasKey(root, "edges") ? root.edges : root.links);
@@ -145,6 +167,9 @@ export const DIALECT_DEFAULT_DIRECTED = Object.freeze({
145
167
  cytoscape: true,
146
168
  graphology: true,
147
169
  vis: false,
170
+ // networkx adjacency_data declares `directed`; tree_graph always builds a DiGraph
171
+ adjacency: false,
172
+ tree: true,
148
173
  });
149
174
  /**
150
175
  * The dtypes a JSON dialect keeps as declared: JSON declares no types, so a value reads back as
@@ -1 +1 @@
1
- {"version":3,"file":"dialect.js","sourceRoot":"","sources":["../../../../src/formats/json/dialect.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dialect.js","sourceRoot":"","sources":["../../../../src/formats/json/dialect.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAIH,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAMtD,4DAA4D;AAC5D,MAAM,CAAC,MAAM,aAAa,GAA2B,MAAM,CAAC,MAAM,CAAC;IAC/D,WAAW;IACX,IAAI;IACJ,KAAK;IACL,WAAW;IACX,YAAY;IACZ,KAAK;CACR,CAAC,CAAC;AASH,0EAA0E;AAC1E,MAAM,CAAC,MAAM,oBAAoB,GAAiC,MAAM,CAAC,MAAM,CAAC;IAC5E,GAAG,aAAa;IAChB,WAAW;IACX,MAAM;CACT,CAAC,CAAC;AAEH,mFAAmF;AACnF,MAAM,CAAC,MAAM,QAAQ,GAAG,MAAM,CAAC;AA8B/B;;;;GAIG;AACH,MAAM,UAAU,YAAY,CAAC,KAAc;IACvC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAChF,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,MAAM,CAAC,MAAyC,EAAE,GAAW;IACzE,OAAO,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAC7D,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,aAAa,CAAC,KAAc;IACxC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAK,aAAmC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AAC7F,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,mBAAmB,CAAC,KAAc;IAC9C,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAK,oBAA0C,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AACpG,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,gBAAgB,CAAC,IAAa;IAC1C,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACtB,MAAM,KAAK,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;QACpC,OAAO,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,KAAK,KAAK,IAAI,IAAI,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC;IAClG,CAAC;IACD,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;QACtB,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,IAAI,MAAM,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE,CAAC;QAC3B,OAAO,WAAW,CAAC;IACvB,CAAC;IACD,IAAI,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,EAAE,CAAC;QAC3F,OAAO,KAAK,CAAC;IACjB,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QAC7B,OAAO,KAAK,CAAC;IACjB,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC;QACnD,IAAI,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,CAAC;YACrD,OAAO,WAAW,CAAC;QACvB,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC;YACzB,OAAO,MAAM,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;QACpD,CAAC;IACL,CAAC;IACD,MAAM,SAAS,GAAG,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC9C,MAAM,SAAS,GAAG,eAAe,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACnF,IAAI,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,EAAE,CAAC;QAChG,OAAO,YAAY,CAAC;IACxB,CAAC;IACD,IAAI,SAAS,KAAK,IAAI,IAAI,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC;QAC7E,OAAO,YAAY,CAAC;IACxB,CAAC;IACD,IAAI,SAAS,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC;QACnD,IAAI,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,IAAI,YAAY,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC;YACxE,OAAO,YAAY,CAAC;QACxB,CAAC;IACL,CAAC;IACD,IAAI,SAAS,KAAK,IAAI,IAAI,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,QAAQ,CAAC,EAAE,CAAC;QAC7G,OAAO,KAAK,CAAC;IACjB,CAAC;IACD,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAChG,OAAO,IAAI,IAAI,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC;AAC9D,CAAC;AAED;;;;GAIG;AACH,SAAS,eAAe,CAAC,KAAc;IACnC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,MAAM,KAAK,GAAY,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC;IAChE,OAAO,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;AAC9C,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,WAAW,CAAC,IAAe;IACvC,MAAM,GAAG,GAAY,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAC1C,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC;QACrB,OAAO,EAAE,CAAC;IACd,CAAC;IACD,MAAM,IAAI,GAAG,CAAC,GAAW,EAAsB,EAAE,CAAC,CAAC,OAAO,GAAG,CAAC,GAAG,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IACxG,MAAM,IAAI,GAAG,CAAC,GAAW,EAAuB,EAAE,CAAC,CAAC,OAAO,GAAG,CAAC,GAAG,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IAC1G,MAAM,EAAE,SAAS,EAAE,GAAG,GAAG,CAAC;IAC1B,OAAO;QACH,OAAO,EAAE,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS;QAC7D,QAAQ,EAAE,IAAI,CAAC,UAAU,CAAC;QAC1B,SAAS,EAAE,SAAS,KAAK,IAAI,IAAI,OAAO,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;QACtF,UAAU,EAAE,IAAI,CAAC,YAAY,CAAC;QAC9B,SAAS,EAAE,IAAI,CAAC,WAAW,CAAC;QAC5B,SAAS,EAAE,IAAI,CAAC,WAAW,CAAC;QAC5B,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC;QACd,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC;QAClB,cAAc,EAAE,IAAI,CAAC,gBAAgB,CAAC;QACtC,SAAS,EAAE,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;KACrE,CAAC;AACN,CAAC;AAED,2GAA2G;AAC3G,MAAM,CAAC,MAAM,wBAAwB,GAAiD,MAAM,CAAC,MAAM,CAAC;IAChG,WAAW,EAAE,KAAK;IAClB,EAAE,EAAE,KAAK;IACT,GAAG,EAAE,IAAI;IACT,SAAS,EAAE,IAAI;IACf,UAAU,EAAE,IAAI;IAChB,GAAG,EAAE,KAAK;IACV,kFAAkF;IAClF,SAAS,EAAE,KAAK;IAChB,IAAI,EAAE,IAAI;CACb,CAAC,CAAC;AAEH;;;;;GAKG;AACH,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAU,CAAC,CAAC;AAE7E,MAAM,MAAM,GAAG;IACX,UAAU,EAAE,IAAI;IAChB,SAAS,EAAE,IAAI;IACf,SAAS,EAAE,KAAK;IAChB,MAAM,EAAE,WAAW;IACnB,UAAU,EAAE,KAAK;IACjB,KAAK,EAAE,KAAK;IACZ,IAAI,EAAE,IAAI;IACV,QAAQ,EAAE,KAAK;IACf,OAAO,EAAE,KAAK;IACd,QAAQ,EAAE,MAAM;IAChB,SAAS,EAAE,KAAK;IAChB,GAAG,EAAE,KAAK;CACJ,CAAC;AAEX,MAAM,MAAM,GAAsD,MAAM,CAAC,MAAM,CAAC;IAC5E,WAAW,EAAE,YAAY,CAAC;QACtB,GAAG,MAAM;QACT,cAAc,EAAE,KAAK;QACrB,OAAO,EAAE,MAAM;QACf,SAAS,EAAE,KAAK;QAChB,eAAe,EAAE,IAAI;KACxB,CAAC;IACF,EAAE,EAAE,YAAY,CAAC;QACb,GAAG,MAAM;QACT,cAAc,EAAE,KAAK;QACrB,OAAO,EAAE,MAAM;QACf,SAAS,EAAE,KAAK;QAChB,eAAe,EAAE,KAAK;KACzB,CAAC;IACF,GAAG,EAAE,YAAY,CAAC;QACd,GAAG,MAAM;QACT,cAAc,EAAE,IAAI;QACpB,OAAO,EAAE,UAAU;QACnB,SAAS,EAAE,KAAK;QAChB,eAAe,EAAE,IAAI;KACxB,CAAC;IACF,SAAS,EAAE,YAAY,CAAC;QACpB,GAAG,MAAM;QACT,SAAS,EAAE,IAAI;QACf,cAAc,EAAE,KAAK;QACrB,OAAO,EAAE,UAAU;QACnB,SAAS,EAAE,IAAI;QACf,eAAe,EAAE,IAAI;KACxB,CAAC;IACF,UAAU,EAAE,YAAY,CAAC;QACrB,GAAG,MAAM;QACT,cAAc,EAAE,IAAI;QACpB,OAAO,EAAE,UAAU;QACnB,SAAS,EAAE,KAAK;QAChB,eAAe,EAAE,IAAI;KACxB,CAAC;IACF,GAAG,EAAE,YAAY,CAAC;QACd,GAAG,MAAM;QACT,cAAc,EAAE,KAAK;QACrB,OAAO,EAAE,UAAU;QACnB,SAAS,EAAE,KAAK;QAChB,eAAe,EAAE,KAAK;KACzB,CAAC;CACL,CAAC,CAAC;AAEH;;;;;;;;;GASG;AACH,MAAM,UAAU,mBAAmB,CAAC,OAAoB;IACpD,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC;AAC3B,CAAC;AAED,2FAA2F;AAC3F,MAAM,CAAC,MAAM,sBAAsB,GAAwB,IAAI,GAAG,CAAC;IAC/D,UAAU;IACV,YAAY;IACZ,QAAQ;IACR,WAAW;IACX,UAAU;IACV,SAAS;IACT,SAAS;IACT,kBAAkB;CACrB,CAAC,CAAC;AAEH,wFAAwF;AACxF,MAAM,CAAC,MAAM,yBAAyB,GAAwB,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC;AAEhH;;;;GAIG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;IAChC,qGAAqG;IACrG,IAAI,EAAE,OAAO;IACb,qFAAqF;IACrF,OAAO,EAAE,UAAU;CACtB,CAAC,CAAC;AAEH,gGAAgG;AAChG,MAAM,CAAC,MAAM,qBAAqB,GAAsB,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;AAEjG,0EAA0E;AAC1E,MAAM,CAAC,MAAM,qBAAqB,GAAsB,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;AAE/F,8FAA8F;AAC9F,MAAM,CAAC,MAAM,eAAe,GAAG,UAAU,CAAC;AAE1C,wFAAwF;AACxF,MAAM,CAAC,MAAM,cAAc,GAAG,SAAS,CAAC;AAExC,kFAAkF;AAClF,MAAM,CAAC,MAAM,aAAa,GAAG,QAAQ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"exporter.d.ts","sourceRoot":"","sources":["../../../../src/formats/json/exporter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAUH,OAAO,EAA4B,KAAK,kBAAkB,EAAE,KAAK,aAAa,EAAiB,MAAM,gBAAgB,CAAC;AACtH,OAAO,EAMH,KAAK,WAAW,EAInB,MAAM,cAAc,CAAC;AAEtB,wDAAwD;AACxD,MAAM,WAAW,iBAAiB;IAC9B,0FAA0F;IAC1F,OAAO,CAAC,EAAE,WAAW,GAAG,SAAS,CAAC;IAClC,qEAAqE;IACrE,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,wGAAwG;IACxG,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,mFAAmF;IACnF,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,uGAAuG;IACvG,UAAU,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACjC,oGAAoG;IACpG,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,kGAAkG;IAClG,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,2GAA2G;IAC3G,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAClC;AAED;;;;GAIG;AACH,eAAO,MAAM,SAAS;IAClB,iEAAiE;;IAEjE,0GAA0G;;IAE1G,2DAA2D;;IAE3D,2FAA2F;;IAE3F,qEAAqE;;IAErE,qHAAqH;;IAErH,8FAA8F;;IAE9F,uHAAuH;;IAEvH,mHAAmH;;IAEnH,iEAAiE;;IAEjE,gFAAgF;;IAEhF,0FAA0F;;IAE1F,mFAAmF;;IAEnF,wFAAwF;;IAExF,6EAA6E;;EAE/E,CAAC;AAy8CH;;;GAGG;AACH,eAAO,MAAM,YAAY,EAAE,aAAa,CAAC,iBAAiB,CAiCxD,CAAC;AAEH;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,WAAW,GAAG,kBAAkB,CAEzE"}
1
+ {"version":3,"file":"exporter.d.ts","sourceRoot":"","sources":["../../../../src/formats/json/exporter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAUH,OAAO,EAA4B,KAAK,kBAAkB,EAAE,KAAK,aAAa,EAAiB,MAAM,gBAAgB,CAAC;AACtH,OAAO,EAMH,KAAK,WAAW,EAInB,MAAM,cAAc,CAAC;AAEtB,wDAAwD;AACxD,MAAM,WAAW,iBAAiB;IAC9B,0FAA0F;IAC1F,OAAO,CAAC,EAAE,WAAW,GAAG,SAAS,CAAC;IAClC,qEAAqE;IACrE,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,wGAAwG;IACxG,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,mFAAmF;IACnF,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,uGAAuG;IACvG,UAAU,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACjC,oGAAoG;IACpG,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,kGAAkG;IAClG,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,2GAA2G;IAC3G,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAClC;AAED;;;;GAIG;AACH,eAAO,MAAM,SAAS;IAClB,iEAAiE;;IAEjE,0GAA0G;;IAE1G,2DAA2D;;IAE3D,2FAA2F;;IAE3F,qEAAqE;;IAErE,qHAAqH;;IAErH,8FAA8F;;IAE9F,uHAAuH;;IAEvH,mHAAmH;;IAEnH,iEAAiE;;IAEjE,gFAAgF;;IAEhF,0FAA0F;;IAE1F,mFAAmF;;IAEnF,wFAAwF;;IAExF,6EAA6E;;EAE/E,CAAC;AA89CH;;;GAGG;AACH,eAAO,MAAM,YAAY,EAAE,aAAa,CAAC,iBAAiB,CAiCxD,CAAC;AAEH;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,WAAW,GAAG,kBAAkB,CAEzE"}
@@ -181,11 +181,25 @@ function numberText(value, f32, nonfinite) {
181
181
  nonfinite.count++;
182
182
  return "null";
183
183
  }
184
- if (f32) {
185
- return formatF32(value);
186
- }
187
184
  // -0 is a JSON number too ("-0"); JSON.parse reads it back as -0
188
- return formatF64(value);
185
+ return exponentIfUnsafe(f32 ? formatF32(value) : formatF64(value));
186
+ }
187
+ /**
188
+ * An integer text beyond 2^53 in exponent form (`100000000000000000000` -> `1e+20`, the same
189
+ * digits): the importer reads an integer literal that large as its exact digits (a string), so
190
+ * a number must not be written as one.
191
+ * @param text - the shortest decimal text of a finite number
192
+ * @returns the text, or its exponent form for an integer literal of 16 or more digits
193
+ */
194
+ function exponentIfUnsafe(text) {
195
+ const match = /^(-?)([0-9]{16,})$/.exec(text);
196
+ if (match === null || Number.isSafeInteger(Number(text))) {
197
+ return text;
198
+ }
199
+ const [, sign, digits] = match;
200
+ const mantissa = digits.replace(/0+$/, "");
201
+ const fraction = mantissa.length > 1 ? `.${mantissa.slice(1)}` : "";
202
+ return `${sign}${mantissa[0]}${fraction}e+${digits.length - 1}`;
189
203
  }
190
204
  /**
191
205
  * The JSON text of any cell value: a number per its dtype, a boolean, a string, an array (a
@@ -215,6 +229,8 @@ function valueText(value, f32, nonfinite) {
215
229
  const items = Array.from(value, (item) => valueText(item, f32, nonfinite));
216
230
  return `[${items.join(",")}]`;
217
231
  }
232
+ // ponytail: numbers nested in a json object are written by JSON.stringify, so an integral one
233
+ // beyond 2^53 re-imports as its digit text; walk the object here if that ever matters
218
234
  const text = JSON.stringify(value);
219
235
  return text === undefined ? "null" : text;
220
236
  }
@@ -235,7 +251,7 @@ function cellText(column, row, ids, nonfinite) {
235
251
  case "u32":
236
252
  if (column.meta.refersTo === "node" && column.meta.components === 1) {
237
253
  const index = column.data[row];
238
- return index === INVALID_INDEX ? "null" : JSON.stringify(ids.idOf(index));
254
+ return index === INVALID_INDEX ? "null" : idText(ids.idOf(index));
239
255
  }
240
256
  return valueText(column.value(row), false, nonfinite);
241
257
  case "f32":
@@ -644,7 +660,8 @@ function planWeights(ctx, edges) {
644
660
  if (!weights.isExplicit(e)) {
645
661
  return null;
646
662
  }
647
- return Number.isFinite(weights.value(e)) ? weights.text(e) : "null";
663
+ const text = Number.isFinite(weights.value(e)) ? weights.text(e) : "null";
664
+ return text === null ? null : exponentIfUnsafe(text);
648
665
  };
649
666
  }
650
667
  /**
@@ -849,7 +866,10 @@ function anySet(plans, row, slots) {
849
866
  * @returns the text
850
867
  */
851
868
  function idText(id) {
852
- return typeof id === "number" && Object.is(id, -0) ? "0" : JSON.stringify(id);
869
+ if (typeof id === "number") {
870
+ return Object.is(id, -0) ? "0" : exponentIfUnsafe(String(id));
871
+ }
872
+ return JSON.stringify(id);
853
873
  }
854
874
  /**
855
875
  * The edge id text of an edge, or null when none is set.
@@ -1 +1 @@
1
- {"version":3,"file":"exporter.js","sourceRoot":"","sources":["../../../../src/formats/json/exporter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"exporter.js","sourceRoot":"","sources":["../../../../src/formats/json/exporter.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,13 @@
5
5
  * index endpoints), JSON Graph Format v2 (nodes keyed by id, per-edge `directed`, hyperedges),
6
6
  * Cytoscape.js elements (`data.id` / `data.source` / `data.target`, `position`, `classes`,
7
7
  * `data.parent`), graphology serialisation (`key` / `attributes`, `undirected` edges, `options`)
8
- * and vis.js (`from` / `to`) -- and pushes it scalar by scalar into the sink.
8
+ * vis.js (`from` / `to`), and NetworkX adjacency_data (`nodes` + `adjacency`) and tree_data (nested
9
+ * `id` / `children`) -- and pushes it scalar by scalar into the sink.
10
+ *
11
+ * Python's json module writes the bare tokens NaN, Infinity and -Infinity, which strict JSON
12
+ * refuses; they are read as the JavaScript numbers with one warning. An integer literal beyond
13
+ * 2^53 is read as its exact digits (a string, the canonical id rule of the text formats) rather
14
+ * than a rounded float, again with one warning.
9
15
  *
10
16
  * JSON awaits the whole text (design section 8.4: `JSON.parse` on 100 MB is fine; a streaming
11
17
  * tokeniser is a later improvement). The parsed records are iterated in place; the importer never
@@ -25,12 +31,15 @@
25
31
  * rejects.
26
32
  */
27
33
  import { type GraphImporter } from "../../types.js";
28
- import { type JsonDialect } from "./dialect.js";
34
+ import { type JsonImportDialect } from "./dialect.js";
29
35
  /** The format-specific options of the JSON importer. */
30
36
  export interface JsonImportOptions {
31
37
  /** The dialect to read; "auto" (default) sniffs the parsed document. */
32
- dialect?: JsonDialect | "auto" | undefined;
33
- /** node-link / d3 / vis: the node key holding the id; auto: "id" when any node has it, else "name". */
38
+ dialect?: JsonImportDialect | "auto" | undefined;
39
+ /**
40
+ * node-link / d3 / vis / adjacency / tree: the node key holding the id; auto: "id" (node-link /
41
+ * d3: "id" when any node has it, else "name").
42
+ */
34
43
  nodeIdKey?: string | undefined;
35
44
  /** node-link / d3: the top-level key holding the edges; auto: "edges" when present, else "links". */
36
45
  edgesKey?: string | undefined;
@@ -108,6 +117,10 @@ export declare const JSON_ISSUE: Readonly<{
108
117
  INVALID_ENCODING: "E_INVALID_ENCODING";
109
118
  /** Bytes that are not UTF-8 and declare no encoding were read as windows-1252. */
110
119
  ENCODING_FALLBACK: "W_ENCODING_FALLBACK";
120
+ /** The document uses the non-standard tokens NaN / Infinity / -Infinity (Python's json writes them); read as numbers. */
121
+ NONSTANDARD_NUMBER: "W_JSON_NONSTANDARD_NUMBER";
122
+ /** Integer literals beyond 2^53 were read as their exact digits (strings), not as rounded numbers. */
123
+ BIG_INTEGER: "W_JSON_BIG_INTEGER";
111
124
  /** A declared encoding the platform cannot decode was ignored. */
112
125
  UNKNOWN_ENCODING: "W_UNKNOWN_ENCODING";
113
126
  }>;