@graphty/graph-io 0.3.46 → 0.3.48

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 (460) hide show
  1. package/dist/chunks/{approximations-wWjCRzKj.js → approximations-C2riR4NT.js} +2 -2
  2. package/dist/chunks/{approximations-wWjCRzKj.js.map → approximations-C2riR4NT.js.map} +1 -1
  3. package/dist/chunks/{block-DiGq58c3.js → block-Cu22ewuS.js} +92 -21
  4. package/dist/chunks/block-Cu22ewuS.js.map +1 -0
  5. package/dist/chunks/{choose--jM0yYCo.js → choose-Cdx6Enl2.js} +3 -3
  6. package/dist/chunks/{choose--jM0yYCo.js.map → choose-Cdx6Enl2.js.map} +1 -1
  7. package/dist/chunks/codes-CV_Bhcyi.js +153 -0
  8. package/dist/chunks/codes-CV_Bhcyi.js.map +1 -0
  9. package/dist/chunks/{constants-BKwqelYD.js → constants-D0LqcsLJ.js} +2 -2
  10. package/dist/chunks/{constants-BKwqelYD.js.map → constants-D0LqcsLJ.js.map} +1 -1
  11. package/dist/chunks/context-cgmmOxZ2.js +663 -0
  12. package/dist/chunks/context-cgmmOxZ2.js.map +1 -0
  13. package/dist/chunks/credentials-BiQsnMTb.js +347 -0
  14. package/dist/chunks/credentials-BiQsnMTb.js.map +1 -0
  15. package/dist/chunks/cx-export-BEeF6ymo.js +259 -0
  16. package/dist/chunks/cx-export-BEeF6ymo.js.map +1 -0
  17. package/dist/chunks/descriptor-BJ-W0Jd-.js +137 -0
  18. package/dist/chunks/descriptor-BJ-W0Jd-.js.map +1 -0
  19. package/dist/chunks/descriptor-C-YDhtsn.js +48 -0
  20. package/dist/chunks/descriptor-C-YDhtsn.js.map +1 -0
  21. package/dist/chunks/{emit-CwU8cUmG.js → emit-CD8xnY8s.js} +70 -10
  22. package/dist/chunks/emit-CD8xnY8s.js.map +1 -0
  23. package/dist/chunks/{escape-CgzxiYPg.js → escape-DH2Egt-l.js} +12 -12
  24. package/dist/chunks/{escape-CgzxiYPg.js.map → escape-DH2Egt-l.js.map} +1 -1
  25. package/dist/chunks/{export-BvqAXCKh.js → export-CZ7VRm4I.js} +53 -1443
  26. package/dist/chunks/export-CZ7VRm4I.js.map +1 -0
  27. package/dist/chunks/{exporter-DndFlGSa.js → exporter-BIdaoIgh.js} +7 -6
  28. package/dist/chunks/{exporter-DndFlGSa.js.map → exporter-BIdaoIgh.js.map} +1 -1
  29. package/dist/chunks/{exporter-CJgfhF-l.js → exporter-ChjL5fmP.js} +8 -7
  30. package/dist/chunks/{exporter-CJgfhF-l.js.map → exporter-ChjL5fmP.js.map} +1 -1
  31. package/dist/chunks/{exporter--Mk9gXCJ.js → exporter-Dcw7Ldtq.js} +6 -4
  32. package/dist/chunks/{exporter--Mk9gXCJ.js.map → exporter-Dcw7Ldtq.js.map} +1 -1
  33. package/dist/chunks/exporter-DtVU80Fa.js +1008 -0
  34. package/dist/chunks/exporter-DtVU80Fa.js.map +1 -0
  35. package/dist/chunks/{exporter-CrDWIyiq.js → exporter-bxxjOrDZ.js} +11 -9
  36. package/dist/chunks/{exporter-CrDWIyiq.js.map → exporter-bxxjOrDZ.js.map} +1 -1
  37. package/dist/chunks/format-BMS-1Nxb.js +64 -0
  38. package/dist/chunks/format-BMS-1Nxb.js.map +1 -0
  39. package/dist/chunks/{generic-Dq1ntt9q.js → generic-CP6YD34u.js} +4 -4
  40. package/dist/chunks/{generic-Dq1ntt9q.js.map → generic-CP6YD34u.js.map} +1 -1
  41. package/dist/chunks/{importer-DiZRmOQG.js → importer-B87_fmVx.js} +13 -17
  42. package/dist/chunks/importer-B87_fmVx.js.map +1 -0
  43. package/dist/chunks/{importer-BSvfrX_h.js → importer-Bji2MeWr.js} +18 -1014
  44. package/dist/chunks/importer-Bji2MeWr.js.map +1 -0
  45. package/dist/chunks/{importer-COTK9Tsl.js → importer-CB_zV5_L.js} +14 -11
  46. package/dist/chunks/importer-CB_zV5_L.js.map +1 -0
  47. package/dist/chunks/{importer-e6LGpqHB.js → importer-CVT-JyDE.js} +12 -9
  48. package/dist/chunks/importer-CVT-JyDE.js.map +1 -0
  49. package/dist/chunks/{importer-yh_aBCU6.js → importer-Cyy6UseH.js} +7 -6
  50. package/dist/chunks/{importer-yh_aBCU6.js.map → importer-Cyy6UseH.js.map} +1 -1
  51. package/dist/chunks/{importer-iFYPEKaJ.js → importer-DPZDN40-.js} +14 -10
  52. package/dist/chunks/{importer-iFYPEKaJ.js.map → importer-DPZDN40-.js.map} +1 -1
  53. package/dist/chunks/{importer-CMmeMWlC.js → importer-e3huMZbm.js} +8 -260
  54. package/dist/chunks/importer-e3huMZbm.js.map +1 -0
  55. package/dist/chunks/input-Ccg9I22A.js +1397 -0
  56. package/dist/chunks/input-Ccg9I22A.js.map +1 -0
  57. package/dist/chunks/{json-elements-DJZRZ6jd.js → json-elements-By172SVq.js} +4 -4
  58. package/dist/chunks/{json-elements-DJZRZ6jd.js.map → json-elements-By172SVq.js.map} +1 -1
  59. package/dist/chunks/{lexicon-CT69Kd87.js → lexicon-u2SI5xcx.js} +19 -5
  60. package/dist/chunks/lexicon-u2SI5xcx.js.map +1 -0
  61. package/dist/chunks/{ontology-export-G4MqRdux.js → ontology-export-BwgMyuF0.js} +4 -3
  62. package/dist/chunks/{ontology-export-G4MqRdux.js.map → ontology-export-BwgMyuF0.js.map} +1 -1
  63. package/dist/chunks/{records-CiaWZrFH.js → records-Cgvxz-Vx.js} +2 -2
  64. package/dist/chunks/{records-CiaWZrFH.js.map → records-Cgvxz-Vx.js.map} +1 -1
  65. package/dist/chunks/{format-BpQBx8MZ.js → report-CgdsL9Hb.js} +72 -129
  66. package/dist/chunks/report-CgdsL9Hb.js.map +1 -0
  67. package/dist/chunks/sigv4-LkAzsLAu.js +247 -0
  68. package/dist/chunks/sigv4-LkAzsLAu.js.map +1 -0
  69. package/dist/chunks/{styles-BQnsga7p.js → styles-CaABMoO1.js} +76 -43
  70. package/dist/chunks/styles-CaABMoO1.js.map +1 -0
  71. package/dist/chunks/{styles-D3fRphrO.js → styles-P_gmFAOi.js} +101 -21
  72. package/dist/chunks/styles-P_gmFAOi.js.map +1 -0
  73. package/dist/chunks/{styles-yed-BF5x3_Y5.js → styles-yed-Cs1nmrjn.js} +60 -20
  74. package/dist/chunks/styles-yed-Cs1nmrjn.js.map +1 -0
  75. package/dist/chunks/{text-CzJNFOS9.js → text-BuKQVMz2.js} +2 -2
  76. package/dist/chunks/{text-CzJNFOS9.js.map → text-BuKQVMz2.js.map} +1 -1
  77. package/dist/chunks/{writer-DMKvthQE.js → writer-DvHTl36J.js} +5 -4
  78. package/dist/chunks/writer-DvHTl36J.js.map +1 -0
  79. package/dist/csv.js +7 -5
  80. package/dist/csv.js.map +1 -1
  81. package/dist/cx.js +5 -4
  82. package/dist/cx.js.map +1 -1
  83. package/dist/cx2.js +2 -2
  84. package/dist/cys.js +1 -1
  85. package/dist/dot.js +2 -2
  86. package/dist/gexf.js +7 -5
  87. package/dist/gexf.js.map +1 -1
  88. package/dist/gml.js +16 -13
  89. package/dist/gml.js.map +1 -1
  90. package/dist/graph-io.js +1181 -224
  91. package/dist/graph-io.js.map +1 -1
  92. package/dist/graphml.js +3 -3
  93. package/dist/json.js +1 -1
  94. package/dist/neo4j.js +6 -4
  95. package/dist/neo4j.js.map +1 -1
  96. package/dist/obo.js +1 -1
  97. package/dist/pajek.js +1 -1
  98. package/dist/sources-cypher.d.ts +1 -0
  99. package/dist/sources-cypher.js +1236 -0
  100. package/dist/sources-cypher.js.map +1 -0
  101. package/dist/sources-ndex.d.ts +1 -0
  102. package/dist/sources-ndex.js +278 -0
  103. package/dist/sources-ndex.js.map +1 -0
  104. package/dist/sources-rest.d.ts +1 -0
  105. package/dist/sources-rest.js +1367 -0
  106. package/dist/sources-rest.js.map +1 -0
  107. package/dist/src/common/report.d.ts +6 -3
  108. package/dist/src/common/report.d.ts.map +1 -1
  109. package/dist/src/common/report.js +15 -9
  110. package/dist/src/common/report.js.map +1 -1
  111. package/dist/src/formats/cx/styles.d.ts.map +1 -1
  112. package/dist/src/formats/cx/styles.js +1 -0
  113. package/dist/src/formats/cx/styles.js.map +1 -1
  114. package/dist/src/formats/dot/styles.d.ts.map +1 -1
  115. package/dist/src/formats/dot/styles.js +3 -1
  116. package/dist/src/formats/dot/styles.js.map +1 -1
  117. package/dist/src/formats/gexf/styles.d.ts +29 -12
  118. package/dist/src/formats/gexf/styles.d.ts.map +1 -1
  119. package/dist/src/formats/gexf/styles.js +160 -31
  120. package/dist/src/formats/gexf/styles.js.map +1 -1
  121. package/dist/src/formats/gml/styles.d.ts.map +1 -1
  122. package/dist/src/formats/gml/styles.js +5 -4
  123. package/dist/src/formats/gml/styles.js.map +1 -1
  124. package/dist/src/formats/graphml/styles-plain.d.ts.map +1 -1
  125. package/dist/src/formats/graphml/styles-plain.js +3 -3
  126. package/dist/src/formats/graphml/styles-plain.js.map +1 -1
  127. package/dist/src/formats/graphml/styles-yed.d.ts.map +1 -1
  128. package/dist/src/formats/graphml/styles-yed.js +89 -19
  129. package/dist/src/formats/graphml/styles-yed.js.map +1 -1
  130. package/dist/src/formats/pajek/styles.d.ts.map +1 -1
  131. package/dist/src/formats/pajek/styles.js +1 -0
  132. package/dist/src/formats/pajek/styles.js.map +1 -1
  133. package/dist/src/formats/xgmml/styles.d.ts.map +1 -1
  134. package/dist/src/formats/xgmml/styles.js +1 -0
  135. package/dist/src/formats/xgmml/styles.js.map +1 -1
  136. package/dist/src/index.d.ts +8 -1
  137. package/dist/src/index.d.ts.map +1 -1
  138. package/dist/src/index.js +9 -1
  139. package/dist/src/index.js.map +1 -1
  140. package/dist/src/registry.d.ts +173 -1
  141. package/dist/src/registry.d.ts.map +1 -1
  142. package/dist/src/registry.js +196 -1
  143. package/dist/src/registry.js.map +1 -1
  144. package/dist/src/sources/builtins.d.ts +11 -0
  145. package/dist/src/sources/builtins.d.ts.map +1 -0
  146. package/dist/src/sources/builtins.js +47 -0
  147. package/dist/src/sources/builtins.js.map +1 -0
  148. package/dist/src/sources/codes.d.ts +230 -0
  149. package/dist/src/sources/codes.d.ts.map +1 -0
  150. package/dist/src/sources/codes.js +58 -0
  151. package/dist/src/sources/codes.js.map +1 -0
  152. package/dist/src/sources/context.d.ts +112 -0
  153. package/dist/src/sources/context.d.ts.map +1 -0
  154. package/dist/src/sources/context.js +739 -0
  155. package/dist/src/sources/context.js.map +1 -0
  156. package/dist/src/sources/credentials.d.ts +179 -0
  157. package/dist/src/sources/credentials.d.ts.map +1 -0
  158. package/dist/src/sources/credentials.js +301 -0
  159. package/dist/src/sources/credentials.js.map +1 -0
  160. package/dist/src/sources/cypher/descriptor.d.ts +21 -0
  161. package/dist/src/sources/cypher/descriptor.d.ts.map +1 -0
  162. package/dist/src/sources/cypher/descriptor.js +119 -0
  163. package/dist/src/sources/cypher/descriptor.js.map +1 -0
  164. package/dist/src/sources/cypher/flatten.d.ts +72 -0
  165. package/dist/src/sources/cypher/flatten.d.ts.map +1 -0
  166. package/dist/src/sources/cypher/flatten.js +279 -0
  167. package/dist/src/sources/cypher/flatten.js.map +1 -0
  168. package/dist/src/sources/cypher/index.d.ts +33 -0
  169. package/dist/src/sources/cypher/index.d.ts.map +1 -0
  170. package/dist/src/sources/cypher/index.js +405 -0
  171. package/dist/src/sources/cypher/index.js.map +1 -0
  172. package/dist/src/sources/cypher/params.d.ts +40 -0
  173. package/dist/src/sources/cypher/params.d.ts.map +1 -0
  174. package/dist/src/sources/cypher/params.js +6 -0
  175. package/dist/src/sources/cypher/params.js.map +1 -0
  176. package/dist/src/sources/cypher/profiles.d.ts +44 -0
  177. package/dist/src/sources/cypher/profiles.d.ts.map +1 -0
  178. package/dist/src/sources/cypher/profiles.js +61 -0
  179. package/dist/src/sources/cypher/profiles.js.map +1 -0
  180. package/dist/src/sources/cypher/query-builder.d.ts +106 -0
  181. package/dist/src/sources/cypher/query-builder.d.ts.map +1 -0
  182. package/dist/src/sources/cypher/query-builder.js +236 -0
  183. package/dist/src/sources/cypher/query-builder.js.map +1 -0
  184. package/dist/src/sources/cypher/transports/bolt.d.ts +21 -0
  185. package/dist/src/sources/cypher/transports/bolt.d.ts.map +1 -0
  186. package/dist/src/sources/cypher/transports/bolt.js +185 -0
  187. package/dist/src/sources/cypher/transports/bolt.js.map +1 -0
  188. package/dist/src/sources/cypher/transports/neptune-analytics.d.ts +15 -0
  189. package/dist/src/sources/cypher/transports/neptune-analytics.d.ts.map +1 -0
  190. package/dist/src/sources/cypher/transports/neptune-analytics.js +38 -0
  191. package/dist/src/sources/cypher/transports/neptune-analytics.js.map +1 -0
  192. package/dist/src/sources/cypher/transports/neptune-https.d.ts +31 -0
  193. package/dist/src/sources/cypher/transports/neptune-https.d.ts.map +1 -0
  194. package/dist/src/sources/cypher/transports/neptune-https.js +104 -0
  195. package/dist/src/sources/cypher/transports/neptune-https.js.map +1 -0
  196. package/dist/src/sources/cypher/transports/query-api.d.ts +14 -0
  197. package/dist/src/sources/cypher/transports/query-api.d.ts.map +1 -0
  198. package/dist/src/sources/cypher/transports/query-api.js +80 -0
  199. package/dist/src/sources/cypher/transports/query-api.js.map +1 -0
  200. package/dist/src/sources/cypher/transports/transport.d.ts +78 -0
  201. package/dist/src/sources/cypher/transports/transport.d.ts.map +1 -0
  202. package/dist/src/sources/cypher/transports/transport.js +77 -0
  203. package/dist/src/sources/cypher/transports/transport.js.map +1 -0
  204. package/dist/src/sources/cypher/types-map.d.ts +91 -0
  205. package/dist/src/sources/cypher/types-map.d.ts.map +1 -0
  206. package/dist/src/sources/cypher/types-map.js +306 -0
  207. package/dist/src/sources/cypher/types-map.js.map +1 -0
  208. package/dist/src/sources/define.d.ts +47 -0
  209. package/dist/src/sources/define.d.ts.map +1 -0
  210. package/dist/src/sources/define.js +173 -0
  211. package/dist/src/sources/define.js.map +1 -0
  212. package/dist/src/sources/fail.d.ts +33 -0
  213. package/dist/src/sources/fail.d.ts.map +1 -0
  214. package/dist/src/sources/fail.js +49 -0
  215. package/dist/src/sources/fail.js.map +1 -0
  216. package/dist/src/sources/ids.d.ts +64 -0
  217. package/dist/src/sources/ids.d.ts.map +1 -0
  218. package/dist/src/sources/ids.js +64 -0
  219. package/dist/src/sources/ids.js.map +1 -0
  220. package/dist/src/sources/ndex/client.d.ts +31 -0
  221. package/dist/src/sources/ndex/client.d.ts.map +1 -0
  222. package/dist/src/sources/ndex/client.js +90 -0
  223. package/dist/src/sources/ndex/client.js.map +1 -0
  224. package/dist/src/sources/ndex/descriptor.d.ts +10 -0
  225. package/dist/src/sources/ndex/descriptor.d.ts.map +1 -0
  226. package/dist/src/sources/ndex/descriptor.js +55 -0
  227. package/dist/src/sources/ndex/descriptor.js.map +1 -0
  228. package/dist/src/sources/ndex/expand.d.ts +20 -0
  229. package/dist/src/sources/ndex/expand.d.ts.map +1 -0
  230. package/dist/src/sources/ndex/expand.js +87 -0
  231. package/dist/src/sources/ndex/expand.js.map +1 -0
  232. package/dist/src/sources/ndex/index.d.ts +25 -0
  233. package/dist/src/sources/ndex/index.d.ts.map +1 -0
  234. package/dist/src/sources/ndex/index.js +191 -0
  235. package/dist/src/sources/ndex/index.js.map +1 -0
  236. package/dist/src/sources/ndex/params.d.ts +17 -0
  237. package/dist/src/sources/ndex/params.d.ts.map +1 -0
  238. package/dist/src/sources/ndex/params.js +6 -0
  239. package/dist/src/sources/ndex/params.js.map +1 -0
  240. package/dist/src/sources/ndex/share-url.d.ts +40 -0
  241. package/dist/src/sources/ndex/share-url.d.ts.map +1 -0
  242. package/dist/src/sources/ndex/share-url.js +64 -0
  243. package/dist/src/sources/ndex/share-url.js.map +1 -0
  244. package/dist/src/sources/params.d.ts +28 -0
  245. package/dist/src/sources/params.d.ts.map +1 -0
  246. package/dist/src/sources/params.js +6 -0
  247. package/dist/src/sources/params.js.map +1 -0
  248. package/dist/src/sources/registry.d.ts +118 -0
  249. package/dist/src/sources/registry.d.ts.map +1 -0
  250. package/dist/src/sources/registry.js +193 -0
  251. package/dist/src/sources/registry.js.map +1 -0
  252. package/dist/src/sources/rest/descriptor.d.ts +16 -0
  253. package/dist/src/sources/rest/descriptor.d.ts.map +1 -0
  254. package/dist/src/sources/rest/descriptor.js +71 -0
  255. package/dist/src/sources/rest/descriptor.js.map +1 -0
  256. package/dist/src/sources/rest/index.d.ts +14 -0
  257. package/dist/src/sources/rest/index.d.ts.map +1 -0
  258. package/dist/src/sources/rest/index.js +13 -0
  259. package/dist/src/sources/rest/index.js.map +1 -0
  260. package/dist/src/sources/rest/mapping.d.ts +30 -0
  261. package/dist/src/sources/rest/mapping.d.ts.map +1 -0
  262. package/dist/src/sources/rest/mapping.js +362 -0
  263. package/dist/src/sources/rest/mapping.js.map +1 -0
  264. package/dist/src/sources/rest/openalex.d.ts +27 -0
  265. package/dist/src/sources/rest/openalex.d.ts.map +1 -0
  266. package/dist/src/sources/rest/openalex.js +269 -0
  267. package/dist/src/sources/rest/openalex.js.map +1 -0
  268. package/dist/src/sources/rest/paging.d.ts +53 -0
  269. package/dist/src/sources/rest/paging.d.ts.map +1 -0
  270. package/dist/src/sources/rest/paging.js +138 -0
  271. package/dist/src/sources/rest/paging.js.map +1 -0
  272. package/dist/src/sources/rest/params.d.ts +216 -0
  273. package/dist/src/sources/rest/params.d.ts.map +1 -0
  274. package/dist/src/sources/rest/params.js +7 -0
  275. package/dist/src/sources/rest/params.js.map +1 -0
  276. package/dist/src/sources/rest/records.d.ts +41 -0
  277. package/dist/src/sources/rest/records.d.ts.map +1 -0
  278. package/dist/src/sources/rest/records.js +240 -0
  279. package/dist/src/sources/rest/records.js.map +1 -0
  280. package/dist/src/sources/rest/samples/deps-dev.d.ts +10 -0
  281. package/dist/src/sources/rest/samples/deps-dev.d.ts.map +1 -0
  282. package/dist/src/sources/rest/samples/deps-dev.js +47 -0
  283. package/dist/src/sources/rest/samples/deps-dev.js.map +1 -0
  284. package/dist/src/sources/rest/samples/string.d.ts +9 -0
  285. package/dist/src/sources/rest/samples/string.d.ts.map +1 -0
  286. package/dist/src/sources/rest/samples/string.js +42 -0
  287. package/dist/src/sources/rest/samples/string.js.map +1 -0
  288. package/dist/src/sources/rest/selectors.d.ts +41 -0
  289. package/dist/src/sources/rest/selectors.d.ts.map +1 -0
  290. package/dist/src/sources/rest/selectors.js +81 -0
  291. package/dist/src/sources/rest/selectors.js.map +1 -0
  292. package/dist/src/sources/rest/source.d.ts +67 -0
  293. package/dist/src/sources/rest/source.d.ts.map +1 -0
  294. package/dist/src/sources/rest/source.js +635 -0
  295. package/dist/src/sources/rest/source.js.map +1 -0
  296. package/dist/src/sources/rest/templates.d.ts +38 -0
  297. package/dist/src/sources/rest/templates.d.ts.map +1 -0
  298. package/dist/src/sources/rest/templates.js +125 -0
  299. package/dist/src/sources/rest/templates.js.map +1 -0
  300. package/dist/src/sources/run.d.ts +93 -0
  301. package/dist/src/sources/run.d.ts.map +1 -0
  302. package/dist/src/sources/run.js +673 -0
  303. package/dist/src/sources/run.js.map +1 -0
  304. package/dist/src/sources/sha256.d.ts +12 -0
  305. package/dist/src/sources/sha256.d.ts.map +1 -0
  306. package/dist/src/sources/sha256.js +95 -0
  307. package/dist/src/sources/sha256.js.map +1 -0
  308. package/dist/src/sources/sigv4.d.ts +24 -0
  309. package/dist/src/sources/sigv4.d.ts.map +1 -0
  310. package/dist/src/sources/sigv4.js +182 -0
  311. package/dist/src/sources/sigv4.js.map +1 -0
  312. package/dist/src/sources/testing.d.ts +96 -0
  313. package/dist/src/sources/testing.d.ts.map +1 -0
  314. package/dist/src/sources/testing.js +138 -0
  315. package/dist/src/sources/testing.js.map +1 -0
  316. package/dist/src/sources/types.d.ts +665 -0
  317. package/dist/src/sources/types.d.ts.map +1 -0
  318. package/dist/src/sources/types.js +10 -0
  319. package/dist/src/sources/types.js.map +1 -0
  320. package/dist/src/styles/canon/enums.d.ts.map +1 -1
  321. package/dist/src/styles/canon/enums.js +1 -0
  322. package/dist/src/styles/canon/enums.js.map +1 -1
  323. package/dist/src/styles/cyjs/cascade.d.ts.map +1 -1
  324. package/dist/src/styles/cyjs/cascade.js +68 -2
  325. package/dist/src/styles/cyjs/cascade.js.map +1 -1
  326. package/dist/src/styles/cyjs/defaults-table.d.ts.map +1 -1
  327. package/dist/src/styles/cyjs/defaults-table.js +2 -0
  328. package/dist/src/styles/cyjs/defaults-table.js.map +1 -1
  329. package/dist/src/styles/cyjs/emit.d.ts.map +1 -1
  330. package/dist/src/styles/cyjs/emit.js +18 -7
  331. package/dist/src/styles/cyjs/emit.js.map +1 -1
  332. package/dist/src/styles/cyjs/mappers.d.ts +4 -1
  333. package/dist/src/styles/cyjs/mappers.d.ts.map +1 -1
  334. package/dist/src/styles/cyjs/mappers.js +2 -0
  335. package/dist/src/styles/cyjs/mappers.js.map +1 -1
  336. package/dist/src/styles/cytoscape/emit.d.ts.map +1 -1
  337. package/dist/src/styles/cytoscape/emit.js +59 -7
  338. package/dist/src/styles/cytoscape/emit.js.map +1 -1
  339. package/dist/src/styles/cytoscape/lexicon.d.ts +6 -0
  340. package/dist/src/styles/cytoscape/lexicon.d.ts.map +1 -1
  341. package/dist/src/styles/cytoscape/lexicon.js +26 -2
  342. package/dist/src/styles/cytoscape/lexicon.js.map +1 -1
  343. package/dist/src/styles/cytoscape/resolve.d.ts +4 -1
  344. package/dist/src/styles/cytoscape/resolve.d.ts.map +1 -1
  345. package/dist/src/styles/cytoscape/resolve.js +10 -6
  346. package/dist/src/styles/cytoscape/resolve.js.map +1 -1
  347. package/dist/src/styles/cytoscape/translate.d.ts.map +1 -1
  348. package/dist/src/styles/cytoscape/translate.js +10 -10
  349. package/dist/src/styles/cytoscape/translate.js.map +1 -1
  350. package/dist/src/styles/defaults.d.ts +30 -0
  351. package/dist/src/styles/defaults.d.ts.map +1 -1
  352. package/dist/src/styles/defaults.js +45 -4
  353. package/dist/src/styles/defaults.js.map +1 -1
  354. package/dist/src/styles/io/block.d.ts.map +1 -1
  355. package/dist/src/styles/io/block.js +9 -0
  356. package/dist/src/styles/io/block.js.map +1 -1
  357. package/dist/src/styles/io/writer.d.ts.map +1 -1
  358. package/dist/src/styles/io/writer.js +7 -3
  359. package/dist/src/styles/io/writer.js.map +1 -1
  360. package/dist/src/styles/plan/resolve.d.ts +2 -1
  361. package/dist/src/styles/plan/resolve.d.ts.map +1 -1
  362. package/dist/src/styles/plan/resolve.js +13 -2
  363. package/dist/src/styles/plan/resolve.js.map +1 -1
  364. package/dist/src/styles/types.d.ts +19 -2
  365. package/dist/src/styles/types.d.ts.map +1 -1
  366. package/dist/src/styles/vocabulary.d.ts.map +1 -1
  367. package/dist/src/styles/vocabulary.js +15 -1
  368. package/dist/src/styles/vocabulary.js.map +1 -1
  369. package/dist/src/types.d.ts +19 -5
  370. package/dist/src/types.d.ts.map +1 -1
  371. package/dist/src/types.js.map +1 -1
  372. package/dist/styles.js +11 -11
  373. package/dist/xgmml.js +3 -3
  374. package/docs/samples/people.json +6 -0
  375. package/package.json +29 -4
  376. package/src/common/report.ts +27 -7
  377. package/src/formats/cx/styles.ts +1 -0
  378. package/src/formats/dot/styles.ts +3 -1
  379. package/src/formats/gexf/styles.ts +185 -37
  380. package/src/formats/gml/styles.ts +5 -4
  381. package/src/formats/graphml/styles-plain.ts +3 -9
  382. package/src/formats/graphml/styles-yed.ts +93 -20
  383. package/src/formats/pajek/styles.ts +1 -0
  384. package/src/formats/xgmml/styles.ts +1 -0
  385. package/src/index.ts +90 -0
  386. package/src/registry.ts +326 -1
  387. package/src/sources/builtins.ts +56 -0
  388. package/src/sources/codes.ts +235 -0
  389. package/src/sources/context.ts +893 -0
  390. package/src/sources/credentials.ts +409 -0
  391. package/src/sources/cypher/descriptor.ts +125 -0
  392. package/src/sources/cypher/flatten.ts +323 -0
  393. package/src/sources/cypher/index.ts +498 -0
  394. package/src/sources/cypher/params.ts +41 -0
  395. package/src/sources/cypher/profiles.ts +78 -0
  396. package/src/sources/cypher/query-builder.ts +294 -0
  397. package/src/sources/cypher/transports/bolt.ts +228 -0
  398. package/src/sources/cypher/transports/neptune-analytics.ts +41 -0
  399. package/src/sources/cypher/transports/neptune-https.ts +122 -0
  400. package/src/sources/cypher/transports/query-api.ts +100 -0
  401. package/src/sources/cypher/transports/transport.ts +139 -0
  402. package/src/sources/cypher/types-map.ts +418 -0
  403. package/src/sources/define.ts +195 -0
  404. package/src/sources/fail.ts +70 -0
  405. package/src/sources/ids.ts +74 -0
  406. package/src/sources/ndex/client.ts +102 -0
  407. package/src/sources/ndex/descriptor.ts +64 -0
  408. package/src/sources/ndex/expand.ts +100 -0
  409. package/src/sources/ndex/index.ts +235 -0
  410. package/src/sources/ndex/params.ts +17 -0
  411. package/src/sources/ndex/share-url.ts +84 -0
  412. package/src/sources/params.ts +29 -0
  413. package/src/sources/registry.ts +325 -0
  414. package/src/sources/rest/descriptor.ts +74 -0
  415. package/src/sources/rest/index.ts +22 -0
  416. package/src/sources/rest/mapping.ts +401 -0
  417. package/src/sources/rest/openalex.ts +288 -0
  418. package/src/sources/rest/paging.ts +180 -0
  419. package/src/sources/rest/params.ts +243 -0
  420. package/src/sources/rest/records.ts +289 -0
  421. package/src/sources/rest/samples/deps-dev.ts +49 -0
  422. package/src/sources/rest/samples/string.ts +44 -0
  423. package/src/sources/rest/selectors.ts +91 -0
  424. package/src/sources/rest/source.ts +760 -0
  425. package/src/sources/rest/templates.ts +151 -0
  426. package/src/sources/run.ts +793 -0
  427. package/src/sources/sha256.ts +99 -0
  428. package/src/sources/sigv4.ts +207 -0
  429. package/src/sources/testing.ts +210 -0
  430. package/src/sources/types.ts +741 -0
  431. package/src/styles/canon/enums.ts +1 -0
  432. package/src/styles/cyjs/cascade.ts +81 -2
  433. package/src/styles/cyjs/defaults-table.ts +2 -0
  434. package/src/styles/cyjs/emit.ts +18 -7
  435. package/src/styles/cyjs/mappers.ts +6 -1
  436. package/src/styles/cytoscape/emit.ts +61 -7
  437. package/src/styles/cytoscape/lexicon.ts +28 -2
  438. package/src/styles/cytoscape/resolve.ts +22 -6
  439. package/src/styles/cytoscape/translate.ts +11 -11
  440. package/src/styles/defaults.ts +93 -4
  441. package/src/styles/io/block.ts +10 -0
  442. package/src/styles/io/writer.ts +8 -3
  443. package/src/styles/plan/resolve.ts +14 -2
  444. package/src/styles/types.ts +28 -2
  445. package/src/styles/vocabulary.ts +15 -1
  446. package/src/types.ts +19 -5
  447. package/dist/chunks/block-DiGq58c3.js.map +0 -1
  448. package/dist/chunks/emit-CwU8cUmG.js.map +0 -1
  449. package/dist/chunks/export-BvqAXCKh.js.map +0 -1
  450. package/dist/chunks/format-BpQBx8MZ.js.map +0 -1
  451. package/dist/chunks/importer-BSvfrX_h.js.map +0 -1
  452. package/dist/chunks/importer-CMmeMWlC.js.map +0 -1
  453. package/dist/chunks/importer-COTK9Tsl.js.map +0 -1
  454. package/dist/chunks/importer-DiZRmOQG.js.map +0 -1
  455. package/dist/chunks/importer-e6LGpqHB.js.map +0 -1
  456. package/dist/chunks/lexicon-CT69Kd87.js.map +0 -1
  457. package/dist/chunks/styles-BQnsga7p.js.map +0 -1
  458. package/dist/chunks/styles-D3fRphrO.js.map +0 -1
  459. package/dist/chunks/styles-yed-BF5x3_Y5.js.map +0 -1
  460. package/dist/chunks/writer-DMKvthQE.js.map +0 -1
@@ -0,0 +1,64 @@
1
+ /**
2
+ * The public names of network sources: one constant per built-in source id, and the reserved
3
+ * `_source.` attribute names. Nothing else in graph-io spells them, so a rename is one edit here.
4
+ *
5
+ * Experimental: the ids and the `_source.` namespace await the owner's final word (design
6
+ * section 22, items 4 and 5).
7
+ */
8
+ /**
9
+ * The NDEx source (www.ndexbio.org). Experimental.
10
+ * @category Network sources
11
+ */
12
+ export declare const NDEX_SOURCE_ID = "ndex";
13
+ /**
14
+ * The generic Cypher source, for any openCypher server. Experimental.
15
+ * @category Network sources
16
+ */
17
+ export declare const CYPHER_SOURCE_ID = "cypher";
18
+ /**
19
+ * The Neo4j preset of the Cypher source. Experimental.
20
+ * @category Network sources
21
+ */
22
+ export declare const NEO4J_SOURCE_ID = "neo4j";
23
+ /**
24
+ * The Amazon Neptune preset of the Cypher source. Experimental.
25
+ * @category Network sources
26
+ */
27
+ export declare const NEPTUNE_SOURCE_ID = "neptune";
28
+ /**
29
+ * The generic REST mapping source. Experimental.
30
+ * @category Network sources
31
+ */
32
+ export declare const REST_SOURCE_ID = "rest";
33
+ /**
34
+ * The OpenAlex preset of the REST mapping source. Experimental.
35
+ * @category Network sources
36
+ */
37
+ export declare const OPENALEX_SOURCE_ID = "openalex";
38
+ /**
39
+ * The prefix of the reserved attribute namespace sources and graphty-element write facts under.
40
+ * @category Network sources
41
+ */
42
+ export declare const SOURCE_ATTR_PREFIX = "_source.";
43
+ /**
44
+ * Node attribute: true on a stub, a node known only by its id until it is hydrated or expanded.
45
+ * @category Network sources
46
+ */
47
+ export declare const SOURCE_STUB_ATTR = "_source.stub";
48
+ /**
49
+ * Node attribute: the entity a stub node is (a REST mapping's entity name).
50
+ * @category Network sources
51
+ */
52
+ export declare const SOURCE_ENTITY_ATTR = "_source.entity";
53
+ /**
54
+ * Node attribute: the node's degree at the source, when the source returns it at no extra cost
55
+ * (the Cypher source's degree hint).
56
+ * @category Network sources
57
+ */
58
+ export declare const SOURCE_DEGREE_ATTR = "_source.degree";
59
+ /**
60
+ * The prefix of `ImportGraphResult.format` for a load from a source: `"source:<id>"`.
61
+ * @category Network sources
62
+ */
63
+ export declare const SOURCE_FORMAT_PREFIX = "source:";
64
+ //# sourceMappingURL=ids.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ids.d.ts","sourceRoot":"","sources":["../../../src/sources/ids.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;GAGG;AACH,eAAO,MAAM,cAAc,SAAS,CAAC;AAErC;;;GAGG;AACH,eAAO,MAAM,gBAAgB,WAAW,CAAC;AAEzC;;;GAGG;AACH,eAAO,MAAM,eAAe,UAAU,CAAC;AAEvC;;;GAGG;AACH,eAAO,MAAM,iBAAiB,YAAY,CAAC;AAE3C;;;GAGG;AACH,eAAO,MAAM,cAAc,SAAS,CAAC;AAErC;;;GAGG;AACH,eAAO,MAAM,kBAAkB,aAAa,CAAC;AAE7C;;;GAGG;AACH,eAAO,MAAM,kBAAkB,aAAa,CAAC;AAE7C;;;GAGG;AACH,eAAO,MAAM,gBAAgB,iBAAiB,CAAC;AAE/C;;;GAGG;AACH,eAAO,MAAM,kBAAkB,mBAAmB,CAAC;AAEnD;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,mBAAmB,CAAC;AAEnD;;;GAGG;AACH,eAAO,MAAM,oBAAoB,YAAY,CAAC"}
@@ -0,0 +1,64 @@
1
+ /**
2
+ * The public names of network sources: one constant per built-in source id, and the reserved
3
+ * `_source.` attribute names. Nothing else in graph-io spells them, so a rename is one edit here.
4
+ *
5
+ * Experimental: the ids and the `_source.` namespace await the owner's final word (design
6
+ * section 22, items 4 and 5).
7
+ */
8
+ /**
9
+ * The NDEx source (www.ndexbio.org). Experimental.
10
+ * @category Network sources
11
+ */
12
+ export const NDEX_SOURCE_ID = "ndex";
13
+ /**
14
+ * The generic Cypher source, for any openCypher server. Experimental.
15
+ * @category Network sources
16
+ */
17
+ export const CYPHER_SOURCE_ID = "cypher";
18
+ /**
19
+ * The Neo4j preset of the Cypher source. Experimental.
20
+ * @category Network sources
21
+ */
22
+ export const NEO4J_SOURCE_ID = "neo4j";
23
+ /**
24
+ * The Amazon Neptune preset of the Cypher source. Experimental.
25
+ * @category Network sources
26
+ */
27
+ export const NEPTUNE_SOURCE_ID = "neptune";
28
+ /**
29
+ * The generic REST mapping source. Experimental.
30
+ * @category Network sources
31
+ */
32
+ export const REST_SOURCE_ID = "rest";
33
+ /**
34
+ * The OpenAlex preset of the REST mapping source. Experimental.
35
+ * @category Network sources
36
+ */
37
+ export const OPENALEX_SOURCE_ID = "openalex";
38
+ /**
39
+ * The prefix of the reserved attribute namespace sources and graphty-element write facts under.
40
+ * @category Network sources
41
+ */
42
+ export const SOURCE_ATTR_PREFIX = "_source.";
43
+ /**
44
+ * Node attribute: true on a stub, a node known only by its id until it is hydrated or expanded.
45
+ * @category Network sources
46
+ */
47
+ export const SOURCE_STUB_ATTR = "_source.stub";
48
+ /**
49
+ * Node attribute: the entity a stub node is (a REST mapping's entity name).
50
+ * @category Network sources
51
+ */
52
+ export const SOURCE_ENTITY_ATTR = "_source.entity";
53
+ /**
54
+ * Node attribute: the node's degree at the source, when the source returns it at no extra cost
55
+ * (the Cypher source's degree hint).
56
+ * @category Network sources
57
+ */
58
+ export const SOURCE_DEGREE_ATTR = "_source.degree";
59
+ /**
60
+ * The prefix of `ImportGraphResult.format` for a load from a source: `"source:<id>"`.
61
+ * @category Network sources
62
+ */
63
+ export const SOURCE_FORMAT_PREFIX = "source:";
64
+ //# sourceMappingURL=ids.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ids.js","sourceRoot":"","sources":["../../../src/sources/ids.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;GAGG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,MAAM,CAAC;AAErC;;;GAGG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,QAAQ,CAAC;AAEzC;;;GAGG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,OAAO,CAAC;AAEvC;;;GAGG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,SAAS,CAAC;AAE3C;;;GAGG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,MAAM,CAAC;AAErC;;;GAGG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,UAAU,CAAC;AAE7C;;;GAGG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,UAAU,CAAC;AAE7C;;;GAGG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,cAAc,CAAC;AAE/C;;;GAGG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,gBAAgB,CAAC;AAEnD;;;;GAIG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,gBAAgB,CAAC;AAEnD;;;GAGG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,SAAS,CAAC"}
@@ -0,0 +1,31 @@
1
+ /**
2
+ * What every NDEx call shares: the checks on the endpoint and the network UUID, and a fetch that
3
+ * classifies NDEx's failures.
4
+ */
5
+ import { type SourceContext } from "../types.js";
6
+ /** The query parameter NDEx reads a link-share access key from. */
7
+ export declare const ACCESS_KEY_QUERY = "accesskey";
8
+ /**
9
+ * Refuse an access key in the endpoint: it belongs in a credential, which is never logged.
10
+ * @param ctx - the context
11
+ */
12
+ export declare function checkEndpoint(ctx: SourceContext): void;
13
+ /**
14
+ * Check a call's endpoint and network UUID.
15
+ * @param uuid - the network UUID
16
+ * @param ctx - the context
17
+ * @returns the UUID, lowercase and URL-safe
18
+ */
19
+ export declare function checkedUuid(uuid: unknown, ctx: SourceContext): string;
20
+ /**
21
+ * Fetch from NDEx, turning a 401, 403 or 404 into its coded error with NDEx's own errorCode.
22
+ * @param ctx - the context
23
+ * @param path - the path, relative to the endpoint
24
+ * @param uuid - the network the request is about, for E_SOURCE_NOT_FOUND
25
+ * @param init - the request init
26
+ * @returns the response, status 2xx
27
+ */
28
+ export declare function ndexFetch(ctx: SourceContext, path: string, uuid: string | null, init?: RequestInit & {
29
+ readonly idempotent?: boolean;
30
+ }): Promise<Response>;
31
+ //# sourceMappingURL=client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../../src/sources/ndex/client.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,aAAa,CAAC;AAKjD,mEAAmE;AACnE,eAAO,MAAM,gBAAgB,cAAc,CAAC;AAK5C;;;GAGG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,aAAa,GAAG,IAAI,CAOtD;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,aAAa,GAAG,MAAM,CAarE;AAED;;;;;;;GAOG;AACH,wBAAsB,SAAS,CAC3B,GAAG,EAAE,aAAa,EAClB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,GAAG,IAAI,EACnB,IAAI,GAAE,WAAW,GAAG;IAAE,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAA;CAAO,GAC3D,OAAO,CAAC,QAAQ,CAAC,CAuBnB"}
@@ -0,0 +1,90 @@
1
+ /**
2
+ * What every NDEx call shares: the checks on the endpoint and the network UUID, and a fetch that
3
+ * classifies NDEx's failures.
4
+ */
5
+ import { failOn } from "../fail.js";
6
+ /** An NDEx network UUID. */
7
+ const UUID = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;
8
+ /** The query parameter NDEx reads a link-share access key from. */
9
+ export const ACCESS_KEY_QUERY = "accesskey";
10
+ /** The statuses whose JSON body (NDEx's errorCode) is read; every other failure is classified by status alone. */
11
+ const READ_STATUSES = [401, 403, 404];
12
+ /**
13
+ * Refuse an access key in the endpoint: it belongs in a credential, which is never logged.
14
+ * @param ctx - the context
15
+ */
16
+ export function checkEndpoint(ctx) {
17
+ if (ctx.endpoint?.searchParams.has(ACCESS_KEY_QUERY) === true) {
18
+ failOn(ctx.report, "E_SOURCE_PARAM", "an access key goes in a credential, never in the endpoint", {
19
+ name: "endpoint",
20
+ reason: "credentials-in-url",
21
+ });
22
+ }
23
+ }
24
+ /**
25
+ * Check a call's endpoint and network UUID.
26
+ * @param uuid - the network UUID
27
+ * @param ctx - the context
28
+ * @returns the UUID, lowercase and URL-safe
29
+ */
30
+ export function checkedUuid(uuid, ctx) {
31
+ checkEndpoint(ctx);
32
+ const value = String(uuid);
33
+ if (/accesskey/i.test(value)) {
34
+ failOn(ctx.report, "E_SOURCE_PARAM", "an access key goes in a credential, never in the uuid", {
35
+ name: "uuid",
36
+ reason: "credentials-in-url",
37
+ });
38
+ }
39
+ if (!UUID.test(value)) {
40
+ failOn(ctx.report, "E_SOURCE_PARAM", "the uuid is not a network UUID", { name: "uuid", reason: "format" });
41
+ }
42
+ return value.toLowerCase();
43
+ }
44
+ /**
45
+ * Fetch from NDEx, turning a 401, 403 or 404 into its coded error with NDEx's own errorCode.
46
+ * @param ctx - the context
47
+ * @param path - the path, relative to the endpoint
48
+ * @param uuid - the network the request is about, for E_SOURCE_NOT_FOUND
49
+ * @param init - the request init
50
+ * @returns the response, status 2xx
51
+ */
52
+ export async function ndexFetch(ctx, path, uuid, init = {}) {
53
+ const response = await ctx.fetch(path, { ...init, allowStatus: READ_STATUSES });
54
+ if (response.ok) {
55
+ return response;
56
+ }
57
+ const url = new URL(path, ctx.endpoint ?? undefined);
58
+ const serverCode = await errorCode(response);
59
+ const { status } = response;
60
+ if (status === 401) {
61
+ failOn(ctx.report, "E_SOURCE_AUTH", `NDEx answered ${String(status)}`, {
62
+ origin: url.origin,
63
+ status,
64
+ scheme: response.headers.get("www-authenticate")?.split(/\s/)[0] ?? null,
65
+ serverCode,
66
+ });
67
+ }
68
+ if (status === 403) {
69
+ failOn(ctx.report, "E_SOURCE_FORBIDDEN", "NDEx answered 403", { status, serverCode });
70
+ }
71
+ return failOn(ctx.report, "E_SOURCE_NOT_FOUND", "NDEx has no such network", {
72
+ what: uuid === null ? "url" : "network",
73
+ value: uuid ?? `${url.origin}${url.pathname}`,
74
+ });
75
+ }
76
+ /**
77
+ * NDEx's own error code from a JSON error body, never its message or stack trace.
78
+ * @param response - the failed response
79
+ * @returns the code, or null
80
+ */
81
+ async function errorCode(response) {
82
+ try {
83
+ const body = (await response.json());
84
+ return typeof body.errorCode === "string" ? body.errorCode.slice(0, 100) : null;
85
+ }
86
+ catch {
87
+ return null;
88
+ }
89
+ }
90
+ //# sourceMappingURL=client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../../src/sources/ndex/client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * The NDEx source's descriptor: catalog data, available without loading the source's code.
3
+ */
4
+ import { type SourceDescriptor } from "../types.js";
5
+ /**
6
+ * The descriptor of the `ndex` source. Experimental.
7
+ * @category Network sources
8
+ */
9
+ export declare const NDEX_DESCRIPTOR: SourceDescriptor;
10
+ //# sourceMappingURL=descriptor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"descriptor.d.ts","sourceRoot":"","sources":["../../../../src/sources/ndex/descriptor.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,KAAK,gBAAgB,EAAqB,MAAM,aAAa,CAAC;AAevE;;;GAGG;AACH,eAAO,MAAM,eAAe,EAAE,gBAwC5B,CAAC"}
@@ -0,0 +1,55 @@
1
+ /**
2
+ * The NDEx source's descriptor: catalog data, available without loading the source's code.
3
+ */
4
+ /**
5
+ * One public NDEx network offered as a sample.
6
+ * @param id - the sample id
7
+ * @param plainName - its name
8
+ * @param uuid - the network UUID
9
+ * @param nodes - its node count
10
+ * @param edges - its edge count
11
+ * @returns the sample
12
+ */
13
+ function sample(id, plainName, uuid, nodes, edges) {
14
+ return { id, plainName, params: { uuid }, counts: { nodes, edges } };
15
+ }
16
+ /**
17
+ * The descriptor of the `ndex` source. Experimental.
18
+ * @category Network sources
19
+ */
20
+ export const NDEX_DESCRIPTOR = Object.freeze({
21
+ plainName: "NDEx",
22
+ kind: "repository",
23
+ version: 1,
24
+ defaultEndpoint: "https://www.ndexbio.org/",
25
+ auth: ["basic", "bearer", "api-key"],
26
+ authRequired: "optional",
27
+ rateLimit: { requests: 50, perMs: 1000, concurrent: 4 },
28
+ params: [
29
+ { name: "uuid", plainName: "Network UUID", type: "string", required: true },
30
+ {
31
+ name: "format",
32
+ plainName: "Format",
33
+ type: "enum",
34
+ default: "cx2",
35
+ advanced: true,
36
+ values: [
37
+ { value: "cx2", label: "CX2" },
38
+ { value: "cx", label: "CX" },
39
+ ],
40
+ },
41
+ { name: "idAttribute", plainName: "Id attribute", type: "string", advanced: true },
42
+ ],
43
+ features: ["probe", "list", "expand", "validate"],
44
+ samples: [
45
+ sample("ndex-wp5483", "WikiPathways WP5483", "86719f5b-1439-11f0-9806-005056ae3c32", 57, 34),
46
+ sample("ndex-nci-pid", "NCI PID cancer signaling", "640e2cef-795d-11e8-a4bf-0ac135e8bacf", 2794, 25296),
47
+ sample("ndex-huri", "HuRI human interactome", "73bc2c06-5fb2-11e9-9f06-0ac135e8bacf", 8275, 52569),
48
+ sample("ndex-signor", "Signor", "523fff27-afe8-11e9-8bb4-0ac135e8bacf", 10339, 33381),
49
+ sample("ndex-dgidb", "DGIdb drugs and target genes", "7e5e64ff-f6cf-11ea-99da-0ac135e8bacf", 12100, 32814),
50
+ sample("ndex-wikipathways-landscape", "WikiPathways landscape", "2b3ed6af-5031-11eb-9e72-0ac135e8bacf", 32077, 74109),
51
+ // 3.3 million edges and a 690 MB download: offered for neighborhoods, and as a maxBytes test
52
+ { ...sample("ndex-pcnet", "PCNet 2.2", "8b4b54fa-e87d-11ee-9621-005056ae23aa", 18558, 3323928), whole: false },
53
+ ],
54
+ });
55
+ //# sourceMappingURL=descriptor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"descriptor.js","sourceRoot":"","sources":["../../../../src/sources/ndex/descriptor.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH;;;;;;;;GAQG;AACH,SAAS,MAAM,CAAC,EAAU,EAAE,SAAiB,EAAE,IAAY,EAAE,KAAa,EAAE,KAAa;IACrF,OAAO,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC;AACzE,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,eAAe,GAAqB,MAAM,CAAC,MAAM,CAAC;IAC3D,SAAS,EAAE,MAAM;IACjB,IAAI,EAAE,YAAY;IAClB,OAAO,EAAE,CAAC;IACV,eAAe,EAAE,0BAA0B;IAC3C,IAAI,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAC;IACpC,YAAY,EAAE,UAAU;IACxB,SAAS,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,EAAE;IACvD,MAAM,EAAE;QACJ,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,cAAc,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;QAC3E;YACI,IAAI,EAAE,QAAQ;YACd,SAAS,EAAE,QAAQ;YACnB,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,KAAK;YACd,QAAQ,EAAE,IAAI;YACd,MAAM,EAAE;gBACJ,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE;gBAC9B,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE;aAC/B;SACJ;QACD,EAAE,IAAI,EAAE,aAAa,EAAE,SAAS,EAAE,cAAc,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;KACrF;IACD,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,CAAC;IACjD,OAAO,EAAE;QACL,MAAM,CAAC,aAAa,EAAE,qBAAqB,EAAE,sCAAsC,EAAE,EAAE,EAAE,EAAE,CAAC;QAC5F,MAAM,CAAC,cAAc,EAAE,0BAA0B,EAAE,sCAAsC,EAAE,IAAI,EAAE,KAAK,CAAC;QACvG,MAAM,CAAC,WAAW,EAAE,wBAAwB,EAAE,sCAAsC,EAAE,IAAI,EAAE,KAAK,CAAC;QAClG,MAAM,CAAC,aAAa,EAAE,QAAQ,EAAE,sCAAsC,EAAE,KAAK,EAAE,KAAK,CAAC;QACrF,MAAM,CAAC,YAAY,EAAE,8BAA8B,EAAE,sCAAsC,EAAE,KAAK,EAAE,KAAK,CAAC;QAC1G,MAAM,CACF,6BAA6B,EAC7B,wBAAwB,EACxB,sCAAsC,EACtC,KAAK,EACL,KAAK,CACR;QACD,6FAA6F;QAC7F,EAAE,GAAG,MAAM,CAAC,YAAY,EAAE,WAAW,EAAE,sCAAsC,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;KACjH;CACJ,CAAC,CAAC"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * The NDEx source's expand: NDEx's neighborhood query (`POST /v2/search/network/{uuid}/query`),
3
+ * which answers CX1, read by the CX importer. Seeds are node ids, sent as `nodeIds`; NDEx's CX1
4
+ * answer keeps the ids of the CX2 download (checked on 2026-10-17), so an expansion merges into a
5
+ * loaded network by id. With `idAttribute`, seeds are values of that node attribute instead,
6
+ * matched by NDEx's node search.
7
+ */
8
+ import { type GraphSink } from "@graphty/graph-format";
9
+ import { type ImportReport } from "../../types.js";
10
+ import { type ExpandRequest, type SourceContext } from "../types.js";
11
+ import { type NdexParams } from "./params.js";
12
+ /**
13
+ * Fetch the neighborhood of some nodes of an NDEx network into a sink.
14
+ * @param request - the seeds, depth and limit; `limit` caps the edges NDEx returns
15
+ * @param sink - where to write
16
+ * @param ctx - the context
17
+ * @returns the report
18
+ */
19
+ export declare function expandNdex(request: ExpandRequest<NdexParams>, sink: GraphSink, ctx: SourceContext): Promise<ImportReport>;
20
+ //# sourceMappingURL=expand.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"expand.d.ts","sourceRoot":"","sources":["../../../../src/sources/ndex/expand.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAGvD,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAEnD,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,aAAa,EAAE,MAAM,aAAa,CAAC;AAErE,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,aAAa,CAAC;AAoD9C;;;;;;GAMG;AACH,wBAAsB,UAAU,CAC5B,OAAO,EAAE,aAAa,CAAC,UAAU,CAAC,EAClC,IAAI,EAAE,SAAS,EACf,GAAG,EAAE,aAAa,GACnB,OAAO,CAAC,YAAY,CAAC,CAqBvB"}
@@ -0,0 +1,87 @@
1
+ /**
2
+ * The NDEx source's expand: NDEx's neighborhood query (`POST /v2/search/network/{uuid}/query`),
3
+ * which answers CX1, read by the CX importer. Seeds are node ids, sent as `nodeIds`; NDEx's CX1
4
+ * answer keeps the ids of the CX2 download (checked on 2026-10-17), so an expansion merges into a
5
+ * loaded network by id. With `idAttribute`, seeds are values of that node attribute instead,
6
+ * matched by NDEx's node search.
7
+ */
8
+ import { cxImporter } from "../../formats/cx/importer.js";
9
+ import { failOn } from "../fail.js";
10
+ import { checkedUuid, ndexFetch } from "./client.js";
11
+ /** The deepest neighborhood asked for, as for every built-in source. */
12
+ const MAX_DEPTH = 10;
13
+ /**
14
+ * Quote a value for NDEx's search syntax.
15
+ * @param value - the value
16
+ * @returns the quoted term
17
+ */
18
+ function term(value) {
19
+ const escaped = value.replaceAll(/["\\]/g, String.raw `\$&`);
20
+ return `"${escaped}"`;
21
+ }
22
+ /**
23
+ * The query body: the seeds as node ids, or as values of `idAttribute`.
24
+ * @param request - the expand request
25
+ * @param ctx - the context
26
+ * @returns the body NDEx's query takes
27
+ */
28
+ function queryBody(request, ctx) {
29
+ const { ids } = request;
30
+ const { idAttribute } = request.params;
31
+ const depth = request.depth ?? 1;
32
+ if (!Number.isInteger(depth) || depth < 1 || depth > MAX_DEPTH) {
33
+ failOn(ctx.report, "E_SOURCE_PARAM", "depth is an integer from 1 to 10", { name: "depth", reason: "range" });
34
+ }
35
+ if (ids.length === 0) {
36
+ failOn(ctx.report, "E_SOURCE_PARAM", "an expansion needs at least one id", { name: "ids", reason: "required" });
37
+ }
38
+ const limit = request.limit === undefined ? {} : { edgeLimit: request.limit, errorWhenLimitIsOver: false };
39
+ if (idAttribute !== undefined) {
40
+ if (!/^[A-Za-z_][\w.]*$/.test(idAttribute)) {
41
+ failOn(ctx.report, "E_SOURCE_PARAM", "idAttribute is not an attribute name", {
42
+ name: "idAttribute",
43
+ reason: "identifier",
44
+ });
45
+ }
46
+ const searchString = ids.map((id) => `${idAttribute}:${term(String(id))}`).join(" ");
47
+ return { searchString, searchDepth: depth, ...limit };
48
+ }
49
+ const nodeIds = ids.map(Number);
50
+ if (nodeIds.some((n) => !Number.isSafeInteger(n))) {
51
+ failOn(ctx.report, "E_SOURCE_PARAM", "NDEx node ids are integers; set idAttribute to seed by name", {
52
+ name: "ids",
53
+ reason: "type",
54
+ });
55
+ }
56
+ return { searchString: "", searchDepth: depth, nodeIds, ...limit };
57
+ }
58
+ /**
59
+ * Fetch the neighborhood of some nodes of an NDEx network into a sink.
60
+ * @param request - the seeds, depth and limit; `limit` caps the edges NDEx returns
61
+ * @param sink - where to write
62
+ * @param ctx - the context
63
+ * @returns the report
64
+ */
65
+ export async function expandNdex(request, sink, ctx) {
66
+ const uuid = checkedUuid(request.params.uuid, ctx);
67
+ if (request.direction !== undefined && request.direction !== "both") {
68
+ failOn(ctx.report, "E_SOURCE_UNSUPPORTED", "NDEx expands in both directions only", {
69
+ feature: "direction",
70
+ needs: "both",
71
+ });
72
+ }
73
+ if ((request.relationshipTypes ?? []).length > 0) {
74
+ failOn(ctx.report, "E_SOURCE_UNSUPPORTED", "NDEx cannot filter an expansion by relationship type", {
75
+ feature: "relationshipTypes",
76
+ });
77
+ }
78
+ const response = await ndexFetch(ctx, `v2/search/network/${uuid}/query`, uuid, {
79
+ method: "POST",
80
+ idempotent: true,
81
+ headers: { "Content-Type": "application/json", Accept: "application/json" },
82
+ body: JSON.stringify(queryBody(request, ctx)),
83
+ });
84
+ ctx.report.include(await cxImporter.import(response.body ?? "", sink, { signal: ctx.signal }));
85
+ return ctx.finish();
86
+ }
87
+ //# sourceMappingURL=expand.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"expand.js","sourceRoot":"","sources":["../../../../src/sources/ndex/expand.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ /**
2
+ * `@graphty/graph-io/sources/ndex`: the NDEx source (design section 12.1). Experimental.
3
+ *
4
+ * - load: the network's summary first (counts, download size, modification time), checked against
5
+ * the caps before a byte of the network is read; then the CX2 (or CX) download, streamed into
6
+ * the CX2 (or CX) importer.
7
+ * - probe: the summary. list: NDEx's v2 network search. validate: the summary's modificationTime.
8
+ * - expand: NDEx's neighborhood query (`expand.ts`).
9
+ *
10
+ * Errors are classified by status; a body is read only from a 401, 403 or 404 (NDEx's own
11
+ * `errorCode`, passed through as `serverCode`), so a 500 with a Java stack trace never reaches a
12
+ * report.
13
+ * @module @graphty/graph-io/sources/ndex
14
+ */
15
+ import { type GraphSource } from "../types.js";
16
+ import { type NdexParams } from "./params.js";
17
+ export { NDEX_DESCRIPTOR } from "./descriptor.js";
18
+ export { type NdexParams } from "./params.js";
19
+ export { type NdexShareLink, parseShareUrl } from "./share-url.js";
20
+ /**
21
+ * The NDEx source. Experimental.
22
+ * @category Network sources
23
+ */
24
+ export declare const ndexSource: GraphSource<NdexParams>;
25
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/sources/ndex/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAKH,OAAO,EACH,KAAK,WAAW,EAOnB,MAAM,aAAa,CAAC;AAIrB,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,KAAK,aAAa,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAuHnE;;;GAGG;AACH,eAAO,MAAM,UAAU,EAAE,WAAW,CAAC,UAAU,CA6E7C,CAAC"}