@graphty/graph-io 0.3.39 → 0.3.40

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (94) hide show
  1. package/dist/chunks/{escape-BpYMQZVa.js → escape-BJRLd3vJ.js} +3 -2
  2. package/dist/chunks/escape-BJRLd3vJ.js.map +1 -0
  3. package/dist/chunks/{exporter-BqKs1Q12.js → exporter-6ocL_9x_.js} +5 -4
  4. package/dist/chunks/exporter-6ocL_9x_.js.map +1 -0
  5. package/dist/chunks/{exporter-DXqCPNrI.js → exporter-BVXnV9-9.js} +42 -29
  6. package/dist/chunks/exporter-BVXnV9-9.js.map +1 -0
  7. package/dist/chunks/{exporter-CNJZF_BN.js → exporter-Bcp-l4Bo.js} +2 -2
  8. package/dist/chunks/{exporter-CNJZF_BN.js.map → exporter-Bcp-l4Bo.js.map} +1 -1
  9. package/dist/chunks/{importer-CqgYq4Ld.js → importer-AjwOJrn2.js} +2 -2
  10. package/dist/chunks/{importer-CqgYq4Ld.js.map → importer-AjwOJrn2.js.map} +1 -1
  11. package/dist/chunks/{importer-BfJ1jnNr.js → importer-BJlGAOht.js} +27 -12
  12. package/dist/chunks/importer-BJlGAOht.js.map +1 -0
  13. package/dist/chunks/{importer-PVXkeoaS.js → importer-BpuS3J8C.js} +8 -8
  14. package/dist/chunks/importer-BpuS3J8C.js.map +1 -0
  15. package/dist/chunks/{importer-CSt-gaYE.js → importer-CPqnIY8m.js} +4 -4
  16. package/dist/chunks/{importer-CSt-gaYE.js.map → importer-CPqnIY8m.js.map} +1 -1
  17. package/dist/chunks/{importer-B7Ir269L.js → importer-DEp_fYjf.js} +28 -10
  18. package/dist/chunks/importer-DEp_fYjf.js.map +1 -0
  19. package/dist/chunks/{importer-DvFznt5-.js → importer-D_srHyj6.js} +111 -61
  20. package/dist/chunks/importer-D_srHyj6.js.map +1 -0
  21. package/dist/chunks/{importer--tQQsY4W.js → importer-DcKB97kW.js} +2 -2
  22. package/dist/chunks/{importer--tQQsY4W.js.map → importer-DcKB97kW.js.map} +1 -1
  23. package/dist/chunks/{json-elements-CXs4z1iL.js → json-elements-DpO6AXIc.js} +5 -3
  24. package/dist/chunks/{json-elements-CXs4z1iL.js.map → json-elements-DpO6AXIc.js.map} +1 -1
  25. package/dist/chunks/{records-C9jd7yLD.js → records-r3SFHz11.js} +136 -95
  26. package/dist/chunks/records-r3SFHz11.js.map +1 -0
  27. package/dist/csv.js +2 -2
  28. package/dist/cx.js +1 -1
  29. package/dist/cx2.js +2 -2
  30. package/dist/cys.js +1 -1
  31. package/dist/dot.js +1 -1
  32. package/dist/gexf.js +5 -3
  33. package/dist/gexf.js.map +1 -1
  34. package/dist/gml.js +1 -1
  35. package/dist/graph-io.js +19 -19
  36. package/dist/graphml.js +1 -1
  37. package/dist/json.js +1 -1
  38. package/dist/neo4j.js +2 -2
  39. package/dist/pajek.js +1 -1
  40. package/dist/src/common/json-elements.d.ts.map +1 -1
  41. package/dist/src/common/json-elements.js +4 -2
  42. package/dist/src/common/json-elements.js.map +1 -1
  43. package/dist/src/common/xml.d.ts.map +1 -1
  44. package/dist/src/common/xml.js +2 -1
  45. package/dist/src/common/xml.js.map +1 -1
  46. package/dist/src/formats/csv/records.d.ts.map +1 -1
  47. package/dist/src/formats/csv/records.js +138 -100
  48. package/dist/src/formats/csv/records.js.map +1 -1
  49. package/dist/src/formats/cx/importer.d.ts.map +1 -1
  50. package/dist/src/formats/cx/importer.js +108 -53
  51. package/dist/src/formats/cx/importer.js.map +1 -1
  52. package/dist/src/formats/cx2/exporter.d.ts.map +1 -1
  53. package/dist/src/formats/cx2/exporter.js +2 -1
  54. package/dist/src/formats/cx2/exporter.js.map +1 -1
  55. package/dist/src/formats/cx2/importer.d.ts.map +1 -1
  56. package/dist/src/formats/cx2/importer.js +28 -6
  57. package/dist/src/formats/cx2/importer.js.map +1 -1
  58. package/dist/src/formats/gexf/exporter.d.ts.map +1 -1
  59. package/dist/src/formats/gexf/exporter.js +4 -2
  60. package/dist/src/formats/gexf/exporter.js.map +1 -1
  61. package/dist/src/formats/graphml/exporter.d.ts.map +1 -1
  62. package/dist/src/formats/graphml/exporter.js +2 -1
  63. package/dist/src/formats/graphml/exporter.js.map +1 -1
  64. package/dist/src/formats/graphml/importer.d.ts.map +1 -1
  65. package/dist/src/formats/graphml/importer.js +3 -2
  66. package/dist/src/formats/graphml/importer.js.map +1 -1
  67. package/dist/src/formats/xgmml/emit.d.ts +6 -0
  68. package/dist/src/formats/xgmml/emit.d.ts.map +1 -1
  69. package/dist/src/formats/xgmml/emit.js +33 -10
  70. package/dist/src/formats/xgmml/emit.js.map +1 -1
  71. package/dist/src/formats/xgmml/exporter.d.ts.map +1 -1
  72. package/dist/src/formats/xgmml/exporter.js +54 -22
  73. package/dist/src/formats/xgmml/exporter.js.map +1 -1
  74. package/dist/xgmml.js +2 -2
  75. package/package.json +2 -2
  76. package/src/common/json-elements.ts +4 -2
  77. package/src/common/xml.ts +2 -1
  78. package/src/formats/csv/records.ts +143 -99
  79. package/src/formats/cx/importer.ts +140 -58
  80. package/src/formats/cx2/exporter.ts +2 -1
  81. package/src/formats/cx2/importer.ts +34 -10
  82. package/src/formats/gexf/exporter.ts +4 -2
  83. package/src/formats/graphml/exporter.ts +2 -3
  84. package/src/formats/graphml/importer.ts +3 -2
  85. package/src/formats/xgmml/emit.ts +34 -10
  86. package/src/formats/xgmml/exporter.ts +63 -23
  87. package/dist/chunks/escape-BpYMQZVa.js.map +0 -1
  88. package/dist/chunks/exporter-BqKs1Q12.js.map +0 -1
  89. package/dist/chunks/exporter-DXqCPNrI.js.map +0 -1
  90. package/dist/chunks/importer-B7Ir269L.js.map +0 -1
  91. package/dist/chunks/importer-BfJ1jnNr.js.map +0 -1
  92. package/dist/chunks/importer-DvFznt5-.js.map +0 -1
  93. package/dist/chunks/importer-PVXkeoaS.js.map +0 -1
  94. package/dist/chunks/records-C9jd7yLD.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"records.d.ts","sourceRoot":"","sources":["../../../../src/formats/csv/records.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAIH,OAAO,EAAmB,KAAK,WAAW,EAAwB,MAAM,uBAAuB,CAAC;AAChG,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAClE,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAElD;;;GAGG;AACH,eAAO,MAAM,mBAAmB,yBAAyB,CAAC;AAE1D;;;GAGG;AACH,eAAO,MAAM,cAAc,gBAAgB,CAAC;AAE5C;;;GAGG;AACH,eAAO,MAAM,oBAAoB,EAAE,SAAS,MAAM,EAA8C,CAAC;AA+BjG;;;GAGG;AACH,MAAM,WAAW,YAAY;IACzB,8EAA8E;IAC9E,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,0CAA0C;IAC1C,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,sFAAsF;IACtF,QAAQ,CAAC,UAAU,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,CAAC;IACpD;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,CAAC;IAClD;;;OAGG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC/C;;;;OAIG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC9C,+FAA+F;IAC/F,QAAQ,CAAC,YAAY,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC5C;;;;OAIG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;CAC5E;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,YAAY,GAAG,YAAY,CAuBpE;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAEtD;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,YAAY,CACxB,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,EACf,YAAY,UAAQ,EACpB,QAAQ,UAAQ,GACjB,MAAM,EAAE,EAAE,GAAG,IAAI,CAcnB;AAoJD;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAuBtF;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,cAAc,CAC1B,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,IAAI,GAAG,IAAW,EAC3B,UAAU,GAAE,SAAS,MAAM,EAAyB,EACpD,KAAK,SAAM,EACX,eAAe,UAAQ,EACvB,QAAQ,UAAQ,GACjB,MAAM,GAAG,IAAI,CAqCf;AAWD;;;;;;;;GAQG;AACH,qBAAa,YAAa,YAAW,aAAa,CAAC,MAAM,CAAC;IACtD,+FAA+F;IAC/F,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,CAAM;IAE9B,wEAAwE;IACxE,QAAQ,CAAC,MAAM,EAAE,OAAO,EAAE,CAAM;IAEhC,wGAAwG;IACxG,QAAQ,CAAC,eAAe,EAAE,MAAM,EAAE,CAAM;IAExC,+EAA+E;IAC/E,QAAQ,CAAC,mBAAmB,EAAE,MAAM,EAAE,CAAM;IAE5C,4GAA4G;IAC5G,cAAc,SAAK;IAEnB,2GAA2G;IAC3G,YAAY,UAAS;IAErB,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAc;IAEpC,QAAQ,CAAC,MAAM,EAAE,mBAAmB,CAAC;IAErC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAc;IAE1C,0EAA0E;IAC1E,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC;IAE9B,OAAO,CAAC,aAAa,CAAgB;IAErC,OAAO,CAAC,UAAU,CAAK;IAEvB;;;;;;OAMG;gBACS,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,mBAAmB,EAAE,MAAM,EAAE,YAAY,EAAE,WAAW,EAAE,WAAW;IAQ3G;;;OAGG;IACH,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED;;;OAGG;IACH,IAAI,SAAS,IAAI,MAAM,GAAG,IAAI,CAE7B;IAED;;;;OAIG;IACI,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,cAAc,CAAC,MAAM,EAAE,IAAI,EAAE,SAAS,CAAC;IAuBxE;;;;;OAKG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,KAAK;IAQ5C;;;;OAIG;IACH,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,KAAK;IAMlC;;;;;;OAMG;YACY,MAAM;IA0DrB;;;OAGG;IACH,OAAO,CAAC,KAAK;CA0BhB;AA6TD;;;GAGG;AACH,MAAM,WAAW,gBAAiB,SAAQ,WAAW;IACjD,mEAAmE;IACnE,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAC/C,8FAA8F;IAC9F,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,CAAC;IAClD,sDAAsD;IACtD,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC/C,6CAA6C;IAC7C,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;CAC5E;AAED;;;;;;;;;;GAUG;AACH,qBAAa,eAAgB,YAAW,aAAa,CAAC,MAAM,EAAE,CAAC;IAC3D,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAe;IAErC;;;;;OAKG;gBACS,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,mBAAmB,EAAE,OAAO,GAAE,gBAAqB;IAuB3F;;;OAGG;IACH,IAAI,eAAe,IAAI,SAAS,MAAM,EAAE,CAEvC;IAED;;;OAGG;IACH,IAAI,mBAAmB,IAAI,SAAS,MAAM,EAAE,CAE3C;IAED;;;OAGG;IACH,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED;;;OAGG;IACH,IAAI,SAAS,IAAI,MAAM,GAAG,IAAI,CAE7B;IAED;;;OAGG;IACH,IAAI,MAAM,IAAI,SAAS,OAAO,EAAE,CAE/B;IAED;;;OAGG;IACH,IAAI,cAAc,IAAI,MAAM,CAE3B;IAED;;;OAGG;IACH,IAAI,YAAY,IAAI,OAAO,CAE1B;IAED;;;;OAIG;IACI,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,cAAc,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,CAAC;CAS7E"}
1
+ {"version":3,"file":"records.d.ts","sourceRoot":"","sources":["../../../../src/formats/csv/records.ts"],"names":[],"mappings":"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"}
@@ -588,127 +588,165 @@ class RecordScanner {
588
588
  * @returns the position after the last character consumed
589
589
  */
590
590
  scan(chunk, from) {
591
- const { quoteCode, delimiterCode } = this;
591
+ const { delimiterCode } = this;
592
592
  const n = chunk.length;
593
593
  let i = from;
594
594
  this.segment = from;
595
595
  while (i < n) {
596
596
  const c = chunk.charCodeAt(i);
597
- if (this.state === COMMENT) {
598
- if (c === LF || c === CR) {
599
- this.comment = this.grow(this.comment, chunk.slice(this.segment, i));
600
- this.reader.leadingComments.push(this.comment);
601
- this.reader.leadingCommentLines.push(this.line);
602
- this.comment = "";
603
- this.state = START;
604
- this.endLine(c);
605
- this.segment = i + 1;
606
- }
597
+ const { state } = this;
598
+ if (state === COMMENT) {
599
+ this.commentChar(chunk, i, c);
607
600
  i++;
608
601
  continue;
609
602
  }
610
- if (this.state === QUOTED) {
611
- // jump to the next quote; the run in between is field text whose line breaks are counted
612
- const q = chunk.indexOf(this.quoteText, i);
613
- const end = q < 0 ? n : q;
614
- if (end > i) {
615
- this.countLineBreaks(chunk, i, end);
616
- }
617
- if (q < 0) {
618
- i = n;
619
- break;
620
- }
621
- this.field = this.grow(this.field, chunk.slice(this.segment, q));
622
- this.state = CLOSING;
623
- this.lastWasCr = false;
624
- i = q + 1;
603
+ if (state === QUOTED) {
604
+ i = this.quotedRun(chunk, i);
625
605
  continue;
626
606
  }
627
607
  const isDelimiter = c === delimiterCode || (this.collapse && c === TAB);
628
- if (this.state === CLOSING) {
629
- if (c === quoteCode) {
630
- this.field = this.grow(this.field, this.quoteText);
631
- this.segment = i + 1;
632
- this.state = QUOTED;
633
- this.lastWasCr = false;
634
- i++;
635
- continue;
636
- }
637
- if (!isDelimiter && c !== LF && c !== CR) {
638
- this.reader.badQuote(this.startLine, this.count + 1);
639
- }
640
- this.state = AFTER_QUOTED;
641
- this.segment = i;
642
- // fall through to the delimiter / line-end handling below without consuming c
643
- }
644
- if (isDelimiter || c === LF || c === CR) {
645
- if (c === LF && this.lastWasCr) {
646
- // the second half of a CRLF already ended the record
647
- this.lastWasCr = false;
648
- this.segment = i + 1;
649
- i++;
650
- continue;
651
- }
652
- if (this.state === UNQUOTED) {
653
- this.field = this.grow(this.field, chunk.slice(this.segment, i));
654
- }
655
- if (isDelimiter && this.collapse && this.state === START) {
656
- // a run of whitespace, or indentation: one separator
657
- this.lastWasCr = false;
658
- this.segment = i + 1;
659
- i++;
660
- continue;
661
- }
662
- if (isDelimiter) {
663
- this.push();
664
- this.state = START;
665
- this.lastWasCr = false;
666
- this.segment = i + 1;
667
- i++;
668
- continue;
669
- }
670
- // a line ending right after a whitespace run in the whitespace dialect ends no field
671
- if (!(this.state === START && (this.count === 0 || this.collapse))) {
672
- this.push();
673
- }
674
- if (this.count > 0) {
675
- this.ready = true;
676
- this.recordLine = this.startLine;
677
- }
678
- this.state = START;
679
- this.endLine(c);
680
- this.segment = i + 1;
681
- i++;
608
+ if (state === CLOSING || isDelimiter || c === LF || c === CR) {
609
+ i = this.boundary(chunk, i, c, isDelimiter);
682
610
  if (this.ready) {
683
611
  return i;
684
612
  }
685
613
  continue;
686
614
  }
615
+ this.fieldChar(c, i);
616
+ i++;
617
+ }
618
+ return i;
619
+ }
620
+ /**
621
+ * One character of a leading comment line: a line break ends the comment.
622
+ * @param chunk - the chunk
623
+ * @param i - the character's index
624
+ * @param c - the character's code
625
+ */
626
+ commentChar(chunk, i, c) {
627
+ if (c !== LF && c !== CR) {
628
+ return;
629
+ }
630
+ this.comment = this.grow(this.comment, chunk.slice(this.segment, i));
631
+ this.reader.leadingComments.push(this.comment);
632
+ this.reader.leadingCommentLines.push(this.line);
633
+ this.comment = "";
634
+ this.state = START;
635
+ this.endLine(c);
636
+ this.segment = i + 1;
637
+ }
638
+ /**
639
+ * Inside a quoted field: jump to the next quote; the run in between is field text whose line
640
+ * breaks are counted.
641
+ * @param chunk - the chunk
642
+ * @param i - where the run starts
643
+ * @returns the position after the quote, or the chunk end when there is none
644
+ */
645
+ quotedRun(chunk, i) {
646
+ const q = chunk.indexOf(this.quoteText, i);
647
+ const end = q < 0 ? chunk.length : q;
648
+ if (end > i) {
649
+ this.countLineBreaks(chunk, i, end);
650
+ }
651
+ if (q < 0) {
652
+ return chunk.length;
653
+ }
654
+ this.field = this.grow(this.field, chunk.slice(this.segment, q));
655
+ this.state = CLOSING;
656
+ this.lastWasCr = false;
657
+ return q + 1;
658
+ }
659
+ /**
660
+ * The character after a quote inside a quoted field, a delimiter or a line break: a doubled
661
+ * quote, the end of a field, or the end of a record.
662
+ * @param chunk - the chunk
663
+ * @param i - the character's index
664
+ * @param c - the character's code
665
+ * @param isDelimiter - whether it separates fields
666
+ * @returns the position after the character
667
+ */
668
+ boundary(chunk, i, c, isDelimiter) {
669
+ if (this.state === CLOSING) {
670
+ if (c === this.quoteCode) {
671
+ this.field = this.grow(this.field, this.quoteText);
672
+ this.segment = i + 1;
673
+ this.state = QUOTED;
674
+ this.lastWasCr = false;
675
+ return i + 1;
676
+ }
677
+ if (!isDelimiter && c !== LF && c !== CR) {
678
+ this.reader.badQuote(this.startLine, this.count + 1);
679
+ }
680
+ this.state = AFTER_QUOTED;
681
+ this.segment = i;
682
+ }
683
+ if (c === LF && this.lastWasCr) {
684
+ // the second half of a CRLF already ended the record
687
685
  this.lastWasCr = false;
688
- if (this.state === START) {
689
- if (this.leading && this.count === 0 && this.commentCodes.includes(c)) {
690
- this.state = COMMENT;
691
- this.segment = i;
692
- i++;
693
- continue;
694
- }
695
- this.leading = false;
696
- if (c === quoteCode) {
697
- this.state = QUOTED;
698
- this.fieldQuoted = true;
699
- this.segment = i + 1;
700
- }
701
- else {
702
- this.state = UNQUOTED;
703
- this.segment = i;
704
- }
686
+ this.segment = i + 1;
687
+ return i + 1;
688
+ }
689
+ if (this.state === UNQUOTED) {
690
+ this.field = this.grow(this.field, chunk.slice(this.segment, i));
691
+ }
692
+ if (isDelimiter) {
693
+ // in the whitespace dialect a run of whitespace, or indentation, is one separator
694
+ if (!(this.collapse && this.state === START)) {
695
+ this.push();
696
+ this.state = START;
705
697
  }
706
- else if (c === quoteCode && this.state === UNQUOTED && this.reader.strayQuoteLine === 0) {
698
+ this.lastWasCr = false;
699
+ this.segment = i + 1;
700
+ return i + 1;
701
+ }
702
+ this.lineEnd(c);
703
+ this.segment = i + 1;
704
+ return i + 1;
705
+ }
706
+ /**
707
+ * A line break that ends a record (or a blank line).
708
+ * @param c - the LF or CR
709
+ */
710
+ lineEnd(c) {
711
+ // a line ending right after a whitespace run in the whitespace dialect ends no field
712
+ if (!(this.state === START && (this.count === 0 || this.collapse))) {
713
+ this.push();
714
+ }
715
+ if (this.count > 0) {
716
+ this.ready = true;
717
+ this.recordLine = this.startLine;
718
+ }
719
+ this.state = START;
720
+ this.endLine(c);
721
+ }
722
+ /**
723
+ * Any other character outside a quoted field: the start of a field or a comment, or field text.
724
+ * @param c - the character's code
725
+ * @param i - its index
726
+ */
727
+ fieldChar(c, i) {
728
+ this.lastWasCr = false;
729
+ if (this.state !== START) {
730
+ if (c === this.quoteCode && this.state === UNQUOTED && this.reader.strayQuoteLine === 0) {
707
731
  this.reader.strayQuoteLine = this.startLine;
708
732
  }
709
- i++;
733
+ return;
734
+ }
735
+ if (this.leading && this.count === 0 && this.commentCodes.includes(c)) {
736
+ this.state = COMMENT;
737
+ this.segment = i;
738
+ return;
739
+ }
740
+ this.leading = false;
741
+ if (c === this.quoteCode) {
742
+ this.state = QUOTED;
743
+ this.fieldQuoted = true;
744
+ this.segment = i + 1;
745
+ }
746
+ else {
747
+ this.state = UNQUOTED;
748
+ this.segment = i;
710
749
  }
711
- return i;
712
750
  }
713
751
  /**
714
752
  * Keep the tail of a chunk that belongs to an open field or comment.
@@ -1 +1 @@
1
- {"version":3,"file":"records.js","sourceRoot":"","sources":["../../../../src/formats/csv/records.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"records.js","sourceRoot":"","sources":["../../../../src/formats/csv/records.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"importer.d.ts","sourceRoot":"","sources":["../../../../src/formats/cx/importer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AA4FH,OAAO,EACH,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EACvB,KAAK,aAAa,EAIrB,MAAM,gBAAgB,CAAC;AASxB;;;GAGG;AACH,MAAM,WAAW,eAAgB,SAAQ,kBAAkB,EAAE,mBAAmB;IAC5E;;;;OAIG;IACH,GAAG,CAAC,EAAE,QAAQ,GAAG,UAAU,GAAG,SAAS,CAAC;CAC3C;AAED;;;;;GAKG;AACH,eAAO,MAAM,QAAQ;IAGjB,4CAA4C;;IAE5C,oDAAoD;;IAEpD,sDAAsD;;IAEtD;;;OAGG;;IAEH,0DAA0D;;IAE1D,0DAA0D;;IAE1D,8GAA8G;;IAE9G,4EAA4E;;IAE5E,gGAAgG;;IAEhG,wEAAwE;;IAExE,iHAAiH;;IAEjH,kGAAkG;;IAElG,gHAAgH;;IAEhH;;;OAGG;;IAEH,+EAA+E;;IAE/E,6DAA6D;;IAE7D,uEAAuE;;IAEvE;;;OAGG;;IAEH,iEAAiE;;IAEjE,gGAAgG;;IAEhG,qGAAqG;;IAErG,qCAAqC;;IAErC,mEAAmE;;IAEnE,4GAA4G;;IAE5G,iEAAiE;;IAEjE,8BAA8B;;IAE9B,kEAAkE;;IAElE,6DAA6D;;IAE7D,oCAAoC;;IAEpC;;;OAGG;;IAEH,2FAA2F;;IAE3F,sFAAsF;;IAEtF,+FAA+F;;IAE/F,yFAAyF;;IAEzF,qCAAqC;;IAErC,+EAA+E;;IAE/E,gHAAgH;;IAEhH,iDAAiD;;IAEjD;;;OAGG;;IAEH,2EAA2E;;IAE3E,iEAAiE;;IAEjE,kDAAkD;;IAElD;;;OAGG;;IAEH;;;OAGG;;IAEH;;;OAGG;;IAEH,0FAA0F;;IAE1F,kGAAkG;;IAElG;;;OAGG;;IAEH,wEAAwE;;;;;;;;EAE1E,CAAC;AAm4FH;;;GAGG;AACH,eAAO,MAAM,UAAU,EAAE,aAAa,CAAC,eAAe,CAoGpD,CAAC"}
1
+ {"version":3,"file":"importer.d.ts","sourceRoot":"","sources":["../../../../src/formats/cx/importer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AA4FH,OAAO,EACH,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EACvB,KAAK,aAAa,EAIrB,MAAM,gBAAgB,CAAC;AASxB;;;GAGG;AACH,MAAM,WAAW,eAAgB,SAAQ,kBAAkB,EAAE,mBAAmB;IAC5E;;;;OAIG;IACH,GAAG,CAAC,EAAE,QAAQ,GAAG,UAAU,GAAG,SAAS,CAAC;CAC3C;AAED;;;;;GAKG;AACH,eAAO,MAAM,QAAQ;IAGjB,4CAA4C;;IAE5C,oDAAoD;;IAEpD,sDAAsD;;IAEtD;;;OAGG;;IAEH,0DAA0D;;IAE1D,0DAA0D;;IAE1D,8GAA8G;;IAE9G,4EAA4E;;IAE5E,gGAAgG;;IAEhG,wEAAwE;;IAExE,iHAAiH;;IAEjH,kGAAkG;;IAElG,gHAAgH;;IAEhH;;;OAGG;;IAEH,+EAA+E;;IAE/E,6DAA6D;;IAE7D,uEAAuE;;IAEvE;;;OAGG;;IAEH,iEAAiE;;IAEjE,gGAAgG;;IAEhG,qGAAqG;;IAErG,qCAAqC;;IAErC,mEAAmE;;IAEnE,4GAA4G;;IAE5G,iEAAiE;;IAEjE,8BAA8B;;IAE9B,kEAAkE;;IAElE,6DAA6D;;IAE7D,oCAAoC;;IAEpC;;;OAGG;;IAEH,2FAA2F;;IAE3F,sFAAsF;;IAEtF,+FAA+F;;IAE/F,yFAAyF;;IAEzF,qCAAqC;;IAErC,+EAA+E;;IAE/E,gHAAgH;;IAEhH,iDAAiD;;IAEjD;;;OAGG;;IAEH,2EAA2E;;IAE3E,iEAAiE;;IAEjE,kDAAkD;;IAElD;;;OAGG;;IAEH;;;OAGG;;IAEH;;;OAGG;;IAEH,0FAA0F;;IAE1F,kGAAkG;;IAElG;;;OAGG;;IAEH,wEAAwE;;;;;;;;EAE1E,CAAC;AAq9FH;;;GAGG;AACH,eAAO,MAAM,UAAU,EAAE,aAAa,CAAC,eAAe,CAoGpD,CAAC"}
@@ -592,9 +592,10 @@ function checkNumberVerification(value, count, report, line) {
592
592
  const raw = isRecord(value) ? value.longNumber : undefined;
593
593
  const digits = raw instanceof ExactInteger ? raw.digits : String(raw);
594
594
  if (count > 1 || !NUMBER_VERIFICATION_VALUES.has(digits)) {
595
+ const held = raw === undefined ? null : digits;
595
596
  report.warning("validation-error", CX_ISSUE.NUMBER_VERIFICATION, count > 1
596
597
  ? "a second numberVerification element; ignored"
597
- : `numberVerification holds ${shown(raw === undefined ? null : digits)}, not 281474976710655`, { line, element: "numberVerification" });
598
+ : `numberVerification holds ${shown(held)}, not 281474976710655`, { line, element: "numberVerification" });
598
599
  }
599
600
  }
600
601
  /**
@@ -752,7 +753,8 @@ async function readDocument(input, report, options) {
752
753
  break;
753
754
  }
754
755
  countMember(event.block, null);
755
- report.error("parse-error", BAD_ASPECT_BLOCK_CODE, `a member of the document is ${keys.length > 1 ? `an object with ${keys.length} keys (${keys.join(", ")})` : shown(value)}, not a one-key aspect fragment; skipped`, { line: event.line, element: keys[0] ?? null });
756
+ const what = keys.length > 1 ? `an object with ${keys.length} keys (${keys.join(", ")})` : shown(value);
757
+ report.error("parse-error", BAD_ASPECT_BLOCK_CODE, `a member of the document is ${what}, not a one-key aspect fragment; skipped`, { line: event.line, element: keys[0] ?? null });
756
758
  break;
757
759
  }
758
760
  case "block":
@@ -1048,6 +1050,14 @@ function layoutViews(doc) {
1048
1050
  function memberCount(members, total) {
1049
1051
  return members === null ? total : members.size;
1050
1052
  }
1053
+ /**
1054
+ * A visual property value as text: a string as it is, anything else as JSON.
1055
+ * @param raw - the value
1056
+ * @returns its text
1057
+ */
1058
+ function visualText(raw) {
1059
+ return typeof raw === "string" ? raw : JSON.stringify(raw);
1060
+ }
1051
1061
  /** Reads one graph of a collected document into a sink. */
1052
1062
  class CxReader {
1053
1063
  /**
@@ -2215,57 +2225,87 @@ class CxReader {
2215
2225
  * applied.
2216
2226
  */
2217
2227
  readVisualProperties() {
2218
- const entries = aspect(this.doc, "cyVisualProperties");
2219
2228
  // Cytoscape's table-cell styles: a visual property aspect graph-io keeps but does not read
2220
2229
  const tableStyles = TABLE_STYLE_ASPECTS.reduce((n, name) => n + (this.doc.kept.get(name)?.length ?? 0), 0);
2221
2230
  // the graph's own view (its first): the one its positions come from; the others stay in meta.extra.cx
2222
2231
  const views = new Set(this.plan.views.slice(0, 1));
2223
- const columns = { node: new Map(), edge: new Map() };
2224
- const network = new Map();
2225
- let defaults = 0;
2226
- let mappings = 0;
2227
- let dependencies = 0;
2228
- for (const { value } of entries) {
2229
- if (!isRecord(value)) {
2230
- continue;
2231
- }
2232
- const view = value.view === undefined || value.view === null ? null : refId(value.view);
2233
- if (view !== null && views.size > 0 && !views.has(view)) {
2234
- continue;
2232
+ const visual = {
2233
+ columns: { node: new Map(), edge: new Map() },
2234
+ network: new Map(),
2235
+ defaults: 0,
2236
+ mappings: 0,
2237
+ dependencies: 0,
2238
+ };
2239
+ for (const { value } of aspect(this.doc, "cyVisualProperties")) {
2240
+ if (isRecord(value)) {
2241
+ this.collectVisualEntry(value, views, visual);
2235
2242
  }
2236
- const properties = isRecord(value.properties) ? value.properties : {};
2237
- mappings += isRecord(value.mappings) ? Object.keys(value.mappings).length : 0;
2238
- dependencies += isRecord(value.dependencies) ? Object.keys(value.dependencies).length : 0;
2239
- switch (value.properties_of) {
2240
- case "nodes":
2241
- case "edges": {
2242
- const domain = value.properties_of === "nodes" ? "node" : "edge";
2243
- const target = refId(value.applies_to);
2244
- const rows = domain === "node" ? this.nodeRows : this.edgeRows;
2245
- const row = target === null ? undefined : rows.get(target);
2246
- if (row === undefined) {
2247
- if (target === null || !(domain === "node" ? this.rootNodes : this.rootEdges).has(target)) {
2248
- this.dangle(`${domain} visual property entry`);
2249
- }
2250
- continue;
2251
- }
2252
- for (const [property, raw] of Object.entries(properties)) {
2253
- const list = columns[domain].get(property) ?? [];
2254
- list.push([row, typeof raw === "string" ? raw : JSON.stringify(raw)]);
2255
- columns[domain].set(property, list);
2256
- }
2257
- break;
2243
+ }
2244
+ this.writeBypassColumns(visual.columns);
2245
+ this.writeBypassNetwork(visual.network);
2246
+ this.reportStyleRules(visual, tableStyles);
2247
+ }
2248
+ /**
2249
+ * File one cyVisualProperties element of this graph's view into the collection: per-element and
2250
+ * network values by property, defaults, mappings and dependencies counted.
2251
+ * @param value - the element
2252
+ * @param views - the views read (empty: every view)
2253
+ * @param visual - the collection to add to
2254
+ */
2255
+ collectVisualEntry(value, views, visual) {
2256
+ const view = value.view === undefined || value.view === null ? null : refId(value.view);
2257
+ if (view !== null && views.size > 0 && !views.has(view)) {
2258
+ return;
2259
+ }
2260
+ const properties = isRecord(value.properties) ? value.properties : {};
2261
+ visual.mappings += isRecord(value.mappings) ? Object.keys(value.mappings).length : 0;
2262
+ visual.dependencies += isRecord(value.dependencies) ? Object.keys(value.dependencies).length : 0;
2263
+ switch (value.properties_of) {
2264
+ case "nodes":
2265
+ this.collectElementProperties("node", value.applies_to, properties, visual.columns);
2266
+ break;
2267
+ case "edges":
2268
+ this.collectElementProperties("edge", value.applies_to, properties, visual.columns);
2269
+ break;
2270
+ case "network":
2271
+ for (const [property, raw] of Object.entries(properties)) {
2272
+ visual.network.set(property, visualText(raw));
2258
2273
  }
2259
- case "network":
2260
- for (const [property, raw] of Object.entries(properties)) {
2261
- network.set(property, typeof raw === "string" ? raw : JSON.stringify(raw));
2262
- }
2263
- break;
2264
- default:
2265
- defaults += Object.keys(properties).length;
2266
- break;
2274
+ break;
2275
+ default:
2276
+ visual.defaults += Object.keys(properties).length;
2277
+ break;
2278
+ }
2279
+ }
2280
+ /**
2281
+ * File the visual values of one node or edge under its row; an element not in this graph is
2282
+ * skipped, and reported dangling when it is in no graph of the file.
2283
+ * @param domain - node or edge
2284
+ * @param appliesTo - the element's applies_to
2285
+ * @param properties - its visual properties
2286
+ * @param columns - the per-property cells to add to
2287
+ */
2288
+ collectElementProperties(domain, appliesTo, properties, columns) {
2289
+ const target = refId(appliesTo);
2290
+ const rows = domain === "node" ? this.nodeRows : this.edgeRows;
2291
+ const row = target === null ? undefined : rows.get(target);
2292
+ if (row === undefined) {
2293
+ if (target === null || !(domain === "node" ? this.rootNodes : this.rootEdges).has(target)) {
2294
+ this.dangle(`${domain} visual property entry`);
2267
2295
  }
2296
+ return;
2268
2297
  }
2298
+ for (const [property, raw] of Object.entries(properties)) {
2299
+ const list = columns[domain].get(property) ?? [];
2300
+ list.push([row, visualText(raw)]);
2301
+ columns[domain].set(property, list);
2302
+ }
2303
+ }
2304
+ /**
2305
+ * Write the collected per-element visual values as string columns in the cx.bypass namespace.
2306
+ * @param columns - the per-property cells of each domain
2307
+ */
2308
+ writeBypassColumns(columns) {
2269
2309
  for (const domain of ["node", "edge"]) {
2270
2310
  for (const [property, cells] of columns[domain]) {
2271
2311
  const handle = declareFresh(this.sink, domain, {
@@ -2284,6 +2324,12 @@ class CxReader {
2284
2324
  }
2285
2325
  }
2286
2326
  }
2327
+ }
2328
+ /**
2329
+ * Write the network visual values as graph values in the cx.bypass namespace.
2330
+ * @param network - the value of each property
2331
+ */
2332
+ writeBypassNetwork(network) {
2287
2333
  for (const [property, text] of network) {
2288
2334
  try {
2289
2335
  this.sink.setGraphValue(property, text, {
@@ -2295,15 +2341,24 @@ class CxReader {
2295
2341
  this.report.recordError(err, { element: property });
2296
2342
  }
2297
2343
  }
2298
- if (defaults + mappings + dependencies + tableStyles > 0) {
2299
- const parts = [
2300
- `cyVisualProperties: ${defaults} default${plural(defaults)}, ${mappings} mapping${plural(mappings)}, ${dependencies} dependenc(ies)`,
2301
- ];
2302
- if (tableStyles > 0) {
2303
- parts.push(`${tableStyles} table style element${plural(tableStyles)}`);
2304
- }
2305
- this.report.warning("unsupported", STYLES_NOT_IMPORTED_CODE, `the file's style rules are not applied (${parts.join("; ")}); they are kept in meta.extra.cx`, { element: "cyVisualProperties" });
2344
+ }
2345
+ /**
2346
+ * Warn that the style rules (defaults, mappings, dependencies, table styles) are kept, not applied.
2347
+ * @param visual - the counted rules
2348
+ * @param tableStyles - the number of table style elements
2349
+ */
2350
+ reportStyleRules(visual, tableStyles) {
2351
+ const { defaults, mappings, dependencies } = visual;
2352
+ if (defaults + mappings + dependencies + tableStyles === 0) {
2353
+ return;
2354
+ }
2355
+ const parts = [
2356
+ `cyVisualProperties: ${defaults} default${plural(defaults)}, ${mappings} mapping${plural(mappings)}, ${dependencies} dependenc(ies)`,
2357
+ ];
2358
+ if (tableStyles > 0) {
2359
+ parts.push(`${tableStyles} table style element${plural(tableStyles)}`);
2306
2360
  }
2361
+ this.report.warning("unsupported", STYLES_NOT_IMPORTED_CODE, `the file's style rules are not applied (${parts.join("; ")}); they are kept in meta.extra.cx`, { element: "cyVisualProperties" });
2307
2362
  }
2308
2363
  /**
2309
2364
  * Read the provenance aspects: citations and supports as extension tables cx:citations and