@graphty/graph-io 0.3.18 → 0.3.20

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 (235) hide show
  1. package/README.md +80 -2
  2. package/dist/chunks/{escape-D-gZWO26.js → escape-B-tkk_Cl.js} +74 -16
  3. package/dist/chunks/escape-B-tkk_Cl.js.map +1 -0
  4. package/dist/chunks/{writer-GAdltGmC.js → export-Bh60Dv-n.js} +7 -252
  5. package/dist/chunks/export-Bh60Dv-n.js.map +1 -0
  6. package/dist/chunks/exporter-BGrsWamJ.js +736 -0
  7. package/dist/chunks/exporter-BGrsWamJ.js.map +1 -0
  8. package/dist/chunks/exporter-DIeGJXAZ.js +834 -0
  9. package/dist/chunks/exporter-DIeGJXAZ.js.map +1 -0
  10. package/dist/chunks/{importer-Br_QeAeE.js → importer-BWY2FFc5.js} +28 -6
  11. package/dist/chunks/importer-BWY2FFc5.js.map +1 -0
  12. package/dist/chunks/importer-BaQpCEcJ.js +2194 -0
  13. package/dist/chunks/importer-BaQpCEcJ.js.map +1 -0
  14. package/dist/chunks/importer-DD-xv9_Y.js +1471 -0
  15. package/dist/chunks/importer-DD-xv9_Y.js.map +1 -0
  16. package/dist/chunks/{importer-aNJfe0qu.js → importer-DEcKhsmQ.js} +2 -2
  17. package/dist/chunks/{importer-aNJfe0qu.js.map → importer-DEcKhsmQ.js.map} +1 -1
  18. package/dist/chunks/{importer-DHagxvDD.js → importer-DIrbbnAf.js} +6 -4
  19. package/dist/chunks/{importer-DHagxvDD.js.map → importer-DIrbbnAf.js.map} +1 -1
  20. package/dist/chunks/importer-D_e7e7LX.js +3055 -0
  21. package/dist/chunks/importer-D_e7e7LX.js.map +1 -0
  22. package/dist/chunks/{importer-Du5crN9l.js → importer-Wv4C4gaF.js} +278 -82
  23. package/dist/chunks/importer-Wv4C4gaF.js.map +1 -0
  24. package/dist/chunks/importer-vi3bSdtw.js +1713 -0
  25. package/dist/chunks/importer-vi3bSdtw.js.map +1 -0
  26. package/dist/chunks/{importer-d0uQxFp6.js → importer-zGLo8Dg_.js} +6 -4
  27. package/dist/chunks/{importer-d0uQxFp6.js.map → importer-zGLo8Dg_.js.map} +1 -1
  28. package/dist/chunks/json-elements-DDS8N2Dd.js +779 -0
  29. package/dist/chunks/json-elements-DDS8N2Dd.js.map +1 -0
  30. package/dist/chunks/{records-Bk9jgodz.js → records-dbRkxwaq.js} +2 -2
  31. package/dist/chunks/{records-Bk9jgodz.js.map → records-dbRkxwaq.js.map} +1 -1
  32. package/dist/chunks/{report-BOk0p5y8.js → report-B1z4WT9e.js} +143 -111
  33. package/dist/chunks/{report-BOk0p5y8.js.map → report-B1z4WT9e.js.map} +1 -1
  34. package/dist/chunks/weights-Dzba96G3.js +176 -0
  35. package/dist/chunks/weights-Dzba96G3.js.map +1 -0
  36. package/dist/chunks/writer-C7flM-Ih.js +77 -0
  37. package/dist/chunks/writer-C7flM-Ih.js.map +1 -0
  38. package/dist/csv.js +6 -4
  39. package/dist/csv.js.map +1 -1
  40. package/dist/cx.d.ts +1 -0
  41. package/dist/cx.js +6 -0
  42. package/dist/cx.js.map +1 -0
  43. package/dist/cx2.d.ts +1 -0
  44. package/dist/cx2.js +10 -0
  45. package/dist/cx2.js.map +1 -0
  46. package/dist/cys.d.ts +1 -0
  47. package/dist/cys.js +6 -0
  48. package/dist/cys.js.map +1 -0
  49. package/dist/dot.js +1 -1
  50. package/dist/gexf.js +16 -4
  51. package/dist/gexf.js.map +1 -1
  52. package/dist/gml.js +13 -14
  53. package/dist/gml.js.map +1 -1
  54. package/dist/graph-io.js +302 -399
  55. package/dist/graph-io.js.map +1 -1
  56. package/dist/graphml.js +1 -1
  57. package/dist/json.js +1 -1
  58. package/dist/neo4j.js +6 -4
  59. package/dist/neo4j.js.map +1 -1
  60. package/dist/obo.js +1 -1
  61. package/dist/pajek.js +1 -1
  62. package/dist/src/common/cell-budget.d.ts +84 -0
  63. package/dist/src/common/cell-budget.d.ts.map +1 -0
  64. package/dist/src/common/cell-budget.js +138 -0
  65. package/dist/src/common/cell-budget.js.map +1 -0
  66. package/dist/src/common/input.d.ts +10 -0
  67. package/dist/src/common/input.d.ts.map +1 -1
  68. package/dist/src/common/input.js +39 -0
  69. package/dist/src/common/input.js.map +1 -1
  70. package/dist/src/common/json-elements.d.ts +286 -0
  71. package/dist/src/common/json-elements.d.ts.map +1 -0
  72. package/dist/src/common/json-elements.js +926 -0
  73. package/dist/src/common/json-elements.js.map +1 -0
  74. package/dist/src/common/options.d.ts +6 -0
  75. package/dist/src/common/options.d.ts.map +1 -1
  76. package/dist/src/common/options.js +1 -1
  77. package/dist/src/common/options.js.map +1 -1
  78. package/dist/src/common/xml.d.ts +37 -3
  79. package/dist/src/common/xml.d.ts.map +1 -1
  80. package/dist/src/common/xml.js +86 -6
  81. package/dist/src/common/xml.js.map +1 -1
  82. package/dist/src/common/zip.d.ts +92 -0
  83. package/dist/src/common/zip.d.ts.map +1 -0
  84. package/dist/src/common/zip.js +399 -0
  85. package/dist/src/common/zip.js.map +1 -0
  86. package/dist/src/formats/cx/importer.d.ts +133 -0
  87. package/dist/src/formats/cx/importer.d.ts.map +1 -0
  88. package/dist/src/formats/cx/importer.js +2220 -0
  89. package/dist/src/formats/cx/importer.js.map +1 -0
  90. package/dist/src/formats/cx/index.d.ts +7 -0
  91. package/dist/src/formats/cx/index.d.ts.map +1 -0
  92. package/dist/src/formats/cx/index.js +7 -0
  93. package/dist/src/formats/cx/index.js.map +1 -0
  94. package/dist/src/formats/cx2/exporter.d.ts +59 -0
  95. package/dist/src/formats/cx2/exporter.d.ts.map +1 -0
  96. package/dist/src/formats/cx2/exporter.js +864 -0
  97. package/dist/src/formats/cx2/exporter.js.map +1 -0
  98. package/dist/src/formats/cx2/importer.d.ts +169 -0
  99. package/dist/src/formats/cx2/importer.d.ts.map +1 -0
  100. package/dist/src/formats/cx2/importer.js +1652 -0
  101. package/dist/src/formats/cx2/importer.js.map +1 -0
  102. package/dist/src/formats/cx2/index.d.ts +7 -0
  103. package/dist/src/formats/cx2/index.d.ts.map +1 -0
  104. package/dist/src/formats/cx2/index.js +7 -0
  105. package/dist/src/formats/cx2/index.js.map +1 -0
  106. package/dist/src/formats/cys/constants.d.ts +68 -0
  107. package/dist/src/formats/cys/constants.d.ts.map +1 -0
  108. package/dist/src/formats/cys/constants.js +76 -0
  109. package/dist/src/formats/cys/constants.js.map +1 -0
  110. package/dist/src/formats/cys/importer.d.ts +38 -0
  111. package/dist/src/formats/cys/importer.d.ts.map +1 -0
  112. package/dist/src/formats/cys/importer.js +830 -0
  113. package/dist/src/formats/cys/importer.js.map +1 -0
  114. package/dist/src/formats/cys/index.d.ts +7 -0
  115. package/dist/src/formats/cys/index.d.ts.map +1 -0
  116. package/dist/src/formats/cys/index.js +7 -0
  117. package/dist/src/formats/cys/index.js.map +1 -0
  118. package/dist/src/formats/cys/session.d.ts +132 -0
  119. package/dist/src/formats/cys/session.d.ts.map +1 -0
  120. package/dist/src/formats/cys/session.js +315 -0
  121. package/dist/src/formats/cys/session.js.map +1 -0
  122. package/dist/src/formats/cys/tables.d.ts +90 -0
  123. package/dist/src/formats/cys/tables.d.ts.map +1 -0
  124. package/dist/src/formats/cys/tables.js +293 -0
  125. package/dist/src/formats/cys/tables.js.map +1 -0
  126. package/dist/src/formats/dot/exporter.d.ts +2 -0
  127. package/dist/src/formats/dot/exporter.d.ts.map +1 -1
  128. package/dist/src/formats/dot/exporter.js +12 -0
  129. package/dist/src/formats/dot/exporter.js.map +1 -1
  130. package/dist/src/formats/dot/importer.js +6 -2
  131. package/dist/src/formats/dot/importer.js.map +1 -1
  132. package/dist/src/formats/gexf/exporter.d.ts +2 -0
  133. package/dist/src/formats/gexf/exporter.d.ts.map +1 -1
  134. package/dist/src/formats/gexf/exporter.js +6 -0
  135. package/dist/src/formats/gexf/exporter.js.map +1 -1
  136. package/dist/src/formats/gexf/importer.d.ts +0 -2
  137. package/dist/src/formats/gexf/importer.d.ts.map +1 -1
  138. package/dist/src/formats/gexf/importer.js +1 -3
  139. package/dist/src/formats/gexf/importer.js.map +1 -1
  140. package/dist/src/formats/gexf/index.d.ts +1 -1
  141. package/dist/src/formats/gexf/index.js +2 -2
  142. package/dist/src/formats/gexf/index.js.map +1 -1
  143. package/dist/src/formats/gml/exporter.d.ts +0 -8
  144. package/dist/src/formats/gml/exporter.d.ts.map +1 -1
  145. package/dist/src/formats/gml/exporter.js +8 -18
  146. package/dist/src/formats/gml/exporter.js.map +1 -1
  147. package/dist/src/formats/json/importer.d.ts.map +1 -1
  148. package/dist/src/formats/json/importer.js +6 -104
  149. package/dist/src/formats/json/importer.js.map +1 -1
  150. package/dist/src/formats/xgmml/columns.d.ts +152 -0
  151. package/dist/src/formats/xgmml/columns.d.ts.map +1 -0
  152. package/dist/src/formats/xgmml/columns.js +593 -0
  153. package/dist/src/formats/xgmml/columns.js.map +1 -0
  154. package/dist/src/formats/xgmml/constants.d.ts +196 -0
  155. package/dist/src/formats/xgmml/constants.d.ts.map +1 -0
  156. package/dist/src/formats/xgmml/constants.js +197 -0
  157. package/dist/src/formats/xgmml/constants.js.map +1 -0
  158. package/dist/src/formats/xgmml/document.d.ts +361 -0
  159. package/dist/src/formats/xgmml/document.d.ts.map +1 -0
  160. package/dist/src/formats/xgmml/document.js +695 -0
  161. package/dist/src/formats/xgmml/document.js.map +1 -0
  162. package/dist/src/formats/xgmml/emit.d.ts +341 -0
  163. package/dist/src/formats/xgmml/emit.d.ts.map +1 -0
  164. package/dist/src/formats/xgmml/emit.js +1275 -0
  165. package/dist/src/formats/xgmml/emit.js.map +1 -0
  166. package/dist/src/formats/xgmml/exporter.d.ts +24 -0
  167. package/dist/src/formats/xgmml/exporter.d.ts.map +1 -0
  168. package/dist/src/formats/xgmml/exporter.js +999 -0
  169. package/dist/src/formats/xgmml/exporter.js.map +1 -0
  170. package/dist/src/formats/xgmml/importer.d.ts +58 -0
  171. package/dist/src/formats/xgmml/importer.d.ts.map +1 -0
  172. package/dist/src/formats/xgmml/importer.js +360 -0
  173. package/dist/src/formats/xgmml/importer.js.map +1 -0
  174. package/dist/src/formats/xgmml/index.d.ts +8 -0
  175. package/dist/src/formats/xgmml/index.d.ts.map +1 -0
  176. package/dist/src/formats/xgmml/index.js +8 -0
  177. package/dist/src/formats/xgmml/index.js.map +1 -0
  178. package/dist/src/formats/xgmml/values.d.ts +60 -0
  179. package/dist/src/formats/xgmml/values.d.ts.map +1 -0
  180. package/dist/src/formats/xgmml/values.js +148 -0
  181. package/dist/src/formats/xgmml/values.js.map +1 -0
  182. package/dist/src/index.d.ts +4 -0
  183. package/dist/src/index.d.ts.map +1 -1
  184. package/dist/src/index.js +4 -0
  185. package/dist/src/index.js.map +1 -1
  186. package/dist/src/registry.d.ts +7 -0
  187. package/dist/src/registry.d.ts.map +1 -1
  188. package/dist/src/registry.js +30 -10
  189. package/dist/src/registry.js.map +1 -1
  190. package/dist/src/sniff.d.ts +1 -1
  191. package/dist/src/sniff.d.ts.map +1 -1
  192. package/dist/src/sniff.js +4 -0
  193. package/dist/src/sniff.js.map +1 -1
  194. package/dist/xgmml.d.ts +1 -0
  195. package/dist/xgmml.js +9 -0
  196. package/dist/xgmml.js.map +1 -0
  197. package/package.json +25 -2
  198. package/src/common/cell-budget.ts +170 -0
  199. package/src/common/input.ts +40 -0
  200. package/src/common/json-elements.ts +1147 -0
  201. package/src/common/options.ts +1 -1
  202. package/src/common/xml.ts +127 -6
  203. package/src/common/zip.ts +472 -0
  204. package/src/formats/cx/importer.ts +2733 -0
  205. package/src/formats/cx/index.ts +7 -0
  206. package/src/formats/cx2/exporter.ts +1036 -0
  207. package/src/formats/cx2/importer.ts +2187 -0
  208. package/src/formats/cx2/index.ts +7 -0
  209. package/src/formats/cys/constants.ts +99 -0
  210. package/src/formats/cys/importer.ts +1100 -0
  211. package/src/formats/cys/index.ts +7 -0
  212. package/src/formats/cys/session.ts +428 -0
  213. package/src/formats/cys/tables.ts +400 -0
  214. package/src/formats/dot/exporter.ts +17 -0
  215. package/src/formats/dot/importer.ts +6 -2
  216. package/src/formats/gexf/exporter.ts +11 -0
  217. package/src/formats/gexf/importer.ts +1 -2
  218. package/src/formats/gexf/index.ts +1 -1
  219. package/src/formats/gml/exporter.ts +8 -19
  220. package/src/formats/json/importer.ts +6 -105
  221. package/src/formats/xgmml/columns.ts +747 -0
  222. package/src/formats/xgmml/constants.ts +265 -0
  223. package/src/formats/xgmml/document.ts +975 -0
  224. package/src/formats/xgmml/emit.ts +1563 -0
  225. package/src/formats/xgmml/exporter.ts +1215 -0
  226. package/src/formats/xgmml/importer.ts +491 -0
  227. package/src/formats/xgmml/index.ts +8 -0
  228. package/src/formats/xgmml/values.ts +183 -0
  229. package/src/index.ts +19 -0
  230. package/src/registry.ts +46 -15
  231. package/src/sniff.ts +18 -1
  232. package/dist/chunks/escape-D-gZWO26.js.map +0 -1
  233. package/dist/chunks/importer-Br_QeAeE.js.map +0 -1
  234. package/dist/chunks/importer-Du5crN9l.js.map +0 -1
  235. package/dist/chunks/writer-GAdltGmC.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"exporter.js","sourceRoot":"","sources":["../../../../src/formats/xgmml/exporter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,58 @@
1
+ /**
2
+ * The XGMML importer (design `design/graph-io/cytoscape-and-obo/design.md` section 1.1;
3
+ * `research-xgmml.md`): one reader for the 1.0 draft, the Cytoscape 2.x and 3.x exports and the
4
+ * Cytoscape 3 session network files. The document is read in one pass of the shared XML tokenizer
5
+ * into records (document.ts), and resolved into the sink once the outermost `</graph>` closes
6
+ * (emit.ts), so forward references and edges before their nodes need nothing special.
7
+ *
8
+ * Direction follows the specification: the root `directed` (0 by the DTD, else the
9
+ * `defaultDirected` option), then `cy:directed` per edge, overruling Cytoscape, which ignores the
10
+ * root attribute. Ids are kept as written (`ids: "keep"`), so `"1"`, `"01"` and `" 1 "` stay three
11
+ * nodes. Positions are stored y-up (Cytoscape writes screen coordinates). Graphics values are kept
12
+ * as a json column, never interpreted (style import is issue #706).
13
+ */
14
+ import { type ResolvedImportOptions } from "../../common/options.js";
15
+ import { ImportReportBuilder } from "../../common/report.js";
16
+ import { type GraphChoiceOptions, type GraphImporter, type ImportInput } from "../../types.js";
17
+ import { type XgmmlDocument } from "./document.js";
18
+ import { type XgmmlSettings } from "./emit.js";
19
+ /** The format-specific options of the XGMML importer. */
20
+ export interface XgmmlImportOptions extends GraphChoiceOptions {
21
+ /**
22
+ * Resolve an edge endpoint that is missing or names no node through Cytoscape's
23
+ * `"source (interaction) target"` edge label, and fill a missing interaction from it. Default:
24
+ * on for files that use the Cytoscape (`cy`) namespace, off otherwise.
25
+ */
26
+ labelAliases?: boolean | undefined;
27
+ /**
28
+ * Decode Cytoscape's two-character `\n` and `\t` escapes in string values. Default: on for
29
+ * files that use the Cytoscape namespace, off otherwise.
30
+ */
31
+ cytoscapeEscapes?: boolean | undefined;
32
+ /** Read an `&` not followed by `;` within 7 characters as `&amp;` (warned per occurrence). Default false. */
33
+ repairBareAmpersands?: boolean | undefined;
34
+ /** Join two surrogate character references into one character (warned per pair). Default false. */
35
+ pairSurrogateReferences?: boolean | undefined;
36
+ /** Where Cytoscape's z (a stacking order) goes: the `z` column (default) or the position. */
37
+ zAs?: "column" | "position" | undefined;
38
+ }
39
+ /**
40
+ * The XGMML option values, checked.
41
+ * @param options - the caller's options
42
+ * @param cytoscape - whether the document uses the Cytoscape namespace
43
+ * @returns the settings; E_UNSUPPORTED for a value of the wrong type
44
+ */
45
+ export declare function resolveSettings(options: XgmmlImportOptions | undefined, cytoscape: boolean): XgmmlSettings;
46
+ /**
47
+ * Read an XGMML document into records. Fatal conditions (not XML, not a graph, empty) fail the
48
+ * report.
49
+ * @param input - the input
50
+ * @param report - the report
51
+ * @param common - the resolved common options
52
+ * @param options - the XGMML options (for the repairs)
53
+ * @returns the document
54
+ */
55
+ export declare function parseXgmml(input: ImportInput, report: ImportReportBuilder, common: ResolvedImportOptions, options: XgmmlImportOptions | undefined): Promise<XgmmlDocument>;
56
+ /** The XGMML importer. */
57
+ export declare const xgmmlImporter: GraphImporter<XgmmlImportOptions>;
58
+ //# sourceMappingURL=importer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"importer.d.ts","sourceRoot":"","sources":["../../../../src/formats/xgmml/importer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAKH,OAAO,EAKH,KAAK,qBAAqB,EAE7B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAE7D,OAAO,EAEH,KAAK,kBAAkB,EACvB,KAAK,aAAa,EAElB,KAAK,WAAW,EAEnB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAiB,KAAK,aAAa,EAAe,MAAM,eAAe,CAAC;AAC/E,OAAO,EAOH,KAAK,aAAa,EACrB,MAAM,WAAW,CAAC;AAEnB,yDAAyD;AACzD,MAAM,WAAW,kBAAmB,SAAQ,kBAAkB;IAC1D;;;;OAIG;IACH,YAAY,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACnC;;;OAGG;IACH,gBAAgB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACvC,6GAA6G;IAC7G,oBAAoB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC3C,mGAAmG;IACnG,uBAAuB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC9C,6FAA6F;IAC7F,GAAG,CAAC,EAAE,QAAQ,GAAG,UAAU,GAAG,SAAS,CAAC;CAC3C;AAoCD;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,kBAAkB,GAAG,SAAS,EAAE,SAAS,EAAE,OAAO,GAAG,aAAa,CAiB1G;AAsBD;;;;;;;;GAQG;AACH,wBAAsB,UAAU,CAC5B,KAAK,EAAE,WAAW,EAClB,MAAM,EAAE,mBAAmB,EAC3B,MAAM,EAAE,qBAAqB,EAC7B,OAAO,EAAE,kBAAkB,GAAG,SAAS,GACxC,OAAO,CAAC,aAAa,CAAC,CA6CxB;AAmRD,0BAA0B;AAC1B,eAAO,MAAM,aAAa,EAAE,aAAa,CAAC,kBAAkB,CAQ1D,CAAC"}
@@ -0,0 +1,360 @@
1
+ /**
2
+ * The XGMML importer (design `design/graph-io/cytoscape-and-obo/design.md` section 1.1;
3
+ * `research-xgmml.md`): one reader for the 1.0 draft, the Cytoscape 2.x and 3.x exports and the
4
+ * Cytoscape 3 session network files. The document is read in one pass of the shared XML tokenizer
5
+ * into records (document.ts), and resolved into the sink once the outermost `</graph>` closes
6
+ * (emit.ts), so forward references and edges before their nodes need nothing special.
7
+ *
8
+ * Direction follows the specification: the root `directed` (0 by the DTD, else the
9
+ * `defaultDirected` option), then `cy:directed` per edge, overruling Cytoscape, which ignores the
10
+ * root attribute. Ids are kept as written (`ids: "keep"`), so `"1"`, `"01"` and `" 1 "` stay three
11
+ * nodes. Positions are stored y-up (Cytoscape writes screen coordinates). Graphics values are kept
12
+ * as a json column, never interpreted (style import is issue #706).
13
+ */
14
+ import { GraphFormatError } from "@graphty/graph-format";
15
+ import { textChunks, throwIfAborted } from "../../common/input.js";
16
+ import { chooseGraph, reportSinkOptions, reportUnusedOptions, resolveImportOptions, } from "../../common/options.js";
17
+ import { ImportReportBuilder } from "../../common/report.js";
18
+ import { isWhitespace, tokenizeXml, xmlDeclaredEncoding, XmlSyntaxError } from "../../common/xml.js";
19
+ import { EXTENSIONS, FORMAT, MIME_TYPES, XGMML_ISSUE } from "./constants.js";
20
+ import { XgmmlParser } from "./document.js";
21
+ import { dialectOf, graphsOf, membersOf, XgmmlEmitter, } from "./emit.js";
22
+ /** The per-format defaults: ids as written, undirected by the DTD, the edge `weight` attribute. */
23
+ const FORMAT_DEFAULTS = {
24
+ ids: "keep",
25
+ defaultDirected: false,
26
+ weightFrom: "weight",
27
+ addMissingNodes: false,
28
+ };
29
+ /** The common options the XGMML importer reads. */
30
+ const USED_OPTIONS = new Set([
31
+ "ids",
32
+ "addMissingNodes",
33
+ "duplicateEdges",
34
+ "selfLoops",
35
+ "onMixedDirection",
36
+ "defaultDirected",
37
+ "weightFrom",
38
+ "weightDtype",
39
+ "long",
40
+ "errorLimit",
41
+ "signal",
42
+ "onProgress",
43
+ "encoding",
44
+ ]);
45
+ /** Bytes inspected by sniff(). */
46
+ const SNIFF_BYTES = 4096;
47
+ /** The head of the document kept for the DOCTYPE check. */
48
+ const HEAD_CHARS = 2048;
49
+ /** An XGMML DOCTYPE (Cytoscape's file filter tests the same). */
50
+ const XGMML_DOCTYPE = /<!DOCTYPE\s+graph\s[^<>]*xgmml\.dtd/i;
51
+ /**
52
+ * The XGMML option values, checked.
53
+ * @param options - the caller's options
54
+ * @param cytoscape - whether the document uses the Cytoscape namespace
55
+ * @returns the settings; E_UNSUPPORTED for a value of the wrong type
56
+ */
57
+ export function resolveSettings(options, cytoscape) {
58
+ const zAs = options?.zAs ?? "column";
59
+ if (zAs !== "column" && zAs !== "position") {
60
+ throw new GraphFormatError("E_UNSUPPORTED", `option zAs: ${JSON.stringify(zAs)} is not "column" or "position"`, {
61
+ option: "zAs",
62
+ found: zAs,
63
+ });
64
+ }
65
+ return {
66
+ labelAliases: booleanOption("labelAliases", options?.labelAliases, cytoscape),
67
+ cytoscapeEscapes: booleanOption("cytoscapeEscapes", options?.cytoscapeEscapes, cytoscape),
68
+ zAs,
69
+ };
70
+ }
71
+ /**
72
+ * One boolean option.
73
+ * @param name - the option name
74
+ * @param value - the caller's value
75
+ * @param fallback - the default
76
+ * @returns the value; E_UNSUPPORTED when not a boolean
77
+ */
78
+ function booleanOption(name, value, fallback) {
79
+ if (value === undefined) {
80
+ return fallback;
81
+ }
82
+ if (typeof value !== "boolean") {
83
+ throw new GraphFormatError("E_UNSUPPORTED", `option ${name}: ${JSON.stringify(value)} is not a boolean`, {
84
+ option: name,
85
+ found: value,
86
+ });
87
+ }
88
+ return value;
89
+ }
90
+ /**
91
+ * Read an XGMML document into records. Fatal conditions (not XML, not a graph, empty) fail the
92
+ * report.
93
+ * @param input - the input
94
+ * @param report - the report
95
+ * @param common - the resolved common options
96
+ * @param options - the XGMML options (for the repairs)
97
+ * @returns the document
98
+ */
99
+ export async function parseXgmml(input, report, common, options) {
100
+ const repairs = {
101
+ bareAmpersand: booleanOption("repairBareAmpersands", options?.repairBareAmpersands, false)
102
+ ? (line) => {
103
+ report.warning("parse-error", XGMML_ISSUE.AMPERSAND_REPAIRED, "a bare & was read as &amp;", { line });
104
+ }
105
+ : undefined,
106
+ surrogatePair: booleanOption("pairSurrogateReferences", options?.pairSurrogateReferences, false)
107
+ ? (line) => {
108
+ report.warning("parse-error", XGMML_ISSUE.SURROGATE_PAIRED, "two surrogate character references were joined into one character", { line });
109
+ }
110
+ : undefined,
111
+ };
112
+ const parser = new XgmmlParser(report);
113
+ const seen = { head: "", content: false };
114
+ try {
115
+ await tokenizeXml(watch(textChunks(input, report, { ...common, declaredEncoding: xmlDeclaredEncoding }), seen), parser, repairs);
116
+ }
117
+ catch (err) {
118
+ if (err instanceof XmlSyntaxError) {
119
+ if (!seen.content) {
120
+ report.fail(XGMML_ISSUE.EMPTY_INPUT, "the input is empty");
121
+ }
122
+ report.fail(XGMML_ISSUE.XML_SYNTAX, err.message, { line: err.line });
123
+ }
124
+ throw err;
125
+ }
126
+ const doc = parser.document();
127
+ if (!doc.xgmmlNamespace && !XGMML_DOCTYPE.test(seen.head)) {
128
+ report.warning("validation-error", XGMML_ISSUE.NO_NAMESPACE, "the root <graph> has neither the XGMML namespace nor an XGMML DOCTYPE; it is read as XGMML", { line: doc.root.line });
129
+ }
130
+ return doc;
131
+ }
132
+ /**
133
+ * Pass text chunks through while keeping the head and noting non-whitespace content.
134
+ * @param chunks - the chunks
135
+ * @param seen - where the head and the content flag are kept
136
+ * @param seen.head - the first characters of the document
137
+ * @param seen.content - whether non-whitespace text was seen
138
+ * @yields the chunks unchanged
139
+ * @returns nothing
140
+ */
141
+ async function* watch(chunks, seen) {
142
+ for await (const chunk of chunks) {
143
+ if (seen.head.length < HEAD_CHARS) {
144
+ seen.head += chunk.slice(0, HEAD_CHARS - seen.head.length);
145
+ }
146
+ seen.content || (seen.content = !isWhitespace(chunk));
147
+ yield chunk;
148
+ }
149
+ }
150
+ /**
151
+ * Resolve the options, read the document and check it is a graph document.
152
+ * @param input - the input
153
+ * @param sink - the sink, or null for listGraphs
154
+ * @param options - the options
155
+ * @returns what the import needs
156
+ */
157
+ async function prepare(input, sink, options) {
158
+ const common = resolveImportOptions(options, FORMAT_DEFAULTS);
159
+ const report = new ImportReportBuilder(FORMAT, common.errorLimit);
160
+ if (sink !== null) {
161
+ reportSinkOptions(sink, options, report, true);
162
+ reportUnusedOptions(options, report, USED_OPTIONS);
163
+ }
164
+ resolveSettings(options, false);
165
+ const doc = await parseXgmml(input, report, common, options);
166
+ const dialect = dialectOf(doc, report);
167
+ if (dialect.view) {
168
+ report.fail(XGMML_ISSUE.VIEW_DOCUMENT, "this is a Cytoscape session view file (cy:view): it holds positions keyed by view ids and no topology; open the session (.cys) instead", { line: doc.root.line });
169
+ }
170
+ return {
171
+ report,
172
+ common,
173
+ doc,
174
+ dialect,
175
+ settings: resolveSettings(options, doc.cytoscape),
176
+ graphs: graphsOf(doc, dialect),
177
+ };
178
+ }
179
+ /**
180
+ * Emit one graph of a prepared document.
181
+ * @param prepared - the prepared import
182
+ * @param graph - the graph to read
183
+ * @param sink - the sink
184
+ * @param extras - what a session adds
185
+ * @returns the report
186
+ */
187
+ function emitOne(prepared, graph, sink, extras) {
188
+ const { doc, dialect, report, common, settings } = prepared;
189
+ const emitter = new XgmmlEmitter(doc, dialect, sink, report, common, settings, extras);
190
+ emitter.emit(dialect.session ? graph : null);
191
+ if (dialect.session) {
192
+ reportRootOnly(prepared);
193
+ }
194
+ throwIfAborted(common.signal);
195
+ return report.finish();
196
+ }
197
+ /**
198
+ * W_XGMML_ROOT_ONLY_ELEMENTS: elements of a session network document no registered subnetwork
199
+ * holds (group meta-edges, members of collapsed groups).
200
+ * @param prepared - the prepared import
201
+ */
202
+ function reportRootOnly(prepared) {
203
+ const held = new Set();
204
+ for (const graph of prepared.graphs) {
205
+ const members = membersOf(prepared.doc, graph);
206
+ members.nodes.forEach((n) => held.add(n));
207
+ members.edges.forEach((e) => held.add(e));
208
+ }
209
+ const nodes = prepared.doc.nodes.filter((n) => !held.has(n)).length;
210
+ const edges = prepared.doc.edges.filter((e) => !held.has(e)).length;
211
+ if (nodes + edges > 0) {
212
+ prepared.report.warning("unsupported", XGMML_ISSUE.ROOT_ONLY_ELEMENTS, `${nodes} node(s) and ${edges} edge(s) belong to no registered network (group meta-edges, collapsed group members) and were not read`);
213
+ }
214
+ }
215
+ /**
216
+ * Import one graph of an XGMML document.
217
+ * @param input - the document
218
+ * @param sink - the sink
219
+ * @param options - format-specific and common options
220
+ * @returns the report; ImportError when the document cannot be read or the error limit is exceeded
221
+ */
222
+ async function importXgmml(input, sink, options) {
223
+ const prepared = await prepare(input, sink, options);
224
+ const index = chooseGraph(prepared.graphs.map((g) => graphName(g, prepared.doc)), options, prepared.report);
225
+ if (prepared.graphs.length > 1) {
226
+ prepared.report.warning("unsupported", XGMML_ISSUE.MULTIPLE_GRAPHS, `the session network document holds ${prepared.graphs.length} registered networks; ${prepared.graphs.length - 1} were not read (use importAll, graphIndex or graphName)`);
227
+ }
228
+ return emitOne(prepared, prepared.graphs[index], sink);
229
+ }
230
+ /**
231
+ * Import every graph of an XGMML document: each registered subnetwork of a session network
232
+ * document, else the one graph.
233
+ * @param input - the document
234
+ * @param sinkFor - a sink per graph
235
+ * @param options - format-specific and common options
236
+ * @returns one report per graph
237
+ */
238
+ async function importAllXgmml(input, sinkFor, options) {
239
+ const bytes = await reread(input);
240
+ const first = await prepare(bytes, null, options);
241
+ const reports = [];
242
+ for (let i = 0; i < first.graphs.length; i++) {
243
+ const sink = sinkFor(i);
244
+ const prepared = i === 0 ? first : await prepare(bytes, null, options);
245
+ reportSinkOptions(sink, options, prepared.report, true);
246
+ reportUnusedOptions(options, prepared.report, USED_OPTIONS);
247
+ reports.push(emitOne(prepared, prepared.graphs[i], sink));
248
+ }
249
+ return reports;
250
+ }
251
+ /**
252
+ * List the graphs of an XGMML document without importing them.
253
+ * @param input - the document
254
+ * @param options - the options
255
+ * @returns one listing per graph
256
+ */
257
+ async function listXgmmlGraphs(input, options) {
258
+ const prepared = await prepare(input, null, options);
259
+ return prepared.graphs.map((graph, index) => {
260
+ const members = membersOf(prepared.doc, prepared.dialect.session ? graph : null);
261
+ return Object.freeze({
262
+ index,
263
+ name: graphName(graph, prepared.doc),
264
+ nodes: new Set(members.nodes.map((n) => n.id)).size,
265
+ edges: members.edges.length,
266
+ });
267
+ });
268
+ }
269
+ /**
270
+ * The name of a graph: its label, else the RDF title (root only), else its id.
271
+ * @param graph - the graph
272
+ * @param doc - the document
273
+ * @returns the name, or null
274
+ */
275
+ function graphName(graph, doc) {
276
+ return graph.label ?? (graph === doc.root ? (doc.rdf.title ?? null) : null) ?? graph.id ?? null;
277
+ }
278
+ /**
279
+ * The input in a form that can be read more than once (a stream is read into bytes).
280
+ * @param input - the input
281
+ * @returns the same input when it is a string or bytes, else the collected bytes
282
+ */
283
+ async function reread(input) {
284
+ if (typeof input === "string" || input instanceof Uint8Array) {
285
+ return input;
286
+ }
287
+ const parts = [];
288
+ const iterable = typeof input.getReader === "function"
289
+ ? streamIterable(input)
290
+ : input;
291
+ for await (const chunk of iterable) {
292
+ parts.push(chunk);
293
+ }
294
+ if (parts.every((p) => typeof p === "string")) {
295
+ return parts.join("");
296
+ }
297
+ const bytes = parts.map((p) => (typeof p === "string" ? new TextEncoder().encode(p) : p));
298
+ const out = new Uint8Array(bytes.reduce((n, b) => n + b.byteLength, 0));
299
+ let at = 0;
300
+ for (const b of bytes) {
301
+ out.set(b, at);
302
+ at += b.byteLength;
303
+ }
304
+ return out;
305
+ }
306
+ /**
307
+ * A ReadableStream as an async iterable.
308
+ * @param stream - the stream
309
+ * @yields its chunks
310
+ * @returns nothing
311
+ */
312
+ async function* streamIterable(stream) {
313
+ const reader = stream.getReader();
314
+ try {
315
+ for (;;) {
316
+ const { done, value } = await reader.read();
317
+ if (done) {
318
+ return;
319
+ }
320
+ yield value;
321
+ }
322
+ }
323
+ finally {
324
+ reader.releaseLock();
325
+ }
326
+ }
327
+ /**
328
+ * Confidence that a head of bytes is XGMML: 0.95 for a root `graph` in the XGMML namespace or an
329
+ * XGMML DOCTYPE (Cytoscape's file filter tests the same two things, and a session view file still
330
+ * scores so its failure names it), 0.5 for a root local name `graph` without either.
331
+ * @param head - the first bytes
332
+ * @returns the confidence
333
+ */
334
+ function sniffXgmml(head) {
335
+ const text = new TextDecoder("utf-8", { fatal: false }).decode(head.subarray(0, SNIFF_BYTES));
336
+ if (!/^\uFEFF?\s*</.test(text)) {
337
+ return 0;
338
+ }
339
+ if (XGMML_DOCTYPE.test(text)) {
340
+ return 0.95;
341
+ }
342
+ const root = /<(?!\?|!)([A-Za-z_][\w.-]*:)?([A-Za-z_][\w.-]*)[\s/>]/.exec(text.replace(/<!--[\s\S]*?-->/g, ""));
343
+ if (root === null || root[2] !== "graph") {
344
+ return 0;
345
+ }
346
+ const tagEnd = text.indexOf(">", root.index);
347
+ const tag = text.slice(root.index, tagEnd < 0 ? undefined : tagEnd);
348
+ return tag.includes("http://www.cs.rpi.edu/XGMML") ? 0.95 : 0.5;
349
+ }
350
+ /** The XGMML importer. */
351
+ export const xgmmlImporter = Object.freeze({
352
+ format: FORMAT,
353
+ extensions: EXTENSIONS,
354
+ mimeTypes: MIME_TYPES,
355
+ sniff: sniffXgmml,
356
+ import: importXgmml,
357
+ importAll: importAllXgmml,
358
+ listGraphs: listXgmmlGraphs,
359
+ });
360
+ //# sourceMappingURL=importer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"importer.js","sourceRoot":"","sources":["../../../../src/formats/xgmml/importer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,gBAAgB,EAAkB,MAAM,uBAAuB,CAAC;AAEzE,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACnE,OAAO,EACH,WAAW,EAEX,iBAAiB,EACjB,mBAAmB,EAEnB,oBAAoB,GACvB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,mBAAmB,EAAmB,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAStH,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7E,OAAO,EAAqC,WAAW,EAAE,MAAM,eAAe,CAAC;AAC/E,OAAO,EAEH,SAAS,EAET,QAAQ,EACR,SAAS,EACT,YAAY,GAEf,MAAM,WAAW,CAAC;AAuBnB,mGAAmG;AACnG,MAAM,eAAe,GAAyB;IAC1C,GAAG,EAAE,MAAM;IACX,eAAe,EAAE,KAAK;IACtB,UAAU,EAAE,QAAQ;IACpB,eAAe,EAAE,KAAK;CACzB,CAAC;AAEF,mDAAmD;AACnD,MAAM,YAAY,GAA2C,IAAI,GAAG,CAA4B;IAC5F,KAAK;IACL,iBAAiB;IACjB,gBAAgB;IAChB,WAAW;IACX,kBAAkB;IAClB,iBAAiB;IACjB,YAAY;IACZ,aAAa;IACb,MAAM;IACN,YAAY;IACZ,QAAQ;IACR,YAAY;IACZ,UAAU;CACb,CAAC,CAAC;AAEH,kCAAkC;AAClC,MAAM,WAAW,GAAG,IAAI,CAAC;AAEzB,2DAA2D;AAC3D,MAAM,UAAU,GAAG,IAAI,CAAC;AAExB,iEAAiE;AACjE,MAAM,aAAa,GAAG,sCAAsC,CAAC;AAE7D;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAAC,OAAuC,EAAE,SAAkB;IACvF,MAAM,GAAG,GAAG,OAAO,EAAE,GAAG,IAAI,QAAQ,CAAC;IACrC,IAAI,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,UAAU,EAAE,CAAC;QACzC,MAAM,IAAI,gBAAgB,CACtB,eAAe,EACf,eAAe,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,gCAAgC,EAClE;YACI,MAAM,EAAE,KAAK;YACb,KAAK,EAAE,GAAG;SACb,CACJ,CAAC;IACN,CAAC;IACD,OAAO;QACH,YAAY,EAAE,aAAa,CAAC,cAAc,EAAE,OAAO,EAAE,YAAY,EAAE,SAAS,CAAC;QAC7E,gBAAgB,EAAE,aAAa,CAAC,kBAAkB,EAAE,OAAO,EAAE,gBAAgB,EAAE,SAAS,CAAC;QACzF,GAAG;KACN,CAAC;AACN,CAAC;AAED;;;;;;GAMG;AACH,SAAS,aAAa,CAAC,IAAY,EAAE,KAAc,EAAE,QAAiB;IAClE,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACtB,OAAO,QAAQ,CAAC;IACpB,CAAC;IACD,IAAI,OAAO,KAAK,KAAK,SAAS,EAAE,CAAC;QAC7B,MAAM,IAAI,gBAAgB,CAAC,eAAe,EAAE,UAAU,IAAI,KAAK,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,mBAAmB,EAAE;YACrG,MAAM,EAAE,IAAI;YACZ,KAAK,EAAE,KAAK;SACf,CAAC,CAAC;IACP,CAAC;IACD,OAAO,KAAK,CAAC;AACjB,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAC5B,KAAkB,EAClB,MAA2B,EAC3B,MAA6B,EAC7B,OAAuC;IAEvC,MAAM,OAAO,GAAe;QACxB,aAAa,EAAE,aAAa,CAAC,sBAAsB,EAAE,OAAO,EAAE,oBAAoB,EAAE,KAAK,CAAC;YACtF,CAAC,CAAC,CAAC,IAAI,EAAQ,EAAE;gBACX,MAAM,CAAC,OAAO,CAAC,aAAa,EAAE,WAAW,CAAC,kBAAkB,EAAE,4BAA4B,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;YAC1G,CAAC;YACH,CAAC,CAAC,SAAS;QACf,aAAa,EAAE,aAAa,CAAC,yBAAyB,EAAE,OAAO,EAAE,uBAAuB,EAAE,KAAK,CAAC;YAC5F,CAAC,CAAC,CAAC,IAAI,EAAQ,EAAE;gBACX,MAAM,CAAC,OAAO,CACV,aAAa,EACb,WAAW,CAAC,gBAAgB,EAC5B,mEAAmE,EACnE,EAAE,IAAI,EAAE,CACX,CAAC;YACN,CAAC;YACH,CAAC,CAAC,SAAS;KAClB,CAAC;IACF,MAAM,MAAM,GAAG,IAAI,WAAW,CAAC,MAAM,CAAC,CAAC;IACvC,MAAM,IAAI,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IAC1C,IAAI,CAAC;QACD,MAAM,WAAW,CACb,KAAK,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,GAAG,MAAM,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,CAAC,EAAE,IAAI,CAAC,EAC5F,MAAM,EACN,OAAO,CACV,CAAC;IACN,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACX,IAAI,GAAG,YAAY,cAAc,EAAE,CAAC;YAChC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;gBAChB,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,oBAAoB,CAAC,CAAC;YAC/D,CAAC;YACD,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,GAAG,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;QACzE,CAAC;QACD,MAAM,GAAG,CAAC;IACd,CAAC;IACD,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;IAC9B,IAAI,CAAC,GAAG,CAAC,cAAc,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QACxD,MAAM,CAAC,OAAO,CACV,kBAAkB,EAClB,WAAW,CAAC,YAAY,EACxB,4FAA4F,EAC5F,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAC1B,CAAC;IACN,CAAC;IACD,OAAO,GAAG,CAAC;AACf,CAAC;AAED;;;;;;;;GAQG;AACH,KAAK,SAAS,CAAC,CAAC,KAAK,CACjB,MAA6B,EAC7B,IAAwC;IAExC,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC/B,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,UAAU,EAAE,CAAC;YAChC,IAAI,CAAC,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC/D,CAAC;QACD,IAAI,CAAC,OAAO,KAAZ,IAAI,CAAC,OAAO,GAAK,CAAC,YAAY,CAAC,KAAK,CAAC,EAAC;QACtC,MAAM,KAAK,CAAC;IAChB,CAAC;AACL,CAAC;AAYD;;;;;;GAMG;AACH,KAAK,UAAU,OAAO,CAClB,KAAkB,EAClB,IAAsB,EACtB,OAA+D;IAE/D,MAAM,MAAM,GAAG,oBAAoB,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;IAC9D,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,MAAM,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;IAClE,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;QAChB,iBAAiB,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;QAC/C,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;IACvD,CAAC;IACD,eAAe,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IAChC,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IAC7D,MAAM,OAAO,GAAG,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACvC,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QACf,MAAM,CAAC,IAAI,CACP,WAAW,CAAC,aAAa,EACzB,wIAAwI,EACxI,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAC1B,CAAC;IACN,CAAC;IACD,OAAO;QACH,MAAM;QACN,MAAM;QACN,GAAG;QACH,OAAO;QACP,QAAQ,EAAE,eAAe,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,CAAC;QACjD,MAAM,EAAE,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC;KACjC,CAAC;AACN,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,OAAO,CAAC,QAAkB,EAAE,KAAe,EAAE,IAAe,EAAE,MAAmB;IACtF,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,QAAQ,CAAC;IAC5D,MAAM,OAAO,GAAG,IAAI,YAAY,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;IACvF,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAC7C,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QAClB,cAAc,CAAC,QAAQ,CAAC,CAAC;IAC7B,CAAC;IACD,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC9B,OAAO,MAAM,CAAC,MAAM,EAAE,CAAC;AAC3B,CAAC;AAED;;;;GAIG;AACH,SAAS,cAAc,CAAC,QAAkB;IACtC,MAAM,IAAI,GAAG,IAAI,GAAG,EAAW,CAAC;IAChC,KAAK,MAAM,KAAK,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;QAClC,MAAM,OAAO,GAAG,SAAS,CAAC,QAAQ,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QAC/C,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1C,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9C,CAAC;IACD,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IACpE,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IACpE,IAAI,KAAK,GAAG,KAAK,GAAG,CAAC,EAAE,CAAC;QACpB,QAAQ,CAAC,MAAM,CAAC,OAAO,CACnB,aAAa,EACb,WAAW,CAAC,kBAAkB,EAC9B,GAAG,KAAK,gBAAgB,KAAK,wGAAwG,CACxI,CAAC;IACN,CAAC;AACL,CAAC;AAED;;;;;;GAMG;AACH,KAAK,UAAU,WAAW,CACtB,KAAkB,EAClB,IAAe,EACf,OAAkD;IAElD,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IACrD,MAAM,KAAK,GAAG,WAAW,CACrB,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,EACtD,OAAO,EACP,QAAQ,CAAC,MAAM,CAClB,CAAC;IACF,IAAI,QAAQ,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7B,QAAQ,CAAC,MAAM,CAAC,OAAO,CACnB,aAAa,EACb,WAAW,CAAC,eAAe,EAC3B,sCAAsC,QAAQ,CAAC,MAAM,CAAC,MAAM,yBAAyB,QAAQ,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,yDAAyD,CAC3K,CAAC;IACN,CAAC;IACD,OAAO,OAAO,CAAC,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,CAAC;AAC3D,CAAC;AAED;;;;;;;GAOG;AACH,KAAK,UAAU,cAAc,CACzB,KAAkB,EAClB,OAAqC,EACrC,OAAkD;IAElD,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC,CAAC;IAClC,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IAClD,MAAM,OAAO,GAAmB,EAAE,CAAC;IACnC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3C,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QACxB,MAAM,QAAQ,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,OAAO,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;QACvE,iBAAiB,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QACxD,mBAAmB,CAAC,OAAO,EAAE,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;QAC5D,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,OAAO,OAAO,CAAC;AACnB,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,eAAe,CAC1B,KAAkB,EAClB,OAAkD;IAElD,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IACrD,OAAO,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;QACxC,MAAM,OAAO,GAAG,SAAS,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACjF,OAAO,MAAM,CAAC,MAAM,CAAC;YACjB,KAAK;YACL,IAAI,EAAE,SAAS,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,CAAC;YACpC,KAAK,EAAE,IAAI,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI;YACnD,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM;SAC9B,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;AACP,CAAC;AAED;;;;;GAKG;AACH,SAAS,SAAS,CAAC,KAAe,EAAE,GAAkB;IAClD,OAAO,KAAK,CAAC,KAAK,IAAI,CAAC,KAAK,KAAK,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,EAAE,IAAI,IAAI,CAAC;AACpG,CAAC;AAED;;;;GAIG;AACH,KAAK,UAAU,MAAM,CAAC,KAAkB;IACpC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,YAAY,UAAU,EAAE,CAAC;QAC3D,OAAO,KAAK,CAAC;IACjB,CAAC;IACD,MAAM,KAAK,GAA4B,EAAE,CAAC;IAC1C,MAAM,QAAQ,GACV,OAAQ,KAAiC,CAAC,SAAS,KAAK,UAAU;QAC9D,CAAC,CAAC,cAAc,CAAC,KAAmC,CAAC;QACrD,CAAC,CAAE,KAA4C,CAAC;IACxD,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,QAAQ,EAAE,CAAC;QACjC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACtB,CAAC;IACD,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,EAAE,CAAC;QAC5C,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC1B,CAAC;IACD,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1F,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC;IACxE,IAAI,EAAE,GAAG,CAAC,CAAC;IACX,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;QACpB,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACf,EAAE,IAAI,CAAC,CAAC,UAAU,CAAC;IACvB,CAAC;IACD,OAAO,GAAG,CAAC;AACf,CAAC;AAED;;;;;GAKG;AACH,KAAK,SAAS,CAAC,CAAC,cAAc,CAAC,MAAkC;IAC7D,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,EAAE,CAAC;IAClC,IAAI,CAAC;QACD,SAAS,CAAC;YACN,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;YAC5C,IAAI,IAAI,EAAE,CAAC;gBACP,OAAO;YACX,CAAC;YACD,MAAM,KAAK,CAAC;QAChB,CAAC;IACL,CAAC;YAAS,CAAC;QACP,MAAM,CAAC,WAAW,EAAE,CAAC;IACzB,CAAC;AACL,CAAC;AAED;;;;;;GAMG;AACH,SAAS,UAAU,CAAC,IAAgB;IAChC,MAAM,IAAI,GAAG,IAAI,WAAW,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC;IAC9F,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QAC7B,OAAO,CAAC,CAAC;IACb,CAAC;IACD,IAAI,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QAC3B,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,MAAM,IAAI,GAAG,uDAAuD,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC,CAAC;IAChH,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC;QACvC,OAAO,CAAC,CAAC;IACb,CAAC;IACD,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IAC7C,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IACpE,OAAO,GAAG,CAAC,QAAQ,CAAC,6BAA6B,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC;AACpE,CAAC;AAED,0BAA0B;AAC1B,MAAM,CAAC,MAAM,aAAa,GAAsC,MAAM,CAAC,MAAM,CAAC;IAC1E,MAAM,EAAE,MAAM;IACd,UAAU,EAAE,UAAU;IACtB,SAAS,EAAE,UAAU;IACrB,KAAK,EAAE,UAAU;IACjB,MAAM,EAAE,WAAW;IACnB,SAAS,EAAE,cAAc;IACzB,UAAU,EAAE,eAAe;CAC9B,CAAC,CAAC"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * The `@graphty/graph-io/xgmml` subpath: the XGMML importer and exporter, their option types and
3
+ * their issue and loss-note code tables.
4
+ */
5
+ export { XGMML_ISSUE, XGMML_LOSS } from "./constants.js";
6
+ export { xgmmlExporter, type XgmmlExportOptions } from "./exporter.js";
7
+ export { xgmmlImporter, type XgmmlImportOptions } from "./importer.js";
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/formats/xgmml/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,KAAK,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACvE,OAAO,EAAE,aAAa,EAAE,KAAK,kBAAkB,EAAE,MAAM,eAAe,CAAC"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * The `@graphty/graph-io/xgmml` subpath: the XGMML importer and exporter, their option types and
3
+ * their issue and loss-note code tables.
4
+ */
5
+ export { XGMML_ISSUE, XGMML_LOSS } from "./constants.js";
6
+ export { xgmmlExporter } from "./exporter.js";
7
+ export { xgmmlImporter } from "./importer.js";
8
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/formats/xgmml/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,aAAa,EAA2B,MAAM,eAAe,CAAC;AACvE,OAAO,EAAE,aAAa,EAA2B,MAAM,eAAe,CAAC"}
@@ -0,0 +1,60 @@
1
+ /**
2
+ * XGMML attribute types and values (`research-xgmml.md` sections 3.6, 3.8 and 4.3): which kind an
3
+ * `<att>` declares (Cytoscape's `cy:type` before the draft's `type`, case-insensitively), and the
4
+ * lexical rules of each kind as Cytoscape writes them. A value that does not parse is never
5
+ * guessed at: the caller records E_BAD_VALUE and leaves the cell unset.
6
+ */
7
+ import { type AttRec } from "./document.js";
8
+ /** The scalar kinds of a column, in widening order (string beats everything). */
9
+ export type ScalarKind = "bool" | "int" | "long" | "real" | "string";
10
+ /** What one att declares. */
11
+ type DeclaredKind = ScalarKind | "list" | "map";
12
+ /** The declared kind of an att and the type text to keep in `origin.type`. */
13
+ interface AttType {
14
+ /** The kind. */
15
+ readonly kind: DeclaredKind;
16
+ /** The type as declared (`cy:type` when given, else `type`), or null for an untyped att. */
17
+ readonly declared: string | null;
18
+ /** The type text no kind matched (kept as text, W_UNKNOWN_ATTR_TYPE), or null. */
19
+ readonly unknown: string | null;
20
+ }
21
+ /**
22
+ * The kind an att declares: `cy:type` first, then `type`, both case-insensitive; no type is a
23
+ * string; an unknown type is a string the caller reports. An untyped-by-Cytoscape `integer` att
24
+ * whose name ends in `.SUID` is a long (Cytoscape keeps SUID references as Long).
25
+ * @param att - the att
26
+ * @returns the declared kind
27
+ */
28
+ export declare function attType(att: AttRec): AttType;
29
+ /**
30
+ * The scalar kind a list element type names (`cy:elementType`), or null when it names none.
31
+ * @param text - the element type text
32
+ * @returns the kind, or null
33
+ */
34
+ export declare function elementKind(text: string | null): ScalarKind | null;
35
+ /**
36
+ * The wider of two scalar kinds (design section 5.1): int and long widen to long, any two numbers
37
+ * to real, a boolean and a number to string, anything and a string to string.
38
+ * @param a - one kind
39
+ * @param b - the other
40
+ * @returns the kind both fit
41
+ */
42
+ export declare function widenScalar(a: ScalarKind, b: ScalarKind): ScalarKind;
43
+ /** A parsed scalar and what parsing it found. */
44
+ interface ParsedScalar {
45
+ /** The value. */
46
+ readonly value: boolean | number | string;
47
+ /** An integer beyond i32 (the column widens), or a long / real beyond what a double holds exactly. */
48
+ readonly overflow?: "i32" | "precision" | undefined;
49
+ }
50
+ /**
51
+ * Parse one value text by its declared scalar kind. Numbers and booleans are trimmed; strings
52
+ * never are. Booleans accept 1 / 0 / true / false / yes / no in any case.
53
+ * @param text - the value text
54
+ * @param kind - the declared kind
55
+ * @param unescape - decode Cytoscape's two-character `\n` and `\t` in strings
56
+ * @returns the value, or null when the text does not parse as the kind
57
+ */
58
+ export declare function parseScalar(text: string, kind: ScalarKind, unescape: boolean): ParsedScalar | null;
59
+ export {};
60
+ //# sourceMappingURL=values.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"values.d.ts","sourceRoot":"","sources":["../../../../src/formats/xgmml/values.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,eAAe,CAAC;AAE5C,iFAAiF;AACjF,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,KAAK,GAAG,MAAM,GAAG,MAAM,GAAG,QAAQ,CAAC;AAErE,6BAA6B;AAC7B,KAAK,YAAY,GAAG,UAAU,GAAG,MAAM,GAAG,KAAK,CAAC;AAEhD,8EAA8E;AAC9E,UAAU,OAAO;IACb,gBAAgB;IAChB,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B,4FAA4F;IAC5F,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,kFAAkF;IAClF,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CACnC;AAsBD;;;;;;GAMG;AACH,wBAAgB,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAqB5C;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,UAAU,GAAG,IAAI,CAMlE;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,UAAU,GAAG,UAAU,CAWpE;AAUD,iDAAiD;AACjD,UAAU,YAAY;IAClB,iBAAiB;IACjB,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;IAC1C,sGAAsG;IACtG,QAAQ,CAAC,QAAQ,CAAC,EAAE,KAAK,GAAG,WAAW,GAAG,SAAS,CAAC;CACvD;AAED;;;;;;;GAOG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,GAAG,YAAY,GAAG,IAAI,CAyClG"}