@graphty/graph-io 0.3.47 → 0.3.49
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.
- package/dist/chunks/{approximations-wWjCRzKj.js → approximations-Bzn3L-je.js} +2 -2
- package/dist/chunks/{approximations-wWjCRzKj.js.map → approximations-Bzn3L-je.js.map} +1 -1
- package/dist/chunks/bends-BGXjv_U4.js +129 -0
- package/dist/chunks/bends-BGXjv_U4.js.map +1 -0
- package/dist/chunks/{block-DiGq58c3.js → block-iptrlMBb.js} +947 -134
- package/dist/chunks/block-iptrlMBb.js.map +1 -0
- package/dist/chunks/choose-CczZJaX_.js +717 -0
- package/dist/chunks/choose-CczZJaX_.js.map +1 -0
- package/dist/chunks/codes-BE2xir2k.js +157 -0
- package/dist/chunks/codes-BE2xir2k.js.map +1 -0
- package/dist/chunks/{constants-BKwqelYD.js → constants-CKkYLPtt.js} +2 -2
- package/dist/chunks/{constants-BKwqelYD.js.map → constants-CKkYLPtt.js.map} +1 -1
- package/dist/chunks/context-C3p0RQxR.js +664 -0
- package/dist/chunks/context-C3p0RQxR.js.map +1 -0
- package/dist/chunks/{convert-BcQ8_jMo.js → convert-Ct2zelbQ.js} +7 -2
- package/dist/chunks/convert-Ct2zelbQ.js.map +1 -0
- package/dist/chunks/credentials-DXHx7nwR.js +349 -0
- package/dist/chunks/credentials-DXHx7nwR.js.map +1 -0
- package/dist/chunks/cx-export-Bt6NoqTQ.js +259 -0
- package/dist/chunks/cx-export-Bt6NoqTQ.js.map +1 -0
- package/dist/chunks/descriptor-B28U25x4.js +60 -0
- package/dist/chunks/descriptor-B28U25x4.js.map +1 -0
- package/dist/chunks/descriptor-C-YDhtsn.js +48 -0
- package/dist/chunks/descriptor-C-YDhtsn.js.map +1 -0
- package/dist/chunks/descriptor-DLA5kINx.js +142 -0
- package/dist/chunks/descriptor-DLA5kINx.js.map +1 -0
- package/dist/chunks/{emit-CwU8cUmG.js → emit-BwHQkZle.js} +1690 -103
- package/dist/chunks/emit-BwHQkZle.js.map +1 -0
- package/dist/chunks/{escape-CgzxiYPg.js → escape-CuCIzNMB.js} +12 -12
- package/dist/chunks/{escape-CgzxiYPg.js.map → escape-CuCIzNMB.js.map} +1 -1
- package/dist/chunks/{export-BvqAXCKh.js → export-Cha4dRFz.js} +48 -1780
- package/dist/chunks/export-Cha4dRFz.js.map +1 -0
- package/dist/chunks/{exporter--Mk9gXCJ.js → exporter-BP6otMO6.js} +6 -4
- package/dist/chunks/{exporter--Mk9gXCJ.js.map → exporter-BP6otMO6.js.map} +1 -1
- package/dist/chunks/{exporter-CrDWIyiq.js → exporter-D2CETOMK.js} +1222 -154
- package/dist/chunks/exporter-D2CETOMK.js.map +1 -0
- package/dist/chunks/{exporter-DndFlGSa.js → exporter-D9yMtocA.js} +7 -6
- package/dist/chunks/{exporter-DndFlGSa.js.map → exporter-D9yMtocA.js.map} +1 -1
- package/dist/chunks/exporter-_jrBTnos.js +1009 -0
- package/dist/chunks/exporter-_jrBTnos.js.map +1 -0
- package/dist/chunks/{exporter-CJgfhF-l.js → exporter-nDfxIK5D.js} +9 -7
- package/dist/chunks/{exporter-CJgfhF-l.js.map → exporter-nDfxIK5D.js.map} +1 -1
- package/dist/chunks/format-BXiAb-1h.js +408 -0
- package/dist/chunks/format-BXiAb-1h.js.map +1 -0
- package/dist/chunks/{generic-Dq1ntt9q.js → generic-ymWCETAJ.js} +387 -31
- package/dist/chunks/generic-ymWCETAJ.js.map +1 -0
- package/dist/chunks/{importer-CMmeMWlC.js → importer-B92x1xY5.js} +15 -263
- package/dist/chunks/importer-B92x1xY5.js.map +1 -0
- package/dist/chunks/{importer-DiZRmOQG.js → importer-CT9mJ1nn.js} +328 -90
- package/dist/chunks/importer-CT9mJ1nn.js.map +1 -0
- package/dist/chunks/{importer-COTK9Tsl.js → importer-DaLTjbds.js} +116 -1099
- package/dist/chunks/importer-DaLTjbds.js.map +1 -0
- package/dist/chunks/{importer-iFYPEKaJ.js → importer-GREKMdIf.js} +28 -16
- package/dist/chunks/importer-GREKMdIf.js.map +1 -0
- package/dist/chunks/{importer-BSvfrX_h.js → importer-PqaaKKnY.js} +23 -1016
- package/dist/chunks/importer-PqaaKKnY.js.map +1 -0
- package/dist/chunks/{importer-yh_aBCU6.js → importer-Vn5QvmmJ.js} +66 -12
- package/dist/chunks/importer-Vn5QvmmJ.js.map +1 -0
- package/dist/chunks/{importer-e6LGpqHB.js → importer-vRq4h3j5.js} +1470 -354
- package/dist/chunks/importer-vRq4h3j5.js.map +1 -0
- package/dist/chunks/input-CAxt_aV-.js +1397 -0
- package/dist/chunks/input-CAxt_aV-.js.map +1 -0
- package/dist/chunks/{json-elements-DJZRZ6jd.js → json-elements-Cq76WjnZ.js} +4 -4
- package/dist/chunks/{json-elements-DJZRZ6jd.js.map → json-elements-Cq76WjnZ.js.map} +1 -1
- package/dist/chunks/{lexicon-CT69Kd87.js → lexicon-Clf4QIyl.js} +299 -77
- package/dist/chunks/lexicon-Clf4QIyl.js.map +1 -0
- package/dist/chunks/{ontology-export-G4MqRdux.js → ontology-export-OMo91mb0.js} +4 -3
- package/dist/chunks/{ontology-export-G4MqRdux.js.map → ontology-export-OMo91mb0.js.map} +1 -1
- package/dist/chunks/{records-CiaWZrFH.js → records-NJiYvekn.js} +2 -2
- package/dist/chunks/{records-CiaWZrFH.js.map → records-NJiYvekn.js.map} +1 -1
- package/dist/chunks/{format-BpQBx8MZ.js → report-CwMfYa9J.js} +70 -127
- package/dist/chunks/report-CwMfYa9J.js.map +1 -0
- package/dist/chunks/round-trip-Zm3_ivgq.js +79 -0
- package/dist/chunks/round-trip-Zm3_ivgq.js.map +1 -0
- package/dist/chunks/sigv4-EokFic1V.js +247 -0
- package/dist/chunks/sigv4-EokFic1V.js.map +1 -0
- package/dist/chunks/{styles-BQnsga7p.js → styles-CCs214_3.js} +1300 -168
- package/dist/chunks/styles-CCs214_3.js.map +1 -0
- package/dist/chunks/styles-Cm62yyQX.js +2812 -0
- package/dist/chunks/styles-Cm62yyQX.js.map +1 -0
- package/dist/chunks/styles-DPQQIig4.js +1928 -0
- package/dist/chunks/styles-DPQQIig4.js.map +1 -0
- package/dist/chunks/styles-yed-UMFdNqze.js +1213 -0
- package/dist/chunks/styles-yed-UMFdNqze.js.map +1 -0
- package/dist/chunks/{text-CzJNFOS9.js → text-ystE2bYi.js} +2 -2
- package/dist/chunks/{text-CzJNFOS9.js.map → text-ystE2bYi.js.map} +1 -1
- package/dist/csv.js +7 -5
- package/dist/csv.js.map +1 -1
- package/dist/cx.js +5 -4
- package/dist/cx.js.map +1 -1
- package/dist/cx2.js +2 -2
- package/dist/cys.js +1 -1
- package/dist/dot.js +5 -4
- package/dist/dot.js.map +1 -1
- package/dist/gexf.js +42 -10
- package/dist/gexf.js.map +1 -1
- package/dist/gml.js +850 -193
- package/dist/gml.js.map +1 -1
- package/dist/graph-io.js +1189 -220
- package/dist/graph-io.js.map +1 -1
- package/dist/graphml.js +3 -3
- package/dist/json.js +3 -2
- package/dist/neo4j.js +6 -4
- package/dist/neo4j.js.map +1 -1
- package/dist/obo.js +1 -1
- package/dist/pajek.js +1 -1
- package/dist/positions.js +45 -3
- package/dist/positions.js.map +1 -1
- package/dist/sources-cypher.d.ts +1 -0
- package/dist/sources-cypher.js +1351 -0
- package/dist/sources-cypher.js.map +1 -0
- package/dist/sources-ndex.d.ts +1 -0
- package/dist/sources-ndex.js +278 -0
- package/dist/sources-ndex.js.map +1 -0
- package/dist/sources-rest.d.ts +1 -0
- package/dist/sources-rest.js +1377 -0
- package/dist/sources-rest.js.map +1 -0
- package/dist/sources-sparql.d.ts +1 -0
- package/dist/sources-sparql.js +405 -0
- package/dist/sources-sparql.js.map +1 -0
- package/dist/src/common/report.d.ts +6 -3
- package/dist/src/common/report.d.ts.map +1 -1
- package/dist/src/common/report.js +15 -9
- package/dist/src/common/report.js.map +1 -1
- package/dist/src/formats/cx/importer.d.ts.map +1 -1
- package/dist/src/formats/cx/importer.js +5 -1
- package/dist/src/formats/cx/importer.js.map +1 -1
- package/dist/src/formats/cx/styles.d.ts +24 -1
- package/dist/src/formats/cx/styles.d.ts.map +1 -1
- package/dist/src/formats/cx/styles.js +118 -11
- package/dist/src/formats/cx/styles.js.map +1 -1
- package/dist/src/formats/cx2/importer.d.ts.map +1 -1
- package/dist/src/formats/cx2/importer.js +1 -0
- package/dist/src/formats/cx2/importer.js.map +1 -1
- package/dist/src/formats/cx2/styles.d.ts.map +1 -1
- package/dist/src/formats/cx2/styles.js +3 -1
- package/dist/src/formats/cx2/styles.js.map +1 -1
- package/dist/src/formats/cys/importer.d.ts.map +1 -1
- package/dist/src/formats/cys/importer.js +1 -0
- package/dist/src/formats/cys/importer.js.map +1 -1
- package/dist/src/formats/cys/styles.d.ts +2 -0
- package/dist/src/formats/cys/styles.d.ts.map +1 -1
- package/dist/src/formats/cys/styles.js +15 -7
- package/dist/src/formats/cys/styles.js.map +1 -1
- package/dist/src/formats/dot/drawing.d.ts +98 -0
- package/dist/src/formats/dot/drawing.d.ts.map +1 -0
- package/dist/src/formats/dot/drawing.js +734 -0
- package/dist/src/formats/dot/drawing.js.map +1 -0
- package/dist/src/formats/dot/importer.d.ts.map +1 -1
- package/dist/src/formats/dot/importer.js +108 -31
- package/dist/src/formats/dot/importer.js.map +1 -1
- package/dist/src/formats/dot/label-places.d.ts +34 -0
- package/dist/src/formats/dot/label-places.d.ts.map +1 -0
- package/dist/src/formats/dot/label-places.js +179 -0
- package/dist/src/formats/dot/label-places.js.map +1 -0
- package/dist/src/formats/dot/record.d.ts +50 -0
- package/dist/src/formats/dot/record.d.ts.map +1 -0
- package/dist/src/formats/dot/record.js +275 -0
- package/dist/src/formats/dot/record.js.map +1 -0
- package/dist/src/formats/dot/styles.d.ts +62 -2
- package/dist/src/formats/dot/styles.d.ts.map +1 -1
- package/dist/src/formats/dot/styles.js +1457 -120
- package/dist/src/formats/dot/styles.js.map +1 -1
- package/dist/src/formats/gexf/dialog-metrics.d.ts +15 -0
- package/dist/src/formats/gexf/dialog-metrics.d.ts.map +1 -0
- package/dist/src/formats/gexf/dialog-metrics.js +59 -0
- package/dist/src/formats/gexf/dialog-metrics.js.map +1 -0
- package/dist/src/formats/gexf/importer.d.ts +7 -0
- package/dist/src/formats/gexf/importer.d.ts.map +1 -1
- package/dist/src/formats/gexf/importer.js +41 -5
- package/dist/src/formats/gexf/importer.js.map +1 -1
- package/dist/src/formats/gexf/preview.d.ts +77 -0
- package/dist/src/formats/gexf/preview.d.ts.map +1 -0
- package/dist/src/formats/gexf/preview.js +191 -0
- package/dist/src/formats/gexf/preview.js.map +1 -0
- package/dist/src/formats/gexf/schema.d.ts.map +1 -1
- package/dist/src/formats/gexf/schema.js +2 -1
- package/dist/src/formats/gexf/schema.js.map +1 -1
- package/dist/src/formats/gexf/styles.d.ts +60 -16
- package/dist/src/formats/gexf/styles.d.ts.map +1 -1
- package/dist/src/formats/gexf/styles.js +883 -131
- package/dist/src/formats/gexf/styles.js.map +1 -1
- package/dist/src/formats/gml/importer.d.ts +5 -2
- package/dist/src/formats/gml/importer.d.ts.map +1 -1
- package/dist/src/formats/gml/importer.js +258 -71
- package/dist/src/formats/gml/importer.js.map +1 -1
- package/dist/src/formats/gml/index.d.ts +1 -1
- package/dist/src/formats/gml/index.d.ts.map +1 -1
- package/dist/src/formats/gml/index.js +1 -1
- package/dist/src/formats/gml/index.js.map +1 -1
- package/dist/src/formats/gml/positions.d.ts +7 -0
- package/dist/src/formats/gml/positions.d.ts.map +1 -1
- package/dist/src/formats/gml/positions.js +29 -7
- package/dist/src/formats/gml/positions.js.map +1 -1
- package/dist/src/formats/gml/styles.d.ts.map +1 -1
- package/dist/src/formats/gml/styles.js +756 -103
- package/dist/src/formats/gml/styles.js.map +1 -1
- package/dist/src/formats/graphml/styles-plain.d.ts.map +1 -1
- package/dist/src/formats/graphml/styles-plain.js +8 -12
- package/dist/src/formats/graphml/styles-plain.js.map +1 -1
- package/dist/src/formats/graphml/styles-yed.d.ts +21 -15
- package/dist/src/formats/graphml/styles-yed.d.ts.map +1 -1
- package/dist/src/formats/graphml/styles-yed.js +749 -148
- package/dist/src/formats/graphml/styles-yed.js.map +1 -1
- package/dist/src/formats/graphml/styles-yfiles3.d.ts +1 -1
- package/dist/src/formats/graphml/styles-yfiles3.d.ts.map +1 -1
- package/dist/src/formats/graphml/styles-yfiles3.js +429 -64
- package/dist/src/formats/graphml/styles-yfiles3.js.map +1 -1
- package/dist/src/formats/graphml/yfiles.d.ts +3 -3
- package/dist/src/formats/graphml/yfiles.d.ts.map +1 -1
- package/dist/src/formats/graphml/yfiles.js +16 -6
- package/dist/src/formats/graphml/yfiles.js.map +1 -1
- package/dist/src/formats/json/dialect.d.ts +3 -2
- package/dist/src/formats/json/dialect.d.ts.map +1 -1
- package/dist/src/formats/json/dialect.js +39 -5
- package/dist/src/formats/json/dialect.js.map +1 -1
- package/dist/src/formats/json/importer.d.ts +13 -2
- package/dist/src/formats/json/importer.d.ts.map +1 -1
- package/dist/src/formats/json/importer.js +42 -6
- package/dist/src/formats/json/importer.js.map +1 -1
- package/dist/src/formats/json/index.d.ts +1 -1
- package/dist/src/formats/json/index.d.ts.map +1 -1
- package/dist/src/formats/json/index.js +1 -1
- package/dist/src/formats/json/index.js.map +1 -1
- package/dist/src/formats/json/positions.d.ts +5 -2
- package/dist/src/formats/json/positions.d.ts.map +1 -1
- package/dist/src/formats/json/positions.js +20 -4
- package/dist/src/formats/json/positions.js.map +1 -1
- package/dist/src/formats/json/styles.d.ts +12 -1
- package/dist/src/formats/json/styles.d.ts.map +1 -1
- package/dist/src/formats/json/styles.js +1755 -136
- package/dist/src/formats/json/styles.js.map +1 -1
- package/dist/src/formats/pajek/draw.d.ts +96 -0
- package/dist/src/formats/pajek/draw.d.ts.map +1 -0
- package/dist/src/formats/pajek/draw.js +372 -0
- package/dist/src/formats/pajek/draw.js.map +1 -0
- package/dist/src/formats/pajek/exporter.d.ts.map +1 -1
- package/dist/src/formats/pajek/exporter.js +70 -51
- package/dist/src/formats/pajek/exporter.js.map +1 -1
- package/dist/src/formats/pajek/importer.d.ts +9 -0
- package/dist/src/formats/pajek/importer.d.ts.map +1 -1
- package/dist/src/formats/pajek/importer.js +233 -102
- package/dist/src/formats/pajek/importer.js.map +1 -1
- package/dist/src/formats/pajek/index.d.ts +1 -0
- package/dist/src/formats/pajek/index.d.ts.map +1 -1
- package/dist/src/formats/pajek/index.js.map +1 -1
- package/dist/src/formats/pajek/styles.d.ts +15 -7
- package/dist/src/formats/pajek/styles.d.ts.map +1 -1
- package/dist/src/formats/pajek/styles.js +1279 -114
- package/dist/src/formats/pajek/styles.js.map +1 -1
- package/dist/src/formats/pajek/syntax.d.ts +10 -1
- package/dist/src/formats/pajek/syntax.d.ts.map +1 -1
- package/dist/src/formats/pajek/syntax.js +26 -2
- package/dist/src/formats/pajek/syntax.js.map +1 -1
- package/dist/src/formats/xgmml/emit.d.ts +1 -0
- package/dist/src/formats/xgmml/emit.d.ts.map +1 -1
- package/dist/src/formats/xgmml/emit.js +65 -5
- package/dist/src/formats/xgmml/emit.js.map +1 -1
- package/dist/src/formats/xgmml/styles.d.ts +23 -3
- package/dist/src/formats/xgmml/styles.d.ts.map +1 -1
- package/dist/src/formats/xgmml/styles.js +278 -60
- package/dist/src/formats/xgmml/styles.js.map +1 -1
- package/dist/src/index.d.ts +10 -2
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +11 -2
- package/dist/src/index.js.map +1 -1
- package/dist/src/positions/convert.d.ts.map +1 -1
- package/dist/src/positions/convert.js +11 -1
- package/dist/src/positions/convert.js.map +1 -1
- package/dist/src/positions/extract.d.ts.map +1 -1
- package/dist/src/positions/extract.js +53 -1
- package/dist/src/positions/extract.js.map +1 -1
- package/dist/src/positions/index.d.ts +1 -1
- package/dist/src/positions/index.d.ts.map +1 -1
- package/dist/src/positions/types.d.ts +59 -0
- package/dist/src/positions/types.d.ts.map +1 -1
- package/dist/src/registry.d.ts +173 -1
- package/dist/src/registry.d.ts.map +1 -1
- package/dist/src/registry.js +196 -1
- package/dist/src/registry.js.map +1 -1
- package/dist/src/sources/builtins.d.ts +11 -0
- package/dist/src/sources/builtins.d.ts.map +1 -0
- package/dist/src/sources/builtins.js +53 -0
- package/dist/src/sources/builtins.js.map +1 -0
- package/dist/src/sources/codes.d.ts +230 -0
- package/dist/src/sources/codes.d.ts.map +1 -0
- package/dist/src/sources/codes.js +58 -0
- package/dist/src/sources/codes.js.map +1 -0
- package/dist/src/sources/context.d.ts +112 -0
- package/dist/src/sources/context.d.ts.map +1 -0
- package/dist/src/sources/context.js +740 -0
- package/dist/src/sources/context.js.map +1 -0
- package/dist/src/sources/credentials.d.ts +179 -0
- package/dist/src/sources/credentials.d.ts.map +1 -0
- package/dist/src/sources/credentials.js +301 -0
- package/dist/src/sources/credentials.js.map +1 -0
- package/dist/src/sources/cypher/descriptor.d.ts +21 -0
- package/dist/src/sources/cypher/descriptor.d.ts.map +1 -0
- package/dist/src/sources/cypher/descriptor.js +124 -0
- package/dist/src/sources/cypher/descriptor.js.map +1 -0
- package/dist/src/sources/cypher/flatten.d.ts +72 -0
- package/dist/src/sources/cypher/flatten.d.ts.map +1 -0
- package/dist/src/sources/cypher/flatten.js +279 -0
- package/dist/src/sources/cypher/flatten.js.map +1 -0
- package/dist/src/sources/cypher/index.d.ts +33 -0
- package/dist/src/sources/cypher/index.d.ts.map +1 -0
- package/dist/src/sources/cypher/index.js +511 -0
- package/dist/src/sources/cypher/index.js.map +1 -0
- package/dist/src/sources/cypher/params.d.ts +40 -0
- package/dist/src/sources/cypher/params.d.ts.map +1 -0
- package/dist/src/sources/cypher/params.js +6 -0
- package/dist/src/sources/cypher/params.js.map +1 -0
- package/dist/src/sources/cypher/profiles.d.ts +44 -0
- package/dist/src/sources/cypher/profiles.d.ts.map +1 -0
- package/dist/src/sources/cypher/profiles.js +61 -0
- package/dist/src/sources/cypher/profiles.js.map +1 -0
- package/dist/src/sources/cypher/query-builder.d.ts +123 -0
- package/dist/src/sources/cypher/query-builder.d.ts.map +1 -0
- package/dist/src/sources/cypher/query-builder.js +267 -0
- package/dist/src/sources/cypher/query-builder.js.map +1 -0
- package/dist/src/sources/cypher/transports/bolt.d.ts +21 -0
- package/dist/src/sources/cypher/transports/bolt.d.ts.map +1 -0
- package/dist/src/sources/cypher/transports/bolt.js +185 -0
- package/dist/src/sources/cypher/transports/bolt.js.map +1 -0
- package/dist/src/sources/cypher/transports/neptune-analytics.d.ts +15 -0
- package/dist/src/sources/cypher/transports/neptune-analytics.d.ts.map +1 -0
- package/dist/src/sources/cypher/transports/neptune-analytics.js +38 -0
- package/dist/src/sources/cypher/transports/neptune-analytics.js.map +1 -0
- package/dist/src/sources/cypher/transports/neptune-https.d.ts +31 -0
- package/dist/src/sources/cypher/transports/neptune-https.d.ts.map +1 -0
- package/dist/src/sources/cypher/transports/neptune-https.js +104 -0
- package/dist/src/sources/cypher/transports/neptune-https.js.map +1 -0
- package/dist/src/sources/cypher/transports/query-api.d.ts +14 -0
- package/dist/src/sources/cypher/transports/query-api.d.ts.map +1 -0
- package/dist/src/sources/cypher/transports/query-api.js +80 -0
- package/dist/src/sources/cypher/transports/query-api.js.map +1 -0
- package/dist/src/sources/cypher/transports/transport.d.ts +78 -0
- package/dist/src/sources/cypher/transports/transport.d.ts.map +1 -0
- package/dist/src/sources/cypher/transports/transport.js +77 -0
- package/dist/src/sources/cypher/transports/transport.js.map +1 -0
- package/dist/src/sources/cypher/types-map.d.ts +91 -0
- package/dist/src/sources/cypher/types-map.d.ts.map +1 -0
- package/dist/src/sources/cypher/types-map.js +306 -0
- package/dist/src/sources/cypher/types-map.js.map +1 -0
- package/dist/src/sources/define.d.ts +47 -0
- package/dist/src/sources/define.d.ts.map +1 -0
- package/dist/src/sources/define.js +173 -0
- package/dist/src/sources/define.js.map +1 -0
- package/dist/src/sources/fail.d.ts +33 -0
- package/dist/src/sources/fail.d.ts.map +1 -0
- package/dist/src/sources/fail.js +49 -0
- package/dist/src/sources/fail.js.map +1 -0
- package/dist/src/sources/ids.d.ts +69 -0
- package/dist/src/sources/ids.d.ts.map +1 -0
- package/dist/src/sources/ids.js +69 -0
- package/dist/src/sources/ids.js.map +1 -0
- package/dist/src/sources/ndex/client.d.ts +31 -0
- package/dist/src/sources/ndex/client.d.ts.map +1 -0
- package/dist/src/sources/ndex/client.js +90 -0
- package/dist/src/sources/ndex/client.js.map +1 -0
- package/dist/src/sources/ndex/descriptor.d.ts +10 -0
- package/dist/src/sources/ndex/descriptor.d.ts.map +1 -0
- package/dist/src/sources/ndex/descriptor.js +55 -0
- package/dist/src/sources/ndex/descriptor.js.map +1 -0
- package/dist/src/sources/ndex/expand.d.ts +20 -0
- package/dist/src/sources/ndex/expand.d.ts.map +1 -0
- package/dist/src/sources/ndex/expand.js +87 -0
- package/dist/src/sources/ndex/expand.js.map +1 -0
- package/dist/src/sources/ndex/index.d.ts +25 -0
- package/dist/src/sources/ndex/index.d.ts.map +1 -0
- package/dist/src/sources/ndex/index.js +191 -0
- package/dist/src/sources/ndex/index.js.map +1 -0
- package/dist/src/sources/ndex/params.d.ts +17 -0
- package/dist/src/sources/ndex/params.d.ts.map +1 -0
- package/dist/src/sources/ndex/params.js +6 -0
- package/dist/src/sources/ndex/params.js.map +1 -0
- package/dist/src/sources/ndex/share-url.d.ts +40 -0
- package/dist/src/sources/ndex/share-url.d.ts.map +1 -0
- package/dist/src/sources/ndex/share-url.js +64 -0
- package/dist/src/sources/ndex/share-url.js.map +1 -0
- package/dist/src/sources/params.d.ts +31 -0
- package/dist/src/sources/params.d.ts.map +1 -0
- package/dist/src/sources/params.js +6 -0
- package/dist/src/sources/params.js.map +1 -0
- package/dist/src/sources/registry.d.ts +118 -0
- package/dist/src/sources/registry.d.ts.map +1 -0
- package/dist/src/sources/registry.js +193 -0
- package/dist/src/sources/registry.js.map +1 -0
- package/dist/src/sources/rest/descriptor.d.ts +16 -0
- package/dist/src/sources/rest/descriptor.d.ts.map +1 -0
- package/dist/src/sources/rest/descriptor.js +76 -0
- package/dist/src/sources/rest/descriptor.js.map +1 -0
- package/dist/src/sources/rest/index.d.ts +14 -0
- package/dist/src/sources/rest/index.d.ts.map +1 -0
- package/dist/src/sources/rest/index.js +13 -0
- package/dist/src/sources/rest/index.js.map +1 -0
- package/dist/src/sources/rest/mapping.d.ts +30 -0
- package/dist/src/sources/rest/mapping.d.ts.map +1 -0
- package/dist/src/sources/rest/mapping.js +362 -0
- package/dist/src/sources/rest/mapping.js.map +1 -0
- package/dist/src/sources/rest/openalex.d.ts +27 -0
- package/dist/src/sources/rest/openalex.d.ts.map +1 -0
- package/dist/src/sources/rest/openalex.js +269 -0
- package/dist/src/sources/rest/openalex.js.map +1 -0
- package/dist/src/sources/rest/paging.d.ts +53 -0
- package/dist/src/sources/rest/paging.d.ts.map +1 -0
- package/dist/src/sources/rest/paging.js +138 -0
- package/dist/src/sources/rest/paging.js.map +1 -0
- package/dist/src/sources/rest/params.d.ts +216 -0
- package/dist/src/sources/rest/params.d.ts.map +1 -0
- package/dist/src/sources/rest/params.js +7 -0
- package/dist/src/sources/rest/params.js.map +1 -0
- package/dist/src/sources/rest/records.d.ts +41 -0
- package/dist/src/sources/rest/records.d.ts.map +1 -0
- package/dist/src/sources/rest/records.js +240 -0
- package/dist/src/sources/rest/records.js.map +1 -0
- package/dist/src/sources/rest/samples/deps-dev.d.ts +10 -0
- package/dist/src/sources/rest/samples/deps-dev.d.ts.map +1 -0
- package/dist/src/sources/rest/samples/deps-dev.js +47 -0
- package/dist/src/sources/rest/samples/deps-dev.js.map +1 -0
- package/dist/src/sources/rest/samples/string.d.ts +9 -0
- package/dist/src/sources/rest/samples/string.d.ts.map +1 -0
- package/dist/src/sources/rest/samples/string.js +42 -0
- package/dist/src/sources/rest/samples/string.js.map +1 -0
- package/dist/src/sources/rest/selectors.d.ts +41 -0
- package/dist/src/sources/rest/selectors.d.ts.map +1 -0
- package/dist/src/sources/rest/selectors.js +81 -0
- package/dist/src/sources/rest/selectors.js.map +1 -0
- package/dist/src/sources/rest/source.d.ts +67 -0
- package/dist/src/sources/rest/source.d.ts.map +1 -0
- package/dist/src/sources/rest/source.js +650 -0
- package/dist/src/sources/rest/source.js.map +1 -0
- package/dist/src/sources/rest/templates.d.ts +38 -0
- package/dist/src/sources/rest/templates.d.ts.map +1 -0
- package/dist/src/sources/rest/templates.js +125 -0
- package/dist/src/sources/rest/templates.js.map +1 -0
- package/dist/src/sources/run.d.ts +93 -0
- package/dist/src/sources/run.d.ts.map +1 -0
- package/dist/src/sources/run.js +673 -0
- package/dist/src/sources/run.js.map +1 -0
- package/dist/src/sources/sha256.d.ts +12 -0
- package/dist/src/sources/sha256.d.ts.map +1 -0
- package/dist/src/sources/sha256.js +95 -0
- package/dist/src/sources/sha256.js.map +1 -0
- package/dist/src/sources/sigv4.d.ts +26 -0
- package/dist/src/sources/sigv4.d.ts.map +1 -0
- package/dist/src/sources/sigv4.js +184 -0
- package/dist/src/sources/sigv4.js.map +1 -0
- package/dist/src/sources/sparql/descriptor.d.ts +10 -0
- package/dist/src/sources/sparql/descriptor.d.ts.map +1 -0
- package/dist/src/sources/sparql/descriptor.js +64 -0
- package/dist/src/sources/sparql/descriptor.js.map +1 -0
- package/dist/src/sources/sparql/index.d.ts +28 -0
- package/dist/src/sources/sparql/index.d.ts.map +1 -0
- package/dist/src/sources/sparql/index.js +314 -0
- package/dist/src/sources/sparql/index.js.map +1 -0
- package/dist/src/sources/sparql/ntriples.d.ts +69 -0
- package/dist/src/sources/sparql/ntriples.d.ts.map +1 -0
- package/dist/src/sources/sparql/ntriples.js +180 -0
- package/dist/src/sources/sparql/ntriples.js.map +1 -0
- package/dist/src/sources/sparql/params.d.ts +27 -0
- package/dist/src/sources/sparql/params.d.ts.map +1 -0
- package/dist/src/sources/sparql/params.js +5 -0
- package/dist/src/sources/sparql/params.js.map +1 -0
- package/dist/src/sources/sparql/query.d.ts +72 -0
- package/dist/src/sources/sparql/query.d.ts.map +1 -0
- package/dist/src/sources/sparql/query.js +113 -0
- package/dist/src/sources/sparql/query.js.map +1 -0
- package/dist/src/sources/testing.d.ts +96 -0
- package/dist/src/sources/testing.d.ts.map +1 -0
- package/dist/src/sources/testing.js +138 -0
- package/dist/src/sources/testing.js.map +1 -0
- package/dist/src/sources/types.d.ts +696 -0
- package/dist/src/sources/types.d.ts.map +1 -0
- package/dist/src/sources/types.js +10 -0
- package/dist/src/sources/types.js.map +1 -0
- package/dist/src/styles/annotations.d.ts +61 -5
- package/dist/src/styles/annotations.d.ts.map +1 -1
- package/dist/src/styles/annotations.js +130 -22
- package/dist/src/styles/annotations.js.map +1 -1
- package/dist/src/styles/canon/bends.d.ts +46 -0
- package/dist/src/styles/canon/bends.d.ts.map +1 -1
- package/dist/src/styles/canon/bends.js +123 -0
- package/dist/src/styles/canon/bends.js.map +1 -1
- package/dist/src/styles/canon/color-tables.d.ts +6 -1
- package/dist/src/styles/canon/color-tables.d.ts.map +1 -1
- package/dist/src/styles/canon/color-tables.js +10 -4
- package/dist/src/styles/canon/color-tables.js.map +1 -1
- package/dist/src/styles/canon/color.d.ts +3 -1
- package/dist/src/styles/canon/color.d.ts.map +1 -1
- package/dist/src/styles/canon/color.js +103 -3
- package/dist/src/styles/canon/color.js.map +1 -1
- package/dist/src/styles/canon/enums.d.ts +2 -2
- package/dist/src/styles/canon/enums.d.ts.map +1 -1
- package/dist/src/styles/canon/enums.js +82 -7
- package/dist/src/styles/canon/enums.js.map +1 -1
- package/dist/src/styles/canon/graphviz.d.ts +12 -3
- package/dist/src/styles/canon/graphviz.d.ts.map +1 -1
- package/dist/src/styles/canon/graphviz.js +57 -9
- package/dist/src/styles/canon/graphviz.js.map +1 -1
- package/dist/src/styles/canon/number.d.ts +8 -0
- package/dist/src/styles/canon/number.d.ts.map +1 -1
- package/dist/src/styles/canon/number.js +18 -0
- package/dist/src/styles/canon/number.js.map +1 -1
- package/dist/src/styles/canon/text.d.ts +29 -2
- package/dist/src/styles/canon/text.d.ts.map +1 -1
- package/dist/src/styles/canon/text.js +156 -16
- package/dist/src/styles/canon/text.js.map +1 -1
- package/dist/src/styles/codes.d.ts +2 -0
- package/dist/src/styles/codes.d.ts.map +1 -1
- package/dist/src/styles/codes.js +2 -0
- package/dist/src/styles/codes.js.map +1 -1
- package/dist/src/styles/cyjs/cascade.d.ts.map +1 -1
- package/dist/src/styles/cyjs/cascade.js +1037 -35
- package/dist/src/styles/cyjs/cascade.js.map +1 -1
- package/dist/src/styles/cyjs/defaults-table.d.ts.map +1 -1
- package/dist/src/styles/cyjs/defaults-table.js +5 -0
- package/dist/src/styles/cyjs/defaults-table.js.map +1 -1
- package/dist/src/styles/cyjs/emit.d.ts.map +1 -1
- package/dist/src/styles/cyjs/emit.js +216 -12
- package/dist/src/styles/cyjs/emit.js.map +1 -1
- package/dist/src/styles/cyjs/face.d.ts +20 -0
- package/dist/src/styles/cyjs/face.d.ts.map +1 -0
- package/dist/src/styles/cyjs/face.js +332 -0
- package/dist/src/styles/cyjs/face.js.map +1 -0
- package/dist/src/styles/cyjs/mappers.d.ts +48 -2
- package/dist/src/styles/cyjs/mappers.d.ts.map +1 -1
- package/dist/src/styles/cyjs/mappers.js +463 -26
- package/dist/src/styles/cyjs/mappers.js.map +1 -1
- package/dist/src/styles/cyjs/routes.d.ts +53 -0
- package/dist/src/styles/cyjs/routes.d.ts.map +1 -0
- package/dist/src/styles/cyjs/routes.js +360 -0
- package/dist/src/styles/cyjs/routes.js.map +1 -0
- package/dist/src/styles/cytoscape/charts.d.ts +23 -0
- package/dist/src/styles/cytoscape/charts.d.ts.map +1 -0
- package/dist/src/styles/cytoscape/charts.js +560 -0
- package/dist/src/styles/cytoscape/charts.js.map +1 -0
- package/dist/src/styles/cytoscape/emit.d.ts.map +1 -1
- package/dist/src/styles/cytoscape/emit.js +204 -44
- package/dist/src/styles/cytoscape/emit.js.map +1 -1
- package/dist/src/styles/cytoscape/lexicon.d.ts +97 -3
- package/dist/src/styles/cytoscape/lexicon.d.ts.map +1 -1
- package/dist/src/styles/cytoscape/lexicon.js +413 -79
- package/dist/src/styles/cytoscape/lexicon.js.map +1 -1
- package/dist/src/styles/cytoscape/mappings.d.ts +30 -0
- package/dist/src/styles/cytoscape/mappings.d.ts.map +1 -1
- package/dist/src/styles/cytoscape/mappings.js +92 -0
- package/dist/src/styles/cytoscape/mappings.js.map +1 -1
- package/dist/src/styles/cytoscape/resolve.d.ts +46 -3
- package/dist/src/styles/cytoscape/resolve.d.ts.map +1 -1
- package/dist/src/styles/cytoscape/resolve.js +632 -22
- package/dist/src/styles/cytoscape/resolve.js.map +1 -1
- package/dist/src/styles/cytoscape/translate.d.ts.map +1 -1
- package/dist/src/styles/cytoscape/translate.js +10 -10
- package/dist/src/styles/cytoscape/translate.js.map +1 -1
- package/dist/src/styles/defaults.d.ts +50 -0
- package/dist/src/styles/defaults.d.ts.map +1 -1
- package/dist/src/styles/defaults.js +315 -37
- package/dist/src/styles/defaults.js.map +1 -1
- package/dist/src/styles/index.d.ts +4 -3
- package/dist/src/styles/index.d.ts.map +1 -1
- package/dist/src/styles/index.js +3 -2
- package/dist/src/styles/index.js.map +1 -1
- package/dist/src/styles/internal.d.ts +1 -0
- package/dist/src/styles/internal.d.ts.map +1 -1
- package/dist/src/styles/internal.js +1 -0
- package/dist/src/styles/internal.js.map +1 -1
- package/dist/src/styles/io/block.d.ts.map +1 -1
- package/dist/src/styles/io/block.js +9 -0
- package/dist/src/styles/io/block.js.map +1 -1
- package/dist/src/styles/io/generic.d.ts.map +1 -1
- package/dist/src/styles/io/generic.js +56 -16
- package/dist/src/styles/io/generic.js.map +1 -1
- package/dist/src/styles/io/round-trip.d.ts +56 -0
- package/dist/src/styles/io/round-trip.d.ts.map +1 -0
- package/dist/src/styles/io/round-trip.js +138 -0
- package/dist/src/styles/io/round-trip.js.map +1 -0
- package/dist/src/styles/io/writer.d.ts.map +1 -1
- package/dist/src/styles/io/writer.js +13 -4
- package/dist/src/styles/io/writer.js.map +1 -1
- package/dist/src/styles/notes.d.ts.map +1 -1
- package/dist/src/styles/notes.js +1 -0
- package/dist/src/styles/notes.js.map +1 -1
- package/dist/src/styles/plan/features.d.ts +1 -1
- package/dist/src/styles/plan/features.d.ts.map +1 -1
- package/dist/src/styles/plan/features.js +22 -2
- package/dist/src/styles/plan/features.js.map +1 -1
- package/dist/src/styles/plan/index.d.ts +1 -1
- package/dist/src/styles/plan/index.d.ts.map +1 -1
- package/dist/src/styles/plan/index.js +1 -1
- package/dist/src/styles/plan/index.js.map +1 -1
- package/dist/src/styles/plan/plan.d.ts.map +1 -1
- package/dist/src/styles/plan/plan.js +61 -4
- package/dist/src/styles/plan/plan.js.map +1 -1
- package/dist/src/styles/plan/resolve.d.ts +13 -1
- package/dist/src/styles/plan/resolve.d.ts.map +1 -1
- package/dist/src/styles/plan/resolve.js +53 -6
- package/dist/src/styles/plan/resolve.js.map +1 -1
- package/dist/src/styles/slots.d.ts +14 -0
- package/dist/src/styles/slots.d.ts.map +1 -0
- package/dist/src/styles/slots.js +20 -0
- package/dist/src/styles/slots.js.map +1 -0
- package/dist/src/styles/types.d.ts +638 -5
- package/dist/src/styles/types.d.ts.map +1 -1
- package/dist/src/styles/vocabulary.d.ts +3 -2
- package/dist/src/styles/vocabulary.d.ts.map +1 -1
- package/dist/src/styles/vocabulary.js +218 -1
- package/dist/src/styles/vocabulary.js.map +1 -1
- package/dist/src/types.d.ts +19 -5
- package/dist/src/types.d.ts.map +1 -1
- package/dist/src/types.js.map +1 -1
- package/dist/styles.js +29 -238
- package/dist/styles.js.map +1 -1
- package/dist/xgmml.js +3 -3
- package/docs/samples/people.json +6 -0
- package/package.json +53 -8
- package/src/common/report.ts +27 -7
- package/src/formats/cx/importer.ts +6 -1
- package/src/formats/cx/styles.ts +144 -9
- package/src/formats/cx2/importer.ts +1 -0
- package/src/formats/cx2/styles.ts +3 -1
- package/src/formats/cys/importer.ts +1 -0
- package/src/formats/cys/styles.ts +27 -5
- package/src/formats/dot/drawing.ts +799 -0
- package/src/formats/dot/importer.ts +120 -35
- package/src/formats/dot/label-places.ts +228 -0
- package/src/formats/dot/record.ts +336 -0
- package/src/formats/dot/styles.ts +1657 -154
- package/src/formats/gexf/dialog-metrics.ts +61 -0
- package/src/formats/gexf/importer.ts +50 -5
- package/src/formats/gexf/preview.ts +217 -0
- package/src/formats/gexf/schema.ts +2 -1
- package/src/formats/gexf/styles.ts +1144 -142
- package/src/formats/gml/importer.ts +291 -76
- package/src/formats/gml/index.ts +1 -1
- package/src/formats/gml/positions.ts +29 -7
- package/src/formats/gml/styles.ts +854 -111
- package/src/formats/graphml/styles-plain.ts +8 -23
- package/src/formats/graphml/styles-yed.ts +821 -159
- package/src/formats/graphml/styles-yfiles3.ts +485 -63
- package/src/formats/graphml/yfiles.ts +19 -6
- package/src/formats/json/dialect.ts +41 -5
- package/src/formats/json/importer.ts +59 -7
- package/src/formats/json/index.ts +1 -0
- package/src/formats/json/positions.ts +22 -5
- package/src/formats/json/styles.ts +2041 -185
- package/src/formats/pajek/draw.ts +458 -0
- package/src/formats/pajek/exporter.ts +81 -49
- package/src/formats/pajek/importer.ts +278 -103
- package/src/formats/pajek/index.ts +1 -0
- package/src/formats/pajek/styles.ts +1382 -133
- package/src/formats/pajek/syntax.ts +27 -2
- package/src/formats/xgmml/emit.ts +73 -5
- package/src/formats/xgmml/styles.ts +331 -71
- package/src/index.ts +94 -0
- package/src/positions/convert.ts +12 -1
- package/src/positions/extract.ts +55 -1
- package/src/positions/index.ts +1 -0
- package/src/positions/types.ts +60 -0
- package/src/registry.ts +326 -1
- package/src/sources/builtins.ts +63 -0
- package/src/sources/codes.ts +235 -0
- package/src/sources/context.ts +894 -0
- package/src/sources/credentials.ts +409 -0
- package/src/sources/cypher/descriptor.ts +131 -0
- package/src/sources/cypher/flatten.ts +323 -0
- package/src/sources/cypher/index.ts +628 -0
- package/src/sources/cypher/params.ts +41 -0
- package/src/sources/cypher/profiles.ts +78 -0
- package/src/sources/cypher/query-builder.ts +327 -0
- package/src/sources/cypher/transports/bolt.ts +228 -0
- package/src/sources/cypher/transports/neptune-analytics.ts +41 -0
- package/src/sources/cypher/transports/neptune-https.ts +122 -0
- package/src/sources/cypher/transports/query-api.ts +100 -0
- package/src/sources/cypher/transports/transport.ts +139 -0
- package/src/sources/cypher/types-map.ts +418 -0
- package/src/sources/define.ts +195 -0
- package/src/sources/fail.ts +70 -0
- package/src/sources/ids.ts +80 -0
- package/src/sources/ndex/client.ts +102 -0
- package/src/sources/ndex/descriptor.ts +64 -0
- package/src/sources/ndex/expand.ts +100 -0
- package/src/sources/ndex/index.ts +235 -0
- package/src/sources/ndex/params.ts +17 -0
- package/src/sources/ndex/share-url.ts +84 -0
- package/src/sources/params.ts +32 -0
- package/src/sources/registry.ts +325 -0
- package/src/sources/rest/descriptor.ts +79 -0
- package/src/sources/rest/index.ts +22 -0
- package/src/sources/rest/mapping.ts +401 -0
- package/src/sources/rest/openalex.ts +288 -0
- package/src/sources/rest/paging.ts +180 -0
- package/src/sources/rest/params.ts +243 -0
- package/src/sources/rest/records.ts +289 -0
- package/src/sources/rest/samples/deps-dev.ts +49 -0
- package/src/sources/rest/samples/string.ts +44 -0
- package/src/sources/rest/selectors.ts +91 -0
- package/src/sources/rest/source.ts +776 -0
- package/src/sources/rest/templates.ts +151 -0
- package/src/sources/run.ts +793 -0
- package/src/sources/sha256.ts +99 -0
- package/src/sources/sigv4.ts +209 -0
- package/src/sources/sparql/descriptor.ts +67 -0
- package/src/sources/sparql/index.ts +356 -0
- package/src/sources/sparql/ntriples.ts +219 -0
- package/src/sources/sparql/params.ts +28 -0
- package/src/sources/sparql/query.ts +162 -0
- package/src/sources/testing.ts +210 -0
- package/src/sources/types.ts +776 -0
- package/src/styles/annotations.ts +201 -27
- package/src/styles/canon/bends.ts +137 -0
- package/src/styles/canon/color-tables.ts +10 -4
- package/src/styles/canon/color.ts +105 -3
- package/src/styles/canon/enums.ts +99 -8
- package/src/styles/canon/graphviz.ts +71 -10
- package/src/styles/canon/number.ts +19 -0
- package/src/styles/canon/text.ts +187 -16
- package/src/styles/codes.ts +2 -0
- package/src/styles/cyjs/cascade.ts +1193 -38
- package/src/styles/cyjs/defaults-table.ts +5 -0
- package/src/styles/cyjs/emit.ts +247 -16
- package/src/styles/cyjs/face.ts +372 -0
- package/src/styles/cyjs/mappers.ts +498 -28
- package/src/styles/cyjs/routes.ts +432 -0
- package/src/styles/cytoscape/charts.ts +684 -0
- package/src/styles/cytoscape/emit.ts +220 -44
- package/src/styles/cytoscape/lexicon.ts +459 -80
- package/src/styles/cytoscape/mappings.ts +108 -0
- package/src/styles/cytoscape/resolve.ts +763 -23
- package/src/styles/cytoscape/translate.ts +11 -11
- package/src/styles/defaults.ts +436 -38
- package/src/styles/index.ts +5 -0
- package/src/styles/internal.ts +1 -0
- package/src/styles/io/block.ts +10 -0
- package/src/styles/io/generic.ts +79 -23
- package/src/styles/io/round-trip.ts +202 -0
- package/src/styles/io/writer.ts +14 -4
- package/src/styles/notes.ts +1 -0
- package/src/styles/plan/features.ts +23 -2
- package/src/styles/plan/index.ts +1 -1
- package/src/styles/plan/plan.ts +69 -5
- package/src/styles/plan/resolve.ts +61 -6
- package/src/styles/slots.ts +25 -0
- package/src/styles/types.ts +658 -4
- package/src/styles/vocabulary.ts +226 -3
- package/src/types.ts +19 -5
- package/dist/chunks/block-DiGq58c3.js.map +0 -1
- package/dist/chunks/choose--jM0yYCo.js +0 -57
- package/dist/chunks/choose--jM0yYCo.js.map +0 -1
- package/dist/chunks/convert-BcQ8_jMo.js.map +0 -1
- package/dist/chunks/emit-CwU8cUmG.js.map +0 -1
- package/dist/chunks/export-BvqAXCKh.js.map +0 -1
- package/dist/chunks/exporter-CrDWIyiq.js.map +0 -1
- package/dist/chunks/format-BpQBx8MZ.js.map +0 -1
- package/dist/chunks/generic-Dq1ntt9q.js.map +0 -1
- package/dist/chunks/importer-BSvfrX_h.js.map +0 -1
- package/dist/chunks/importer-CMmeMWlC.js.map +0 -1
- package/dist/chunks/importer-COTK9Tsl.js.map +0 -1
- package/dist/chunks/importer-DiZRmOQG.js.map +0 -1
- package/dist/chunks/importer-e6LGpqHB.js.map +0 -1
- package/dist/chunks/importer-iFYPEKaJ.js.map +0 -1
- package/dist/chunks/importer-yh_aBCU6.js.map +0 -1
- package/dist/chunks/lexicon-CT69Kd87.js.map +0 -1
- package/dist/chunks/styles-BQnsga7p.js.map +0 -1
- package/dist/chunks/styles-D3fRphrO.js +0 -690
- package/dist/chunks/styles-D3fRphrO.js.map +0 -1
- package/dist/chunks/styles-yed-BF5x3_Y5.js +0 -842
- package/dist/chunks/styles-yed-BF5x3_Y5.js.map +0 -1
- package/dist/chunks/writer-DMKvthQE.js +0 -448
- package/dist/chunks/writer-DMKvthQE.js.map +0 -1
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* What every Cypher transport is (design section 12.2): something that runs one statement with
|
|
3
|
+
* its parameters and returns mapped rows, knows the server's profile, and closes. Also the one
|
|
4
|
+
* place a server's own error code becomes a source issue code.
|
|
5
|
+
*/
|
|
6
|
+
import { failOn } from "../../fail.js";
|
|
7
|
+
/** The longest server message a report keeps. */
|
|
8
|
+
const MAX_SERVER_MESSAGE = 500;
|
|
9
|
+
/**
|
|
10
|
+
* Raise the source issue a server error is: a login failure, a refusal, a server timeout, a
|
|
11
|
+
* missing database, or E_SOURCE_QUERY with the line and column the message names.
|
|
12
|
+
* @param report - the load's report
|
|
13
|
+
* @param err - what the server said
|
|
14
|
+
* @param origin - the origin that answered
|
|
15
|
+
* @param database - the database asked for, if any
|
|
16
|
+
* @returns never; it throws
|
|
17
|
+
*/
|
|
18
|
+
export function serverError(report, err, origin, database) {
|
|
19
|
+
const code = err.code ?? "";
|
|
20
|
+
if (/Security\.Unauthorized|AuthenticationRateLimit|UnauthorizedException/i.test(code)) {
|
|
21
|
+
return failOn(report, "E_SOURCE_AUTH", `${origin} refused the login`, {
|
|
22
|
+
origin,
|
|
23
|
+
status: err.status,
|
|
24
|
+
scheme: null,
|
|
25
|
+
serverCode: err.code,
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
if (/Security\.Forbidden|AccessMode|AccessDenied/i.test(code)) {
|
|
29
|
+
return failOn(report, "E_SOURCE_FORBIDDEN", `${origin} refused the statement`, {
|
|
30
|
+
status: err.status,
|
|
31
|
+
serverCode: err.code,
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
if (/TimedOut|Timeout|TimeLimitExceeded/i.test(code)) {
|
|
35
|
+
return failOn(report, "E_SOURCE_TIMEOUT", `${origin} timed the statement out`, {
|
|
36
|
+
timeoutMs: null,
|
|
37
|
+
serverSide: true,
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
if (/DatabaseNotFound/i.test(code)) {
|
|
41
|
+
return failOn(report, "E_SOURCE_NOT_FOUND", `${origin} has no database ${String(database)}`, {
|
|
42
|
+
what: "database",
|
|
43
|
+
value: database ?? null,
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
const where = /line (\d+), column (\d+)/i.exec(err.message);
|
|
47
|
+
return failOn(report, "E_SOURCE_QUERY", `${origin} refused the query: ${code}`, {
|
|
48
|
+
serverCode: err.code,
|
|
49
|
+
line: where === null ? null : Number(where[1]),
|
|
50
|
+
column: where === null ? null : Number(where[2]),
|
|
51
|
+
serverMessage: err.showable && err.message !== "" ? err.message.slice(0, MAX_SERVER_MESSAGE) : null,
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* The value of a response body as JSON, or null when it is not JSON.
|
|
56
|
+
* @param text - the body
|
|
57
|
+
* @returns the parsed value, or null
|
|
58
|
+
*/
|
|
59
|
+
export function parseJson(text) {
|
|
60
|
+
try {
|
|
61
|
+
return JSON.parse(text);
|
|
62
|
+
}
|
|
63
|
+
catch {
|
|
64
|
+
return null;
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* The fields and rows of a result given as one object per row (Neptune's `results`).
|
|
69
|
+
* @param results - the row objects
|
|
70
|
+
* @param map - maps one value, given its column
|
|
71
|
+
* @returns the result
|
|
72
|
+
*/
|
|
73
|
+
export function objectRows(results, map) {
|
|
74
|
+
const fields = [...new Set(results.flatMap((r) => Object.keys(r)))];
|
|
75
|
+
return { fields, rows: results.map((r) => fields.map((f) => map(r[f], f))) };
|
|
76
|
+
}
|
|
77
|
+
//# sourceMappingURL=transport.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transport.js","sourceRoot":"","sources":["../../../../../src/sources/cypher/transports/transport.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The one type mapper of the Cypher source (design section 10): every transport's wire values --
|
|
3
|
+
* Neo4j's typed JSON, neo4j-driver's objects, Neptune's plain JSON -- become the same plain values,
|
|
4
|
+
* and every node, relationship and path becomes a GraphNode, a GraphRel or an array of them.
|
|
5
|
+
*
|
|
6
|
+
* - Integers: a number while it is exact; past 2^53 the `long` parameter picks a rounded number
|
|
7
|
+
* (W_PRECISION, once per column) or the exact digits as a string.
|
|
8
|
+
* - Floats, booleans, strings: as they are. Dates and instants: epoch milliseconds. Local times,
|
|
9
|
+
* times and durations: their ISO text. Points: `{ srid, x, y, z? }`. Lists and maps: arrays and
|
|
10
|
+
* objects of mapped values. Bytes: dropped (W_SOURCE_VALUE).
|
|
11
|
+
*/
|
|
12
|
+
import { type ImportReportBuilder } from "../../common/report.js";
|
|
13
|
+
/** A node a query returned. */
|
|
14
|
+
export declare class GraphNode {
|
|
15
|
+
readonly id: string;
|
|
16
|
+
readonly labels: readonly string[];
|
|
17
|
+
readonly properties: Readonly<Record<string, unknown>>;
|
|
18
|
+
/**
|
|
19
|
+
* Create one.
|
|
20
|
+
* @param id - the server's element id
|
|
21
|
+
* @param labels - its labels
|
|
22
|
+
* @param properties - its mapped properties
|
|
23
|
+
*/
|
|
24
|
+
constructor(id: string, labels: readonly string[], properties: Readonly<Record<string, unknown>>);
|
|
25
|
+
}
|
|
26
|
+
/** A relationship a query returned. */
|
|
27
|
+
export declare class GraphRel {
|
|
28
|
+
readonly id: string;
|
|
29
|
+
readonly start: string;
|
|
30
|
+
readonly end: string;
|
|
31
|
+
readonly type: string;
|
|
32
|
+
readonly properties: Readonly<Record<string, unknown>>;
|
|
33
|
+
/**
|
|
34
|
+
* Create one.
|
|
35
|
+
* @param id - the server's element id
|
|
36
|
+
* @param start - the start node's element id
|
|
37
|
+
* @param end - the end node's element id
|
|
38
|
+
* @param type - its type
|
|
39
|
+
* @param properties - its mapped properties
|
|
40
|
+
*/
|
|
41
|
+
constructor(id: string, start: string, end: string, type: string, properties: Readonly<Record<string, unknown>>);
|
|
42
|
+
}
|
|
43
|
+
/** What the mapper needs: the `long` choice and the report its warnings go to. */
|
|
44
|
+
export interface MapContext {
|
|
45
|
+
/** Integers past 2^53: "f64" (rounded, W_PRECISION) or "string". */
|
|
46
|
+
readonly long: "f64" | "string";
|
|
47
|
+
/** The load's report. */
|
|
48
|
+
readonly report: ImportReportBuilder;
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Map a value of Neo4j's typed JSON (the Query API's `application/vnd.neo4j.query.v1.1`).
|
|
52
|
+
* @param v - the wire value
|
|
53
|
+
* @param column - the result column or property key it belongs to
|
|
54
|
+
* @param m - the map context
|
|
55
|
+
* @returns the plain value, a GraphNode, a GraphRel or an array; undefined when dropped
|
|
56
|
+
*/
|
|
57
|
+
export declare function fromTypedJson(v: unknown, column: string, m: MapContext): unknown;
|
|
58
|
+
/** The parts of neo4j-driver the mapper uses: its type checks. */
|
|
59
|
+
export interface DriverTypes {
|
|
60
|
+
isInt(v: unknown): boolean;
|
|
61
|
+
isNode(v: unknown): boolean;
|
|
62
|
+
isRelationship(v: unknown): boolean;
|
|
63
|
+
isPath(v: unknown): boolean;
|
|
64
|
+
isPoint(v: unknown): boolean;
|
|
65
|
+
isDate(v: unknown): boolean;
|
|
66
|
+
isDateTime(v: unknown): boolean;
|
|
67
|
+
isLocalDateTime(v: unknown): boolean;
|
|
68
|
+
isLocalTime(v: unknown): boolean;
|
|
69
|
+
isTime(v: unknown): boolean;
|
|
70
|
+
isDuration(v: unknown): boolean;
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Map a value neo4j-driver returned. Its lossless Integer keeps every digit, so `long` decides.
|
|
74
|
+
* @param v - the driver value
|
|
75
|
+
* @param column - the result column or property key
|
|
76
|
+
* @param m - the map context
|
|
77
|
+
* @param t - the driver's type checks
|
|
78
|
+
* @returns the plain value, a GraphNode, a GraphRel or an array; undefined when dropped
|
|
79
|
+
*/
|
|
80
|
+
export declare function fromDriver(v: unknown, column: string, m: MapContext, t: DriverTypes): unknown;
|
|
81
|
+
/**
|
|
82
|
+
* Map a value of Neptune's openCypher JSON: nodes `{ "~id", "~entityType": "node", "~labels",
|
|
83
|
+
* "~properties" }`, relationships adding `~start`, `~end`, `~type`. Its numbers are plain JSON, so
|
|
84
|
+
* an integer past 2^53 was already rounded on the wire (W_PRECISION).
|
|
85
|
+
* @param v - the wire value
|
|
86
|
+
* @param column - the result column or property key
|
|
87
|
+
* @param m - the map context
|
|
88
|
+
* @returns the plain value, a GraphNode, a GraphRel or an array
|
|
89
|
+
*/
|
|
90
|
+
export declare function fromNeptune(v: unknown, column: string, m: MapContext): unknown;
|
|
91
|
+
//# sourceMappingURL=types-map.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types-map.d.ts","sourceRoot":"","sources":["../../../../src/sources/cypher/types-map.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAGlE,+BAA+B;AAC/B,qBAAa,SAAS;IAQd,QAAQ,CAAC,EAAE,EAAE,MAAM;IACnB,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE;IAClC,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAT1D;;;;;OAKG;gBAEU,EAAE,EAAE,MAAM,EACV,MAAM,EAAE,SAAS,MAAM,EAAE,EACzB,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAE7D;AAED,uCAAuC;AACvC,qBAAa,QAAQ;IAUb,QAAQ,CAAC,EAAE,EAAE,MAAM;IACnB,QAAQ,CAAC,KAAK,EAAE,MAAM;IACtB,QAAQ,CAAC,GAAG,EAAE,MAAM;IACpB,QAAQ,CAAC,IAAI,EAAE,MAAM;IACrB,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAb1D;;;;;;;OAOG;gBAEU,EAAE,EAAE,MAAM,EACV,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAE7D;AAED,kFAAkF;AAClF,MAAM,WAAW,UAAU;IACvB,oEAAoE;IACpE,QAAQ,CAAC,IAAI,EAAE,KAAK,GAAG,QAAQ,CAAC;IAChC,yBAAyB;IACzB,QAAQ,CAAC,MAAM,EAAE,mBAAmB,CAAC;CACxC;AA2HD;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,UAAU,GAAG,OAAO,CA8DhF;AAED,kEAAkE;AAClE,MAAM,WAAW,WAAW;IACxB,KAAK,CAAC,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC;IAC3B,MAAM,CAAC,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC;IAC5B,cAAc,CAAC,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC;IACpC,MAAM,CAAC,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC;IAC5B,OAAO,CAAC,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC;IAC7B,MAAM,CAAC,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC;IAC5B,UAAU,CAAC,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC;IAChC,eAAe,CAAC,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC;IACrC,WAAW,CAAC,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC;IACjC,MAAM,CAAC,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC;IAC5B,UAAU,CAAC,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC;CACnC;AA2ED;;;;;;;GAOG;AACH,wBAAgB,UAAU,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,WAAW,GAAG,OAAO,CAuC7F;AAED;;;;;;;;GAQG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,UAAU,GAAG,OAAO,CAqB9E"}
|
|
@@ -0,0 +1,306 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The one type mapper of the Cypher source (design section 10): every transport's wire values --
|
|
3
|
+
* Neo4j's typed JSON, neo4j-driver's objects, Neptune's plain JSON -- become the same plain values,
|
|
4
|
+
* and every node, relationship and path becomes a GraphNode, a GraphRel or an array of them.
|
|
5
|
+
*
|
|
6
|
+
* - Integers: a number while it is exact; past 2^53 the `long` parameter picks a rounded number
|
|
7
|
+
* (W_PRECISION, once per column) or the exact digits as a string.
|
|
8
|
+
* - Floats, booleans, strings: as they are. Dates and instants: epoch milliseconds. Local times,
|
|
9
|
+
* times and durations: their ISO text. Points: `{ srid, x, y, z? }`. Lists and maps: arrays and
|
|
10
|
+
* objects of mapped values. Bytes: dropped (W_SOURCE_VALUE).
|
|
11
|
+
*/
|
|
12
|
+
import { PRECISION_CODE } from "../../common/codes.js";
|
|
13
|
+
import { warnOn } from "../fail.js";
|
|
14
|
+
/** A node a query returned. */
|
|
15
|
+
export class GraphNode {
|
|
16
|
+
/**
|
|
17
|
+
* Create one.
|
|
18
|
+
* @param id - the server's element id
|
|
19
|
+
* @param labels - its labels
|
|
20
|
+
* @param properties - its mapped properties
|
|
21
|
+
*/
|
|
22
|
+
constructor(id, labels, properties) {
|
|
23
|
+
this.id = id;
|
|
24
|
+
this.labels = labels;
|
|
25
|
+
this.properties = properties;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
/** A relationship a query returned. */
|
|
29
|
+
export class GraphRel {
|
|
30
|
+
/**
|
|
31
|
+
* Create one.
|
|
32
|
+
* @param id - the server's element id
|
|
33
|
+
* @param start - the start node's element id
|
|
34
|
+
* @param end - the end node's element id
|
|
35
|
+
* @param type - its type
|
|
36
|
+
* @param properties - its mapped properties
|
|
37
|
+
*/
|
|
38
|
+
constructor(id, start, end, type, properties) {
|
|
39
|
+
this.id = id;
|
|
40
|
+
this.start = start;
|
|
41
|
+
this.end = end;
|
|
42
|
+
this.type = type;
|
|
43
|
+
this.properties = properties;
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
/** Values past this need a 64-bit integer. */
|
|
47
|
+
const SAFE = BigInt(Number.MAX_SAFE_INTEGER);
|
|
48
|
+
/**
|
|
49
|
+
* An integer from its exact decimal digits.
|
|
50
|
+
* @param digits - the digits
|
|
51
|
+
* @param column - the column it belongs to, for the warning
|
|
52
|
+
* @param m - the map context
|
|
53
|
+
* @returns a number, or a string past 2^53 under `long: "string"`
|
|
54
|
+
*/
|
|
55
|
+
function integer(digits, column, m) {
|
|
56
|
+
let big;
|
|
57
|
+
try {
|
|
58
|
+
big = BigInt(digits);
|
|
59
|
+
}
|
|
60
|
+
catch {
|
|
61
|
+
return Number(digits);
|
|
62
|
+
}
|
|
63
|
+
if (big <= SAFE && big >= -SAFE) {
|
|
64
|
+
return Number(big);
|
|
65
|
+
}
|
|
66
|
+
if (m.long === "string") {
|
|
67
|
+
return big.toString();
|
|
68
|
+
}
|
|
69
|
+
m.report.warnOnce("precision", PRECISION_CODE, `column ${column}: an integer beyond 2^53 was stored as the nearest 64-bit float; pass long: "string" to keep every digit`, undefined, `${PRECISION_CODE}:${column}`);
|
|
70
|
+
return Number(big);
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Epoch milliseconds of an ISO instant, the zone name in brackets ignored; the text itself when it
|
|
74
|
+
* does not parse.
|
|
75
|
+
* @param text - the ISO text
|
|
76
|
+
* @param type - the server's type name
|
|
77
|
+
* @param column - the column
|
|
78
|
+
* @param m - the map context
|
|
79
|
+
* @returns milliseconds, or the text
|
|
80
|
+
*/
|
|
81
|
+
function epoch(text, type, column, m) {
|
|
82
|
+
const ms = Date.parse(withoutZoneName(text));
|
|
83
|
+
if (Number.isNaN(ms)) {
|
|
84
|
+
warnOn(m.report, "W_SOURCE_VALUE", `column ${column}: a ${type} kept as text`, { type, column, as: "string" });
|
|
85
|
+
return text;
|
|
86
|
+
}
|
|
87
|
+
return ms;
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* Warn that a value with no dtype was dropped; the caller leaves the property out.
|
|
91
|
+
* @param type - the server's type name
|
|
92
|
+
* @param column - the column
|
|
93
|
+
* @param m - the map context
|
|
94
|
+
*/
|
|
95
|
+
function dropped(type, column, m) {
|
|
96
|
+
warnOn(m.report, "W_SOURCE_VALUE", `column ${column}: a ${type} value was dropped`, {
|
|
97
|
+
type,
|
|
98
|
+
column,
|
|
99
|
+
as: "dropped",
|
|
100
|
+
});
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* Map every property of a map, leaving out dropped values.
|
|
104
|
+
* @param value - the map
|
|
105
|
+
* @param each - maps one value, given its key
|
|
106
|
+
* @returns the mapped map
|
|
107
|
+
*/
|
|
108
|
+
function mapEntries(value, each) {
|
|
109
|
+
const out = {};
|
|
110
|
+
for (const [k, v] of Object.entries(value)) {
|
|
111
|
+
const mapped = each(v, k);
|
|
112
|
+
if (mapped !== undefined) {
|
|
113
|
+
out[k] = mapped;
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
return out;
|
|
117
|
+
}
|
|
118
|
+
/**
|
|
119
|
+
* A WKT point as Neo4j's typed JSON spells it ("SRID=7203;POINT (1.0 2.0)").
|
|
120
|
+
* @param text - the text
|
|
121
|
+
* @returns `{ srid, x, y, z? }`, or the text when it does not parse
|
|
122
|
+
*/
|
|
123
|
+
function wktPoint(text) {
|
|
124
|
+
const match = /^SRID=(\d+);POINT(?: Z)? ?\(([^)]*)\)$/i.exec(text.trim());
|
|
125
|
+
if (match === null) {
|
|
126
|
+
return text;
|
|
127
|
+
}
|
|
128
|
+
const [x = 0, y = 0, z] = match[2].trim().split(/\s+/).map(Number);
|
|
129
|
+
return z === undefined ? { srid: Number(match[1]), x, y } : { srid: Number(match[1]), x, y, z };
|
|
130
|
+
}
|
|
131
|
+
/**
|
|
132
|
+
* Map a value of Neo4j's typed JSON (the Query API's `application/vnd.neo4j.query.v1.1`).
|
|
133
|
+
* @param v - the wire value
|
|
134
|
+
* @param column - the result column or property key it belongs to
|
|
135
|
+
* @param m - the map context
|
|
136
|
+
* @returns the plain value, a GraphNode, a GraphRel or an array; undefined when dropped
|
|
137
|
+
*/
|
|
138
|
+
export function fromTypedJson(v, column, m) {
|
|
139
|
+
if (v === null || typeof v !== "object" || !("$type" in v)) {
|
|
140
|
+
return v ?? null;
|
|
141
|
+
}
|
|
142
|
+
const { $type: type, _value: value } = v;
|
|
143
|
+
switch (type) {
|
|
144
|
+
case "Null":
|
|
145
|
+
return null;
|
|
146
|
+
case "Boolean":
|
|
147
|
+
case "String":
|
|
148
|
+
return value;
|
|
149
|
+
case "Integer":
|
|
150
|
+
return integer(String(value), column, m);
|
|
151
|
+
case "Float":
|
|
152
|
+
return Number(value);
|
|
153
|
+
case "Date":
|
|
154
|
+
return epoch(`${String(value)}T00:00:00Z`, type, column, m);
|
|
155
|
+
case "OffsetDateTime":
|
|
156
|
+
case "ZonedDateTime":
|
|
157
|
+
return epoch(String(value), type, column, m);
|
|
158
|
+
case "LocalDateTime":
|
|
159
|
+
case "LocalTime":
|
|
160
|
+
case "Time":
|
|
161
|
+
case "Duration":
|
|
162
|
+
return String(value);
|
|
163
|
+
case "Point":
|
|
164
|
+
return wktPoint(String(value));
|
|
165
|
+
case "Base64":
|
|
166
|
+
dropped(type, column, m);
|
|
167
|
+
return undefined;
|
|
168
|
+
case "List":
|
|
169
|
+
return value.map((x) => fromTypedJson(x, column, m));
|
|
170
|
+
case "Map":
|
|
171
|
+
return mapEntries(value, (x) => fromTypedJson(x, column, m));
|
|
172
|
+
case "Node": {
|
|
173
|
+
const n = value;
|
|
174
|
+
return new GraphNode(n._element_id, n._labels, mapEntries(n._properties, (x, k) => fromTypedJson(x, k, m)));
|
|
175
|
+
}
|
|
176
|
+
case "Relationship": {
|
|
177
|
+
const r = value;
|
|
178
|
+
return new GraphRel(r._element_id, r._start_node_element_id, r._end_node_element_id, r._type, mapEntries(r._properties, (x, k) => fromTypedJson(x, k, m)));
|
|
179
|
+
}
|
|
180
|
+
case "Path":
|
|
181
|
+
return value.map((x) => fromTypedJson(x, column, m));
|
|
182
|
+
default:
|
|
183
|
+
warnOn(m.report, "W_SOURCE_VALUE", `column ${column}: a ${type} kept as text`, {
|
|
184
|
+
type,
|
|
185
|
+
column,
|
|
186
|
+
as: "string",
|
|
187
|
+
});
|
|
188
|
+
return typeof value === "string" ? value : JSON.stringify(value);
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
/**
|
|
192
|
+
* The text without a trailing bracketed zone name (`...+01:00[Europe/Paris]`).
|
|
193
|
+
* @param text - the ISO text
|
|
194
|
+
* @returns the text without the zone name
|
|
195
|
+
*/
|
|
196
|
+
function withoutZoneName(text) {
|
|
197
|
+
const end = text.length - 1;
|
|
198
|
+
if (text[end] !== "]") {
|
|
199
|
+
return text;
|
|
200
|
+
}
|
|
201
|
+
const open = text.indexOf("[", text.lastIndexOf("]", end - 1) + 1);
|
|
202
|
+
return open === -1 || open >= end ? text : text.slice(0, open);
|
|
203
|
+
}
|
|
204
|
+
/**
|
|
205
|
+
* Map a driver node or relationship.
|
|
206
|
+
* @param e - the driver entity
|
|
207
|
+
* @param node - whether it is a node
|
|
208
|
+
* @param m - the map context
|
|
209
|
+
* @param t - the driver's type checks
|
|
210
|
+
* @returns a GraphNode or a GraphRel
|
|
211
|
+
*/
|
|
212
|
+
function fromEntity(e, node, m, t) {
|
|
213
|
+
const props = mapEntries(e.properties, (x, k) => fromDriver(x, k, m, t));
|
|
214
|
+
const id = e.elementId ?? String(e.identity);
|
|
215
|
+
return node
|
|
216
|
+
? new GraphNode(id, [...(e.labels ?? [])], props)
|
|
217
|
+
: new GraphRel(id, e.startNodeElementId ?? String(e.start), e.endNodeElementId ?? String(e.end), e.type ?? "", props);
|
|
218
|
+
}
|
|
219
|
+
/**
|
|
220
|
+
* Map a driver point.
|
|
221
|
+
* @param p - the point
|
|
222
|
+
* @returns srid, x, y and z when it has one
|
|
223
|
+
*/
|
|
224
|
+
function fromPoint(p) {
|
|
225
|
+
const srid = Number(String(p.srid));
|
|
226
|
+
return p.z === undefined ? { srid, x: p.x, y: p.y } : { srid, x: p.x, y: p.y, z: p.z };
|
|
227
|
+
}
|
|
228
|
+
/**
|
|
229
|
+
* Map a value neo4j-driver returned. Its lossless Integer keeps every digit, so `long` decides.
|
|
230
|
+
* @param v - the driver value
|
|
231
|
+
* @param column - the result column or property key
|
|
232
|
+
* @param m - the map context
|
|
233
|
+
* @param t - the driver's type checks
|
|
234
|
+
* @returns the plain value, a GraphNode, a GraphRel or an array; undefined when dropped
|
|
235
|
+
*/
|
|
236
|
+
export function fromDriver(v, column, m, t) {
|
|
237
|
+
if (v === null || v === undefined) {
|
|
238
|
+
return null;
|
|
239
|
+
}
|
|
240
|
+
if (typeof v !== "object") {
|
|
241
|
+
return typeof v === "bigint" ? integer(v.toString(), column, m) : v;
|
|
242
|
+
}
|
|
243
|
+
// driver values (Integer, the temporal types) spell themselves exactly through toString()
|
|
244
|
+
const text = () => v.toString();
|
|
245
|
+
if (t.isInt(v)) {
|
|
246
|
+
return integer(text(), column, m);
|
|
247
|
+
}
|
|
248
|
+
if (t.isNode(v) || t.isRelationship(v)) {
|
|
249
|
+
return fromEntity(v, t.isNode(v), m, t);
|
|
250
|
+
}
|
|
251
|
+
if (t.isPath(v)) {
|
|
252
|
+
const p = v;
|
|
253
|
+
return [p.start, ...p.segments.flatMap((s) => [s.relationship, s.end])].map((x) => fromDriver(x, column, m, t));
|
|
254
|
+
}
|
|
255
|
+
if (t.isDate(v)) {
|
|
256
|
+
return epoch(`${text()}T00:00:00Z`, "Date", column, m);
|
|
257
|
+
}
|
|
258
|
+
if (t.isDateTime(v)) {
|
|
259
|
+
return epoch(text(), "DateTime", column, m);
|
|
260
|
+
}
|
|
261
|
+
if (t.isLocalDateTime(v) || t.isLocalTime(v) || t.isTime(v) || t.isDuration(v)) {
|
|
262
|
+
return text();
|
|
263
|
+
}
|
|
264
|
+
if (t.isPoint(v)) {
|
|
265
|
+
return fromPoint(v);
|
|
266
|
+
}
|
|
267
|
+
if (v instanceof Uint8Array || v instanceof ArrayBuffer) {
|
|
268
|
+
dropped("ByteArray", column, m);
|
|
269
|
+
return undefined;
|
|
270
|
+
}
|
|
271
|
+
if (Array.isArray(v)) {
|
|
272
|
+
return v.map((x) => fromDriver(x, column, m, t));
|
|
273
|
+
}
|
|
274
|
+
return mapEntries(v, (x) => fromDriver(x, column, m, t));
|
|
275
|
+
}
|
|
276
|
+
/**
|
|
277
|
+
* Map a value of Neptune's openCypher JSON: nodes `{ "~id", "~entityType": "node", "~labels",
|
|
278
|
+
* "~properties" }`, relationships adding `~start`, `~end`, `~type`. Its numbers are plain JSON, so
|
|
279
|
+
* an integer past 2^53 was already rounded on the wire (W_PRECISION).
|
|
280
|
+
* @param v - the wire value
|
|
281
|
+
* @param column - the result column or property key
|
|
282
|
+
* @param m - the map context
|
|
283
|
+
* @returns the plain value, a GraphNode, a GraphRel or an array
|
|
284
|
+
*/
|
|
285
|
+
export function fromNeptune(v, column, m) {
|
|
286
|
+
if (typeof v === "number" && Number.isInteger(v) && !Number.isSafeInteger(v)) {
|
|
287
|
+
return integer(BigInt(v).toString(), column, m);
|
|
288
|
+
}
|
|
289
|
+
if (v === null || typeof v !== "object") {
|
|
290
|
+
return v ?? null;
|
|
291
|
+
}
|
|
292
|
+
if (Array.isArray(v)) {
|
|
293
|
+
return v.map((x) => fromNeptune(x, column, m));
|
|
294
|
+
}
|
|
295
|
+
const o = v;
|
|
296
|
+
const props = () => mapEntries((o["~properties"] ?? {}), (x, k) => fromNeptune(x, k, m));
|
|
297
|
+
switch (o["~entityType"]) {
|
|
298
|
+
case "node":
|
|
299
|
+
return new GraphNode(String(o["~id"]), (o["~labels"] ?? []), props());
|
|
300
|
+
case "relationship":
|
|
301
|
+
return new GraphRel(String(o["~id"]), String(o["~start"]), String(o["~end"]), String(o["~type"]), props());
|
|
302
|
+
default:
|
|
303
|
+
return mapEntries(o, (x) => fromNeptune(x, column, m));
|
|
304
|
+
}
|
|
305
|
+
}
|
|
306
|
+
//# sourceMappingURL=types-map.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types-map.js","sourceRoot":"","sources":["../../../../src/sources/cypher/types-map.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAEvD,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAEpC,+BAA+B;AAC/B,MAAM,OAAO,SAAS;IAClB;;;;;OAKG;IACH,YACa,EAAU,EACV,MAAyB,EACzB,UAA6C;QAF7C,OAAE,GAAF,EAAE,CAAQ;QACV,WAAM,GAAN,MAAM,CAAmB;QACzB,eAAU,GAAV,UAAU,CAAmC;IACvD,CAAC;CACP;AAED,uCAAuC;AACvC,MAAM,OAAO,QAAQ;IACjB;;;;;;;OAOG;IACH,YACa,EAAU,EACV,KAAa,EACb,GAAW,EACX,IAAY,EACZ,UAA6C;QAJ7C,OAAE,GAAF,EAAE,CAAQ;QACV,UAAK,GAAL,KAAK,CAAQ;QACb,QAAG,GAAH,GAAG,CAAQ;QACX,SAAI,GAAJ,IAAI,CAAQ;QACZ,eAAU,GAAV,UAAU,CAAmC;IACvD,CAAC;CACP;AAUD,8CAA8C;AAC9C,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;AAE7C;;;;;;GAMG;AACH,SAAS,OAAO,CAAC,MAAc,EAAE,MAAc,EAAE,CAAa;IAC1D,IAAI,GAAW,CAAC;IAChB,IAAI,CAAC;QACD,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;IACzB,CAAC;IAAC,MAAM,CAAC;QACL,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC;IAC1B,CAAC;IACD,IAAI,GAAG,IAAI,IAAI,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QAC9B,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC;IACvB,CAAC;IACD,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QACtB,OAAO,GAAG,CAAC,QAAQ,EAAE,CAAC;IAC1B,CAAC;IACD,CAAC,CAAC,MAAM,CAAC,QAAQ,CACb,WAAW,EACX,cAAc,EACd,UAAU,MAAM,0GAA0G,EAC1H,SAAS,EACT,GAAG,cAAc,IAAI,MAAM,EAAE,CAChC,CAAC;IACF,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC;AACvB,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,KAAK,CAAC,IAAY,EAAE,IAAY,EAAE,MAAc,EAAE,CAAa;IACpE,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC;IAC7C,IAAI,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC;QACnB,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,gBAAgB,EAAE,UAAU,MAAM,OAAO,IAAI,eAAe,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC/G,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,OAAO,EAAE,CAAC;AACd,CAAC;AAED;;;;;GAKG;AACH,SAAS,OAAO,CAAC,IAAY,EAAE,MAAc,EAAE,CAAa;IACxD,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,gBAAgB,EAAE,UAAU,MAAM,OAAO,IAAI,oBAAoB,EAAE;QAChF,IAAI;QACJ,MAAM;QACN,EAAE,EAAE,SAAS;KAChB,CAAC,CAAC;AACP,CAAC;AAED;;;;;GAKG;AACH,SAAS,UAAU,CACf,KAAwC,EACxC,IAA0C;IAE1C,MAAM,GAAG,GAA4B,EAAE,CAAC;IACxC,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzC,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAC1B,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACvB,GAAG,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC;QACpB,CAAC;IACL,CAAC;IACD,OAAO,GAAG,CAAC;AACf,CAAC;AAED;;;;GAIG;AACH,SAAS,QAAQ,CAAC,IAAY;IAC1B,MAAM,KAAK,GAAG,yCAAyC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IAC1E,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QACjB,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,MAAM,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACnE,OAAO,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;AACpG,CAAC;AAwBD;;;;;;GAMG;AACH,MAAM,UAAU,aAAa,CAAC,CAAU,EAAE,MAAc,EAAE,CAAa;IACnE,IAAI,CAAC,KAAK,IAAI,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,EAAE,CAAC;QACzD,OAAO,CAAC,IAAI,IAAI,CAAC;IACrB,CAAC;IACD,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,CAAU,CAAC;IAClD,QAAQ,IAAI,EAAE,CAAC;QACX,KAAK,MAAM;YACP,OAAO,IAAI,CAAC;QAChB,KAAK,SAAS,CAAC;QACf,KAAK,QAAQ;YACT,OAAO,KAAK,CAAC;QACjB,KAAK,SAAS;YACV,OAAO,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;QAC7C,KAAK,OAAO;YACR,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;QACzB,KAAK,MAAM;YACP,OAAO,KAAK,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;QAChE,KAAK,gBAAgB,CAAC;QACtB,KAAK,eAAe;YAChB,OAAO,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;QACjD,KAAK,eAAe,CAAC;QACrB,KAAK,WAAW,CAAC;QACjB,KAAK,MAAM,CAAC;QACZ,KAAK,UAAU;YACX,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;QACzB,KAAK,OAAO;YACR,OAAO,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QACnC,KAAK,QAAQ;YACT,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;YACzB,OAAO,SAAS,CAAC;QACrB,KAAK,MAAM;YACP,OAAQ,KAA4B,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;QACjF,KAAK,KAAK;YACN,OAAO,UAAU,CAAC,KAAgC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;QAC5F,KAAK,MAAM,CAAC,CAAC,CAAC;YACV,MAAM,CAAC,GAAG,KAAkB,CAAC;YAC7B,OAAO,IAAI,SAAS,CAChB,CAAC,CAAC,WAAW,EACb,CAAC,CAAC,OAAO,EACT,UAAU,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAC9D,CAAC;QACN,CAAC;QACD,KAAK,cAAc,CAAC,CAAC,CAAC;YAClB,MAAM,CAAC,GAAG,KAAiB,CAAC;YAC5B,OAAO,IAAI,QAAQ,CACf,CAAC,CAAC,WAAW,EACb,CAAC,CAAC,sBAAsB,EACxB,CAAC,CAAC,oBAAoB,EACtB,CAAC,CAAC,KAAK,EACP,UAAU,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAC9D,CAAC;QACN,CAAC;QACD,KAAK,MAAM;YACP,OAAQ,KAA4B,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;QACjF;YACI,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,gBAAgB,EAAE,UAAU,MAAM,OAAO,IAAI,eAAe,EAAE;gBAC3E,IAAI;gBACJ,MAAM;gBACN,EAAE,EAAE,QAAQ;aACf,CAAC,CAAC;YACH,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IACzE,CAAC;AACL,CAAC;AA4CD;;;;GAIG;AACH,SAAS,eAAe,CAAC,IAAY;IACjC,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;IAC5B,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,EAAE,CAAC;QACpB,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACnE,OAAO,IAAI,KAAK,CAAC,CAAC,IAAI,IAAI,IAAI,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;AACnE,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,UAAU,CAAC,CAAe,EAAE,IAAa,EAAE,CAAa,EAAE,CAAc;IAC7E,MAAM,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IACzE,MAAM,EAAE,GAAG,CAAC,CAAC,SAAS,IAAI,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IAC7C,OAAO,IAAI;QACP,CAAC,CAAC,IAAI,SAAS,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC;QACjD,CAAC,CAAC,IAAI,QAAQ,CACR,EAAE,EACF,CAAC,CAAC,kBAAkB,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,EACvC,CAAC,CAAC,gBAAgB,IAAI,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,EACnC,CAAC,CAAC,IAAI,IAAI,EAAE,EACZ,KAAK,CACR,CAAC;AACZ,CAAC;AAED;;;;GAIG;AACH,SAAS,SAAS,CAAC,CAAc;IAC7B,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IACpC,OAAO,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAC3F,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,UAAU,CAAC,CAAU,EAAE,MAAc,EAAE,CAAa,EAAE,CAAc;IAChF,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,SAAS,EAAE,CAAC;QAChC,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE,CAAC;QACxB,OAAO,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACxE,CAAC;IACD,0FAA0F;IAC1F,MAAM,IAAI,GAAG,GAAW,EAAE,CAAE,CAA4B,CAAC,QAAQ,EAAE,CAAC;IACpE,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;QACb,OAAO,OAAO,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;IACtC,CAAC;IACD,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC;QACrC,OAAO,UAAU,CAAC,CAAiB,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAC5D,CAAC;IACD,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;QACd,MAAM,CAAC,GAAG,CAAe,CAAC;QAC1B,OAAO,CAAC,CAAC,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IACpH,CAAC;IACD,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;QACd,OAAO,KAAK,CAAC,GAAG,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;IAC3D,CAAC;IACD,IAAI,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;QAClB,OAAO,KAAK,CAAC,IAAI,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;IAChD,CAAC;IACD,IAAI,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7E,OAAO,IAAI,EAAE,CAAC;IAClB,CAAC;IACD,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;QACf,OAAO,SAAS,CAAC,CAAgB,CAAC,CAAC;IACvC,CAAC;IACD,IAAI,CAAC,YAAY,UAAU,IAAI,CAAC,YAAY,WAAW,EAAE,CAAC;QACtD,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;QAChC,OAAO,SAAS,CAAC;IACrB,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;QACnB,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAU,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,OAAO,UAAU,CAAC,CAA4B,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AACxF,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,WAAW,CAAC,CAAU,EAAE,MAAc,EAAE,CAAa;IACjE,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3E,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;IACpD,CAAC;IACD,IAAI,CAAC,KAAK,IAAI,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE,CAAC;QACtC,OAAO,CAAC,IAAI,IAAI,CAAC;IACrB,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;QACnB,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAU,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;IAC5D,CAAC;IACD,MAAM,CAAC,GAAG,CAA4B,CAAC;IACvC,MAAM,KAAK,GAAG,GAA4B,EAAE,CACxC,UAAU,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,EAAE,CAA4B,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IACpG,QAAQ,CAAC,CAAC,aAAa,CAAC,EAAE,CAAC;QACvB,KAAK,MAAM;YACP,OAAO,IAAI,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,EAAE,CAAa,EAAE,KAAK,EAAE,CAAC,CAAC;QACtF,KAAK,cAAc;YACf,OAAO,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QAC/G;YACI,OAAO,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;IAC/D,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `defineSource` and the registration checks (design section 2): the id form, exactly one read
|
|
3
|
+
* method, and the declared features against the methods present. Also the parameter checks every
|
|
4
|
+
* load runs against the descriptor before any request.
|
|
5
|
+
*/
|
|
6
|
+
import { type ImportReportBuilder } from "../common/report.js";
|
|
7
|
+
import { type GraphSource, type LazySource, type SourceDescriptor } from "./types.js";
|
|
8
|
+
/**
|
|
9
|
+
* Check a loaded source: its id, exactly one read method, and its declared features.
|
|
10
|
+
* @param source - the source
|
|
11
|
+
* @param declared - features a lazy registration declared, if any
|
|
12
|
+
*/
|
|
13
|
+
export declare function checkSource(source: GraphSource<never>, declared?: SourceDescriptor): void;
|
|
14
|
+
/**
|
|
15
|
+
* Check a lazy registration before its code is loaded.
|
|
16
|
+
* @param source - the lazy source
|
|
17
|
+
*/
|
|
18
|
+
export declare function checkLazySource(source: LazySource): void;
|
|
19
|
+
/**
|
|
20
|
+
* Define a network source: returns it unchanged, with its parameter type inferred, after the
|
|
21
|
+
* registration checks (an id of lowercase letters, digits and dashes; exactly one of `records`,
|
|
22
|
+
* `file` and `import`; declared features backed by methods). A malformed source throws an
|
|
23
|
+
* ImportError whose `issue.code` is E_SOURCE_INVALID. Experimental.
|
|
24
|
+
* @param source - the source
|
|
25
|
+
* @returns the same source
|
|
26
|
+
* @example
|
|
27
|
+
* ```ts
|
|
28
|
+
* const people = defineSource({
|
|
29
|
+
* id: "people",
|
|
30
|
+
* async records(params: { team: string }, ctx) {
|
|
31
|
+
* const rows = await ctx.fetchJson<{ id: string; name: string }[]>(`/api/people?team=${params.team}`);
|
|
32
|
+
* return { nodes: rows };
|
|
33
|
+
* },
|
|
34
|
+
* });
|
|
35
|
+
* ```
|
|
36
|
+
* @category Network sources
|
|
37
|
+
*/
|
|
38
|
+
export declare function defineSource<P>(source: GraphSource<P>): GraphSource<P>;
|
|
39
|
+
/**
|
|
40
|
+
* Check params against a descriptor before any request: required ones present, numbers and
|
|
41
|
+
* integers in range, booleans, enums, URLs (never with a user name or password in them).
|
|
42
|
+
* @param params - the caller's params
|
|
43
|
+
* @param descriptor - the source's descriptor
|
|
44
|
+
* @param report - the load's report
|
|
45
|
+
*/
|
|
46
|
+
export declare function checkParams(params: Readonly<Record<string, unknown>>, descriptor: SourceDescriptor | undefined, report: ImportReportBuilder): void;
|
|
47
|
+
//# sourceMappingURL=define.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"define.d.ts","sourceRoot":"","sources":["../../../src/sources/define.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAE/D,OAAO,EACH,KAAK,WAAW,EAChB,KAAK,UAAU,EACf,KAAK,gBAAgB,EAGxB,MAAM,YAAY,CAAC;AA0CpB;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,WAAW,CAAC,KAAK,CAAC,EAAE,QAAQ,CAAC,EAAE,gBAAgB,GAAG,IAAI,CAezF;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI,CAKxD;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAGtE;AAuDD;;;;;;GAMG;AACH,wBAAgB,WAAW,CACvB,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EACzC,UAAU,EAAE,gBAAgB,GAAG,SAAS,EACxC,MAAM,EAAE,mBAAmB,GAC5B,IAAI,CAiBN"}
|