@graphty/graph-io 0.2.4 → 0.3.0
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/README.md +29 -7
- package/dist/chunks/{escape-DyI8JofU.js → escape-CKied3Ri.js} +16 -10
- package/dist/chunks/escape-CKied3Ri.js.map +1 -0
- package/dist/chunks/{importer-DbnGYr3_.js → importer-C6QcIRIb.js} +129 -39
- package/dist/chunks/importer-C6QcIRIb.js.map +1 -0
- package/dist/chunks/{importer-CpCpfbxr.js → importer-D5pAsweZ.js} +136 -31
- package/dist/chunks/importer-D5pAsweZ.js.map +1 -0
- package/dist/chunks/{importer-GozH8DkN.js → importer-DbMrAR_w.js} +10 -4
- package/dist/chunks/importer-DbMrAR_w.js.map +1 -0
- package/dist/chunks/{importer-CQnJuWJw.js → importer-DkzjTvHc.js} +82 -40
- package/dist/chunks/importer-DkzjTvHc.js.map +1 -0
- package/dist/chunks/{records-CGpxszm1.js → records-BKSMowhR.js} +3 -3
- package/dist/chunks/{records-CGpxszm1.js.map → records-BKSMowhR.js.map} +1 -1
- package/dist/chunks/{text-CajMdVFy.js → text-Dr0Ifpag.js} +2 -2
- package/dist/chunks/{text-CajMdVFy.js.map → text-Dr0Ifpag.js.map} +1 -1
- package/dist/chunks/{writer-DxSKC7TL.js → writer-BdMak4_J.js} +341 -112
- package/dist/chunks/writer-BdMak4_J.js.map +1 -0
- package/dist/csv.js +24 -6
- package/dist/csv.js.map +1 -1
- package/dist/dot.js +1 -1
- package/dist/gexf.js +42 -10
- package/dist/gexf.js.map +1 -1
- package/dist/gml.js +69 -25
- package/dist/gml.js.map +1 -1
- package/dist/graph-io.js +186 -129
- package/dist/graph-io.js.map +1 -1
- package/dist/graphml.js +1 -1
- package/dist/json.js +1 -1
- package/dist/neo4j.js +10 -4
- package/dist/neo4j.js.map +1 -1
- package/dist/pajek.js +1 -1
- package/dist/src/common/codes.d.ts +6 -0
- package/dist/src/common/codes.d.ts.map +1 -1
- package/dist/src/common/codes.js +6 -0
- package/dist/src/common/codes.js.map +1 -1
- package/dist/src/common/escape.d.ts +5 -4
- package/dist/src/common/escape.d.ts.map +1 -1
- package/dist/src/common/escape.js +6 -5
- package/dist/src/common/escape.js.map +1 -1
- package/dist/src/common/format.d.ts +3 -3
- package/dist/src/common/format.js +5 -5
- package/dist/src/common/format.js.map +1 -1
- package/dist/src/common/input.d.ts +24 -6
- package/dist/src/common/input.d.ts.map +1 -1
- package/dist/src/common/input.js +259 -23
- package/dist/src/common/input.js.map +1 -1
- package/dist/src/common/options.d.ts +2 -0
- package/dist/src/common/options.d.ts.map +1 -1
- package/dist/src/common/options.js +17 -0
- package/dist/src/common/options.js.map +1 -1
- package/dist/src/common/text.js +4 -4
- package/dist/src/common/text.js.map +1 -1
- package/dist/src/common/weights.d.ts.map +1 -1
- package/dist/src/common/weights.js +8 -0
- package/dist/src/common/weights.js.map +1 -1
- package/dist/src/common/xml.d.ts +7 -0
- package/dist/src/common/xml.d.ts.map +1 -1
- package/dist/src/common/xml.js +12 -0
- package/dist/src/common/xml.js.map +1 -1
- package/dist/src/formats/csv/exporter.d.ts +5 -1
- package/dist/src/formats/csv/exporter.d.ts.map +1 -1
- package/dist/src/formats/csv/exporter.js +8 -1
- 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 +1 -0
- package/dist/src/formats/csv/importer.js.map +1 -1
- package/dist/src/formats/csv/index.d.ts +6 -0
- package/dist/src/formats/csv/index.d.ts.map +1 -1
- package/dist/src/formats/csv/index.js +7 -1
- package/dist/src/formats/csv/index.js.map +1 -1
- package/dist/src/formats/csv/records.js +1 -1
- package/dist/src/formats/csv/records.js.map +1 -1
- package/dist/src/formats/dot/exporter.d.ts +1 -1
- package/dist/src/formats/dot/exporter.d.ts.map +1 -1
- package/dist/src/formats/dot/exporter.js +3 -3
- package/dist/src/formats/dot/exporter.js.map +1 -1
- package/dist/src/formats/dot/importer.d.ts +6 -0
- package/dist/src/formats/dot/importer.d.ts.map +1 -1
- package/dist/src/formats/dot/importer.js +151 -24
- package/dist/src/formats/dot/importer.js.map +1 -1
- package/dist/src/formats/gexf/exporter.d.ts.map +1 -1
- package/dist/src/formats/gexf/exporter.js +32 -7
- 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 +2 -2
- package/dist/src/formats/gexf/importer.js.map +1 -1
- package/dist/src/formats/gexf/index.d.ts +6 -0
- package/dist/src/formats/gexf/index.d.ts.map +1 -1
- package/dist/src/formats/gexf/index.js +7 -1
- package/dist/src/formats/gexf/index.js.map +1 -1
- package/dist/src/formats/gml/importer.d.ts +2 -2
- package/dist/src/formats/gml/importer.d.ts.map +1 -1
- package/dist/src/formats/gml/importer.js +66 -25
- package/dist/src/formats/gml/importer.js.map +1 -1
- package/dist/src/formats/gml/index.d.ts +7 -1
- package/dist/src/formats/gml/index.d.ts.map +1 -1
- package/dist/src/formats/gml/index.js +8 -2
- package/dist/src/formats/gml/index.js.map +1 -1
- package/dist/src/formats/graphml/constants.d.ts +6 -0
- package/dist/src/formats/graphml/constants.d.ts.map +1 -1
- package/dist/src/formats/graphml/constants.js +7 -1
- package/dist/src/formats/graphml/constants.js.map +1 -1
- package/dist/src/formats/graphml/importer.d.ts.map +1 -1
- package/dist/src/formats/graphml/importer.js +2 -2
- package/dist/src/formats/graphml/importer.js.map +1 -1
- package/dist/src/formats/json/exporter.d.ts.map +1 -1
- package/dist/src/formats/json/exporter.js +14 -5
- package/dist/src/formats/json/exporter.js.map +1 -1
- package/dist/src/formats/json/importer.d.ts +8 -0
- package/dist/src/formats/json/importer.d.ts.map +1 -1
- package/dist/src/formats/json/importer.js +84 -37
- package/dist/src/formats/json/importer.js.map +1 -1
- package/dist/src/formats/neo4j/importer.js +1 -1
- package/dist/src/formats/neo4j/importer.js.map +1 -1
- package/dist/src/formats/neo4j/index.d.ts +6 -0
- package/dist/src/formats/neo4j/index.d.ts.map +1 -1
- package/dist/src/formats/neo4j/index.js +7 -1
- package/dist/src/formats/neo4j/index.js.map +1 -1
- package/dist/src/formats/pajek/exporter.d.ts +2 -0
- package/dist/src/formats/pajek/exporter.d.ts.map +1 -1
- package/dist/src/formats/pajek/exporter.js +13 -2
- package/dist/src/formats/pajek/exporter.js.map +1 -1
- package/dist/src/formats/pajek/importer.d.ts +8 -2
- package/dist/src/formats/pajek/importer.d.ts.map +1 -1
- package/dist/src/formats/pajek/importer.js +122 -26
- package/dist/src/formats/pajek/importer.js.map +1 -1
- package/dist/src/index.d.ts +1 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +1 -1
- package/dist/src/index.js.map +1 -1
- package/dist/src/registry.d.ts +26 -0
- package/dist/src/registry.d.ts.map +1 -1
- package/dist/src/registry.js +101 -35
- package/dist/src/registry.js.map +1 -1
- package/dist/src/sniff.d.ts +1 -1
- package/dist/src/sniff.d.ts.map +1 -1
- package/dist/src/sniff.js +6 -1
- package/dist/src/sniff.js.map +1 -1
- package/dist/src/types.d.ts +22 -3
- package/dist/src/types.d.ts.map +1 -1
- package/dist/src/types.js.map +1 -1
- package/package.json +4 -3
- package/src/common/codes.ts +9 -0
- package/src/common/escape.ts +6 -5
- package/src/common/format.ts +5 -5
- package/src/common/input.ts +293 -22
- package/src/common/options.ts +24 -0
- package/src/common/text.ts +4 -4
- package/src/common/weights.ts +9 -0
- package/src/common/xml.ts +14 -0
- package/src/formats/csv/exporter.ts +12 -1
- package/src/formats/csv/importer.ts +1 -0
- package/src/formats/csv/index.ts +9 -0
- package/src/formats/csv/records.ts +1 -1
- package/src/formats/dot/exporter.ts +3 -3
- package/src/formats/dot/importer.ts +172 -32
- package/src/formats/gexf/exporter.ts +38 -7
- package/src/formats/gexf/importer.ts +12 -2
- package/src/formats/gexf/index.ts +9 -0
- package/src/formats/gml/importer.ts +75 -22
- package/src/formats/gml/index.ts +10 -1
- package/src/formats/graphml/constants.ts +9 -0
- package/src/formats/graphml/importer.ts +9 -2
- package/src/formats/json/exporter.ts +14 -5
- package/src/formats/json/importer.ts +104 -36
- package/src/formats/neo4j/importer.ts +1 -1
- package/src/formats/neo4j/index.ts +9 -0
- package/src/formats/pajek/exporter.ts +19 -2
- package/src/formats/pajek/importer.ts +145 -28
- package/src/index.ts +1 -0
- package/src/registry.ts +131 -40
- package/src/sniff.ts +6 -1
- package/src/types.ts +26 -3
- package/dist/chunks/escape-DyI8JofU.js.map +0 -1
- package/dist/chunks/importer-CQnJuWJw.js.map +0 -1
- package/dist/chunks/importer-CpCpfbxr.js.map +0 -1
- package/dist/chunks/importer-DbnGYr3_.js.map +0 -1
- package/dist/chunks/importer-GozH8DkN.js.map +0 -1
- package/dist/chunks/writer-DxSKC7TL.js.map +0 -1
- package/dist/tsconfig.build.tsbuildinfo +0 -1
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* (design section 8.2), the names of the reserved columns and the issue and loss-note codes
|
|
4
4
|
* grouped in two tables.
|
|
5
5
|
*/
|
|
6
|
-
import { COLUMN_RENAMED_CODE, INVALID_UTF8_CODE, MUTUAL_EXPANDED_CODE, OPTION_IGNORED_CODE, PRECISION_CODE, ROLE_DROPPED_CODE, SINK_OPTION_CODE, UNKNOWN_ATTR_TYPE_CODE, WEIGHT_KEY_CLASH_CODE, } from "../../common/codes.js";
|
|
6
|
+
import { COLUMN_RENAMED_CODE, ENCODING_FALLBACK_CODE, INVALID_ENCODING_CODE, INVALID_UTF8_CODE, MUTUAL_EXPANDED_CODE, OPTION_IGNORED_CODE, PRECISION_CODE, ROLE_DROPPED_CODE, SINK_OPTION_CODE, UNKNOWN_ATTR_TYPE_CODE, UNKNOWN_ENCODING_CODE, WEIGHT_KEY_CLASH_CODE, } from "../../common/codes.js";
|
|
7
7
|
import { BAD_QUOTE_CODE, UNCLOSED_QUOTE_CODE } from "../csv/records.js";
|
|
8
8
|
import { ARRAY_DELIMITER_LOSS, DECLARED_TYPE_CHANGED_LOSS, ID_COLUMN_TAKEN_LOSS, ID_TEXT_COLLISION_LOSS, ID_TEXT_TYPE_LOSS, MULTIPLE_ID_PROPERTIES_LOSS, UNDIRECTED_LOSS, WEIGHT_COLUMN_TAKEN_LOSS, } from "./exporter.js";
|
|
9
9
|
import { COLUMN_COUNT_CODE, DUPLICATE_NODE_CODE, HEADER_CODE, HEADER_OPTION_CODE, ID_MERGED_CODE, ID_SPACE_COLLISION_CODE, IGNORED_COLUMNS_LOSS, MISSING_ENDPOINT_CODE, MISSING_ID_CODE, ROLE_TAKEN_CODE, } from "./importer.js";
|
|
@@ -17,6 +17,12 @@ export { ID_SPACE_COLUMN, LABELS_COLUMN, neo4jImporter, TYPE_COLUMN } from "./im
|
|
|
17
17
|
export const NEO4J_ISSUE = Object.freeze({
|
|
18
18
|
/** The input holds invalid UTF-8 (fatal). */
|
|
19
19
|
INVALID_UTF8: INVALID_UTF8_CODE,
|
|
20
|
+
/** Invalid bytes in the encoding a BOM, a declaration or the encoding option chose (fatal). */
|
|
21
|
+
INVALID_ENCODING: INVALID_ENCODING_CODE,
|
|
22
|
+
/** Bytes that are not UTF-8 and declare no encoding were read as windows-1252. */
|
|
23
|
+
ENCODING_FALLBACK: ENCODING_FALLBACK_CODE,
|
|
24
|
+
/** A declared encoding the platform cannot decode was ignored. */
|
|
25
|
+
UNKNOWN_ENCODING: UNKNOWN_ENCODING_CODE,
|
|
20
26
|
/** An unterminated quoted field (fatal). */
|
|
21
27
|
CSV_UNCLOSED_QUOTE: UNCLOSED_QUOTE_CODE,
|
|
22
28
|
/** Text after a closing quote (fatal). */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/formats/neo4j/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACH,mBAAmB,EACnB,iBAAiB,EACjB,oBAAoB,EACpB,mBAAmB,EACnB,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,sBAAsB,EACtB,qBAAqB,GACxB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxE,OAAO,EACH,oBAAoB,EACpB,0BAA0B,EAC1B,oBAAoB,EACpB,sBAAsB,EACtB,iBAAiB,EACjB,2BAA2B,EAC3B,eAAe,EACf,wBAAwB,GAC3B,MAAM,eAAe,CAAC;AACvB,OAAO,EACH,iBAAiB,EACjB,mBAAmB,EACnB,WAAW,EACX,kBAAkB,EAClB,cAAc,EACd,uBAAuB,EACvB,oBAAoB,EACpB,qBAAqB,EACrB,eAAe,EACf,eAAe,GAClB,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAA2B,MAAM,eAAe,CAAC;AAC3F,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,aAAa,EAA2B,WAAW,EAAE,MAAM,eAAe,CAAC;AAEpH;;;;GAIG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC;IACrC,6CAA6C;IAC7C,YAAY,EAAE,iBAAiB;IAC/B,4CAA4C;IAC5C,kBAAkB,EAAE,mBAAmB;IACvC,0CAA0C;IAC1C,SAAS,EAAE,cAAc;IACzB,+CAA+C;IAC/C,MAAM,EAAE,WAAW;IACnB,0DAA0D;IAC1D,YAAY,EAAE,iBAAiB;IAC/B,gCAAgC;IAChC,UAAU,EAAE,eAAe;IAC3B,oDAAoD;IACpD,gBAAgB,EAAE,qBAAqB;IACvC,4DAA4D;IAC5D,cAAc,EAAE,mBAAmB;IACnC,2CAA2C;IAC3C,kBAAkB,EAAE,uBAAuB;IAC3C,8DAA8D;IAC9D,SAAS,EAAE,cAAc;IACzB,yDAAyD;IACzD,qBAAqB,EAAE,kBAAkB;IACzC,mEAAmE;IACnE,iBAAiB,EAAE,sBAAsB;IACzC,wCAAwC;IACxC,SAAS,EAAE,cAAc;IACzB,sFAAsF;IACtF,cAAc,EAAE,mBAAmB;IACnC,8CAA8C;IAC9C,UAAU,EAAE,eAAe;IAC3B,sFAAsF;IACtF,cAAc,EAAE,mBAAmB;IACnC,wDAAwD;IACxD,WAAW,EAAE,gBAAgB;CAChC,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC;IACpC,2CAA2C;IAC3C,eAAe,EAAE,oBAAoB;IACrC,oHAAoH;IACpH,sBAAsB,EAAE,eAAe;IACvC,4EAA4E;IAC5E,eAAe,EAAE,oBAAoB;IACrC,oFAAoF;IACpF,YAAY,EAAE,iBAAiB;IAC/B,iGAAiG;IACjG,gBAAgB,EAAE,qBAAqB;IACvC,gFAAgF;IAChF,YAAY,EAAE,iBAAiB;IAC/B,oEAAoE;IACpE,iBAAiB,EAAE,sBAAsB;IACzC,0EAA0E;IAC1E,mBAAmB,EAAE,wBAAwB;IAC7C,qEAAqE;IACrE,eAAe,EAAE,oBAAoB;IACrC,kEAAkE;IAClE,sBAAsB,EAAE,2BAA2B;IACnD,0EAA0E;IAC1E,qBAAqB,EAAE,0BAA0B;IACjD,6EAA6E;IAC7E,eAAe,EAAE,oBAAoB;CACxC,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/formats/neo4j/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACH,mBAAmB,EACnB,sBAAsB,EACtB,qBAAqB,EACrB,iBAAiB,EACjB,oBAAoB,EACpB,mBAAmB,EACnB,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,sBAAsB,EACtB,qBAAqB,EACrB,qBAAqB,GACxB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxE,OAAO,EACH,oBAAoB,EACpB,0BAA0B,EAC1B,oBAAoB,EACpB,sBAAsB,EACtB,iBAAiB,EACjB,2BAA2B,EAC3B,eAAe,EACf,wBAAwB,GAC3B,MAAM,eAAe,CAAC;AACvB,OAAO,EACH,iBAAiB,EACjB,mBAAmB,EACnB,WAAW,EACX,kBAAkB,EAClB,cAAc,EACd,uBAAuB,EACvB,oBAAoB,EACpB,qBAAqB,EACrB,eAAe,EACf,eAAe,GAClB,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAA2B,MAAM,eAAe,CAAC;AAC3F,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,aAAa,EAA2B,WAAW,EAAE,MAAM,eAAe,CAAC;AAEpH;;;;GAIG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC;IACrC,6CAA6C;IAC7C,YAAY,EAAE,iBAAiB;IAC/B,+FAA+F;IAC/F,gBAAgB,EAAE,qBAAqB;IACvC,kFAAkF;IAClF,iBAAiB,EAAE,sBAAsB;IACzC,kEAAkE;IAClE,gBAAgB,EAAE,qBAAqB;IACvC,4CAA4C;IAC5C,kBAAkB,EAAE,mBAAmB;IACvC,0CAA0C;IAC1C,SAAS,EAAE,cAAc;IACzB,+CAA+C;IAC/C,MAAM,EAAE,WAAW;IACnB,0DAA0D;IAC1D,YAAY,EAAE,iBAAiB;IAC/B,gCAAgC;IAChC,UAAU,EAAE,eAAe;IAC3B,oDAAoD;IACpD,gBAAgB,EAAE,qBAAqB;IACvC,4DAA4D;IAC5D,cAAc,EAAE,mBAAmB;IACnC,2CAA2C;IAC3C,kBAAkB,EAAE,uBAAuB;IAC3C,8DAA8D;IAC9D,SAAS,EAAE,cAAc;IACzB,yDAAyD;IACzD,qBAAqB,EAAE,kBAAkB;IACzC,mEAAmE;IACnE,iBAAiB,EAAE,sBAAsB;IACzC,wCAAwC;IACxC,SAAS,EAAE,cAAc;IACzB,sFAAsF;IACtF,cAAc,EAAE,mBAAmB;IACnC,8CAA8C;IAC9C,UAAU,EAAE,eAAe;IAC3B,sFAAsF;IACtF,cAAc,EAAE,mBAAmB;IACnC,wDAAwD;IACxD,WAAW,EAAE,gBAAgB;CAChC,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC;IACpC,2CAA2C;IAC3C,eAAe,EAAE,oBAAoB;IACrC,oHAAoH;IACpH,sBAAsB,EAAE,eAAe;IACvC,4EAA4E;IAC5E,eAAe,EAAE,oBAAoB;IACrC,oFAAoF;IACpF,YAAY,EAAE,iBAAiB;IAC/B,iGAAiG;IACjG,gBAAgB,EAAE,qBAAqB;IACvC,gFAAgF;IAChF,YAAY,EAAE,iBAAiB;IAC/B,oEAAoE;IACpE,iBAAiB,EAAE,sBAAsB;IACzC,0EAA0E;IAC1E,mBAAmB,EAAE,wBAAwB;IAC7C,qEAAqE;IACrE,eAAe,EAAE,oBAAoB;IACrC,kEAAkE;IAClE,sBAAsB,EAAE,2BAA2B;IACnD,0EAA0E;IAC1E,qBAAqB,EAAE,0BAA0B;IACjD,6EAA6E;IAC7E,eAAe,EAAE,oBAAoB;CACxC,CAAC,CAAC"}
|
|
@@ -52,6 +52,8 @@ export declare const PAJEK_LOSS: Readonly<{
|
|
|
52
52
|
ROLE_ASSUMED: "W_ROLE_ASSUMED";
|
|
53
53
|
/** Under sanitizeIds "mangle": an original id whose text reads back as the other type under ids "canonical". */
|
|
54
54
|
ID_TEXT_TYPE: "W_ID_TEXT_TYPE";
|
|
55
|
+
/** Parameter text that looks like a number or a boolean reads back as one (parameters are untyped, design 5.1). */
|
|
56
|
+
TEXT_INFERRED: "W_TEXT_INFERRED";
|
|
55
57
|
}>;
|
|
56
58
|
/** The Pajek NET exporter. */
|
|
57
59
|
export declare const pajekExporter: GraphExporter<PajekExportOptions>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"exporter.d.ts","sourceRoot":"","sources":["../../../../src/formats/pajek/exporter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;
|
|
1
|
+
{"version":3,"file":"exporter.d.ts","sourceRoot":"","sources":["../../../../src/formats/pajek/exporter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAaH,OAAO,EAAqD,KAAK,aAAa,EAAiB,MAAM,gBAAgB,CAAC;AAWtH,yDAAyD;AACzD,MAAM,WAAW,kBAAkB;IAC/B;;;OAGG;IACH,aAAa,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CACvC;AAED;;;;GAIG;AACH,eAAO,MAAM,UAAU;IACnB,qGAAqG;;IAErG,8GAA8G;;IAE9G,oGAAoG;;IAEpG,0FAA0F;;IAE1F,oEAAoE;;IAEpE,oGAAoG;;IAEpG,yDAAyD;;IAEzD,iGAAiG;;IAEjG,sGAAsG;;IAEtG,kHAAkH;;IAElH,6HAA6H;;IAE7H,kHAAkH;;IAElH,gHAAgH;;IAEhH,mHAAmH;;EAErH,CAAC;AA2yBH,8BAA8B;AAC9B,eAAO,MAAM,aAAa,EAAE,aAAa,CAAC,kBAAkB,CA6H1D,CAAC"}
|
|
@@ -18,6 +18,7 @@ import { capabilities, checkCapabilities, LOSS, sanitizeIds } from "../../common
|
|
|
18
18
|
import { formatDecimal, formatF32, formatF64, formatInteger } from "../../common/format.js";
|
|
19
19
|
import { canonicalId } from "../../common/ids.js";
|
|
20
20
|
import { resolveExportOptions } from "../../common/options.js";
|
|
21
|
+
import { inferTextDtype } from "../../common/text.js";
|
|
21
22
|
import { explicitWeights } from "../../common/weights.js";
|
|
22
23
|
import { encodeChunks, joinText } from "../../common/writer.js";
|
|
23
24
|
import { formatIntervals, isParameterKey, LABEL_COLUMN, ORIGINAL_ID_KEY, RELATION_COLUMN, SHAPE_COLUMN, SHAPES, } from "./syntax.js";
|
|
@@ -53,6 +54,8 @@ export const PAJEK_LOSS = Object.freeze({
|
|
|
53
54
|
ROLE_ASSUMED: LOSS.ROLE_ASSUMED,
|
|
54
55
|
/** Under sanitizeIds "mangle": an original id whose text reads back as the other type under ids "canonical". */
|
|
55
56
|
ID_TEXT_TYPE: LOSS.ID_TEXT_TYPE,
|
|
57
|
+
/** Parameter text that looks like a number or a boolean reads back as one (parameters are untyped, design 5.1). */
|
|
58
|
+
TEXT_INFERRED: LOSS.TEXT_INFERRED,
|
|
56
59
|
});
|
|
57
60
|
/** The roles Pajek has a slot for beyond the structural, position and temporal ones. */
|
|
58
61
|
const SLOT_ROLES = new Set(["label"]);
|
|
@@ -300,7 +303,7 @@ function cellText(column, row) {
|
|
|
300
303
|
}
|
|
301
304
|
/**
|
|
302
305
|
* Count the cells of a plan that cannot be written (text with a quote or line break, non-finite
|
|
303
|
-
* f64) and add the notes.
|
|
306
|
+
* f64) or read back typed (parameter text that looks like a number or a boolean) and add the notes.
|
|
304
307
|
* @param planned - the plan
|
|
305
308
|
* @param domain - node or edge
|
|
306
309
|
* @param notes - the note list
|
|
@@ -313,6 +316,7 @@ function checkCells(planned, domain, notes) {
|
|
|
313
316
|
const { name } = column.meta;
|
|
314
317
|
let badText = 0;
|
|
315
318
|
let nonFinite = 0;
|
|
319
|
+
let typed = 0;
|
|
316
320
|
for (let r = 0; r < column.length; r++) {
|
|
317
321
|
if (!column.isSet(r)) {
|
|
318
322
|
continue;
|
|
@@ -329,14 +333,21 @@ function checkCells(planned, domain, notes) {
|
|
|
329
333
|
}
|
|
330
334
|
}
|
|
331
335
|
else if (column.dtype === "string" || column.dtype === "dict") {
|
|
332
|
-
|
|
336
|
+
const text = column.value(r);
|
|
337
|
+
if (!isPajekLabel(text)) {
|
|
333
338
|
badText++;
|
|
334
339
|
}
|
|
340
|
+
else if (slot === "param" && inferTextDtype(text) !== "string") {
|
|
341
|
+
typed++;
|
|
342
|
+
}
|
|
335
343
|
}
|
|
336
344
|
}
|
|
337
345
|
if (badText > 0) {
|
|
338
346
|
notes.push(note(PAJEK_LOSS.TEXT, `${badText} value(s) of ${domain} column "${name}" hold a double quote or a line break; Pajek cannot write them`, name, badText));
|
|
339
347
|
}
|
|
348
|
+
if (typed > 0) {
|
|
349
|
+
notes.push(note(PAJEK_LOSS.TEXT_INFERRED, `${typed} value(s) of ${domain} column "${name}" look like numbers or booleans; Pajek parameters are untyped and they read back as such`, name, typed));
|
|
350
|
+
}
|
|
340
351
|
if (nonFinite > 0) {
|
|
341
352
|
notes.push(note(PAJEK_LOSS.NONFINITE_AS_TEXT, `${nonFinite} non-finite value(s) of ${domain} column "${name}" are written as text`, name, nonFinite));
|
|
342
353
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"exporter.js","sourceRoot":"","sources":["../../../../src/formats/pajek/exporter.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"exporter.js","sourceRoot":"","sources":["../../../../src/formats/pajek/exporter.ts"],"names":[],"mappings":"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"}
|
|
@@ -26,12 +26,18 @@ export interface PajekImportOptions {
|
|
|
26
26
|
export declare const PAJEK_ISSUE: Readonly<{
|
|
27
27
|
/** The input holds invalid UTF-8 (fatal). */
|
|
28
28
|
INVALID_UTF8: "E_INVALID_UTF8";
|
|
29
|
+
/** Invalid bytes in the encoding a BOM, a declaration or the encoding option chose (fatal). */
|
|
30
|
+
INVALID_ENCODING: "E_INVALID_ENCODING";
|
|
31
|
+
/** Bytes that are not UTF-8 and declare no encoding were read as windows-1252. */
|
|
32
|
+
ENCODING_FALLBACK: "W_ENCODING_FALLBACK";
|
|
33
|
+
/** A declared encoding the platform cannot decode was ignored. */
|
|
34
|
+
UNKNOWN_ENCODING: "W_UNKNOWN_ENCODING";
|
|
29
35
|
/** Fatal: no `*Vertices` section (an empty file, or not a Pajek network). */
|
|
30
36
|
NO_VERTICES: "E_PAJEK_NO_VERTICES";
|
|
31
37
|
/** Fatal: `*Vertices` without a vertex count, or one the sink cannot hold. */
|
|
32
38
|
VERTICES_COUNT: "E_PAJEK_VERTICES_COUNT";
|
|
33
|
-
/**
|
|
34
|
-
|
|
39
|
+
/** A project file holds several networks; import() reads the first, importAll() reads every one. */
|
|
40
|
+
MULTIPLE_GRAPHS: "W_MULTIPLE_GRAPHS";
|
|
35
41
|
/** A data line before the first section header. */
|
|
36
42
|
OUTSIDE_SECTION: "E_PAJEK_OUTSIDE_SECTION";
|
|
37
43
|
/** A section header the importer cannot parse. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"importer.d.ts","sourceRoot":"","sources":["../../../../src/formats/pajek/importer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;
|
|
1
|
+
{"version":3,"file":"importer.d.ts","sourceRoot":"","sources":["../../../../src/formats/pajek/importer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAsCH,OAAO,EAA4B,KAAK,aAAa,EAAuC,MAAM,gBAAgB,CAAC;AAqBnH,yDAAyD;AACzD,MAAM,WAAW,kBAAkB;IAC/B;;;OAGG;IACH,WAAW,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,MAAM,GAAG,SAAS,CAAC;CAC5C;AAED,yCAAyC;AACzC,eAAO,MAAM,WAAW;IACpB,6CAA6C;;IAE7C,+FAA+F;;IAE/F,kFAAkF;;IAElF,kEAAkE;;IAElE,6EAA6E;;IAE7E,8EAA8E;;IAE9E,oGAAoG;;IAEpG,mDAAmD;;IAEnD,kDAAkD;;IAElD,4DAA4D;;IAE5D,iDAAiD;;IAEjD,kDAAkD;;IAElD,4FAA4F;;IAE5F,qEAAqE;;IAErE,0EAA0E;;IAE1E,sFAAsF;;IAEtF,uCAAuC;;IAEvC,yDAAyD;;IAEzD,wFAAwF;;IAExF,sEAAsE;;IAEtE,sDAAsD;;IAEtD,kDAAkD;;IAElD,kDAAkD;;IAElD,+EAA+E;;IAE/E,yEAAyE;;IAEzE,uGAAuG;;IAEvG,4IAA4I;;IAE5I,uFAAuF;;IAEvF,oGAAoG;;IAEpG,6GAA6G;;IAE7G,gJAAgJ;;IAEhJ,gHAAgH;;EAElH,CAAC;AAmmCH,8BAA8B;AAC9B,eAAO,MAAM,aAAa,EAAE,aAAa,CAAC,kBAAkB,CA+G1D,CAAC"}
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
*/
|
|
16
16
|
import { GraphFormatError, INVALID_INDEX, } from "@graphty/graph-format";
|
|
17
17
|
import { declareResolved, RENAMED_CODE, ROLE_TAKEN_CODE } from "../../common/attributes.js";
|
|
18
|
-
import { DUPLICATE_NODE_CODE, INVALID_UTF8_CODE, OPTION_IGNORED_CODE, SYNTAX_CODE } from "../../common/codes.js";
|
|
18
|
+
import { DUPLICATE_NODE_CODE, ENCODING_FALLBACK_CODE, INVALID_ENCODING_CODE, INVALID_UTF8_CODE, MULTIPLE_GRAPHS_CODE, OPTION_IGNORED_CODE, SYNTAX_CODE, UNKNOWN_ENCODING_CODE, } from "../../common/codes.js";
|
|
19
19
|
import { DirectionResolver } from "../../common/direction.js";
|
|
20
20
|
import { coerceIdText, ID_MERGED_CODE, IdCoercer } from "../../common/ids.js";
|
|
21
21
|
import { LineReader, throwIfAborted } from "../../common/input.js";
|
|
@@ -28,12 +28,18 @@ import { isCommentOrBlank, isIntervalToken, isSectionLine, isVertexNumber, LABEL
|
|
|
28
28
|
export const PAJEK_ISSUE = Object.freeze({
|
|
29
29
|
/** The input holds invalid UTF-8 (fatal). */
|
|
30
30
|
INVALID_UTF8: INVALID_UTF8_CODE,
|
|
31
|
+
/** Invalid bytes in the encoding a BOM, a declaration or the encoding option chose (fatal). */
|
|
32
|
+
INVALID_ENCODING: INVALID_ENCODING_CODE,
|
|
33
|
+
/** Bytes that are not UTF-8 and declare no encoding were read as windows-1252. */
|
|
34
|
+
ENCODING_FALLBACK: ENCODING_FALLBACK_CODE,
|
|
35
|
+
/** A declared encoding the platform cannot decode was ignored. */
|
|
36
|
+
UNKNOWN_ENCODING: UNKNOWN_ENCODING_CODE,
|
|
31
37
|
/** Fatal: no `*Vertices` section (an empty file, or not a Pajek network). */
|
|
32
38
|
NO_VERTICES: "E_PAJEK_NO_VERTICES",
|
|
33
39
|
/** Fatal: `*Vertices` without a vertex count, or one the sink cannot hold. */
|
|
34
40
|
VERTICES_COUNT: "E_PAJEK_VERTICES_COUNT",
|
|
35
|
-
/**
|
|
36
|
-
|
|
41
|
+
/** A project file holds several networks; import() reads the first, importAll() reads every one. */
|
|
42
|
+
MULTIPLE_GRAPHS: MULTIPLE_GRAPHS_CODE,
|
|
37
43
|
/** A data line before the first section header. */
|
|
38
44
|
OUTSIDE_SECTION: "E_PAJEK_OUTSIDE_SECTION",
|
|
39
45
|
/** A section header the importer cannot parse. */
|
|
@@ -225,6 +231,8 @@ class PajekParser {
|
|
|
225
231
|
this.relationHandle = INVALID_INDEX;
|
|
226
232
|
this.edgeSpellsHandle = INVALID_INDEX;
|
|
227
233
|
this.nodeParams = new Map();
|
|
234
|
+
/** Set when a header line starts the next network of a project file (that line is not consumed). */
|
|
235
|
+
this.ended = false;
|
|
228
236
|
this.edgeParams = new Map();
|
|
229
237
|
this.sink = sink;
|
|
230
238
|
this.report = report;
|
|
@@ -237,33 +245,34 @@ class PajekParser {
|
|
|
237
245
|
* Handle one line; every problem of the line is recorded as an issue and the line skipped.
|
|
238
246
|
* @param text - the line without its terminator
|
|
239
247
|
* @param line - the 1-based line number
|
|
248
|
+
* @returns true when the line is the header of the next network (not consumed: this network is complete)
|
|
240
249
|
*/
|
|
241
250
|
line(text, line) {
|
|
242
251
|
if (isCommentOrBlank(text)) {
|
|
243
|
-
return;
|
|
252
|
+
return false;
|
|
244
253
|
}
|
|
245
254
|
try {
|
|
246
255
|
if (isSectionLine(text)) {
|
|
247
256
|
this.header(text, line);
|
|
248
|
-
return;
|
|
257
|
+
return this.ended;
|
|
249
258
|
}
|
|
250
259
|
switch (this.section) {
|
|
251
260
|
case "none":
|
|
252
261
|
throw new LineError("parse-error", PAJEK_ISSUE.OUTSIDE_SECTION, "data before the first section header; a Pajek network starts with *Vertices");
|
|
253
262
|
case "vertices":
|
|
254
263
|
this.vertexLine(text, line);
|
|
255
|
-
return;
|
|
264
|
+
return false;
|
|
256
265
|
case "lines":
|
|
257
266
|
this.edgeLine(text, line);
|
|
258
|
-
return;
|
|
267
|
+
return false;
|
|
259
268
|
case "list":
|
|
260
269
|
this.listLine(text, line);
|
|
261
|
-
return;
|
|
270
|
+
return false;
|
|
262
271
|
case "matrix":
|
|
263
272
|
this.matrixLine(text, line);
|
|
264
|
-
return;
|
|
273
|
+
return false;
|
|
265
274
|
case "skip":
|
|
266
|
-
return;
|
|
275
|
+
return false;
|
|
267
276
|
default: {
|
|
268
277
|
const name = this.section;
|
|
269
278
|
throw new Error(`unknown section state ${name}`);
|
|
@@ -273,9 +282,10 @@ class PajekParser {
|
|
|
273
282
|
catch (err) {
|
|
274
283
|
if (err instanceof LineError) {
|
|
275
284
|
this.report.error(err.category, err.code, err.message, { line });
|
|
276
|
-
return;
|
|
285
|
+
return false;
|
|
277
286
|
}
|
|
278
287
|
this.report.recordError(err, { line });
|
|
288
|
+
return false;
|
|
279
289
|
}
|
|
280
290
|
}
|
|
281
291
|
/**
|
|
@@ -322,7 +332,8 @@ class PajekParser {
|
|
|
322
332
|
switch (h.kind) {
|
|
323
333
|
case "network":
|
|
324
334
|
if (this.networkName !== null || this.vertexCount >= 0) {
|
|
325
|
-
this.
|
|
335
|
+
this.ended = true;
|
|
336
|
+
return;
|
|
326
337
|
}
|
|
327
338
|
this.networkName = h.name ?? "";
|
|
328
339
|
this.section = "none";
|
|
@@ -333,6 +344,11 @@ class PajekParser {
|
|
|
333
344
|
this.section = "skip";
|
|
334
345
|
return;
|
|
335
346
|
}
|
|
347
|
+
if (this.vertexCount >= 0) {
|
|
348
|
+
// a second `*Vertices` without a `*Network` header starts the next network
|
|
349
|
+
this.ended = true;
|
|
350
|
+
return;
|
|
351
|
+
}
|
|
336
352
|
this.verticesHeader(h, line);
|
|
337
353
|
return;
|
|
338
354
|
case "arcs":
|
|
@@ -363,9 +379,6 @@ class PajekParser {
|
|
|
363
379
|
* @param line - the line number
|
|
364
380
|
*/
|
|
365
381
|
verticesHeader(h, line) {
|
|
366
|
-
if (this.vertexCount >= 0) {
|
|
367
|
-
this.refuseSecondNetwork(h.keyword, line);
|
|
368
|
-
}
|
|
369
382
|
if (h.count === null) {
|
|
370
383
|
this.report.fail(PAJEK_ISSUE.VERTICES_COUNT, "*Vertices needs a vertex count", { line });
|
|
371
384
|
}
|
|
@@ -419,16 +432,6 @@ class PajekParser {
|
|
|
419
432
|
this.kind = kind;
|
|
420
433
|
this.relation = h.relation === null ? null : (h.name ?? String(h.relation));
|
|
421
434
|
}
|
|
422
|
-
/**
|
|
423
|
-
* Refuse a second network: an issue, then ImportError with the report so far.
|
|
424
|
-
* @param keyword - the header keyword
|
|
425
|
-
* @param line - the line number
|
|
426
|
-
*/
|
|
427
|
-
refuseSecondNetwork(keyword, line) {
|
|
428
|
-
const message = `*${keyword} starts a second network; the importer reads one network per file`;
|
|
429
|
-
this.report.error("unsupported", PAJEK_ISSUE.MULTIPLE_NETWORKS, message, { line });
|
|
430
|
-
throw this.report.abort(message, { code: PAJEK_ISSUE.MULTIPLE_NETWORKS, line });
|
|
431
|
-
}
|
|
432
435
|
/**
|
|
433
436
|
* Checks that run when a section ends.
|
|
434
437
|
*/
|
|
@@ -1031,17 +1034,110 @@ export const pajekImporter = Object.freeze({
|
|
|
1031
1034
|
reportUnusedOptions(options, report, USED_OPTIONS);
|
|
1032
1035
|
const parser = new PajekParser(sink, report, resolved, firstVertex);
|
|
1033
1036
|
const reader = new LineReader(input, report, resolved);
|
|
1037
|
+
// after the first network: only its successors' headers are counted
|
|
1038
|
+
let rest = null;
|
|
1039
|
+
let restLine = 0;
|
|
1034
1040
|
let sinceCheck = 0;
|
|
1035
1041
|
for await (const text of reader) {
|
|
1036
|
-
|
|
1042
|
+
if (rest !== null) {
|
|
1043
|
+
rest.line(text);
|
|
1044
|
+
}
|
|
1045
|
+
else if (parser.line(text, reader.line)) {
|
|
1046
|
+
rest = new NetworkCounter();
|
|
1047
|
+
rest.line(text);
|
|
1048
|
+
restLine = reader.line;
|
|
1049
|
+
}
|
|
1037
1050
|
if (++sinceCheck >= ABORT_CHECK_INTERVAL) {
|
|
1038
1051
|
sinceCheck = 0;
|
|
1039
1052
|
throwIfAborted(resolved.signal);
|
|
1040
1053
|
}
|
|
1041
1054
|
}
|
|
1042
1055
|
parser.finish();
|
|
1056
|
+
if (rest !== null) {
|
|
1057
|
+
report.warning("unsupported", PAJEK_ISSUE.MULTIPLE_GRAPHS, `the project file holds ${rest.count} more network(s) after the first; import() reads the first, importAll() reads every one`, { line: restLine });
|
|
1058
|
+
}
|
|
1043
1059
|
throwIfAborted(resolved.signal);
|
|
1044
1060
|
return report.finish();
|
|
1045
1061
|
},
|
|
1062
|
+
/**
|
|
1063
|
+
* Read every network of a Pajek project file (`.paj`), each into its own sink. A network starts
|
|
1064
|
+
* at `*Network` or at a `*Vertices` that does not belong to a `*Partition` / `*Vector` section.
|
|
1065
|
+
* @param input - the text, bytes or stream
|
|
1066
|
+
* @param sinkFor - the sink of the network with this index, called before its first push
|
|
1067
|
+
* @param options - common and Pajek options
|
|
1068
|
+
* @returns one report per network
|
|
1069
|
+
*/
|
|
1070
|
+
async importAll(input, sinkFor, options) {
|
|
1071
|
+
const resolved = resolveImportOptions(options, DEFAULTS);
|
|
1072
|
+
const firstVertex = firstVertexOption(options?.firstVertex);
|
|
1073
|
+
const reports = [new ImportReportBuilder("pajek", resolved.errorLimit)];
|
|
1074
|
+
reportUnusedOptions(options, reports[0], USED_OPTIONS);
|
|
1075
|
+
const open = () => {
|
|
1076
|
+
const report = reports[reports.length - 1];
|
|
1077
|
+
const sink = sinkFor(reports.length - 1);
|
|
1078
|
+
reportSinkOptions(sink, options, report);
|
|
1079
|
+
return new PajekParser(sink, report, resolved, firstVertex);
|
|
1080
|
+
};
|
|
1081
|
+
let parser = open();
|
|
1082
|
+
// decoding issues belong to the file, so they go to the first network's report
|
|
1083
|
+
const reader = new LineReader(input, reports[0], resolved);
|
|
1084
|
+
let sinceCheck = 0;
|
|
1085
|
+
for await (const text of reader) {
|
|
1086
|
+
if (parser.line(text, reader.line)) {
|
|
1087
|
+
parser.finish();
|
|
1088
|
+
reports.push(new ImportReportBuilder("pajek", resolved.errorLimit));
|
|
1089
|
+
parser = open();
|
|
1090
|
+
parser.line(text, reader.line);
|
|
1091
|
+
}
|
|
1092
|
+
if (++sinceCheck >= ABORT_CHECK_INTERVAL) {
|
|
1093
|
+
sinceCheck = 0;
|
|
1094
|
+
throwIfAborted(resolved.signal);
|
|
1095
|
+
}
|
|
1096
|
+
}
|
|
1097
|
+
parser.finish();
|
|
1098
|
+
throwIfAborted(resolved.signal);
|
|
1099
|
+
return reports.map((r) => r.finish());
|
|
1100
|
+
},
|
|
1046
1101
|
});
|
|
1102
|
+
/**
|
|
1103
|
+
* Counts the networks of the rest of a project file by their headers alone, with the parser's
|
|
1104
|
+
* rule: a network starts at `*Network` after a named or populated one, or at a `*Vertices` after a
|
|
1105
|
+
* populated one unless it belongs to a skipped section (`*Partition`, `*Vector`, ...).
|
|
1106
|
+
*/
|
|
1107
|
+
class NetworkCounter {
|
|
1108
|
+
constructor() {
|
|
1109
|
+
/** Networks started so far (the first header fed opens the first). */
|
|
1110
|
+
this.count = 0;
|
|
1111
|
+
this.named = false;
|
|
1112
|
+
this.populated = false;
|
|
1113
|
+
this.skipping = false;
|
|
1114
|
+
}
|
|
1115
|
+
/**
|
|
1116
|
+
* Feed one line.
|
|
1117
|
+
* @param text - the line
|
|
1118
|
+
*/
|
|
1119
|
+
line(text) {
|
|
1120
|
+
if (!isSectionLine(text)) {
|
|
1121
|
+
return;
|
|
1122
|
+
}
|
|
1123
|
+
const h = parseSectionHeader(text);
|
|
1124
|
+
const kind = h === null ? "unsupported" : h.kind;
|
|
1125
|
+
const { skipping } = this;
|
|
1126
|
+
this.skipping = kind === "unsupported" || (kind === "vertices" && skipping && this.populated);
|
|
1127
|
+
if (kind === "network") {
|
|
1128
|
+
if (this.count === 0 || this.named || this.populated) {
|
|
1129
|
+
this.count++;
|
|
1130
|
+
this.populated = false;
|
|
1131
|
+
}
|
|
1132
|
+
this.named = true;
|
|
1133
|
+
}
|
|
1134
|
+
else if (kind === "vertices" && !this.skipping) {
|
|
1135
|
+
if (this.count === 0 || this.populated) {
|
|
1136
|
+
this.count++;
|
|
1137
|
+
this.named = false;
|
|
1138
|
+
}
|
|
1139
|
+
this.populated = true;
|
|
1140
|
+
}
|
|
1141
|
+
}
|
|
1142
|
+
}
|
|
1047
1143
|
//# sourceMappingURL=importer.js.map
|