node-red-contrib-tak-registration 0.16.3 → 0.16.5
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/node_modules/@turf/centroid/package.json +6 -7
- package/node_modules/@turf/helpers/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/helpers/dist/cjs/index.d.cts +5 -3
- package/node_modules/@turf/helpers/dist/esm/index.d.ts +5 -3
- package/node_modules/@turf/helpers/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/helpers/package.json +3 -4
- package/node_modules/@turf/meta/dist/cjs/index.cjs +188 -95
- package/node_modules/@turf/meta/dist/cjs/index.cjs.map +1 -1
- package/node_modules/@turf/meta/dist/cjs/index.d.cts +607 -251
- package/node_modules/@turf/meta/dist/esm/index.d.ts +607 -251
- package/node_modules/@turf/meta/dist/esm/index.js +188 -95
- package/node_modules/@turf/meta/dist/esm/index.js.map +1 -1
- package/node_modules/@turf/meta/package.json +10 -8
- package/node_modules/@types/node/README.md +1 -1
- package/node_modules/@types/node/assert/strict.d.ts +5 -11
- package/node_modules/@types/node/assert.d.ts +9 -169
- package/node_modules/@types/node/async_hooks.d.ts +8 -8
- package/node_modules/@types/node/buffer.buffer.d.ts +1 -7
- package/node_modules/@types/node/buffer.d.ts +44 -168
- package/node_modules/@types/node/child_process.d.ts +16 -64
- package/node_modules/@types/node/cluster.d.ts +240 -332
- package/node_modules/@types/node/console.d.ts +49 -351
- package/node_modules/@types/node/constants.d.ts +3 -4
- package/node_modules/@types/node/crypto.d.ts +279 -1631
- package/node_modules/@types/node/dgram.d.ts +15 -51
- package/node_modules/@types/node/diagnostics_channel.d.ts +4 -4
- package/node_modules/@types/node/dns/promises.d.ts +3 -3
- package/node_modules/@types/node/dns.d.ts +131 -132
- package/node_modules/@types/node/domain.d.ts +13 -17
- package/node_modules/@types/node/events.d.ts +869 -791
- package/node_modules/@types/node/fs/promises.d.ts +21 -9
- package/node_modules/@types/node/fs.d.ts +419 -457
- package/node_modules/@types/node/globals.d.ts +6 -26
- package/node_modules/@types/node/globals.typedarray.d.ts +60 -0
- package/node_modules/@types/node/http.d.ts +263 -254
- package/node_modules/@types/node/http2.d.ts +528 -804
- package/node_modules/@types/node/https.d.ts +59 -239
- package/node_modules/@types/node/index.d.ts +15 -1
- package/node_modules/@types/node/inspector/promises.d.ts +41 -0
- package/node_modules/@types/node/inspector.d.ts +6 -59
- package/node_modules/@types/node/inspector.generated.d.ts +3 -10
- package/node_modules/@types/node/module.d.ts +47 -122
- package/node_modules/@types/node/net.d.ts +63 -184
- package/node_modules/@types/node/os.d.ts +6 -6
- package/node_modules/@types/node/package.json +2 -2
- package/node_modules/@types/node/path/posix.d.ts +8 -0
- package/node_modules/@types/node/path/win32.d.ts +8 -0
- package/node_modules/@types/node/path.d.ts +120 -133
- package/node_modules/@types/node/perf_hooks.d.ts +282 -643
- package/node_modules/@types/node/process.d.ts +218 -126
- package/node_modules/@types/node/punycode.d.ts +5 -5
- package/node_modules/@types/node/querystring.d.ts +4 -4
- package/node_modules/@types/node/quic.d.ts +910 -0
- package/node_modules/@types/node/readline/promises.d.ts +3 -3
- package/node_modules/@types/node/readline.d.ts +67 -120
- package/node_modules/@types/node/repl.d.ts +75 -98
- package/node_modules/@types/node/sea.d.ts +1 -1
- package/node_modules/@types/node/sqlite.d.ts +2 -2
- package/node_modules/@types/node/stream/consumers.d.ts +10 -10
- package/node_modules/@types/node/stream/promises.d.ts +136 -15
- package/node_modules/@types/node/stream/web.d.ts +176 -453
- package/node_modules/@types/node/stream.d.ts +555 -478
- package/node_modules/@types/node/string_decoder.d.ts +4 -4
- package/node_modules/@types/node/test/reporters.d.ts +96 -0
- package/node_modules/@types/node/test.d.ts +80 -180
- package/node_modules/@types/node/timers/promises.d.ts +4 -4
- package/node_modules/@types/node/timers.d.ts +4 -130
- package/node_modules/@types/node/tls.d.ts +106 -177
- package/node_modules/@types/node/trace_events.d.ts +9 -9
- package/node_modules/@types/node/ts5.6/buffer.buffer.d.ts +1 -7
- package/node_modules/@types/node/ts5.6/index.d.ts +15 -1
- package/node_modules/@types/node/ts5.7/index.d.ts +15 -1
- package/node_modules/@types/node/tty.d.ts +58 -16
- package/node_modules/@types/node/url.d.ts +54 -592
- package/node_modules/@types/node/util/types.d.ts +558 -0
- package/node_modules/@types/node/util.d.ts +120 -792
- package/node_modules/@types/node/v8.d.ts +32 -5
- package/node_modules/@types/node/vm.d.ts +13 -13
- package/node_modules/@types/node/wasi.d.ts +4 -4
- package/node_modules/@types/node/web-globals/abortcontroller.d.ts +27 -2
- package/node_modules/@types/node/web-globals/blob.d.ts +23 -0
- package/node_modules/@types/node/web-globals/console.d.ts +9 -0
- package/node_modules/@types/node/web-globals/crypto.d.ts +7 -0
- package/node_modules/@types/node/web-globals/encoding.d.ts +11 -0
- package/node_modules/@types/node/web-globals/events.d.ts +9 -0
- package/node_modules/@types/node/web-globals/fetch.d.ts +4 -0
- package/node_modules/@types/node/web-globals/importmeta.d.ts +13 -0
- package/node_modules/@types/node/web-globals/messaging.d.ts +23 -0
- package/node_modules/@types/node/web-globals/performance.d.ts +45 -0
- package/node_modules/@types/node/web-globals/streams.d.ts +93 -0
- package/node_modules/@types/node/web-globals/timers.d.ts +44 -0
- package/node_modules/@types/node/web-globals/url.d.ts +24 -0
- package/node_modules/@types/node/worker_threads.d.ts +179 -358
- package/node_modules/@types/node/zlib.d.ts +8 -71
- package/node_modules/axios/CHANGELOG.md +296 -239
- package/node_modules/axios/MIGRATION_GUIDE.md +876 -2
- package/node_modules/axios/README.md +580 -446
- package/node_modules/axios/dist/axios.js +246 -148
- package/node_modules/axios/dist/axios.js.map +1 -1
- package/node_modules/axios/dist/axios.min.js +2 -2
- package/node_modules/axios/dist/axios.min.js.map +1 -1
- package/node_modules/axios/dist/browser/axios.cjs +145 -166
- package/node_modules/axios/dist/browser/axios.cjs.map +1 -1
- package/node_modules/axios/dist/esm/axios.js +145 -166
- package/node_modules/axios/dist/esm/axios.js.map +1 -1
- package/node_modules/axios/dist/esm/axios.min.js +2 -2
- package/node_modules/axios/dist/esm/axios.min.js.map +1 -1
- package/node_modules/axios/dist/node/axios.cjs +180 -198
- package/node_modules/axios/dist/node/axios.cjs.map +1 -1
- package/node_modules/axios/index.d.cts +21 -3
- package/node_modules/axios/index.d.ts +340 -116
- package/node_modules/axios/lib/adapters/README.md +1 -1
- package/node_modules/axios/lib/adapters/http.js +13 -10
- package/node_modules/axios/lib/adapters/xhr.js +2 -2
- package/node_modules/axios/lib/cancel/CanceledError.js +15 -18
- package/node_modules/axios/lib/core/Axios.js +1 -1
- package/node_modules/axios/lib/core/AxiosError.js +65 -102
- package/node_modules/axios/lib/core/InterceptorManager.js +2 -1
- package/node_modules/axios/lib/core/mergeConfig.js +2 -3
- package/node_modules/axios/lib/core/transformData.js +1 -1
- package/node_modules/axios/lib/env/data.js +1 -1
- package/node_modules/axios/lib/helpers/buildURL.js +7 -10
- package/node_modules/axios/lib/helpers/composeSignals.js +1 -1
- package/node_modules/axios/lib/helpers/cookies.js +1 -1
- package/node_modules/axios/lib/helpers/isAxiosError.js +1 -1
- package/node_modules/axios/lib/helpers/parseHeaders.js +1 -1
- package/node_modules/axios/lib/helpers/spread.js +1 -1
- package/node_modules/axios/lib/utils.js +24 -7
- package/node_modules/axios/package.json +26 -2
- package/node_modules/fast-xml-parser/CHANGELOG.md +3 -0
- package/node_modules/fast-xml-parser/README.md +5 -4
- package/node_modules/fast-xml-parser/lib/fxp.cjs +1 -1
- package/node_modules/fast-xml-parser/lib/fxp.min.js +1 -1
- package/node_modules/fast-xml-parser/lib/fxp.min.js.map +1 -1
- package/node_modules/fast-xml-parser/lib/fxparser.min.js +1 -1
- package/node_modules/fast-xml-parser/lib/fxparser.min.js.map +1 -1
- package/node_modules/fast-xml-parser/package.json +4 -2
- package/node_modules/fast-xml-parser/src/xmlparser/OrderedObjParser.js +19 -8
- package/node_modules/protobufjs/dist/light/protobuf.js +8 -5
- package/node_modules/protobufjs/dist/light/protobuf.js.map +1 -1
- package/node_modules/protobufjs/dist/light/protobuf.min.js +3 -3
- package/node_modules/protobufjs/dist/light/protobuf.min.js.map +1 -1
- package/node_modules/protobufjs/dist/minimal/protobuf.js +2 -2
- package/node_modules/protobufjs/dist/minimal/protobuf.min.js +2 -2
- package/node_modules/protobufjs/dist/protobuf.js +53 -6
- package/node_modules/protobufjs/dist/protobuf.js.map +1 -1
- package/node_modules/protobufjs/dist/protobuf.min.js +3 -3
- package/node_modules/protobufjs/dist/protobuf.min.js.map +1 -1
- package/node_modules/protobufjs/package.json +1 -1
- package/node_modules/protobufjs/src/object.js +6 -3
- package/node_modules/protobufjs/src/parse.js +45 -1
- package/node_modules/strnum/README.md +6 -0
- package/node_modules/strnum/package.json +1 -1
- package/node_modules/strnum/strnum.js +1 -1
- package/node_modules/uuid/README.md +19 -8
- package/node_modules/uuid/dist/cjs/index.d.ts +15 -0
- package/node_modules/uuid/dist/cjs/index.js +31 -0
- package/node_modules/uuid/dist/cjs/max.d.ts +2 -0
- package/node_modules/uuid/dist/cjs/max.js +3 -0
- package/node_modules/uuid/dist/cjs/md5.d.ts +4 -0
- package/node_modules/uuid/dist/cjs/md5.js +13 -0
- package/node_modules/uuid/dist/cjs/native.d.ts +6 -0
- package/node_modules/uuid/dist/cjs/native.js +4 -0
- package/node_modules/uuid/dist/cjs/nil.d.ts +2 -0
- package/node_modules/uuid/dist/cjs/nil.js +3 -0
- package/node_modules/uuid/dist/cjs/package.json +1 -0
- package/node_modules/uuid/dist/cjs/parse.d.ts +2 -0
- package/node_modules/uuid/dist/cjs/parse.js +11 -0
- package/node_modules/uuid/dist/cjs/regex.d.ts +2 -0
- package/node_modules/uuid/dist/cjs/regex.js +3 -0
- package/node_modules/uuid/dist/cjs/rng.d.ts +1 -0
- package/node_modules/uuid/dist/cjs/rng.js +13 -0
- package/node_modules/uuid/dist/cjs/sha1.d.ts +4 -0
- package/node_modules/uuid/dist/cjs/sha1.js +13 -0
- package/node_modules/uuid/dist/cjs/stringify.d.ts +3 -0
- package/node_modules/uuid/dist/cjs/stringify.js +39 -0
- package/node_modules/uuid/dist/cjs/types.d.ts +21 -0
- package/node_modules/uuid/dist/cjs/types.js +2 -0
- package/node_modules/uuid/dist/cjs/uuid-bin.js +72 -0
- package/node_modules/uuid/dist/cjs/v1.d.ts +11 -0
- package/node_modules/uuid/dist/cjs/v1.js +87 -0
- package/node_modules/uuid/dist/cjs/v1ToV6.d.ts +2 -0
- package/node_modules/uuid/dist/cjs/v1ToV6.js +13 -0
- package/node_modules/uuid/dist/cjs/v3.d.ts +9 -0
- package/node_modules/uuid/dist/cjs/v3.js +14 -0
- package/node_modules/uuid/dist/cjs/v35.d.ts +7 -0
- package/node_modules/uuid/dist/cjs/v35.js +41 -0
- package/node_modules/uuid/dist/cjs/v4.d.ts +4 -0
- package/node_modules/uuid/dist/cjs/v4.js +29 -0
- package/node_modules/uuid/dist/cjs/v5.d.ts +9 -0
- package/node_modules/uuid/dist/cjs/v5.js +14 -0
- package/node_modules/uuid/dist/cjs/v6.d.ts +4 -0
- package/node_modules/uuid/dist/cjs/v6.js +19 -0
- package/node_modules/uuid/dist/cjs/v6ToV1.d.ts +2 -0
- package/node_modules/uuid/dist/cjs/v6ToV1.js +13 -0
- package/node_modules/uuid/dist/cjs/v7.d.ts +9 -0
- package/node_modules/uuid/dist/cjs/v7.js +69 -0
- package/node_modules/uuid/dist/cjs/validate.d.ts +2 -0
- package/node_modules/uuid/dist/cjs/validate.js +7 -0
- package/node_modules/uuid/dist/cjs/version.d.ts +2 -0
- package/node_modules/uuid/dist/cjs/version.js +10 -0
- package/node_modules/uuid/dist/cjs-browser/index.js +31 -0
- package/node_modules/uuid/dist/cjs-browser/max.js +3 -0
- package/node_modules/uuid/dist/cjs-browser/md5.js +137 -0
- package/node_modules/uuid/dist/cjs-browser/native.js +4 -0
- package/node_modules/uuid/dist/cjs-browser/nil.js +3 -0
- package/node_modules/uuid/dist/cjs-browser/package.json +1 -0
- package/node_modules/uuid/dist/cjs-browser/parse.js +11 -0
- package/node_modules/uuid/dist/cjs-browser/regex.js +3 -0
- package/node_modules/uuid/dist/cjs-browser/rng.js +14 -0
- package/node_modules/uuid/dist/cjs-browser/sha1.js +72 -0
- package/node_modules/uuid/dist/cjs-browser/stringify.js +39 -0
- package/node_modules/uuid/dist/cjs-browser/types.js +2 -0
- package/node_modules/uuid/dist/cjs-browser/uuid-bin.js +72 -0
- package/node_modules/uuid/dist/cjs-browser/v1.js +87 -0
- package/node_modules/uuid/dist/cjs-browser/v1ToV6.js +13 -0
- package/node_modules/uuid/dist/cjs-browser/v3.js +14 -0
- package/node_modules/uuid/dist/cjs-browser/v35.js +41 -0
- package/node_modules/uuid/dist/cjs-browser/v4.js +29 -0
- package/node_modules/uuid/dist/cjs-browser/v5.js +14 -0
- package/node_modules/uuid/dist/cjs-browser/v6.js +19 -0
- package/node_modules/uuid/dist/cjs-browser/v6ToV1.js +13 -0
- package/node_modules/uuid/dist/cjs-browser/v7.js +69 -0
- package/node_modules/uuid/dist/cjs-browser/validate.js +7 -0
- package/node_modules/uuid/dist/cjs-browser/version.js +10 -0
- package/node_modules/uuid/dist/esm/index.d.ts +15 -0
- package/node_modules/uuid/dist/esm/max.d.ts +2 -0
- package/node_modules/uuid/dist/esm/md5.d.ts +4 -0
- package/node_modules/uuid/dist/esm/md5.js +11 -0
- package/node_modules/uuid/dist/esm/native.d.ts +6 -0
- package/node_modules/uuid/dist/esm/native.js +2 -0
- package/node_modules/uuid/dist/esm/nil.d.ts +2 -0
- package/node_modules/uuid/dist/esm/parse.d.ts +2 -0
- package/node_modules/uuid/dist/esm/regex.d.ts +2 -0
- package/node_modules/uuid/dist/esm/rng.d.ts +1 -0
- package/node_modules/uuid/dist/esm/rng.js +10 -0
- package/node_modules/uuid/dist/esm/sha1.d.ts +4 -0
- package/node_modules/uuid/dist/esm/sha1.js +11 -0
- package/node_modules/uuid/dist/esm/stringify.d.ts +3 -0
- package/node_modules/uuid/dist/esm/types.d.ts +21 -0
- package/node_modules/uuid/dist/esm/types.js +1 -0
- package/node_modules/uuid/dist/esm/uuid-bin.d.ts +1 -0
- package/node_modules/uuid/dist/esm/uuid-bin.js +70 -0
- package/node_modules/uuid/dist/esm/v1.d.ts +11 -0
- package/node_modules/uuid/dist/esm/v1ToV6.d.ts +2 -0
- package/node_modules/uuid/dist/esm/v3.d.ts +9 -0
- package/node_modules/uuid/dist/esm/v35.d.ts +7 -0
- package/node_modules/uuid/dist/esm/v4.d.ts +4 -0
- package/node_modules/uuid/dist/esm/v4.js +27 -0
- package/node_modules/uuid/dist/esm/v5.d.ts +9 -0
- package/node_modules/uuid/dist/esm/v6.d.ts +4 -0
- package/node_modules/uuid/dist/esm/v6ToV1.d.ts +2 -0
- package/node_modules/uuid/dist/esm/v7.d.ts +9 -0
- package/node_modules/uuid/dist/esm/validate.d.ts +2 -0
- package/node_modules/uuid/dist/esm/version.d.ts +2 -0
- package/node_modules/uuid/dist/esm-browser/index.d.ts +15 -0
- package/node_modules/uuid/dist/esm-browser/max.d.ts +2 -0
- package/node_modules/uuid/dist/esm-browser/md5.d.ts +2 -0
- package/node_modules/uuid/dist/esm-browser/native.d.ts +4 -0
- package/node_modules/uuid/dist/esm-browser/nil.d.ts +2 -0
- package/node_modules/uuid/dist/esm-browser/parse.d.ts +2 -0
- package/node_modules/uuid/dist/esm-browser/regex.d.ts +2 -0
- package/node_modules/uuid/dist/esm-browser/rng.d.ts +1 -0
- package/node_modules/uuid/dist/esm-browser/sha1.d.ts +2 -0
- package/node_modules/uuid/dist/esm-browser/stringify.d.ts +3 -0
- package/node_modules/uuid/dist/esm-browser/types.d.ts +21 -0
- package/node_modules/uuid/dist/esm-browser/uuid-bin.d.ts +1 -0
- package/node_modules/uuid/dist/esm-browser/uuid-bin.js +70 -0
- package/node_modules/uuid/dist/esm-browser/v1.d.ts +11 -0
- package/node_modules/uuid/dist/esm-browser/v1ToV6.d.ts +2 -0
- package/node_modules/uuid/dist/esm-browser/v3.d.ts +9 -0
- package/node_modules/uuid/dist/esm-browser/v35.d.ts +7 -0
- package/node_modules/uuid/dist/esm-browser/v4.d.ts +4 -0
- package/node_modules/uuid/dist/esm-browser/v4.js +27 -0
- package/node_modules/uuid/dist/esm-browser/v5.d.ts +9 -0
- package/node_modules/uuid/dist/esm-browser/v6.d.ts +4 -0
- package/node_modules/uuid/dist/esm-browser/v6ToV1.d.ts +2 -0
- package/node_modules/uuid/dist/esm-browser/v7.d.ts +9 -0
- package/node_modules/uuid/dist/esm-browser/validate.d.ts +2 -0
- package/node_modules/uuid/dist/esm-browser/version.d.ts +2 -0
- package/node_modules/uuid/package.json +41 -28
- package/package.json +12 -10
- package/tak-registration.js +7 -3
- package/node_modules/@turf/along/LICENSE +0 -20
- package/node_modules/@turf/along/README.md +0 -61
- package/node_modules/@turf/along/dist/cjs/index.cjs +0 -39
- package/node_modules/@turf/along/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/along/dist/cjs/index.d.cts +0 -26
- package/node_modules/@turf/along/dist/esm/index.d.ts +0 -26
- package/node_modules/@turf/along/dist/esm/index.js +0 -39
- package/node_modules/@turf/along/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/along/package.json +0 -75
- package/node_modules/@turf/angle/LICENSE +0 -20
- package/node_modules/@turf/angle/README.md +0 -60
- package/node_modules/@turf/angle/dist/cjs/index.cjs +0 -41
- package/node_modules/@turf/angle/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/angle/dist/cjs/index.d.cts +0 -24
- package/node_modules/@turf/angle/dist/esm/index.d.ts +0 -24
- package/node_modules/@turf/angle/dist/esm/index.js +0 -41
- package/node_modules/@turf/angle/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/angle/package.json +0 -79
- package/node_modules/@turf/area/LICENSE +0 -20
- package/node_modules/@turf/area/README.md +0 -55
- package/node_modules/@turf/area/dist/cjs/index.cjs +0 -66
- package/node_modules/@turf/area/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/area/dist/cjs/index.d.cts +0 -20
- package/node_modules/@turf/area/dist/esm/index.d.ts +0 -20
- package/node_modules/@turf/area/dist/esm/index.js +0 -66
- package/node_modules/@turf/area/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/area/package.json +0 -72
- package/node_modules/@turf/bbox/LICENSE +0 -20
- package/node_modules/@turf/bbox/README.md +0 -56
- package/node_modules/@turf/bbox/dist/cjs/index.cjs +0 -29
- package/node_modules/@turf/bbox/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/bbox/dist/cjs/index.d.cts +0 -25
- package/node_modules/@turf/bbox/dist/esm/index.d.ts +0 -25
- package/node_modules/@turf/bbox/dist/esm/index.js +0 -29
- package/node_modules/@turf/bbox/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/bbox/package.json +0 -72
- package/node_modules/@turf/bbox-clip/LICENSE +0 -20
- package/node_modules/@turf/bbox-clip/README.md +0 -62
- package/node_modules/@turf/bbox-clip/dist/cjs/index.cjs +0 -133
- package/node_modules/@turf/bbox-clip/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/bbox-clip/dist/cjs/index.d.cts +0 -23
- package/node_modules/@turf/bbox-clip/dist/esm/index.d.ts +0 -23
- package/node_modules/@turf/bbox-clip/dist/esm/index.js +0 -133
- package/node_modules/@turf/bbox-clip/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/bbox-clip/package.json +0 -79
- package/node_modules/@turf/bbox-polygon/LICENSE +0 -20
- package/node_modules/@turf/bbox-polygon/README.md +0 -60
- package/node_modules/@turf/bbox-polygon/dist/cjs/index.cjs +0 -28
- package/node_modules/@turf/bbox-polygon/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/bbox-polygon/dist/cjs/index.d.cts +0 -26
- package/node_modules/@turf/bbox-polygon/dist/esm/index.d.ts +0 -26
- package/node_modules/@turf/bbox-polygon/dist/esm/index.js +0 -28
- package/node_modules/@turf/bbox-polygon/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/bbox-polygon/package.json +0 -70
- package/node_modules/@turf/bearing/LICENSE +0 -20
- package/node_modules/@turf/bearing/README.md +0 -63
- package/node_modules/@turf/bearing/dist/cjs/index.cjs +0 -28
- package/node_modules/@turf/bearing/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/bearing/dist/cjs/index.d.cts +0 -29
- package/node_modules/@turf/bearing/dist/esm/index.d.ts +0 -29
- package/node_modules/@turf/bearing/dist/esm/index.js +0 -28
- package/node_modules/@turf/bearing/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/bearing/package.json +0 -70
- package/node_modules/@turf/bezier-spline/LICENSE +0 -20
- package/node_modules/@turf/bezier-spline/README.md +0 -73
- package/node_modules/@turf/bezier-spline/dist/cjs/index.cjs +0 -165
- package/node_modules/@turf/bezier-spline/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/bezier-spline/dist/cjs/index.d.cts +0 -39
- package/node_modules/@turf/bezier-spline/dist/esm/index.d.ts +0 -39
- package/node_modules/@turf/bezier-spline/dist/esm/index.js +0 -165
- package/node_modules/@turf/bezier-spline/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/bezier-spline/package.json +0 -73
- package/node_modules/@turf/boolean-clockwise/LICENSE +0 -20
- package/node_modules/@turf/boolean-clockwise/README.md +0 -55
- package/node_modules/@turf/boolean-clockwise/dist/cjs/index.cjs +0 -22
- package/node_modules/@turf/boolean-clockwise/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/boolean-clockwise/dist/cjs/index.d.cts +0 -20
- package/node_modules/@turf/boolean-clockwise/dist/esm/index.d.ts +0 -20
- package/node_modules/@turf/boolean-clockwise/dist/esm/index.js +0 -22
- package/node_modules/@turf/boolean-clockwise/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/boolean-clockwise/package.json +0 -77
- package/node_modules/@turf/boolean-concave/LICENSE +0 -20
- package/node_modules/@turf/boolean-concave/README.md +0 -48
- package/node_modules/@turf/boolean-concave/dist/cjs/index.cjs +0 -29
- package/node_modules/@turf/boolean-concave/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/boolean-concave/dist/cjs/index.d.cts +0 -17
- package/node_modules/@turf/boolean-concave/dist/esm/index.d.ts +0 -17
- package/node_modules/@turf/boolean-concave/dist/esm/index.js +0 -29
- package/node_modules/@turf/boolean-concave/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/boolean-concave/package.json +0 -76
- package/node_modules/@turf/boolean-contains/LICENSE +0 -20
- package/node_modules/@turf/boolean-contains/README.md +0 -58
- package/node_modules/@turf/boolean-contains/dist/cjs/index.cjs +0 -216
- package/node_modules/@turf/boolean-contains/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/boolean-contains/dist/cjs/index.d.cts +0 -50
- package/node_modules/@turf/boolean-contains/dist/esm/index.d.ts +0 -50
- package/node_modules/@turf/boolean-contains/dist/esm/index.js +0 -216
- package/node_modules/@turf/boolean-contains/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/boolean-contains/package.json +0 -81
- package/node_modules/@turf/boolean-crosses/LICENSE +0 -20
- package/node_modules/@turf/boolean-crosses/README.md +0 -60
- package/node_modules/@turf/boolean-crosses/dist/cjs/index.cjs +0 -141
- package/node_modules/@turf/boolean-crosses/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/boolean-crosses/dist/cjs/index.d.cts +0 -24
- package/node_modules/@turf/boolean-crosses/dist/esm/index.d.ts +0 -24
- package/node_modules/@turf/boolean-crosses/dist/esm/index.js +0 -141
- package/node_modules/@turf/boolean-crosses/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/boolean-crosses/package.json +0 -80
- package/node_modules/@turf/boolean-disjoint/LICENSE +0 -20
- package/node_modules/@turf/boolean-disjoint/README.md +0 -60
- package/node_modules/@turf/boolean-disjoint/dist/cjs/index.cjs +0 -143
- package/node_modules/@turf/boolean-disjoint/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/boolean-disjoint/dist/cjs/index.d.cts +0 -23
- package/node_modules/@turf/boolean-disjoint/dist/esm/index.d.ts +0 -23
- package/node_modules/@turf/boolean-disjoint/dist/esm/index.js +0 -143
- package/node_modules/@turf/boolean-disjoint/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/boolean-disjoint/package.json +0 -79
- package/node_modules/@turf/boolean-equal/LICENSE +0 -20
- package/node_modules/@turf/boolean-equal/README.md +0 -68
- package/node_modules/@turf/boolean-equal/dist/cjs/index.cjs +0 -23
- package/node_modules/@turf/boolean-equal/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/boolean-equal/dist/cjs/index.d.cts +0 -27
- package/node_modules/@turf/boolean-equal/dist/esm/index.d.ts +0 -27
- package/node_modules/@turf/boolean-equal/dist/esm/index.js +0 -23
- package/node_modules/@turf/boolean-equal/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/boolean-equal/package.json +0 -82
- package/node_modules/@turf/boolean-intersects/LICENSE +0 -20
- package/node_modules/@turf/boolean-intersects/README.md +0 -64
- package/node_modules/@turf/boolean-intersects/dist/cjs/index.cjs +0 -25
- package/node_modules/@turf/boolean-intersects/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/boolean-intersects/dist/cjs/index.d.cts +0 -32
- package/node_modules/@turf/boolean-intersects/dist/esm/index.d.ts +0 -32
- package/node_modules/@turf/boolean-intersects/dist/esm/index.js +0 -25
- package/node_modules/@turf/boolean-intersects/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/boolean-intersects/package.json +0 -78
- package/node_modules/@turf/boolean-overlap/LICENSE +0 -20
- package/node_modules/@turf/boolean-overlap/README.md +0 -70
- package/node_modules/@turf/boolean-overlap/dist/cjs/index.cjs +0 -55
- package/node_modules/@turf/boolean-overlap/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/boolean-overlap/dist/cjs/index.d.cts +0 -26
- package/node_modules/@turf/boolean-overlap/dist/esm/index.d.ts +0 -26
- package/node_modules/@turf/boolean-overlap/dist/esm/index.js +0 -55
- package/node_modules/@turf/boolean-overlap/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/boolean-overlap/package.json +0 -83
- package/node_modules/@turf/boolean-parallel/LICENSE +0 -20
- package/node_modules/@turf/boolean-parallel/README.md +0 -52
- package/node_modules/@turf/boolean-parallel/dist/cjs/index.cjs +0 -39
- package/node_modules/@turf/boolean-parallel/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/boolean-parallel/dist/cjs/index.d.cts +0 -19
- package/node_modules/@turf/boolean-parallel/dist/esm/index.d.ts +0 -19
- package/node_modules/@turf/boolean-parallel/dist/esm/index.js +0 -39
- package/node_modules/@turf/boolean-parallel/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/boolean-parallel/package.json +0 -77
- package/node_modules/@turf/boolean-point-in-polygon/LICENSE +0 -20
- package/node_modules/@turf/boolean-point-in-polygon/README.md +0 -69
- package/node_modules/@turf/boolean-point-in-polygon/dist/cjs/index.cjs +0 -38
- package/node_modules/@turf/boolean-point-in-polygon/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/boolean-point-in-polygon/dist/cjs/index.d.cts +0 -32
- package/node_modules/@turf/boolean-point-in-polygon/dist/esm/index.d.ts +0 -32
- package/node_modules/@turf/boolean-point-in-polygon/dist/esm/index.js +0 -38
- package/node_modules/@turf/boolean-point-in-polygon/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/boolean-point-in-polygon/package.json +0 -73
- package/node_modules/@turf/boolean-point-on-line/LICENSE +0 -20
- package/node_modules/@turf/boolean-point-on-line/README.md +0 -60
- package/node_modules/@turf/boolean-point-on-line/dist/cjs/index.cjs +0 -88
- package/node_modules/@turf/boolean-point-on-line/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/boolean-point-on-line/dist/cjs/index.d.cts +0 -26
- package/node_modules/@turf/boolean-point-on-line/dist/esm/index.d.ts +0 -26
- package/node_modules/@turf/boolean-point-on-line/dist/esm/index.js +0 -88
- package/node_modules/@turf/boolean-point-on-line/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/boolean-point-on-line/package.json +0 -74
- package/node_modules/@turf/boolean-touches/LICENSE +0 -20
- package/node_modules/@turf/boolean-touches/README.md +0 -51
- package/node_modules/@turf/boolean-touches/dist/cjs/index.cjs +0 -647
- package/node_modules/@turf/boolean-touches/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/boolean-touches/dist/cjs/index.d.cts +0 -20
- package/node_modules/@turf/boolean-touches/dist/esm/index.d.ts +0 -20
- package/node_modules/@turf/boolean-touches/dist/esm/index.js +0 -647
- package/node_modules/@turf/boolean-touches/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/boolean-touches/package.json +0 -82
- package/node_modules/@turf/boolean-valid/LICENSE +0 -20
- package/node_modules/@turf/boolean-valid/README.md +0 -48
- package/node_modules/@turf/boolean-valid/dist/cjs/index.cjs +0 -93
- package/node_modules/@turf/boolean-valid/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/boolean-valid/dist/cjs/index.d.cts +0 -17
- package/node_modules/@turf/boolean-valid/dist/esm/index.d.ts +0 -17
- package/node_modules/@turf/boolean-valid/dist/esm/index.js +0 -93
- package/node_modules/@turf/boolean-valid/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/boolean-valid/package.json +0 -86
- package/node_modules/@turf/boolean-within/LICENSE +0 -20
- package/node_modules/@turf/boolean-within/README.md +0 -53
- package/node_modules/@turf/boolean-within/dist/cjs/index.cjs +0 -186
- package/node_modules/@turf/boolean-within/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/boolean-within/dist/cjs/index.d.cts +0 -22
- package/node_modules/@turf/boolean-within/dist/esm/index.d.ts +0 -22
- package/node_modules/@turf/boolean-within/dist/esm/index.js +0 -186
- package/node_modules/@turf/boolean-within/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/boolean-within/package.json +0 -83
- package/node_modules/@turf/buffer/LICENSE +0 -20
- package/node_modules/@turf/buffer/README.md +0 -72
- package/node_modules/@turf/buffer/dist/cjs/index.cjs +0 -99
- package/node_modules/@turf/buffer/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/buffer/dist/cjs/index.d.cts +0 -30
- package/node_modules/@turf/buffer/dist/esm/index.d.ts +0 -30
- package/node_modules/@turf/buffer/dist/esm/index.js +0 -99
- package/node_modules/@turf/buffer/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/buffer/package.json +0 -85
- package/node_modules/@turf/center/LICENSE +0 -20
- package/node_modules/@turf/center/README.md +0 -65
- package/node_modules/@turf/center/dist/cjs/index.cjs +0 -15
- package/node_modules/@turf/center/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/center/dist/cjs/index.d.cts +0 -34
- package/node_modules/@turf/center/dist/esm/index.d.ts +0 -34
- package/node_modules/@turf/center/dist/esm/index.js +0 -15
- package/node_modules/@turf/center/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/center/package.json +0 -78
- package/node_modules/@turf/center-mean/LICENSE +0 -20
- package/node_modules/@turf/center-mean/README.md +0 -69
- package/node_modules/@turf/center-mean/dist/cjs/index.cjs +0 -31
- package/node_modules/@turf/center-mean/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/center-mean/dist/cjs/index.d.cts +0 -38
- package/node_modules/@turf/center-mean/dist/esm/index.d.ts +0 -38
- package/node_modules/@turf/center-mean/dist/esm/index.js +0 -31
- package/node_modules/@turf/center-mean/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/center-mean/package.json +0 -83
- package/node_modules/@turf/center-median/LICENSE +0 -20
- package/node_modules/@turf/center-median/README.md +0 -97
- package/node_modules/@turf/center-median/dist/cjs/index.cjs +0 -80
- package/node_modules/@turf/center-median/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/center-median/dist/cjs/index.d.cts +0 -64
- package/node_modules/@turf/center-median/dist/esm/index.d.ts +0 -64
- package/node_modules/@turf/center-median/dist/esm/index.js +0 -80
- package/node_modules/@turf/center-median/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/center-median/package.json +0 -80
- package/node_modules/@turf/center-of-mass/LICENSE +0 -20
- package/node_modules/@turf/center-of-mass/README.md +0 -61
- package/node_modules/@turf/center-of-mass/dist/cjs/index.cjs +0 -58
- package/node_modules/@turf/center-of-mass/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/center-of-mass/dist/cjs/index.d.cts +0 -23
- package/node_modules/@turf/center-of-mass/dist/esm/index.d.ts +0 -23
- package/node_modules/@turf/center-of-mass/dist/esm/index.js +0 -58
- package/node_modules/@turf/center-of-mass/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/center-of-mass/package.json +0 -75
- package/node_modules/@turf/circle/LICENSE +0 -20
- package/node_modules/@turf/circle/README.md +0 -65
- package/node_modules/@turf/circle/dist/cjs/index.cjs +0 -21
- package/node_modules/@turf/circle/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/circle/dist/cjs/index.d.cts +0 -30
- package/node_modules/@turf/circle/dist/esm/index.d.ts +0 -30
- package/node_modules/@turf/circle/dist/esm/index.js +0 -21
- package/node_modules/@turf/circle/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/circle/package.json +0 -77
- package/node_modules/@turf/clean-coords/LICENSE +0 -20
- package/node_modules/@turf/clean-coords/README.md +0 -57
- package/node_modules/@turf/clean-coords/dist/cjs/index.cjs +0 -106
- package/node_modules/@turf/clean-coords/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/clean-coords/dist/cjs/index.d.cts +0 -23
- package/node_modules/@turf/clean-coords/dist/esm/index.d.ts +0 -23
- package/node_modules/@turf/clean-coords/dist/esm/index.js +0 -106
- package/node_modules/@turf/clean-coords/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/clean-coords/package.json +0 -79
- package/node_modules/@turf/clone/LICENSE +0 -20
- package/node_modules/@turf/clone/README.md +0 -44
- package/node_modules/@turf/clone/dist/cjs/index.cjs +0 -111
- package/node_modules/@turf/clone/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/clone/dist/cjs/index.d.cts +0 -28
- package/node_modules/@turf/clone/dist/esm/index.d.ts +0 -28
- package/node_modules/@turf/clone/dist/esm/index.js +0 -111
- package/node_modules/@turf/clone/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/clone/package.json +0 -72
- package/node_modules/@turf/clusters/LICENSE +0 -20
- package/node_modules/@turf/clusters/README.md +0 -209
- package/node_modules/@turf/clusters/dist/cjs/index.cjs +0 -108
- package/node_modules/@turf/clusters/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/clusters/dist/cjs/index.d.cts +0 -201
- package/node_modules/@turf/clusters/dist/esm/index.d.ts +0 -201
- package/node_modules/@turf/clusters/dist/esm/index.js +0 -108
- package/node_modules/@turf/clusters/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/clusters/package.json +0 -75
- package/node_modules/@turf/clusters-dbscan/LICENSE +0 -20
- package/node_modules/@turf/clusters-dbscan/README.md +0 -90
- package/node_modules/@turf/clusters-dbscan/dist/cjs/index.cjs +0 -105
- package/node_modules/@turf/clusters-dbscan/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/clusters-dbscan/dist/cjs/index.d.cts +0 -51
- package/node_modules/@turf/clusters-dbscan/dist/esm/index.d.ts +0 -51
- package/node_modules/@turf/clusters-dbscan/dist/esm/index.js +0 -105
- package/node_modules/@turf/clusters-dbscan/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/clusters-dbscan/package.json +0 -89
- package/node_modules/@turf/clusters-kmeans/LICENSE +0 -20
- package/node_modules/@turf/clusters-kmeans/README.md +0 -63
- package/node_modules/@turf/clusters-kmeans/dist/cjs/index.cjs +0 -29
- package/node_modules/@turf/clusters-kmeans/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/clusters-kmeans/dist/cjs/index.d.cts +0 -33
- package/node_modules/@turf/clusters-kmeans/dist/esm/index.d.ts +0 -33
- package/node_modules/@turf/clusters-kmeans/dist/esm/index.js +0 -29
- package/node_modules/@turf/clusters-kmeans/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/clusters-kmeans/package.json +0 -89
- package/node_modules/@turf/collect/LICENSE +0 -20
- package/node_modules/@turf/collect/README.md +0 -68
- package/node_modules/@turf/collect/dist/cjs/index.cjs +0 -44
- package/node_modules/@turf/collect/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/collect/dist/cjs/index.d.cts +0 -35
- package/node_modules/@turf/collect/dist/esm/index.d.ts +0 -35
- package/node_modules/@turf/collect/dist/esm/index.js +0 -44
- package/node_modules/@turf/collect/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/collect/package.json +0 -78
- package/node_modules/@turf/combine/LICENSE +0 -20
- package/node_modules/@turf/combine/README.md +0 -62
- package/node_modules/@turf/combine/dist/cjs/index.cjs +0 -67
- package/node_modules/@turf/combine/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/combine/dist/cjs/index.d.cts +0 -25
- package/node_modules/@turf/combine/dist/esm/index.d.ts +0 -25
- package/node_modules/@turf/combine/dist/esm/index.js +0 -67
- package/node_modules/@turf/combine/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/combine/package.json +0 -71
- package/node_modules/@turf/concave/LICENSE +0 -20
- package/node_modules/@turf/concave/README.md +0 -76
- package/node_modules/@turf/concave/dist/cjs/index.cjs +0 -198
- package/node_modules/@turf/concave/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/concave/dist/cjs/index.d.cts +0 -36
- package/node_modules/@turf/concave/dist/esm/index.d.ts +0 -36
- package/node_modules/@turf/concave/dist/esm/index.js +0 -198
- package/node_modules/@turf/concave/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/concave/package.json +0 -91
- package/node_modules/@turf/convex/LICENSE +0 -20
- package/node_modules/@turf/convex/README.md +0 -75
- package/node_modules/@turf/convex/dist/cjs/index.cjs +0 -25
- package/node_modules/@turf/convex/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/convex/dist/cjs/index.d.cts +0 -37
- package/node_modules/@turf/convex/dist/esm/index.d.ts +0 -37
- package/node_modules/@turf/convex/dist/esm/index.js +0 -25
- package/node_modules/@turf/convex/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/convex/package.json +0 -73
- package/node_modules/@turf/destination/LICENSE +0 -20
- package/node_modules/@turf/destination/README.md +0 -71
- package/node_modules/@turf/destination/dist/cjs/index.cjs +0 -34
- package/node_modules/@turf/destination/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/destination/dist/cjs/index.d.cts +0 -35
- package/node_modules/@turf/destination/dist/esm/index.d.ts +0 -35
- package/node_modules/@turf/destination/dist/esm/index.js +0 -34
- package/node_modules/@turf/destination/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/destination/package.json +0 -79
- package/node_modules/@turf/difference/LICENSE +0 -20
- package/node_modules/@turf/difference/README.md +0 -71
- package/node_modules/@turf/difference/dist/cjs/index.cjs +0 -24
- package/node_modules/@turf/difference/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/difference/dist/cjs/index.d.cts +0 -38
- package/node_modules/@turf/difference/dist/esm/index.d.ts +0 -38
- package/node_modules/@turf/difference/dist/esm/index.js +0 -24
- package/node_modules/@turf/difference/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/difference/package.json +0 -72
- package/node_modules/@turf/dissolve/LICENSE +0 -20
- package/node_modules/@turf/dissolve/README.md +0 -63
- package/node_modules/@turf/dissolve/dist/cjs/index.cjs +0 -62
- package/node_modules/@turf/dissolve/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/dissolve/dist/cjs/index.d.cts +0 -28
- package/node_modules/@turf/dissolve/dist/esm/index.d.ts +0 -28
- package/node_modules/@turf/dissolve/dist/esm/index.js +0 -62
- package/node_modules/@turf/dissolve/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/dissolve/package.json +0 -76
- package/node_modules/@turf/distance/LICENSE +0 -20
- package/node_modules/@turf/distance/README.md +0 -63
- package/node_modules/@turf/distance/dist/cjs/index.cjs +0 -22
- package/node_modules/@turf/distance/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/distance/dist/cjs/index.d.cts +0 -29
- package/node_modules/@turf/distance/dist/esm/index.d.ts +0 -29
- package/node_modules/@turf/distance/dist/esm/index.js +0 -22
- package/node_modules/@turf/distance/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/distance/package.json +0 -72
- package/node_modules/@turf/distance-weight/LICENSE +0 -20
- package/node_modules/@turf/distance-weight/README.md +0 -76
- package/node_modules/@turf/distance-weight/dist/cjs/index.cjs +0 -80
- package/node_modules/@turf/distance-weight/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/distance-weight/dist/cjs/index.d.cts +0 -42
- package/node_modules/@turf/distance-weight/dist/esm/index.d.ts +0 -42
- package/node_modules/@turf/distance-weight/dist/esm/index.js +0 -80
- package/node_modules/@turf/distance-weight/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/distance-weight/package.json +0 -75
- package/node_modules/@turf/ellipse/LICENSE +0 -20
- package/node_modules/@turf/ellipse/README.md +0 -68
- package/node_modules/@turf/ellipse/dist/cjs/index.cjs +0 -92
- package/node_modules/@turf/ellipse/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/ellipse/dist/cjs/index.d.cts +0 -34
- package/node_modules/@turf/ellipse/dist/esm/index.d.ts +0 -34
- package/node_modules/@turf/ellipse/dist/esm/index.js +0 -92
- package/node_modules/@turf/ellipse/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/ellipse/package.json +0 -84
- package/node_modules/@turf/envelope/LICENSE +0 -20
- package/node_modules/@turf/envelope/README.md +0 -54
- package/node_modules/@turf/envelope/dist/cjs/index.cjs +0 -12
- package/node_modules/@turf/envelope/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/envelope/dist/cjs/index.d.cts +0 -24
- package/node_modules/@turf/envelope/dist/esm/index.d.ts +0 -24
- package/node_modules/@turf/envelope/dist/esm/index.js +0 -12
- package/node_modules/@turf/envelope/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/envelope/package.json +0 -73
- package/node_modules/@turf/explode/LICENSE +0 -20
- package/node_modules/@turf/explode/README.md +0 -54
- package/node_modules/@turf/explode/dist/cjs/index.cjs +0 -28
- package/node_modules/@turf/explode/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/explode/dist/cjs/index.d.cts +0 -21
- package/node_modules/@turf/explode/dist/esm/index.d.ts +0 -21
- package/node_modules/@turf/explode/dist/esm/index.js +0 -28
- package/node_modules/@turf/explode/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/explode/package.json +0 -72
- package/node_modules/@turf/flatten/LICENSE +0 -20
- package/node_modules/@turf/flatten/README.md +0 -54
- package/node_modules/@turf/flatten/dist/cjs/index.cjs +0 -17
- package/node_modules/@turf/flatten/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/flatten/dist/cjs/index.d.cts +0 -27
- package/node_modules/@turf/flatten/dist/esm/index.d.ts +0 -27
- package/node_modules/@turf/flatten/dist/esm/index.js +0 -17
- package/node_modules/@turf/flatten/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/flatten/package.json +0 -78
- package/node_modules/@turf/flip/LICENSE +0 -20
- package/node_modules/@turf/flip/README.md +0 -53
- package/node_modules/@turf/flip/dist/cjs/index.cjs +0 -25
- package/node_modules/@turf/flip/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/flip/dist/cjs/index.d.cts +0 -23
- package/node_modules/@turf/flip/dist/esm/index.d.ts +0 -23
- package/node_modules/@turf/flip/dist/esm/index.js +0 -25
- package/node_modules/@turf/flip/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/flip/package.json +0 -74
- package/node_modules/@turf/geojson-rbush/LICENSE +0 -20
- package/node_modules/@turf/geojson-rbush/README.md +0 -397
- package/node_modules/@turf/geojson-rbush/dist/cjs/index.cjs +0 -78
- package/node_modules/@turf/geojson-rbush/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/geojson-rbush/dist/cjs/index.d.cts +0 -26
- package/node_modules/@turf/geojson-rbush/dist/esm/index.d.ts +0 -26
- package/node_modules/@turf/geojson-rbush/dist/esm/index.js +0 -78
- package/node_modules/@turf/geojson-rbush/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/geojson-rbush/package.json +0 -82
- package/node_modules/@turf/great-circle/LICENSE +0 -20
- package/node_modules/@turf/great-circle/README.md +0 -67
- package/node_modules/@turf/great-circle/dist/cjs/index.cjs +0 -273
- package/node_modules/@turf/great-circle/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/great-circle/dist/cjs/index.d.cts +0 -17
- package/node_modules/@turf/great-circle/dist/esm/index.d.ts +0 -17
- package/node_modules/@turf/great-circle/dist/esm/index.js +0 -273
- package/node_modules/@turf/great-circle/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/great-circle/package.json +0 -78
- package/node_modules/@turf/hex-grid/LICENSE +0 -20
- package/node_modules/@turf/hex-grid/README.md +0 -76
- package/node_modules/@turf/hex-grid/dist/cjs/index.cjs +0 -114
- package/node_modules/@turf/hex-grid/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/hex-grid/dist/cjs/index.d.cts +0 -36
- package/node_modules/@turf/hex-grid/dist/esm/index.d.ts +0 -36
- package/node_modules/@turf/hex-grid/dist/esm/index.js +0 -114
- package/node_modules/@turf/hex-grid/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/hex-grid/package.json +0 -87
- package/node_modules/@turf/interpolate/LICENSE +0 -20
- package/node_modules/@turf/interpolate/README.md +0 -75
- package/node_modules/@turf/interpolate/dist/cjs/index.cjs +0 -78
- package/node_modules/@turf/interpolate/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/interpolate/dist/cjs/index.d.cts +0 -30
- package/node_modules/@turf/interpolate/dist/esm/index.d.ts +0 -30
- package/node_modules/@turf/interpolate/dist/esm/index.js +0 -78
- package/node_modules/@turf/interpolate/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/interpolate/package.json +0 -84
- package/node_modules/@turf/intersect/LICENSE +0 -20
- package/node_modules/@turf/intersect/README.md +0 -76
- package/node_modules/@turf/intersect/dist/cjs/index.cjs +0 -24
- package/node_modules/@turf/intersect/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/intersect/dist/cjs/index.d.cts +0 -42
- package/node_modules/@turf/intersect/dist/esm/index.d.ts +0 -42
- package/node_modules/@turf/intersect/dist/esm/index.js +0 -24
- package/node_modules/@turf/intersect/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/intersect/package.json +0 -74
- package/node_modules/@turf/invariant/LICENSE +0 -20
- package/node_modules/@turf/invariant/README.md +0 -195
- package/node_modules/@turf/invariant/dist/cjs/index.cjs +0 -127
- package/node_modules/@turf/invariant/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/invariant/dist/cjs/index.d.cts +0 -108
- package/node_modules/@turf/invariant/dist/esm/index.d.ts +0 -108
- package/node_modules/@turf/invariant/dist/esm/index.js +0 -127
- package/node_modules/@turf/invariant/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/invariant/package.json +0 -73
- package/node_modules/@turf/isobands/LICENSE +0 -20
- package/node_modules/@turf/isobands/README.md +0 -54
- package/node_modules/@turf/isobands/dist/cjs/index.cjs +0 -513
- package/node_modules/@turf/isobands/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/isobands/dist/cjs/index.d.cts +0 -22
- package/node_modules/@turf/isobands/dist/esm/index.d.ts +0 -22
- package/node_modules/@turf/isobands/dist/esm/index.js +0 -513
- package/node_modules/@turf/isobands/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/isobands/package.json +0 -89
- package/node_modules/@turf/isolines/LICENSE +0 -20
- package/node_modules/@turf/isolines/README.md +0 -76
- package/node_modules/@turf/isolines/dist/cjs/index.cjs +0 -320
- package/node_modules/@turf/isolines/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/isolines/dist/cjs/index.d.cts +0 -38
- package/node_modules/@turf/isolines/dist/esm/index.d.ts +0 -38
- package/node_modules/@turf/isolines/dist/esm/index.js +0 -320
- package/node_modules/@turf/isolines/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/isolines/package.json +0 -86
- package/node_modules/@turf/jsts/README.md +0 -19
- package/node_modules/@turf/jsts/dist/jsts.min.js +0 -2
- package/node_modules/@turf/jsts/dist/jsts.min.js.map +0 -1
- package/node_modules/@turf/jsts/package.json +0 -45
- package/node_modules/@turf/kinks/LICENSE +0 -20
- package/node_modules/@turf/kinks/README.md +0 -66
- package/node_modules/@turf/kinks/dist/cjs/index.cjs +0 -108
- package/node_modules/@turf/kinks/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/kinks/dist/cjs/index.d.cts +0 -27
- package/node_modules/@turf/kinks/dist/esm/index.d.ts +0 -27
- package/node_modules/@turf/kinks/dist/esm/index.js +0 -108
- package/node_modules/@turf/kinks/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/kinks/package.json +0 -72
- package/node_modules/@turf/length/LICENSE +0 -20
- package/node_modules/@turf/length/README.md +0 -63
- package/node_modules/@turf/length/dist/cjs/index.cjs +0 -19
- package/node_modules/@turf/length/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/length/dist/cjs/index.d.cts +0 -24
- package/node_modules/@turf/length/dist/esm/index.d.ts +0 -24
- package/node_modules/@turf/length/dist/esm/index.js +0 -19
- package/node_modules/@turf/length/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/length/package.json +0 -79
- package/node_modules/@turf/line-arc/LICENSE +0 -20
- package/node_modules/@turf/line-arc/README.md +0 -67
- package/node_modules/@turf/line-arc/dist/cjs/index.cjs +0 -43
- package/node_modules/@turf/line-arc/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/line-arc/dist/cjs/index.d.cts +0 -33
- package/node_modules/@turf/line-arc/dist/esm/index.d.ts +0 -33
- package/node_modules/@turf/line-arc/dist/esm/index.js +0 -43
- package/node_modules/@turf/line-arc/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/line-arc/package.json +0 -73
- package/node_modules/@turf/line-chunk/LICENSE +0 -20
- package/node_modules/@turf/line-chunk/README.md +0 -68
- package/node_modules/@turf/line-chunk/dist/cjs/index.cjs +0 -46
- package/node_modules/@turf/line-chunk/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/line-chunk/dist/cjs/index.d.cts +0 -21
- package/node_modules/@turf/line-chunk/dist/esm/index.d.ts +0 -21
- package/node_modules/@turf/line-chunk/dist/esm/index.js +0 -46
- package/node_modules/@turf/line-chunk/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/line-chunk/package.json +0 -81
- package/node_modules/@turf/line-intersect/LICENSE +0 -20
- package/node_modules/@turf/line-intersect/README.md +0 -59
- package/node_modules/@turf/line-intersect/dist/cjs/index.cjs +0 -48
- package/node_modules/@turf/line-intersect/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/line-intersect/dist/cjs/index.d.cts +0 -26
- package/node_modules/@turf/line-intersect/dist/esm/index.d.ts +0 -26
- package/node_modules/@turf/line-intersect/dist/esm/index.js +0 -48
- package/node_modules/@turf/line-intersect/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/line-intersect/package.json +0 -78
- package/node_modules/@turf/line-offset/LICENSE +0 -20
- package/node_modules/@turf/line-offset/README.md +0 -63
- package/node_modules/@turf/line-offset/dist/cjs/index.cjs +0 -128
- package/node_modules/@turf/line-offset/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/line-offset/dist/cjs/index.d.cts +0 -15
- package/node_modules/@turf/line-offset/dist/esm/index.d.ts +0 -15
- package/node_modules/@turf/line-offset/dist/esm/index.js +0 -128
- package/node_modules/@turf/line-offset/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/line-offset/package.json +0 -78
- package/node_modules/@turf/line-overlap/LICENSE +0 -20
- package/node_modules/@turf/line-overlap/README.md +0 -67
- package/node_modules/@turf/line-overlap/dist/cjs/index.cjs +0 -81
- package/node_modules/@turf/line-overlap/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/line-overlap/dist/cjs/index.d.cts +0 -25
- package/node_modules/@turf/line-overlap/dist/esm/index.d.ts +0 -25
- package/node_modules/@turf/line-overlap/dist/esm/index.js +0 -81
- package/node_modules/@turf/line-overlap/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/line-overlap/package.json +0 -83
- package/node_modules/@turf/line-segment/LICENSE +0 -20
- package/node_modules/@turf/line-segment/README.md +0 -52
- package/node_modules/@turf/line-segment/dist/cjs/index.cjs +0 -61
- package/node_modules/@turf/line-segment/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/line-segment/dist/cjs/index.d.cts +0 -19
- package/node_modules/@turf/line-segment/dist/esm/index.d.ts +0 -19
- package/node_modules/@turf/line-segment/dist/esm/index.js +0 -61
- package/node_modules/@turf/line-segment/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/line-segment/package.json +0 -72
- package/node_modules/@turf/line-slice/LICENSE +0 -20
- package/node_modules/@turf/line-slice/README.md +0 -67
- package/node_modules/@turf/line-slice/dist/cjs/index.cjs +0 -29
- package/node_modules/@turf/line-slice/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/line-slice/dist/cjs/index.d.cts +0 -13
- package/node_modules/@turf/line-slice/dist/esm/index.d.ts +0 -13
- package/node_modules/@turf/line-slice/dist/esm/index.js +0 -29
- package/node_modules/@turf/line-slice/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/line-slice/package.json +0 -75
- package/node_modules/@turf/line-slice-along/LICENSE +0 -20
- package/node_modules/@turf/line-slice-along/README.md +0 -66
- package/node_modules/@turf/line-slice-along/dist/cjs/index.cjs +0 -58
- package/node_modules/@turf/line-slice-along/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/line-slice-along/dist/cjs/index.d.cts +0 -16
- package/node_modules/@turf/line-slice-along/dist/esm/index.d.ts +0 -16
- package/node_modules/@turf/line-slice-along/dist/esm/index.js +0 -58
- package/node_modules/@turf/line-slice-along/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/line-slice-along/package.json +0 -72
- package/node_modules/@turf/line-split/LICENSE +0 -20
- package/node_modules/@turf/line-split/README.md +0 -55
- package/node_modules/@turf/line-split/dist/cjs/index.cjs +0 -124
- package/node_modules/@turf/line-split/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/line-split/dist/cjs/index.d.cts +0 -15
- package/node_modules/@turf/line-split/dist/esm/index.d.ts +0 -15
- package/node_modules/@turf/line-split/dist/esm/index.js +0 -124
- package/node_modules/@turf/line-split/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/line-split/package.json +0 -81
- package/node_modules/@turf/line-to-polygon/LICENSE +0 -20
- package/node_modules/@turf/line-to-polygon/README.md +0 -66
- package/node_modules/@turf/line-to-polygon/dist/cjs/index.cjs +0 -82
- package/node_modules/@turf/line-to-polygon/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/line-to-polygon/dist/cjs/index.d.cts +0 -34
- package/node_modules/@turf/line-to-polygon/dist/esm/index.d.ts +0 -34
- package/node_modules/@turf/line-to-polygon/dist/esm/index.js +0 -82
- package/node_modules/@turf/line-to-polygon/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/line-to-polygon/package.json +0 -79
- package/node_modules/@turf/mask/LICENSE +0 -20
- package/node_modules/@turf/mask/README.md +0 -62
- package/node_modules/@turf/mask/dist/cjs/index.cjs +0 -70
- package/node_modules/@turf/mask/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/mask/dist/cjs/index.d.cts +0 -26
- package/node_modules/@turf/mask/dist/esm/index.d.ts +0 -26
- package/node_modules/@turf/mask/dist/esm/index.js +0 -70
- package/node_modules/@turf/mask/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/mask/package.json +0 -74
- package/node_modules/@turf/midpoint/LICENSE +0 -20
- package/node_modules/@turf/midpoint/README.md +0 -55
- package/node_modules/@turf/midpoint/dist/cjs/index.cjs +0 -16
- package/node_modules/@turf/midpoint/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/midpoint/dist/cjs/index.d.cts +0 -25
- package/node_modules/@turf/midpoint/dist/esm/index.d.ts +0 -25
- package/node_modules/@turf/midpoint/dist/esm/index.js +0 -16
- package/node_modules/@turf/midpoint/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/midpoint/package.json +0 -73
- package/node_modules/@turf/moran-index/LICENSE +0 -20
- package/node_modules/@turf/moran-index/README.md +0 -99
- package/node_modules/@turf/moran-index/dist/cjs/index.cjs +0 -76
- package/node_modules/@turf/moran-index/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/moran-index/dist/cjs/index.d.cts +0 -67
- package/node_modules/@turf/moran-index/dist/esm/index.d.ts +0 -67
- package/node_modules/@turf/moran-index/dist/esm/index.js +0 -76
- package/node_modules/@turf/moran-index/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/moran-index/package.json +0 -74
- package/node_modules/@turf/nearest-neighbor-analysis/LICENSE +0 -20
- package/node_modules/@turf/nearest-neighbor-analysis/README.md +0 -129
- package/node_modules/@turf/nearest-neighbor-analysis/dist/cjs/index.cjs +0 -57
- package/node_modules/@turf/nearest-neighbor-analysis/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/nearest-neighbor-analysis/dist/cjs/index.d.cts +0 -94
- package/node_modules/@turf/nearest-neighbor-analysis/dist/esm/index.d.ts +0 -94
- package/node_modules/@turf/nearest-neighbor-analysis/dist/esm/index.js +0 -57
- package/node_modules/@turf/nearest-neighbor-analysis/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/nearest-neighbor-analysis/package.json +0 -80
- package/node_modules/@turf/nearest-point/LICENSE +0 -20
- package/node_modules/@turf/nearest-point/README.md +0 -69
- package/node_modules/@turf/nearest-point/dist/cjs/index.cjs +0 -50
- package/node_modules/@turf/nearest-point/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/nearest-point/dist/cjs/index.d.cts +0 -40
- package/node_modules/@turf/nearest-point/dist/esm/index.d.ts +0 -40
- package/node_modules/@turf/nearest-point/dist/esm/index.js +0 -50
- package/node_modules/@turf/nearest-point/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/nearest-point/package.json +0 -77
- package/node_modules/@turf/nearest-point-on-line/LICENSE +0 -20
- package/node_modules/@turf/nearest-point-on-line/README.md +0 -79
- package/node_modules/@turf/nearest-point-on-line/dist/cjs/index.cjs +0 -155
- package/node_modules/@turf/nearest-point-on-line/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/nearest-point-on-line/dist/cjs/index.d.cts +0 -44
- package/node_modules/@turf/nearest-point-on-line/dist/esm/index.d.ts +0 -44
- package/node_modules/@turf/nearest-point-on-line/dist/esm/index.js +0 -155
- package/node_modules/@turf/nearest-point-on-line/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/nearest-point-on-line/package.json +0 -77
- package/node_modules/@turf/nearest-point-to-line/LICENSE +0 -20
- package/node_modules/@turf/nearest-point-to-line/README.md +0 -70
- package/node_modules/@turf/nearest-point-to-line/dist/cjs/index.cjs +0 -74
- package/node_modules/@turf/nearest-point-to-line/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/nearest-point-to-line/dist/cjs/index.d.cts +0 -35
- package/node_modules/@turf/nearest-point-to-line/dist/esm/index.d.ts +0 -35
- package/node_modules/@turf/nearest-point-to-line/dist/esm/index.js +0 -74
- package/node_modules/@turf/nearest-point-to-line/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/nearest-point-to-line/package.json +0 -82
- package/node_modules/@turf/planepoint/LICENSE +0 -20
- package/node_modules/@turf/planepoint/README.md +0 -71
- package/node_modules/@turf/planepoint/dist/cjs/index.cjs +0 -33
- package/node_modules/@turf/planepoint/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/planepoint/dist/cjs/index.d.cts +0 -39
- package/node_modules/@turf/planepoint/dist/esm/index.d.ts +0 -39
- package/node_modules/@turf/planepoint/dist/esm/index.js +0 -33
- package/node_modules/@turf/planepoint/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/planepoint/package.json +0 -72
- package/node_modules/@turf/point-grid/LICENSE +0 -20
- package/node_modules/@turf/point-grid/README.md +0 -70
- package/node_modules/@turf/point-grid/dist/cjs/index.cjs +0 -43
- package/node_modules/@turf/point-grid/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/point-grid/dist/cjs/index.d.cts +0 -31
- package/node_modules/@turf/point-grid/dist/esm/index.d.ts +0 -31
- package/node_modules/@turf/point-grid/dist/esm/index.js +0 -43
- package/node_modules/@turf/point-grid/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/point-grid/package.json +0 -81
- package/node_modules/@turf/point-on-feature/LICENSE +0 -20
- package/node_modules/@turf/point-on-feature/README.md +0 -66
- package/node_modules/@turf/point-on-feature/dist/cjs/index.cjs +0 -105
- package/node_modules/@turf/point-on-feature/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/point-on-feature/dist/cjs/index.d.cts +0 -32
- package/node_modules/@turf/point-on-feature/dist/esm/index.d.ts +0 -32
- package/node_modules/@turf/point-on-feature/dist/esm/index.js +0 -105
- package/node_modules/@turf/point-on-feature/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/point-on-feature/package.json +0 -78
- package/node_modules/@turf/point-to-line-distance/LICENSE +0 -20
- package/node_modules/@turf/point-to-line-distance/README.md +0 -66
- package/node_modules/@turf/point-to-line-distance/dist/cjs/index.cjs +0 -79
- package/node_modules/@turf/point-to-line-distance/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/point-to-line-distance/dist/cjs/index.d.cts +0 -28
- package/node_modules/@turf/point-to-line-distance/dist/esm/index.d.ts +0 -28
- package/node_modules/@turf/point-to-line-distance/dist/esm/index.js +0 -79
- package/node_modules/@turf/point-to-line-distance/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/point-to-line-distance/package.json +0 -83
- package/node_modules/@turf/point-to-polygon-distance/LICENSE +0 -20
- package/node_modules/@turf/point-to-polygon-distance/README.md +0 -61
- package/node_modules/@turf/point-to-polygon-distance/dist/cjs/index.cjs +0 -49
- package/node_modules/@turf/point-to-polygon-distance/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/point-to-polygon-distance/dist/cjs/index.d.cts +0 -23
- package/node_modules/@turf/point-to-polygon-distance/dist/esm/index.d.ts +0 -23
- package/node_modules/@turf/point-to-polygon-distance/dist/esm/index.js +0 -49
- package/node_modules/@turf/point-to-polygon-distance/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/point-to-polygon-distance/package.json +0 -80
- package/node_modules/@turf/points-within-polygon/LICENSE +0 -20
- package/node_modules/@turf/points-within-polygon/README.md +0 -79
- package/node_modules/@turf/points-within-polygon/dist/cjs/index.cjs +0 -44
- package/node_modules/@turf/points-within-polygon/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/points-within-polygon/dist/cjs/index.d.cts +0 -40
- package/node_modules/@turf/points-within-polygon/dist/esm/index.d.ts +0 -40
- package/node_modules/@turf/points-within-polygon/dist/esm/index.js +0 -44
- package/node_modules/@turf/points-within-polygon/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/points-within-polygon/package.json +0 -73
- package/node_modules/@turf/polygon-smooth/LICENSE +0 -20
- package/node_modules/@turf/polygon-smooth/README.md +0 -62
- package/node_modules/@turf/polygon-smooth/dist/cjs/index.cjs +0 -114
- package/node_modules/@turf/polygon-smooth/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/polygon-smooth/dist/cjs/index.d.cts +0 -24
- package/node_modules/@turf/polygon-smooth/dist/esm/index.d.ts +0 -24
- package/node_modules/@turf/polygon-smooth/dist/esm/index.js +0 -114
- package/node_modules/@turf/polygon-smooth/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/polygon-smooth/package.json +0 -76
- package/node_modules/@turf/polygon-tangents/LICENSE +0 -20
- package/node_modules/@turf/polygon-tangents/README.md +0 -58
- package/node_modules/@turf/polygon-tangents/dist/cjs/index.cjs +0 -108
- package/node_modules/@turf/polygon-tangents/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/polygon-tangents/dist/cjs/index.d.cts +0 -22
- package/node_modules/@turf/polygon-tangents/dist/esm/index.d.ts +0 -22
- package/node_modules/@turf/polygon-tangents/dist/esm/index.js +0 -108
- package/node_modules/@turf/polygon-tangents/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/polygon-tangents/package.json +0 -82
- package/node_modules/@turf/polygon-to-line/LICENSE +0 -20
- package/node_modules/@turf/polygon-to-line/README.md +0 -60
- package/node_modules/@turf/polygon-to-line/dist/cjs/index.cjs +0 -48
- package/node_modules/@turf/polygon-to-line/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/polygon-to-line/dist/cjs/index.d.cts +0 -40
- package/node_modules/@turf/polygon-to-line/dist/esm/index.d.ts +0 -40
- package/node_modules/@turf/polygon-to-line/dist/esm/index.js +0 -48
- package/node_modules/@turf/polygon-to-line/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/polygon-to-line/package.json +0 -73
- package/node_modules/@turf/polygonize/LICENSE +0 -20
- package/node_modules/@turf/polygonize/README.md +0 -61
- package/node_modules/@turf/polygonize/dist/cjs/index.cjs +0 -636
- package/node_modules/@turf/polygonize/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/polygonize/dist/cjs/index.d.cts +0 -23
- package/node_modules/@turf/polygonize/dist/esm/index.d.ts +0 -23
- package/node_modules/@turf/polygonize/dist/esm/index.js +0 -636
- package/node_modules/@turf/polygonize/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/polygonize/package.json +0 -80
- package/node_modules/@turf/projection/LICENSE +0 -20
- package/node_modules/@turf/projection/README.md +0 -77
- package/node_modules/@turf/projection/dist/cjs/index.cjs +0 -55
- package/node_modules/@turf/projection/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/projection/dist/cjs/index.d.cts +0 -41
- package/node_modules/@turf/projection/dist/esm/index.d.ts +0 -41
- package/node_modules/@turf/projection/dist/esm/index.js +0 -55
- package/node_modules/@turf/projection/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/projection/package.json +0 -88
- package/node_modules/@turf/quadrat-analysis/LICENSE +0 -20
- package/node_modules/@turf/quadrat-analysis/README.md +0 -114
- package/node_modules/@turf/quadrat-analysis/dist/cjs/index.cjs +0 -114
- package/node_modules/@turf/quadrat-analysis/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/quadrat-analysis/dist/cjs/index.d.cts +0 -55
- package/node_modules/@turf/quadrat-analysis/dist/esm/index.d.ts +0 -55
- package/node_modules/@turf/quadrat-analysis/dist/esm/index.js +0 -114
- package/node_modules/@turf/quadrat-analysis/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/quadrat-analysis/package.json +0 -81
- package/node_modules/@turf/random/LICENSE +0 -20
- package/node_modules/@turf/random/README.md +0 -138
- package/node_modules/@turf/random/dist/cjs/index.cjs +0 -158
- package/node_modules/@turf/random/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/random/dist/cjs/index.d.cts +0 -79
- package/node_modules/@turf/random/dist/esm/index.d.ts +0 -79
- package/node_modules/@turf/random/dist/esm/index.js +0 -158
- package/node_modules/@turf/random/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/random/package.json +0 -68
- package/node_modules/@turf/rectangle-grid/LICENSE +0 -20
- package/node_modules/@turf/rectangle-grid/README.md +0 -74
- package/node_modules/@turf/rectangle-grid/dist/cjs/index.cjs +0 -56
- package/node_modules/@turf/rectangle-grid/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/rectangle-grid/dist/cjs/index.d.cts +0 -37
- package/node_modules/@turf/rectangle-grid/dist/esm/index.d.ts +0 -37
- package/node_modules/@turf/rectangle-grid/dist/esm/index.js +0 -56
- package/node_modules/@turf/rectangle-grid/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/rectangle-grid/package.json +0 -79
- package/node_modules/@turf/rewind/LICENSE +0 -20
- package/node_modules/@turf/rewind/README.md +0 -60
- package/node_modules/@turf/rewind/dist/cjs/index.cjs +0 -86
- package/node_modules/@turf/rewind/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/rewind/dist/cjs/index.d.cts +0 -26
- package/node_modules/@turf/rewind/dist/esm/index.d.ts +0 -26
- package/node_modules/@turf/rewind/dist/esm/index.js +0 -86
- package/node_modules/@turf/rewind/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/rewind/package.json +0 -82
- package/node_modules/@turf/rhumb-bearing/LICENSE +0 -20
- package/node_modules/@turf/rhumb-bearing/README.md +0 -62
- package/node_modules/@turf/rhumb-bearing/dist/cjs/index.cjs +0 -35
- package/node_modules/@turf/rhumb-bearing/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/rhumb-bearing/dist/cjs/index.d.cts +0 -28
- package/node_modules/@turf/rhumb-bearing/dist/esm/index.d.ts +0 -28
- package/node_modules/@turf/rhumb-bearing/dist/esm/index.js +0 -35
- package/node_modules/@turf/rhumb-bearing/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/rhumb-bearing/package.json +0 -78
- package/node_modules/@turf/rhumb-destination/LICENSE +0 -20
- package/node_modules/@turf/rhumb-destination/README.md +0 -67
- package/node_modules/@turf/rhumb-destination/dist/cjs/index.cjs +0 -53
- package/node_modules/@turf/rhumb-destination/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/rhumb-destination/dist/cjs/index.d.cts +0 -33
- package/node_modules/@turf/rhumb-destination/dist/esm/index.d.ts +0 -33
- package/node_modules/@turf/rhumb-destination/dist/esm/index.js +0 -53
- package/node_modules/@turf/rhumb-destination/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/rhumb-destination/package.json +0 -83
- package/node_modules/@turf/rhumb-distance/LICENSE +0 -20
- package/node_modules/@turf/rhumb-distance/README.md +0 -62
- package/node_modules/@turf/rhumb-distance/dist/cjs/index.cjs +0 -37
- package/node_modules/@turf/rhumb-distance/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/rhumb-distance/dist/cjs/index.d.cts +0 -28
- package/node_modules/@turf/rhumb-distance/dist/esm/index.d.ts +0 -28
- package/node_modules/@turf/rhumb-distance/dist/esm/index.js +0 -37
- package/node_modules/@turf/rhumb-distance/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/rhumb-distance/package.json +0 -81
- package/node_modules/@turf/sample/LICENSE +0 -20
- package/node_modules/@turf/sample/README.md +0 -56
- package/node_modules/@turf/sample/dist/cjs/index.cjs +0 -25
- package/node_modules/@turf/sample/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/sample/dist/cjs/index.d.cts +0 -24
- package/node_modules/@turf/sample/dist/esm/index.d.ts +0 -24
- package/node_modules/@turf/sample/dist/esm/index.js +0 -25
- package/node_modules/@turf/sample/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/sample/package.json +0 -69
- package/node_modules/@turf/sector/LICENSE +0 -20
- package/node_modules/@turf/sector/README.md +0 -70
- package/node_modules/@turf/sector/dist/cjs/index.cjs +0 -42
- package/node_modules/@turf/sector/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/sector/dist/cjs/index.d.cts +0 -35
- package/node_modules/@turf/sector/dist/esm/index.d.ts +0 -35
- package/node_modules/@turf/sector/dist/esm/index.js +0 -42
- package/node_modules/@turf/sector/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/sector/package.json +0 -75
- package/node_modules/@turf/shortest-path/LICENSE +0 -20
- package/node_modules/@turf/shortest-path/README.md +0 -73
- package/node_modules/@turf/shortest-path/dist/cjs/index.cjs +0 -382
- package/node_modules/@turf/shortest-path/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/shortest-path/dist/cjs/index.d.cts +0 -34
- package/node_modules/@turf/shortest-path/dist/esm/index.d.ts +0 -34
- package/node_modules/@turf/shortest-path/dist/esm/index.js +0 -382
- package/node_modules/@turf/shortest-path/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/shortest-path/package.json +0 -85
- package/node_modules/@turf/simplify/LICENSE +0 -20
- package/node_modules/@turf/simplify/README.md +0 -81
- package/node_modules/@turf/simplify/dist/cjs/index.cjs +0 -150
- package/node_modules/@turf/simplify/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/simplify/dist/cjs/index.d.cts +0 -49
- package/node_modules/@turf/simplify/dist/esm/index.d.ts +0 -49
- package/node_modules/@turf/simplify/dist/esm/index.js +0 -150
- package/node_modules/@turf/simplify/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/simplify/package.json +0 -82
- package/node_modules/@turf/square/LICENSE +0 -20
- package/node_modules/@turf/square/README.md +0 -46
- package/node_modules/@turf/square/dist/cjs/index.cjs +0 -33
- package/node_modules/@turf/square/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/square/dist/cjs/index.d.cts +0 -19
- package/node_modules/@turf/square/dist/esm/index.d.ts +0 -19
- package/node_modules/@turf/square/dist/esm/index.js +0 -33
- package/node_modules/@turf/square/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/square/package.json +0 -70
- package/node_modules/@turf/square-grid/LICENSE +0 -20
- package/node_modules/@turf/square-grid/README.md +0 -72
- package/node_modules/@turf/square-grid/dist/cjs/index.cjs +0 -11
- package/node_modules/@turf/square-grid/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/square-grid/dist/cjs/index.d.cts +0 -35
- package/node_modules/@turf/square-grid/dist/esm/index.d.ts +0 -35
- package/node_modules/@turf/square-grid/dist/esm/index.js +0 -11
- package/node_modules/@turf/square-grid/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/square-grid/package.json +0 -74
- package/node_modules/@turf/standard-deviational-ellipse/LICENSE +0 -20
- package/node_modules/@turf/standard-deviational-ellipse/README.md +0 -88
- package/node_modules/@turf/standard-deviational-ellipse/dist/cjs/index.cjs +0 -87
- package/node_modules/@turf/standard-deviational-ellipse/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/standard-deviational-ellipse/dist/cjs/index.d.cts +0 -61
- package/node_modules/@turf/standard-deviational-ellipse/dist/esm/index.d.ts +0 -61
- package/node_modules/@turf/standard-deviational-ellipse/dist/esm/index.js +0 -87
- package/node_modules/@turf/standard-deviational-ellipse/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/standard-deviational-ellipse/package.json +0 -82
- package/node_modules/@turf/tag/LICENSE +0 -20
- package/node_modules/@turf/tag/README.md +0 -75
- package/node_modules/@turf/tag/dist/cjs/index.cjs +0 -26
- package/node_modules/@turf/tag/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/tag/dist/cjs/index.d.cts +0 -40
- package/node_modules/@turf/tag/dist/esm/index.d.ts +0 -40
- package/node_modules/@turf/tag/dist/esm/index.js +0 -26
- package/node_modules/@turf/tag/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/tag/package.json +0 -77
- package/node_modules/@turf/tesselate/LICENSE +0 -20
- package/node_modules/@turf/tesselate/README.md +0 -54
- package/node_modules/@turf/tesselate/dist/cjs/index.cjs +0 -61
- package/node_modules/@turf/tesselate/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/tesselate/dist/cjs/index.d.cts +0 -19
- package/node_modules/@turf/tesselate/dist/esm/index.d.ts +0 -19
- package/node_modules/@turf/tesselate/dist/esm/index.js +0 -61
- package/node_modules/@turf/tesselate/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/tesselate/package.json +0 -78
- package/node_modules/@turf/tin/LICENSE +0 -20
- package/node_modules/@turf/tin/README.md +0 -72
- package/node_modules/@turf/tin/dist/cjs/index.cjs +0 -192
- package/node_modules/@turf/tin/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/tin/dist/cjs/index.d.cts +0 -47
- package/node_modules/@turf/tin/dist/esm/index.d.ts +0 -47
- package/node_modules/@turf/tin/dist/esm/index.js +0 -192
- package/node_modules/@turf/tin/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/tin/package.json +0 -69
- package/node_modules/@turf/transform-rotate/LICENSE +0 -20
- package/node_modules/@turf/transform-rotate/README.md +0 -60
- package/node_modules/@turf/transform-rotate/dist/cjs/index.cjs +0 -38
- package/node_modules/@turf/transform-rotate/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/transform-rotate/dist/cjs/index.d.cts +0 -28
- package/node_modules/@turf/transform-rotate/dist/esm/index.d.ts +0 -28
- package/node_modules/@turf/transform-rotate/dist/esm/index.js +0 -38
- package/node_modules/@turf/transform-rotate/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/transform-rotate/package.json +0 -84
- package/node_modules/@turf/transform-scale/LICENSE +0 -20
- package/node_modules/@turf/transform-scale/README.md +0 -64
- package/node_modules/@turf/transform-scale/dist/cjs/index.cjs +0 -109
- package/node_modules/@turf/transform-scale/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/transform-scale/dist/cjs/index.d.cts +0 -30
- package/node_modules/@turf/transform-scale/dist/esm/index.d.ts +0 -30
- package/node_modules/@turf/transform-scale/dist/esm/index.js +0 -109
- package/node_modules/@turf/transform-scale/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/transform-scale/package.json +0 -92
- package/node_modules/@turf/transform-translate/LICENSE +0 -20
- package/node_modules/@turf/transform-translate/README.md +0 -67
- package/node_modules/@turf/transform-translate/dist/cjs/index.cjs +0 -43
- package/node_modules/@turf/transform-translate/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/transform-translate/dist/cjs/index.d.cts +0 -34
- package/node_modules/@turf/transform-translate/dist/esm/index.d.ts +0 -34
- package/node_modules/@turf/transform-translate/dist/esm/index.js +0 -43
- package/node_modules/@turf/transform-translate/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/transform-translate/package.json +0 -83
- package/node_modules/@turf/triangle-grid/LICENSE +0 -20
- package/node_modules/@turf/triangle-grid/README.md +0 -66
- package/node_modules/@turf/triangle-grid/dist/cjs/index.cjs +0 -134
- package/node_modules/@turf/triangle-grid/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/triangle-grid/dist/cjs/index.d.cts +0 -31
- package/node_modules/@turf/triangle-grid/dist/esm/index.d.ts +0 -31
- package/node_modules/@turf/triangle-grid/dist/esm/index.js +0 -134
- package/node_modules/@turf/triangle-grid/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/triangle-grid/package.json +0 -78
- package/node_modules/@turf/truncate/LICENSE +0 -20
- package/node_modules/@turf/truncate/README.md +0 -62
- package/node_modules/@turf/truncate/dist/cjs/index.cjs +0 -37
- package/node_modules/@turf/truncate/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/truncate/dist/cjs/index.d.cts +0 -32
- package/node_modules/@turf/truncate/dist/esm/index.d.ts +0 -32
- package/node_modules/@turf/truncate/dist/esm/index.js +0 -37
- package/node_modules/@turf/truncate/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/truncate/package.json +0 -76
- package/node_modules/@turf/turf/LICENSE +0 -20
- package/node_modules/@turf/turf/README.md +0 -31
- package/node_modules/@turf/turf/dist/cjs/index.cjs +0 -233
- package/node_modules/@turf/turf/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/turf/dist/cjs/index.d.cts +0 -125
- package/node_modules/@turf/turf/dist/esm/index.d.ts +0 -125
- package/node_modules/@turf/turf/dist/esm/index.js +0 -233
- package/node_modules/@turf/turf/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/turf/package.json +0 -212
- package/node_modules/@turf/turf/turf.min.js +0 -28
- package/node_modules/@turf/union/LICENSE +0 -20
- package/node_modules/@turf/union/README.md +0 -88
- package/node_modules/@turf/union/dist/cjs/index.cjs +0 -23
- package/node_modules/@turf/union/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/union/dist/cjs/index.d.cts +0 -55
- package/node_modules/@turf/union/dist/esm/index.d.ts +0 -55
- package/node_modules/@turf/union/dist/esm/index.js +0 -23
- package/node_modules/@turf/union/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/union/package.json +0 -73
- package/node_modules/@turf/unkink-polygon/LICENSE +0 -20
- package/node_modules/@turf/unkink-polygon/README.md +0 -57
- package/node_modules/@turf/unkink-polygon/dist/cjs/index.cjs +0 -579
- package/node_modules/@turf/unkink-polygon/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/unkink-polygon/dist/cjs/index.d.cts +0 -22
- package/node_modules/@turf/unkink-polygon/dist/esm/index.d.ts +0 -22
- package/node_modules/@turf/unkink-polygon/dist/esm/index.js +0 -579
- package/node_modules/@turf/unkink-polygon/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/unkink-polygon/package.json +0 -78
- package/node_modules/@turf/voronoi/LICENSE +0 -20
- package/node_modules/@turf/voronoi/README.md +0 -62
- package/node_modules/@turf/voronoi/dist/cjs/index.cjs +0 -34
- package/node_modules/@turf/voronoi/dist/cjs/index.cjs.map +0 -1
- package/node_modules/@turf/voronoi/dist/cjs/index.d.cts +0 -28
- package/node_modules/@turf/voronoi/dist/esm/index.d.ts +0 -28
- package/node_modules/@turf/voronoi/dist/esm/index.js +0 -34
- package/node_modules/@turf/voronoi/dist/esm/index.js.map +0 -1
- package/node_modules/@turf/voronoi/package.json +0 -83
- package/node_modules/@types/d3-voronoi/LICENSE +0 -21
- package/node_modules/@types/d3-voronoi/README.md +0 -15
- package/node_modules/@types/d3-voronoi/index.d.ts +0 -298
- package/node_modules/@types/d3-voronoi/package.json +0 -40
- package/node_modules/bignumber.js/CHANGELOG.md +0 -381
- package/node_modules/bignumber.js/LICENCE.md +0 -26
- package/node_modules/bignumber.js/README.md +0 -289
- package/node_modules/bignumber.js/bignumber.d.mts +0 -6
- package/node_modules/bignumber.js/bignumber.d.ts +0 -5
- package/node_modules/bignumber.js/bignumber.js +0 -2922
- package/node_modules/bignumber.js/bignumber.mjs +0 -2907
- package/node_modules/bignumber.js/doc/API.html +0 -2249
- package/node_modules/bignumber.js/package.json +0 -60
- package/node_modules/bignumber.js/types.d.ts +0 -1821
- package/node_modules/commander/CHANGELOG.md +0 -419
- package/node_modules/commander/LICENSE +0 -22
- package/node_modules/commander/Readme.md +0 -428
- package/node_modules/commander/index.js +0 -1224
- package/node_modules/commander/package.json +0 -38
- package/node_modules/commander/typings/index.d.ts +0 -310
- package/node_modules/concaveman/.travis.yml +0 -4
- package/node_modules/concaveman/LICENSE +0 -15
- package/node_modules/concaveman/README.md +0 -52
- package/node_modules/concaveman/index.js +0 -383
- package/node_modules/concaveman/package.json +0 -38
- package/node_modules/d3-array/.eslintrc.json +0 -15
- package/node_modules/d3-array/LICENSE +0 -27
- package/node_modules/d3-array/README.md +0 -382
- package/node_modules/d3-array/dist/d3-array.js +0 -590
- package/node_modules/d3-array/dist/d3-array.min.js +0 -2
- package/node_modules/d3-array/package.json +0 -42
- package/node_modules/d3-array/rollup.config.js +0 -36
- package/node_modules/d3-array/src/array.js +0 -4
- package/node_modules/d3-array/src/ascending.js +0 -3
- package/node_modules/d3-array/src/bisect.js +0 -7
- package/node_modules/d3-array/src/bisector.js +0 -33
- package/node_modules/d3-array/src/constant.js +0 -5
- package/node_modules/d3-array/src/cross.js +0 -21
- package/node_modules/d3-array/src/descending.js +0 -3
- package/node_modules/d3-array/src/deviation.js +0 -6
- package/node_modules/d3-array/src/extent.js +0 -37
- package/node_modules/d3-array/src/histogram.js +0 -75
- package/node_modules/d3-array/src/identity.js +0 -3
- package/node_modules/d3-array/src/index.js +0 -27
- package/node_modules/d3-array/src/max.js +0 -34
- package/node_modules/d3-array/src/mean.js +0 -25
- package/node_modules/d3-array/src/median.js +0 -28
- package/node_modules/d3-array/src/merge.js +0 -21
- package/node_modules/d3-array/src/min.js +0 -34
- package/node_modules/d3-array/src/number.js +0 -3
- package/node_modules/d3-array/src/pairs.js +0 -10
- package/node_modules/d3-array/src/permute.js +0 -5
- package/node_modules/d3-array/src/quantile.js +0 -14
- package/node_modules/d3-array/src/range.js +0 -13
- package/node_modules/d3-array/src/scan.js +0 -20
- package/node_modules/d3-array/src/shuffle.js +0 -14
- package/node_modules/d3-array/src/sum.js +0 -20
- package/node_modules/d3-array/src/threshold/freedmanDiaconis.js +0 -9
- package/node_modules/d3-array/src/threshold/scott.js +0 -5
- package/node_modules/d3-array/src/threshold/sturges.js +0 -3
- package/node_modules/d3-array/src/ticks.js +0 -51
- package/node_modules/d3-array/src/transpose.js +0 -15
- package/node_modules/d3-array/src/variance.js +0 -33
- package/node_modules/d3-array/src/zip.js +0 -5
- package/node_modules/d3-geo/.eslintrc +0 -13
- package/node_modules/d3-geo/LICENSE +0 -48
- package/node_modules/d3-geo/README.md +0 -619
- package/node_modules/d3-geo/build/d3-geo.js +0 -2987
- package/node_modules/d3-geo/build/d3-geo.min.js +0 -2
- package/node_modules/d3-geo/img/albers.png +0 -0
- package/node_modules/d3-geo/img/albersUsa-parameters.png +0 -0
- package/node_modules/d3-geo/img/albersUsa.png +0 -0
- package/node_modules/d3-geo/img/azimuthalEqualArea.png +0 -0
- package/node_modules/d3-geo/img/azimuthalEquidistant.png +0 -0
- package/node_modules/d3-geo/img/conicConformal.png +0 -0
- package/node_modules/d3-geo/img/conicEqualArea.png +0 -0
- package/node_modules/d3-geo/img/conicEquidistant.png +0 -0
- package/node_modules/d3-geo/img/equirectangular.png +0 -0
- package/node_modules/d3-geo/img/gnomonic.png +0 -0
- package/node_modules/d3-geo/img/graticule.png +0 -0
- package/node_modules/d3-geo/img/mercator.png +0 -0
- package/node_modules/d3-geo/img/naturalEarth1.png +0 -0
- package/node_modules/d3-geo/img/orthographic.png +0 -0
- package/node_modules/d3-geo/img/stereographic.png +0 -0
- package/node_modules/d3-geo/img/transverseMercator.png +0 -0
- package/node_modules/d3-geo/index.js +0 -30
- package/node_modules/d3-geo/package.json +0 -44
- package/node_modules/d3-geo/rollup.config.js +0 -15
- package/node_modules/d3-geo/src/adder.js +0 -40
- package/node_modules/d3-geo/src/area.js +0 -74
- package/node_modules/d3-geo/src/bounds.js +0 -176
- package/node_modules/d3-geo/src/cartesian.js +0 -33
- package/node_modules/d3-geo/src/centroid.js +0 -140
- package/node_modules/d3-geo/src/circle.js +0 -72
- package/node_modules/d3-geo/src/clip/antimeridian.js +0 -92
- package/node_modules/d3-geo/src/clip/buffer.js +0 -24
- package/node_modules/d3-geo/src/clip/circle.js +0 -181
- package/node_modules/d3-geo/src/clip/extent.js +0 -187
- package/node_modules/d3-geo/src/clip/index.js +0 -135
- package/node_modules/d3-geo/src/clip/line.js +0 -59
- package/node_modules/d3-geo/src/clip/polygon.js +0 -101
- package/node_modules/d3-geo/src/compose.js +0 -12
- package/node_modules/d3-geo/src/constant.js +0 -5
- package/node_modules/d3-geo/src/contains.js +0 -84
- package/node_modules/d3-geo/src/distance.js +0 -10
- package/node_modules/d3-geo/src/graticule.js +0 -105
- package/node_modules/d3-geo/src/identity.js +0 -3
- package/node_modules/d3-geo/src/interpolate.js +0 -36
- package/node_modules/d3-geo/src/length.js +0 -53
- package/node_modules/d3-geo/src/math.js +0 -35
- package/node_modules/d3-geo/src/noop.js +0 -1
- package/node_modules/d3-geo/src/path/area.js +0 -50
- package/node_modules/d3-geo/src/path/bounds.js +0 -28
- package/node_modules/d3-geo/src/path/centroid.js +0 -100
- package/node_modules/d3-geo/src/path/context.js +0 -45
- package/node_modules/d3-geo/src/path/index.js +0 -61
- package/node_modules/d3-geo/src/path/measure.js +0 -45
- package/node_modules/d3-geo/src/path/string.js +0 -59
- package/node_modules/d3-geo/src/pointEqual.js +0 -5
- package/node_modules/d3-geo/src/polygonContains.js +0 -68
- package/node_modules/d3-geo/src/projection/albers.js +0 -10
- package/node_modules/d3-geo/src/projection/albersUsa.js +0 -103
- package/node_modules/d3-geo/src/projection/azimuthal.js +0 -26
- package/node_modules/d3-geo/src/projection/azimuthalEqualArea.js +0 -17
- package/node_modules/d3-geo/src/projection/azimuthalEquidistant.js +0 -17
- package/node_modules/d3-geo/src/projection/conic.js +0 -15
- package/node_modules/d3-geo/src/projection/conicConformal.js +0 -35
- package/node_modules/d3-geo/src/projection/conicEqualArea.js +0 -30
- package/node_modules/d3-geo/src/projection/conicEquidistant.js +0 -29
- package/node_modules/d3-geo/src/projection/cylindricalEqualArea.js +0 -15
- package/node_modules/d3-geo/src/projection/equirectangular.js +0 -12
- package/node_modules/d3-geo/src/projection/fit.js +0 -31
- package/node_modules/d3-geo/src/projection/gnomonic.js +0 -16
- package/node_modules/d3-geo/src/projection/identity.js +0 -52
- package/node_modules/d3-geo/src/projection/index.js +0 -106
- package/node_modules/d3-geo/src/projection/mercator.js +0 -52
- package/node_modules/d3-geo/src/projection/naturalEarth1.js +0 -28
- package/node_modules/d3-geo/src/projection/orthographic.js +0 -15
- package/node_modules/d3-geo/src/projection/resample.js +0 -102
- package/node_modules/d3-geo/src/projection/stereographic.js +0 -18
- package/node_modules/d3-geo/src/projection/transverseMercator.js +0 -27
- package/node_modules/d3-geo/src/rotation.js +0 -76
- package/node_modules/d3-geo/src/stream.js +0 -69
- package/node_modules/d3-geo/src/transform.js +0 -26
- package/node_modules/d3-voronoi/.eslintrc +0 -9
- package/node_modules/d3-voronoi/.npmignore +0 -3
- package/node_modules/d3-voronoi/LICENSE +0 -50
- package/node_modules/d3-voronoi/README.md +0 -160
- package/node_modules/d3-voronoi/build/d3-voronoi.js +0 -999
- package/node_modules/d3-voronoi/build/d3-voronoi.min.js +0 -2
- package/node_modules/d3-voronoi/graph.png +0 -0
- package/node_modules/d3-voronoi/index.js +0 -1
- package/node_modules/d3-voronoi/package.json +0 -37
- package/node_modules/d3-voronoi/src/Beach.js +0 -193
- package/node_modules/d3-voronoi/src/Cell.js +0 -126
- package/node_modules/d3-voronoi/src/Circle.js +0 -78
- package/node_modules/d3-voronoi/src/Diagram.js +0 -142
- package/node_modules/d3-voronoi/src/Edge.js +0 -168
- package/node_modules/d3-voronoi/src/RedBlackTree.js +0 -237
- package/node_modules/d3-voronoi/src/constant.js +0 -5
- package/node_modules/d3-voronoi/src/point.js +0 -7
- package/node_modules/d3-voronoi/src/voronoi.js +0 -48
- package/node_modules/earcut/LICENSE +0 -15
- package/node_modules/earcut/README.md +0 -255
- package/node_modules/earcut/dist/earcut.dev.js +0 -687
- package/node_modules/earcut/dist/earcut.min.js +0 -1
- package/node_modules/earcut/package.json +0 -43
- package/node_modules/earcut/src/earcut.js +0 -681
- package/node_modules/fast-deep-equal/LICENSE +0 -21
- package/node_modules/fast-deep-equal/README.md +0 -96
- package/node_modules/fast-deep-equal/es6/index.d.ts +0 -2
- package/node_modules/fast-deep-equal/es6/index.js +0 -72
- package/node_modules/fast-deep-equal/es6/react.d.ts +0 -2
- package/node_modules/fast-deep-equal/es6/react.js +0 -79
- package/node_modules/fast-deep-equal/index.d.ts +0 -4
- package/node_modules/fast-deep-equal/index.js +0 -46
- package/node_modules/fast-deep-equal/package.json +0 -61
- package/node_modules/fast-deep-equal/react.d.ts +0 -2
- package/node_modules/fast-deep-equal/react.js +0 -53
- package/node_modules/geojson-equality-ts/LICENSE.md +0 -22
- package/node_modules/geojson-equality-ts/README.md +0 -157
- package/node_modules/geojson-equality-ts/dist/cjs/index.cjs +0 -164
- package/node_modules/geojson-equality-ts/dist/cjs/index.cjs.map +0 -1
- package/node_modules/geojson-equality-ts/dist/cjs/index.d.cts +0 -37
- package/node_modules/geojson-equality-ts/dist/esm/index.d.ts +0 -37
- package/node_modules/geojson-equality-ts/dist/esm/index.js +0 -164
- package/node_modules/geojson-equality-ts/dist/esm/index.js.map +0 -1
- package/node_modules/geojson-equality-ts/package.json +0 -62
- package/node_modules/geojson-polygon-self-intersections/LICENSE +0 -21
- package/node_modules/geojson-polygon-self-intersections/README.md +0 -63
- package/node_modules/geojson-polygon-self-intersections/index.js +0 -196
- package/node_modules/geojson-polygon-self-intersections/node_modules/quickselect/LICENSE +0 -15
- package/node_modules/geojson-polygon-self-intersections/node_modules/quickselect/README.md +0 -28
- package/node_modules/geojson-polygon-self-intersections/node_modules/quickselect/index.js +0 -54
- package/node_modules/geojson-polygon-self-intersections/node_modules/quickselect/package.json +0 -42
- package/node_modules/geojson-polygon-self-intersections/node_modules/quickselect/quickselect.js +0 -63
- package/node_modules/geojson-polygon-self-intersections/node_modules/rbush/LICENSE +0 -21
- package/node_modules/geojson-polygon-self-intersections/node_modules/rbush/README.md +0 -291
- package/node_modules/geojson-polygon-self-intersections/node_modules/rbush/index.js +0 -562
- package/node_modules/geojson-polygon-self-intersections/node_modules/rbush/package.json +0 -55
- package/node_modules/geojson-polygon-self-intersections/node_modules/rbush/rbush.js +0 -626
- package/node_modules/geojson-polygon-self-intersections/node_modules/rbush/rbush.min.js +0 -1
- package/node_modules/geojson-polygon-self-intersections/package.json +0 -27
- package/node_modules/jsts/README.md +0 -39
- package/node_modules/jsts/dist/jsts.es6.js +0 -33000
- package/node_modules/jsts/dist/jsts.es6.js.map +0 -1
- package/node_modules/jsts/dist/jsts.es6.min.js +0 -8
- package/node_modules/jsts/dist/jsts.es6.min.js.map +0 -1
- package/node_modules/jsts/dist/jsts.js +0 -33200
- package/node_modules/jsts/dist/jsts.js.map +0 -1
- package/node_modules/jsts/dist/jsts.min.js +0 -8
- package/node_modules/jsts/dist/jsts.min.js.map +0 -1
- package/node_modules/jsts/hasInterface.js +0 -3
- package/node_modules/jsts/java/io/ByteArrayOutputStream.js +0 -1
- package/node_modules/jsts/java/io/IOException.js +0 -3
- package/node_modules/jsts/java/io/InputStream.js +0 -1
- package/node_modules/jsts/java/io/LineNumberReader.js +0 -1
- package/node_modules/jsts/java/io/OutputStream.js +0 -1
- package/node_modules/jsts/java/io/PrintStream.js +0 -1
- package/node_modules/jsts/java/io/Serializable.js +0 -1
- package/node_modules/jsts/java/io/StringReader.js +0 -1
- package/node_modules/jsts/java/io/StringWriter.js +0 -1
- package/node_modules/jsts/java/io/Writer.js +0 -1
- package/node_modules/jsts/java/lang/Character.js +0 -9
- package/node_modules/jsts/java/lang/Cloneable.js +0 -1
- package/node_modules/jsts/java/lang/Comparable.js +0 -1
- package/node_modules/jsts/java/lang/Double.js +0 -301
- package/node_modules/jsts/java/lang/Exception.js +0 -9
- package/node_modules/jsts/java/lang/IllegalArgumentException.js +0 -8
- package/node_modules/jsts/java/lang/IndexOutOfBoundsException.js +0 -8
- package/node_modules/jsts/java/lang/Integer.js +0 -33
- package/node_modules/jsts/java/lang/Long.js +0 -16
- package/node_modules/jsts/java/lang/RuntimeException.js +0 -8
- package/node_modules/jsts/java/lang/StringBuffer.js +0 -14
- package/node_modules/jsts/java/lang/StringBuilder.js +0 -14
- package/node_modules/jsts/java/lang/System.js +0 -15
- package/node_modules/jsts/java/lang/UnsupportedOperationException.js +0 -8
- package/node_modules/jsts/java/text/DecimalFormat.js +0 -1
- package/node_modules/jsts/java/text/DecimalFormatSymbols.js +0 -1
- package/node_modules/jsts/java/util/ArrayList.js +0 -109
- package/node_modules/jsts/java/util/Arrays.js +0 -44
- package/node_modules/jsts/java/util/Collection.js +0 -47
- package/node_modules/jsts/java/util/Collections.js +0 -35
- package/node_modules/jsts/java/util/Comparator.js +0 -1
- package/node_modules/jsts/java/util/EmptyStackException.js +0 -8
- package/node_modules/jsts/java/util/HashMap.js +0 -43
- package/node_modules/jsts/java/util/HashSet.js +0 -87
- package/node_modules/jsts/java/util/Iterator.js +0 -24
- package/node_modules/jsts/java/util/LinkedList.js +0 -17
- package/node_modules/jsts/java/util/List.js +0 -26
- package/node_modules/jsts/java/util/Map.js +0 -51
- package/node_modules/jsts/java/util/NoSuchElementException.js +0 -8
- package/node_modules/jsts/java/util/PriorityQueue.js +0 -78
- package/node_modules/jsts/java/util/Set.js +0 -19
- package/node_modules/jsts/java/util/SortedMap.js +0 -6
- package/node_modules/jsts/java/util/SortedSet.js +0 -6
- package/node_modules/jsts/java/util/Stack.js +0 -103
- package/node_modules/jsts/java/util/TreeMap.js +0 -262
- package/node_modules/jsts/java/util/TreeSet.js +0 -82
- package/node_modules/jsts/org/locationtech/jts/JTSVersion.js +0 -25
- package/node_modules/jsts/org/locationtech/jts/algorithm/Angle.js +0 -97
- package/node_modules/jsts/org/locationtech/jts/algorithm/Area.js +0 -50
- package/node_modules/jsts/org/locationtech/jts/algorithm/BoundaryNodeRule.js +0 -44
- package/node_modules/jsts/org/locationtech/jts/algorithm/CGAlgorithms3D.js +0 -58
- package/node_modules/jsts/org/locationtech/jts/algorithm/CGAlgorithmsDD.js +0 -78
- package/node_modules/jsts/org/locationtech/jts/algorithm/Centroid.js +0 -123
- package/node_modules/jsts/org/locationtech/jts/algorithm/ConvexHull.js +0 -244
- package/node_modules/jsts/org/locationtech/jts/algorithm/Distance.js +0 -55
- package/node_modules/jsts/org/locationtech/jts/algorithm/HCoordinate.js +0 -76
- package/node_modules/jsts/org/locationtech/jts/algorithm/InteriorPoint.js +0 -18
- package/node_modules/jsts/org/locationtech/jts/algorithm/InteriorPointArea.js +0 -194
- package/node_modules/jsts/org/locationtech/jts/algorithm/InteriorPointLine.js +0 -74
- package/node_modules/jsts/org/locationtech/jts/algorithm/InteriorPointPoint.js +0 -46
- package/node_modules/jsts/org/locationtech/jts/algorithm/Intersection.js +0 -43
- package/node_modules/jsts/org/locationtech/jts/algorithm/Length.js +0 -23
- package/node_modules/jsts/org/locationtech/jts/algorithm/LineIntersector.js +0 -152
- package/node_modules/jsts/org/locationtech/jts/algorithm/MinimumBoundingCircle.js +0 -180
- package/node_modules/jsts/org/locationtech/jts/algorithm/MinimumDiameter.js +0 -162
- package/node_modules/jsts/org/locationtech/jts/algorithm/NotRepresentableException.js +0 -10
- package/node_modules/jsts/org/locationtech/jts/algorithm/Orientation.js +0 -86
- package/node_modules/jsts/org/locationtech/jts/algorithm/PointLocation.js +0 -44
- package/node_modules/jsts/org/locationtech/jts/algorithm/PointLocator.js +0 -111
- package/node_modules/jsts/org/locationtech/jts/algorithm/RayCrossingCounter.js +0 -87
- package/node_modules/jsts/org/locationtech/jts/algorithm/RectangleLineIntersector.js +0 -42
- package/node_modules/jsts/org/locationtech/jts/algorithm/RobustDeterminant.js +0 -196
- package/node_modules/jsts/org/locationtech/jts/algorithm/RobustLineIntersector.js +0 -155
- package/node_modules/jsts/org/locationtech/jts/algorithm/construct/LargestEmptyCircle.js +0 -193
- package/node_modules/jsts/org/locationtech/jts/algorithm/construct/MaximumInscribedCircle.js +0 -167
- package/node_modules/jsts/org/locationtech/jts/algorithm/distance/DiscreteHausdorffDistance.js +0 -128
- package/node_modules/jsts/org/locationtech/jts/algorithm/distance/DistanceToPoint.js +0 -46
- package/node_modules/jsts/org/locationtech/jts/algorithm/distance/PointPairDistance.js +0 -70
- package/node_modules/jsts/org/locationtech/jts/algorithm/distance_module.js +0 -9
- package/node_modules/jsts/org/locationtech/jts/algorithm/locate/IndexedPointInAreaLocator.js +0 -96
- package/node_modules/jsts/org/locationtech/jts/algorithm/locate/PointOnGeometryLocator.js +0 -3
- package/node_modules/jsts/org/locationtech/jts/algorithm/locate/SimplePointInAreaLocator.js +0 -66
- package/node_modules/jsts/org/locationtech/jts/algorithm/locate.js +0 -9
- package/node_modules/jsts/org/locationtech/jts/algorithm/match/AreaSimilarityMeasure.js +0 -11
- package/node_modules/jsts/org/locationtech/jts/algorithm/match/HausdorffSimilarityMeasure.js +0 -23
- package/node_modules/jsts/org/locationtech/jts/algorithm/match/SimilarityMeasure.js +0 -3
- package/node_modules/jsts/org/locationtech/jts/algorithm/match/SimilarityMeasureCombiner.js +0 -5
- package/node_modules/jsts/org/locationtech/jts/algorithm/match.js +0 -11
- package/node_modules/jsts/org/locationtech/jts/algorithm.js +0 -41
- package/node_modules/jsts/org/locationtech/jts/densify/Densifier.js +0 -85
- package/node_modules/jsts/org/locationtech/jts/densify.js +0 -5
- package/node_modules/jsts/org/locationtech/jts/dissolve/DissolveEdgeGraph.js +0 -10
- package/node_modules/jsts/org/locationtech/jts/dissolve/DissolveHalfEdge.js +0 -18
- package/node_modules/jsts/org/locationtech/jts/dissolve/LineDissolver.js +0 -148
- package/node_modules/jsts/org/locationtech/jts/dissolve.js +0 -5
- package/node_modules/jsts/org/locationtech/jts/edgegraph/EdgeGraph.js +0 -59
- package/node_modules/jsts/org/locationtech/jts/edgegraph/EdgeGraphBuilder.js +0 -49
- package/node_modules/jsts/org/locationtech/jts/edgegraph/HalfEdge.js +0 -185
- package/node_modules/jsts/org/locationtech/jts/edgegraph/MarkHalfEdge.js +0 -38
- package/node_modules/jsts/org/locationtech/jts/geom/Coordinate.js +0 -219
- package/node_modules/jsts/org/locationtech/jts/geom/CoordinateArrays.js +0 -245
- package/node_modules/jsts/org/locationtech/jts/geom/CoordinateFilter.js +0 -3
- package/node_modules/jsts/org/locationtech/jts/geom/CoordinateList.js +0 -130
- package/node_modules/jsts/org/locationtech/jts/geom/CoordinateSequence.js +0 -53
- package/node_modules/jsts/org/locationtech/jts/geom/CoordinateSequenceComparator.js +0 -67
- package/node_modules/jsts/org/locationtech/jts/geom/CoordinateSequenceFactory.js +0 -18
- package/node_modules/jsts/org/locationtech/jts/geom/CoordinateSequenceFilter.js +0 -5
- package/node_modules/jsts/org/locationtech/jts/geom/CoordinateSequences.js +0 -139
- package/node_modules/jsts/org/locationtech/jts/geom/CoordinateXY.js +0 -66
- package/node_modules/jsts/org/locationtech/jts/geom/CoordinateXYM.js +0 -83
- package/node_modules/jsts/org/locationtech/jts/geom/CoordinateXYZM.js +0 -78
- package/node_modules/jsts/org/locationtech/jts/geom/Coordinates.js +0 -48
- package/node_modules/jsts/org/locationtech/jts/geom/Dimension.js +0 -50
- package/node_modules/jsts/org/locationtech/jts/geom/Envelope.js +0 -360
- package/node_modules/jsts/org/locationtech/jts/geom/Geometry.js +0 -230
- package/node_modules/jsts/org/locationtech/jts/geom/GeometryCollection.js +0 -211
- package/node_modules/jsts/org/locationtech/jts/geom/GeometryCollectionIterator.js +0 -68
- package/node_modules/jsts/org/locationtech/jts/geom/GeometryComponentFilter.js +0 -3
- package/node_modules/jsts/org/locationtech/jts/geom/GeometryFactory.js +0 -267
- package/node_modules/jsts/org/locationtech/jts/geom/GeometryFilter.js +0 -3
- package/node_modules/jsts/org/locationtech/jts/geom/IntersectionMatrix.js +0 -212
- package/node_modules/jsts/org/locationtech/jts/geom/LineSegment.js +0 -273
- package/node_modules/jsts/org/locationtech/jts/geom/LineString.js +0 -210
- package/node_modules/jsts/org/locationtech/jts/geom/Lineal.js +0 -1
- package/node_modules/jsts/org/locationtech/jts/geom/LinearRing.js +0 -48
- package/node_modules/jsts/org/locationtech/jts/geom/Location.js +0 -20
- package/node_modules/jsts/org/locationtech/jts/geom/MultiLineString.js +0 -65
- package/node_modules/jsts/org/locationtech/jts/geom/MultiPoint.js +0 -61
- package/node_modules/jsts/org/locationtech/jts/geom/MultiPolygon.js +0 -62
- package/node_modules/jsts/org/locationtech/jts/geom/OctagonalEnvelope.js +0 -273
- package/node_modules/jsts/org/locationtech/jts/geom/Point.js +0 -140
- package/node_modules/jsts/org/locationtech/jts/geom/Polygon.js +0 -275
- package/node_modules/jsts/org/locationtech/jts/geom/Polygonal.js +0 -1
- package/node_modules/jsts/org/locationtech/jts/geom/PrecisionModel.js +0 -133
- package/node_modules/jsts/org/locationtech/jts/geom/Puntal.js +0 -1
- package/node_modules/jsts/org/locationtech/jts/geom/TopologyException.js +0 -13
- package/node_modules/jsts/org/locationtech/jts/geom/Triangle.js +0 -158
- package/node_modules/jsts/org/locationtech/jts/geom/impl/CoordinateArraySequence.js +0 -177
- package/node_modules/jsts/org/locationtech/jts/geom/impl/CoordinateArraySequenceFactory.js +0 -44
- package/node_modules/jsts/org/locationtech/jts/geom/impl/PackedCoordinateSequenceFactory.js +0 -98
- package/node_modules/jsts/org/locationtech/jts/geom/prep/AbstractPreparedPolygonContains.js +0 -60
- package/node_modules/jsts/org/locationtech/jts/geom/prep/BasicPreparedGeometry.js +0 -74
- package/node_modules/jsts/org/locationtech/jts/geom/prep/PreparedGeometry.js +0 -13
- package/node_modules/jsts/org/locationtech/jts/geom/prep/PreparedGeometryFactory.js +0 -19
- package/node_modules/jsts/org/locationtech/jts/geom/prep/PreparedLineString.js +0 -23
- package/node_modules/jsts/org/locationtech/jts/geom/prep/PreparedLineStringIntersects.js +0 -37
- package/node_modules/jsts/org/locationtech/jts/geom/prep/PreparedPoint.js +0 -15
- package/node_modules/jsts/org/locationtech/jts/geom/prep/PreparedPolygon.js +0 -57
- package/node_modules/jsts/org/locationtech/jts/geom/prep/PreparedPolygonContains.js +0 -22
- package/node_modules/jsts/org/locationtech/jts/geom/prep/PreparedPolygonContainsProperly.js +0 -30
- package/node_modules/jsts/org/locationtech/jts/geom/prep/PreparedPolygonCovers.js +0 -23
- package/node_modules/jsts/org/locationtech/jts/geom/prep/PreparedPolygonIntersects.js +0 -31
- package/node_modules/jsts/org/locationtech/jts/geom/prep/PreparedPolygonPredicate.js +0 -60
- package/node_modules/jsts/org/locationtech/jts/geom/util/AffineTransformation.js +0 -393
- package/node_modules/jsts/org/locationtech/jts/geom/util/AffineTransformationBuilder.js +0 -52
- package/node_modules/jsts/org/locationtech/jts/geom/util/AffineTransformationFactory.js +0 -55
- package/node_modules/jsts/org/locationtech/jts/geom/util/ComponentCoordinateExtracter.js +0 -25
- package/node_modules/jsts/org/locationtech/jts/geom/util/GeometryCollectionMapper.js +0 -24
- package/node_modules/jsts/org/locationtech/jts/geom/util/GeometryCombiner.js +0 -71
- package/node_modules/jsts/org/locationtech/jts/geom/util/GeometryEditor.js +0 -138
- package/node_modules/jsts/org/locationtech/jts/geom/util/GeometryExtracter.js +0 -41
- package/node_modules/jsts/org/locationtech/jts/geom/util/GeometryMapper.js +0 -28
- package/node_modules/jsts/org/locationtech/jts/geom/util/GeometryTransformer.js +0 -125
- package/node_modules/jsts/org/locationtech/jts/geom/util/LineStringExtracter.js +0 -37
- package/node_modules/jsts/org/locationtech/jts/geom/util/LinearComponentExtracter.js +0 -88
- package/node_modules/jsts/org/locationtech/jts/geom/util/NoninvertibleTransformationException.js +0 -15
- package/node_modules/jsts/org/locationtech/jts/geom/util/PointExtracter.js +0 -38
- package/node_modules/jsts/org/locationtech/jts/geom/util/PolygonExtracter.js +0 -34
- package/node_modules/jsts/org/locationtech/jts/geom/util/ShortCircuitedGeometryVisitor.js +0 -23
- package/node_modules/jsts/org/locationtech/jts/geom/util/SineStarFactory.js +0 -62
- package/node_modules/jsts/org/locationtech/jts/geom/util.js +0 -35
- package/node_modules/jsts/org/locationtech/jts/geom.js +0 -51
- package/node_modules/jsts/org/locationtech/jts/geomgraph/Depth.js +0 -85
- package/node_modules/jsts/org/locationtech/jts/geomgraph/DirectedEdge.js +0 -143
- package/node_modules/jsts/org/locationtech/jts/geomgraph/DirectedEdgeStar.js +0 -233
- package/node_modules/jsts/org/locationtech/jts/geomgraph/Edge.js +0 -190
- package/node_modules/jsts/org/locationtech/jts/geomgraph/EdgeEnd.js +0 -94
- package/node_modules/jsts/org/locationtech/jts/geomgraph/EdgeEndStar.js +0 -173
- package/node_modules/jsts/org/locationtech/jts/geomgraph/EdgeIntersection.js +0 -52
- package/node_modules/jsts/org/locationtech/jts/geomgraph/EdgeIntersectionList.js +0 -74
- package/node_modules/jsts/org/locationtech/jts/geomgraph/EdgeList.js +0 -57
- package/node_modules/jsts/org/locationtech/jts/geomgraph/EdgeNodingValidator.js +0 -28
- package/node_modules/jsts/org/locationtech/jts/geomgraph/EdgeRing.js +0 -160
- package/node_modules/jsts/org/locationtech/jts/geomgraph/GeometryGraph.js +0 -238
- package/node_modules/jsts/org/locationtech/jts/geomgraph/GraphComponent.js +0 -49
- package/node_modules/jsts/org/locationtech/jts/geomgraph/Label.js +0 -132
- package/node_modules/jsts/org/locationtech/jts/geomgraph/Node.js +0 -91
- package/node_modules/jsts/org/locationtech/jts/geomgraph/NodeFactory.js +0 -6
- package/node_modules/jsts/org/locationtech/jts/geomgraph/NodeMap.js +0 -64
- package/node_modules/jsts/org/locationtech/jts/geomgraph/PlanarGraph.js +0 -138
- package/node_modules/jsts/org/locationtech/jts/geomgraph/Position.js +0 -10
- package/node_modules/jsts/org/locationtech/jts/geomgraph/Quadrant.js +0 -51
- package/node_modules/jsts/org/locationtech/jts/geomgraph/TopologyLocation.js +0 -122
- package/node_modules/jsts/org/locationtech/jts/geomgraph/index/EdgeSetIntersector.js +0 -1
- package/node_modules/jsts/org/locationtech/jts/geomgraph/index/MonotoneChain.js +0 -15
- package/node_modules/jsts/org/locationtech/jts/geomgraph/index/MonotoneChainEdge.js +0 -66
- package/node_modules/jsts/org/locationtech/jts/geomgraph/index/MonotoneChainIndexer.js +0 -45
- package/node_modules/jsts/org/locationtech/jts/geomgraph/index/SegmentIntersector.js +0 -109
- package/node_modules/jsts/org/locationtech/jts/geomgraph/index/SimpleEdgeSetIntersector.js +0 -45
- package/node_modules/jsts/org/locationtech/jts/geomgraph/index/SimpleMCSweepLineIntersector.js +0 -92
- package/node_modules/jsts/org/locationtech/jts/geomgraph/index/SimpleSweepLineIntersector.js +0 -91
- package/node_modules/jsts/org/locationtech/jts/geomgraph/index/SweepLineEvent.js +0 -61
- package/node_modules/jsts/org/locationtech/jts/geomgraph/index/SweepLineSegment.js +0 -27
- package/node_modules/jsts/org/locationtech/jts/geomgraph.js +0 -5
- package/node_modules/jsts/org/locationtech/jts/index/ArrayListVisitor.js +0 -19
- package/node_modules/jsts/org/locationtech/jts/index/ItemVisitor.js +0 -3
- package/node_modules/jsts/org/locationtech/jts/index/SpatialIndex.js +0 -11
- package/node_modules/jsts/org/locationtech/jts/index/bintree/Bintree.js +0 -69
- package/node_modules/jsts/org/locationtech/jts/index/bintree/Interval.js +0 -67
- package/node_modules/jsts/org/locationtech/jts/index/bintree/Key.js +0 -42
- package/node_modules/jsts/org/locationtech/jts/index/bintree/Node.js +0 -89
- package/node_modules/jsts/org/locationtech/jts/index/bintree/NodeBase.js +0 -93
- package/node_modules/jsts/org/locationtech/jts/index/bintree/Root.js +0 -33
- package/node_modules/jsts/org/locationtech/jts/index/chain/MonotoneChain.js +0 -99
- package/node_modules/jsts/org/locationtech/jts/index/chain/MonotoneChainBuilder.js +0 -41
- package/node_modules/jsts/org/locationtech/jts/index/chain/MonotoneChainOverlapAction.js +0 -20
- package/node_modules/jsts/org/locationtech/jts/index/chain/MonotoneChainSelectAction.js +0 -18
- package/node_modules/jsts/org/locationtech/jts/index/hprtree/HPRtree.js +0 -245
- package/node_modules/jsts/org/locationtech/jts/index/hprtree/HilbertEncoder.js +0 -29
- package/node_modules/jsts/org/locationtech/jts/index/hprtree/Item.js +0 -21
- package/node_modules/jsts/org/locationtech/jts/index/intervalrtree/IntervalRTreeBranchNode.js +0 -26
- package/node_modules/jsts/org/locationtech/jts/index/intervalrtree/IntervalRTreeLeafNode.js +0 -18
- package/node_modules/jsts/org/locationtech/jts/index/intervalrtree/IntervalRTreeNode.js +0 -41
- package/node_modules/jsts/org/locationtech/jts/index/intervalrtree/SortedPackedIntervalRTree.js +0 -66
- package/node_modules/jsts/org/locationtech/jts/index/kdtree/KdNode.js +0 -61
- package/node_modules/jsts/org/locationtech/jts/index/kdtree/KdNodeVisitor.js +0 -3
- package/node_modules/jsts/org/locationtech/jts/index/kdtree/KdTree.js +0 -190
- package/node_modules/jsts/org/locationtech/jts/index/kdtree.js +0 -5
- package/node_modules/jsts/org/locationtech/jts/index/quadtree/DoubleBits.js +0 -84
- package/node_modules/jsts/org/locationtech/jts/index/quadtree/IntervalSize.js +0 -12
- package/node_modules/jsts/org/locationtech/jts/index/quadtree/Key.js +0 -52
- package/node_modules/jsts/org/locationtech/jts/index/quadtree/Node.js +0 -110
- package/node_modules/jsts/org/locationtech/jts/index/quadtree/NodeBase.js +0 -134
- package/node_modules/jsts/org/locationtech/jts/index/quadtree/Quadtree.js +0 -78
- package/node_modules/jsts/org/locationtech/jts/index/quadtree/Root.js +0 -35
- package/node_modules/jsts/org/locationtech/jts/index/quadtree.js +0 -5
- package/node_modules/jsts/org/locationtech/jts/index/strtree/AbstractNode.js +0 -43
- package/node_modules/jsts/org/locationtech/jts/index/strtree/AbstractSTRtree.js +0 -281
- package/node_modules/jsts/org/locationtech/jts/index/strtree/Boundable.js +0 -3
- package/node_modules/jsts/org/locationtech/jts/index/strtree/BoundablePair.js +0 -89
- package/node_modules/jsts/org/locationtech/jts/index/strtree/BoundablePairDistanceComparator.js +0 -34
- package/node_modules/jsts/org/locationtech/jts/index/strtree/EnvelopeDistance.js +0 -48
- package/node_modules/jsts/org/locationtech/jts/index/strtree/GeometryItemDistance.js +0 -13
- package/node_modules/jsts/org/locationtech/jts/index/strtree/Interval.js +0 -37
- package/node_modules/jsts/org/locationtech/jts/index/strtree/ItemBoundable.js +0 -23
- package/node_modules/jsts/org/locationtech/jts/index/strtree/ItemDistance.js +0 -3
- package/node_modules/jsts/org/locationtech/jts/index/strtree/SIRtree.js +0 -72
- package/node_modules/jsts/org/locationtech/jts/index/strtree/STRtree.js +0 -284
- package/node_modules/jsts/org/locationtech/jts/index/strtree.js +0 -5
- package/node_modules/jsts/org/locationtech/jts/index/sweepline/SweepLineEvent.js +0 -50
- package/node_modules/jsts/org/locationtech/jts/index/sweepline/SweepLineIndex.js +0 -49
- package/node_modules/jsts/org/locationtech/jts/index/sweepline/SweepLineInterval.js +0 -28
- package/node_modules/jsts/org/locationtech/jts/index/sweepline/SweepLineOverlapAction.js +0 -3
- package/node_modules/jsts/org/locationtech/jts/index.js +0 -5
- package/node_modules/jsts/org/locationtech/jts/io/GeoJSONParser.js +0 -420
- package/node_modules/jsts/org/locationtech/jts/io/GeoJSONReader.js +0 -37
- package/node_modules/jsts/org/locationtech/jts/io/GeoJSONWriter.js +0 -36
- package/node_modules/jsts/org/locationtech/jts/io/OL3Parser.js +0 -189
- package/node_modules/jsts/org/locationtech/jts/io/WKTParser.js +0 -784
- package/node_modules/jsts/org/locationtech/jts/io/WKTReader.js +0 -42
- package/node_modules/jsts/org/locationtech/jts/io/WKTWriter.js +0 -55
- package/node_modules/jsts/org/locationtech/jts/io.js +0 -13
- package/node_modules/jsts/org/locationtech/jts/linearref/ExtractLineByLocation.js +0 -64
- package/node_modules/jsts/org/locationtech/jts/linearref/LengthIndexOfPoint.js +0 -61
- package/node_modules/jsts/org/locationtech/jts/linearref/LengthIndexedLine.js +0 -78
- package/node_modules/jsts/org/locationtech/jts/linearref/LengthLocationMap.js +0 -98
- package/node_modules/jsts/org/locationtech/jts/linearref/LinearGeometryBuilder.js +0 -71
- package/node_modules/jsts/org/locationtech/jts/linearref/LinearIterator.js +0 -76
- package/node_modules/jsts/org/locationtech/jts/linearref/LinearLocation.js +0 -201
- package/node_modules/jsts/org/locationtech/jts/linearref/LocationIndexOfLine.js +0 -29
- package/node_modules/jsts/org/locationtech/jts/linearref/LocationIndexOfPoint.js +0 -64
- package/node_modules/jsts/org/locationtech/jts/linearref/LocationIndexedLine.js +0 -60
- package/node_modules/jsts/org/locationtech/jts/linearref.js +0 -15
- package/node_modules/jsts/org/locationtech/jts/math/DD.js +0 -608
- package/node_modules/jsts/org/locationtech/jts/math/MathUtil.js +0 -55
- package/node_modules/jsts/org/locationtech/jts/math/Matrix.js +0 -43
- package/node_modules/jsts/org/locationtech/jts/math/Plane3D.js +0 -36
- package/node_modules/jsts/org/locationtech/jts/math/Vector2D.js +0 -172
- package/node_modules/jsts/org/locationtech/jts/math/Vector3D.js +0 -104
- package/node_modules/jsts/org/locationtech/jts/monkey.js +0 -146
- package/node_modules/jsts/org/locationtech/jts/noding/BasicSegmentString.js +0 -44
- package/node_modules/jsts/org/locationtech/jts/noding/FastNodingValidator.js +0 -60
- package/node_modules/jsts/org/locationtech/jts/noding/FastSegmentSetIntersectionFinder.js +0 -26
- package/node_modules/jsts/org/locationtech/jts/noding/InteriorIntersectionFinderAdder.js +0 -40
- package/node_modules/jsts/org/locationtech/jts/noding/IntersectionAdder.js +0 -88
- package/node_modules/jsts/org/locationtech/jts/noding/IteratedNoder.js +0 -53
- package/node_modules/jsts/org/locationtech/jts/noding/MCIndexNoder.js +0 -85
- package/node_modules/jsts/org/locationtech/jts/noding/MCIndexSegmentSetMutualIntersector.js +0 -82
- package/node_modules/jsts/org/locationtech/jts/noding/NodableSegmentString.js +0 -7
- package/node_modules/jsts/org/locationtech/jts/noding/NodedSegmentString.js +0 -96
- package/node_modules/jsts/org/locationtech/jts/noding/Noder.js +0 -4
- package/node_modules/jsts/org/locationtech/jts/noding/NodingIntersectionFinder.js +0 -139
- package/node_modules/jsts/org/locationtech/jts/noding/NodingValidator.js +0 -96
- package/node_modules/jsts/org/locationtech/jts/noding/Octant.js +0 -31
- package/node_modules/jsts/org/locationtech/jts/noding/OrientedCoordinateArray.js +0 -44
- package/node_modules/jsts/org/locationtech/jts/noding/ScaledNoder.js +0 -82
- package/node_modules/jsts/org/locationtech/jts/noding/SegmentIntersectionDetector.js +0 -80
- package/node_modules/jsts/org/locationtech/jts/noding/SegmentIntersector.js +0 -4
- package/node_modules/jsts/org/locationtech/jts/noding/SegmentNode.js +0 -51
- package/node_modules/jsts/org/locationtech/jts/noding/SegmentNodeList.js +0 -199
- package/node_modules/jsts/org/locationtech/jts/noding/SegmentPointComparator.js +0 -40
- package/node_modules/jsts/org/locationtech/jts/noding/SegmentSetMutualIntersector.js +0 -3
- package/node_modules/jsts/org/locationtech/jts/noding/SegmentString.js +0 -8
- package/node_modules/jsts/org/locationtech/jts/noding/SegmentStringDissolver.js +0 -53
- package/node_modules/jsts/org/locationtech/jts/noding/SegmentStringUtil.js +0 -44
- package/node_modules/jsts/org/locationtech/jts/noding/SimpleNoder.js +0 -33
- package/node_modules/jsts/org/locationtech/jts/noding/SimpleSegmentSetMutualIntersector.js +0 -34
- package/node_modules/jsts/org/locationtech/jts/noding/SinglePassNoder.js +0 -19
- package/node_modules/jsts/org/locationtech/jts/noding/snapround/GeometryNoder.js +0 -59
- package/node_modules/jsts/org/locationtech/jts/noding/snapround/HotPixel.js +0 -120
- package/node_modules/jsts/org/locationtech/jts/noding/snapround/MCIndexPointSnapper.js +0 -65
- package/node_modules/jsts/org/locationtech/jts/noding/snapround/MCIndexSnapRounder.js +0 -89
- package/node_modules/jsts/org/locationtech/jts/noding/snapround/SimpleSnapRounder.js +0 -105
- package/node_modules/jsts/org/locationtech/jts/noding.js +0 -9
- package/node_modules/jsts/org/locationtech/jts/operation/BoundaryOp.js +0 -104
- package/node_modules/jsts/org/locationtech/jts/operation/GeometryGraphOperation.js +0 -36
- package/node_modules/jsts/org/locationtech/jts/operation/IsSimpleOp.js +0 -165
- package/node_modules/jsts/org/locationtech/jts/operation/buffer/BufferBuilder.js +0 -148
- package/node_modules/jsts/org/locationtech/jts/operation/buffer/BufferInputLineSimplifier.js +0 -96
- package/node_modules/jsts/org/locationtech/jts/operation/buffer/BufferOp.js +0 -126
- package/node_modules/jsts/org/locationtech/jts/operation/buffer/BufferParameters.js +0 -87
- package/node_modules/jsts/org/locationtech/jts/operation/buffer/BufferSubgraph.js +0 -150
- package/node_modules/jsts/org/locationtech/jts/operation/buffer/OffsetCurveBuilder.js +0 -170
- package/node_modules/jsts/org/locationtech/jts/operation/buffer/OffsetCurveSetBuilder.js +0 -118
- package/node_modules/jsts/org/locationtech/jts/operation/buffer/OffsetSegmentGenerator.js +0 -269
- package/node_modules/jsts/org/locationtech/jts/operation/buffer/OffsetSegmentString.js +0 -62
- package/node_modules/jsts/org/locationtech/jts/operation/buffer/RightmostEdgeFinder.js +0 -91
- package/node_modules/jsts/org/locationtech/jts/operation/buffer/SubgraphDepthLocater.js +0 -100
- package/node_modules/jsts/org/locationtech/jts/operation/buffer/VariableBuffer.js +0 -226
- package/node_modules/jsts/org/locationtech/jts/operation/buffer/validate/BufferCurveMaximumDistanceFinder.js +0 -92
- package/node_modules/jsts/org/locationtech/jts/operation/buffer/validate/BufferDistanceValidator.js +0 -107
- package/node_modules/jsts/org/locationtech/jts/operation/buffer/validate/BufferResultValidator.js +0 -116
- package/node_modules/jsts/org/locationtech/jts/operation/buffer/validate/DistanceToPointFinder.js +0 -46
- package/node_modules/jsts/org/locationtech/jts/operation/buffer/validate/PointPairDistance.js +0 -66
- package/node_modules/jsts/org/locationtech/jts/operation/buffer.js +0 -7
- package/node_modules/jsts/org/locationtech/jts/operation/distance/ConnectedElementLocationFilter.js +0 -28
- package/node_modules/jsts/org/locationtech/jts/operation/distance/ConnectedElementPointFilter.js +0 -26
- package/node_modules/jsts/org/locationtech/jts/operation/distance/DistanceOp.js +0 -231
- package/node_modules/jsts/org/locationtech/jts/operation/distance/FacetSequence.js +0 -150
- package/node_modules/jsts/org/locationtech/jts/operation/distance/FacetSequenceTreeBuilder.js +0 -50
- package/node_modules/jsts/org/locationtech/jts/operation/distance/GeometryLocation.js +0 -36
- package/node_modules/jsts/org/locationtech/jts/operation/distance/IndexedFacetDistance.js +0 -68
- package/node_modules/jsts/org/locationtech/jts/operation/distance.js +0 -5
- package/node_modules/jsts/org/locationtech/jts/operation/distance3d/AxisPlaneCoordinateSequence.js +0 -82
- package/node_modules/jsts/org/locationtech/jts/operation/distance3d/Distance3DOp.js +0 -299
- package/node_modules/jsts/org/locationtech/jts/operation/distance3d/PlanarPolygon3D.js +0 -110
- package/node_modules/jsts/org/locationtech/jts/operation/linemerge/EdgeString.js +0 -42
- package/node_modules/jsts/org/locationtech/jts/operation/linemerge/LineMergeDirectedEdge.js +0 -22
- package/node_modules/jsts/org/locationtech/jts/operation/linemerge/LineMergeEdge.js +0 -15
- package/node_modules/jsts/org/locationtech/jts/operation/linemerge/LineMergeGraph.js +0 -34
- package/node_modules/jsts/org/locationtech/jts/operation/linemerge/LineMerger.js +0 -108
- package/node_modules/jsts/org/locationtech/jts/operation/linemerge/LineSequencer.js +0 -245
- package/node_modules/jsts/org/locationtech/jts/operation/linemerge.js +0 -7
- package/node_modules/jsts/org/locationtech/jts/operation/overlay/ConsistentPolygonRingChecker.js +0 -69
- package/node_modules/jsts/org/locationtech/jts/operation/overlay/EdgeSetNoder.js +0 -28
- package/node_modules/jsts/org/locationtech/jts/operation/overlay/LineBuilder.js +0 -89
- package/node_modules/jsts/org/locationtech/jts/operation/overlay/MaximalEdgeRing.js +0 -39
- package/node_modules/jsts/org/locationtech/jts/operation/overlay/MinimalEdgeRing.js +0 -17
- package/node_modules/jsts/org/locationtech/jts/operation/overlay/OverlayNodeFactory.js +0 -11
- package/node_modules/jsts/org/locationtech/jts/operation/overlay/OverlayOp.js +0 -312
- package/node_modules/jsts/org/locationtech/jts/operation/overlay/PointBuilder.js +0 -39
- package/node_modules/jsts/org/locationtech/jts/operation/overlay/PolygonBuilder.js +0 -144
- package/node_modules/jsts/org/locationtech/jts/operation/overlay/snap/GeometrySnapper.js +0 -118
- package/node_modules/jsts/org/locationtech/jts/operation/overlay/snap/LineStringSnapper.js +0 -87
- package/node_modules/jsts/org/locationtech/jts/operation/overlay/snap/SnapIfNeededOverlayOp.js +0 -54
- package/node_modules/jsts/org/locationtech/jts/operation/overlay/snap/SnapOverlayOp.js +0 -70
- package/node_modules/jsts/org/locationtech/jts/operation/overlay/snap.js +0 -7
- package/node_modules/jsts/org/locationtech/jts/operation/overlay/validate/FuzzyPointLocator.js +0 -71
- package/node_modules/jsts/org/locationtech/jts/operation/overlay/validate/OffsetPointGenerator.js +0 -51
- package/node_modules/jsts/org/locationtech/jts/operation/overlay/validate/OverlayResultValidator.js +0 -81
- package/node_modules/jsts/org/locationtech/jts/operation/overlay.js +0 -7
- package/node_modules/jsts/org/locationtech/jts/operation/polygonize/EdgeRing.js +0 -235
- package/node_modules/jsts/org/locationtech/jts/operation/polygonize/HoleAssigner.js +0 -44
- package/node_modules/jsts/org/locationtech/jts/operation/polygonize/PolygonizeDirectedEdge.js +0 -35
- package/node_modules/jsts/org/locationtech/jts/operation/polygonize/PolygonizeEdge.js +0 -15
- package/node_modules/jsts/org/locationtech/jts/operation/polygonize/PolygonizeGraph.js +0 -247
- package/node_modules/jsts/org/locationtech/jts/operation/polygonize/Polygonizer.js +0 -170
- package/node_modules/jsts/org/locationtech/jts/operation/polygonize.js +0 -5
- package/node_modules/jsts/org/locationtech/jts/operation/predicate/RectangleContains.js +0 -62
- package/node_modules/jsts/org/locationtech/jts/operation/predicate/RectangleIntersects.js +0 -151
- package/node_modules/jsts/org/locationtech/jts/operation/relate/EdgeEndBuilder.js +0 -56
- package/node_modules/jsts/org/locationtech/jts/operation/relate/EdgeEndBundle.js +0 -93
- package/node_modules/jsts/org/locationtech/jts/operation/relate/EdgeEndBundleStar.js +0 -22
- package/node_modules/jsts/org/locationtech/jts/operation/relate/RelateComputer.js +0 -168
- package/node_modules/jsts/org/locationtech/jts/operation/relate/RelateNode.js +0 -17
- package/node_modules/jsts/org/locationtech/jts/operation/relate/RelateNodeFactory.js +0 -11
- package/node_modules/jsts/org/locationtech/jts/operation/relate/RelateNodeGraph.js +0 -48
- package/node_modules/jsts/org/locationtech/jts/operation/relate/RelateOp.js +0 -101
- package/node_modules/jsts/org/locationtech/jts/operation/relate.js +0 -5
- package/node_modules/jsts/org/locationtech/jts/operation/union/CascadedPolygonUnion.js +0 -124
- package/node_modules/jsts/org/locationtech/jts/operation/union/InputExtracter.js +0 -93
- package/node_modules/jsts/org/locationtech/jts/operation/union/OverlapUnion.js +0 -146
- package/node_modules/jsts/org/locationtech/jts/operation/union/PointGeometryUnion.js +0 -42
- package/node_modules/jsts/org/locationtech/jts/operation/union/UnaryUnionOp.js +0 -97
- package/node_modules/jsts/org/locationtech/jts/operation/union/UnionInteracting.js +0 -70
- package/node_modules/jsts/org/locationtech/jts/operation/union/UnionOp.js +0 -22
- package/node_modules/jsts/org/locationtech/jts/operation/union.js +0 -5
- package/node_modules/jsts/org/locationtech/jts/operation/valid/ConnectedInteriorTester.js +0 -118
- package/node_modules/jsts/org/locationtech/jts/operation/valid/ConsistentAreaTester.js +0 -50
- package/node_modules/jsts/org/locationtech/jts/operation/valid/IndexedNestedRingTester.js +0 -56
- package/node_modules/jsts/org/locationtech/jts/operation/valid/IsValidOp.js +0 -323
- package/node_modules/jsts/org/locationtech/jts/operation/valid/RepeatedPointTester.js +0 -48
- package/node_modules/jsts/org/locationtech/jts/operation/valid/TopologyValidationError.js +0 -44
- package/node_modules/jsts/org/locationtech/jts/operation/valid.js +0 -7
- package/node_modules/jsts/org/locationtech/jts/operation.js +0 -23
- package/node_modules/jsts/org/locationtech/jts/planargraph/DirectedEdge.js +0 -99
- package/node_modules/jsts/org/locationtech/jts/planargraph/DirectedEdgeStar.js +0 -75
- package/node_modules/jsts/org/locationtech/jts/planargraph/Edge.js +0 -46
- package/node_modules/jsts/org/locationtech/jts/planargraph/GraphComponent.js +0 -53
- package/node_modules/jsts/org/locationtech/jts/planargraph/Node.js +0 -55
- package/node_modules/jsts/org/locationtech/jts/planargraph/NodeMap.js +0 -25
- package/node_modules/jsts/org/locationtech/jts/planargraph/PlanarGraph.js +0 -96
- package/node_modules/jsts/org/locationtech/jts/planargraph/Subgraph.js +0 -39
- package/node_modules/jsts/org/locationtech/jts/planargraph/algorithm/ConnectedSubgraphFinder.js +0 -48
- package/node_modules/jsts/org/locationtech/jts/precision/CommonBits.js +0 -86
- package/node_modules/jsts/org/locationtech/jts/precision/CommonBitsOp.js +0 -58
- package/node_modules/jsts/org/locationtech/jts/precision/CommonBitsRemover.js +0 -81
- package/node_modules/jsts/org/locationtech/jts/precision/CoordinatePrecisionReducerFilter.js +0 -24
- package/node_modules/jsts/org/locationtech/jts/precision/EnhancedPrecisionOp.js +0 -109
- package/node_modules/jsts/org/locationtech/jts/precision/GeometryPrecisionReducer.js +0 -80
- package/node_modules/jsts/org/locationtech/jts/precision/MinimumClearance.js +0 -125
- package/node_modules/jsts/org/locationtech/jts/precision/PrecisionReducerCoordinateOperation.js +0 -44
- package/node_modules/jsts/org/locationtech/jts/precision/SimpleMinimumClearance.js +0 -114
- package/node_modules/jsts/org/locationtech/jts/precision.js +0 -17
- package/node_modules/jsts/org/locationtech/jts/shape/GeometricShapeBuilder.js +0 -50
- package/node_modules/jsts/org/locationtech/jts/shape/fractal/HilbertCode.js +0 -109
- package/node_modules/jsts/org/locationtech/jts/shape/fractal/HilbertCurveBuilder.js +0 -44
- package/node_modules/jsts/org/locationtech/jts/shape/fractal/KochSnowflakeBuilder.js +0 -65
- package/node_modules/jsts/org/locationtech/jts/shape/fractal/MortonCode.js +0 -49
- package/node_modules/jsts/org/locationtech/jts/shape/fractal/MortonCurveBuilder.js +0 -43
- package/node_modules/jsts/org/locationtech/jts/shape/fractal/SierpinskiCarpetBuilder.js +0 -52
- package/node_modules/jsts/org/locationtech/jts/shape/random/RandomPointsBuilder.js +0 -60
- package/node_modules/jsts/org/locationtech/jts/shape/random/RandomPointsInGridBuilder.js +0 -71
- package/node_modules/jsts/org/locationtech/jts/simplify/DouglasPeuckerLineSimplifier.js +0 -60
- package/node_modules/jsts/org/locationtech/jts/simplify/DouglasPeuckerSimplifier.js +0 -81
- package/node_modules/jsts/org/locationtech/jts/simplify/LineSegmentIndex.js +0 -58
- package/node_modules/jsts/org/locationtech/jts/simplify/TaggedLineSegment.js +0 -26
- package/node_modules/jsts/org/locationtech/jts/simplify/TaggedLineString.js +0 -71
- package/node_modules/jsts/org/locationtech/jts/simplify/TaggedLineStringSimplifier.js +0 -124
- package/node_modules/jsts/org/locationtech/jts/simplify/TaggedLinesSimplifier.js +0 -25
- package/node_modules/jsts/org/locationtech/jts/simplify/TopologyPreservingSimplifier.js +0 -79
- package/node_modules/jsts/org/locationtech/jts/simplify/VWLineSimplifier.js +0 -126
- package/node_modules/jsts/org/locationtech/jts/simplify/VWSimplifier.js +0 -81
- package/node_modules/jsts/org/locationtech/jts/simplify.js +0 -9
- package/node_modules/jsts/org/locationtech/jts/triangulate/ConformingDelaunayTriangulationBuilder.js +0 -90
- package/node_modules/jsts/org/locationtech/jts/triangulate/ConformingDelaunayTriangulator.js +0 -215
- package/node_modules/jsts/org/locationtech/jts/triangulate/ConstraintEnforcementException.js +0 -27
- package/node_modules/jsts/org/locationtech/jts/triangulate/ConstraintSplitPointFinder.js +0 -3
- package/node_modules/jsts/org/locationtech/jts/triangulate/ConstraintVertex.js +0 -32
- package/node_modules/jsts/org/locationtech/jts/triangulate/ConstraintVertexFactory.js +0 -3
- package/node_modules/jsts/org/locationtech/jts/triangulate/DelaunayTriangulationBuilder.js +0 -80
- package/node_modules/jsts/org/locationtech/jts/triangulate/IncrementalDelaunayTriangulator.js +0 -46
- package/node_modules/jsts/org/locationtech/jts/triangulate/MidpointSplitPointFinder.js +0 -12
- package/node_modules/jsts/org/locationtech/jts/triangulate/NonEncroachingSplitPointFinder.js +0 -27
- package/node_modules/jsts/org/locationtech/jts/triangulate/Segment.js +0 -73
- package/node_modules/jsts/org/locationtech/jts/triangulate/SplitSegment.js +0 -51
- package/node_modules/jsts/org/locationtech/jts/triangulate/VertexTaggedGeometryDataMapper.js +0 -44
- package/node_modules/jsts/org/locationtech/jts/triangulate/VoronoiDiagramBuilder.js +0 -78
- package/node_modules/jsts/org/locationtech/jts/triangulate/quadedge/EdgeConnectedTriangleTraversal.js +0 -35
- package/node_modules/jsts/org/locationtech/jts/triangulate/quadedge/LastFoundQuadEdgeLocator.js +0 -31
- package/node_modules/jsts/org/locationtech/jts/triangulate/quadedge/LocateFailureException.js +0 -32
- package/node_modules/jsts/org/locationtech/jts/triangulate/quadedge/QuadEdge.js +0 -142
- package/node_modules/jsts/org/locationtech/jts/triangulate/quadedge/QuadEdgeLocator.js +0 -3
- package/node_modules/jsts/org/locationtech/jts/triangulate/quadedge/QuadEdgeSubdivision.js +0 -443
- package/node_modules/jsts/org/locationtech/jts/triangulate/quadedge/QuadEdgeTriangle.js +0 -184
- package/node_modules/jsts/org/locationtech/jts/triangulate/quadedge/QuadEdgeUtil.js +0 -12
- package/node_modules/jsts/org/locationtech/jts/triangulate/quadedge/TraversalVisitor.js +0 -3
- package/node_modules/jsts/org/locationtech/jts/triangulate/quadedge/TrianglePredicate.js +0 -106
- package/node_modules/jsts/org/locationtech/jts/triangulate/quadedge/TriangleVisitor.js +0 -3
- package/node_modules/jsts/org/locationtech/jts/triangulate/quadedge/Vertex.js +0 -199
- package/node_modules/jsts/org/locationtech/jts/triangulate/quadedge.js +0 -5
- package/node_modules/jsts/org/locationtech/jts/triangulate.js +0 -11
- package/node_modules/jsts/org/locationtech/jts/util/Assert.js +0 -37
- package/node_modules/jsts/org/locationtech/jts/util/AssertionFailedException.js +0 -15
- package/node_modules/jsts/org/locationtech/jts/util/CollectionUtil.js +0 -27
- package/node_modules/jsts/org/locationtech/jts/util/CoordinateArrayFilter.js +0 -21
- package/node_modules/jsts/org/locationtech/jts/util/CoordinateCountFilter.js +0 -18
- package/node_modules/jsts/org/locationtech/jts/util/GeometricShapeFactory.js +0 -258
- package/node_modules/jsts/org/locationtech/jts/util/IntArrayList.js +0 -42
- package/node_modules/jsts/org/locationtech/jts/util/Memory.js +0 -41
- package/node_modules/jsts/org/locationtech/jts/util/NumberUtil.js +0 -5
- package/node_modules/jsts/org/locationtech/jts/util/ObjectCounter.js +0 -36
- package/node_modules/jsts/org/locationtech/jts/util/PriorityQueue.js +0 -56
- package/node_modules/jsts/org/locationtech/jts/util/StringUtil.js +0 -63
- package/node_modules/jsts/org/locationtech/jts/util/TestBuilderProxy.js +0 -33
- package/node_modules/jsts/org/locationtech/jts/util/UniqueCoordinateArrayFilter.js +0 -31
- package/node_modules/jsts/org/locationtech/jts/util.js +0 -21
- package/node_modules/jsts/package.json +0 -62
- package/node_modules/point-in-polygon/LICENSE +0 -21
- package/node_modules/point-in-polygon/example/inside.js +0 -6
- package/node_modules/point-in-polygon/flat.js +0 -15
- package/node_modules/point-in-polygon/index.js +0 -12
- package/node_modules/point-in-polygon/nested.js +0 -18
- package/node_modules/point-in-polygon/package.json +0 -32
- package/node_modules/point-in-polygon/readme.markdown +0 -51
- package/node_modules/point-in-polygon/test/box-offset.js +0 -24
- package/node_modules/point-in-polygon/test/box.js +0 -34
- package/node_modules/point-in-polygon/test/flat-offset.js +0 -24
- package/node_modules/point-in-polygon/test/flat.js +0 -24
- package/node_modules/point-in-polygon-hao/LICENSE +0 -20
- package/node_modules/point-in-polygon-hao/README.md +0 -74
- package/node_modules/point-in-polygon-hao/dist/cjs/index.cjs +0 -322
- package/node_modules/point-in-polygon-hao/dist/cjs/index.d.cts +0 -10
- package/node_modules/point-in-polygon-hao/dist/esm/index.d.ts +0 -10
- package/node_modules/point-in-polygon-hao/dist/esm/index.js +0 -56
- package/node_modules/point-in-polygon-hao/dist/pointInPolygon.js +0 -328
- package/node_modules/point-in-polygon-hao/dist/pointInPolygon.min.js +0 -1
- package/node_modules/point-in-polygon-hao/node_modules/robust-predicates/LICENSE +0 -24
- package/node_modules/point-in-polygon-hao/node_modules/robust-predicates/README.md +0 -82
- package/node_modules/point-in-polygon-hao/node_modules/robust-predicates/esm/incircle.js +0 -765
- package/node_modules/point-in-polygon-hao/node_modules/robust-predicates/esm/insphere.js +0 -766
- package/node_modules/point-in-polygon-hao/node_modules/robust-predicates/esm/orient2d.js +0 -184
- package/node_modules/point-in-polygon-hao/node_modules/robust-predicates/esm/orient3d.js +0 -462
- package/node_modules/point-in-polygon-hao/node_modules/robust-predicates/esm/util.js +0 -138
- package/node_modules/point-in-polygon-hao/node_modules/robust-predicates/index.d.ts +0 -49
- package/node_modules/point-in-polygon-hao/node_modules/robust-predicates/index.js +0 -5
- package/node_modules/point-in-polygon-hao/node_modules/robust-predicates/package.json +0 -75
- package/node_modules/point-in-polygon-hao/node_modules/robust-predicates/umd/incircle.js +0 -908
- package/node_modules/point-in-polygon-hao/node_modules/robust-predicates/umd/incircle.min.js +0 -1
- package/node_modules/point-in-polygon-hao/node_modules/robust-predicates/umd/insphere.js +0 -914
- package/node_modules/point-in-polygon-hao/node_modules/robust-predicates/umd/insphere.min.js +0 -1
- package/node_modules/point-in-polygon-hao/node_modules/robust-predicates/umd/orient2d.js +0 -280
- package/node_modules/point-in-polygon-hao/node_modules/robust-predicates/umd/orient2d.min.js +0 -1
- package/node_modules/point-in-polygon-hao/node_modules/robust-predicates/umd/orient3d.js +0 -601
- package/node_modules/point-in-polygon-hao/node_modules/robust-predicates/umd/orient3d.min.js +0 -1
- package/node_modules/point-in-polygon-hao/node_modules/robust-predicates/umd/predicates.js +0 -2328
- package/node_modules/point-in-polygon-hao/node_modules/robust-predicates/umd/predicates.min.js +0 -1
- package/node_modules/point-in-polygon-hao/package.json +0 -57
- package/node_modules/polyclip-ts/LICENSE +0 -21
- package/node_modules/polyclip-ts/README.md +0 -101
- package/node_modules/polyclip-ts/dist/cjs/index.cjs +0 -1179
- package/node_modules/polyclip-ts/dist/cjs/index.cjs.map +0 -1
- package/node_modules/polyclip-ts/dist/cjs/index.d.cts +0 -12
- package/node_modules/polyclip-ts/dist/esm/index.d.ts +0 -12
- package/node_modules/polyclip-ts/dist/esm/index.js +0 -1138
- package/node_modules/polyclip-ts/dist/esm/index.js.map +0 -1
- package/node_modules/polyclip-ts/dist/polyclip-ts.umd.js +0 -4811
- package/node_modules/polyclip-ts/dist/polyclip-ts.umd.min.js +0 -2
- package/node_modules/polyclip-ts/package.json +0 -72
- package/node_modules/quickselect/LICENSE +0 -15
- package/node_modules/quickselect/README.md +0 -28
- package/node_modules/quickselect/index.js +0 -54
- package/node_modules/quickselect/package.json +0 -43
- package/node_modules/quickselect/quickselect.js +0 -63
- package/node_modules/rbush/LICENSE +0 -21
- package/node_modules/rbush/README.md +0 -218
- package/node_modules/rbush/index.js +0 -512
- package/node_modules/rbush/package.json +0 -56
- package/node_modules/rbush/rbush.js +0 -574
- package/node_modules/rbush/rbush.min.js +0 -1
- package/node_modules/robust-predicates/LICENSE +0 -24
- package/node_modules/robust-predicates/README.md +0 -82
- package/node_modules/robust-predicates/esm/incircle.js +0 -765
- package/node_modules/robust-predicates/esm/insphere.js +0 -775
- package/node_modules/robust-predicates/esm/orient2d.js +0 -186
- package/node_modules/robust-predicates/esm/orient3d.js +0 -462
- package/node_modules/robust-predicates/esm/util.js +0 -138
- package/node_modules/robust-predicates/index.js +0 -5
- package/node_modules/robust-predicates/package.json +0 -68
- package/node_modules/robust-predicates/umd/incircle.js +0 -910
- package/node_modules/robust-predicates/umd/incircle.min.js +0 -1
- package/node_modules/robust-predicates/umd/insphere.js +0 -925
- package/node_modules/robust-predicates/umd/insphere.min.js +0 -1
- package/node_modules/robust-predicates/umd/orient2d.js +0 -284
- package/node_modules/robust-predicates/umd/orient2d.min.js +0 -1
- package/node_modules/robust-predicates/umd/orient3d.js +0 -603
- package/node_modules/robust-predicates/umd/orient3d.min.js +0 -1
- package/node_modules/robust-predicates/umd/predicates.js +0 -2341
- package/node_modules/robust-predicates/umd/predicates.min.js +0 -1
- package/node_modules/skmeans/.gitattributes +0 -17
- package/node_modules/skmeans/.npmignore +0 -52
- package/node_modules/skmeans/Gruntfile.js +0 -49
- package/node_modules/skmeans/README.md +0 -62
- package/node_modules/skmeans/browser.js +0 -19
- package/node_modules/skmeans/dist/browser/skmeans.js +0 -339
- package/node_modules/skmeans/dist/browser/skmeans.js.map +0 -1
- package/node_modules/skmeans/dist/browser/skmeans.min.js +0 -3
- package/node_modules/skmeans/dist/index.html +0 -15
- package/node_modules/skmeans/dist/node/Gruntfile.js +0 -49
- package/node_modules/skmeans/dist/node/Gruntfile.js.map +0 -1
- package/node_modules/skmeans/dist/node/browser.js +0 -19
- package/node_modules/skmeans/dist/node/browser.js.map +0 -1
- package/node_modules/skmeans/dist/node/distance.js +0 -39
- package/node_modules/skmeans/dist/node/distance.js.map +0 -1
- package/node_modules/skmeans/dist/node/kinit.js +0 -110
- package/node_modules/skmeans/dist/node/kinit.js.map +0 -1
- package/node_modules/skmeans/dist/node/main.js +0 -161
- package/node_modules/skmeans/dist/node/main.js.map +0 -1
- package/node_modules/skmeans/distance.js +0 -37
- package/node_modules/skmeans/kinit.js +0 -102
- package/node_modules/skmeans/main.js +0 -147
- package/node_modules/skmeans/package.json +0 -33
- package/node_modules/skmeans/test/data/random_pts.js +0 -1
- package/node_modules/skmeans/test/data/well-separated.js +0 -1
- package/node_modules/skmeans/test/multi.js +0 -15
- package/node_modules/skmeans/test/stats.js +0 -65
- package/node_modules/skmeans/test/test.js +0 -42
- package/node_modules/skmeans/test/test_rand.js +0 -23
- package/node_modules/skmeans/test/test_ws.js +0 -23
- package/node_modules/skmeans/test/uni.js +0 -15
- package/node_modules/splaytree-ts/LICENSE +0 -29
- package/node_modules/splaytree-ts/README.md +0 -296
- package/node_modules/splaytree-ts/dist/cjs/index.cjs +0 -714
- package/node_modules/splaytree-ts/dist/cjs/index.cjs.map +0 -1
- package/node_modules/splaytree-ts/dist/cjs/index.d.cts +0 -105
- package/node_modules/splaytree-ts/dist/esm/index.d.ts +0 -105
- package/node_modules/splaytree-ts/dist/esm/index.js +0 -688
- package/node_modules/splaytree-ts/dist/esm/index.js.map +0 -1
- package/node_modules/splaytree-ts/dist/splaytree-ts.umd.js +0 -736
- package/node_modules/splaytree-ts/dist/splaytree-ts.umd.min.js +0 -2
- package/node_modules/splaytree-ts/package.json +0 -59
- package/node_modules/sweepline-intersections/LICENSE +0 -21
- package/node_modules/sweepline-intersections/README.md +0 -118
- package/node_modules/sweepline-intersections/dist/SweeplineIntersectionsClass.esm.js +0 -277
- package/node_modules/sweepline-intersections/dist/SweeplineIntersectionsClass.js +0 -281
- package/node_modules/sweepline-intersections/dist/sweeplineIntersections.esm.js +0 -253
- package/node_modules/sweepline-intersections/dist/sweeplineIntersections.js +0 -260
- package/node_modules/sweepline-intersections/dist/sweeplineIntersections.min.js +0 -1
- package/node_modules/sweepline-intersections/package.json +0 -79
- package/node_modules/sweepline-intersections/types.d.ts +0 -8
- package/node_modules/tinyqueue/LICENSE +0 -15
- package/node_modules/tinyqueue/README.md +0 -59
- package/node_modules/tinyqueue/index.d.ts +0 -11
- package/node_modules/tinyqueue/index.js +0 -79
- package/node_modules/tinyqueue/package.json +0 -53
- package/node_modules/tinyqueue/tinyqueue.js +0 -93
- package/node_modules/tinyqueue/tinyqueue.min.js +0 -1
- package/node_modules/topojson-client/LICENSE +0 -13
- package/node_modules/topojson-client/README.md +0 -242
- package/node_modules/topojson-client/bin/topo2geo +0 -106
- package/node_modules/topojson-client/bin/topomerge +0 -216
- package/node_modules/topojson-client/bin/topoquantize +0 -74
- package/node_modules/topojson-client/dist/topojson-client.js +0 -508
- package/node_modules/topojson-client/dist/topojson-client.min.js +0 -2
- package/node_modules/topojson-client/package.json +0 -49
- package/node_modules/topojson-client/src/bbox.js +0 -39
- package/node_modules/topojson-client/src/bisect.js +0 -9
- package/node_modules/topojson-client/src/feature.js +0 -70
- package/node_modules/topojson-client/src/identity.js +0 -3
- package/node_modules/topojson-client/src/index.js +0 -8
- package/node_modules/topojson-client/src/merge.js +0 -103
- package/node_modules/topojson-client/src/mesh.js +0 -53
- package/node_modules/topojson-client/src/neighbors.js +0 -45
- package/node_modules/topojson-client/src/quantize.js +0 -54
- package/node_modules/topojson-client/src/reverse.js +0 -4
- package/node_modules/topojson-client/src/stitch.js +0 -73
- package/node_modules/topojson-client/src/transform.js +0 -19
- package/node_modules/topojson-client/src/untransform.js +0 -23
- package/node_modules/topojson-server/LICENSE +0 -13
- package/node_modules/topojson-server/README.md +0 -75
- package/node_modules/topojson-server/bin/geo2topo +0 -125
- package/node_modules/topojson-server/dist/topojson-server.js +0 -838
- package/node_modules/topojson-server/dist/topojson-server.min.js +0 -2
- package/node_modules/topojson-server/package.json +0 -47
- package/node_modules/topojson-server/src/bounds.js +0 -46
- package/node_modules/topojson-server/src/cut.js +0 -62
- package/node_modules/topojson-server/src/dedup.js +0 -187
- package/node_modules/topojson-server/src/delta.js +0 -30
- package/node_modules/topojson-server/src/extract.js +0 -67
- package/node_modules/topojson-server/src/geometry.js +0 -39
- package/node_modules/topojson-server/src/hash/hashmap.js +0 -70
- package/node_modules/topojson-server/src/hash/hashset.js +0 -53
- package/node_modules/topojson-server/src/hash/point-equal.js +0 -3
- package/node_modules/topojson-server/src/hash/point-hash.js +0 -13
- package/node_modules/topojson-server/src/index.js +0 -1
- package/node_modules/topojson-server/src/join.js +0 -116
- package/node_modules/topojson-server/src/object.js +0 -1
- package/node_modules/topojson-server/src/prequantize.js +0 -72
- package/node_modules/topojson-server/src/topology.js +0 -80
- package/node_modules/uuid/dist/uuid-bin.js +0 -70
- package/node_modules/uuid/dist/v4.js +0 -30
- package/node_modules/uuid/dist-node/md5.js +0 -11
- package/node_modules/uuid/dist-node/native.js +0 -2
- package/node_modules/uuid/dist-node/rng.js +0 -10
- package/node_modules/uuid/dist-node/sha1.js +0 -11
- package/node_modules/uuid/dist-node/uuid-bin.js +0 -70
- package/node_modules/uuid/dist-node/v4.js +0 -30
- package/tak-registration.bak +0 -557
- /package/node_modules/uuid/{dist-node/types.js → dist/cjs/uuid-bin.d.ts} +0 -0
- /package/node_modules/uuid/dist/{index.d.ts → cjs-browser/index.d.ts} +0 -0
- /package/node_modules/uuid/dist/{max.d.ts → cjs-browser/max.d.ts} +0 -0
- /package/node_modules/uuid/dist/{md5.d.ts → cjs-browser/md5.d.ts} +0 -0
- /package/node_modules/uuid/dist/{native.d.ts → cjs-browser/native.d.ts} +0 -0
- /package/node_modules/uuid/dist/{nil.d.ts → cjs-browser/nil.d.ts} +0 -0
- /package/node_modules/uuid/dist/{parse.d.ts → cjs-browser/parse.d.ts} +0 -0
- /package/node_modules/uuid/dist/{regex.d.ts → cjs-browser/regex.d.ts} +0 -0
- /package/node_modules/uuid/dist/{rng.d.ts → cjs-browser/rng.d.ts} +0 -0
- /package/node_modules/uuid/dist/{sha1.d.ts → cjs-browser/sha1.d.ts} +0 -0
- /package/node_modules/uuid/dist/{stringify.d.ts → cjs-browser/stringify.d.ts} +0 -0
- /package/node_modules/uuid/dist/{types.d.ts → cjs-browser/types.d.ts} +0 -0
- /package/node_modules/uuid/dist/{uuid-bin.d.ts → cjs-browser/uuid-bin.d.ts} +0 -0
- /package/node_modules/uuid/dist/{v1.d.ts → cjs-browser/v1.d.ts} +0 -0
- /package/node_modules/uuid/dist/{v1ToV6.d.ts → cjs-browser/v1ToV6.d.ts} +0 -0
- /package/node_modules/uuid/dist/{v3.d.ts → cjs-browser/v3.d.ts} +0 -0
- /package/node_modules/uuid/dist/{v35.d.ts → cjs-browser/v35.d.ts} +0 -0
- /package/node_modules/uuid/dist/{v4.d.ts → cjs-browser/v4.d.ts} +0 -0
- /package/node_modules/uuid/dist/{v5.d.ts → cjs-browser/v5.d.ts} +0 -0
- /package/node_modules/uuid/dist/{v6.d.ts → cjs-browser/v6.d.ts} +0 -0
- /package/node_modules/uuid/dist/{v6ToV1.d.ts → cjs-browser/v6ToV1.d.ts} +0 -0
- /package/node_modules/uuid/dist/{v7.d.ts → cjs-browser/v7.d.ts} +0 -0
- /package/node_modules/uuid/dist/{validate.d.ts → cjs-browser/validate.d.ts} +0 -0
- /package/node_modules/uuid/dist/{version.d.ts → cjs-browser/version.d.ts} +0 -0
- /package/node_modules/uuid/{dist-node → dist/esm}/bin/uuid +0 -0
- /package/node_modules/uuid/dist/{index.js → esm/index.js} +0 -0
- /package/node_modules/uuid/dist/{max.js → esm/max.js} +0 -0
- /package/node_modules/uuid/dist/{nil.js → esm/nil.js} +0 -0
- /package/node_modules/uuid/dist/{parse.js → esm/parse.js} +0 -0
- /package/node_modules/uuid/dist/{regex.js → esm/regex.js} +0 -0
- /package/node_modules/uuid/dist/{stringify.js → esm/stringify.js} +0 -0
- /package/node_modules/uuid/dist/{v1.js → esm/v1.js} +0 -0
- /package/node_modules/uuid/dist/{v1ToV6.js → esm/v1ToV6.js} +0 -0
- /package/node_modules/uuid/dist/{v3.js → esm/v3.js} +0 -0
- /package/node_modules/uuid/dist/{v35.js → esm/v35.js} +0 -0
- /package/node_modules/uuid/dist/{v5.js → esm/v5.js} +0 -0
- /package/node_modules/uuid/dist/{v6.js → esm/v6.js} +0 -0
- /package/node_modules/uuid/dist/{v6ToV1.js → esm/v6ToV1.js} +0 -0
- /package/node_modules/uuid/dist/{v7.js → esm/v7.js} +0 -0
- /package/node_modules/uuid/dist/{validate.js → esm/validate.js} +0 -0
- /package/node_modules/uuid/dist/{version.js → esm/version.js} +0 -0
- /package/node_modules/uuid/{dist-node → dist/esm-browser}/index.js +0 -0
- /package/node_modules/uuid/{dist-node → dist/esm-browser}/max.js +0 -0
- /package/node_modules/uuid/dist/{md5.js → esm-browser/md5.js} +0 -0
- /package/node_modules/uuid/dist/{native.js → esm-browser/native.js} +0 -0
- /package/node_modules/uuid/{dist-node → dist/esm-browser}/nil.js +0 -0
- /package/node_modules/uuid/{dist-node → dist/esm-browser}/parse.js +0 -0
- /package/node_modules/uuid/{dist-node → dist/esm-browser}/regex.js +0 -0
- /package/node_modules/uuid/dist/{rng.js → esm-browser/rng.js} +0 -0
- /package/node_modules/uuid/dist/{sha1.js → esm-browser/sha1.js} +0 -0
- /package/node_modules/uuid/{dist-node → dist/esm-browser}/stringify.js +0 -0
- /package/node_modules/uuid/dist/{types.js → esm-browser/types.js} +0 -0
- /package/node_modules/uuid/{dist-node → dist/esm-browser}/v1.js +0 -0
- /package/node_modules/uuid/{dist-node → dist/esm-browser}/v1ToV6.js +0 -0
- /package/node_modules/uuid/{dist-node → dist/esm-browser}/v3.js +0 -0
- /package/node_modules/uuid/{dist-node → dist/esm-browser}/v35.js +0 -0
- /package/node_modules/uuid/{dist-node → dist/esm-browser}/v5.js +0 -0
- /package/node_modules/uuid/{dist-node → dist/esm-browser}/v6.js +0 -0
- /package/node_modules/uuid/{dist-node → dist/esm-browser}/v6ToV1.js +0 -0
- /package/node_modules/uuid/{dist-node → dist/esm-browser}/v7.js +0 -0
- /package/node_modules/uuid/{dist-node → dist/esm-browser}/validate.js +0 -0
- /package/node_modules/uuid/{dist-node → dist/esm-browser}/version.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"./lib/fxp.min.js","mappings":"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","sources":["webpack://fxp/webpack/universalModuleDefinition","webpack://fxp/webpack/bootstrap","webpack://fxp/webpack/runtime/define property getters","webpack://fxp/webpack/runtime/hasOwnProperty shorthand","webpack://fxp/webpack/runtime/make namespace object","webpack://fxp/./src/util.js","webpack://fxp/./src/validator.js","webpack://fxp/./src/xmlparser/OptionsBuilder.js","webpack://fxp/./src/xmlparser/xmlNode.js","webpack://fxp/./src/xmlparser/DocTypeReader.js","webpack://fxp/./node_modules/strnum/strnum.js","webpack://fxp/./src/ignoreAttributes.js","webpack://fxp/./src/xmlparser/OrderedObjParser.js","webpack://fxp/./src/xmlparser/node2json.js","webpack://fxp/./src/xmlparser/XMLParser.js","webpack://fxp/./src/xmlbuilder/orderedJs2Xml.js","webpack://fxp/./src/xmlbuilder/json2xml.js","webpack://fxp/./src/fxp.js"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"fxp\"] = factory();\n\telse\n\t\troot[\"fxp\"] = factory();\n})(this, () => {\nreturn ","// The require scope\nvar __webpack_require__ = {};\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","'use strict';\n\nconst nameStartChar = ':A-Za-z_\\\\u00C0-\\\\u00D6\\\\u00D8-\\\\u00F6\\\\u00F8-\\\\u02FF\\\\u0370-\\\\u037D\\\\u037F-\\\\u1FFF\\\\u200C-\\\\u200D\\\\u2070-\\\\u218F\\\\u2C00-\\\\u2FEF\\\\u3001-\\\\uD7FF\\\\uF900-\\\\uFDCF\\\\uFDF0-\\\\uFFFD';\nconst nameChar = nameStartChar + '\\\\-.\\\\d\\\\u00B7\\\\u0300-\\\\u036F\\\\u203F-\\\\u2040';\nexport const nameRegexp = '[' + nameStartChar + '][' + nameChar + ']*';\nconst regexName = new RegExp('^' + nameRegexp + '$');\n\nexport function getAllMatches(string, regex) {\n const matches = [];\n let match = regex.exec(string);\n while (match) {\n const allmatches = [];\n allmatches.startIndex = regex.lastIndex - match[0].length;\n const len = match.length;\n for (let index = 0; index < len; index++) {\n allmatches.push(match[index]);\n }\n matches.push(allmatches);\n match = regex.exec(string);\n }\n return matches;\n}\n\nexport const isName = function(string) {\n const match = regexName.exec(string);\n return !(match === null || typeof match === 'undefined');\n}\n\nexport function isExist(v) {\n return typeof v !== 'undefined';\n}\n\nexport function isEmptyObject(obj) {\n return Object.keys(obj).length === 0;\n}\n\n/**\n * Copy all the properties of a into b.\n * @param {*} target\n * @param {*} a\n */\nexport function merge(target, a, arrayMode) {\n if (a) {\n const keys = Object.keys(a); // will return an array of own properties\n const len = keys.length; //don't make it inline\n for (let i = 0; i < len; i++) {\n if (arrayMode === 'strict') {\n target[keys[i]] = [ a[keys[i]] ];\n } else {\n target[keys[i]] = a[keys[i]];\n }\n }\n }\n}\n/* exports.merge =function (b,a){\n return Object.assign(b,a);\n} */\n\nexport function getValue(v) {\n if (exports.isExist(v)) {\n return v;\n } else {\n return '';\n }\n}\n\n// const fakeCall = function(a) {return a;};\n// const fakeCallNoReturn = function() {};","'use strict';\n\nimport {getAllMatches, isName} from './util.js';\n\nconst defaultOptions = {\n allowBooleanAttributes: false, //A tag can have attributes without any value\n unpairedTags: []\n};\n\n//const tagsPattern = new RegExp(\"<\\\\/?([\\\\w:\\\\-_\\.]+)\\\\s*\\/?>\",\"g\");\nexport function validate(xmlData, options) {\n options = Object.assign({}, defaultOptions, options);\n\n //xmlData = xmlData.replace(/(\\r\\n|\\n|\\r)/gm,\"\");//make it single line\n //xmlData = xmlData.replace(/(^\\s*<\\?xml.*?\\?>)/g,\"\");//Remove XML starting tag\n //xmlData = xmlData.replace(/(<!DOCTYPE[\\s\\w\\\"\\.\\/\\-\\:]+(\\[.*\\])*\\s*>)/g,\"\");//Remove DOCTYPE\n const tags = [];\n let tagFound = false;\n\n //indicates that the root tag has been closed (aka. depth 0 has been reached)\n let reachedRoot = false;\n\n if (xmlData[0] === '\\ufeff') {\n // check for byte order mark (BOM)\n xmlData = xmlData.substr(1);\n }\n \n for (let i = 0; i < xmlData.length; i++) {\n\n if (xmlData[i] === '<' && xmlData[i+1] === '?') {\n i+=2;\n i = readPI(xmlData,i);\n if (i.err) return i;\n }else if (xmlData[i] === '<') {\n //starting of tag\n //read until you reach to '>' avoiding any '>' in attribute value\n let tagStartPos = i;\n i++;\n \n if (xmlData[i] === '!') {\n i = readCommentAndCDATA(xmlData, i);\n continue;\n } else {\n let closingTag = false;\n if (xmlData[i] === '/') {\n //closing tag\n closingTag = true;\n i++;\n }\n //read tagname\n let tagName = '';\n for (; i < xmlData.length &&\n xmlData[i] !== '>' &&\n xmlData[i] !== ' ' &&\n xmlData[i] !== '\\t' &&\n xmlData[i] !== '\\n' &&\n xmlData[i] !== '\\r'; i++\n ) {\n tagName += xmlData[i];\n }\n tagName = tagName.trim();\n //console.log(tagName);\n\n if (tagName[tagName.length - 1] === '/') {\n //self closing tag without attributes\n tagName = tagName.substring(0, tagName.length - 1);\n //continue;\n i--;\n }\n if (!validateTagName(tagName)) {\n let msg;\n if (tagName.trim().length === 0) {\n msg = \"Invalid space after '<'.\";\n } else {\n msg = \"Tag '\"+tagName+\"' is an invalid name.\";\n }\n return getErrorObject('InvalidTag', msg, getLineNumberForPosition(xmlData, i));\n }\n\n const result = readAttributeStr(xmlData, i);\n if (result === false) {\n return getErrorObject('InvalidAttr', \"Attributes for '\"+tagName+\"' have open quote.\", getLineNumberForPosition(xmlData, i));\n }\n let attrStr = result.value;\n i = result.index;\n\n if (attrStr[attrStr.length - 1] === '/') {\n //self closing tag\n const attrStrStart = i - attrStr.length;\n attrStr = attrStr.substring(0, attrStr.length - 1);\n const isValid = validateAttributeString(attrStr, options);\n if (isValid === true) {\n tagFound = true;\n //continue; //text may presents after self closing tag\n } else {\n //the result from the nested function returns the position of the error within the attribute\n //in order to get the 'true' error line, we need to calculate the position where the attribute begins (i - attrStr.length) and then add the position within the attribute\n //this gives us the absolute index in the entire xml, which we can use to find the line at last\n return getErrorObject(isValid.err.code, isValid.err.msg, getLineNumberForPosition(xmlData, attrStrStart + isValid.err.line));\n }\n } else if (closingTag) {\n if (!result.tagClosed) {\n return getErrorObject('InvalidTag', \"Closing tag '\"+tagName+\"' doesn't have proper closing.\", getLineNumberForPosition(xmlData, i));\n } else if (attrStr.trim().length > 0) {\n return getErrorObject('InvalidTag', \"Closing tag '\"+tagName+\"' can't have attributes or invalid starting.\", getLineNumberForPosition(xmlData, tagStartPos));\n } else if (tags.length === 0) {\n return getErrorObject('InvalidTag', \"Closing tag '\"+tagName+\"' has not been opened.\", getLineNumberForPosition(xmlData, tagStartPos));\n } else {\n const otg = tags.pop();\n if (tagName !== otg.tagName) {\n let openPos = getLineNumberForPosition(xmlData, otg.tagStartPos);\n return getErrorObject('InvalidTag',\n \"Expected closing tag '\"+otg.tagName+\"' (opened in line \"+openPos.line+\", col \"+openPos.col+\") instead of closing tag '\"+tagName+\"'.\",\n getLineNumberForPosition(xmlData, tagStartPos));\n }\n\n //when there are no more tags, we reached the root level.\n if (tags.length == 0) {\n reachedRoot = true;\n }\n }\n } else {\n const isValid = validateAttributeString(attrStr, options);\n if (isValid !== true) {\n //the result from the nested function returns the position of the error within the attribute\n //in order to get the 'true' error line, we need to calculate the position where the attribute begins (i - attrStr.length) and then add the position within the attribute\n //this gives us the absolute index in the entire xml, which we can use to find the line at last\n return getErrorObject(isValid.err.code, isValid.err.msg, getLineNumberForPosition(xmlData, i - attrStr.length + isValid.err.line));\n }\n\n //if the root level has been reached before ...\n if (reachedRoot === true) {\n return getErrorObject('InvalidXml', 'Multiple possible root nodes found.', getLineNumberForPosition(xmlData, i));\n } else if(options.unpairedTags.indexOf(tagName) !== -1){\n //don't push into stack\n } else {\n tags.push({tagName, tagStartPos});\n }\n tagFound = true;\n }\n\n //skip tag text value\n //It may include comments and CDATA value\n for (i++; i < xmlData.length; i++) {\n if (xmlData[i] === '<') {\n if (xmlData[i + 1] === '!') {\n //comment or CADATA\n i++;\n i = readCommentAndCDATA(xmlData, i);\n continue;\n } else if (xmlData[i+1] === '?') {\n i = readPI(xmlData, ++i);\n if (i.err) return i;\n } else{\n break;\n }\n } else if (xmlData[i] === '&') {\n const afterAmp = validateAmpersand(xmlData, i);\n if (afterAmp == -1)\n return getErrorObject('InvalidChar', \"char '&' is not expected.\", getLineNumberForPosition(xmlData, i));\n i = afterAmp;\n }else{\n if (reachedRoot === true && !isWhiteSpace(xmlData[i])) {\n return getErrorObject('InvalidXml', \"Extra text at the end\", getLineNumberForPosition(xmlData, i));\n }\n }\n } //end of reading tag text value\n if (xmlData[i] === '<') {\n i--;\n }\n }\n } else {\n if ( isWhiteSpace(xmlData[i])) {\n continue;\n }\n return getErrorObject('InvalidChar', \"char '\"+xmlData[i]+\"' is not expected.\", getLineNumberForPosition(xmlData, i));\n }\n }\n\n if (!tagFound) {\n return getErrorObject('InvalidXml', 'Start tag expected.', 1);\n }else if (tags.length == 1) {\n return getErrorObject('InvalidTag', \"Unclosed tag '\"+tags[0].tagName+\"'.\", getLineNumberForPosition(xmlData, tags[0].tagStartPos));\n }else if (tags.length > 0) {\n return getErrorObject('InvalidXml', \"Invalid '\"+\n JSON.stringify(tags.map(t => t.tagName), null, 4).replace(/\\r?\\n/g, '')+\n \"' found.\", {line: 1, col: 1});\n }\n\n return true;\n};\n\nfunction isWhiteSpace(char){\n return char === ' ' || char === '\\t' || char === '\\n' || char === '\\r';\n}\n/**\n * Read Processing insstructions and skip\n * @param {*} xmlData\n * @param {*} i\n */\nfunction readPI(xmlData, i) {\n const start = i;\n for (; i < xmlData.length; i++) {\n if (xmlData[i] == '?' || xmlData[i] == ' ') {\n //tagname\n const tagname = xmlData.substr(start, i - start);\n if (i > 5 && tagname === 'xml') {\n return getErrorObject('InvalidXml', 'XML declaration allowed only at the start of the document.', getLineNumberForPosition(xmlData, i));\n } else if (xmlData[i] == '?' && xmlData[i + 1] == '>') {\n //check if valid attribut string\n i++;\n break;\n } else {\n continue;\n }\n }\n }\n return i;\n}\n\nfunction readCommentAndCDATA(xmlData, i) {\n if (xmlData.length > i + 5 && xmlData[i + 1] === '-' && xmlData[i + 2] === '-') {\n //comment\n for (i += 3; i < xmlData.length; i++) {\n if (xmlData[i] === '-' && xmlData[i + 1] === '-' && xmlData[i + 2] === '>') {\n i += 2;\n break;\n }\n }\n } else if (\n xmlData.length > i + 8 &&\n xmlData[i + 1] === 'D' &&\n xmlData[i + 2] === 'O' &&\n xmlData[i + 3] === 'C' &&\n xmlData[i + 4] === 'T' &&\n xmlData[i + 5] === 'Y' &&\n xmlData[i + 6] === 'P' &&\n xmlData[i + 7] === 'E'\n ) {\n let angleBracketsCount = 1;\n for (i += 8; i < xmlData.length; i++) {\n if (xmlData[i] === '<') {\n angleBracketsCount++;\n } else if (xmlData[i] === '>') {\n angleBracketsCount--;\n if (angleBracketsCount === 0) {\n break;\n }\n }\n }\n } else if (\n xmlData.length > i + 9 &&\n xmlData[i + 1] === '[' &&\n xmlData[i + 2] === 'C' &&\n xmlData[i + 3] === 'D' &&\n xmlData[i + 4] === 'A' &&\n xmlData[i + 5] === 'T' &&\n xmlData[i + 6] === 'A' &&\n xmlData[i + 7] === '['\n ) {\n for (i += 8; i < xmlData.length; i++) {\n if (xmlData[i] === ']' && xmlData[i + 1] === ']' && xmlData[i + 2] === '>') {\n i += 2;\n break;\n }\n }\n }\n\n return i;\n}\n\nconst doubleQuote = '\"';\nconst singleQuote = \"'\";\n\n/**\n * Keep reading xmlData until '<' is found outside the attribute value.\n * @param {string} xmlData\n * @param {number} i\n */\nfunction readAttributeStr(xmlData, i) {\n let attrStr = '';\n let startChar = '';\n let tagClosed = false;\n for (; i < xmlData.length; i++) {\n if (xmlData[i] === doubleQuote || xmlData[i] === singleQuote) {\n if (startChar === '') {\n startChar = xmlData[i];\n } else if (startChar !== xmlData[i]) {\n //if vaue is enclosed with double quote then single quotes are allowed inside the value and vice versa\n } else {\n startChar = '';\n }\n } else if (xmlData[i] === '>') {\n if (startChar === '') {\n tagClosed = true;\n break;\n }\n }\n attrStr += xmlData[i];\n }\n if (startChar !== '') {\n return false;\n }\n\n return {\n value: attrStr,\n index: i,\n tagClosed: tagClosed\n };\n}\n\n/**\n * Select all the attributes whether valid or invalid.\n */\nconst validAttrStrRegxp = new RegExp('(\\\\s*)([^\\\\s=]+)(\\\\s*=)?(\\\\s*([\\'\"])(([\\\\s\\\\S])*?)\\\\5)?', 'g');\n\n//attr, =\"sd\", a=\"amit's\", a=\"sd\"b=\"saf\", ab cd=\"\"\n\nfunction validateAttributeString(attrStr, options) {\n //console.log(\"start:\"+attrStr+\":end\");\n\n //if(attrStr.trim().length === 0) return true; //empty string\n\n const matches = getAllMatches(attrStr, validAttrStrRegxp);\n const attrNames = {};\n\n for (let i = 0; i < matches.length; i++) {\n if (matches[i][1].length === 0) {\n //nospace before attribute name: a=\"sd\"b=\"saf\"\n return getErrorObject('InvalidAttr', \"Attribute '\"+matches[i][2]+\"' has no space in starting.\", getPositionFromMatch(matches[i]))\n } else if (matches[i][3] !== undefined && matches[i][4] === undefined) {\n return getErrorObject('InvalidAttr', \"Attribute '\"+matches[i][2]+\"' is without value.\", getPositionFromMatch(matches[i]));\n } else if (matches[i][3] === undefined && !options.allowBooleanAttributes) {\n //independent attribute: ab\n return getErrorObject('InvalidAttr', \"boolean attribute '\"+matches[i][2]+\"' is not allowed.\", getPositionFromMatch(matches[i]));\n }\n /* else if(matches[i][6] === undefined){//attribute without value: ab=\n return { err: { code:\"InvalidAttr\",msg:\"attribute \" + matches[i][2] + \" has no value assigned.\"}};\n } */\n const attrName = matches[i][2];\n if (!validateAttrName(attrName)) {\n return getErrorObject('InvalidAttr', \"Attribute '\"+attrName+\"' is an invalid name.\", getPositionFromMatch(matches[i]));\n }\n if (!attrNames.hasOwnProperty(attrName)) {\n //check for duplicate attribute.\n attrNames[attrName] = 1;\n } else {\n return getErrorObject('InvalidAttr', \"Attribute '\"+attrName+\"' is repeated.\", getPositionFromMatch(matches[i]));\n }\n }\n\n return true;\n}\n\nfunction validateNumberAmpersand(xmlData, i) {\n let re = /\\d/;\n if (xmlData[i] === 'x') {\n i++;\n re = /[\\da-fA-F]/;\n }\n for (; i < xmlData.length; i++) {\n if (xmlData[i] === ';')\n return i;\n if (!xmlData[i].match(re))\n break;\n }\n return -1;\n}\n\nfunction validateAmpersand(xmlData, i) {\n // https://www.w3.org/TR/xml/#dt-charref\n i++;\n if (xmlData[i] === ';')\n return -1;\n if (xmlData[i] === '#') {\n i++;\n return validateNumberAmpersand(xmlData, i);\n }\n let count = 0;\n for (; i < xmlData.length; i++, count++) {\n if (xmlData[i].match(/\\w/) && count < 20)\n continue;\n if (xmlData[i] === ';')\n break;\n return -1;\n }\n return i;\n}\n\nfunction getErrorObject(code, message, lineNumber) {\n return {\n err: {\n code: code,\n msg: message,\n line: lineNumber.line || lineNumber,\n col: lineNumber.col,\n },\n };\n}\n\nfunction validateAttrName(attrName) {\n return isName(attrName);\n}\n\n// const startsWithXML = /^xml/i;\n\nfunction validateTagName(tagname) {\n return isName(tagname) /* && !tagname.match(startsWithXML) */;\n}\n\n//this function returns the line number for the character at the given index\nfunction getLineNumberForPosition(xmlData, index) {\n const lines = xmlData.substring(0, index).split(/\\r?\\n/);\n return {\n line: lines.length,\n\n // column number is last line's length + 1, because column numbering starts at 1:\n col: lines[lines.length - 1].length + 1\n };\n}\n\n//this function returns the position of the first character of match within attrStr\nfunction getPositionFromMatch(match) {\n return match.startIndex + match[1].length;\n}\n","\nexport const defaultOptions = {\n preserveOrder: false,\n attributeNamePrefix: '@_',\n attributesGroupName: false,\n textNodeName: '#text',\n ignoreAttributes: true,\n removeNSPrefix: false, // remove NS from tag name or attribute name if true\n allowBooleanAttributes: false, //a tag can have attributes without any value\n //ignoreRootElement : false,\n parseTagValue: true,\n parseAttributeValue: false,\n trimValues: true, //Trim string values of tag and attributes\n cdataPropName: false,\n numberParseOptions: {\n hex: true,\n leadingZeros: true,\n eNotation: true\n },\n tagValueProcessor: function(tagName, val) {\n return val;\n },\n attributeValueProcessor: function(attrName, val) {\n return val;\n },\n stopNodes: [], //nested tags will not be parsed even for errors\n alwaysCreateTextNode: false,\n isArray: () => false,\n commentPropName: false,\n unpairedTags: [],\n processEntities: true,\n htmlEntities: false,\n ignoreDeclaration: false,\n ignorePiTags: false,\n transformTagName: false,\n transformAttributeName: false,\n updateTag: function(tagName, jPath, attrs){\n return tagName\n },\n // skipEmptyListItem: false\n captureMetaData: false,\n};\n \nexport const buildOptions = function(options) {\n return Object.assign({}, defaultOptions, options);\n};\n","'use strict';\n\nlet METADATA_SYMBOL;\n\nif (typeof Symbol !== \"function\") {\n METADATA_SYMBOL = \"@@xmlMetadata\";\n} else {\n METADATA_SYMBOL = Symbol(\"XML Node Metadata\");\n}\n\nexport default class XmlNode{\n constructor(tagname) {\n this.tagname = tagname;\n this.child = []; //nested tags, text, cdata, comments in order\n this[\":@\"] = {}; //attributes map\n }\n add(key,val){\n // this.child.push( {name : key, val: val, isCdata: isCdata });\n if(key === \"__proto__\") key = \"#__proto__\";\n this.child.push( {[key]: val });\n }\n addChild(node, startIndex) {\n if(node.tagname === \"__proto__\") node.tagname = \"#__proto__\";\n if(node[\":@\"] && Object.keys(node[\":@\"]).length > 0){\n this.child.push( { [node.tagname]: node.child, [\":@\"]: node[\":@\"] });\n }else{\n this.child.push( { [node.tagname]: node.child });\n }\n // if requested, add the startIndex\n if (startIndex !== undefined) {\n // Note: for now we just overwrite the metadata. If we had more complex metadata,\n // we might need to do an object append here: metadata = { ...metadata, startIndex }\n this.child[this.child.length - 1][METADATA_SYMBOL] = { startIndex };\n }\n }\n /** symbol used for metadata */\n static getMetaDataSymbol() {\n return METADATA_SYMBOL;\n }\n}\n","import {isName} from '../util.js';\n\nexport default class DocTypeReader{\n constructor(processEntities){\n this.suppressValidationErr = !processEntities;\n }\n \n readDocType(xmlData, i){\n \n const entities = {};\n if( xmlData[i + 3] === 'O' &&\n xmlData[i + 4] === 'C' &&\n xmlData[i + 5] === 'T' &&\n xmlData[i + 6] === 'Y' &&\n xmlData[i + 7] === 'P' &&\n xmlData[i + 8] === 'E')\n { \n i = i+9;\n let angleBracketsCount = 1;\n let hasBody = false, comment = false;\n let exp = \"\";\n for(;i<xmlData.length;i++){\n if (xmlData[i] === '<' && !comment) { //Determine the tag type\n if( hasBody && hasSeq(xmlData, \"!ENTITY\",i)){\n i += 7; \n let entityName, val;\n [entityName, val,i] = this.readEntityExp(xmlData,i+1,this.suppressValidationErr);\n if(val.indexOf(\"&\") === -1) //Parameter entities are not supported\n entities[ entityName ] = {\n regx : RegExp( `&${entityName};`,\"g\"),\n val: val\n };\n }\n else if( hasBody && hasSeq(xmlData, \"!ELEMENT\",i)) {\n i += 8;//Not supported\n const {index} = this.readElementExp(xmlData,i+1);\n i = index;\n }else if( hasBody && hasSeq(xmlData, \"!ATTLIST\",i)){\n i += 8;//Not supported\n // const {index} = this.readAttlistExp(xmlData,i+1);\n // i = index;\n }else if( hasBody && hasSeq(xmlData, \"!NOTATION\",i)) {\n i += 9;//Not supported\n const {index} = this.readNotationExp(xmlData,i+1,this.suppressValidationErr);\n i = index;\n }else if( hasSeq(xmlData, \"!--\",i) ) comment = true;\n else throw new Error(`Invalid DOCTYPE`);\n\n angleBracketsCount++;\n exp = \"\";\n } else if (xmlData[i] === '>') { //Read tag content\n if(comment){\n if( xmlData[i - 1] === \"-\" && xmlData[i - 2] === \"-\"){\n comment = false;\n angleBracketsCount--;\n }\n }else{\n angleBracketsCount--;\n }\n if (angleBracketsCount === 0) {\n break;\n }\n }else if( xmlData[i] === '['){\n hasBody = true;\n }else{\n exp += xmlData[i];\n }\n }\n if(angleBracketsCount !== 0){\n throw new Error(`Unclosed DOCTYPE`);\n }\n }else{\n throw new Error(`Invalid Tag instead of DOCTYPE`);\n }\n return {entities, i};\n }\n readEntityExp(xmlData, i) { \n //External entities are not supported\n // <!ENTITY ext SYSTEM \"http://normal-website.com\" >\n\n //Parameter entities are not supported\n // <!ENTITY entityname \"&anotherElement;\">\n\n //Internal entities are supported\n // <!ENTITY entityname \"replacement text\">\n\n // Skip leading whitespace after <!ENTITY\n i = skipWhitespace(xmlData, i);\n\n // Read entity name\n let entityName = \"\";\n while (i < xmlData.length && !/\\s/.test(xmlData[i]) && xmlData[i] !== '\"' && xmlData[i] !== \"'\") {\n entityName += xmlData[i];\n i++;\n }\n validateEntityName(entityName);\n\n // Skip whitespace after entity name\n i = skipWhitespace(xmlData, i);\n\n // Check for unsupported constructs (external entities or parameter entities)\n if(!this.suppressValidationErr){\n if (xmlData.substring(i, i + 6).toUpperCase() === \"SYSTEM\") {\n throw new Error(\"External entities are not supported\");\n }else if (xmlData[i] === \"%\") {\n throw new Error(\"Parameter entities are not supported\");\n }\n }\n\n // Read entity value (internal entity)\n let entityValue = \"\";\n [i, entityValue] = this.readIdentifierVal(xmlData, i, \"entity\");\n i--;\n return [entityName, entityValue, i ];\n }\n\n readNotationExp(xmlData, i) {\n // Skip leading whitespace after <!NOTATION\n i = skipWhitespace(xmlData, i);\n\n // Read notation name\n let notationName = \"\";\n while (i < xmlData.length && !/\\s/.test(xmlData[i])) {\n notationName += xmlData[i];\n i++;\n }\n !this.suppressValidationErr && validateEntityName(notationName);\n\n // Skip whitespace after notation name\n i = skipWhitespace(xmlData, i);\n\n // Check identifier type (SYSTEM or PUBLIC)\n const identifierType = xmlData.substring(i, i + 6).toUpperCase();\n if (!this.suppressValidationErr && identifierType !== \"SYSTEM\" && identifierType !== \"PUBLIC\") {\n throw new Error(`Expected SYSTEM or PUBLIC, found \"${identifierType}\"`);\n }\n i += identifierType.length;\n\n // Skip whitespace after identifier type\n i = skipWhitespace(xmlData, i);\n\n // Read public identifier (if PUBLIC)\n let publicIdentifier = null;\n let systemIdentifier = null;\n\n if (identifierType === \"PUBLIC\") {\n [i, publicIdentifier ] = this.readIdentifierVal(xmlData, i, \"publicIdentifier\");\n\n // Skip whitespace after public identifier\n i = skipWhitespace(xmlData, i);\n\n // Optionally read system identifier\n if (xmlData[i] === '\"' || xmlData[i] === \"'\") {\n [i, systemIdentifier ] = this.readIdentifierVal(xmlData, i,\"systemIdentifier\");\n }\n } else if (identifierType === \"SYSTEM\") {\n // Read system identifier (mandatory for SYSTEM)\n [i, systemIdentifier ] = this.readIdentifierVal(xmlData, i, \"systemIdentifier\");\n\n if (!this.suppressValidationErr && !systemIdentifier) {\n throw new Error(\"Missing mandatory system identifier for SYSTEM notation\");\n }\n }\n \n return {notationName, publicIdentifier, systemIdentifier, index: --i};\n }\n\n readIdentifierVal(xmlData, i, type) {\n let identifierVal = \"\";\n const startChar = xmlData[i];\n if (startChar !== '\"' && startChar !== \"'\") {\n throw new Error(`Expected quoted string, found \"${startChar}\"`);\n }\n i++;\n\n while (i < xmlData.length && xmlData[i] !== startChar) {\n identifierVal += xmlData[i];\n i++;\n }\n\n if (xmlData[i] !== startChar) {\n throw new Error(`Unterminated ${type} value`);\n }\n i++;\n return [i, identifierVal];\n }\n\n readElementExp(xmlData, i) {\n // <!ELEMENT br EMPTY>\n // <!ELEMENT div ANY>\n // <!ELEMENT title (#PCDATA)>\n // <!ELEMENT book (title, author+)>\n // <!ELEMENT name (content-model)>\n \n // Skip leading whitespace after <!ELEMENT\n i = skipWhitespace(xmlData, i);\n\n // Read element name\n let elementName = \"\";\n while (i < xmlData.length && !/\\s/.test(xmlData[i])) {\n elementName += xmlData[i];\n i++;\n }\n\n // Validate element name\n if (!this.suppressValidationErr && !isName(elementName)) {\n throw new Error(`Invalid element name: \"${elementName}\"`);\n }\n\n // Skip whitespace after element name\n i = skipWhitespace(xmlData, i);\n let contentModel = \"\";\n // Expect '(' to start content model\n if(xmlData[i] === \"E\" && hasSeq(xmlData, \"MPTY\",i)) i+=4;\n else if(xmlData[i] === \"A\" && hasSeq(xmlData, \"NY\",i)) i+=2;\n else if (xmlData[i] === \"(\") {\n i++; // Move past '('\n\n // Read content model\n while (i < xmlData.length && xmlData[i] !== \")\") {\n contentModel += xmlData[i];\n i++;\n }\n if (xmlData[i] !== \")\") {\n throw new Error(\"Unterminated content model\");\n }\n\n }else if(!this.suppressValidationErr){\n throw new Error(`Invalid Element Expression, found \"${xmlData[i]}\"`);\n }\n \n return {\n elementName,\n contentModel: contentModel.trim(),\n index: i\n };\n }\n\n readAttlistExp(xmlData, i) {\n // Skip leading whitespace after <!ATTLIST\n i = skipWhitespace(xmlData, i);\n\n // Read element name\n let elementName = \"\";\n while (i < xmlData.length && !/\\s/.test(xmlData[i])) {\n elementName += xmlData[i];\n i++;\n }\n\n // Validate element name\n validateEntityName(elementName)\n\n // Skip whitespace after element name\n i = skipWhitespace(xmlData, i);\n\n // Read attribute name\n let attributeName = \"\";\n while (i < xmlData.length && !/\\s/.test(xmlData[i])) {\n attributeName += xmlData[i];\n i++;\n }\n\n // Validate attribute name\n if (!validateEntityName(attributeName)) {\n throw new Error(`Invalid attribute name: \"${attributeName}\"`);\n }\n\n // Skip whitespace after attribute name\n i = skipWhitespace(xmlData, i);\n\n // Read attribute type\n let attributeType = \"\";\n if (xmlData.substring(i, i + 8).toUpperCase() === \"NOTATION\") {\n attributeType = \"NOTATION\";\n i += 8; // Move past \"NOTATION\"\n\n // Skip whitespace after \"NOTATION\"\n i = skipWhitespace(xmlData, i);\n\n // Expect '(' to start the list of notations\n if (xmlData[i] !== \"(\") {\n throw new Error(`Expected '(', found \"${xmlData[i]}\"`);\n }\n i++; // Move past '('\n\n // Read the list of allowed notations\n let allowedNotations = [];\n while (i < xmlData.length && xmlData[i] !== \")\") {\n let notation = \"\";\n while (i < xmlData.length && xmlData[i] !== \"|\" && xmlData[i] !== \")\") {\n notation += xmlData[i];\n i++;\n }\n\n // Validate notation name\n notation = notation.trim();\n if (!validateEntityName(notation)) {\n throw new Error(`Invalid notation name: \"${notation}\"`);\n }\n\n allowedNotations.push(notation);\n\n // Skip '|' separator or exit loop\n if (xmlData[i] === \"|\") {\n i++; // Move past '|'\n i = skipWhitespace(xmlData, i); // Skip optional whitespace after '|'\n }\n }\n\n if (xmlData[i] !== \")\") {\n throw new Error(\"Unterminated list of notations\");\n }\n i++; // Move past ')'\n\n // Store the allowed notations as part of the attribute type\n attributeType += \" (\" + allowedNotations.join(\"|\") + \")\";\n } else {\n // Handle simple types (e.g., CDATA, ID, IDREF, etc.)\n while (i < xmlData.length && !/\\s/.test(xmlData[i])) {\n attributeType += xmlData[i];\n i++;\n }\n\n // Validate simple attribute type\n const validTypes = [\"CDATA\", \"ID\", \"IDREF\", \"IDREFS\", \"ENTITY\", \"ENTITIES\", \"NMTOKEN\", \"NMTOKENS\"];\n if (!this.suppressValidationErr && !validTypes.includes(attributeType.toUpperCase())) {\n throw new Error(`Invalid attribute type: \"${attributeType}\"`);\n }\n }\n\n // Skip whitespace after attribute type\n i = skipWhitespace(xmlData, i);\n\n // Read default value\n let defaultValue = \"\";\n if (xmlData.substring(i, i + 8).toUpperCase() === \"#REQUIRED\") {\n defaultValue = \"#REQUIRED\";\n i += 8;\n } else if (xmlData.substring(i, i + 7).toUpperCase() === \"#IMPLIED\") {\n defaultValue = \"#IMPLIED\";\n i += 7;\n } else {\n [i, defaultValue] = this.readIdentifierVal(xmlData, i, \"ATTLIST\");\n }\n\n return {\n elementName,\n attributeName,\n attributeType,\n defaultValue,\n index: i\n }\n }\n}\n\n\n\nconst skipWhitespace = (data, index) => {\n while (index < data.length && /\\s/.test(data[index])) {\n index++;\n }\n return index;\n};\n\n\n\nfunction hasSeq(data, seq,i){\n for(let j=0;j<seq.length;j++){\n if(seq[j]!==data[i+j+1]) return false;\n }\n return true;\n}\n\nfunction validateEntityName(name){\n if (isName(name))\n\t return name;\n else\n throw new Error(`Invalid entity name ${name}`);\n}\n","const hexRegex = /^[-+]?0x[a-fA-F0-9]+$/;\nconst numRegex = /^([\\-\\+])?(0*)([0-9]*(\\.[0-9]*)?)$/;\n// const octRegex = /^0x[a-z0-9]+/;\n// const binRegex = /0x[a-z0-9]+/;\n\n \nconst consider = {\n hex : true,\n // oct: false,\n leadingZeros: true,\n decimalPoint: \"\\.\",\n eNotation: true,\n //skipLike: /regex/\n};\n\nexport default function toNumber(str, options = {}){\n options = Object.assign({}, consider, options );\n if(!str || typeof str !== \"string\" ) return str;\n \n let trimmedStr = str.trim();\n \n if(options.skipLike !== undefined && options.skipLike.test(trimmedStr)) return str;\n else if(str===\"0\") return 0;\n else if (options.hex && hexRegex.test(trimmedStr)) {\n return parse_int(trimmedStr, 16);\n // }else if (options.oct && octRegex.test(str)) {\n // return Number.parseInt(val, 8);\n }else if (trimmedStr.search(/.+[eE].+/)!== -1) { //eNotation\n return resolveEnotation(str,trimmedStr,options);\n // }else if (options.parseBin && binRegex.test(str)) {\n // return Number.parseInt(val, 2);\n }else{\n //separate negative sign, leading zeros, and rest number\n const match = numRegex.exec(trimmedStr);\n // +00.123 => [ , '+', '00', '.123', ..\n if(match){\n const sign = match[1] || \"\";\n const leadingZeros = match[2];\n let numTrimmedByZeros = trimZeros(match[3]); //complete num without leading zeros\n const decimalAdjacentToLeadingZeros = sign ? // 0., -00., 000.\n str[leadingZeros.length+1] === \".\" \n : str[leadingZeros.length] === \".\";\n\n //trim ending zeros for floating number\n if(!options.leadingZeros //leading zeros are not allowed\n && (leadingZeros.length > 1 \n || (leadingZeros.length === 1 && !decimalAdjacentToLeadingZeros))){\n // 00, 00.3, +03.24, 03, 03.24\n return str;\n }\n else{//no leading zeros or leading zeros are allowed\n const num = Number(trimmedStr);\n const parsedStr = String(num);\n\n if( num === 0 || num === -0) return num;\n if(parsedStr.search(/[eE]/) !== -1){ //given number is long and parsed to eNotation\n if(options.eNotation) return num;\n else return str;\n }else if(trimmedStr.indexOf(\".\") !== -1){ //floating number\n if(parsedStr === \"0\") return num; //0.0\n else if(parsedStr === numTrimmedByZeros) return num; //0.456. 0.79000\n else if( parsedStr === `${sign}${numTrimmedByZeros}`) return num;\n else return str;\n }\n \n let n = leadingZeros? numTrimmedByZeros : trimmedStr;\n if(leadingZeros){\n // -009 => -9\n return (n === parsedStr) || (sign+n === parsedStr) ? num : str\n }else {\n // +9\n return (n === parsedStr) || (n === sign+parsedStr) ? num : str\n }\n }\n }else{ //non-numeric string\n return str;\n }\n }\n}\n\nconst eNotationRegx = /^([-+])?(0*)(\\d*(\\.\\d*)?[eE][-\\+]?\\d+)$/;\nfunction resolveEnotation(str,trimmedStr,options){\n if(!options.eNotation) return str;\n const notation = trimmedStr.match(eNotationRegx); \n if(notation){\n let sign = notation[1] || \"\";\n const eChar = notation[3].indexOf(\"e\") === -1 ? \"E\" : \"e\";\n const leadingZeros = notation[2];\n const eAdjacentToLeadingZeros = sign ? // 0E.\n str[leadingZeros.length+1] === eChar \n : str[leadingZeros.length] === eChar;\n\n if(leadingZeros.length > 1 && eAdjacentToLeadingZeros) return str;\n else if(leadingZeros.length === 1 \n && (notation[3].startsWith(`.${eChar}`) || notation[3][0] === eChar)){\n return Number(trimmedStr);\n }else if(options.leadingZeros && !eAdjacentToLeadingZeros){ //accept with leading zeros\n //remove leading 0s\n trimmedStr = (notation[1] || \"\") + notation[3];\n return Number(trimmedStr);\n }else return str;\n }else{\n return str;\n }\n}\n\n/**\n * \n * @param {string} numStr without leading zeros\n * @returns \n */\nfunction trimZeros(numStr){\n if(numStr && numStr.indexOf(\".\") !== -1){//float\n numStr = numStr.replace(/0+$/, \"\"); //remove ending zeros\n if(numStr === \".\") numStr = \"0\";\n else if(numStr[0] === \".\") numStr = \"0\"+numStr;\n else if(numStr[numStr.length-1] === \".\") numStr = numStr.substring(0,numStr.length-1);\n return numStr;\n }\n return numStr;\n}\n\nfunction parse_int(numStr, base){\n //polyfill\n if(parseInt) return parseInt(numStr, base);\n else if(Number.parseInt) return Number.parseInt(numStr, base);\n else if(window && window.parseInt) return window.parseInt(numStr, base);\n else throw new Error(\"parseInt, Number.parseInt, window.parseInt are not supported\")\n}","export default function getIgnoreAttributesFn(ignoreAttributes) {\n if (typeof ignoreAttributes === 'function') {\n return ignoreAttributes\n }\n if (Array.isArray(ignoreAttributes)) {\n return (attrName) => {\n for (const pattern of ignoreAttributes) {\n if (typeof pattern === 'string' && attrName === pattern) {\n return true\n }\n if (pattern instanceof RegExp && pattern.test(attrName)) {\n return true\n }\n }\n }\n }\n return () => false\n}","'use strict';\n///@ts-check\n\nimport {getAllMatches, isExist} from '../util.js';\nimport xmlNode from './xmlNode.js';\nimport DocTypeReader from './DocTypeReader.js';\nimport toNumber from \"strnum\";\nimport getIgnoreAttributesFn from \"../ignoreAttributes.js\";\n\n// const regx =\n// '<((!\\\\[CDATA\\\\[([\\\\s\\\\S]*?)(]]>))|((NAME:)?(NAME))([^>]*)>|((\\\\/)(NAME)\\\\s*>))([^<]*)'\n// .replace(/NAME/g, util.nameRegexp);\n\n//const tagsRegx = new RegExp(\"<(\\\\/?[\\\\w:\\\\-\\._]+)([^>]*)>(\\\\s*\"+cdataRegx+\")*([^<]+)?\",\"g\");\n//const tagsRegx = new RegExp(\"<(\\\\/?)((\\\\w*:)?([\\\\w:\\\\-\\._]+))([^>]*)>([^<]*)(\"+cdataRegx+\"([^<]*))*([^<]+)?\",\"g\");\n\nexport default class OrderedObjParser{\n constructor(options){\n this.options = options;\n this.currentNode = null;\n this.tagsNodeStack = [];\n this.docTypeEntities = {};\n this.lastEntities = {\n \"apos\" : { regex: /&(apos|#39|#x27);/g, val : \"'\"},\n \"gt\" : { regex: /&(gt|#62|#x3E);/g, val : \">\"},\n \"lt\" : { regex: /&(lt|#60|#x3C);/g, val : \"<\"},\n \"quot\" : { regex: /&(quot|#34|#x22);/g, val : \"\\\"\"},\n };\n this.ampEntity = { regex: /&(amp|#38|#x26);/g, val : \"&\"};\n this.htmlEntities = {\n \"space\": { regex: /&(nbsp|#160);/g, val: \" \" },\n // \"lt\" : { regex: /&(lt|#60);/g, val: \"<\" },\n // \"gt\" : { regex: /&(gt|#62);/g, val: \">\" },\n // \"amp\" : { regex: /&(amp|#38);/g, val: \"&\" },\n // \"quot\" : { regex: /&(quot|#34);/g, val: \"\\\"\" },\n // \"apos\" : { regex: /&(apos|#39);/g, val: \"'\" },\n \"cent\" : { regex: /&(cent|#162);/g, val: \"¢\" },\n \"pound\" : { regex: /&(pound|#163);/g, val: \"£\" },\n \"yen\" : { regex: /&(yen|#165);/g, val: \"¥\" },\n \"euro\" : { regex: /&(euro|#8364);/g, val: \"€\" },\n \"copyright\" : { regex: /&(copy|#169);/g, val: \"©\" },\n \"reg\" : { regex: /&(reg|#174);/g, val: \"®\" },\n \"inr\" : { regex: /&(inr|#8377);/g, val: \"₹\" },\n \"num_dec\": { regex: /&#([0-9]{1,7});/g, val : (_, str) => String.fromCodePoint(Number.parseInt(str, 10)) },\n \"num_hex\": { regex: /&#x([0-9a-fA-F]{1,6});/g, val : (_, str) => String.fromCodePoint(Number.parseInt(str, 16)) },\n };\n this.addExternalEntities = addExternalEntities;\n this.parseXml = parseXml;\n this.parseTextData = parseTextData;\n this.resolveNameSpace = resolveNameSpace;\n this.buildAttributesMap = buildAttributesMap;\n this.isItStopNode = isItStopNode;\n this.replaceEntitiesValue = replaceEntitiesValue;\n this.readStopNodeData = readStopNodeData;\n this.saveTextToParentTag = saveTextToParentTag;\n this.addChild = addChild;\n this.ignoreAttributesFn = getIgnoreAttributesFn(this.options.ignoreAttributes)\n\n if(this.options.stopNodes && this.options.stopNodes.length > 0){\n this.stopNodesExact = new Set();\n this.stopNodesWildcard = new Set();\n for(let i = 0; i < this.options.stopNodes.length; i++){\n const stopNodeExp = this.options.stopNodes[i];\n if(typeof stopNodeExp !== 'string') continue;\n if(stopNodeExp.startsWith(\"*.\")){\n this.stopNodesWildcard.add(stopNodeExp.substring(2));\n }else{\n this.stopNodesExact.add(stopNodeExp);\n }\n }\n }\n }\n\n}\n\nfunction addExternalEntities(externalEntities){\n const entKeys = Object.keys(externalEntities);\n for (let i = 0; i < entKeys.length; i++) {\n const ent = entKeys[i];\n this.lastEntities[ent] = {\n regex: new RegExp(\"&\"+ent+\";\",\"g\"),\n val : externalEntities[ent]\n }\n }\n}\n\n/**\n * @param {string} val\n * @param {string} tagName\n * @param {string} jPath\n * @param {boolean} dontTrim\n * @param {boolean} hasAttributes\n * @param {boolean} isLeafNode\n * @param {boolean} escapeEntities\n */\nfunction parseTextData(val, tagName, jPath, dontTrim, hasAttributes, isLeafNode, escapeEntities) {\n if (val !== undefined) {\n if (this.options.trimValues && !dontTrim) {\n val = val.trim();\n }\n if(val.length > 0){\n if(!escapeEntities) val = this.replaceEntitiesValue(val);\n \n const newval = this.options.tagValueProcessor(tagName, val, jPath, hasAttributes, isLeafNode);\n if(newval === null || newval === undefined){\n //don't parse\n return val;\n }else if(typeof newval !== typeof val || newval !== val){\n //overwrite\n return newval;\n }else if(this.options.trimValues){\n return parseValue(val, this.options.parseTagValue, this.options.numberParseOptions);\n }else{\n const trimmedVal = val.trim();\n if(trimmedVal === val){\n return parseValue(val, this.options.parseTagValue, this.options.numberParseOptions);\n }else{\n return val;\n }\n }\n }\n }\n}\n\nfunction resolveNameSpace(tagname) {\n if (this.options.removeNSPrefix) {\n const tags = tagname.split(':');\n const prefix = tagname.charAt(0) === '/' ? '/' : '';\n if (tags[0] === 'xmlns') {\n return '';\n }\n if (tags.length === 2) {\n tagname = prefix + tags[1];\n }\n }\n return tagname;\n}\n\n//TODO: change regex to capture NS\n//const attrsRegx = new RegExp(\"([\\\\w\\\\-\\\\.\\\\:]+)\\\\s*=\\\\s*(['\\\"])((.|\\n)*?)\\\\2\",\"gm\");\nconst attrsRegx = new RegExp('([^\\\\s=]+)\\\\s*(=\\\\s*([\\'\"])([\\\\s\\\\S]*?)\\\\3)?', 'gm');\n\nfunction buildAttributesMap(attrStr, jPath, tagName) {\n if (this.options.ignoreAttributes !== true && typeof attrStr === 'string') {\n // attrStr = attrStr.replace(/\\r?\\n/g, ' ');\n //attrStr = attrStr || attrStr.trim();\n\n const matches = getAllMatches(attrStr, attrsRegx);\n const len = matches.length; //don't make it inline\n const attrs = {};\n for (let i = 0; i < len; i++) {\n const attrName = this.resolveNameSpace(matches[i][1]);\n if (this.ignoreAttributesFn(attrName, jPath)) {\n continue\n }\n let oldVal = matches[i][4];\n let aName = this.options.attributeNamePrefix + attrName;\n if (attrName.length) {\n if (this.options.transformAttributeName) {\n aName = this.options.transformAttributeName(aName);\n }\n if(aName === \"__proto__\") aName = \"#__proto__\";\n if (oldVal !== undefined) {\n if (this.options.trimValues) {\n oldVal = oldVal.trim();\n }\n oldVal = this.replaceEntitiesValue(oldVal);\n const newVal = this.options.attributeValueProcessor(attrName, oldVal, jPath);\n if(newVal === null || newVal === undefined){\n //don't parse\n attrs[aName] = oldVal;\n }else if(typeof newVal !== typeof oldVal || newVal !== oldVal){\n //overwrite\n attrs[aName] = newVal;\n }else{\n //parse\n attrs[aName] = parseValue(\n oldVal,\n this.options.parseAttributeValue,\n this.options.numberParseOptions\n );\n }\n } else if (this.options.allowBooleanAttributes) {\n attrs[aName] = true;\n }\n }\n }\n if (!Object.keys(attrs).length) {\n return;\n }\n if (this.options.attributesGroupName) {\n const attrCollection = {};\n attrCollection[this.options.attributesGroupName] = attrs;\n return attrCollection;\n }\n return attrs\n }\n}\n\nconst parseXml = function(xmlData) {\n xmlData = xmlData.replace(/\\r\\n?/g, \"\\n\"); //TODO: remove this line\n const xmlObj = new xmlNode('!xml');\n let currentNode = xmlObj;\n let textData = \"\";\n let jPath = \"\";\n const docTypeReader = new DocTypeReader(this.options.processEntities);\n for(let i=0; i< xmlData.length; i++){//for each char in XML data\n const ch = xmlData[i];\n if(ch === '<'){\n // const nextIndex = i+1;\n // const _2ndChar = xmlData[nextIndex];\n if( xmlData[i+1] === '/') {//Closing Tag\n const closeIndex = findClosingIndex(xmlData, \">\", i, \"Closing Tag is not closed.\")\n let tagName = xmlData.substring(i+2,closeIndex).trim();\n\n if(this.options.removeNSPrefix){\n const colonIndex = tagName.indexOf(\":\");\n if(colonIndex !== -1){\n tagName = tagName.substr(colonIndex+1);\n }\n }\n\n if(this.options.transformTagName) {\n tagName = this.options.transformTagName(tagName);\n }\n\n if(currentNode){\n textData = this.saveTextToParentTag(textData, currentNode, jPath);\n }\n\n //check if last tag of nested tag was unpaired tag\n const lastTagName = jPath.substring(jPath.lastIndexOf(\".\")+1);\n if(tagName && this.options.unpairedTags.indexOf(tagName) !== -1 ){\n throw new Error(`Unpaired tag can not be used as closing tag: </${tagName}>`);\n }\n let propIndex = 0\n if(lastTagName && this.options.unpairedTags.indexOf(lastTagName) !== -1 ){\n propIndex = jPath.lastIndexOf('.', jPath.lastIndexOf('.')-1)\n this.tagsNodeStack.pop();\n }else{\n propIndex = jPath.lastIndexOf(\".\");\n }\n jPath = jPath.substring(0, propIndex);\n\n currentNode = this.tagsNodeStack.pop();//avoid recursion, set the parent tag scope\n textData = \"\";\n i = closeIndex;\n } else if( xmlData[i+1] === '?') {\n\n let tagData = readTagExp(xmlData,i, false, \"?>\");\n if(!tagData) throw new Error(\"Pi Tag is not closed.\");\n\n textData = this.saveTextToParentTag(textData, currentNode, jPath);\n if( (this.options.ignoreDeclaration && tagData.tagName === \"?xml\") || this.options.ignorePiTags){\n\n }else{\n \n const childNode = new xmlNode(tagData.tagName);\n childNode.add(this.options.textNodeName, \"\");\n \n if(tagData.tagName !== tagData.tagExp && tagData.attrExpPresent){\n childNode[\":@\"] = this.buildAttributesMap(tagData.tagExp, jPath, tagData.tagName);\n }\n this.addChild(currentNode, childNode, jPath, i);\n }\n\n\n i = tagData.closeIndex + 1;\n } else if(xmlData.substr(i + 1, 3) === '!--') {\n const endIndex = findClosingIndex(xmlData, \"-->\", i+4, \"Comment is not closed.\")\n if(this.options.commentPropName){\n const comment = xmlData.substring(i + 4, endIndex - 2);\n\n textData = this.saveTextToParentTag(textData, currentNode, jPath);\n\n currentNode.add(this.options.commentPropName, [ { [this.options.textNodeName] : comment } ]);\n }\n i = endIndex;\n } else if( xmlData.substr(i + 1, 2) === '!D') {\n const result = docTypeReader.readDocType(xmlData, i);\n this.docTypeEntities = result.entities;\n i = result.i;\n }else if(xmlData.substr(i + 1, 2) === '![') {\n const closeIndex = findClosingIndex(xmlData, \"]]>\", i, \"CDATA is not closed.\") - 2;\n const tagExp = xmlData.substring(i + 9,closeIndex);\n\n textData = this.saveTextToParentTag(textData, currentNode, jPath);\n\n let val = this.parseTextData(tagExp, currentNode.tagname, jPath, true, false, true, true);\n if(val == undefined) val = \"\";\n\n //cdata should be set even if it is 0 length string\n if(this.options.cdataPropName){\n currentNode.add(this.options.cdataPropName, [ { [this.options.textNodeName] : tagExp } ]);\n }else{\n currentNode.add(this.options.textNodeName, val);\n }\n \n i = closeIndex + 2;\n }else {//Opening tag\n let result = readTagExp(xmlData,i, this.options.removeNSPrefix);\n let tagName= result.tagName;\n const rawTagName = result.rawTagName;\n let tagExp = result.tagExp;\n let attrExpPresent = result.attrExpPresent;\n let closeIndex = result.closeIndex;\n\n if (this.options.transformTagName) {\n tagName = this.options.transformTagName(tagName);\n }\n \n //save text as child node\n if (currentNode && textData) {\n if(currentNode.tagname !== '!xml'){\n //when nested tag is found\n textData = this.saveTextToParentTag(textData, currentNode, jPath, false);\n }\n }\n\n //check if last tag was unpaired tag\n const lastTag = currentNode;\n if(lastTag && this.options.unpairedTags.indexOf(lastTag.tagname) !== -1 ){\n currentNode = this.tagsNodeStack.pop();\n jPath = jPath.substring(0, jPath.lastIndexOf(\".\"));\n }\n if(tagName !== xmlObj.tagname){\n jPath += jPath ? \".\" + tagName : tagName;\n }\n const startIndex = i;\n if (this.isItStopNode(this.stopNodesExact, this.stopNodesWildcard, jPath, tagName)) {\n let tagContent = \"\";\n //self-closing tag\n if(tagExp.length > 0 && tagExp.lastIndexOf(\"/\") === tagExp.length - 1){\n if(tagName[tagName.length - 1] === \"/\"){ //remove trailing '/'\n tagName = tagName.substr(0, tagName.length - 1);\n jPath = jPath.substr(0, jPath.length - 1);\n tagExp = tagName;\n }else{\n tagExp = tagExp.substr(0, tagExp.length - 1);\n }\n i = result.closeIndex;\n }\n //unpaired tag\n else if(this.options.unpairedTags.indexOf(tagName) !== -1){\n \n i = result.closeIndex;\n }\n //normal tag\n else{\n //read until closing tag is found\n const result = this.readStopNodeData(xmlData, rawTagName, closeIndex + 1);\n if(!result) throw new Error(`Unexpected end of ${rawTagName}`);\n i = result.i;\n tagContent = result.tagContent;\n }\n\n const childNode = new xmlNode(tagName);\n\n if(tagName !== tagExp && attrExpPresent){\n childNode[\":@\"] = this.buildAttributesMap(tagExp, jPath, tagName);\n }\n if(tagContent) {\n tagContent = this.parseTextData(tagContent, tagName, jPath, true, attrExpPresent, true, true);\n }\n \n jPath = jPath.substr(0, jPath.lastIndexOf(\".\"));\n childNode.add(this.options.textNodeName, tagContent);\n \n this.addChild(currentNode, childNode, jPath, startIndex);\n }else{\n //selfClosing tag\n if(tagExp.length > 0 && tagExp.lastIndexOf(\"/\") === tagExp.length - 1){\n if(tagName[tagName.length - 1] === \"/\"){ //remove trailing '/'\n tagName = tagName.substr(0, tagName.length - 1);\n jPath = jPath.substr(0, jPath.length - 1);\n tagExp = tagName;\n }else{\n tagExp = tagExp.substr(0, tagExp.length - 1);\n }\n \n if(this.options.transformTagName) {\n tagName = this.options.transformTagName(tagName);\n }\n\n const childNode = new xmlNode(tagName);\n if(tagName !== tagExp && attrExpPresent){\n childNode[\":@\"] = this.buildAttributesMap(tagExp, jPath, tagName);\n }\n this.addChild(currentNode, childNode, jPath, startIndex);\n jPath = jPath.substr(0, jPath.lastIndexOf(\".\"));\n }\n //opening tag\n else{\n const childNode = new xmlNode( tagName);\n this.tagsNodeStack.push(currentNode);\n \n if(tagName !== tagExp && attrExpPresent){\n childNode[\":@\"] = this.buildAttributesMap(tagExp, jPath, tagName);\n }\n this.addChild(currentNode, childNode, jPath, startIndex);\n currentNode = childNode;\n }\n textData = \"\";\n i = closeIndex;\n }\n }\n }else{\n textData += xmlData[i];\n }\n }\n return xmlObj.child;\n}\n\nfunction addChild(currentNode, childNode, jPath, startIndex){\n // unset startIndex if not requested\n if (!this.options.captureMetaData) startIndex = undefined;\n const result = this.options.updateTag(childNode.tagname, jPath, childNode[\":@\"])\n if(result === false){\n } else if(typeof result === \"string\"){\n childNode.tagname = result\n currentNode.addChild(childNode, startIndex);\n }else{\n currentNode.addChild(childNode, startIndex);\n }\n}\n\nconst replaceEntitiesValue = function(val){\n\n if(this.options.processEntities){\n for(let entityName in this.docTypeEntities){\n const entity = this.docTypeEntities[entityName];\n val = val.replace( entity.regx, entity.val);\n }\n for(let entityName in this.lastEntities){\n const entity = this.lastEntities[entityName];\n val = val.replace( entity.regex, entity.val);\n }\n if(this.options.htmlEntities){\n for(let entityName in this.htmlEntities){\n const entity = this.htmlEntities[entityName];\n val = val.replace( entity.regex, entity.val);\n }\n }\n val = val.replace( this.ampEntity.regex, this.ampEntity.val);\n }\n return val;\n}\nfunction saveTextToParentTag(textData, currentNode, jPath, isLeafNode) {\n if (textData) { //store previously collected data as textNode\n if(isLeafNode === undefined) isLeafNode = currentNode.child.length === 0\n \n textData = this.parseTextData(textData,\n currentNode.tagname,\n jPath,\n false,\n currentNode[\":@\"] ? Object.keys(currentNode[\":@\"]).length !== 0 : false,\n isLeafNode);\n\n if (textData !== undefined && textData !== \"\")\n currentNode.add(this.options.textNodeName, textData);\n textData = \"\";\n }\n return textData;\n}\n\n//TODO: use jPath to simplify the logic\n/**\n * @param {Set} stopNodesExact\n * @param {Set} stopNodesWildcard\n * @param {string} jPath\n * @param {string} currentTagName\n */\nfunction isItStopNode(stopNodesExact, stopNodesWildcard, jPath, currentTagName){\n if(stopNodesWildcard && stopNodesWildcard.has(currentTagName)) return true;\n if(stopNodesExact && stopNodesExact.has(jPath)) return true;\n return false;\n}\n\n/**\n * Returns the tag Expression and where it is ending handling single-double quotes situation\n * @param {string} xmlData \n * @param {number} i starting index\n * @returns \n */\nfunction tagExpWithClosingIndex(xmlData, i, closingChar = \">\"){\n let attrBoundary;\n let tagExp = \"\";\n for (let index = i; index < xmlData.length; index++) {\n let ch = xmlData[index];\n if (attrBoundary) {\n if (ch === attrBoundary) attrBoundary = \"\";//reset\n } else if (ch === '\"' || ch === \"'\") {\n attrBoundary = ch;\n } else if (ch === closingChar[0]) {\n if(closingChar[1]){\n if(xmlData[index + 1] === closingChar[1]){\n return {\n data: tagExp,\n index: index\n }\n }\n }else{\n return {\n data: tagExp,\n index: index\n }\n }\n } else if (ch === '\\t') {\n ch = \" \"\n }\n tagExp += ch;\n }\n}\n\nfunction findClosingIndex(xmlData, str, i, errMsg){\n const closingIndex = xmlData.indexOf(str, i);\n if(closingIndex === -1){\n throw new Error(errMsg)\n }else{\n return closingIndex + str.length - 1;\n }\n}\n\nfunction readTagExp(xmlData,i, removeNSPrefix, closingChar = \">\"){\n const result = tagExpWithClosingIndex(xmlData, i+1, closingChar);\n if(!result) return;\n let tagExp = result.data;\n const closeIndex = result.index;\n const separatorIndex = tagExp.search(/\\s/);\n let tagName = tagExp;\n let attrExpPresent = true;\n if(separatorIndex !== -1){//separate tag name and attributes expression\n tagName = tagExp.substring(0, separatorIndex);\n tagExp = tagExp.substring(separatorIndex + 1).trimStart();\n }\n\n const rawTagName = tagName;\n if(removeNSPrefix){\n const colonIndex = tagName.indexOf(\":\");\n if(colonIndex !== -1){\n tagName = tagName.substr(colonIndex+1);\n attrExpPresent = tagName !== result.data.substr(colonIndex + 1);\n }\n }\n\n return {\n tagName: tagName,\n tagExp: tagExp,\n closeIndex: closeIndex,\n attrExpPresent: attrExpPresent,\n rawTagName: rawTagName,\n }\n}\n/**\n * find paired tag for a stop node\n * @param {string} xmlData \n * @param {string} tagName \n * @param {number} i \n */\nfunction readStopNodeData(xmlData, tagName, i){\n const startIndex = i;\n // Starting at 1 since we already have an open tag\n let openTagCount = 1;\n\n for (; i < xmlData.length; i++) {\n if( xmlData[i] === \"<\"){ \n if (xmlData[i+1] === \"/\") {//close tag\n const closeIndex = findClosingIndex(xmlData, \">\", i, `${tagName} is not closed`);\n let closeTagName = xmlData.substring(i+2,closeIndex).trim();\n if(closeTagName === tagName){\n openTagCount--;\n if (openTagCount === 0) {\n return {\n tagContent: xmlData.substring(startIndex, i),\n i : closeIndex\n }\n }\n }\n i=closeIndex;\n } else if(xmlData[i+1] === '?') { \n const closeIndex = findClosingIndex(xmlData, \"?>\", i+1, \"StopNode is not closed.\")\n i=closeIndex;\n } else if(xmlData.substr(i + 1, 3) === '!--') { \n const closeIndex = findClosingIndex(xmlData, \"-->\", i+3, \"StopNode is not closed.\")\n i=closeIndex;\n } else if(xmlData.substr(i + 1, 2) === '![') { \n const closeIndex = findClosingIndex(xmlData, \"]]>\", i, \"StopNode is not closed.\") - 2;\n i=closeIndex;\n } else {\n const tagData = readTagExp(xmlData, i, '>')\n\n if (tagData) {\n const openTagName = tagData && tagData.tagName;\n if (openTagName === tagName && tagData.tagExp[tagData.tagExp.length-1] !== \"/\") {\n openTagCount++;\n }\n i=tagData.closeIndex;\n }\n }\n }\n }//end for loop\n}\n\nfunction parseValue(val, shouldParse, options) {\n if (shouldParse && typeof val === 'string') {\n //console.log(options)\n const newval = val.trim();\n if(newval === 'true' ) return true;\n else if(newval === 'false' ) return false;\n else return toNumber(val, options);\n } else {\n if (isExist(val)) {\n return val;\n } else {\n return '';\n }\n }\n}\n","'use strict';\n\nimport XmlNode from './xmlNode.js';\n\nconst METADATA_SYMBOL = XmlNode.getMetaDataSymbol();\n\n/**\n * \n * @param {array} node \n * @param {any} options \n * @returns \n */\nexport default function prettify(node, options){\n return compress( node, options);\n}\n\n/**\n * \n * @param {array} arr \n * @param {object} options \n * @param {string} jPath \n * @returns object\n */\nfunction compress(arr, options, jPath){\n let text;\n const compressedObj = {};\n for (let i = 0; i < arr.length; i++) {\n const tagObj = arr[i];\n const property = propName(tagObj);\n let newJpath = \"\";\n if(jPath === undefined) newJpath = property;\n else newJpath = jPath + \".\" + property;\n\n if(property === options.textNodeName){\n if(text === undefined) text = tagObj[property];\n else text += \"\" + tagObj[property];\n }else if(property === undefined){\n continue;\n }else if(tagObj[property]){\n \n let val = compress(tagObj[property], options, newJpath);\n const isLeaf = isLeafTag(val, options);\n if (tagObj[METADATA_SYMBOL] !== undefined) {\n val[METADATA_SYMBOL] = tagObj[METADATA_SYMBOL]; // copy over metadata\n }\n\n if(tagObj[\":@\"]){\n assignAttributes( val, tagObj[\":@\"], newJpath, options);\n }else if(Object.keys(val).length === 1 && val[options.textNodeName] !== undefined && !options.alwaysCreateTextNode){\n val = val[options.textNodeName];\n }else if(Object.keys(val).length === 0){\n if(options.alwaysCreateTextNode) val[options.textNodeName] = \"\";\n else val = \"\";\n }\n\n if(compressedObj[property] !== undefined && compressedObj.hasOwnProperty(property)) {\n if(!Array.isArray(compressedObj[property])) {\n compressedObj[property] = [ compressedObj[property] ];\n }\n compressedObj[property].push(val);\n }else{\n //TODO: if a node is not an array, then check if it should be an array\n //also determine if it is a leaf node\n if (options.isArray(property, newJpath, isLeaf )) {\n compressedObj[property] = [val];\n }else{\n compressedObj[property] = val;\n }\n }\n }\n \n }\n // if(text && text.length > 0) compressedObj[options.textNodeName] = text;\n if(typeof text === \"string\"){\n if(text.length > 0) compressedObj[options.textNodeName] = text;\n }else if(text !== undefined) compressedObj[options.textNodeName] = text;\n return compressedObj;\n}\n\nfunction propName(obj){\n const keys = Object.keys(obj);\n for (let i = 0; i < keys.length; i++) {\n const key = keys[i];\n if(key !== \":@\") return key;\n }\n}\n\nfunction assignAttributes(obj, attrMap, jpath, options){\n if (attrMap) {\n const keys = Object.keys(attrMap);\n const len = keys.length; //don't make it inline\n for (let i = 0; i < len; i++) {\n const atrrName = keys[i];\n if (options.isArray(atrrName, jpath + \".\" + atrrName, true, true)) {\n obj[atrrName] = [ attrMap[atrrName] ];\n } else {\n obj[atrrName] = attrMap[atrrName];\n }\n }\n }\n}\n\nfunction isLeafTag(obj, options){\n const { textNodeName } = options;\n const propCount = Object.keys(obj).length;\n \n if (propCount === 0) {\n return true;\n }\n\n if (\n propCount === 1 &&\n (obj[textNodeName] || typeof obj[textNodeName] === \"boolean\" || obj[textNodeName] === 0)\n ) {\n return true;\n }\n\n return false;\n}\n","import { buildOptions} from './OptionsBuilder.js';\nimport OrderedObjParser from './OrderedObjParser.js';\nimport prettify from './node2json.js';\nimport {validate} from \"../validator.js\";\nimport XmlNode from './xmlNode.js';\n\nexport default class XMLParser{\n \n constructor(options){\n this.externalEntities = {};\n this.options = buildOptions(options);\n \n }\n /**\n * Parse XML dats to JS object \n * @param {string|Uint8Array} xmlData \n * @param {boolean|Object} validationOption \n */\n parse(xmlData,validationOption){\n if(typeof xmlData !== \"string\" && xmlData.toString){\n xmlData = xmlData.toString();\n }else if(typeof xmlData !== \"string\"){\n throw new Error(\"XML data is accepted in String or Bytes[] form.\")\n }\n \n if( validationOption){\n if(validationOption === true) validationOption = {}; //validate with default options\n \n const result = validate(xmlData, validationOption);\n if (result !== true) {\n throw Error( `${result.err.msg}:${result.err.line}:${result.err.col}` )\n }\n }\n const orderedObjParser = new OrderedObjParser(this.options);\n orderedObjParser.addExternalEntities(this.externalEntities);\n const orderedResult = orderedObjParser.parseXml(xmlData);\n if(this.options.preserveOrder || orderedResult === undefined) return orderedResult;\n else return prettify(orderedResult, this.options);\n }\n\n /**\n * Add Entity which is not by default supported by this library\n * @param {string} key \n * @param {string} value \n */\n addEntity(key, value){\n if(value.indexOf(\"&\") !== -1){\n throw new Error(\"Entity value can't have '&'\")\n }else if(key.indexOf(\"&\") !== -1 || key.indexOf(\";\") !== -1){\n throw new Error(\"An entity must be set without '&' and ';'. Eg. use '#xD' for '
'\")\n }else if(value === \"&\"){\n throw new Error(\"An entity with value '&' is not permitted\");\n }else{\n this.externalEntities[key] = value;\n }\n }\n\n /**\n * Returns a Symbol that can be used to access the metadata\n * property on a node.\n * \n * If Symbol is not available in the environment, an ordinary property is used\n * and the name of the property is here returned.\n * \n * The XMLMetaData property is only present when `captureMetaData`\n * is true in the options.\n */\n static getMetaDataSymbol() {\n return XmlNode.getMetaDataSymbol();\n }\n}\n","const EOL = \"\\n\";\n\n/**\n * \n * @param {array} jArray \n * @param {any} options \n * @returns \n */\nexport default function toXml(jArray, options) {\n let indentation = \"\";\n if (options.format && options.indentBy.length > 0) {\n indentation = EOL;\n }\n return arrToStr(jArray, options, \"\", indentation);\n}\n\nfunction arrToStr(arr, options, jPath, indentation) {\n let xmlStr = \"\";\n let isPreviousElementTag = false;\n\n for (let i = 0; i < arr.length; i++) {\n const tagObj = arr[i];\n const tagName = propName(tagObj);\n if(tagName === undefined) continue;\n\n let newJPath = \"\";\n if (jPath.length === 0) newJPath = tagName\n else newJPath = `${jPath}.${tagName}`;\n\n if (tagName === options.textNodeName) {\n let tagText = tagObj[tagName];\n if (!isStopNode(newJPath, options)) {\n tagText = options.tagValueProcessor(tagName, tagText);\n tagText = replaceEntitiesValue(tagText, options);\n }\n if (isPreviousElementTag) {\n xmlStr += indentation;\n }\n xmlStr += tagText;\n isPreviousElementTag = false;\n continue;\n } else if (tagName === options.cdataPropName) {\n if (isPreviousElementTag) {\n xmlStr += indentation;\n }\n xmlStr += `<![CDATA[${tagObj[tagName][0][options.textNodeName]}]]>`;\n isPreviousElementTag = false;\n continue;\n } else if (tagName === options.commentPropName) {\n xmlStr += indentation + `<!--${tagObj[tagName][0][options.textNodeName]}-->`;\n isPreviousElementTag = true;\n continue;\n } else if (tagName[0] === \"?\") {\n const attStr = attr_to_str(tagObj[\":@\"], options);\n const tempInd = tagName === \"?xml\" ? \"\" : indentation;\n let piTextNodeName = tagObj[tagName][0][options.textNodeName];\n piTextNodeName = piTextNodeName.length !== 0 ? \" \" + piTextNodeName : \"\"; //remove extra spacing\n xmlStr += tempInd + `<${tagName}${piTextNodeName}${attStr}?>`;\n isPreviousElementTag = true;\n continue;\n }\n let newIdentation = indentation;\n if (newIdentation !== \"\") {\n newIdentation += options.indentBy;\n }\n const attStr = attr_to_str(tagObj[\":@\"], options);\n const tagStart = indentation + `<${tagName}${attStr}`;\n const tagValue = arrToStr(tagObj[tagName], options, newJPath, newIdentation);\n if (options.unpairedTags.indexOf(tagName) !== -1) {\n if (options.suppressUnpairedNode) xmlStr += tagStart + \">\";\n else xmlStr += tagStart + \"/>\";\n } else if ((!tagValue || tagValue.length === 0) && options.suppressEmptyNode) {\n xmlStr += tagStart + \"/>\";\n } else if (tagValue && tagValue.endsWith(\">\")) {\n xmlStr += tagStart + `>${tagValue}${indentation}</${tagName}>`;\n } else {\n xmlStr += tagStart + \">\";\n if (tagValue && indentation !== \"\" && (tagValue.includes(\"/>\") || tagValue.includes(\"</\"))) {\n xmlStr += indentation + options.indentBy + tagValue + indentation;\n } else {\n xmlStr += tagValue;\n }\n xmlStr += `</${tagName}>`;\n }\n isPreviousElementTag = true;\n }\n\n return xmlStr;\n}\n\nfunction propName(obj) {\n const keys = Object.keys(obj);\n for (let i = 0; i < keys.length; i++) {\n const key = keys[i];\n if(!obj.hasOwnProperty(key)) continue;\n if (key !== \":@\") return key;\n }\n}\n\nfunction attr_to_str(attrMap, options) {\n let attrStr = \"\";\n if (attrMap && !options.ignoreAttributes) {\n for (let attr in attrMap) {\n if(!attrMap.hasOwnProperty(attr)) continue;\n let attrVal = options.attributeValueProcessor(attr, attrMap[attr]);\n attrVal = replaceEntitiesValue(attrVal, options);\n if (attrVal === true && options.suppressBooleanAttributes) {\n attrStr += ` ${attr.substr(options.attributeNamePrefix.length)}`;\n } else {\n attrStr += ` ${attr.substr(options.attributeNamePrefix.length)}=\"${attrVal}\"`;\n }\n }\n }\n return attrStr;\n}\n\nfunction isStopNode(jPath, options) {\n jPath = jPath.substr(0, jPath.length - options.textNodeName.length - 1);\n let tagName = jPath.substr(jPath.lastIndexOf(\".\") + 1);\n for (let index in options.stopNodes) {\n if (options.stopNodes[index] === jPath || options.stopNodes[index] === \"*.\" + tagName) return true;\n }\n return false;\n}\n\nfunction replaceEntitiesValue(textValue, options) {\n if (textValue && textValue.length > 0 && options.processEntities) {\n for (let i = 0; i < options.entities.length; i++) {\n const entity = options.entities[i];\n textValue = textValue.replace(entity.regex, entity.val);\n }\n }\n return textValue;\n}\n","'use strict';\n//parse Empty Node as self closing node\nimport buildFromOrderedJs from './orderedJs2Xml.js';\nimport getIgnoreAttributesFn from \"../ignoreAttributes.js\";\n\nconst defaultOptions = {\n attributeNamePrefix: '@_',\n attributesGroupName: false,\n textNodeName: '#text',\n ignoreAttributes: true,\n cdataPropName: false,\n format: false,\n indentBy: ' ',\n suppressEmptyNode: false,\n suppressUnpairedNode: true,\n suppressBooleanAttributes: true,\n tagValueProcessor: function(key, a) {\n return a;\n },\n attributeValueProcessor: function(attrName, a) {\n return a;\n },\n preserveOrder: false,\n commentPropName: false,\n unpairedTags: [],\n entities: [\n { regex: new RegExp(\"&\", \"g\"), val: \"&\" },//it must be on top\n { regex: new RegExp(\">\", \"g\"), val: \">\" },\n { regex: new RegExp(\"<\", \"g\"), val: \"<\" },\n { regex: new RegExp(\"\\'\", \"g\"), val: \"'\" },\n { regex: new RegExp(\"\\\"\", \"g\"), val: \""\" }\n ],\n processEntities: true,\n stopNodes: [],\n // transformTagName: false,\n // transformAttributeName: false,\n oneListGroup: false\n};\n\nexport default function Builder(options) {\n this.options = Object.assign({}, defaultOptions, options);\n if (this.options.ignoreAttributes === true || this.options.attributesGroupName) {\n this.isAttribute = function(/*a*/) {\n return false;\n };\n } else {\n this.ignoreAttributesFn = getIgnoreAttributesFn(this.options.ignoreAttributes)\n this.attrPrefixLen = this.options.attributeNamePrefix.length;\n this.isAttribute = isAttribute;\n }\n\n this.processTextOrObjNode = processTextOrObjNode\n\n if (this.options.format) {\n this.indentate = indentate;\n this.tagEndChar = '>\\n';\n this.newLine = '\\n';\n } else {\n this.indentate = function() {\n return '';\n };\n this.tagEndChar = '>';\n this.newLine = '';\n }\n}\n\nBuilder.prototype.build = function(jObj) {\n if(this.options.preserveOrder){\n return buildFromOrderedJs(jObj, this.options);\n }else {\n if(Array.isArray(jObj) && this.options.arrayNodeName && this.options.arrayNodeName.length > 1){\n jObj = {\n [this.options.arrayNodeName] : jObj\n }\n }\n return this.j2x(jObj, 0, []).val;\n }\n};\n\nBuilder.prototype.j2x = function(jObj, level, ajPath) {\n let attrStr = '';\n let val = '';\n const jPath = ajPath.join('.')\n for (let key in jObj) {\n if(!Object.prototype.hasOwnProperty.call(jObj, key)) continue;\n if (typeof jObj[key] === 'undefined') {\n // supress undefined node only if it is not an attribute\n if (this.isAttribute(key)) {\n val += '';\n }\n } else if (jObj[key] === null) {\n // null attribute should be ignored by the attribute list, but should not cause the tag closing\n if (this.isAttribute(key)) {\n val += '';\n } else if (key === this.options.cdataPropName) {\n val += '';\n } else if (key[0] === '?') {\n val += this.indentate(level) + '<' + key + '?' + this.tagEndChar;\n } else {\n val += this.indentate(level) + '<' + key + '/' + this.tagEndChar;\n }\n // val += this.indentate(level) + '<' + key + '/' + this.tagEndChar;\n } else if (jObj[key] instanceof Date) {\n val += this.buildTextValNode(jObj[key], key, '', level);\n } else if (typeof jObj[key] !== 'object') {\n //premitive type\n const attr = this.isAttribute(key);\n if (attr && !this.ignoreAttributesFn(attr, jPath)) {\n attrStr += this.buildAttrPairStr(attr, '' + jObj[key]);\n } else if (!attr) {\n //tag value\n if (key === this.options.textNodeName) {\n let newval = this.options.tagValueProcessor(key, '' + jObj[key]);\n val += this.replaceEntitiesValue(newval);\n } else {\n val += this.buildTextValNode(jObj[key], key, '', level);\n }\n }\n } else if (Array.isArray(jObj[key])) {\n //repeated nodes\n const arrLen = jObj[key].length;\n let listTagVal = \"\";\n let listTagAttr = \"\";\n for (let j = 0; j < arrLen; j++) {\n const item = jObj[key][j];\n if (typeof item === 'undefined') {\n // supress undefined node\n } else if (item === null) {\n if(key[0] === \"?\") val += this.indentate(level) + '<' + key + '?' + this.tagEndChar;\n else val += this.indentate(level) + '<' + key + '/' + this.tagEndChar;\n // val += this.indentate(level) + '<' + key + '/' + this.tagEndChar;\n } else if (typeof item === 'object') {\n if(this.options.oneListGroup){\n const result = this.j2x(item, level + 1, ajPath.concat(key));\n listTagVal += result.val;\n if (this.options.attributesGroupName && item.hasOwnProperty(this.options.attributesGroupName)) {\n listTagAttr += result.attrStr\n }\n }else{\n listTagVal += this.processTextOrObjNode(item, key, level, ajPath)\n }\n } else {\n if (this.options.oneListGroup) {\n let textValue = this.options.tagValueProcessor(key, item);\n textValue = this.replaceEntitiesValue(textValue);\n listTagVal += textValue;\n } else {\n listTagVal += this.buildTextValNode(item, key, '', level);\n }\n }\n }\n if(this.options.oneListGroup){\n listTagVal = this.buildObjectNode(listTagVal, key, listTagAttr, level);\n }\n val += listTagVal;\n } else {\n //nested node\n if (this.options.attributesGroupName && key === this.options.attributesGroupName) {\n const Ks = Object.keys(jObj[key]);\n const L = Ks.length;\n for (let j = 0; j < L; j++) {\n attrStr += this.buildAttrPairStr(Ks[j], '' + jObj[key][Ks[j]]);\n }\n } else {\n val += this.processTextOrObjNode(jObj[key], key, level, ajPath)\n }\n }\n }\n return {attrStr: attrStr, val: val};\n};\n\nBuilder.prototype.buildAttrPairStr = function(attrName, val){\n val = this.options.attributeValueProcessor(attrName, '' + val);\n val = this.replaceEntitiesValue(val);\n if (this.options.suppressBooleanAttributes && val === \"true\") {\n return ' ' + attrName;\n } else return ' ' + attrName + '=\"' + val + '\"';\n}\n\nfunction processTextOrObjNode (object, key, level, ajPath) {\n const result = this.j2x(object, level + 1, ajPath.concat(key));\n if (object[this.options.textNodeName] !== undefined && Object.keys(object).length === 1) {\n return this.buildTextValNode(object[this.options.textNodeName], key, result.attrStr, level);\n } else {\n return this.buildObjectNode(result.val, key, result.attrStr, level);\n }\n}\n\nBuilder.prototype.buildObjectNode = function(val, key, attrStr, level) {\n if(val === \"\"){\n if(key[0] === \"?\") return this.indentate(level) + '<' + key + attrStr+ '?' + this.tagEndChar;\n else {\n return this.indentate(level) + '<' + key + attrStr + this.closeTag(key) + this.tagEndChar;\n }\n }else{\n\n let tagEndExp = '</' + key + this.tagEndChar;\n let piClosingChar = \"\";\n \n if(key[0] === \"?\") {\n piClosingChar = \"?\";\n tagEndExp = \"\";\n }\n \n // attrStr is an empty string in case the attribute came as undefined or null\n if ((attrStr || attrStr === '') && val.indexOf('<') === -1) {\n return ( this.indentate(level) + '<' + key + attrStr + piClosingChar + '>' + val + tagEndExp );\n } else if (this.options.commentPropName !== false && key === this.options.commentPropName && piClosingChar.length === 0) {\n return this.indentate(level) + `<!--${val}-->` + this.newLine;\n }else {\n return (\n this.indentate(level) + '<' + key + attrStr + piClosingChar + this.tagEndChar +\n val +\n this.indentate(level) + tagEndExp );\n }\n }\n}\n\nBuilder.prototype.closeTag = function(key){\n let closeTag = \"\";\n if(this.options.unpairedTags.indexOf(key) !== -1){ //unpaired\n if(!this.options.suppressUnpairedNode) closeTag = \"/\"\n }else if(this.options.suppressEmptyNode){ //empty\n closeTag = \"/\";\n }else{\n closeTag = `></${key}`\n }\n return closeTag;\n}\n\nfunction buildEmptyObjNode(val, key, attrStr, level) {\n if (val !== '') {\n return this.buildObjectNode(val, key, attrStr, level);\n } else {\n if(key[0] === \"?\") return this.indentate(level) + '<' + key + attrStr+ '?' + this.tagEndChar;\n else {\n return this.indentate(level) + '<' + key + attrStr + '/' + this.tagEndChar;\n // return this.buildTagStr(level,key, attrStr);\n }\n }\n}\n\nBuilder.prototype.buildTextValNode = function(val, key, attrStr, level) {\n if (this.options.cdataPropName !== false && key === this.options.cdataPropName) {\n return this.indentate(level) + `<![CDATA[${val}]]>` + this.newLine;\n }else if (this.options.commentPropName !== false && key === this.options.commentPropName) {\n return this.indentate(level) + `<!--${val}-->` + this.newLine;\n }else if(key[0] === \"?\") {//PI tag\n return this.indentate(level) + '<' + key + attrStr+ '?' + this.tagEndChar; \n }else{\n let textValue = this.options.tagValueProcessor(key, val);\n textValue = this.replaceEntitiesValue(textValue);\n \n if( textValue === ''){\n return this.indentate(level) + '<' + key + attrStr + this.closeTag(key) + this.tagEndChar;\n }else{\n return this.indentate(level) + '<' + key + attrStr + '>' +\n textValue +\n '</' + key + this.tagEndChar;\n }\n }\n}\n\nBuilder.prototype.replaceEntitiesValue = function(textValue){\n if(textValue && textValue.length > 0 && this.options.processEntities){\n for (let i=0; i<this.options.entities.length; i++) {\n const entity = this.options.entities[i];\n textValue = textValue.replace(entity.regex, entity.val);\n }\n }\n return textValue;\n}\n\nfunction indentate(level) {\n return this.options.indentBy.repeat(level);\n}\n\nfunction isAttribute(name /*, options*/) {\n if (name.startsWith(this.options.attributeNamePrefix) && name !== this.options.textNodeName) {\n return name.substr(this.attrPrefixLen);\n } else {\n return false;\n }\n}\n\n","'use strict';\n\nimport {validate} from './validator.js';\nimport XMLParser from './xmlparser/XMLParser.js';\nimport XMLBuilder from './xmlbuilder/json2xml.js';\n\nconst XMLValidator = {\n validate: validate\n}\nexport {\n XMLParser,\n XMLValidator,\n XMLBuilder\n};"],"names":["root","factory","exports","module","define","amd","this","__webpack_require__","definition","key","o","Object","defineProperty","enumerable","get","obj","prop","prototype","hasOwnProperty","call","Symbol","toStringTag","value","nameStartChar","regexName","RegExp","getAllMatches","string","regex","matches","match","exec","allmatches","startIndex","lastIndex","length","len","index","push","isName","defaultOptions","allowBooleanAttributes","unpairedTags","validate","xmlData","options","assign","tags","tagFound","reachedRoot","substr","i","readPI","err","isWhiteSpace","getErrorObject","getLineNumberForPosition","tagStartPos","readCommentAndCDATA","closingTag","tagName","trim","substring","result","readAttributeStr","attrStr","attrStrStart","isValid","validateAttributeString","code","msg","line","tagClosed","otg","pop","openPos","col","indexOf","afterAmp","validateAmpersand","JSON","stringify","map","t","replace","char","start","tagname","angleBracketsCount","doubleQuote","singleQuote","startChar","validAttrStrRegxp","attrNames","getPositionFromMatch","undefined","attrName","validateAttrName","re","validateNumberAmpersand","count","message","lineNumber","lines","split","METADATA_SYMBOL","preserveOrder","attributeNamePrefix","attributesGroupName","textNodeName","ignoreAttributes","removeNSPrefix","parseTagValue","parseAttributeValue","trimValues","cdataPropName","numberParseOptions","hex","leadingZeros","eNotation","tagValueProcessor","val","attributeValueProcessor","stopNodes","alwaysCreateTextNode","isArray","commentPropName","processEntities","htmlEntities","ignoreDeclaration","ignorePiTags","transformTagName","transformAttributeName","updateTag","jPath","attrs","captureMetaData","XmlNode","child","_proto","add","_this$child$push","addChild","node","_this$child$push2","_this$child$push3","keys","getMetaDataSymbol","DocTypeReader","suppressValidationErr","readDocType","entities","Error","hasBody","comment","hasSeq","entityName","_this$readEntityExp","readEntityExp","regx","readElementExp","readNotationExp","skipWhitespace","test","validateEntityName","toUpperCase","_this$readIdentifierV","readIdentifierVal","notationName","identifierType","publicIdentifier","systemIdentifier","_this$readIdentifierV2","_this$readIdentifierV3","_this$readIdentifierV4","type","identifierVal","elementName","contentModel","readAttlistExp","attributeName","attributeType","allowedNotations","notation","join","includes","defaultValue","_this$readIdentifierV5","data","seq","j","name","hexRegex","numRegex","consider","decimalPoint","eNotationRegx","getIgnoreAttributesFn","Array","_step","_iterator","_createForOfIteratorHelperLoose","done","pattern","OrderedObjParser","currentNode","tagsNodeStack","docTypeEntities","lastEntities","ampEntity","_","str","String","fromCodePoint","Number","parseInt","addExternalEntities","parseXml","parseTextData","resolveNameSpace","buildAttributesMap","isItStopNode","replaceEntitiesValue","readStopNodeData","saveTextToParentTag","ignoreAttributesFn","stopNodesExact","Set","stopNodesWildcard","stopNodeExp","startsWith","externalEntities","entKeys","ent","dontTrim","hasAttributes","isLeafNode","escapeEntities","newval","parseValue","prefix","charAt","attrsRegx","oldVal","aName","newVal","attrCollection","xmlObj","xmlNode","textData","docTypeReader","closeIndex","findClosingIndex","colonIndex","lastTagName","lastIndexOf","propIndex","tagData","readTagExp","childNode","tagExp","attrExpPresent","endIndex","_ref","_ref2","rawTagName","lastTag","tagContent","entity","currentTagName","has","errMsg","closingIndex","closingChar","attrBoundary","ch","tagExpWithClosingIndex","separatorIndex","search","trimStart","openTagCount","shouldParse","trimmedStr","skipLike","numStr","window","parse_int","sign","eChar","eAdjacentToLeadingZeros","resolveEnotation","numTrimmedByZeros","decimalAdjacentToLeadingZeros","num","parsedStr","n","toNumber","prettify","compress","arr","text","compressedObj","newJpath","tagObj","property","propName","isLeaf","isLeafTag","assignAttributes","attrMap","jpath","atrrName","propCount","XMLParser","buildOptions","parse","validationOption","toString","orderedObjParser","orderedResult","addEntity","toXml","jArray","indentation","format","indentBy","arrToStr","xmlStr","isPreviousElementTag","newJPath","newIdentation","tagStart","attr_to_str","tagValue","suppressUnpairedNode","suppressEmptyNode","endsWith","attStr","tempInd","piTextNodeName","tagText","isStopNode","attr","attrVal","suppressBooleanAttributes","textValue","a","oneListGroup","Builder","isAttribute","attrPrefixLen","processTextOrObjNode","indentate","tagEndChar","newLine","object","level","ajPath","j2x","concat","buildTextValNode","buildObjectNode","repeat","build","jObj","buildFromOrderedJs","arrayNodeName","_jObj","Date","buildAttrPairStr","arrLen","listTagVal","listTagAttr","item","Ks","L","closeTag","tagEndExp","piClosingChar","XMLValidator"],"sourceRoot":""}
|
|
1
|
+
{"version":3,"file":"./lib/fxp.min.js","mappings":"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","sources":["webpack://fxp/webpack/universalModuleDefinition","webpack://fxp/webpack/bootstrap","webpack://fxp/webpack/runtime/define property getters","webpack://fxp/webpack/runtime/hasOwnProperty shorthand","webpack://fxp/webpack/runtime/make namespace object","webpack://fxp/./src/util.js","webpack://fxp/./src/validator.js","webpack://fxp/./src/xmlparser/OptionsBuilder.js","webpack://fxp/./src/xmlparser/xmlNode.js","webpack://fxp/./src/xmlparser/DocTypeReader.js","webpack://fxp/./node_modules/strnum/strnum.js","webpack://fxp/./src/ignoreAttributes.js","webpack://fxp/./src/xmlparser/OrderedObjParser.js","webpack://fxp/./src/xmlparser/node2json.js","webpack://fxp/./src/xmlparser/XMLParser.js","webpack://fxp/./src/xmlbuilder/orderedJs2Xml.js","webpack://fxp/./src/xmlbuilder/json2xml.js","webpack://fxp/./src/fxp.js"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"fxp\"] = factory();\n\telse\n\t\troot[\"fxp\"] = factory();\n})(this, () => {\nreturn ","// The require scope\nvar __webpack_require__ = {};\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","'use strict';\n\nconst nameStartChar = ':A-Za-z_\\\\u00C0-\\\\u00D6\\\\u00D8-\\\\u00F6\\\\u00F8-\\\\u02FF\\\\u0370-\\\\u037D\\\\u037F-\\\\u1FFF\\\\u200C-\\\\u200D\\\\u2070-\\\\u218F\\\\u2C00-\\\\u2FEF\\\\u3001-\\\\uD7FF\\\\uF900-\\\\uFDCF\\\\uFDF0-\\\\uFFFD';\nconst nameChar = nameStartChar + '\\\\-.\\\\d\\\\u00B7\\\\u0300-\\\\u036F\\\\u203F-\\\\u2040';\nexport const nameRegexp = '[' + nameStartChar + '][' + nameChar + ']*';\nconst regexName = new RegExp('^' + nameRegexp + '$');\n\nexport function getAllMatches(string, regex) {\n const matches = [];\n let match = regex.exec(string);\n while (match) {\n const allmatches = [];\n allmatches.startIndex = regex.lastIndex - match[0].length;\n const len = match.length;\n for (let index = 0; index < len; index++) {\n allmatches.push(match[index]);\n }\n matches.push(allmatches);\n match = regex.exec(string);\n }\n return matches;\n}\n\nexport const isName = function(string) {\n const match = regexName.exec(string);\n return !(match === null || typeof match === 'undefined');\n}\n\nexport function isExist(v) {\n return typeof v !== 'undefined';\n}\n\nexport function isEmptyObject(obj) {\n return Object.keys(obj).length === 0;\n}\n\n/**\n * Copy all the properties of a into b.\n * @param {*} target\n * @param {*} a\n */\nexport function merge(target, a, arrayMode) {\n if (a) {\n const keys = Object.keys(a); // will return an array of own properties\n const len = keys.length; //don't make it inline\n for (let i = 0; i < len; i++) {\n if (arrayMode === 'strict') {\n target[keys[i]] = [ a[keys[i]] ];\n } else {\n target[keys[i]] = a[keys[i]];\n }\n }\n }\n}\n/* exports.merge =function (b,a){\n return Object.assign(b,a);\n} */\n\nexport function getValue(v) {\n if (exports.isExist(v)) {\n return v;\n } else {\n return '';\n }\n}\n\n// const fakeCall = function(a) {return a;};\n// const fakeCallNoReturn = function() {};","'use strict';\n\nimport {getAllMatches, isName} from './util.js';\n\nconst defaultOptions = {\n allowBooleanAttributes: false, //A tag can have attributes without any value\n unpairedTags: []\n};\n\n//const tagsPattern = new RegExp(\"<\\\\/?([\\\\w:\\\\-_\\.]+)\\\\s*\\/?>\",\"g\");\nexport function validate(xmlData, options) {\n options = Object.assign({}, defaultOptions, options);\n\n //xmlData = xmlData.replace(/(\\r\\n|\\n|\\r)/gm,\"\");//make it single line\n //xmlData = xmlData.replace(/(^\\s*<\\?xml.*?\\?>)/g,\"\");//Remove XML starting tag\n //xmlData = xmlData.replace(/(<!DOCTYPE[\\s\\w\\\"\\.\\/\\-\\:]+(\\[.*\\])*\\s*>)/g,\"\");//Remove DOCTYPE\n const tags = [];\n let tagFound = false;\n\n //indicates that the root tag has been closed (aka. depth 0 has been reached)\n let reachedRoot = false;\n\n if (xmlData[0] === '\\ufeff') {\n // check for byte order mark (BOM)\n xmlData = xmlData.substr(1);\n }\n \n for (let i = 0; i < xmlData.length; i++) {\n\n if (xmlData[i] === '<' && xmlData[i+1] === '?') {\n i+=2;\n i = readPI(xmlData,i);\n if (i.err) return i;\n }else if (xmlData[i] === '<') {\n //starting of tag\n //read until you reach to '>' avoiding any '>' in attribute value\n let tagStartPos = i;\n i++;\n \n if (xmlData[i] === '!') {\n i = readCommentAndCDATA(xmlData, i);\n continue;\n } else {\n let closingTag = false;\n if (xmlData[i] === '/') {\n //closing tag\n closingTag = true;\n i++;\n }\n //read tagname\n let tagName = '';\n for (; i < xmlData.length &&\n xmlData[i] !== '>' &&\n xmlData[i] !== ' ' &&\n xmlData[i] !== '\\t' &&\n xmlData[i] !== '\\n' &&\n xmlData[i] !== '\\r'; i++\n ) {\n tagName += xmlData[i];\n }\n tagName = tagName.trim();\n //console.log(tagName);\n\n if (tagName[tagName.length - 1] === '/') {\n //self closing tag without attributes\n tagName = tagName.substring(0, tagName.length - 1);\n //continue;\n i--;\n }\n if (!validateTagName(tagName)) {\n let msg;\n if (tagName.trim().length === 0) {\n msg = \"Invalid space after '<'.\";\n } else {\n msg = \"Tag '\"+tagName+\"' is an invalid name.\";\n }\n return getErrorObject('InvalidTag', msg, getLineNumberForPosition(xmlData, i));\n }\n\n const result = readAttributeStr(xmlData, i);\n if (result === false) {\n return getErrorObject('InvalidAttr', \"Attributes for '\"+tagName+\"' have open quote.\", getLineNumberForPosition(xmlData, i));\n }\n let attrStr = result.value;\n i = result.index;\n\n if (attrStr[attrStr.length - 1] === '/') {\n //self closing tag\n const attrStrStart = i - attrStr.length;\n attrStr = attrStr.substring(0, attrStr.length - 1);\n const isValid = validateAttributeString(attrStr, options);\n if (isValid === true) {\n tagFound = true;\n //continue; //text may presents after self closing tag\n } else {\n //the result from the nested function returns the position of the error within the attribute\n //in order to get the 'true' error line, we need to calculate the position where the attribute begins (i - attrStr.length) and then add the position within the attribute\n //this gives us the absolute index in the entire xml, which we can use to find the line at last\n return getErrorObject(isValid.err.code, isValid.err.msg, getLineNumberForPosition(xmlData, attrStrStart + isValid.err.line));\n }\n } else if (closingTag) {\n if (!result.tagClosed) {\n return getErrorObject('InvalidTag', \"Closing tag '\"+tagName+\"' doesn't have proper closing.\", getLineNumberForPosition(xmlData, i));\n } else if (attrStr.trim().length > 0) {\n return getErrorObject('InvalidTag', \"Closing tag '\"+tagName+\"' can't have attributes or invalid starting.\", getLineNumberForPosition(xmlData, tagStartPos));\n } else if (tags.length === 0) {\n return getErrorObject('InvalidTag', \"Closing tag '\"+tagName+\"' has not been opened.\", getLineNumberForPosition(xmlData, tagStartPos));\n } else {\n const otg = tags.pop();\n if (tagName !== otg.tagName) {\n let openPos = getLineNumberForPosition(xmlData, otg.tagStartPos);\n return getErrorObject('InvalidTag',\n \"Expected closing tag '\"+otg.tagName+\"' (opened in line \"+openPos.line+\", col \"+openPos.col+\") instead of closing tag '\"+tagName+\"'.\",\n getLineNumberForPosition(xmlData, tagStartPos));\n }\n\n //when there are no more tags, we reached the root level.\n if (tags.length == 0) {\n reachedRoot = true;\n }\n }\n } else {\n const isValid = validateAttributeString(attrStr, options);\n if (isValid !== true) {\n //the result from the nested function returns the position of the error within the attribute\n //in order to get the 'true' error line, we need to calculate the position where the attribute begins (i - attrStr.length) and then add the position within the attribute\n //this gives us the absolute index in the entire xml, which we can use to find the line at last\n return getErrorObject(isValid.err.code, isValid.err.msg, getLineNumberForPosition(xmlData, i - attrStr.length + isValid.err.line));\n }\n\n //if the root level has been reached before ...\n if (reachedRoot === true) {\n return getErrorObject('InvalidXml', 'Multiple possible root nodes found.', getLineNumberForPosition(xmlData, i));\n } else if(options.unpairedTags.indexOf(tagName) !== -1){\n //don't push into stack\n } else {\n tags.push({tagName, tagStartPos});\n }\n tagFound = true;\n }\n\n //skip tag text value\n //It may include comments and CDATA value\n for (i++; i < xmlData.length; i++) {\n if (xmlData[i] === '<') {\n if (xmlData[i + 1] === '!') {\n //comment or CADATA\n i++;\n i = readCommentAndCDATA(xmlData, i);\n continue;\n } else if (xmlData[i+1] === '?') {\n i = readPI(xmlData, ++i);\n if (i.err) return i;\n } else{\n break;\n }\n } else if (xmlData[i] === '&') {\n const afterAmp = validateAmpersand(xmlData, i);\n if (afterAmp == -1)\n return getErrorObject('InvalidChar', \"char '&' is not expected.\", getLineNumberForPosition(xmlData, i));\n i = afterAmp;\n }else{\n if (reachedRoot === true && !isWhiteSpace(xmlData[i])) {\n return getErrorObject('InvalidXml', \"Extra text at the end\", getLineNumberForPosition(xmlData, i));\n }\n }\n } //end of reading tag text value\n if (xmlData[i] === '<') {\n i--;\n }\n }\n } else {\n if ( isWhiteSpace(xmlData[i])) {\n continue;\n }\n return getErrorObject('InvalidChar', \"char '\"+xmlData[i]+\"' is not expected.\", getLineNumberForPosition(xmlData, i));\n }\n }\n\n if (!tagFound) {\n return getErrorObject('InvalidXml', 'Start tag expected.', 1);\n }else if (tags.length == 1) {\n return getErrorObject('InvalidTag', \"Unclosed tag '\"+tags[0].tagName+\"'.\", getLineNumberForPosition(xmlData, tags[0].tagStartPos));\n }else if (tags.length > 0) {\n return getErrorObject('InvalidXml', \"Invalid '\"+\n JSON.stringify(tags.map(t => t.tagName), null, 4).replace(/\\r?\\n/g, '')+\n \"' found.\", {line: 1, col: 1});\n }\n\n return true;\n};\n\nfunction isWhiteSpace(char){\n return char === ' ' || char === '\\t' || char === '\\n' || char === '\\r';\n}\n/**\n * Read Processing insstructions and skip\n * @param {*} xmlData\n * @param {*} i\n */\nfunction readPI(xmlData, i) {\n const start = i;\n for (; i < xmlData.length; i++) {\n if (xmlData[i] == '?' || xmlData[i] == ' ') {\n //tagname\n const tagname = xmlData.substr(start, i - start);\n if (i > 5 && tagname === 'xml') {\n return getErrorObject('InvalidXml', 'XML declaration allowed only at the start of the document.', getLineNumberForPosition(xmlData, i));\n } else if (xmlData[i] == '?' && xmlData[i + 1] == '>') {\n //check if valid attribut string\n i++;\n break;\n } else {\n continue;\n }\n }\n }\n return i;\n}\n\nfunction readCommentAndCDATA(xmlData, i) {\n if (xmlData.length > i + 5 && xmlData[i + 1] === '-' && xmlData[i + 2] === '-') {\n //comment\n for (i += 3; i < xmlData.length; i++) {\n if (xmlData[i] === '-' && xmlData[i + 1] === '-' && xmlData[i + 2] === '>') {\n i += 2;\n break;\n }\n }\n } else if (\n xmlData.length > i + 8 &&\n xmlData[i + 1] === 'D' &&\n xmlData[i + 2] === 'O' &&\n xmlData[i + 3] === 'C' &&\n xmlData[i + 4] === 'T' &&\n xmlData[i + 5] === 'Y' &&\n xmlData[i + 6] === 'P' &&\n xmlData[i + 7] === 'E'\n ) {\n let angleBracketsCount = 1;\n for (i += 8; i < xmlData.length; i++) {\n if (xmlData[i] === '<') {\n angleBracketsCount++;\n } else if (xmlData[i] === '>') {\n angleBracketsCount--;\n if (angleBracketsCount === 0) {\n break;\n }\n }\n }\n } else if (\n xmlData.length > i + 9 &&\n xmlData[i + 1] === '[' &&\n xmlData[i + 2] === 'C' &&\n xmlData[i + 3] === 'D' &&\n xmlData[i + 4] === 'A' &&\n xmlData[i + 5] === 'T' &&\n xmlData[i + 6] === 'A' &&\n xmlData[i + 7] === '['\n ) {\n for (i += 8; i < xmlData.length; i++) {\n if (xmlData[i] === ']' && xmlData[i + 1] === ']' && xmlData[i + 2] === '>') {\n i += 2;\n break;\n }\n }\n }\n\n return i;\n}\n\nconst doubleQuote = '\"';\nconst singleQuote = \"'\";\n\n/**\n * Keep reading xmlData until '<' is found outside the attribute value.\n * @param {string} xmlData\n * @param {number} i\n */\nfunction readAttributeStr(xmlData, i) {\n let attrStr = '';\n let startChar = '';\n let tagClosed = false;\n for (; i < xmlData.length; i++) {\n if (xmlData[i] === doubleQuote || xmlData[i] === singleQuote) {\n if (startChar === '') {\n startChar = xmlData[i];\n } else if (startChar !== xmlData[i]) {\n //if vaue is enclosed with double quote then single quotes are allowed inside the value and vice versa\n } else {\n startChar = '';\n }\n } else if (xmlData[i] === '>') {\n if (startChar === '') {\n tagClosed = true;\n break;\n }\n }\n attrStr += xmlData[i];\n }\n if (startChar !== '') {\n return false;\n }\n\n return {\n value: attrStr,\n index: i,\n tagClosed: tagClosed\n };\n}\n\n/**\n * Select all the attributes whether valid or invalid.\n */\nconst validAttrStrRegxp = new RegExp('(\\\\s*)([^\\\\s=]+)(\\\\s*=)?(\\\\s*([\\'\"])(([\\\\s\\\\S])*?)\\\\5)?', 'g');\n\n//attr, =\"sd\", a=\"amit's\", a=\"sd\"b=\"saf\", ab cd=\"\"\n\nfunction validateAttributeString(attrStr, options) {\n //console.log(\"start:\"+attrStr+\":end\");\n\n //if(attrStr.trim().length === 0) return true; //empty string\n\n const matches = getAllMatches(attrStr, validAttrStrRegxp);\n const attrNames = {};\n\n for (let i = 0; i < matches.length; i++) {\n if (matches[i][1].length === 0) {\n //nospace before attribute name: a=\"sd\"b=\"saf\"\n return getErrorObject('InvalidAttr', \"Attribute '\"+matches[i][2]+\"' has no space in starting.\", getPositionFromMatch(matches[i]))\n } else if (matches[i][3] !== undefined && matches[i][4] === undefined) {\n return getErrorObject('InvalidAttr', \"Attribute '\"+matches[i][2]+\"' is without value.\", getPositionFromMatch(matches[i]));\n } else if (matches[i][3] === undefined && !options.allowBooleanAttributes) {\n //independent attribute: ab\n return getErrorObject('InvalidAttr', \"boolean attribute '\"+matches[i][2]+\"' is not allowed.\", getPositionFromMatch(matches[i]));\n }\n /* else if(matches[i][6] === undefined){//attribute without value: ab=\n return { err: { code:\"InvalidAttr\",msg:\"attribute \" + matches[i][2] + \" has no value assigned.\"}};\n } */\n const attrName = matches[i][2];\n if (!validateAttrName(attrName)) {\n return getErrorObject('InvalidAttr', \"Attribute '\"+attrName+\"' is an invalid name.\", getPositionFromMatch(matches[i]));\n }\n if (!attrNames.hasOwnProperty(attrName)) {\n //check for duplicate attribute.\n attrNames[attrName] = 1;\n } else {\n return getErrorObject('InvalidAttr', \"Attribute '\"+attrName+\"' is repeated.\", getPositionFromMatch(matches[i]));\n }\n }\n\n return true;\n}\n\nfunction validateNumberAmpersand(xmlData, i) {\n let re = /\\d/;\n if (xmlData[i] === 'x') {\n i++;\n re = /[\\da-fA-F]/;\n }\n for (; i < xmlData.length; i++) {\n if (xmlData[i] === ';')\n return i;\n if (!xmlData[i].match(re))\n break;\n }\n return -1;\n}\n\nfunction validateAmpersand(xmlData, i) {\n // https://www.w3.org/TR/xml/#dt-charref\n i++;\n if (xmlData[i] === ';')\n return -1;\n if (xmlData[i] === '#') {\n i++;\n return validateNumberAmpersand(xmlData, i);\n }\n let count = 0;\n for (; i < xmlData.length; i++, count++) {\n if (xmlData[i].match(/\\w/) && count < 20)\n continue;\n if (xmlData[i] === ';')\n break;\n return -1;\n }\n return i;\n}\n\nfunction getErrorObject(code, message, lineNumber) {\n return {\n err: {\n code: code,\n msg: message,\n line: lineNumber.line || lineNumber,\n col: lineNumber.col,\n },\n };\n}\n\nfunction validateAttrName(attrName) {\n return isName(attrName);\n}\n\n// const startsWithXML = /^xml/i;\n\nfunction validateTagName(tagname) {\n return isName(tagname) /* && !tagname.match(startsWithXML) */;\n}\n\n//this function returns the line number for the character at the given index\nfunction getLineNumberForPosition(xmlData, index) {\n const lines = xmlData.substring(0, index).split(/\\r?\\n/);\n return {\n line: lines.length,\n\n // column number is last line's length + 1, because column numbering starts at 1:\n col: lines[lines.length - 1].length + 1\n };\n}\n\n//this function returns the position of the first character of match within attrStr\nfunction getPositionFromMatch(match) {\n return match.startIndex + match[1].length;\n}\n","\nexport const defaultOptions = {\n preserveOrder: false,\n attributeNamePrefix: '@_',\n attributesGroupName: false,\n textNodeName: '#text',\n ignoreAttributes: true,\n removeNSPrefix: false, // remove NS from tag name or attribute name if true\n allowBooleanAttributes: false, //a tag can have attributes without any value\n //ignoreRootElement : false,\n parseTagValue: true,\n parseAttributeValue: false,\n trimValues: true, //Trim string values of tag and attributes\n cdataPropName: false,\n numberParseOptions: {\n hex: true,\n leadingZeros: true,\n eNotation: true\n },\n tagValueProcessor: function(tagName, val) {\n return val;\n },\n attributeValueProcessor: function(attrName, val) {\n return val;\n },\n stopNodes: [], //nested tags will not be parsed even for errors\n alwaysCreateTextNode: false,\n isArray: () => false,\n commentPropName: false,\n unpairedTags: [],\n processEntities: true,\n htmlEntities: false,\n ignoreDeclaration: false,\n ignorePiTags: false,\n transformTagName: false,\n transformAttributeName: false,\n updateTag: function(tagName, jPath, attrs){\n return tagName\n },\n // skipEmptyListItem: false\n captureMetaData: false,\n};\n \nexport const buildOptions = function(options) {\n return Object.assign({}, defaultOptions, options);\n};\n","'use strict';\n\nlet METADATA_SYMBOL;\n\nif (typeof Symbol !== \"function\") {\n METADATA_SYMBOL = \"@@xmlMetadata\";\n} else {\n METADATA_SYMBOL = Symbol(\"XML Node Metadata\");\n}\n\nexport default class XmlNode{\n constructor(tagname) {\n this.tagname = tagname;\n this.child = []; //nested tags, text, cdata, comments in order\n this[\":@\"] = {}; //attributes map\n }\n add(key,val){\n // this.child.push( {name : key, val: val, isCdata: isCdata });\n if(key === \"__proto__\") key = \"#__proto__\";\n this.child.push( {[key]: val });\n }\n addChild(node, startIndex) {\n if(node.tagname === \"__proto__\") node.tagname = \"#__proto__\";\n if(node[\":@\"] && Object.keys(node[\":@\"]).length > 0){\n this.child.push( { [node.tagname]: node.child, [\":@\"]: node[\":@\"] });\n }else{\n this.child.push( { [node.tagname]: node.child });\n }\n // if requested, add the startIndex\n if (startIndex !== undefined) {\n // Note: for now we just overwrite the metadata. If we had more complex metadata,\n // we might need to do an object append here: metadata = { ...metadata, startIndex }\n this.child[this.child.length - 1][METADATA_SYMBOL] = { startIndex };\n }\n }\n /** symbol used for metadata */\n static getMetaDataSymbol() {\n return METADATA_SYMBOL;\n }\n}\n","import {isName} from '../util.js';\n\nexport default class DocTypeReader{\n constructor(processEntities){\n this.suppressValidationErr = !processEntities;\n }\n \n readDocType(xmlData, i){\n \n const entities = {};\n if( xmlData[i + 3] === 'O' &&\n xmlData[i + 4] === 'C' &&\n xmlData[i + 5] === 'T' &&\n xmlData[i + 6] === 'Y' &&\n xmlData[i + 7] === 'P' &&\n xmlData[i + 8] === 'E')\n { \n i = i+9;\n let angleBracketsCount = 1;\n let hasBody = false, comment = false;\n let exp = \"\";\n for(;i<xmlData.length;i++){\n if (xmlData[i] === '<' && !comment) { //Determine the tag type\n if( hasBody && hasSeq(xmlData, \"!ENTITY\",i)){\n i += 7; \n let entityName, val;\n [entityName, val,i] = this.readEntityExp(xmlData,i+1,this.suppressValidationErr);\n if(val.indexOf(\"&\") === -1) //Parameter entities are not supported\n entities[ entityName ] = {\n regx : RegExp( `&${entityName};`,\"g\"),\n val: val\n };\n }\n else if( hasBody && hasSeq(xmlData, \"!ELEMENT\",i)) {\n i += 8;//Not supported\n const {index} = this.readElementExp(xmlData,i+1);\n i = index;\n }else if( hasBody && hasSeq(xmlData, \"!ATTLIST\",i)){\n i += 8;//Not supported\n // const {index} = this.readAttlistExp(xmlData,i+1);\n // i = index;\n }else if( hasBody && hasSeq(xmlData, \"!NOTATION\",i)) {\n i += 9;//Not supported\n const {index} = this.readNotationExp(xmlData,i+1,this.suppressValidationErr);\n i = index;\n }else if( hasSeq(xmlData, \"!--\",i) ) comment = true;\n else throw new Error(`Invalid DOCTYPE`);\n\n angleBracketsCount++;\n exp = \"\";\n } else if (xmlData[i] === '>') { //Read tag content\n if(comment){\n if( xmlData[i - 1] === \"-\" && xmlData[i - 2] === \"-\"){\n comment = false;\n angleBracketsCount--;\n }\n }else{\n angleBracketsCount--;\n }\n if (angleBracketsCount === 0) {\n break;\n }\n }else if( xmlData[i] === '['){\n hasBody = true;\n }else{\n exp += xmlData[i];\n }\n }\n if(angleBracketsCount !== 0){\n throw new Error(`Unclosed DOCTYPE`);\n }\n }else{\n throw new Error(`Invalid Tag instead of DOCTYPE`);\n }\n return {entities, i};\n }\n readEntityExp(xmlData, i) { \n //External entities are not supported\n // <!ENTITY ext SYSTEM \"http://normal-website.com\" >\n\n //Parameter entities are not supported\n // <!ENTITY entityname \"&anotherElement;\">\n\n //Internal entities are supported\n // <!ENTITY entityname \"replacement text\">\n\n // Skip leading whitespace after <!ENTITY\n i = skipWhitespace(xmlData, i);\n\n // Read entity name\n let entityName = \"\";\n while (i < xmlData.length && !/\\s/.test(xmlData[i]) && xmlData[i] !== '\"' && xmlData[i] !== \"'\") {\n entityName += xmlData[i];\n i++;\n }\n validateEntityName(entityName);\n\n // Skip whitespace after entity name\n i = skipWhitespace(xmlData, i);\n\n // Check for unsupported constructs (external entities or parameter entities)\n if(!this.suppressValidationErr){\n if (xmlData.substring(i, i + 6).toUpperCase() === \"SYSTEM\") {\n throw new Error(\"External entities are not supported\");\n }else if (xmlData[i] === \"%\") {\n throw new Error(\"Parameter entities are not supported\");\n }\n }\n\n // Read entity value (internal entity)\n let entityValue = \"\";\n [i, entityValue] = this.readIdentifierVal(xmlData, i, \"entity\");\n i--;\n return [entityName, entityValue, i ];\n }\n\n readNotationExp(xmlData, i) {\n // Skip leading whitespace after <!NOTATION\n i = skipWhitespace(xmlData, i);\n\n // Read notation name\n let notationName = \"\";\n while (i < xmlData.length && !/\\s/.test(xmlData[i])) {\n notationName += xmlData[i];\n i++;\n }\n !this.suppressValidationErr && validateEntityName(notationName);\n\n // Skip whitespace after notation name\n i = skipWhitespace(xmlData, i);\n\n // Check identifier type (SYSTEM or PUBLIC)\n const identifierType = xmlData.substring(i, i + 6).toUpperCase();\n if (!this.suppressValidationErr && identifierType !== \"SYSTEM\" && identifierType !== \"PUBLIC\") {\n throw new Error(`Expected SYSTEM or PUBLIC, found \"${identifierType}\"`);\n }\n i += identifierType.length;\n\n // Skip whitespace after identifier type\n i = skipWhitespace(xmlData, i);\n\n // Read public identifier (if PUBLIC)\n let publicIdentifier = null;\n let systemIdentifier = null;\n\n if (identifierType === \"PUBLIC\") {\n [i, publicIdentifier ] = this.readIdentifierVal(xmlData, i, \"publicIdentifier\");\n\n // Skip whitespace after public identifier\n i = skipWhitespace(xmlData, i);\n\n // Optionally read system identifier\n if (xmlData[i] === '\"' || xmlData[i] === \"'\") {\n [i, systemIdentifier ] = this.readIdentifierVal(xmlData, i,\"systemIdentifier\");\n }\n } else if (identifierType === \"SYSTEM\") {\n // Read system identifier (mandatory for SYSTEM)\n [i, systemIdentifier ] = this.readIdentifierVal(xmlData, i, \"systemIdentifier\");\n\n if (!this.suppressValidationErr && !systemIdentifier) {\n throw new Error(\"Missing mandatory system identifier for SYSTEM notation\");\n }\n }\n \n return {notationName, publicIdentifier, systemIdentifier, index: --i};\n }\n\n readIdentifierVal(xmlData, i, type) {\n let identifierVal = \"\";\n const startChar = xmlData[i];\n if (startChar !== '\"' && startChar !== \"'\") {\n throw new Error(`Expected quoted string, found \"${startChar}\"`);\n }\n i++;\n\n while (i < xmlData.length && xmlData[i] !== startChar) {\n identifierVal += xmlData[i];\n i++;\n }\n\n if (xmlData[i] !== startChar) {\n throw new Error(`Unterminated ${type} value`);\n }\n i++;\n return [i, identifierVal];\n }\n\n readElementExp(xmlData, i) {\n // <!ELEMENT br EMPTY>\n // <!ELEMENT div ANY>\n // <!ELEMENT title (#PCDATA)>\n // <!ELEMENT book (title, author+)>\n // <!ELEMENT name (content-model)>\n \n // Skip leading whitespace after <!ELEMENT\n i = skipWhitespace(xmlData, i);\n\n // Read element name\n let elementName = \"\";\n while (i < xmlData.length && !/\\s/.test(xmlData[i])) {\n elementName += xmlData[i];\n i++;\n }\n\n // Validate element name\n if (!this.suppressValidationErr && !isName(elementName)) {\n throw new Error(`Invalid element name: \"${elementName}\"`);\n }\n\n // Skip whitespace after element name\n i = skipWhitespace(xmlData, i);\n let contentModel = \"\";\n // Expect '(' to start content model\n if(xmlData[i] === \"E\" && hasSeq(xmlData, \"MPTY\",i)) i+=4;\n else if(xmlData[i] === \"A\" && hasSeq(xmlData, \"NY\",i)) i+=2;\n else if (xmlData[i] === \"(\") {\n i++; // Move past '('\n\n // Read content model\n while (i < xmlData.length && xmlData[i] !== \")\") {\n contentModel += xmlData[i];\n i++;\n }\n if (xmlData[i] !== \")\") {\n throw new Error(\"Unterminated content model\");\n }\n\n }else if(!this.suppressValidationErr){\n throw new Error(`Invalid Element Expression, found \"${xmlData[i]}\"`);\n }\n \n return {\n elementName,\n contentModel: contentModel.trim(),\n index: i\n };\n }\n\n readAttlistExp(xmlData, i) {\n // Skip leading whitespace after <!ATTLIST\n i = skipWhitespace(xmlData, i);\n\n // Read element name\n let elementName = \"\";\n while (i < xmlData.length && !/\\s/.test(xmlData[i])) {\n elementName += xmlData[i];\n i++;\n }\n\n // Validate element name\n validateEntityName(elementName)\n\n // Skip whitespace after element name\n i = skipWhitespace(xmlData, i);\n\n // Read attribute name\n let attributeName = \"\";\n while (i < xmlData.length && !/\\s/.test(xmlData[i])) {\n attributeName += xmlData[i];\n i++;\n }\n\n // Validate attribute name\n if (!validateEntityName(attributeName)) {\n throw new Error(`Invalid attribute name: \"${attributeName}\"`);\n }\n\n // Skip whitespace after attribute name\n i = skipWhitespace(xmlData, i);\n\n // Read attribute type\n let attributeType = \"\";\n if (xmlData.substring(i, i + 8).toUpperCase() === \"NOTATION\") {\n attributeType = \"NOTATION\";\n i += 8; // Move past \"NOTATION\"\n\n // Skip whitespace after \"NOTATION\"\n i = skipWhitespace(xmlData, i);\n\n // Expect '(' to start the list of notations\n if (xmlData[i] !== \"(\") {\n throw new Error(`Expected '(', found \"${xmlData[i]}\"`);\n }\n i++; // Move past '('\n\n // Read the list of allowed notations\n let allowedNotations = [];\n while (i < xmlData.length && xmlData[i] !== \")\") {\n let notation = \"\";\n while (i < xmlData.length && xmlData[i] !== \"|\" && xmlData[i] !== \")\") {\n notation += xmlData[i];\n i++;\n }\n\n // Validate notation name\n notation = notation.trim();\n if (!validateEntityName(notation)) {\n throw new Error(`Invalid notation name: \"${notation}\"`);\n }\n\n allowedNotations.push(notation);\n\n // Skip '|' separator or exit loop\n if (xmlData[i] === \"|\") {\n i++; // Move past '|'\n i = skipWhitespace(xmlData, i); // Skip optional whitespace after '|'\n }\n }\n\n if (xmlData[i] !== \")\") {\n throw new Error(\"Unterminated list of notations\");\n }\n i++; // Move past ')'\n\n // Store the allowed notations as part of the attribute type\n attributeType += \" (\" + allowedNotations.join(\"|\") + \")\";\n } else {\n // Handle simple types (e.g., CDATA, ID, IDREF, etc.)\n while (i < xmlData.length && !/\\s/.test(xmlData[i])) {\n attributeType += xmlData[i];\n i++;\n }\n\n // Validate simple attribute type\n const validTypes = [\"CDATA\", \"ID\", \"IDREF\", \"IDREFS\", \"ENTITY\", \"ENTITIES\", \"NMTOKEN\", \"NMTOKENS\"];\n if (!this.suppressValidationErr && !validTypes.includes(attributeType.toUpperCase())) {\n throw new Error(`Invalid attribute type: \"${attributeType}\"`);\n }\n }\n\n // Skip whitespace after attribute type\n i = skipWhitespace(xmlData, i);\n\n // Read default value\n let defaultValue = \"\";\n if (xmlData.substring(i, i + 8).toUpperCase() === \"#REQUIRED\") {\n defaultValue = \"#REQUIRED\";\n i += 8;\n } else if (xmlData.substring(i, i + 7).toUpperCase() === \"#IMPLIED\") {\n defaultValue = \"#IMPLIED\";\n i += 7;\n } else {\n [i, defaultValue] = this.readIdentifierVal(xmlData, i, \"ATTLIST\");\n }\n\n return {\n elementName,\n attributeName,\n attributeType,\n defaultValue,\n index: i\n }\n }\n}\n\n\n\nconst skipWhitespace = (data, index) => {\n while (index < data.length && /\\s/.test(data[index])) {\n index++;\n }\n return index;\n};\n\n\n\nfunction hasSeq(data, seq,i){\n for(let j=0;j<seq.length;j++){\n if(seq[j]!==data[i+j+1]) return false;\n }\n return true;\n}\n\nfunction validateEntityName(name){\n if (isName(name))\n\t return name;\n else\n throw new Error(`Invalid entity name ${name}`);\n}\n","const hexRegex = /^[-+]?0x[a-fA-F0-9]+$/;\nconst numRegex = /^([\\-\\+])?(0*)([0-9]*(\\.[0-9]*)?)$/;\n// const octRegex = /^0x[a-z0-9]+/;\n// const binRegex = /0x[a-z0-9]+/;\n\n \nconst consider = {\n hex : true,\n // oct: false,\n leadingZeros: true,\n decimalPoint: \"\\.\",\n eNotation: true,\n //skipLike: /regex/\n};\n\nexport default function toNumber(str, options = {}){\n options = Object.assign({}, consider, options );\n if(!str || typeof str !== \"string\" ) return str;\n \n let trimmedStr = str.trim();\n \n if(options.skipLike !== undefined && options.skipLike.test(trimmedStr)) return str;\n else if(str===\"0\") return 0;\n else if (options.hex && hexRegex.test(trimmedStr)) {\n return parse_int(trimmedStr, 16);\n // }else if (options.oct && octRegex.test(str)) {\n // return Number.parseInt(val, 8);\n }else if (trimmedStr.search(/.+[eE].+/)!== -1) { //eNotation\n return resolveEnotation(str,trimmedStr,options);\n // }else if (options.parseBin && binRegex.test(str)) {\n // return Number.parseInt(val, 2);\n }else{\n //separate negative sign, leading zeros, and rest number\n const match = numRegex.exec(trimmedStr);\n // +00.123 => [ , '+', '00', '.123', ..\n if(match){\n const sign = match[1] || \"\";\n const leadingZeros = match[2];\n let numTrimmedByZeros = trimZeros(match[3]); //complete num without leading zeros\n const decimalAdjacentToLeadingZeros = sign ? // 0., -00., 000.\n str[leadingZeros.length+1] === \".\" \n : str[leadingZeros.length] === \".\";\n\n //trim ending zeros for floating number\n if(!options.leadingZeros //leading zeros are not allowed\n && (leadingZeros.length > 1 \n || (leadingZeros.length === 1 && !decimalAdjacentToLeadingZeros))){\n // 00, 00.3, +03.24, 03, 03.24\n return str;\n }\n else{//no leading zeros or leading zeros are allowed\n const num = Number(trimmedStr);\n const parsedStr = String(num);\n\n if( num === 0 || num === -0) return num;\n if(parsedStr.search(/[eE]/) !== -1){ //given number is long and parsed to eNotation\n if(options.eNotation) return num;\n else return str;\n }else if(trimmedStr.indexOf(\".\") !== -1){ //floating number\n if(parsedStr === \"0\") return num; //0.0\n else if(parsedStr === numTrimmedByZeros) return num; //0.456. 0.79000\n else if( parsedStr === `${sign}${numTrimmedByZeros}`) return num;\n else return str;\n }\n \n let n = leadingZeros? numTrimmedByZeros : trimmedStr;\n if(leadingZeros){\n // -009 => -9\n return (n === parsedStr) || (sign+n === parsedStr) ? num : str\n }else {\n // +9\n return (n === parsedStr) || (n === sign+parsedStr) ? num : str\n }\n }\n }else{ //non-numeric string\n return str;\n }\n }\n}\n\nconst eNotationRegx = /^([-+])?(0*)(\\d*(\\.\\d*)?[eE][-\\+]?\\d+)$/;\nfunction resolveEnotation(str,trimmedStr,options){\n if(!options.eNotation) return str;\n const notation = trimmedStr.match(eNotationRegx); \n if(notation){\n let sign = notation[1] || \"\";\n const eChar = notation[3].indexOf(\"e\") === -1 ? \"E\" : \"e\";\n const leadingZeros = notation[2];\n const eAdjacentToLeadingZeros = sign ? // 0E.\n str[leadingZeros.length+1] === eChar \n : str[leadingZeros.length] === eChar;\n\n if(leadingZeros.length > 1 && eAdjacentToLeadingZeros) return str;\n else if(leadingZeros.length === 1 \n && (notation[3].startsWith(`.${eChar}`) || notation[3][0] === eChar)){\n return Number(trimmedStr);\n }else if(options.leadingZeros && !eAdjacentToLeadingZeros){ //accept with leading zeros\n //remove leading 0s\n trimmedStr = (notation[1] || \"\") + notation[3];\n return Number(trimmedStr);\n }else return str;\n }else{\n return str;\n }\n}\n\n/**\n * \n * @param {string} numStr without leading zeros\n * @returns \n */\nfunction trimZeros(numStr){\n if(numStr && numStr.indexOf(\".\") !== -1){//float\n numStr = numStr.replace(/0+$/, \"\"); //remove ending zeros\n if(numStr === \".\") numStr = \"0\";\n else if(numStr[0] === \".\") numStr = \"0\"+numStr;\n else if(numStr[numStr.length-1] === \".\") numStr = numStr.substring(0,numStr.length-1);\n return numStr;\n }\n return numStr;\n}\n\nfunction parse_int(numStr, base){\n //polyfill\n if(parseInt) return parseInt(numStr, base);\n else if(Number.parseInt) return Number.parseInt(numStr, base);\n else if(window && window.parseInt) return window.parseInt(numStr, base);\n else throw new Error(\"parseInt, Number.parseInt, window.parseInt are not supported\")\n}","export default function getIgnoreAttributesFn(ignoreAttributes) {\n if (typeof ignoreAttributes === 'function') {\n return ignoreAttributes\n }\n if (Array.isArray(ignoreAttributes)) {\n return (attrName) => {\n for (const pattern of ignoreAttributes) {\n if (typeof pattern === 'string' && attrName === pattern) {\n return true\n }\n if (pattern instanceof RegExp && pattern.test(attrName)) {\n return true\n }\n }\n }\n }\n return () => false\n}","'use strict';\n///@ts-check\n\nimport {getAllMatches, isExist} from '../util.js';\nimport xmlNode from './xmlNode.js';\nimport DocTypeReader from './DocTypeReader.js';\nimport toNumber from \"strnum\";\nimport getIgnoreAttributesFn from \"../ignoreAttributes.js\";\n\n// const regx =\n// '<((!\\\\[CDATA\\\\[([\\\\s\\\\S]*?)(]]>))|((NAME:)?(NAME))([^>]*)>|((\\\\/)(NAME)\\\\s*>))([^<]*)'\n// .replace(/NAME/g, util.nameRegexp);\n\n//const tagsRegx = new RegExp(\"<(\\\\/?[\\\\w:\\\\-\\._]+)([^>]*)>(\\\\s*\"+cdataRegx+\")*([^<]+)?\",\"g\");\n//const tagsRegx = new RegExp(\"<(\\\\/?)((\\\\w*:)?([\\\\w:\\\\-\\._]+))([^>]*)>([^<]*)(\"+cdataRegx+\"([^<]*))*([^<]+)?\",\"g\");\n\nexport default class OrderedObjParser{\n constructor(options){\n this.options = options;\n this.currentNode = null;\n this.tagsNodeStack = [];\n this.docTypeEntities = {};\n this.lastEntities = {\n \"apos\" : { regex: /&(apos|#39|#x27);/g, val : \"'\"},\n \"gt\" : { regex: /&(gt|#62|#x3E);/g, val : \">\"},\n \"lt\" : { regex: /&(lt|#60|#x3C);/g, val : \"<\"},\n \"quot\" : { regex: /&(quot|#34|#x22);/g, val : \"\\\"\"},\n };\n this.ampEntity = { regex: /&(amp|#38|#x26);/g, val : \"&\"};\n this.htmlEntities = {\n \"space\": { regex: /&(nbsp|#160);/g, val: \" \" },\n // \"lt\" : { regex: /&(lt|#60);/g, val: \"<\" },\n // \"gt\" : { regex: /&(gt|#62);/g, val: \">\" },\n // \"amp\" : { regex: /&(amp|#38);/g, val: \"&\" },\n // \"quot\" : { regex: /&(quot|#34);/g, val: \"\\\"\" },\n // \"apos\" : { regex: /&(apos|#39);/g, val: \"'\" },\n \"cent\" : { regex: /&(cent|#162);/g, val: \"¢\" },\n \"pound\" : { regex: /&(pound|#163);/g, val: \"£\" },\n \"yen\" : { regex: /&(yen|#165);/g, val: \"¥\" },\n \"euro\" : { regex: /&(euro|#8364);/g, val: \"€\" },\n \"copyright\" : { regex: /&(copy|#169);/g, val: \"©\" },\n \"reg\" : { regex: /&(reg|#174);/g, val: \"®\" },\n \"inr\" : { regex: /&(inr|#8377);/g, val: \"₹\" },\n \"num_dec\": { regex: /&#([0-9]{1,7});/g, val : (_, str) => String.fromCodePoint(Number.parseInt(str, 10)) },\n \"num_hex\": { regex: /&#x([0-9a-fA-F]{1,6});/g, val : (_, str) => String.fromCodePoint(Number.parseInt(str, 16)) },\n };\n this.addExternalEntities = addExternalEntities;\n this.parseXml = parseXml;\n this.parseTextData = parseTextData;\n this.resolveNameSpace = resolveNameSpace;\n this.buildAttributesMap = buildAttributesMap;\n this.isItStopNode = isItStopNode;\n this.replaceEntitiesValue = replaceEntitiesValue;\n this.readStopNodeData = readStopNodeData;\n this.saveTextToParentTag = saveTextToParentTag;\n this.addChild = addChild;\n this.ignoreAttributesFn = getIgnoreAttributesFn(this.options.ignoreAttributes)\n\n if(this.options.stopNodes && this.options.stopNodes.length > 0){\n this.stopNodesExact = new Set();\n this.stopNodesWildcard = new Set();\n for(let i = 0; i < this.options.stopNodes.length; i++){\n const stopNodeExp = this.options.stopNodes[i];\n if(typeof stopNodeExp !== 'string') continue;\n if(stopNodeExp.startsWith(\"*.\")){\n this.stopNodesWildcard.add(stopNodeExp.substring(2));\n }else{\n this.stopNodesExact.add(stopNodeExp);\n }\n }\n }\n }\n\n}\n\nfunction addExternalEntities(externalEntities){\n const entKeys = Object.keys(externalEntities);\n for (let i = 0; i < entKeys.length; i++) {\n const ent = entKeys[i];\n this.lastEntities[ent] = {\n regex: new RegExp(\"&\"+ent+\";\",\"g\"),\n val : externalEntities[ent]\n }\n }\n}\n\n/**\n * @param {string} val\n * @param {string} tagName\n * @param {string} jPath\n * @param {boolean} dontTrim\n * @param {boolean} hasAttributes\n * @param {boolean} isLeafNode\n * @param {boolean} escapeEntities\n */\nfunction parseTextData(val, tagName, jPath, dontTrim, hasAttributes, isLeafNode, escapeEntities) {\n if (val !== undefined) {\n if (this.options.trimValues && !dontTrim) {\n val = val.trim();\n }\n if(val.length > 0){\n if(!escapeEntities) val = this.replaceEntitiesValue(val);\n \n const newval = this.options.tagValueProcessor(tagName, val, jPath, hasAttributes, isLeafNode);\n if(newval === null || newval === undefined){\n //don't parse\n return val;\n }else if(typeof newval !== typeof val || newval !== val){\n //overwrite\n return newval;\n }else if(this.options.trimValues){\n return parseValue(val, this.options.parseTagValue, this.options.numberParseOptions);\n }else{\n const trimmedVal = val.trim();\n if(trimmedVal === val){\n return parseValue(val, this.options.parseTagValue, this.options.numberParseOptions);\n }else{\n return val;\n }\n }\n }\n }\n}\n\nfunction resolveNameSpace(tagname) {\n if (this.options.removeNSPrefix) {\n const tags = tagname.split(':');\n const prefix = tagname.charAt(0) === '/' ? '/' : '';\n if (tags[0] === 'xmlns') {\n return '';\n }\n if (tags.length === 2) {\n tagname = prefix + tags[1];\n }\n }\n return tagname;\n}\n\n//TODO: change regex to capture NS\n//const attrsRegx = new RegExp(\"([\\\\w\\\\-\\\\.\\\\:]+)\\\\s*=\\\\s*(['\\\"])((.|\\n)*?)\\\\2\",\"gm\");\nconst attrsRegx = new RegExp('([^\\\\s=]+)\\\\s*(=\\\\s*([\\'\"])([\\\\s\\\\S]*?)\\\\3)?', 'gm');\n\nfunction buildAttributesMap(attrStr, jPath) {\n if (this.options.ignoreAttributes !== true && typeof attrStr === 'string') {\n // attrStr = attrStr.replace(/\\r?\\n/g, ' ');\n //attrStr = attrStr || attrStr.trim();\n\n const matches = getAllMatches(attrStr, attrsRegx);\n const len = matches.length; //don't make it inline\n const attrs = {};\n for (let i = 0; i < len; i++) {\n const attrName = this.resolveNameSpace(matches[i][1]);\n if (this.ignoreAttributesFn(attrName, jPath)) {\n continue\n }\n let oldVal = matches[i][4];\n let aName = this.options.attributeNamePrefix + attrName;\n if (attrName.length) {\n if (this.options.transformAttributeName) {\n aName = this.options.transformAttributeName(aName);\n }\n if(aName === \"__proto__\") aName = \"#__proto__\";\n if (oldVal !== undefined) {\n if (this.options.trimValues) {\n oldVal = oldVal.trim();\n }\n oldVal = this.replaceEntitiesValue(oldVal);\n const newVal = this.options.attributeValueProcessor(attrName, oldVal, jPath);\n if(newVal === null || newVal === undefined){\n //don't parse\n attrs[aName] = oldVal;\n }else if(typeof newVal !== typeof oldVal || newVal !== oldVal){\n //overwrite\n attrs[aName] = newVal;\n }else{\n //parse\n attrs[aName] = parseValue(\n oldVal,\n this.options.parseAttributeValue,\n this.options.numberParseOptions\n );\n }\n } else if (this.options.allowBooleanAttributes) {\n attrs[aName] = true;\n }\n }\n }\n if (!Object.keys(attrs).length) {\n return;\n }\n if (this.options.attributesGroupName) {\n const attrCollection = {};\n attrCollection[this.options.attributesGroupName] = attrs;\n return attrCollection;\n }\n return attrs\n }\n}\n\nconst parseXml = function(xmlData) {\n xmlData = xmlData.replace(/\\r\\n?/g, \"\\n\"); //TODO: remove this line\n const xmlObj = new xmlNode('!xml');\n let currentNode = xmlObj;\n let textData = \"\";\n let jPath = \"\";\n const docTypeReader = new DocTypeReader(this.options.processEntities);\n for(let i=0; i< xmlData.length; i++){//for each char in XML data\n const ch = xmlData[i];\n if(ch === '<'){\n // const nextIndex = i+1;\n // const _2ndChar = xmlData[nextIndex];\n if( xmlData[i+1] === '/') {//Closing Tag\n const closeIndex = findClosingIndex(xmlData, \">\", i, \"Closing Tag is not closed.\")\n let tagName = xmlData.substring(i+2,closeIndex).trim();\n\n if(this.options.removeNSPrefix){\n const colonIndex = tagName.indexOf(\":\");\n if(colonIndex !== -1){\n tagName = tagName.substr(colonIndex+1);\n }\n }\n\n if(this.options.transformTagName) {\n tagName = this.options.transformTagName(tagName);\n }\n\n if(currentNode){\n textData = this.saveTextToParentTag(textData, currentNode, jPath);\n }\n\n //check if last tag of nested tag was unpaired tag\n const lastTagName = jPath.substring(jPath.lastIndexOf(\".\")+1);\n if(tagName && this.options.unpairedTags.indexOf(tagName) !== -1 ){\n throw new Error(`Unpaired tag can not be used as closing tag: </${tagName}>`);\n }\n let propIndex = 0\n if(lastTagName && this.options.unpairedTags.indexOf(lastTagName) !== -1 ){\n propIndex = jPath.lastIndexOf('.', jPath.lastIndexOf('.')-1)\n this.tagsNodeStack.pop();\n }else{\n propIndex = jPath.lastIndexOf(\".\");\n }\n jPath = jPath.substring(0, propIndex);\n\n currentNode = this.tagsNodeStack.pop();//avoid recursion, set the parent tag scope\n textData = \"\";\n i = closeIndex;\n } else if( xmlData[i+1] === '?') {\n\n let tagData = readTagExp(xmlData,i, false, \"?>\");\n if(!tagData) throw new Error(\"Pi Tag is not closed.\");\n\n textData = this.saveTextToParentTag(textData, currentNode, jPath);\n if( (this.options.ignoreDeclaration && tagData.tagName === \"?xml\") || this.options.ignorePiTags){\n //do nothing\n }else{\n \n const childNode = new xmlNode(tagData.tagName);\n childNode.add(this.options.textNodeName, \"\");\n \n if(tagData.tagName !== tagData.tagExp && tagData.attrExpPresent){\n childNode[\":@\"] = this.buildAttributesMap(tagData.tagExp, jPath);\n }\n this.addChild(currentNode, childNode, jPath, i);\n }\n\n\n i = tagData.closeIndex + 1;\n } else if(xmlData.substr(i + 1, 3) === '!--') {\n const endIndex = findClosingIndex(xmlData, \"-->\", i+4, \"Comment is not closed.\")\n if(this.options.commentPropName){\n const comment = xmlData.substring(i + 4, endIndex - 2);\n\n textData = this.saveTextToParentTag(textData, currentNode, jPath);\n\n currentNode.add(this.options.commentPropName, [ { [this.options.textNodeName] : comment } ]);\n }\n i = endIndex;\n } else if( xmlData.substr(i + 1, 2) === '!D') {\n const result = docTypeReader.readDocType(xmlData, i);\n this.docTypeEntities = result.entities;\n i = result.i;\n }else if(xmlData.substr(i + 1, 2) === '![') {\n const closeIndex = findClosingIndex(xmlData, \"]]>\", i, \"CDATA is not closed.\") - 2;\n const tagExp = xmlData.substring(i + 9,closeIndex);\n\n textData = this.saveTextToParentTag(textData, currentNode, jPath);\n\n let val = this.parseTextData(tagExp, currentNode.tagname, jPath, true, false, true, true);\n if(val == undefined) val = \"\";\n\n //cdata should be set even if it is 0 length string\n if(this.options.cdataPropName){\n currentNode.add(this.options.cdataPropName, [ { [this.options.textNodeName] : tagExp } ]);\n }else{\n currentNode.add(this.options.textNodeName, val);\n }\n \n i = closeIndex + 2;\n }else {//Opening tag\n let result = readTagExp(xmlData,i, this.options.removeNSPrefix);\n let tagName= result.tagName;\n const rawTagName = result.rawTagName;\n let tagExp = result.tagExp;\n let attrExpPresent = result.attrExpPresent;\n let closeIndex = result.closeIndex;\n\n if (this.options.transformTagName) {\n //console.log(tagExp, tagName)\n const newTagName = this.options.transformTagName(tagName);\n if(tagExp === tagName) {\n tagExp = newTagName\n }\n tagName = newTagName;\n }\n \n //save text as child node\n if (currentNode && textData) {\n if(currentNode.tagname !== '!xml'){\n //when nested tag is found\n textData = this.saveTextToParentTag(textData, currentNode, jPath, false);\n }\n }\n\n //check if last tag was unpaired tag\n const lastTag = currentNode;\n if(lastTag && this.options.unpairedTags.indexOf(lastTag.tagname) !== -1 ){\n currentNode = this.tagsNodeStack.pop();\n jPath = jPath.substring(0, jPath.lastIndexOf(\".\"));\n }\n if(tagName !== xmlObj.tagname){\n jPath += jPath ? \".\" + tagName : tagName;\n }\n const startIndex = i;\n if (this.isItStopNode(this.stopNodesExact, this.stopNodesWildcard, jPath, tagName)) {\n let tagContent = \"\";\n //self-closing tag\n if(tagExp.length > 0 && tagExp.lastIndexOf(\"/\") === tagExp.length - 1){\n if(tagName[tagName.length - 1] === \"/\"){ //remove trailing '/'\n tagName = tagName.substr(0, tagName.length - 1);\n jPath = jPath.substr(0, jPath.length - 1);\n tagExp = tagName;\n }else{\n tagExp = tagExp.substr(0, tagExp.length - 1);\n }\n i = result.closeIndex;\n }\n //unpaired tag\n else if(this.options.unpairedTags.indexOf(tagName) !== -1){\n \n i = result.closeIndex;\n }\n //normal tag\n else{\n //read until closing tag is found\n const result = this.readStopNodeData(xmlData, rawTagName, closeIndex + 1);\n if(!result) throw new Error(`Unexpected end of ${rawTagName}`);\n i = result.i;\n tagContent = result.tagContent;\n }\n\n const childNode = new xmlNode(tagName);\n\n if(tagName !== tagExp && attrExpPresent){\n childNode[\":@\"] = this.buildAttributesMap(tagExp, jPath\n );\n }\n if(tagContent) {\n tagContent = this.parseTextData(tagContent, tagName, jPath, true, attrExpPresent, true, true);\n }\n \n jPath = jPath.substr(0, jPath.lastIndexOf(\".\"));\n childNode.add(this.options.textNodeName, tagContent);\n \n this.addChild(currentNode, childNode, jPath, startIndex);\n }else{\n //selfClosing tag\n if(tagExp.length > 0 && tagExp.lastIndexOf(\"/\") === tagExp.length - 1){\n if(tagName[tagName.length - 1] === \"/\"){ //remove trailing '/'\n tagName = tagName.substr(0, tagName.length - 1);\n jPath = jPath.substr(0, jPath.length - 1);\n tagExp = tagName;\n }else{\n tagExp = tagExp.substr(0, tagExp.length - 1);\n }\n \n if(this.options.transformTagName) {\n const newTagName = this.options.transformTagName(tagName);\n if(tagExp === tagName) {\n tagExp = newTagName\n }\n tagName = newTagName;\n }\n\n const childNode = new xmlNode(tagName);\n if(tagName !== tagExp && attrExpPresent){\n childNode[\":@\"] = this.buildAttributesMap(tagExp, jPath);\n }\n this.addChild(currentNode, childNode, jPath, startIndex);\n jPath = jPath.substr(0, jPath.lastIndexOf(\".\"));\n }\n //opening tag\n else{\n const childNode = new xmlNode( tagName);\n this.tagsNodeStack.push(currentNode);\n \n if(tagName !== tagExp && attrExpPresent){\n childNode[\":@\"] = this.buildAttributesMap(tagExp, jPath);\n }\n this.addChild(currentNode, childNode, jPath, startIndex);\n currentNode = childNode;\n }\n textData = \"\";\n i = closeIndex;\n }\n }\n }else{\n textData += xmlData[i];\n }\n }\n return xmlObj.child;\n}\n\nfunction addChild(currentNode, childNode, jPath, startIndex){\n // unset startIndex if not requested\n if (!this.options.captureMetaData) startIndex = undefined;\n const result = this.options.updateTag(childNode.tagname, jPath, childNode[\":@\"])\n if(result === false){\n //do nothing\n } else if(typeof result === \"string\"){\n childNode.tagname = result\n currentNode.addChild(childNode, startIndex);\n }else{\n currentNode.addChild(childNode, startIndex);\n }\n}\n\nconst replaceEntitiesValue = function(val){\n\n if(this.options.processEntities){\n for(let entityName in this.docTypeEntities){\n const entity = this.docTypeEntities[entityName];\n val = val.replace( entity.regx, entity.val);\n }\n for(let entityName in this.lastEntities){\n const entity = this.lastEntities[entityName];\n val = val.replace( entity.regex, entity.val);\n }\n if(this.options.htmlEntities){\n for(let entityName in this.htmlEntities){\n const entity = this.htmlEntities[entityName];\n val = val.replace( entity.regex, entity.val);\n }\n }\n val = val.replace( this.ampEntity.regex, this.ampEntity.val);\n }\n return val;\n}\nfunction saveTextToParentTag(textData, currentNode, jPath, isLeafNode) {\n if (textData) { //store previously collected data as textNode\n if(isLeafNode === undefined) isLeafNode = currentNode.child.length === 0\n \n textData = this.parseTextData(textData,\n currentNode.tagname,\n jPath,\n false,\n currentNode[\":@\"] ? Object.keys(currentNode[\":@\"]).length !== 0 : false,\n isLeafNode);\n\n if (textData !== undefined && textData !== \"\")\n currentNode.add(this.options.textNodeName, textData);\n textData = \"\";\n }\n return textData;\n}\n\n//TODO: use jPath to simplify the logic\n/**\n * @param {Set} stopNodesExact\n * @param {Set} stopNodesWildcard\n * @param {string} jPath\n * @param {string} currentTagName\n */\nfunction isItStopNode(stopNodesExact, stopNodesWildcard, jPath, currentTagName){\n if(stopNodesWildcard && stopNodesWildcard.has(currentTagName)) return true;\n if(stopNodesExact && stopNodesExact.has(jPath)) return true;\n return false;\n}\n\n/**\n * Returns the tag Expression and where it is ending handling single-double quotes situation\n * @param {string} xmlData \n * @param {number} i starting index\n * @returns \n */\nfunction tagExpWithClosingIndex(xmlData, i, closingChar = \">\"){\n let attrBoundary;\n let tagExp = \"\";\n for (let index = i; index < xmlData.length; index++) {\n let ch = xmlData[index];\n if (attrBoundary) {\n if (ch === attrBoundary) attrBoundary = \"\";//reset\n } else if (ch === '\"' || ch === \"'\") {\n attrBoundary = ch;\n } else if (ch === closingChar[0]) {\n if(closingChar[1]){\n if(xmlData[index + 1] === closingChar[1]){\n return {\n data: tagExp,\n index: index\n }\n }\n }else{\n return {\n data: tagExp,\n index: index\n }\n }\n } else if (ch === '\\t') {\n ch = \" \"\n }\n tagExp += ch;\n }\n}\n\nfunction findClosingIndex(xmlData, str, i, errMsg){\n const closingIndex = xmlData.indexOf(str, i);\n if(closingIndex === -1){\n throw new Error(errMsg)\n }else{\n return closingIndex + str.length - 1;\n }\n}\n\nfunction readTagExp(xmlData,i, removeNSPrefix, closingChar = \">\"){\n const result = tagExpWithClosingIndex(xmlData, i+1, closingChar);\n if(!result) return;\n let tagExp = result.data;\n const closeIndex = result.index;\n const separatorIndex = tagExp.search(/\\s/);\n let tagName = tagExp;\n let attrExpPresent = true;\n if(separatorIndex !== -1){//separate tag name and attributes expression\n tagName = tagExp.substring(0, separatorIndex);\n tagExp = tagExp.substring(separatorIndex + 1).trimStart();\n }\n\n const rawTagName = tagName;\n if(removeNSPrefix){\n const colonIndex = tagName.indexOf(\":\");\n if(colonIndex !== -1){\n tagName = tagName.substr(colonIndex+1);\n attrExpPresent = tagName !== result.data.substr(colonIndex + 1);\n }\n }\n\n return {\n tagName: tagName,\n tagExp: tagExp,\n closeIndex: closeIndex,\n attrExpPresent: attrExpPresent,\n rawTagName: rawTagName,\n }\n}\n/**\n * find paired tag for a stop node\n * @param {string} xmlData \n * @param {string} tagName \n * @param {number} i \n */\nfunction readStopNodeData(xmlData, tagName, i){\n const startIndex = i;\n // Starting at 1 since we already have an open tag\n let openTagCount = 1;\n\n for (; i < xmlData.length; i++) {\n if( xmlData[i] === \"<\"){ \n if (xmlData[i+1] === \"/\") {//close tag\n const closeIndex = findClosingIndex(xmlData, \">\", i, `${tagName} is not closed`);\n let closeTagName = xmlData.substring(i+2,closeIndex).trim();\n if(closeTagName === tagName){\n openTagCount--;\n if (openTagCount === 0) {\n return {\n tagContent: xmlData.substring(startIndex, i),\n i : closeIndex\n }\n }\n }\n i=closeIndex;\n } else if(xmlData[i+1] === '?') { \n const closeIndex = findClosingIndex(xmlData, \"?>\", i+1, \"StopNode is not closed.\")\n i=closeIndex;\n } else if(xmlData.substr(i + 1, 3) === '!--') { \n const closeIndex = findClosingIndex(xmlData, \"-->\", i+3, \"StopNode is not closed.\")\n i=closeIndex;\n } else if(xmlData.substr(i + 1, 2) === '![') { \n const closeIndex = findClosingIndex(xmlData, \"]]>\", i, \"StopNode is not closed.\") - 2;\n i=closeIndex;\n } else {\n const tagData = readTagExp(xmlData, i, '>')\n\n if (tagData) {\n const openTagName = tagData && tagData.tagName;\n if (openTagName === tagName && tagData.tagExp[tagData.tagExp.length-1] !== \"/\") {\n openTagCount++;\n }\n i=tagData.closeIndex;\n }\n }\n }\n }//end for loop\n}\n\nfunction parseValue(val, shouldParse, options) {\n if (shouldParse && typeof val === 'string') {\n //console.log(options)\n const newval = val.trim();\n if(newval === 'true' ) return true;\n else if(newval === 'false' ) return false;\n else return toNumber(val, options);\n } else {\n if (isExist(val)) {\n return val;\n } else {\n return '';\n }\n }\n}\n","'use strict';\n\nimport XmlNode from './xmlNode.js';\n\nconst METADATA_SYMBOL = XmlNode.getMetaDataSymbol();\n\n/**\n * \n * @param {array} node \n * @param {any} options \n * @returns \n */\nexport default function prettify(node, options){\n return compress( node, options);\n}\n\n/**\n * \n * @param {array} arr \n * @param {object} options \n * @param {string} jPath \n * @returns object\n */\nfunction compress(arr, options, jPath){\n let text;\n const compressedObj = {};\n for (let i = 0; i < arr.length; i++) {\n const tagObj = arr[i];\n const property = propName(tagObj);\n let newJpath = \"\";\n if(jPath === undefined) newJpath = property;\n else newJpath = jPath + \".\" + property;\n\n if(property === options.textNodeName){\n if(text === undefined) text = tagObj[property];\n else text += \"\" + tagObj[property];\n }else if(property === undefined){\n continue;\n }else if(tagObj[property]){\n \n let val = compress(tagObj[property], options, newJpath);\n const isLeaf = isLeafTag(val, options);\n if (tagObj[METADATA_SYMBOL] !== undefined) {\n val[METADATA_SYMBOL] = tagObj[METADATA_SYMBOL]; // copy over metadata\n }\n\n if(tagObj[\":@\"]){\n assignAttributes( val, tagObj[\":@\"], newJpath, options);\n }else if(Object.keys(val).length === 1 && val[options.textNodeName] !== undefined && !options.alwaysCreateTextNode){\n val = val[options.textNodeName];\n }else if(Object.keys(val).length === 0){\n if(options.alwaysCreateTextNode) val[options.textNodeName] = \"\";\n else val = \"\";\n }\n\n if(compressedObj[property] !== undefined && compressedObj.hasOwnProperty(property)) {\n if(!Array.isArray(compressedObj[property])) {\n compressedObj[property] = [ compressedObj[property] ];\n }\n compressedObj[property].push(val);\n }else{\n //TODO: if a node is not an array, then check if it should be an array\n //also determine if it is a leaf node\n if (options.isArray(property, newJpath, isLeaf )) {\n compressedObj[property] = [val];\n }else{\n compressedObj[property] = val;\n }\n }\n }\n \n }\n // if(text && text.length > 0) compressedObj[options.textNodeName] = text;\n if(typeof text === \"string\"){\n if(text.length > 0) compressedObj[options.textNodeName] = text;\n }else if(text !== undefined) compressedObj[options.textNodeName] = text;\n return compressedObj;\n}\n\nfunction propName(obj){\n const keys = Object.keys(obj);\n for (let i = 0; i < keys.length; i++) {\n const key = keys[i];\n if(key !== \":@\") return key;\n }\n}\n\nfunction assignAttributes(obj, attrMap, jpath, options){\n if (attrMap) {\n const keys = Object.keys(attrMap);\n const len = keys.length; //don't make it inline\n for (let i = 0; i < len; i++) {\n const atrrName = keys[i];\n if (options.isArray(atrrName, jpath + \".\" + atrrName, true, true)) {\n obj[atrrName] = [ attrMap[atrrName] ];\n } else {\n obj[atrrName] = attrMap[atrrName];\n }\n }\n }\n}\n\nfunction isLeafTag(obj, options){\n const { textNodeName } = options;\n const propCount = Object.keys(obj).length;\n \n if (propCount === 0) {\n return true;\n }\n\n if (\n propCount === 1 &&\n (obj[textNodeName] || typeof obj[textNodeName] === \"boolean\" || obj[textNodeName] === 0)\n ) {\n return true;\n }\n\n return false;\n}\n","import { buildOptions} from './OptionsBuilder.js';\nimport OrderedObjParser from './OrderedObjParser.js';\nimport prettify from './node2json.js';\nimport {validate} from \"../validator.js\";\nimport XmlNode from './xmlNode.js';\n\nexport default class XMLParser{\n \n constructor(options){\n this.externalEntities = {};\n this.options = buildOptions(options);\n \n }\n /**\n * Parse XML dats to JS object \n * @param {string|Uint8Array} xmlData \n * @param {boolean|Object} validationOption \n */\n parse(xmlData,validationOption){\n if(typeof xmlData !== \"string\" && xmlData.toString){\n xmlData = xmlData.toString();\n }else if(typeof xmlData !== \"string\"){\n throw new Error(\"XML data is accepted in String or Bytes[] form.\")\n }\n \n if( validationOption){\n if(validationOption === true) validationOption = {}; //validate with default options\n \n const result = validate(xmlData, validationOption);\n if (result !== true) {\n throw Error( `${result.err.msg}:${result.err.line}:${result.err.col}` )\n }\n }\n const orderedObjParser = new OrderedObjParser(this.options);\n orderedObjParser.addExternalEntities(this.externalEntities);\n const orderedResult = orderedObjParser.parseXml(xmlData);\n if(this.options.preserveOrder || orderedResult === undefined) return orderedResult;\n else return prettify(orderedResult, this.options);\n }\n\n /**\n * Add Entity which is not by default supported by this library\n * @param {string} key \n * @param {string} value \n */\n addEntity(key, value){\n if(value.indexOf(\"&\") !== -1){\n throw new Error(\"Entity value can't have '&'\")\n }else if(key.indexOf(\"&\") !== -1 || key.indexOf(\";\") !== -1){\n throw new Error(\"An entity must be set without '&' and ';'. Eg. use '#xD' for '
'\")\n }else if(value === \"&\"){\n throw new Error(\"An entity with value '&' is not permitted\");\n }else{\n this.externalEntities[key] = value;\n }\n }\n\n /**\n * Returns a Symbol that can be used to access the metadata\n * property on a node.\n * \n * If Symbol is not available in the environment, an ordinary property is used\n * and the name of the property is here returned.\n * \n * The XMLMetaData property is only present when `captureMetaData`\n * is true in the options.\n */\n static getMetaDataSymbol() {\n return XmlNode.getMetaDataSymbol();\n }\n}\n","const EOL = \"\\n\";\n\n/**\n * \n * @param {array} jArray \n * @param {any} options \n * @returns \n */\nexport default function toXml(jArray, options) {\n let indentation = \"\";\n if (options.format && options.indentBy.length > 0) {\n indentation = EOL;\n }\n return arrToStr(jArray, options, \"\", indentation);\n}\n\nfunction arrToStr(arr, options, jPath, indentation) {\n let xmlStr = \"\";\n let isPreviousElementTag = false;\n\n for (let i = 0; i < arr.length; i++) {\n const tagObj = arr[i];\n const tagName = propName(tagObj);\n if(tagName === undefined) continue;\n\n let newJPath = \"\";\n if (jPath.length === 0) newJPath = tagName\n else newJPath = `${jPath}.${tagName}`;\n\n if (tagName === options.textNodeName) {\n let tagText = tagObj[tagName];\n if (!isStopNode(newJPath, options)) {\n tagText = options.tagValueProcessor(tagName, tagText);\n tagText = replaceEntitiesValue(tagText, options);\n }\n if (isPreviousElementTag) {\n xmlStr += indentation;\n }\n xmlStr += tagText;\n isPreviousElementTag = false;\n continue;\n } else if (tagName === options.cdataPropName) {\n if (isPreviousElementTag) {\n xmlStr += indentation;\n }\n xmlStr += `<![CDATA[${tagObj[tagName][0][options.textNodeName]}]]>`;\n isPreviousElementTag = false;\n continue;\n } else if (tagName === options.commentPropName) {\n xmlStr += indentation + `<!--${tagObj[tagName][0][options.textNodeName]}-->`;\n isPreviousElementTag = true;\n continue;\n } else if (tagName[0] === \"?\") {\n const attStr = attr_to_str(tagObj[\":@\"], options);\n const tempInd = tagName === \"?xml\" ? \"\" : indentation;\n let piTextNodeName = tagObj[tagName][0][options.textNodeName];\n piTextNodeName = piTextNodeName.length !== 0 ? \" \" + piTextNodeName : \"\"; //remove extra spacing\n xmlStr += tempInd + `<${tagName}${piTextNodeName}${attStr}?>`;\n isPreviousElementTag = true;\n continue;\n }\n let newIdentation = indentation;\n if (newIdentation !== \"\") {\n newIdentation += options.indentBy;\n }\n const attStr = attr_to_str(tagObj[\":@\"], options);\n const tagStart = indentation + `<${tagName}${attStr}`;\n const tagValue = arrToStr(tagObj[tagName], options, newJPath, newIdentation);\n if (options.unpairedTags.indexOf(tagName) !== -1) {\n if (options.suppressUnpairedNode) xmlStr += tagStart + \">\";\n else xmlStr += tagStart + \"/>\";\n } else if ((!tagValue || tagValue.length === 0) && options.suppressEmptyNode) {\n xmlStr += tagStart + \"/>\";\n } else if (tagValue && tagValue.endsWith(\">\")) {\n xmlStr += tagStart + `>${tagValue}${indentation}</${tagName}>`;\n } else {\n xmlStr += tagStart + \">\";\n if (tagValue && indentation !== \"\" && (tagValue.includes(\"/>\") || tagValue.includes(\"</\"))) {\n xmlStr += indentation + options.indentBy + tagValue + indentation;\n } else {\n xmlStr += tagValue;\n }\n xmlStr += `</${tagName}>`;\n }\n isPreviousElementTag = true;\n }\n\n return xmlStr;\n}\n\nfunction propName(obj) {\n const keys = Object.keys(obj);\n for (let i = 0; i < keys.length; i++) {\n const key = keys[i];\n if(!obj.hasOwnProperty(key)) continue;\n if (key !== \":@\") return key;\n }\n}\n\nfunction attr_to_str(attrMap, options) {\n let attrStr = \"\";\n if (attrMap && !options.ignoreAttributes) {\n for (let attr in attrMap) {\n if(!attrMap.hasOwnProperty(attr)) continue;\n let attrVal = options.attributeValueProcessor(attr, attrMap[attr]);\n attrVal = replaceEntitiesValue(attrVal, options);\n if (attrVal === true && options.suppressBooleanAttributes) {\n attrStr += ` ${attr.substr(options.attributeNamePrefix.length)}`;\n } else {\n attrStr += ` ${attr.substr(options.attributeNamePrefix.length)}=\"${attrVal}\"`;\n }\n }\n }\n return attrStr;\n}\n\nfunction isStopNode(jPath, options) {\n jPath = jPath.substr(0, jPath.length - options.textNodeName.length - 1);\n let tagName = jPath.substr(jPath.lastIndexOf(\".\") + 1);\n for (let index in options.stopNodes) {\n if (options.stopNodes[index] === jPath || options.stopNodes[index] === \"*.\" + tagName) return true;\n }\n return false;\n}\n\nfunction replaceEntitiesValue(textValue, options) {\n if (textValue && textValue.length > 0 && options.processEntities) {\n for (let i = 0; i < options.entities.length; i++) {\n const entity = options.entities[i];\n textValue = textValue.replace(entity.regex, entity.val);\n }\n }\n return textValue;\n}\n","'use strict';\n//parse Empty Node as self closing node\nimport buildFromOrderedJs from './orderedJs2Xml.js';\nimport getIgnoreAttributesFn from \"../ignoreAttributes.js\";\n\nconst defaultOptions = {\n attributeNamePrefix: '@_',\n attributesGroupName: false,\n textNodeName: '#text',\n ignoreAttributes: true,\n cdataPropName: false,\n format: false,\n indentBy: ' ',\n suppressEmptyNode: false,\n suppressUnpairedNode: true,\n suppressBooleanAttributes: true,\n tagValueProcessor: function(key, a) {\n return a;\n },\n attributeValueProcessor: function(attrName, a) {\n return a;\n },\n preserveOrder: false,\n commentPropName: false,\n unpairedTags: [],\n entities: [\n { regex: new RegExp(\"&\", \"g\"), val: \"&\" },//it must be on top\n { regex: new RegExp(\">\", \"g\"), val: \">\" },\n { regex: new RegExp(\"<\", \"g\"), val: \"<\" },\n { regex: new RegExp(\"\\'\", \"g\"), val: \"'\" },\n { regex: new RegExp(\"\\\"\", \"g\"), val: \""\" }\n ],\n processEntities: true,\n stopNodes: [],\n // transformTagName: false,\n // transformAttributeName: false,\n oneListGroup: false\n};\n\nexport default function Builder(options) {\n this.options = Object.assign({}, defaultOptions, options);\n if (this.options.ignoreAttributes === true || this.options.attributesGroupName) {\n this.isAttribute = function(/*a*/) {\n return false;\n };\n } else {\n this.ignoreAttributesFn = getIgnoreAttributesFn(this.options.ignoreAttributes)\n this.attrPrefixLen = this.options.attributeNamePrefix.length;\n this.isAttribute = isAttribute;\n }\n\n this.processTextOrObjNode = processTextOrObjNode\n\n if (this.options.format) {\n this.indentate = indentate;\n this.tagEndChar = '>\\n';\n this.newLine = '\\n';\n } else {\n this.indentate = function() {\n return '';\n };\n this.tagEndChar = '>';\n this.newLine = '';\n }\n}\n\nBuilder.prototype.build = function(jObj) {\n if(this.options.preserveOrder){\n return buildFromOrderedJs(jObj, this.options);\n }else {\n if(Array.isArray(jObj) && this.options.arrayNodeName && this.options.arrayNodeName.length > 1){\n jObj = {\n [this.options.arrayNodeName] : jObj\n }\n }\n return this.j2x(jObj, 0, []).val;\n }\n};\n\nBuilder.prototype.j2x = function(jObj, level, ajPath) {\n let attrStr = '';\n let val = '';\n const jPath = ajPath.join('.')\n for (let key in jObj) {\n if(!Object.prototype.hasOwnProperty.call(jObj, key)) continue;\n if (typeof jObj[key] === 'undefined') {\n // supress undefined node only if it is not an attribute\n if (this.isAttribute(key)) {\n val += '';\n }\n } else if (jObj[key] === null) {\n // null attribute should be ignored by the attribute list, but should not cause the tag closing\n if (this.isAttribute(key)) {\n val += '';\n } else if (key === this.options.cdataPropName) {\n val += '';\n } else if (key[0] === '?') {\n val += this.indentate(level) + '<' + key + '?' + this.tagEndChar;\n } else {\n val += this.indentate(level) + '<' + key + '/' + this.tagEndChar;\n }\n // val += this.indentate(level) + '<' + key + '/' + this.tagEndChar;\n } else if (jObj[key] instanceof Date) {\n val += this.buildTextValNode(jObj[key], key, '', level);\n } else if (typeof jObj[key] !== 'object') {\n //premitive type\n const attr = this.isAttribute(key);\n if (attr && !this.ignoreAttributesFn(attr, jPath)) {\n attrStr += this.buildAttrPairStr(attr, '' + jObj[key]);\n } else if (!attr) {\n //tag value\n if (key === this.options.textNodeName) {\n let newval = this.options.tagValueProcessor(key, '' + jObj[key]);\n val += this.replaceEntitiesValue(newval);\n } else {\n val += this.buildTextValNode(jObj[key], key, '', level);\n }\n }\n } else if (Array.isArray(jObj[key])) {\n //repeated nodes\n const arrLen = jObj[key].length;\n let listTagVal = \"\";\n let listTagAttr = \"\";\n for (let j = 0; j < arrLen; j++) {\n const item = jObj[key][j];\n if (typeof item === 'undefined') {\n // supress undefined node\n } else if (item === null) {\n if(key[0] === \"?\") val += this.indentate(level) + '<' + key + '?' + this.tagEndChar;\n else val += this.indentate(level) + '<' + key + '/' + this.tagEndChar;\n // val += this.indentate(level) + '<' + key + '/' + this.tagEndChar;\n } else if (typeof item === 'object') {\n if(this.options.oneListGroup){\n const result = this.j2x(item, level + 1, ajPath.concat(key));\n listTagVal += result.val;\n if (this.options.attributesGroupName && item.hasOwnProperty(this.options.attributesGroupName)) {\n listTagAttr += result.attrStr\n }\n }else{\n listTagVal += this.processTextOrObjNode(item, key, level, ajPath)\n }\n } else {\n if (this.options.oneListGroup) {\n let textValue = this.options.tagValueProcessor(key, item);\n textValue = this.replaceEntitiesValue(textValue);\n listTagVal += textValue;\n } else {\n listTagVal += this.buildTextValNode(item, key, '', level);\n }\n }\n }\n if(this.options.oneListGroup){\n listTagVal = this.buildObjectNode(listTagVal, key, listTagAttr, level);\n }\n val += listTagVal;\n } else {\n //nested node\n if (this.options.attributesGroupName && key === this.options.attributesGroupName) {\n const Ks = Object.keys(jObj[key]);\n const L = Ks.length;\n for (let j = 0; j < L; j++) {\n attrStr += this.buildAttrPairStr(Ks[j], '' + jObj[key][Ks[j]]);\n }\n } else {\n val += this.processTextOrObjNode(jObj[key], key, level, ajPath)\n }\n }\n }\n return {attrStr: attrStr, val: val};\n};\n\nBuilder.prototype.buildAttrPairStr = function(attrName, val){\n val = this.options.attributeValueProcessor(attrName, '' + val);\n val = this.replaceEntitiesValue(val);\n if (this.options.suppressBooleanAttributes && val === \"true\") {\n return ' ' + attrName;\n } else return ' ' + attrName + '=\"' + val + '\"';\n}\n\nfunction processTextOrObjNode (object, key, level, ajPath) {\n const result = this.j2x(object, level + 1, ajPath.concat(key));\n if (object[this.options.textNodeName] !== undefined && Object.keys(object).length === 1) {\n return this.buildTextValNode(object[this.options.textNodeName], key, result.attrStr, level);\n } else {\n return this.buildObjectNode(result.val, key, result.attrStr, level);\n }\n}\n\nBuilder.prototype.buildObjectNode = function(val, key, attrStr, level) {\n if(val === \"\"){\n if(key[0] === \"?\") return this.indentate(level) + '<' + key + attrStr+ '?' + this.tagEndChar;\n else {\n return this.indentate(level) + '<' + key + attrStr + this.closeTag(key) + this.tagEndChar;\n }\n }else{\n\n let tagEndExp = '</' + key + this.tagEndChar;\n let piClosingChar = \"\";\n \n if(key[0] === \"?\") {\n piClosingChar = \"?\";\n tagEndExp = \"\";\n }\n \n // attrStr is an empty string in case the attribute came as undefined or null\n if ((attrStr || attrStr === '') && val.indexOf('<') === -1) {\n return ( this.indentate(level) + '<' + key + attrStr + piClosingChar + '>' + val + tagEndExp );\n } else if (this.options.commentPropName !== false && key === this.options.commentPropName && piClosingChar.length === 0) {\n return this.indentate(level) + `<!--${val}-->` + this.newLine;\n }else {\n return (\n this.indentate(level) + '<' + key + attrStr + piClosingChar + this.tagEndChar +\n val +\n this.indentate(level) + tagEndExp );\n }\n }\n}\n\nBuilder.prototype.closeTag = function(key){\n let closeTag = \"\";\n if(this.options.unpairedTags.indexOf(key) !== -1){ //unpaired\n if(!this.options.suppressUnpairedNode) closeTag = \"/\"\n }else if(this.options.suppressEmptyNode){ //empty\n closeTag = \"/\";\n }else{\n closeTag = `></${key}`\n }\n return closeTag;\n}\n\nfunction buildEmptyObjNode(val, key, attrStr, level) {\n if (val !== '') {\n return this.buildObjectNode(val, key, attrStr, level);\n } else {\n if(key[0] === \"?\") return this.indentate(level) + '<' + key + attrStr+ '?' + this.tagEndChar;\n else {\n return this.indentate(level) + '<' + key + attrStr + '/' + this.tagEndChar;\n // return this.buildTagStr(level,key, attrStr);\n }\n }\n}\n\nBuilder.prototype.buildTextValNode = function(val, key, attrStr, level) {\n if (this.options.cdataPropName !== false && key === this.options.cdataPropName) {\n return this.indentate(level) + `<![CDATA[${val}]]>` + this.newLine;\n }else if (this.options.commentPropName !== false && key === this.options.commentPropName) {\n return this.indentate(level) + `<!--${val}-->` + this.newLine;\n }else if(key[0] === \"?\") {//PI tag\n return this.indentate(level) + '<' + key + attrStr+ '?' + this.tagEndChar; \n }else{\n let textValue = this.options.tagValueProcessor(key, val);\n textValue = this.replaceEntitiesValue(textValue);\n \n if( textValue === ''){\n return this.indentate(level) + '<' + key + attrStr + this.closeTag(key) + this.tagEndChar;\n }else{\n return this.indentate(level) + '<' + key + attrStr + '>' +\n textValue +\n '</' + key + this.tagEndChar;\n }\n }\n}\n\nBuilder.prototype.replaceEntitiesValue = function(textValue){\n if(textValue && textValue.length > 0 && this.options.processEntities){\n for (let i=0; i<this.options.entities.length; i++) {\n const entity = this.options.entities[i];\n textValue = textValue.replace(entity.regex, entity.val);\n }\n }\n return textValue;\n}\n\nfunction indentate(level) {\n return this.options.indentBy.repeat(level);\n}\n\nfunction isAttribute(name /*, options*/) {\n if (name.startsWith(this.options.attributeNamePrefix) && name !== this.options.textNodeName) {\n return name.substr(this.attrPrefixLen);\n } else {\n return false;\n }\n}\n\n","'use strict';\n\nimport {validate} from './validator.js';\nimport XMLParser from './xmlparser/XMLParser.js';\nimport XMLBuilder from './xmlbuilder/json2xml.js';\n\nconst XMLValidator = {\n validate: validate\n}\nexport {\n XMLParser,\n XMLValidator,\n XMLBuilder\n};"],"names":["root","factory","exports","module","define","amd","this","__webpack_require__","definition","key","o","Object","defineProperty","enumerable","get","obj","prop","prototype","hasOwnProperty","call","Symbol","toStringTag","value","nameStartChar","regexName","RegExp","getAllMatches","string","regex","matches","match","exec","allmatches","startIndex","lastIndex","length","len","index","push","isName","defaultOptions","allowBooleanAttributes","unpairedTags","validate","xmlData","options","assign","tags","tagFound","reachedRoot","substr","i","readPI","err","isWhiteSpace","getErrorObject","getLineNumberForPosition","tagStartPos","readCommentAndCDATA","closingTag","tagName","trim","substring","result","readAttributeStr","attrStr","attrStrStart","isValid","validateAttributeString","code","msg","line","tagClosed","otg","pop","openPos","col","indexOf","afterAmp","validateAmpersand","JSON","stringify","map","t","replace","char","start","tagname","angleBracketsCount","doubleQuote","singleQuote","startChar","validAttrStrRegxp","attrNames","getPositionFromMatch","undefined","attrName","validateAttrName","re","validateNumberAmpersand","count","message","lineNumber","lines","split","METADATA_SYMBOL","preserveOrder","attributeNamePrefix","attributesGroupName","textNodeName","ignoreAttributes","removeNSPrefix","parseTagValue","parseAttributeValue","trimValues","cdataPropName","numberParseOptions","hex","leadingZeros","eNotation","tagValueProcessor","val","attributeValueProcessor","stopNodes","alwaysCreateTextNode","isArray","commentPropName","processEntities","htmlEntities","ignoreDeclaration","ignorePiTags","transformTagName","transformAttributeName","updateTag","jPath","attrs","captureMetaData","XmlNode","child","_proto","add","_this$child$push","addChild","node","_this$child$push2","_this$child$push3","keys","getMetaDataSymbol","DocTypeReader","suppressValidationErr","readDocType","entities","Error","hasBody","comment","hasSeq","entityName","_this$readEntityExp","readEntityExp","regx","readElementExp","readNotationExp","skipWhitespace","test","validateEntityName","toUpperCase","_this$readIdentifierV","readIdentifierVal","notationName","identifierType","publicIdentifier","systemIdentifier","_this$readIdentifierV2","_this$readIdentifierV3","_this$readIdentifierV4","type","identifierVal","elementName","contentModel","readAttlistExp","attributeName","attributeType","allowedNotations","notation","join","includes","defaultValue","_this$readIdentifierV5","data","seq","j","name","hexRegex","numRegex","consider","decimalPoint","eNotationRegx","getIgnoreAttributesFn","Array","_step","_iterator","_createForOfIteratorHelperLoose","done","pattern","OrderedObjParser","currentNode","tagsNodeStack","docTypeEntities","lastEntities","ampEntity","_","str","String","fromCodePoint","Number","parseInt","addExternalEntities","parseXml","parseTextData","resolveNameSpace","buildAttributesMap","isItStopNode","replaceEntitiesValue","readStopNodeData","saveTextToParentTag","ignoreAttributesFn","stopNodesExact","Set","stopNodesWildcard","stopNodeExp","startsWith","externalEntities","entKeys","ent","dontTrim","hasAttributes","isLeafNode","escapeEntities","newval","parseValue","prefix","charAt","attrsRegx","oldVal","aName","newVal","attrCollection","xmlObj","xmlNode","textData","docTypeReader","closeIndex","findClosingIndex","colonIndex","lastTagName","lastIndexOf","propIndex","tagData","readTagExp","childNode","tagExp","attrExpPresent","endIndex","_ref","_ref2","rawTagName","newTagName","lastTag","tagContent","entity","currentTagName","has","errMsg","closingIndex","closingChar","attrBoundary","ch","tagExpWithClosingIndex","separatorIndex","search","trimStart","openTagCount","shouldParse","trimmedStr","skipLike","numStr","window","parse_int","sign","eChar","eAdjacentToLeadingZeros","resolveEnotation","numTrimmedByZeros","decimalAdjacentToLeadingZeros","num","parsedStr","n","toNumber","prettify","compress","arr","text","compressedObj","newJpath","tagObj","property","propName","isLeaf","isLeafTag","assignAttributes","attrMap","jpath","atrrName","propCount","XMLParser","buildOptions","parse","validationOption","toString","orderedObjParser","orderedResult","addEntity","toXml","jArray","indentation","format","indentBy","arrToStr","xmlStr","isPreviousElementTag","newJPath","newIdentation","tagStart","attr_to_str","tagValue","suppressUnpairedNode","suppressEmptyNode","endsWith","attStr","tempInd","piTextNodeName","tagText","isStopNode","attr","attrVal","suppressBooleanAttributes","textValue","a","oneListGroup","Builder","isAttribute","attrPrefixLen","processTextOrObjNode","indentate","tagEndChar","newLine","object","level","ajPath","j2x","concat","buildTextValNode","buildObjectNode","repeat","build","jObj","buildFromOrderedJs","arrayNodeName","_jObj","Date","buildAttrPairStr","arrLen","listTagVal","listTagAttr","item","Ks","L","closeTag","tagEndExp","piClosingChar","XMLValidator"],"sourceRoot":""}
|