@graphty/graph-io 0.3.48 → 0.3.50

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 (600) hide show
  1. package/dist/chunks/{approximations-C2riR4NT.js → approximations-BRXsll0T.js} +2 -2
  2. package/dist/chunks/{approximations-C2riR4NT.js.map → approximations-BRXsll0T.js.map} +1 -1
  3. package/dist/chunks/bends-BGXjv_U4.js +129 -0
  4. package/dist/chunks/bends-BGXjv_U4.js.map +1 -0
  5. package/dist/chunks/{block-Cu22ewuS.js → block-yl0f_qLO.js} +931 -164
  6. package/dist/chunks/block-yl0f_qLO.js.map +1 -0
  7. package/dist/chunks/choose-CczZJaX_.js +717 -0
  8. package/dist/chunks/choose-CczZJaX_.js.map +1 -0
  9. package/dist/chunks/{codes-CV_Bhcyi.js → codes-BE2xir2k.js} +6 -2
  10. package/dist/chunks/codes-BE2xir2k.js.map +1 -0
  11. package/dist/chunks/{constants-D0LqcsLJ.js → constants-CKkYLPtt.js} +2 -2
  12. package/dist/chunks/{constants-D0LqcsLJ.js.map → constants-CKkYLPtt.js.map} +1 -1
  13. package/dist/chunks/{context-cgmmOxZ2.js → context-DizmppHy.js} +5 -4
  14. package/dist/chunks/{context-cgmmOxZ2.js.map → context-DizmppHy.js.map} +1 -1
  15. package/dist/chunks/{convert-BcQ8_jMo.js → convert-Ct2zelbQ.js} +7 -2
  16. package/dist/chunks/convert-Ct2zelbQ.js.map +1 -0
  17. package/dist/chunks/{credentials-BiQsnMTb.js → credentials-CmvJXYeH.js} +67 -16
  18. package/dist/chunks/credentials-CmvJXYeH.js.map +1 -0
  19. package/dist/chunks/{cx-export-BEeF6ymo.js → cx-export-Bt6NoqTQ.js} +3 -3
  20. package/dist/chunks/{cx-export-BEeF6ymo.js.map → cx-export-Bt6NoqTQ.js.map} +1 -1
  21. package/dist/chunks/descriptor-B28U25x4.js +60 -0
  22. package/dist/chunks/descriptor-B28U25x4.js.map +1 -0
  23. package/dist/chunks/{descriptor-BJ-W0Jd-.js → descriptor-Dhez_Cew.js} +11 -2
  24. package/dist/chunks/descriptor-Dhez_Cew.js.map +1 -0
  25. package/dist/chunks/{emit-CD8xnY8s.js → emit-7Jkpg0yd.js} +1788 -133
  26. package/dist/chunks/emit-7Jkpg0yd.js.map +1 -0
  27. package/dist/chunks/{escape-DH2Egt-l.js → escape-CuCIzNMB.js} +8 -8
  28. package/dist/chunks/{escape-DH2Egt-l.js.map → escape-CuCIzNMB.js.map} +1 -1
  29. package/dist/chunks/{export-CZ7VRm4I.js → export-Cha4dRFz.js} +45 -387
  30. package/dist/chunks/export-Cha4dRFz.js.map +1 -0
  31. package/dist/chunks/{exporter-ChjL5fmP.js → exporter-1Ajud15J.js} +9 -8
  32. package/dist/chunks/{exporter-ChjL5fmP.js.map → exporter-1Ajud15J.js.map} +1 -1
  33. package/dist/chunks/{exporter-BIdaoIgh.js → exporter-B6yvL3wy.js} +7 -7
  34. package/dist/chunks/{exporter-BIdaoIgh.js.map → exporter-B6yvL3wy.js.map} +1 -1
  35. package/dist/chunks/{exporter-Dcw7Ldtq.js → exporter-BP6otMO6.js} +6 -6
  36. package/dist/chunks/{exporter-Dcw7Ldtq.js.map → exporter-BP6otMO6.js.map} +1 -1
  37. package/dist/chunks/{exporter-DtVU80Fa.js → exporter-CA5q8ROP.js} +9 -8
  38. package/dist/chunks/{exporter-DtVU80Fa.js.map → exporter-CA5q8ROP.js.map} +1 -1
  39. package/dist/chunks/{exporter-bxxjOrDZ.js → exporter-CQQZFJ2v.js} +1284 -156
  40. package/dist/chunks/exporter-CQQZFJ2v.js.map +1 -0
  41. package/dist/chunks/format-BXiAb-1h.js +408 -0
  42. package/dist/chunks/format-BXiAb-1h.js.map +1 -0
  43. package/dist/chunks/{generic-CP6YD34u.js → generic-Dc21MAdg.js} +387 -31
  44. package/dist/chunks/generic-Dc21MAdg.js.map +1 -0
  45. package/dist/chunks/{importer-B87_fmVx.js → importer-C6NVpCXp.js} +327 -84
  46. package/dist/chunks/importer-C6NVpCXp.js.map +1 -0
  47. package/dist/chunks/{importer-DPZDN40-.js → importer-CKFe4q54.js} +25 -17
  48. package/dist/chunks/importer-CKFe4q54.js.map +1 -0
  49. package/dist/chunks/{importer-Bji2MeWr.js → importer-CKbUbsJA.js} +13 -10
  50. package/dist/chunks/{importer-Bji2MeWr.js.map → importer-CKbUbsJA.js.map} +1 -1
  51. package/dist/chunks/{importer-CB_zV5_L.js → importer-ClCsdgTJ.js} +208 -1104
  52. package/dist/chunks/importer-ClCsdgTJ.js.map +1 -0
  53. package/dist/chunks/{importer-e3huMZbm.js → importer-CyVZTrf0.js} +14 -10
  54. package/dist/chunks/importer-CyVZTrf0.js.map +1 -0
  55. package/dist/chunks/{importer-CVT-JyDE.js → importer-DgG4v1Ms.js} +1537 -355
  56. package/dist/chunks/importer-DgG4v1Ms.js.map +1 -0
  57. package/dist/chunks/{importer-Cyy6UseH.js → importer-asFUrIsj.js} +66 -13
  58. package/dist/chunks/importer-asFUrIsj.js.map +1 -0
  59. package/dist/chunks/{input-Ccg9I22A.js → input-CAxt_aV-.js} +4 -4
  60. package/dist/chunks/{input-Ccg9I22A.js.map → input-CAxt_aV-.js.map} +1 -1
  61. package/dist/chunks/{json-elements-By172SVq.js → json-elements-Cq76WjnZ.js} +4 -4
  62. package/dist/chunks/{json-elements-By172SVq.js.map → json-elements-Cq76WjnZ.js.map} +1 -1
  63. package/dist/chunks/{lexicon-u2SI5xcx.js → lexicon-IVRq2Uoo.js} +282 -74
  64. package/dist/chunks/lexicon-IVRq2Uoo.js.map +1 -0
  65. package/dist/chunks/{ontology-export-BwgMyuF0.js → ontology-export-OMo91mb0.js} +4 -4
  66. package/dist/chunks/{ontology-export-BwgMyuF0.js.map → ontology-export-OMo91mb0.js.map} +1 -1
  67. package/dist/chunks/{records-Cgvxz-Vx.js → records-NJiYvekn.js} +2 -2
  68. package/dist/chunks/{records-Cgvxz-Vx.js.map → records-NJiYvekn.js.map} +1 -1
  69. package/dist/chunks/{report-CgdsL9Hb.js → report-CwMfYa9J.js} +23 -23
  70. package/dist/chunks/{report-CgdsL9Hb.js.map → report-CwMfYa9J.js.map} +1 -1
  71. package/dist/chunks/round-trip-Cy3_SHRZ.js +79 -0
  72. package/dist/chunks/round-trip-Cy3_SHRZ.js.map +1 -0
  73. package/dist/chunks/{sigv4-LkAzsLAu.js → sigv4-BXwVbza3.js} +5 -5
  74. package/dist/chunks/sigv4-BXwVbza3.js.map +1 -0
  75. package/dist/chunks/{styles-CaABMoO1.js → styles-CAVmBLgp.js} +1237 -138
  76. package/dist/chunks/styles-CAVmBLgp.js.map +1 -0
  77. package/dist/chunks/styles-CPczw1Jz.js +1928 -0
  78. package/dist/chunks/styles-CPczw1Jz.js.map +1 -0
  79. package/dist/chunks/styles-boK6Ln54.js +2847 -0
  80. package/dist/chunks/styles-boK6Ln54.js.map +1 -0
  81. package/dist/chunks/{styles-yed-Cs1nmrjn.js → styles-yed-XeFBQ6VS.js} +506 -175
  82. package/dist/chunks/styles-yed-XeFBQ6VS.js.map +1 -0
  83. package/dist/chunks/{text-BuKQVMz2.js → text-ystE2bYi.js} +2 -2
  84. package/dist/chunks/{text-BuKQVMz2.js.map → text-ystE2bYi.js.map} +1 -1
  85. package/dist/csv.js +7 -7
  86. package/dist/cx.js +2 -2
  87. package/dist/cx2.js +2 -2
  88. package/dist/cys.js +1 -1
  89. package/dist/dot.js +8 -4
  90. package/dist/dot.js.map +1 -1
  91. package/dist/gexf.js +42 -12
  92. package/dist/gexf.js.map +1 -1
  93. package/dist/gml.js +848 -194
  94. package/dist/gml.js.map +1 -1
  95. package/dist/graph-io.js +230 -193
  96. package/dist/graph-io.js.map +1 -1
  97. package/dist/graphml.js +3 -3
  98. package/dist/json.js +3 -2
  99. package/dist/neo4j.js +6 -6
  100. package/dist/obo.js +1 -1
  101. package/dist/pajek.js +1 -1
  102. package/dist/positions.js +45 -3
  103. package/dist/positions.js.map +1 -1
  104. package/dist/sources-cypher.js +141 -23
  105. package/dist/sources-cypher.js.map +1 -1
  106. package/dist/sources-ndex.js +2 -2
  107. package/dist/sources-rest.js +32 -6
  108. package/dist/sources-rest.js.map +1 -1
  109. package/dist/sources-sparql.d.ts +1 -0
  110. package/dist/sources-sparql.js +439 -0
  111. package/dist/sources-sparql.js.map +1 -0
  112. package/dist/src/formats/cx/importer.d.ts.map +1 -1
  113. package/dist/src/formats/cx/importer.js +5 -1
  114. package/dist/src/formats/cx/importer.js.map +1 -1
  115. package/dist/src/formats/cx/styles.d.ts +24 -1
  116. package/dist/src/formats/cx/styles.d.ts.map +1 -1
  117. package/dist/src/formats/cx/styles.js +117 -11
  118. package/dist/src/formats/cx/styles.js.map +1 -1
  119. package/dist/src/formats/cx2/importer.d.ts.map +1 -1
  120. package/dist/src/formats/cx2/importer.js +1 -0
  121. package/dist/src/formats/cx2/importer.js.map +1 -1
  122. package/dist/src/formats/cx2/styles.d.ts.map +1 -1
  123. package/dist/src/formats/cx2/styles.js +3 -1
  124. package/dist/src/formats/cx2/styles.js.map +1 -1
  125. package/dist/src/formats/cys/importer.d.ts.map +1 -1
  126. package/dist/src/formats/cys/importer.js +1 -0
  127. package/dist/src/formats/cys/importer.js.map +1 -1
  128. package/dist/src/formats/cys/styles.d.ts +2 -0
  129. package/dist/src/formats/cys/styles.d.ts.map +1 -1
  130. package/dist/src/formats/cys/styles.js +15 -7
  131. package/dist/src/formats/cys/styles.js.map +1 -1
  132. package/dist/src/formats/dot/drawing.d.ts +98 -0
  133. package/dist/src/formats/dot/drawing.d.ts.map +1 -0
  134. package/dist/src/formats/dot/drawing.js +734 -0
  135. package/dist/src/formats/dot/drawing.js.map +1 -0
  136. package/dist/src/formats/dot/exporter.d.ts.map +1 -1
  137. package/dist/src/formats/dot/exporter.js +34 -2
  138. package/dist/src/formats/dot/exporter.js.map +1 -1
  139. package/dist/src/formats/dot/importer.d.ts +6 -1
  140. package/dist/src/formats/dot/importer.d.ts.map +1 -1
  141. package/dist/src/formats/dot/importer.js +170 -33
  142. package/dist/src/formats/dot/importer.js.map +1 -1
  143. package/dist/src/formats/dot/index.d.ts +3 -1
  144. package/dist/src/formats/dot/index.d.ts.map +1 -1
  145. package/dist/src/formats/dot/index.js +2 -1
  146. package/dist/src/formats/dot/index.js.map +1 -1
  147. package/dist/src/formats/dot/label-places.d.ts +41 -0
  148. package/dist/src/formats/dot/label-places.d.ts.map +1 -0
  149. package/dist/src/formats/dot/label-places.js +185 -0
  150. package/dist/src/formats/dot/label-places.js.map +1 -0
  151. package/dist/src/formats/dot/names.d.ts +13 -0
  152. package/dist/src/formats/dot/names.d.ts.map +1 -1
  153. package/dist/src/formats/dot/names.js +13 -0
  154. package/dist/src/formats/dot/names.js.map +1 -1
  155. package/dist/src/formats/dot/record.d.ts +50 -0
  156. package/dist/src/formats/dot/record.d.ts.map +1 -0
  157. package/dist/src/formats/dot/record.js +275 -0
  158. package/dist/src/formats/dot/record.js.map +1 -0
  159. package/dist/src/formats/dot/styles.d.ts +72 -2
  160. package/dist/src/formats/dot/styles.d.ts.map +1 -1
  161. package/dist/src/formats/dot/styles.js +1500 -119
  162. package/dist/src/formats/dot/styles.js.map +1 -1
  163. package/dist/src/formats/gexf/dialog-metrics.d.ts +15 -0
  164. package/dist/src/formats/gexf/dialog-metrics.d.ts.map +1 -0
  165. package/dist/src/formats/gexf/dialog-metrics.js +59 -0
  166. package/dist/src/formats/gexf/dialog-metrics.js.map +1 -0
  167. package/dist/src/formats/gexf/importer.d.ts +7 -0
  168. package/dist/src/formats/gexf/importer.d.ts.map +1 -1
  169. package/dist/src/formats/gexf/importer.js +41 -5
  170. package/dist/src/formats/gexf/importer.js.map +1 -1
  171. package/dist/src/formats/gexf/preview.d.ts +77 -0
  172. package/dist/src/formats/gexf/preview.d.ts.map +1 -0
  173. package/dist/src/formats/gexf/preview.js +191 -0
  174. package/dist/src/formats/gexf/preview.js.map +1 -0
  175. package/dist/src/formats/gexf/schema.d.ts.map +1 -1
  176. package/dist/src/formats/gexf/schema.js +2 -1
  177. package/dist/src/formats/gexf/schema.js.map +1 -1
  178. package/dist/src/formats/gexf/styles.d.ts +58 -31
  179. package/dist/src/formats/gexf/styles.d.ts.map +1 -1
  180. package/dist/src/formats/gexf/styles.js +848 -225
  181. package/dist/src/formats/gexf/styles.js.map +1 -1
  182. package/dist/src/formats/gml/importer.d.ts +5 -2
  183. package/dist/src/formats/gml/importer.d.ts.map +1 -1
  184. package/dist/src/formats/gml/importer.js +258 -71
  185. package/dist/src/formats/gml/importer.js.map +1 -1
  186. package/dist/src/formats/gml/index.d.ts +1 -1
  187. package/dist/src/formats/gml/index.d.ts.map +1 -1
  188. package/dist/src/formats/gml/index.js +1 -1
  189. package/dist/src/formats/gml/index.js.map +1 -1
  190. package/dist/src/formats/gml/positions.d.ts +7 -0
  191. package/dist/src/formats/gml/positions.d.ts.map +1 -1
  192. package/dist/src/formats/gml/positions.js +29 -7
  193. package/dist/src/formats/gml/positions.js.map +1 -1
  194. package/dist/src/formats/gml/styles.d.ts.map +1 -1
  195. package/dist/src/formats/gml/styles.js +754 -102
  196. package/dist/src/formats/gml/styles.js.map +1 -1
  197. package/dist/src/formats/graphml/styles-plain.d.ts.map +1 -1
  198. package/dist/src/formats/graphml/styles-plain.js +6 -10
  199. package/dist/src/formats/graphml/styles-plain.js.map +1 -1
  200. package/dist/src/formats/graphml/styles-yed.d.ts +21 -15
  201. package/dist/src/formats/graphml/styles-yed.d.ts.map +1 -1
  202. package/dist/src/formats/graphml/styles-yed.js +695 -164
  203. package/dist/src/formats/graphml/styles-yed.js.map +1 -1
  204. package/dist/src/formats/graphml/styles-yfiles3.d.ts +1 -1
  205. package/dist/src/formats/graphml/styles-yfiles3.d.ts.map +1 -1
  206. package/dist/src/formats/graphml/styles-yfiles3.js +431 -64
  207. package/dist/src/formats/graphml/styles-yfiles3.js.map +1 -1
  208. package/dist/src/formats/graphml/yfiles.d.ts +3 -3
  209. package/dist/src/formats/graphml/yfiles.d.ts.map +1 -1
  210. package/dist/src/formats/graphml/yfiles.js +16 -6
  211. package/dist/src/formats/graphml/yfiles.js.map +1 -1
  212. package/dist/src/formats/json/dialect.d.ts +3 -2
  213. package/dist/src/formats/json/dialect.d.ts.map +1 -1
  214. package/dist/src/formats/json/dialect.js +39 -5
  215. package/dist/src/formats/json/dialect.js.map +1 -1
  216. package/dist/src/formats/json/importer.d.ts +13 -2
  217. package/dist/src/formats/json/importer.d.ts.map +1 -1
  218. package/dist/src/formats/json/importer.js +42 -6
  219. package/dist/src/formats/json/importer.js.map +1 -1
  220. package/dist/src/formats/json/index.d.ts +1 -1
  221. package/dist/src/formats/json/index.d.ts.map +1 -1
  222. package/dist/src/formats/json/index.js +1 -1
  223. package/dist/src/formats/json/index.js.map +1 -1
  224. package/dist/src/formats/json/positions.d.ts +5 -2
  225. package/dist/src/formats/json/positions.d.ts.map +1 -1
  226. package/dist/src/formats/json/positions.js +20 -4
  227. package/dist/src/formats/json/positions.js.map +1 -1
  228. package/dist/src/formats/json/styles.d.ts +12 -1
  229. package/dist/src/formats/json/styles.d.ts.map +1 -1
  230. package/dist/src/formats/json/styles.js +1843 -136
  231. package/dist/src/formats/json/styles.js.map +1 -1
  232. package/dist/src/formats/pajek/draw.d.ts +104 -0
  233. package/dist/src/formats/pajek/draw.d.ts.map +1 -0
  234. package/dist/src/formats/pajek/draw.js +382 -0
  235. package/dist/src/formats/pajek/draw.js.map +1 -0
  236. package/dist/src/formats/pajek/exporter.d.ts.map +1 -1
  237. package/dist/src/formats/pajek/exporter.js +70 -51
  238. package/dist/src/formats/pajek/exporter.js.map +1 -1
  239. package/dist/src/formats/pajek/importer.d.ts +9 -0
  240. package/dist/src/formats/pajek/importer.d.ts.map +1 -1
  241. package/dist/src/formats/pajek/importer.js +233 -102
  242. package/dist/src/formats/pajek/importer.js.map +1 -1
  243. package/dist/src/formats/pajek/index.d.ts +1 -0
  244. package/dist/src/formats/pajek/index.d.ts.map +1 -1
  245. package/dist/src/formats/pajek/index.js.map +1 -1
  246. package/dist/src/formats/pajek/styles.d.ts +15 -7
  247. package/dist/src/formats/pajek/styles.d.ts.map +1 -1
  248. package/dist/src/formats/pajek/styles.js +1395 -114
  249. package/dist/src/formats/pajek/styles.js.map +1 -1
  250. package/dist/src/formats/pajek/syntax.d.ts +10 -1
  251. package/dist/src/formats/pajek/syntax.d.ts.map +1 -1
  252. package/dist/src/formats/pajek/syntax.js +26 -2
  253. package/dist/src/formats/pajek/syntax.js.map +1 -1
  254. package/dist/src/formats/xgmml/emit.d.ts +1 -0
  255. package/dist/src/formats/xgmml/emit.d.ts.map +1 -1
  256. package/dist/src/formats/xgmml/emit.js +65 -5
  257. package/dist/src/formats/xgmml/emit.js.map +1 -1
  258. package/dist/src/formats/xgmml/styles.d.ts +23 -3
  259. package/dist/src/formats/xgmml/styles.d.ts.map +1 -1
  260. package/dist/src/formats/xgmml/styles.js +277 -60
  261. package/dist/src/formats/xgmml/styles.js.map +1 -1
  262. package/dist/src/index.d.ts +6 -5
  263. package/dist/src/index.d.ts.map +1 -1
  264. package/dist/src/index.js +6 -5
  265. package/dist/src/index.js.map +1 -1
  266. package/dist/src/positions/convert.d.ts.map +1 -1
  267. package/dist/src/positions/convert.js +11 -1
  268. package/dist/src/positions/convert.js.map +1 -1
  269. package/dist/src/positions/extract.d.ts.map +1 -1
  270. package/dist/src/positions/extract.js +53 -1
  271. package/dist/src/positions/extract.js.map +1 -1
  272. package/dist/src/positions/index.d.ts +1 -1
  273. package/dist/src/positions/index.d.ts.map +1 -1
  274. package/dist/src/positions/types.d.ts +59 -0
  275. package/dist/src/positions/types.d.ts.map +1 -1
  276. package/dist/src/sources/builtins.d.ts +1 -1
  277. package/dist/src/sources/builtins.d.ts.map +1 -1
  278. package/dist/src/sources/builtins.js +8 -2
  279. package/dist/src/sources/builtins.js.map +1 -1
  280. package/dist/src/sources/context.d.ts.map +1 -1
  281. package/dist/src/sources/context.js +1 -0
  282. package/dist/src/sources/context.js.map +1 -1
  283. package/dist/src/sources/credentials.d.ts +50 -1
  284. package/dist/src/sources/credentials.d.ts.map +1 -1
  285. package/dist/src/sources/credentials.js +69 -0
  286. package/dist/src/sources/credentials.js.map +1 -1
  287. package/dist/src/sources/cypher/descriptor.d.ts.map +1 -1
  288. package/dist/src/sources/cypher/descriptor.js +5 -0
  289. package/dist/src/sources/cypher/descriptor.js.map +1 -1
  290. package/dist/src/sources/cypher/index.d.ts.map +1 -1
  291. package/dist/src/sources/cypher/index.js +125 -18
  292. package/dist/src/sources/cypher/index.js.map +1 -1
  293. package/dist/src/sources/cypher/params.d.ts +1 -1
  294. package/dist/src/sources/cypher/params.d.ts.map +1 -1
  295. package/dist/src/sources/cypher/query-builder.d.ts +17 -0
  296. package/dist/src/sources/cypher/query-builder.d.ts.map +1 -1
  297. package/dist/src/sources/cypher/query-builder.js +31 -0
  298. package/dist/src/sources/cypher/query-builder.js.map +1 -1
  299. package/dist/src/sources/ids.d.ts +5 -0
  300. package/dist/src/sources/ids.d.ts.map +1 -1
  301. package/dist/src/sources/ids.js +5 -0
  302. package/dist/src/sources/ids.js.map +1 -1
  303. package/dist/src/sources/params.d.ts +3 -0
  304. package/dist/src/sources/params.d.ts.map +1 -1
  305. package/dist/src/sources/rest/descriptor.d.ts.map +1 -1
  306. package/dist/src/sources/rest/descriptor.js +9 -0
  307. package/dist/src/sources/rest/descriptor.js.map +1 -1
  308. package/dist/src/sources/rest/openalex.d.ts +4 -2
  309. package/dist/src/sources/rest/openalex.d.ts.map +1 -1
  310. package/dist/src/sources/rest/openalex.js +4 -2
  311. package/dist/src/sources/rest/openalex.js.map +1 -1
  312. package/dist/src/sources/rest/source.d.ts.map +1 -1
  313. package/dist/src/sources/rest/source.js +38 -0
  314. package/dist/src/sources/rest/source.js.map +1 -1
  315. package/dist/src/sources/run.d.ts +2 -0
  316. package/dist/src/sources/run.d.ts.map +1 -1
  317. package/dist/src/sources/run.js +30 -3
  318. package/dist/src/sources/run.js.map +1 -1
  319. package/dist/src/sources/sigv4.d.ts +5 -3
  320. package/dist/src/sources/sigv4.d.ts.map +1 -1
  321. package/dist/src/sources/sigv4.js +6 -4
  322. package/dist/src/sources/sigv4.js.map +1 -1
  323. package/dist/src/sources/sparql/descriptor.d.ts +10 -0
  324. package/dist/src/sources/sparql/descriptor.d.ts.map +1 -0
  325. package/dist/src/sources/sparql/descriptor.js +64 -0
  326. package/dist/src/sources/sparql/descriptor.js.map +1 -0
  327. package/dist/src/sources/sparql/index.d.ts +28 -0
  328. package/dist/src/sources/sparql/index.d.ts.map +1 -0
  329. package/dist/src/sources/sparql/index.js +327 -0
  330. package/dist/src/sources/sparql/index.js.map +1 -0
  331. package/dist/src/sources/sparql/ntriples.d.ts +69 -0
  332. package/dist/src/sources/sparql/ntriples.d.ts.map +1 -0
  333. package/dist/src/sources/sparql/ntriples.js +180 -0
  334. package/dist/src/sources/sparql/ntriples.js.map +1 -0
  335. package/dist/src/sources/sparql/params.d.ts +27 -0
  336. package/dist/src/sources/sparql/params.d.ts.map +1 -0
  337. package/dist/src/sources/sparql/params.js +5 -0
  338. package/dist/src/sources/sparql/params.js.map +1 -0
  339. package/dist/src/sources/sparql/query.d.ts +73 -0
  340. package/dist/src/sources/sparql/query.d.ts.map +1 -0
  341. package/dist/src/sources/sparql/query.js +164 -0
  342. package/dist/src/sources/sparql/query.js.map +1 -0
  343. package/dist/src/sources/types.d.ts +60 -0
  344. package/dist/src/sources/types.d.ts.map +1 -1
  345. package/dist/src/styles/annotations.d.ts +61 -5
  346. package/dist/src/styles/annotations.d.ts.map +1 -1
  347. package/dist/src/styles/annotations.js +130 -22
  348. package/dist/src/styles/annotations.js.map +1 -1
  349. package/dist/src/styles/canon/bends.d.ts +46 -0
  350. package/dist/src/styles/canon/bends.d.ts.map +1 -1
  351. package/dist/src/styles/canon/bends.js +123 -0
  352. package/dist/src/styles/canon/bends.js.map +1 -1
  353. package/dist/src/styles/canon/color-tables.d.ts +6 -1
  354. package/dist/src/styles/canon/color-tables.d.ts.map +1 -1
  355. package/dist/src/styles/canon/color-tables.js +10 -4
  356. package/dist/src/styles/canon/color-tables.js.map +1 -1
  357. package/dist/src/styles/canon/color.d.ts +3 -1
  358. package/dist/src/styles/canon/color.d.ts.map +1 -1
  359. package/dist/src/styles/canon/color.js +103 -3
  360. package/dist/src/styles/canon/color.js.map +1 -1
  361. package/dist/src/styles/canon/enums.d.ts +2 -2
  362. package/dist/src/styles/canon/enums.d.ts.map +1 -1
  363. package/dist/src/styles/canon/enums.js +89 -7
  364. package/dist/src/styles/canon/enums.js.map +1 -1
  365. package/dist/src/styles/canon/graphviz.d.ts +12 -3
  366. package/dist/src/styles/canon/graphviz.d.ts.map +1 -1
  367. package/dist/src/styles/canon/graphviz.js +57 -9
  368. package/dist/src/styles/canon/graphviz.js.map +1 -1
  369. package/dist/src/styles/canon/number.d.ts +8 -0
  370. package/dist/src/styles/canon/number.d.ts.map +1 -1
  371. package/dist/src/styles/canon/number.js +18 -0
  372. package/dist/src/styles/canon/number.js.map +1 -1
  373. package/dist/src/styles/canon/text.d.ts +29 -2
  374. package/dist/src/styles/canon/text.d.ts.map +1 -1
  375. package/dist/src/styles/canon/text.js +156 -16
  376. package/dist/src/styles/canon/text.js.map +1 -1
  377. package/dist/src/styles/codes.d.ts +2 -0
  378. package/dist/src/styles/codes.d.ts.map +1 -1
  379. package/dist/src/styles/codes.js +2 -0
  380. package/dist/src/styles/codes.js.map +1 -1
  381. package/dist/src/styles/cyjs/cascade.d.ts.map +1 -1
  382. package/dist/src/styles/cyjs/cascade.js +1139 -79
  383. package/dist/src/styles/cyjs/cascade.js.map +1 -1
  384. package/dist/src/styles/cyjs/defaults-table.d.ts.map +1 -1
  385. package/dist/src/styles/cyjs/defaults-table.js +4 -0
  386. package/dist/src/styles/cyjs/defaults-table.js.map +1 -1
  387. package/dist/src/styles/cyjs/emit.d.ts.map +1 -1
  388. package/dist/src/styles/cyjs/emit.js +232 -10
  389. package/dist/src/styles/cyjs/emit.js.map +1 -1
  390. package/dist/src/styles/cyjs/face.d.ts +20 -0
  391. package/dist/src/styles/cyjs/face.d.ts.map +1 -0
  392. package/dist/src/styles/cyjs/face.js +332 -0
  393. package/dist/src/styles/cyjs/face.js.map +1 -0
  394. package/dist/src/styles/cyjs/mappers.d.ts +44 -1
  395. package/dist/src/styles/cyjs/mappers.d.ts.map +1 -1
  396. package/dist/src/styles/cyjs/mappers.js +475 -26
  397. package/dist/src/styles/cyjs/mappers.js.map +1 -1
  398. package/dist/src/styles/cyjs/routes.d.ts +53 -0
  399. package/dist/src/styles/cyjs/routes.d.ts.map +1 -0
  400. package/dist/src/styles/cyjs/routes.js +360 -0
  401. package/dist/src/styles/cyjs/routes.js.map +1 -0
  402. package/dist/src/styles/cytoscape/charts.d.ts +23 -0
  403. package/dist/src/styles/cytoscape/charts.d.ts.map +1 -0
  404. package/dist/src/styles/cytoscape/charts.js +560 -0
  405. package/dist/src/styles/cytoscape/charts.js.map +1 -0
  406. package/dist/src/styles/cytoscape/emit.d.ts.map +1 -1
  407. package/dist/src/styles/cytoscape/emit.js +156 -48
  408. package/dist/src/styles/cytoscape/emit.js.map +1 -1
  409. package/dist/src/styles/cytoscape/lexicon.d.ts +91 -3
  410. package/dist/src/styles/cytoscape/lexicon.d.ts.map +1 -1
  411. package/dist/src/styles/cytoscape/lexicon.js +387 -77
  412. package/dist/src/styles/cytoscape/lexicon.js.map +1 -1
  413. package/dist/src/styles/cytoscape/mappings.d.ts +30 -0
  414. package/dist/src/styles/cytoscape/mappings.d.ts.map +1 -1
  415. package/dist/src/styles/cytoscape/mappings.js +92 -0
  416. package/dist/src/styles/cytoscape/mappings.js.map +1 -1
  417. package/dist/src/styles/cytoscape/resolve.d.ts +42 -2
  418. package/dist/src/styles/cytoscape/resolve.d.ts.map +1 -1
  419. package/dist/src/styles/cytoscape/resolve.js +623 -17
  420. package/dist/src/styles/cytoscape/resolve.js.map +1 -1
  421. package/dist/src/styles/defaults.d.ts +46 -26
  422. package/dist/src/styles/defaults.d.ts.map +1 -1
  423. package/dist/src/styles/defaults.js +308 -71
  424. package/dist/src/styles/defaults.js.map +1 -1
  425. package/dist/src/styles/index.d.ts +4 -3
  426. package/dist/src/styles/index.d.ts.map +1 -1
  427. package/dist/src/styles/index.js +3 -2
  428. package/dist/src/styles/index.js.map +1 -1
  429. package/dist/src/styles/internal.d.ts +1 -0
  430. package/dist/src/styles/internal.d.ts.map +1 -1
  431. package/dist/src/styles/internal.js +1 -0
  432. package/dist/src/styles/internal.js.map +1 -1
  433. package/dist/src/styles/io/generic.d.ts.map +1 -1
  434. package/dist/src/styles/io/generic.js +56 -16
  435. package/dist/src/styles/io/generic.js.map +1 -1
  436. package/dist/src/styles/io/round-trip.d.ts +56 -0
  437. package/dist/src/styles/io/round-trip.d.ts.map +1 -0
  438. package/dist/src/styles/io/round-trip.js +138 -0
  439. package/dist/src/styles/io/round-trip.js.map +1 -0
  440. package/dist/src/styles/io/writer.d.ts.map +1 -1
  441. package/dist/src/styles/io/writer.js +6 -1
  442. package/dist/src/styles/io/writer.js.map +1 -1
  443. package/dist/src/styles/notes.d.ts.map +1 -1
  444. package/dist/src/styles/notes.js +1 -0
  445. package/dist/src/styles/notes.js.map +1 -1
  446. package/dist/src/styles/plan/features.d.ts +1 -1
  447. package/dist/src/styles/plan/features.d.ts.map +1 -1
  448. package/dist/src/styles/plan/features.js +22 -2
  449. package/dist/src/styles/plan/features.js.map +1 -1
  450. package/dist/src/styles/plan/index.d.ts +1 -1
  451. package/dist/src/styles/plan/index.d.ts.map +1 -1
  452. package/dist/src/styles/plan/index.js +1 -1
  453. package/dist/src/styles/plan/index.js.map +1 -1
  454. package/dist/src/styles/plan/plan.d.ts.map +1 -1
  455. package/dist/src/styles/plan/plan.js +61 -4
  456. package/dist/src/styles/plan/plan.js.map +1 -1
  457. package/dist/src/styles/plan/resolve.d.ts +11 -0
  458. package/dist/src/styles/plan/resolve.d.ts.map +1 -1
  459. package/dist/src/styles/plan/resolve.js +40 -4
  460. package/dist/src/styles/plan/resolve.js.map +1 -1
  461. package/dist/src/styles/slots.d.ts +14 -0
  462. package/dist/src/styles/slots.d.ts.map +1 -0
  463. package/dist/src/styles/slots.js +20 -0
  464. package/dist/src/styles/slots.js.map +1 -0
  465. package/dist/src/styles/types.d.ts +687 -6
  466. package/dist/src/styles/types.d.ts.map +1 -1
  467. package/dist/src/styles/vocabulary.d.ts +3 -2
  468. package/dist/src/styles/vocabulary.d.ts.map +1 -1
  469. package/dist/src/styles/vocabulary.js +224 -0
  470. package/dist/src/styles/vocabulary.js.map +1 -1
  471. package/dist/styles.js +30 -239
  472. package/dist/styles.js.map +1 -1
  473. package/dist/xgmml.js +3 -3
  474. package/package.json +27 -7
  475. package/src/formats/cx/importer.ts +6 -1
  476. package/src/formats/cx/styles.ts +143 -9
  477. package/src/formats/cx2/importer.ts +1 -0
  478. package/src/formats/cx2/styles.ts +3 -1
  479. package/src/formats/cys/importer.ts +1 -0
  480. package/src/formats/cys/styles.ts +27 -5
  481. package/src/formats/dot/drawing.ts +799 -0
  482. package/src/formats/dot/exporter.ts +37 -1
  483. package/src/formats/dot/importer.ts +192 -36
  484. package/src/formats/dot/index.ts +3 -1
  485. package/src/formats/dot/label-places.ts +241 -0
  486. package/src/formats/dot/names.ts +15 -0
  487. package/src/formats/dot/record.ts +336 -0
  488. package/src/formats/dot/styles.ts +1702 -149
  489. package/src/formats/gexf/dialog-metrics.ts +61 -0
  490. package/src/formats/gexf/importer.ts +50 -5
  491. package/src/formats/gexf/preview.ts +217 -0
  492. package/src/formats/gexf/schema.ts +2 -1
  493. package/src/formats/gexf/styles.ts +1099 -245
  494. package/src/formats/gml/importer.ts +291 -76
  495. package/src/formats/gml/index.ts +1 -1
  496. package/src/formats/gml/positions.ts +29 -7
  497. package/src/formats/gml/styles.ts +852 -110
  498. package/src/formats/graphml/styles-plain.ts +6 -15
  499. package/src/formats/graphml/styles-yed.ts +765 -176
  500. package/src/formats/graphml/styles-yfiles3.ts +487 -63
  501. package/src/formats/graphml/yfiles.ts +19 -6
  502. package/src/formats/json/dialect.ts +41 -5
  503. package/src/formats/json/importer.ts +59 -7
  504. package/src/formats/json/index.ts +1 -0
  505. package/src/formats/json/positions.ts +22 -5
  506. package/src/formats/json/styles.ts +2123 -171
  507. package/src/formats/pajek/draw.ts +469 -0
  508. package/src/formats/pajek/exporter.ts +81 -49
  509. package/src/formats/pajek/importer.ts +278 -103
  510. package/src/formats/pajek/index.ts +1 -0
  511. package/src/formats/pajek/styles.ts +1506 -133
  512. package/src/formats/pajek/syntax.ts +27 -2
  513. package/src/formats/xgmml/emit.ts +73 -5
  514. package/src/formats/xgmml/styles.ts +330 -71
  515. package/src/index.ts +12 -1
  516. package/src/positions/convert.ts +12 -1
  517. package/src/positions/extract.ts +55 -1
  518. package/src/positions/index.ts +1 -0
  519. package/src/positions/types.ts +60 -0
  520. package/src/sources/builtins.ts +8 -1
  521. package/src/sources/context.ts +1 -0
  522. package/src/sources/credentials.ts +90 -1
  523. package/src/sources/cypher/descriptor.ts +7 -1
  524. package/src/sources/cypher/index.ts +149 -18
  525. package/src/sources/cypher/params.ts +1 -1
  526. package/src/sources/cypher/query-builder.ts +33 -0
  527. package/src/sources/ids.ts +6 -0
  528. package/src/sources/params.ts +3 -0
  529. package/src/sources/rest/descriptor.ts +9 -0
  530. package/src/sources/rest/openalex.ts +4 -2
  531. package/src/sources/rest/source.ts +41 -0
  532. package/src/sources/run.ts +35 -3
  533. package/src/sources/sigv4.ts +6 -4
  534. package/src/sources/sparql/descriptor.ts +67 -0
  535. package/src/sources/sparql/index.ts +371 -0
  536. package/src/sources/sparql/ntriples.ts +219 -0
  537. package/src/sources/sparql/params.ts +28 -0
  538. package/src/sources/sparql/query.ts +216 -0
  539. package/src/sources/types.ts +68 -0
  540. package/src/styles/annotations.ts +201 -27
  541. package/src/styles/canon/bends.ts +137 -0
  542. package/src/styles/canon/color-tables.ts +10 -4
  543. package/src/styles/canon/color.ts +105 -3
  544. package/src/styles/canon/enums.ts +107 -8
  545. package/src/styles/canon/graphviz.ts +71 -10
  546. package/src/styles/canon/number.ts +19 -0
  547. package/src/styles/canon/text.ts +187 -16
  548. package/src/styles/codes.ts +2 -0
  549. package/src/styles/cyjs/cascade.ts +1303 -84
  550. package/src/styles/cyjs/defaults-table.ts +4 -0
  551. package/src/styles/cyjs/emit.ts +268 -14
  552. package/src/styles/cyjs/face.ts +372 -0
  553. package/src/styles/cyjs/mappers.ts +506 -27
  554. package/src/styles/cyjs/routes.ts +432 -0
  555. package/src/styles/cytoscape/charts.ts +684 -0
  556. package/src/styles/cytoscape/emit.ts +170 -48
  557. package/src/styles/cytoscape/lexicon.ts +431 -78
  558. package/src/styles/cytoscape/mappings.ts +108 -0
  559. package/src/styles/cytoscape/resolve.ts +741 -17
  560. package/src/styles/defaults.ts +417 -108
  561. package/src/styles/index.ts +5 -0
  562. package/src/styles/internal.ts +1 -0
  563. package/src/styles/io/generic.ts +79 -23
  564. package/src/styles/io/round-trip.ts +202 -0
  565. package/src/styles/io/writer.ts +6 -1
  566. package/src/styles/notes.ts +1 -0
  567. package/src/styles/plan/features.ts +23 -2
  568. package/src/styles/plan/index.ts +1 -1
  569. package/src/styles/plan/plan.ts +69 -5
  570. package/src/styles/plan/resolve.ts +47 -4
  571. package/src/styles/slots.ts +25 -0
  572. package/src/styles/types.ts +698 -5
  573. package/src/styles/vocabulary.ts +232 -2
  574. package/dist/chunks/block-Cu22ewuS.js.map +0 -1
  575. package/dist/chunks/choose-Cdx6Enl2.js +0 -57
  576. package/dist/chunks/choose-Cdx6Enl2.js.map +0 -1
  577. package/dist/chunks/codes-CV_Bhcyi.js.map +0 -1
  578. package/dist/chunks/convert-BcQ8_jMo.js.map +0 -1
  579. package/dist/chunks/credentials-BiQsnMTb.js.map +0 -1
  580. package/dist/chunks/descriptor-BJ-W0Jd-.js.map +0 -1
  581. package/dist/chunks/emit-CD8xnY8s.js.map +0 -1
  582. package/dist/chunks/export-CZ7VRm4I.js.map +0 -1
  583. package/dist/chunks/exporter-bxxjOrDZ.js.map +0 -1
  584. package/dist/chunks/format-BMS-1Nxb.js +0 -64
  585. package/dist/chunks/format-BMS-1Nxb.js.map +0 -1
  586. package/dist/chunks/generic-CP6YD34u.js.map +0 -1
  587. package/dist/chunks/importer-B87_fmVx.js.map +0 -1
  588. package/dist/chunks/importer-CB_zV5_L.js.map +0 -1
  589. package/dist/chunks/importer-CVT-JyDE.js.map +0 -1
  590. package/dist/chunks/importer-Cyy6UseH.js.map +0 -1
  591. package/dist/chunks/importer-DPZDN40-.js.map +0 -1
  592. package/dist/chunks/importer-e3huMZbm.js.map +0 -1
  593. package/dist/chunks/lexicon-u2SI5xcx.js.map +0 -1
  594. package/dist/chunks/sigv4-LkAzsLAu.js.map +0 -1
  595. package/dist/chunks/styles-CaABMoO1.js.map +0 -1
  596. package/dist/chunks/styles-P_gmFAOi.js +0 -770
  597. package/dist/chunks/styles-P_gmFAOi.js.map +0 -1
  598. package/dist/chunks/styles-yed-Cs1nmrjn.js.map +0 -1
  599. package/dist/chunks/writer-DvHTl36J.js +0 -449
  600. package/dist/chunks/writer-DvHTl36J.js.map +0 -1
@@ -10,7 +10,7 @@ import { STYLE_ISSUE } from "../codes.js";
10
10
  import { StyleNotes } from "../notes.js";
11
11
  import { canonicalFor, degreeValues, refSource, resolveRules } from "../plan/resolve.js";
12
12
  import { STYLE_PROPERTIES } from "../vocabulary.js";
13
- import { JAVA_FONTS, vpStep } from "./lexicon.js";
13
+ import { JAVA_MONO, JAVA_SANS, JAVA_SERIF, javaFamily, vpStep } from "./lexicon.js";
14
14
  import { emptyCytoscapeStyle, } from "./mappings.js";
15
15
  /**
16
16
  * `#RRGGBB`.
@@ -47,6 +47,29 @@ function enumOut(table, near, upper, cytoscape = new Set()) {
47
47
  return Object.hasOwn(near, s) ? near[s] : Object.values(table)[0];
48
48
  };
49
49
  }
50
+ /** Where a node's border sits: Cytoscape's own place for it is inside the node's size, which it always draws. */
51
+ const BORDER_POSITION = "borderPosition";
52
+ /**
53
+ * What Cytoscape always draws and no file can change, per target: where a border sits, how far its zigzag and
54
+ * sine-wave strokes swing and how often they repeat (`ding-presentation-impl` `ZigzagStroke`, `SineWaveStroke`), and
55
+ * a label's box round its words alone, its lines one font tall. Nothing is written for them, and any other value is
56
+ * drawn as Cytoscape's.
57
+ */
58
+ const FIXED = {
59
+ node: new Map([
60
+ [BORDER_POSITION, "inside"],
61
+ ["borderWaveAmplitude", 10],
62
+ ["borderWavePeriod", 20],
63
+ ["labelPadding", 0],
64
+ ["labelLineHeight", 1],
65
+ ]),
66
+ edge: new Map([
67
+ ["waveAmplitude", 10],
68
+ ["wavePeriod", 20],
69
+ ["labelPadding", 0],
70
+ ["labelLineHeight", 1],
71
+ ]),
72
+ };
50
73
  const DESKTOP_SHAPES = {
51
74
  ellipse: "ELLIPSE",
52
75
  rectangle: "RECTANGLE",
@@ -84,7 +107,6 @@ const NEAR_LINES = { "dash-dot": "dashed", "long-dash": "dashed", zigzag: "solid
84
107
  const DESKTOP_ARROWS = {
85
108
  none: "NONE",
86
109
  triangle: "DELTA",
87
- vee: "ARROW",
88
110
  tee: "T",
89
111
  diamond: "DIAMOND",
90
112
  circle: "CIRCLE",
@@ -93,6 +115,8 @@ const DESKTOP_ARROWS = {
93
115
  "diamond-open": "OPEN_DIAMOND",
94
116
  "circle-open": "OPEN_CIRCLE",
95
117
  half: "HALF_TOP",
118
+ "other:cross-delta": "CROSS_DELTA",
119
+ "other:cross-open-delta": "CROSS_OPEN_DELTA",
96
120
  };
97
121
  const CX2_ARROWS = {
98
122
  none: "none",
@@ -106,10 +130,15 @@ const CX2_ARROWS = {
106
130
  "diamond-open": "open-diamond",
107
131
  "circle-open": "open-circle",
108
132
  half: "half-top",
133
+ // as Cytoscape 3.10.5 writes CROSS_DELTA and CROSS_OPEN_DELTA in CX2
134
+ "other:cross-delta": "triangle-cross",
135
+ "other:cross-open-delta": "cross_open_delta",
109
136
  };
110
137
  const NEAR_ARROWS = { crow: "vee", inverted: "triangle" };
138
+ // desktop has no open vee: its ARROW, the nearest, is drawn as a filled delta and read back as one
139
+ const DESKTOP_NEAR_ARROWS = { crow: "ARROW", inverted: "DELTA", vee: "ARROW" };
111
140
  /** The Cytoscape arrow names no canonical arrow names, which Cytoscape's readers keep as `other:` values. */
112
- const CY_OTHER_ARROWS = new Set(["open-square", "open-half-circle", "half-circle"]);
141
+ const CY_OTHER_ARROWS = new Set(["open-square", "open-half-circle", "half-circle", "half-bottom"]);
113
142
  /** The Cytoscape line types no canonical line style names. */
114
143
  const CY_OTHER_LINES = new Set([
115
144
  "backward-slash",
@@ -120,29 +149,41 @@ const CY_OTHER_LINES = new Set([
120
149
  ]);
121
150
  /** The Cytoscape line types a border can take that no canonical border style names. */
122
151
  const CY_OTHER_BORDERS = new Set([...CY_OTHER_LINES, "zigzag", "sinewave"]);
123
- /** A label position: the node's anchor and the label's opposite anchor. */
124
- const DESKTOP_POSITIONS = {
125
- center: "C,C,c,0.00,0.00",
126
- top: "N,S,c,0.00,0.00",
127
- bottom: "S,N,c,0.00,0.00",
128
- left: "W,E,c,0.00,0.00",
129
- right: "E,W,c,0.00,0.00",
130
- "top-left": "NW,SE,c,0.00,0.00",
131
- "top-right": "NE,SW,c,0.00,0.00",
132
- "bottom-left": "SW,NE,c,0.00,0.00",
133
- "bottom-right": "SE,NW,c,0.00,0.00",
134
- "inside-top": "N,N,c,0.00,0.00",
152
+ /**
153
+ * A label position as the point of the node and the point of the label's box pinned to it, in desktop's anchor
154
+ * letters: beside the node, the label's opposite point; inside it, the same point.
155
+ */
156
+ const POSITION_ANCHORS = {
157
+ center: ["C", "C"],
158
+ top: ["N", "S"],
159
+ bottom: ["S", "N"],
160
+ left: ["W", "E"],
161
+ right: ["E", "W"],
162
+ "top-left": ["NW", "SE"],
163
+ "top-right": ["NE", "SW"],
164
+ "bottom-left": ["SW", "NE"],
165
+ "bottom-right": ["SE", "NW"],
166
+ "inside-top": ["N", "N"],
167
+ "inside-bottom": ["S", "S"],
168
+ "inside-left": ["W", "W"],
169
+ "inside-right": ["E", "E"],
170
+ "inside-top-left": ["NW", "NW"],
171
+ "inside-top-right": ["NE", "NE"],
172
+ "inside-bottom-left": ["SW", "SW"],
173
+ "inside-bottom-right": ["SE", "SE"],
135
174
  };
136
- const CX2_ANCHORS = {
137
- center: ["center", "center"],
138
- top: ["center", "top"],
139
- bottom: ["center", "bottom"],
140
- left: ["left", "center"],
141
- right: ["right", "center"],
142
- "top-left": ["left", "top"],
143
- "top-right": ["right", "top"],
144
- "bottom-left": ["left", "bottom"],
145
- "bottom-right": ["right", "bottom"],
175
+ const DESKTOP_POSITIONS = Object.fromEntries(Object.entries(POSITION_ANCHORS).map(([k, [node, label]]) => [k, `${node},${label},c,0.00,0.00`]));
176
+ /** A desktop anchor letter as CX2's horizontal and vertical words. */
177
+ const CX2_WORDS = {
178
+ C: ["center", "center"],
179
+ N: ["center", "top"],
180
+ S: ["center", "bottom"],
181
+ W: ["left", "center"],
182
+ E: ["right", "center"],
183
+ NW: ["left", "top"],
184
+ NE: ["right", "top"],
185
+ SW: ["left", "bottom"],
186
+ SE: ["right", "bottom"],
146
187
  };
147
188
  const desktopNumber = String;
148
189
  const cx2Number = (v) => v;
@@ -176,6 +217,7 @@ const WRITERS = {
176
217
  ["fill", { vp: "NODE_FILL_COLOR", write: colorOut }],
177
218
  ["fillOpacity", { vp: "NODE_TRANSPARENCY", write: opacity255 }],
178
219
  ["borderColor", { vp: "NODE_BORDER_PAINT", write: colorOut }],
220
+ ["borderOpacity", { vp: "NODE_BORDER_TRANSPARENCY", write: opacity255 }],
179
221
  ["borderWidth", { vp: "NODE_BORDER_WIDTH", write: desktopNumber }],
180
222
  [
181
223
  "borderStyle",
@@ -190,7 +232,9 @@ const WRITERS = {
190
232
  ["label", { vp: "NODE_LABEL", write: textOut }],
191
233
  ["labelColor", { vp: "NODE_LABEL_COLOR", write: colorOut }],
192
234
  ["labelSize", { vp: "NODE_LABEL_FONT_SIZE", write: whole(desktopNumber) }],
235
+ ["labelWrapWidth", { vp: "NODE_LABEL_WIDTH", write: desktopNumber }],
193
236
  ["labelPosition", { vp: "NODE_LABEL_POSITION", write: enumOut(DESKTOP_POSITIONS, {}, false) }],
237
+ ["labelRotation", { vp: "NODE_LABEL_ROTATION", write: desktopNumber }],
194
238
  ["tooltip", { vp: "NODE_TOOLTIP", write: textOut }],
195
239
  ["visible", { vp: "NODE_VISIBLE", write: desktopBool }],
196
240
  ]),
@@ -209,14 +253,14 @@ const WRITERS = {
209
253
  "sourceArrow",
210
254
  {
211
255
  vp: "EDGE_SOURCE_ARROW_SHAPE",
212
- write: enumOut(DESKTOP_ARROWS, nearIn(DESKTOP_ARROWS, NEAR_ARROWS), true, CY_OTHER_ARROWS),
256
+ write: enumOut(DESKTOP_ARROWS, DESKTOP_NEAR_ARROWS, true, CY_OTHER_ARROWS),
213
257
  },
214
258
  ],
215
259
  [
216
260
  "targetArrow",
217
261
  {
218
262
  vp: "EDGE_TARGET_ARROW_SHAPE",
219
- write: enumOut(DESKTOP_ARROWS, nearIn(DESKTOP_ARROWS, NEAR_ARROWS), true, CY_OTHER_ARROWS),
263
+ write: enumOut(DESKTOP_ARROWS, DESKTOP_NEAR_ARROWS, true, CY_OTHER_ARROWS),
220
264
  },
221
265
  ],
222
266
  ["sourceArrowColor", { vp: "EDGE_SOURCE_ARROW_UNSELECTED_PAINT", write: colorOut }],
@@ -234,6 +278,7 @@ const WRITERS = {
234
278
  ["fill", { vp: "NODE_BACKGROUND_COLOR", write: colorOut }],
235
279
  ["fillOpacity", { vp: "NODE_BACKGROUND_OPACITY", write: cx2Number }],
236
280
  ["borderColor", { vp: "NODE_BORDER_COLOR", write: colorOut }],
281
+ ["borderOpacity", { vp: "NODE_BORDER_OPACITY", write: cx2Number }],
237
282
  ["borderWidth", { vp: "NODE_BORDER_WIDTH", write: cx2Number }],
238
283
  [
239
284
  "borderStyle",
@@ -254,7 +299,9 @@ const WRITERS = {
254
299
  ["label", { vp: "NODE_LABEL", write: textOut }],
255
300
  ["labelColor", { vp: "NODE_LABEL_COLOR", write: colorOut }],
256
301
  ["labelSize", { vp: "NODE_LABEL_FONT_SIZE", write: whole(cx2Number) }],
302
+ ["labelWrapWidth", { vp: "NODE_LABEL_MAX_WIDTH", write: cx2Number }],
257
303
  ["labelPosition", { vp: "NODE_LABEL_POSITION", write: cx2Position }],
304
+ ["labelRotation", { vp: "NODE_LABEL_ROTATION", write: cx2Number }],
258
305
  ["visible", { vp: "NODE_VISIBILITY", write: (v) => (v === true ? "element" : "none") }],
259
306
  ]),
260
307
  edge: new Map([
@@ -293,20 +340,17 @@ const WRITERS = {
293
340
  },
294
341
  };
295
342
  /**
296
- * CX2's label position object; `inside-top`, which CX2's anchors cannot tell from `top`, is written as `top`.
343
+ * CX2's label position object.
297
344
  * @param v - a canonical position
298
- * @param approx - records the approximation
299
345
  * @returns the object
300
346
  */
301
- function cx2Position(v, approx) {
302
- if (v === "inside-top") {
303
- approx();
304
- v = "top";
305
- }
306
- const [h, vert] = Object.hasOwn(CX2_ANCHORS, String(v)) ? CX2_ANCHORS[String(v)] : ["center", "center"];
347
+ function cx2Position(v) {
348
+ const [node, label] = Object.hasOwn(POSITION_ANCHORS, String(v)) ? POSITION_ANCHORS[String(v)] : ["C", "C"];
349
+ const [h, vert] = CX2_WORDS[node];
350
+ const [ha, va] = CX2_WORDS[label];
307
351
  return {
308
- HORIZONTAL_ALIGN: "center",
309
- VERTICAL_ALIGN: "center",
352
+ HORIZONTAL_ALIGN: ha,
353
+ VERTICAL_ALIGN: va,
310
354
  HORIZONTAL_ANCHOR: h,
311
355
  VERTICAL_ANCHOR: vert,
312
356
  MARGIN_X: 0,
@@ -317,10 +361,12 @@ function cx2Position(v, approx) {
317
361
  /** The font properties, written together into one font face. */
318
362
  const FONT_PROPS = ["labelFont", "labelWeight", "labelItalic"];
319
363
  const FONT_VP = { node: "NODE_LABEL_FONT_FACE", edge: "EDGE_LABEL_FONT_FACE" };
364
+ // A CSS generic family is written as it is: Java draws a name it does not know in Dialog, and reads it back the same.
320
365
  const CSS_TO_JAVA = {
321
- "sans-serif": "SansSerif",
322
- serif: "Serif",
323
- monospace: "Monospaced",
366
+ // the families the reader gives Java's logical fonts
367
+ [JAVA_SANS]: "SansSerif",
368
+ [JAVA_SERIF]: "Serif",
369
+ [JAVA_MONO]: "Monospaced",
324
370
  };
325
371
  /**
326
372
  * A font face in a dialect's spelling.
@@ -342,11 +388,16 @@ function fontOut(dialect, family, weight, italic, approx) {
342
388
  return { FONT_FAMILY: fam, FONT_STYLE: it ? "italic" : "normal", FONT_WEIGHT: bold ? "bold" : "normal" };
343
389
  }
344
390
  const first = fam.includes(",") ? fam.split(",")[0].trim() : fam;
345
- const java = Object.hasOwn(CSS_TO_JAVA, first) ? CSS_TO_JAVA[first] : first;
391
+ const asWritten = Object.hasOwn(CSS_TO_JAVA, first) ? CSS_TO_JAVA[first] : first;
392
+ const java = Object.hasOwn(CSS_TO_JAVA, fam) ? CSS_TO_JAVA[fam] : asWritten;
346
393
  if (fontReadsAs(java) !== fam) {
347
394
  approx();
348
395
  }
349
- return `${java},${javaFontStyle(bold, it)},12`;
396
+ // desktop reads the face from the name alone: bold and italic go on it as a Java face suffix, as desktop itself
397
+ // writes them (`SansSerif.bold,bold,12`); the style word after it is not read (`FontVisualProperty`)
398
+ const style = javaFontStyle(bold, it);
399
+ const face = style === "plain" ? java : `${java}.${style}`;
400
+ return `${face},${bold ? "bold" : "plain"},12`;
350
401
  }
351
402
  /**
352
403
  * The style part of a Java font face.
@@ -367,8 +418,7 @@ function javaFontStyle(bold, italic) {
367
418
  * @returns the family
368
419
  */
369
420
  function fontReadsAs(name) {
370
- const family = name.replace(/\.(?:bold|italic|plain|bolditalic)$/i, "");
371
- return JAVA_FONTS.get(family.toLowerCase()) ?? family;
421
+ return javaFamily(name.replace(/\.(?:bold|italic|plain|bolditalic)$/i, ""));
372
422
  }
373
423
  /**
374
424
  * The default name of the column a mapping over a non-data column reads.
@@ -452,6 +502,23 @@ function targetEmit(target, extracted, snapshot, options, notes) {
452
502
  },
453
503
  };
454
504
  }
505
+ /** The properties Cytoscape draws one way only, with that way: what is drawn so needs nothing written. */
506
+ const DRAWN_SO = new Map([
507
+ // it measures each word with a space after it when it wraps a label
508
+ ["labelWrapTrailingSpace", true],
509
+ // it curves an edge through its bends' midpoints
510
+ ["bendCurve", "midpoints"],
511
+ ]);
512
+ /**
513
+ * Whether every element's value of a property is how Cytoscape draws it anyway, so there is nothing to write.
514
+ * @param p - the property
515
+ * @param values - each element's value
516
+ * @returns true when nothing is lost by not writing it
517
+ */
518
+ function drawnSo(p, values) {
519
+ const way = DRAWN_SO.get(p);
520
+ return way !== undefined && values.every((v) => v === null || v === way);
521
+ }
455
522
  /**
456
523
  * Emits one target.
457
524
  * @param e - the target's emission
@@ -463,7 +530,16 @@ function emitTarget(e, style, bypasses, columns) {
463
530
  const { target, notes, truth } = e;
464
531
  const writers = WRITERS[e.options.dialect][target];
465
532
  for (const [p, values] of truth) {
466
- if (!writers.has(p) && !FONT_PROPS.includes(p)) {
533
+ const fixed = FIXED[target].get(p);
534
+ if (fixed !== undefined) {
535
+ // Cytoscape draws every border inside its node's size and every wave alike: nothing to write, and any
536
+ // other value is lost
537
+ const other = values.filter((v) => v !== null && v !== fixed).length;
538
+ if (other > 0) {
539
+ notes.add(STYLE_ISSUE.APPROXIMATED, target, p, { count: other });
540
+ }
541
+ }
542
+ else if (!writers.has(p) && !FONT_PROPS.includes(p) && !drawnSo(p, values)) {
467
543
  const count = values.filter((v) => v !== null).length;
468
544
  notes.add(STYLE_ISSUE.NOT_WRITTEN, target, p, { count: Math.max(count, 1) });
469
545
  }
@@ -673,7 +749,7 @@ function cytoscapeMapping(e, p, m, w, columns) {
673
749
  return {
674
750
  kind: "discrete",
675
751
  column,
676
- type: typeOf(m.table.map(([k]) => k)),
752
+ type: keyType(e, m.by, m.table.map(([k]) => k)),
677
753
  table: m.table.map(([k, v]) => [k, write(v)]),
678
754
  };
679
755
  }
@@ -742,7 +818,12 @@ function passthroughMapping(e, p, by, column, write) {
742
818
  }
743
819
  }
744
820
  const table = Array.from(seen);
745
- return { kind: "discrete", column, type: typeOf(table.map(([k]) => k)), table };
821
+ return {
822
+ kind: "discrete",
823
+ column,
824
+ type: keyType(e, by, table.map(([k]) => k)),
825
+ table,
826
+ };
746
827
  }
747
828
  /**
748
829
  * A continuous mapping as CX2 holds it: CX2's intervals give the value exactly at a point only as the value just
@@ -774,6 +855,27 @@ function cx2Points(m, approx) {
774
855
  function isScalar(v) {
775
856
  return typeof v === "string" || typeof v === "boolean" || (typeof v === "number" && Number.isFinite(v));
776
857
  }
858
+ /**
859
+ * The type a discrete mapping's keys are written with: `double` over a column the exporter writes as Double
860
+ * (Cytoscape compares an Integer key with a Double cell and finds no match), else the keys' own type.
861
+ * @param e - the target's emission
862
+ * @param by - the column the mapping reads
863
+ * @param keys - the keys
864
+ * @returns the type
865
+ */
866
+ function keyType(e, by, keys) {
867
+ const type = typeOf(keys);
868
+ if (type !== "integer") {
869
+ return type;
870
+ }
871
+ if (!("data" in by)) {
872
+ // a column the exporter adds holds numbers as Double
873
+ return "double";
874
+ }
875
+ const meta = (e.target === "node" ? e.snapshot.nodes : e.snapshot.edges).get(by.data)?.meta;
876
+ const floating = (meta?.dtype === "f32" || meta?.dtype === "f64") && meta.origin?.type !== "long";
877
+ return floating ? "double" : type;
878
+ }
777
879
  /**
778
880
  * Cytoscape's attribute type of a set of values: `integer`, `double`, `boolean` or `string`.
779
881
  * @param values - the values
@@ -1045,7 +1147,13 @@ function mappingXml(m) {
1045
1147
  * @returns the properties
1046
1148
  */
1047
1149
  export function cytoscapeWritableProperties(target, dialect) {
1048
- return [...WRITERS[dialect][target].keys(), ...FONT_PROPS];
1150
+ // a label wrapped as Cytoscape wraps it needs nothing written: emitTarget notes any other value
1151
+ return [
1152
+ ...WRITERS[dialect][target].keys(),
1153
+ ...FONT_PROPS,
1154
+ ...FIXED[target].keys(),
1155
+ ...(target === "node" ? ["labelWrapTrailingSpace"] : ["bendCurve"]),
1156
+ ];
1049
1157
  }
1050
1158
  /**
1051
1159
  * One element's values as Cytoscape visual properties in a dialect's spelling, for a writer of per-element values.
@@ -1 +1 @@
1
- {"version":3,"file":"emit.js","sourceRoot":"","sources":["../../../../src/styles/cytoscape/emit.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"emit.js","sourceRoot":"","sources":["../../../../src/styles/cytoscape/emit.ts"],"names":[],"mappings":"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"}