@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
@@ -1,6 +1,293 @@
1
- import { an as keptForStyles } from "./report-CgdsL9Hb.js";
2
- import { S as StyleBudget } from "./emit-CD8xnY8s.js";
3
- import { C as STYLE_PROPERTIES, I as interpolate, J as within, u as StyleNotes, t as toolDefaults, q as isStyleValue, K as describeFeature, a as STYLE_ISSUE, L as refSource, N as isShortPredicate, O as resolveRules, P as matches, Q as evalContinuous, R as numberOf, d as canonicalFor, s as styleFingerprint, v as parseStyleBlock, x as blockStyles, z as featuresOf, p as plainCell, S as STYLE_BLOCK_NAME, U as styleLengthUnit, g as canonColor, y as colorOpacity, l as canonEnum, o as canonText, m as canonBoolean, j as canonOpacity, h as canonNumber, H as DOT_POINTS_PER_INCH } from "./block-Cu22ewuS.js";
1
+ import { an as keptForStyles } from "./report-CwMfYa9J.js";
2
+ import { S as StyleBudget } from "./emit-7Jkpg0yd.js";
3
+ import { w as STYLE_PROPERTIES, N as interpolate, O as within, h as StyleNotes, y as toolDefaults, l as isStyleValue, P as describeFeature, b as STYLE_ISSUE, Q as refSource, R as isShortPredicate, U as resolveRules, V as matches, W as evalContinuous, X as numberOf, C as canonicalFor, o as styleFingerprint, t as featuresOf, m as parseStyleBlock, q as blockStyles, Y as styleLengthUnit, p as plainCell, S as STYLE_BLOCK_NAME, d as canonColor, e as colorOpacity, a as canonEnum, f as canonText, k as canonBoolean, j as canonOpacity, g as canonSigned, c as canonNumber, H as DOT_POINTS_PER_INCH } from "./block-yl0f_qLO.js";
4
+ const CYTOSCAPE_ANNOTATIONS_COLUMN = "__Annotations";
5
+ const TYPE_PREFIX = "org.cytoscape.view.presentation.annotations.";
6
+ const SHAPES = /* @__PURE__ */ new Map([
7
+ ["rectangle", "rectangle"],
8
+ ["roundedrectangle", "round-rectangle"],
9
+ ["rounded_rectangle", "round-rectangle"],
10
+ ["ellipse", "ellipse"],
11
+ ["triangle", "triangle"],
12
+ ["diamond", "diamond"],
13
+ ["pentagon", "pentagon"],
14
+ ["hexagon", "hexagon"],
15
+ ["octagon", "octagon"],
16
+ ["parallelogram", "parallelogram"],
17
+ ["star5", "star"],
18
+ ["star6", "star"],
19
+ ["v", "vee"]
20
+ ]);
21
+ const ARROW_ORDER = [
22
+ "circle",
23
+ "triangle",
24
+ "vee",
25
+ "diamond",
26
+ "triangle-open",
27
+ "none",
28
+ "other:x",
29
+ "triangle",
30
+ "tee"
31
+ ];
32
+ const ARROW_LENGTHS = [10, 17, 17, 17, 17, 0, 10, 5, 0];
33
+ const ARROW_WIDTH = 10;
34
+ const ARROW_NAMES = /* @__PURE__ */ new Map([
35
+ ["circle", "circle"],
36
+ ["closed arrow", "triangle"],
37
+ ["concave arrow", "vee"],
38
+ ["diamond", "diamond"],
39
+ ["open arrow", "triangle-open"],
40
+ ["no arrow", "none"],
41
+ ["pipe", "tee"],
42
+ ["triangle", "triangle"],
43
+ ["t", "tee"],
44
+ ["t-shape", "tee"],
45
+ ["triangular head", "triangle"],
46
+ ["x", "other:x"],
47
+ ["x arrow", "other:x"]
48
+ ]);
49
+ function readAnnotations(snapshot) {
50
+ const { graph } = snapshot;
51
+ const cell = graph.has(CYTOSCAPE_ANNOTATIONS_COLUMN) ? graph.value(CYTOSCAPE_ANNOTATIONS_COLUMN, 0) : null;
52
+ const entries = cellStrings(cell);
53
+ const fields = entries.map(parseEntry);
54
+ const byId = new Map(fields.map((f, i) => [f.get("uuid") ?? String(i), f]));
55
+ const annotations = [];
56
+ const skipped = /* @__PURE__ */ new Set();
57
+ fields.forEach((f, i) => {
58
+ const read = readOne(f, String(i), byId);
59
+ if (read === null) {
60
+ skipped.add((f.get("type") ?? "").replace(TYPE_PREFIX, ""));
61
+ } else {
62
+ annotations.push(...read);
63
+ }
64
+ });
65
+ return { annotations, skipped: [...skipped] };
66
+ }
67
+ function readImageAnnotations(snapshot) {
68
+ const { graph } = snapshot;
69
+ const cell = graph.has(CYTOSCAPE_ANNOTATIONS_COLUMN) ? graph.value(CYTOSCAPE_ANNOTATIONS_COLUMN, 0) : null;
70
+ return cellStrings(cell).flatMap((entry, i) => {
71
+ const f = parseEntry(entry);
72
+ const url = f.get("URL") ?? "";
73
+ if ((f.get("type") ?? "").replace(TYPE_PREFIX, "") !== "ImageAnnotation" || url === "") {
74
+ return [];
75
+ }
76
+ const zoom = positive(f.get("zoom")) ?? 1;
77
+ const x = num(f.get("x")) ?? 0;
78
+ const y = num(f.get("y")) ?? 0;
79
+ const width = (positive(f.get("width")) ?? 0) / zoom;
80
+ const height = (positive(f.get("height")) ?? 0) / zoom;
81
+ const border = javaColor(f.get("edgeColor")) ?? { color: "#000000", alpha: 1 };
82
+ const opacity = num(f.get("opacity"));
83
+ return [
84
+ {
85
+ id: f.get("uuid") ?? String(i),
86
+ layer: f.get("canvas") === "background" ? "background" : "foreground",
87
+ z: num(f.get("z")) ?? 0,
88
+ kind: "image",
89
+ rotation: num(f.get("rotation")) ?? 0,
90
+ center: { x: x + width / 2, y: -(y + height / 2) },
91
+ width,
92
+ height,
93
+ url,
94
+ opacity: opacity === null ? 1 : Math.min(1, Math.max(0, opacity)),
95
+ borderColor: border.color,
96
+ borderOpacity: border.alpha * percent(f.get("edgeOpacity")),
97
+ borderWidth: (num(f.get("edgeThickness")) ?? 0) / zoom
98
+ }
99
+ ];
100
+ });
101
+ }
102
+ function cellStrings(cell) {
103
+ if (typeof cell === "string") {
104
+ return cell.split(/[\r\n]+/).filter((s) => s !== "");
105
+ }
106
+ if (cell !== null && typeof cell === "object" && Symbol.iterator in cell) {
107
+ return Array.from(cell).filter((s) => typeof s === "string" && s !== "");
108
+ }
109
+ return [];
110
+ }
111
+ function parseEntry(entry) {
112
+ const out = /* @__PURE__ */ new Map();
113
+ for (const part of entry.split("|")) {
114
+ const eq = part.indexOf("=");
115
+ if (eq > 0) {
116
+ out.set(part.slice(0, eq), part.slice(eq + 1));
117
+ }
118
+ }
119
+ return out;
120
+ }
121
+ function readOne(f, index, byId) {
122
+ const type = (f.get("type") ?? "").replace(TYPE_PREFIX, "");
123
+ const zoom = positive(f.get("zoom")) ?? 1;
124
+ const base = {
125
+ id: f.get("uuid") ?? index,
126
+ layer: f.get("canvas") === "background" ? "background" : "foreground",
127
+ z: num(f.get("z")) ?? 0
128
+ };
129
+ switch (type) {
130
+ case "ShapeAnnotation":
131
+ return [shapeOf(f, base, zoom)];
132
+ case "TextAnnotation":
133
+ return [textOf(f, base, zoom, { x: num(f.get("x")) ?? 0, y: -(num(f.get("y")) ?? 0) }, "top-left")];
134
+ case "BoundedTextAnnotation": {
135
+ const shape = shapeOf(f, base, zoom);
136
+ return [shape, textOf(f, { ...base, id: `${base.id}:text` }, zoom, shape.center, "center")];
137
+ }
138
+ case "ArrowAnnotation":
139
+ return arrowOf(f, base, zoom, byId);
140
+ default:
141
+ return null;
142
+ }
143
+ }
144
+ function shapeOf(f, base, zoom) {
145
+ const x = num(f.get("x")) ?? 0;
146
+ const y = num(f.get("y")) ?? 0;
147
+ const width = (positive(f.get("width")) ?? 0) / zoom;
148
+ const height = (positive(f.get("height")) ?? 0) / zoom;
149
+ const fill = javaColor(f.get("fillColor"));
150
+ const border = javaColor(f.get("edgeColor")) ?? { color: "#000000", alpha: 1 };
151
+ return {
152
+ ...base,
153
+ kind: "shape",
154
+ rotation: num(f.get("rotation")) ?? 0,
155
+ center: { x: x + width / 2, y: -(y + height / 2) },
156
+ width,
157
+ height,
158
+ shape: SHAPES.get((f.get("shapeType") ?? "rectangle").toLowerCase()) ?? "rectangle",
159
+ fill: fill?.color ?? null,
160
+ fillOpacity: fill === null ? 0 : fill.alpha * percent(f.get("fillOpacity")),
161
+ borderColor: border.color,
162
+ borderOpacity: border.alpha * percent(f.get("edgeOpacity")),
163
+ borderWidth: (num(f.get("edgeThickness")) ?? 1) / zoom
164
+ };
165
+ }
166
+ function textOf(f, base, zoom, at, anchor) {
167
+ const style = num(f.get("fontStyle")) ?? 0;
168
+ const color = javaColor(f.get("color")) ?? { color: "#000000", alpha: 1 };
169
+ return {
170
+ ...base,
171
+ kind: "text",
172
+ rotation: num(f.get("rotation")) ?? 0,
173
+ text: f.get("text") ?? "",
174
+ at,
175
+ anchor,
176
+ fontSize: (positive(f.get("fontSize")) ?? 12) / zoom,
177
+ fontFamily: f.get("fontFamily") ?? "sans-serif",
178
+ bold: (style & 1) !== 0,
179
+ italic: (style & 2) !== 0,
180
+ color: color.color,
181
+ opacity: color.alpha
182
+ };
183
+ }
184
+ function arrowOf(f, base, zoom, byId) {
185
+ const sourceBox = boxOf(byId.get(f.get("sourceAnnotation") ?? ""), zoom);
186
+ const targetBox = boxOf(byId.get(f.get("targetAnnotation") ?? ""), zoom);
187
+ const toPoint = point(f.get("targetPoint")) ?? point(f.get("targetNode"));
188
+ const corner = { x: num(f.get("x")) ?? 0, y: num(f.get("y")) ?? 0 };
189
+ const sourceCenter = sourceBox === null ? corner : centerOfBox(sourceBox);
190
+ const aim = toPoint ?? (targetBox === null ? null : centerOfBox(targetBox));
191
+ if (aim === null) {
192
+ return null;
193
+ }
194
+ const from = sourceBox !== null && sourceBox.width > 0 && sourceBox.height > 0 ? facing(sourceBox, aim) : { x: aim.x > corner.x ? corner.x : sourceCenter.x, y: aim.y > corner.y ? corner.y : sourceCenter.y };
195
+ const to = toPoint ?? facing(targetBox ?? { x: aim.x, y: aim.y, width: 0, height: 0 }, sourceCenter);
196
+ const color = javaColor(f.get("lineColor")) ?? { color: "#000000", alpha: 1 };
197
+ const sourceColor = javaColor(f.get("sourceColor"))?.color ?? color.color;
198
+ const targetColor = javaColor(f.get("targetColor"))?.color ?? color.color;
199
+ return [
200
+ {
201
+ ...base,
202
+ kind: "arrow",
203
+ from: { x: from.x, y: -from.y },
204
+ to: { x: to.x, y: -to.y },
205
+ color: color.color,
206
+ opacity: color.alpha * percent(f.get("lineOpacity")),
207
+ width: Math.max(1, (positive(f.get("lineThickness")) ?? 1) / zoom / 2),
208
+ sourceArrow: arrowShape(f.get("sourceType")),
209
+ targetArrow: arrowShape(f.get("targetType")),
210
+ sourceSize: positive(f.get("sourceSize")) ?? 1,
211
+ targetSize: positive(f.get("targetSize")) ?? 1,
212
+ sourceColor,
213
+ targetColor,
214
+ ...heads("source", f.get("sourceType"), positive(f.get("sourceSize")) ?? 1),
215
+ ...heads("target", f.get("targetType"), positive(f.get("targetSize")) ?? 1)
216
+ }
217
+ ];
218
+ }
219
+ function heads(end, type, size) {
220
+ const shape = arrowShape(type);
221
+ if (shape === "none") {
222
+ return {};
223
+ }
224
+ const k = num(type) ?? ARROW_ORDER.indexOf(shape);
225
+ const length = ARROW_LENGTHS[k] ?? ARROW_LENGTHS[1];
226
+ return { [`${end}HeadLength`]: length * size, [`${end}HeadWidth`]: ARROW_WIDTH * size };
227
+ }
228
+ function boxOf(f, zoom) {
229
+ if (f === void 0) {
230
+ return null;
231
+ }
232
+ const x = num(f.get("x"));
233
+ const y = num(f.get("y"));
234
+ if (x === null || y === null) {
235
+ return null;
236
+ }
237
+ return { x, y, width: (positive(f.get("width")) ?? 0) / zoom, height: (positive(f.get("height")) ?? 0) / zoom };
238
+ }
239
+ function centerOfBox(b) {
240
+ return { x: b.x + b.width / 2, y: b.y + b.height / 2 };
241
+ }
242
+ function facing(b, p) {
243
+ const c = centerOfBox(b);
244
+ const dx = p.x - c.x;
245
+ const dy = p.y - c.y;
246
+ if (Math.abs(dx) * b.height >= Math.abs(dy) * b.width) {
247
+ return { x: c.x + Math.sign(dx) * (b.width / 2), y: c.y };
248
+ }
249
+ return { x: c.x, y: c.y + Math.sign(dy) * (b.height / 2) };
250
+ }
251
+ function arrowShape(raw) {
252
+ if (raw === void 0) {
253
+ return "none";
254
+ }
255
+ const n = num(raw);
256
+ if (n !== null) {
257
+ return ARROW_ORDER[n] ?? "triangle";
258
+ }
259
+ return ARROW_NAMES.get(raw.trim().toLowerCase()) ?? "triangle";
260
+ }
261
+ function point(raw) {
262
+ const [x, y] = (raw ?? "").split(",").map((s) => num(s));
263
+ return x === null || x === void 0 || y === null || y === void 0 ? null : { x, y };
264
+ }
265
+ function javaColor(raw) {
266
+ const n = num(raw);
267
+ if (n === null || !Number.isInteger(n)) {
268
+ return null;
269
+ }
270
+ const argb = n >>> 0;
271
+ return {
272
+ color: `#${(argb & 16777215).toString(16).padStart(6, "0")}`,
273
+ alpha: (argb >>> 24) / 255
274
+ };
275
+ }
276
+ function percent(raw) {
277
+ const n = num(raw);
278
+ return n === null ? 1 : Math.min(1, Math.max(0, n / 100));
279
+ }
280
+ function num(raw) {
281
+ if (raw === void 0 || raw.trim() === "") {
282
+ return null;
283
+ }
284
+ const n = Number(raw);
285
+ return Number.isFinite(n) ? n : null;
286
+ }
287
+ function positive(raw) {
288
+ const n = num(raw);
289
+ return n !== null && n > 0 ? n : null;
290
+ }
4
291
  function valueKey(v) {
5
292
  return v === null || v === void 0 ? "\0null" : `${typeof v}:${String(v)}`;
6
293
  }
@@ -355,7 +642,19 @@ function rampOf(fam, values, ys0, tolerant, spend) {
355
642
  }
356
643
  const MAX_STYLE_RULES = 16;
357
644
  const MAX_FEATURES = 64;
358
- const LENGTHS = /* @__PURE__ */ new Set(["width", "height", "borderWidth", "labelSize"]);
645
+ const LENGTHS = /* @__PURE__ */ new Set([
646
+ "width",
647
+ "height",
648
+ "borderWidth",
649
+ "labelSize",
650
+ "labelWrapWidth",
651
+ "labelPaddingX",
652
+ "labelPaddingY",
653
+ "labelOffsetX",
654
+ "labelOffsetY",
655
+ "fanSpacing",
656
+ "nodeGap"
657
+ ]);
359
658
  function planStyles(values, features, options = {}) {
360
659
  const notes = options.notes ?? new StyleNotes();
361
660
  const budget = options.budget ?? new StyleBudget();
@@ -386,7 +685,7 @@ function planStyles(values, features, options = {}) {
386
685
  out,
387
686
  allFeatures[target],
388
687
  new Set(options.rawColumns?.[target] ?? []),
389
- toolSet,
688
+ { set: toolSet, derived: defaults?.derived ?? [] },
390
689
  options.signal
391
690
  )
392
691
  );
@@ -592,8 +891,9 @@ function passCandidate(plan, fam, truth, infos) {
592
891
  const raw = Array.from(cols.values()).some((f) => f.raw);
593
892
  return { type: "passdata", cols, raw, cost: raw ? 240 : 50 };
594
893
  }
595
- function planTarget(plan, out, features, rawNames, toolSet, signal) {
894
+ function planTarget(plan, out, features, rawNames, tool, signal) {
596
895
  const { target, n } = plan;
896
+ const toolSet = tool.set;
597
897
  for (const [k, v] of out?.columns ?? []) {
598
898
  plan.columns.set(k, v);
599
899
  }
@@ -608,6 +908,7 @@ function planTarget(plan, out, features, rawNames, toolSet, signal) {
608
908
  set: toolSet
609
909
  }
610
910
  ];
911
+ toolRule.push(...derivedRules(plan, tool.derived, features, out?.rules ?? [], truth));
611
912
  const declared = prepareDeclared(plan, out?.rules ?? [], features);
612
913
  const declaredProps = new Set(declared.flatMap(writes));
613
914
  const { defaults, rest } = splitDefaults(n, truth, declaredProps);
@@ -694,6 +995,31 @@ function planTarget(plan, out, features, rawNames, toolSet, signal) {
694
995
  }
695
996
  return drafts.map(finish);
696
997
  }
998
+ function derivedRules(plan, derived, features, given, truth) {
999
+ const stated = /* @__PURE__ */ new Set([...given.filter((r) => r.origin === "tool").flatMap(writes), ...truth.keys()]);
1000
+ const out = [];
1001
+ for (const d of derived) {
1002
+ if (plan.target !== "node" || d.kind !== "labelFromColumn" || stated.has("label")) {
1003
+ continue;
1004
+ }
1005
+ const { column } = d;
1006
+ const feature = features.find((f) => "data" in f.ref && f.ref.data === column);
1007
+ if (feature?.values.some((v) => v !== null && v !== "") !== true) {
1008
+ continue;
1009
+ }
1010
+ stated.add("label");
1011
+ out.push({
1012
+ id: uniqueId(plan, "node.tool.label"),
1013
+ target: "node",
1014
+ role: "passthrough",
1015
+ origin: "tool",
1016
+ where: { has: { data: column } },
1017
+ map: { label: { kind: "passthrough", by: { data: column } } },
1018
+ facts: { reason: "NODE_NAME" }
1019
+ });
1020
+ }
1021
+ return out;
1022
+ }
697
1023
  function splitDefaults(n, truth, declaredProps) {
698
1024
  const defaults = {};
699
1025
  const rest = [];
@@ -903,10 +1229,11 @@ function enforceCap(plan, drafts, truth, src) {
903
1229
  if (cands.length === 0) {
904
1230
  break;
905
1231
  }
1232
+ const everyone = (r) => r.origin === "tool" && "all" in r.where ? 1 : 0;
906
1233
  cands.sort((a, b) => {
907
1234
  const pa = a.role === "passthrough" ? 1 : 0;
908
1235
  const pb = b.role === "passthrough" ? 1 : 0;
909
- return pa - pb || (FOLD_ORDER[a.origin] ?? 1) - (FOLD_ORDER[b.origin] ?? 1) || ruleSize(b) - ruleSize(a) || drafts.indexOf(b) - drafts.indexOf(a);
1236
+ return pa - pb || (FOLD_ORDER[a.origin] ?? 1) - (FOLD_ORDER[b.origin] ?? 1) || everyone(a) - everyone(b) || ruleSize(b) - ruleSize(a) || drafts.indexOf(b) - drafts.indexOf(a);
910
1237
  });
911
1238
  const victim = cands[0];
912
1239
  const before = drafts.map(finish);
@@ -980,34 +1307,32 @@ function replay(plan, drafts, truth, toolSet, tolerated, src) {
980
1307
  };
981
1308
  }
982
1309
  const TARGETS = ["node", "edge"];
983
- const ENUM_KINDS = /* @__PURE__ */ new Set(["shape", "borderStyle", "lineStyle", "arrow", "weight", "position"]);
1310
+ const ENUM_KINDS = /* @__PURE__ */ new Set([
1311
+ "shape",
1312
+ "borderStyle",
1313
+ "lineStyle",
1314
+ "arrow",
1315
+ "arrowSide",
1316
+ "weight",
1317
+ "position",
1318
+ "labelFit",
1319
+ "borderPosition"
1320
+ ]);
984
1321
  function extractStyles(importer, snapshot, report, options = {}) {
985
1322
  const signal = options.signal ?? void 0;
986
1323
  const notes = new StyleNotes();
987
1324
  const budget = options.budget ?? new StyleBudget();
1325
+ const pictures = readImageAnnotations(snapshot).length > 0;
1326
+ for (const kind of readAnnotations(snapshot).skipped) {
1327
+ if (!(pictures && kind === "ImageAnnotation")) {
1328
+ notes.add(STYLE_ISSUE.ANNOTATION_SKIPPED, "graph", "annotations", { sample: kind });
1329
+ }
1330
+ }
988
1331
  const canonical = readStyleValues(importer, snapshot, report, { notes, budget, signal });
989
1332
  const fingerprint = styleFingerprint(snapshot);
990
- const blockText = canonical?.block ?? graphValue(snapshot, STYLE_BLOCK_NAME);
991
- if (blockText !== void 0) {
992
- const parsed = parseStyleBlock(blockText, fingerprint);
993
- if (parsed.ok) {
994
- const truth = canonical === null ? {} : { node: canonical.node.values, edge: canonical.edge.values };
995
- const fromBlock = blockStyles(
996
- parsed.block,
997
- snapshot,
998
- importer.format,
999
- truth,
1000
- canonical?.notes ?? [],
1001
- canonical?.tool ?? null,
1002
- canonical?.opacityInColor === true
1003
- );
1004
- if (fromBlock !== null) {
1005
- return fromBlock;
1006
- }
1007
- notes.add(STYLE_ISSUE.BLOCK_IGNORED, null, null, { sample: "INVALID" });
1008
- } else {
1009
- notes.add(STYLE_ISSUE.BLOCK_IGNORED, null, null, { sample: parsed.reason });
1010
- }
1333
+ const fromBlock = stylesFromBlock(importer, snapshot, canonical, notes, fingerprint);
1334
+ if (fromBlock !== null) {
1335
+ return fromBlock;
1011
1336
  }
1012
1337
  if (canonical === null) {
1013
1338
  const list = notes.list();
@@ -1043,6 +1368,33 @@ function extractStyles(importer, snapshot, report, options = {}) {
1043
1368
  }
1044
1369
  return { ...planned, styles: { ...planned.styles, notes: [...canonical.notes, ...planned.styles.notes] } };
1045
1370
  }
1371
+ function stylesFromBlock(importer, snapshot, canonical, notes, fingerprint) {
1372
+ const blockText = canonical?.block ?? graphValue(snapshot, STYLE_BLOCK_NAME);
1373
+ if (blockText === void 0) {
1374
+ return null;
1375
+ }
1376
+ const parsed = parseStyleBlock(blockText, fingerprint);
1377
+ if (!parsed.ok) {
1378
+ notes.add(STYLE_ISSUE.BLOCK_IGNORED, null, null, { sample: parsed.reason });
1379
+ return null;
1380
+ }
1381
+ const truth = canonical === null ? {} : { node: canonical.node.values, edge: canonical.edge.values };
1382
+ const fromBlock = blockStyles(
1383
+ parsed.block,
1384
+ snapshot,
1385
+ importer.format,
1386
+ truth,
1387
+ canonical?.notes ?? [],
1388
+ canonical?.tool ?? null,
1389
+ canonical?.opacityInColor === true
1390
+ );
1391
+ if (fromBlock === null) {
1392
+ notes.add(STYLE_ISSUE.BLOCK_IGNORED, null, null, { sample: "INVALID" });
1393
+ return null;
1394
+ }
1395
+ const skipped = notes.list();
1396
+ return skipped.length === 0 ? fromBlock : { ...fromBlock, styles: { ...fromBlock.styles, notes: [...fromBlock.styles.notes, ...skipped] } };
1397
+ }
1046
1398
  function readStyleValues(importer, snapshot, report, context) {
1047
1399
  const { notes, budget, signal } = context;
1048
1400
  signal?.throwIfAborted();
@@ -1257,6 +1609,8 @@ function canonValue(kind, property, raw, dialect, site) {
1257
1609
  site,
1258
1610
  dialect === "graphviz" && (property === "width" || property === "height") ? DOT_POINTS_PER_INCH : 1
1259
1611
  );
1612
+ case "signed":
1613
+ return canonSigned(raw, site);
1260
1614
  case "opacity":
1261
1615
  return canonOpacity(raw, dialect, site);
1262
1616
  case "boolean":
@@ -1341,7 +1695,9 @@ function channelsColor(v, dtype) {
1341
1695
  }
1342
1696
  export {
1343
1697
  MAX_STYLE_RULES as M,
1698
+ readImageAnnotations as a,
1344
1699
  extractStyles as e,
1345
- planStyles as p
1700
+ planStyles as p,
1701
+ readAnnotations as r
1346
1702
  };
1347
- //# sourceMappingURL=generic-CP6YD34u.js.map
1703
+ //# sourceMappingURL=generic-Dc21MAdg.js.map