@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
@@ -1,143 +1,5 @@
1
1
  import { GraphFormatError, INVALID_INDEX } 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 UNKNOWN_ELEMENT_CODE = "W_UNKNOWN_ELEMENT";
12
- const STRAY_TEXT_CODE = "W_STRAY_TEXT";
13
- const UNKNOWN_PARENT_CODE = "E_UNKNOWN_PARENT";
14
- const HYPEREDGE_CODE = "E_HYPEREDGE";
15
- const DUPLICATE_KEY_CODE = "E_DUPLICATE_KEY";
16
- const COLUMN_RENAMED_CODE = "W_COLUMN_RENAMED";
17
- const COLUMN_DROPPED_CODE = "W_COLUMN_DROPPED";
18
- const ROLE_TAKEN_CODE = "W_ROLE_TAKEN";
19
- const PRECISION_CODE = "W_PRECISION";
20
- const ID_MERGED_CODE = "W_ID_MERGED";
21
- const SINK_OPTION_CODE = "W_SINK_OPTION";
22
- const OPTION_IGNORED_CODE = "W_OPTION_IGNORED";
23
- const INVALID_UTF8_CODE = "E_INVALID_UTF8";
24
- const INVALID_ENCODING_CODE = "E_INVALID_ENCODING";
25
- const ENCODING_FALLBACK_CODE = "W_ENCODING_FALLBACK";
26
- const UNKNOWN_ENCODING_CODE = "W_UNKNOWN_ENCODING";
27
- const ENCODING_CONFLICT_CODE = "W_ENCODING_CONFLICT";
28
- const CONTROL_CHARACTER_CODE = "W_CONTROL_CHARACTER";
29
- const FOREIGN_FORMAT_CODE = "E_FOREIGN_FORMAT";
30
- const ISSUES_SUPPRESSED_CODE = "W_ISSUES_SUPPRESSED";
31
- const UNKNOWN_XML_ATTRIBUTE_CODE = "W_UNKNOWN_XML_ATTRIBUTE";
32
- const DIRECTION_REFUSED_CODE = "W_DIRECTION_REFUSED";
33
- const DIRECTION_FORCED_CODE = "W_DIRECTION_FORCED";
34
- const MIXED_DIRECTION_CODE = "E_MIXED_DIRECTION";
35
- const COUNT_HINT_CODE = "W_COUNT_HINT";
36
- const UNKNOWN_ATTR_TYPE_CODE = "W_UNKNOWN_ATTR_TYPE";
37
- const BAD_DEFAULT_CODE = "W_BAD_DEFAULT";
38
- const BAD_OPTIONS_CODE = "W_BAD_OPTIONS";
39
- const DUPLICATE_EDGE_ID_CODE = "E_DUPLICATE_EDGE_ID";
40
- const BAD_VALUE_CODE = "E_BAD_VALUE";
41
- const WIDENED_CODE = "W_WIDENED";
42
- const DANGLING_REFERENCE_CODE = "W_DANGLING_REFERENCE";
43
- const DUPLICATE_ATTRIBUTE_CODE = "W_DUPLICATE_ATTRIBUTE";
44
- const PARENT_CYCLE_CODE = "E_PARENT_CYCLE";
45
- const EQUATION_AS_TEXT_CODE = "W_EQUATION_AS_TEXT";
46
- const STYLES_NOT_IMPORTED_CODE = "W_STYLES_NOT_IMPORTED";
47
- const BAD_ASPECT_BLOCK_CODE = "E_BAD_ASPECT_BLOCK";
48
- const MULTI_ASPECT_FRAGMENT_CODE = "W_MULTI_ASPECT_FRAGMENT";
49
- const SINGLE_OBJECT_ASPECT_CODE = "W_SINGLE_OBJECT_ASPECT";
50
- const JSON_NONSTANDARD_NUMBER_CODE = "W_JSON_NONSTANDARD_NUMBER";
51
- const ASPECT_ORDER_CODE = "W_ASPECT_ORDER";
52
- const COUNT_MISMATCH_CODE = "W_COUNT_MISMATCH";
53
- const STATUS_FAILED_CODE = "E_STATUS_FAILED";
54
- const STATUS_WARNING_CODE = "W_STATUS_WARNING";
55
- const TOO_LARGE_CODE = "E_TOO_LARGE";
56
- const COLUMN_TYPE_CODE = "E_COLUMN_TYPE";
57
- const GRAPH_NOT_FOUND_CODE = "E_GRAPH_NOT_FOUND";
58
- const AMBIGUOUS_GRAPH_NAME_CODE = "E_AMBIGUOUS_GRAPH_NAME";
59
- const DUPLICATE_EDGE_CODE = "E_DUPLICATE_EDGE";
60
- const SELF_LOOP_CODE = "E_SELF_LOOP";
61
- const EDGES_MERGED_CODE = "W_EDGES_MERGED";
62
- const SELF_LOOPS_DROPPED_CODE = "W_SELF_LOOPS_DROPPED";
63
- const UNKNOWN_OPTION_CODE = "W_UNKNOWN_OPTION";
64
- const BAD_LINE_CODE = "E_BAD_LINE";
65
- const WEIGHT_NOT_FOUND_CODE = "W_WEIGHT_NOT_FOUND";
66
- const ROLE_DROPPED_CODE = "W_ROLE_DROPPED";
67
- const PARENTS_DROPPED_CODE = "W_PARENTS_DROPPED";
68
- const TEMPORAL_DROPPED_CODE = "W_TEMPORAL_DROPPED";
69
- const MUTUAL_EXPANDED_CODE = "W_MUTUAL_EXPANDED";
70
- const MUTUAL_AS_UNDIRECTED_CODE = "W_MUTUAL_AS_UNDIRECTED";
71
- const ID_TEXT_TYPE_CODE = "W_ID_TEXT_TYPE";
72
- const ID_TEXT_COLLISION_CODE = "E_ID_TEXT_COLLISION";
73
- const TEMPORAL_TEXT_DROPPED_CODE = "W_TEMPORAL_TEXT_DROPPED";
74
- const WEIGHTS_DROPPED_CODE = "W_WEIGHTS_DROPPED";
75
- const WEIGHT_KEY_CLASH_CODE = "W_WEIGHT_KEY_CLASH";
76
- const ROLE_ASSUMED_CODE = "W_ROLE_ASSUMED";
77
- const COLUMN_RENAMED_LOSS_CODE = "W_COLUMN_NAME_CHANGED";
78
- const EMPTY_COLUMN_DROPPED_CODE = "W_EMPTY_COLUMN_DROPPED";
79
- const STORAGE_CLASS_CODE = "W_STORAGE_CLASS_CHANGED";
80
- const INTEGRAL_F64_CODE = "W_INTEGRAL_F64_AS_I32";
81
- const TEXT_INFERRED_CODE = "W_TEXT_INFERRED";
82
- const XML_ILLEGAL_CHAR_CODE = "E_XML_ILLEGAL_CHAR";
83
- const COLUMN_AS_PROPERTY_VALUE_CODE = "W_COLUMN_AS_PROPERTY_VALUE";
84
- const RELATION_ASSUMED_CODE = "W_RELATION_ASSUMED";
85
- const TYPEDEF_NODES_CODE = "W_TYPEDEF_NODES";
86
- const GRAPH_COLUMN_AS_METADATA_CODE = "W_GRAPH_COLUMN_AS_METADATA";
87
- const DIRECTION_DROPPED_CODE = "W_DIRECTION_DROPPED";
88
- const NONFINITE_AS_NULL_CODE = "W_NONFINITE_AS_NULL";
89
- const NODE_ORDER_CODE = "W_NODE_ORDER";
90
- const OPTIONS_GAINED_CODE = "W_OPTIONS_GAINED";
91
- const ELEMENT_ISSUE = Object.freeze({
92
- /** A node id of a type the graph cannot hold (an empty id, a non-finite number, an object). The node is skipped. */
93
- INVALID_ID: "E_INVALID_ID",
94
- /** An edge names a node the file never declares, while `addMissingNodes` is false. The edge is skipped. */
95
- UNKNOWN_NODE: "E_UNKNOWN_NODE",
96
- /**
97
- * An edge weight that is not a number (text such as "2,5" with a decimal comma, NaN, a boolean). The whole edge is
98
- * skipped, not only its weight.
99
- */
100
- INVALID_WEIGHT: "E_INVALID_WEIGHT",
101
- /** A second edge between the same two nodes, while `duplicateEdges` is "error". The edge is skipped. */
102
- DUPLICATE_EDGE: DUPLICATE_EDGE_CODE,
103
- /** An edge from a node to itself, while `selfLoops` is "error". The edge is skipped. */
104
- SELF_LOOP: SELF_LOOP_CODE,
105
- /** An edge id declared twice. The second edge is skipped. */
106
- DUPLICATE_EDGE_ID: DUPLICATE_EDGE_ID_CODE
107
- });
108
- const INPUT_ISSUE = Object.freeze({
109
- /** The input is empty or holds only whitespace. The import stops. */
110
- EMPTY_INPUT: EMPTY_INPUT_CODE,
111
- /** The input, or one of its lines, is longer than a JavaScript string can hold. The import stops. */
112
- TOO_LARGE: TOO_LARGE_CODE,
113
- /** A byte order mark, the encoding option and the declared encoding disagree. */
114
- ENCODING_CONFLICT: ENCODING_CONFLICT_CODE,
115
- /** A control character or a stray U+FEFF in the text, or an ignored trailing Ctrl-Z. */
116
- CONTROL_CHARACTER: CONTROL_CHARACTER_CODE,
117
- /** The input is an HTML page, a PDF, compressed or zip data, or an image. The import stops. */
118
- FOREIGN_FORMAT: FOREIGN_FORMAT_CODE,
119
- /** Warnings of one code beyond the number a report keeps, counted in one warning. */
120
- ISSUES_SUPPRESSED: ISSUES_SUPPRESSED_CODE
121
- });
122
- function plural(n) {
123
- return n === 1 ? "" : "s";
124
- }
125
- function agree(n, one, many) {
126
- return n === 1 ? one : many;
127
- }
128
- function elementCount(nodes, edges) {
129
- const parts = [];
130
- if (nodes > 0 || edges === 0) {
131
- parts.push(`${nodes} node${plural(nodes)}`);
132
- }
133
- if (edges > 0) {
134
- parts.push(`${edges} edge${plural(edges)}`);
135
- }
136
- return parts.join(" and ");
137
- }
138
- function withArticle(word) {
139
- return `${/^[aeiou]/i.test(word) ? "an" : "a"} ${word}`;
140
- }
2
+ import { aR as withArticle, C as COLUMN_RENAMED_CODE, U as UNKNOWN_ATTR_TYPE_CODE, R as ROLE_TAKEN_CODE, B as BAD_DEFAULT_CODE, ae as BAD_OPTIONS_CODE, D as DIRECTION_FORCED_CODE, a as DIRECTION_REFUSED_CODE, M as MIXED_DIRECTION_CODE, O as OPTION_IGNORED_CODE, au as CONTROL_CHARACTER_CODE, E as EMPTY_INPUT_CODE, a1 as TOO_LARGE_CODE, t as INVALID_ENCODING_CODE, r as UNKNOWN_ENCODING_CODE, q as ENCODING_CONFLICT_CODE, u as INVALID_UTF8_CODE, s as ENCODING_FALLBACK_CODE, az as FOREIGN_FORMAT_CODE, N as NO_GRAPH_CODE, a2 as AMBIGUOUS_GRAPH_NAME_CODE, a3 as GRAPH_NOT_FOUND_CODE, p as plural, S as SINK_OPTION_CODE, ad as formatInteger, $ as formatF32, a0 as formatF64, P as PRECISION_CODE, aM as WEIGHTS_DROPPED_CODE, aE as NONFINITE_AS_NULL_CODE, aF as OPTIONS_GAINED_CODE, ac as XML_ILLEGAL_CHAR_CODE, aL as TEXT_INFERRED_CODE, aB as INTEGRAL_F64_CODE, aI as STORAGE_CLASS_CODE, ax as EMPTY_COLUMN_DROPPED_CODE, at as COLUMN_RENAMED_LOSS_CODE, aa as ROLE_ASSUMED_CODE, aN as WEIGHT_KEY_CLASH_CODE, aA as ID_TEXT_COLLISION_CODE, z as ID_TEXT_TYPE_CODE, G as MUTUAL_AS_UNDIRECTED_CODE, aD as MUTUAL_EXPANDED_CODE, F as PARENTS_DROPPED_CODE, A as ROLE_DROPPED_CODE, aK as TEMPORAL_TEXT_DROPPED_CODE, aJ as TEMPORAL_DROPPED_CODE, as as COLUMN_DROPPED_CODE, V as agree } from "./format-GDmO6m6Q.js";
141
3
  const TIME_TEXT_ROLE = "timeText";
142
4
  const TIME_TEXT_SUFFIX = ".text";
143
5
  const DATE_TIME$1 = /^(-?\d{4,})-(\d{2})-(\d{2})(?:[T ](\d{2}):(\d{2})(?::(\d{2})(?:\.(\d{1,9}))?)?)?(Z|z|[+-]\d{2}(?::?\d{2})?)?$/;
@@ -734,7 +596,7 @@ function declareAttribute(input) {
734
596
  issues.push({
735
597
  category: "validation-error",
736
598
  code: BAD_DEFAULT_CODE,
737
- message: `default "${defaultText}" of attribute "${name}" does not parse as ${spec.declared}: ${messageOf$1(err)}`
599
+ message: `default "${defaultText}" of attribute "${name}" does not parse as ${spec.declared}: ${messageOf(err)}`
738
600
  });
739
601
  }
740
602
  }
@@ -768,7 +630,7 @@ function declareOptions(decl, spec, optionsText, listSyntax, issues) {
768
630
  issues.push({
769
631
  category: "validation-error",
770
632
  code: BAD_OPTIONS_CODE,
771
- message: `options "${optionsText}" of attribute "${decl.name}" do not parse as ${spec.declared}: ${messageOf$1(err)}`
633
+ message: `options "${optionsText}" of attribute "${decl.name}" do not parse as ${spec.declared}: ${messageOf(err)}`
772
634
  });
773
635
  }
774
636
  return spec;
@@ -954,7 +816,7 @@ function resolveName(input) {
954
816
  function parseItem(text, spec) {
955
817
  return parseScalarText(text, spec.kind, spec.temporal);
956
818
  }
957
- function messageOf$1(err) {
819
+ function messageOf(err) {
958
820
  return err instanceof Error ? err.message : String(err);
959
821
  }
960
822
  const DIRECTED_COLUMN = "graphty.directed";
@@ -2058,9 +1920,13 @@ function checkContinuation(bytes, i, sequence) {
2058
1920
  }
2059
1921
  function controlByte(bytes, final) {
2060
1922
  const last = bytes.byteLength - 1;
2061
- return bytes.findIndex(
2062
- (b, i) => b < 32 && b !== 9 && b !== 10 && b !== 12 && b !== 13 && !(b === 26 && final && i === last)
2063
- );
1923
+ for (let i = 0; i <= last; i++) {
1924
+ const b = bytes[i];
1925
+ if (b < 32 && b !== 9 && b !== 10 && b !== 12 && b !== 13 && !(b === 26 && final && i === last)) {
1926
+ return i;
1927
+ }
1928
+ }
1929
+ return -1;
2064
1930
  }
2065
1931
  function decodeEntryName(bytes, cp437 = false) {
2066
1932
  try {
@@ -3060,403 +2926,6 @@ function describe(value) {
3060
2926
  function list(allowed) {
3061
2927
  return [...allowed].map((v) => JSON.stringify(v)).join(", ");
3062
2928
  }
3063
- class ImportError extends GraphFormatError {
3064
- /**
3065
- * Create an ImportError.
3066
- * @param message - a plain-ASCII human-readable message
3067
- * @param report - the partial report
3068
- * @param details - optional machine-readable context; its `code` names the issue that stopped the import
3069
- */
3070
- constructor(message, report, details) {
3071
- super("E_IMPORT", message, details);
3072
- this.name = "ImportError";
3073
- Object.defineProperty(this, "report", { value: report, enumerable: false });
3074
- this.issue = stoppingIssue(report.issues, details?.code);
3075
- }
3076
- }
3077
- function stoppingIssue(issues, code) {
3078
- let lastError = null;
3079
- for (let i = issues.length - 1; i >= 0; i--) {
3080
- if (issues[i].code === code) {
3081
- return issues[i];
3082
- }
3083
- if (lastError === null && issues[i].severity === "error") {
3084
- lastError = issues[i];
3085
- }
3086
- }
3087
- return lastError;
3088
- }
3089
- const MAX_WARNINGS_PER_CODE = 1e3;
3090
- const CATEGORY_BY_CODE = {
3091
- E_UNKNOWN_NODE: "missing-value",
3092
- E_UNKNOWN_COLUMN: "missing-value",
3093
- E_DIRECTED: "coercion",
3094
- E_TOO_LARGE: "unsupported",
3095
- E_UNSUPPORTED: "unsupported",
3096
- E_GPU_INELIGIBLE: "unsupported"
3097
- };
3098
- const PARSE_ERROR_CODE = "E_PARSE";
3099
- function withLine(message, where) {
3100
- const line = where?.line;
3101
- return line === void 0 || line === null || message.includes(`line ${line}`) ? message : `line ${line}: ${message}`;
3102
- }
3103
- class ImportReportBuilder {
3104
- /**
3105
- * Create a builder for one import call.
3106
- * @param format - the importer's format name
3107
- * @param errorLimit - errors tolerated before the import aborts; Infinity for no limit
3108
- */
3109
- constructor(format, errorLimit) {
3110
- this.counts = { nodes: 0, edges: 0, skippedNodes: 0, skippedEdges: 0, expandedMixed: 0 };
3111
- this.issueList = [];
3112
- this.lossList = [];
3113
- this.onceCodes = /* @__PURE__ */ new Set();
3114
- this.warningsByCode = /* @__PURE__ */ new Map();
3115
- this.errors = 0;
3116
- this.warnings = 0;
3117
- this.truncatedFlag = false;
3118
- this.format = format;
3119
- this.errorLimit = errorLimit;
3120
- this.startedAt = now();
3121
- }
3122
- /**
3123
- * Issues recorded so far, in order.
3124
- * @returns the live list (not copied; finish() copies)
3125
- */
3126
- get issues() {
3127
- return this.issueList;
3128
- }
3129
- /**
3130
- * Issues with severity "error".
3131
- * @returns the count
3132
- */
3133
- get errorCount() {
3134
- return this.errors;
3135
- }
3136
- /**
3137
- * Issues with severity "warning".
3138
- * @returns the count
3139
- */
3140
- get warningCount() {
3141
- return this.warnings;
3142
- }
3143
- /**
3144
- * Whether the error limit was exceeded.
3145
- * @returns true once an error beyond the limit was recorded
3146
- */
3147
- get truncated() {
3148
- return this.truncatedFlag;
3149
- }
3150
- /**
3151
- * Loss notes recorded so far.
3152
- * @returns the live list
3153
- */
3154
- get lossy() {
3155
- return this.lossList;
3156
- }
3157
- /**
3158
- * Record an error. When the count goes beyond the error limit the report is marked truncated
3159
- * and an ImportError carrying it is thrown; the importer does not catch that.
3160
- * @param category - the issue category
3161
- * @param code - a stable code such as "E_UNKNOWN_NODE"
3162
- * @param message - a plain-ASCII message
3163
- * @param where - the line and element, when known
3164
- * @returns the recorded issue
3165
- */
3166
- error(category, code, message, where) {
3167
- const issue = makeIssue(category, "error", code, message, where);
3168
- this.issueList.push(issue);
3169
- this.errors++;
3170
- if (this.errors > this.errorLimit) {
3171
- this.truncatedFlag = true;
3172
- throw this.abort(`error limit of ${this.errorLimit} exceeded: ${withLine(message, where)}`, {
3173
- code,
3174
- limit: this.errorLimit
3175
- });
3176
- }
3177
- return issue;
3178
- }
3179
- /**
3180
- * Record a warning; warnings never count toward the limit. Beyond MAX_WARNINGS_PER_CODE
3181
- * warnings of one code the warning is counted, not kept: finish() adds one W_ISSUES_SUPPRESSED
3182
- * warning per such code with the number dropped.
3183
- * @param category - the issue category
3184
- * @param code - a stable code such as "W_WIDENED"
3185
- * @param message - a plain-ASCII message
3186
- * @param where - the line and element, when known
3187
- * @returns the recorded issue
3188
- */
3189
- warning(category, code, message, where) {
3190
- const issue = makeIssue(category, "warning", code, message, where);
3191
- const seen = (this.warningsByCode.get(code) ?? 0) + 1;
3192
- this.warningsByCode.set(code, seen);
3193
- if (seen <= MAX_WARNINGS_PER_CODE) {
3194
- this.issueList.push(issue);
3195
- this.warnings++;
3196
- }
3197
- return issue;
3198
- }
3199
- /**
3200
- * Record a warning the first time its key is seen and ignore later repeats, for conditions
3201
- * that would otherwise produce one warning per row.
3202
- * @param category - the issue category
3203
- * @param code - the stable code
3204
- * @param message - a plain-ASCII message
3205
- * @param where - the line and element, when known
3206
- * @param key - what repeats are deduplicated on; the code itself by default (pass `code:column`
3207
- * to warn once per column)
3208
- * @returns the recorded issue, or null when the key was already recorded
3209
- */
3210
- warnOnce(category, code, message, where, key = code) {
3211
- if (this.onceCodes.has(key)) {
3212
- return null;
3213
- }
3214
- this.onceCodes.add(key);
3215
- return this.warning(category, code, message, where);
3216
- }
3217
- /**
3218
- * Record something the importer could not represent.
3219
- * @param code - a stable code
3220
- * @param message - a plain-ASCII message
3221
- * @param column - the affected column, or null
3222
- * @param count - the affected count, or null
3223
- * @returns the recorded note
3224
- */
3225
- loss(code, message, column = null, count = null) {
3226
- const note = Object.freeze({ code, message, column, count });
3227
- this.lossList.push(note);
3228
- return note;
3229
- }
3230
- /**
3231
- * The per-element catch: record a thrown GraphFormatError as an error
3232
- * issue with its code and the category the code implies. Anything else is re-thrown unchanged:
3233
- * an ImportError (the import already aborted), an abort reason, and any other thrown value (a
3234
- * TypeError or RangeError is a programming error in the importer or the sink, never a defect of
3235
- * the input, so it must surface as an exception rather than as an issue blamed on the file).
3236
- * @param err - the thrown value
3237
- * @param where - the line and element, when known
3238
- * @returns the recorded issue
3239
- */
3240
- recordError(err, where) {
3241
- if (err instanceof GraphFormatError && !(err instanceof ImportError)) {
3242
- const category = CATEGORY_BY_CODE[err.code] ?? "validation-error";
3243
- if (err.code === "E_TOO_LARGE") {
3244
- return this.failWith(category, err.code, err.message, where);
3245
- }
3246
- return this.error(category, err.code, err.message, where);
3247
- }
3248
- throw err;
3249
- }
3250
- /**
3251
- * A builder that starts from everything this one recorded so far: issues, counts, loss notes,
3252
- * the warnOnce keys, the error and warning counts and the truncation flag. For an importer that
3253
- * reads its input once and emits several graphs, each with its own report.
3254
- * @returns the copy; later records to either builder do not reach the other
3255
- */
3256
- fork() {
3257
- const copy = new ImportReportBuilder(this.format, this.errorLimit);
3258
- Object.assign(copy.counts, this.counts);
3259
- copy.issueList.push(...this.issueList);
3260
- copy.lossList.push(...this.lossList);
3261
- for (const key of this.onceCodes) {
3262
- copy.onceCodes.add(key);
3263
- }
3264
- for (const [code, count] of this.warningsByCode) {
3265
- copy.warningsByCode.set(code, count);
3266
- }
3267
- copy.errors = this.errors;
3268
- copy.warnings = this.warnings;
3269
- copy.truncatedFlag = this.truncatedFlag;
3270
- return copy;
3271
- }
3272
- /**
3273
- * Build the ImportError that aborts the import, carrying the report so far. The caller throws
3274
- * it; this method only constructs it so it can be used in expression position.
3275
- * @param message - a plain-ASCII message
3276
- * @param details - optional machine-readable context
3277
- * @returns the error to throw
3278
- */
3279
- abort(message, details) {
3280
- return new ImportError(message, this.finish(), details);
3281
- }
3282
- /**
3283
- * Record a fatal parse error and abort: the issue is recorded (even beyond the error limit)
3284
- * and an ImportError carrying the report is thrown.
3285
- * @param code - a stable code such as "E_INVALID_UTF8"
3286
- * @param message - a plain-ASCII message
3287
- * @param where - the line and element, when known
3288
- * @param details - optional machine-readable context for the ImportError
3289
- */
3290
- fail(code, message, where, details) {
3291
- this.failWith("parse-error", code, message, where, details);
3292
- }
3293
- /**
3294
- * Record a fatal error of any category and abort, as fail() does for a parse error: a size
3295
- * limit (E_TOO_LARGE, category "unsupported") stops an import without being a defect of the
3296
- * syntax. A fatal error is not the error limit: `truncated` stays as it was.
3297
- * @param category - the issue category
3298
- * @param code - a stable code
3299
- * @param message - a plain-ASCII message
3300
- * @param where - the line and element, when known
3301
- * @param details - optional machine-readable context for the ImportError
3302
- */
3303
- failWith(category, code, message, where, details) {
3304
- this.issueList.push(makeIssue(category, "error", code, message, where));
3305
- this.errors++;
3306
- throw this.abort(withLine(message, where), { code, ...details });
3307
- }
3308
- /**
3309
- * Add a finished report to this one: its issues after the ones recorded so far, its counts, its
3310
- * loss notes and its truncated flag. Use it when an importer hands part of the work to another
3311
- * importer (for example, a wrapper around the CSV importer) and returns one report for both. The issues
3312
- * keep their codes; errors added this way do not count toward this report's error limit, since
3313
- * the other importer applied its own.
3314
- * @param report - the report the other importer returned
3315
- * @returns this builder
3316
- * @example
3317
- * ```ts
3318
- * const report = new ImportReportBuilder("netscope", opts.errorLimit);
3319
- * const text = await readText(input, report, opts);
3320
- * report.include(await csvImporter.import(text, sink, options));
3321
- * return report.finish();
3322
- * ```
3323
- */
3324
- include(report) {
3325
- for (const issue of report.issues) {
3326
- this.issueList.push(issue);
3327
- if (issue.severity === "error") {
3328
- this.errors++;
3329
- } else {
3330
- this.warnings++;
3331
- }
3332
- }
3333
- const { counts } = report;
3334
- this.counts.nodes += counts.nodes;
3335
- this.counts.edges += counts.edges;
3336
- this.counts.skippedNodes += counts.skippedNodes;
3337
- this.counts.skippedEdges += counts.skippedEdges;
3338
- this.counts.expandedMixed += counts.expandedMixed;
3339
- this.lossList.push(...report.lossy);
3340
- this.truncatedFlag ||= report.truncated;
3341
- return this;
3342
- }
3343
- /**
3344
- * The report as it stands: a frozen snapshot with the parse duration so far. Can be called more
3345
- * than once; each call reflects everything recorded up to that point.
3346
- * @returns the report
3347
- */
3348
- finish() {
3349
- const { nodes, edges, skippedNodes, skippedEdges, expandedMixed } = this.counts;
3350
- const suppressed = [];
3351
- for (const [code, seen] of this.warningsByCode) {
3352
- if (seen > MAX_WARNINGS_PER_CODE) {
3353
- const more = seen - MAX_WARNINGS_PER_CODE;
3354
- suppressed.push(
3355
- makeIssue(
3356
- "unsupported",
3357
- "warning",
3358
- ISSUES_SUPPRESSED_CODE,
3359
- `${more} more ${code} warning${plural(more)} ${agree(more, "was", "were")} not kept (the report keeps the first ${MAX_WARNINGS_PER_CODE})`,
3360
- { element: code }
3361
- )
3362
- );
3363
- }
3364
- }
3365
- return Object.freeze({
3366
- format: this.format,
3367
- counts: Object.freeze({ nodes, edges, skippedNodes, skippedEdges, expandedMixed }),
3368
- issues: Object.freeze([...this.issueList, ...suppressed]),
3369
- errorCount: this.errors,
3370
- warningCount: this.warnings + suppressed.length,
3371
- truncated: this.truncatedFlag,
3372
- lossy: Object.freeze([...this.lossList]),
3373
- durationMs: now() - this.startedAt
3374
- });
3375
- }
3376
- }
3377
- function makeIssue(category, severity, code, message, where) {
3378
- return Object.freeze({
3379
- category,
3380
- severity,
3381
- code,
3382
- message,
3383
- line: where?.line ?? null,
3384
- element: where?.element ?? null
3385
- });
3386
- }
3387
- function isAbortError(err) {
3388
- if (typeof err !== "object" || err === null) {
3389
- return false;
3390
- }
3391
- const { name } = err;
3392
- return name === "AbortError" || name === "TimeoutError";
3393
- }
3394
- function messageOf(err) {
3395
- if (err instanceof Error) {
3396
- return err.message;
3397
- }
3398
- if (typeof err === "string") {
3399
- return err;
3400
- }
3401
- return `non-error thrown (${typeof err})`;
3402
- }
3403
- function now() {
3404
- return typeof performance === "object" ? performance.now() : Date.now();
3405
- }
3406
- function formatF32(value) {
3407
- if (!Number.isFinite(value)) {
3408
- return String(value);
3409
- }
3410
- if (value === 0) {
3411
- return Object.is(value, -0) ? "-0" : "0";
3412
- }
3413
- for (let digits = 1; digits <= 9; digits++) {
3414
- const text = value.toPrecision(digits);
3415
- if (Math.fround(Number(text)) === value) {
3416
- return String(Number(text));
3417
- }
3418
- }
3419
- return String(value);
3420
- }
3421
- function formatF64(value) {
3422
- return Object.is(value, -0) ? "-0" : String(value);
3423
- }
3424
- function idText(id) {
3425
- return typeof id === "number" ? formatF64(id) : id;
3426
- }
3427
- function formatDecimal(value, dtype = "f64") {
3428
- if (!Number.isFinite(value)) {
3429
- return String(value);
3430
- }
3431
- if (Object.is(value, -0)) {
3432
- return "-0.0";
3433
- }
3434
- const text = formatNumber(value, dtype);
3435
- return text.includes(".") || text.includes("e") ? text : `${text}.0`;
3436
- }
3437
- function formatGmlReal(value, dtype = "f64") {
3438
- if (Number.isNaN(value)) {
3439
- return "NAN";
3440
- }
3441
- if (!Number.isFinite(value)) {
3442
- return value > 0 ? "+INF" : "-INF";
3443
- }
3444
- const text = formatDecimal(value, dtype);
3445
- if (text.includes(".")) {
3446
- return text;
3447
- }
3448
- const e = text.indexOf("e");
3449
- return `${text.slice(0, e)}.0${text.slice(e)}`;
3450
- }
3451
- function formatInteger(value) {
3452
- if (Number.isSafeInteger(value) || !Number.isFinite(value)) {
3453
- return String(value);
3454
- }
3455
- return BigInt(value).toString();
3456
- }
3457
- function formatNumber(value, dtype) {
3458
- return dtype === "f32" ? formatF32(value) : formatF64(value);
3459
- }
3460
2929
  const DEFAULT_WEIGHT = 1;
3461
2930
  function isWeightField(name, weightFrom) {
3462
2931
  return weightFrom !== null && name === weightFrom;
@@ -3978,103 +3447,145 @@ const ROLE_WORDS = {
3978
3447
  position: "positions",
3979
3448
  originalId: "original ids"
3980
3449
  };
3450
+ function setCount(column) {
3451
+ return column.length - column.nullCount;
3452
+ }
3981
3453
  function checkColumns(table, domain, caps, extras, note) {
3454
+ const check = { domain, caps, extras, note };
3982
3455
  for (const column of table) {
3983
- const { name, role } = column.meta;
3984
- if (role !== null && STRUCTURAL_ROLES.has(role)) {
3985
- continue;
3986
- }
3987
- const label = `${domain} column "${name}"`;
3988
- noteRenamedRole(column, label, roleNamesOf(domain, extras), note);
3989
- if (domain === "edge" && role === "id") {
3990
- continue;
3991
- }
3992
- if (isDroppedColumn(column, domain, extras)) {
3993
- note(LOSS.COLUMN_DROPPED, `${label} is not written`, name, column.length - column.nullCount);
3994
- continue;
3995
- }
3996
- if (!checkSlotRole(column, label, caps, extras, note)) {
3997
- checkAttributeColumn(column, label, caps, extras, note);
3998
- }
3456
+ checkColumn(column, check);
3999
3457
  }
4000
3458
  }
4001
- function noteRenamedRole(column, label, roleNames, note) {
3459
+ function checkColumn(column, check) {
4002
3460
  const { name, role } = column.meta;
4003
- if (role === null || roleNames === void 0) {
3461
+ if (role !== null && STRUCTURAL_ROLES.has(role)) {
4004
3462
  return;
4005
3463
  }
4006
- const fixed = roleNames[role];
4007
- if (fixed !== void 0 && fixed !== name) {
4008
- note(
3464
+ const label = `${check.domain} column "${name}"`;
3465
+ noteRoleRenamed(column, label, check);
3466
+ if (check.domain === "edge" && role === "id") {
3467
+ return;
3468
+ }
3469
+ if (isDropped(column, check)) {
3470
+ check.note(LOSS.COLUMN_DROPPED, `${label} is not written`, name, setCount(column));
3471
+ return;
3472
+ }
3473
+ const slot = role === null ? void 0 : ROLE_SLOT_CHECKS.find(([holds]) => holds(role));
3474
+ if (slot !== void 0) {
3475
+ slot[1](column, label, check);
3476
+ return;
3477
+ }
3478
+ checkAttribute(column, label, check);
3479
+ }
3480
+ function noteRoleRenamed(column, label, check) {
3481
+ const { name, role } = column.meta;
3482
+ const fixed = role === null ? void 0 : roleNamesOf(check.domain, check.extras)?.[role];
3483
+ if (role !== null && fixed !== void 0 && fixed !== name) {
3484
+ check.note(
4009
3485
  LOSS.COLUMN_NAME_CHANGED,
4010
3486
  `${label} (the ${ROLE_WORDS[role] ?? role}) is written as the format's own ${role} and reads back as "${fixed}"`,
4011
3487
  name,
4012
- column.length - column.nullCount
3488
+ setCount(column)
4013
3489
  );
4014
3490
  }
4015
3491
  }
4016
- function isDroppedColumn(column, domain, extras) {
3492
+ function isDropped(column, check) {
4017
3493
  const { name, role } = column.meta;
3494
+ const { domain, extras } = check;
4018
3495
  const named = extras.writtenColumns?.[domain]?.includes(name) ?? false;
4019
- return writesAttributes(domain, extras) === false && !named && !(role !== null && (extras.roles?.has(role) ?? false));
4020
- }
4021
- function slotRules() {
4022
- const rules = /* @__PURE__ */ new Map();
4023
- const add = (roles, rule) => {
4024
- for (const role of roles) {
4025
- rules.set(role, rule);
3496
+ const kept = role !== null && (extras.roles?.has(role) ?? false);
3497
+ return writesAttributes(domain, extras) === false && !named && !kept;
3498
+ }
3499
+ const ROLE_SLOT_CHECKS = [
3500
+ [
3501
+ (role) => role === "timeText",
3502
+ (column, label, check) => {
3503
+ if (check.extras.temporalText !== true) {
3504
+ check.note(
3505
+ LOSS.TEMPORAL_TEXT,
3506
+ `${label} (the original text of a date or time column) cannot be written`,
3507
+ column.meta.name,
3508
+ setCount(column)
3509
+ );
3510
+ }
4026
3511
  }
4027
- };
4028
- add(["timeText"], {
4029
- code: LOSS.TEMPORAL_TEXT,
4030
- what: "the original text of a date or time column",
4031
- written: (_caps, extras) => extras.temporalText === true
4032
- });
4033
- add(VIZ_ROLES, { code: LOSS.VIZ, written: (caps) => caps.viz });
4034
- add(HIERARCHY_ROLES, { code: LOSS.HIERARCHY, written: (caps) => caps.hierarchy });
4035
- add(TEMPORAL_ROLES, { code: LOSS.TEMPORAL, written: (caps) => caps.temporal !== "none" });
4036
- add(["spells"], {
4037
- code: LOSS.SPELLS,
4038
- what: "spells",
4039
- written: (caps) => caps.temporal === "spells" || caps.temporal === "dynamic-values"
4040
- });
4041
- add(["open", "spellsOpen"], {
4042
- code: LOSS.OPEN_INTERVAL,
4043
- what: "open intervals",
4044
- written: (_caps, extras) => extras.openIntervals === true
4045
- });
4046
- return rules;
4047
- }
4048
- const SLOT_RULES = slotRules();
4049
- function checkSlotRole(column, label, caps, extras, note) {
4050
- const { name, role } = column.meta;
4051
- if (role === "position") {
4052
- checkPositionColumn(column, label, caps, extras, note);
4053
- return true;
4054
- }
4055
- const rule = role === null ? void 0 : SLOT_RULES.get(role);
4056
- if (role === null || rule === void 0) {
4057
- return false;
4058
- }
4059
- if (!rule.written(caps, extras)) {
4060
- note(rule.code, `${label} (${rule.what ?? role}) cannot be written`, name, column.length - column.nullCount);
4061
- }
4062
- return true;
4063
- }
4064
- function checkPositionColumn(column, label, caps, extras, note) {
3512
+ ],
3513
+ [(role) => role === "position", checkPosition],
3514
+ // Deprecated path (removed in the next major version): the role columns as the old way styles reached a
3515
+ // file. With styles, the style writer is the only path and the caller leaves the role columns out.
3516
+ [(role) => VIZ_ROLES.has(role), checkViz],
3517
+ [
3518
+ (role) => HIERARCHY_ROLES.has(role),
3519
+ (column, label, check) => {
3520
+ if (!check.caps.hierarchy) {
3521
+ const { name, role } = column.meta;
3522
+ check.note(LOSS.HIERARCHY, `${label} (${String(role)}) cannot be written`, name, setCount(column));
3523
+ }
3524
+ }
3525
+ ],
3526
+ [
3527
+ (role) => TEMPORAL_ROLES.has(role),
3528
+ (column, label, check) => {
3529
+ if (check.caps.temporal === "none") {
3530
+ const { name, role } = column.meta;
3531
+ check.note(LOSS.TEMPORAL, `${label} (${String(role)}) cannot be written`, name, setCount(column));
3532
+ }
3533
+ }
3534
+ ],
3535
+ [
3536
+ (role) => role === "spells",
3537
+ (column, label, check) => {
3538
+ if (check.caps.temporal !== "spells" && check.caps.temporal !== "dynamic-values") {
3539
+ check.note(LOSS.SPELLS, `${label} (spells) cannot be written`, column.meta.name, setCount(column));
3540
+ }
3541
+ }
3542
+ ],
3543
+ [
3544
+ // The open bits are written by the format's own temporal syntax when it has one; the
3545
+ // column's u8 storage is never an attribute dtype, so no dtype note either way.
3546
+ (role) => role === "open" || role === "spellsOpen",
3547
+ (column, label, check) => {
3548
+ if (check.extras.openIntervals !== true) {
3549
+ check.note(
3550
+ LOSS.OPEN_INTERVAL,
3551
+ `${label} (open intervals) cannot be written`,
3552
+ column.meta.name,
3553
+ setCount(column)
3554
+ );
3555
+ }
3556
+ }
3557
+ ]
3558
+ ];
3559
+ function checkPosition(column, label, check) {
3560
+ const { caps, extras, note } = check;
4065
3561
  const { meta } = column;
4066
3562
  if (!caps.positions) {
4067
- note(LOSS.POSITIONS, `${label} (positions) cannot be written`, meta.name, column.length - column.nullCount);
3563
+ note(LOSS.POSITIONS, `${label} (positions) cannot be written`, meta.name, setCount(column));
4068
3564
  } else if (extras.positionDtype !== void 0 && meta.dtype !== extras.positionDtype) {
4069
3565
  note(
4070
3566
  LOSS.DTYPE,
4071
3567
  `${label} (positions) is ${meta.dtype}; the format reads positions back as ${extras.positionDtype}`,
4072
3568
  meta.name,
4073
- column.length - column.nullCount
3569
+ setCount(column)
4074
3570
  );
4075
3571
  }
4076
3572
  }
4077
- function checkAttributeColumn(column, label, caps, extras, note) {
3573
+ function checkViz(column, label, check) {
3574
+ const { caps, extras, note } = check;
3575
+ if (caps.viz) {
3576
+ return;
3577
+ }
3578
+ const { name } = column.meta;
3579
+ const role = String(column.meta.role);
3580
+ note(
3581
+ LOSS.VIZ,
3582
+ extras.vizAsAttributes === true ? `${label} (${role}) is written as a plain attribute; the format has no ${role} slot and the role is lost on re-import` : `${label} (${role}) cannot be written`,
3583
+ name,
3584
+ setCount(column)
3585
+ );
3586
+ }
3587
+ function checkAttribute(column, label, check) {
3588
+ const { caps, extras, note } = check;
4078
3589
  const { meta } = column;
4079
3590
  const { name, role } = meta;
4080
3591
  if (role !== null && !(extras.roles?.has(role) ?? false)) {
@@ -4082,7 +3593,7 @@ function checkAttributeColumn(column, label, caps, extras, note) {
4082
3593
  LOSS.ROLE,
4083
3594
  `${label} (${role}) is written as a plain attribute; the format has no ${role} slot and the role is lost`,
4084
3595
  name,
4085
- column.length - column.nullCount
3596
+ setCount(column)
4086
3597
  );
4087
3598
  }
4088
3599
  if (meta.dynamic && caps.temporal !== "dynamic-values") {
@@ -4345,188 +3856,81 @@ function mangleNmtoken(text) {
4345
3856
  return out.length === 0 ? "_" : out;
4346
3857
  }
4347
3858
  export {
4348
- agree as $,
4349
- COLUMN_TYPE_CODE as A,
4350
- BAD_DEFAULT_CODE as B,
4351
- COLUMN_RENAMED_CODE as C,
4352
- DIRECTION_FORCED_CODE as D,
4353
- EMPTY_INPUT_CODE as E,
4354
- ELEMENT_ISSUE as F,
4355
- INPUT_ISSUE as G,
4356
- HYPEREDGE_CODE as H,
4357
- ID_MERGED_CODE as I,
4358
- ID_TEXT_TYPE_CODE as J,
4359
- ROLE_DROPPED_CODE as K,
3859
+ PAIR_COLUMN as $,
3860
+ losesPrecision as A,
3861
+ parseTimeText as B,
3862
+ splitListText as C,
3863
+ DictHeuristic as D,
3864
+ timeTextCompanion as E,
3865
+ parseDecimalText as F,
3866
+ sanitizeIds as G,
3867
+ formatTimeValue as H,
3868
+ IdCoercer as I,
3869
+ mapDeclaredType as J,
3870
+ joinListText as K,
4360
3871
  LOSS as L,
4361
- MIXED_DIRECTION_CODE as M,
4362
- NO_GRAPH_CODE as N,
4363
- OPTION_IGNORED_CODE as O,
4364
- PRECISION_CODE as P,
4365
- PARENTS_DROPPED_CODE as Q,
4366
- ROLE_TAKEN_CODE as R,
4367
- SINK_OPTION_CODE as S,
4368
- MUTUAL_AS_UNDIRECTED_CODE as T,
4369
- UNKNOWN_ATTR_TYPE_CODE as U,
4370
- BAD_ASPECT_BLOCK_CODE as V,
4371
- MULTI_ASPECT_FRAGMENT_CODE as W,
4372
- XML_SYNTAX_CODE as X,
4373
- ASPECT_ORDER_CODE as Y,
4374
- STATUS_FAILED_CODE as Z,
4375
- STATUS_WARNING_CODE as _,
3872
+ MAX_TEXT_LENGTH as M,
3873
+ formatTemporal as N,
3874
+ isCanonicalIntegerText as O,
3875
+ LineReader as P,
3876
+ describe as Q,
3877
+ RENAMED_CODE as R,
3878
+ normalizeInput as S,
3879
+ TIME_TEXT_ROLE as T,
3880
+ foreignKind as U,
3881
+ lockReader as V,
3882
+ abortable as W,
3883
+ DEFAULT_ERROR_LIMIT as X,
3884
+ DIRECTED_COLUMN as Y,
3885
+ MUTUAL_COLUMN as Z,
3886
+ NO_CAPABILITIES as _,
4376
3887
  checkCapabilities as a,
4377
- COLUMN_RENAMED_LOSS_CODE as a$,
4378
- uniqueColumnName as a0,
4379
- declareResolved as a1,
4380
- JSON_NONSTANDARD_NUMBER_CODE as a2,
4381
- BAD_VALUE_CODE as a3,
4382
- textChunks as a4,
4383
- MAX_TEXT_LENGTH as a5,
4384
- tooLarge as a6,
4385
- chooseGraph as a7,
4386
- ImportReportBuilder as a8,
4387
- idText as a9,
4388
- NODE_ORDER_CODE as aA,
4389
- GRAPH_COLUMN_AS_METADATA_CODE as aB,
4390
- TYPEDEF_NODES_CODE as aC,
4391
- RELATION_ASSUMED_CODE as aD,
4392
- sanitizeIds as aE,
4393
- formatDecimal as aF,
4394
- formatInteger as aG,
4395
- canonicalId as aH,
4396
- coerceIdText as aI,
4397
- isWeightField as aJ,
4398
- parseWeightText as aK,
4399
- isAbortError as aL,
4400
- BAD_LINE_CODE as aM,
4401
- messageOf as aN,
4402
- describe as aO,
4403
- UNKNOWN_OPTION_CODE as aP,
4404
- normalizeInput as aQ,
4405
- foreignKind as aR,
4406
- ImportError as aS,
4407
- FETCH_CODE as aT,
4408
- EDGES_MERGED_CODE as aU,
4409
- SELF_LOOPS_DROPPED_CODE as aV,
4410
- WEIGHT_NOT_FOUND_CODE as aW,
4411
- lockReader as aX,
4412
- abortable as aY,
4413
- BAD_OPTIONS_CODE as aZ,
4414
- COLUMN_DROPPED_CODE as a_,
4415
- formatF32 as aa,
4416
- formatF64 as ab,
4417
- DictHeuristic as ac,
4418
- TOO_LARGE_CODE as ad,
4419
- AMBIGUOUS_GRAPH_NAME_CODE as ae,
4420
- GRAPH_NOT_FOUND_CODE as af,
4421
- SINGLE_OBJECT_ASPECT_CODE as ag,
4422
- STYLES_NOT_IMPORTED_CODE as ah,
4423
- PARENT_CYCLE_CODE as ai,
4424
- WIDENED_CODE as aj,
4425
- SYNTAX_CODE as ak,
4426
- resolveImportOptions as al,
4427
- throwIfAborted as am,
4428
- reportUnusedOptions as an,
4429
- reportSinkOptions as ao,
4430
- graphChosen as ap,
4431
- DirectionResolver as aq,
4432
- IdCoercer as ar,
4433
- weightFromValue as as,
4434
- COLUMN_AS_PROPERTY_VALUE_CODE as at,
4435
- ROLE_ASSUMED_CODE as au,
4436
- formatNumber as av,
4437
- isNameChar as aw,
4438
- XML_ILLEGAL_CHAR_CODE as ax,
4439
- RENAMED_CODE as ay,
4440
- LineReader as az,
4441
- plural as b,
4442
- readBytes as b$,
4443
- CONTROL_CHARACTER_CODE as b0,
4444
- DEFAULT_ERROR_LIMIT as b1,
4445
- DIRECTED_COLUMN as b2,
4446
- DIRECTION_DROPPED_CODE as b3,
4447
- DUPLICATE_EDGE_CODE as b4,
4448
- EMPTY_COLUMN_DROPPED_CODE as b5,
4449
- EQUATION_AS_TEXT_CODE as b6,
4450
- FOREIGN_FORMAT_CODE as b7,
4451
- ID_TEXT_COLLISION_CODE as b8,
4452
- INTEGRAL_F64_CODE as b9,
4453
- mangleNmtoken as bA,
4454
- readText as bB,
4455
- refusedSave as bC,
4456
- countMixedEdges as bD,
4457
- canonicalEncoding as bE,
4458
- TIME_TEXT_ROLE as bF,
4459
- TIME_TEXT_SUFFIX as bG,
4460
- declareAttribute as bH,
4461
- overflowsToInfinity as bI,
4462
- parseDeclaredTemporal as bJ,
4463
- parseDeclaredValue as bK,
4464
- losesPrecision as bL,
4465
- parseTimeText as bM,
4466
- splitListText as bN,
4467
- timeTextCompanion as bO,
4468
- parseDecimalText as bP,
4469
- formatTimeValue as bQ,
4470
- mapDeclaredType as bR,
4471
- joinListText as bS,
4472
- formatTemporal as bT,
4473
- DICT_SAMPLE_ROWS as bU,
4474
- reportWeightPrecision as bV,
4475
- takenIn as bW,
4476
- declareOn as bX,
4477
- parseTemporal as bY,
4478
- withArticle as bZ,
4479
- otherFormatDialect as b_,
4480
- ISSUES_SUPPRESSED_CODE as ba,
4481
- MUTUAL_COLUMN as bb,
4482
- MUTUAL_EXPANDED_CODE as bc,
4483
- NONFINITE_AS_NULL_CODE as bd,
4484
- NO_CAPABILITIES as be,
4485
- OPTIONS_GAINED_CODE as bf,
4486
- PAIR_COLUMN as bg,
4487
- PARSE_ERROR_CODE as bh,
4488
- SELF_LOOP_CODE as bi,
4489
- STORAGE_CLASS_CODE as bj,
4490
- TEMPORAL_DROPPED_CODE as bk,
4491
- TEMPORAL_TEXT_DROPPED_CODE as bl,
4492
- TEXT_INFERRED_CODE as bm,
4493
- UNKNOWN_TYPE_CODE as bn,
4494
- WEIGHTS_DROPPED_CODE as bo,
4495
- WEIGHT_KEY_CLASH_CODE as bp,
4496
- coerceId as bq,
4497
- declareCompanion as br,
4498
- decodeEntryName as bs,
4499
- edgeWeights as bt,
4500
- forDecodedText as bu,
4501
- formatGmlReal as bv,
4502
- inputLength as bw,
4503
- isCanonicalIntegerText as bx,
4504
- isImportInput as by,
4505
- isNmtoken as bz,
3888
+ UNKNOWN_TYPE_CODE as a0,
3889
+ canonicalId as a1,
3890
+ coerceId as a2,
3891
+ coerceIdText as a3,
3892
+ decodeEntryName as a4,
3893
+ edgeWeights as a5,
3894
+ forDecodedText as a6,
3895
+ inputLength as a7,
3896
+ isImportInput as a8,
3897
+ isNmtoken as a9,
3898
+ mangleNmtoken as aa,
3899
+ readText as ab,
3900
+ refusedSave as ac,
3901
+ declareOn as ad,
3902
+ takenIn as ae,
3903
+ parseTemporal as af,
3904
+ DICT_SAMPLE_ROWS as ag,
3905
+ otherFormatDialect as ah,
3906
+ countMixedEdges as ai,
3907
+ canonicalEncoding as aj,
3908
+ readBytes as ak,
3909
+ reportWeightPrecision as al,
3910
+ tooLarge as b,
4506
3911
  capabilities as c,
4507
- elementCount as c0,
4508
- DIRECTION_REFUSED_CODE as d,
3912
+ declareResolved as d,
4509
3913
  explicitWeights as e,
4510
- STRAY_TEXT_CODE as f,
4511
- UNKNOWN_ELEMENT_CODE as g,
4512
- UNKNOWN_XML_ATTRIBUTE_CODE as h,
4513
- DANGLING_REFERENCE_CODE as i,
4514
- COUNT_MISMATCH_CODE as j,
4515
- COUNT_HINT_CODE as k,
4516
- MULTIPLE_GRAPHS_CODE as l,
4517
- DUPLICATE_EDGE_ID_CODE as m,
4518
- DUPLICATE_NODE_CODE as n,
4519
- DUPLICATE_ATTRIBUTE_CODE as o,
3914
+ chooseGraph as f,
3915
+ resolveImportOptions as g,
3916
+ throwIfAborted as h,
3917
+ reportUnusedOptions as i,
3918
+ reportSinkOptions as j,
3919
+ graphChosen as k,
3920
+ DirectionResolver as l,
3921
+ TIME_TEXT_SUFFIX as m,
3922
+ isNameChar as n,
3923
+ isWeightField as o,
4520
3924
  pairFolding as p,
4521
- UNKNOWN_PARENT_CODE as q,
3925
+ declareAttribute as q,
4522
3926
  resolveExportOptions as r,
4523
- MISSING_ENDPOINT_CODE as s,
4524
- MISSING_ID_CODE as t,
4525
- DUPLICATE_KEY_CODE as u,
4526
- ENCODING_CONFLICT_CODE as v,
4527
- UNKNOWN_ENCODING_CODE as w,
4528
- ENCODING_FALLBACK_CODE as x,
4529
- INVALID_ENCODING_CODE as y,
4530
- INVALID_UTF8_CODE as z
3927
+ parseWeightText as s,
3928
+ textChunks as t,
3929
+ uniqueColumnName as u,
3930
+ overflowsToInfinity as v,
3931
+ weightFromValue as w,
3932
+ parseDeclaredTemporal as x,
3933
+ declareCompanion as y,
3934
+ parseDeclaredValue as z
4531
3935
  };
4532
- //# sourceMappingURL=export-rKLeGQMo.js.map
3936
+ //# sourceMappingURL=export-D7IGzTG4.js.map