@graphty/graph-io 0.3.9 → 0.3.11

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 (125) hide show
  1. package/README.md +29 -5
  2. package/dist/chunks/{escape-BjmIaFFo.js → escape-D1f9-cwf.js} +4 -4
  3. package/dist/chunks/{escape-BjmIaFFo.js.map → escape-D1f9-cwf.js.map} +1 -1
  4. package/dist/chunks/{importer-BddBW3sf.js → importer-9PxhqH4v.js} +336 -92
  5. package/dist/chunks/importer-9PxhqH4v.js.map +1 -0
  6. package/dist/chunks/{importer-DfI8POXb.js → importer-B8lsjFWx.js} +6 -5
  7. package/dist/chunks/importer-B8lsjFWx.js.map +1 -0
  8. package/dist/chunks/{importer-BtHFICnf.js → importer-C3HcYWAn.js} +5 -3
  9. package/dist/chunks/importer-C3HcYWAn.js.map +1 -0
  10. package/dist/chunks/{importer-BOxwmef_.js → importer-C7mnGdr_.js} +125 -8
  11. package/dist/chunks/importer-C7mnGdr_.js.map +1 -0
  12. package/dist/chunks/{records-BKSMowhR.js → records-IHsCfv7s.js} +20 -7
  13. package/dist/chunks/records-IHsCfv7s.js.map +1 -0
  14. package/dist/chunks/{writer-BdMak4_J.js → writer-BtWpUaiH.js} +4 -4
  15. package/dist/chunks/{writer-BdMak4_J.js.map → writer-BtWpUaiH.js.map} +1 -1
  16. package/dist/csv.js +239 -18
  17. package/dist/csv.js.map +1 -1
  18. package/dist/dot.js +1 -1
  19. package/dist/gexf.js +72 -33
  20. package/dist/gexf.js.map +1 -1
  21. package/dist/gml.js +44 -23
  22. package/dist/gml.js.map +1 -1
  23. package/dist/graph-io.js +11 -11
  24. package/dist/graphml.js +1 -1
  25. package/dist/json.js +1 -1
  26. package/dist/neo4j.js +5 -4
  27. package/dist/neo4j.js.map +1 -1
  28. package/dist/pajek.js +1 -1
  29. package/dist/src/common/export.js +1 -1
  30. package/dist/src/common/export.js.map +1 -1
  31. package/dist/src/formats/csv/exporter.d.ts +15 -4
  32. package/dist/src/formats/csv/exporter.d.ts.map +1 -1
  33. package/dist/src/formats/csv/exporter.js +125 -6
  34. package/dist/src/formats/csv/exporter.js.map +1 -1
  35. package/dist/src/formats/csv/importer.d.ts +36 -4
  36. package/dist/src/formats/csv/importer.d.ts.map +1 -1
  37. package/dist/src/formats/csv/importer.js +169 -8
  38. package/dist/src/formats/csv/importer.js.map +1 -1
  39. package/dist/src/formats/csv/records.d.ts +14 -1
  40. package/dist/src/formats/csv/records.d.ts.map +1 -1
  41. package/dist/src/formats/csv/records.js +28 -7
  42. package/dist/src/formats/csv/records.js.map +1 -1
  43. package/dist/src/formats/dot/exporter.d.ts.map +1 -1
  44. package/dist/src/formats/dot/exporter.js +2 -0
  45. package/dist/src/formats/dot/exporter.js.map +1 -1
  46. package/dist/src/formats/gexf/exporter.d.ts.map +1 -1
  47. package/dist/src/formats/gexf/exporter.js +36 -10
  48. package/dist/src/formats/gexf/exporter.js.map +1 -1
  49. package/dist/src/formats/gexf/importer.d.ts +9 -4
  50. package/dist/src/formats/gexf/importer.d.ts.map +1 -1
  51. package/dist/src/formats/gexf/importer.js +44 -21
  52. package/dist/src/formats/gexf/importer.js.map +1 -1
  53. package/dist/src/formats/gexf/index.d.ts +1 -1
  54. package/dist/src/formats/gexf/index.d.ts.map +1 -1
  55. package/dist/src/formats/gexf/index.js +1 -1
  56. package/dist/src/formats/gexf/index.js.map +1 -1
  57. package/dist/src/formats/gexf/schema.d.ts +2 -0
  58. package/dist/src/formats/gexf/schema.d.ts.map +1 -1
  59. package/dist/src/formats/gexf/schema.js +18 -0
  60. package/dist/src/formats/gexf/schema.js.map +1 -1
  61. package/dist/src/formats/gml/exporter.d.ts.map +1 -1
  62. package/dist/src/formats/gml/exporter.js +1 -0
  63. package/dist/src/formats/gml/exporter.js.map +1 -1
  64. package/dist/src/formats/gml/importer.d.ts +7 -4
  65. package/dist/src/formats/gml/importer.d.ts.map +1 -1
  66. package/dist/src/formats/gml/importer.js +32 -19
  67. package/dist/src/formats/gml/importer.js.map +1 -1
  68. package/dist/src/formats/gml/index.d.ts +3 -1
  69. package/dist/src/formats/gml/index.d.ts.map +1 -1
  70. package/dist/src/formats/gml/index.js +4 -2
  71. package/dist/src/formats/gml/index.js.map +1 -1
  72. package/dist/src/formats/graphml/constants.d.ts +2 -0
  73. package/dist/src/formats/graphml/constants.d.ts.map +1 -1
  74. package/dist/src/formats/graphml/constants.js +2 -0
  75. package/dist/src/formats/graphml/constants.js.map +1 -1
  76. package/dist/src/formats/graphml/exporter.d.ts.map +1 -1
  77. package/dist/src/formats/graphml/exporter.js +14 -2
  78. package/dist/src/formats/graphml/exporter.js.map +1 -1
  79. package/dist/src/formats/graphml/importer.d.ts +2 -1
  80. package/dist/src/formats/graphml/importer.d.ts.map +1 -1
  81. package/dist/src/formats/graphml/importer.js +91 -27
  82. package/dist/src/formats/graphml/importer.js.map +1 -1
  83. package/dist/src/formats/graphml/yfiles.d.ts +62 -0
  84. package/dist/src/formats/graphml/yfiles.d.ts.map +1 -0
  85. package/dist/src/formats/graphml/yfiles.js +269 -0
  86. package/dist/src/formats/graphml/yfiles.js.map +1 -0
  87. package/dist/src/formats/json/exporter.d.ts.map +1 -1
  88. package/dist/src/formats/json/exporter.js +9 -1
  89. package/dist/src/formats/json/exporter.js.map +1 -1
  90. package/dist/src/formats/json/importer.d.ts +14 -0
  91. package/dist/src/formats/json/importer.d.ts.map +1 -1
  92. package/dist/src/formats/json/importer.js +165 -4
  93. package/dist/src/formats/json/importer.js.map +1 -1
  94. package/dist/src/formats/neo4j/exporter.d.ts.map +1 -1
  95. package/dist/src/formats/neo4j/exporter.js +1 -0
  96. package/dist/src/formats/neo4j/exporter.js.map +1 -1
  97. package/dist/src/formats/pajek/exporter.d.ts.map +1 -1
  98. package/dist/src/formats/pajek/exporter.js +3 -2
  99. package/dist/src/formats/pajek/exporter.js.map +1 -1
  100. package/package.json +2 -2
  101. package/src/common/export.ts +1 -1
  102. package/src/formats/csv/exporter.ts +140 -10
  103. package/src/formats/csv/importer.ts +207 -18
  104. package/src/formats/csv/records.ts +41 -6
  105. package/src/formats/dot/exporter.ts +2 -0
  106. package/src/formats/gexf/exporter.ts +40 -11
  107. package/src/formats/gexf/importer.ts +47 -25
  108. package/src/formats/gexf/index.ts +1 -1
  109. package/src/formats/gexf/schema.ts +18 -0
  110. package/src/formats/gml/exporter.ts +1 -0
  111. package/src/formats/gml/importer.ts +47 -24
  112. package/src/formats/gml/index.ts +4 -1
  113. package/src/formats/graphml/constants.ts +2 -0
  114. package/src/formats/graphml/exporter.ts +21 -2
  115. package/src/formats/graphml/importer.ts +99 -28
  116. package/src/formats/graphml/yfiles.ts +292 -0
  117. package/src/formats/json/exporter.ts +9 -1
  118. package/src/formats/json/importer.ts +202 -4
  119. package/src/formats/neo4j/exporter.ts +1 -0
  120. package/src/formats/pajek/exporter.ts +3 -1
  121. package/dist/chunks/importer-BOxwmef_.js.map +0 -1
  122. package/dist/chunks/importer-BddBW3sf.js.map +0 -1
  123. package/dist/chunks/importer-BtHFICnf.js.map +0 -1
  124. package/dist/chunks/importer-DfI8POXb.js.map +0 -1
  125. package/dist/chunks/records-BKSMowhR.js.map +0 -1
@@ -4,7 +4,7 @@
4
4
  */
5
5
  import { COLUMN_RENAMED_CODE, DIRECTION_FORCED_CODE, DIRECTION_REFUSED_CODE, ENCODING_FALLBACK_CODE, ID_MERGED_CODE, INVALID_ENCODING_CODE, INVALID_UTF8_CODE, MIXED_DIRECTION_CODE, OPTION_IGNORED_CODE, SINK_OPTION_CODE, SYNTAX_CODE, UNKNOWN_ENCODING_CODE, } from "../../common/codes.js";
6
6
  import { GRAPHICS_CONFLICT_CODE, GRAPHICS_OVERRIDDEN_CODE, INVALID_KEY_CODE, JSON_ARRAY_CODE, KEY_MANGLED_CODE, NESTED_ARRAY_CODE, POSITION_COMPONENTS_CODE, RECORD_BOOLEAN_CODE, RECORD_NULL_CODE, RECORD_NUMBER_TYPE_CODE, RESERVED_KEY_CODE, } from "./exporter.js";
7
- import { DUPLICATE_NODE_CODE, ELEMENT_TYPE_CODE, FLAG_TYPE_CODE, FLAG_VALUE_CODE, ID_DROPPED_CODE, ID_TYPE_CODE, MISSING_ENDPOINT_CODE, MISSING_ID_CODE, MISSING_LABEL_CODE, NO_GRAPH_CODE, PRECISION_CODE, REPEATED_KEY_CODE, ROLE_TAKEN_CODE, SECOND_GRAPH_CODE, UNKNOWN_ENTITY_CODE, } from "./importer.js";
7
+ import { DUPLICATE_NODE_CODE, ELEMENT_TYPE_CODE, FLAG_TYPE_CODE, FLAG_VALUE_CODE, ID_DROPPED_CODE, ID_TYPE_CODE, MISSING_ENDPOINT_CODE, MISSING_ID_CODE, MISSING_LABEL_CODE, NO_GRAPH_CODE, PRECISION_CODE, REPEATED_KEY_CODE, ROLE_TAKEN_CODE, SECOND_GRAPH_CODE, STRING_ID_CODE, UNKNOWN_ENTITY_CODE, } from "./importer.js";
8
8
  export { gmlExporter } from "./exporter.js";
9
9
  export { gmlImporter } from "./importer.js";
10
10
  /**
@@ -33,8 +33,10 @@ export const GML_ISSUE = Object.freeze({
33
33
  MISSING_LABEL: MISSING_LABEL_CODE,
34
34
  /** An edge without `source` or `target`. */
35
35
  MISSING_ENDPOINT: MISSING_ENDPOINT_CODE,
36
- /** A node id, source or target that is not an integer. */
36
+ /** A node id, source or target that is neither an integer nor a string. */
37
37
  ID_TYPE: ID_TYPE_CODE,
38
+ /** String node ids, sources or targets (outside the spec's integers), kept under the ids rule; warned once. */
39
+ STRING_ID: STRING_ID_CODE,
38
40
  /** A node id declared twice (later keys overwrite). */
39
41
  DUPLICATE_NODE: DUPLICATE_NODE_CODE,
40
42
  /** A structural key repeated in one element. */
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/formats/gml/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/formats/gml/index.ts"],"names":[],"mappings":"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"}
@@ -173,6 +173,8 @@ export declare const GRAPHML_LOSS: Readonly<{
173
173
  ID_TEXT_TYPE: "W_ID_TEXT_TYPE";
174
174
  /** A numeric edge id column reads back as string. */
175
175
  EDGE_ID_TEXT: "W_GRAPHML_EDGE_ID_TEXT";
176
+ /** A `yfiles.*` graphics column that no longer matches its yFiles tree: only the tree is written. */
177
+ YFILES_GRAPHICS_STALE: "W_GRAPHML_YFILES_GRAPHICS_STALE";
176
178
  /** A yfiles json value that is not a serialisable tree: export() will throw E_COLUMN_TYPE. */
177
179
  YFILES_TREE: "E_GRAPHML_YFILES_TREE";
178
180
  }>;
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../src/formats/graphml/constants.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../src/formats/graphml/constants.ts"],"names":[],"mappings":"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"}
@@ -169,6 +169,8 @@ export const GRAPHML_LOSS = Object.freeze({
169
169
  ID_TEXT_TYPE: ID_TEXT_TYPE_CODE,
170
170
  /** A numeric edge id column reads back as string. */
171
171
  EDGE_ID_TEXT: "W_GRAPHML_EDGE_ID_TEXT",
172
+ /** A `yfiles.*` graphics column that no longer matches its yFiles tree: only the tree is written. */
173
+ YFILES_GRAPHICS_STALE: "W_GRAPHML_YFILES_GRAPHICS_STALE",
172
174
  /** A yfiles json value that is not a serialisable tree: export() will throw E_COLUMN_TYPE. */
173
175
  YFILES_TREE: "E_GRAPHML_YFILES_TREE",
174
176
  });
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../src/formats/graphml/constants.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../src/formats/graphml/constants.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"exporter.d.ts","sourceRoot":"","sources":["../../../../src/formats/graphml/exporter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAsBH,OAAO,EAAqD,KAAK,aAAa,EAAiB,MAAM,gBAAgB,CAAC;AAqBtH,2DAA2D;AAC3D,MAAM,WAAW,oBAAoB;IACjC,oGAAoG;IACpG,MAAM,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC7B;;;;OAIG;IACH,WAAW,CAAC,EAAE,UAAU,GAAG,YAAY,GAAG,SAAS,CAAC;CACvD;AAw0CD;;GAEG;AACH,eAAO,MAAM,eAAe,EAAE,aAAa,CAAC,oBAAoB,CAiC9D,CAAC"}
1
+ {"version":3,"file":"exporter.d.ts","sourceRoot":"","sources":["../../../../src/formats/graphml/exporter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAsBH,OAAO,EAAqD,KAAK,aAAa,EAAiB,MAAM,gBAAgB,CAAC;AAsBtH,2DAA2D;AAC3D,MAAM,WAAW,oBAAoB;IACjC,oGAAoG;IACpG,MAAM,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC7B;;;;OAIG;IACH,WAAW,CAAC,EAAE,UAAU,GAAG,YAAY,GAAG,SAAS,CAAC;CACvD;AA01CD;;GAEG;AACH,eAAO,MAAM,eAAe,EAAE,aAAa,CAAC,oBAAoB,CAiC9D,CAAC"}
@@ -28,6 +28,7 @@ import { encodeChunks, joinText } from "../../common/writer.js";
28
28
  import { xmlIllegalTextNotes } from "../../common/xml.js";
29
29
  import { EDGE_ID_COLUMN, FORMAT, GRAPHML_LOSS, GRAPHML_NAMESPACE, LABEL_COLUMN, META_KEY, ORIGINAL_ID_ATTRIBUTE, PARENT_COLUMN, RESERVED_EDGE_NAMES, RESERVED_NODE_NAMES, SCHEMA_LOCATION, SOURCE_PORT_COLUMN, TARGET_PORT_COLUMN, XSI_NAMESPACE, YFILES_NAMESPACE, } from "./constants.js";
30
30
  import { treeProblem, writeXmlTree } from "./tree.js";
31
+ import { isGraphicsColumn, staleGraphicsRows } from "./yfiles.js";
31
32
  /** What GraphML keeps as declared (research note 07 section 9). */
32
33
  const CAPABILITIES = capabilities({
33
34
  mixedDirection: true,
@@ -68,6 +69,7 @@ const DROPPED_ROLES = new Set([
68
69
  "timestamps",
69
70
  "spells",
70
71
  "open",
72
+ "spellsOpen",
71
73
  ]);
72
74
  /**
73
75
  * The roles GraphML has a slot for (checkCapabilities() reports every other role as lost): the
@@ -157,11 +159,14 @@ function graphmlMetaOf(snapshot) {
157
159
  * @returns the plan
158
160
  */
159
161
  function planExport(snapshot, options, format) {
160
- // the generic json note is replaced by planTable()'s (yfiles trees are kept, other json is text)
162
+ // the generic json note is replaced by planTable()'s (yfiles trees are kept, other json is
163
+ // text); columns mapped from a yfiles tree are never written: planTable() notes the ones
164
+ // that no longer match their tree, the rest lose nothing
165
+ const graphics = new Set([...snapshot.nodes, ...snapshot.edges].filter((c) => isGraphicsColumn(c.meta)).map((c) => c.meta.name));
161
166
  const notes = checkCapabilities(snapshot, CAPABILITIES, options, {
162
167
  roles: SLOT_ROLES,
163
168
  roleNames: ROLE_NAMES,
164
- }).filter((n) => n.code !== LOSS.JSON);
169
+ }).filter((n) => n.code !== LOSS.JSON && (n.column === null || !graphics.has(n.column)));
165
170
  const note = (code, message, column = null, count = null) => {
166
171
  notes.push(Object.freeze({ code, message, column, count }));
167
172
  };
@@ -449,6 +454,13 @@ function planTable(table, domain, notes, note) {
449
454
  for (const column of columns) {
450
455
  const { meta } = column;
451
456
  const { role, name } = meta;
457
+ if (isGraphicsColumn(meta)) {
458
+ const stale = domain === "graph" ? 0 : staleGraphicsRows(column, columns, domain);
459
+ if (stale > 0) {
460
+ note(GRAPHML_LOSS.YFILES_GRAPHICS_STALE, `${stale} value(s) of ${domain} column "${name}" differ from the yFiles tree it was read from; only the tree is written, so they are lost`, name, stale);
461
+ }
462
+ continue;
463
+ }
452
464
  if (role === "parents") {
453
465
  note(GRAPHML_LOSS.PARENTS_DROPPED, `${domain} column "${name}" (parents) cannot be written: nested graphs hold one parent per node`, name, column.length - column.nullCount);
454
466
  continue;
@@ -1 +1 @@
1
- {"version":3,"file":"exporter.js","sourceRoot":"","sources":["../../../../src/formats/graphml/exporter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"exporter.js","sourceRoot":"","sources":["../../../../src/formats/graphml/exporter.ts"],"names":[],"mappings":"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"}
@@ -9,7 +9,8 @@
9
9
  * `sourceport` / `targetport` edge attributes are kept as role columns; hyperedges follow the
10
10
  * `hyperedges` option (refuse, skip with a report entry, star, clique); yFiles `yfiles.type` keys
11
11
  * become `json` columns holding the nested XML as a tree (origin.namespace "yfiles"), reported as
12
- * a loss note because the structure, not the bytes, is preserved.
12
+ * a loss note because the structure, not the bytes, is preserved; a `y:ShapeNode` or
13
+ * `y:PolyLineEdge` in such a tree is also read into typed `yfiles.*` columns (yfiles.ts).
13
14
  *
14
15
  * Ids are coerced with the common rule (`ids: "canonical"` by default, design section 4.1); the
15
16
  * edge attribute whose `attr.name` is `weightFrom` ("weight" by default) is THE weight and is
@@ -1 +1 @@
1
- {"version":3,"file":"importer.d.ts","sourceRoot":"","sources":["../../../../src/formats/graphml/importer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AA4CH,OAAO,EAA4B,KAAK,aAAa,EAAuC,MAAM,gBAAgB,CAAC;AA8BnH,2DAA2D;AAC3D,MAAM,WAAW,oBAAoB;IACjC;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;CACxC;AAi7DD,iDAAiD;AACjD,eAAO,MAAM,eAAe,EAAE,aAAa,CAAC,oBAAoB,CAM9D,CAAC"}
1
+ {"version":3,"file":"importer.d.ts","sourceRoot":"","sources":["../../../../src/formats/graphml/importer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AA4CH,OAAO,EAA4B,KAAK,aAAa,EAAuC,MAAM,gBAAgB,CAAC;AAqCnH,2DAA2D;AAC3D,MAAM,WAAW,oBAAoB;IACjC;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;CACxC;AAg/DD,iDAAiD;AACjD,eAAO,MAAM,eAAe,EAAE,aAAa,CAAC,oBAAoB,CAM9D,CAAC"}
@@ -9,7 +9,8 @@
9
9
  * `sourceport` / `targetport` edge attributes are kept as role columns; hyperedges follow the
10
10
  * `hyperedges` option (refuse, skip with a report entry, star, clique); yFiles `yfiles.type` keys
11
11
  * become `json` columns holding the nested XML as a tree (origin.namespace "yfiles"), reported as
12
- * a loss note because the structure, not the bytes, is preserved.
12
+ * a loss note because the structure, not the bytes, is preserved; a `y:ShapeNode` or
13
+ * `y:PolyLineEdge` in such a tree is also read into typed `yfiles.*` columns (yfiles.ts).
13
14
  *
14
15
  * Ids are coerced with the common rule (`ids: "canonical"` by default, design section 4.1); the
15
16
  * edge attribute whose `attr.name` is `weightFrom` ("weight" by default) is THE weight and is
@@ -27,10 +28,18 @@ import { isWeightField, parseWeightText } from "../../common/weights.js";
27
28
  import { isWhitespace, localName, tokenizeXml, xmlDeclaredEncoding, XmlSyntaxError, } from "../../common/xml.js";
28
29
  import { EDGE_ID_COLUMN, EXTENSIONS, FORMAT, GRAPHML_ISSUE, GRAPHML_LOSS, GRAPHML_NAMESPACE, HYPEREDGE_HUB_COLUMN, LABEL_COLUMN, META_KEY, MIME_TYPES, ORIGINAL_ID_ATTRIBUTE, ORIGINAL_ID_COLUMN, PARENT_COLUMN, RESERVED_EDGE_NAMES, RESERVED_NODE_NAMES, SOURCE_PORT_COLUMN, TARGET_PORT_COLUMN, XSI_NAMESPACE, } from "./constants.js";
29
30
  import { XmlTreeBuilder } from "./tree.js";
31
+ import { graphicsDecl, graphicsValues } from "./yfiles.js";
30
32
  /** The XML attributes the importer reads on `<graph>`, `<node>` and `<edge>`; any other is reported. */
31
33
  const GRAPH_ATTRIBUTES = new Set(["id", "edgedefault", "parse.nodes", "parse.edges"]);
32
34
  const NODE_ATTRIBUTES = new Set(["id"]);
33
- const EDGE_ATTRIBUTES = new Set(["id", "source", "target", "directed", "sourceport", "targetport"]);
35
+ const EDGE_ATTRIBUTES = new Set([
36
+ "id",
37
+ "source",
38
+ "target",
39
+ "directed",
40
+ "sourceport",
41
+ "targetport",
42
+ ]);
34
43
  /** The per-format defaults of design section 8.4: text-cell ids, undirected when edgedefault is missing, weight key. */
35
44
  const FORMAT_DEFAULTS = { ids: "canonical", defaultDirected: false, weightFrom: "weight" };
36
45
  /** Bytes inspected by sniff(). */
@@ -118,6 +127,7 @@ class GraphmlReader {
118
127
  */
119
128
  constructor(sink, report, options, yfilesMode) {
120
129
  this.ctx = [];
130
+ /** Keys by id; one id may be declared once per domain (igraph writes `name` for graph and node). */
121
131
  this.keys = new Map();
122
132
  this.graphs = [];
123
133
  this.nodes = [];
@@ -147,6 +157,8 @@ class GraphmlReader {
147
157
  this.namespaces = {};
148
158
  this.weightOrigin = null;
149
159
  this.yfilesLossNoted = false;
160
+ /** The mapped yFiles graphics columns declared so far, by domain and field. */
161
+ this.graphicsColumns = new Map();
150
162
  this.hyperedgeCount = 0;
151
163
  this.edgeIdHandle = INVALID_INDEX;
152
164
  this.sourcePortHandle = INVALID_INDEX;
@@ -655,8 +667,9 @@ class GraphmlReader {
655
667
  }
656
668
  this.pendingKey = {
657
669
  id,
658
- attrName: attrs.get("attr.name") ?? null,
659
- attrType: attrs.get("attr.type") ?? null,
670
+ // `name` / `type` without the `attr.` prefix are written by some tools; the spec's spelling wins
671
+ attrName: attrs.get("attr.name") ?? attrs.get("name") ?? null,
672
+ attrType: attrs.get("attr.type") ?? attrs.get("type") ?? null,
660
673
  yfilesType: attrs.get("yfiles.type") ?? null,
661
674
  domains,
662
675
  line,
@@ -678,8 +691,9 @@ class GraphmlReader {
678
691
  this.report.error("validation-error", GRAPHML_ISSUE.KEY_MISSING_ID, "<key> without an id", where);
679
692
  return;
680
693
  }
681
- if (this.keys.has(key.id)) {
682
- this.report.error("validation-error", GRAPHML_ISSUE.DUPLICATE_KEY, `key "${key.id}" is declared twice`, where);
694
+ const declared = this.keys.get(key.id) ?? [];
695
+ if (declared.some((entry) => entry.domains.some((domain) => key.domains.includes(domain)))) {
696
+ this.report.error("validation-error", GRAPHML_ISSUE.DUPLICATE_KEY, `key "${key.id}" is declared twice for the same kind of element`, where);
683
697
  return;
684
698
  }
685
699
  const yfiles = key.yfilesType !== null;
@@ -726,18 +740,21 @@ class GraphmlReader {
726
740
  this.report.recordError(err, where);
727
741
  }
728
742
  }
729
- this.keys.set(key.id, {
730
- id: key.id,
731
- name,
732
- node,
733
- edge,
734
- graph,
735
- weight,
736
- originalId,
737
- yfiles,
738
- skipped,
739
- domains: key.domains,
740
- });
743
+ this.keys.set(key.id, [
744
+ ...declared,
745
+ {
746
+ id: key.id,
747
+ name,
748
+ node,
749
+ edge,
750
+ graph,
751
+ weight,
752
+ originalId,
753
+ yfiles,
754
+ skipped,
755
+ domains: key.domains,
756
+ },
757
+ ]);
741
758
  }
742
759
  /**
743
760
  * Declare the column of a typed (or untyped, then string) key in one domain.
@@ -874,7 +891,8 @@ class GraphmlReader {
874
891
  });
875
892
  }
876
893
  else {
877
- const key = this.keys.get(keyId);
894
+ const entries = this.keys.get(keyId);
895
+ const key = entries?.find((entry) => entry.domains.includes(domain)) ?? entries?.[0];
878
896
  if (key === undefined) {
879
897
  this.report.error("validation-error", GRAPHML_ISSUE.UNKNOWN_KEY, `<data> references undeclared key "${keyId}"`, { line, element: keyId });
880
898
  }
@@ -946,18 +964,17 @@ class GraphmlReader {
946
964
  }
947
965
  return;
948
966
  }
967
+ if (key.yfiles) {
968
+ for (const [handle, mapped] of this.graphics("node", key, value, where)) {
969
+ this.setNodeData(node, handle, mapped);
970
+ }
971
+ }
949
972
  if (key.node === null) {
950
973
  return;
951
974
  }
952
975
  const parsed = this.parseValue(key.node, value, where);
953
- if (parsed === undefined) {
954
- return;
955
- }
956
- if (node.index === INVALID_INDEX) {
957
- node.pending.push(key.node.handle, parsed);
958
- }
959
- else if (!node.failed) {
960
- this.sink.setNodeValue(key.node.handle, node.index, parsed);
976
+ if (parsed !== undefined) {
977
+ this.setNodeData(node, key.node.handle, parsed);
961
978
  }
962
979
  return;
963
980
  }
@@ -980,6 +997,11 @@ class GraphmlReader {
980
997
  }
981
998
  return;
982
999
  }
1000
+ if (key.yfiles) {
1001
+ for (const [handle, mapped] of this.graphics("edge", key, value, where)) {
1002
+ edge.pending.push(handle, mapped);
1003
+ }
1004
+ }
983
1005
  if (key.edge === null) {
984
1006
  return;
985
1007
  }
@@ -1010,6 +1032,48 @@ class GraphmlReader {
1010
1032
  }
1011
1033
  }
1012
1034
  }
1035
+ /**
1036
+ * Write a node value now, or keep it until the node is added.
1037
+ * @param node - the node state
1038
+ * @param handle - the column
1039
+ * @param value - the value
1040
+ */
1041
+ setNodeData(node, handle, value) {
1042
+ if (node.index === INVALID_INDEX) {
1043
+ node.pending.push(handle, value);
1044
+ }
1045
+ else if (!node.failed) {
1046
+ this.sink.setNodeValue(handle, node.index, value);
1047
+ }
1048
+ }
1049
+ /**
1050
+ * The typed values mapped from a yFiles graphics tree (yfiles.ts), each with its column,
1051
+ * declared on first use.
1052
+ * @param domain - node or edge
1053
+ * @param key - the yFiles key
1054
+ * @param tree - the `<data>` content
1055
+ * @param where - the location for issues
1056
+ * @returns column handle and value pairs
1057
+ */
1058
+ graphics(domain, key, tree, where) {
1059
+ const out = [];
1060
+ for (const [field, value] of graphicsValues(domain, tree)) {
1061
+ const id = `${domain}:${field}`;
1062
+ let handle = this.graphicsColumns.get(id);
1063
+ if (handle === undefined) {
1064
+ try {
1065
+ ({ handle } = declareResolved(this.sink, domain, graphicsDecl(domain, field, key.id), this.report, where));
1066
+ }
1067
+ catch (err) {
1068
+ this.report.recordError(err, where);
1069
+ continue;
1070
+ }
1071
+ this.graphicsColumns.set(id, handle);
1072
+ }
1073
+ out.push([handle, value]);
1074
+ }
1075
+ return out;
1076
+ }
1013
1077
  /**
1014
1078
  * Parse the content of a `<data>` by its column's declaration.
1015
1079
  * @param target - the column