@graphty/graph-io 0.3.43 → 0.3.44

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 (674) hide show
  1. package/dist/chunks/approximations-3Q4TsdTh.js +40 -0
  2. package/dist/chunks/approximations-3Q4TsdTh.js.map +1 -0
  3. package/dist/chunks/block-JQiwViEt.js +2777 -0
  4. package/dist/chunks/block-JQiwViEt.js.map +1 -0
  5. package/dist/chunks/{choose-DvpbdRuz.js → choose-BemygfH8.js} +3 -2
  6. package/dist/chunks/{choose-DvpbdRuz.js.map → choose-BemygfH8.js.map} +1 -1
  7. package/dist/chunks/{constants-fT3E8JYY.js → constants-BFUR_CtU.js} +6 -2
  8. package/dist/chunks/constants-BFUR_CtU.js.map +1 -0
  9. package/dist/chunks/convert-BcQ8_jMo.js +59 -0
  10. package/dist/chunks/convert-BcQ8_jMo.js.map +1 -0
  11. package/dist/chunks/emit-DCwFLts5.js +3456 -0
  12. package/dist/chunks/emit-DCwFLts5.js.map +1 -0
  13. package/dist/chunks/{escape-B62ZGM_a.js → escape-B1rMftd9.js} +43 -20
  14. package/dist/chunks/escape-B1rMftd9.js.map +1 -0
  15. package/dist/chunks/{export-rKLeGQMo.js → export-D7IGzTG4.js} +196 -792
  16. package/dist/chunks/export-D7IGzTG4.js.map +1 -0
  17. package/dist/chunks/{exporter-BWwEuOPT.js → exporter-BtnqYuuj.js} +22 -12
  18. package/dist/chunks/exporter-BtnqYuuj.js.map +1 -0
  19. package/dist/chunks/{exporter-yLxKBvLE.js → exporter-ChPyhBOv.js} +4 -3
  20. package/dist/chunks/{exporter-yLxKBvLE.js.map → exporter-ChPyhBOv.js.map} +1 -1
  21. package/dist/chunks/{exporter-8hLNemFk.js → exporter-KEPxYUXD.js} +133 -74
  22. package/dist/chunks/exporter-KEPxYUXD.js.map +1 -0
  23. package/dist/chunks/{exporter-RVtXVetw.js → exporter-quPUCBiC.js} +1805 -287
  24. package/dist/chunks/exporter-quPUCBiC.js.map +1 -0
  25. package/dist/chunks/format-GDmO6m6Q.js +676 -0
  26. package/dist/chunks/format-GDmO6m6Q.js.map +1 -0
  27. package/dist/chunks/generic-BL06jrJf.js +1347 -0
  28. package/dist/chunks/generic-BL06jrJf.js.map +1 -0
  29. package/dist/chunks/{importer-WrGRZb0N.js → importer-B7r2owVf.js} +449 -102
  30. package/dist/chunks/importer-B7r2owVf.js.map +1 -0
  31. package/dist/chunks/{importer-Ht7LNg8L.js → importer-BFmOP96W.js} +116 -296
  32. package/dist/chunks/importer-BFmOP96W.js.map +1 -0
  33. package/dist/chunks/{importer-BbNb7eNg.js → importer-C2nzGhdV.js} +1390 -129
  34. package/dist/chunks/importer-C2nzGhdV.js.map +1 -0
  35. package/dist/chunks/{importer-Dz7tI8Sa.js → importer-CbX2_rNF.js} +617 -115
  36. package/dist/chunks/importer-CbX2_rNF.js.map +1 -0
  37. package/dist/chunks/{importer-D794XUTe.js → importer-CdzeN6X4.js} +31 -8
  38. package/dist/chunks/importer-CdzeN6X4.js.map +1 -0
  39. package/dist/chunks/{importer-xZ-3suY1.js → importer-ChKNC_GN.js} +791 -135
  40. package/dist/chunks/importer-ChKNC_GN.js.map +1 -0
  41. package/dist/chunks/{importer-C98dpSH4.js → importer-dwoYpSqb.js} +141 -82
  42. package/dist/chunks/importer-dwoYpSqb.js.map +1 -0
  43. package/dist/chunks/index-B9fdNpTA.js +4310 -0
  44. package/dist/chunks/index-B9fdNpTA.js.map +1 -0
  45. package/dist/chunks/{json-elements-DKSqpNW1.js → json-elements-C4FwgnH5.js} +123 -32
  46. package/dist/chunks/json-elements-C4FwgnH5.js.map +1 -0
  47. package/dist/chunks/lexicon-B-knUi-l.js +508 -0
  48. package/dist/chunks/lexicon-B-knUi-l.js.map +1 -0
  49. package/dist/chunks/{ontology-export-CtRXjg_i.js → ontology-export-BSpbY5FL.js} +3 -2
  50. package/dist/chunks/{ontology-export-CtRXjg_i.js.map → ontology-export-BSpbY5FL.js.map} +1 -1
  51. package/dist/chunks/{records-Cu4bxYOm.js → records-Nwz_rbNt.js} +2 -2
  52. package/dist/chunks/{records-Cu4bxYOm.js.map → records-Nwz_rbNt.js.map} +1 -1
  53. package/dist/chunks/styles-Brt9JMfs.js +690 -0
  54. package/dist/chunks/styles-Brt9JMfs.js.map +1 -0
  55. package/dist/chunks/styles-_N-C8S-U.js +2102 -0
  56. package/dist/chunks/styles-_N-C8S-U.js.map +1 -0
  57. package/dist/chunks/styles-yed-DAfcIkf7.js +842 -0
  58. package/dist/chunks/styles-yed-DAfcIkf7.js.map +1 -0
  59. package/dist/chunks/{text-DHOJXnED.js → text-CgzMqHQb.js} +2 -2
  60. package/dist/chunks/{text-DHOJXnED.js.map → text-CgzMqHQb.js.map} +1 -1
  61. package/dist/chunks/units-XMZFIFe1.js +19 -0
  62. package/dist/chunks/units-XMZFIFe1.js.map +1 -0
  63. package/dist/csv.js +5 -4
  64. package/dist/csv.js.map +1 -1
  65. package/dist/cx.js +1 -1
  66. package/dist/cx2.js +2 -2
  67. package/dist/cys.js +1 -1
  68. package/dist/dot.js +5 -2
  69. package/dist/dot.js.map +1 -1
  70. package/dist/gexf.js +292 -412
  71. package/dist/gexf.js.map +1 -1
  72. package/dist/gml.js +8 -3031
  73. package/dist/gml.js.map +1 -1
  74. package/dist/graph-io.js +354 -240
  75. package/dist/graph-io.js.map +1 -1
  76. package/dist/graphml.js +4 -2
  77. package/dist/graphml.js.map +1 -1
  78. package/dist/json.js +1 -1
  79. package/dist/neo4j.js +4 -3
  80. package/dist/neo4j.js.map +1 -1
  81. package/dist/obo.js +1 -1
  82. package/dist/pajek.js +4 -2
  83. package/dist/positions.d.ts +1 -0
  84. package/dist/positions.js +427 -0
  85. package/dist/positions.js.map +1 -0
  86. package/dist/src/common/codes.d.ts +6 -0
  87. package/dist/src/common/codes.d.ts.map +1 -1
  88. package/dist/src/common/codes.js +6 -0
  89. package/dist/src/common/codes.js.map +1 -1
  90. package/dist/src/common/escape.d.ts.map +1 -1
  91. package/dist/src/common/escape.js +4 -2
  92. package/dist/src/common/escape.js.map +1 -1
  93. package/dist/src/common/export.d.ts +10 -0
  94. package/dist/src/common/export.d.ts.map +1 -1
  95. package/dist/src/common/export.js +123 -100
  96. package/dist/src/common/export.js.map +1 -1
  97. package/dist/src/common/input.d.ts.map +1 -1
  98. package/dist/src/common/input.js +8 -1
  99. package/dist/src/common/input.js.map +1 -1
  100. package/dist/src/common/json-elements.d.ts +12 -9
  101. package/dist/src/common/json-elements.d.ts.map +1 -1
  102. package/dist/src/common/json-elements.js +160 -37
  103. package/dist/src/common/json-elements.js.map +1 -1
  104. package/dist/src/common/notes.d.ts +42 -0
  105. package/dist/src/common/notes.d.ts.map +1 -0
  106. package/dist/src/common/notes.js +72 -0
  107. package/dist/src/common/notes.js.map +1 -0
  108. package/dist/src/common/report.d.ts +18 -0
  109. package/dist/src/common/report.d.ts.map +1 -1
  110. package/dist/src/common/report.js +36 -1
  111. package/dist/src/common/report.js.map +1 -1
  112. package/dist/src/common/units.d.ts +24 -0
  113. package/dist/src/common/units.d.ts.map +1 -0
  114. package/dist/src/common/units.js +26 -0
  115. package/dist/src/common/units.js.map +1 -0
  116. package/dist/src/common/xml.d.ts +18 -0
  117. package/dist/src/common/xml.d.ts.map +1 -1
  118. package/dist/src/common/xml.js +42 -5
  119. package/dist/src/common/xml.js.map +1 -1
  120. package/dist/src/formats/cx/exporter.d.ts +6 -0
  121. package/dist/src/formats/cx/exporter.d.ts.map +1 -1
  122. package/dist/src/formats/cx/exporter.js +71 -8
  123. package/dist/src/formats/cx/exporter.js.map +1 -1
  124. package/dist/src/formats/cx/importer.d.ts +5 -2
  125. package/dist/src/formats/cx/importer.d.ts.map +1 -1
  126. package/dist/src/formats/cx/importer.js +102 -72
  127. package/dist/src/formats/cx/importer.js.map +1 -1
  128. package/dist/src/formats/cx/styles.d.ts +102 -0
  129. package/dist/src/formats/cx/styles.d.ts.map +1 -0
  130. package/dist/src/formats/cx/styles.js +225 -0
  131. package/dist/src/formats/cx/styles.js.map +1 -0
  132. package/dist/src/formats/cx2/exporter.d.ts +5 -0
  133. package/dist/src/formats/cx2/exporter.d.ts.map +1 -1
  134. package/dist/src/formats/cx2/exporter.js +181 -71
  135. package/dist/src/formats/cx2/exporter.js.map +1 -1
  136. package/dist/src/formats/cx2/importer.d.ts +4 -1
  137. package/dist/src/formats/cx2/importer.d.ts.map +1 -1
  138. package/dist/src/formats/cx2/importer.js +19 -1
  139. package/dist/src/formats/cx2/importer.js.map +1 -1
  140. package/dist/src/formats/cx2/styles.d.ts +18 -0
  141. package/dist/src/formats/cx2/styles.d.ts.map +1 -0
  142. package/dist/src/formats/cx2/styles.js +24 -0
  143. package/dist/src/formats/cx2/styles.js.map +1 -0
  144. package/dist/src/formats/cys/constants.d.ts +2 -0
  145. package/dist/src/formats/cys/constants.d.ts.map +1 -1
  146. package/dist/src/formats/cys/constants.js +2 -0
  147. package/dist/src/formats/cys/constants.js.map +1 -1
  148. package/dist/src/formats/cys/exporter.d.ts +6 -2
  149. package/dist/src/formats/cys/exporter.d.ts.map +1 -1
  150. package/dist/src/formats/cys/exporter.js +215 -53
  151. package/dist/src/formats/cys/exporter.js.map +1 -1
  152. package/dist/src/formats/cys/importer.d.ts +2 -1
  153. package/dist/src/formats/cys/importer.d.ts.map +1 -1
  154. package/dist/src/formats/cys/importer.js +119 -6
  155. package/dist/src/formats/cys/importer.js.map +1 -1
  156. package/dist/src/formats/cys/session.d.ts +2 -0
  157. package/dist/src/formats/cys/session.d.ts.map +1 -1
  158. package/dist/src/formats/cys/session.js +5 -0
  159. package/dist/src/formats/cys/session.js.map +1 -1
  160. package/dist/src/formats/cys/styles.d.ts +38 -0
  161. package/dist/src/formats/cys/styles.d.ts.map +1 -0
  162. package/dist/src/formats/cys/styles.js +213 -0
  163. package/dist/src/formats/cys/styles.js.map +1 -0
  164. package/dist/src/formats/cys/tables.d.ts +8 -3
  165. package/dist/src/formats/cys/tables.d.ts.map +1 -1
  166. package/dist/src/formats/cys/tables.js +88 -34
  167. package/dist/src/formats/cys/tables.js.map +1 -1
  168. package/dist/src/formats/dot/exporter.d.ts +2 -0
  169. package/dist/src/formats/dot/exporter.d.ts.map +1 -1
  170. package/dist/src/formats/dot/exporter.js +195 -81
  171. package/dist/src/formats/dot/exporter.js.map +1 -1
  172. package/dist/src/formats/dot/importer.d.ts.map +1 -1
  173. package/dist/src/formats/dot/importer.js +100 -20
  174. package/dist/src/formats/dot/importer.js.map +1 -1
  175. package/dist/src/formats/dot/index.d.ts +1 -0
  176. package/dist/src/formats/dot/index.d.ts.map +1 -1
  177. package/dist/src/formats/dot/index.js +1 -0
  178. package/dist/src/formats/dot/index.js.map +1 -1
  179. package/dist/src/formats/dot/positions.d.ts +14 -0
  180. package/dist/src/formats/dot/positions.d.ts.map +1 -0
  181. package/dist/src/formats/dot/positions.js +70 -0
  182. package/dist/src/formats/dot/positions.js.map +1 -0
  183. package/dist/src/formats/dot/styles.d.ts +82 -0
  184. package/dist/src/formats/dot/styles.d.ts.map +1 -0
  185. package/dist/src/formats/dot/styles.js +1484 -0
  186. package/dist/src/formats/dot/styles.js.map +1 -0
  187. package/dist/src/formats/gexf/exporter.d.ts.map +1 -1
  188. package/dist/src/formats/gexf/exporter.js +20 -5
  189. package/dist/src/formats/gexf/exporter.js.map +1 -1
  190. package/dist/src/formats/gexf/importer.d.ts +8 -1
  191. package/dist/src/formats/gexf/importer.d.ts.map +1 -1
  192. package/dist/src/formats/gexf/importer.js +251 -131
  193. package/dist/src/formats/gexf/importer.js.map +1 -1
  194. package/dist/src/formats/gexf/index.d.ts +8 -0
  195. package/dist/src/formats/gexf/index.d.ts.map +1 -1
  196. package/dist/src/formats/gexf/index.js +10 -2
  197. package/dist/src/formats/gexf/index.js.map +1 -1
  198. package/dist/src/formats/gexf/schema.d.ts +5 -0
  199. package/dist/src/formats/gexf/schema.d.ts.map +1 -1
  200. package/dist/src/formats/gexf/schema.js +5 -0
  201. package/dist/src/formats/gexf/schema.js.map +1 -1
  202. package/dist/src/formats/gexf/styles.d.ts +74 -0
  203. package/dist/src/formats/gexf/styles.d.ts.map +1 -0
  204. package/dist/src/formats/gexf/styles.js +604 -0
  205. package/dist/src/formats/gexf/styles.js.map +1 -0
  206. package/dist/src/formats/gml/exporter.d.ts +1 -5
  207. package/dist/src/formats/gml/exporter.d.ts.map +1 -1
  208. package/dist/src/formats/gml/exporter.js +19 -8
  209. package/dist/src/formats/gml/exporter.js.map +1 -1
  210. package/dist/src/formats/gml/importer.d.ts.map +1 -1
  211. package/dist/src/formats/gml/importer.js +4 -0
  212. package/dist/src/formats/gml/importer.js.map +1 -1
  213. package/dist/src/formats/gml/index.d.ts +2 -1
  214. package/dist/src/formats/gml/index.d.ts.map +1 -1
  215. package/dist/src/formats/gml/index.js +2 -1
  216. package/dist/src/formats/gml/index.js.map +1 -1
  217. package/dist/src/formats/gml/positions.d.ts +14 -0
  218. package/dist/src/formats/gml/positions.d.ts.map +1 -0
  219. package/dist/src/formats/gml/positions.js +46 -0
  220. package/dist/src/formats/gml/positions.js.map +1 -0
  221. package/dist/src/formats/gml/styles.d.ts +59 -0
  222. package/dist/src/formats/gml/styles.d.ts.map +1 -0
  223. package/dist/src/formats/gml/styles.js +1056 -0
  224. package/dist/src/formats/gml/styles.js.map +1 -0
  225. package/dist/src/formats/gml/syntax.d.ts +11 -0
  226. package/dist/src/formats/gml/syntax.d.ts.map +1 -1
  227. package/dist/src/formats/gml/syntax.js +151 -62
  228. package/dist/src/formats/gml/syntax.js.map +1 -1
  229. package/dist/src/formats/graphml/constants.d.ts +4 -0
  230. package/dist/src/formats/graphml/constants.d.ts.map +1 -1
  231. package/dist/src/formats/graphml/constants.js +5 -1
  232. package/dist/src/formats/graphml/constants.js.map +1 -1
  233. package/dist/src/formats/graphml/exporter.d.ts.map +1 -1
  234. package/dist/src/formats/graphml/exporter.js +133 -65
  235. package/dist/src/formats/graphml/exporter.js.map +1 -1
  236. package/dist/src/formats/graphml/importer.d.ts +4 -1
  237. package/dist/src/formats/graphml/importer.d.ts.map +1 -1
  238. package/dist/src/formats/graphml/importer.js +100 -44
  239. package/dist/src/formats/graphml/importer.js.map +1 -1
  240. package/dist/src/formats/graphml/index.d.ts +1 -0
  241. package/dist/src/formats/graphml/index.d.ts.map +1 -1
  242. package/dist/src/formats/graphml/index.js +1 -0
  243. package/dist/src/formats/graphml/index.js.map +1 -1
  244. package/dist/src/formats/graphml/styles-plain.d.ts +19 -0
  245. package/dist/src/formats/graphml/styles-plain.d.ts.map +1 -0
  246. package/dist/src/formats/graphml/styles-plain.js +187 -0
  247. package/dist/src/formats/graphml/styles-plain.js.map +1 -0
  248. package/dist/src/formats/graphml/styles-yed.d.ts +179 -0
  249. package/dist/src/formats/graphml/styles-yed.d.ts.map +1 -0
  250. package/dist/src/formats/graphml/styles-yed.js +1086 -0
  251. package/dist/src/formats/graphml/styles-yed.js.map +1 -0
  252. package/dist/src/formats/graphml/styles-yfiles3.d.ts +19 -0
  253. package/dist/src/formats/graphml/styles-yfiles3.d.ts.map +1 -0
  254. package/dist/src/formats/graphml/styles-yfiles3.js +508 -0
  255. package/dist/src/formats/graphml/styles-yfiles3.js.map +1 -0
  256. package/dist/src/formats/graphml/tree.d.ts.map +1 -1
  257. package/dist/src/formats/graphml/tree.js +34 -19
  258. package/dist/src/formats/graphml/tree.js.map +1 -1
  259. package/dist/src/formats/graphml/yfiles.d.ts +16 -2
  260. package/dist/src/formats/graphml/yfiles.d.ts.map +1 -1
  261. package/dist/src/formats/graphml/yfiles.js +83 -12
  262. package/dist/src/formats/graphml/yfiles.js.map +1 -1
  263. package/dist/src/formats/json/exporter.d.ts +5 -0
  264. package/dist/src/formats/json/exporter.d.ts.map +1 -1
  265. package/dist/src/formats/json/exporter.js +68 -25
  266. package/dist/src/formats/json/exporter.js.map +1 -1
  267. package/dist/src/formats/json/importer.d.ts +22 -3
  268. package/dist/src/formats/json/importer.d.ts.map +1 -1
  269. package/dist/src/formats/json/importer.js +439 -264
  270. package/dist/src/formats/json/importer.js.map +1 -1
  271. package/dist/src/formats/json/positions.d.ts +16 -0
  272. package/dist/src/formats/json/positions.d.ts.map +1 -0
  273. package/dist/src/formats/json/positions.js +44 -0
  274. package/dist/src/formats/json/positions.js.map +1 -0
  275. package/dist/src/formats/json/styles.d.ts +102 -0
  276. package/dist/src/formats/json/styles.d.ts.map +1 -0
  277. package/dist/src/formats/json/styles.js +1753 -0
  278. package/dist/src/formats/json/styles.js.map +1 -0
  279. package/dist/src/formats/neo4j/exporter.d.ts.map +1 -1
  280. package/dist/src/formats/neo4j/exporter.js +2 -1
  281. package/dist/src/formats/neo4j/exporter.js.map +1 -1
  282. package/dist/src/formats/pajek/exporter.d.ts +2 -0
  283. package/dist/src/formats/pajek/exporter.d.ts.map +1 -1
  284. package/dist/src/formats/pajek/exporter.js +142 -76
  285. package/dist/src/formats/pajek/exporter.js.map +1 -1
  286. package/dist/src/formats/pajek/importer.d.ts +4 -0
  287. package/dist/src/formats/pajek/importer.d.ts.map +1 -1
  288. package/dist/src/formats/pajek/importer.js +60 -6
  289. package/dist/src/formats/pajek/importer.js.map +1 -1
  290. package/dist/src/formats/pajek/index.d.ts +2 -0
  291. package/dist/src/formats/pajek/index.d.ts.map +1 -1
  292. package/dist/src/formats/pajek/index.js +2 -0
  293. package/dist/src/formats/pajek/index.js.map +1 -1
  294. package/dist/src/formats/pajek/styles.d.ts +50 -0
  295. package/dist/src/formats/pajek/styles.d.ts.map +1 -0
  296. package/dist/src/formats/pajek/styles.js +569 -0
  297. package/dist/src/formats/pajek/styles.js.map +1 -0
  298. package/dist/src/formats/pajek/syntax.d.ts +6 -0
  299. package/dist/src/formats/pajek/syntax.d.ts.map +1 -1
  300. package/dist/src/formats/pajek/syntax.js +6 -0
  301. package/dist/src/formats/pajek/syntax.js.map +1 -1
  302. package/dist/src/formats/xgmml/columns.d.ts.map +1 -1
  303. package/dist/src/formats/xgmml/columns.js +34 -9
  304. package/dist/src/formats/xgmml/columns.js.map +1 -1
  305. package/dist/src/formats/xgmml/constants.d.ts +2 -0
  306. package/dist/src/formats/xgmml/constants.d.ts.map +1 -1
  307. package/dist/src/formats/xgmml/constants.js +3 -1
  308. package/dist/src/formats/xgmml/constants.js.map +1 -1
  309. package/dist/src/formats/xgmml/document.d.ts +12 -8
  310. package/dist/src/formats/xgmml/document.d.ts.map +1 -1
  311. package/dist/src/formats/xgmml/document.js +56 -13
  312. package/dist/src/formats/xgmml/document.js.map +1 -1
  313. package/dist/src/formats/xgmml/emit.d.ts.map +1 -1
  314. package/dist/src/formats/xgmml/emit.js +12 -6
  315. package/dist/src/formats/xgmml/emit.js.map +1 -1
  316. package/dist/src/formats/xgmml/exporter.d.ts +3 -1
  317. package/dist/src/formats/xgmml/exporter.d.ts.map +1 -1
  318. package/dist/src/formats/xgmml/exporter.js +22 -9
  319. package/dist/src/formats/xgmml/exporter.js.map +1 -1
  320. package/dist/src/formats/xgmml/importer.d.ts +2 -1
  321. package/dist/src/formats/xgmml/importer.d.ts.map +1 -1
  322. package/dist/src/formats/xgmml/importer.js +31 -24
  323. package/dist/src/formats/xgmml/importer.js.map +1 -1
  324. package/dist/src/formats/xgmml/styles.d.ts +104 -0
  325. package/dist/src/formats/xgmml/styles.d.ts.map +1 -0
  326. package/dist/src/formats/xgmml/styles.js +310 -0
  327. package/dist/src/formats/xgmml/styles.js.map +1 -0
  328. package/dist/src/index.d.ts +9 -7
  329. package/dist/src/index.d.ts.map +1 -1
  330. package/dist/src/index.js +7 -7
  331. package/dist/src/index.js.map +1 -1
  332. package/dist/src/positions/codes.d.ts +31 -0
  333. package/dist/src/positions/codes.d.ts.map +1 -0
  334. package/dist/src/positions/codes.js +26 -0
  335. package/dist/src/positions/codes.js.map +1 -0
  336. package/dist/src/positions/convert.d.ts +58 -0
  337. package/dist/src/positions/convert.d.ts.map +1 -0
  338. package/dist/src/positions/convert.js +107 -0
  339. package/dist/src/positions/convert.js.map +1 -0
  340. package/dist/src/positions/extract.d.ts +27 -0
  341. package/dist/src/positions/extract.d.ts.map +1 -0
  342. package/dist/src/positions/extract.js +526 -0
  343. package/dist/src/positions/extract.js.map +1 -0
  344. package/dist/src/positions/index.d.ts +10 -0
  345. package/dist/src/positions/index.d.ts.map +1 -0
  346. package/dist/src/positions/index.js +9 -0
  347. package/dist/src/positions/index.js.map +1 -0
  348. package/dist/src/positions/types.d.ts +208 -0
  349. package/dist/src/positions/types.d.ts.map +1 -0
  350. package/dist/src/positions/types.js +10 -0
  351. package/dist/src/positions/types.js.map +1 -0
  352. package/dist/src/registry.d.ts +30 -0
  353. package/dist/src/registry.d.ts.map +1 -1
  354. package/dist/src/registry.js +130 -9
  355. package/dist/src/registry.js.map +1 -1
  356. package/dist/src/styles/annotations.d.ts +132 -0
  357. package/dist/src/styles/annotations.d.ts.map +1 -0
  358. package/dist/src/styles/annotations.js +320 -0
  359. package/dist/src/styles/annotations.js.map +1 -0
  360. package/dist/src/styles/budget.d.ts +45 -0
  361. package/dist/src/styles/budget.d.ts.map +1 -0
  362. package/dist/src/styles/budget.js +58 -0
  363. package/dist/src/styles/budget.js.map +1 -0
  364. package/dist/src/styles/canon/bends.d.ts +32 -0
  365. package/dist/src/styles/canon/bends.d.ts.map +1 -0
  366. package/dist/src/styles/canon/bends.js +74 -0
  367. package/dist/src/styles/canon/bends.js.map +1 -0
  368. package/dist/src/styles/canon/color-tables.d.ts +22 -0
  369. package/dist/src/styles/canon/color-tables.d.ts.map +1 -0
  370. package/dist/src/styles/canon/color-tables.js +369 -0
  371. package/dist/src/styles/canon/color-tables.js.map +1 -0
  372. package/dist/src/styles/canon/color.d.ts +66 -0
  373. package/dist/src/styles/canon/color.d.ts.map +1 -0
  374. package/dist/src/styles/canon/color.js +548 -0
  375. package/dist/src/styles/canon/color.js.map +1 -0
  376. package/dist/src/styles/canon/enums.d.ts +25 -0
  377. package/dist/src/styles/canon/enums.d.ts.map +1 -0
  378. package/dist/src/styles/canon/enums.js +187 -0
  379. package/dist/src/styles/canon/enums.js.map +1 -0
  380. package/dist/src/styles/canon/graphviz.d.ts +48 -0
  381. package/dist/src/styles/canon/graphviz.d.ts.map +1 -0
  382. package/dist/src/styles/canon/graphviz.js +160 -0
  383. package/dist/src/styles/canon/graphviz.js.map +1 -0
  384. package/dist/src/styles/canon/index.d.ts +13 -0
  385. package/dist/src/styles/canon/index.d.ts.map +1 -0
  386. package/dist/src/styles/canon/index.js +13 -0
  387. package/dist/src/styles/canon/index.js.map +1 -0
  388. package/dist/src/styles/canon/number.d.ts +59 -0
  389. package/dist/src/styles/canon/number.d.ts.map +1 -0
  390. package/dist/src/styles/canon/number.js +142 -0
  391. package/dist/src/styles/canon/number.js.map +1 -0
  392. package/dist/src/styles/canon/site.d.ts +51 -0
  393. package/dist/src/styles/canon/site.d.ts.map +1 -0
  394. package/dist/src/styles/canon/site.js +63 -0
  395. package/dist/src/styles/canon/site.js.map +1 -0
  396. package/dist/src/styles/canon/text.d.ts +61 -0
  397. package/dist/src/styles/canon/text.d.ts.map +1 -0
  398. package/dist/src/styles/canon/text.js +199 -0
  399. package/dist/src/styles/canon/text.js.map +1 -0
  400. package/dist/src/styles/codes.d.ts +95 -0
  401. package/dist/src/styles/codes.d.ts.map +1 -0
  402. package/dist/src/styles/codes.js +97 -0
  403. package/dist/src/styles/codes.js.map +1 -0
  404. package/dist/src/styles/cyjs/cascade.d.ts +134 -0
  405. package/dist/src/styles/cyjs/cascade.d.ts.map +1 -0
  406. package/dist/src/styles/cyjs/cascade.js +2252 -0
  407. package/dist/src/styles/cyjs/cascade.js.map +1 -0
  408. package/dist/src/styles/cyjs/defaults-table.d.ts +25 -0
  409. package/dist/src/styles/cyjs/defaults-table.d.ts.map +1 -0
  410. package/dist/src/styles/cyjs/defaults-table.js +76 -0
  411. package/dist/src/styles/cyjs/defaults-table.js.map +1 -0
  412. package/dist/src/styles/cyjs/emit.d.ts +82 -0
  413. package/dist/src/styles/cyjs/emit.d.ts.map +1 -0
  414. package/dist/src/styles/cyjs/emit.js +790 -0
  415. package/dist/src/styles/cyjs/emit.js.map +1 -0
  416. package/dist/src/styles/cyjs/index.d.ts +13 -0
  417. package/dist/src/styles/cyjs/index.d.ts.map +1 -0
  418. package/dist/src/styles/cyjs/index.js +13 -0
  419. package/dist/src/styles/cyjs/index.js.map +1 -0
  420. package/dist/src/styles/cyjs/live.d.ts +46 -0
  421. package/dist/src/styles/cyjs/live.d.ts.map +1 -0
  422. package/dist/src/styles/cyjs/live.js +108 -0
  423. package/dist/src/styles/cyjs/live.js.map +1 -0
  424. package/dist/src/styles/cyjs/mappers.d.ts +147 -0
  425. package/dist/src/styles/cyjs/mappers.d.ts.map +1 -0
  426. package/dist/src/styles/cyjs/mappers.js +744 -0
  427. package/dist/src/styles/cyjs/mappers.js.map +1 -0
  428. package/dist/src/styles/cyjs/selector.d.ts +113 -0
  429. package/dist/src/styles/cyjs/selector.d.ts.map +1 -0
  430. package/dist/src/styles/cyjs/selector.js +611 -0
  431. package/dist/src/styles/cyjs/selector.js.map +1 -0
  432. package/dist/src/styles/cyjs/stylesheet-text.d.ts +37 -0
  433. package/dist/src/styles/cyjs/stylesheet-text.d.ts.map +1 -0
  434. package/dist/src/styles/cyjs/stylesheet-text.js +181 -0
  435. package/dist/src/styles/cyjs/stylesheet-text.js.map +1 -0
  436. package/dist/src/styles/cytoscape/emit.d.ts +125 -0
  437. package/dist/src/styles/cytoscape/emit.d.ts.map +1 -0
  438. package/dist/src/styles/cytoscape/emit.js +1025 -0
  439. package/dist/src/styles/cytoscape/emit.js.map +1 -0
  440. package/dist/src/styles/cytoscape/index.d.ts +10 -0
  441. package/dist/src/styles/cytoscape/index.d.ts.map +1 -0
  442. package/dist/src/styles/cytoscape/index.js +10 -0
  443. package/dist/src/styles/cytoscape/index.js.map +1 -0
  444. package/dist/src/styles/cytoscape/lexicon.d.ts +49 -0
  445. package/dist/src/styles/cytoscape/lexicon.d.ts.map +1 -0
  446. package/dist/src/styles/cytoscape/lexicon.js +603 -0
  447. package/dist/src/styles/cytoscape/lexicon.js.map +1 -0
  448. package/dist/src/styles/cytoscape/mappings.d.ts +171 -0
  449. package/dist/src/styles/cytoscape/mappings.d.ts.map +1 -0
  450. package/dist/src/styles/cytoscape/mappings.js +460 -0
  451. package/dist/src/styles/cytoscape/mappings.js.map +1 -0
  452. package/dist/src/styles/cytoscape/resolve.d.ts +137 -0
  453. package/dist/src/styles/cytoscape/resolve.d.ts.map +1 -0
  454. package/dist/src/styles/cytoscape/resolve.js +381 -0
  455. package/dist/src/styles/cytoscape/resolve.js.map +1 -0
  456. package/dist/src/styles/cytoscape/translate.d.ts +50 -0
  457. package/dist/src/styles/cytoscape/translate.d.ts.map +1 -0
  458. package/dist/src/styles/cytoscape/translate.js +156 -0
  459. package/dist/src/styles/cytoscape/translate.js.map +1 -0
  460. package/dist/src/styles/defaults.d.ts +90 -0
  461. package/dist/src/styles/defaults.d.ts.map +1 -0
  462. package/dist/src/styles/defaults.js +414 -0
  463. package/dist/src/styles/defaults.js.map +1 -0
  464. package/dist/src/styles/index.d.ts +15 -0
  465. package/dist/src/styles/index.d.ts.map +1 -0
  466. package/dist/src/styles/index.js +14 -0
  467. package/dist/src/styles/index.js.map +1 -0
  468. package/dist/src/styles/internal.d.ts +17 -0
  469. package/dist/src/styles/internal.d.ts.map +1 -0
  470. package/dist/src/styles/internal.js +16 -0
  471. package/dist/src/styles/internal.js.map +1 -0
  472. package/dist/src/styles/io/approximations.d.ts +24 -0
  473. package/dist/src/styles/io/approximations.d.ts.map +1 -0
  474. package/dist/src/styles/io/approximations.js +51 -0
  475. package/dist/src/styles/io/approximations.js.map +1 -0
  476. package/dist/src/styles/io/block.d.ts +166 -0
  477. package/dist/src/styles/io/block.d.ts.map +1 -0
  478. package/dist/src/styles/io/block.js +930 -0
  479. package/dist/src/styles/io/block.js.map +1 -0
  480. package/dist/src/styles/io/generic.d.ts +88 -0
  481. package/dist/src/styles/io/generic.d.ts.map +1 -0
  482. package/dist/src/styles/io/generic.js +516 -0
  483. package/dist/src/styles/io/generic.js.map +1 -0
  484. package/dist/src/styles/io/index.d.ts +8 -0
  485. package/dist/src/styles/io/index.d.ts.map +1 -0
  486. package/dist/src/styles/io/index.js +7 -0
  487. package/dist/src/styles/io/index.js.map +1 -0
  488. package/dist/src/styles/io/writer.d.ts +80 -0
  489. package/dist/src/styles/io/writer.d.ts.map +1 -0
  490. package/dist/src/styles/io/writer.js +596 -0
  491. package/dist/src/styles/io/writer.js.map +1 -0
  492. package/dist/src/styles/notes.d.ts +47 -0
  493. package/dist/src/styles/notes.d.ts.map +1 -0
  494. package/dist/src/styles/notes.js +140 -0
  495. package/dist/src/styles/notes.js.map +1 -0
  496. package/dist/src/styles/plan/classes.d.ts +31 -0
  497. package/dist/src/styles/plan/classes.d.ts.map +1 -0
  498. package/dist/src/styles/plan/classes.js +139 -0
  499. package/dist/src/styles/plan/classes.js.map +1 -0
  500. package/dist/src/styles/plan/continuous.d.ts +32 -0
  501. package/dist/src/styles/plan/continuous.d.ts.map +1 -0
  502. package/dist/src/styles/plan/continuous.js +165 -0
  503. package/dist/src/styles/plan/continuous.js.map +1 -0
  504. package/dist/src/styles/plan/discrete.d.ts +39 -0
  505. package/dist/src/styles/plan/discrete.d.ts.map +1 -0
  506. package/dist/src/styles/plan/discrete.js +127 -0
  507. package/dist/src/styles/plan/discrete.js.map +1 -0
  508. package/dist/src/styles/plan/families.d.ts +31 -0
  509. package/dist/src/styles/plan/families.d.ts.map +1 -0
  510. package/dist/src/styles/plan/families.js +95 -0
  511. package/dist/src/styles/plan/families.js.map +1 -0
  512. package/dist/src/styles/plan/features.d.ts +58 -0
  513. package/dist/src/styles/plan/features.d.ts.map +1 -0
  514. package/dist/src/styles/plan/features.js +185 -0
  515. package/dist/src/styles/plan/features.js.map +1 -0
  516. package/dist/src/styles/plan/index.d.ts +7 -0
  517. package/dist/src/styles/plan/index.d.ts.map +1 -0
  518. package/dist/src/styles/plan/index.js +7 -0
  519. package/dist/src/styles/plan/index.js.map +1 -0
  520. package/dist/src/styles/plan/plan.d.ts +71 -0
  521. package/dist/src/styles/plan/plan.d.ts.map +1 -0
  522. package/dist/src/styles/plan/plan.js +893 -0
  523. package/dist/src/styles/plan/plan.js.map +1 -0
  524. package/dist/src/styles/plan/resolve.d.ts +137 -0
  525. package/dist/src/styles/plan/resolve.d.ts.map +1 -0
  526. package/dist/src/styles/plan/resolve.js +587 -0
  527. package/dist/src/styles/plan/resolve.js.map +1 -0
  528. package/dist/src/styles/types.d.ts +702 -0
  529. package/dist/src/styles/types.d.ts.map +1 -0
  530. package/dist/src/styles/types.js +10 -0
  531. package/dist/src/styles/types.js.map +1 -0
  532. package/dist/src/styles/vocabulary.d.ts +41 -0
  533. package/dist/src/styles/vocabulary.d.ts.map +1 -0
  534. package/dist/src/styles/vocabulary.js +140 -0
  535. package/dist/src/styles/vocabulary.js.map +1 -0
  536. package/dist/src/types.d.ts +64 -1
  537. package/dist/src/types.d.ts.map +1 -1
  538. package/dist/src/types.js.map +1 -1
  539. package/dist/styles.d.ts +1 -0
  540. package/dist/styles.js +322 -0
  541. package/dist/styles.js.map +1 -0
  542. package/dist/xgmml.js +5 -4
  543. package/dist/xgmml.js.map +1 -1
  544. package/package.json +13 -2
  545. package/src/common/codes.ts +7 -0
  546. package/src/common/escape.ts +5 -2
  547. package/src/common/export.ts +179 -140
  548. package/src/common/input.ts +8 -4
  549. package/src/common/json-elements.ts +169 -38
  550. package/src/common/notes.ts +94 -0
  551. package/src/common/report.ts +41 -1
  552. package/src/common/units.ts +42 -0
  553. package/src/common/xml.ts +45 -5
  554. package/src/formats/cx/exporter.ts +95 -11
  555. package/src/formats/cx/importer.ts +126 -90
  556. package/src/formats/cx/styles.ts +304 -0
  557. package/src/formats/cx2/exporter.ts +234 -77
  558. package/src/formats/cx2/importer.ts +19 -1
  559. package/src/formats/cx2/styles.ts +29 -0
  560. package/src/formats/cys/constants.ts +3 -0
  561. package/src/formats/cys/exporter.ts +246 -60
  562. package/src/formats/cys/importer.ts +125 -9
  563. package/src/formats/cys/session.ts +6 -0
  564. package/src/formats/cys/styles.ts +254 -0
  565. package/src/formats/cys/tables.ts +117 -48
  566. package/src/formats/dot/exporter.ts +262 -126
  567. package/src/formats/dot/importer.ts +111 -20
  568. package/src/formats/dot/index.ts +1 -0
  569. package/src/formats/dot/positions.ts +77 -0
  570. package/src/formats/dot/styles.ts +1741 -0
  571. package/src/formats/gexf/exporter.ts +27 -11
  572. package/src/formats/gexf/importer.ts +308 -158
  573. package/src/formats/gexf/index.ts +10 -0
  574. package/src/formats/gexf/schema.ts +5 -0
  575. package/src/formats/gexf/styles.ts +719 -0
  576. package/src/formats/gml/exporter.ts +33 -14
  577. package/src/formats/gml/importer.ts +4 -0
  578. package/src/formats/gml/index.ts +2 -1
  579. package/src/formats/gml/positions.ts +52 -0
  580. package/src/formats/gml/styles.ts +1248 -0
  581. package/src/formats/gml/syntax.ts +173 -62
  582. package/src/formats/graphml/constants.ts +5 -0
  583. package/src/formats/graphml/exporter.ts +163 -71
  584. package/src/formats/graphml/importer.ts +119 -45
  585. package/src/formats/graphml/index.ts +1 -0
  586. package/src/formats/graphml/styles-plain.ts +236 -0
  587. package/src/formats/graphml/styles-yed.ts +1221 -0
  588. package/src/formats/graphml/styles-yfiles3.ts +573 -0
  589. package/src/formats/graphml/tree.ts +36 -20
  590. package/src/formats/graphml/yfiles.ts +89 -13
  591. package/src/formats/json/exporter.ts +76 -26
  592. package/src/formats/json/importer.ts +541 -322
  593. package/src/formats/json/positions.ts +50 -0
  594. package/src/formats/json/styles.ts +2082 -0
  595. package/src/formats/neo4j/exporter.ts +2 -1
  596. package/src/formats/pajek/exporter.ts +195 -106
  597. package/src/formats/pajek/importer.ts +78 -9
  598. package/src/formats/pajek/index.ts +2 -0
  599. package/src/formats/pajek/styles.ts +685 -0
  600. package/src/formats/pajek/syntax.ts +7 -0
  601. package/src/formats/xgmml/columns.ts +39 -9
  602. package/src/formats/xgmml/constants.ts +3 -0
  603. package/src/formats/xgmml/document.ts +54 -12
  604. package/src/formats/xgmml/emit.ts +11 -6
  605. package/src/formats/xgmml/exporter.ts +32 -13
  606. package/src/formats/xgmml/importer.ts +43 -29
  607. package/src/formats/xgmml/styles.ts +400 -0
  608. package/src/index.ts +16 -0
  609. package/src/positions/codes.ts +32 -0
  610. package/src/positions/convert.ts +123 -0
  611. package/src/positions/extract.ts +619 -0
  612. package/src/positions/index.ts +23 -0
  613. package/src/positions/types.ts +221 -0
  614. package/src/registry.ts +179 -8
  615. package/src/styles/annotations.ts +478 -0
  616. package/src/styles/budget.ts +60 -0
  617. package/src/styles/canon/bends.ts +84 -0
  618. package/src/styles/canon/color-tables.ts +386 -0
  619. package/src/styles/canon/color.ts +624 -0
  620. package/src/styles/canon/enums.ts +211 -0
  621. package/src/styles/canon/graphviz.ts +189 -0
  622. package/src/styles/canon/index.ts +13 -0
  623. package/src/styles/canon/number.ts +152 -0
  624. package/src/styles/canon/site.ts +87 -0
  625. package/src/styles/canon/text.ts +221 -0
  626. package/src/styles/codes.ts +104 -0
  627. package/src/styles/cyjs/cascade.ts +2670 -0
  628. package/src/styles/cyjs/defaults-table.ts +82 -0
  629. package/src/styles/cyjs/emit.ts +951 -0
  630. package/src/styles/cyjs/index.ts +37 -0
  631. package/src/styles/cyjs/live.ts +147 -0
  632. package/src/styles/cyjs/mappers.ts +879 -0
  633. package/src/styles/cyjs/selector.ts +778 -0
  634. package/src/styles/cyjs/stylesheet-text.ts +214 -0
  635. package/src/styles/cytoscape/emit.ts +1264 -0
  636. package/src/styles/cytoscape/index.ts +40 -0
  637. package/src/styles/cytoscape/lexicon.ts +656 -0
  638. package/src/styles/cytoscape/mappings.ts +603 -0
  639. package/src/styles/cytoscape/resolve.ts +521 -0
  640. package/src/styles/cytoscape/translate.ts +237 -0
  641. package/src/styles/defaults.ts +504 -0
  642. package/src/styles/index.ts +57 -0
  643. package/src/styles/internal.ts +17 -0
  644. package/src/styles/io/approximations.ts +47 -0
  645. package/src/styles/io/block.ts +1138 -0
  646. package/src/styles/io/generic.ts +687 -0
  647. package/src/styles/io/index.ts +18 -0
  648. package/src/styles/io/writer.ts +745 -0
  649. package/src/styles/notes.ts +165 -0
  650. package/src/styles/plan/classes.ts +166 -0
  651. package/src/styles/plan/continuous.ts +218 -0
  652. package/src/styles/plan/discrete.ts +165 -0
  653. package/src/styles/plan/families.ts +115 -0
  654. package/src/styles/plan/features.ts +234 -0
  655. package/src/styles/plan/index.ts +7 -0
  656. package/src/styles/plan/plan.ts +1129 -0
  657. package/src/styles/plan/resolve.ts +685 -0
  658. package/src/styles/types.ts +814 -0
  659. package/src/styles/vocabulary.ts +172 -0
  660. package/src/types.ts +76 -1
  661. package/dist/chunks/constants-fT3E8JYY.js.map +0 -1
  662. package/dist/chunks/escape-B62ZGM_a.js.map +0 -1
  663. package/dist/chunks/export-rKLeGQMo.js.map +0 -1
  664. package/dist/chunks/exporter-8hLNemFk.js.map +0 -1
  665. package/dist/chunks/exporter-BWwEuOPT.js.map +0 -1
  666. package/dist/chunks/exporter-RVtXVetw.js.map +0 -1
  667. package/dist/chunks/importer-BbNb7eNg.js.map +0 -1
  668. package/dist/chunks/importer-C98dpSH4.js.map +0 -1
  669. package/dist/chunks/importer-D794XUTe.js.map +0 -1
  670. package/dist/chunks/importer-Dz7tI8Sa.js.map +0 -1
  671. package/dist/chunks/importer-Ht7LNg8L.js.map +0 -1
  672. package/dist/chunks/importer-WrGRZb0N.js.map +0 -1
  673. package/dist/chunks/importer-xZ-3suY1.js.map +0 -1
  674. package/dist/chunks/json-elements-DKSqpNW1.js.map +0 -1
@@ -0,0 +1,676 @@
1
+ import { GraphFormatError } from "@graphty/graph-format";
2
+ const FETCH_CODE = "E_FETCH";
3
+ const MISSING_ID_CODE = "E_MISSING_ID";
4
+ const MISSING_ENDPOINT_CODE = "E_MISSING_ENDPOINT";
5
+ const DUPLICATE_NODE_CODE = "W_DUPLICATE_NODE";
6
+ const NO_GRAPH_CODE = "E_NO_GRAPH";
7
+ const MULTIPLE_GRAPHS_CODE = "W_MULTIPLE_GRAPHS";
8
+ const EMPTY_INPUT_CODE = "E_EMPTY_INPUT";
9
+ const SYNTAX_CODE = "E_SYNTAX";
10
+ const XML_SYNTAX_CODE = "E_XML_SYNTAX";
11
+ const XML_NESTING_CODE = "E_XML_NESTING";
12
+ const UNKNOWN_ELEMENT_CODE = "W_UNKNOWN_ELEMENT";
13
+ const STRAY_TEXT_CODE = "W_STRAY_TEXT";
14
+ const UNKNOWN_PARENT_CODE = "E_UNKNOWN_PARENT";
15
+ const HYPEREDGE_CODE = "E_HYPEREDGE";
16
+ const DUPLICATE_KEY_CODE = "E_DUPLICATE_KEY";
17
+ const COLUMN_RENAMED_CODE = "W_COLUMN_RENAMED";
18
+ const COLUMN_DROPPED_CODE = "W_COLUMN_DROPPED";
19
+ const ROLE_TAKEN_CODE = "W_ROLE_TAKEN";
20
+ const PRECISION_CODE = "W_PRECISION";
21
+ const ID_MERGED_CODE = "W_ID_MERGED";
22
+ const SINK_OPTION_CODE = "W_SINK_OPTION";
23
+ const OPTION_IGNORED_CODE = "W_OPTION_IGNORED";
24
+ const INVALID_UTF8_CODE = "E_INVALID_UTF8";
25
+ const INVALID_ENCODING_CODE = "E_INVALID_ENCODING";
26
+ const ENCODING_FALLBACK_CODE = "W_ENCODING_FALLBACK";
27
+ const UNKNOWN_ENCODING_CODE = "W_UNKNOWN_ENCODING";
28
+ const ENCODING_CONFLICT_CODE = "W_ENCODING_CONFLICT";
29
+ const CONTROL_CHARACTER_CODE = "W_CONTROL_CHARACTER";
30
+ const FOREIGN_FORMAT_CODE = "E_FOREIGN_FORMAT";
31
+ const ISSUES_SUPPRESSED_CODE = "W_ISSUES_SUPPRESSED";
32
+ const UNKNOWN_XML_ATTRIBUTE_CODE = "W_UNKNOWN_XML_ATTRIBUTE";
33
+ const DIRECTION_REFUSED_CODE = "W_DIRECTION_REFUSED";
34
+ const DIRECTION_FORCED_CODE = "W_DIRECTION_FORCED";
35
+ const MIXED_DIRECTION_CODE = "E_MIXED_DIRECTION";
36
+ const COUNT_HINT_CODE = "W_COUNT_HINT";
37
+ const UNKNOWN_ATTR_TYPE_CODE = "W_UNKNOWN_ATTR_TYPE";
38
+ const BAD_DEFAULT_CODE = "W_BAD_DEFAULT";
39
+ const BAD_OPTIONS_CODE = "W_BAD_OPTIONS";
40
+ const DUPLICATE_EDGE_ID_CODE = "E_DUPLICATE_EDGE_ID";
41
+ const BAD_VALUE_CODE = "E_BAD_VALUE";
42
+ const WIDENED_CODE = "W_WIDENED";
43
+ const DANGLING_REFERENCE_CODE = "W_DANGLING_REFERENCE";
44
+ const DUPLICATE_ATTRIBUTE_CODE = "W_DUPLICATE_ATTRIBUTE";
45
+ const PARENT_CYCLE_CODE = "E_PARENT_CYCLE";
46
+ const EQUATION_AS_TEXT_CODE = "W_EQUATION_AS_TEXT";
47
+ const STYLES_NOT_IMPORTED_CODE = "W_STYLES_NOT_IMPORTED";
48
+ const BAD_ASPECT_BLOCK_CODE = "E_BAD_ASPECT_BLOCK";
49
+ const MULTI_ASPECT_FRAGMENT_CODE = "W_MULTI_ASPECT_FRAGMENT";
50
+ const SINGLE_OBJECT_ASPECT_CODE = "W_SINGLE_OBJECT_ASPECT";
51
+ const JSON_NONSTANDARD_NUMBER_CODE = "W_JSON_NONSTANDARD_NUMBER";
52
+ const ASPECT_ORDER_CODE = "W_ASPECT_ORDER";
53
+ const COUNT_MISMATCH_CODE = "W_COUNT_MISMATCH";
54
+ const STATUS_FAILED_CODE = "E_STATUS_FAILED";
55
+ const STATUS_WARNING_CODE = "W_STATUS_WARNING";
56
+ const TOO_LARGE_CODE = "E_TOO_LARGE";
57
+ const COLUMN_TYPE_CODE = "E_COLUMN_TYPE";
58
+ const GRAPH_NOT_FOUND_CODE = "E_GRAPH_NOT_FOUND";
59
+ const AMBIGUOUS_GRAPH_NAME_CODE = "E_AMBIGUOUS_GRAPH_NAME";
60
+ const DUPLICATE_EDGE_CODE = "E_DUPLICATE_EDGE";
61
+ const SELF_LOOP_CODE = "E_SELF_LOOP";
62
+ const EDGES_MERGED_CODE = "W_EDGES_MERGED";
63
+ const SELF_LOOPS_DROPPED_CODE = "W_SELF_LOOPS_DROPPED";
64
+ const UNKNOWN_OPTION_CODE = "W_UNKNOWN_OPTION";
65
+ const BAD_LINE_CODE = "E_BAD_LINE";
66
+ const WEIGHT_NOT_FOUND_CODE = "W_WEIGHT_NOT_FOUND";
67
+ const ROLE_DROPPED_CODE = "W_ROLE_DROPPED";
68
+ const PARENTS_DROPPED_CODE = "W_PARENTS_DROPPED";
69
+ const TEMPORAL_DROPPED_CODE = "W_TEMPORAL_DROPPED";
70
+ const MUTUAL_EXPANDED_CODE = "W_MUTUAL_EXPANDED";
71
+ const MUTUAL_AS_UNDIRECTED_CODE = "W_MUTUAL_AS_UNDIRECTED";
72
+ const ID_TEXT_TYPE_CODE = "W_ID_TEXT_TYPE";
73
+ const ID_TEXT_COLLISION_CODE = "E_ID_TEXT_COLLISION";
74
+ const TEMPORAL_TEXT_DROPPED_CODE = "W_TEMPORAL_TEXT_DROPPED";
75
+ const WEIGHTS_DROPPED_CODE = "W_WEIGHTS_DROPPED";
76
+ const WEIGHT_KEY_CLASH_CODE = "W_WEIGHT_KEY_CLASH";
77
+ const ROLE_ASSUMED_CODE = "W_ROLE_ASSUMED";
78
+ const COLUMN_RENAMED_LOSS_CODE = "W_COLUMN_NAME_CHANGED";
79
+ const EMPTY_COLUMN_DROPPED_CODE = "W_EMPTY_COLUMN_DROPPED";
80
+ const STORAGE_CLASS_CODE = "W_STORAGE_CLASS_CHANGED";
81
+ const INTEGRAL_F64_CODE = "W_INTEGRAL_F64_AS_I32";
82
+ const TEXT_INFERRED_CODE = "W_TEXT_INFERRED";
83
+ const XML_ILLEGAL_CHAR_CODE = "E_XML_ILLEGAL_CHAR";
84
+ const COLUMN_AS_PROPERTY_VALUE_CODE = "W_COLUMN_AS_PROPERTY_VALUE";
85
+ const RELATION_ASSUMED_CODE = "W_RELATION_ASSUMED";
86
+ const TYPEDEF_NODES_CODE = "W_TYPEDEF_NODES";
87
+ const GRAPH_COLUMN_AS_METADATA_CODE = "W_GRAPH_COLUMN_AS_METADATA";
88
+ const DIRECTION_DROPPED_CODE = "W_DIRECTION_DROPPED";
89
+ const NONFINITE_AS_NULL_CODE = "W_NONFINITE_AS_NULL";
90
+ const NODE_ORDER_CODE = "W_NODE_ORDER";
91
+ const OPTIONS_GAINED_CODE = "W_OPTIONS_GAINED";
92
+ const ELEMENT_ISSUE = Object.freeze({
93
+ /** A node id of a type the graph cannot hold (an empty id, a non-finite number, an object). The node is skipped. */
94
+ INVALID_ID: "E_INVALID_ID",
95
+ /** An edge names a node the file never declares, while `addMissingNodes` is false. The edge is skipped. */
96
+ UNKNOWN_NODE: "E_UNKNOWN_NODE",
97
+ /**
98
+ * An edge weight that is not a number (text such as "2,5" with a decimal comma, NaN, a boolean). The whole edge is
99
+ * skipped, not only its weight.
100
+ */
101
+ INVALID_WEIGHT: "E_INVALID_WEIGHT",
102
+ /** A second edge between the same two nodes, while `duplicateEdges` is "error". The edge is skipped. */
103
+ DUPLICATE_EDGE: DUPLICATE_EDGE_CODE,
104
+ /** An edge from a node to itself, while `selfLoops` is "error". The edge is skipped. */
105
+ SELF_LOOP: SELF_LOOP_CODE,
106
+ /** An edge id declared twice. The second edge is skipped. */
107
+ DUPLICATE_EDGE_ID: DUPLICATE_EDGE_ID_CODE
108
+ });
109
+ const INPUT_ISSUE = Object.freeze({
110
+ /** The input is empty or holds only whitespace. The import stops. */
111
+ EMPTY_INPUT: EMPTY_INPUT_CODE,
112
+ /** The input, or one of its lines, is longer than a JavaScript string can hold. The import stops. */
113
+ TOO_LARGE: TOO_LARGE_CODE,
114
+ /** A byte order mark, the encoding option and the declared encoding disagree. */
115
+ ENCODING_CONFLICT: ENCODING_CONFLICT_CODE,
116
+ /** A control character or a stray U+FEFF in the text, or an ignored trailing Ctrl-Z. */
117
+ CONTROL_CHARACTER: CONTROL_CHARACTER_CODE,
118
+ /** The input is an HTML page, a PDF, compressed or zip data, or an image. The import stops. */
119
+ FOREIGN_FORMAT: FOREIGN_FORMAT_CODE,
120
+ /** Warnings of one code beyond the number a report keeps, counted in one warning. */
121
+ ISSUES_SUPPRESSED: ISSUES_SUPPRESSED_CODE
122
+ });
123
+ function plural(n) {
124
+ return n === 1 ? "" : "s";
125
+ }
126
+ function agree(n, one, many) {
127
+ return n === 1 ? one : many;
128
+ }
129
+ function elementCount(nodes, edges) {
130
+ const parts = [];
131
+ if (nodes > 0 || edges === 0) {
132
+ parts.push(`${nodes} node${plural(nodes)}`);
133
+ }
134
+ if (edges > 0) {
135
+ parts.push(`${edges} edge${plural(edges)}`);
136
+ }
137
+ return parts.join(" and ");
138
+ }
139
+ function withArticle(word) {
140
+ return `${/^[aeiou]/i.test(word) ? "an" : "a"} ${word}`;
141
+ }
142
+ class ImportError extends GraphFormatError {
143
+ /**
144
+ * Create an ImportError.
145
+ * @param message - a plain-ASCII human-readable message
146
+ * @param report - the partial report
147
+ * @param details - optional machine-readable context; its `code` names the issue that stopped the import
148
+ */
149
+ constructor(message, report, details) {
150
+ super("E_IMPORT", message, details);
151
+ this.name = "ImportError";
152
+ Object.defineProperty(this, "report", { value: report, enumerable: false });
153
+ this.issue = stoppingIssue(report.issues, details?.code);
154
+ }
155
+ }
156
+ function stoppingIssue(issues, code) {
157
+ let lastError = null;
158
+ for (let i = issues.length - 1; i >= 0; i--) {
159
+ if (issues[i].code === code) {
160
+ return issues[i];
161
+ }
162
+ if (lastError === null && issues[i].severity === "error") {
163
+ lastError = issues[i];
164
+ }
165
+ }
166
+ return lastError;
167
+ }
168
+ const MAX_WARNINGS_PER_CODE = 1e3;
169
+ const KEPT_FOR_STYLES = /* @__PURE__ */ new WeakMap();
170
+ const NOTHING_KEPT = /* @__PURE__ */ Symbol("nothing kept");
171
+ function keptForStyles(report) {
172
+ return KEPT_FOR_STYLES.get(report);
173
+ }
174
+ const CATEGORY_BY_CODE = {
175
+ E_UNKNOWN_NODE: "missing-value",
176
+ E_UNKNOWN_COLUMN: "missing-value",
177
+ E_DIRECTED: "coercion",
178
+ E_TOO_LARGE: "unsupported",
179
+ E_UNSUPPORTED: "unsupported",
180
+ E_GPU_INELIGIBLE: "unsupported"
181
+ };
182
+ const PARSE_ERROR_CODE = "E_PARSE";
183
+ function withLine(message, where) {
184
+ const line = where?.line;
185
+ return line === void 0 || line === null || message.includes(`line ${line}`) ? message : `line ${line}: ${message}`;
186
+ }
187
+ class ImportReportBuilder {
188
+ /**
189
+ * Create a builder for one import call.
190
+ * @param format - the importer's format name
191
+ * @param errorLimit - errors tolerated before the import aborts; Infinity for no limit
192
+ */
193
+ constructor(format, errorLimit) {
194
+ this.counts = { nodes: 0, edges: 0, skippedNodes: 0, skippedEdges: 0, expandedMixed: 0 };
195
+ this.issueList = [];
196
+ this.lossList = [];
197
+ this.onceCodes = /* @__PURE__ */ new Set();
198
+ this.warningsByCode = /* @__PURE__ */ new Map();
199
+ this.errors = 0;
200
+ this.warnings = 0;
201
+ this.truncatedFlag = false;
202
+ this.kept = NOTHING_KEPT;
203
+ this.format = format;
204
+ this.errorLimit = errorLimit;
205
+ this.startedAt = now();
206
+ }
207
+ /**
208
+ * Issues recorded so far, in order.
209
+ * @returns the live list (not copied; finish() copies)
210
+ */
211
+ get issues() {
212
+ return this.issueList;
213
+ }
214
+ /**
215
+ * Issues with severity "error".
216
+ * @returns the count
217
+ */
218
+ get errorCount() {
219
+ return this.errors;
220
+ }
221
+ /**
222
+ * Issues with severity "warning".
223
+ * @returns the count
224
+ */
225
+ get warningCount() {
226
+ return this.warnings;
227
+ }
228
+ /**
229
+ * Whether the error limit was exceeded.
230
+ * @returns true once an error beyond the limit was recorded
231
+ */
232
+ get truncated() {
233
+ return this.truncatedFlag;
234
+ }
235
+ /**
236
+ * Loss notes recorded so far.
237
+ * @returns the live list
238
+ */
239
+ get lossy() {
240
+ return this.lossList;
241
+ }
242
+ /**
243
+ * Record an error. When the count goes beyond the error limit the report is marked truncated
244
+ * and an ImportError carrying it is thrown; the importer does not catch that.
245
+ * @param category - the issue category
246
+ * @param code - a stable code such as "E_UNKNOWN_NODE"
247
+ * @param message - a plain-ASCII message
248
+ * @param where - the line and element, when known
249
+ * @returns the recorded issue
250
+ */
251
+ error(category, code, message, where) {
252
+ const issue = makeIssue(category, "error", code, message, where);
253
+ this.issueList.push(issue);
254
+ this.errors++;
255
+ if (this.errors > this.errorLimit) {
256
+ this.truncatedFlag = true;
257
+ throw this.abort(`error limit of ${this.errorLimit} exceeded: ${withLine(message, where)}`, {
258
+ code,
259
+ limit: this.errorLimit
260
+ });
261
+ }
262
+ return issue;
263
+ }
264
+ /**
265
+ * Record a warning; warnings never count toward the limit. Beyond MAX_WARNINGS_PER_CODE
266
+ * warnings of one code the warning is counted, not kept: finish() adds one W_ISSUES_SUPPRESSED
267
+ * warning per such code with the number dropped.
268
+ * @param category - the issue category
269
+ * @param code - a stable code such as "W_WIDENED"
270
+ * @param message - a plain-ASCII message
271
+ * @param where - the line and element, when known
272
+ * @returns the recorded issue
273
+ */
274
+ warning(category, code, message, where) {
275
+ const issue = makeIssue(category, "warning", code, message, where);
276
+ const seen = (this.warningsByCode.get(code) ?? 0) + 1;
277
+ this.warningsByCode.set(code, seen);
278
+ if (seen <= MAX_WARNINGS_PER_CODE) {
279
+ this.issueList.push(issue);
280
+ this.warnings++;
281
+ }
282
+ return issue;
283
+ }
284
+ /**
285
+ * Record a warning the first time its key is seen and ignore later repeats, for conditions
286
+ * that would otherwise produce one warning per row.
287
+ * @param category - the issue category
288
+ * @param code - the stable code
289
+ * @param message - a plain-ASCII message
290
+ * @param where - the line and element, when known
291
+ * @param key - what repeats are deduplicated on; the code itself by default (pass `code:column`
292
+ * to warn once per column)
293
+ * @returns the recorded issue, or null when the key was already recorded
294
+ */
295
+ warnOnce(category, code, message, where, key = code) {
296
+ if (this.onceCodes.has(key)) {
297
+ return null;
298
+ }
299
+ this.onceCodes.add(key);
300
+ return this.warning(category, code, message, where);
301
+ }
302
+ /**
303
+ * Record something the importer could not represent.
304
+ * @param code - a stable code
305
+ * @param message - a plain-ASCII message
306
+ * @param column - the affected column, or null
307
+ * @param count - the affected count, or null
308
+ * @returns the recorded note
309
+ */
310
+ loss(code, message, column = null, count = null) {
311
+ const note = Object.freeze({ code, message, column, count });
312
+ this.lossList.push(note);
313
+ return note;
314
+ }
315
+ /**
316
+ * The per-element catch: record a thrown GraphFormatError as an error
317
+ * issue with its code and the category the code implies. Anything else is re-thrown unchanged:
318
+ * an ImportError (the import already aborted), an abort reason, and any other thrown value (a
319
+ * TypeError or RangeError is a programming error in the importer or the sink, never a defect of
320
+ * the input, so it must surface as an exception rather than as an issue blamed on the file).
321
+ * @param err - the thrown value
322
+ * @param where - the line and element, when known
323
+ * @returns the recorded issue
324
+ */
325
+ recordError(err, where) {
326
+ if (err instanceof GraphFormatError && !(err instanceof ImportError)) {
327
+ const category = CATEGORY_BY_CODE[err.code] ?? "validation-error";
328
+ if (err.code === "E_TOO_LARGE") {
329
+ return this.failWith(category, err.code, err.message, where);
330
+ }
331
+ return this.error(category, err.code, err.message, where);
332
+ }
333
+ throw err;
334
+ }
335
+ /**
336
+ * Keep style data that is not per element (a stylesheet, a groups object, a legend, the file's default styles)
337
+ * for this import's `styles()`: graph-io passes it back as `context.kept` when styles are requested. Kept per
338
+ * report, never on the importer object, so imports running at once each get their own. A later call replaces
339
+ * the value.
340
+ * @param value - anything the importer's `styles()` needs
341
+ * @returns this builder
342
+ */
343
+ keepForStyles(value) {
344
+ this.kept = value;
345
+ return this;
346
+ }
347
+ /**
348
+ * A builder that starts from everything this one recorded so far: issues, counts, loss notes,
349
+ * the warnOnce keys, the error and warning counts and the truncation flag. For an importer that
350
+ * reads its input once and emits several graphs, each with its own report.
351
+ * @returns the copy; later records to either builder do not reach the other
352
+ */
353
+ fork() {
354
+ const copy = new ImportReportBuilder(this.format, this.errorLimit);
355
+ Object.assign(copy.counts, this.counts);
356
+ copy.issueList.push(...this.issueList);
357
+ copy.lossList.push(...this.lossList);
358
+ for (const key of this.onceCodes) {
359
+ copy.onceCodes.add(key);
360
+ }
361
+ for (const [code, count] of this.warningsByCode) {
362
+ copy.warningsByCode.set(code, count);
363
+ }
364
+ copy.errors = this.errors;
365
+ copy.warnings = this.warnings;
366
+ copy.truncatedFlag = this.truncatedFlag;
367
+ copy.kept = this.kept;
368
+ return copy;
369
+ }
370
+ /**
371
+ * Build the ImportError that aborts the import, carrying the report so far. The caller throws
372
+ * it; this method only constructs it so it can be used in expression position.
373
+ * @param message - a plain-ASCII message
374
+ * @param details - optional machine-readable context
375
+ * @returns the error to throw
376
+ */
377
+ abort(message, details) {
378
+ return new ImportError(message, this.finish(), details);
379
+ }
380
+ /**
381
+ * Record a fatal parse error and abort: the issue is recorded (even beyond the error limit)
382
+ * and an ImportError carrying the report is thrown.
383
+ * @param code - a stable code such as "E_INVALID_UTF8"
384
+ * @param message - a plain-ASCII message
385
+ * @param where - the line and element, when known
386
+ * @param details - optional machine-readable context for the ImportError
387
+ */
388
+ fail(code, message, where, details) {
389
+ this.failWith("parse-error", code, message, where, details);
390
+ }
391
+ /**
392
+ * Record a fatal error of any category and abort, as fail() does for a parse error: a size
393
+ * limit (E_TOO_LARGE, category "unsupported") stops an import without being a defect of the
394
+ * syntax. A fatal error is not the error limit: `truncated` stays as it was.
395
+ * @param category - the issue category
396
+ * @param code - a stable code
397
+ * @param message - a plain-ASCII message
398
+ * @param where - the line and element, when known
399
+ * @param details - optional machine-readable context for the ImportError
400
+ */
401
+ failWith(category, code, message, where, details) {
402
+ this.issueList.push(makeIssue(category, "error", code, message, where));
403
+ this.errors++;
404
+ throw this.abort(withLine(message, where), { code, ...details });
405
+ }
406
+ /**
407
+ * Add a finished report to this one: its issues after the ones recorded so far, its counts, its
408
+ * loss notes and its truncated flag. Use it when an importer hands part of the work to another
409
+ * importer (for example, a wrapper around the CSV importer) and returns one report for both. The issues
410
+ * keep their codes; errors added this way do not count toward this report's error limit, since
411
+ * the other importer applied its own.
412
+ * @param report - the report the other importer returned
413
+ * @returns this builder
414
+ * @example
415
+ * ```ts
416
+ * const report = new ImportReportBuilder("netscope", opts.errorLimit);
417
+ * const text = await readText(input, report, opts);
418
+ * report.include(await csvImporter.import(text, sink, options));
419
+ * return report.finish();
420
+ * ```
421
+ */
422
+ include(report) {
423
+ for (const issue of report.issues) {
424
+ this.issueList.push(issue);
425
+ if (issue.severity === "error") {
426
+ this.errors++;
427
+ } else {
428
+ this.warnings++;
429
+ }
430
+ }
431
+ const { counts } = report;
432
+ this.counts.nodes += counts.nodes;
433
+ this.counts.edges += counts.edges;
434
+ this.counts.skippedNodes += counts.skippedNodes;
435
+ this.counts.skippedEdges += counts.skippedEdges;
436
+ this.counts.expandedMixed += counts.expandedMixed;
437
+ this.lossList.push(...report.lossy);
438
+ this.truncatedFlag ||= report.truncated;
439
+ if (this.kept === NOTHING_KEPT && KEPT_FOR_STYLES.has(report)) {
440
+ this.kept = KEPT_FOR_STYLES.get(report);
441
+ }
442
+ return this;
443
+ }
444
+ /**
445
+ * The report as it stands: a frozen snapshot with the parse duration so far. Can be called more
446
+ * than once; each call reflects everything recorded up to that point.
447
+ * @returns the report
448
+ */
449
+ finish() {
450
+ const { nodes, edges, skippedNodes, skippedEdges, expandedMixed } = this.counts;
451
+ const suppressed = [];
452
+ for (const [code, seen] of this.warningsByCode) {
453
+ if (seen > MAX_WARNINGS_PER_CODE) {
454
+ const more = seen - MAX_WARNINGS_PER_CODE;
455
+ suppressed.push(
456
+ makeIssue(
457
+ "unsupported",
458
+ "warning",
459
+ ISSUES_SUPPRESSED_CODE,
460
+ `${more} more ${code} warning${plural(more)} ${agree(more, "was", "were")} not kept (the report keeps the first ${MAX_WARNINGS_PER_CODE})`,
461
+ { element: code }
462
+ )
463
+ );
464
+ }
465
+ }
466
+ const report = Object.freeze({
467
+ format: this.format,
468
+ counts: Object.freeze({ nodes, edges, skippedNodes, skippedEdges, expandedMixed }),
469
+ issues: Object.freeze([...this.issueList, ...suppressed]),
470
+ errorCount: this.errors,
471
+ warningCount: this.warnings + suppressed.length,
472
+ truncated: this.truncatedFlag,
473
+ lossy: Object.freeze([...this.lossList]),
474
+ durationMs: now() - this.startedAt
475
+ });
476
+ if (this.kept !== NOTHING_KEPT) {
477
+ KEPT_FOR_STYLES.set(report, this.kept);
478
+ }
479
+ return report;
480
+ }
481
+ }
482
+ function makeIssue(category, severity, code, message, where) {
483
+ return Object.freeze({
484
+ category,
485
+ severity,
486
+ code,
487
+ message,
488
+ line: where?.line ?? null,
489
+ element: where?.element ?? null
490
+ });
491
+ }
492
+ function isAbortError(err) {
493
+ if (typeof err !== "object" || err === null) {
494
+ return false;
495
+ }
496
+ const { name } = err;
497
+ return name === "AbortError" || name === "TimeoutError";
498
+ }
499
+ function messageOf(err) {
500
+ if (err instanceof Error) {
501
+ return err.message;
502
+ }
503
+ if (typeof err === "string") {
504
+ return err;
505
+ }
506
+ return `non-error thrown (${typeof err})`;
507
+ }
508
+ function now() {
509
+ return typeof performance === "object" ? performance.now() : Date.now();
510
+ }
511
+ function formatF32(value) {
512
+ if (!Number.isFinite(value)) {
513
+ return String(value);
514
+ }
515
+ if (value === 0) {
516
+ return Object.is(value, -0) ? "-0" : "0";
517
+ }
518
+ for (let digits = 1; digits <= 9; digits++) {
519
+ const text = value.toPrecision(digits);
520
+ if (Math.fround(Number(text)) === value) {
521
+ return String(Number(text));
522
+ }
523
+ }
524
+ return String(value);
525
+ }
526
+ function formatF64(value) {
527
+ return Object.is(value, -0) ? "-0" : String(value);
528
+ }
529
+ function idText(id) {
530
+ return typeof id === "number" ? formatF64(id) : id;
531
+ }
532
+ function formatDecimal(value, dtype = "f64") {
533
+ if (!Number.isFinite(value)) {
534
+ return String(value);
535
+ }
536
+ if (Object.is(value, -0)) {
537
+ return "-0.0";
538
+ }
539
+ const text = formatNumber(value, dtype);
540
+ return text.includes(".") || text.includes("e") ? text : `${text}.0`;
541
+ }
542
+ function formatGmlReal(value, dtype = "f64") {
543
+ if (Number.isNaN(value)) {
544
+ return "NAN";
545
+ }
546
+ if (!Number.isFinite(value)) {
547
+ return value > 0 ? "+INF" : "-INF";
548
+ }
549
+ const text = formatDecimal(value, dtype);
550
+ if (text.includes(".")) {
551
+ return text;
552
+ }
553
+ const e = text.indexOf("e");
554
+ return `${text.slice(0, e)}.0${text.slice(e)}`;
555
+ }
556
+ function formatInteger(value) {
557
+ if (Number.isSafeInteger(value) || !Number.isFinite(value)) {
558
+ return String(value);
559
+ }
560
+ return BigInt(value).toString();
561
+ }
562
+ function formatNumber(value, dtype) {
563
+ return dtype === "f32" ? formatF32(value) : formatF64(value);
564
+ }
565
+ export {
566
+ formatF32 as $,
567
+ ROLE_DROPPED_CODE as A,
568
+ BAD_DEFAULT_CODE as B,
569
+ COLUMN_RENAMED_CODE as C,
570
+ DIRECTION_FORCED_CODE as D,
571
+ EMPTY_INPUT_CODE as E,
572
+ PARENTS_DROPPED_CODE as F,
573
+ MUTUAL_AS_UNDIRECTED_CODE as G,
574
+ HYPEREDGE_CODE as H,
575
+ ID_MERGED_CODE as I,
576
+ BAD_ASPECT_BLOCK_CODE as J,
577
+ MULTI_ASPECT_FRAGMENT_CODE as K,
578
+ ASPECT_ORDER_CODE as L,
579
+ MIXED_DIRECTION_CODE as M,
580
+ NO_GRAPH_CODE as N,
581
+ OPTION_IGNORED_CODE as O,
582
+ PRECISION_CODE as P,
583
+ STATUS_FAILED_CODE as Q,
584
+ ROLE_TAKEN_CODE as R,
585
+ SINK_OPTION_CODE as S,
586
+ STATUS_WARNING_CODE as T,
587
+ UNKNOWN_ATTR_TYPE_CODE as U,
588
+ agree as V,
589
+ JSON_NONSTANDARD_NUMBER_CODE as W,
590
+ XML_NESTING_CODE as X,
591
+ BAD_VALUE_CODE as Y,
592
+ ImportReportBuilder as Z,
593
+ idText as _,
594
+ DIRECTION_REFUSED_CODE as a,
595
+ formatF64 as a0,
596
+ TOO_LARGE_CODE as a1,
597
+ AMBIGUOUS_GRAPH_NAME_CODE as a2,
598
+ GRAPH_NOT_FOUND_CODE as a3,
599
+ SINGLE_OBJECT_ASPECT_CODE as a4,
600
+ STYLES_NOT_IMPORTED_CODE as a5,
601
+ PARENT_CYCLE_CODE as a6,
602
+ WIDENED_CODE as a7,
603
+ SYNTAX_CODE as a8,
604
+ COLUMN_AS_PROPERTY_VALUE_CODE as a9,
605
+ ID_TEXT_COLLISION_CODE as aA,
606
+ INTEGRAL_F64_CODE as aB,
607
+ ISSUES_SUPPRESSED_CODE as aC,
608
+ MUTUAL_EXPANDED_CODE as aD,
609
+ NONFINITE_AS_NULL_CODE as aE,
610
+ OPTIONS_GAINED_CODE as aF,
611
+ PARSE_ERROR_CODE as aG,
612
+ SELF_LOOP_CODE as aH,
613
+ STORAGE_CLASS_CODE as aI,
614
+ TEMPORAL_DROPPED_CODE as aJ,
615
+ TEMPORAL_TEXT_DROPPED_CODE as aK,
616
+ TEXT_INFERRED_CODE as aL,
617
+ WEIGHTS_DROPPED_CODE as aM,
618
+ WEIGHT_KEY_CLASH_CODE as aN,
619
+ formatDecimal as aO,
620
+ formatGmlReal as aP,
621
+ keptForStyles as aQ,
622
+ withArticle as aR,
623
+ elementCount as aS,
624
+ ROLE_ASSUMED_CODE as aa,
625
+ formatNumber as ab,
626
+ XML_ILLEGAL_CHAR_CODE as ac,
627
+ formatInteger as ad,
628
+ BAD_OPTIONS_CODE as ae,
629
+ NODE_ORDER_CODE as af,
630
+ GRAPH_COLUMN_AS_METADATA_CODE as ag,
631
+ TYPEDEF_NODES_CODE as ah,
632
+ RELATION_ASSUMED_CODE as ai,
633
+ isAbortError as aj,
634
+ BAD_LINE_CODE as ak,
635
+ messageOf as al,
636
+ UNKNOWN_OPTION_CODE as am,
637
+ ImportError as an,
638
+ FETCH_CODE as ao,
639
+ EDGES_MERGED_CODE as ap,
640
+ SELF_LOOPS_DROPPED_CODE as aq,
641
+ WEIGHT_NOT_FOUND_CODE as ar,
642
+ COLUMN_DROPPED_CODE as as,
643
+ COLUMN_RENAMED_LOSS_CODE as at,
644
+ CONTROL_CHARACTER_CODE as au,
645
+ DIRECTION_DROPPED_CODE as av,
646
+ DUPLICATE_EDGE_CODE as aw,
647
+ EMPTY_COLUMN_DROPPED_CODE as ax,
648
+ EQUATION_AS_TEXT_CODE as ay,
649
+ FOREIGN_FORMAT_CODE as az,
650
+ STRAY_TEXT_CODE as b,
651
+ UNKNOWN_ELEMENT_CODE as c,
652
+ UNKNOWN_XML_ATTRIBUTE_CODE as d,
653
+ DANGLING_REFERENCE_CODE as e,
654
+ COUNT_MISMATCH_CODE as f,
655
+ COUNT_HINT_CODE as g,
656
+ MULTIPLE_GRAPHS_CODE as h,
657
+ DUPLICATE_EDGE_ID_CODE as i,
658
+ DUPLICATE_NODE_CODE as j,
659
+ DUPLICATE_ATTRIBUTE_CODE as k,
660
+ UNKNOWN_PARENT_CODE as l,
661
+ MISSING_ENDPOINT_CODE as m,
662
+ MISSING_ID_CODE as n,
663
+ DUPLICATE_KEY_CODE as o,
664
+ plural as p,
665
+ ENCODING_CONFLICT_CODE as q,
666
+ UNKNOWN_ENCODING_CODE as r,
667
+ ENCODING_FALLBACK_CODE as s,
668
+ INVALID_ENCODING_CODE as t,
669
+ INVALID_UTF8_CODE as u,
670
+ XML_SYNTAX_CODE as v,
671
+ COLUMN_TYPE_CODE as w,
672
+ ELEMENT_ISSUE as x,
673
+ INPUT_ISSUE as y,
674
+ ID_TEXT_TYPE_CODE as z
675
+ };
676
+ //# sourceMappingURL=format-GDmO6m6Q.js.map