@basemaps/shared 7.0.0 → 7.1.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.
- package/build/__tests__/api.test.d.ts +0 -1
- package/build/__tests__/api.test.js +38 -37
- package/build/__tests__/api.test.js.map +1 -1
- package/build/__tests__/env.test.d.ts +0 -1
- package/build/__tests__/env.test.js +7 -6
- package/build/__tests__/env.test.js.map +1 -1
- package/build/__tests__/url.test.d.ts +0 -1
- package/build/__tests__/url.test.js +11 -10
- package/build/__tests__/url.test.js.map +1 -1
- package/build/__tests__/util.test.d.ts +0 -1
- package/build/__tests__/util.test.js +42 -41
- package/build/__tests__/util.test.js.map +1 -1
- package/build/__tests__/vdom.test.d.ts +0 -1
- package/build/__tests__/vdom.test.js +30 -29
- package/build/__tests__/vdom.test.js.map +1 -1
- package/build/api.d.ts +0 -1
- package/build/api.js +1 -1
- package/build/api.js.map +1 -1
- package/build/cli/__tests__/git.tag.test.d.ts +0 -1
- package/build/cli/__tests__/git.tag.test.js +6 -5
- package/build/cli/__tests__/git.tag.test.js.map +1 -1
- package/build/cli/base.d.ts +0 -2
- package/build/cli/base.js +30 -9
- package/build/cli/base.js.map +1 -1
- package/build/cli/git.tag.d.ts +0 -1
- package/build/cli/info.d.ts +0 -2
- package/build/cli/info.js +3 -5
- package/build/cli/info.js.map +1 -1
- package/build/config.d.ts +0 -1
- package/build/config.js +1 -1
- package/build/config.js.map +1 -1
- package/build/const.d.ts +0 -1
- package/build/const.js +1 -1
- package/build/const.js.map +1 -1
- package/build/dynamo/__tests__/config.dynamo.test.d.ts +0 -1
- package/build/dynamo/__tests__/config.dynamo.test.js +71 -41
- package/build/dynamo/__tests__/config.dynamo.test.js.map +1 -1
- package/build/dynamo/__tests__/config.imagery.test.d.ts +0 -1
- package/build/dynamo/__tests__/config.imagery.test.js +41 -47
- package/build/dynamo/__tests__/config.imagery.test.js.map +1 -1
- package/build/dynamo/__tests__/config.provider.test.d.ts +0 -1
- package/build/dynamo/__tests__/config.provider.test.js +6 -5
- package/build/dynamo/__tests__/config.provider.test.js.map +1 -1
- package/build/dynamo/dynamo.config.base.d.ts +0 -1
- package/build/dynamo/dynamo.config.base.js +18 -11
- package/build/dynamo/dynamo.config.base.js.map +1 -1
- package/build/dynamo/dynamo.config.cached.d.ts +0 -1
- package/build/dynamo/dynamo.config.cached.js +6 -1
- package/build/dynamo/dynamo.config.cached.js.map +1 -1
- package/build/dynamo/dynamo.config.d.ts +42 -5
- package/build/dynamo/dynamo.config.js +55 -8
- package/build/dynamo/dynamo.config.js.map +1 -1
- package/build/file.system.d.ts +26 -0
- package/build/file.system.js +88 -0
- package/build/file.system.js.map +1 -0
- package/build/imagery.url.d.ts +67 -0
- package/build/imagery.url.js +50 -0
- package/build/imagery.url.js.map +1 -0
- package/build/index.d.ts +11 -10
- package/build/index.js +11 -8
- package/build/index.js.map +1 -1
- package/build/log.d.ts +0 -1
- package/build/log.js +3 -1
- package/build/log.js.map +1 -1
- package/build/logger.fatal.error.d.ts +0 -1
- package/build/logger.fatal.error.js +6 -0
- package/build/logger.fatal.error.js.map +1 -1
- package/build/url.d.ts +0 -1
- package/build/url.js.map +1 -1
- package/build/util.d.ts +0 -1
- package/build/util.js.map +1 -1
- package/build/vdom.d.ts +0 -1
- package/build/vdom.js +25 -0
- package/build/vdom.js.map +1 -1
- package/package.json +17 -13
- package/CHANGELOG.md +0 -1118
- package/build/__tests__/api.test.d.ts.map +0 -1
- package/build/__tests__/env.test.d.ts.map +0 -1
- package/build/__tests__/url.test.d.ts.map +0 -1
- package/build/__tests__/util.test.d.ts.map +0 -1
- package/build/__tests__/vdom.test.d.ts.map +0 -1
- package/build/api.d.ts.map +0 -1
- package/build/cli/__tests__/git.tag.test.d.ts.map +0 -1
- package/build/cli/base.d.ts.map +0 -1
- package/build/cli/git.tag.d.ts.map +0 -1
- package/build/cli/info.d.ts.map +0 -1
- package/build/cog/constants.d.ts +0 -5
- package/build/cog/constants.d.ts.map +0 -1
- package/build/cog/constants.js +0 -5
- package/build/cog/constants.js.map +0 -1
- package/build/cog/gdal.config.d.ts +0 -51
- package/build/cog/gdal.config.d.ts.map +0 -1
- package/build/cog/gdal.config.js +0 -23
- package/build/cog/gdal.config.js.map +0 -1
- package/build/cog/stac.d.ts +0 -32
- package/build/cog/stac.d.ts.map +0 -1
- package/build/cog/stac.js +0 -3
- package/build/cog/stac.js.map +0 -1
- package/build/cog/types.d.ts +0 -83
- package/build/cog/types.d.ts.map +0 -1
- package/build/cog/types.js +0 -2
- package/build/cog/types.js.map +0 -1
- package/build/composite.error.d.ts +0 -2
- package/build/composite.error.d.ts.map +0 -1
- package/build/composite.error.js +0 -2
- package/build/composite.error.js.map +0 -1
- package/build/config.d.ts.map +0 -1
- package/build/const.d.ts.map +0 -1
- package/build/dynamo/__tests__/config.dynamo.test.d.ts.map +0 -1
- package/build/dynamo/__tests__/config.imagery.test.d.ts.map +0 -1
- package/build/dynamo/__tests__/config.provider.test.d.ts.map +0 -1
- package/build/dynamo/dynamo.config.base.d.ts.map +0 -1
- package/build/dynamo/dynamo.config.cached.d.ts.map +0 -1
- package/build/dynamo/dynamo.config.d.ts.map +0 -1
- package/build/file/__tests__/file.local.test.d.ts +0 -2
- package/build/file/__tests__/file.local.test.d.ts.map +0 -1
- package/build/file/__tests__/file.local.test.js +0 -49
- package/build/file/__tests__/file.local.test.js.map +0 -1
- package/build/file/__tests__/file.operator.test.helper.d.ts +0 -22
- package/build/file/__tests__/file.operator.test.helper.d.ts.map +0 -1
- package/build/file/__tests__/file.operator.test.helper.js +0 -56
- package/build/file/__tests__/file.operator.test.helper.js.map +0 -1
- package/build/file/file.config.d.ts +0 -28
- package/build/file/file.config.d.ts.map +0 -1
- package/build/file/file.config.js +0 -11
- package/build/file/file.config.js.map +0 -1
- package/build/file/index.d.ts +0 -11
- package/build/file/index.d.ts.map +0 -1
- package/build/file/index.js +0 -56
- package/build/file/index.js.map +0 -1
- package/build/index.d.ts.map +0 -1
- package/build/log.d.ts.map +0 -1
- package/build/logger.fatal.error.d.ts.map +0 -1
- package/build/url.d.ts.map +0 -1
- package/build/util.d.ts.map +0 -1
- package/build/vdom.d.ts.map +0 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import
|
|
1
|
+
import { DynamoDB } from '@aws-sdk/client-dynamodb';
|
|
2
|
+
import { BaseConfig, BasemapsConfigProvider, ConfigPrefix, ConfigProvider, ConfigTileSet, ConfigVectorStyle } from '@basemaps/config';
|
|
3
3
|
import { ConfigDynamoBase } from './dynamo.config.base.js';
|
|
4
4
|
import { ConfigDynamoCached } from './dynamo.config.cached.js';
|
|
5
5
|
export declare class ConfigProviderDynamo extends BasemapsConfigProvider {
|
|
@@ -7,12 +7,49 @@ export declare class ConfigProviderDynamo extends BasemapsConfigProvider {
|
|
|
7
7
|
dynamo: DynamoDB;
|
|
8
8
|
tableName: string;
|
|
9
9
|
type: "dynamo";
|
|
10
|
-
Imagery: ConfigDynamoCached<
|
|
10
|
+
Imagery: ConfigDynamoCached<{
|
|
11
|
+
id: string;
|
|
12
|
+
name: string;
|
|
13
|
+
projection: import("@basemaps/geo").EpsgCode;
|
|
14
|
+
tileMatrix: string;
|
|
15
|
+
title: string;
|
|
16
|
+
uri: string;
|
|
17
|
+
bounds: {
|
|
18
|
+
x: number;
|
|
19
|
+
y: number;
|
|
20
|
+
width: number;
|
|
21
|
+
height: number;
|
|
22
|
+
};
|
|
23
|
+
files: {
|
|
24
|
+
name: string;
|
|
25
|
+
x: number;
|
|
26
|
+
y: number;
|
|
27
|
+
width: number;
|
|
28
|
+
height: number;
|
|
29
|
+
}[];
|
|
30
|
+
updatedAt?: number | undefined;
|
|
31
|
+
virtual?: boolean | undefined;
|
|
32
|
+
category?: string | undefined;
|
|
33
|
+
bands?: ("float16" | "float32" | "uint8" | "uint16")[] | undefined;
|
|
34
|
+
noData?: number | undefined;
|
|
35
|
+
overviews?: {
|
|
36
|
+
path: string;
|
|
37
|
+
minZoom: number;
|
|
38
|
+
maxZoom: number;
|
|
39
|
+
} | undefined;
|
|
40
|
+
}>;
|
|
11
41
|
Style: ConfigDynamoCached<ConfigVectorStyle>;
|
|
12
42
|
TileSet: ConfigDynamoBase<ConfigTileSet>;
|
|
13
43
|
Provider: ConfigDynamoCached<ConfigProvider>;
|
|
14
|
-
ConfigBundle: ConfigDynamoBase<
|
|
44
|
+
ConfigBundle: ConfigDynamoBase<{
|
|
45
|
+
path: string;
|
|
46
|
+
id: string;
|
|
47
|
+
name: string;
|
|
48
|
+
hash: string;
|
|
49
|
+
updatedAt?: number | undefined;
|
|
50
|
+
virtual?: boolean | undefined;
|
|
51
|
+
assets?: string | undefined;
|
|
52
|
+
}>;
|
|
15
53
|
constructor(tableName: string);
|
|
16
54
|
record(): BaseConfig;
|
|
17
55
|
}
|
|
18
|
-
//# sourceMappingURL=dynamo.config.d.ts.map
|
|
@@ -1,17 +1,64 @@
|
|
|
1
|
+
import { DynamoDB } from '@aws-sdk/client-dynamodb';
|
|
1
2
|
import { BasemapsConfigProvider, ConfigPrefix, } from '@basemaps/config';
|
|
2
|
-
import DynamoDB from 'aws-sdk/clients/dynamodb.js';
|
|
3
3
|
import { ConfigDynamoBase } from './dynamo.config.base.js';
|
|
4
4
|
import { ConfigDynamoCached } from './dynamo.config.cached.js';
|
|
5
5
|
export class ConfigProviderDynamo extends BasemapsConfigProvider {
|
|
6
6
|
constructor(tableName) {
|
|
7
7
|
super();
|
|
8
|
-
this
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
8
|
+
Object.defineProperty(this, "Prefix", {
|
|
9
|
+
enumerable: true,
|
|
10
|
+
configurable: true,
|
|
11
|
+
writable: true,
|
|
12
|
+
value: ConfigPrefix
|
|
13
|
+
});
|
|
14
|
+
Object.defineProperty(this, "dynamo", {
|
|
15
|
+
enumerable: true,
|
|
16
|
+
configurable: true,
|
|
17
|
+
writable: true,
|
|
18
|
+
value: void 0
|
|
19
|
+
});
|
|
20
|
+
Object.defineProperty(this, "tableName", {
|
|
21
|
+
enumerable: true,
|
|
22
|
+
configurable: true,
|
|
23
|
+
writable: true,
|
|
24
|
+
value: void 0
|
|
25
|
+
});
|
|
26
|
+
Object.defineProperty(this, "type", {
|
|
27
|
+
enumerable: true,
|
|
28
|
+
configurable: true,
|
|
29
|
+
writable: true,
|
|
30
|
+
value: 'dynamo'
|
|
31
|
+
});
|
|
32
|
+
Object.defineProperty(this, "Imagery", {
|
|
33
|
+
enumerable: true,
|
|
34
|
+
configurable: true,
|
|
35
|
+
writable: true,
|
|
36
|
+
value: new ConfigDynamoCached(this, ConfigPrefix.Imagery)
|
|
37
|
+
});
|
|
38
|
+
Object.defineProperty(this, "Style", {
|
|
39
|
+
enumerable: true,
|
|
40
|
+
configurable: true,
|
|
41
|
+
writable: true,
|
|
42
|
+
value: new ConfigDynamoCached(this, ConfigPrefix.Style)
|
|
43
|
+
});
|
|
44
|
+
Object.defineProperty(this, "TileSet", {
|
|
45
|
+
enumerable: true,
|
|
46
|
+
configurable: true,
|
|
47
|
+
writable: true,
|
|
48
|
+
value: new ConfigDynamoBase(this, ConfigPrefix.TileSet)
|
|
49
|
+
});
|
|
50
|
+
Object.defineProperty(this, "Provider", {
|
|
51
|
+
enumerable: true,
|
|
52
|
+
configurable: true,
|
|
53
|
+
writable: true,
|
|
54
|
+
value: new ConfigDynamoCached(this, ConfigPrefix.Provider)
|
|
55
|
+
});
|
|
56
|
+
Object.defineProperty(this, "ConfigBundle", {
|
|
57
|
+
enumerable: true,
|
|
58
|
+
configurable: true,
|
|
59
|
+
writable: true,
|
|
60
|
+
value: new ConfigDynamoBase(this, ConfigPrefix.ConfigBundle)
|
|
61
|
+
});
|
|
15
62
|
this.dynamo = new DynamoDB({ region: 'ap-southeast-2' });
|
|
16
63
|
this.tableName = tableName;
|
|
17
64
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dynamo.config.js","sourceRoot":"","sources":["../../src/dynamo/dynamo.config.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"dynamo.config.js","sourceRoot":"","sources":["../../src/dynamo/dynamo.config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAEL,sBAAsB,EAGtB,YAAY,GAIb,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAE/D,MAAM,OAAO,oBAAqB,SAAQ,sBAAsB;IAa9D,YAAY,SAAiB;QAC3B,KAAK,EAAE,CAAC;QAbV;;;;mBAAS,YAAY;WAAC;QAEtB;;;;;WAAiB;QACjB;;;;;WAAkB;QAClB;;;;mBAAO,QAAiB;WAAC;QAEzB;;;;mBAAU,IAAI,kBAAkB,CAAgB,IAAI,EAAE,YAAY,CAAC,OAAO,CAAC;WAAC;QAC5E;;;;mBAAQ,IAAI,kBAAkB,CAAoB,IAAI,EAAE,YAAY,CAAC,KAAK,CAAC;WAAC;QAC5E;;;;mBAAU,IAAI,gBAAgB,CAAgB,IAAI,EAAE,YAAY,CAAC,OAAO,CAAC;WAAC;QAC1E;;;;mBAAW,IAAI,kBAAkB,CAAiB,IAAI,EAAE,YAAY,CAAC,QAAQ,CAAC;WAAC;QAC/E;;;;mBAAe,IAAI,gBAAgB,CAAe,IAAI,EAAE,YAAY,CAAC,YAAY,CAAC;WAAC;QAIjF,IAAI,CAAC,MAAM,GAAG,IAAI,QAAQ,CAAC,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC,CAAC;QACzD,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC7B,CAAC;IAED,MAAM;QACJ,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC;IAC9C,CAAC;CACF"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { FsAwsS3 } from '@chunkd/fs-aws';
|
|
2
|
+
import { SourceCache, SourceChunk } from '@chunkd/middleware';
|
|
3
|
+
import type { SourceCallback, SourceRequest } from '@chunkd/source';
|
|
4
|
+
export declare const s3Fs: FsAwsS3;
|
|
5
|
+
export declare const s3FsPublic: FsAwsS3;
|
|
6
|
+
export declare const Fsa: import("@chunkd/fs/build/src/file.system.abstraction.js").FileSystemAbstraction;
|
|
7
|
+
export declare const FsaChunk: SourceChunk;
|
|
8
|
+
export declare const FsaCache: SourceCache;
|
|
9
|
+
export declare const FsaLog: {
|
|
10
|
+
name: string;
|
|
11
|
+
count: number;
|
|
12
|
+
requests: string[];
|
|
13
|
+
fetch(req: SourceRequest, next: SourceCallback): Promise<ArrayBuffer>;
|
|
14
|
+
reset(): void;
|
|
15
|
+
};
|
|
16
|
+
/**
|
|
17
|
+
* When chunkd moves to URLs this can be removed
|
|
18
|
+
*
|
|
19
|
+
* But reading a file as a string with `file://....` does not work in node
|
|
20
|
+
* it needs to be converted with `fileURLToPath`
|
|
21
|
+
*/
|
|
22
|
+
export declare function urlToString(u: URL): string;
|
|
23
|
+
/**
|
|
24
|
+
* Ensure a folder has a trailing slash
|
|
25
|
+
**/
|
|
26
|
+
export declare function stringToUrlFolder(str: string): URL;
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
import { fileURLToPath } from 'node:url';
|
|
2
|
+
import { S3Client } from '@aws-sdk/client-s3';
|
|
3
|
+
import { sha256base58 } from '@basemaps/config';
|
|
4
|
+
import { fsa, FsHttp } from '@chunkd/fs';
|
|
5
|
+
import { AwsS3CredentialProvider, FsAwsS3 } from '@chunkd/fs-aws';
|
|
6
|
+
import { SourceCache, SourceChunk } from '@chunkd/middleware';
|
|
7
|
+
import { Env } from './const.js';
|
|
8
|
+
import { LogConfig } from './log.js';
|
|
9
|
+
export const s3Fs = new FsAwsS3(new S3Client({
|
|
10
|
+
/**
|
|
11
|
+
* We buckets in multiple regions we do not know ahead of time which bucket is in what region
|
|
12
|
+
*
|
|
13
|
+
* So the S3 Client will have to follow the endpoints, this adds a bit of extra latency as requests have to be retried
|
|
14
|
+
*/
|
|
15
|
+
followRegionRedirects: true,
|
|
16
|
+
}));
|
|
17
|
+
// For public URLS use --no-sign-request
|
|
18
|
+
export const s3FsPublic = new FsAwsS3(new S3Client({
|
|
19
|
+
followRegionRedirects: true,
|
|
20
|
+
signer: {
|
|
21
|
+
sign: async (req) => req,
|
|
22
|
+
},
|
|
23
|
+
}));
|
|
24
|
+
const credentials = new AwsS3CredentialProvider();
|
|
25
|
+
credentials.onFileSystemCreated = (acc, fs) => {
|
|
26
|
+
LogConfig.get().debug({ prefix: acc.prefix, roleArn: acc.roleArn }, 'FileSystem:Register');
|
|
27
|
+
fsa.register(acc.prefix, fs);
|
|
28
|
+
};
|
|
29
|
+
const credentialPath = Env.get(Env.AwsRoleConfigPath);
|
|
30
|
+
if (credentialPath)
|
|
31
|
+
credentials.registerConfig(fsa.toUrl(credentialPath), s3Fs);
|
|
32
|
+
s3Fs.credentials = credentials;
|
|
33
|
+
fsa.register('https://', new FsHttp());
|
|
34
|
+
fsa.register('s3://', s3Fs);
|
|
35
|
+
fsa.register('s3://nz-imagery', s3FsPublic);
|
|
36
|
+
fsa.register('s3://nz-elevation', s3FsPublic);
|
|
37
|
+
export const Fsa = fsa;
|
|
38
|
+
export const FsaChunk = new SourceChunk({ size: 128 * 1024 });
|
|
39
|
+
fsa.middleware.push(FsaChunk);
|
|
40
|
+
export const FsaCache = new SourceCache({ size: 256 * 1024 * 1024 }); // 256MB of cache
|
|
41
|
+
fsa.middleware.push(FsaCache);
|
|
42
|
+
// Logging middleware
|
|
43
|
+
export const FsaLog = {
|
|
44
|
+
name: 'logger',
|
|
45
|
+
count: 0,
|
|
46
|
+
requests: [],
|
|
47
|
+
async fetch(req, next) {
|
|
48
|
+
this.count++;
|
|
49
|
+
const requestId = sha256base58(JSON.stringify({ source: req.source.url.href, offset: req.offset, length: req.length }));
|
|
50
|
+
this.requests.push(requestId);
|
|
51
|
+
const startTime = performance.now();
|
|
52
|
+
const res = await next(req);
|
|
53
|
+
LogConfig.get().trace({
|
|
54
|
+
source: req.source.url.href,
|
|
55
|
+
offset: req.offset,
|
|
56
|
+
length: req.length,
|
|
57
|
+
requestId,
|
|
58
|
+
duration: performance.now() - startTime,
|
|
59
|
+
}, 'fetch');
|
|
60
|
+
return res;
|
|
61
|
+
},
|
|
62
|
+
reset() {
|
|
63
|
+
this.count = 0;
|
|
64
|
+
this.requests = [];
|
|
65
|
+
},
|
|
66
|
+
};
|
|
67
|
+
fsa.middleware.push(FsaLog);
|
|
68
|
+
/**
|
|
69
|
+
* When chunkd moves to URLs this can be removed
|
|
70
|
+
*
|
|
71
|
+
* But reading a file as a string with `file://....` does not work in node
|
|
72
|
+
* it needs to be converted with `fileURLToPath`
|
|
73
|
+
*/
|
|
74
|
+
export function urlToString(u) {
|
|
75
|
+
if (u.protocol === 'file:')
|
|
76
|
+
return fileURLToPath(u);
|
|
77
|
+
return u.href;
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* Ensure a folder has a trailing slash
|
|
81
|
+
**/
|
|
82
|
+
export function stringToUrlFolder(str) {
|
|
83
|
+
const url = fsa.toUrl(str);
|
|
84
|
+
if (url.pathname.endsWith('/'))
|
|
85
|
+
return url;
|
|
86
|
+
return new URL(url.href + '/');
|
|
87
|
+
}
|
|
88
|
+
//# sourceMappingURL=file.system.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"file.system.js","sourceRoot":"","sources":["../src/file.system.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { ConfigImagery } from '@basemaps/config';
|
|
2
|
+
import { Size } from '@basemaps/geo';
|
|
3
|
+
export declare const PreviewSize: {
|
|
4
|
+
width: number;
|
|
5
|
+
height: number;
|
|
6
|
+
};
|
|
7
|
+
export declare function getImageryCenterZoom(im: ConfigImagery, previewSize: Size): {
|
|
8
|
+
lat: number;
|
|
9
|
+
lon: number;
|
|
10
|
+
zoom: number;
|
|
11
|
+
};
|
|
12
|
+
export interface PreviewConfig {
|
|
13
|
+
/** imagery to create a preview URL for */
|
|
14
|
+
imagery: ConfigImagery;
|
|
15
|
+
/** output preview size */
|
|
16
|
+
size?: Size;
|
|
17
|
+
/** optional configuration location */
|
|
18
|
+
config?: string;
|
|
19
|
+
/** optional pipeline to use */
|
|
20
|
+
pipeline?: string;
|
|
21
|
+
}
|
|
22
|
+
export interface PreviewResult {
|
|
23
|
+
/**
|
|
24
|
+
* relative URL to the preview location
|
|
25
|
+
*
|
|
26
|
+
* @example
|
|
27
|
+
*
|
|
28
|
+
* "/v1/preview/..."
|
|
29
|
+
*/
|
|
30
|
+
url: string;
|
|
31
|
+
/**
|
|
32
|
+
* standardized name of the layer
|
|
33
|
+
*/
|
|
34
|
+
name: string;
|
|
35
|
+
/**
|
|
36
|
+
* location slug useful for basemaps links
|
|
37
|
+
*
|
|
38
|
+
* @example "@-36.5518610,174.8770907,z8"
|
|
39
|
+
*/
|
|
40
|
+
slug: string;
|
|
41
|
+
/**
|
|
42
|
+
* Components of the slug broken out into their parts
|
|
43
|
+
*/
|
|
44
|
+
location: {
|
|
45
|
+
lat: number;
|
|
46
|
+
lon: number;
|
|
47
|
+
zoom: number;
|
|
48
|
+
};
|
|
49
|
+
/**
|
|
50
|
+
* Query string parameters for t he preview including config and pipeline if needed
|
|
51
|
+
*
|
|
52
|
+
* @example
|
|
53
|
+
* "?config=s3://...&pipeline=terrain-rgb"
|
|
54
|
+
*/
|
|
55
|
+
query: string;
|
|
56
|
+
}
|
|
57
|
+
export declare function getPreviewUrl(ctx: PreviewConfig): PreviewResult;
|
|
58
|
+
/**
|
|
59
|
+
* Create a query string for a preview URL using pipeline and configuration if they are needed
|
|
60
|
+
*
|
|
61
|
+
* @param ctx
|
|
62
|
+
* @returns a query string prefixed with `?` if it is needed, empty string otherwise
|
|
63
|
+
*/
|
|
64
|
+
export declare function getPreviewQuery(ctx: {
|
|
65
|
+
config?: string | null;
|
|
66
|
+
pipeline?: string | null;
|
|
67
|
+
}): string;
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { standardizeLayerName } from '@basemaps/config';
|
|
2
|
+
import { Projection, TileMatrixSets } from '@basemaps/geo';
|
|
3
|
+
export const PreviewSize = { width: 1200, height: 630 };
|
|
4
|
+
export function getImageryCenterZoom(im, previewSize) {
|
|
5
|
+
const center = { x: im.bounds.x + im.bounds.width / 2, y: im.bounds.y + im.bounds.height / 2 };
|
|
6
|
+
// Find a approximate GSD needed to show most of the imagery
|
|
7
|
+
const aspectWidth = im.bounds.width / previewSize.width;
|
|
8
|
+
const aspectHeight = im.bounds.height / previewSize.height;
|
|
9
|
+
const bestAspect = Math.min(aspectHeight, aspectWidth);
|
|
10
|
+
const tms = TileMatrixSets.find(im.tileMatrix);
|
|
11
|
+
if (tms == null)
|
|
12
|
+
throw new Error(`Failed to lookup tileMatrix: ${im.tileMatrix}`);
|
|
13
|
+
const proj = Projection.get(tms);
|
|
14
|
+
const centerLatLon = proj.toWgs84([center.x, center.y]);
|
|
15
|
+
const targetZoom = Math.max(tms.findBestZoom(bestAspect) - 12, 0);
|
|
16
|
+
return { lat: centerLatLon[1], lon: centerLatLon[0], zoom: targetZoom };
|
|
17
|
+
}
|
|
18
|
+
export function getPreviewUrl(ctx) {
|
|
19
|
+
const location = getImageryCenterZoom(ctx.imagery, ctx.size ?? PreviewSize);
|
|
20
|
+
const targetZoom = location.zoom;
|
|
21
|
+
const lat = location.lat.toFixed(7);
|
|
22
|
+
const lon = location.lon.toFixed(7);
|
|
23
|
+
const slug = `@${lat},${lon},z${location.zoom}`;
|
|
24
|
+
const name = standardizeLayerName(ctx.imagery.name);
|
|
25
|
+
const query = getPreviewQuery(ctx);
|
|
26
|
+
return {
|
|
27
|
+
name,
|
|
28
|
+
location,
|
|
29
|
+
slug,
|
|
30
|
+
query,
|
|
31
|
+
url: `/v1/preview/${name}/${ctx.imagery.tileMatrix}/${targetZoom}/${lon}/${lat}${query}`,
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Create a query string for a preview URL using pipeline and configuration if they are needed
|
|
36
|
+
*
|
|
37
|
+
* @param ctx
|
|
38
|
+
* @returns a query string prefixed with `?` if it is needed, empty string otherwise
|
|
39
|
+
*/
|
|
40
|
+
export function getPreviewQuery(ctx) {
|
|
41
|
+
const urlSearch = new URLSearchParams();
|
|
42
|
+
if (ctx.config)
|
|
43
|
+
urlSearch.set('config', ctx.config);
|
|
44
|
+
if (ctx.pipeline)
|
|
45
|
+
urlSearch.set('pipeline', ctx.pipeline);
|
|
46
|
+
if (urlSearch.size === 0)
|
|
47
|
+
return '';
|
|
48
|
+
return '?' + urlSearch.toString();
|
|
49
|
+
}
|
|
50
|
+
//# sourceMappingURL=imagery.url.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"imagery.url.js","sourceRoot":"","sources":["../src/imagery.url.ts"],"names":[],"mappings":"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"}
|
package/build/index.d.ts
CHANGED
|
@@ -1,15 +1,16 @@
|
|
|
1
|
+
export * from './api.js';
|
|
2
|
+
export { getDefaultConfig, setDefaultConfig } from './config.js';
|
|
1
3
|
export { Const, Env } from './const.js';
|
|
4
|
+
export { ConfigDynamoBase } from './dynamo/dynamo.config.base.js';
|
|
5
|
+
export { ConfigProviderDynamo } from './dynamo/dynamo.config.js';
|
|
6
|
+
export { Fsa as fsa, FsaCache, FsaChunk, FsaLog, stringToUrlFolder, urlToString } from './file.system.js';
|
|
7
|
+
export { getImageryCenterZoom, getPreviewQuery, getPreviewUrl, PreviewSize } from './imagery.url.js';
|
|
2
8
|
export { LogConfig, LogType } from './log.js';
|
|
3
|
-
export * from './api.js';
|
|
4
|
-
export { V, VNode, VNodeElement, VNodeText } from './vdom.js';
|
|
5
9
|
export { LoggerFatalError } from './logger.fatal.error.js';
|
|
6
|
-
export { setDefaultConfig, getDefaultConfig } from './config.js';
|
|
7
10
|
export { toQueryString } from './url.js';
|
|
8
|
-
export { CompositeError } from './composite.error.js';
|
|
9
|
-
export { ConfigProviderDynamo } from './dynamo/dynamo.config.js';
|
|
10
|
-
export { ConfigDynamoBase } from './dynamo/dynamo.config.base.js';
|
|
11
|
-
export { CogJobJson, CogBuilderMetadata, CogJob, FeatureCollectionWithCrs, SourceMetadata } from './cog/types.js';
|
|
12
|
-
export { AlignedLevel, CoveringFraction } from './cog/constants.js';
|
|
13
|
-
export * from './file/index.js';
|
|
14
11
|
export * from './util.js';
|
|
15
|
-
|
|
12
|
+
export { V, VNode, VNodeElement, VNodeText } from './vdom.js';
|
|
13
|
+
export { FsMemory } from '@chunkd/fs';
|
|
14
|
+
export { SourceMemory } from '@chunkd/source-memory';
|
|
15
|
+
export { Tiff, TiffTag } from '@cogeotiff/core';
|
|
16
|
+
export { Cotar } from '@cotar/core';
|
package/build/index.js
CHANGED
|
@@ -1,16 +1,19 @@
|
|
|
1
1
|
// Force aws-sdk connection reuse
|
|
2
2
|
process.env['AWS_NODEJS_CONNECTION_REUSE_ENABLED'] = '1';
|
|
3
|
+
export * from './api.js';
|
|
4
|
+
export { getDefaultConfig, setDefaultConfig } from './config.js';
|
|
3
5
|
export { Const, Env } from './const.js';
|
|
6
|
+
export { ConfigDynamoBase } from './dynamo/dynamo.config.base.js';
|
|
7
|
+
export { ConfigProviderDynamo } from './dynamo/dynamo.config.js';
|
|
8
|
+
export { Fsa as fsa, FsaCache, FsaChunk, FsaLog, stringToUrlFolder, urlToString } from './file.system.js';
|
|
9
|
+
export { getImageryCenterZoom, getPreviewQuery, getPreviewUrl, PreviewSize } from './imagery.url.js';
|
|
4
10
|
export { LogConfig } from './log.js';
|
|
5
|
-
export * from './api.js';
|
|
6
|
-
export { V, VNode, VNodeElement, VNodeText } from './vdom.js';
|
|
7
11
|
export { LoggerFatalError } from './logger.fatal.error.js';
|
|
8
|
-
export { setDefaultConfig, getDefaultConfig } from './config.js';
|
|
9
12
|
export { toQueryString } from './url.js';
|
|
10
|
-
export { CompositeError } from './composite.error.js';
|
|
11
|
-
export { ConfigProviderDynamo } from './dynamo/dynamo.config.js';
|
|
12
|
-
export { ConfigDynamoBase } from './dynamo/dynamo.config.base.js';
|
|
13
|
-
export { AlignedLevel, CoveringFraction } from './cog/constants.js';
|
|
14
|
-
export * from './file/index.js';
|
|
15
13
|
export * from './util.js';
|
|
14
|
+
export { V, VNode, VNodeElement, VNodeText } from './vdom.js';
|
|
15
|
+
export { FsMemory } from '@chunkd/fs';
|
|
16
|
+
export { SourceMemory } from '@chunkd/source-memory';
|
|
17
|
+
export { Tiff, TiffTag } from '@cogeotiff/core';
|
|
18
|
+
export { Cotar } from '@cotar/core';
|
|
16
19
|
//# sourceMappingURL=index.js.map
|
package/build/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,iCAAiC;AACjC,OAAO,CAAC,GAAG,CAAC,qCAAqC,CAAC,GAAG,GAAG,CAAC;AACzD,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,iCAAiC;AACjC,OAAO,CAAC,GAAG,CAAC,qCAAqC,CAAC,GAAG,GAAG,CAAC;AACzD,cAAc,UAAU,CAAC;AACzB,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AACjE,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,GAAG,IAAI,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC1G,OAAO,EAAE,oBAAoB,EAAE,eAAe,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACrG,OAAO,EAAE,SAAS,EAAW,MAAM,UAAU,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,cAAc,WAAW,CAAC;AAC1B,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAC9D,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC"}
|
package/build/log.d.ts
CHANGED
package/build/log.js
CHANGED
|
@@ -9,7 +9,9 @@ export const LogConfig = {
|
|
|
9
9
|
/** Get the currently configured logger */
|
|
10
10
|
get() {
|
|
11
11
|
if (currentLog == null) {
|
|
12
|
-
currentLog = process.stdout.isTTY
|
|
12
|
+
currentLog = process.stdout.isTTY
|
|
13
|
+
? pino.default(defaultOpts, PrettyTransform.stream())
|
|
14
|
+
: pino.default(defaultOpts);
|
|
13
15
|
}
|
|
14
16
|
return currentLog;
|
|
15
17
|
},
|
package/build/log.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"log.js","sourceRoot":"","sources":["../src/log.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAOlD,IAAI,UAAmB,CAAC;AAgBxB,MAAM,WAAW,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;AACvC;;GAEG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,0CAA0C;IAC1C,GAAG;QACD,IAAI,UAAU,IAAI,IAAI,EAAE;
|
|
1
|
+
{"version":3,"file":"log.js","sourceRoot":"","sources":["../src/log.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAOlD,IAAI,UAAmB,CAAC;AAgBxB,MAAM,WAAW,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;AACvC;;GAEG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,0CAA0C;IAC1C,GAAG;QACD,IAAI,UAAU,IAAI,IAAI,EAAE,CAAC;YACvB,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK;gBAC/B,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,eAAe,CAAC,MAAM,EAAE,CAAC;gBACrD,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAChC,CAAC;QACD,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,GAAG,CAAC,GAAY;QACd,UAAU,GAAG,GAAG,CAAC;IACnB,CAAC;IAED,yBAAyB;IACzB,OAAO;QACL,SAAS,CAAC,GAAG,EAAE,CAAC,KAAK,GAAG,QAAQ,CAAC;IACnC,CAAC;CACF,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.fatal.error.js","sourceRoot":"","sources":["../src/logger.fatal.error.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,OAAO,gBAAiB,SAAQ,KAAK;IAEzC,YAAY,GAA4B,EAAE,GAAW;QACnD,KAAK,CAAC,GAAG,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"logger.fatal.error.js","sourceRoot":"","sources":["../src/logger.fatal.error.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,OAAO,gBAAiB,SAAQ,KAAK;IAEzC,YAAY,GAA4B,EAAE,GAAW;QACnD,KAAK,CAAC,GAAG,CAAC,CAAC;QAFb;;;;;WAA6B;QAG3B,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;IACjB,CAAC;CACF"}
|
package/build/url.d.ts
CHANGED
package/build/url.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"url.js","sourceRoot":"","sources":["../src/url.ts"],"names":[],"mappings":"AAAA,6FAA6F;AAC7F,MAAM,UAAU,aAAa,CAAC,CAA4C;IACxE,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAClC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAEpC,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;IACrC,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE;
|
|
1
|
+
{"version":3,"file":"url.js","sourceRoot":"","sources":["../src/url.ts"],"names":[],"mappings":"AAAA,6FAA6F;AAC7F,MAAM,UAAU,aAAa,CAAC,CAA4C;IACxE,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAClC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAEpC,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;IACrC,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;QACxB,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI;YAAE,SAAS;QAC3B,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACzB,CAAC;IAED,MAAM,CAAC,IAAI,EAAE,CAAC;IAEd,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;IAChC,IAAI,KAAK,KAAK,EAAE;QAAE,OAAO,EAAE,CAAC;IAC5B,OAAO,IAAI,KAAK,EAAE,CAAC;AACrB,CAAC"}
|
package/build/util.d.ts
CHANGED
package/build/util.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"util.js","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"AAIA,MAAM,UAAU,WAAW,CAAC,CAAQ,EAAE,CAAQ;IAC5C,OAAO,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;AACtC,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,mBAAmB,CAAC,IAAY;IAC9C,OAAO,CACL,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE;QACrB,IAAI;aACD,KAAK,CAAC,CAAC,CAAC;aACR,OAAO,CAAC,gBAAgB,EAAE,SAAS,CAAC;aACpC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CACtB,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,wBAAwB,CAAC,IAAY;IACnD,MAAM,EAAE,GAAG,uCAAuC,CAAC;IAEnD,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,KAAK,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;
|
|
1
|
+
{"version":3,"file":"util.js","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"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"}
|
package/build/vdom.d.ts
CHANGED
|
@@ -63,4 +63,3 @@ export declare class VNodeElement extends VNode {
|
|
|
63
63
|
export declare function V(tag: string): VNodeElement;
|
|
64
64
|
export declare function V(tag: string, children: VNodeInput[] | VNodeInput): VNodeElement;
|
|
65
65
|
export declare function V(tag: string, attrs: Record<string, any>, children?: VNodeInput[] | VNodeInput): VNodeElement;
|
|
66
|
-
//# sourceMappingURL=vdom.d.ts.map
|
package/build/vdom.js
CHANGED
|
@@ -18,6 +18,12 @@ export class VNode {
|
|
|
18
18
|
export class VNodeText extends VNode {
|
|
19
19
|
constructor(text) {
|
|
20
20
|
super();
|
|
21
|
+
Object.defineProperty(this, "text", {
|
|
22
|
+
enumerable: true,
|
|
23
|
+
configurable: true,
|
|
24
|
+
writable: true,
|
|
25
|
+
value: void 0
|
|
26
|
+
});
|
|
21
27
|
this.text = text;
|
|
22
28
|
}
|
|
23
29
|
toString(level = 0) {
|
|
@@ -36,6 +42,24 @@ export class VNodeText extends VNode {
|
|
|
36
42
|
export class VNodeElement extends VNode {
|
|
37
43
|
constructor(tag, attrs, children) {
|
|
38
44
|
super();
|
|
45
|
+
Object.defineProperty(this, "tag", {
|
|
46
|
+
enumerable: true,
|
|
47
|
+
configurable: true,
|
|
48
|
+
writable: true,
|
|
49
|
+
value: void 0
|
|
50
|
+
});
|
|
51
|
+
Object.defineProperty(this, "attrs", {
|
|
52
|
+
enumerable: true,
|
|
53
|
+
configurable: true,
|
|
54
|
+
writable: true,
|
|
55
|
+
value: void 0
|
|
56
|
+
});
|
|
57
|
+
Object.defineProperty(this, "children", {
|
|
58
|
+
enumerable: true,
|
|
59
|
+
configurable: true,
|
|
60
|
+
writable: true,
|
|
61
|
+
value: void 0
|
|
62
|
+
});
|
|
39
63
|
this.tag = tag;
|
|
40
64
|
this.attrs = attrs;
|
|
41
65
|
this.children = children;
|
|
@@ -141,6 +165,7 @@ function normalizeChildren(children) {
|
|
|
141
165
|
}
|
|
142
166
|
return [children];
|
|
143
167
|
}
|
|
168
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
144
169
|
export function V(tag, arg1, children) {
|
|
145
170
|
const hasAttrs = typeof arg1 === 'object' && !Array.isArray(arg1);
|
|
146
171
|
if (!hasAttrs) {
|
package/build/vdom.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vdom.js","sourceRoot":"","sources":["../src/vdom.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAItC,MAAM,MAAM,GAAG,CAAC,KAAa,EAAU,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAE7D;;IAEI;AACJ,MAAM,OAAgB,KAAK;IACzB;;;OAGG;IACH,QAAQ,CAAC,KAAK,GAAG,CAAC;QAChB,OAAO,MAAM,CAAC,KAAK,CAAC,GAAG,SAAS,CAAC;IACnC,CAAC;CAIF;AAED;;IAEI;AACJ,MAAM,OAAO,SAAU,SAAQ,KAAK;IAGlC,YAAY,IAAY;QACtB,KAAK,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"vdom.js","sourceRoot":"","sources":["../src/vdom.ts"],"names":[],"mappings":"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"}
|