@graphty/graph-io 0.3.40 → 0.3.41
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/{choose-CS3fvGT1.js → choose-CwFQamH9.js} +2 -2
- package/dist/chunks/{choose-CS3fvGT1.js.map → choose-CwFQamH9.js.map} +1 -1
- package/dist/chunks/{constants-DqKZT6cH.js → constants-Cf4Nn6tw.js} +2 -2
- package/dist/chunks/{constants-DqKZT6cH.js.map → constants-Cf4Nn6tw.js.map} +1 -1
- package/dist/chunks/{escape-BJRLd3vJ.js → escape-DBb8zuNE.js} +2 -2
- package/dist/chunks/{escape-BJRLd3vJ.js.map → escape-DBb8zuNE.js.map} +1 -1
- package/dist/chunks/{export-B-aVCwyG.js → export-DD3Lvw-F.js} +173 -116
- package/dist/chunks/export-DD3Lvw-F.js.map +1 -0
- package/dist/chunks/{exporter-Bcp-l4Bo.js → exporter-BqtmlxNr.js} +545 -459
- package/dist/chunks/exporter-BqtmlxNr.js.map +1 -0
- package/dist/chunks/{exporter-6ocL_9x_.js → exporter-CS35R6Fg.js} +4 -4
- package/dist/chunks/{exporter-6ocL_9x_.js.map → exporter-CS35R6Fg.js.map} +1 -1
- package/dist/chunks/{exporter-BVXnV9-9.js → exporter-D8r1N2dU.js} +28 -16
- package/dist/chunks/exporter-D8r1N2dU.js.map +1 -0
- package/dist/chunks/{exporter-SFYkDzD0.js → exporter-NMplSnYn.js} +23 -20
- package/dist/chunks/{exporter-SFYkDzD0.js.map → exporter-NMplSnYn.js.map} +1 -1
- package/dist/chunks/{importer-CPqnIY8m.js → importer-BKC7AmCA.js} +42 -29
- package/dist/chunks/importer-BKC7AmCA.js.map +1 -0
- package/dist/chunks/{importer-D_srHyj6.js → importer-BdWHmlmG.js} +4 -4
- package/dist/chunks/{importer-D_srHyj6.js.map → importer-BdWHmlmG.js.map} +1 -1
- package/dist/chunks/{importer-AjwOJrn2.js → importer-BfbzWk6k.js} +202 -181
- package/dist/chunks/importer-BfbzWk6k.js.map +1 -0
- package/dist/chunks/{importer-BpuS3J8C.js → importer-BmaZcskq.js} +73 -60
- package/dist/chunks/importer-BmaZcskq.js.map +1 -0
- package/dist/chunks/{importer-DEp_fYjf.js → importer-DviEsHy4.js} +92 -64
- package/dist/chunks/importer-DviEsHy4.js.map +1 -0
- package/dist/chunks/{importer-DcKB97kW.js → importer-S-abxJHn.js} +5 -5
- package/dist/chunks/{importer-DcKB97kW.js.map → importer-S-abxJHn.js.map} +1 -1
- package/dist/chunks/{importer-BJlGAOht.js → importer-r29cWnEf.js} +3 -3
- package/dist/chunks/{importer-BJlGAOht.js.map → importer-r29cWnEf.js.map} +1 -1
- package/dist/chunks/{json-elements-DpO6AXIc.js → json-elements-DdF-etPT.js} +3 -3
- package/dist/chunks/{json-elements-DpO6AXIc.js.map → json-elements-DdF-etPT.js.map} +1 -1
- package/dist/chunks/{ontology-export-50L9DOV4.js → ontology-export-BC0zyPhj.js} +2 -2
- package/dist/chunks/{ontology-export-50L9DOV4.js.map → ontology-export-BC0zyPhj.js.map} +1 -1
- package/dist/chunks/{records-r3SFHz11.js → records-Uc3LkABx.js} +15 -12
- package/dist/chunks/records-Uc3LkABx.js.map +1 -0
- package/dist/chunks/{text-Bjfa1xYL.js → text-Bh9SaAob.js} +20 -11
- package/dist/chunks/text-Bh9SaAob.js.map +1 -0
- package/dist/csv.js +67 -49
- package/dist/csv.js.map +1 -1
- package/dist/cx.js +1 -1
- package/dist/cx2.js +2 -2
- package/dist/cys.js +1 -1
- package/dist/dot.js +1 -1
- package/dist/gexf.js +195 -97
- package/dist/gexf.js.map +1 -1
- package/dist/gml.js +170 -149
- package/dist/gml.js.map +1 -1
- package/dist/graph-io.js +26 -26
- package/dist/graphml.js +2 -2
- package/dist/json.js +1 -1
- package/dist/neo4j.js +103 -65
- package/dist/neo4j.js.map +1 -1
- package/dist/obo.js +1 -1
- package/dist/pajek.js +1 -1
- package/dist/src/common/attributes.d.ts.map +1 -1
- package/dist/src/common/attributes.js +34 -9
- package/dist/src/common/attributes.js.map +1 -1
- package/dist/src/common/input.d.ts.map +1 -1
- package/dist/src/common/input.js +180 -102
- package/dist/src/common/input.js.map +1 -1
- package/dist/src/common/text.d.ts +7 -0
- package/dist/src/common/text.d.ts.map +1 -1
- package/dist/src/common/text.js +15 -7
- package/dist/src/common/text.js.map +1 -1
- package/dist/src/common/zip.d.ts.map +1 -1
- package/dist/src/common/zip.js +36 -19
- package/dist/src/common/zip.js.map +1 -1
- package/dist/src/formats/csv/exporter.d.ts.map +1 -1
- package/dist/src/formats/csv/exporter.js +77 -25
- package/dist/src/formats/csv/exporter.js.map +1 -1
- package/dist/src/formats/csv/importer.d.ts.map +1 -1
- package/dist/src/formats/csv/importer.js +16 -6
- package/dist/src/formats/csv/importer.js.map +1 -1
- package/dist/src/formats/csv/records.d.ts.map +1 -1
- package/dist/src/formats/csv/records.js +18 -10
- package/dist/src/formats/csv/records.js.map +1 -1
- package/dist/src/formats/cys/tables.d.ts.map +1 -1
- package/dist/src/formats/cys/tables.js +11 -8
- package/dist/src/formats/cys/tables.js.map +1 -1
- package/dist/src/formats/gexf/exporter.d.ts.map +1 -1
- package/dist/src/formats/gexf/exporter.js +65 -37
- package/dist/src/formats/gexf/exporter.js.map +1 -1
- package/dist/src/formats/gexf/importer.d.ts.map +1 -1
- package/dist/src/formats/gexf/importer.js +138 -50
- package/dist/src/formats/gexf/importer.js.map +1 -1
- package/dist/src/formats/gml/exporter.d.ts.map +1 -1
- package/dist/src/formats/gml/exporter.js +51 -35
- package/dist/src/formats/gml/exporter.js.map +1 -1
- package/dist/src/formats/gml/importer.d.ts.map +1 -1
- package/dist/src/formats/gml/importer.js +103 -58
- package/dist/src/formats/gml/importer.js.map +1 -1
- package/dist/src/formats/gml/syntax.d.ts.map +1 -1
- package/dist/src/formats/gml/syntax.js +17 -8
- package/dist/src/formats/gml/syntax.js.map +1 -1
- package/dist/src/formats/graphml/exporter.d.ts.map +1 -1
- package/dist/src/formats/graphml/exporter.js +34 -24
- package/dist/src/formats/graphml/exporter.js.map +1 -1
- package/dist/src/formats/graphml/importer.d.ts.map +1 -1
- package/dist/src/formats/graphml/importer.js +17 -13
- package/dist/src/formats/graphml/importer.js.map +1 -1
- package/dist/src/formats/graphml/tree.js +23 -14
- package/dist/src/formats/graphml/tree.js.map +1 -1
- package/dist/src/formats/graphml/yfiles.d.ts.map +1 -1
- package/dist/src/formats/graphml/yfiles.js +22 -10
- package/dist/src/formats/graphml/yfiles.js.map +1 -1
- package/dist/src/formats/json/exporter.d.ts.map +1 -1
- package/dist/src/formats/json/exporter.js +38 -21
- package/dist/src/formats/json/exporter.js.map +1 -1
- package/dist/src/formats/json/importer.d.ts.map +1 -1
- package/dist/src/formats/json/importer.js +536 -343
- package/dist/src/formats/json/importer.js.map +1 -1
- package/dist/src/formats/json/obographs.js +29 -17
- package/dist/src/formats/json/obographs.js.map +1 -1
- package/dist/src/formats/neo4j/exporter.d.ts.map +1 -1
- package/dist/src/formats/neo4j/exporter.js +73 -43
- package/dist/src/formats/neo4j/exporter.js.map +1 -1
- package/dist/src/formats/neo4j/header.d.ts.map +1 -1
- package/dist/src/formats/neo4j/header.js +37 -16
- package/dist/src/formats/neo4j/header.js.map +1 -1
- package/dist/src/formats/neo4j/importer.d.ts.map +1 -1
- package/dist/src/formats/neo4j/importer.js +21 -11
- package/dist/src/formats/neo4j/importer.js.map +1 -1
- package/dist/src/formats/obo/exporter.d.ts.map +1 -1
- package/dist/src/formats/obo/exporter.js +18 -7
- package/dist/src/formats/obo/exporter.js.map +1 -1
- package/dist/src/formats/pajek/exporter.d.ts.map +1 -1
- package/dist/src/formats/pajek/exporter.js +142 -73
- package/dist/src/formats/pajek/exporter.js.map +1 -1
- package/dist/src/formats/pajek/importer.d.ts.map +1 -1
- package/dist/src/formats/pajek/importer.js +26 -15
- package/dist/src/formats/pajek/importer.js.map +1 -1
- package/dist/src/formats/pajek/syntax.d.ts.map +1 -1
- package/dist/src/formats/pajek/syntax.js +85 -58
- package/dist/src/formats/pajek/syntax.js.map +1 -1
- package/dist/src/formats/xgmml/emit.d.ts +7 -0
- package/dist/src/formats/xgmml/emit.d.ts.map +1 -1
- package/dist/src/formats/xgmml/emit.js +79 -40
- package/dist/src/formats/xgmml/emit.js.map +1 -1
- package/dist/src/formats/xgmml/exporter.d.ts.map +1 -1
- package/dist/src/formats/xgmml/exporter.js +38 -12
- package/dist/src/formats/xgmml/exporter.js.map +1 -1
- package/dist/src/formats/xgmml/importer.d.ts.map +1 -1
- package/dist/src/formats/xgmml/importer.js +38 -18
- package/dist/src/formats/xgmml/importer.js.map +1 -1
- package/dist/src/sniff.js +109 -57
- package/dist/src/sniff.js.map +1 -1
- package/dist/xgmml.js +2 -2
- package/package.json +2 -2
- package/src/common/attributes.ts +59 -19
- package/src/common/input.ts +216 -102
- package/src/common/text.ts +24 -15
- package/src/common/zip.ts +47 -18
- package/src/formats/csv/exporter.ts +103 -39
- package/src/formats/csv/importer.ts +17 -6
- package/src/formats/csv/records.ts +19 -10
- package/src/formats/cys/tables.ts +11 -10
- package/src/formats/gexf/exporter.ts +67 -36
- package/src/formats/gexf/importer.ts +173 -63
- package/src/formats/gml/exporter.ts +78 -82
- package/src/formats/gml/importer.ts +119 -68
- package/src/formats/gml/syntax.ts +18 -8
- package/src/formats/graphml/exporter.ts +44 -24
- package/src/formats/graphml/importer.ts +18 -11
- package/src/formats/graphml/tree.ts +22 -12
- package/src/formats/graphml/yfiles.ts +23 -10
- package/src/formats/json/exporter.ts +40 -21
- package/src/formats/json/importer.ts +701 -385
- package/src/formats/json/obographs.ts +35 -15
- package/src/formats/neo4j/exporter.ts +79 -41
- package/src/formats/neo4j/header.ts +50 -16
- package/src/formats/neo4j/importer.ts +21 -10
- package/src/formats/obo/exporter.ts +34 -17
- package/src/formats/pajek/exporter.ts +180 -117
- package/src/formats/pajek/importer.ts +27 -15
- package/src/formats/pajek/syntax.ts +99 -58
- package/src/formats/xgmml/emit.ts +88 -40
- package/src/formats/xgmml/exporter.ts +40 -12
- package/src/formats/xgmml/importer.ts +45 -23
- package/src/sniff.ts +115 -59
- package/dist/chunks/export-B-aVCwyG.js.map +0 -1
- package/dist/chunks/exporter-BVXnV9-9.js.map +0 -1
- package/dist/chunks/exporter-Bcp-l4Bo.js.map +0 -1
- package/dist/chunks/importer-AjwOJrn2.js.map +0 -1
- package/dist/chunks/importer-BpuS3J8C.js.map +0 -1
- package/dist/chunks/importer-CPqnIY8m.js.map +0 -1
- package/dist/chunks/importer-DEp_fYjf.js.map +0 -1
- package/dist/chunks/records-r3SFHz11.js.map +0 -1
- package/dist/chunks/text-Bjfa1xYL.js.map +0 -1
|
@@ -304,6 +304,19 @@ function uniqueKey(base, used) {
|
|
|
304
304
|
function note(code, message, column = null, count = null) {
|
|
305
305
|
return Object.freeze({ code, message, column, count });
|
|
306
306
|
}
|
|
307
|
+
/**
|
|
308
|
+
* Count a kind of json value once per row.
|
|
309
|
+
* @param seen - the flags already counted for this row
|
|
310
|
+
* @param flag - the flag of the kind
|
|
311
|
+
* @param stats - the counters
|
|
312
|
+
* @param counter - the counter of the kind
|
|
313
|
+
*/
|
|
314
|
+
function countOnce(seen, flag, stats, counter) {
|
|
315
|
+
if (!seen[flag]) {
|
|
316
|
+
seen[flag] = true;
|
|
317
|
+
stats[counter]++;
|
|
318
|
+
}
|
|
319
|
+
}
|
|
307
320
|
/**
|
|
308
321
|
* Inspect a JSON value for what GML cannot write exactly.
|
|
309
322
|
* @param value - the value
|
|
@@ -313,24 +326,15 @@ function note(code, message, column = null, count = null) {
|
|
|
313
326
|
*/
|
|
314
327
|
function inspectJson(value, stats, inArray, seen) {
|
|
315
328
|
if (value === null) {
|
|
316
|
-
|
|
317
|
-
seen.nulls = true;
|
|
318
|
-
stats.nulls++;
|
|
319
|
-
}
|
|
329
|
+
countOnce(seen, "nulls", stats, "nulls");
|
|
320
330
|
return;
|
|
321
331
|
}
|
|
322
332
|
switch (typeof value) {
|
|
323
333
|
case "number":
|
|
324
|
-
|
|
325
|
-
seen.numbers = true;
|
|
326
|
-
stats.numbers++;
|
|
327
|
-
}
|
|
334
|
+
countOnce(seen, "numbers", stats, "numbers");
|
|
328
335
|
return;
|
|
329
336
|
case "boolean":
|
|
330
|
-
|
|
331
|
-
seen.booleans = true;
|
|
332
|
-
stats.booleans++;
|
|
333
|
-
}
|
|
337
|
+
countOnce(seen, "booleans", stats, "booleans");
|
|
334
338
|
return;
|
|
335
339
|
case "string":
|
|
336
340
|
return;
|
|
@@ -338,9 +342,8 @@ function inspectJson(value, stats, inArray, seen) {
|
|
|
338
342
|
break;
|
|
339
343
|
}
|
|
340
344
|
if (Array.isArray(value)) {
|
|
341
|
-
if (inArray
|
|
342
|
-
seen
|
|
343
|
-
stats.nestedArrays++;
|
|
345
|
+
if (inArray) {
|
|
346
|
+
countOnce(seen, "nested", stats, "nestedArrays");
|
|
344
347
|
}
|
|
345
348
|
for (const item of value) {
|
|
346
349
|
inspectJson(item, stats, true, seen);
|
|
@@ -355,6 +358,27 @@ function inspectJson(value, stats, inArray, seen) {
|
|
|
355
358
|
inspectJson(record[key], stats, false, seen);
|
|
356
359
|
}
|
|
357
360
|
}
|
|
361
|
+
/**
|
|
362
|
+
* A row count in words.
|
|
363
|
+
* @param count - the count
|
|
364
|
+
* @returns the count and the word row, pluralised
|
|
365
|
+
*/
|
|
366
|
+
function rowCount(count) {
|
|
367
|
+
return `${count} row${plural(count)}`;
|
|
368
|
+
}
|
|
369
|
+
/**
|
|
370
|
+
* Record a note for a counter that is not zero.
|
|
371
|
+
* @param notes - where to record
|
|
372
|
+
* @param count - the counter
|
|
373
|
+
* @param code - the note code
|
|
374
|
+
* @param text - the note message
|
|
375
|
+
* @param column - the column name
|
|
376
|
+
*/
|
|
377
|
+
function pushCounted(notes, count, code, text, column) {
|
|
378
|
+
if (count > 0) {
|
|
379
|
+
notes.push(note(code, text, column, count));
|
|
380
|
+
}
|
|
381
|
+
}
|
|
358
382
|
/**
|
|
359
383
|
* The GML-specific notes of one table's json columns.
|
|
360
384
|
* @param columns - the written columns
|
|
@@ -370,26 +394,18 @@ function jsonNotes(columns, label, plan, notes) {
|
|
|
370
394
|
}
|
|
371
395
|
const { name } = column.meta;
|
|
372
396
|
const where = `${label} column "${name}"`;
|
|
373
|
-
|
|
374
|
-
notes
|
|
375
|
-
}
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
}
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
}
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
if (stats.nestedArrays > 0) {
|
|
386
|
-
notes.push(note(NESTED_ARRAY_CODE, `${where} holds arrays nested in arrays in ${stats.nestedArrays} row${plural(stats.nestedArrays)}; GML cannot write them and the save fails`, name, stats.nestedArrays));
|
|
387
|
-
}
|
|
388
|
-
if (stats.invalidKeys > 0) {
|
|
389
|
-
notes.push(plan.mangle
|
|
390
|
-
? note(KEY_MANGLED_CODE, `${where}: ${stats.invalidKeys} record key${plural(stats.invalidKeys)} ${agree(stats.invalidKeys, "is", "are")} not GML keys and are rewritten`, name, stats.invalidKeys)
|
|
391
|
-
: note(INVALID_KEY_CODE, `${where}: ${stats.invalidKeys} record key${plural(stats.invalidKeys)} ${agree(stats.invalidKeys, "is", "are")} not GML keys; the save fails unless sanitizeKeys is "mangle"`, name, stats.invalidKeys));
|
|
392
|
-
}
|
|
397
|
+
const counted = (count, code, text) => {
|
|
398
|
+
pushCounted(notes, count, code, text, name);
|
|
399
|
+
};
|
|
400
|
+
counted(stats.numbers, RECORD_NUMBER_TYPE_CODE, `${where} holds numbers in ${rowCount(stats.numbers)}; GML records cannot keep the int / real distinction`);
|
|
401
|
+
counted(stats.booleans, RECORD_BOOLEAN_CODE, `${where} holds booleans in ${rowCount(stats.booleans)}; written as 1 / 0`);
|
|
402
|
+
counted(stats.nulls, RECORD_NULL_CODE, `${where} holds nulls in ${rowCount(stats.nulls)}; GML has no null, the key is omitted`);
|
|
403
|
+
counted(stats.arrays, JSON_ARRAY_CODE, `${where} holds arrays as values in ${rowCount(stats.arrays)}; written as repeated keys, they re-import as a list`);
|
|
404
|
+
counted(stats.nestedArrays, NESTED_ARRAY_CODE, `${where} holds arrays nested in arrays in ${rowCount(stats.nestedArrays)}; GML cannot write them and the save fails`);
|
|
405
|
+
const keys = `${stats.invalidKeys} record key${plural(stats.invalidKeys)} ${agree(stats.invalidKeys, "is", "are")} not GML keys`;
|
|
406
|
+
counted(stats.invalidKeys, plan.mangle ? KEY_MANGLED_CODE : INVALID_KEY_CODE, plan.mangle
|
|
407
|
+
? `${where}: ${keys} and are rewritten`
|
|
408
|
+
: `${where}: ${keys}; the save fails unless sanitizeKeys is "mangle"`);
|
|
393
409
|
}
|
|
394
410
|
}
|
|
395
411
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"exporter.js","sourceRoot":"","sources":["../../../../src/formats/gml/exporter.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"exporter.js","sourceRoot":"","sources":["../../../../src/formats/gml/exporter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"importer.d.ts","sourceRoot":"","sources":["../../../../src/formats/gml/importer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAyCH,OAAO,EACH,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EACvB,KAAK,aAAa,EAGrB,MAAM,gBAAgB,CAAC;AAmBxB;;;GAGG;AACH,MAAM,WAAW,gBAAiB,SAAQ,kBAAkB,EAAE,mBAAmB;IAC7E;;;;OAIG;IACH,SAAS,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAChC;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACzC;;;;;;OAMG;IACH,YAAY,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CACtC;AAED;;;GAGG;AACH,eAAO,MAAM,aAAa,eAAuB,CAAC;AAClD;;;GAGG;AACH,eAAO,MAAM,iBAAiB,sBAAuB,CAAC;AACtD;;;GAGG;AACH,eAAO,MAAM,eAAe,iBAAyB,CAAC;AACtD;;;GAGG;AACH,eAAO,MAAM,kBAAkB,wBAAwB,CAAC;AACxD;;;GAGG;AACH,eAAO,MAAM,qBAAqB,uBAA+B,CAAC;AAClE;;;GAGG;AACH,eAAO,MAAM,YAAY,kBAAkB,CAAC;AAC5C;;;;GAIG;AACH,eAAO,MAAM,cAAc,oBAAoB,CAAC;AAChD;;;GAGG;AACH,eAAO,MAAM,mBAAmB,qBAA6B,CAAC;AAC9D;;;GAGG;AACH,eAAO,MAAM,iBAAiB,uBAAuB,CAAC;AACtD;;;GAGG;AACH,eAAO,MAAM,iBAAiB,uBAAuB,CAAC;AACtD;;;GAGG;AACH,eAAO,MAAM,cAAc,oBAAoB,CAAC;AAChD;;;;GAIG;AACH,eAAO,MAAM,eAAe,qBAAqB,CAAC;AAIlD;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,yBAAyB,CAAC;AAC1D;;;;;GAKG;AACH,eAAO,MAAM,aAAa,mBAAmB,CAAC;AAC9C;;;GAGG;AACH,eAAO,MAAM,mBAAmB,yBAAyB,CAAC;AAC1D;;;GAGG;AACH,eAAO,MAAM,WAAW,iBAAiB,CAAC;AAC1C;;;GAGG;AACH,eAAO,MAAM,YAAY,cAAsB,CAAC;AAChD;;;;GAIG;AACH,eAAO,MAAM,cAAc,gBAAwB,CAAC;AACpD;;;GAGG;AACH,eAAO,MAAM,uBAAuB,qBAAsB,CAAC;AAC3D;;;;GAIG;AACH,eAAO,MAAM,eAAe,iBAAyB,CAAC;AACtD;;;GAGG;AACH,eAAO,MAAM,eAAe,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"importer.d.ts","sourceRoot":"","sources":["../../../../src/formats/gml/importer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAyCH,OAAO,EACH,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EACvB,KAAK,aAAa,EAGrB,MAAM,gBAAgB,CAAC;AAmBxB;;;GAGG;AACH,MAAM,WAAW,gBAAiB,SAAQ,kBAAkB,EAAE,mBAAmB;IAC7E;;;;OAIG;IACH,SAAS,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAChC;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACzC;;;;;;OAMG;IACH,YAAY,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CACtC;AAED;;;GAGG;AACH,eAAO,MAAM,aAAa,eAAuB,CAAC;AAClD;;;GAGG;AACH,eAAO,MAAM,iBAAiB,sBAAuB,CAAC;AACtD;;;GAGG;AACH,eAAO,MAAM,eAAe,iBAAyB,CAAC;AACtD;;;GAGG;AACH,eAAO,MAAM,kBAAkB,wBAAwB,CAAC;AACxD;;;GAGG;AACH,eAAO,MAAM,qBAAqB,uBAA+B,CAAC;AAClE;;;GAGG;AACH,eAAO,MAAM,YAAY,kBAAkB,CAAC;AAC5C;;;;GAIG;AACH,eAAO,MAAM,cAAc,oBAAoB,CAAC;AAChD;;;GAGG;AACH,eAAO,MAAM,mBAAmB,qBAA6B,CAAC;AAC9D;;;GAGG;AACH,eAAO,MAAM,iBAAiB,uBAAuB,CAAC;AACtD;;;GAGG;AACH,eAAO,MAAM,iBAAiB,uBAAuB,CAAC;AACtD;;;GAGG;AACH,eAAO,MAAM,cAAc,oBAAoB,CAAC;AAChD;;;;GAIG;AACH,eAAO,MAAM,eAAe,qBAAqB,CAAC;AAIlD;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,yBAAyB,CAAC;AAC1D;;;;;GAKG;AACH,eAAO,MAAM,aAAa,mBAAmB,CAAC;AAC9C;;;GAGG;AACH,eAAO,MAAM,mBAAmB,yBAAyB,CAAC;AAC1D;;;GAGG;AACH,eAAO,MAAM,WAAW,iBAAiB,CAAC;AAC1C;;;GAGG;AACH,eAAO,MAAM,YAAY,cAAsB,CAAC;AAChD;;;;GAIG;AACH,eAAO,MAAM,cAAc,gBAAwB,CAAC;AACpD;;;GAGG;AACH,eAAO,MAAM,uBAAuB,qBAAsB,CAAC;AAC3D;;;;GAIG;AACH,eAAO,MAAM,eAAe,iBAAyB,CAAC;AACtD;;;GAGG;AACH,eAAO,MAAM,eAAe,qBAAqB,CAAC;AAytDlD;;;GAGG;AACH,eAAO,MAAM,WAAW,EAAE,aAAa,CAAC,gBAAgB,CA0EtD,CAAC"}
|
|
@@ -299,29 +299,46 @@ class GmlImport {
|
|
|
299
299
|
if (key === "graph" && !record && scalarGraph < 0) {
|
|
300
300
|
scalarGraph = v;
|
|
301
301
|
}
|
|
302
|
-
|
|
303
|
-
if (this.graphCount++ === this.which) {
|
|
304
|
-
this.graphOpen = v;
|
|
305
|
-
this.scanGraph(v);
|
|
306
|
-
}
|
|
307
|
-
}
|
|
308
|
-
else if (key === "Creator" && !record && this.creatorToken < 0) {
|
|
309
|
-
this.creatorToken = v;
|
|
310
|
-
}
|
|
311
|
-
else if (key === "Version" && !record && this.versionToken < 0) {
|
|
312
|
-
this.versionToken = v;
|
|
313
|
-
}
|
|
314
|
-
else {
|
|
315
|
-
this.observe(this.topSchema, "graph", key, v, TOP_SEQ);
|
|
316
|
-
}
|
|
302
|
+
this.scanTopPair(key, record, v);
|
|
317
303
|
}
|
|
318
304
|
if (this.graphOpen < 0) {
|
|
319
|
-
|
|
320
|
-
|
|
305
|
+
this.failNoGraph(t, scalarGraph);
|
|
306
|
+
}
|
|
307
|
+
}
|
|
308
|
+
/**
|
|
309
|
+
* Handle one top-level pair other than a scalar `graph`.
|
|
310
|
+
* @param key - the key
|
|
311
|
+
* @param record - whether the value is a `[ ... ]` block
|
|
312
|
+
* @param v - the value token
|
|
313
|
+
*/
|
|
314
|
+
scanTopPair(key, record, v) {
|
|
315
|
+
if (key === "graph" && record) {
|
|
316
|
+
if (this.graphCount++ === this.which) {
|
|
317
|
+
this.graphOpen = v;
|
|
318
|
+
this.scanGraph(v);
|
|
321
319
|
}
|
|
322
|
-
|
|
320
|
+
}
|
|
321
|
+
else if (key === "Creator" && !record && this.creatorToken < 0) {
|
|
322
|
+
this.creatorToken = v;
|
|
323
|
+
}
|
|
324
|
+
else if (key === "Version" && !record && this.versionToken < 0) {
|
|
325
|
+
this.versionToken = v;
|
|
326
|
+
}
|
|
327
|
+
else {
|
|
328
|
+
this.observe(this.topSchema, "graph", key, v, TOP_SEQ);
|
|
323
329
|
}
|
|
324
330
|
}
|
|
331
|
+
/**
|
|
332
|
+
* Fail because the input holds no graph block.
|
|
333
|
+
* @param t - the tokens
|
|
334
|
+
* @param scalarGraph - the token of a scalar `graph` key, or -1
|
|
335
|
+
*/
|
|
336
|
+
failNoGraph(t, scalarGraph) {
|
|
337
|
+
if (scalarGraph >= 0) {
|
|
338
|
+
this.report.fail(NO_GRAPH_CODE, `the graph key at line ${t.line[scalarGraph]} holds ${describeValue(t, scalarGraph)}, not a [ ... ] block; the input contains no graph block`, { line: t.line[scalarGraph] });
|
|
339
|
+
}
|
|
340
|
+
this.report.fail(NO_GRAPH_CODE, "the input contains no graph [ ... ] block", { line: null });
|
|
341
|
+
}
|
|
325
342
|
/**
|
|
326
343
|
* Walk the graph block for the schema.
|
|
327
344
|
* @param open - the index of the block's `[`
|
|
@@ -370,31 +387,41 @@ class GmlImport {
|
|
|
370
387
|
const close = t.match[open];
|
|
371
388
|
const seq = this.seq++;
|
|
372
389
|
const schema = domain === "node" ? this.nodeSchema : this.edgeSchema;
|
|
373
|
-
const { weightFrom, restoreMangledIds } = this.options;
|
|
374
390
|
for (let p = open + 1; p < close; p = t.nextPair(p)) {
|
|
375
391
|
const key = t.textOf(p);
|
|
376
392
|
const v = p + 1;
|
|
377
|
-
if (domain
|
|
378
|
-
|
|
379
|
-
continue;
|
|
380
|
-
}
|
|
381
|
-
if (key === ORIGINAL_ID_KEY && restoreMangledIds) {
|
|
382
|
-
this.hasOriginalId = true;
|
|
383
|
-
continue;
|
|
384
|
-
}
|
|
385
|
-
}
|
|
386
|
-
else {
|
|
387
|
-
if (key === "source" || key === "target" || key === "directed") {
|
|
388
|
-
continue;
|
|
389
|
-
}
|
|
390
|
-
if (key === weightFrom) {
|
|
391
|
-
this.weightKinds |= kindBit(t, v);
|
|
392
|
-
continue;
|
|
393
|
-
}
|
|
393
|
+
if (this.skipsKey(domain, key, v)) {
|
|
394
|
+
continue;
|
|
394
395
|
}
|
|
395
396
|
this.observe(schema, domain, key, v, seq);
|
|
396
397
|
}
|
|
397
398
|
}
|
|
399
|
+
/**
|
|
400
|
+
* Whether a key of a node or edge block is structural (id, endpoints, weight, original id), not
|
|
401
|
+
* a column; notes the original id and the weight's kinds on the way.
|
|
402
|
+
* @param domain - node or edge
|
|
403
|
+
* @param key - the key
|
|
404
|
+
* @param v - the value token
|
|
405
|
+
* @returns true when the key is not a column
|
|
406
|
+
*/
|
|
407
|
+
skipsKey(domain, key, v) {
|
|
408
|
+
const { weightFrom, restoreMangledIds } = this.options;
|
|
409
|
+
if (domain === "node") {
|
|
410
|
+
if (key === ORIGINAL_ID_KEY && restoreMangledIds) {
|
|
411
|
+
this.hasOriginalId = true;
|
|
412
|
+
return true;
|
|
413
|
+
}
|
|
414
|
+
return key === "id";
|
|
415
|
+
}
|
|
416
|
+
if (key === "source" || key === "target" || key === "directed") {
|
|
417
|
+
return true;
|
|
418
|
+
}
|
|
419
|
+
if (key === weightFrom) {
|
|
420
|
+
this.weightKinds |= kindBit(this.requireTokens(), v);
|
|
421
|
+
return true;
|
|
422
|
+
}
|
|
423
|
+
return false;
|
|
424
|
+
}
|
|
398
425
|
/**
|
|
399
426
|
* Record one value of one key in a table's schema.
|
|
400
427
|
* @param schema - the table's schema
|
|
@@ -562,6 +589,44 @@ class GmlImport {
|
|
|
562
589
|
this.topPlans.set(key, this.planOf("graph", entry, true));
|
|
563
590
|
}
|
|
564
591
|
}
|
|
592
|
+
/**
|
|
593
|
+
* Warn about a key that mixes numbers and strings, or holds integers beyond 2^53.
|
|
594
|
+
* @param domain - the table
|
|
595
|
+
* @param entry - the schema entry
|
|
596
|
+
* @param asText - whether the integers are kept as text
|
|
597
|
+
*/
|
|
598
|
+
warnKinds(domain, entry, asText) {
|
|
599
|
+
if ((entry.kinds & KIND_STRING) !== 0 &&
|
|
600
|
+
(entry.kinds & (KIND_INT | KIND_REAL)) !== 0 &&
|
|
601
|
+
(entry.kinds & KIND_RECORD) === 0) {
|
|
602
|
+
this.report.warnOnce("coercion", WIDENED_CODE, `${domain} key "${entry.key}" mixes numbers and strings; the column is string and the numbers are kept as written`, { element: entry.key }, `${WIDENED_CODE}:${domain}:${entry.key}`);
|
|
603
|
+
}
|
|
604
|
+
if (entry.unsafe && !asText) {
|
|
605
|
+
this.report.warnOnce("precision", PRECISION_CODE, `${domain} key "${entry.key}" holds integers beyond 2^53; they are stored as the nearest f64 (pass long: "string" to keep every digit as text)`, { element: entry.key }, `${PRECISION_CODE}:${domain}:${entry.key}`);
|
|
606
|
+
}
|
|
607
|
+
}
|
|
608
|
+
/**
|
|
609
|
+
* The plan of a node `graphics` record: the plan plus its position and rest columns.
|
|
610
|
+
* @param plan - the record's plan
|
|
611
|
+
* @param entry - the schema entry
|
|
612
|
+
* @returns the plan with its position (and rest) plans
|
|
613
|
+
*/
|
|
614
|
+
graphicsPlan(plan, entry) {
|
|
615
|
+
const taken = (candidate) => this.nodeSchema.has(candidate) || this.sink.nodeColumn(candidate) !== INVALID_INDEX;
|
|
616
|
+
const position = {
|
|
617
|
+
...plan,
|
|
618
|
+
name: uniqueColumnName("position", "graphics", taken),
|
|
619
|
+
dtype: "f64",
|
|
620
|
+
itemDtype: null,
|
|
621
|
+
kind: "real",
|
|
622
|
+
list: false,
|
|
623
|
+
role: "position",
|
|
624
|
+
};
|
|
625
|
+
const rest = entry.rest
|
|
626
|
+
? { ...plan, dtype: "json", itemDtype: null, kind: "record", list: false }
|
|
627
|
+
: null;
|
|
628
|
+
return { ...plan, position, rest };
|
|
629
|
+
}
|
|
565
630
|
/**
|
|
566
631
|
* The plan of one schema entry.
|
|
567
632
|
* @param domain - the table
|
|
@@ -581,14 +646,7 @@ class GmlImport {
|
|
|
581
646
|
entry.dict.decide() === "dict") {
|
|
582
647
|
scalar = "dict";
|
|
583
648
|
}
|
|
584
|
-
|
|
585
|
-
(entry.kinds & (KIND_INT | KIND_REAL)) !== 0 &&
|
|
586
|
-
(entry.kinds & KIND_RECORD) === 0) {
|
|
587
|
-
this.report.warnOnce("coercion", WIDENED_CODE, `${domain} key "${entry.key}" mixes numbers and strings; the column is string and the numbers are kept as written`, { element: entry.key }, `${WIDENED_CODE}:${domain}:${entry.key}`);
|
|
588
|
-
}
|
|
589
|
-
if (entry.unsafe && !asText) {
|
|
590
|
-
this.report.warnOnce("precision", PRECISION_CODE, `${domain} key "${entry.key}" holds integers beyond 2^53; they are stored as the nearest f64 (pass long: "string" to keep every digit as text)`, { element: entry.key }, `${PRECISION_CODE}:${domain}:${entry.key}`);
|
|
591
|
-
}
|
|
649
|
+
this.warnKinds(domain, entry, asText);
|
|
592
650
|
const name = domain === "graph" ? this.uniqueGraphName(entry.key) : entry.key;
|
|
593
651
|
let itemDtype = null;
|
|
594
652
|
if (entry.list) {
|
|
@@ -611,20 +669,7 @@ class GmlImport {
|
|
|
611
669
|
seq: Number.NEGATIVE_INFINITY,
|
|
612
670
|
};
|
|
613
671
|
if (domain === "node" && entry.key === "graphics" && this.positions && (entry.kinds & KIND_RECORD) !== 0) {
|
|
614
|
-
|
|
615
|
-
const position = {
|
|
616
|
-
...plan,
|
|
617
|
-
name: uniqueColumnName("position", "graphics", taken),
|
|
618
|
-
dtype: "f64",
|
|
619
|
-
itemDtype: null,
|
|
620
|
-
kind: "real",
|
|
621
|
-
list: false,
|
|
622
|
-
role: "position",
|
|
623
|
-
};
|
|
624
|
-
const rest = entry.rest
|
|
625
|
-
? { ...plan, dtype: "json", itemDtype: null, kind: "record", list: false }
|
|
626
|
-
: null;
|
|
627
|
-
return { ...plan, position, rest };
|
|
672
|
+
return this.graphicsPlan(plan, entry);
|
|
628
673
|
}
|
|
629
674
|
return plan;
|
|
630
675
|
}
|