@loaders.gl/shapefile 4.0.0-beta.1 → 4.0.0-beta.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (140) hide show
  1. package/dist/dbf-loader.d.ts.map +1 -0
  2. package/dist/{esm/dbf-loader.js → dbf-loader.js} +2 -2
  3. package/dist/dbf-loader.js.map +1 -0
  4. package/dist/dbf-worker.js +82 -26
  5. package/dist/{dist.min.js → dist.dev.js} +1449 -1973
  6. package/dist/index.cjs +1107 -0
  7. package/dist/index.d.ts.map +1 -0
  8. package/dist/index.js +7 -0
  9. package/dist/index.js.map +1 -0
  10. package/dist/lib/parsers/parse-dbf.d.ts.map +1 -0
  11. package/dist/{esm/lib → lib}/parsers/parse-dbf.js +8 -9
  12. package/dist/lib/parsers/parse-dbf.js.map +1 -0
  13. package/dist/lib/parsers/parse-shapefile.d.ts.map +1 -0
  14. package/dist/{esm/lib → lib}/parsers/parse-shapefile.js +5 -5
  15. package/dist/lib/parsers/parse-shapefile.js.map +1 -0
  16. package/dist/lib/parsers/parse-shp-geometry.d.ts.map +1 -0
  17. package/dist/{esm/lib → lib}/parsers/parse-shp-geometry.js +1 -1
  18. package/dist/lib/parsers/parse-shp-geometry.js.map +1 -0
  19. package/dist/lib/parsers/parse-shp-header.d.ts.map +1 -0
  20. package/dist/{esm/lib → lib}/parsers/parse-shp-header.js +2 -2
  21. package/dist/lib/parsers/parse-shp-header.js.map +1 -0
  22. package/dist/lib/parsers/parse-shp.d.ts.map +1 -0
  23. package/dist/{esm/lib → lib}/parsers/parse-shp.js +11 -12
  24. package/dist/lib/parsers/parse-shp.js.map +1 -0
  25. package/dist/lib/parsers/parse-shx.d.ts.map +1 -0
  26. package/dist/{esm/lib → lib}/parsers/parse-shx.js +1 -1
  27. package/dist/lib/parsers/parse-shx.js.map +1 -0
  28. package/dist/lib/parsers/types.d.ts.map +1 -0
  29. package/dist/lib/parsers/types.js.map +1 -0
  30. package/dist/lib/streaming/binary-chunk-reader.d.ts.map +1 -0
  31. package/dist/{esm/lib → lib}/streaming/binary-chunk-reader.js +4 -5
  32. package/dist/lib/streaming/binary-chunk-reader.js.map +1 -0
  33. package/dist/lib/streaming/binary-reader.d.ts.map +1 -0
  34. package/dist/{esm/lib → lib}/streaming/binary-reader.js +2 -3
  35. package/dist/lib/streaming/binary-reader.js.map +1 -0
  36. package/dist/lib/streaming/zip-batch-iterators.d.ts.map +1 -0
  37. package/dist/lib/streaming/zip-batch-iterators.js.map +1 -0
  38. package/dist/shapefile-loader.d.ts.map +1 -0
  39. package/dist/{esm/shapefile-loader.js → shapefile-loader.js} +3 -3
  40. package/dist/shapefile-loader.js.map +1 -0
  41. package/dist/shp-loader.d.ts.map +1 -0
  42. package/dist/{esm/shp-loader.js → shp-loader.js} +2 -2
  43. package/dist/shp-loader.js.map +1 -0
  44. package/dist/shp-worker.js +64 -3
  45. package/dist/{src/workers → workers}/dbf-worker.d.ts.map +1 -1
  46. package/dist/{esm/workers → workers}/dbf-worker.js +1 -1
  47. package/dist/workers/dbf-worker.js.map +1 -0
  48. package/dist/{src/workers → workers}/shp-worker.d.ts.map +1 -1
  49. package/dist/{esm/workers → workers}/shp-worker.js +1 -1
  50. package/dist/workers/shp-worker.js.map +1 -0
  51. package/package.json +18 -10
  52. package/dist/es5/bundle.js +0 -6
  53. package/dist/es5/bundle.js.map +0 -1
  54. package/dist/es5/dbf-loader.js +0 -55
  55. package/dist/es5/dbf-loader.js.map +0 -1
  56. package/dist/es5/index.js +0 -60
  57. package/dist/es5/index.js.map +0 -1
  58. package/dist/es5/lib/parsers/parse-dbf.js +0 -394
  59. package/dist/es5/lib/parsers/parse-dbf.js.map +0 -1
  60. package/dist/es5/lib/parsers/parse-shapefile.js +0 -377
  61. package/dist/es5/lib/parsers/parse-shapefile.js.map +0 -1
  62. package/dist/es5/lib/parsers/parse-shp-geometry.js +0 -220
  63. package/dist/es5/lib/parsers/parse-shp-geometry.js.map +0 -1
  64. package/dist/es5/lib/parsers/parse-shp-header.js +0 -35
  65. package/dist/es5/lib/parsers/parse-shp-header.js.map +0 -1
  66. package/dist/es5/lib/parsers/parse-shp.js +0 -227
  67. package/dist/es5/lib/parsers/parse-shp.js.map +0 -1
  68. package/dist/es5/lib/parsers/parse-shx.js +0 -26
  69. package/dist/es5/lib/parsers/parse-shx.js.map +0 -1
  70. package/dist/es5/lib/parsers/types.js +0 -2
  71. package/dist/es5/lib/parsers/types.js.map +0 -1
  72. package/dist/es5/lib/streaming/binary-chunk-reader.js +0 -178
  73. package/dist/es5/lib/streaming/binary-chunk-reader.js.map +0 -1
  74. package/dist/es5/lib/streaming/binary-reader.js +0 -48
  75. package/dist/es5/lib/streaming/binary-reader.js.map +0 -1
  76. package/dist/es5/lib/streaming/zip-batch-iterators.js +0 -95
  77. package/dist/es5/lib/streaming/zip-batch-iterators.js.map +0 -1
  78. package/dist/es5/shapefile-loader.js +0 -29
  79. package/dist/es5/shapefile-loader.js.map +0 -1
  80. package/dist/es5/shp-loader.js +0 -58
  81. package/dist/es5/shp-loader.js.map +0 -1
  82. package/dist/es5/workers/dbf-worker.js +0 -6
  83. package/dist/es5/workers/dbf-worker.js.map +0 -1
  84. package/dist/es5/workers/shp-worker.js +0 -6
  85. package/dist/es5/workers/shp-worker.js.map +0 -1
  86. package/dist/esm/bundle.js +0 -4
  87. package/dist/esm/bundle.js.map +0 -1
  88. package/dist/esm/dbf-loader.js.map +0 -1
  89. package/dist/esm/index.js +0 -7
  90. package/dist/esm/index.js.map +0 -1
  91. package/dist/esm/lib/parsers/parse-dbf.js.map +0 -1
  92. package/dist/esm/lib/parsers/parse-shapefile.js.map +0 -1
  93. package/dist/esm/lib/parsers/parse-shp-geometry.js.map +0 -1
  94. package/dist/esm/lib/parsers/parse-shp-header.js.map +0 -1
  95. package/dist/esm/lib/parsers/parse-shp.js.map +0 -1
  96. package/dist/esm/lib/parsers/parse-shx.js.map +0 -1
  97. package/dist/esm/lib/parsers/types.js.map +0 -1
  98. package/dist/esm/lib/streaming/binary-chunk-reader.js.map +0 -1
  99. package/dist/esm/lib/streaming/binary-reader.js.map +0 -1
  100. package/dist/esm/lib/streaming/zip-batch-iterators.js.map +0 -1
  101. package/dist/esm/shapefile-loader.js.map +0 -1
  102. package/dist/esm/shp-loader.js.map +0 -1
  103. package/dist/esm/workers/dbf-worker.js.map +0 -1
  104. package/dist/esm/workers/shp-worker.js.map +0 -1
  105. package/dist/src/bundle.d.ts +0 -2
  106. package/dist/src/bundle.d.ts.map +0 -1
  107. package/dist/src/dbf-loader.d.ts.map +0 -1
  108. package/dist/src/index.d.ts.map +0 -1
  109. package/dist/src/lib/parsers/parse-dbf.d.ts.map +0 -1
  110. package/dist/src/lib/parsers/parse-shapefile.d.ts.map +0 -1
  111. package/dist/src/lib/parsers/parse-shp-geometry.d.ts.map +0 -1
  112. package/dist/src/lib/parsers/parse-shp-header.d.ts.map +0 -1
  113. package/dist/src/lib/parsers/parse-shp.d.ts.map +0 -1
  114. package/dist/src/lib/parsers/parse-shx.d.ts.map +0 -1
  115. package/dist/src/lib/parsers/types.d.ts.map +0 -1
  116. package/dist/src/lib/streaming/binary-chunk-reader.d.ts.map +0 -1
  117. package/dist/src/lib/streaming/binary-reader.d.ts.map +0 -1
  118. package/dist/src/lib/streaming/zip-batch-iterators.d.ts.map +0 -1
  119. package/dist/src/shapefile-loader.d.ts.map +0 -1
  120. package/dist/src/shp-loader.d.ts.map +0 -1
  121. package/dist/tsconfig.tsbuildinfo +0 -1
  122. package/src/bundle.ts +0 -4
  123. /package/dist/{src/dbf-loader.d.ts → dbf-loader.d.ts} +0 -0
  124. /package/dist/{src/index.d.ts → index.d.ts} +0 -0
  125. /package/dist/{src/lib → lib}/parsers/parse-dbf.d.ts +0 -0
  126. /package/dist/{src/lib → lib}/parsers/parse-shapefile.d.ts +0 -0
  127. /package/dist/{src/lib → lib}/parsers/parse-shp-geometry.d.ts +0 -0
  128. /package/dist/{src/lib → lib}/parsers/parse-shp-header.d.ts +0 -0
  129. /package/dist/{src/lib → lib}/parsers/parse-shp.d.ts +0 -0
  130. /package/dist/{src/lib → lib}/parsers/parse-shx.d.ts +0 -0
  131. /package/dist/{src/lib → lib}/parsers/types.d.ts +0 -0
  132. /package/dist/{esm/lib → lib}/parsers/types.js +0 -0
  133. /package/dist/{src/lib → lib}/streaming/binary-chunk-reader.d.ts +0 -0
  134. /package/dist/{src/lib → lib}/streaming/binary-reader.d.ts +0 -0
  135. /package/dist/{src/lib → lib}/streaming/zip-batch-iterators.d.ts +0 -0
  136. /package/dist/{esm/lib → lib}/streaming/zip-batch-iterators.js +0 -0
  137. /package/dist/{src/shapefile-loader.d.ts → shapefile-loader.d.ts} +0 -0
  138. /package/dist/{src/shp-loader.d.ts → shp-loader.d.ts} +0 -0
  139. /package/dist/{src/workers → workers}/dbf-worker.d.ts +0 -0
  140. /package/dist/{src/workers → workers}/shp-worker.d.ts +0 -0
@@ -1,127 +1,192 @@
1
- (() => {
1
+ (function webpackUniversalModuleDefinition(root, factory) {
2
+ if (typeof exports === 'object' && typeof module === 'object')
3
+ module.exports = factory();
4
+ else if (typeof define === 'function' && define.amd) define([], factory);
5
+ else if (typeof exports === 'object') exports['loader'] = factory();
6
+ else root['loader'] = factory();})(globalThis, function () {
7
+ "use strict";
8
+ var __exports__ = (() => {
2
9
  var __defProp = Object.defineProperty;
3
- var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
4
- var __esm = (fn, res) => function __init() {
5
- return fn && (res = (0, fn[Object.keys(fn)[0]])(fn = 0)), res;
6
- };
7
- var __commonJS = (cb, mod) => function __require() {
8
- return mod || (0, cb[Object.keys(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
9
- };
10
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
11
+ var __getOwnPropNames = Object.getOwnPropertyNames;
12
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
10
13
  var __export = (target, all) => {
11
- __markAsModule(target);
12
14
  for (var name in all)
13
15
  __defProp(target, name, { get: all[name], enumerable: true });
14
16
  };
17
+ var __copyProps = (to, from, except, desc) => {
18
+ if (from && typeof from === "object" || typeof from === "function") {
19
+ for (let key of __getOwnPropNames(from))
20
+ if (!__hasOwnProp.call(to, key) && key !== except)
21
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
22
+ }
23
+ return to;
24
+ };
25
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
26
+
27
+ // src/index.ts
28
+ var src_exports = {};
29
+ __export(src_exports, {
30
+ DBFLoader: () => DBFLoader,
31
+ DBFWorkerLoader: () => DBFWorkerLoader,
32
+ SHPLoader: () => SHPLoader,
33
+ SHPWorkerLoader: () => SHPWorkerLoader,
34
+ ShapefileLoader: () => ShapefileLoader,
35
+ _BinaryChunkReader: () => BinaryChunkReader,
36
+ _BinaryReader: () => BinaryReader,
37
+ _zipBatchIterators: () => zipBatchIterators
38
+ });
15
39
 
16
40
  // src/lib/streaming/binary-chunk-reader.ts
17
- var BinaryChunkReader;
18
- var init_binary_chunk_reader = __esm({
19
- "src/lib/streaming/binary-chunk-reader.ts"() {
20
- BinaryChunkReader = class {
21
- constructor(options) {
22
- const { maxRewindBytes = 0 } = options || {};
23
- this.offset = 0;
24
- this.arrayBuffers = [];
25
- this.ended = false;
26
- this.maxRewindBytes = maxRewindBytes;
27
- }
28
- write(arrayBuffer) {
29
- this.arrayBuffers.push(arrayBuffer);
30
- }
31
- end() {
32
- this.arrayBuffers = [];
33
- this.ended = true;
34
- }
35
- hasAvailableBytes(bytes) {
36
- let bytesAvailable = -this.offset;
37
- for (const arrayBuffer of this.arrayBuffers) {
38
- bytesAvailable += arrayBuffer.byteLength;
39
- if (bytesAvailable >= bytes) {
40
- return true;
41
- }
42
- }
43
- return false;
41
+ var BinaryChunkReader = class {
42
+ constructor(options) {
43
+ const {
44
+ maxRewindBytes = 0
45
+ } = options || {};
46
+ this.offset = 0;
47
+ this.arrayBuffers = [];
48
+ this.ended = false;
49
+ this.maxRewindBytes = maxRewindBytes;
50
+ }
51
+ /**
52
+ * @param arrayBuffer
53
+ */
54
+ write(arrayBuffer) {
55
+ this.arrayBuffers.push(arrayBuffer);
56
+ }
57
+ end() {
58
+ this.arrayBuffers = [];
59
+ this.ended = true;
60
+ }
61
+ /**
62
+ * Has enough bytes available in array buffers
63
+ *
64
+ * @param bytes Number of bytes
65
+ * @return boolean
66
+ */
67
+ hasAvailableBytes(bytes) {
68
+ let bytesAvailable = -this.offset;
69
+ for (const arrayBuffer of this.arrayBuffers) {
70
+ bytesAvailable += arrayBuffer.byteLength;
71
+ if (bytesAvailable >= bytes) {
72
+ return true;
44
73
  }
45
- findBufferOffsets(bytes) {
46
- let offset = -this.offset;
47
- const selectedBuffers = [];
48
- for (let i = 0; i < this.arrayBuffers.length; i++) {
49
- const buf = this.arrayBuffers[i];
50
- if (offset + buf.byteLength <= 0) {
51
- offset += buf.byteLength;
52
- continue;
53
- }
54
- const start2 = offset <= 0 ? Math.abs(offset) : 0;
55
- let end;
56
- if (start2 + bytes <= buf.byteLength) {
57
- end = start2 + bytes;
58
- selectedBuffers.push([i, [start2, end]]);
59
- return selectedBuffers;
60
- }
61
- end = buf.byteLength;
62
- selectedBuffers.push([i, [start2, end]]);
63
- bytes -= buf.byteLength - start2;
64
- offset += buf.byteLength;
65
- }
66
- return null;
67
- }
68
- getDataView(bytes) {
69
- const bufferOffsets = this.findBufferOffsets(bytes);
70
- if (!bufferOffsets && this.ended) {
71
- throw new Error("binary data exhausted");
72
- }
73
- if (!bufferOffsets) {
74
- return null;
75
- }
76
- if (bufferOffsets.length === 1) {
77
- const [bufferIndex, [start2, end]] = bufferOffsets[0];
78
- const arrayBuffer = this.arrayBuffers[bufferIndex];
79
- const view2 = new DataView(arrayBuffer, start2, end - start2);
80
- this.offset += bytes;
81
- this.disposeBuffers();
82
- return view2;
83
- }
84
- const view = new DataView(this._combineArrayBuffers(bufferOffsets));
85
- this.offset += bytes;
86
- this.disposeBuffers();
87
- return view;
88
- }
89
- disposeBuffers() {
90
- while (this.arrayBuffers.length > 0 && this.offset - this.maxRewindBytes >= this.arrayBuffers[0].byteLength) {
91
- this.offset -= this.arrayBuffers[0].byteLength;
92
- this.arrayBuffers.shift();
93
- }
94
- }
95
- _combineArrayBuffers(bufferOffsets) {
96
- let byteLength = 0;
97
- for (const bufferOffset of bufferOffsets) {
98
- const [start2, end] = bufferOffset[1];
99
- byteLength += end - start2;
100
- }
101
- const result = new Uint8Array(byteLength);
102
- let resultOffset = 0;
103
- for (const bufferOffset of bufferOffsets) {
104
- const [bufferIndex, [start2, end]] = bufferOffset;
105
- const sourceArray = new Uint8Array(this.arrayBuffers[bufferIndex]);
106
- result.set(sourceArray.subarray(start2, end), resultOffset);
107
- resultOffset += end - start2;
108
- }
109
- return result.buffer;
110
- }
111
- skip(bytes) {
112
- this.offset += bytes;
74
+ }
75
+ return false;
76
+ }
77
+ /**
78
+ * Find offsets of byte ranges within this.arrayBuffers
79
+ *
80
+ * @param bytes Byte length to read
81
+ * @return Arrays with byte ranges pointing to this.arrayBuffers, Output type is nested array, e.g. [ [0, [1, 2]], ...]
82
+ */
83
+ findBufferOffsets(bytes) {
84
+ let offset = -this.offset;
85
+ const selectedBuffers = [];
86
+ for (let i = 0; i < this.arrayBuffers.length; i++) {
87
+ const buf = this.arrayBuffers[i];
88
+ if (offset + buf.byteLength <= 0) {
89
+ offset += buf.byteLength;
90
+ continue;
113
91
  }
114
- rewind(bytes) {
115
- this.offset -= bytes;
92
+ const start2 = offset <= 0 ? Math.abs(offset) : 0;
93
+ let end;
94
+ if (start2 + bytes <= buf.byteLength) {
95
+ end = start2 + bytes;
96
+ selectedBuffers.push([i, [start2, end]]);
97
+ return selectedBuffers;
116
98
  }
117
- };
99
+ end = buf.byteLength;
100
+ selectedBuffers.push([i, [start2, end]]);
101
+ bytes -= buf.byteLength - start2;
102
+ offset += buf.byteLength;
103
+ }
104
+ return null;
118
105
  }
119
- });
106
+ /**
107
+ * Get the required number of bytes from the iterator
108
+ *
109
+ * @param bytes Number of bytes
110
+ * @return DataView with data
111
+ */
112
+ getDataView(bytes) {
113
+ const bufferOffsets = this.findBufferOffsets(bytes);
114
+ if (!bufferOffsets && this.ended) {
115
+ throw new Error("binary data exhausted");
116
+ }
117
+ if (!bufferOffsets) {
118
+ return null;
119
+ }
120
+ if (bufferOffsets.length === 1) {
121
+ const [bufferIndex, [start2, end]] = bufferOffsets[0];
122
+ const arrayBuffer = this.arrayBuffers[bufferIndex];
123
+ const view2 = new DataView(arrayBuffer, start2, end - start2);
124
+ this.offset += bytes;
125
+ this.disposeBuffers();
126
+ return view2;
127
+ }
128
+ const view = new DataView(this._combineArrayBuffers(bufferOffsets));
129
+ this.offset += bytes;
130
+ this.disposeBuffers();
131
+ return view;
132
+ }
133
+ /**
134
+ * Dispose of old array buffers
135
+ */
136
+ disposeBuffers() {
137
+ while (this.arrayBuffers.length > 0 && this.offset - this.maxRewindBytes >= this.arrayBuffers[0].byteLength) {
138
+ this.offset -= this.arrayBuffers[0].byteLength;
139
+ this.arrayBuffers.shift();
140
+ }
141
+ }
142
+ /**
143
+ * Copy multiple ArrayBuffers into one contiguous ArrayBuffer
144
+ *
145
+ * In contrast to concatenateArrayBuffers, this only copies the necessary
146
+ * portions of the source arrays, rather than first copying the entire arrays
147
+ * then taking a part of them.
148
+ *
149
+ * @param bufferOffsets List of internal array offsets
150
+ * @return New contiguous ArrayBuffer
151
+ */
152
+ _combineArrayBuffers(bufferOffsets) {
153
+ let byteLength = 0;
154
+ for (const bufferOffset of bufferOffsets) {
155
+ const [start2, end] = bufferOffset[1];
156
+ byteLength += end - start2;
157
+ }
158
+ const result = new Uint8Array(byteLength);
159
+ let resultOffset = 0;
160
+ for (const bufferOffset of bufferOffsets) {
161
+ const [bufferIndex, [start2, end]] = bufferOffset;
162
+ const sourceArray = new Uint8Array(this.arrayBuffers[bufferIndex]);
163
+ result.set(sourceArray.subarray(start2, end), resultOffset);
164
+ resultOffset += end - start2;
165
+ }
166
+ return result.buffer;
167
+ }
168
+ /**
169
+ * @param bytes
170
+ */
171
+ skip(bytes) {
172
+ this.offset += bytes;
173
+ }
174
+ /**
175
+ * @param bytes
176
+ */
177
+ rewind(bytes) {
178
+ this.offset -= bytes;
179
+ }
180
+ };
120
181
 
121
182
  // src/lib/parsers/parse-shp-header.ts
183
+ var LITTLE_ENDIAN = true;
184
+ var BIG_ENDIAN = false;
185
+ var SHP_MAGIC_NUMBER = 9994;
122
186
  function parseSHPHeader(headerView) {
123
187
  const header = {
124
188
  magic: headerView.getInt32(0, BIG_ENDIAN),
189
+ // Length is stored as # of 2-byte words; multiply by 2 to get # of bytes
125
190
  length: headerView.getInt32(24, BIG_ENDIAN) * 2,
126
191
  version: headerView.getInt32(28, LITTLE_ENDIAN),
127
192
  type: headerView.getInt32(32, LITTLE_ENDIAN),
@@ -144,18 +209,13 @@
144
209
  }
145
210
  return header;
146
211
  }
147
- var LITTLE_ENDIAN, BIG_ENDIAN, SHP_MAGIC_NUMBER;
148
- var init_parse_shp_header = __esm({
149
- "src/lib/parsers/parse-shp-header.ts"() {
150
- LITTLE_ENDIAN = true;
151
- BIG_ENDIAN = false;
152
- SHP_MAGIC_NUMBER = 9994;
153
- }
154
- });
155
212
 
156
213
  // src/lib/parsers/parse-shp-geometry.ts
214
+ var LITTLE_ENDIAN2 = true;
157
215
  function parseRecord(view, options) {
158
- const { _maxDimensions = 4 } = options?.shp || {};
216
+ const {
217
+ _maxDimensions = 4
218
+ } = options?.shp || {};
159
219
  let offset = 0;
160
220
  const type = view.getInt32(offset, LITTLE_ENDIAN2);
161
221
  offset += Int32Array.BYTES_PER_ELEMENT;
@@ -197,7 +257,10 @@
197
257
  let positions;
198
258
  [positions, offset] = parsePositions(view, offset, 1, dim);
199
259
  return {
200
- positions: { value: positions, size: dim },
260
+ positions: {
261
+ value: positions,
262
+ size: dim
263
+ },
201
264
  type: "Point"
202
265
  };
203
266
  }
@@ -219,7 +282,10 @@
219
282
  }
220
283
  const positions = concatPositions(xyPositions, mPositions, zPositions);
221
284
  return {
222
- positions: { value: positions, size: dim },
285
+ positions: {
286
+ value: positions,
287
+ size: dim
288
+ },
223
289
  type: "Point"
224
290
  };
225
291
  }
@@ -251,8 +317,14 @@
251
317
  if (type === "LineString") {
252
318
  return {
253
319
  type,
254
- positions: { value: positions, size: dim },
255
- pathIndices: { value: ringIndices, size: 1 }
320
+ positions: {
321
+ value: positions,
322
+ size: dim
323
+ },
324
+ pathIndices: {
325
+ value: ringIndices,
326
+ size: 1
327
+ }
256
328
  };
257
329
  }
258
330
  const polygonIndices = [];
@@ -268,18 +340,28 @@
268
340
  polygonIndices.push(nPoints);
269
341
  return {
270
342
  type,
271
- positions: { value: positions, size: dim },
272
- primitivePolygonIndices: { value: ringIndices, size: 1 },
273
- polygonIndices: { value: new Uint32Array(polygonIndices), size: 1 }
343
+ positions: {
344
+ value: positions,
345
+ size: dim
346
+ },
347
+ primitivePolygonIndices: {
348
+ value: ringIndices,
349
+ size: 1
350
+ },
351
+ // TODO: Dynamically choose Uint32Array over Uint16Array only when
352
+ // necessary. I believe the implementation requires nPoints to be the
353
+ // largest value in the array, so you should be able to use Uint32Array only
354
+ // when nPoints > 65535.
355
+ polygonIndices: {
356
+ value: new Uint32Array(polygonIndices),
357
+ size: 1
358
+ }
274
359
  };
275
360
  }
276
361
  function parsePositions(view, offset, nPoints, dim) {
277
362
  const bufferOffset = view.byteOffset + offset;
278
363
  const bufferLength = nPoints * dim * Float64Array.BYTES_PER_ELEMENT;
279
- return [
280
- new Float64Array(view.buffer.slice(bufferOffset, bufferOffset + bufferLength)),
281
- offset + bufferLength
282
- ];
364
+ return [new Float64Array(view.buffer.slice(bufferOffset, bufferOffset + bufferLength)), offset + bufferLength];
283
365
  }
284
366
  function concatPositions(xyPositions, mPositions, zPositions) {
285
367
  if (!(mPositions || zPositions)) {
@@ -323,14 +405,51 @@
323
405
  }
324
406
  return area / 2;
325
407
  }
326
- var LITTLE_ENDIAN2;
327
- var init_parse_shp_geometry = __esm({
328
- "src/lib/parsers/parse-shp-geometry.ts"() {
329
- LITTLE_ENDIAN2 = true;
330
- }
331
- });
332
408
 
333
409
  // src/lib/parsers/parse-shp.ts
410
+ var LITTLE_ENDIAN3 = true;
411
+ var BIG_ENDIAN2 = false;
412
+ var SHP_HEADER_SIZE = 100;
413
+ var SHP_RECORD_HEADER_SIZE = 12;
414
+ var STATE = {
415
+ EXPECTING_HEADER: 0,
416
+ EXPECTING_RECORD: 1,
417
+ END: 2,
418
+ ERROR: 3
419
+ };
420
+ var SHPParser = class {
421
+ options = {};
422
+ binaryReader = new BinaryChunkReader({
423
+ maxRewindBytes: SHP_RECORD_HEADER_SIZE
424
+ });
425
+ state = STATE.EXPECTING_HEADER;
426
+ result = {
427
+ geometries: [],
428
+ // Initialize with number values to make TS happy
429
+ // These are initialized for real in STATE.EXPECTING_HEADER
430
+ progress: {
431
+ bytesTotal: NaN,
432
+ bytesUsed: NaN,
433
+ rows: NaN
434
+ },
435
+ currentIndex: NaN
436
+ };
437
+ constructor(options) {
438
+ this.options = options;
439
+ }
440
+ write(arrayBuffer) {
441
+ this.binaryReader.write(arrayBuffer);
442
+ this.state = parseState(this.state, this.result, this.binaryReader, this.options);
443
+ }
444
+ end() {
445
+ this.binaryReader.end();
446
+ this.state = parseState(this.state, this.result, this.binaryReader, this.options);
447
+ if (this.state !== STATE.END) {
448
+ this.state = STATE.ERROR;
449
+ this.result.error = "SHP incomplete file";
450
+ }
451
+ }
452
+ };
334
453
  function parseSHP(arrayBuffer, options) {
335
454
  const shpParser = new SHPParser(options);
336
455
  shpParser.write(arrayBuffer);
@@ -383,7 +502,9 @@
383
502
  const recordHeaderView = binaryReader.getDataView(SHP_RECORD_HEADER_SIZE);
384
503
  const recordHeader = {
385
504
  recordNumber: recordHeaderView.getInt32(0, BIG_ENDIAN2),
505
+ // 2 byte words; includes the four words of record header
386
506
  byteLength: recordHeaderView.getInt32(4, BIG_ENDIAN2) * 2,
507
+ // This is actually part of the record, not the header...
387
508
  type: recordHeaderView.getInt32(8, LITTLE_ENDIAN3)
388
509
  };
389
510
  if (!binaryReader.hasAvailableBytes(recordHeader.byteLength - 4)) {
@@ -418,85 +539,33 @@
418
539
  }
419
540
  }
420
541
  }
421
- var LITTLE_ENDIAN3, BIG_ENDIAN2, SHP_HEADER_SIZE, SHP_RECORD_HEADER_SIZE, STATE, SHPParser;
422
- var init_parse_shp = __esm({
423
- "src/lib/parsers/parse-shp.ts"() {
424
- init_binary_chunk_reader();
425
- init_parse_shp_header();
426
- init_parse_shp_geometry();
427
- LITTLE_ENDIAN3 = true;
428
- BIG_ENDIAN2 = false;
429
- SHP_HEADER_SIZE = 100;
430
- SHP_RECORD_HEADER_SIZE = 12;
431
- STATE = {
432
- EXPECTING_HEADER: 0,
433
- EXPECTING_RECORD: 1,
434
- END: 2,
435
- ERROR: 3
436
- };
437
- SHPParser = class {
438
- constructor(options) {
439
- this.options = {};
440
- this.binaryReader = new BinaryChunkReader({ maxRewindBytes: SHP_RECORD_HEADER_SIZE });
441
- this.state = STATE.EXPECTING_HEADER;
442
- this.result = {
443
- geometries: [],
444
- progress: {
445
- bytesTotal: NaN,
446
- bytesUsed: NaN,
447
- rows: NaN
448
- },
449
- currentIndex: NaN
450
- };
451
- this.options = options;
452
- }
453
- write(arrayBuffer) {
454
- this.binaryReader.write(arrayBuffer);
455
- this.state = parseState(this.state, this.result, this.binaryReader, this.options);
456
- }
457
- end() {
458
- this.binaryReader.end();
459
- this.state = parseState(this.state, this.result, this.binaryReader, this.options);
460
- if (this.state !== STATE.END) {
461
- this.state = STATE.ERROR;
462
- this.result.error = "SHP incomplete file";
463
- }
464
- }
465
- };
466
- }
467
- });
468
542
 
469
543
  // src/shp-loader.ts
470
- var VERSION, SHP_MAGIC_NUMBER2, SHPWorkerLoader, SHPLoader;
471
- var init_shp_loader = __esm({
472
- "src/shp-loader.ts"() {
473
- init_parse_shp();
474
- VERSION = typeof __VERSION__ !== "undefined" ? __VERSION__ : "latest";
475
- SHP_MAGIC_NUMBER2 = [0, 0, 39, 10];
476
- SHPWorkerLoader = {
477
- name: "SHP",
478
- id: "shp",
479
- module: "shapefile",
480
- version: VERSION,
481
- worker: true,
482
- category: "geometry",
483
- extensions: ["shp"],
484
- mimeTypes: ["application/octet-stream"],
485
- tests: [new Uint8Array(SHP_MAGIC_NUMBER2).buffer],
486
- options: {
487
- shp: {
488
- _maxDimensions: 4
489
- }
490
- }
491
- };
492
- SHPLoader = {
493
- ...SHPWorkerLoader,
494
- parse: async (arrayBuffer, options) => parseSHP(arrayBuffer, options),
495
- parseSync: parseSHP,
496
- parseInBatches: (arrayBufferIterator, options) => parseSHPInBatches(arrayBufferIterator, options)
497
- };
544
+ var VERSION = typeof __VERSION__ !== "undefined" ? __VERSION__ : "latest";
545
+ var SHP_MAGIC_NUMBER2 = [0, 0, 39, 10];
546
+ var SHPWorkerLoader = {
547
+ name: "SHP",
548
+ id: "shp",
549
+ module: "shapefile",
550
+ version: VERSION,
551
+ worker: true,
552
+ category: "geometry",
553
+ extensions: ["shp"],
554
+ mimeTypes: ["application/octet-stream"],
555
+ // ISSUE: This also identifies SHX files, which are identical to SHP for the first 100 bytes...
556
+ tests: [new Uint8Array(SHP_MAGIC_NUMBER2).buffer],
557
+ options: {
558
+ shp: {
559
+ _maxDimensions: 4
560
+ }
498
561
  }
499
- });
562
+ };
563
+ var SHPLoader = {
564
+ ...SHPWorkerLoader,
565
+ parse: async (arrayBuffer, options) => parseSHP(arrayBuffer, options),
566
+ parseSync: parseSHP,
567
+ parseInBatches: (arrayBufferIterator, options) => parseSHPInBatches(arrayBufferIterator, options)
568
+ };
500
569
 
501
570
  // ../loader-utils/src/loader-types.ts
502
571
  async function parseFromContext(data, loaders, options, context) {
@@ -508,24 +577,16 @@
508
577
  }
509
578
  return context._parseInBatches(data, loader, options, context);
510
579
  }
511
- var init_loader_types = __esm({
512
- "../loader-utils/src/loader-types.ts"() {
513
- }
514
- });
515
580
 
516
581
  // ../../node_modules/@babel/runtime/helpers/esm/typeof.js
517
582
  function _typeof(obj) {
518
583
  "@babel/helpers - typeof";
519
- return _typeof = typeof Symbol == "function" && typeof Symbol.iterator == "symbol" ? function(obj2) {
584
+ return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(obj2) {
520
585
  return typeof obj2;
521
586
  } : function(obj2) {
522
- return obj2 && typeof Symbol == "function" && obj2.constructor === Symbol && obj2 !== Symbol.prototype ? "symbol" : typeof obj2;
587
+ return obj2 && "function" == typeof Symbol && obj2.constructor === Symbol && obj2 !== Symbol.prototype ? "symbol" : typeof obj2;
523
588
  }, _typeof(obj);
524
589
  }
525
- var init_typeof = __esm({
526
- "../../node_modules/@babel/runtime/helpers/esm/typeof.js"() {
527
- }
528
- });
529
590
 
530
591
  // ../../node_modules/@babel/runtime/helpers/esm/toPrimitive.js
531
592
  function _toPrimitive(input, hint) {
@@ -540,23 +601,12 @@
540
601
  }
541
602
  return (hint === "string" ? String : Number)(input);
542
603
  }
543
- var init_toPrimitive = __esm({
544
- "../../node_modules/@babel/runtime/helpers/esm/toPrimitive.js"() {
545
- init_typeof();
546
- }
547
- });
548
604
 
549
605
  // ../../node_modules/@babel/runtime/helpers/esm/toPropertyKey.js
550
606
  function _toPropertyKey(arg) {
551
607
  var key = _toPrimitive(arg, "string");
552
608
  return _typeof(key) === "symbol" ? key : String(key);
553
609
  }
554
- var init_toPropertyKey = __esm({
555
- "../../node_modules/@babel/runtime/helpers/esm/toPropertyKey.js"() {
556
- init_typeof();
557
- init_toPrimitive();
558
- }
559
- });
560
610
 
561
611
  // ../../node_modules/@babel/runtime/helpers/esm/defineProperty.js
562
612
  function _defineProperty(obj, key, value) {
@@ -573,18 +623,6 @@
573
623
  }
574
624
  return obj;
575
625
  }
576
- var init_defineProperty = __esm({
577
- "../../node_modules/@babel/runtime/helpers/esm/defineProperty.js"() {
578
- init_toPropertyKey();
579
- }
580
- });
581
-
582
- // ../loader-utils/src/index.ts
583
- var init_src = __esm({
584
- "../loader-utils/src/index.ts"() {
585
- init_loader_types();
586
- }
587
- });
588
626
 
589
627
  // ../gis/src/lib/binary-to-geojson.ts
590
628
  function binaryToGeometry(data, startIndex, endIndex) {
@@ -601,7 +639,9 @@
601
639
  }
602
640
  }
603
641
  function polygonToGeoJson(data, startIndex = -Infinity, endIndex = Infinity) {
604
- const { positions } = data;
642
+ const {
643
+ positions
644
+ } = data;
605
645
  const polygonIndices = data.polygonIndices.value.filter((x) => x >= startIndex && x <= endIndex);
606
646
  const primitivePolygonIndices = data.primitivePolygonIndices.value.filter((x) => x >= startIndex && x <= endIndex);
607
647
  const multi = polygonIndices.length > 2;
@@ -613,7 +653,10 @@
613
653
  const ringCoordinates = ringToGeoJson(positions, startRingIndex, endRingIndex);
614
654
  coordinates2.push(ringCoordinates);
615
655
  }
616
- return { type: "Polygon", coordinates: coordinates2 };
656
+ return {
657
+ type: "Polygon",
658
+ coordinates: coordinates2
659
+ };
617
660
  }
618
661
  const coordinates = [];
619
662
  for (let i = 0; i < polygonIndices.length - 1; i++) {
@@ -622,31 +665,50 @@
622
665
  const polygonCoordinates = polygonToGeoJson(data, startPolygonIndex, endPolygonIndex).coordinates;
623
666
  coordinates.push(polygonCoordinates);
624
667
  }
625
- return { type: "MultiPolygon", coordinates };
668
+ return {
669
+ type: "MultiPolygon",
670
+ coordinates
671
+ };
626
672
  }
627
673
  function lineStringToGeoJson(data, startIndex = -Infinity, endIndex = Infinity) {
628
- const { positions } = data;
674
+ const {
675
+ positions
676
+ } = data;
629
677
  const pathIndices = data.pathIndices.value.filter((x) => x >= startIndex && x <= endIndex);
630
678
  const multi = pathIndices.length > 2;
631
679
  if (!multi) {
632
680
  const coordinates2 = ringToGeoJson(positions, pathIndices[0], pathIndices[1]);
633
- return { type: "LineString", coordinates: coordinates2 };
681
+ return {
682
+ type: "LineString",
683
+ coordinates: coordinates2
684
+ };
634
685
  }
635
686
  const coordinates = [];
636
687
  for (let i = 0; i < pathIndices.length - 1; i++) {
637
688
  const ringCoordinates = ringToGeoJson(positions, pathIndices[i], pathIndices[i + 1]);
638
689
  coordinates.push(ringCoordinates);
639
690
  }
640
- return { type: "MultiLineString", coordinates };
691
+ return {
692
+ type: "MultiLineString",
693
+ coordinates
694
+ };
641
695
  }
642
696
  function pointToGeoJson(data, startIndex, endIndex) {
643
- const { positions } = data;
697
+ const {
698
+ positions
699
+ } = data;
644
700
  const coordinates = ringToGeoJson(positions, startIndex, endIndex);
645
701
  const multi = coordinates.length > 1;
646
702
  if (multi) {
647
- return { type: "MultiPoint", coordinates };
703
+ return {
704
+ type: "MultiPoint",
705
+ coordinates
706
+ };
648
707
  }
649
- return { type: "Point", coordinates: coordinates[0] };
708
+ return {
709
+ type: "Point",
710
+ coordinates: coordinates[0]
711
+ };
650
712
  }
651
713
  function ringToGeoJson(positions, startIndex, endIndex) {
652
714
  startIndex = startIndex || 0;
@@ -661,10 +723,6 @@
661
723
  }
662
724
  return ringCoordinates;
663
725
  }
664
- var init_binary_to_geojson = __esm({
665
- "../gis/src/lib/binary-to-geojson.ts"() {
666
- }
667
- });
668
726
 
669
727
  // ../gis/src/lib/transform.ts
670
728
  function transformGeoJsonCoords(features, fn) {
@@ -684,18 +742,6 @@
684
742
  function isCoord(array) {
685
743
  return Array.isArray(array) && Number.isFinite(array[0]) && Number.isFinite(array[1]);
686
744
  }
687
- var init_transform = __esm({
688
- "../gis/src/lib/transform.ts"() {
689
- }
690
- });
691
-
692
- // ../gis/src/index.ts
693
- var init_src2 = __esm({
694
- "../gis/src/index.ts"() {
695
- init_binary_to_geojson();
696
- init_transform();
697
- }
698
- });
699
745
 
700
746
  // ../../node_modules/proj4/lib/global.js
701
747
  function global_default(defs2) {
@@ -708,66 +754,48 @@
708
754
  defs2["EPSG:900913"] = defs2["EPSG:3857"];
709
755
  defs2["EPSG:102113"] = defs2["EPSG:3857"];
710
756
  }
711
- var init_global = __esm({
712
- "../../node_modules/proj4/lib/global.js"() {
713
- }
714
- });
715
757
 
716
758
  // ../../node_modules/proj4/lib/constants/values.js
717
- var PJD_3PARAM, PJD_7PARAM, PJD_WGS84, PJD_NODATUM, SEC_TO_RAD, HALF_PI, SIXTH, RA4, RA6, EPSLN, D2R, R2D, FORTPI, TWO_PI, SPI;
718
- var init_values = __esm({
719
- "../../node_modules/proj4/lib/constants/values.js"() {
720
- PJD_3PARAM = 1;
721
- PJD_7PARAM = 2;
722
- PJD_WGS84 = 4;
723
- PJD_NODATUM = 5;
724
- SEC_TO_RAD = 484813681109536e-20;
725
- HALF_PI = Math.PI / 2;
726
- SIXTH = 0.16666666666666666;
727
- RA4 = 0.04722222222222222;
728
- RA6 = 0.022156084656084655;
729
- EPSLN = 1e-10;
730
- D2R = 0.017453292519943295;
731
- R2D = 57.29577951308232;
732
- FORTPI = Math.PI / 4;
733
- TWO_PI = Math.PI * 2;
734
- SPI = 3.14159265359;
735
- }
736
- });
759
+ var PJD_3PARAM = 1;
760
+ var PJD_7PARAM = 2;
761
+ var PJD_WGS84 = 4;
762
+ var PJD_NODATUM = 5;
763
+ var SEC_TO_RAD = 484813681109536e-20;
764
+ var HALF_PI = Math.PI / 2;
765
+ var SIXTH = 0.16666666666666666;
766
+ var RA4 = 0.04722222222222222;
767
+ var RA6 = 0.022156084656084655;
768
+ var EPSLN = 1e-10;
769
+ var D2R = 0.017453292519943295;
770
+ var R2D = 57.29577951308232;
771
+ var FORTPI = Math.PI / 4;
772
+ var TWO_PI = Math.PI * 2;
773
+ var SPI = 3.14159265359;
737
774
 
738
775
  // ../../node_modules/proj4/lib/constants/PrimeMeridian.js
739
- var exports;
740
- var init_PrimeMeridian = __esm({
741
- "../../node_modules/proj4/lib/constants/PrimeMeridian.js"() {
742
- exports = {};
743
- exports.greenwich = 0;
744
- exports.lisbon = -9.131906111111;
745
- exports.paris = 2.337229166667;
746
- exports.bogota = -74.080916666667;
747
- exports.madrid = -3.687938888889;
748
- exports.rome = 12.452333333333;
749
- exports.bern = 7.439583333333;
750
- exports.jakarta = 106.807719444444;
751
- exports.ferro = -17.666666666667;
752
- exports.brussels = 4.367975;
753
- exports.stockholm = 18.058277777778;
754
- exports.athens = 23.7163375;
755
- exports.oslo = 10.722916666667;
756
- }
757
- });
776
+ var exports = {};
777
+ exports.greenwich = 0;
778
+ exports.lisbon = -9.131906111111;
779
+ exports.paris = 2.337229166667;
780
+ exports.bogota = -74.080916666667;
781
+ exports.madrid = -3.687938888889;
782
+ exports.rome = 12.452333333333;
783
+ exports.bern = 7.439583333333;
784
+ exports.jakarta = 106.807719444444;
785
+ exports.ferro = -17.666666666667;
786
+ exports.brussels = 4.367975;
787
+ exports.stockholm = 18.058277777778;
788
+ exports.athens = 23.7163375;
789
+ exports.oslo = 10.722916666667;
758
790
 
759
791
  // ../../node_modules/proj4/lib/constants/units.js
760
- var units_default;
761
- var init_units = __esm({
762
- "../../node_modules/proj4/lib/constants/units.js"() {
763
- units_default = {
764
- ft: { to_meter: 0.3048 },
765
- "us-ft": { to_meter: 1200 / 3937 }
766
- };
767
- }
768
- });
792
+ var units_default = {
793
+ ft: { to_meter: 0.3048 },
794
+ "us-ft": { to_meter: 1200 / 3937 }
795
+ };
769
796
 
770
797
  // ../../node_modules/proj4/lib/match.js
798
+ var ignoredChar = /[\s_\-\/\(\)]/g;
771
799
  function match(obj, key) {
772
800
  if (obj[key]) {
773
801
  return obj[key];
@@ -784,12 +812,6 @@
784
812
  }
785
813
  }
786
814
  }
787
- var ignoredChar;
788
- var init_match = __esm({
789
- "../../node_modules/proj4/lib/match.js"() {
790
- ignoredChar = /[\s_\-\/\(\)]/g;
791
- }
792
- });
793
815
 
794
816
  // ../../node_modules/proj4/lib/projString.js
795
817
  function projString_default(defData) {
@@ -919,16 +941,20 @@
919
941
  }
920
942
  return self;
921
943
  }
922
- var init_projString = __esm({
923
- "../../node_modules/proj4/lib/projString.js"() {
924
- init_values();
925
- init_PrimeMeridian();
926
- init_units();
927
- init_match();
928
- }
929
- });
930
944
 
931
945
  // ../../node_modules/wkt-parser/parser.js
946
+ var parser_default = parseString;
947
+ var NEUTRAL = 1;
948
+ var KEYWORD = 2;
949
+ var NUMBER = 3;
950
+ var QUOTED = 4;
951
+ var AFTERQUOTE = 5;
952
+ var ENDED = -1;
953
+ var whitespace = /\s/;
954
+ var latin = /[A-Za-z]/;
955
+ var keyword = /[A-Za-z84_]/;
956
+ var endThings = /[,\]]/;
957
+ var digets = /[\d\.E\-\+]/;
932
958
  function Parser(text) {
933
959
  if (typeof text !== "string") {
934
960
  throw new Error("not a string");
@@ -941,164 +967,147 @@
941
967
  this.currentObject = null;
942
968
  this.state = NEUTRAL;
943
969
  }
944
- function parseString(txt) {
945
- var parser = new Parser(txt);
946
- return parser.output();
947
- }
948
- var parser_default, NEUTRAL, KEYWORD, NUMBER, QUOTED, AFTERQUOTE, ENDED, whitespace, latin, keyword, endThings, digets;
949
- var init_parser = __esm({
950
- "../../node_modules/wkt-parser/parser.js"() {
951
- parser_default = parseString;
952
- NEUTRAL = 1;
953
- KEYWORD = 2;
954
- NUMBER = 3;
955
- QUOTED = 4;
956
- AFTERQUOTE = 5;
957
- ENDED = -1;
958
- whitespace = /\s/;
959
- latin = /[A-Za-z]/;
960
- keyword = /[A-Za-z84_]/;
961
- endThings = /[,\]]/;
962
- digets = /[\d\.E\-\+]/;
963
- Parser.prototype.readCharicter = function() {
964
- var char = this.text[this.place++];
965
- if (this.state !== QUOTED) {
966
- while (whitespace.test(char)) {
967
- if (this.place >= this.text.length) {
968
- return;
969
- }
970
- char = this.text[this.place++];
971
- }
972
- }
973
- switch (this.state) {
974
- case NEUTRAL:
975
- return this.neutral(char);
976
- case KEYWORD:
977
- return this.keyword(char);
978
- case QUOTED:
979
- return this.quoted(char);
980
- case AFTERQUOTE:
981
- return this.afterquote(char);
982
- case NUMBER:
983
- return this.number(char);
984
- case ENDED:
985
- return;
986
- }
987
- };
988
- Parser.prototype.afterquote = function(char) {
989
- if (char === '"') {
990
- this.word += '"';
991
- this.state = QUOTED;
992
- return;
993
- }
994
- if (endThings.test(char)) {
995
- this.word = this.word.trim();
996
- this.afterItem(char);
997
- return;
998
- }
999
- throw new Error(`havn't handled "` + char + '" in afterquote yet, index ' + this.place);
1000
- };
1001
- Parser.prototype.afterItem = function(char) {
1002
- if (char === ",") {
1003
- if (this.word !== null) {
1004
- this.currentObject.push(this.word);
1005
- }
1006
- this.word = null;
1007
- this.state = NEUTRAL;
970
+ Parser.prototype.readCharicter = function() {
971
+ var char = this.text[this.place++];
972
+ if (this.state !== QUOTED) {
973
+ while (whitespace.test(char)) {
974
+ if (this.place >= this.text.length) {
1008
975
  return;
1009
976
  }
1010
- if (char === "]") {
1011
- this.level--;
1012
- if (this.word !== null) {
1013
- this.currentObject.push(this.word);
1014
- this.word = null;
1015
- }
1016
- this.state = NEUTRAL;
1017
- this.currentObject = this.stack.pop();
1018
- if (!this.currentObject) {
1019
- this.state = ENDED;
1020
- }
1021
- return;
1022
- }
1023
- };
1024
- Parser.prototype.number = function(char) {
1025
- if (digets.test(char)) {
1026
- this.word += char;
1027
- return;
1028
- }
1029
- if (endThings.test(char)) {
1030
- this.word = parseFloat(this.word);
1031
- this.afterItem(char);
1032
- return;
1033
- }
1034
- throw new Error(`havn't handled "` + char + '" in number yet, index ' + this.place);
1035
- };
1036
- Parser.prototype.quoted = function(char) {
1037
- if (char === '"') {
1038
- this.state = AFTERQUOTE;
1039
- return;
1040
- }
1041
- this.word += char;
977
+ char = this.text[this.place++];
978
+ }
979
+ }
980
+ switch (this.state) {
981
+ case NEUTRAL:
982
+ return this.neutral(char);
983
+ case KEYWORD:
984
+ return this.keyword(char);
985
+ case QUOTED:
986
+ return this.quoted(char);
987
+ case AFTERQUOTE:
988
+ return this.afterquote(char);
989
+ case NUMBER:
990
+ return this.number(char);
991
+ case ENDED:
1042
992
  return;
1043
- };
1044
- Parser.prototype.keyword = function(char) {
1045
- if (keyword.test(char)) {
1046
- this.word += char;
1047
- return;
1048
- }
1049
- if (char === "[") {
1050
- var newObjects = [];
1051
- newObjects.push(this.word);
1052
- this.level++;
1053
- if (this.root === null) {
1054
- this.root = newObjects;
1055
- } else {
1056
- this.currentObject.push(newObjects);
1057
- }
1058
- this.stack.push(this.currentObject);
1059
- this.currentObject = newObjects;
1060
- this.state = NEUTRAL;
1061
- return;
1062
- }
1063
- if (endThings.test(char)) {
1064
- this.afterItem(char);
1065
- return;
1066
- }
1067
- throw new Error(`havn't handled "` + char + '" in keyword yet, index ' + this.place);
1068
- };
1069
- Parser.prototype.neutral = function(char) {
1070
- if (latin.test(char)) {
1071
- this.word = char;
1072
- this.state = KEYWORD;
1073
- return;
1074
- }
1075
- if (char === '"') {
1076
- this.word = "";
1077
- this.state = QUOTED;
1078
- return;
1079
- }
1080
- if (digets.test(char)) {
1081
- this.word = char;
1082
- this.state = NUMBER;
1083
- return;
1084
- }
1085
- if (endThings.test(char)) {
1086
- this.afterItem(char);
1087
- return;
1088
- }
1089
- throw new Error(`havn't handled "` + char + '" in neutral yet, index ' + this.place);
1090
- };
1091
- Parser.prototype.output = function() {
1092
- while (this.place < this.text.length) {
1093
- this.readCharicter();
1094
- }
1095
- if (this.state === ENDED) {
1096
- return this.root;
1097
- }
1098
- throw new Error('unable to parse string "' + this.text + '". State is ' + this.state);
1099
- };
1100
993
  }
1101
- });
994
+ };
995
+ Parser.prototype.afterquote = function(char) {
996
+ if (char === '"') {
997
+ this.word += '"';
998
+ this.state = QUOTED;
999
+ return;
1000
+ }
1001
+ if (endThings.test(char)) {
1002
+ this.word = this.word.trim();
1003
+ this.afterItem(char);
1004
+ return;
1005
+ }
1006
+ throw new Error(`havn't handled "` + char + '" in afterquote yet, index ' + this.place);
1007
+ };
1008
+ Parser.prototype.afterItem = function(char) {
1009
+ if (char === ",") {
1010
+ if (this.word !== null) {
1011
+ this.currentObject.push(this.word);
1012
+ }
1013
+ this.word = null;
1014
+ this.state = NEUTRAL;
1015
+ return;
1016
+ }
1017
+ if (char === "]") {
1018
+ this.level--;
1019
+ if (this.word !== null) {
1020
+ this.currentObject.push(this.word);
1021
+ this.word = null;
1022
+ }
1023
+ this.state = NEUTRAL;
1024
+ this.currentObject = this.stack.pop();
1025
+ if (!this.currentObject) {
1026
+ this.state = ENDED;
1027
+ }
1028
+ return;
1029
+ }
1030
+ };
1031
+ Parser.prototype.number = function(char) {
1032
+ if (digets.test(char)) {
1033
+ this.word += char;
1034
+ return;
1035
+ }
1036
+ if (endThings.test(char)) {
1037
+ this.word = parseFloat(this.word);
1038
+ this.afterItem(char);
1039
+ return;
1040
+ }
1041
+ throw new Error(`havn't handled "` + char + '" in number yet, index ' + this.place);
1042
+ };
1043
+ Parser.prototype.quoted = function(char) {
1044
+ if (char === '"') {
1045
+ this.state = AFTERQUOTE;
1046
+ return;
1047
+ }
1048
+ this.word += char;
1049
+ return;
1050
+ };
1051
+ Parser.prototype.keyword = function(char) {
1052
+ if (keyword.test(char)) {
1053
+ this.word += char;
1054
+ return;
1055
+ }
1056
+ if (char === "[") {
1057
+ var newObjects = [];
1058
+ newObjects.push(this.word);
1059
+ this.level++;
1060
+ if (this.root === null) {
1061
+ this.root = newObjects;
1062
+ } else {
1063
+ this.currentObject.push(newObjects);
1064
+ }
1065
+ this.stack.push(this.currentObject);
1066
+ this.currentObject = newObjects;
1067
+ this.state = NEUTRAL;
1068
+ return;
1069
+ }
1070
+ if (endThings.test(char)) {
1071
+ this.afterItem(char);
1072
+ return;
1073
+ }
1074
+ throw new Error(`havn't handled "` + char + '" in keyword yet, index ' + this.place);
1075
+ };
1076
+ Parser.prototype.neutral = function(char) {
1077
+ if (latin.test(char)) {
1078
+ this.word = char;
1079
+ this.state = KEYWORD;
1080
+ return;
1081
+ }
1082
+ if (char === '"') {
1083
+ this.word = "";
1084
+ this.state = QUOTED;
1085
+ return;
1086
+ }
1087
+ if (digets.test(char)) {
1088
+ this.word = char;
1089
+ this.state = NUMBER;
1090
+ return;
1091
+ }
1092
+ if (endThings.test(char)) {
1093
+ this.afterItem(char);
1094
+ return;
1095
+ }
1096
+ throw new Error(`havn't handled "` + char + '" in neutral yet, index ' + this.place);
1097
+ };
1098
+ Parser.prototype.output = function() {
1099
+ while (this.place < this.text.length) {
1100
+ this.readCharicter();
1101
+ }
1102
+ if (this.state === ENDED) {
1103
+ return this.root;
1104
+ }
1105
+ throw new Error('unable to parse string "' + this.text + '". State is ' + this.state);
1106
+ };
1107
+ function parseString(txt) {
1108
+ var parser = new Parser(txt);
1109
+ return parser.output();
1110
+ }
1102
1111
 
1103
1112
  // ../../node_modules/wkt-parser/process.js
1104
1113
  function mapit(obj, key, value) {
@@ -1209,12 +1218,9 @@
1209
1218
  return mapit(obj, key, v);
1210
1219
  }
1211
1220
  }
1212
- var init_process = __esm({
1213
- "../../node_modules/wkt-parser/process.js"() {
1214
- }
1215
- });
1216
1221
 
1217
1222
  // ../../node_modules/wkt-parser/index.js
1223
+ var D2R2 = 0.017453292519943295;
1218
1224
  function rename(obj, params) {
1219
1225
  var outName = params[0];
1220
1226
  var inName = params[1];
@@ -1402,14 +1408,6 @@
1402
1408
  cleanWKT(obj);
1403
1409
  return obj;
1404
1410
  }
1405
- var D2R2;
1406
- var init_wkt_parser = __esm({
1407
- "../../node_modules/wkt-parser/index.js"() {
1408
- init_parser();
1409
- init_process();
1410
- D2R2 = 0.017453292519943295;
1411
- }
1412
- });
1413
1411
 
1414
1412
  // ../../node_modules/proj4/lib/defs.js
1415
1413
  function defs(name) {
@@ -1450,16 +1448,8 @@
1450
1448
  return;
1451
1449
  }
1452
1450
  }
1453
- var defs_default;
1454
- var init_defs = __esm({
1455
- "../../node_modules/proj4/lib/defs.js"() {
1456
- init_global();
1457
- init_projString();
1458
- init_wkt_parser();
1459
- global_default(defs);
1460
- defs_default = defs;
1461
- }
1462
- });
1451
+ global_default(defs);
1452
+ var defs_default = defs;
1463
1453
 
1464
1454
  // ../../node_modules/proj4/lib/parseCode.js
1465
1455
  function testObj(code) {
@@ -1468,11 +1458,13 @@
1468
1458
  function testDef(code) {
1469
1459
  return code in defs_default;
1470
1460
  }
1461
+ var codeWords = ["PROJECTEDCRS", "PROJCRS", "GEOGCS", "GEOCCS", "PROJCS", "LOCAL_CS", "GEODCRS", "GEODETICCRS", "GEODETICDATUM", "ENGCRS", "ENGINEERINGCRS"];
1471
1462
  function testWKT(code) {
1472
1463
  return codeWords.some(function(word) {
1473
1464
  return code.indexOf(word) > -1;
1474
1465
  });
1475
1466
  }
1467
+ var codes = ["3857", "900913", "3785", "102113"];
1476
1468
  function checkMercator(item) {
1477
1469
  var auth = match(item, "authority");
1478
1470
  if (!auth) {
@@ -1514,18 +1506,7 @@
1514
1506
  return code;
1515
1507
  }
1516
1508
  }
1517
- var codeWords, codes, parseCode_default;
1518
- var init_parseCode = __esm({
1519
- "../../node_modules/proj4/lib/parseCode.js"() {
1520
- init_defs();
1521
- init_wkt_parser();
1522
- init_projString();
1523
- init_match();
1524
- codeWords = ["PROJECTEDCRS", "PROJCRS", "GEOGCS", "GEOCCS", "PROJCS", "LOCAL_CS", "GEODCRS", "GEODETICCRS", "GEODETICDATUM", "ENGCRS", "ENGINEERINGCRS"];
1525
- codes = ["3857", "900913", "3785", "102113"];
1526
- parseCode_default = parse;
1527
- }
1528
- });
1509
+ var parseCode_default = parse;
1529
1510
 
1530
1511
  // ../../node_modules/proj4/lib/extend.js
1531
1512
  function extend_default(destination, source) {
@@ -1542,40 +1523,22 @@
1542
1523
  }
1543
1524
  return destination;
1544
1525
  }
1545
- var init_extend = __esm({
1546
- "../../node_modules/proj4/lib/extend.js"() {
1547
- }
1548
- });
1549
1526
 
1550
1527
  // ../../node_modules/proj4/lib/common/msfnz.js
1551
1528
  function msfnz_default(eccent, sinphi, cosphi) {
1552
1529
  var con = eccent * sinphi;
1553
1530
  return cosphi / Math.sqrt(1 - con * con);
1554
1531
  }
1555
- var init_msfnz = __esm({
1556
- "../../node_modules/proj4/lib/common/msfnz.js"() {
1557
- }
1558
- });
1559
1532
 
1560
1533
  // ../../node_modules/proj4/lib/common/sign.js
1561
1534
  function sign_default(x) {
1562
1535
  return x < 0 ? -1 : 1;
1563
1536
  }
1564
- var init_sign = __esm({
1565
- "../../node_modules/proj4/lib/common/sign.js"() {
1566
- }
1567
- });
1568
1537
 
1569
1538
  // ../../node_modules/proj4/lib/common/adjust_lon.js
1570
1539
  function adjust_lon_default(x) {
1571
1540
  return Math.abs(x) <= SPI ? x : x - sign_default(x) * TWO_PI;
1572
1541
  }
1573
- var init_adjust_lon = __esm({
1574
- "../../node_modules/proj4/lib/common/adjust_lon.js"() {
1575
- init_values();
1576
- init_sign();
1577
- }
1578
- });
1579
1542
 
1580
1543
  // ../../node_modules/proj4/lib/common/tsfnz.js
1581
1544
  function tsfnz_default(eccent, phi, sinphi) {
@@ -1584,11 +1547,6 @@
1584
1547
  con = Math.pow((1 - con) / (1 + con), com);
1585
1548
  return Math.tan(0.5 * (HALF_PI - phi)) / con;
1586
1549
  }
1587
- var init_tsfnz = __esm({
1588
- "../../node_modules/proj4/lib/common/tsfnz.js"() {
1589
- init_values();
1590
- }
1591
- });
1592
1550
 
1593
1551
  // ../../node_modules/proj4/lib/common/phi2z.js
1594
1552
  function phi2z_default(eccent, ts) {
@@ -1605,11 +1563,6 @@
1605
1563
  }
1606
1564
  return -9999;
1607
1565
  }
1608
- var init_phi2z = __esm({
1609
- "../../node_modules/proj4/lib/common/phi2z.js"() {
1610
- init_values();
1611
- }
1612
- });
1613
1566
 
1614
1567
  // ../../node_modules/proj4/lib/projections/merc.js
1615
1568
  function init() {
@@ -1680,23 +1633,13 @@
1680
1633
  p.y = lat;
1681
1634
  return p;
1682
1635
  }
1683
- var names, merc_default;
1684
- var init_merc = __esm({
1685
- "../../node_modules/proj4/lib/projections/merc.js"() {
1686
- init_msfnz();
1687
- init_adjust_lon();
1688
- init_tsfnz();
1689
- init_phi2z();
1690
- init_values();
1691
- names = ["Mercator", "Popular Visualisation Pseudo Mercator", "Mercator_1SP", "Mercator_Auxiliary_Sphere", "merc"];
1692
- merc_default = {
1693
- init,
1694
- forward,
1695
- inverse,
1696
- names
1697
- };
1698
- }
1699
- });
1636
+ var names = ["Mercator", "Popular Visualisation Pseudo Mercator", "Mercator_1SP", "Mercator_Auxiliary_Sphere", "merc"];
1637
+ var merc_default = {
1638
+ init,
1639
+ forward,
1640
+ inverse,
1641
+ names
1642
+ };
1700
1643
 
1701
1644
  // ../../node_modules/proj4/lib/projections/longlat.js
1702
1645
  function init2() {
@@ -1704,20 +1647,18 @@
1704
1647
  function identity(pt) {
1705
1648
  return pt;
1706
1649
  }
1707
- var names2, longlat_default;
1708
- var init_longlat = __esm({
1709
- "../../node_modules/proj4/lib/projections/longlat.js"() {
1710
- names2 = ["longlat", "identity"];
1711
- longlat_default = {
1712
- init: init2,
1713
- forward: identity,
1714
- inverse: identity,
1715
- names: names2
1716
- };
1717
- }
1718
- });
1650
+ var names2 = ["longlat", "identity"];
1651
+ var longlat_default = {
1652
+ init: init2,
1653
+ forward: identity,
1654
+ inverse: identity,
1655
+ names: names2
1656
+ };
1719
1657
 
1720
1658
  // ../../node_modules/proj4/lib/projections.js
1659
+ var projs = [merc_default, longlat_default];
1660
+ var names3 = {};
1661
+ var projStore = [];
1721
1662
  function add(proj, i) {
1722
1663
  var len = projStore.length;
1723
1664
  if (!proj.names) {
@@ -1742,244 +1683,229 @@
1742
1683
  function start() {
1743
1684
  projs.forEach(add);
1744
1685
  }
1745
- var projs, names3, projStore, projections_default;
1746
- var init_projections = __esm({
1747
- "../../node_modules/proj4/lib/projections.js"() {
1748
- init_merc();
1749
- init_longlat();
1750
- projs = [merc_default, longlat_default];
1751
- names3 = {};
1752
- projStore = [];
1753
- projections_default = {
1754
- start,
1755
- add,
1756
- get
1757
- };
1758
- }
1759
- });
1686
+ var projections_default = {
1687
+ start,
1688
+ add,
1689
+ get
1690
+ };
1760
1691
 
1761
1692
  // ../../node_modules/proj4/lib/constants/Ellipsoid.js
1762
- var exports2, WGS84;
1763
- var init_Ellipsoid = __esm({
1764
- "../../node_modules/proj4/lib/constants/Ellipsoid.js"() {
1765
- exports2 = {};
1766
- exports2.MERIT = {
1767
- a: 6378137,
1768
- rf: 298.257,
1769
- ellipseName: "MERIT 1983"
1770
- };
1771
- exports2.SGS85 = {
1772
- a: 6378136,
1773
- rf: 298.257,
1774
- ellipseName: "Soviet Geodetic System 85"
1775
- };
1776
- exports2.GRS80 = {
1777
- a: 6378137,
1778
- rf: 298.257222101,
1779
- ellipseName: "GRS 1980(IUGG, 1980)"
1780
- };
1781
- exports2.IAU76 = {
1782
- a: 6378140,
1783
- rf: 298.257,
1784
- ellipseName: "IAU 1976"
1785
- };
1786
- exports2.airy = {
1787
- a: 6377563396e-3,
1788
- b: 635625691e-2,
1789
- ellipseName: "Airy 1830"
1790
- };
1791
- exports2.APL4 = {
1792
- a: 6378137,
1793
- rf: 298.25,
1794
- ellipseName: "Appl. Physics. 1965"
1795
- };
1796
- exports2.NWL9D = {
1797
- a: 6378145,
1798
- rf: 298.25,
1799
- ellipseName: "Naval Weapons Lab., 1965"
1800
- };
1801
- exports2.mod_airy = {
1802
- a: 6377340189e-3,
1803
- b: 6356034446e-3,
1804
- ellipseName: "Modified Airy"
1805
- };
1806
- exports2.andrae = {
1807
- a: 637710443e-2,
1808
- rf: 300,
1809
- ellipseName: "Andrae 1876 (Den., Iclnd.)"
1810
- };
1811
- exports2.aust_SA = {
1812
- a: 6378160,
1813
- rf: 298.25,
1814
- ellipseName: "Australian Natl & S. Amer. 1969"
1815
- };
1816
- exports2.GRS67 = {
1817
- a: 6378160,
1818
- rf: 298.247167427,
1819
- ellipseName: "GRS 67(IUGG 1967)"
1820
- };
1821
- exports2.bessel = {
1822
- a: 6377397155e-3,
1823
- rf: 299.1528128,
1824
- ellipseName: "Bessel 1841"
1825
- };
1826
- exports2.bess_nam = {
1827
- a: 6377483865e-3,
1828
- rf: 299.1528128,
1829
- ellipseName: "Bessel 1841 (Namibia)"
1830
- };
1831
- exports2.clrk66 = {
1832
- a: 63782064e-1,
1833
- b: 63565838e-1,
1834
- ellipseName: "Clarke 1866"
1835
- };
1836
- exports2.clrk80 = {
1837
- a: 6378249145e-3,
1838
- rf: 293.4663,
1839
- ellipseName: "Clarke 1880 mod."
1840
- };
1841
- exports2.clrk58 = {
1842
- a: 6378293645208759e-9,
1843
- rf: 294.2606763692654,
1844
- ellipseName: "Clarke 1858"
1845
- };
1846
- exports2.CPM = {
1847
- a: 63757387e-1,
1848
- rf: 334.29,
1849
- ellipseName: "Comm. des Poids et Mesures 1799"
1850
- };
1851
- exports2.delmbr = {
1852
- a: 6376428,
1853
- rf: 311.5,
1854
- ellipseName: "Delambre 1810 (Belgium)"
1855
- };
1856
- exports2.engelis = {
1857
- a: 637813605e-2,
1858
- rf: 298.2566,
1859
- ellipseName: "Engelis 1985"
1860
- };
1861
- exports2.evrst30 = {
1862
- a: 6377276345e-3,
1863
- rf: 300.8017,
1864
- ellipseName: "Everest 1830"
1865
- };
1866
- exports2.evrst48 = {
1867
- a: 6377304063e-3,
1868
- rf: 300.8017,
1869
- ellipseName: "Everest 1948"
1870
- };
1871
- exports2.evrst56 = {
1872
- a: 6377301243e-3,
1873
- rf: 300.8017,
1874
- ellipseName: "Everest 1956"
1875
- };
1876
- exports2.evrst69 = {
1877
- a: 6377295664e-3,
1878
- rf: 300.8017,
1879
- ellipseName: "Everest 1969"
1880
- };
1881
- exports2.evrstSS = {
1882
- a: 6377298556e-3,
1883
- rf: 300.8017,
1884
- ellipseName: "Everest (Sabah & Sarawak)"
1885
- };
1886
- exports2.fschr60 = {
1887
- a: 6378166,
1888
- rf: 298.3,
1889
- ellipseName: "Fischer (Mercury Datum) 1960"
1890
- };
1891
- exports2.fschr60m = {
1892
- a: 6378155,
1893
- rf: 298.3,
1894
- ellipseName: "Fischer 1960"
1895
- };
1896
- exports2.fschr68 = {
1897
- a: 6378150,
1898
- rf: 298.3,
1899
- ellipseName: "Fischer 1968"
1900
- };
1901
- exports2.helmert = {
1902
- a: 6378200,
1903
- rf: 298.3,
1904
- ellipseName: "Helmert 1906"
1905
- };
1906
- exports2.hough = {
1907
- a: 6378270,
1908
- rf: 297,
1909
- ellipseName: "Hough"
1910
- };
1911
- exports2.intl = {
1912
- a: 6378388,
1913
- rf: 297,
1914
- ellipseName: "International 1909 (Hayford)"
1915
- };
1916
- exports2.kaula = {
1917
- a: 6378163,
1918
- rf: 298.24,
1919
- ellipseName: "Kaula 1961"
1920
- };
1921
- exports2.lerch = {
1922
- a: 6378139,
1923
- rf: 298.257,
1924
- ellipseName: "Lerch 1979"
1925
- };
1926
- exports2.mprts = {
1927
- a: 6397300,
1928
- rf: 191,
1929
- ellipseName: "Maupertius 1738"
1930
- };
1931
- exports2.new_intl = {
1932
- a: 63781575e-1,
1933
- b: 63567722e-1,
1934
- ellipseName: "New International 1967"
1935
- };
1936
- exports2.plessis = {
1937
- a: 6376523,
1938
- rf: 6355863,
1939
- ellipseName: "Plessis 1817 (France)"
1940
- };
1941
- exports2.krass = {
1942
- a: 6378245,
1943
- rf: 298.3,
1944
- ellipseName: "Krassovsky, 1942"
1945
- };
1946
- exports2.SEasia = {
1947
- a: 6378155,
1948
- b: 63567733205e-4,
1949
- ellipseName: "Southeast Asia"
1950
- };
1951
- exports2.walbeck = {
1952
- a: 6376896,
1953
- b: 63558348467e-4,
1954
- ellipseName: "Walbeck"
1955
- };
1956
- exports2.WGS60 = {
1957
- a: 6378165,
1958
- rf: 298.3,
1959
- ellipseName: "WGS 60"
1960
- };
1961
- exports2.WGS66 = {
1962
- a: 6378145,
1963
- rf: 298.25,
1964
- ellipseName: "WGS 66"
1965
- };
1966
- exports2.WGS7 = {
1967
- a: 6378135,
1968
- rf: 298.26,
1969
- ellipseName: "WGS 72"
1970
- };
1971
- WGS84 = exports2.WGS84 = {
1972
- a: 6378137,
1973
- rf: 298.257223563,
1974
- ellipseName: "WGS 84"
1975
- };
1976
- exports2.sphere = {
1977
- a: 6370997,
1978
- b: 6370997,
1979
- ellipseName: "Normal Sphere (r=6370997)"
1980
- };
1981
- }
1982
- });
1693
+ var exports2 = {};
1694
+ exports2.MERIT = {
1695
+ a: 6378137,
1696
+ rf: 298.257,
1697
+ ellipseName: "MERIT 1983"
1698
+ };
1699
+ exports2.SGS85 = {
1700
+ a: 6378136,
1701
+ rf: 298.257,
1702
+ ellipseName: "Soviet Geodetic System 85"
1703
+ };
1704
+ exports2.GRS80 = {
1705
+ a: 6378137,
1706
+ rf: 298.257222101,
1707
+ ellipseName: "GRS 1980(IUGG, 1980)"
1708
+ };
1709
+ exports2.IAU76 = {
1710
+ a: 6378140,
1711
+ rf: 298.257,
1712
+ ellipseName: "IAU 1976"
1713
+ };
1714
+ exports2.airy = {
1715
+ a: 6377563396e-3,
1716
+ b: 635625691e-2,
1717
+ ellipseName: "Airy 1830"
1718
+ };
1719
+ exports2.APL4 = {
1720
+ a: 6378137,
1721
+ rf: 298.25,
1722
+ ellipseName: "Appl. Physics. 1965"
1723
+ };
1724
+ exports2.NWL9D = {
1725
+ a: 6378145,
1726
+ rf: 298.25,
1727
+ ellipseName: "Naval Weapons Lab., 1965"
1728
+ };
1729
+ exports2.mod_airy = {
1730
+ a: 6377340189e-3,
1731
+ b: 6356034446e-3,
1732
+ ellipseName: "Modified Airy"
1733
+ };
1734
+ exports2.andrae = {
1735
+ a: 637710443e-2,
1736
+ rf: 300,
1737
+ ellipseName: "Andrae 1876 (Den., Iclnd.)"
1738
+ };
1739
+ exports2.aust_SA = {
1740
+ a: 6378160,
1741
+ rf: 298.25,
1742
+ ellipseName: "Australian Natl & S. Amer. 1969"
1743
+ };
1744
+ exports2.GRS67 = {
1745
+ a: 6378160,
1746
+ rf: 298.247167427,
1747
+ ellipseName: "GRS 67(IUGG 1967)"
1748
+ };
1749
+ exports2.bessel = {
1750
+ a: 6377397155e-3,
1751
+ rf: 299.1528128,
1752
+ ellipseName: "Bessel 1841"
1753
+ };
1754
+ exports2.bess_nam = {
1755
+ a: 6377483865e-3,
1756
+ rf: 299.1528128,
1757
+ ellipseName: "Bessel 1841 (Namibia)"
1758
+ };
1759
+ exports2.clrk66 = {
1760
+ a: 63782064e-1,
1761
+ b: 63565838e-1,
1762
+ ellipseName: "Clarke 1866"
1763
+ };
1764
+ exports2.clrk80 = {
1765
+ a: 6378249145e-3,
1766
+ rf: 293.4663,
1767
+ ellipseName: "Clarke 1880 mod."
1768
+ };
1769
+ exports2.clrk58 = {
1770
+ a: 6378293645208759e-9,
1771
+ rf: 294.2606763692654,
1772
+ ellipseName: "Clarke 1858"
1773
+ };
1774
+ exports2.CPM = {
1775
+ a: 63757387e-1,
1776
+ rf: 334.29,
1777
+ ellipseName: "Comm. des Poids et Mesures 1799"
1778
+ };
1779
+ exports2.delmbr = {
1780
+ a: 6376428,
1781
+ rf: 311.5,
1782
+ ellipseName: "Delambre 1810 (Belgium)"
1783
+ };
1784
+ exports2.engelis = {
1785
+ a: 637813605e-2,
1786
+ rf: 298.2566,
1787
+ ellipseName: "Engelis 1985"
1788
+ };
1789
+ exports2.evrst30 = {
1790
+ a: 6377276345e-3,
1791
+ rf: 300.8017,
1792
+ ellipseName: "Everest 1830"
1793
+ };
1794
+ exports2.evrst48 = {
1795
+ a: 6377304063e-3,
1796
+ rf: 300.8017,
1797
+ ellipseName: "Everest 1948"
1798
+ };
1799
+ exports2.evrst56 = {
1800
+ a: 6377301243e-3,
1801
+ rf: 300.8017,
1802
+ ellipseName: "Everest 1956"
1803
+ };
1804
+ exports2.evrst69 = {
1805
+ a: 6377295664e-3,
1806
+ rf: 300.8017,
1807
+ ellipseName: "Everest 1969"
1808
+ };
1809
+ exports2.evrstSS = {
1810
+ a: 6377298556e-3,
1811
+ rf: 300.8017,
1812
+ ellipseName: "Everest (Sabah & Sarawak)"
1813
+ };
1814
+ exports2.fschr60 = {
1815
+ a: 6378166,
1816
+ rf: 298.3,
1817
+ ellipseName: "Fischer (Mercury Datum) 1960"
1818
+ };
1819
+ exports2.fschr60m = {
1820
+ a: 6378155,
1821
+ rf: 298.3,
1822
+ ellipseName: "Fischer 1960"
1823
+ };
1824
+ exports2.fschr68 = {
1825
+ a: 6378150,
1826
+ rf: 298.3,
1827
+ ellipseName: "Fischer 1968"
1828
+ };
1829
+ exports2.helmert = {
1830
+ a: 6378200,
1831
+ rf: 298.3,
1832
+ ellipseName: "Helmert 1906"
1833
+ };
1834
+ exports2.hough = {
1835
+ a: 6378270,
1836
+ rf: 297,
1837
+ ellipseName: "Hough"
1838
+ };
1839
+ exports2.intl = {
1840
+ a: 6378388,
1841
+ rf: 297,
1842
+ ellipseName: "International 1909 (Hayford)"
1843
+ };
1844
+ exports2.kaula = {
1845
+ a: 6378163,
1846
+ rf: 298.24,
1847
+ ellipseName: "Kaula 1961"
1848
+ };
1849
+ exports2.lerch = {
1850
+ a: 6378139,
1851
+ rf: 298.257,
1852
+ ellipseName: "Lerch 1979"
1853
+ };
1854
+ exports2.mprts = {
1855
+ a: 6397300,
1856
+ rf: 191,
1857
+ ellipseName: "Maupertius 1738"
1858
+ };
1859
+ exports2.new_intl = {
1860
+ a: 63781575e-1,
1861
+ b: 63567722e-1,
1862
+ ellipseName: "New International 1967"
1863
+ };
1864
+ exports2.plessis = {
1865
+ a: 6376523,
1866
+ rf: 6355863,
1867
+ ellipseName: "Plessis 1817 (France)"
1868
+ };
1869
+ exports2.krass = {
1870
+ a: 6378245,
1871
+ rf: 298.3,
1872
+ ellipseName: "Krassovsky, 1942"
1873
+ };
1874
+ exports2.SEasia = {
1875
+ a: 6378155,
1876
+ b: 63567733205e-4,
1877
+ ellipseName: "Southeast Asia"
1878
+ };
1879
+ exports2.walbeck = {
1880
+ a: 6376896,
1881
+ b: 63558348467e-4,
1882
+ ellipseName: "Walbeck"
1883
+ };
1884
+ exports2.WGS60 = {
1885
+ a: 6378165,
1886
+ rf: 298.3,
1887
+ ellipseName: "WGS 60"
1888
+ };
1889
+ exports2.WGS66 = {
1890
+ a: 6378145,
1891
+ rf: 298.25,
1892
+ ellipseName: "WGS 66"
1893
+ };
1894
+ exports2.WGS7 = {
1895
+ a: 6378135,
1896
+ rf: 298.26,
1897
+ ellipseName: "WGS 72"
1898
+ };
1899
+ var WGS84 = exports2.WGS84 = {
1900
+ a: 6378137,
1901
+ rf: 298.257223563,
1902
+ ellipseName: "WGS 84"
1903
+ };
1904
+ exports2.sphere = {
1905
+ a: 6370997,
1906
+ b: 6370997,
1907
+ ellipseName: "Normal Sphere (r=6370997)"
1908
+ };
1983
1909
 
1984
1910
  // ../../node_modules/proj4/lib/deriveConstants.js
1985
1911
  function eccentricity(a, b, rf, R_A) {
@@ -2025,106 +1951,94 @@
2025
1951
  sphere: sphere2
2026
1952
  };
2027
1953
  }
2028
- var init_deriveConstants = __esm({
2029
- "../../node_modules/proj4/lib/deriveConstants.js"() {
2030
- init_values();
2031
- init_Ellipsoid();
2032
- init_match();
2033
- }
2034
- });
2035
1954
 
2036
1955
  // ../../node_modules/proj4/lib/constants/Datum.js
2037
- var exports3;
2038
- var init_Datum = __esm({
2039
- "../../node_modules/proj4/lib/constants/Datum.js"() {
2040
- exports3 = {};
2041
- exports3.wgs84 = {
2042
- towgs84: "0,0,0",
2043
- ellipse: "WGS84",
2044
- datumName: "WGS84"
2045
- };
2046
- exports3.ch1903 = {
2047
- towgs84: "674.374,15.056,405.346",
2048
- ellipse: "bessel",
2049
- datumName: "swiss"
2050
- };
2051
- exports3.ggrs87 = {
2052
- towgs84: "-199.87,74.79,246.62",
2053
- ellipse: "GRS80",
2054
- datumName: "Greek_Geodetic_Reference_System_1987"
2055
- };
2056
- exports3.nad83 = {
2057
- towgs84: "0,0,0",
2058
- ellipse: "GRS80",
2059
- datumName: "North_American_Datum_1983"
2060
- };
2061
- exports3.nad27 = {
2062
- nadgrids: "@conus,@alaska,@ntv2_0.gsb,@ntv1_can.dat",
2063
- ellipse: "clrk66",
2064
- datumName: "North_American_Datum_1927"
2065
- };
2066
- exports3.potsdam = {
2067
- towgs84: "606.0,23.0,413.0",
2068
- ellipse: "bessel",
2069
- datumName: "Potsdam Rauenberg 1950 DHDN"
2070
- };
2071
- exports3.carthage = {
2072
- towgs84: "-263.0,6.0,431.0",
2073
- ellipse: "clark80",
2074
- datumName: "Carthage 1934 Tunisia"
2075
- };
2076
- exports3.hermannskogel = {
2077
- towgs84: "653.0,-212.0,449.0",
2078
- ellipse: "bessel",
2079
- datumName: "Hermannskogel"
2080
- };
2081
- exports3.osni52 = {
2082
- towgs84: "482.530,-130.596,564.557,-1.042,-0.214,-0.631,8.15",
2083
- ellipse: "airy",
2084
- datumName: "Irish National"
2085
- };
2086
- exports3.ire65 = {
2087
- towgs84: "482.530,-130.596,564.557,-1.042,-0.214,-0.631,8.15",
2088
- ellipse: "mod_airy",
2089
- datumName: "Ireland 1965"
2090
- };
2091
- exports3.rassadiran = {
2092
- towgs84: "-133.63,-157.5,-158.62",
2093
- ellipse: "intl",
2094
- datumName: "Rassadiran"
2095
- };
2096
- exports3.nzgd49 = {
2097
- towgs84: "59.47,-5.04,187.44,0.47,-0.1,1.024,-4.5993",
2098
- ellipse: "intl",
2099
- datumName: "New Zealand Geodetic Datum 1949"
2100
- };
2101
- exports3.osgb36 = {
2102
- towgs84: "446.448,-125.157,542.060,0.1502,0.2470,0.8421,-20.4894",
2103
- ellipse: "airy",
2104
- datumName: "Airy 1830"
2105
- };
2106
- exports3.s_jtsk = {
2107
- towgs84: "589,76,480",
2108
- ellipse: "bessel",
2109
- datumName: "S-JTSK (Ferro)"
2110
- };
2111
- exports3.beduaram = {
2112
- towgs84: "-106,-87,188",
2113
- ellipse: "clrk80",
2114
- datumName: "Beduaram"
2115
- };
2116
- exports3.gunung_segara = {
2117
- towgs84: "-403,684,41",
2118
- ellipse: "bessel",
2119
- datumName: "Gunung Segara Jakarta"
2120
- };
2121
- exports3.rnb72 = {
2122
- towgs84: "106.869,-52.2978,103.724,-0.33657,0.456955,-1.84218,1",
2123
- ellipse: "intl",
2124
- datumName: "Reseau National Belge 1972"
2125
- };
2126
- }
2127
- });
1956
+ var exports3 = {};
1957
+ exports3.wgs84 = {
1958
+ towgs84: "0,0,0",
1959
+ ellipse: "WGS84",
1960
+ datumName: "WGS84"
1961
+ };
1962
+ exports3.ch1903 = {
1963
+ towgs84: "674.374,15.056,405.346",
1964
+ ellipse: "bessel",
1965
+ datumName: "swiss"
1966
+ };
1967
+ exports3.ggrs87 = {
1968
+ towgs84: "-199.87,74.79,246.62",
1969
+ ellipse: "GRS80",
1970
+ datumName: "Greek_Geodetic_Reference_System_1987"
1971
+ };
1972
+ exports3.nad83 = {
1973
+ towgs84: "0,0,0",
1974
+ ellipse: "GRS80",
1975
+ datumName: "North_American_Datum_1983"
1976
+ };
1977
+ exports3.nad27 = {
1978
+ nadgrids: "@conus,@alaska,@ntv2_0.gsb,@ntv1_can.dat",
1979
+ ellipse: "clrk66",
1980
+ datumName: "North_American_Datum_1927"
1981
+ };
1982
+ exports3.potsdam = {
1983
+ towgs84: "606.0,23.0,413.0",
1984
+ ellipse: "bessel",
1985
+ datumName: "Potsdam Rauenberg 1950 DHDN"
1986
+ };
1987
+ exports3.carthage = {
1988
+ towgs84: "-263.0,6.0,431.0",
1989
+ ellipse: "clark80",
1990
+ datumName: "Carthage 1934 Tunisia"
1991
+ };
1992
+ exports3.hermannskogel = {
1993
+ towgs84: "653.0,-212.0,449.0",
1994
+ ellipse: "bessel",
1995
+ datumName: "Hermannskogel"
1996
+ };
1997
+ exports3.osni52 = {
1998
+ towgs84: "482.530,-130.596,564.557,-1.042,-0.214,-0.631,8.15",
1999
+ ellipse: "airy",
2000
+ datumName: "Irish National"
2001
+ };
2002
+ exports3.ire65 = {
2003
+ towgs84: "482.530,-130.596,564.557,-1.042,-0.214,-0.631,8.15",
2004
+ ellipse: "mod_airy",
2005
+ datumName: "Ireland 1965"
2006
+ };
2007
+ exports3.rassadiran = {
2008
+ towgs84: "-133.63,-157.5,-158.62",
2009
+ ellipse: "intl",
2010
+ datumName: "Rassadiran"
2011
+ };
2012
+ exports3.nzgd49 = {
2013
+ towgs84: "59.47,-5.04,187.44,0.47,-0.1,1.024,-4.5993",
2014
+ ellipse: "intl",
2015
+ datumName: "New Zealand Geodetic Datum 1949"
2016
+ };
2017
+ exports3.osgb36 = {
2018
+ towgs84: "446.448,-125.157,542.060,0.1502,0.2470,0.8421,-20.4894",
2019
+ ellipse: "airy",
2020
+ datumName: "Airy 1830"
2021
+ };
2022
+ exports3.s_jtsk = {
2023
+ towgs84: "589,76,480",
2024
+ ellipse: "bessel",
2025
+ datumName: "S-JTSK (Ferro)"
2026
+ };
2027
+ exports3.beduaram = {
2028
+ towgs84: "-106,-87,188",
2029
+ ellipse: "clrk80",
2030
+ datumName: "Beduaram"
2031
+ };
2032
+ exports3.gunung_segara = {
2033
+ towgs84: "-403,684,41",
2034
+ ellipse: "bessel",
2035
+ datumName: "Gunung Segara Jakarta"
2036
+ };
2037
+ exports3.rnb72 = {
2038
+ towgs84: "106.869,-52.2978,103.724,-0.33657,0.456955,-1.84218,1",
2039
+ ellipse: "intl",
2040
+ datumName: "Reseau National Belge 1972"
2041
+ };
2128
2042
 
2129
2043
  // ../../node_modules/proj4/lib/datum.js
2130
2044
  function datum(datumCode, datum_params, a, b, es, ep2) {
@@ -2155,13 +2069,7 @@
2155
2069
  out.ep2 = ep2;
2156
2070
  return out;
2157
2071
  }
2158
- var datum_default;
2159
- var init_datum = __esm({
2160
- "../../node_modules/proj4/lib/datum.js"() {
2161
- init_values();
2162
- datum_default = datum;
2163
- }
2164
- });
2072
+ var datum_default = datum;
2165
2073
 
2166
2074
  // ../../node_modules/proj4/lib/Proj.js
2167
2075
  function Projection(srsCode, callback) {
@@ -2210,21 +2118,9 @@
2210
2118
  this.init();
2211
2119
  callback(null, this);
2212
2120
  }
2213
- var Proj_default;
2214
- var init_Proj = __esm({
2215
- "../../node_modules/proj4/lib/Proj.js"() {
2216
- init_parseCode();
2217
- init_extend();
2218
- init_projections();
2219
- init_deriveConstants();
2220
- init_Datum();
2221
- init_datum();
2222
- init_match();
2223
- Projection.projections = projections_default;
2224
- Projection.projections.start();
2225
- Proj_default = Projection;
2226
- }
2227
- });
2121
+ Projection.projections = projections_default;
2122
+ Projection.projections.start();
2123
+ var Proj_default = Projection;
2228
2124
 
2229
2125
  // ../../node_modules/proj4/lib/datumUtils.js
2230
2126
  function compareDatums(source, dest) {
@@ -2381,12 +2277,6 @@
2381
2277
  };
2382
2278
  }
2383
2279
  }
2384
- var init_datumUtils = __esm({
2385
- "../../node_modules/proj4/lib/datumUtils.js"() {
2386
- init_values();
2387
- "use strict";
2388
- }
2389
- });
2390
2280
 
2391
2281
  // ../../node_modules/proj4/lib/datum_transform.js
2392
2282
  function checkParams(type) {
@@ -2411,12 +2301,6 @@
2411
2301
  }
2412
2302
  return geocentricToGeodetic(point, dest.es, dest.a, dest.b);
2413
2303
  }
2414
- var init_datum_transform = __esm({
2415
- "../../node_modules/proj4/lib/datum_transform.js"() {
2416
- init_values();
2417
- init_datumUtils();
2418
- }
2419
- });
2420
2304
 
2421
2305
  // ../../node_modules/proj4/lib/adjust_axis.js
2422
2306
  function adjust_axis_default(crs, denorm, point) {
@@ -2468,10 +2352,6 @@
2468
2352
  }
2469
2353
  return out;
2470
2354
  }
2471
- var init_adjust_axis = __esm({
2472
- "../../node_modules/proj4/lib/adjust_axis.js"() {
2473
- }
2474
- });
2475
2355
 
2476
2356
  // ../../node_modules/proj4/lib/common/toPoint.js
2477
2357
  function toPoint_default(array) {
@@ -2487,10 +2367,6 @@
2487
2367
  }
2488
2368
  return out;
2489
2369
  }
2490
- var init_toPoint = __esm({
2491
- "../../node_modules/proj4/lib/common/toPoint.js"() {
2492
- }
2493
- });
2494
2370
 
2495
2371
  // ../../node_modules/proj4/lib/checkSanity.js
2496
2372
  function checkSanity_default(point) {
@@ -2508,10 +2384,6 @@
2508
2384
  throw new TypeError("coordinates must be finite numbers");
2509
2385
  }
2510
2386
  }
2511
- var init_checkSanity = __esm({
2512
- "../../node_modules/proj4/lib/checkSanity.js"() {
2513
- }
2514
- });
2515
2387
 
2516
2388
  // ../../node_modules/proj4/lib/transform.js
2517
2389
  function checkNotWGS(source, dest) {
@@ -2582,18 +2454,9 @@
2582
2454
  }
2583
2455
  return point;
2584
2456
  }
2585
- var init_transform2 = __esm({
2586
- "../../node_modules/proj4/lib/transform.js"() {
2587
- init_values();
2588
- init_datum_transform();
2589
- init_adjust_axis();
2590
- init_Proj();
2591
- init_toPoint();
2592
- init_checkSanity();
2593
- }
2594
- });
2595
2457
 
2596
2458
  // ../../node_modules/proj4/lib/core.js
2459
+ var wgs84 = Proj_default("WGS84");
2597
2460
  function transformer(from, to, coords) {
2598
2461
  var transformedArray, out, keys;
2599
2462
  if (Array.isArray(coords)) {
@@ -2673,17 +2536,22 @@
2673
2536
  return obj;
2674
2537
  }
2675
2538
  }
2676
- var wgs84, core_default;
2677
- var init_core = __esm({
2678
- "../../node_modules/proj4/lib/core.js"() {
2679
- init_Proj();
2680
- init_transform2();
2681
- wgs84 = Proj_default("WGS84");
2682
- core_default = proj4;
2683
- }
2684
- });
2539
+ var core_default = proj4;
2685
2540
 
2686
2541
  // ../../node_modules/mgrs/mgrs.js
2542
+ var NUM_100K_SETS = 6;
2543
+ var SET_ORIGIN_COLUMN_LETTERS = "AJSAJS";
2544
+ var SET_ORIGIN_ROW_LETTERS = "AFAFAF";
2545
+ var A = 65;
2546
+ var I = 73;
2547
+ var O = 79;
2548
+ var V = 86;
2549
+ var Z = 90;
2550
+ var mgrs_default = {
2551
+ forward: forward2,
2552
+ inverse: inverse2,
2553
+ toPoint
2554
+ };
2687
2555
  function forward2(ll, accuracy) {
2688
2556
  accuracy = accuracy || 5;
2689
2557
  return encode(LLtoUTM({
@@ -3102,24 +2970,6 @@
3102
2970
  throw "Invalid zone letter: " + zoneLetter;
3103
2971
  }
3104
2972
  }
3105
- var NUM_100K_SETS, SET_ORIGIN_COLUMN_LETTERS, SET_ORIGIN_ROW_LETTERS, A, I, O, V, Z, mgrs_default;
3106
- var init_mgrs = __esm({
3107
- "../../node_modules/mgrs/mgrs.js"() {
3108
- NUM_100K_SETS = 6;
3109
- SET_ORIGIN_COLUMN_LETTERS = "AJSAJS";
3110
- SET_ORIGIN_ROW_LETTERS = "AFAFAF";
3111
- A = 65;
3112
- I = 73;
3113
- O = 79;
3114
- V = 86;
3115
- Z = 90;
3116
- mgrs_default = {
3117
- forward: forward2,
3118
- inverse: inverse2,
3119
- toPoint
3120
- };
3121
- }
3122
- });
3123
2973
 
3124
2974
  // ../../node_modules/proj4/lib/Point.js
3125
2975
  function Point(x, y, z) {
@@ -3146,21 +2996,27 @@
3146
2996
  }
3147
2997
  console.warn("proj4.Point will be removed in version 3, use proj4.toPoint");
3148
2998
  }
3149
- var Point_default;
3150
- var init_Point = __esm({
3151
- "../../node_modules/proj4/lib/Point.js"() {
3152
- init_mgrs();
3153
- Point.fromMGRS = function(mgrsStr) {
3154
- return new Point(toPoint(mgrsStr));
3155
- };
3156
- Point.prototype.toMGRS = function(accuracy) {
3157
- return forward2([this.x, this.y], accuracy);
3158
- };
3159
- Point_default = Point;
3160
- }
3161
- });
2999
+ Point.fromMGRS = function(mgrsStr) {
3000
+ return new Point(toPoint(mgrsStr));
3001
+ };
3002
+ Point.prototype.toMGRS = function(accuracy) {
3003
+ return forward2([this.x, this.y], accuracy);
3004
+ };
3005
+ var Point_default = Point;
3162
3006
 
3163
3007
  // ../../node_modules/proj4/lib/common/pj_enfn.js
3008
+ var C00 = 1;
3009
+ var C02 = 0.25;
3010
+ var C04 = 0.046875;
3011
+ var C06 = 0.01953125;
3012
+ var C08 = 0.01068115234375;
3013
+ var C22 = 0.75;
3014
+ var C44 = 0.46875;
3015
+ var C46 = 0.013020833333333334;
3016
+ var C48 = 0.007120768229166667;
3017
+ var C66 = 0.3645833333333333;
3018
+ var C68 = 0.005696614583333333;
3019
+ var C88 = 0.3076171875;
3164
3020
  function pj_enfn_default(es) {
3165
3021
  var en = [];
3166
3022
  en[0] = C00 - es * (C02 + es * (C04 + es * (C06 + es * C08)));
@@ -3172,23 +3028,6 @@
3172
3028
  en[4] = t * es * C88;
3173
3029
  return en;
3174
3030
  }
3175
- var C00, C02, C04, C06, C08, C22, C44, C46, C48, C66, C68, C88;
3176
- var init_pj_enfn = __esm({
3177
- "../../node_modules/proj4/lib/common/pj_enfn.js"() {
3178
- C00 = 1;
3179
- C02 = 0.25;
3180
- C04 = 0.046875;
3181
- C06 = 0.01953125;
3182
- C08 = 0.01068115234375;
3183
- C22 = 0.75;
3184
- C44 = 0.46875;
3185
- C46 = 0.013020833333333334;
3186
- C48 = 0.007120768229166667;
3187
- C66 = 0.3645833333333333;
3188
- C68 = 0.005696614583333333;
3189
- C88 = 0.3076171875;
3190
- }
3191
- });
3192
3031
 
3193
3032
  // ../../node_modules/proj4/lib/common/pj_mlfn.js
3194
3033
  function pj_mlfn_default(phi, sphi, cphi, en) {
@@ -3196,12 +3035,9 @@
3196
3035
  sphi *= sphi;
3197
3036
  return en[0] * phi - cphi * (en[1] + sphi * (en[2] + sphi * (en[3] + sphi * en[4])));
3198
3037
  }
3199
- var init_pj_mlfn = __esm({
3200
- "../../node_modules/proj4/lib/common/pj_mlfn.js"() {
3201
- }
3202
- });
3203
3038
 
3204
3039
  // ../../node_modules/proj4/lib/common/pj_inv_mlfn.js
3040
+ var MAX_ITER = 20;
3205
3041
  function pj_inv_mlfn_default(arg, es, en) {
3206
3042
  var k = 1 / (1 - es);
3207
3043
  var phi = arg;
@@ -3216,14 +3052,6 @@
3216
3052
  }
3217
3053
  return phi;
3218
3054
  }
3219
- var MAX_ITER;
3220
- var init_pj_inv_mlfn = __esm({
3221
- "../../node_modules/proj4/lib/common/pj_inv_mlfn.js"() {
3222
- init_pj_mlfn();
3223
- init_values();
3224
- MAX_ITER = 20;
3225
- }
3226
- });
3227
3055
 
3228
3056
  // ../../node_modules/proj4/lib/projections/tmerc.js
3229
3057
  function init3() {
@@ -3330,24 +3158,13 @@
3330
3158
  p.y = lat;
3331
3159
  return p;
3332
3160
  }
3333
- var names4, tmerc_default;
3334
- var init_tmerc = __esm({
3335
- "../../node_modules/proj4/lib/projections/tmerc.js"() {
3336
- init_pj_enfn();
3337
- init_pj_mlfn();
3338
- init_pj_inv_mlfn();
3339
- init_adjust_lon();
3340
- init_values();
3341
- init_sign();
3342
- names4 = ["Transverse_Mercator", "Transverse Mercator", "tmerc"];
3343
- tmerc_default = {
3344
- init: init3,
3345
- forward: forward3,
3346
- inverse: inverse3,
3347
- names: names4
3348
- };
3349
- }
3350
- });
3161
+ var names4 = ["Transverse_Mercator", "Transverse Mercator", "tmerc"];
3162
+ var tmerc_default = {
3163
+ init: init3,
3164
+ forward: forward3,
3165
+ inverse: inverse3,
3166
+ names: names4
3167
+ };
3351
3168
 
3352
3169
  // ../../node_modules/proj4/lib/common/sinh.js
3353
3170
  function sinh_default(x) {
@@ -3355,10 +3172,6 @@
3355
3172
  r = (r - 1 / r) / 2;
3356
3173
  return r;
3357
3174
  }
3358
- var init_sinh = __esm({
3359
- "../../node_modules/proj4/lib/common/sinh.js"() {
3360
- }
3361
- });
3362
3175
 
3363
3176
  // ../../node_modules/proj4/lib/common/hypot.js
3364
3177
  function hypot_default(x, y) {
@@ -3368,10 +3181,6 @@
3368
3181
  var b = Math.min(x, y) / (a ? a : 1);
3369
3182
  return a * Math.sqrt(1 + Math.pow(b, 2));
3370
3183
  }
3371
- var init_hypot = __esm({
3372
- "../../node_modules/proj4/lib/common/hypot.js"() {
3373
- }
3374
- });
3375
3184
 
3376
3185
  // ../../node_modules/proj4/lib/common/log1py.js
3377
3186
  function log1py_default(x) {
@@ -3379,10 +3188,6 @@
3379
3188
  var z = y - 1;
3380
3189
  return z === 0 ? x : x * Math.log(y) / z;
3381
3190
  }
3382
- var init_log1py = __esm({
3383
- "../../node_modules/proj4/lib/common/log1py.js"() {
3384
- }
3385
- });
3386
3191
 
3387
3192
  // ../../node_modules/proj4/lib/common/asinhy.js
3388
3193
  function asinhy_default(x) {
@@ -3390,12 +3195,6 @@
3390
3195
  y = log1py_default(y * (1 + y / (hypot_default(1, y) + 1)));
3391
3196
  return x < 0 ? -y : y;
3392
3197
  }
3393
- var init_asinhy = __esm({
3394
- "../../node_modules/proj4/lib/common/asinhy.js"() {
3395
- init_hypot();
3396
- init_log1py();
3397
- }
3398
- });
3399
3198
 
3400
3199
  // ../../node_modules/proj4/lib/common/gatg.js
3401
3200
  function gatg_default(pp, B) {
@@ -3411,10 +3210,6 @@
3411
3210
  }
3412
3211
  return B + h * Math.sin(2 * B);
3413
3212
  }
3414
- var init_gatg = __esm({
3415
- "../../node_modules/proj4/lib/common/gatg.js"() {
3416
- }
3417
- });
3418
3213
 
3419
3214
  // ../../node_modules/proj4/lib/common/clens.js
3420
3215
  function clens_default(pp, arg_r) {
@@ -3430,10 +3225,6 @@
3430
3225
  }
3431
3226
  return Math.sin(arg_r) * hr;
3432
3227
  }
3433
- var init_clens = __esm({
3434
- "../../node_modules/proj4/lib/common/clens.js"() {
3435
- }
3436
- });
3437
3228
 
3438
3229
  // ../../node_modules/proj4/lib/common/cosh.js
3439
3230
  function cosh_default(x) {
@@ -3441,10 +3232,6 @@
3441
3232
  r = (r + 1 / r) / 2;
3442
3233
  return r;
3443
3234
  }
3444
- var init_cosh = __esm({
3445
- "../../node_modules/proj4/lib/common/cosh.js"() {
3446
- }
3447
- });
3448
3235
 
3449
3236
  // ../../node_modules/proj4/lib/common/clens_cmplx.js
3450
3237
  function clens_cmplx_default(pp, arg_r, arg_i) {
@@ -3473,12 +3260,6 @@
3473
3260
  i = cos_arg_r * sinh_arg_i;
3474
3261
  return [r * hr - i * hi, r * hi + i * hr];
3475
3262
  }
3476
- var init_clens_cmplx = __esm({
3477
- "../../node_modules/proj4/lib/common/clens_cmplx.js"() {
3478
- init_sinh();
3479
- init_cosh();
3480
- }
3481
- });
3482
3263
 
3483
3264
  // ../../node_modules/proj4/lib/projections/etmerc.js
3484
3265
  function init4() {
@@ -3589,25 +3370,13 @@
3589
3370
  p.y = lat;
3590
3371
  return p;
3591
3372
  }
3592
- var names5, etmerc_default;
3593
- var init_etmerc = __esm({
3594
- "../../node_modules/proj4/lib/projections/etmerc.js"() {
3595
- init_sinh();
3596
- init_hypot();
3597
- init_asinhy();
3598
- init_gatg();
3599
- init_clens();
3600
- init_clens_cmplx();
3601
- init_adjust_lon();
3602
- names5 = ["Extended_Transverse_Mercator", "Extended Transverse Mercator", "etmerc"];
3603
- etmerc_default = {
3604
- init: init4,
3605
- forward: forward4,
3606
- inverse: inverse4,
3607
- names: names5
3608
- };
3609
- }
3610
- });
3373
+ var names5 = ["Extended_Transverse_Mercator", "Extended Transverse Mercator", "etmerc"];
3374
+ var etmerc_default = {
3375
+ init: init4,
3376
+ forward: forward4,
3377
+ inverse: inverse4,
3378
+ names: names5
3379
+ };
3611
3380
 
3612
3381
  // ../../node_modules/proj4/lib/common/adjust_zone.js
3613
3382
  function adjust_zone_default(zone, lon) {
@@ -3621,13 +3390,9 @@
3621
3390
  }
3622
3391
  return zone;
3623
3392
  }
3624
- var init_adjust_zone = __esm({
3625
- "../../node_modules/proj4/lib/common/adjust_zone.js"() {
3626
- init_adjust_lon();
3627
- }
3628
- });
3629
3393
 
3630
3394
  // ../../node_modules/proj4/lib/projections/utm.js
3395
+ var dependsOn = "etmerc";
3631
3396
  function init5() {
3632
3397
  var zone = adjust_zone_default(this.zone, this.long0);
3633
3398
  if (zone === void 0) {
@@ -3642,32 +3407,20 @@
3642
3407
  this.forward = etmerc_default.forward;
3643
3408
  this.inverse = etmerc_default.inverse;
3644
3409
  }
3645
- var dependsOn, names6, utm_default;
3646
- var init_utm = __esm({
3647
- "../../node_modules/proj4/lib/projections/utm.js"() {
3648
- init_adjust_zone();
3649
- init_etmerc();
3650
- init_values();
3651
- dependsOn = "etmerc";
3652
- names6 = ["Universal Transverse Mercator System", "utm"];
3653
- utm_default = {
3654
- init: init5,
3655
- names: names6,
3656
- dependsOn
3657
- };
3658
- }
3659
- });
3410
+ var names6 = ["Universal Transverse Mercator System", "utm"];
3411
+ var utm_default = {
3412
+ init: init5,
3413
+ names: names6,
3414
+ dependsOn
3415
+ };
3660
3416
 
3661
3417
  // ../../node_modules/proj4/lib/common/srat.js
3662
3418
  function srat_default(esinp, exp) {
3663
3419
  return Math.pow((1 - esinp) / (1 + esinp), exp);
3664
3420
  }
3665
- var init_srat = __esm({
3666
- "../../node_modules/proj4/lib/common/srat.js"() {
3667
- }
3668
- });
3669
3421
 
3670
3422
  // ../../node_modules/proj4/lib/projections/gauss.js
3423
+ var MAX_ITER2 = 20;
3671
3424
  function init6() {
3672
3425
  var sphi = Math.sin(this.lat0);
3673
3426
  var cphi = Math.cos(this.lat0);
@@ -3704,21 +3457,13 @@
3704
3457
  p.y = lat;
3705
3458
  return p;
3706
3459
  }
3707
- var MAX_ITER2, names7, gauss_default;
3708
- var init_gauss = __esm({
3709
- "../../node_modules/proj4/lib/projections/gauss.js"() {
3710
- init_srat();
3711
- init_values();
3712
- MAX_ITER2 = 20;
3713
- names7 = ["gauss"];
3714
- gauss_default = {
3715
- init: init6,
3716
- forward: forward5,
3717
- inverse: inverse5,
3718
- names: names7
3719
- };
3720
- }
3721
- });
3460
+ var names7 = ["gauss"];
3461
+ var gauss_default = {
3462
+ init: init6,
3463
+ forward: forward5,
3464
+ inverse: inverse5,
3465
+ names: names7
3466
+ };
3722
3467
 
3723
3468
  // ../../node_modules/proj4/lib/projections/sterea.js
3724
3469
  function init7() {
@@ -3769,20 +3514,13 @@
3769
3514
  p.x = adjust_lon_default(p.x + this.long0);
3770
3515
  return p;
3771
3516
  }
3772
- var names8, sterea_default;
3773
- var init_sterea = __esm({
3774
- "../../node_modules/proj4/lib/projections/sterea.js"() {
3775
- init_gauss();
3776
- init_adjust_lon();
3777
- names8 = ["Stereographic_North_Pole", "Oblique_Stereographic", "Polar_Stereographic", "sterea", "Oblique Stereographic Alternative", "Double_Stereographic"];
3778
- sterea_default = {
3779
- init: init7,
3780
- forward: forward6,
3781
- inverse: inverse6,
3782
- names: names8
3783
- };
3784
- }
3785
- });
3517
+ var names8 = ["Stereographic_North_Pole", "Oblique_Stereographic", "Polar_Stereographic", "sterea", "Oblique Stereographic Alternative", "Double_Stereographic"];
3518
+ var sterea_default = {
3519
+ init: init7,
3520
+ forward: forward6,
3521
+ inverse: inverse6,
3522
+ names: names8
3523
+ };
3786
3524
 
3787
3525
  // ../../node_modules/proj4/lib/projections/stere.js
3788
3526
  function ssfn_(phit, sinphi, eccen) {
@@ -3909,25 +3647,14 @@
3909
3647
  p.y = lat;
3910
3648
  return p;
3911
3649
  }
3912
- var names9, stere_default;
3913
- var init_stere = __esm({
3914
- "../../node_modules/proj4/lib/projections/stere.js"() {
3915
- init_values();
3916
- init_sign();
3917
- init_msfnz();
3918
- init_tsfnz();
3919
- init_phi2z();
3920
- init_adjust_lon();
3921
- names9 = ["stere", "Stereographic_South_Pole", "Polar Stereographic (variant B)"];
3922
- stere_default = {
3923
- init: init8,
3924
- forward: forward7,
3925
- inverse: inverse7,
3926
- names: names9,
3927
- ssfn_
3928
- };
3929
- }
3930
- });
3650
+ var names9 = ["stere", "Stereographic_South_Pole", "Polar Stereographic (variant B)"];
3651
+ var stere_default = {
3652
+ init: init8,
3653
+ forward: forward7,
3654
+ inverse: inverse7,
3655
+ names: names9,
3656
+ ssfn_
3657
+ };
3931
3658
 
3932
3659
  // ../../node_modules/proj4/lib/projections/somerc.js
3933
3660
  function init9() {
@@ -3983,18 +3710,13 @@
3983
3710
  p.y = phy;
3984
3711
  return p;
3985
3712
  }
3986
- var names10, somerc_default;
3987
- var init_somerc = __esm({
3988
- "../../node_modules/proj4/lib/projections/somerc.js"() {
3989
- names10 = ["somerc"];
3990
- somerc_default = {
3991
- init: init9,
3992
- forward: forward8,
3993
- inverse: inverse8,
3994
- names: names10
3995
- };
3996
- }
3997
- });
3713
+ var names10 = ["somerc"];
3714
+ var somerc_default = {
3715
+ init: init9,
3716
+ forward: forward8,
3717
+ inverse: inverse8,
3718
+ names: names10
3719
+ };
3998
3720
 
3999
3721
  // ../../node_modules/proj4/lib/projections/omerc.js
4000
3722
  function init10() {
@@ -4126,22 +3848,13 @@
4126
3848
  }
4127
3849
  return p;
4128
3850
  }
4129
- var names11, omerc_default;
4130
- var init_omerc = __esm({
4131
- "../../node_modules/proj4/lib/projections/omerc.js"() {
4132
- init_tsfnz();
4133
- init_adjust_lon();
4134
- init_phi2z();
4135
- init_values();
4136
- names11 = ["Hotine_Oblique_Mercator", "Hotine Oblique Mercator", "Hotine_Oblique_Mercator_Azimuth_Natural_Origin", "Hotine_Oblique_Mercator_Azimuth_Center", "omerc"];
4137
- omerc_default = {
4138
- init: init10,
4139
- forward: forward9,
4140
- inverse: inverse9,
4141
- names: names11
4142
- };
4143
- }
4144
- });
3851
+ var names11 = ["Hotine_Oblique_Mercator", "Hotine Oblique Mercator", "Hotine_Oblique_Mercator_Azimuth_Natural_Origin", "Hotine_Oblique_Mercator_Azimuth_Center", "omerc"];
3852
+ var omerc_default = {
3853
+ init: init10,
3854
+ forward: forward9,
3855
+ inverse: inverse9,
3856
+ names: names11
3857
+ };
4145
3858
 
4146
3859
  // ../../node_modules/proj4/lib/projections/lcc.js
4147
3860
  function init11() {
@@ -4235,24 +3948,13 @@
4235
3948
  p.y = lat;
4236
3949
  return p;
4237
3950
  }
4238
- var names12, lcc_default;
4239
- var init_lcc = __esm({
4240
- "../../node_modules/proj4/lib/projections/lcc.js"() {
4241
- init_msfnz();
4242
- init_tsfnz();
4243
- init_sign();
4244
- init_adjust_lon();
4245
- init_phi2z();
4246
- init_values();
4247
- names12 = ["Lambert Tangential Conformal Conic Projection", "Lambert_Conformal_Conic", "Lambert_Conformal_Conic_2SP", "lcc"];
4248
- lcc_default = {
4249
- init: init11,
4250
- forward: forward10,
4251
- inverse: inverse10,
4252
- names: names12
4253
- };
4254
- }
4255
- });
3951
+ var names12 = ["Lambert Tangential Conformal Conic Projection", "Lambert_Conformal_Conic", "Lambert_Conformal_Conic_2SP", "lcc"];
3952
+ var lcc_default = {
3953
+ init: init11,
3954
+ forward: forward10,
3955
+ inverse: inverse10,
3956
+ names: names12
3957
+ };
4256
3958
 
4257
3959
  // ../../node_modules/proj4/lib/projections/krovak.js
4258
3960
  function init12() {
@@ -4338,85 +4040,49 @@
4338
4040
  }
4339
4041
  return p;
4340
4042
  }
4341
- var names13, krovak_default;
4342
- var init_krovak = __esm({
4343
- "../../node_modules/proj4/lib/projections/krovak.js"() {
4344
- init_adjust_lon();
4345
- names13 = ["Krovak", "krovak"];
4346
- krovak_default = {
4347
- init: init12,
4348
- forward: forward11,
4349
- inverse: inverse11,
4350
- names: names13
4351
- };
4352
- }
4353
- });
4043
+ var names13 = ["Krovak", "krovak"];
4044
+ var krovak_default = {
4045
+ init: init12,
4046
+ forward: forward11,
4047
+ inverse: inverse11,
4048
+ names: names13
4049
+ };
4354
4050
 
4355
4051
  // ../../node_modules/proj4/lib/common/mlfn.js
4356
4052
  function mlfn_default(e0, e1, e2, e3, phi) {
4357
4053
  return e0 * phi - e1 * Math.sin(2 * phi) + e2 * Math.sin(4 * phi) - e3 * Math.sin(6 * phi);
4358
4054
  }
4359
- var init_mlfn = __esm({
4360
- "../../node_modules/proj4/lib/common/mlfn.js"() {
4361
- }
4362
- });
4363
4055
 
4364
4056
  // ../../node_modules/proj4/lib/common/e0fn.js
4365
4057
  function e0fn_default(x) {
4366
4058
  return 1 - 0.25 * x * (1 + x / 16 * (3 + 1.25 * x));
4367
4059
  }
4368
- var init_e0fn = __esm({
4369
- "../../node_modules/proj4/lib/common/e0fn.js"() {
4370
- }
4371
- });
4372
4060
 
4373
4061
  // ../../node_modules/proj4/lib/common/e1fn.js
4374
4062
  function e1fn_default(x) {
4375
4063
  return 0.375 * x * (1 + 0.25 * x * (1 + 0.46875 * x));
4376
4064
  }
4377
- var init_e1fn = __esm({
4378
- "../../node_modules/proj4/lib/common/e1fn.js"() {
4379
- }
4380
- });
4381
4065
 
4382
4066
  // ../../node_modules/proj4/lib/common/e2fn.js
4383
4067
  function e2fn_default(x) {
4384
4068
  return 0.05859375 * x * x * (1 + 0.75 * x);
4385
4069
  }
4386
- var init_e2fn = __esm({
4387
- "../../node_modules/proj4/lib/common/e2fn.js"() {
4388
- }
4389
- });
4390
4070
 
4391
4071
  // ../../node_modules/proj4/lib/common/e3fn.js
4392
4072
  function e3fn_default(x) {
4393
4073
  return x * x * x * (35 / 3072);
4394
4074
  }
4395
- var init_e3fn = __esm({
4396
- "../../node_modules/proj4/lib/common/e3fn.js"() {
4397
- }
4398
- });
4399
4075
 
4400
4076
  // ../../node_modules/proj4/lib/common/gN.js
4401
4077
  function gN_default(a, e, sinphi) {
4402
4078
  var temp = e * sinphi;
4403
4079
  return a / Math.sqrt(1 - temp * temp);
4404
4080
  }
4405
- var init_gN = __esm({
4406
- "../../node_modules/proj4/lib/common/gN.js"() {
4407
- }
4408
- });
4409
4081
 
4410
4082
  // ../../node_modules/proj4/lib/common/adjust_lat.js
4411
4083
  function adjust_lat_default(x) {
4412
4084
  return Math.abs(x) < HALF_PI ? x : x - sign_default(x) * Math.PI;
4413
4085
  }
4414
- var init_adjust_lat = __esm({
4415
- "../../node_modules/proj4/lib/common/adjust_lat.js"() {
4416
- init_values();
4417
- init_sign();
4418
- }
4419
- });
4420
4086
 
4421
4087
  // ../../node_modules/proj4/lib/common/imlfn.js
4422
4088
  function imlfn_default(ml, e0, e1, e2, e3) {
@@ -4432,10 +4098,6 @@
4432
4098
  }
4433
4099
  return NaN;
4434
4100
  }
4435
- var init_imlfn = __esm({
4436
- "../../node_modules/proj4/lib/common/imlfn.js"() {
4437
- }
4438
- });
4439
4101
 
4440
4102
  // ../../node_modules/proj4/lib/projections/cass.js
4441
4103
  function init13() {
@@ -4504,28 +4166,13 @@
4504
4166
  p.y = adjust_lat_default(phi);
4505
4167
  return p;
4506
4168
  }
4507
- var names14, cass_default;
4508
- var init_cass = __esm({
4509
- "../../node_modules/proj4/lib/projections/cass.js"() {
4510
- init_mlfn();
4511
- init_e0fn();
4512
- init_e1fn();
4513
- init_e2fn();
4514
- init_e3fn();
4515
- init_gN();
4516
- init_adjust_lon();
4517
- init_adjust_lat();
4518
- init_imlfn();
4519
- init_values();
4520
- names14 = ["Cassini", "Cassini_Soldner", "cass"];
4521
- cass_default = {
4522
- init: init13,
4523
- forward: forward12,
4524
- inverse: inverse12,
4525
- names: names14
4526
- };
4527
- }
4528
- });
4169
+ var names14 = ["Cassini", "Cassini_Soldner", "cass"];
4170
+ var cass_default = {
4171
+ init: init13,
4172
+ forward: forward12,
4173
+ inverse: inverse12,
4174
+ names: names14
4175
+ };
4529
4176
 
4530
4177
  // ../../node_modules/proj4/lib/common/qsfnz.js
4531
4178
  function qsfnz_default(eccent, sinphi) {
@@ -4537,12 +4184,12 @@
4537
4184
  return 2 * sinphi;
4538
4185
  }
4539
4186
  }
4540
- var init_qsfnz = __esm({
4541
- "../../node_modules/proj4/lib/common/qsfnz.js"() {
4542
- }
4543
- });
4544
4187
 
4545
4188
  // ../../node_modules/proj4/lib/projections/laea.js
4189
+ var S_POLE = 1;
4190
+ var N_POLE = 2;
4191
+ var EQUIT = 3;
4192
+ var OBLIQ = 4;
4546
4193
  function init14() {
4547
4194
  var t = Math.abs(this.lat0);
4548
4195
  if (Math.abs(t - HALF_PI) < EPSLN) {
@@ -4756,6 +4403,12 @@
4756
4403
  p.y = phi;
4757
4404
  return p;
4758
4405
  }
4406
+ var P00 = 0.3333333333333333;
4407
+ var P01 = 0.17222222222222222;
4408
+ var P02 = 0.10257936507936508;
4409
+ var P10 = 0.06388888888888888;
4410
+ var P11 = 0.0664021164021164;
4411
+ var P20 = 0.016415012942191543;
4759
4412
  function authset(es) {
4760
4413
  var t;
4761
4414
  var APA = [];
@@ -4773,35 +4426,17 @@
4773
4426
  var t = beta + beta;
4774
4427
  return beta + APA[0] * Math.sin(t) + APA[1] * Math.sin(t + t) + APA[2] * Math.sin(t + t + t);
4775
4428
  }
4776
- var S_POLE, N_POLE, EQUIT, OBLIQ, P00, P01, P02, P10, P11, P20, names15, laea_default;
4777
- var init_laea = __esm({
4778
- "../../node_modules/proj4/lib/projections/laea.js"() {
4779
- init_values();
4780
- init_qsfnz();
4781
- init_adjust_lon();
4782
- S_POLE = 1;
4783
- N_POLE = 2;
4784
- EQUIT = 3;
4785
- OBLIQ = 4;
4786
- P00 = 0.3333333333333333;
4787
- P01 = 0.17222222222222222;
4788
- P02 = 0.10257936507936508;
4789
- P10 = 0.06388888888888888;
4790
- P11 = 0.0664021164021164;
4791
- P20 = 0.016415012942191543;
4792
- names15 = ["Lambert Azimuthal Equal Area", "Lambert_Azimuthal_Equal_Area", "laea"];
4793
- laea_default = {
4794
- init: init14,
4795
- forward: forward13,
4796
- inverse: inverse13,
4797
- names: names15,
4798
- S_POLE,
4799
- N_POLE,
4800
- EQUIT,
4801
- OBLIQ
4802
- };
4803
- }
4804
- });
4429
+ var names15 = ["Lambert Azimuthal Equal Area", "Lambert_Azimuthal_Equal_Area", "laea"];
4430
+ var laea_default = {
4431
+ init: init14,
4432
+ forward: forward13,
4433
+ inverse: inverse13,
4434
+ names: names15,
4435
+ S_POLE,
4436
+ N_POLE,
4437
+ EQUIT,
4438
+ OBLIQ
4439
+ };
4805
4440
 
4806
4441
  // ../../node_modules/proj4/lib/common/asinz.js
4807
4442
  function asinz_default(x) {
@@ -4810,10 +4445,6 @@
4810
4445
  }
4811
4446
  return Math.asin(x);
4812
4447
  }
4813
- var init_asinz = __esm({
4814
- "../../node_modules/proj4/lib/common/asinz.js"() {
4815
- }
4816
- });
4817
4448
 
4818
4449
  // ../../node_modules/proj4/lib/projections/aea.js
4819
4450
  function init15() {
@@ -4907,24 +4538,14 @@
4907
4538
  }
4908
4539
  return null;
4909
4540
  }
4910
- var names16, aea_default;
4911
- var init_aea = __esm({
4912
- "../../node_modules/proj4/lib/projections/aea.js"() {
4913
- init_msfnz();
4914
- init_qsfnz();
4915
- init_adjust_lon();
4916
- init_asinz();
4917
- init_values();
4918
- names16 = ["Albers_Conic_Equal_Area", "Albers", "aea"];
4919
- aea_default = {
4920
- init: init15,
4921
- forward: forward14,
4922
- inverse: inverse14,
4923
- names: names16,
4924
- phi1z
4925
- };
4926
- }
4927
- });
4541
+ var names16 = ["Albers_Conic_Equal_Area", "Albers", "aea"];
4542
+ var aea_default = {
4543
+ init: init15,
4544
+ forward: forward14,
4545
+ inverse: inverse14,
4546
+ names: names16,
4547
+ phi1z
4548
+ };
4928
4549
 
4929
4550
  // ../../node_modules/proj4/lib/projections/gnom.js
4930
4551
  function init16() {
@@ -4983,21 +4604,13 @@
4983
4604
  p.y = lat;
4984
4605
  return p;
4985
4606
  }
4986
- var names17, gnom_default;
4987
- var init_gnom = __esm({
4988
- "../../node_modules/proj4/lib/projections/gnom.js"() {
4989
- init_adjust_lon();
4990
- init_asinz();
4991
- init_values();
4992
- names17 = ["gnom"];
4993
- gnom_default = {
4994
- init: init16,
4995
- forward: forward15,
4996
- inverse: inverse15,
4997
- names: names17
4998
- };
4999
- }
5000
- });
4607
+ var names17 = ["gnom"];
4608
+ var gnom_default = {
4609
+ init: init16,
4610
+ forward: forward15,
4611
+ inverse: inverse15,
4612
+ names: names17
4613
+ };
5001
4614
 
5002
4615
  // ../../node_modules/proj4/lib/common/iqsfnz.js
5003
4616
  function iqsfnz_default(eccent, q) {
@@ -5026,11 +4639,6 @@
5026
4639
  }
5027
4640
  return NaN;
5028
4641
  }
5029
- var init_iqsfnz = __esm({
5030
- "../../node_modules/proj4/lib/common/iqsfnz.js"() {
5031
- init_values();
5032
- }
5033
- });
5034
4642
 
5035
4643
  // ../../node_modules/proj4/lib/projections/cea.js
5036
4644
  function init17() {
@@ -5070,22 +4678,13 @@
5070
4678
  p.y = lat;
5071
4679
  return p;
5072
4680
  }
5073
- var names18, cea_default;
5074
- var init_cea = __esm({
5075
- "../../node_modules/proj4/lib/projections/cea.js"() {
5076
- init_adjust_lon();
5077
- init_qsfnz();
5078
- init_msfnz();
5079
- init_iqsfnz();
5080
- names18 = ["cea"];
5081
- cea_default = {
5082
- init: init17,
5083
- forward: forward16,
5084
- inverse: inverse16,
5085
- names: names18
5086
- };
5087
- }
5088
- });
4681
+ var names18 = ["cea"];
4682
+ var cea_default = {
4683
+ init: init17,
4684
+ forward: forward16,
4685
+ inverse: inverse16,
4686
+ names: names18
4687
+ };
5089
4688
 
5090
4689
  // ../../node_modules/proj4/lib/projections/eqc.js
5091
4690
  function init18() {
@@ -5113,22 +4712,16 @@
5113
4712
  p.y = adjust_lat_default(this.lat0 + (y - this.y0) / this.a);
5114
4713
  return p;
5115
4714
  }
5116
- var names19, eqc_default;
5117
- var init_eqc = __esm({
5118
- "../../node_modules/proj4/lib/projections/eqc.js"() {
5119
- init_adjust_lon();
5120
- init_adjust_lat();
5121
- names19 = ["Equirectangular", "Equidistant_Cylindrical", "eqc"];
5122
- eqc_default = {
5123
- init: init18,
5124
- forward: forward17,
5125
- inverse: inverse17,
5126
- names: names19
5127
- };
5128
- }
5129
- });
4715
+ var names19 = ["Equirectangular", "Equidistant_Cylindrical", "eqc"];
4716
+ var eqc_default = {
4717
+ init: init18,
4718
+ forward: forward17,
4719
+ inverse: inverse17,
4720
+ names: names19
4721
+ };
5130
4722
 
5131
4723
  // ../../node_modules/proj4/lib/projections/poly.js
4724
+ var MAX_ITER3 = 20;
5132
4725
  function init19() {
5133
4726
  this.temp = this.b / this.a;
5134
4727
  this.es = 1 - Math.pow(this.temp, 2);
@@ -5224,28 +4817,13 @@
5224
4817
  p.y = lat;
5225
4818
  return p;
5226
4819
  }
5227
- var MAX_ITER3, names20, poly_default;
5228
- var init_poly = __esm({
5229
- "../../node_modules/proj4/lib/projections/poly.js"() {
5230
- init_e0fn();
5231
- init_e1fn();
5232
- init_e2fn();
5233
- init_e3fn();
5234
- init_adjust_lon();
5235
- init_adjust_lat();
5236
- init_mlfn();
5237
- init_values();
5238
- init_gN();
5239
- MAX_ITER3 = 20;
5240
- names20 = ["Polyconic", "poly"];
5241
- poly_default = {
5242
- init: init19,
5243
- forward: forward18,
5244
- inverse: inverse18,
5245
- names: names20
5246
- };
5247
- }
5248
- });
4820
+ var names20 = ["Polyconic", "poly"];
4821
+ var poly_default = {
4822
+ init: init19,
4823
+ forward: forward18,
4824
+ inverse: inverse18,
4825
+ names: names20
4826
+ };
5249
4827
 
5250
4828
  // ../../node_modules/proj4/lib/projections/nzmg.js
5251
4829
  function init20() {
@@ -5400,19 +4978,13 @@
5400
4978
  p.y = lat;
5401
4979
  return p;
5402
4980
  }
5403
- var names21, nzmg_default;
5404
- var init_nzmg = __esm({
5405
- "../../node_modules/proj4/lib/projections/nzmg.js"() {
5406
- init_values();
5407
- names21 = ["New_Zealand_Map_Grid", "nzmg"];
5408
- nzmg_default = {
5409
- init: init20,
5410
- forward: forward19,
5411
- inverse: inverse19,
5412
- names: names21
5413
- };
5414
- }
5415
- });
4981
+ var names21 = ["New_Zealand_Map_Grid", "nzmg"];
4982
+ var nzmg_default = {
4983
+ init: init20,
4984
+ forward: forward19,
4985
+ inverse: inverse19,
4986
+ names: names21
4987
+ };
5416
4988
 
5417
4989
  // ../../node_modules/proj4/lib/projections/mill.js
5418
4990
  function init21() {
@@ -5436,21 +5008,16 @@
5436
5008
  p.y = lat;
5437
5009
  return p;
5438
5010
  }
5439
- var names22, mill_default;
5440
- var init_mill = __esm({
5441
- "../../node_modules/proj4/lib/projections/mill.js"() {
5442
- init_adjust_lon();
5443
- names22 = ["Miller_Cylindrical", "mill"];
5444
- mill_default = {
5445
- init: init21,
5446
- forward: forward20,
5447
- inverse: inverse20,
5448
- names: names22
5449
- };
5450
- }
5451
- });
5011
+ var names22 = ["Miller_Cylindrical", "mill"];
5012
+ var mill_default = {
5013
+ init: init21,
5014
+ forward: forward20,
5015
+ inverse: inverse20,
5016
+ names: names22
5017
+ };
5452
5018
 
5453
5019
  // ../../node_modules/proj4/lib/projections/sinu.js
5020
+ var MAX_ITER4 = 20;
5454
5021
  function init22() {
5455
5022
  if (!this.sphere) {
5456
5023
  this.en = pj_enfn_default(this.es);
@@ -5523,26 +5090,13 @@
5523
5090
  p.y = lat;
5524
5091
  return p;
5525
5092
  }
5526
- var MAX_ITER4, names23, sinu_default;
5527
- var init_sinu = __esm({
5528
- "../../node_modules/proj4/lib/projections/sinu.js"() {
5529
- init_adjust_lon();
5530
- init_adjust_lat();
5531
- init_pj_enfn();
5532
- init_pj_mlfn();
5533
- init_pj_inv_mlfn();
5534
- init_values();
5535
- init_asinz();
5536
- MAX_ITER4 = 20;
5537
- names23 = ["Sinusoidal", "sinu"];
5538
- sinu_default = {
5539
- init: init22,
5540
- forward: forward21,
5541
- inverse: inverse21,
5542
- names: names23
5543
- };
5544
- }
5545
- });
5093
+ var names23 = ["Sinusoidal", "sinu"];
5094
+ var sinu_default = {
5095
+ init: init22,
5096
+ forward: forward21,
5097
+ inverse: inverse21,
5098
+ names: names23
5099
+ };
5546
5100
 
5547
5101
  // ../../node_modules/proj4/lib/projections/moll.js
5548
5102
  function init23() {
@@ -5596,20 +5150,13 @@
5596
5150
  p.y = lat;
5597
5151
  return p;
5598
5152
  }
5599
- var names24, moll_default;
5600
- var init_moll = __esm({
5601
- "../../node_modules/proj4/lib/projections/moll.js"() {
5602
- init_adjust_lon();
5603
- init_values();
5604
- names24 = ["Mollweide", "moll"];
5605
- moll_default = {
5606
- init: init23,
5607
- forward: forward22,
5608
- inverse: inverse22,
5609
- names: names24
5610
- };
5611
- }
5612
- });
5153
+ var names24 = ["Mollweide", "moll"];
5154
+ var moll_default = {
5155
+ init: init23,
5156
+ forward: forward22,
5157
+ inverse: inverse22,
5158
+ names: names24
5159
+ };
5613
5160
 
5614
5161
  // ../../node_modules/proj4/lib/projections/eqdc.js
5615
5162
  function init24() {
@@ -5688,28 +5235,13 @@
5688
5235
  return p;
5689
5236
  }
5690
5237
  }
5691
- var names25, eqdc_default;
5692
- var init_eqdc = __esm({
5693
- "../../node_modules/proj4/lib/projections/eqdc.js"() {
5694
- init_e0fn();
5695
- init_e1fn();
5696
- init_e2fn();
5697
- init_e3fn();
5698
- init_msfnz();
5699
- init_mlfn();
5700
- init_adjust_lon();
5701
- init_adjust_lat();
5702
- init_imlfn();
5703
- init_values();
5704
- names25 = ["Equidistant_Conic", "eqdc"];
5705
- eqdc_default = {
5706
- init: init24,
5707
- forward: forward23,
5708
- inverse: inverse23,
5709
- names: names25
5710
- };
5711
- }
5712
- });
5238
+ var names25 = ["Equidistant_Conic", "eqdc"];
5239
+ var eqdc_default = {
5240
+ init: init24,
5241
+ forward: forward23,
5242
+ inverse: inverse23,
5243
+ names: names25
5244
+ };
5713
5245
 
5714
5246
  // ../../node_modules/proj4/lib/projections/vandg.js
5715
5247
  function init25() {
@@ -5800,21 +5332,13 @@
5800
5332
  p.y = lat;
5801
5333
  return p;
5802
5334
  }
5803
- var names26, vandg_default;
5804
- var init_vandg = __esm({
5805
- "../../node_modules/proj4/lib/projections/vandg.js"() {
5806
- init_adjust_lon();
5807
- init_values();
5808
- init_asinz();
5809
- names26 = ["Van_der_Grinten_I", "VanDerGrinten", "vandg"];
5810
- vandg_default = {
5811
- init: init25,
5812
- forward: forward24,
5813
- inverse: inverse24,
5814
- names: names26
5815
- };
5816
- }
5817
- });
5335
+ var names26 = ["Van_der_Grinten_I", "VanDerGrinten", "vandg"];
5336
+ var vandg_default = {
5337
+ init: init25,
5338
+ forward: forward24,
5339
+ inverse: inverse24,
5340
+ names: names26
5341
+ };
5818
5342
 
5819
5343
  // ../../node_modules/proj4/lib/projections/aeqd.js
5820
5344
  function init26() {
@@ -5965,28 +5489,13 @@
5965
5489
  }
5966
5490
  }
5967
5491
  }
5968
- var names27, aeqd_default;
5969
- var init_aeqd = __esm({
5970
- "../../node_modules/proj4/lib/projections/aeqd.js"() {
5971
- init_adjust_lon();
5972
- init_values();
5973
- init_mlfn();
5974
- init_e0fn();
5975
- init_e1fn();
5976
- init_e2fn();
5977
- init_e3fn();
5978
- init_gN();
5979
- init_asinz();
5980
- init_imlfn();
5981
- names27 = ["Azimuthal_Equidistant", "aeqd"];
5982
- aeqd_default = {
5983
- init: init26,
5984
- forward: forward25,
5985
- inverse: inverse25,
5986
- names: names27
5987
- };
5988
- }
5989
- });
5492
+ var names27 = ["Azimuthal_Equidistant", "aeqd"];
5493
+ var aeqd_default = {
5494
+ init: init26,
5495
+ forward: forward25,
5496
+ inverse: inverse25,
5497
+ names: names27
5498
+ };
5990
5499
 
5991
5500
  // ../../node_modules/proj4/lib/projections/ortho.js
5992
5501
  function init27() {
@@ -6051,23 +5560,29 @@
6051
5560
  p.y = lat;
6052
5561
  return p;
6053
5562
  }
6054
- var names28, ortho_default;
6055
- var init_ortho = __esm({
6056
- "../../node_modules/proj4/lib/projections/ortho.js"() {
6057
- init_adjust_lon();
6058
- init_asinz();
6059
- init_values();
6060
- names28 = ["ortho"];
6061
- ortho_default = {
6062
- init: init27,
6063
- forward: forward26,
6064
- inverse: inverse26,
6065
- names: names28
6066
- };
6067
- }
6068
- });
5563
+ var names28 = ["ortho"];
5564
+ var ortho_default = {
5565
+ init: init27,
5566
+ forward: forward26,
5567
+ inverse: inverse26,
5568
+ names: names28
5569
+ };
6069
5570
 
6070
5571
  // ../../node_modules/proj4/lib/projections/qsc.js
5572
+ var FACE_ENUM = {
5573
+ FRONT: 1,
5574
+ RIGHT: 2,
5575
+ BACK: 3,
5576
+ LEFT: 4,
5577
+ TOP: 5,
5578
+ BOTTOM: 6
5579
+ };
5580
+ var AREA_ENUM = {
5581
+ AREA_0: 1,
5582
+ AREA_1: 2,
5583
+ AREA_2: 3,
5584
+ AREA_3: 4
5585
+ };
6071
5586
  function init28() {
6072
5587
  this.x0 = this.x0 || 0;
6073
5588
  this.y0 = this.y0 || 0;
@@ -6339,35 +5854,68 @@
6339
5854
  }
6340
5855
  return slon;
6341
5856
  }
6342
- var FACE_ENUM, AREA_ENUM, names29, qsc_default;
6343
- var init_qsc = __esm({
6344
- "../../node_modules/proj4/lib/projections/qsc.js"() {
6345
- init_values();
6346
- FACE_ENUM = {
6347
- FRONT: 1,
6348
- RIGHT: 2,
6349
- BACK: 3,
6350
- LEFT: 4,
6351
- TOP: 5,
6352
- BOTTOM: 6
6353
- };
6354
- AREA_ENUM = {
6355
- AREA_0: 1,
6356
- AREA_1: 2,
6357
- AREA_2: 3,
6358
- AREA_3: 4
6359
- };
6360
- names29 = ["Quadrilateralized Spherical Cube", "Quadrilateralized_Spherical_Cube", "qsc"];
6361
- qsc_default = {
6362
- init: init28,
6363
- forward: forward27,
6364
- inverse: inverse27,
6365
- names: names29
6366
- };
6367
- }
6368
- });
5857
+ var names29 = ["Quadrilateralized Spherical Cube", "Quadrilateralized_Spherical_Cube", "qsc"];
5858
+ var qsc_default = {
5859
+ init: init28,
5860
+ forward: forward27,
5861
+ inverse: inverse27,
5862
+ names: names29
5863
+ };
6369
5864
 
6370
5865
  // ../../node_modules/proj4/lib/projections/robin.js
5866
+ var COEFS_X = [
5867
+ [1, 22199e-21, -715515e-10, 31103e-10],
5868
+ [0.9986, -482243e-9, -24897e-9, -13309e-10],
5869
+ [0.9954, -83103e-8, -448605e-10, -986701e-12],
5870
+ [0.99, -135364e-8, -59661e-9, 36777e-10],
5871
+ [0.9822, -167442e-8, -449547e-11, -572411e-11],
5872
+ [0.973, -214868e-8, -903571e-10, 18736e-12],
5873
+ [0.96, -305085e-8, -900761e-10, 164917e-11],
5874
+ [0.9427, -382792e-8, -653386e-10, -26154e-10],
5875
+ [0.9216, -467746e-8, -10457e-8, 481243e-11],
5876
+ [0.8962, -536223e-8, -323831e-10, -543432e-11],
5877
+ [0.8679, -609363e-8, -113898e-9, 332484e-11],
5878
+ [0.835, -698325e-8, -640253e-10, 934959e-12],
5879
+ [0.7986, -755338e-8, -500009e-10, 935324e-12],
5880
+ [0.7597, -798324e-8, -35971e-9, -227626e-11],
5881
+ [0.7186, -851367e-8, -701149e-10, -86303e-10],
5882
+ [0.6732, -986209e-8, -199569e-9, 191974e-10],
5883
+ [0.6213, -0.010418, 883923e-10, 624051e-11],
5884
+ [0.5722, -906601e-8, 182e-6, 624051e-11],
5885
+ [0.5322, -677797e-8, 275608e-9, 624051e-11]
5886
+ ];
5887
+ var COEFS_Y = [
5888
+ [-520417e-23, 0.0124, 121431e-23, -845284e-16],
5889
+ [0.062, 0.0124, -126793e-14, 422642e-15],
5890
+ [0.124, 0.0124, 507171e-14, -160604e-14],
5891
+ [0.186, 0.0123999, -190189e-13, 600152e-14],
5892
+ [0.248, 0.0124002, 710039e-13, -224e-10],
5893
+ [0.31, 0.0123992, -264997e-12, 835986e-13],
5894
+ [0.372, 0.0124029, 988983e-12, -311994e-12],
5895
+ [0.434, 0.0123893, -369093e-11, -435621e-12],
5896
+ [0.4958, 0.0123198, -102252e-10, -345523e-12],
5897
+ [0.5571, 0.0121916, -154081e-10, -582288e-12],
5898
+ [0.6176, 0.0119938, -241424e-10, -525327e-12],
5899
+ [0.6769, 0.011713, -320223e-10, -516405e-12],
5900
+ [0.7346, 0.0113541, -397684e-10, -609052e-12],
5901
+ [0.7903, 0.0109107, -489042e-10, -104739e-11],
5902
+ [0.8435, 0.0103431, -64615e-9, -140374e-14],
5903
+ [0.8936, 969686e-8, -64636e-9, -8547e-9],
5904
+ [0.9394, 840947e-8, -192841e-9, -42106e-10],
5905
+ [0.9761, 616527e-8, -256e-6, -42106e-10],
5906
+ [1, 328947e-8, -319159e-9, -42106e-10]
5907
+ ];
5908
+ var FXC = 0.8487;
5909
+ var FYC = 1.3523;
5910
+ var C1 = R2D / 5;
5911
+ var RC1 = 1 / C1;
5912
+ var NODES = 18;
5913
+ var poly3_val = function(coefs, x) {
5914
+ return coefs[0] + x * (coefs[1] + x * (coefs[2] + x * coefs[3]));
5915
+ };
5916
+ var poly3_der = function(coefs, x) {
5917
+ return coefs[1] + x * (2 * coefs[2] + x * 3 * coefs[3]);
5918
+ };
6371
5919
  function newton_rapshon(f_df, start2, max_err, iters) {
6372
5920
  var x = start2;
6373
5921
  for (; iters; --iters) {
@@ -6445,73 +5993,13 @@
6445
5993
  ll.x = adjust_lon_default(ll.x + this.long0);
6446
5994
  return ll;
6447
5995
  }
6448
- var COEFS_X, COEFS_Y, FXC, FYC, C1, RC1, NODES, poly3_val, poly3_der, names30, robin_default;
6449
- var init_robin = __esm({
6450
- "../../node_modules/proj4/lib/projections/robin.js"() {
6451
- init_values();
6452
- init_adjust_lon();
6453
- COEFS_X = [
6454
- [1, 22199e-21, -715515e-10, 31103e-10],
6455
- [0.9986, -482243e-9, -24897e-9, -13309e-10],
6456
- [0.9954, -83103e-8, -448605e-10, -986701e-12],
6457
- [0.99, -135364e-8, -59661e-9, 36777e-10],
6458
- [0.9822, -167442e-8, -449547e-11, -572411e-11],
6459
- [0.973, -214868e-8, -903571e-10, 18736e-12],
6460
- [0.96, -305085e-8, -900761e-10, 164917e-11],
6461
- [0.9427, -382792e-8, -653386e-10, -26154e-10],
6462
- [0.9216, -467746e-8, -10457e-8, 481243e-11],
6463
- [0.8962, -536223e-8, -323831e-10, -543432e-11],
6464
- [0.8679, -609363e-8, -113898e-9, 332484e-11],
6465
- [0.835, -698325e-8, -640253e-10, 934959e-12],
6466
- [0.7986, -755338e-8, -500009e-10, 935324e-12],
6467
- [0.7597, -798324e-8, -35971e-9, -227626e-11],
6468
- [0.7186, -851367e-8, -701149e-10, -86303e-10],
6469
- [0.6732, -986209e-8, -199569e-9, 191974e-10],
6470
- [0.6213, -0.010418, 883923e-10, 624051e-11],
6471
- [0.5722, -906601e-8, 182e-6, 624051e-11],
6472
- [0.5322, -677797e-8, 275608e-9, 624051e-11]
6473
- ];
6474
- COEFS_Y = [
6475
- [-520417e-23, 0.0124, 121431e-23, -845284e-16],
6476
- [0.062, 0.0124, -126793e-14, 422642e-15],
6477
- [0.124, 0.0124, 507171e-14, -160604e-14],
6478
- [0.186, 0.0123999, -190189e-13, 600152e-14],
6479
- [0.248, 0.0124002, 710039e-13, -224e-10],
6480
- [0.31, 0.0123992, -264997e-12, 835986e-13],
6481
- [0.372, 0.0124029, 988983e-12, -311994e-12],
6482
- [0.434, 0.0123893, -369093e-11, -435621e-12],
6483
- [0.4958, 0.0123198, -102252e-10, -345523e-12],
6484
- [0.5571, 0.0121916, -154081e-10, -582288e-12],
6485
- [0.6176, 0.0119938, -241424e-10, -525327e-12],
6486
- [0.6769, 0.011713, -320223e-10, -516405e-12],
6487
- [0.7346, 0.0113541, -397684e-10, -609052e-12],
6488
- [0.7903, 0.0109107, -489042e-10, -104739e-11],
6489
- [0.8435, 0.0103431, -64615e-9, -140374e-14],
6490
- [0.8936, 969686e-8, -64636e-9, -8547e-9],
6491
- [0.9394, 840947e-8, -192841e-9, -42106e-10],
6492
- [0.9761, 616527e-8, -256e-6, -42106e-10],
6493
- [1, 328947e-8, -319159e-9, -42106e-10]
6494
- ];
6495
- FXC = 0.8487;
6496
- FYC = 1.3523;
6497
- C1 = R2D / 5;
6498
- RC1 = 1 / C1;
6499
- NODES = 18;
6500
- poly3_val = function(coefs, x) {
6501
- return coefs[0] + x * (coefs[1] + x * (coefs[2] + x * coefs[3]));
6502
- };
6503
- poly3_der = function(coefs, x) {
6504
- return coefs[1] + x * (2 * coefs[2] + x * 3 * coefs[3]);
6505
- };
6506
- names30 = ["Robinson", "robin"];
6507
- robin_default = {
6508
- init: init29,
6509
- forward: forward28,
6510
- inverse: inverse28,
6511
- names: names30
6512
- };
6513
- }
6514
- });
5996
+ var names30 = ["Robinson", "robin"];
5997
+ var robin_default = {
5998
+ init: init29,
5999
+ forward: forward28,
6000
+ inverse: inverse28,
6001
+ names: names30
6002
+ };
6515
6003
 
6516
6004
  // ../../node_modules/proj4/lib/projections/geocent.js
6517
6005
  function init30() {
@@ -6525,19 +6013,13 @@
6525
6013
  var point = geocentricToGeodetic(p, this.es, this.a, this.b);
6526
6014
  return point;
6527
6015
  }
6528
- var names31, geocent_default;
6529
- var init_geocent = __esm({
6530
- "../../node_modules/proj4/lib/projections/geocent.js"() {
6531
- init_datumUtils();
6532
- names31 = ["Geocentric", "geocentric", "geocent", "Geocent"];
6533
- geocent_default = {
6534
- init: init30,
6535
- forward: forward29,
6536
- inverse: inverse29,
6537
- names: names31
6538
- };
6539
- }
6540
- });
6016
+ var names31 = ["Geocentric", "geocentric", "geocent", "Geocent"];
6017
+ var geocent_default = {
6018
+ init: init30,
6019
+ forward: forward29,
6020
+ inverse: inverse29,
6021
+ names: names31
6022
+ };
6541
6023
 
6542
6024
  // ../../node_modules/proj4/projs.js
6543
6025
  function projs_default(proj42) {
@@ -6569,108 +6051,52 @@
6569
6051
  proj42.Proj.projections.add(robin_default);
6570
6052
  proj42.Proj.projections.add(geocent_default);
6571
6053
  }
6572
- var init_projs = __esm({
6573
- "../../node_modules/proj4/projs.js"() {
6574
- init_tmerc();
6575
- init_etmerc();
6576
- init_utm();
6577
- init_sterea();
6578
- init_stere();
6579
- init_somerc();
6580
- init_omerc();
6581
- init_lcc();
6582
- init_krovak();
6583
- init_cass();
6584
- init_laea();
6585
- init_aea();
6586
- init_gnom();
6587
- init_cea();
6588
- init_eqc();
6589
- init_poly();
6590
- init_nzmg();
6591
- init_mill();
6592
- init_sinu();
6593
- init_moll();
6594
- init_eqdc();
6595
- init_vandg();
6596
- init_aeqd();
6597
- init_ortho();
6598
- init_qsc();
6599
- init_robin();
6600
- init_geocent();
6601
- }
6602
- });
6603
6054
 
6604
6055
  // ../../node_modules/proj4/lib/index.js
6605
- var lib_default;
6606
- var init_lib = __esm({
6607
- "../../node_modules/proj4/lib/index.js"() {
6608
- init_core();
6609
- init_Proj();
6610
- init_Point();
6611
- init_toPoint();
6612
- init_defs();
6613
- init_transform2();
6614
- init_mgrs();
6615
- init_projs();
6616
- core_default.defaultDatum = "WGS84";
6617
- core_default.Proj = Proj_default;
6618
- core_default.WGS84 = new core_default.Proj("WGS84");
6619
- core_default.Point = Point_default;
6620
- core_default.toPoint = toPoint_default;
6621
- core_default.defs = defs_default;
6622
- core_default.transform = transform;
6623
- core_default.mgrs = mgrs_default;
6624
- core_default.version = "__VERSION__";
6625
- projs_default(core_default);
6626
- lib_default = core_default;
6627
- }
6628
- });
6056
+ core_default.defaultDatum = "WGS84";
6057
+ core_default.Proj = Proj_default;
6058
+ core_default.WGS84 = new core_default.Proj("WGS84");
6059
+ core_default.Point = Point_default;
6060
+ core_default.toPoint = toPoint_default;
6061
+ core_default.defs = defs_default;
6062
+ core_default.transform = transform;
6063
+ core_default.mgrs = mgrs_default;
6064
+ core_default.version = "__VERSION__";
6065
+ projs_default(core_default);
6066
+ var lib_default = core_default;
6629
6067
 
6630
- // ../../node_modules/@math.gl/proj4/dist/esm/lib/proj4-projection.js
6631
- var Proj4Projection;
6632
- var init_proj4_projection = __esm({
6633
- "../../node_modules/@math.gl/proj4/dist/esm/lib/proj4-projection.js"() {
6634
- init_defineProperty();
6635
- init_lib();
6636
- Proj4Projection = class {
6637
- static defineProjectionAliases(aliases) {
6638
- const aliasArray = [];
6639
- for (const alias in aliases) {
6640
- aliasArray.push([alias, aliases[alias]]);
6641
- }
6642
- lib_default.defs(aliasArray);
6643
- }
6644
- constructor({
6645
- from = "WGS84",
6646
- to = "WGS84"
6647
- }) {
6648
- _defineProperty(this, "_projection", void 0);
6649
- this._projection = lib_default(from, to);
6650
- if (!this._projection) {
6651
- throw new Error("Invalid projection");
6652
- }
6653
- this.project = this.project.bind(this);
6654
- this.unproject = this.unproject.bind(this);
6655
- }
6656
- project(coord) {
6657
- return this._projection.forward(coord);
6658
- }
6659
- unproject(coord) {
6660
- return this._projection.inverse(coord);
6661
- }
6662
- };
6068
+ // ../../node_modules/@math.gl/proj4/dist/lib/proj4-projection.js
6069
+ var Proj4Projection = class {
6070
+ static defineProjectionAliases(aliases) {
6071
+ const aliasArray = [];
6072
+ for (const alias in aliases) {
6073
+ aliasArray.push([alias, aliases[alias]]);
6074
+ }
6075
+ lib_default.defs(aliasArray);
6663
6076
  }
6664
- });
6665
-
6666
- // ../../node_modules/@math.gl/proj4/dist/esm/index.js
6667
- var init_esm = __esm({
6668
- "../../node_modules/@math.gl/proj4/dist/esm/index.js"() {
6669
- init_proj4_projection();
6077
+ constructor({
6078
+ from = "WGS84",
6079
+ to = "WGS84"
6080
+ }) {
6081
+ _defineProperty(this, "_projection", void 0);
6082
+ this._projection = lib_default(from, to);
6083
+ if (!this._projection) {
6084
+ throw new Error("Invalid projection");
6085
+ }
6086
+ this.project = this.project.bind(this);
6087
+ this.unproject = this.unproject.bind(this);
6670
6088
  }
6671
- });
6089
+ project(coord) {
6090
+ return this._projection.forward(coord);
6091
+ }
6092
+ unproject(coord) {
6093
+ return this._projection.inverse(coord);
6094
+ }
6095
+ };
6672
6096
 
6673
6097
  // src/lib/parsers/parse-shx.ts
6098
+ var SHX_HEADER_SIZE = 100;
6099
+ var BIG_ENDIAN3 = false;
6674
6100
  function parseShx(arrayBuffer) {
6675
6101
  const headerView = new DataView(arrayBuffer, 0, SHX_HEADER_SIZE);
6676
6102
  const header = parseSHPHeader(headerView);
@@ -6687,14 +6113,6 @@
6687
6113
  lengths
6688
6114
  };
6689
6115
  }
6690
- var SHX_HEADER_SIZE, BIG_ENDIAN3;
6691
- var init_parse_shx = __esm({
6692
- "src/lib/parsers/parse-shx.ts"() {
6693
- init_parse_shp_header();
6694
- SHX_HEADER_SIZE = 100;
6695
- BIG_ENDIAN3 = false;
6696
- }
6697
- });
6698
6116
 
6699
6117
  // src/lib/streaming/zip-batch-iterators.ts
6700
6118
  async function* zipBatchIterators(iterator1, iterator2, shape) {
@@ -6704,7 +6122,10 @@
6704
6122
  let iterator2Done = false;
6705
6123
  while (!iterator1Done && !iterator2Done) {
6706
6124
  if (batch1Data.length === 0 && !iterator1Done) {
6707
- const { value, done } = await iterator1.next();
6125
+ const {
6126
+ value,
6127
+ done
6128
+ } = await iterator1.next();
6708
6129
  if (done) {
6709
6130
  iterator1Done = true;
6710
6131
  } else {
@@ -6712,7 +6133,10 @@
6712
6133
  }
6713
6134
  }
6714
6135
  if (batch2Data.length === 0 && !iterator2Done) {
6715
- const { value, done } = await iterator2.next();
6136
+ const {
6137
+ value,
6138
+ done
6139
+ } = await iterator2.next();
6716
6140
  if (done) {
6717
6141
  iterator2Done = true;
6718
6142
  } else {
@@ -6740,18 +6164,56 @@
6740
6164
  batch2.splice(0, batchLength);
6741
6165
  return batch;
6742
6166
  }
6743
- var init_zip_batch_iterators = __esm({
6744
- "src/lib/streaming/zip-batch-iterators.ts"() {
6745
- }
6746
- });
6747
6167
 
6748
6168
  // src/lib/parsers/parse-dbf.ts
6169
+ var LITTLE_ENDIAN4 = true;
6170
+ var DBF_HEADER_SIZE = 32;
6171
+ var STATE2 = /* @__PURE__ */ function(STATE3) {
6172
+ STATE3[STATE3["START"] = 0] = "START";
6173
+ STATE3[STATE3["FIELD_DESCRIPTORS"] = 1] = "FIELD_DESCRIPTORS";
6174
+ STATE3[STATE3["FIELD_PROPERTIES"] = 2] = "FIELD_PROPERTIES";
6175
+ STATE3[STATE3["END"] = 3] = "END";
6176
+ STATE3[STATE3["ERROR"] = 4] = "ERROR";
6177
+ return STATE3;
6178
+ }(STATE2 || {});
6179
+ var DBFParser = class {
6180
+ binaryReader = new BinaryChunkReader();
6181
+ state = STATE2.START;
6182
+ result = {
6183
+ data: []
6184
+ };
6185
+ constructor(options) {
6186
+ this.textDecoder = new TextDecoder(options.encoding);
6187
+ }
6188
+ /**
6189
+ * @param arrayBuffer
6190
+ */
6191
+ write(arrayBuffer) {
6192
+ this.binaryReader.write(arrayBuffer);
6193
+ this.state = parseState2(this.state, this.result, this.binaryReader, this.textDecoder);
6194
+ }
6195
+ end() {
6196
+ this.binaryReader.end();
6197
+ this.state = parseState2(this.state, this.result, this.binaryReader, this.textDecoder);
6198
+ if (this.state !== STATE2.END) {
6199
+ this.state = STATE2.ERROR;
6200
+ this.result.error = "DBF incomplete file";
6201
+ }
6202
+ }
6203
+ };
6749
6204
  function parseDBF(arrayBuffer, options = {}) {
6750
- const { encoding = "latin1" } = options.dbf || {};
6751
- const dbfParser = new DBFParser({ encoding });
6205
+ const {
6206
+ encoding = "latin1"
6207
+ } = options.dbf || {};
6208
+ const dbfParser = new DBFParser({
6209
+ encoding
6210
+ });
6752
6211
  dbfParser.write(arrayBuffer);
6753
6212
  dbfParser.end();
6754
- const { data, schema } = dbfParser.result;
6213
+ const {
6214
+ data,
6215
+ schema
6216
+ } = dbfParser.result;
6755
6217
  const shape = options?.tables?.format || options?.dbf?.shape;
6756
6218
  switch (shape) {
6757
6219
  case "object-row-table": {
@@ -6763,15 +6225,22 @@
6763
6225
  return table;
6764
6226
  }
6765
6227
  case "table":
6766
- return { schema, rows: data };
6228
+ return {
6229
+ schema,
6230
+ rows: data
6231
+ };
6767
6232
  case "rows":
6768
6233
  default:
6769
6234
  return data;
6770
6235
  }
6771
6236
  }
6772
6237
  async function* parseDBFInBatches(asyncIterator, options = {}) {
6773
- const { encoding = "latin1" } = options.dbf || {};
6774
- const parser = new DBFParser({ encoding });
6238
+ const {
6239
+ encoding = "latin1"
6240
+ } = options.dbf || {};
6241
+ const parser = new DBFParser({
6242
+ encoding
6243
+ });
6775
6244
  let headerReturned = false;
6776
6245
  for await (const arrayBuffer of asyncIterator) {
6777
6246
  parser.write(arrayBuffer);
@@ -6793,10 +6262,10 @@
6793
6262
  while (true) {
6794
6263
  try {
6795
6264
  switch (state) {
6796
- case 4:
6797
- case 3:
6265
+ case STATE2.ERROR:
6266
+ case STATE2.END:
6798
6267
  return state;
6799
- case 0:
6268
+ case STATE2.START:
6800
6269
  const dataView = binaryReader.getDataView(DBF_HEADER_SIZE);
6801
6270
  if (!dataView) {
6802
6271
  return state;
@@ -6807,10 +6276,13 @@
6807
6276
  rowsTotal: result.dbfHeader.nRecords,
6808
6277
  rows: 0
6809
6278
  };
6810
- state = 1;
6279
+ state = STATE2.FIELD_DESCRIPTORS;
6811
6280
  break;
6812
- case 1:
6813
- const fieldDescriptorView = binaryReader.getDataView(result.dbfHeader.headerLength - DBF_HEADER_SIZE);
6281
+ case STATE2.FIELD_DESCRIPTORS:
6282
+ const fieldDescriptorView = binaryReader.getDataView(
6283
+ // @ts-ignore
6284
+ result.dbfHeader.headerLength - DBF_HEADER_SIZE
6285
+ );
6814
6286
  if (!fieldDescriptorView) {
6815
6287
  return state;
6816
6288
  }
@@ -6819,11 +6291,14 @@
6819
6291
  fields: result.dbfFields.map((dbfField) => makeField(dbfField)),
6820
6292
  metadata: {}
6821
6293
  };
6822
- state = 2;
6294
+ state = STATE2.FIELD_PROPERTIES;
6823
6295
  binaryReader.skip(1);
6824
6296
  break;
6825
- case 2:
6826
- const { recordLength = 0, nRecords = 0 } = result?.dbfHeader || {};
6297
+ case STATE2.FIELD_PROPERTIES:
6298
+ const {
6299
+ recordLength = 0,
6300
+ nRecords = 0
6301
+ } = result?.dbfHeader || {};
6827
6302
  while (result.data.length < nRecords) {
6828
6303
  const recordView = binaryReader.getDataView(recordLength - 1);
6829
6304
  if (!recordView) {
@@ -6834,15 +6309,15 @@
6834
6309
  result.data.push(row);
6835
6310
  result.progress.rows = result.data.length;
6836
6311
  }
6837
- state = 3;
6312
+ state = STATE2.END;
6838
6313
  break;
6839
6314
  default:
6840
- state = 4;
6315
+ state = STATE2.ERROR;
6841
6316
  result.error = `illegal parser state ${state}`;
6842
6317
  return state;
6843
6318
  }
6844
6319
  } catch (error) {
6845
- state = 4;
6320
+ state = STATE2.ERROR;
6846
6321
  result.error = `DBF parsing failed: ${error.message}`;
6847
6322
  return state;
6848
6323
  }
@@ -6850,12 +6325,17 @@
6850
6325
  }
6851
6326
  function parseDBFHeader(headerView) {
6852
6327
  return {
6328
+ // Last updated date
6853
6329
  year: headerView.getUint8(1) + 1900,
6854
6330
  month: headerView.getUint8(2),
6855
6331
  day: headerView.getUint8(3),
6332
+ // Number of records in data file
6856
6333
  nRecords: headerView.getUint32(4, LITTLE_ENDIAN4),
6334
+ // Length of header in bytes
6857
6335
  headerLength: headerView.getUint16(8, LITTLE_ENDIAN4),
6336
+ // Length of each record
6858
6337
  recordLength: headerView.getUint16(10, LITTLE_ENDIAN4),
6338
+ // Not sure if this is usually set
6859
6339
  languageDriver: headerView.getUint8(29)
6860
6340
  };
6861
6341
  }
@@ -6918,100 +6398,104 @@
6918
6398
  function parseCharacter(text) {
6919
6399
  return text.trim() || null;
6920
6400
  }
6921
- function makeField({ name, dataType, fieldLength, decimal }) {
6401
+ function makeField({
6402
+ name,
6403
+ dataType,
6404
+ fieldLength,
6405
+ decimal
6406
+ }) {
6922
6407
  switch (dataType) {
6923
6408
  case "B":
6924
- return { name, type: "float64", nullable: true, metadata: {} };
6409
+ return {
6410
+ name,
6411
+ type: "float64",
6412
+ nullable: true,
6413
+ metadata: {}
6414
+ };
6925
6415
  case "C":
6926
- return { name, type: "utf8", nullable: true, metadata: {} };
6416
+ return {
6417
+ name,
6418
+ type: "utf8",
6419
+ nullable: true,
6420
+ metadata: {}
6421
+ };
6927
6422
  case "F":
6928
- return { name, type: "float64", nullable: true, metadata: {} };
6423
+ return {
6424
+ name,
6425
+ type: "float64",
6426
+ nullable: true,
6427
+ metadata: {}
6428
+ };
6929
6429
  case "N":
6930
- return { name, type: "float64", nullable: true, metadata: {} };
6430
+ return {
6431
+ name,
6432
+ type: "float64",
6433
+ nullable: true,
6434
+ metadata: {}
6435
+ };
6931
6436
  case "O":
6932
- return { name, type: "float64", nullable: true, metadata: {} };
6437
+ return {
6438
+ name,
6439
+ type: "float64",
6440
+ nullable: true,
6441
+ metadata: {}
6442
+ };
6933
6443
  case "D":
6934
- return { name, type: "timestamp-millisecond", nullable: true, metadata: {} };
6444
+ return {
6445
+ name,
6446
+ type: "timestamp-millisecond",
6447
+ nullable: true,
6448
+ metadata: {}
6449
+ };
6935
6450
  case "L":
6936
- return { name, type: "bool", nullable: true, metadata: {} };
6451
+ return {
6452
+ name,
6453
+ type: "bool",
6454
+ nullable: true,
6455
+ metadata: {}
6456
+ };
6937
6457
  default:
6938
6458
  throw new Error("Unsupported data type");
6939
6459
  }
6940
6460
  }
6941
- var LITTLE_ENDIAN4, DBF_HEADER_SIZE, STATE2, DBFParser;
6942
- var init_parse_dbf = __esm({
6943
- "src/lib/parsers/parse-dbf.ts"() {
6944
- init_binary_chunk_reader();
6945
- LITTLE_ENDIAN4 = true;
6946
- DBF_HEADER_SIZE = 32;
6947
- (function(STATE3) {
6948
- STATE3[STATE3["START"] = 0] = "START";
6949
- STATE3[STATE3["FIELD_DESCRIPTORS"] = 1] = "FIELD_DESCRIPTORS";
6950
- STATE3[STATE3["FIELD_PROPERTIES"] = 2] = "FIELD_PROPERTIES";
6951
- STATE3[STATE3["END"] = 3] = "END";
6952
- STATE3[STATE3["ERROR"] = 4] = "ERROR";
6953
- })(STATE2 || (STATE2 = {}));
6954
- DBFParser = class {
6955
- constructor(options) {
6956
- this.binaryReader = new BinaryChunkReader();
6957
- this.state = 0;
6958
- this.result = {
6959
- data: []
6960
- };
6961
- this.textDecoder = new TextDecoder(options.encoding);
6962
- }
6963
- write(arrayBuffer) {
6964
- this.binaryReader.write(arrayBuffer);
6965
- this.state = parseState2(this.state, this.result, this.binaryReader, this.textDecoder);
6966
- }
6967
- end() {
6968
- this.binaryReader.end();
6969
- this.state = parseState2(this.state, this.result, this.binaryReader, this.textDecoder);
6970
- if (this.state !== 3) {
6971
- this.state = 4;
6972
- this.result.error = "DBF incomplete file";
6973
- }
6974
- }
6975
- };
6976
- }
6977
- });
6978
6461
 
6979
6462
  // src/dbf-loader.ts
6980
- var VERSION2, DBFWorkerLoader, DBFLoader;
6981
- var init_dbf_loader = __esm({
6982
- "src/dbf-loader.ts"() {
6983
- init_parse_dbf();
6984
- VERSION2 = typeof __VERSION__ !== "undefined" ? __VERSION__ : "latest";
6985
- DBFWorkerLoader = {
6986
- name: "DBF",
6987
- id: "dbf",
6988
- module: "shapefile",
6989
- version: VERSION2,
6990
- worker: true,
6991
- category: "table",
6992
- extensions: ["dbf"],
6993
- mimeTypes: ["application/x-dbf"],
6994
- options: {
6995
- dbf: {
6996
- encoding: "latin1"
6997
- }
6998
- }
6999
- };
7000
- DBFLoader = {
7001
- ...DBFWorkerLoader,
7002
- parse: async (arrayBuffer, options) => parseDBF(arrayBuffer, options),
7003
- parseSync: parseDBF,
7004
- parseInBatches(arrayBufferIterator, options) {
7005
- return parseDBFInBatches(arrayBufferIterator, options);
7006
- }
7007
- };
6463
+ var VERSION2 = typeof __VERSION__ !== "undefined" ? __VERSION__ : "latest";
6464
+ var DBFWorkerLoader = {
6465
+ name: "DBF",
6466
+ id: "dbf",
6467
+ module: "shapefile",
6468
+ version: VERSION2,
6469
+ worker: true,
6470
+ category: "table",
6471
+ extensions: ["dbf"],
6472
+ mimeTypes: ["application/x-dbf"],
6473
+ options: {
6474
+ dbf: {
6475
+ encoding: "latin1"
6476
+ }
7008
6477
  }
7009
- });
6478
+ };
6479
+ var DBFLoader = {
6480
+ ...DBFWorkerLoader,
6481
+ parse: async (arrayBuffer, options) => parseDBF(arrayBuffer, options),
6482
+ parseSync: parseDBF,
6483
+ parseInBatches(arrayBufferIterator, options) {
6484
+ return parseDBFInBatches(arrayBufferIterator, options);
6485
+ }
6486
+ };
7010
6487
 
7011
6488
  // src/lib/parsers/parse-shapefile.ts
7012
6489
  async function* parseShapefileInBatches(asyncIterator, options, context) {
7013
- const { reproject = false, _targetCrs = "WGS84" } = options?.gis || {};
7014
- const { shx, cpg, prj } = await loadShapefileSidecarFiles(options, context);
6490
+ const {
6491
+ reproject = false,
6492
+ _targetCrs = "WGS84"
6493
+ } = options?.gis || {};
6494
+ const {
6495
+ shx,
6496
+ cpg,
6497
+ prj
6498
+ } = await loadShapefileSidecarFiles(options, context);
7015
6499
  const shapeIterable = await parseInBatchesFromContext(asyncIterator, SHPLoader, options, context);
7016
6500
  const shapeIterator = shapeIterable[Symbol.asyncIterator]?.() || shapeIterable[Symbol.iterator]?.();
7017
6501
  let propertyIterator = null;
@@ -7019,7 +6503,9 @@
7019
6503
  if (dbfResponse?.ok) {
7020
6504
  const propertyIterable = await parseInBatchesFromContext(dbfResponse, DBFLoader, {
7021
6505
  ...options,
7022
- dbf: { encoding: cpg || "latin1" }
6506
+ dbf: {
6507
+ encoding: cpg || "latin1"
6508
+ }
7023
6509
  }, context);
7024
6510
  propertyIterator = propertyIterable[Symbol.asyncIterator]?.() || propertyIterable[Symbol.iterator]();
7025
6511
  }
@@ -7063,14 +6549,28 @@
7063
6549
  }
7064
6550
  }
7065
6551
  async function parseShapefile(arrayBuffer, options, context) {
7066
- const { reproject = false, _targetCrs = "WGS84" } = options?.gis || {};
7067
- const { shx, cpg, prj } = await loadShapefileSidecarFiles(options, context);
7068
- const { header, geometries } = await parseFromContext(arrayBuffer, SHPLoader, options, context);
6552
+ const {
6553
+ reproject = false,
6554
+ _targetCrs = "WGS84"
6555
+ } = options?.gis || {};
6556
+ const {
6557
+ shx,
6558
+ cpg,
6559
+ prj
6560
+ } = await loadShapefileSidecarFiles(options, context);
6561
+ const {
6562
+ header,
6563
+ geometries
6564
+ } = await parseFromContext(arrayBuffer, SHPLoader, options, context);
7069
6565
  const geojsonGeometries = parseGeometries(geometries);
7070
6566
  let properties = [];
7071
6567
  const dbfResponse = await context?.fetch(replaceExtension(context?.url, "dbf"));
7072
6568
  if (dbfResponse?.ok) {
7073
- properties = await parseFromContext(dbfResponse, DBFLoader, { dbf: { encoding: cpg || "latin1" } }, context);
6569
+ properties = await parseFromContext(dbfResponse, DBFLoader, {
6570
+ dbf: {
6571
+ encoding: cpg || "latin1"
6572
+ }
6573
+ }, context);
7074
6574
  }
7075
6575
  let features = joinProperties(geojsonGeometries, properties);
7076
6576
  if (reproject) {
@@ -7098,6 +6598,7 @@
7098
6598
  const feature = {
7099
6599
  type: "Feature",
7100
6600
  geometry,
6601
+ // properties can be undefined if dbfResponse above was empty
7101
6602
  properties: properties && properties[i] || {}
7102
6603
  };
7103
6604
  features.push(feature);
@@ -7108,11 +6609,17 @@
7108
6609
  if (!sourceCrs && !targetCrs) {
7109
6610
  return features;
7110
6611
  }
7111
- const projection = new Proj4Projection({ from: sourceCrs || "WGS84", to: targetCrs || "WGS84" });
6612
+ const projection = new Proj4Projection({
6613
+ from: sourceCrs || "WGS84",
6614
+ to: targetCrs || "WGS84"
6615
+ });
7112
6616
  return transformGeoJsonCoords(features, (coord) => projection.project(coord));
7113
6617
  }
7114
6618
  async function loadShapefileSidecarFiles(options, context) {
7115
- const { url, fetch } = context;
6619
+ const {
6620
+ url,
6621
+ fetch
6622
+ } = context;
7116
6623
  const shxPromise = fetch(replaceExtension(url, "shx"));
7117
6624
  const cpgPromise = fetch(replaceExtension(url, "cpg"));
7118
6625
  const prjPromise = fetch(replaceExtension(url, "prj"));
@@ -7162,106 +6669,75 @@
7162
6669
  }
7163
6670
  return extIndex;
7164
6671
  }
7165
- var init_parse_shapefile = __esm({
7166
- "src/lib/parsers/parse-shapefile.ts"() {
7167
- init_src();
7168
- init_src2();
7169
- init_esm();
7170
- init_parse_shx();
7171
- init_zip_batch_iterators();
7172
- init_shp_loader();
7173
- init_dbf_loader();
7174
- }
7175
- });
7176
6672
 
7177
6673
  // src/shapefile-loader.ts
7178
- var VERSION3, ShapefileLoader;
7179
- var init_shapefile_loader = __esm({
7180
- "src/shapefile-loader.ts"() {
7181
- init_shp_loader();
7182
- init_parse_shapefile();
7183
- VERSION3 = typeof __VERSION__ !== "undefined" ? __VERSION__ : "latest";
7184
- ShapefileLoader = {
7185
- name: "Shapefile",
7186
- id: "shapefile",
7187
- module: "shapefile",
7188
- version: VERSION3,
7189
- category: "geometry",
7190
- extensions: ["shp"],
7191
- mimeTypes: ["application/octet-stream"],
7192
- tests: [new Uint8Array(SHP_MAGIC_NUMBER2).buffer],
7193
- options: {
7194
- shapefile: {},
7195
- shp: {
7196
- _maxDimensions: 4
7197
- }
7198
- },
7199
- parse: parseShapefile,
7200
- parseInBatches: parseShapefileInBatches
7201
- };
7202
- }
7203
- });
6674
+ var VERSION3 = typeof __VERSION__ !== "undefined" ? __VERSION__ : "latest";
6675
+ var ShapefileLoader = {
6676
+ name: "Shapefile",
6677
+ id: "shapefile",
6678
+ module: "shapefile",
6679
+ version: VERSION3,
6680
+ category: "geometry",
6681
+ extensions: ["shp"],
6682
+ mimeTypes: ["application/octet-stream"],
6683
+ tests: [new Uint8Array(SHP_MAGIC_NUMBER2).buffer],
6684
+ options: {
6685
+ shapefile: {},
6686
+ shp: {
6687
+ _maxDimensions: 4
6688
+ }
6689
+ },
6690
+ parse: parseShapefile,
6691
+ parseInBatches: parseShapefileInBatches
6692
+ };
7204
6693
 
7205
6694
  // src/lib/streaming/binary-reader.ts
7206
- var BinaryReader;
7207
- var init_binary_reader = __esm({
7208
- "src/lib/streaming/binary-reader.ts"() {
7209
- BinaryReader = class {
7210
- constructor(arrayBuffer) {
7211
- this.offset = 0;
7212
- this.arrayBuffer = arrayBuffer;
7213
- }
7214
- hasAvailableBytes(bytes) {
7215
- return this.arrayBuffer.byteLength - this.offset >= bytes;
7216
- }
7217
- getDataView(bytes) {
7218
- if (bytes && !this.hasAvailableBytes(bytes)) {
7219
- throw new Error("binary data exhausted");
7220
- }
7221
- const dataView = bytes ? new DataView(this.arrayBuffer, this.offset, bytes) : new DataView(this.arrayBuffer, this.offset);
7222
- this.offset += bytes;
7223
- return dataView;
7224
- }
7225
- skip(bytes) {
7226
- this.offset += bytes;
7227
- }
7228
- rewind(bytes) {
7229
- this.offset -= bytes;
7230
- }
7231
- };
7232
- }
7233
- });
7234
-
7235
- // src/index.ts
7236
- var src_exports = {};
7237
- __export(src_exports, {
7238
- DBFLoader: () => DBFLoader,
7239
- DBFWorkerLoader: () => DBFWorkerLoader,
7240
- SHPLoader: () => SHPLoader,
7241
- SHPWorkerLoader: () => SHPWorkerLoader,
7242
- ShapefileLoader: () => ShapefileLoader,
7243
- _BinaryChunkReader: () => BinaryChunkReader,
7244
- _BinaryReader: () => BinaryReader,
7245
- _zipBatchIterators: () => zipBatchIterators
7246
- });
7247
- var init_src3 = __esm({
7248
- "src/index.ts"() {
7249
- init_shapefile_loader();
7250
- init_dbf_loader();
7251
- init_shp_loader();
7252
- init_binary_reader();
7253
- init_binary_chunk_reader();
7254
- init_zip_batch_iterators();
7255
- }
7256
- });
7257
-
7258
- // src/bundle.ts
7259
- var require_bundle = __commonJS({
7260
- "src/bundle.ts"(exports4, module) {
7261
- var moduleExports = (init_src3(), src_exports);
7262
- globalThis.loaders = globalThis.loaders || {};
7263
- module.exports = Object.assign(globalThis.loaders, moduleExports);
6695
+ var BinaryReader = class {
6696
+ constructor(arrayBuffer) {
6697
+ this.offset = 0;
6698
+ this.arrayBuffer = arrayBuffer;
6699
+ }
6700
+ /**
6701
+ * Checks if there are available bytes in data
6702
+ *
6703
+ * @param bytes
6704
+ * @returns boolean
6705
+ */
6706
+ hasAvailableBytes(bytes) {
6707
+ return this.arrayBuffer.byteLength - this.offset >= bytes;
6708
+ }
6709
+ /**
6710
+ * Get the required number of bytes from the iterator
6711
+ *
6712
+ * @param bytes
6713
+ * @returns Dataview
6714
+ */
6715
+ getDataView(bytes) {
6716
+ if (bytes && !this.hasAvailableBytes(bytes)) {
6717
+ throw new Error("binary data exhausted");
6718
+ }
6719
+ const dataView = bytes ? new DataView(this.arrayBuffer, this.offset, bytes) : new DataView(this.arrayBuffer, this.offset);
6720
+ this.offset += bytes;
6721
+ return dataView;
6722
+ }
6723
+ /**
6724
+ * Skipping
6725
+ *
6726
+ * @param bytes
6727
+ */
6728
+ skip(bytes) {
6729
+ this.offset += bytes;
6730
+ }
6731
+ /**
6732
+ * Rewinding
6733
+ *
6734
+ * @param bytes
6735
+ */
6736
+ rewind(bytes) {
6737
+ this.offset -= bytes;
7264
6738
  }
7265
- });
7266
- require_bundle();
6739
+ };
6740
+ return __toCommonJS(src_exports);
7267
6741
  })();
6742
+ return __exports__;
6743
+ });