@math.gl/wkb 5.0.0-alpha.2 → 5.0.0-alpha.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.
- package/dist/index.cjs +18 -2
- package/dist/index.cjs.map +1 -1
- package/dist/wkb-builder.d.ts +5 -1
- package/dist/wkb-builder.d.ts.map +1 -1
- package/dist/wkb-builder.js +19 -2
- package/dist/wkb-builder.js.map +1 -1
- package/package.json +2 -2
- package/src/wkb-builder.ts +22 -3
package/dist/index.cjs
CHANGED
|
@@ -590,16 +590,30 @@ var WKBBuilder = class _WKBBuilder {
|
|
|
590
590
|
this.writeFloat64(coordinate[index] ?? Number.NaN);
|
|
591
591
|
}
|
|
592
592
|
}
|
|
593
|
+
/** Temporarily changes the semantic dimension for a nested geometry. */
|
|
594
|
+
withDimension(dimension, callback) {
|
|
595
|
+
const previous = this.dimension;
|
|
596
|
+
this.dimension = dimension;
|
|
597
|
+
try {
|
|
598
|
+
return callback();
|
|
599
|
+
} finally {
|
|
600
|
+
this.dimension = previous;
|
|
601
|
+
}
|
|
602
|
+
}
|
|
593
603
|
/** Returns the number of bytes measured or written. */
|
|
594
604
|
finishGeometry() {
|
|
595
605
|
return this.byteOffset - this.startByteOffset;
|
|
596
606
|
}
|
|
597
607
|
/** Measures geometry callbacks and returns contiguous Binary offsets. */
|
|
598
608
|
static measureGeometryArray(geometryWriters, options = {}) {
|
|
609
|
+
var _a;
|
|
599
610
|
const valueOffsets = new Int32Array(geometryWriters.length + 1);
|
|
600
611
|
for (let geometryIndex = 0; geometryIndex < geometryWriters.length; geometryIndex++) {
|
|
601
612
|
const geometryWriter = geometryWriters[geometryIndex];
|
|
602
|
-
const byteLength = geometryWriter ? measureGeometry(geometryWriter,
|
|
613
|
+
const byteLength = geometryWriter ? measureGeometry(geometryWriter, {
|
|
614
|
+
...options,
|
|
615
|
+
dimension: ((_a = options.dimensionResolver) == null ? void 0 : _a.call(options, geometryIndex)) ?? options.dimension
|
|
616
|
+
}) : 0;
|
|
603
617
|
const nextOffset = valueOffsets[geometryIndex] + byteLength;
|
|
604
618
|
if (nextOffset > 2147483647)
|
|
605
619
|
throw new Error("WKB geometry array exceeds Int32 offsets");
|
|
@@ -609,6 +623,7 @@ var WKBBuilder = class _WKBBuilder {
|
|
|
609
623
|
}
|
|
610
624
|
/** Writes geometry callbacks into an existing contiguous values buffer. */
|
|
611
625
|
static writeGeometryArray(geometryWriters, valueOffsets, values, options = {}) {
|
|
626
|
+
var _a;
|
|
612
627
|
if (valueOffsets.length !== geometryWriters.length + 1) {
|
|
613
628
|
throw new Error("WKB valueOffsets length must equal geometry count plus one");
|
|
614
629
|
}
|
|
@@ -623,7 +638,8 @@ var WKBBuilder = class _WKBBuilder {
|
|
|
623
638
|
mode: "write",
|
|
624
639
|
target: values,
|
|
625
640
|
byteOffset: valueOffsets[geometryIndex],
|
|
626
|
-
...options
|
|
641
|
+
...options,
|
|
642
|
+
dimension: ((_a = options.dimensionResolver) == null ? void 0 : _a.call(options, geometryIndex)) ?? options.dimension
|
|
627
643
|
});
|
|
628
644
|
geometryWriter(builder);
|
|
629
645
|
const byteLength = builder.finishGeometry();
|
package/dist/index.cjs.map
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../src/index.ts", "../src/types.ts", "../src/wkb-reader.ts", "../src/wkb.ts", "../src/wkb-builder.ts", "../src/wkt.ts"],
|
|
4
|
-
"mappings": "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",
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["validateLimit", "assertRemaining", "readCount"]
|
|
6
6
|
}
|
package/dist/wkb-builder.d.ts
CHANGED
|
@@ -8,6 +8,8 @@ export type WKBCoordinateTransform = (coordinate: readonly number[], dimension:
|
|
|
8
8
|
export type WKBBuilderBaseOptions = Readonly<{
|
|
9
9
|
/** Coordinate dimension written by every geometry header. Defaults to `xy`. */
|
|
10
10
|
dimension?: WellKnownDimension;
|
|
11
|
+
/** Optional per-row dimension resolver used by geometry-array helpers. */
|
|
12
|
+
dimensionResolver?: (geometryIndex: number) => WellKnownDimension;
|
|
11
13
|
/** Byte order written by every geometry header. Defaults to little endian. */
|
|
12
14
|
byteOrder?: 'little-endian' | 'big-endian';
|
|
13
15
|
/** Optional EWKB spatial reference identifier. */
|
|
@@ -43,7 +45,7 @@ export type WKBGeometryArray = Readonly<{
|
|
|
43
45
|
*/
|
|
44
46
|
export declare class WKBBuilder {
|
|
45
47
|
readonly mode: 'measure' | 'write';
|
|
46
|
-
|
|
48
|
+
dimension: WellKnownDimension;
|
|
47
49
|
readonly littleEndian: boolean;
|
|
48
50
|
readonly srid?: number;
|
|
49
51
|
readonly transform?: WKBCoordinateTransform;
|
|
@@ -70,6 +72,8 @@ export declare class WKBBuilder {
|
|
|
70
72
|
beginMultiPolygon(polygonCount: number): void;
|
|
71
73
|
/** Writes one coordinate using the builder's semantic dimension. */
|
|
72
74
|
writeCoordinate(x: number, y: number, z?: number, m?: number): void;
|
|
75
|
+
/** Temporarily changes the semantic dimension for a nested geometry. */
|
|
76
|
+
withDimension<T>(dimension: WellKnownDimension, callback: () => T): T;
|
|
73
77
|
/** Returns the number of bytes measured or written. */
|
|
74
78
|
finishGeometry(): number;
|
|
75
79
|
/** Measures geometry callbacks and returns contiguous Binary offsets. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wkb-builder.d.ts","sourceRoot":"","sources":["../src/wkb-builder.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,kBAAkB,EAAC,mBAAgB;AAChD,OAAO,KAAK,EAAC,eAAe,EAAC,wBAAqB;AAElD,4DAA4D;AAC5D,MAAM,MAAM,iBAAiB,GAAG,CAAC,OAAO,EAAE,UAAU,KAAK,IAAI,CAAC;AAE9D,+DAA+D;AAC/D,MAAM,MAAM,sBAAsB,GAAG,CACnC,UAAU,EAAE,SAAS,MAAM,EAAE,EAC7B,SAAS,EAAE,kBAAkB,KAC1B,SAAS,MAAM,EAAE,CAAC;AAEvB,yDAAyD;AACzD,MAAM,MAAM,qBAAqB,GAAG,QAAQ,CAAC;IAC3C,+EAA+E;IAC/E,SAAS,CAAC,EAAE,kBAAkB,CAAC;IAC/B,8EAA8E;IAC9E,SAAS,CAAC,EAAE,eAAe,GAAG,YAAY,CAAC;IAC3C,kDAAkD;IAClD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,4EAA4E;IAC5E,SAAS,CAAC,EAAE,sBAAsB,CAAC;CACpC,CAAC,CAAC;AAEH,4DAA4D;AAC5D,MAAM,MAAM,wBAAwB,GAAG,qBAAqB,GAAG,QAAQ,CAAC;IAAC,IAAI,EAAE,SAAS,CAAA;CAAC,CAAC,CAAC;AAE3F,mEAAmE;AACnE,MAAM,MAAM,sBAAsB,GAAG,qBAAqB,GACxD,QAAQ,CAAC;IACP,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,EAAE,eAAe,GAAG,eAAe,CAAC;IAC1C,8DAA8D;IAC9D,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC,CAAC;AAEL,kDAAkD;AAClD,MAAM,MAAM,iBAAiB,GAAG,wBAAwB,GAAG,sBAAsB,CAAC;AAElF,oFAAoF;AACpF,MAAM,MAAM,gBAAgB,GAAG,QAAQ,CAAC;IACtC,YAAY,EAAE,UAAU,CAAC;IACzB,MAAM,EAAE,UAAU,CAAC;IACnB,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC,CAAC;AAYH;;;;;GAKG;AACH,qBAAa,UAAU;IACrB,QAAQ,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO,CAAC;IACnC,
|
|
1
|
+
{"version":3,"file":"wkb-builder.d.ts","sourceRoot":"","sources":["../src/wkb-builder.ts"],"names":[],"mappings":"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"}
|
package/dist/wkb-builder.js
CHANGED
|
@@ -112,6 +112,17 @@ export class WKBBuilder {
|
|
|
112
112
|
this.writeFloat64(coordinate[index] ?? Number.NaN);
|
|
113
113
|
}
|
|
114
114
|
}
|
|
115
|
+
/** Temporarily changes the semantic dimension for a nested geometry. */
|
|
116
|
+
withDimension(dimension, callback) {
|
|
117
|
+
const previous = this.dimension;
|
|
118
|
+
this.dimension = dimension;
|
|
119
|
+
try {
|
|
120
|
+
return callback();
|
|
121
|
+
}
|
|
122
|
+
finally {
|
|
123
|
+
this.dimension = previous;
|
|
124
|
+
}
|
|
125
|
+
}
|
|
115
126
|
/** Returns the number of bytes measured or written. */
|
|
116
127
|
finishGeometry() {
|
|
117
128
|
return this.byteOffset - this.startByteOffset;
|
|
@@ -121,7 +132,12 @@ export class WKBBuilder {
|
|
|
121
132
|
const valueOffsets = new Int32Array(geometryWriters.length + 1);
|
|
122
133
|
for (let geometryIndex = 0; geometryIndex < geometryWriters.length; geometryIndex++) {
|
|
123
134
|
const geometryWriter = geometryWriters[geometryIndex];
|
|
124
|
-
const byteLength = geometryWriter
|
|
135
|
+
const byteLength = geometryWriter
|
|
136
|
+
? measureGeometry(geometryWriter, {
|
|
137
|
+
...options,
|
|
138
|
+
dimension: options.dimensionResolver?.(geometryIndex) ?? options.dimension
|
|
139
|
+
})
|
|
140
|
+
: 0;
|
|
125
141
|
const nextOffset = valueOffsets[geometryIndex] + byteLength;
|
|
126
142
|
if (nextOffset > 0x7fffffff)
|
|
127
143
|
throw new Error('WKB geometry array exceeds Int32 offsets');
|
|
@@ -145,7 +161,8 @@ export class WKBBuilder {
|
|
|
145
161
|
mode: 'write',
|
|
146
162
|
target: values,
|
|
147
163
|
byteOffset: valueOffsets[geometryIndex],
|
|
148
|
-
...options
|
|
164
|
+
...options,
|
|
165
|
+
dimension: options.dimensionResolver?.(geometryIndex) ?? options.dimension
|
|
149
166
|
});
|
|
150
167
|
geometryWriter(builder);
|
|
151
168
|
const byteLength = builder.finishGeometry();
|
package/dist/wkb-builder.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wkb-builder.js","sourceRoot":"","sources":["../src/wkb-builder.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,+BAA+B;AAC/B,oCAAoC;
|
|
1
|
+
{"version":3,"file":"wkb-builder.js","sourceRoot":"","sources":["../src/wkb-builder.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
"publishConfig": {
|
|
7
7
|
"access": "public"
|
|
8
8
|
},
|
|
9
|
-
"version": "5.0.0-alpha.
|
|
9
|
+
"version": "5.0.0-alpha.3",
|
|
10
10
|
"keywords": [
|
|
11
11
|
"wkb",
|
|
12
12
|
"wkt",
|
|
@@ -33,5 +33,5 @@
|
|
|
33
33
|
"src"
|
|
34
34
|
],
|
|
35
35
|
"sideEffects": false,
|
|
36
|
-
"gitHead": "
|
|
36
|
+
"gitHead": "9887e5711acfceafb78d746dd8002629f1a4d398"
|
|
37
37
|
}
|
package/src/wkb-builder.ts
CHANGED
|
@@ -18,6 +18,8 @@ export type WKBCoordinateTransform = (
|
|
|
18
18
|
export type WKBBuilderBaseOptions = Readonly<{
|
|
19
19
|
/** Coordinate dimension written by every geometry header. Defaults to `xy`. */
|
|
20
20
|
dimension?: WellKnownDimension;
|
|
21
|
+
/** Optional per-row dimension resolver used by geometry-array helpers. */
|
|
22
|
+
dimensionResolver?: (geometryIndex: number) => WellKnownDimension;
|
|
21
23
|
/** Byte order written by every geometry header. Defaults to little endian. */
|
|
22
24
|
byteOrder?: 'little-endian' | 'big-endian';
|
|
23
25
|
/** Optional EWKB spatial reference identifier. */
|
|
@@ -67,7 +69,7 @@ const GEOMETRY_TYPE_CODES: Readonly<Record<WKBGeometryType, number>> = {
|
|
|
67
69
|
*/
|
|
68
70
|
export class WKBBuilder {
|
|
69
71
|
readonly mode: 'measure' | 'write';
|
|
70
|
-
|
|
72
|
+
dimension: WellKnownDimension;
|
|
71
73
|
readonly littleEndian: boolean;
|
|
72
74
|
readonly srid?: number;
|
|
73
75
|
readonly transform?: WKBCoordinateTransform;
|
|
@@ -181,6 +183,17 @@ export class WKBBuilder {
|
|
|
181
183
|
}
|
|
182
184
|
}
|
|
183
185
|
|
|
186
|
+
/** Temporarily changes the semantic dimension for a nested geometry. */
|
|
187
|
+
withDimension<T>(dimension: WellKnownDimension, callback: () => T): T {
|
|
188
|
+
const previous = this.dimension;
|
|
189
|
+
this.dimension = dimension;
|
|
190
|
+
try {
|
|
191
|
+
return callback();
|
|
192
|
+
} finally {
|
|
193
|
+
this.dimension = previous;
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
|
|
184
197
|
/** Returns the number of bytes measured or written. */
|
|
185
198
|
finishGeometry(): number {
|
|
186
199
|
return this.byteOffset - this.startByteOffset;
|
|
@@ -194,7 +207,12 @@ export class WKBBuilder {
|
|
|
194
207
|
const valueOffsets = new Int32Array(geometryWriters.length + 1);
|
|
195
208
|
for (let geometryIndex = 0; geometryIndex < geometryWriters.length; geometryIndex++) {
|
|
196
209
|
const geometryWriter = geometryWriters[geometryIndex];
|
|
197
|
-
const byteLength = geometryWriter
|
|
210
|
+
const byteLength = geometryWriter
|
|
211
|
+
? measureGeometry(geometryWriter, {
|
|
212
|
+
...options,
|
|
213
|
+
dimension: options.dimensionResolver?.(geometryIndex) ?? options.dimension
|
|
214
|
+
})
|
|
215
|
+
: 0;
|
|
198
216
|
const nextOffset = valueOffsets[geometryIndex] + byteLength;
|
|
199
217
|
if (nextOffset > 0x7fffffff) throw new Error('WKB geometry array exceeds Int32 offsets');
|
|
200
218
|
valueOffsets[geometryIndex + 1] = nextOffset;
|
|
@@ -222,7 +240,8 @@ export class WKBBuilder {
|
|
|
222
240
|
mode: 'write',
|
|
223
241
|
target: values,
|
|
224
242
|
byteOffset: valueOffsets[geometryIndex],
|
|
225
|
-
...options
|
|
243
|
+
...options,
|
|
244
|
+
dimension: options.dimensionResolver?.(geometryIndex) ?? options.dimension
|
|
226
245
|
});
|
|
227
246
|
geometryWriter(builder);
|
|
228
247
|
const byteLength = builder.finishGeometry();
|