@loaders.gl/xml 3.3.0-alpha.12 → 3.3.0-alpha.14
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/bundle.d.ts +2 -0
- package/dist/bundle.d.ts.map +1 -0
- package/dist/bundle.js +5 -0
- package/dist/es5/xml-loader.js +1 -1
- package/dist/esm/xml-loader.js +1 -1
- package/dist/index.d.ts +5 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +8 -0
- package/dist/lib/parse-xml.d.ts +9 -0
- package/dist/lib/parse-xml.d.ts.map +1 -0
- package/dist/lib/parse-xml.js +33 -0
- package/dist/lib/parser/xml-parser.d.ts +20 -0
- package/dist/lib/parser/xml-parser.d.ts.map +1 -0
- package/dist/lib/parser/xml-parser.js +98 -0
- package/dist/sax-ts/sax.d.ts +134 -0
- package/dist/sax-ts/sax.d.ts.map +1 -0
- package/dist/sax-ts/sax.js +1440 -0
- package/dist/xml-loader.d.ts +27 -0
- package/dist/xml-loader.d.ts.map +1 -0
- package/dist/xml-loader.js +30 -0
- package/package.json +4 -4
package/dist/bundle.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bundle.d.ts","sourceRoot":"","sources":["../src/bundle.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,aAAa,KAAqB,CAAC"}
|
package/dist/bundle.js
ADDED
package/dist/es5/xml-loader.js
CHANGED
|
@@ -8,7 +8,7 @@ exports._typecheckXMLLoader = exports.XMLLoader = void 0;
|
|
|
8
8
|
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
9
9
|
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
10
10
|
var _parseXml = require("./lib/parse-xml");
|
|
11
|
-
var VERSION = typeof "3.3.0-alpha.
|
|
11
|
+
var VERSION = typeof "3.3.0-alpha.14" !== 'undefined' ? "3.3.0-alpha.14" : 'latest';
|
|
12
12
|
var XMLLoader = {
|
|
13
13
|
name: 'XML',
|
|
14
14
|
id: 'xml',
|
package/dist/esm/xml-loader.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { parseXML } from './lib/parse-xml';
|
|
2
2
|
|
|
3
|
-
const VERSION = typeof "3.3.0-alpha.
|
|
3
|
+
const VERSION = typeof "3.3.0-alpha.14" !== 'undefined' ? "3.3.0-alpha.14" : 'latest';
|
|
4
4
|
export const XMLLoader = {
|
|
5
5
|
name: 'XML',
|
|
6
6
|
id: 'xml',
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA,YAAY,EAAC,gBAAgB,EAAC,MAAM,cAAc,CAAC;AACnD,OAAO,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAIvC,YAAY,EAAC,gBAAgB,IAAI,gBAAgB,EAAC,MAAM,cAAc,CAAC;AACvE,OAAO,EAAC,SAAS,IAAI,SAAS,EAAC,MAAM,cAAc,CAAC"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// loaders.gl, MIT license
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.SAXParser = exports.XMLLoader = void 0;
|
|
5
|
+
var xml_loader_1 = require("./xml-loader");
|
|
6
|
+
Object.defineProperty(exports, "XMLLoader", { enumerable: true, get: function () { return xml_loader_1.XMLLoader; } });
|
|
7
|
+
var sax_1 = require("./sax-ts/sax");
|
|
8
|
+
Object.defineProperty(exports, "SAXParser", { enumerable: true, get: function () { return sax_1.SAXParser; } });
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export declare function parseXML(text: string, options: any): any;
|
|
2
|
+
/**
|
|
3
|
+
* @todo Build a streaming XML parser based on sax-js
|
|
4
|
+
* @param text
|
|
5
|
+
* @param options
|
|
6
|
+
* @returns
|
|
7
|
+
*/
|
|
8
|
+
export declare function parseXMLInBatches(text: string, options: any): any;
|
|
9
|
+
//# sourceMappingURL=parse-xml.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parse-xml.d.ts","sourceRoot":"","sources":["../../src/lib/parse-xml.ts"],"names":[],"mappings":"AAKA,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,KAAA,GAAG,GAAG,CAWnD;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,KAAA,GAAG,GAAG,CAU5D"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// loaders.gl, MIT license
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.parseXMLInBatches = exports.parseXML = void 0;
|
|
5
|
+
const xml_parser_1 = require("../lib/parser/xml-parser");
|
|
6
|
+
const fast_xml_parser_1 = require("fast-xml-parser");
|
|
7
|
+
function parseXML(text, options) {
|
|
8
|
+
const parser = new fast_xml_parser_1.XMLParser({
|
|
9
|
+
ignoreAttributes: false,
|
|
10
|
+
attributeNamePrefix: '',
|
|
11
|
+
// parseAttributeValue: true,
|
|
12
|
+
...options?.xml
|
|
13
|
+
});
|
|
14
|
+
const parsedXML = parser.parse(text);
|
|
15
|
+
return parsedXML;
|
|
16
|
+
}
|
|
17
|
+
exports.parseXML = parseXML;
|
|
18
|
+
/**
|
|
19
|
+
* @todo Build a streaming XML parser based on sax-js
|
|
20
|
+
* @param text
|
|
21
|
+
* @param options
|
|
22
|
+
* @returns
|
|
23
|
+
*/
|
|
24
|
+
function parseXMLInBatches(text, options) {
|
|
25
|
+
const parser = new xml_parser_1.XMLParser({
|
|
26
|
+
...options,
|
|
27
|
+
strict: true
|
|
28
|
+
});
|
|
29
|
+
parser.write(text);
|
|
30
|
+
parser.close();
|
|
31
|
+
return parser.result;
|
|
32
|
+
}
|
|
33
|
+
exports.parseXMLInBatches = parseXMLInBatches;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { SAXParser, SAXParserOptions } from '../../sax-ts/sax';
|
|
2
|
+
export declare class XMLParser {
|
|
3
|
+
readonly parser: SAXParser;
|
|
4
|
+
result: undefined;
|
|
5
|
+
previousStates: never[];
|
|
6
|
+
currentState: Readonly<{
|
|
7
|
+
container: never[];
|
|
8
|
+
key: null;
|
|
9
|
+
}>;
|
|
10
|
+
constructor(options: SAXParserOptions);
|
|
11
|
+
reset(): void;
|
|
12
|
+
write(chunk: any): void;
|
|
13
|
+
close(): void;
|
|
14
|
+
_pushOrSet(value: any): void;
|
|
15
|
+
_openArray(newContainer?: never[]): void;
|
|
16
|
+
_closeArray(): void;
|
|
17
|
+
_openObject(newContainer?: {}): void;
|
|
18
|
+
_closeObject(): void;
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=xml-parser.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"xml-parser.d.ts","sourceRoot":"","sources":["../../../src/lib/parser/xml-parser.ts"],"names":[],"mappings":"AAIA,OAAO,EAAC,SAAS,EAAE,gBAAgB,EAAC,MAAM,kBAAkB,CAAC;AAK7D,qBAAa,SAAS;IACpB,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;IAC3B,MAAM,YAAa;IACnB,cAAc,UAAM;IACpB,YAAY;;;OAA6C;gBAG7C,OAAO,EAAE,gBAAgB;IA+CrC,KAAK,IAAI,IAAI;IAMb,KAAK,CAAC,KAAK,KAAA,GAAG,IAAI;IAIlB,KAAK,IAAI,IAAI;IAMb,UAAU,CAAC,KAAK,KAAA,GAAG,IAAI;IAYvB,UAAU,CAAC,YAAY,UAAK,GAAG,IAAI;IAOnC,WAAW,IAAI,IAAI;IAKnB,WAAW,CAAC,YAAY,KAAK,GAAG,IAAI;IAOpC,YAAY,IAAI,IAAI;CAIrB"}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// @ts-nocheck
|
|
3
|
+
/* eslint-disable */
|
|
4
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
+
exports.XMLParser = void 0;
|
|
6
|
+
// import ClarinetParser, {ClarinetParserOptions} from '../clarinet/clarinet.js';
|
|
7
|
+
const sax_1 = require("../../sax-ts/sax");
|
|
8
|
+
// import JSONPath from '../jsonpath/jsonpath.js';
|
|
9
|
+
// XMLParser builds a JSON object using the events emitted by the Clarinet parser
|
|
10
|
+
class XMLParser {
|
|
11
|
+
// jsonpath: JSONPath = new JSONPath();
|
|
12
|
+
constructor(options) {
|
|
13
|
+
this.result = undefined;
|
|
14
|
+
this.previousStates = [];
|
|
15
|
+
this.currentState = Object.freeze({ container: [], key: null });
|
|
16
|
+
this.reset();
|
|
17
|
+
this.parser = new sax_1.SAXParser({
|
|
18
|
+
onready: () => {
|
|
19
|
+
this.previousStates.length = 0;
|
|
20
|
+
this.currentState.container.length = 0;
|
|
21
|
+
},
|
|
22
|
+
onopentag: ({ name, attributes, isSelfClosing }) => {
|
|
23
|
+
this._openObject({});
|
|
24
|
+
if (typeof name !== 'undefined') {
|
|
25
|
+
this.parser.emit('onkey', name);
|
|
26
|
+
}
|
|
27
|
+
},
|
|
28
|
+
onkey: (name) => {
|
|
29
|
+
this.currentState.key = name;
|
|
30
|
+
},
|
|
31
|
+
onclosetag: () => {
|
|
32
|
+
this._closeObject();
|
|
33
|
+
},
|
|
34
|
+
onopenarray: () => {
|
|
35
|
+
this._openArray();
|
|
36
|
+
},
|
|
37
|
+
onclosearray: () => {
|
|
38
|
+
this._closeArray();
|
|
39
|
+
},
|
|
40
|
+
ontext: (value) => {
|
|
41
|
+
this._pushOrSet(value);
|
|
42
|
+
},
|
|
43
|
+
onerror: (error) => {
|
|
44
|
+
throw error;
|
|
45
|
+
},
|
|
46
|
+
onend: () => {
|
|
47
|
+
this.result = this.currentState.container.pop();
|
|
48
|
+
},
|
|
49
|
+
...options
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
reset() {
|
|
53
|
+
this.result = undefined;
|
|
54
|
+
this.previousStates = [];
|
|
55
|
+
this.currentState = Object.freeze({ container: [], key: null });
|
|
56
|
+
}
|
|
57
|
+
write(chunk) {
|
|
58
|
+
this.parser.write(chunk);
|
|
59
|
+
}
|
|
60
|
+
close() {
|
|
61
|
+
this.parser.close();
|
|
62
|
+
}
|
|
63
|
+
// PRIVATE METHODS
|
|
64
|
+
_pushOrSet(value) {
|
|
65
|
+
const { container, key } = this.currentState;
|
|
66
|
+
if (key !== null) {
|
|
67
|
+
container[key] = value;
|
|
68
|
+
this.currentState.key = null;
|
|
69
|
+
}
|
|
70
|
+
else if (Array.isArray(container)) {
|
|
71
|
+
container.push(value);
|
|
72
|
+
}
|
|
73
|
+
else if (container) {
|
|
74
|
+
// debugger
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
_openArray(newContainer = []) {
|
|
78
|
+
// this.jsonpath.push(null);
|
|
79
|
+
this._pushOrSet(newContainer);
|
|
80
|
+
this.previousStates.push(this.currentState);
|
|
81
|
+
this.currentState = { container: newContainer, isArray: true, key: null };
|
|
82
|
+
}
|
|
83
|
+
_closeArray() {
|
|
84
|
+
// this.jsonpath.pop();
|
|
85
|
+
this.currentState = this.previousStates.pop();
|
|
86
|
+
}
|
|
87
|
+
_openObject(newContainer = {}) {
|
|
88
|
+
// this.jsonpath.push(null);
|
|
89
|
+
this._pushOrSet(newContainer);
|
|
90
|
+
this.previousStates.push(this.currentState);
|
|
91
|
+
this.currentState = { container: newContainer, isArray: false, key: null };
|
|
92
|
+
}
|
|
93
|
+
_closeObject() {
|
|
94
|
+
// this.jsonpath.pop();
|
|
95
|
+
this.currentState = this.previousStates.pop();
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
exports.XMLParser = XMLParser;
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
export type SAXEventName = 'text' | 'processinginstruction' | 'sgmldeclaration' | 'doctype' | 'comment' | 'opentagstart' | 'attribute' | 'opentag' | 'closetag' | 'opencdata' | 'cdata' | 'closecdata' | 'error' | 'end' | 'ready' | 'script' | 'opennamespace' | 'closenamespace';
|
|
2
|
+
export type SAXEventCallback = (data: any, eventName: SAXEventName, SAXParser: any) => void;
|
|
3
|
+
export type SAXEvents = {
|
|
4
|
+
ontext?: SAXEventCallback;
|
|
5
|
+
onprocessinginstruction?: SAXEventCallback;
|
|
6
|
+
onsgmldeclaration?: SAXEventCallback;
|
|
7
|
+
ondoctype?: SAXEventCallback;
|
|
8
|
+
oncomment?: SAXEventCallback;
|
|
9
|
+
onopentagstart?: SAXEventCallback;
|
|
10
|
+
onattribute?: SAXEventCallback;
|
|
11
|
+
onopentag?: SAXEventCallback;
|
|
12
|
+
onclosetag?: SAXEventCallback;
|
|
13
|
+
onopencdata?: SAXEventCallback;
|
|
14
|
+
oncdata?: SAXEventCallback;
|
|
15
|
+
onclosecdata?: SAXEventCallback;
|
|
16
|
+
onerror?: SAXEventCallback;
|
|
17
|
+
onend?: SAXEventCallback;
|
|
18
|
+
onready?: SAXEventCallback;
|
|
19
|
+
onscript?: SAXEventCallback;
|
|
20
|
+
onopennamespace?: SAXEventCallback;
|
|
21
|
+
onclosenamespace?: SAXEventCallback;
|
|
22
|
+
};
|
|
23
|
+
export type SAXParserOptions = SAXEvents & {
|
|
24
|
+
strict?: boolean;
|
|
25
|
+
MAX_BUFFER_LENGTH?: number;
|
|
26
|
+
lowercase?: boolean;
|
|
27
|
+
lowercasetags?: boolean;
|
|
28
|
+
noscript?: boolean;
|
|
29
|
+
strictEntities?: boolean;
|
|
30
|
+
xmlns?: any;
|
|
31
|
+
position?: any;
|
|
32
|
+
trim?: any;
|
|
33
|
+
normalize?: any;
|
|
34
|
+
};
|
|
35
|
+
export declare const ENTITIES: {
|
|
36
|
+
[key: string]: number | string;
|
|
37
|
+
};
|
|
38
|
+
/**
|
|
39
|
+
* Internal helper class
|
|
40
|
+
*/
|
|
41
|
+
declare abstract class SAX {
|
|
42
|
+
EVENTS: string[];
|
|
43
|
+
ENTITIES: {
|
|
44
|
+
[key: string]: number | string;
|
|
45
|
+
};
|
|
46
|
+
protected abstract events: SAXEvents;
|
|
47
|
+
protected XML_ENTITIES: {
|
|
48
|
+
[key: string]: string;
|
|
49
|
+
};
|
|
50
|
+
protected S: any;
|
|
51
|
+
protected opt: any;
|
|
52
|
+
protected trackPosition: boolean;
|
|
53
|
+
protected column: number;
|
|
54
|
+
protected line: number;
|
|
55
|
+
protected c: string;
|
|
56
|
+
protected error: any;
|
|
57
|
+
protected q: string;
|
|
58
|
+
protected bufferCheckPosition: any;
|
|
59
|
+
protected closed: boolean;
|
|
60
|
+
protected tags: any[];
|
|
61
|
+
protected looseCase: string;
|
|
62
|
+
protected closedRoot: boolean;
|
|
63
|
+
protected sawRoot: boolean;
|
|
64
|
+
protected strict: boolean;
|
|
65
|
+
protected tag: any;
|
|
66
|
+
protected strictEntities: any;
|
|
67
|
+
protected state: any;
|
|
68
|
+
protected noscript: boolean;
|
|
69
|
+
protected attribList: any[];
|
|
70
|
+
protected ns: any;
|
|
71
|
+
protected position: number;
|
|
72
|
+
private STATE;
|
|
73
|
+
private readonly BUFFERS;
|
|
74
|
+
private CDATA;
|
|
75
|
+
private DOCTYPE;
|
|
76
|
+
private XML_NAMESPACE;
|
|
77
|
+
private XMLNS_NAMESPACE;
|
|
78
|
+
protected rootNS: {};
|
|
79
|
+
private comment;
|
|
80
|
+
private sgmlDecl;
|
|
81
|
+
private textNode;
|
|
82
|
+
private tagName;
|
|
83
|
+
private doctype;
|
|
84
|
+
private procInstName;
|
|
85
|
+
private procInstBody;
|
|
86
|
+
private entity;
|
|
87
|
+
private attribName;
|
|
88
|
+
private attribValue;
|
|
89
|
+
private cdata;
|
|
90
|
+
private script;
|
|
91
|
+
private startTagPosition;
|
|
92
|
+
constructor();
|
|
93
|
+
private static charAt;
|
|
94
|
+
private static isWhitespace;
|
|
95
|
+
private static isQuote;
|
|
96
|
+
private static isAttribEnd;
|
|
97
|
+
private static isMatch;
|
|
98
|
+
private static notMatch;
|
|
99
|
+
private static qname;
|
|
100
|
+
write(chunk: null | object | string): this | SAXParser;
|
|
101
|
+
protected emit(event: string, data?: Error | {}): void;
|
|
102
|
+
protected clearBuffers(): void;
|
|
103
|
+
protected flushBuffers(): void;
|
|
104
|
+
protected end(): SAXParser;
|
|
105
|
+
protected errorFunction(er: string): this;
|
|
106
|
+
private attrib;
|
|
107
|
+
private newTag;
|
|
108
|
+
private parseEntity;
|
|
109
|
+
private beginWhiteSpace;
|
|
110
|
+
private strictFail;
|
|
111
|
+
private textApplyOptions;
|
|
112
|
+
private emitNode;
|
|
113
|
+
private closeText;
|
|
114
|
+
private checkBufferLength;
|
|
115
|
+
private openTag;
|
|
116
|
+
private closeTag;
|
|
117
|
+
}
|
|
118
|
+
/**
|
|
119
|
+
*
|
|
120
|
+
* @todo Weird inheritance, with some variables initialized in subclass
|
|
121
|
+
*/
|
|
122
|
+
export declare class SAXParser extends SAX {
|
|
123
|
+
static ENTITIES: {
|
|
124
|
+
[key: string]: string | number;
|
|
125
|
+
};
|
|
126
|
+
opt: Required<SAXParserOptions>;
|
|
127
|
+
events: Required<SAXEvents>;
|
|
128
|
+
constructor(opt?: SAXParserOptions);
|
|
129
|
+
resume(): this;
|
|
130
|
+
close(): this | SAXParser;
|
|
131
|
+
flush(): void;
|
|
132
|
+
}
|
|
133
|
+
export {};
|
|
134
|
+
//# sourceMappingURL=sax.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sax.d.ts","sourceRoot":"","sources":["../../src/sax-ts/sax.ts"],"names":[],"mappings":"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"}
|