@xyo-network/quadkey 2.72.9 → 2.73.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,328 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Quadkey = exports.isQuadkey = void 0;
4
- const tslib_1 = require("tslib");
5
- const assert_1 = require("@xylabs/assert");
6
- const bignumber_1 = require("@xylabs/bignumber");
7
- const buffer_1 = require("@xylabs/buffer");
8
- const sdk_geo_1 = require("@xyo-network/sdk-geo");
9
- const mapbox_gl_1 = require("mapbox-gl");
10
- const RelativeDirectionConstantLookup_1 = require("./RelativeDirectionConstantLookup");
11
- const utils_1 = require("./utils");
12
- tslib_1.__exportStar(require("./utils"), exports);
13
- const MAX_ZOOM = 124;
14
- const isQuadkey = (obj) => (obj === null || obj === void 0 ? void 0 : obj.type) === Quadkey.type;
15
- exports.isQuadkey = isQuadkey;
16
- class Quadkey {
17
- constructor(key = buffer_1.Buffer.alloc(32)) {
18
- this.type = Quadkey.type;
19
- this.key = buffer_1.Buffer.alloc(32);
20
- key.copy(this.key, this.key.length - key.length);
21
- this.guessZoom();
22
- }
23
- get base10String() {
24
- return this.bigNumber.toString(10);
25
- }
26
- get base4Hash() {
27
- const bn = new bignumber_1.BigNumber(this.id.toString('hex'), 16);
28
- const zoom = this.zoom;
29
- if (zoom === 0) {
30
- return '';
31
- }
32
- let quadkeySimple = bn.toString(4);
33
- while (quadkeySimple.length < zoom) {
34
- quadkeySimple = `0${quadkeySimple}`;
35
- }
36
- return quadkeySimple;
37
- }
38
- get base4HashLabel() {
39
- const hash = this.base4Hash;
40
- return hash.length === 0 ? 'fhr' : hash;
41
- }
42
- get bigNumber() {
43
- return new bignumber_1.BigNumber(`${this.key.toString('hex')}`, 'hex');
44
- }
45
- get boundingBox() {
46
- return (0, sdk_geo_1.tileToBoundingBox)(this.tile);
47
- }
48
- get buffer() {
49
- return this.key;
50
- }
51
- get center() {
52
- const result = (0, sdk_geo_1.boundingBoxToCenter)(this.boundingBox);
53
- return new mapbox_gl_1.LngLat(result[0], result[1]);
54
- }
55
- get children() {
56
- (0, assert_1.assertEx)(this.zoom < MAX_ZOOM - 1, 'Can not get children of bottom tiles');
57
- const result = [];
58
- const shiftedId = (0, utils_1.bitShiftLeft)((0, utils_1.bitShiftLeft)(this.id));
59
- for (let i = 0; i < 4; i++) {
60
- const currentLastByte = shiftedId.readUInt8(shiftedId.length - 1);
61
- shiftedId.writeUInt8((currentLastByte & 0xfc) | i, shiftedId.length - 1);
62
- result.push(new Quadkey().setId(shiftedId).setZoom(this.zoom + 1));
63
- }
64
- return result;
65
- }
66
- get gridLocation() {
67
- const tileData = (0, sdk_geo_1.tileFromQuadkey)(this.base4Hash);
68
- return {
69
- col: Math.pow(2, tileData[2]) - tileData[1] - 1,
70
- row: tileData[0],
71
- zoom: tileData[2],
72
- };
73
- }
74
- get hex() {
75
- return `0x${this.key.toString('hex')}`;
76
- }
77
- get id() {
78
- return this.buffer.slice(1);
79
- }
80
- get parent() {
81
- if (this.zoom > 0) {
82
- return new Quadkey().setId((0, utils_1.bitShiftRight)((0, utils_1.bitShiftRight)(this.id))).setZoom(this.zoom - 1);
83
- }
84
- }
85
- get siblings() {
86
- var _a;
87
- const siblings = (0, assert_1.assertEx)((_a = this.parent) === null || _a === void 0 ? void 0 : _a.children, `siblings: parentChildren ${this.base4Hash}`);
88
- const filteredSiblings = siblings.filter((quadkey) => this.compareTo(quadkey) !== 0);
89
- (0, assert_1.assertEx)(filteredSiblings.length === 3, `siblings: expected 3 [${filteredSiblings.length}]`);
90
- return filteredSiblings;
91
- }
92
- get tile() {
93
- return (0, sdk_geo_1.tileFromQuadkey)(this.base4Hash);
94
- }
95
- get valid() {
96
- const zoom = this.zoom;
97
- const shift = (MAX_ZOOM - zoom) * 2;
98
- const id = this.id;
99
- let testId = id;
100
- for (let i = 0; i < shift; i++) {
101
- testId = (0, utils_1.bitShiftLeft)(testId);
102
- }
103
- for (let i = 0; i < shift; i++) {
104
- testId = (0, utils_1.bitShiftRight)(testId);
105
- }
106
- return testId.compare(id) === 0;
107
- }
108
- get zoom() {
109
- return this.buffer.readUInt8(0);
110
- }
111
- static from(zoom, id) {
112
- return new Quadkey().setId(id).setZoom(zoom);
113
- }
114
- static fromBase10String(value) {
115
- return new Quadkey(buffer_1.Buffer.from((0, utils_1.padHex)(new bignumber_1.BigNumber(value, 10).toString(16)), 'hex'));
116
- }
117
- static fromBase16String(value) {
118
- const valueToUse = value.startsWith('0x') ? value.slice(2) : value;
119
- return new Quadkey(buffer_1.Buffer.from((0, utils_1.padHex)(valueToUse), 'hex'));
120
- }
121
- static fromBase4String(value) {
122
- if (value === 'fhr' || value === '') {
123
- return Quadkey.root;
124
- }
125
- if (value && value.length && value.length > 0) {
126
- const quadkey = new Quadkey(buffer_1.Buffer.from((0, utils_1.padHex)(new bignumber_1.BigNumber(value, 4).toString(16)), 'hex')).setZoom(value.length);
127
- return quadkey.valid ? quadkey : undefined;
128
- }
129
- }
130
- static fromBoundingBox(boundingBox, zoom) {
131
- const tiles = (0, sdk_geo_1.tilesFromBoundingBox)(boundingBox, Math.floor(zoom));
132
- const result = [];
133
- for (const tile of tiles) {
134
- result.push((0, assert_1.assertEx)(Quadkey.fromTile(tile), 'Bad Quadkey'));
135
- }
136
- return result;
137
- }
138
- static fromBuffer(value) {
139
- return Quadkey.fromBase16String(value.toString('hex'));
140
- }
141
- static fromLngLat(point, zoom) {
142
- const tile = (0, sdk_geo_1.tileFromPoint)(mapbox_gl_1.LngLat.convert(point), zoom);
143
- const quadkeyString = (0, sdk_geo_1.tileToQuadkey)(tile);
144
- return Quadkey.fromBase4String(quadkeyString);
145
- }
146
- static fromString(zoom, id, base = 10) {
147
- var _a;
148
- switch (base) {
149
- case 10:
150
- return (_a = Quadkey.fromBase10String(id)) === null || _a === void 0 ? void 0 : _a.setZoom(zoom);
151
- case 16:
152
- return Quadkey.fromBase16String(id).setZoom(zoom);
153
- default:
154
- throw Error(`Invalid base [${base}]`);
155
- }
156
- }
157
- static fromTile(tile) {
158
- return Quadkey.fromBase4String((0, sdk_geo_1.tileToQuadkey)(tile));
159
- }
160
- childrenByZoom(zoom) {
161
- // if we are limiting by zoom, and we are already at that limit, just return this quadkey
162
- if (zoom && zoom === this.zoom) {
163
- return [this];
164
- }
165
- // recursively get children
166
- let deepResult = [];
167
- for (const quadkey of this.children) {
168
- deepResult = deepResult.concat(quadkey.childrenByZoom(zoom));
169
- }
170
- return deepResult;
171
- }
172
- clone() {
173
- return Quadkey.fromBase10String(this.base10String);
174
- }
175
- compareTo(quadkey) {
176
- return this.bigNumber.cmp(quadkey.bigNumber);
177
- }
178
- equals(obj) {
179
- return obj.base4HashLabel == this.base4HashLabel;
180
- }
181
- geoJson() {
182
- var _a;
183
- this._geoJson = (_a = this._geoJson) !== null && _a !== void 0 ? _a : new sdk_geo_1.GeoJson(this.base4Hash);
184
- return this._geoJson;
185
- }
186
- getGridBoundingBox(size) {
187
- const hash = this.base4Hash;
188
- let index = 0;
189
- let left = 0;
190
- let top = 0;
191
- let blockSize = size;
192
- while (index < hash.length) {
193
- blockSize >>= 1;
194
- switch (hash[index]) {
195
- case '1':
196
- left += blockSize;
197
- break;
198
- case '2':
199
- top += blockSize;
200
- break;
201
- case '3':
202
- left += blockSize;
203
- top += blockSize;
204
- break;
205
- }
206
- index++;
207
- }
208
- if (blockSize < 2) {
209
- blockSize = 2;
210
- }
211
- return {
212
- height: blockSize,
213
- left,
214
- top,
215
- width: blockSize,
216
- };
217
- }
218
- /** @deprecated use .gridLocation instead */
219
- getGridLocation() {
220
- return this.gridLocation;
221
- }
222
- isInBoundingBox(boundingBox) {
223
- const tileBoundingBox = (0, sdk_geo_1.tileToBoundingBox)(this.tile);
224
- return (boundingBox.contains(tileBoundingBox.getNorthEast()) ||
225
- boundingBox.contains(tileBoundingBox.getNorthWest()) ||
226
- boundingBox.contains(tileBoundingBox.getSouthEast()) ||
227
- boundingBox.contains(tileBoundingBox.getSouthWest()));
228
- }
229
- relative(direction) {
230
- const directionConstant = (0, assert_1.assertEx)(RelativeDirectionConstantLookup_1.RelativeDirectionConstantLookup[direction], 'Invalid direction');
231
- let quadkey = this.base4Hash;
232
- if (quadkey.length === 0) {
233
- return this;
234
- }
235
- let index = quadkey.length - 1;
236
- while (index >= 0) {
237
- let number = parseInt(quadkey.charAt(index));
238
- number += directionConstant;
239
- if (number > 3) {
240
- number -= 4;
241
- quadkey = quadkey.substring(0, index) + number.toString() + quadkey.substring(index + 1);
242
- index--;
243
- }
244
- else if (number < 0) {
245
- number += 4;
246
- quadkey = quadkey.substring(0, index) + number.toString() + quadkey.substring(index + 1);
247
- index--;
248
- }
249
- else {
250
- index = -1;
251
- }
252
- }
253
- return Quadkey.fromBase4String(quadkey);
254
- }
255
- setId(id) {
256
- this.setKey(this.zoom, id);
257
- return this;
258
- }
259
- setKey(zoom, id) {
260
- id.copy(this.key, this.key.length - id.length);
261
- this.key.writeUInt8(zoom, 0);
262
- return this;
263
- }
264
- setZoom(zoom) {
265
- (0, assert_1.assertEx)(zoom < MAX_ZOOM, `Invalid zoom [${zoom}] max=${MAX_ZOOM}`);
266
- this.setKey(zoom, this.id);
267
- return this;
268
- }
269
- /** @deprecated use .base10String*/
270
- toBase10String() {
271
- return this.base10String;
272
- }
273
- /** @deprecated use .base4Hash */
274
- toBase4Hash() {
275
- return this.base4Hash;
276
- }
277
- /** @deprecated use .base4HashLabel */
278
- toBase4HashLabel() {
279
- const hash = this.base4HashLabel;
280
- return hash.length === 0 ? 'fhr' : hash;
281
- }
282
- /** @deprecated use .bigNumber */
283
- toBigNumber() {
284
- return this.bigNumber;
285
- }
286
- /** @deprecated use .boundingBox */
287
- toBoundingBox() {
288
- return this.boundingBox;
289
- }
290
- /** @deprecated use .buffer */
291
- toBuffer() {
292
- return this.buffer;
293
- }
294
- /** @deprecated use .center */
295
- toCenter() {
296
- return this.center;
297
- }
298
- /** @deprecated use .hex instead */
299
- toHex() {
300
- return this.hex;
301
- }
302
- toJSON() {
303
- return this.base4HashLabel;
304
- }
305
- toShortString() {
306
- const buffer = this.buffer;
307
- const part1 = buffer.slice(0, 2);
308
- const part2 = buffer.slice(buffer.length - 2, buffer.length);
309
- return `${part1.toString('hex')}...${part2.toString('hex')}`;
310
- }
311
- toString() {
312
- return `0x${(0, utils_1.padHex)(this.bigNumber.toString(16))}`;
313
- }
314
- /** @deprecated use .tile instead */
315
- toTile() {
316
- return this.tile;
317
- }
318
- guessZoom() {
319
- const bn = new bignumber_1.BigNumber(this.id.toString('hex'), 16);
320
- const quadkeySimple = bn.toString(4);
321
- this.setZoom(quadkeySimple.length);
322
- }
323
- }
324
- exports.Quadkey = Quadkey;
325
- Quadkey.Zero = Quadkey.from(0, buffer_1.Buffer.alloc(31, 0));
326
- Quadkey.root = new Quadkey();
327
- Quadkey.type = 'Quadkey';
328
- //# sourceMappingURL=Quadkey.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Quadkey.js","sourceRoot":"","sources":["../../src/Quadkey.ts"],"names":[],"mappings":"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"}
@@ -1,10 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.RelativeDirectionConstantLookup = void 0;
4
- exports.RelativeDirectionConstantLookup = {
5
- e: 1,
6
- n: -2,
7
- s: 2,
8
- w: -1,
9
- };
10
- //# sourceMappingURL=RelativeDirectionConstantLookup.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"RelativeDirectionConstantLookup.js","sourceRoot":"","sources":["../../src/RelativeDirectionConstantLookup.ts"],"names":[],"mappings":";;;AAAa,QAAA,+BAA+B,GAA2B;IACrE,CAAC,EAAE,CAAC;IACJ,CAAC,EAAE,CAAC,CAAC;IACL,CAAC,EAAE,CAAC;IACJ,CAAC,EAAE,CAAC,CAAC;CACN,CAAA"}
package/dist/cjs/index.js DELETED
@@ -1,5 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const tslib_1 = require("tslib");
4
- tslib_1.__exportStar(require("./Quadkey"), exports);
5
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;AAAA,oDAAyB"}
package/dist/cjs/utils.js DELETED
@@ -1,44 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.bitShiftRight = exports.bitShiftLeft = exports.padHex = void 0;
4
- const buffer_1 = require("buffer/");
5
- const padHex = (hex, byteCount) => {
6
- let result = hex;
7
- if (hex.length % 2 !== 0) {
8
- result = `0${hex}`;
9
- }
10
- if (byteCount) {
11
- while (result.length / 2 < byteCount) {
12
- result = `00${result}`;
13
- }
14
- }
15
- return result;
16
- };
17
- exports.padHex = padHex;
18
- const bitShiftLeft = (buffer) => {
19
- const shifted = buffer_1.Buffer.alloc(buffer.length);
20
- const last = buffer.length - 1;
21
- for (let index = 0; index < last; index++) {
22
- shifted[index] = buffer[index] << 1;
23
- if (buffer[index + 1] & 0x80) {
24
- shifted[index] += 0x01;
25
- }
26
- }
27
- shifted[last] = buffer[last] << 1;
28
- return shifted;
29
- };
30
- exports.bitShiftLeft = bitShiftLeft;
31
- const bitShiftRight = (buffer) => {
32
- const shifted = buffer_1.Buffer.alloc(buffer.length);
33
- const last = buffer.length - 1;
34
- for (let index = last; index > 0; index--) {
35
- shifted[index] = buffer[index] >> 1;
36
- if (buffer[index - 1] & 0x01) {
37
- shifted[index] += 0x80;
38
- }
39
- }
40
- shifted[0] = buffer[0] >> 1;
41
- return shifted;
42
- };
43
- exports.bitShiftRight = bitShiftRight;
44
- //# sourceMappingURL=utils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":";;;AAAA,oCAAgC;AAEzB,MAAM,MAAM,GAAG,CAAC,GAAW,EAAE,SAAkB,EAAE,EAAE;IACxD,IAAI,MAAM,GAAG,GAAG,CAAA;IAChB,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,KAAK,CAAC,EAAE;QACxB,MAAM,GAAG,IAAI,GAAG,EAAE,CAAA;KACnB;IACD,IAAI,SAAS,EAAE;QACb,OAAO,MAAM,CAAC,MAAM,GAAG,CAAC,GAAG,SAAS,EAAE;YACpC,MAAM,GAAG,KAAK,MAAM,EAAE,CAAA;SACvB;KACF;IACD,OAAO,MAAM,CAAA;AACf,CAAC,CAAA;AAXY,QAAA,MAAM,UAWlB;AAEM,MAAM,YAAY,GAAG,CAAC,MAAc,EAAE,EAAE;IAC7C,MAAM,OAAO,GAAG,eAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;IAC3C,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAA;IAC9B,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,IAAI,EAAE,KAAK,EAAE,EAAE;QACzC,OAAO,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QACnC,IAAI,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,IAAI,EAAE;YAC5B,OAAO,CAAC,KAAK,CAAC,IAAI,IAAI,CAAA;SACvB;KACF;IACD,OAAO,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACjC,OAAO,OAAO,CAAA;AAChB,CAAC,CAAA;AAXY,QAAA,YAAY,gBAWxB;AAEM,MAAM,aAAa,GAAG,CAAC,MAAc,EAAE,EAAE;IAC9C,MAAM,OAAO,GAAG,eAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;IAC3C,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAA;IAC9B,KAAK,IAAI,KAAK,GAAG,IAAI,EAAE,KAAK,GAAG,CAAC,EAAE,KAAK,EAAE,EAAE;QACzC,OAAO,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QACnC,IAAI,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,IAAI,EAAE;YAC5B,OAAO,CAAC,KAAK,CAAC,IAAI,IAAI,CAAA;SACvB;KACF;IACD,OAAO,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;IAC3B,OAAO,OAAO,CAAA;AAChB,CAAC,CAAA;AAXY,QAAA,aAAa,iBAWzB"}