@graphty/graph-io 0.3.28 → 0.3.30

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 (142) hide show
  1. package/dist/chunks/{choose-DrXtu_96.js → choose-BfOLq6OX.js} +2 -2
  2. package/dist/chunks/{choose-DrXtu_96.js.map → choose-BfOLq6OX.js.map} +1 -1
  3. package/dist/chunks/{constants-ikG85dT8.js → constants-M8Qsjz1C.js} +2 -2
  4. package/dist/chunks/{constants-ikG85dT8.js.map → constants-M8Qsjz1C.js.map} +1 -1
  5. package/dist/chunks/{escape-D1HPTUrP.js → escape-UMMpQZqs.js} +2 -2
  6. package/dist/chunks/{escape-D1HPTUrP.js.map → escape-UMMpQZqs.js.map} +1 -1
  7. package/dist/chunks/{export-CHd4tQE2.js → export-Dq4U8Ubq.js} +165 -148
  8. package/dist/chunks/{export-CHd4tQE2.js.map → export-Dq4U8Ubq.js.map} +1 -1
  9. package/dist/chunks/{exporter-DhtW6FxK.js → exporter-BUosqV0K.js} +34 -34
  10. package/dist/chunks/exporter-BUosqV0K.js.map +1 -0
  11. package/dist/chunks/{exporter-D23CKNqF.js → exporter-Bd_VZ9ph.js} +9 -10
  12. package/dist/chunks/exporter-Bd_VZ9ph.js.map +1 -0
  13. package/dist/chunks/{exporter-DfWTgrti.js → exporter-COgVm-ff.js} +8 -7
  14. package/dist/chunks/{exporter-DfWTgrti.js.map → exporter-COgVm-ff.js.map} +1 -1
  15. package/dist/chunks/{exporter-Cl021ZIE.js → exporter-DEk_XLLs.js} +4 -4
  16. package/dist/chunks/{exporter-Cl021ZIE.js.map → exporter-DEk_XLLs.js.map} +1 -1
  17. package/dist/chunks/{importer-BZB7iP9r.js → importer-AQ3KpNHz.js} +11 -20
  18. package/dist/chunks/importer-AQ3KpNHz.js.map +1 -0
  19. package/dist/chunks/{importer-BVRE--Un.js → importer-BsZa2Phx.js} +5 -5
  20. package/dist/chunks/importer-BsZa2Phx.js.map +1 -0
  21. package/dist/chunks/{importer-DpEW5zeG.js → importer-CV8au8gH.js} +4 -4
  22. package/dist/chunks/{importer-DpEW5zeG.js.map → importer-CV8au8gH.js.map} +1 -1
  23. package/dist/chunks/{importer-BSALvkui.js → importer-Cj4-lXlv.js} +10 -9
  24. package/dist/chunks/importer-Cj4-lXlv.js.map +1 -0
  25. package/dist/chunks/{importer-B2W_58pz.js → importer-DQsgmhxc.js} +5 -5
  26. package/dist/chunks/{importer-B2W_58pz.js.map → importer-DQsgmhxc.js.map} +1 -1
  27. package/dist/chunks/{importer-CIAzt-wo.js → importer-Dkn79TjB.js} +6 -6
  28. package/dist/chunks/importer-Dkn79TjB.js.map +1 -0
  29. package/dist/chunks/{importer-z_FL4VMb.js → importer-DwSZvMDq.js} +10 -19
  30. package/dist/chunks/importer-DwSZvMDq.js.map +1 -0
  31. package/dist/chunks/{json-elements-BAmNBZok.js → json-elements-CreeKoaH.js} +12 -16
  32. package/dist/chunks/{json-elements-BAmNBZok.js.map → json-elements-CreeKoaH.js.map} +1 -1
  33. package/dist/chunks/{ontology-export-Bab4eUA8.js → ontology-export-C5Xd3W-7.js} +2 -2
  34. package/dist/chunks/{ontology-export-Bab4eUA8.js.map → ontology-export-C5Xd3W-7.js.map} +1 -1
  35. package/dist/chunks/{records-CdlvL4RO.js → records-BwaH_2ll.js} +2 -2
  36. package/dist/chunks/{records-CdlvL4RO.js.map → records-BwaH_2ll.js.map} +1 -1
  37. package/dist/chunks/{text-DzXjAiTl.js → text-4HHe6YH3.js} +2 -2
  38. package/dist/chunks/{text-DzXjAiTl.js.map → text-4HHe6YH3.js.map} +1 -1
  39. package/dist/csv.js +22 -15
  40. package/dist/csv.js.map +1 -1
  41. package/dist/cx.js +1 -1
  42. package/dist/cx2.js +2 -2
  43. package/dist/cys.js +1 -1
  44. package/dist/dot.js +1 -1
  45. package/dist/gexf.js +9 -8
  46. package/dist/gexf.js.map +1 -1
  47. package/dist/gml.js +3 -3
  48. package/dist/graph-io.js +69 -69
  49. package/dist/graphml.js +2 -2
  50. package/dist/json.js +1 -1
  51. package/dist/neo4j.js +3 -3
  52. package/dist/obo.js +1 -1
  53. package/dist/pajek.js +1 -1
  54. package/dist/src/common/export.d.ts +6 -0
  55. package/dist/src/common/export.d.ts.map +1 -1
  56. package/dist/src/common/export.js +62 -28
  57. package/dist/src/common/export.js.map +1 -1
  58. package/dist/src/common/format.d.ts +0 -8
  59. package/dist/src/common/format.d.ts.map +1 -1
  60. package/dist/src/common/format.js +0 -10
  61. package/dist/src/common/format.js.map +1 -1
  62. package/dist/src/common/json-elements.d.ts +1 -9
  63. package/dist/src/common/json-elements.d.ts.map +1 -1
  64. package/dist/src/common/json-elements.js +2 -12
  65. package/dist/src/common/json-elements.js.map +1 -1
  66. package/dist/src/formats/csv/exporter.d.ts.map +1 -1
  67. package/dist/src/formats/csv/exporter.js +18 -7
  68. package/dist/src/formats/csv/exporter.js.map +1 -1
  69. package/dist/src/formats/cx/importer.d.ts.map +1 -1
  70. package/dist/src/formats/cx/importer.js +3 -3
  71. package/dist/src/formats/cx/importer.js.map +1 -1
  72. package/dist/src/formats/cx2/importer.d.ts.map +1 -1
  73. package/dist/src/formats/cx2/importer.js +3 -3
  74. package/dist/src/formats/cx2/importer.js.map +1 -1
  75. package/dist/src/formats/cys/exporter.d.ts.map +1 -1
  76. package/dist/src/formats/cys/exporter.js +4 -3
  77. package/dist/src/formats/cys/exporter.js.map +1 -1
  78. package/dist/src/formats/dot/exporter.js +1 -1
  79. package/dist/src/formats/dot/importer.d.ts +2 -2
  80. package/dist/src/formats/dot/importer.d.ts.map +1 -1
  81. package/dist/src/formats/dot/importer.js +7 -11
  82. package/dist/src/formats/dot/importer.js.map +1 -1
  83. package/dist/src/formats/gexf/exporter.d.ts +2 -2
  84. package/dist/src/formats/gexf/exporter.d.ts.map +1 -1
  85. package/dist/src/formats/gexf/exporter.js +7 -5
  86. package/dist/src/formats/gexf/exporter.js.map +1 -1
  87. package/dist/src/formats/gexf/schema.js +1 -1
  88. package/dist/src/formats/json/exporter.js +1 -1
  89. package/dist/src/formats/json/importer.d.ts.map +1 -1
  90. package/dist/src/formats/json/importer.js +4 -6
  91. package/dist/src/formats/json/importer.js.map +1 -1
  92. package/dist/src/formats/obo/syntax.d.ts +4 -0
  93. package/dist/src/formats/obo/syntax.d.ts.map +1 -1
  94. package/dist/src/formats/obo/syntax.js +35 -31
  95. package/dist/src/formats/obo/syntax.js.map +1 -1
  96. package/dist/src/formats/pajek/exporter.d.ts.map +1 -1
  97. package/dist/src/formats/pajek/exporter.js +5 -4
  98. package/dist/src/formats/pajek/exporter.js.map +1 -1
  99. package/dist/src/formats/pajek/importer.d.ts.map +1 -1
  100. package/dist/src/formats/pajek/importer.js +3 -7
  101. package/dist/src/formats/pajek/importer.js.map +1 -1
  102. package/dist/src/formats/pajek/syntax.d.ts +1 -1
  103. package/dist/src/formats/pajek/syntax.js +1 -1
  104. package/dist/src/formats/xgmml/constants.d.ts +1 -1
  105. package/dist/src/formats/xgmml/constants.js +1 -1
  106. package/dist/src/formats/xgmml/emit.js +1 -1
  107. package/dist/src/formats/xgmml/exporter.d.ts.map +1 -1
  108. package/dist/src/formats/xgmml/exporter.js +4 -3
  109. package/dist/src/formats/xgmml/exporter.js.map +1 -1
  110. package/dist/src/types.d.ts +6 -0
  111. package/dist/src/types.d.ts.map +1 -1
  112. package/dist/src/types.js.map +1 -1
  113. package/dist/xgmml.js +2 -2
  114. package/package.json +1 -1
  115. package/src/common/export.ts +105 -62
  116. package/src/common/format.ts +0 -11
  117. package/src/common/json-elements.ts +2 -13
  118. package/src/formats/csv/exporter.ts +19 -15
  119. package/src/formats/cx/importer.ts +2 -3
  120. package/src/formats/cx2/importer.ts +2 -3
  121. package/src/formats/cys/exporter.ts +4 -3
  122. package/src/formats/dot/exporter.ts +1 -1
  123. package/src/formats/dot/importer.ts +7 -17
  124. package/src/formats/gexf/exporter.ts +7 -5
  125. package/src/formats/gexf/schema.ts +1 -1
  126. package/src/formats/json/exporter.ts +1 -1
  127. package/src/formats/json/importer.ts +4 -7
  128. package/src/formats/obo/syntax.ts +35 -31
  129. package/src/formats/pajek/exporter.ts +5 -4
  130. package/src/formats/pajek/importer.ts +3 -13
  131. package/src/formats/pajek/syntax.ts +1 -1
  132. package/src/formats/xgmml/constants.ts +1 -1
  133. package/src/formats/xgmml/emit.ts +1 -1
  134. package/src/formats/xgmml/exporter.ts +4 -3
  135. package/src/types.ts +6 -0
  136. package/dist/chunks/exporter-D23CKNqF.js.map +0 -1
  137. package/dist/chunks/exporter-DhtW6FxK.js.map +0 -1
  138. package/dist/chunks/importer-BSALvkui.js.map +0 -1
  139. package/dist/chunks/importer-BVRE--Un.js.map +0 -1
  140. package/dist/chunks/importer-BZB7iP9r.js.map +0 -1
  141. package/dist/chunks/importer-CIAzt-wo.js.map +0 -1
  142. package/dist/chunks/importer-z_FL4VMb.js.map +0 -1
package/dist/cx.js CHANGED
@@ -1,4 +1,4 @@
1
- import { C, a, b, c, d } from "./chunks/importer-CIAzt-wo.js";
1
+ import { C, a, b, c, d } from "./chunks/importer-Dkn79TjB.js";
2
2
  export {
3
3
  C as CX_CAPABILITIES,
4
4
  a as CX_ISSUE,
package/dist/cx2.js CHANGED
@@ -1,5 +1,5 @@
1
- import { C, a, c } from "./chunks/exporter-Cl021ZIE.js";
2
- import { C as C2, c as c2 } from "./chunks/importer-BVRE--Un.js";
1
+ import { C, a, c } from "./chunks/exporter-DEk_XLLs.js";
2
+ import { C as C2, c as c2 } from "./chunks/importer-BsZa2Phx.js";
3
3
  export {
4
4
  C as CX2_CAPABILITIES,
5
5
  C2 as CX2_ISSUE,
package/dist/cys.js CHANGED
@@ -1,4 +1,4 @@
1
- import { C, a, b, c, d } from "./chunks/importer-BSALvkui.js";
1
+ import { C, a, b, c, d } from "./chunks/importer-Cj4-lXlv.js";
2
2
  export {
3
3
  C as CYS_CAPABILITIES,
4
4
  a as CYS_ISSUE,
package/dist/dot.js CHANGED
@@ -1,4 +1,4 @@
1
- import { D, a, d, b } from "./chunks/importer-BZB7iP9r.js";
1
+ import { D, a, d, b } from "./chunks/importer-AQ3KpNHz.js";
2
2
  export {
3
3
  D as DOT_ISSUE,
4
4
  a as DOT_LOSS,
package/dist/gexf.js CHANGED
@@ -1,6 +1,6 @@
1
- import { bG as TIME_TEXT_ROLE, bH as TIME_TEXT_SUFFIX, al as resolveImportOptions, a8 as ImportReportBuilder, ao as reportSinkOptions, an as reportUnusedOptions, a4 as textChunks, E as EMPTY_INPUT_CODE, X as XML_SYNTAX_CODE, am as throwIfAborted, ar as IdCoercer, aq as DirectionResolver, f as STRAY_TEXT_CODE, N as NO_GRAPH_CODE, h as UNKNOWN_XML_ATTRIBUTE_CODE, l as MULTIPLE_GRAPHS_CODE, j as COUNT_MISMATCH_CODE, k as COUNT_HINT_CODE, o as DUPLICATE_ATTRIBUTE_CODE, aK as isWeightField, bI as declareAttribute, a1 as declareResolved, t as MISSING_ID_CODE, n as DUPLICATE_NODE_CODE, q as UNKNOWN_PARENT_CODE, ai as PARENT_CYCLE_CODE, s as MISSING_ENDPOINT_CODE, m as DUPLICATE_EDGE_ID_CODE, aL as parseWeightText, bJ as overflowsToInfinity, P as PRECISION_CODE, bK as parseDeclaredTemporal, bs as declareCompanion, bL as parseDeclaredValue, bM as losesPrecision, bN as parseTimeText, a3 as BAD_VALUE_CODE, bO as splitListText, g as UNKNOWN_ELEMENT_CODE, I as ID_MERGED_CODE, bP as timeTextCompanion, bQ as parseDecimalText, c as capabilities, L as LOSS, aE as sanitizeIds, p as pairFolding, e as explicitWeights, r as resolveExportOptions, a as checkCapabilities, bR as formatTimeValue, aa as formatF32, ab as formatF64, bS as mapDeclaredType, bT as joinListText, bU as formatTemporal, aG as formatInteger, b as plural, $ as agree, by as isCanonicalIntegerText, M as MIXED_DIRECTION_CODE, D as DIRECTION_FORCED_CODE, d as DIRECTION_REFUSED_CODE, S as SINK_OPTION_CODE, O as OPTION_IGNORED_CODE, R as ROLE_TAKEN_CODE, C as COLUMN_RENAMED_CODE, a_ as BAD_OPTIONS_CODE, B as BAD_DEFAULT_CODE, U as UNKNOWN_ATTR_TYPE_CODE, v as ENCODING_CONFLICT_CODE, w as UNKNOWN_ENCODING_CODE, x as ENCODING_FALLBACK_CODE, y as INVALID_ENCODING_CODE, z as INVALID_UTF8_CODE, A as COLUMN_TYPE_CODE, F as ELEMENT_ISSUE, G as INPUT_ISSUE } from "./chunks/export-CHd4tQE2.js";
1
+ import { bF as TIME_TEXT_ROLE, bG as TIME_TEXT_SUFFIX, al as resolveImportOptions, a8 as ImportReportBuilder, ao as reportSinkOptions, an as reportUnusedOptions, a4 as textChunks, E as EMPTY_INPUT_CODE, X as XML_SYNTAX_CODE, am as throwIfAborted, ar as IdCoercer, aq as DirectionResolver, f as STRAY_TEXT_CODE, N as NO_GRAPH_CODE, h as UNKNOWN_XML_ATTRIBUTE_CODE, l as MULTIPLE_GRAPHS_CODE, j as COUNT_MISMATCH_CODE, k as COUNT_HINT_CODE, o as DUPLICATE_ATTRIBUTE_CODE, aJ as isWeightField, bH as declareAttribute, a1 as declareResolved, t as MISSING_ID_CODE, n as DUPLICATE_NODE_CODE, q as UNKNOWN_PARENT_CODE, ai as PARENT_CYCLE_CODE, s as MISSING_ENDPOINT_CODE, m as DUPLICATE_EDGE_ID_CODE, aK as parseWeightText, bI as overflowsToInfinity, P as PRECISION_CODE, bJ as parseDeclaredTemporal, br as declareCompanion, bK as parseDeclaredValue, bL as losesPrecision, bM as parseTimeText, a3 as BAD_VALUE_CODE, bN as splitListText, g as UNKNOWN_ELEMENT_CODE, I as ID_MERGED_CODE, bO as timeTextCompanion, bP as parseDecimalText, c as capabilities, L as LOSS, aE as sanitizeIds, p as pairFolding, e as explicitWeights, r as resolveExportOptions, a as checkCapabilities, bQ as formatTimeValue, aa as formatF32, ab as formatF64, bR as mapDeclaredType, bS as joinListText, bT as formatTemporal, aG as formatInteger, b as plural, $ as agree, bx as isCanonicalIntegerText, M as MIXED_DIRECTION_CODE, D as DIRECTION_FORCED_CODE, d as DIRECTION_REFUSED_CODE, S as SINK_OPTION_CODE, O as OPTION_IGNORED_CODE, R as ROLE_TAKEN_CODE, C as COLUMN_RENAMED_CODE, aZ as BAD_OPTIONS_CODE, B as BAD_DEFAULT_CODE, U as UNKNOWN_ATTR_TYPE_CODE, v as ENCODING_CONFLICT_CODE, w as UNKNOWN_ENCODING_CODE, x as ENCODING_FALLBACK_CODE, y as INVALID_ENCODING_CODE, z as INVALID_UTF8_CODE, A as COLUMN_TYPE_CODE, F as ELEMENT_ISSUE, G as INPUT_ISSUE } from "./chunks/export-Dq4U8Ubq.js";
2
2
  import { GraphFormatError, INVALID_INDEX, MAX_COUNT } from "@graphty/graph-format";
3
- import { t as tokenizeXml, f as xmlDeclaredEncoding, g as XmlEmptyInputError, X as XmlSyntaxError, s as sniffXmlText, l as localName, j as isWhitespace, x as xmlIllegalTextNotes, a as escapeXmlText, e as escapeXmlAttribute } from "./chunks/escape-D1HPTUrP.js";
3
+ import { t as tokenizeXml, f as xmlDeclaredEncoding, g as XmlEmptyInputError, X as XmlSyntaxError, s as sniffXmlText, l as localName, j as isWhitespace, x as xmlIllegalTextNotes, a as escapeXmlText, e as escapeXmlAttribute } from "./chunks/escape-UMMpQZqs.js";
4
4
  import { j as joinText, e as encodeChunks } from "./chunks/writer-DxjgHwSe.js";
5
5
  const GEXF_FORMAT = "gexf";
6
6
  const GEXF_NAMESPACES = {
@@ -107,7 +107,7 @@ const NODE_DECLS = {
107
107
  },
108
108
  position: {
109
109
  name: NODE_COLUMNS.position,
110
- dtype: "f32",
110
+ dtype: "f64",
111
111
  components: 3,
112
112
  role: "position",
113
113
  mutable: true,
@@ -2586,8 +2586,8 @@ const GEXF_LOSS = Object.freeze({
2586
2586
  /** A numeric edge id column: GEXF edge ids read back as strings. */
2587
2587
  EDGE_ID_TEXT: "W_GEXF_EDGE_ID_TEXT",
2588
2588
  /**
2589
- * A visual attribute (position, color, size, thickness) is stored at more precision than GEXF keeps; it reads back
2590
- * as a 32-bit float.
2589
+ * A visual attribute (position, color, size, thickness) is stored at another precision than the importer gives it;
2590
+ * a position reads back as a 64-bit float, a color, size or thickness as a 32-bit float.
2591
2591
  */
2592
2592
  VIZ_DTYPE: "W_GEXF_VIZ_DTYPE",
2593
2593
  /**
@@ -2654,7 +2654,7 @@ function planExport(snapshot, options) {
2654
2654
  ...checkCapabilities(snapshot, caps, resolved, {
2655
2655
  openIntervals: version === "1.2",
2656
2656
  temporalText: true,
2657
- positionDtype: "f32",
2657
+ positionDtype: "f64",
2658
2658
  roles: MAPPED_ROLES,
2659
2659
  // GEXF 1.2 has no edge kind: the kind column is dropped (W_GEXF_KIND_DROPPED), not renamed
2660
2660
  roleNames: version === "1.2" ? ROLE_NAMES_1_2 : ROLE_NAMES
@@ -2911,10 +2911,11 @@ function collectRoles(table, domain, note) {
2911
2911
  }
2912
2912
  continue;
2913
2913
  }
2914
- if (VIZ_NUMERIC_ROLES.has(role) && column.dtype !== "f32") {
2914
+ const vizDtype = role === "position" ? "f64" : "f32";
2915
+ if (VIZ_NUMERIC_ROLES.has(role) && column.dtype !== vizDtype) {
2915
2916
  note(
2916
2917
  GEXF_LOSS.VIZ_DTYPE,
2917
- `${domain} column "${meta.name}" (${role}) is ${column.dtype}; viz values read back as f32`,
2918
+ `${domain} column "${meta.name}" (${role}) is ${column.dtype}; viz values read back as ${vizDtype}`,
2918
2919
  meta.name,
2919
2920
  column.length - column.nullCount
2920
2921
  );