@loaders.gl/xml 3.4.0-alpha.5 → 3.4.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.
@@ -12,7 +12,7 @@ var _parseXml = require("./lib/parsers/parse-xml");
12
12
  var _uncapitalize = require("./lib/xml-utils/uncapitalize");
13
13
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
14
14
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
15
- var VERSION = typeof "3.4.0-alpha.5" !== 'undefined' ? "3.4.0-alpha.5" : 'latest';
15
+ var VERSION = typeof "3.4.0" !== 'undefined' ? "3.4.0" : 'latest';
16
16
  var XMLLoader = {
17
17
  name: 'XML',
18
18
  id: 'xml',
@@ -1 +1 @@
1
- {"version":3,"file":"xml-loader.js","names":["_parseXml","require","_uncapitalize","ownKeys","object","enumerableOnly","keys","Object","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","key","_defineProperty2","default","getOwnPropertyDescriptors","defineProperties","defineProperty","VERSION","XMLLoader","name","id","module","version","worker","extensions","mimeTypes","testText","testXMLFile","options","xml","parser","uncapitalizeKeys","removeNSPrefix","textNodeName","arrayPaths","parse","_parse","_asyncToGenerator2","_regenerator","mark","_callee","arrayBuffer","wrap","_callee$","_context","prev","next","abrupt","parseTextSync","TextDecoder","decode","stop","_x","_x2","text","exports","startsWith","_options$xml","xmlOptions","fastXMLOptions","allowBooleanAttributes","ignoreDeclaration","isArray","jpath","isLeafNode","isAttribute","_xmlOptions$arrayPath","array","Boolean","some","path","_fastXML","fastParseXML","Error","_typecheckXMLLoader"],"sources":["../../src/xml-loader.ts"],"sourcesContent":["import type {LoaderWithParser, LoaderOptions} from '@loaders.gl/loader-utils';\nimport type {SAXParserOptions} from './sax-ts/sax';\nimport {fastParseXML, FastXMLParserOptions} from './lib/parsers/parse-xml';\nimport {uncapitalizeKeys} from './lib/xml-utils/uncapitalize';\n\n// __VERSION__ is injected by babel-plugin-version-inline\n// @ts-ignore TS2304: Cannot find name '__VERSION__'.\nconst VERSION = typeof __VERSION__ !== 'undefined' ? __VERSION__ : 'latest';\n\nexport type XMLLoaderOptions = LoaderOptions & {\n xml?: {\n // TODO - type this harder\n parser?: 'fast-xml-parser' | string;\n /** XML is typically PascalCase, JavaScript prefects camelCase */\n uncapitalizeKeys?: boolean;\n removeNSPrefix?: boolean;\n textNodeName?: string;\n arrayPaths?: string[];\n };\n /** @deprecated Experimental, passes options to fast-xml-parser, IF it is being used */\n _fastXML?: FastXMLParserOptions;\n /** @deprecated Experimental, passes options to the SAX XML parser, IF it is being used. */\n _sax?: SAXParserOptions;\n};\n\n/**\n * Loader for XML files\n */\nexport const XMLLoader = {\n name: 'XML',\n id: 'xml',\n module: 'xml',\n version: VERSION,\n worker: false,\n extensions: ['xml'],\n mimeTypes: ['application/xml', 'text/xml'],\n testText: testXMLFile,\n options: {\n xml: {\n parser: 'fast-xml-parser',\n uncapitalizeKeys: false,\n removeNSPrefix: false,\n textNodeName: 'value',\n arrayPaths: []\n }\n },\n parse: async (arrayBuffer: ArrayBuffer, options?: XMLLoaderOptions) =>\n parseTextSync(new TextDecoder().decode(arrayBuffer), options),\n parseTextSync: (text: string, options?: XMLLoaderOptions) => parseTextSync(text, options)\n};\n\nfunction testXMLFile(text: string): boolean {\n // TODO - There could be space first.\n return text.startsWith('<?xml');\n}\n\nfunction parseTextSync(text: string, options?: XMLLoaderOptions): any {\n const xmlOptions: Required<XMLLoaderOptions['xml']> = {...XMLLoader.options.xml, ...options?.xml};\n switch (xmlOptions.parser) {\n case 'fast-xml-parser':\n const fastXMLOptions: FastXMLParserOptions = {\n // Default FastXML options\n // https://github.com/NaturalIntelligence/fast-xml-parser/blob/master/docs/v4/2.XMLparseOptions.md#allowbooleanattributes\n allowBooleanAttributes: true,\n // https://github.com/NaturalIntelligence/fast-xml-parser/blob/master/docs/v4/2.XMLparseOptions.md#ignoredeclaration\n ignoreDeclaration: true,\n\n // XMLLoader Options: Map to FastXMLOptions\n\n // https://github.com/NaturalIntelligence/fast-xml-parser/blob/master/docs/v4/2.XMLparseOptions.md#removensprefix\n removeNSPrefix: xmlOptions.removeNSPrefix,\n\n // https://github.com/NaturalIntelligence/fast-xml-parser/blob/master/docs/v4/2.XMLparseOptions.md#textnodename\n textNodeName: xmlOptions.textNodeName,\n\n isArray: (name: string, jpath: string, isLeafNode: boolean, isAttribute: boolean) => {\n const array = Boolean(xmlOptions?.arrayPaths?.some((path) => jpath === path));\n return array;\n },\n\n // Application overrides\n ...options?._fastXML\n };\n\n const xml = fastParseXML(text, fastXMLOptions);\n\n // Note - could be done with FastXML tag processing\n return xmlOptions.uncapitalizeKeys ? uncapitalizeKeys(xml) : xml;\n\n default:\n throw new Error(options?.xml?.parser);\n }\n}\n\nexport const _typecheckXMLLoader: LoaderWithParser = XMLLoader;\n"],"mappings":"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"}
1
+ {"version":3,"file":"xml-loader.js","names":["_parseXml","require","_uncapitalize","ownKeys","object","enumerableOnly","keys","Object","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","key","_defineProperty2","default","getOwnPropertyDescriptors","defineProperties","defineProperty","VERSION","XMLLoader","name","id","module","version","worker","extensions","mimeTypes","testText","testXMLFile","options","xml","parser","uncapitalizeKeys","removeNSPrefix","textNodeName","arrayPaths","parse","_parse","_asyncToGenerator2","_regenerator","mark","_callee","arrayBuffer","wrap","_callee$","_context","prev","next","abrupt","parseTextSync","TextDecoder","decode","stop","_x","_x2","text","exports","startsWith","_options$xml","xmlOptions","fastXMLOptions","allowBooleanAttributes","ignoreDeclaration","isArray","jpath","isLeafNode","isAttribute","_xmlOptions$arrayPath","array","Boolean","some","path","_fastXML","fastParseXML","Error","_typecheckXMLLoader"],"sources":["../../src/xml-loader.ts"],"sourcesContent":["import type {LoaderWithParser, LoaderOptions} from '@loaders.gl/loader-utils';\nimport type {SAXParserOptions} from './sax-ts/sax';\nimport {fastParseXML, FastXMLParserOptions} from './lib/parsers/parse-xml';\nimport {uncapitalizeKeys} from './lib/xml-utils/uncapitalize';\n\n// __VERSION__ is injected by babel-plugin-version-inline\n// @ts-ignore TS2304: Cannot find name '__VERSION__'.\nconst VERSION = typeof __VERSION__ !== 'undefined' ? __VERSION__ : 'latest';\n\nexport type XMLLoaderOptions = LoaderOptions & {\n xml?: {\n // TODO - type this harder\n parser?: 'fast-xml-parser' | string;\n /** XML is typically PascalCase, JavaScript prefects camelCase */\n uncapitalizeKeys?: boolean;\n removeNSPrefix?: boolean;\n textNodeName?: string;\n arrayPaths?: string[];\n };\n /** @deprecated Experimental, passes options to fast-xml-parser, IF it is being used */\n _fastXML?: FastXMLParserOptions;\n /** @deprecated Experimental, passes options to the SAX XML parser, IF it is being used. */\n _sax?: SAXParserOptions;\n};\n\n/**\n * Loader for XML files\n */\nexport const XMLLoader = {\n name: 'XML',\n id: 'xml',\n module: 'xml',\n version: VERSION,\n worker: false,\n extensions: ['xml'],\n mimeTypes: ['application/xml', 'text/xml'],\n testText: testXMLFile,\n options: {\n xml: {\n parser: 'fast-xml-parser',\n uncapitalizeKeys: false,\n removeNSPrefix: false,\n textNodeName: 'value',\n arrayPaths: []\n }\n },\n parse: async (arrayBuffer: ArrayBuffer, options?: XMLLoaderOptions) =>\n parseTextSync(new TextDecoder().decode(arrayBuffer), options),\n parseTextSync: (text: string, options?: XMLLoaderOptions) => parseTextSync(text, options)\n};\n\nfunction testXMLFile(text: string): boolean {\n // TODO - There could be space first.\n return text.startsWith('<?xml');\n}\n\nfunction parseTextSync(text: string, options?: XMLLoaderOptions): any {\n const xmlOptions: Required<XMLLoaderOptions['xml']> = {...XMLLoader.options.xml, ...options?.xml};\n switch (xmlOptions.parser) {\n case 'fast-xml-parser':\n const fastXMLOptions: FastXMLParserOptions = {\n // Default FastXML options\n // https://github.com/NaturalIntelligence/fast-xml-parser/blob/master/docs/v4/2.XMLparseOptions.md#allowbooleanattributes\n allowBooleanAttributes: true,\n // https://github.com/NaturalIntelligence/fast-xml-parser/blob/master/docs/v4/2.XMLparseOptions.md#ignoredeclaration\n ignoreDeclaration: true,\n\n // XMLLoader Options: Map to FastXMLOptions\n\n // https://github.com/NaturalIntelligence/fast-xml-parser/blob/master/docs/v4/2.XMLparseOptions.md#removensprefix\n removeNSPrefix: xmlOptions.removeNSPrefix,\n\n // https://github.com/NaturalIntelligence/fast-xml-parser/blob/master/docs/v4/2.XMLparseOptions.md#textnodename\n textNodeName: xmlOptions.textNodeName,\n\n isArray: (name: string, jpath: string, isLeafNode: boolean, isAttribute: boolean) => {\n const array = Boolean(xmlOptions?.arrayPaths?.some((path) => jpath === path));\n return array;\n },\n\n // Application overrides\n ...options?._fastXML\n };\n\n const xml = fastParseXML(text, fastXMLOptions);\n\n // Note - could be done with FastXML tag processing\n return xmlOptions.uncapitalizeKeys ? uncapitalizeKeys(xml) : xml;\n\n default:\n throw new Error(options?.xml?.parser);\n }\n}\n\nexport const _typecheckXMLLoader: LoaderWithParser = XMLLoader;\n"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { fastParseXML } from './lib/parsers/parse-xml';
2
2
  import { uncapitalizeKeys } from './lib/xml-utils/uncapitalize';
3
- const VERSION = typeof "3.4.0-alpha.5" !== 'undefined' ? "3.4.0-alpha.5" : 'latest';
3
+ const VERSION = typeof "3.4.0" !== 'undefined' ? "3.4.0" : 'latest';
4
4
  export const XMLLoader = {
5
5
  name: 'XML',
6
6
  id: 'xml',
@@ -1 +1 @@
1
- {"version":3,"file":"xml-loader.js","names":["fastParseXML","uncapitalizeKeys","VERSION","XMLLoader","name","id","module","version","worker","extensions","mimeTypes","testText","testXMLFile","options","xml","parser","removeNSPrefix","textNodeName","arrayPaths","parse","arrayBuffer","parseTextSync","TextDecoder","decode","text","startsWith","_options$xml","xmlOptions","fastXMLOptions","allowBooleanAttributes","ignoreDeclaration","isArray","jpath","isLeafNode","isAttribute","_xmlOptions$arrayPath","array","Boolean","some","path","_fastXML","Error","_typecheckXMLLoader"],"sources":["../../src/xml-loader.ts"],"sourcesContent":["import type {LoaderWithParser, LoaderOptions} from '@loaders.gl/loader-utils';\nimport type {SAXParserOptions} from './sax-ts/sax';\nimport {fastParseXML, FastXMLParserOptions} from './lib/parsers/parse-xml';\nimport {uncapitalizeKeys} from './lib/xml-utils/uncapitalize';\n\n// __VERSION__ is injected by babel-plugin-version-inline\n// @ts-ignore TS2304: Cannot find name '__VERSION__'.\nconst VERSION = typeof __VERSION__ !== 'undefined' ? __VERSION__ : 'latest';\n\nexport type XMLLoaderOptions = LoaderOptions & {\n xml?: {\n // TODO - type this harder\n parser?: 'fast-xml-parser' | string;\n /** XML is typically PascalCase, JavaScript prefects camelCase */\n uncapitalizeKeys?: boolean;\n removeNSPrefix?: boolean;\n textNodeName?: string;\n arrayPaths?: string[];\n };\n /** @deprecated Experimental, passes options to fast-xml-parser, IF it is being used */\n _fastXML?: FastXMLParserOptions;\n /** @deprecated Experimental, passes options to the SAX XML parser, IF it is being used. */\n _sax?: SAXParserOptions;\n};\n\n/**\n * Loader for XML files\n */\nexport const XMLLoader = {\n name: 'XML',\n id: 'xml',\n module: 'xml',\n version: VERSION,\n worker: false,\n extensions: ['xml'],\n mimeTypes: ['application/xml', 'text/xml'],\n testText: testXMLFile,\n options: {\n xml: {\n parser: 'fast-xml-parser',\n uncapitalizeKeys: false,\n removeNSPrefix: false,\n textNodeName: 'value',\n arrayPaths: []\n }\n },\n parse: async (arrayBuffer: ArrayBuffer, options?: XMLLoaderOptions) =>\n parseTextSync(new TextDecoder().decode(arrayBuffer), options),\n parseTextSync: (text: string, options?: XMLLoaderOptions) => parseTextSync(text, options)\n};\n\nfunction testXMLFile(text: string): boolean {\n // TODO - There could be space first.\n return text.startsWith('<?xml');\n}\n\nfunction parseTextSync(text: string, options?: XMLLoaderOptions): any {\n const xmlOptions: Required<XMLLoaderOptions['xml']> = {...XMLLoader.options.xml, ...options?.xml};\n switch (xmlOptions.parser) {\n case 'fast-xml-parser':\n const fastXMLOptions: FastXMLParserOptions = {\n // Default FastXML options\n // https://github.com/NaturalIntelligence/fast-xml-parser/blob/master/docs/v4/2.XMLparseOptions.md#allowbooleanattributes\n allowBooleanAttributes: true,\n // https://github.com/NaturalIntelligence/fast-xml-parser/blob/master/docs/v4/2.XMLparseOptions.md#ignoredeclaration\n ignoreDeclaration: true,\n\n // XMLLoader Options: Map to FastXMLOptions\n\n // https://github.com/NaturalIntelligence/fast-xml-parser/blob/master/docs/v4/2.XMLparseOptions.md#removensprefix\n removeNSPrefix: xmlOptions.removeNSPrefix,\n\n // https://github.com/NaturalIntelligence/fast-xml-parser/blob/master/docs/v4/2.XMLparseOptions.md#textnodename\n textNodeName: xmlOptions.textNodeName,\n\n isArray: (name: string, jpath: string, isLeafNode: boolean, isAttribute: boolean) => {\n const array = Boolean(xmlOptions?.arrayPaths?.some((path) => jpath === path));\n return array;\n },\n\n // Application overrides\n ...options?._fastXML\n };\n\n const xml = fastParseXML(text, fastXMLOptions);\n\n // Note - could be done with FastXML tag processing\n return xmlOptions.uncapitalizeKeys ? uncapitalizeKeys(xml) : xml;\n\n default:\n throw new Error(options?.xml?.parser);\n }\n}\n\nexport const _typecheckXMLLoader: LoaderWithParser = XMLLoader;\n"],"mappings":"AAEA,SAAQA,YAAY,QAA6B,yBAAyB;AAC1E,SAAQC,gBAAgB,QAAO,8BAA8B;AAI7D,MAAMC,OAAO,GAAG,sBAAkB,KAAK,WAAW,qBAAiB,QAAQ;AAqB3E,OAAO,MAAMC,SAAS,GAAG;EACvBC,IAAI,EAAE,KAAK;EACXC,EAAE,EAAE,KAAK;EACTC,MAAM,EAAE,KAAK;EACbC,OAAO,EAAEL,OAAO;EAChBM,MAAM,EAAE,KAAK;EACbC,UAAU,EAAE,CAAC,KAAK,CAAC;EACnBC,SAAS,EAAE,CAAC,iBAAiB,EAAE,UAAU,CAAC;EAC1CC,QAAQ,EAAEC,WAAW;EACrBC,OAAO,EAAE;IACPC,GAAG,EAAE;MACHC,MAAM,EAAE,iBAAiB;MACzBd,gBAAgB,EAAE,KAAK;MACvBe,cAAc,EAAE,KAAK;MACrBC,YAAY,EAAE,OAAO;MACrBC,UAAU,EAAE;IACd;EACF,CAAC;EACDC,KAAK,EAAE,MAAAA,CAAOC,WAAwB,EAAEP,OAA0B,KAChEQ,aAAa,CAAC,IAAIC,WAAW,CAAC,CAAC,CAACC,MAAM,CAACH,WAAW,CAAC,EAAEP,OAAO,CAAC;EAC/DQ,aAAa,EAAEA,CAACG,IAAY,EAAEX,OAA0B,KAAKQ,aAAa,CAACG,IAAI,EAAEX,OAAO;AAC1F,CAAC;AAED,SAASD,WAAWA,CAACY,IAAY,EAAW;EAE1C,OAAOA,IAAI,CAACC,UAAU,CAAC,OAAO,CAAC;AACjC;AAEA,SAASJ,aAAaA,CAACG,IAAY,EAAEX,OAA0B,EAAO;EAAA,IAAAa,YAAA;EACpE,MAAMC,UAA6C,GAAG;IAAC,GAAGxB,SAAS,CAACU,OAAO,CAACC,GAAG;IAAE,IAAGD,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEC,GAAG;EAAA,CAAC;EACjG,QAAQa,UAAU,CAACZ,MAAM;IACvB,KAAK,iBAAiB;MACpB,MAAMa,cAAoC,GAAG;QAG3CC,sBAAsB,EAAE,IAAI;QAE5BC,iBAAiB,EAAE,IAAI;QAKvBd,cAAc,EAAEW,UAAU,CAACX,cAAc;QAGzCC,YAAY,EAAEU,UAAU,CAACV,YAAY;QAErCc,OAAO,EAAEA,CAAC3B,IAAY,EAAE4B,KAAa,EAAEC,UAAmB,EAAEC,WAAoB,KAAK;UAAA,IAAAC,qBAAA;UACnF,MAAMC,KAAK,GAAGC,OAAO,CAACV,UAAU,aAAVA,UAAU,wBAAAQ,qBAAA,GAAVR,UAAU,CAAET,UAAU,cAAAiB,qBAAA,uBAAtBA,qBAAA,CAAwBG,IAAI,CAAEC,IAAI,IAAKP,KAAK,KAAKO,IAAI,CAAC,CAAC;UAC7E,OAAOH,KAAK;QACd,CAAC;QAGD,IAAGvB,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAE2B,QAAQ;MACtB,CAAC;MAED,MAAM1B,GAAG,GAAGd,YAAY,CAACwB,IAAI,EAAEI,cAAc,CAAC;MAG9C,OAAOD,UAAU,CAAC1B,gBAAgB,GAAGA,gBAAgB,CAACa,GAAG,CAAC,GAAGA,GAAG;IAElE;MACE,MAAM,IAAI2B,KAAK,CAAC5B,OAAO,aAAPA,OAAO,wBAAAa,YAAA,GAAPb,OAAO,CAAEC,GAAG,cAAAY,YAAA,uBAAZA,YAAA,CAAcX,MAAM,CAAC;EACzC;AACF;AAEA,OAAO,MAAM2B,mBAAqC,GAAGvC,SAAS"}
1
+ {"version":3,"file":"xml-loader.js","names":["fastParseXML","uncapitalizeKeys","VERSION","XMLLoader","name","id","module","version","worker","extensions","mimeTypes","testText","testXMLFile","options","xml","parser","removeNSPrefix","textNodeName","arrayPaths","parse","arrayBuffer","parseTextSync","TextDecoder","decode","text","startsWith","_options$xml","xmlOptions","fastXMLOptions","allowBooleanAttributes","ignoreDeclaration","isArray","jpath","isLeafNode","isAttribute","_xmlOptions$arrayPath","array","Boolean","some","path","_fastXML","Error","_typecheckXMLLoader"],"sources":["../../src/xml-loader.ts"],"sourcesContent":["import type {LoaderWithParser, LoaderOptions} from '@loaders.gl/loader-utils';\nimport type {SAXParserOptions} from './sax-ts/sax';\nimport {fastParseXML, FastXMLParserOptions} from './lib/parsers/parse-xml';\nimport {uncapitalizeKeys} from './lib/xml-utils/uncapitalize';\n\n// __VERSION__ is injected by babel-plugin-version-inline\n// @ts-ignore TS2304: Cannot find name '__VERSION__'.\nconst VERSION = typeof __VERSION__ !== 'undefined' ? __VERSION__ : 'latest';\n\nexport type XMLLoaderOptions = LoaderOptions & {\n xml?: {\n // TODO - type this harder\n parser?: 'fast-xml-parser' | string;\n /** XML is typically PascalCase, JavaScript prefects camelCase */\n uncapitalizeKeys?: boolean;\n removeNSPrefix?: boolean;\n textNodeName?: string;\n arrayPaths?: string[];\n };\n /** @deprecated Experimental, passes options to fast-xml-parser, IF it is being used */\n _fastXML?: FastXMLParserOptions;\n /** @deprecated Experimental, passes options to the SAX XML parser, IF it is being used. */\n _sax?: SAXParserOptions;\n};\n\n/**\n * Loader for XML files\n */\nexport const XMLLoader = {\n name: 'XML',\n id: 'xml',\n module: 'xml',\n version: VERSION,\n worker: false,\n extensions: ['xml'],\n mimeTypes: ['application/xml', 'text/xml'],\n testText: testXMLFile,\n options: {\n xml: {\n parser: 'fast-xml-parser',\n uncapitalizeKeys: false,\n removeNSPrefix: false,\n textNodeName: 'value',\n arrayPaths: []\n }\n },\n parse: async (arrayBuffer: ArrayBuffer, options?: XMLLoaderOptions) =>\n parseTextSync(new TextDecoder().decode(arrayBuffer), options),\n parseTextSync: (text: string, options?: XMLLoaderOptions) => parseTextSync(text, options)\n};\n\nfunction testXMLFile(text: string): boolean {\n // TODO - There could be space first.\n return text.startsWith('<?xml');\n}\n\nfunction parseTextSync(text: string, options?: XMLLoaderOptions): any {\n const xmlOptions: Required<XMLLoaderOptions['xml']> = {...XMLLoader.options.xml, ...options?.xml};\n switch (xmlOptions.parser) {\n case 'fast-xml-parser':\n const fastXMLOptions: FastXMLParserOptions = {\n // Default FastXML options\n // https://github.com/NaturalIntelligence/fast-xml-parser/blob/master/docs/v4/2.XMLparseOptions.md#allowbooleanattributes\n allowBooleanAttributes: true,\n // https://github.com/NaturalIntelligence/fast-xml-parser/blob/master/docs/v4/2.XMLparseOptions.md#ignoredeclaration\n ignoreDeclaration: true,\n\n // XMLLoader Options: Map to FastXMLOptions\n\n // https://github.com/NaturalIntelligence/fast-xml-parser/blob/master/docs/v4/2.XMLparseOptions.md#removensprefix\n removeNSPrefix: xmlOptions.removeNSPrefix,\n\n // https://github.com/NaturalIntelligence/fast-xml-parser/blob/master/docs/v4/2.XMLparseOptions.md#textnodename\n textNodeName: xmlOptions.textNodeName,\n\n isArray: (name: string, jpath: string, isLeafNode: boolean, isAttribute: boolean) => {\n const array = Boolean(xmlOptions?.arrayPaths?.some((path) => jpath === path));\n return array;\n },\n\n // Application overrides\n ...options?._fastXML\n };\n\n const xml = fastParseXML(text, fastXMLOptions);\n\n // Note - could be done with FastXML tag processing\n return xmlOptions.uncapitalizeKeys ? uncapitalizeKeys(xml) : xml;\n\n default:\n throw new Error(options?.xml?.parser);\n }\n}\n\nexport const _typecheckXMLLoader: LoaderWithParser = XMLLoader;\n"],"mappings":"AAEA,SAAQA,YAAY,QAA6B,yBAAyB;AAC1E,SAAQC,gBAAgB,QAAO,8BAA8B;AAI7D,MAAMC,OAAO,GAAG,cAAkB,KAAK,WAAW,aAAiB,QAAQ;AAqB3E,OAAO,MAAMC,SAAS,GAAG;EACvBC,IAAI,EAAE,KAAK;EACXC,EAAE,EAAE,KAAK;EACTC,MAAM,EAAE,KAAK;EACbC,OAAO,EAAEL,OAAO;EAChBM,MAAM,EAAE,KAAK;EACbC,UAAU,EAAE,CAAC,KAAK,CAAC;EACnBC,SAAS,EAAE,CAAC,iBAAiB,EAAE,UAAU,CAAC;EAC1CC,QAAQ,EAAEC,WAAW;EACrBC,OAAO,EAAE;IACPC,GAAG,EAAE;MACHC,MAAM,EAAE,iBAAiB;MACzBd,gBAAgB,EAAE,KAAK;MACvBe,cAAc,EAAE,KAAK;MACrBC,YAAY,EAAE,OAAO;MACrBC,UAAU,EAAE;IACd;EACF,CAAC;EACDC,KAAK,EAAE,MAAAA,CAAOC,WAAwB,EAAEP,OAA0B,KAChEQ,aAAa,CAAC,IAAIC,WAAW,CAAC,CAAC,CAACC,MAAM,CAACH,WAAW,CAAC,EAAEP,OAAO,CAAC;EAC/DQ,aAAa,EAAEA,CAACG,IAAY,EAAEX,OAA0B,KAAKQ,aAAa,CAACG,IAAI,EAAEX,OAAO;AAC1F,CAAC;AAED,SAASD,WAAWA,CAACY,IAAY,EAAW;EAE1C,OAAOA,IAAI,CAACC,UAAU,CAAC,OAAO,CAAC;AACjC;AAEA,SAASJ,aAAaA,CAACG,IAAY,EAAEX,OAA0B,EAAO;EAAA,IAAAa,YAAA;EACpE,MAAMC,UAA6C,GAAG;IAAC,GAAGxB,SAAS,CAACU,OAAO,CAACC,GAAG;IAAE,IAAGD,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEC,GAAG;EAAA,CAAC;EACjG,QAAQa,UAAU,CAACZ,MAAM;IACvB,KAAK,iBAAiB;MACpB,MAAMa,cAAoC,GAAG;QAG3CC,sBAAsB,EAAE,IAAI;QAE5BC,iBAAiB,EAAE,IAAI;QAKvBd,cAAc,EAAEW,UAAU,CAACX,cAAc;QAGzCC,YAAY,EAAEU,UAAU,CAACV,YAAY;QAErCc,OAAO,EAAEA,CAAC3B,IAAY,EAAE4B,KAAa,EAAEC,UAAmB,EAAEC,WAAoB,KAAK;UAAA,IAAAC,qBAAA;UACnF,MAAMC,KAAK,GAAGC,OAAO,CAACV,UAAU,aAAVA,UAAU,wBAAAQ,qBAAA,GAAVR,UAAU,CAAET,UAAU,cAAAiB,qBAAA,uBAAtBA,qBAAA,CAAwBG,IAAI,CAAEC,IAAI,IAAKP,KAAK,KAAKO,IAAI,CAAC,CAAC;UAC7E,OAAOH,KAAK;QACd,CAAC;QAGD,IAAGvB,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAE2B,QAAQ;MACtB,CAAC;MAED,MAAM1B,GAAG,GAAGd,YAAY,CAACwB,IAAI,EAAEI,cAAc,CAAC;MAG9C,OAAOD,UAAU,CAAC1B,gBAAgB,GAAGA,gBAAgB,CAACa,GAAG,CAAC,GAAGA,GAAG;IAElE;MACE,MAAM,IAAI2B,KAAK,CAAC5B,OAAO,aAAPA,OAAO,wBAAAa,YAAA,GAAPb,OAAO,CAAEC,GAAG,cAAAY,YAAA,uBAAZA,YAAA,CAAcX,MAAM,CAAC;EACzC;AACF;AAEA,OAAO,MAAM2B,mBAAqC,GAAGvC,SAAS"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@loaders.gl/xml",
3
- "version": "3.4.0-alpha.5",
3
+ "version": "3.4.0",
4
4
  "description": "Framework-independent loaders for the XML (eXtensible Markup Language) format",
5
5
  "license": "MIT",
6
6
  "publishConfig": {
@@ -33,12 +33,12 @@
33
33
  },
34
34
  "dependencies": {
35
35
  "@babel/runtime": "^7.3.1",
36
- "@loaders.gl/loader-utils": "3.4.0-alpha.5",
37
- "@loaders.gl/schema": "3.4.0-alpha.5",
36
+ "@loaders.gl/loader-utils": "3.4.0",
37
+ "@loaders.gl/schema": "3.4.0",
38
38
  "fast-xml-parser": "^4.1.3"
39
39
  },
40
40
  "devDependencies": {
41
41
  "xmldom": "0.6.0"
42
42
  },
43
- "gitHead": "686929f85b3420c15df051eab769942b260dd242"
43
+ "gitHead": "63854c9c521112108239e9c23fd6accbe6d6e380"
44
44
  }