@loaders.gl/tile-converter 4.2.0-alpha.4 → 4.2.0-alpha.5

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 (144) hide show
  1. package/dist/3d-tiles-converter/3d-tiles-converter.d.ts +3 -3
  2. package/dist/3d-tiles-converter/3d-tiles-converter.d.ts.map +1 -1
  3. package/dist/3d-tiles-converter/3d-tiles-converter.js +329 -293
  4. package/dist/3d-tiles-converter/helpers/b3dm-converter.js +257 -200
  5. package/dist/3d-tiles-converter/helpers/i3s-obb-to-3d-tiles-obb.js +14 -5
  6. package/dist/3d-tiles-converter/helpers/load-i3s.js +106 -75
  7. package/dist/3d-tiles-converter/helpers/texture-atlas.js +44 -21
  8. package/dist/3d-tiles-converter/json-templates/tileset.js +32 -33
  9. package/dist/constants.js +0 -1
  10. package/dist/converter-cli.js +255 -234
  11. package/dist/converter.min.cjs +80 -90
  12. package/dist/deps-installer/deps-installer.js +72 -58
  13. package/dist/i3s-converter/helpers/attribute-metadata-info.js +207 -153
  14. package/dist/i3s-converter/helpers/batch-ids-extensions.d.ts +1 -1
  15. package/dist/i3s-converter/helpers/batch-ids-extensions.d.ts.map +1 -1
  16. package/dist/i3s-converter/helpers/batch-ids-extensions.js +145 -103
  17. package/dist/i3s-converter/helpers/coordinate-converter.js +100 -65
  18. package/dist/i3s-converter/helpers/create-scene-server-path.js +14 -9
  19. package/dist/i3s-converter/helpers/feature-attributes.js +168 -105
  20. package/dist/i3s-converter/helpers/geometry-attributes.d.ts +1 -1
  21. package/dist/i3s-converter/helpers/geometry-attributes.d.ts.map +1 -1
  22. package/dist/i3s-converter/helpers/geometry-attributes.js +204 -212
  23. package/dist/i3s-converter/helpers/geometry-converter.d.ts +2 -2
  24. package/dist/i3s-converter/helpers/geometry-converter.d.ts.map +1 -1
  25. package/dist/i3s-converter/helpers/geometry-converter.js +1148 -829
  26. package/dist/i3s-converter/helpers/gltf-attributes.d.ts +1 -1
  27. package/dist/i3s-converter/helpers/gltf-attributes.d.ts.map +1 -1
  28. package/dist/i3s-converter/helpers/gltf-attributes.js +111 -97
  29. package/dist/i3s-converter/helpers/load-3d-tiles.js +103 -66
  30. package/dist/i3s-converter/helpers/node-debug.js +98 -54
  31. package/dist/i3s-converter/helpers/node-index-document.d.ts +3 -3
  32. package/dist/i3s-converter/helpers/node-index-document.d.ts.map +1 -1
  33. package/dist/i3s-converter/helpers/node-index-document.js +248 -177
  34. package/dist/i3s-converter/helpers/node-pages.d.ts +1 -1
  35. package/dist/i3s-converter/helpers/node-pages.d.ts.map +1 -1
  36. package/dist/i3s-converter/helpers/node-pages.js +299 -194
  37. package/dist/i3s-converter/helpers/preprocess-3d-tiles.d.ts +1 -1
  38. package/dist/i3s-converter/helpers/preprocess-3d-tiles.d.ts.map +1 -1
  39. package/dist/i3s-converter/helpers/preprocess-3d-tiles.js +92 -60
  40. package/dist/i3s-converter/helpers/progress.js +134 -83
  41. package/dist/i3s-converter/helpers/tileset-traversal.d.ts +1 -1
  42. package/dist/i3s-converter/helpers/tileset-traversal.d.ts.map +1 -1
  43. package/dist/i3s-converter/helpers/tileset-traversal.js +24 -13
  44. package/dist/i3s-converter/i3s-converter.d.ts +7 -7
  45. package/dist/i3s-converter/i3s-converter.d.ts.map +1 -1
  46. package/dist/i3s-converter/i3s-converter.js +1044 -898
  47. package/dist/i3s-converter/json-templates/geometry-definitions.js +70 -79
  48. package/dist/i3s-converter/json-templates/layers.js +120 -121
  49. package/dist/i3s-converter/json-templates/metadata.js +19 -20
  50. package/dist/i3s-converter/json-templates/node.js +73 -71
  51. package/dist/i3s-converter/json-templates/scene-server.js +25 -26
  52. package/dist/i3s-converter/json-templates/shared-resources.js +107 -108
  53. package/dist/i3s-converter/json-templates/store.js +96 -94
  54. package/dist/i3s-converter/types.js +35 -23
  55. package/dist/i3s-server/app.js +15 -12
  56. package/dist/i3s-server/bin/www.js +14 -7
  57. package/dist/i3s-server/controllers/index-controller.js +18 -15
  58. package/dist/i3s-server/controllers/slpk-controller.js +22 -11
  59. package/dist/i3s-server/routes/index.js +9 -8
  60. package/dist/i3s-server/routes/slpk-router.js +18 -17
  61. package/dist/i3s-server/utils/create-scene-server.js +15 -10
  62. package/dist/i3s-server/utils/server-utils.js +49 -32
  63. package/dist/index.cjs +292 -851
  64. package/dist/index.cjs.map +7 -0
  65. package/dist/index.d.ts +2 -2
  66. package/dist/index.d.ts.map +1 -1
  67. package/dist/index.js +0 -1
  68. package/dist/lib/json-schemas/conversion-dump-json-schema.js +243 -421
  69. package/dist/lib/utils/cli-utils.js +63 -36
  70. package/dist/lib/utils/compress-util.js +20 -15
  71. package/dist/lib/utils/conversion-dump.d.ts +1 -1
  72. package/dist/lib/utils/conversion-dump.d.ts.map +1 -1
  73. package/dist/lib/utils/conversion-dump.js +209 -187
  74. package/dist/lib/utils/file-utils.js +122 -74
  75. package/dist/lib/utils/geometry-utils.js +13 -7
  76. package/dist/lib/utils/lod-conversion-utils.js +65 -33
  77. package/dist/lib/utils/queue.js +12 -13
  78. package/dist/lib/utils/statistic-utills.d.ts +6 -23
  79. package/dist/lib/utils/statistic-utills.js +64 -59
  80. package/dist/lib/utils/write-queue.d.ts +2 -2
  81. package/dist/lib/utils/write-queue.d.ts.map +1 -1
  82. package/dist/lib/utils/write-queue.js +68 -86
  83. package/dist/pgm-loader.js +16 -12
  84. package/dist/slpk-extractor/slpk-extractor.js +59 -50
  85. package/dist/slpk-extractor-cli.js +82 -59
  86. package/package.json +18 -18
  87. package/dist/3d-tiles-converter/3d-tiles-converter.js.map +0 -1
  88. package/dist/3d-tiles-converter/helpers/b3dm-converter.js.map +0 -1
  89. package/dist/3d-tiles-converter/helpers/i3s-obb-to-3d-tiles-obb.js.map +0 -1
  90. package/dist/3d-tiles-converter/helpers/load-i3s.js.map +0 -1
  91. package/dist/3d-tiles-converter/helpers/texture-atlas.js.map +0 -1
  92. package/dist/3d-tiles-converter/json-templates/tileset.js.map +0 -1
  93. package/dist/constants.js.map +0 -1
  94. package/dist/converter-cli.js.map +0 -1
  95. package/dist/deps-installer/deps-installer.js.map +0 -1
  96. package/dist/i3s-converter/helpers/attribute-metadata-info.js.map +0 -1
  97. package/dist/i3s-converter/helpers/batch-ids-extensions.js.map +0 -1
  98. package/dist/i3s-converter/helpers/coordinate-converter.js.map +0 -1
  99. package/dist/i3s-converter/helpers/create-scene-server-path.js.map +0 -1
  100. package/dist/i3s-converter/helpers/feature-attributes.js.map +0 -1
  101. package/dist/i3s-converter/helpers/geometry-attributes.js.map +0 -1
  102. package/dist/i3s-converter/helpers/geometry-converter.js.map +0 -1
  103. package/dist/i3s-converter/helpers/gltf-attributes.js.map +0 -1
  104. package/dist/i3s-converter/helpers/load-3d-tiles.js.map +0 -1
  105. package/dist/i3s-converter/helpers/node-debug.js.map +0 -1
  106. package/dist/i3s-converter/helpers/node-index-document.js.map +0 -1
  107. package/dist/i3s-converter/helpers/node-pages.js.map +0 -1
  108. package/dist/i3s-converter/helpers/preprocess-3d-tiles.js.map +0 -1
  109. package/dist/i3s-converter/helpers/progress.js.map +0 -1
  110. package/dist/i3s-converter/helpers/tileset-traversal.js.map +0 -1
  111. package/dist/i3s-converter/i3s-converter.js.map +0 -1
  112. package/dist/i3s-converter/json-templates/geometry-definitions.js.map +0 -1
  113. package/dist/i3s-converter/json-templates/layers.js.map +0 -1
  114. package/dist/i3s-converter/json-templates/metadata.js.map +0 -1
  115. package/dist/i3s-converter/json-templates/node.js.map +0 -1
  116. package/dist/i3s-converter/json-templates/scene-server.js.map +0 -1
  117. package/dist/i3s-converter/json-templates/shared-resources.js.map +0 -1
  118. package/dist/i3s-converter/json-templates/store.js.map +0 -1
  119. package/dist/i3s-converter/types.js.map +0 -1
  120. package/dist/i3s-server/README.md +0 -63
  121. package/dist/i3s-server/app.js.map +0 -1
  122. package/dist/i3s-server/bin/www.js.map +0 -1
  123. package/dist/i3s-server/certs/cert.pem +0 -19
  124. package/dist/i3s-server/certs/key.pem +0 -27
  125. package/dist/i3s-server/controllers/index-controller.js.map +0 -1
  126. package/dist/i3s-server/controllers/slpk-controller.js.map +0 -1
  127. package/dist/i3s-server/routes/index.js.map +0 -1
  128. package/dist/i3s-server/routes/slpk-router.js.map +0 -1
  129. package/dist/i3s-server/utils/create-scene-server.js.map +0 -1
  130. package/dist/i3s-server/utils/server-utils.js.map +0 -1
  131. package/dist/index.js.map +0 -1
  132. package/dist/lib/json-schemas/conversion-dump-json-schema.js.map +0 -1
  133. package/dist/lib/utils/cli-utils.js.map +0 -1
  134. package/dist/lib/utils/compress-util.js.map +0 -1
  135. package/dist/lib/utils/conversion-dump.js.map +0 -1
  136. package/dist/lib/utils/file-utils.js.map +0 -1
  137. package/dist/lib/utils/geometry-utils.js.map +0 -1
  138. package/dist/lib/utils/lod-conversion-utils.js.map +0 -1
  139. package/dist/lib/utils/queue.js.map +0 -1
  140. package/dist/lib/utils/statistic-utills.js.map +0 -1
  141. package/dist/lib/utils/write-queue.js.map +0 -1
  142. package/dist/pgm-loader.js.map +0 -1
  143. package/dist/slpk-extractor/slpk-extractor.js.map +0 -1
  144. package/dist/slpk-extractor-cli.js.map +0 -1
@@ -2,90 +2,121 @@ import { load } from '@loaders.gl/core';
2
2
  import { I3SLoader, parseSLPKArchive } from '@loaders.gl/i3s';
3
3
  import { FileHandleFile } from '@loaders.gl/loader-utils';
4
4
  import { ZipFileSystem, makeZipCDHeaderIterator } from '@loaders.gl/zip';
5
+ /**
6
+ * Load I3S node content
7
+ * @param sourceTileset - source layer JSON
8
+ * @param sourceTile - source I3S node metadata
9
+ * @param tilesetLoadOptions - load options for Tiles3DLoader
10
+ * @param slpkFilesystem - loaded instance of ZipFileSystem for local convertion from SLPK file
11
+ * @returns - 3DTiles tile content or null
12
+ */
5
13
  export const loadI3SContent = async (sourceTileset, sourceTile, tilesetLoadOptions, slpkFilesystem) => {
6
- if (!sourceTileset || !sourceTile.contentUrl) {
7
- return null;
8
- }
9
- const loadOptions = {
10
- ...tilesetLoadOptions,
11
- i3s: {
12
- ...tilesetLoadOptions.i3s,
13
- isTileset: false,
14
- isTileHeader: false,
15
- _tileOptions: {
16
- attributeUrls: sourceTile.attributeUrls || [],
17
- textureUrl: sourceTile.textureUrl,
18
- textureFormat: sourceTile.textureFormat,
19
- textureLoaderOptions: sourceTile.textureLoaderOptions,
20
- materialDefinition: sourceTile.materialDefinition,
21
- isDracoGeometry: sourceTile.isDracoGeometry,
22
- mbs: sourceTile.mbs
23
- },
24
- _tilesetOptions: {
25
- store: sourceTileset.store,
26
- attributeStorageInfo: sourceTileset.attributeStorageInfo,
27
- fields: sourceTileset.fields
28
- }
14
+ if (!sourceTileset || !sourceTile.contentUrl) {
15
+ return null;
29
16
  }
30
- };
31
- const tileContent = await loadFromArchive(sourceTile.contentUrl, I3SLoader, loadOptions, slpkFilesystem);
32
- return tileContent;
17
+ const loadOptions = {
18
+ ...tilesetLoadOptions,
19
+ i3s: {
20
+ ...tilesetLoadOptions.i3s,
21
+ // @ts-expect-error
22
+ isTileset: false,
23
+ // @ts-expect-error
24
+ isTileHeader: false,
25
+ _tileOptions: {
26
+ attributeUrls: sourceTile.attributeUrls || [],
27
+ textureUrl: sourceTile.textureUrl,
28
+ textureFormat: sourceTile.textureFormat,
29
+ textureLoaderOptions: sourceTile.textureLoaderOptions,
30
+ materialDefinition: sourceTile.materialDefinition,
31
+ isDracoGeometry: sourceTile.isDracoGeometry,
32
+ mbs: sourceTile.mbs
33
+ },
34
+ _tilesetOptions: {
35
+ store: sourceTileset.store,
36
+ // @ts-expect-error
37
+ attributeStorageInfo: sourceTileset.attributeStorageInfo,
38
+ // @ts-expect-error
39
+ fields: sourceTileset.fields
40
+ }
41
+ }
42
+ };
43
+ const tileContent = await loadFromArchive(sourceTile.contentUrl, I3SLoader, loadOptions, slpkFilesystem);
44
+ return tileContent;
33
45
  };
46
+ /**
47
+ * Load local SLPK file to ZipFileSystem instance
48
+ * @param url - path to SLPK file
49
+ * @returns instance of ZipFileSystem or null if url is not an SLPK file
50
+ */
34
51
  export async function openSLPK(url) {
35
- const slpkUrlParts = url.split('.slpk');
36
- const {
37
- slpkFileName
38
- } = getSlpkUrlParts(url) || {};
39
- if (slpkFileName) {
40
- const slpkFileName = `${slpkUrlParts[0]}.slpk`;
41
- const fileProvider = new FileHandleFile(slpkFileName);
42
- const archive = await parseSLPKArchive(fileProvider, undefined, slpkFileName);
43
- const fileSystem = new ZipFileSystem(archive);
44
- return fileSystem;
45
- }
46
- return null;
52
+ const slpkUrlParts = url.split('.slpk');
53
+ const { slpkFileName } = getSlpkUrlParts(url) || {};
54
+ if (slpkFileName) {
55
+ const slpkFileName = `${slpkUrlParts[0]}.slpk`;
56
+ const fileProvider = new FileHandleFile(slpkFileName);
57
+ const archive = await parseSLPKArchive(fileProvider, undefined, slpkFileName);
58
+ const fileSystem = new ZipFileSystem(archive);
59
+ return fileSystem;
60
+ }
61
+ return null;
47
62
  }
63
+ /**
64
+ * Load a resource with load options and .3tz format support
65
+ * @param url - resource URL
66
+ * @param loader - loader to parse data (Tiles3DLoader / CesiumIonLoader)
67
+ * @param loadOptions - i3s loader options
68
+ * @returns i3s resource
69
+ */
48
70
  export async function loadFromArchive(url, loader, loadOptions, fileSystem) {
49
- const slpkUrlParts = getSlpkUrlParts(url);
50
- if (fileSystem !== null && slpkUrlParts !== null) {
51
- const {
52
- internalFileName
53
- } = slpkUrlParts;
54
- const content = await load(internalFileName, loader, {
55
- ...loadOptions,
56
- fetch: fileSystem.fetch.bind(fileSystem)
57
- });
58
- return content;
59
- }
60
- return await load(url, loader, loadOptions);
71
+ const slpkUrlParts = getSlpkUrlParts(url);
72
+ if (fileSystem !== null && slpkUrlParts !== null) {
73
+ const { internalFileName } = slpkUrlParts;
74
+ const content = await load(internalFileName, loader, {
75
+ ...loadOptions,
76
+ fetch: fileSystem.fetch.bind(fileSystem)
77
+ });
78
+ return content;
79
+ }
80
+ return await load(url, loader, loadOptions);
61
81
  }
82
+ /**
83
+ * Extract slpk file path and internal from the url
84
+ * For example, for `./path/to/file.slpk/nodes/0` it returns
85
+ * {"slpkFileName": "./path/to/file.slpk", "internalFileName": "/nodes/0" }
86
+ * @param url full internal file path
87
+ * @returns object with internal slpk file parts
88
+ */
62
89
  function getSlpkUrlParts(url) {
63
- const slpkUrlParts = url.split('.slpk');
64
- let result;
65
- if (slpkUrlParts.length === 1) {
66
- result = null;
67
- } else if (slpkUrlParts.length === 2) {
68
- result = {
69
- slpkFileName: `${slpkUrlParts[0]}.slpk`,
70
- internalFileName: slpkUrlParts[1].slice(1)
71
- };
72
- } else {
73
- throw new Error('Unexpected URL format');
74
- }
75
- return result;
90
+ const slpkUrlParts = url.split('.slpk');
91
+ let result;
92
+ // Not '.slpk'. The file will be loaded with global fetch function
93
+ if (slpkUrlParts.length === 1) {
94
+ result = null;
95
+ }
96
+ else if (slpkUrlParts.length === 2) {
97
+ result = { slpkFileName: `${slpkUrlParts[0]}.slpk`, internalFileName: slpkUrlParts[1].slice(1) };
98
+ }
99
+ else {
100
+ throw new Error('Unexpected URL format');
101
+ }
102
+ return result;
76
103
  }
104
+ /**
105
+ * Get nodes count inside SLPK
106
+ * @param fileSystem - file system of SLPK
107
+ * @returns number of nodes
108
+ */
77
109
  export async function getNodeCount(fileSystem) {
78
- if (!(fileSystem !== null && fileSystem !== void 0 && fileSystem.fileProvider)) {
79
- return 0;
80
- }
81
- let count = 0;
82
- const filesIterator = makeZipCDHeaderIterator(fileSystem.fileProvider);
83
- for await (const file of filesIterator) {
84
- const filename = file.fileName;
85
- if (filename.indexOf('3dNodeIndexDocument.json.gz') >= 0) {
86
- count++;
110
+ if (!fileSystem?.fileProvider) {
111
+ return 0;
112
+ }
113
+ let count = 0;
114
+ const filesIterator = makeZipCDHeaderIterator(fileSystem.fileProvider);
115
+ for await (const file of filesIterator) {
116
+ const filename = file.fileName;
117
+ if (filename.indexOf('3dNodeIndexDocument.json.gz') >= 0) {
118
+ count++;
119
+ }
87
120
  }
88
- }
89
- return count;
121
+ return count;
90
122
  }
91
- //# sourceMappingURL=load-i3s.js.map
@@ -1,27 +1,50 @@
1
+ /**
2
+ * Apply uvRegions to texture coordinates.
3
+ * Spec - https://github.com/Esri/i3s-spec/blob/master/docs/1.7/geometryUVRegion.cmn.md
4
+ * Shader formula vec2 uv = fract(texCoords) * (uvRegions.zw - uvRegions.xy) + uvRegions.xy;
5
+ * @param texCoords
6
+ * @param uvRegions
7
+ */
1
8
  export function convertTextureAtlas(texCoords, uvRegions) {
2
- const convertedTexCoords = new Float32Array(texCoords.length);
3
- const normalisedRegions = normalizeRegions(uvRegions);
4
- for (let index = 0; index < texCoords.length; index += 2) {
5
- const uv = texCoords.subarray(index, index + 2);
6
- const regions = normalisedRegions.slice(index * 2, index * 2 + 4);
7
- const fractatedUV = fract([uv[0], uv[1]]);
8
- const subtracted = [regions[2] - regions[0], regions[3] - regions[1]];
9
- const multiplicationResult = [fractatedUV[0] * subtracted[0], fractatedUV[1] * subtracted[1]];
10
- const convertedUV = [multiplicationResult[0] + regions[0], multiplicationResult[1] + regions[1]];
11
- convertedTexCoords[index] = convertedUV[0];
12
- convertedTexCoords[index + 1] = convertedUV[1];
13
- }
14
- return convertedTexCoords;
9
+ const convertedTexCoords = new Float32Array(texCoords.length);
10
+ const normalisedRegions = normalizeRegions(uvRegions);
11
+ for (let index = 0; index < texCoords.length; index += 2) {
12
+ const uv = texCoords.subarray(index, index + 2);
13
+ const regions = normalisedRegions.slice(index * 2, index * 2 + 4);
14
+ // fract(texCoords)
15
+ const fractatedUV = fract([uv[0], uv[1]]);
16
+ // (uvRegions.zw - uvRegions.xy)
17
+ const subtracted = [regions[2] - regions[0], regions[3] - regions[1]];
18
+ // fract(texCoords) * (uvRegions.zw - uvRegions.xy)
19
+ const multiplicationResult = [fractatedUV[0] * subtracted[0], fractatedUV[1] * subtracted[1]];
20
+ // fract(texCoords) * (uvRegions.zw - uvRegions.xy) + uvRegions.xy;
21
+ const convertedUV = [
22
+ multiplicationResult[0] + regions[0],
23
+ multiplicationResult[1] + regions[1]
24
+ ];
25
+ convertedTexCoords[index] = convertedUV[0];
26
+ convertedTexCoords[index + 1] = convertedUV[1];
27
+ }
28
+ return convertedTexCoords;
15
29
  }
30
+ /**
31
+ * Do fractation of UV array.
32
+ * @param uv
33
+ */
16
34
  function fract(uv) {
17
- return [uv[0] - Math.floor(uv[0]), uv[1] - Math.floor(uv[1])];
35
+ return [uv[0] - Math.floor(uv[0]), uv[1] - Math.floor(uv[1])];
18
36
  }
37
+ /**
38
+ * Normalize uvRegions by dividing by the maximum Uint16 value
39
+ * @param regions
40
+ */
19
41
  function normalizeRegions(regions) {
20
- const MAX_UINT_16_VALUE = 65535;
21
- const normalizedRegions = [];
22
- for (let index = 0; index < regions.length; index++) {
23
- normalizedRegions[index] = regions[index] / MAX_UINT_16_VALUE;
24
- }
25
- return normalizedRegions;
42
+ // The code is for Uint16Array because it is the spec requirement
43
+ // https://github.com/Esri/i3s-spec/blob/master/docs/1.8/geometryUVRegion.cmn.md
44
+ const MAX_UINT_16_VALUE = 65535;
45
+ const normalizedRegions = [];
46
+ for (let index = 0; index < regions.length; index++) {
47
+ normalizedRegions[index] = regions[index] / MAX_UINT_16_VALUE;
48
+ }
49
+ return normalizedRegions;
26
50
  }
27
- //# sourceMappingURL=texture-atlas.js.map
@@ -1,40 +1,39 @@
1
1
  import transform from 'json-map-transform';
2
2
  const ASSET = () => ({
3
- version: {
4
- path: 'version',
5
- default: '1.0'
6
- }
3
+ version: {
4
+ path: 'version',
5
+ default: '1.0'
6
+ }
7
7
  });
8
8
  const TILE = () => ({
9
- boundingVolume: {
10
- path: 'boundingVolume'
11
- },
12
- geometricError: {
13
- path: 'geometricError'
14
- },
15
- refine: {
16
- path: 'refine'
17
- },
18
- content: {
19
- path: 'content'
20
- },
21
- children: {
22
- path: 'children',
23
- transform: val => val.map(tile => transform(tile, TILE()))
24
- }
9
+ boundingVolume: {
10
+ path: 'boundingVolume'
11
+ },
12
+ geometricError: {
13
+ path: 'geometricError'
14
+ },
15
+ refine: {
16
+ path: 'refine'
17
+ },
18
+ content: {
19
+ path: 'content'
20
+ },
21
+ children: {
22
+ path: 'children',
23
+ transform: (val) => val.map((tile) => transform(tile, TILE()))
24
+ }
25
25
  });
26
26
  export const TILESET = () => ({
27
- asset: {
28
- path: 'asset',
29
- transform: val => transform(val, ASSET())
30
- },
31
- geometricError: {
32
- path: 'root',
33
- transform: val => val.geometricError
34
- },
35
- root: {
36
- path: 'root',
37
- transform: val => transform(val, TILE())
38
- }
27
+ asset: {
28
+ path: 'asset',
29
+ transform: (val) => transform(val, ASSET())
30
+ },
31
+ geometricError: {
32
+ path: 'root',
33
+ transform: (val) => val.geometricError
34
+ },
35
+ root: {
36
+ path: 'root',
37
+ transform: (val) => transform(val, TILE())
38
+ }
39
39
  });
40
- //# sourceMappingURL=tileset.js.map
package/dist/constants.js CHANGED
@@ -1,3 +1,2 @@
1
1
  export const BROWSER_ERROR_MESSAGE = 'Tile converter does not work in browser, only in node js environment';
2
2
  export const DUMP_FILE_SUFFIX = '.dump.json';
3
- //# sourceMappingURL=constants.js.map