mirror of
https://github.com/protomaps/PMTiles.git
synced 2026-02-04 19:01:08 +00:00
js code formatting and linting
This commit is contained in:
27
js/index.ts
27
js/index.ts
@@ -1,6 +1,6 @@
|
||||
import { decompressSync } from "fflate";
|
||||
import v2 from "./v2";
|
||||
export * from './adapters';
|
||||
export * from "./adapters";
|
||||
|
||||
export interface BufferPosition {
|
||||
buf: Uint8Array;
|
||||
@@ -372,10 +372,14 @@ function deserializeIndex(buffer: ArrayBuffer): Entry[] {
|
||||
function detectVersion(a: ArrayBuffer): number {
|
||||
const v = new DataView(a);
|
||||
if (v.getUint16(2, true) === 2) {
|
||||
console.warn("PMTiles spec version 2 has been deprecated; please see github.com/protomaps/PMTiles for tools to upgrade");
|
||||
console.warn(
|
||||
"PMTiles spec version 2 has been deprecated; please see github.com/protomaps/PMTiles for tools to upgrade"
|
||||
);
|
||||
return 2;
|
||||
} else if (v.getUint16(2, true) === 1) {
|
||||
console.warn("PMTiles spec version 1 has been deprecated; please see github.com/protomaps/PMTiles for tools to upgrade");
|
||||
console.warn(
|
||||
"PMTiles spec version 1 has been deprecated; please see github.com/protomaps/PMTiles for tools to upgrade"
|
||||
);
|
||||
return 1;
|
||||
}
|
||||
return 3;
|
||||
@@ -404,7 +408,7 @@ async function getHeaderAndRoot(
|
||||
source: Source,
|
||||
prefetch: boolean
|
||||
): Promise<[Header, [string, number, Entry[] | ArrayBuffer]?]> {
|
||||
let resp = await source.getBytes(0, 16384);
|
||||
const resp = await source.getBytes(0, 16384);
|
||||
|
||||
const v = new DataView(resp.data);
|
||||
if (v.getUint16(0, true) !== 0x4d50) {
|
||||
@@ -450,7 +454,7 @@ async function getDirectory(
|
||||
length: number,
|
||||
header: Header
|
||||
): Promise<Entry[]> {
|
||||
let resp = await source.getBytes(offset, length);
|
||||
const resp = await source.getBytes(offset, length);
|
||||
|
||||
if (header.etag && header.etag !== resp.etag) {
|
||||
throw new VersionMismatch("ETag mismatch: " + header.etag);
|
||||
@@ -494,7 +498,7 @@ export class ResolvedValueCache {
|
||||
return data as Header;
|
||||
}
|
||||
|
||||
let res = await getHeaderAndRoot(source, this.prefetch);
|
||||
const res = await getHeaderAndRoot(source, this.prefetch);
|
||||
if (res[1]) {
|
||||
this.cache.set(res[1][0], {
|
||||
lastUsed: this.counter++,
|
||||
@@ -553,7 +557,7 @@ export class ResolvedValueCache {
|
||||
return data as ArrayBuffer;
|
||||
}
|
||||
|
||||
let resp = await source.getBytes(offset, length);
|
||||
const resp = await source.getBytes(offset, length);
|
||||
if (header.etag && header.etag !== resp.etag) {
|
||||
throw new VersionMismatch("ETag mismatch: " + header.etag);
|
||||
}
|
||||
@@ -765,9 +769,12 @@ export class PMTiles {
|
||||
if (header.specVersion < 3) {
|
||||
return [];
|
||||
}
|
||||
let d_o = header.rootDirectoryOffset;
|
||||
let d_l = header.rootDirectoryLength;
|
||||
return await this.cache.getDirectory(this.source, d_o, d_l, header);
|
||||
return await this.cache.getDirectory(
|
||||
this.source,
|
||||
header.rootDirectoryOffset,
|
||||
header.rootDirectoryLength,
|
||||
header
|
||||
);
|
||||
}
|
||||
|
||||
async getHeader() {
|
||||
|
||||
18
js/v2.ts
18
js/v2.ts
@@ -188,7 +188,7 @@ export const deriveLeaf = (view: DataView, tile: Zxy): Zxy | null => {
|
||||
const numEntries = view.byteLength / 17;
|
||||
const entry = parseEntry(view, numEntries - 1);
|
||||
if (entry.is_dir) {
|
||||
let leaf_level = entry.z;
|
||||
const leaf_level = entry.z;
|
||||
const level_diff = tile.z - leaf_level;
|
||||
const leaf_x = Math.trunc(tile.x / (1 << level_diff));
|
||||
const leaf_y = Math.trunc(tile.y / (1 << level_diff));
|
||||
@@ -198,7 +198,7 @@ export const deriveLeaf = (view: DataView, tile: Zxy): Zxy | null => {
|
||||
};
|
||||
|
||||
async function getHeader(source: Source): Promise<Header> {
|
||||
let resp = await source.getBytes(0, 512000);
|
||||
const resp = await source.getBytes(0, 512000);
|
||||
|
||||
const dataview = new DataView(resp.data);
|
||||
|
||||
@@ -233,7 +233,7 @@ async function getHeader(source: Source): Promise<Header> {
|
||||
let max_lat = 85.0;
|
||||
|
||||
if (json_metadata.bounds) {
|
||||
let split = json_metadata.bounds.split(",");
|
||||
const split = json_metadata.bounds.split(",");
|
||||
min_lon = +split[0];
|
||||
min_lat = +split[1];
|
||||
max_lon = +split[2];
|
||||
@@ -241,7 +241,7 @@ async function getHeader(source: Source): Promise<Header> {
|
||||
}
|
||||
|
||||
if (json_metadata.center) {
|
||||
let split = json_metadata.center.split(",");
|
||||
const split = json_metadata.center.split(",");
|
||||
center_lon = +split[0];
|
||||
center_lat = +split[1];
|
||||
center_zoom = +split[2];
|
||||
@@ -299,10 +299,10 @@ async function getZxy(
|
||||
|
||||
const entry = queryTile(new DataView(root_dir), z, x, y);
|
||||
if (entry) {
|
||||
let resp = await source.getBytes(entry.offset, entry.length, signal);
|
||||
const resp = await source.getBytes(entry.offset, entry.length, signal);
|
||||
let tile_data = resp.data;
|
||||
|
||||
let view = new DataView(tile_data);
|
||||
const view = new DataView(tile_data);
|
||||
if (view.getUint8(0) == 0x1f && view.getUint8(1) == 0x8b) {
|
||||
tile_data = decompressSync(new Uint8Array(tile_data));
|
||||
}
|
||||
@@ -331,16 +331,16 @@ async function getZxy(
|
||||
if (header.specVersion === 1) {
|
||||
leaf_dir = sortDir(leaf_dir);
|
||||
}
|
||||
let tile_entry = queryTile(new DataView(leaf_dir), z, x, y);
|
||||
const tile_entry = queryTile(new DataView(leaf_dir), z, x, y);
|
||||
if (tile_entry) {
|
||||
let resp = await source.getBytes(
|
||||
const resp = await source.getBytes(
|
||||
tile_entry.offset,
|
||||
tile_entry.length,
|
||||
signal
|
||||
);
|
||||
let tile_data = resp.data;
|
||||
|
||||
let view = new DataView(tile_data);
|
||||
const view = new DataView(tile_data);
|
||||
if (view.getUint8(0) == 0x1f && view.getUint8(1) == 0x8b) {
|
||||
tile_data = decompressSync(new Uint8Array(tile_data));
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user