@graphty/graph-io 0.3.25 → 0.3.27
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/README.md +49 -414
- package/dist/chunks/children-CL3Cy0ez.js.map +1 -1
- package/dist/chunks/choose-DrXtu_96.js +56 -0
- package/dist/chunks/choose-DrXtu_96.js.map +1 -0
- package/dist/chunks/constants-ikG85dT8.js +231 -0
- package/dist/chunks/constants-ikG85dT8.js.map +1 -0
- package/dist/chunks/{escape-B-tkk_Cl.js → escape-D1HPTUrP.js} +390 -99
- package/dist/chunks/escape-D1HPTUrP.js.map +1 -0
- package/dist/chunks/export-CHd4tQE2.js +4333 -0
- package/dist/chunks/export-CHd4tQE2.js.map +1 -0
- package/dist/chunks/{importer-eUREhBGj.js → exporter-D23CKNqF.js} +4969 -3201
- package/dist/chunks/exporter-D23CKNqF.js.map +1 -0
- package/dist/chunks/{exporter-DIeGJXAZ.js → exporter-DfWTgrti.js} +23 -21
- package/dist/chunks/exporter-DfWTgrti.js.map +1 -0
- package/dist/chunks/exporter-DhtW6FxK.js +3465 -0
- package/dist/chunks/exporter-DhtW6FxK.js.map +1 -0
- package/dist/chunks/{exporter-BGrsWamJ.js → exporter-IHv4nkCm.js} +38 -229
- package/dist/chunks/exporter-IHv4nkCm.js.map +1 -0
- package/dist/chunks/{importer-BWY2FFc5.js → importer-B1wmPQjr.js} +255 -77
- package/dist/chunks/importer-B1wmPQjr.js.map +1 -0
- package/dist/chunks/{importer-D_e7e7LX.js → importer-B2W_58pz.js} +399 -146
- package/dist/chunks/importer-B2W_58pz.js.map +1 -0
- package/dist/chunks/importer-BSALvkui.js +2811 -0
- package/dist/chunks/importer-BSALvkui.js.map +1 -0
- package/dist/chunks/{importer-vi3bSdtw.js → importer-BVRE--Un.js} +510 -77
- package/dist/chunks/importer-BVRE--Un.js.map +1 -0
- package/dist/chunks/{importer-DET1tg6s.js → importer-CIAzt-wo.js} +1689 -312
- package/dist/chunks/importer-CIAzt-wo.js.map +1 -0
- package/dist/chunks/{importer-DIrbbnAf.js → importer-DpEW5zeG.js} +585 -226
- package/dist/chunks/importer-DpEW5zeG.js.map +1 -0
- package/dist/chunks/{importer-zGLo8Dg_.js → importer-z_FL4VMb.js} +488 -161
- package/dist/chunks/importer-z_FL4VMb.js.map +1 -0
- package/dist/chunks/json-elements-BAmNBZok.js +1225 -0
- package/dist/chunks/json-elements-BAmNBZok.js.map +1 -0
- package/dist/chunks/ontology-export-Bab4eUA8.js +357 -0
- package/dist/chunks/ontology-export-Bab4eUA8.js.map +1 -0
- package/dist/chunks/{records-dbRkxwaq.js → records-CdlvL4RO.js} +298 -114
- package/dist/chunks/records-CdlvL4RO.js.map +1 -0
- package/dist/chunks/{text-Dr0Ifpag.js → text-DzXjAiTl.js} +29 -11
- package/dist/chunks/text-DzXjAiTl.js.map +1 -0
- package/dist/chunks/{writer-C7flM-Ih.js → writer-DxjgHwSe.js} +19 -1
- package/dist/chunks/writer-DxjgHwSe.js.map +1 -0
- package/dist/csv.js +952 -262
- package/dist/csv.js.map +1 -1
- package/dist/cx.js +6 -3
- package/dist/cx2.js +2 -2
- package/dist/cys.js +6 -3
- package/dist/dot.js +1 -1
- package/dist/gexf.js +554 -122
- package/dist/gexf.js.map +1 -1
- package/dist/gml.js +344 -87
- package/dist/gml.js.map +1 -1
- package/dist/graph-io.js +1105 -213
- package/dist/graph-io.js.map +1 -1
- package/dist/graphml.js +3 -2
- package/dist/graphml.js.map +1 -1
- package/dist/json.js +3 -2
- package/dist/neo4j.js +565 -158
- package/dist/neo4j.js.map +1 -1
- package/dist/obo.js +6 -3
- package/dist/pajek.js +1 -1
- package/dist/src/children.d.ts +18 -6
- package/dist/src/children.d.ts.map +1 -1
- package/dist/src/children.js +6 -3
- package/dist/src/children.js.map +1 -1
- package/dist/src/common/attributes.d.ts +29 -11
- package/dist/src/common/attributes.d.ts.map +1 -1
- package/dist/src/common/attributes.js +25 -7
- package/dist/src/common/attributes.js.map +1 -1
- package/dist/src/common/cell-budget.d.ts +9 -2
- package/dist/src/common/cell-budget.d.ts.map +1 -1
- package/dist/src/common/cell-budget.js +11 -3
- package/dist/src/common/cell-budget.js.map +1 -1
- package/dist/src/common/choose.d.ts +19 -0
- package/dist/src/common/choose.d.ts.map +1 -0
- package/dist/src/common/choose.js +72 -0
- package/dist/src/common/choose.js.map +1 -0
- package/dist/src/common/codes.d.ts +456 -66
- package/dist/src/common/codes.d.ts.map +1 -1
- package/dist/src/common/codes.js +458 -66
- package/dist/src/common/codes.js.map +1 -1
- package/dist/src/common/compare.d.ts +81 -0
- package/dist/src/common/compare.d.ts.map +1 -0
- package/dist/src/common/compare.js +394 -0
- package/dist/src/common/compare.js.map +1 -0
- package/dist/src/common/cx-export.d.ts +123 -0
- package/dist/src/common/cx-export.d.ts.map +1 -0
- package/dist/src/common/cx-export.js +334 -0
- package/dist/src/common/cx-export.js.map +1 -0
- package/dist/src/common/declared-types.d.ts +22 -2
- package/dist/src/common/declared-types.d.ts.map +1 -1
- package/dist/src/common/declared-types.js +21 -3
- package/dist/src/common/declared-types.js.map +1 -1
- package/dist/src/common/direction.d.ts +74 -50
- package/dist/src/common/direction.d.ts.map +1 -1
- package/dist/src/common/direction.js +47 -27
- package/dist/src/common/direction.js.map +1 -1
- package/dist/src/common/escape.d.ts +21 -9
- package/dist/src/common/escape.d.ts.map +1 -1
- package/dist/src/common/escape.js +39 -22
- package/dist/src/common/escape.js.map +1 -1
- package/dist/src/common/export.d.ts +144 -32
- package/dist/src/common/export.d.ts.map +1 -1
- package/dist/src/common/export.js +216 -42
- package/dist/src/common/export.js.map +1 -1
- package/dist/src/common/format.d.ts +23 -1
- package/dist/src/common/format.d.ts.map +1 -1
- package/dist/src/common/format.js +26 -1
- package/dist/src/common/format.js.map +1 -1
- package/dist/src/common/ids.d.ts +9 -2
- package/dist/src/common/ids.d.ts.map +1 -1
- package/dist/src/common/ids.js +6 -2
- package/dist/src/common/ids.js.map +1 -1
- package/dist/src/common/input.d.ts +122 -28
- package/dist/src/common/input.d.ts.map +1 -1
- package/dist/src/common/input.js +890 -124
- package/dist/src/common/input.js.map +1 -1
- package/dist/src/common/json-elements.d.ts +144 -20
- package/dist/src/common/json-elements.d.ts.map +1 -1
- package/dist/src/common/json-elements.js +869 -189
- package/dist/src/common/json-elements.js.map +1 -1
- package/dist/src/common/line-format.d.ts +90 -0
- package/dist/src/common/line-format.d.ts.map +1 -0
- package/dist/src/common/line-format.js +185 -0
- package/dist/src/common/line-format.js.map +1 -0
- package/dist/src/common/lists.d.ts +6 -1
- package/dist/src/common/lists.d.ts.map +1 -1
- package/dist/src/common/lists.js +3 -1
- package/dist/src/common/lists.js.map +1 -1
- package/dist/src/common/ontology-export.d.ts +167 -0
- package/dist/src/common/ontology-export.d.ts.map +1 -0
- package/dist/src/common/ontology-export.js +359 -0
- package/dist/src/common/ontology-export.js.map +1 -0
- package/dist/src/common/ontology.d.ts +25 -3
- package/dist/src/common/ontology.d.ts.map +1 -1
- package/dist/src/common/ontology.js +30 -9
- package/dist/src/common/ontology.js.map +1 -1
- package/dist/src/common/options.d.ts +62 -12
- package/dist/src/common/options.d.ts.map +1 -1
- package/dist/src/common/options.js +89 -11
- package/dist/src/common/options.js.map +1 -1
- package/dist/src/common/plural.d.ts +31 -0
- package/dist/src/common/plural.d.ts.map +1 -0
- package/dist/src/common/plural.js +46 -0
- package/dist/src/common/plural.js.map +1 -0
- package/dist/src/common/report.d.ts +72 -14
- package/dist/src/common/report.d.ts.map +1 -1
- package/dist/src/common/report.js +146 -22
- package/dist/src/common/report.js.map +1 -1
- package/dist/src/common/temporal.d.ts +22 -5
- package/dist/src/common/temporal.d.ts.map +1 -1
- package/dist/src/common/temporal.js +13 -2
- package/dist/src/common/temporal.js.map +1 -1
- package/dist/src/common/text.d.ts +39 -23
- package/dist/src/common/text.d.ts.map +1 -1
- package/dist/src/common/text.js +51 -21
- package/dist/src/common/text.js.map +1 -1
- package/dist/src/common/weights.d.ts +37 -4
- package/dist/src/common/weights.d.ts.map +1 -1
- package/dist/src/common/weights.js +61 -2
- package/dist/src/common/weights.js.map +1 -1
- package/dist/src/common/writer.d.ts +19 -3
- package/dist/src/common/writer.d.ts.map +1 -1
- package/dist/src/common/writer.js +30 -2
- package/dist/src/common/writer.js.map +1 -1
- package/dist/src/common/xml.d.ts +125 -9
- package/dist/src/common/xml.d.ts.map +1 -1
- package/dist/src/common/xml.js +402 -85
- package/dist/src/common/xml.js.map +1 -1
- package/dist/src/common/zip.d.ts +44 -4
- package/dist/src/common/zip.d.ts.map +1 -1
- package/dist/src/common/zip.js +134 -5
- package/dist/src/common/zip.js.map +1 -1
- package/dist/src/formats/csv/exporter.d.ts +80 -24
- package/dist/src/formats/csv/exporter.d.ts.map +1 -1
- package/dist/src/formats/csv/exporter.js +146 -33
- package/dist/src/formats/csv/exporter.js.map +1 -1
- package/dist/src/formats/csv/header.d.ts +38 -9
- package/dist/src/formats/csv/header.d.ts.map +1 -1
- package/dist/src/formats/csv/header.js +46 -10
- package/dist/src/formats/csv/header.js.map +1 -1
- package/dist/src/formats/csv/importer.d.ts +187 -37
- package/dist/src/formats/csv/importer.d.ts.map +1 -1
- package/dist/src/formats/csv/importer.js +835 -204
- package/dist/src/formats/csv/importer.js.map +1 -1
- package/dist/src/formats/csv/index.d.ts +100 -19
- package/dist/src/formats/csv/index.d.ts.map +1 -1
- package/dist/src/formats/csv/index.js +94 -21
- package/dist/src/formats/csv/index.js.map +1 -1
- package/dist/src/formats/csv/records.d.ts +95 -10
- package/dist/src/formats/csv/records.d.ts.map +1 -1
- package/dist/src/formats/csv/records.js +333 -122
- package/dist/src/formats/csv/records.js.map +1 -1
- package/dist/src/formats/csv/values.d.ts +1 -0
- package/dist/src/formats/csv/values.d.ts.map +1 -1
- package/dist/src/formats/csv/values.js +1 -0
- package/dist/src/formats/csv/values.js.map +1 -1
- package/dist/src/formats/cx/exporter.d.ts +102 -0
- package/dist/src/formats/cx/exporter.d.ts.map +1 -0
- package/dist/src/formats/cx/exporter.js +1217 -0
- package/dist/src/formats/cx/exporter.js.map +1 -0
- package/dist/src/formats/cx/importer.d.ts +79 -32
- package/dist/src/formats/cx/importer.d.ts.map +1 -1
- package/dist/src/formats/cx/importer.js +682 -287
- package/dist/src/formats/cx/importer.js.map +1 -1
- package/dist/src/formats/cx/index.d.ts +4 -3
- package/dist/src/formats/cx/index.d.ts.map +1 -1
- package/dist/src/formats/cx/index.js +4 -3
- package/dist/src/formats/cx/index.js.map +1 -1
- package/dist/src/formats/cx2/exporter.d.ts +29 -11
- package/dist/src/formats/cx2/exporter.d.ts.map +1 -1
- package/dist/src/formats/cx2/exporter.js +39 -268
- package/dist/src/formats/cx2/exporter.js.map +1 -1
- package/dist/src/formats/cx2/importer.d.ts +78 -28
- package/dist/src/formats/cx2/importer.d.ts.map +1 -1
- package/dist/src/formats/cx2/importer.js +227 -80
- package/dist/src/formats/cx2/importer.js.map +1 -1
- package/dist/src/formats/cx2/index.d.ts +2 -1
- package/dist/src/formats/cx2/index.d.ts.map +1 -1
- package/dist/src/formats/cx2/index.js +2 -1
- package/dist/src/formats/cx2/index.js.map +1 -1
- package/dist/src/formats/cys/constants.d.ts +66 -17
- package/dist/src/formats/cys/constants.d.ts.map +1 -1
- package/dist/src/formats/cys/constants.js +59 -18
- package/dist/src/formats/cys/constants.js.map +1 -1
- package/dist/src/formats/cys/exporter.d.ts +118 -0
- package/dist/src/formats/cys/exporter.d.ts.map +1 -0
- package/dist/src/formats/cys/exporter.js +1072 -0
- package/dist/src/formats/cys/exporter.js.map +1 -0
- package/dist/src/formats/cys/importer.d.ts +22 -8
- package/dist/src/formats/cys/importer.d.ts.map +1 -1
- package/dist/src/formats/cys/importer.js +510 -149
- package/dist/src/formats/cys/importer.js.map +1 -1
- package/dist/src/formats/cys/index.d.ts +4 -2
- package/dist/src/formats/cys/index.d.ts.map +1 -1
- package/dist/src/formats/cys/index.js +4 -2
- package/dist/src/formats/cys/index.js.map +1 -1
- package/dist/src/formats/cys/session.d.ts +46 -7
- package/dist/src/formats/cys/session.d.ts.map +1 -1
- package/dist/src/formats/cys/session.js +101 -27
- package/dist/src/formats/cys/session.js.map +1 -1
- package/dist/src/formats/cys/tables.d.ts +9 -2
- package/dist/src/formats/cys/tables.d.ts.map +1 -1
- package/dist/src/formats/cys/tables.js +29 -7
- package/dist/src/formats/cys/tables.js.map +1 -1
- package/dist/src/formats/dot/exporter.d.ts +42 -14
- package/dist/src/formats/dot/exporter.d.ts.map +1 -1
- package/dist/src/formats/dot/exporter.js +56 -29
- package/dist/src/formats/dot/exporter.js.map +1 -1
- package/dist/src/formats/dot/importer.d.ts +91 -29
- package/dist/src/formats/dot/importer.d.ts.map +1 -1
- package/dist/src/formats/dot/importer.js +190 -39
- package/dist/src/formats/dot/importer.js.map +1 -1
- package/dist/src/formats/dot/index.d.ts +2 -1
- package/dist/src/formats/dot/index.d.ts.map +1 -1
- package/dist/src/formats/dot/index.js +2 -1
- package/dist/src/formats/dot/index.js.map +1 -1
- package/dist/src/formats/dot/names.d.ts +44 -11
- package/dist/src/formats/dot/names.d.ts.map +1 -1
- package/dist/src/formats/dot/names.js +44 -11
- package/dist/src/formats/dot/names.js.map +1 -1
- package/dist/src/formats/dot/tokenizer.d.ts +9 -2
- package/dist/src/formats/dot/tokenizer.d.ts.map +1 -1
- package/dist/src/formats/dot/tokenizer.js +20 -5
- package/dist/src/formats/dot/tokenizer.js.map +1 -1
- package/dist/src/formats/gexf/exporter.d.ts +46 -15
- package/dist/src/formats/gexf/exporter.d.ts.map +1 -1
- package/dist/src/formats/gexf/exporter.js +45 -15
- package/dist/src/formats/gexf/exporter.js.map +1 -1
- package/dist/src/formats/gexf/importer.d.ts +87 -23
- package/dist/src/formats/gexf/importer.d.ts.map +1 -1
- package/dist/src/formats/gexf/importer.js +471 -90
- package/dist/src/formats/gexf/importer.js.map +1 -1
- package/dist/src/formats/gexf/index.d.ts +84 -21
- package/dist/src/formats/gexf/index.d.ts.map +1 -1
- package/dist/src/formats/gexf/index.js +80 -23
- package/dist/src/formats/gexf/index.js.map +1 -1
- package/dist/src/formats/gexf/schema.d.ts +67 -15
- package/dist/src/formats/gexf/schema.d.ts.map +1 -1
- package/dist/src/formats/gexf/schema.js +59 -13
- package/dist/src/formats/gexf/schema.js.map +1 -1
- package/dist/src/formats/gml/exporter.d.ts +69 -21
- package/dist/src/formats/gml/exporter.d.ts.map +1 -1
- package/dist/src/formats/gml/exporter.js +74 -29
- package/dist/src/formats/gml/exporter.js.map +1 -1
- package/dist/src/formats/gml/importer.d.ts +116 -25
- package/dist/src/formats/gml/importer.d.ts.map +1 -1
- package/dist/src/formats/gml/importer.js +290 -61
- package/dist/src/formats/gml/importer.js.map +1 -1
- package/dist/src/formats/gml/index.d.ts +87 -24
- package/dist/src/formats/gml/index.d.ts.map +1 -1
- package/dist/src/formats/gml/index.js +79 -26
- package/dist/src/formats/gml/index.js.map +1 -1
- package/dist/src/formats/gml/syntax.d.ts +67 -18
- package/dist/src/formats/gml/syntax.d.ts.map +1 -1
- package/dist/src/formats/gml/syntax.js +110 -28
- package/dist/src/formats/gml/syntax.js.map +1 -1
- package/dist/src/formats/graphml/constants.d.ts +174 -44
- package/dist/src/formats/graphml/constants.d.ts.map +1 -1
- package/dist/src/formats/graphml/constants.js +165 -44
- package/dist/src/formats/graphml/constants.js.map +1 -1
- package/dist/src/formats/graphml/exporter.d.ts +17 -9
- package/dist/src/formats/graphml/exporter.d.ts.map +1 -1
- package/dist/src/formats/graphml/exporter.js +33 -12
- package/dist/src/formats/graphml/exporter.js.map +1 -1
- package/dist/src/formats/graphml/importer.d.ts +19 -7
- package/dist/src/formats/graphml/importer.d.ts.map +1 -1
- package/dist/src/formats/graphml/importer.js +466 -39
- package/dist/src/formats/graphml/importer.js.map +1 -1
- package/dist/src/formats/graphml/index.d.ts +2 -1
- package/dist/src/formats/graphml/index.d.ts.map +1 -1
- package/dist/src/formats/graphml/index.js +2 -1
- package/dist/src/formats/graphml/index.js.map +1 -1
- package/dist/src/formats/graphml/tree.d.ts +6 -2
- package/dist/src/formats/graphml/tree.d.ts.map +1 -1
- package/dist/src/formats/graphml/tree.js +6 -2
- package/dist/src/formats/graphml/tree.js.map +1 -1
- package/dist/src/formats/graphml/yfiles.d.ts +8 -3
- package/dist/src/formats/graphml/yfiles.d.ts.map +1 -1
- package/dist/src/formats/graphml/yfiles.js +36 -15
- package/dist/src/formats/graphml/yfiles.js.map +1 -1
- package/dist/src/formats/json/dialect.d.ts +88 -24
- package/dist/src/formats/json/dialect.d.ts.map +1 -1
- package/dist/src/formats/json/dialect.js +109 -19
- package/dist/src/formats/json/dialect.js.map +1 -1
- package/dist/src/formats/json/exporter.d.ts +134 -22
- package/dist/src/formats/json/exporter.d.ts.map +1 -1
- package/dist/src/formats/json/exporter.js +135 -54
- package/dist/src/formats/json/exporter.js.map +1 -1
- package/dist/src/formats/json/importer.d.ts +173 -52
- package/dist/src/formats/json/importer.d.ts.map +1 -1
- package/dist/src/formats/json/importer.js +899 -220
- package/dist/src/formats/json/importer.js.map +1 -1
- package/dist/src/formats/json/index.d.ts +3 -2
- package/dist/src/formats/json/index.d.ts.map +1 -1
- package/dist/src/formats/json/index.js +3 -2
- package/dist/src/formats/json/index.js.map +1 -1
- package/dist/src/formats/json/obographs-export.d.ts +68 -0
- package/dist/src/formats/json/obographs-export.d.ts.map +1 -0
- package/dist/src/formats/json/obographs-export.js +941 -0
- package/dist/src/formats/json/obographs-export.js.map +1 -0
- package/dist/src/formats/json/obographs.d.ts +26 -0
- package/dist/src/formats/json/obographs.d.ts.map +1 -1
- package/dist/src/formats/json/obographs.js +297 -80
- package/dist/src/formats/json/obographs.js.map +1 -1
- package/dist/src/formats/neo4j/exporter.d.ts +109 -21
- package/dist/src/formats/neo4j/exporter.d.ts.map +1 -1
- package/dist/src/formats/neo4j/exporter.js +239 -86
- package/dist/src/formats/neo4j/exporter.js.map +1 -1
- package/dist/src/formats/neo4j/header.d.ts +17 -4
- package/dist/src/formats/neo4j/header.d.ts.map +1 -1
- package/dist/src/formats/neo4j/header.js +36 -4
- package/dist/src/formats/neo4j/header.js.map +1 -1
- package/dist/src/formats/neo4j/importer.d.ts +107 -27
- package/dist/src/formats/neo4j/importer.d.ts.map +1 -1
- package/dist/src/formats/neo4j/importer.js +415 -63
- package/dist/src/formats/neo4j/importer.js.map +1 -1
- package/dist/src/formats/neo4j/index.d.ts +73 -23
- package/dist/src/formats/neo4j/index.d.ts.map +1 -1
- package/dist/src/formats/neo4j/index.js +65 -25
- package/dist/src/formats/neo4j/index.js.map +1 -1
- package/dist/src/formats/obo/exporter.d.ts +150 -0
- package/dist/src/formats/obo/exporter.d.ts.map +1 -0
- package/dist/src/formats/obo/exporter.js +1736 -0
- package/dist/src/formats/obo/exporter.js.map +1 -0
- package/dist/src/formats/obo/importer.d.ts +95 -19
- package/dist/src/formats/obo/importer.d.ts.map +1 -1
- package/dist/src/formats/obo/importer.js +475 -104
- package/dist/src/formats/obo/importer.js.map +1 -1
- package/dist/src/formats/obo/index.d.ts +6 -3
- package/dist/src/formats/obo/index.d.ts.map +1 -1
- package/dist/src/formats/obo/index.js +6 -3
- package/dist/src/formats/obo/index.js.map +1 -1
- package/dist/src/formats/obo/syntax.d.ts +108 -4
- package/dist/src/formats/obo/syntax.d.ts.map +1 -1
- package/dist/src/formats/obo/syntax.js +211 -34
- package/dist/src/formats/obo/syntax.js.map +1 -1
- package/dist/src/formats/pajek/exporter.d.ts +54 -16
- package/dist/src/formats/pajek/exporter.d.ts.map +1 -1
- package/dist/src/formats/pajek/exporter.js +67 -35
- package/dist/src/formats/pajek/exporter.js.map +1 -1
- package/dist/src/formats/pajek/importer.d.ts +84 -22
- package/dist/src/formats/pajek/importer.d.ts.map +1 -1
- package/dist/src/formats/pajek/importer.js +303 -83
- package/dist/src/formats/pajek/importer.js.map +1 -1
- package/dist/src/formats/pajek/index.d.ts +2 -1
- package/dist/src/formats/pajek/index.d.ts.map +1 -1
- package/dist/src/formats/pajek/index.js +2 -1
- package/dist/src/formats/pajek/index.js.map +1 -1
- package/dist/src/formats/pajek/syntax.d.ts +77 -14
- package/dist/src/formats/pajek/syntax.d.ts.map +1 -1
- package/dist/src/formats/pajek/syntax.js +186 -54
- package/dist/src/formats/pajek/syntax.js.map +1 -1
- package/dist/src/formats/xgmml/columns.d.ts +1 -0
- package/dist/src/formats/xgmml/columns.d.ts.map +1 -1
- package/dist/src/formats/xgmml/columns.js +4 -0
- package/dist/src/formats/xgmml/columns.js.map +1 -1
- package/dist/src/formats/xgmml/constants.d.ts +186 -56
- package/dist/src/formats/xgmml/constants.d.ts.map +1 -1
- package/dist/src/formats/xgmml/constants.js +181 -57
- package/dist/src/formats/xgmml/constants.js.map +1 -1
- package/dist/src/formats/xgmml/document.d.ts +65 -11
- package/dist/src/formats/xgmml/document.d.ts.map +1 -1
- package/dist/src/formats/xgmml/document.js +157 -28
- package/dist/src/formats/xgmml/document.js.map +1 -1
- package/dist/src/formats/xgmml/emit.d.ts +61 -3
- package/dist/src/formats/xgmml/emit.d.ts.map +1 -1
- package/dist/src/formats/xgmml/emit.js +129 -26
- package/dist/src/formats/xgmml/emit.js.map +1 -1
- package/dist/src/formats/xgmml/exporter.d.ts +13 -6
- package/dist/src/formats/xgmml/exporter.d.ts.map +1 -1
- package/dist/src/formats/xgmml/exporter.js +21 -22
- package/dist/src/formats/xgmml/exporter.js.map +1 -1
- package/dist/src/formats/xgmml/importer.d.ts +33 -12
- package/dist/src/formats/xgmml/importer.d.ts.map +1 -1
- package/dist/src/formats/xgmml/importer.js +35 -72
- package/dist/src/formats/xgmml/importer.js.map +1 -1
- package/dist/src/formats/xgmml/index.d.ts +1 -0
- package/dist/src/formats/xgmml/index.d.ts.map +1 -1
- package/dist/src/formats/xgmml/index.js +1 -0
- package/dist/src/formats/xgmml/index.js.map +1 -1
- package/dist/src/formats/xgmml/values.d.ts +8 -1
- package/dist/src/formats/xgmml/values.d.ts.map +1 -1
- package/dist/src/formats/xgmml/values.js +8 -3
- package/dist/src/formats/xgmml/values.js.map +1 -1
- package/dist/src/index.d.ts +23 -18
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +28 -16
- package/dist/src/index.js.map +1 -1
- package/dist/src/registry.d.ts +478 -92
- package/dist/src/registry.d.ts.map +1 -1
- package/dist/src/registry.js +807 -88
- package/dist/src/registry.js.map +1 -1
- package/dist/src/sniff.d.ts +61 -19
- package/dist/src/sniff.d.ts.map +1 -1
- package/dist/src/sniff.js +121 -29
- package/dist/src/sniff.js.map +1 -1
- package/dist/src/types.d.ts +362 -112
- package/dist/src/types.d.ts.map +1 -1
- package/dist/src/types.js +28 -7
- package/dist/src/types.js.map +1 -1
- package/dist/xgmml.js +2 -2
- package/docs/samples/README.md +25 -0
- package/docs/samples/got-edges.csv +353 -0
- package/docs/samples/got-network.graphml +1384 -0
- package/docs/samples/got-nodes.csv +108 -0
- package/docs/samples/got.cx +930 -0
- package/docs/samples/got.cx2 +465 -0
- package/docs/samples/got.gexf +471 -0
- package/docs/samples/got.gml +2650 -0
- package/docs/samples/got.json +2546 -0
- package/docs/samples/got.net +461 -0
- package/docs/samples/movies-nodes.csv +9 -0
- package/docs/samples/movies-rels.csv +8 -0
- package/docs/samples/networks.cys +0 -0
- package/docs/samples/proteins.xgmml +9 -0
- package/docs/samples/teams.gv +24 -0
- package/docs/samples/vehicles.obo +25 -0
- package/package.json +9 -4
- package/src/children.ts +18 -6
- package/src/common/attributes.ts +29 -11
- package/src/common/cell-budget.ts +11 -3
- package/src/common/choose.ts +89 -0
- package/src/common/codes.ts +490 -66
- package/src/common/compare.ts +472 -0
- package/src/common/cx-export.ts +432 -0
- package/src/common/declared-types.ts +40 -6
- package/src/common/direction.ts +78 -51
- package/src/common/escape.ts +39 -22
- package/src/common/export.ts +284 -47
- package/src/common/format.ts +30 -1
- package/src/common/ids.ts +14 -3
- package/src/common/input.ts +1057 -134
- package/src/common/json-elements.ts +1035 -199
- package/src/common/line-format.ts +249 -0
- package/src/common/lists.ts +7 -2
- package/src/common/ontology-export.ts +461 -0
- package/src/common/ontology.ts +31 -9
- package/src/common/options.ts +110 -15
- package/src/common/plural.ts +49 -0
- package/src/common/report.ts +168 -25
- package/src/common/temporal.ts +22 -5
- package/src/common/text.ts +62 -23
- package/src/common/weights.ts +74 -4
- package/src/common/writer.ts +37 -3
- package/src/common/xml.ts +479 -90
- package/src/common/zip.ts +169 -7
- package/src/formats/csv/exporter.ts +202 -47
- package/src/formats/csv/header.ts +50 -11
- package/src/formats/csv/importer.ts +1133 -245
- package/src/formats/csv/index.ts +106 -19
- package/src/formats/csv/records.ts +396 -122
- package/src/formats/csv/values.ts +1 -0
- package/src/formats/cx/exporter.ts +1483 -0
- package/src/formats/cx/importer.ts +890 -302
- package/src/formats/cx/index.ts +4 -3
- package/src/formats/cx2/exporter.ts +62 -339
- package/src/formats/cx2/importer.ts +318 -87
- package/src/formats/cx2/index.ts +2 -1
- package/src/formats/cys/constants.ts +62 -17
- package/src/formats/cys/exporter.ts +1368 -0
- package/src/formats/cys/importer.ts +659 -157
- package/src/formats/cys/index.ts +4 -2
- package/src/formats/cys/session.ts +142 -34
- package/src/formats/cys/tables.ts +47 -9
- package/src/formats/dot/exporter.ts +83 -37
- package/src/formats/dot/importer.ts +248 -54
- package/src/formats/dot/index.ts +2 -1
- package/src/formats/dot/names.ts +44 -11
- package/src/formats/dot/tokenizer.ts +25 -6
- package/src/formats/gexf/exporter.ts +57 -18
- package/src/formats/gexf/importer.ts +636 -105
- package/src/formats/gexf/index.ts +90 -21
- package/src/formats/gexf/schema.ts +67 -15
- package/src/formats/gml/exporter.ts +90 -36
- package/src/formats/gml/importer.ts +388 -67
- package/src/formats/gml/index.ts +85 -24
- package/src/formats/gml/syntax.ts +113 -28
- package/src/formats/graphml/constants.ts +178 -44
- package/src/formats/graphml/exporter.ts +52 -18
- package/src/formats/graphml/importer.ts +640 -60
- package/src/formats/graphml/index.ts +2 -1
- package/src/formats/graphml/tree.ts +6 -2
- package/src/formats/graphml/yfiles.ts +37 -15
- package/src/formats/json/dialect.ts +128 -29
- package/src/formats/json/exporter.ts +205 -68
- package/src/formats/json/importer.ts +1163 -253
- package/src/formats/json/index.ts +3 -1
- package/src/formats/json/obographs-export.ts +1197 -0
- package/src/formats/json/obographs.ts +353 -92
- package/src/formats/neo4j/exporter.ts +321 -102
- package/src/formats/neo4j/header.ts +44 -6
- package/src/formats/neo4j/importer.ts +512 -73
- package/src/formats/neo4j/index.ts +75 -23
- package/src/formats/obo/exporter.ts +2210 -0
- package/src/formats/obo/importer.ts +622 -109
- package/src/formats/obo/index.ts +6 -3
- package/src/formats/obo/syntax.ts +232 -37
- package/src/formats/pajek/exporter.ts +90 -42
- package/src/formats/pajek/importer.ts +407 -93
- package/src/formats/pajek/index.ts +2 -1
- package/src/formats/pajek/syntax.ts +216 -55
- package/src/formats/xgmml/columns.ts +10 -0
- package/src/formats/xgmml/constants.ts +183 -56
- package/src/formats/xgmml/document.ts +212 -34
- package/src/formats/xgmml/emit.ts +175 -34
- package/src/formats/xgmml/exporter.ts +36 -28
- package/src/formats/xgmml/importer.ts +64 -86
- package/src/formats/xgmml/index.ts +1 -0
- package/src/formats/xgmml/values.ts +12 -4
- package/src/index.ts +81 -11
- package/src/registry.ts +1121 -135
- package/src/sniff.ts +163 -32
- package/src/types.ts +385 -114
- package/dist/chunks/escape-B-tkk_Cl.js.map +0 -1
- package/dist/chunks/export-Bh60Dv-n.js +0 -582
- package/dist/chunks/export-Bh60Dv-n.js.map +0 -1
- package/dist/chunks/exporter-BGrsWamJ.js.map +0 -1
- package/dist/chunks/exporter-DIeGJXAZ.js.map +0 -1
- package/dist/chunks/importer-BWY2FFc5.js.map +0 -1
- package/dist/chunks/importer-DD-xv9_Y.js +0 -1471
- package/dist/chunks/importer-DD-xv9_Y.js.map +0 -1
- package/dist/chunks/importer-DET1tg6s.js.map +0 -1
- package/dist/chunks/importer-DEcKhsmQ.js +0 -1614
- package/dist/chunks/importer-DEcKhsmQ.js.map +0 -1
- package/dist/chunks/importer-DIrbbnAf.js.map +0 -1
- package/dist/chunks/importer-D_e7e7LX.js.map +0 -1
- package/dist/chunks/importer-eUREhBGj.js.map +0 -1
- package/dist/chunks/importer-vi3bSdtw.js.map +0 -1
- package/dist/chunks/importer-zGLo8Dg_.js.map +0 -1
- package/dist/chunks/json-elements-DDS8N2Dd.js +0 -779
- package/dist/chunks/json-elements-DDS8N2Dd.js.map +0 -1
- package/dist/chunks/ontology-BnrJ4I98.js +0 -113
- package/dist/chunks/ontology-BnrJ4I98.js.map +0 -1
- package/dist/chunks/records-dbRkxwaq.js.map +0 -1
- package/dist/chunks/report-B1z4WT9e.js +0 -2372
- package/dist/chunks/report-B1z4WT9e.js.map +0 -1
- package/dist/chunks/text-Dr0Ifpag.js.map +0 -1
- package/dist/chunks/weights-Dzba96G3.js +0 -176
- package/dist/chunks/weights-Dzba96G3.js.map +0 -1
- package/dist/chunks/writer-C7flM-Ih.js.map +0 -1
|
@@ -27,46 +27,67 @@
|
|
|
27
27
|
* as the DOT grammar says).
|
|
28
28
|
*
|
|
29
29
|
* The whole text is read first (design section 8.4 allows it for DOT). A grammar violation is
|
|
30
|
-
* fatal, as it is for Graphviz itself: the import aborts with ImportError (code
|
|
30
|
+
* fatal, as it is for Graphviz itself: the import aborts with ImportError (issue code E_SYNTAX)
|
|
31
31
|
* carrying the partial report. Errors the sink raises for one element are recorded and the element
|
|
32
32
|
* is skipped (section 8.6).
|
|
33
33
|
*/
|
|
34
34
|
import { GraphFormatError, INVALID_INDEX, } from "@graphty/graph-format";
|
|
35
35
|
import { declareResolved } from "../../common/attributes.js";
|
|
36
|
-
import {
|
|
36
|
+
import { importChosenGraph } from "../../common/choose.js";
|
|
37
|
+
import { AMBIGUOUS_GRAPH_NAME_CODE, COLUMN_RENAMED_CODE, DIRECTION_FORCED_CODE, DIRECTION_REFUSED_CODE, DUPLICATE_ATTRIBUTE_CODE, ELEMENT_ISSUE, EMPTY_INPUT_CODE, ENCODING_CONFLICT_CODE, ENCODING_FALLBACK_CODE, GRAPH_NOT_FOUND_CODE, ID_MERGED_CODE, INPUT_ISSUE, INVALID_ENCODING_CODE, INVALID_UTF8_CODE, MIXED_DIRECTION_CODE, MULTIPLE_GRAPHS_CODE, OPTION_IGNORED_CODE, PRECISION_CODE, ROLE_TAKEN_CODE, SINK_OPTION_CODE, SYNTAX_CODE, UNKNOWN_ENCODING_CODE, } from "../../common/codes.js";
|
|
37
38
|
import { DirectionResolver } from "../../common/direction.js";
|
|
39
|
+
import { survivesF32 } from "../../common/format.js";
|
|
38
40
|
import { IdCoercer } from "../../common/ids.js";
|
|
39
|
-
import { readText, throwIfAborted } from "../../common/input.js";
|
|
40
|
-
import { reportSinkOptions, reportUnusedOptions, resolveImportOptions, } from "../../common/options.js";
|
|
41
|
+
import { canonicalEncoding, readText, throwIfAborted } from "../../common/input.js";
|
|
42
|
+
import { graphChosen, reportSinkOptions, reportUnusedOptions, resolveImportOptions, } from "../../common/options.js";
|
|
43
|
+
import { plural } from "../../common/plural.js";
|
|
41
44
|
import { ImportReportBuilder } from "../../common/report.js";
|
|
42
45
|
import { inferTextDtype, parseTextCell, TextCellWriter, WIDENING_UNSUPPORTED_CODE } from "../../common/text.js";
|
|
43
46
|
import { parseWeightText } from "../../common/weights.js";
|
|
44
47
|
import { CLUSTER_COLUMN, DOT_FORMAT, DOT_ORIGIN, KEY_ATTRIBUTE, LABEL_ATTRIBUTE, PARENT_COLUMN, PIN_ATTRIBUTE, POS_ATTRIBUTE, SOURCE_PORT_COLUMN, TARGET_PORT_COLUMN, } from "./names.js";
|
|
45
48
|
import { DotSyntaxError, DotTokenizer } from "./tokenizer.js";
|
|
46
49
|
/**
|
|
47
|
-
* The issue codes the DOT importer records
|
|
48
|
-
* the other importers
|
|
50
|
+
* The issue codes the DOT importer records, by name: the codes shared with
|
|
51
|
+
* the other importers and the DOT-specific ones. A key is the code without
|
|
49
52
|
* its severity and format prefixes.
|
|
53
|
+
* @category Built-in formats
|
|
50
54
|
*/
|
|
51
55
|
export const DOT_ISSUE = Object.freeze({
|
|
52
|
-
|
|
56
|
+
...INPUT_ISSUE,
|
|
57
|
+
...ELEMENT_ISSUE,
|
|
58
|
+
/** The text breaks DOT's syntax; the message says where. The import stops. */
|
|
53
59
|
SYNTAX: SYNTAX_CODE,
|
|
54
|
-
/** The input holds no graph
|
|
60
|
+
/** The input holds no graph: it is empty or only comments. The import stops. */
|
|
55
61
|
EMPTY_INPUT: EMPTY_INPUT_CODE,
|
|
56
|
-
/** The input
|
|
62
|
+
/** The input is not valid UTF-8. The import stops. */
|
|
57
63
|
INVALID_UTF8: INVALID_UTF8_CODE,
|
|
58
|
-
/**
|
|
64
|
+
/**
|
|
65
|
+
* Some bytes are not valid in the encoding that was chosen (by a byte order mark, the file's declaration or the
|
|
66
|
+
* `encoding` option). The import stops.
|
|
67
|
+
*/
|
|
59
68
|
INVALID_ENCODING: INVALID_ENCODING_CODE,
|
|
60
69
|
/** Bytes that are not UTF-8 and declare no encoding were read as windows-1252. */
|
|
61
70
|
ENCODING_FALLBACK: ENCODING_FALLBACK_CODE,
|
|
62
71
|
/** A declared encoding the platform cannot decode was ignored. */
|
|
63
72
|
UNKNOWN_ENCODING: UNKNOWN_ENCODING_CODE,
|
|
64
|
-
/**
|
|
73
|
+
/** A declared encoding the byte order mark contradicts (the mark wins). */
|
|
74
|
+
ENCODING_CONFLICT: ENCODING_CONFLICT_CODE,
|
|
75
|
+
/** Subgraphs or braces are nested deeper than graph-io reads. The import stops. */
|
|
65
76
|
NESTING: "E_DOT_NESTING",
|
|
66
|
-
/**
|
|
77
|
+
/**
|
|
78
|
+
* An edge operator contradicting the graph keyword, read under mismatchedEdgeOperator "operator" or "header".
|
|
79
|
+
* Under "error" the import stops with E_SYNTAX instead.
|
|
80
|
+
*/
|
|
67
81
|
EDGE_OPERATOR: "W_DOT_EDGE_OPERATOR",
|
|
68
|
-
/**
|
|
82
|
+
/**
|
|
83
|
+
* The file holds several graphs and only the first was read. It is not added when `graphIndex` or `graphName` chose the graph.
|
|
84
|
+
* `importAllGraphs()` reads every one.
|
|
85
|
+
*/
|
|
69
86
|
MULTIPLE_GRAPHS: MULTIPLE_GRAPHS_CODE,
|
|
87
|
+
/** `graphIndex` or `graphName` names no graph of the file; the message lists the graphs it holds. The import stops. */
|
|
88
|
+
GRAPH_NOT_FOUND: GRAPH_NOT_FOUND_CODE,
|
|
89
|
+
/** `graphName` matches more than one graph; pass `graphIndex`. The import stops. */
|
|
90
|
+
AMBIGUOUS_GRAPH_NAME: AMBIGUOUS_GRAPH_NAME_CODE,
|
|
70
91
|
/** A badly delimited numeral (`1e3`) split into two tokens, as Graphviz does with a warning. */
|
|
71
92
|
NUMERAL_AMBIGUITY: "W_DOT_NUMERAL_AMBIGUITY",
|
|
72
93
|
/** Attributes of a subgraph that is not a cluster (rank=same and the like) cannot be represented. */
|
|
@@ -77,29 +98,58 @@ export const DOT_ISSUE = Object.freeze({
|
|
|
77
98
|
CLUSTER_NODE_MERGED: "W_DOT_CLUSTER_NODE_MERGED",
|
|
78
99
|
/** A node mentioned in two unrelated clusters keeps the first. */
|
|
79
100
|
CLUSTER_CONFLICT: "W_DOT_CLUSTER_CONFLICT",
|
|
80
|
-
/** A node `pos`
|
|
101
|
+
/** A node's `pos` is not a point, or is too large for a 32-bit float position; the value was dropped. */
|
|
81
102
|
BAD_POS: "W_DOT_BAD_POS",
|
|
103
|
+
/** Node `pos` values mix two and three coordinates; the position column records the first's. */
|
|
104
|
+
POS_DIMS: "W_DOT_POS_DIMS",
|
|
105
|
+
/** An integer beyond 2^53 was stored as the nearest 64-bit float; pass `long: "string"` to keep every digit. */
|
|
106
|
+
PRECISION: PRECISION_CODE,
|
|
107
|
+
/** The same attribute twice in one statement's attribute lists; the last value stands, as in Graphviz. */
|
|
108
|
+
DUPLICATE_ATTRIBUTE: DUPLICATE_ATTRIBUTE_CODE,
|
|
109
|
+
/** The second part of a port (`a:p:zz`) is not a compass point; kept as written, as Graphviz warns. */
|
|
110
|
+
COMPASS_POINT: "W_DOT_COMPASS_POINT",
|
|
111
|
+
/** A `charset` attribute beyond the head the decoder reads it from; the input was decoded without it. */
|
|
112
|
+
LATE_CHARSET: "W_DOT_LATE_CHARSET",
|
|
82
113
|
/** A parallel edge merged into an earlier one under `strict`. */
|
|
83
114
|
STRICT_MERGED: "W_DOT_STRICT_MERGED",
|
|
84
115
|
/** An edge merged into an earlier one with the same endpoints and `key`. */
|
|
85
116
|
KEY_MERGED: "W_DOT_KEY_MERGED",
|
|
86
|
-
/**
|
|
117
|
+
/**
|
|
118
|
+
* You read into a graph builder that already has an id, label or position attribute, so this file's one is kept as
|
|
119
|
+
* a plain attribute.
|
|
120
|
+
*/
|
|
87
121
|
ROLE_TAKEN: ROLE_TAKEN_CODE,
|
|
88
|
-
/**
|
|
122
|
+
/**
|
|
123
|
+
* An attribute was renamed `<name>#<suffix>` because another attribute already has its name, for example
|
|
124
|
+
* two attributes declared with the same name.
|
|
125
|
+
*/
|
|
89
126
|
COLUMN_RENAMED: COLUMN_RENAMED_CODE,
|
|
90
|
-
/**
|
|
127
|
+
/** You set an option this format does not use; it had no effect. The message names the option. */
|
|
91
128
|
OPTION_IGNORED: OPTION_IGNORED_CODE,
|
|
92
|
-
/** Two
|
|
129
|
+
/** Two different id texts became the same number because `ids` is "number", so their nodes were merged. */
|
|
93
130
|
ID_MERGED: ID_MERGED_CODE,
|
|
94
|
-
/**
|
|
131
|
+
/**
|
|
132
|
+
* You read into your own graph builder, which was created with a different `addMissingNodes`, `duplicateEdges`,
|
|
133
|
+
* `selfLoops` or `weightDtype` than the option you passed; the builder's setting applies.
|
|
134
|
+
*/
|
|
95
135
|
SINK_OPTION: SINK_OPTION_CODE,
|
|
96
|
-
/**
|
|
136
|
+
/**
|
|
137
|
+
* You read into a graph builder whose direction is already set, or which already holds edges, so the file is read
|
|
138
|
+
* with the builder's direction instead of its own.
|
|
139
|
+
*/
|
|
97
140
|
DIRECTION_REFUSED: DIRECTION_REFUSED_CODE,
|
|
98
|
-
/** Edges
|
|
141
|
+
/** Edges of the other direction were read with the direction `onMixedDirection` chose. */
|
|
99
142
|
DIRECTION_FORCED: DIRECTION_FORCED_CODE,
|
|
100
|
-
/**
|
|
143
|
+
/**
|
|
144
|
+
* The graph has both directed and undirected edges and `onMixedDirection` is "error". An import stops; a save to a
|
|
145
|
+
* format that holds one direction per file fails with E_DIRECTED. Pass "directed" or "undirected" to read or write
|
|
146
|
+
* it anyway.
|
|
147
|
+
*/
|
|
101
148
|
MIXED_DIRECTION: MIXED_DIRECTION_CODE,
|
|
102
|
-
/**
|
|
149
|
+
/**
|
|
150
|
+
* Your graph builder cannot change an attribute's type after its first value, so a text column keeps the type of
|
|
151
|
+
* its first values.
|
|
152
|
+
*/
|
|
103
153
|
WIDENING_UNSUPPORTED: WIDENING_UNSUPPORTED_CODE,
|
|
104
154
|
});
|
|
105
155
|
/** The common options the DOT importer reads (the rest is reported by reportUnusedOptions). */
|
|
@@ -129,12 +179,22 @@ const MAX_ANCESTOR_WALK = 4096;
|
|
|
129
179
|
*/
|
|
130
180
|
const DOT_HEADER = /^\s*(strict\s+)?(di)?graph(?=[\s{"/]|$)(?!\s*\[)/i;
|
|
131
181
|
const TRUE_TEXTS = new Set(["true", "yes", "1"]);
|
|
132
|
-
const
|
|
182
|
+
const COMPASS_POINTS = new Set(["n", "ne", "e", "se", "s", "sw", "w", "nw", "c", "_"]);
|
|
133
183
|
/**
|
|
134
|
-
*
|
|
184
|
+
* A DOT number: digits with an optional fraction, or a bare fraction (`.5`), then an exponent.
|
|
185
|
+
* Written so each digit has exactly one way to match; `[0-9]*\.?[0-9]+` took quadratic time on a
|
|
186
|
+
* long run of digits.
|
|
187
|
+
*/
|
|
188
|
+
const POINT_NUMBER = String.raw `[-+]?(?:\d+(?:\.\d+)?|\.\d+)(?:[eE][-+]?\d+)?`;
|
|
189
|
+
/** A point "x,y[,z][!]". The `!` and its trailing space are one optional group, so spaces cannot split two ways. */
|
|
190
|
+
const POINT_TEXT = new RegExp(String.raw `^\s*(${POINT_NUMBER})\s*,\s*(${POINT_NUMBER})(?:\s*,\s*(${POINT_NUMBER}))?\s*(?:(!)\s*)?$`);
|
|
191
|
+
/**
|
|
192
|
+
* The importer plugin for DOT / Graphviz text.
|
|
193
|
+
* @category Built-in formats
|
|
135
194
|
*/
|
|
136
195
|
export const dotImporter = Object.freeze({
|
|
137
196
|
format: DOT_FORMAT,
|
|
197
|
+
options: Object.freeze(["mismatchedEdgeOperator", "positions"]),
|
|
138
198
|
extensions: EXTENSIONS,
|
|
139
199
|
mimeTypes: MIME_TYPES,
|
|
140
200
|
/**
|
|
@@ -159,6 +219,10 @@ export const dotImporter = Object.freeze({
|
|
|
159
219
|
* @returns the import report; ImportError (E_IMPORT) on a syntax error or beyond the error limit
|
|
160
220
|
*/
|
|
161
221
|
async import(input, sink, options) {
|
|
222
|
+
if (graphChosen(options)) {
|
|
223
|
+
// the choice is honored here too, not only by the registry
|
|
224
|
+
return importChosenGraph(dotImporter, input, sink, options);
|
|
225
|
+
}
|
|
162
226
|
const resolved = resolveImportOptions(options, {
|
|
163
227
|
ids: "canonical",
|
|
164
228
|
defaultDirected: true,
|
|
@@ -168,14 +232,22 @@ export const dotImporter = Object.freeze({
|
|
|
168
232
|
const report = new ImportReportBuilder(DOT_FORMAT, resolved.errorLimit);
|
|
169
233
|
reportUnusedOptions(options, report, USED_OPTIONS);
|
|
170
234
|
reportSinkOptions(sink, options, report);
|
|
171
|
-
const
|
|
235
|
+
const head = {};
|
|
236
|
+
const text = await readText(input, report, {
|
|
237
|
+
...resolved,
|
|
238
|
+
declaredEncoding: (h) => (head.charset = dotCharset(h)),
|
|
239
|
+
declarationBytes: CHARSET_HEAD_BYTES,
|
|
240
|
+
});
|
|
172
241
|
const reports = { current: report };
|
|
173
242
|
const lexer = dotLexer(text, reports);
|
|
174
243
|
const first = guard(report, () => lexer.next());
|
|
175
|
-
const
|
|
244
|
+
const parser = new DotParser(lexer, sink, report, resolved, mismatch, options?.positions !== false);
|
|
245
|
+
parser.headCharset = head.charset;
|
|
246
|
+
const trailing = parseGraph(parser, report, first);
|
|
176
247
|
if (trailing.kind !== "eof") {
|
|
248
|
+
// anything after the graph must be graphs too: Graphviz refuses the file otherwise
|
|
177
249
|
const skipped = guard(report, () => countGraphs(lexer, trailing));
|
|
178
|
-
report.warning("unsupported", MULTIPLE_GRAPHS_CODE, `the input holds ${skipped} more graph(
|
|
250
|
+
report.warning("unsupported", MULTIPLE_GRAPHS_CODE, `the input holds ${skipped} more graph${plural(skipped)} after the first; the first is read (graphIndex or graphName chooses another; importAllGraphs() reads every one)`, { line: trailing.line });
|
|
179
251
|
}
|
|
180
252
|
// an abort raised during the last few statements (after the last periodic check) still rejects
|
|
181
253
|
throwIfAborted(resolved.signal);
|
|
@@ -197,7 +269,12 @@ export const dotImporter = Object.freeze({
|
|
|
197
269
|
const mismatch = mismatchOption(options?.mismatchedEdgeOperator);
|
|
198
270
|
const first = new ImportReportBuilder(DOT_FORMAT, resolved.errorLimit);
|
|
199
271
|
reportUnusedOptions(options, first, USED_OPTIONS);
|
|
200
|
-
const
|
|
272
|
+
const head = {};
|
|
273
|
+
const text = await readText(input, first, {
|
|
274
|
+
...resolved,
|
|
275
|
+
declaredEncoding: (h) => (head.charset = dotCharset(h)),
|
|
276
|
+
declarationBytes: CHARSET_HEAD_BYTES,
|
|
277
|
+
});
|
|
201
278
|
const reports = { current: first };
|
|
202
279
|
const lexer = dotLexer(text, reports);
|
|
203
280
|
const done = [];
|
|
@@ -207,7 +284,9 @@ export const dotImporter = Object.freeze({
|
|
|
207
284
|
reports.current = report;
|
|
208
285
|
const sink = sinkFor(done.length);
|
|
209
286
|
reportSinkOptions(sink, options, report);
|
|
210
|
-
|
|
287
|
+
const parser = new DotParser(lexer, sink, report, resolved, mismatch, options?.positions !== false);
|
|
288
|
+
parser.headCharset = head.charset;
|
|
289
|
+
token = parseGraph(parser, report, token);
|
|
211
290
|
throwIfAborted(resolved.signal);
|
|
212
291
|
done.push(report.finish());
|
|
213
292
|
} while (token.kind !== "eof");
|
|
@@ -268,6 +347,9 @@ function countGraphs(lexer, first) {
|
|
|
268
347
|
if (isKeyword(token, "strict")) {
|
|
269
348
|
token = lexer.next();
|
|
270
349
|
}
|
|
350
|
+
if (isPunct(token, "}")) {
|
|
351
|
+
throw new DotSyntaxError('unexpected "}" after the end of the graph: no "{" is open', token.line);
|
|
352
|
+
}
|
|
271
353
|
if (!isKeyword(token, "graph") && !isKeyword(token, "digraph")) {
|
|
272
354
|
throw new DotSyntaxError(`expected "graph" or "digraph", found ${describeToken(token)}`, token.line);
|
|
273
355
|
}
|
|
@@ -295,18 +377,49 @@ function countGraphs(lexer, first) {
|
|
|
295
377
|
}
|
|
296
378
|
return count;
|
|
297
379
|
}
|
|
298
|
-
/**
|
|
299
|
-
const
|
|
380
|
+
/** How many leading bytes the `charset` search sees: a license comment may come before the graph. */
|
|
381
|
+
const CHARSET_HEAD_BYTES = 64 * 1024;
|
|
300
382
|
/**
|
|
301
383
|
* The encoding a DOT file declares with the graph attribute `charset` (Graphviz reads UTF-8,
|
|
302
384
|
* Latin1 and Big-5), for the shared byte decoder; Graphviz's spellings `latin-1` and `big-5` are
|
|
303
|
-
* mapped to the WHATWG labels.
|
|
385
|
+
* mapped to the WHATWG labels. Only a graph-level assignment counts (`charset=...` as a statement
|
|
386
|
+
* or inside `graph [...]`), never one in a comment, a quoted value or a node / edge attribute list.
|
|
304
387
|
* @param head - the start of the file, decoded as windows-1252
|
|
305
388
|
* @returns the declared label, or null
|
|
306
389
|
*/
|
|
307
390
|
function dotCharset(head) {
|
|
308
|
-
const
|
|
309
|
-
|
|
391
|
+
const lexer = new DotTokenizer(head);
|
|
392
|
+
// the attribute list an open `[` belongs to: the graph's (`graph [`) or a node's / an edge's
|
|
393
|
+
let list = null;
|
|
394
|
+
let previous = null;
|
|
395
|
+
try {
|
|
396
|
+
let token = lexer.next();
|
|
397
|
+
while (token.kind !== "eof") {
|
|
398
|
+
if (isPunct(token, "[")) {
|
|
399
|
+
list = previous !== null && isKeyword(previous, "graph") ? "graph" : "other";
|
|
400
|
+
}
|
|
401
|
+
else if (isPunct(token, "]")) {
|
|
402
|
+
list = null;
|
|
403
|
+
}
|
|
404
|
+
else if (list !== "other" && isKeyword(token, "charset")) {
|
|
405
|
+
const equals = lexer.next();
|
|
406
|
+
const value = isPunct(equals, "=") ? lexer.next() : equals;
|
|
407
|
+
if (value !== equals && value.kind === "id") {
|
|
408
|
+
return value.text.replace(/^(latin|big)-/i, "$1");
|
|
409
|
+
}
|
|
410
|
+
token = value;
|
|
411
|
+
}
|
|
412
|
+
previous = token;
|
|
413
|
+
token = lexer.next();
|
|
414
|
+
}
|
|
415
|
+
}
|
|
416
|
+
catch (err) {
|
|
417
|
+
// the head ends inside a comment or a string: nothing further is seen
|
|
418
|
+
if (!(err instanceof DotSyntaxError)) {
|
|
419
|
+
throw err;
|
|
420
|
+
}
|
|
421
|
+
}
|
|
422
|
+
return null;
|
|
310
423
|
}
|
|
311
424
|
/**
|
|
312
425
|
* Resolve the mismatchedEdgeOperator option.
|
|
@@ -435,6 +548,14 @@ class DotParser {
|
|
|
435
548
|
this.targetPortHandle = INVALID_INDEX;
|
|
436
549
|
/** The current subgraph nesting depth. */
|
|
437
550
|
this.depth = 0;
|
|
551
|
+
/** The coordinate count of the first `pos`, or 0 before one. */
|
|
552
|
+
this.posDims = 0;
|
|
553
|
+
/**
|
|
554
|
+
* What the decoder's look at the head found for `charset`: a label, null for none, undefined
|
|
555
|
+
* when it never looked (text input, a BOM, the encoding option). A `charset` assignment read
|
|
556
|
+
* when the head had none came too late to decode by.
|
|
557
|
+
*/
|
|
558
|
+
this.headCharset = undefined;
|
|
438
559
|
/** The inferred attribute columns by name, per domain (the 5.1 text grammar per column). */
|
|
439
560
|
this.nodeWriters = new Map();
|
|
440
561
|
this.edgeWriters = new Map();
|
|
@@ -627,7 +748,11 @@ class DotParser {
|
|
|
627
748
|
let { text } = this.identifier();
|
|
628
749
|
if (isPunct(lexer.peek(), ":")) {
|
|
629
750
|
lexer.next();
|
|
630
|
-
|
|
751
|
+
const compass = this.identifier();
|
|
752
|
+
text += `:${compass.text}`;
|
|
753
|
+
if (!COMPASS_POINTS.has(compass.text)) {
|
|
754
|
+
this.report.warning("validation-error", DOT_ISSUE.COMPASS_POINT, `port ${JSON.stringify(text)}: ${JSON.stringify(compass.text)} is not a compass point (n, ne, e, se, s, sw, w, nw, c, _); the port is kept as written`, { line: compass.line, element: text });
|
|
755
|
+
}
|
|
631
756
|
}
|
|
632
757
|
return text;
|
|
633
758
|
}
|
|
@@ -853,6 +978,7 @@ class DotParser {
|
|
|
853
978
|
attributeList() {
|
|
854
979
|
const { lexer } = this;
|
|
855
980
|
const out = [];
|
|
981
|
+
const names = new Set();
|
|
856
982
|
while (isPunct(lexer.peek(), "[")) {
|
|
857
983
|
lexer.next();
|
|
858
984
|
for (;;) {
|
|
@@ -871,6 +997,10 @@ class DotParser {
|
|
|
871
997
|
throw new DotSyntaxError(`expected "=" after attribute name ${JSON.stringify(name.text)}, found ${describeToken(eq)}`, eq.line);
|
|
872
998
|
}
|
|
873
999
|
const value = this.identifier();
|
|
1000
|
+
if (names.has(name.text)) {
|
|
1001
|
+
this.report.warning("merged", DOT_ISSUE.DUPLICATE_ATTRIBUTE, `attribute ${JSON.stringify(name.text)} is set twice in one statement; the last value ${JSON.stringify(value.text)} stands`, { line: name.line, element: name.text });
|
|
1002
|
+
}
|
|
1003
|
+
names.add(name.text);
|
|
874
1004
|
out.push({ name: name.text, value: value.text, line: name.line });
|
|
875
1005
|
}
|
|
876
1006
|
}
|
|
@@ -957,7 +1087,7 @@ class DotParser {
|
|
|
957
1087
|
this.report.warnOnce("coercion", DOT_ISSUE.EDGE_OPERATOR, `${message}; read with the graph's direction (mismatchedEdgeOperator: "header")`, { line: op.line });
|
|
958
1088
|
return this.directed ? "directed" : "undirected";
|
|
959
1089
|
case "operator":
|
|
960
|
-
this.report.warnOnce("coercion", DOT_ISSUE.EDGE_OPERATOR, `${message}; read with the operator's direction and
|
|
1090
|
+
this.report.warnOnce("coercion", DOT_ISSUE.EDGE_OPERATOR, `${message}; read with the operator's direction, and onMixedDirection decides how the mixed graph is stored`, { line: op.line });
|
|
961
1091
|
return operatorDirected ? "directed" : "undirected";
|
|
962
1092
|
default: {
|
|
963
1093
|
const name = this.mismatch;
|
|
@@ -1046,7 +1176,7 @@ class DotParser {
|
|
|
1046
1176
|
const weightText = weightFrom === null ? undefined : effective.get(weightFrom);
|
|
1047
1177
|
if (weightText !== undefined) {
|
|
1048
1178
|
try {
|
|
1049
|
-
weight = parseWeightText(weightText);
|
|
1179
|
+
weight = parseWeightText(weightText, this.report);
|
|
1050
1180
|
}
|
|
1051
1181
|
catch (err) {
|
|
1052
1182
|
this.report.recordError(err, where);
|
|
@@ -1200,6 +1330,12 @@ class DotParser {
|
|
|
1200
1330
|
* @param attribute - the attribute
|
|
1201
1331
|
*/
|
|
1202
1332
|
setGraphAttribute(attribute) {
|
|
1333
|
+
if (attribute.name.toLowerCase() === "charset" && this.headCharset === null) {
|
|
1334
|
+
const canonical = canonicalEncoding(attribute.value);
|
|
1335
|
+
if (canonical !== "utf-8") {
|
|
1336
|
+
this.report.warning("unsupported", DOT_ISSUE.LATE_CHARSET, `charset ${JSON.stringify(attribute.value)} is declared beyond the first 1024 bytes, after the input was decoded without it; pass the encoding option to decode it as declared`, { line: attribute.line, element: attribute.name });
|
|
1337
|
+
}
|
|
1338
|
+
}
|
|
1203
1339
|
try {
|
|
1204
1340
|
if (attribute.name === LABEL_ATTRIBUTE) {
|
|
1205
1341
|
this.sink.setGraphValue(attribute.name, attribute.value, { dtype: "string", origin: DOT_ORIGIN });
|
|
@@ -1233,7 +1369,22 @@ class DotParser {
|
|
|
1233
1369
|
const y = Number(match[2]);
|
|
1234
1370
|
const z = match[3] === undefined ? 0 : Number(match[3]);
|
|
1235
1371
|
const dims = match[3] === undefined ? 2 : 3;
|
|
1236
|
-
|
|
1372
|
+
const point = [x, y, z];
|
|
1373
|
+
if (point.some((v) => !Number.isFinite(Math.fround(v)))) {
|
|
1374
|
+
// the position column is f32: a half-infinite point would be a half-valid position
|
|
1375
|
+
this.report.warning("validation-error", DOT_ISSUE.BAD_POS, `pos ${JSON.stringify(text)} is beyond the f32 range of the position column; dropped`, { line, element });
|
|
1376
|
+
return;
|
|
1377
|
+
}
|
|
1378
|
+
if (!point.every(survivesF32)) {
|
|
1379
|
+
this.report.warnOnce("precision", DOT_ISSUE.PRECISION, `pos ${JSON.stringify(text)} has a coordinate the f32 position column rounds (warned once; positions=false keeps pos as written)`, { line, element }, `${DOT_ISSUE.PRECISION}:pos`);
|
|
1380
|
+
}
|
|
1381
|
+
if (this.posDims === 0) {
|
|
1382
|
+
this.posDims = dims;
|
|
1383
|
+
}
|
|
1384
|
+
else if (dims !== this.posDims) {
|
|
1385
|
+
this.report.warnOnce("validation-error", DOT_ISSUE.POS_DIMS, `pos values mix ${this.posDims} and ${dims} coordinates; the position column records sourceDims ${this.posDims}`, { line, element });
|
|
1386
|
+
}
|
|
1387
|
+
this.sink.setNodeValue(this.positionColumn(dims), index, point);
|
|
1237
1388
|
if (match[4] === "!") {
|
|
1238
1389
|
this.sink.setNodeValue(PIN_ATTRIBUTE, index, true);
|
|
1239
1390
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"importer.js","sourceRoot":"","sources":["../../../../src/formats/dot/importer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"importer.js","sourceRoot":"","sources":["../../../../src/formats/dot/importer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* The DOT / Graphviz subpath entry (`@graphty/graph-io/dot
|
|
2
|
+
* The DOT / Graphviz subpath entry (`@graphty/graph-io/dot`): the importer and
|
|
3
3
|
* exporter plugins with their option types and issue / loss codes.
|
|
4
|
+
* @module @graphty/graph-io/dot
|
|
4
5
|
*/
|
|
5
6
|
export { DOT_LOSS, dotExporter, type DotExportOptions } from "./exporter.js";
|
|
6
7
|
export { DOT_ISSUE, dotImporter, type DotImportOptions } from "./importer.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/formats/dot/index.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/formats/dot/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,KAAK,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAC7E,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,KAAK,gBAAgB,EAAE,MAAM,eAAe,CAAC"}
|