@loaders.gl/tile-converter 4.0.0-beta.2 → 4.0.0-beta.4

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 (294) hide show
  1. package/bin/converter.js +1 -3
  2. package/bin/i3s-server.js +1 -3
  3. package/bin/slpk-extractor.js +1 -3
  4. package/dist/{esm/3d-tiles-converter → 3d-tiles-converter}/3d-tiles-converter.js +31 -32
  5. package/dist/3d-tiles-converter/3d-tiles-converter.js.map +1 -0
  6. package/dist/{esm/3d-tiles-converter → 3d-tiles-converter}/helpers/b3dm-converter.js +5 -6
  7. package/dist/3d-tiles-converter/helpers/b3dm-converter.js.map +1 -0
  8. package/dist/3d-tiles-converter/helpers/i3s-obb-to-3d-tiles-obb.js.map +1 -0
  9. package/dist/3d-tiles-converter/helpers/load-i3s.js.map +1 -0
  10. package/dist/3d-tiles-converter/helpers/texture-atlas.js.map +1 -0
  11. package/dist/3d-tiles-converter/json-templates/tileset.js.map +1 -0
  12. package/dist/constants.js.map +1 -0
  13. package/dist/{esm/converter-cli.js → converter-cli.js} +37 -15
  14. package/dist/converter-cli.js.map +1 -0
  15. package/dist/converter.min.cjs +524 -0
  16. package/dist/{esm/deps-installer → deps-installer}/deps-installer.js +3 -3
  17. package/dist/deps-installer/deps-installer.js.map +1 -0
  18. package/dist/{esm/i3s-converter → i3s-converter}/helpers/batch-ids-extensions.js +2 -2
  19. package/dist/i3s-converter/helpers/batch-ids-extensions.js.map +1 -0
  20. package/dist/i3s-converter/helpers/coordinate-converter.js.map +1 -0
  21. package/dist/{esm/i3s-converter → i3s-converter}/helpers/create-scene-server-path.js +2 -2
  22. package/dist/i3s-converter/helpers/create-scene-server-path.js.map +1 -0
  23. package/dist/{esm/i3s-converter → i3s-converter}/helpers/feature-attributes.js +1 -1
  24. package/dist/i3s-converter/helpers/feature-attributes.js.map +1 -0
  25. package/dist/i3s-converter/helpers/geometry-attributes.js.map +1 -0
  26. package/dist/{esm/i3s-converter → i3s-converter}/helpers/geometry-converter.js +11 -11
  27. package/dist/i3s-converter/helpers/geometry-converter.js.map +1 -0
  28. package/dist/i3s-converter/helpers/gltf-attributes.js.map +1 -0
  29. package/dist/{esm/i3s-converter → i3s-converter}/helpers/load-3d-tiles.js +1 -1
  30. package/dist/i3s-converter/helpers/load-3d-tiles.js.map +1 -0
  31. package/dist/{esm/i3s-converter → i3s-converter}/helpers/node-debug.js +2 -2
  32. package/dist/i3s-converter/helpers/node-debug.js.map +1 -0
  33. package/dist/{esm/i3s-converter → i3s-converter}/helpers/node-index-document.js +14 -15
  34. package/dist/i3s-converter/helpers/node-index-document.js.map +1 -0
  35. package/dist/{esm/i3s-converter → i3s-converter}/helpers/node-pages.js +13 -14
  36. package/dist/i3s-converter/helpers/node-pages.js.map +1 -0
  37. package/dist/{esm/i3s-converter → i3s-converter}/helpers/preprocess-3d-tiles.js +1 -1
  38. package/dist/i3s-converter/helpers/preprocess-3d-tiles.js.map +1 -0
  39. package/dist/i3s-converter/helpers/tileset-traversal.js.map +1 -0
  40. package/dist/i3s-converter/i3s-converter.d.ts +6 -0
  41. package/dist/i3s-converter/i3s-converter.d.ts.map +1 -1
  42. package/dist/{esm/i3s-converter → i3s-converter}/i3s-converter.js +120 -111
  43. package/dist/i3s-converter/i3s-converter.js.map +1 -0
  44. package/dist/i3s-converter/json-templates/geometry-definitions.js.map +1 -0
  45. package/dist/{esm/i3s-converter → i3s-converter}/json-templates/layers.js +1 -1
  46. package/dist/i3s-converter/json-templates/layers.js.map +1 -0
  47. package/dist/i3s-converter/json-templates/metadata.js.map +1 -0
  48. package/dist/i3s-converter/json-templates/node.js.map +1 -0
  49. package/dist/i3s-converter/json-templates/scene-server.js.map +1 -0
  50. package/dist/{esm/i3s-converter → i3s-converter}/json-templates/shared-resources.js +2 -2
  51. package/dist/i3s-converter/json-templates/shared-resources.js.map +1 -0
  52. package/dist/i3s-converter/json-templates/store.js.map +1 -0
  53. package/dist/i3s-converter/types.js.map +1 -0
  54. package/dist/{esm/i3s-server → i3s-server}/app.js +1 -1
  55. package/dist/i3s-server/app.js.map +1 -0
  56. package/dist/i3s-server/bin/i3s-server.min.cjs +874 -0
  57. package/dist/{esm/i3s-server → i3s-server}/bin/www.js +4 -4
  58. package/dist/i3s-server/bin/www.js.map +1 -0
  59. package/dist/{esm/i3s-server → i3s-server}/controllers/index-controller.js +1 -1
  60. package/dist/i3s-server/controllers/index-controller.js.map +1 -0
  61. package/dist/i3s-server/controllers/slpk-controller.d.ts +2 -3
  62. package/dist/i3s-server/controllers/slpk-controller.d.ts.map +1 -1
  63. package/dist/i3s-server/controllers/slpk-controller.js +19 -0
  64. package/dist/i3s-server/controllers/slpk-controller.js.map +1 -0
  65. package/dist/i3s-server/routes/index.js.map +1 -0
  66. package/dist/{esm/i3s-server → i3s-server}/routes/slpk-router.js +2 -2
  67. package/dist/i3s-server/routes/slpk-router.js.map +1 -0
  68. package/dist/i3s-server/utils/create-scene-server.js.map +1 -0
  69. package/dist/{esm/i3s-server → i3s-server}/utils/server-utils.js +5 -5
  70. package/dist/i3s-server/utils/server-utils.js.map +1 -0
  71. package/dist/index.cjs +5129 -0
  72. package/dist/index.js +3 -0
  73. package/dist/index.js.map +1 -0
  74. package/dist/{esm/lib → lib}/utils/cli-utils.js +2 -2
  75. package/dist/lib/utils/cli-utils.js.map +1 -0
  76. package/dist/{esm/lib → lib}/utils/compress-util.js +15 -15
  77. package/dist/lib/utils/compress-util.js.map +1 -0
  78. package/dist/{esm/lib → lib}/utils/file-utils.js +5 -5
  79. package/dist/lib/utils/file-utils.js.map +1 -0
  80. package/dist/lib/utils/geometry-utils.js.map +1 -0
  81. package/dist/lib/utils/lod-conversion-utils.js.map +1 -0
  82. package/dist/lib/utils/queue.js.map +1 -0
  83. package/dist/lib/utils/statistic-utills.d.js +2 -0
  84. package/dist/lib/utils/statistic-utills.d.js.map +1 -0
  85. package/dist/{esm/lib → lib}/utils/statistic-utills.js +6 -6
  86. package/dist/lib/utils/statistic-utills.js.map +1 -0
  87. package/dist/{esm/lib → lib}/utils/write-queue.js +6 -7
  88. package/dist/lib/utils/write-queue.js.map +1 -0
  89. package/dist/{esm/pgm-loader.js → pgm-loader.js} +1 -1
  90. package/dist/pgm-loader.js.map +1 -0
  91. package/dist/{esm/slpk-extractor → slpk-extractor}/slpk-extractor.js +4 -4
  92. package/dist/slpk-extractor/slpk-extractor.js.map +1 -0
  93. package/dist/{esm/slpk-extractor-cli.js → slpk-extractor-cli.js} +6 -6
  94. package/dist/slpk-extractor-cli.js.map +1 -0
  95. package/dist/slpk-extractor.min.cjs +335 -0
  96. package/package.json +33 -26
  97. package/src/converter-cli.ts +32 -14
  98. package/src/i3s-converter/i3s-converter.ts +44 -30
  99. package/src/i3s-server/controllers/slpk-controller.ts +12 -10
  100. package/src/slpk-extractor/slpk-extractor.ts +1 -1
  101. package/dist/bundle.d.ts +0 -2
  102. package/dist/bundle.d.ts.map +0 -1
  103. package/dist/converter.min.js +0 -356
  104. package/dist/dist.min.js +0 -64291
  105. package/dist/es5/3d-tiles-converter/3d-tiles-converter.js +0 -447
  106. package/dist/es5/3d-tiles-converter/3d-tiles-converter.js.map +0 -1
  107. package/dist/es5/3d-tiles-converter/helpers/b3dm-converter.js +0 -295
  108. package/dist/es5/3d-tiles-converter/helpers/b3dm-converter.js.map +0 -1
  109. package/dist/es5/3d-tiles-converter/helpers/i3s-obb-to-3d-tiles-obb.js +0 -18
  110. package/dist/es5/3d-tiles-converter/helpers/i3s-obb-to-3d-tiles-obb.js.map +0 -1
  111. package/dist/es5/3d-tiles-converter/helpers/load-i3s.js +0 -63
  112. package/dist/es5/3d-tiles-converter/helpers/load-i3s.js.map +0 -1
  113. package/dist/es5/3d-tiles-converter/helpers/texture-atlas.js +0 -33
  114. package/dist/es5/3d-tiles-converter/helpers/texture-atlas.js.map +0 -1
  115. package/dist/es5/3d-tiles-converter/json-templates/tileset.js +0 -61
  116. package/dist/es5/3d-tiles-converter/json-templates/tileset.js.map +0 -1
  117. package/dist/es5/bundle.js +0 -6
  118. package/dist/es5/bundle.js.map +0 -1
  119. package/dist/es5/constants.js +0 -9
  120. package/dist/es5/constants.js.map +0 -1
  121. package/dist/es5/converter-cli.js +0 -249
  122. package/dist/es5/converter-cli.js.map +0 -1
  123. package/dist/es5/deps-installer/deps-installer.js +0 -198
  124. package/dist/es5/deps-installer/deps-installer.js.map +0 -1
  125. package/dist/es5/i3s-converter/helpers/batch-ids-extensions.js +0 -146
  126. package/dist/es5/i3s-converter/helpers/batch-ids-extensions.js.map +0 -1
  127. package/dist/es5/i3s-converter/helpers/coordinate-converter.js +0 -89
  128. package/dist/es5/i3s-converter/helpers/coordinate-converter.js.map +0 -1
  129. package/dist/es5/i3s-converter/helpers/create-scene-server-path.js +0 -41
  130. package/dist/es5/i3s-converter/helpers/create-scene-server-path.js.map +0 -1
  131. package/dist/es5/i3s-converter/helpers/feature-attributes.js +0 -164
  132. package/dist/es5/i3s-converter/helpers/feature-attributes.js.map +0 -1
  133. package/dist/es5/i3s-converter/helpers/geometry-attributes.js +0 -253
  134. package/dist/es5/i3s-converter/helpers/geometry-attributes.js.map +0 -1
  135. package/dist/es5/i3s-converter/helpers/geometry-converter.js +0 -1190
  136. package/dist/es5/i3s-converter/helpers/geometry-converter.js.map +0 -1
  137. package/dist/es5/i3s-converter/helpers/gltf-attributes.js +0 -113
  138. package/dist/es5/i3s-converter/helpers/gltf-attributes.js.map +0 -1
  139. package/dist/es5/i3s-converter/helpers/load-3d-tiles.js +0 -148
  140. package/dist/es5/i3s-converter/helpers/load-3d-tiles.js.map +0 -1
  141. package/dist/es5/i3s-converter/helpers/node-debug.js +0 -76
  142. package/dist/es5/i3s-converter/helpers/node-debug.js.map +0 -1
  143. package/dist/es5/i3s-converter/helpers/node-index-document.js +0 -522
  144. package/dist/es5/i3s-converter/helpers/node-index-document.js.map +0 -1
  145. package/dist/es5/i3s-converter/helpers/node-pages.js +0 -519
  146. package/dist/es5/i3s-converter/helpers/node-pages.js.map +0 -1
  147. package/dist/es5/i3s-converter/helpers/preprocess-3d-tiles.js +0 -146
  148. package/dist/es5/i3s-converter/helpers/preprocess-3d-tiles.js.map +0 -1
  149. package/dist/es5/i3s-converter/helpers/tileset-traversal.js +0 -82
  150. package/dist/es5/i3s-converter/helpers/tileset-traversal.js.map +0 -1
  151. package/dist/es5/i3s-converter/i3s-converter.js +0 -1554
  152. package/dist/es5/i3s-converter/i3s-converter.js.map +0 -1
  153. package/dist/es5/i3s-converter/json-templates/geometry-definitions.js +0 -107
  154. package/dist/es5/i3s-converter/json-templates/geometry-definitions.js.map +0 -1
  155. package/dist/es5/i3s-converter/json-templates/layers.js +0 -163
  156. package/dist/es5/i3s-converter/json-templates/layers.js.map +0 -1
  157. package/dist/es5/i3s-converter/json-templates/metadata.js +0 -31
  158. package/dist/es5/i3s-converter/json-templates/metadata.js.map +0 -1
  159. package/dist/es5/i3s-converter/json-templates/node.js +0 -99
  160. package/dist/es5/i3s-converter/json-templates/node.js.map +0 -1
  161. package/dist/es5/i3s-converter/json-templates/scene-server.js +0 -39
  162. package/dist/es5/i3s-converter/json-templates/scene-server.js.map +0 -1
  163. package/dist/es5/i3s-converter/json-templates/shared-resources.js +0 -173
  164. package/dist/es5/i3s-converter/json-templates/shared-resources.js.map +0 -1
  165. package/dist/es5/i3s-converter/json-templates/store.js +0 -107
  166. package/dist/es5/i3s-converter/json-templates/store.js.map +0 -1
  167. package/dist/es5/i3s-converter/types.js +0 -18
  168. package/dist/es5/i3s-converter/types.js.map +0 -1
  169. package/dist/es5/i3s-server/app.js +0 -35
  170. package/dist/es5/i3s-server/app.js.map +0 -1
  171. package/dist/es5/i3s-server/bin/www.js +0 -33
  172. package/dist/es5/i3s-server/bin/www.js.map +0 -1
  173. package/dist/es5/i3s-server/controllers/index-controller.js +0 -56
  174. package/dist/es5/i3s-server/controllers/index-controller.js.map +0 -1
  175. package/dist/es5/i3s-server/controllers/slpk-controller.js +0 -81
  176. package/dist/es5/i3s-server/controllers/slpk-controller.js.map +0 -1
  177. package/dist/es5/i3s-server/routes/index.js +0 -37
  178. package/dist/es5/i3s-server/routes/index.js.map +0 -1
  179. package/dist/es5/i3s-server/routes/slpk-router.js +0 -72
  180. package/dist/es5/i3s-server/routes/slpk-router.js.map +0 -1
  181. package/dist/es5/i3s-server/utils/create-scene-server.js +0 -20
  182. package/dist/es5/i3s-server/utils/create-scene-server.js.map +0 -1
  183. package/dist/es5/i3s-server/utils/server-utils.js +0 -49
  184. package/dist/es5/i3s-server/utils/server-utils.js.map +0 -1
  185. package/dist/es5/index.js +0 -21
  186. package/dist/es5/index.js.map +0 -1
  187. package/dist/es5/lib/utils/cli-utils.js +0 -57
  188. package/dist/es5/lib/utils/cli-utils.js.map +0 -1
  189. package/dist/es5/lib/utils/compress-util.js +0 -346
  190. package/dist/es5/lib/utils/compress-util.js.map +0 -1
  191. package/dist/es5/lib/utils/file-utils.js +0 -208
  192. package/dist/es5/lib/utils/file-utils.js.map +0 -1
  193. package/dist/es5/lib/utils/geometry-utils.js +0 -15
  194. package/dist/es5/lib/utils/geometry-utils.js.map +0 -1
  195. package/dist/es5/lib/utils/lod-conversion-utils.js +0 -50
  196. package/dist/es5/lib/utils/lod-conversion-utils.js.map +0 -1
  197. package/dist/es5/lib/utils/queue.js +0 -47
  198. package/dist/es5/lib/utils/queue.js.map +0 -1
  199. package/dist/es5/lib/utils/statistic-utills.d.ts +0 -25
  200. package/dist/es5/lib/utils/statistic-utills.js +0 -147
  201. package/dist/es5/lib/utils/statistic-utills.js.map +0 -1
  202. package/dist/es5/lib/utils/write-queue.js +0 -214
  203. package/dist/es5/lib/utils/write-queue.js.map +0 -1
  204. package/dist/es5/pgm-loader.js +0 -49
  205. package/dist/es5/pgm-loader.js.map +0 -1
  206. package/dist/es5/slpk-extractor/slpk-extractor.js +0 -171
  207. package/dist/es5/slpk-extractor/slpk-extractor.js.map +0 -1
  208. package/dist/es5/slpk-extractor-cli.js +0 -117
  209. package/dist/es5/slpk-extractor-cli.js.map +0 -1
  210. package/dist/esm/3d-tiles-converter/3d-tiles-converter.js.map +0 -1
  211. package/dist/esm/3d-tiles-converter/helpers/b3dm-converter.js.map +0 -1
  212. package/dist/esm/3d-tiles-converter/helpers/i3s-obb-to-3d-tiles-obb.js.map +0 -1
  213. package/dist/esm/3d-tiles-converter/helpers/load-i3s.js.map +0 -1
  214. package/dist/esm/3d-tiles-converter/helpers/texture-atlas.js.map +0 -1
  215. package/dist/esm/3d-tiles-converter/json-templates/tileset.js.map +0 -1
  216. package/dist/esm/bundle.js +0 -4
  217. package/dist/esm/bundle.js.map +0 -1
  218. package/dist/esm/constants.js.map +0 -1
  219. package/dist/esm/converter-cli.js.map +0 -1
  220. package/dist/esm/deps-installer/deps-installer.js.map +0 -1
  221. package/dist/esm/i3s-converter/helpers/batch-ids-extensions.js.map +0 -1
  222. package/dist/esm/i3s-converter/helpers/coordinate-converter.js.map +0 -1
  223. package/dist/esm/i3s-converter/helpers/create-scene-server-path.js.map +0 -1
  224. package/dist/esm/i3s-converter/helpers/feature-attributes.js.map +0 -1
  225. package/dist/esm/i3s-converter/helpers/geometry-attributes.js.map +0 -1
  226. package/dist/esm/i3s-converter/helpers/geometry-converter.js.map +0 -1
  227. package/dist/esm/i3s-converter/helpers/gltf-attributes.js.map +0 -1
  228. package/dist/esm/i3s-converter/helpers/load-3d-tiles.js.map +0 -1
  229. package/dist/esm/i3s-converter/helpers/node-debug.js.map +0 -1
  230. package/dist/esm/i3s-converter/helpers/node-index-document.js.map +0 -1
  231. package/dist/esm/i3s-converter/helpers/node-pages.js.map +0 -1
  232. package/dist/esm/i3s-converter/helpers/preprocess-3d-tiles.js.map +0 -1
  233. package/dist/esm/i3s-converter/helpers/tileset-traversal.js.map +0 -1
  234. package/dist/esm/i3s-converter/i3s-converter.js.map +0 -1
  235. package/dist/esm/i3s-converter/json-templates/geometry-definitions.js.map +0 -1
  236. package/dist/esm/i3s-converter/json-templates/layers.js.map +0 -1
  237. package/dist/esm/i3s-converter/json-templates/metadata.js.map +0 -1
  238. package/dist/esm/i3s-converter/json-templates/node.js.map +0 -1
  239. package/dist/esm/i3s-converter/json-templates/scene-server.js.map +0 -1
  240. package/dist/esm/i3s-converter/json-templates/shared-resources.js.map +0 -1
  241. package/dist/esm/i3s-converter/json-templates/store.js.map +0 -1
  242. package/dist/esm/i3s-converter/types.js.map +0 -1
  243. package/dist/esm/i3s-server/README.md +0 -63
  244. package/dist/esm/i3s-server/app.js.map +0 -1
  245. package/dist/esm/i3s-server/bin/i3s-server.min.js +0 -516
  246. package/dist/esm/i3s-server/bin/www.js.map +0 -1
  247. package/dist/esm/i3s-server/certs/cert.pem +0 -19
  248. package/dist/esm/i3s-server/certs/key.pem +0 -27
  249. package/dist/esm/i3s-server/controllers/index-controller.js.map +0 -1
  250. package/dist/esm/i3s-server/controllers/slpk-controller.js +0 -19
  251. package/dist/esm/i3s-server/controllers/slpk-controller.js.map +0 -1
  252. package/dist/esm/i3s-server/routes/index.js.map +0 -1
  253. package/dist/esm/i3s-server/routes/slpk-router.js.map +0 -1
  254. package/dist/esm/i3s-server/utils/create-scene-server.js.map +0 -1
  255. package/dist/esm/i3s-server/utils/server-utils.js.map +0 -1
  256. package/dist/esm/index.js +0 -3
  257. package/dist/esm/index.js.map +0 -1
  258. package/dist/esm/lib/utils/cli-utils.js.map +0 -1
  259. package/dist/esm/lib/utils/compress-util.js.map +0 -1
  260. package/dist/esm/lib/utils/file-utils.js.map +0 -1
  261. package/dist/esm/lib/utils/geometry-utils.js.map +0 -1
  262. package/dist/esm/lib/utils/lod-conversion-utils.js.map +0 -1
  263. package/dist/esm/lib/utils/queue.js.map +0 -1
  264. package/dist/esm/lib/utils/statistic-utills.d.ts +0 -25
  265. package/dist/esm/lib/utils/statistic-utills.js.map +0 -1
  266. package/dist/esm/lib/utils/write-queue.js.map +0 -1
  267. package/dist/esm/pgm-loader.js.map +0 -1
  268. package/dist/esm/slpk-extractor/slpk-extractor.js.map +0 -1
  269. package/dist/esm/slpk-extractor-cli.js.map +0 -1
  270. package/dist/slpk-extractor.min.js +0 -189
  271. package/src/bundle.ts +0 -4
  272. /package/dist/{esm/3d-tiles-converter → 3d-tiles-converter}/helpers/i3s-obb-to-3d-tiles-obb.js +0 -0
  273. /package/dist/{esm/3d-tiles-converter → 3d-tiles-converter}/helpers/load-i3s.js +0 -0
  274. /package/dist/{esm/3d-tiles-converter → 3d-tiles-converter}/helpers/texture-atlas.js +0 -0
  275. /package/dist/{esm/3d-tiles-converter → 3d-tiles-converter}/json-templates/tileset.js +0 -0
  276. /package/dist/{esm/constants.js → constants.js} +0 -0
  277. /package/dist/{esm/i3s-converter → i3s-converter}/helpers/coordinate-converter.js +0 -0
  278. /package/dist/{esm/i3s-converter → i3s-converter}/helpers/geometry-attributes.js +0 -0
  279. /package/dist/{esm/i3s-converter → i3s-converter}/helpers/gltf-attributes.js +0 -0
  280. /package/dist/{esm/i3s-converter → i3s-converter}/helpers/tileset-traversal.js +0 -0
  281. /package/dist/{esm/i3s-converter → i3s-converter}/json-templates/geometry-definitions.js +0 -0
  282. /package/dist/{esm/i3s-converter → i3s-converter}/json-templates/metadata.js +0 -0
  283. /package/dist/{esm/i3s-converter → i3s-converter}/json-templates/node.js +0 -0
  284. /package/dist/{esm/i3s-converter → i3s-converter}/json-templates/scene-server.js +0 -0
  285. /package/dist/{esm/i3s-converter → i3s-converter}/json-templates/store.js +0 -0
  286. /package/dist/{esm/i3s-converter → i3s-converter}/types.js +0 -0
  287. /package/dist/{es5/i3s-server → i3s-server}/README.md +0 -0
  288. /package/dist/{es5/i3s-server → i3s-server}/certs/cert.pem +0 -0
  289. /package/dist/{es5/i3s-server → i3s-server}/certs/key.pem +0 -0
  290. /package/dist/{esm/i3s-server → i3s-server}/routes/index.js +0 -0
  291. /package/dist/{esm/i3s-server → i3s-server}/utils/create-scene-server.js +0 -0
  292. /package/dist/{esm/lib → lib}/utils/geometry-utils.js +0 -0
  293. /package/dist/{esm/lib → lib}/utils/lod-conversion-utils.js +0 -0
  294. /package/dist/{esm/lib → lib}/utils/queue.js +0 -0
package/package.json CHANGED
@@ -1,8 +1,9 @@
1
1
  {
2
2
  "name": "@loaders.gl/tile-converter",
3
- "version": "4.0.0-beta.2",
3
+ "version": "4.0.0-beta.4",
4
4
  "description": "Converter",
5
5
  "license": "MIT",
6
+ "type": "module",
6
7
  "publishConfig": {
7
8
  "access": "public"
8
9
  },
@@ -16,8 +17,15 @@
16
17
  "i3s"
17
18
  ],
18
19
  "types": "dist/index.d.ts",
19
- "main": "dist/es5/index.js",
20
- "module": "dist/esm/index.js",
20
+ "main": "dist/index.cjs",
21
+ "module": "dist/index.js",
22
+ "exports": {
23
+ ".": {
24
+ "import": "./dist/index.js",
25
+ "require": "./dist/index.cjs",
26
+ "types": "./dist/index.d.ts"
27
+ }
28
+ },
21
29
  "sideEffects": false,
22
30
  "bin": {
23
31
  "tile-converter": "./bin/converter.js",
@@ -38,29 +46,28 @@
38
46
  "join-images": false
39
47
  },
40
48
  "scripts": {
41
- "pre-build": "npm run build-bundle && npm run build-converter-bundle && npm run build-slpk-extractor-bundle && npm run build-i3s-server-bundle",
42
- "build-bundle": "esbuild ./src/index.ts --bundle --outfile=dist/dist.min.js --platform=node --external:join-images",
43
- "build-converter-bundle": "esbuild src/converter-cli.ts --outfile=dist/converter.min.js --platform=node --target=esnext,node14 --external:join-images --minify --bundle --define:__VERSION__=\\\"$npm_package_version\\\"",
44
- "build-slpk-extractor-bundle": "esbuild src/slpk-extractor-cli.ts --outfile=dist/slpk-extractor.min.js --platform=node --target=esnext,node14 --external:join-images --minify --bundle --define:__VERSION__=\\\"$npm_package_version\\\"",
45
- "build-i3s-server-bundle": "esbuild src/i3s-server/bin/www.ts --outfile=dist/esm/i3s-server/bin/i3s-server.min.js --platform=node --target=esnext,node14 --external:join-images --minify --bundle --define:__VERSION__=\\\"$npm_package_version\\\""
49
+ "pre-build": "npm run build-converter-bundle && npm run build-slpk-extractor-bundle && npm run build-i3s-server-bundle",
50
+ "build-converter-bundle": "esbuild src/converter-cli.ts --outfile=dist/converter.min.cjs --platform=node --target=esnext,node14 --external:join-images --minify --bundle --define:__VERSION__=\\\"$npm_package_version\\\"",
51
+ "build-slpk-extractor-bundle": "esbuild src/slpk-extractor-cli.ts --outfile=dist/slpk-extractor.min.cjs --platform=node --target=esnext,node14 --minify --bundle --define:__VERSION__=\\\"$npm_package_version\\\"",
52
+ "build-i3s-server-bundle": "esbuild src/i3s-server/bin/www.ts --outfile=dist/i3s-server/bin/i3s-server.min.cjs --platform=node --target=esnext,node14 --minify --bundle --define:__VERSION__=\\\"$npm_package_version\\\""
46
53
  },
47
54
  "dependencies": {
48
- "@loaders.gl/3d-tiles": "4.0.0-beta.2",
49
- "@loaders.gl/crypto": "4.0.0-beta.2",
50
- "@loaders.gl/draco": "4.0.0-beta.2",
51
- "@loaders.gl/gltf": "4.0.0-beta.2",
52
- "@loaders.gl/i3s": "4.0.0-beta.2",
53
- "@loaders.gl/images": "4.0.0-beta.2",
54
- "@loaders.gl/loader-utils": "4.0.0-beta.2",
55
- "@loaders.gl/polyfills": "4.0.0-beta.2",
56
- "@loaders.gl/textures": "4.0.0-beta.2",
57
- "@loaders.gl/tiles": "4.0.0-beta.2",
58
- "@loaders.gl/worker-utils": "4.0.0-beta.2",
59
- "@loaders.gl/zip": "4.0.0-beta.2",
60
- "@math.gl/core": "^3.5.1",
61
- "@math.gl/culling": "^3.5.1",
62
- "@math.gl/geoid": "^3.5.1",
63
- "@math.gl/geospatial": "^3.5.1",
55
+ "@loaders.gl/3d-tiles": "4.0.0-beta.4",
56
+ "@loaders.gl/crypto": "4.0.0-beta.4",
57
+ "@loaders.gl/draco": "4.0.0-beta.4",
58
+ "@loaders.gl/gltf": "4.0.0-beta.4",
59
+ "@loaders.gl/i3s": "4.0.0-beta.4",
60
+ "@loaders.gl/images": "4.0.0-beta.4",
61
+ "@loaders.gl/loader-utils": "4.0.0-beta.4",
62
+ "@loaders.gl/polyfills": "4.0.0-beta.4",
63
+ "@loaders.gl/textures": "4.0.0-beta.4",
64
+ "@loaders.gl/tiles": "4.0.0-beta.4",
65
+ "@loaders.gl/worker-utils": "4.0.0-beta.4",
66
+ "@loaders.gl/zip": "4.0.0-beta.4",
67
+ "@math.gl/core": "^4.0.0",
68
+ "@math.gl/culling": "^4.0.0",
69
+ "@math.gl/geoid": "^4.0.0",
70
+ "@math.gl/geospatial": "^4.0.0",
64
71
  "archiver": "^5.0.0",
65
72
  "cors": "^2.8.5",
66
73
  "crypt": "^0.0.2",
@@ -74,13 +81,13 @@
74
81
  "uuid": "^9.0.0"
75
82
  },
76
83
  "peerDependencies": {
77
- "@loaders.gl/core": "^4.0.0-alpha.8"
84
+ "@loaders.gl/core": "4.0.0-beta.3"
78
85
  },
79
86
  "quarantinedDependencies": {
80
87
  "join-images": "^1.1.3",
81
88
  "sharp": "^0.31.3"
82
89
  },
83
- "gitHead": "79c2033f755e88e11bc30a04428e3666b177b8fc",
90
+ "gitHead": "848c20b474532d301f2c3f8d4e1fb9bf262b86d4",
84
91
  "devDependencies": {
85
92
  "@types/express": "^4.17.17",
86
93
  "@types/node": "^20.4.2"
@@ -52,6 +52,8 @@ type TileConversionOptions = {
52
52
  slpk: boolean;
53
53
  /** Feature metadata class from EXT_FEATURE_METADATA or EXT_STRUCTURAL_METADATA extensions */
54
54
  metadataClass?: string;
55
+ /** With this options the tileset content will be analyzed without conversion */
56
+ analyze?: boolean;
55
57
  };
56
58
 
57
59
  /* During validation we check that particular options are defined so they can't be undefined */
@@ -136,6 +138,7 @@ function printHelp(): void {
136
138
  '--generate-textures [Enable KTX2 textures generation if only one of (JPG, PNG) texture is provided or generate JPG texture if only KTX2 is provided]'
137
139
  );
138
140
  console.log('--generate-bounding-volumes [Generate obb and mbs bounding volumes from geometry]');
141
+ console.log('--analyze [Analyze the input tileset content without conversion, default: false]');
139
142
  console.log(
140
143
  '--metadata-class [One of the list of feature metadata classes, detected by converter on "analyze" stage, default: not set]'
141
144
  );
@@ -180,6 +183,8 @@ async function convert(options: ValidatedTileConversionOptions) {
180
183
  generateBoundingVolumes: options.generateBoundingVolumes,
181
184
  validate: options.validate,
182
185
  instantNodeWriting: options.instantNodeWriting,
186
+ metadataClass: options.metadataClass,
187
+ analyze: options.analyze,
183
188
  inquirer
184
189
  });
185
190
  break;
@@ -196,26 +201,35 @@ async function convert(options: ValidatedTileConversionOptions) {
196
201
  */
197
202
  function validateOptions(options: TileConversionOptions): ValidatedTileConversionOptions {
198
203
  const mandatoryOptionsWithExceptions: {
199
- [key: string]: () => void;
204
+ [key: string]: {
205
+ getMessage: () => void;
206
+ condition?: (optionValue: any) => boolean;
207
+ };
200
208
  } = {
201
- name: () => console.log('Missed: --name [Tileset name]'),
202
- output: () => console.log('Missed: --output [Output path name]'),
203
- sevenZipExe: () => console.log('Missed: --7zExe [7z archiver executable path]'),
204
- egm: () => console.log('Missed: --egm [*.pgm earth gravity model file path]'),
205
- tileset: () => console.log('Missed: --tileset [tileset.json file]'),
206
- inputType: () =>
207
- console.log('Missed/Incorrect: --input-type [tileset input type: I3S or 3DTILES]')
209
+ name: {
210
+ getMessage: () => console.log('Missed: --name [Tileset name]'),
211
+ condition: (value: any) => Boolean(value) || Boolean(options.analyze)
212
+ },
213
+ output: {getMessage: () => console.log('Missed: --output [Output path name]')},
214
+ sevenZipExe: {getMessage: () => console.log('Missed: --7zExe [7z archiver executable path]')},
215
+ egm: {getMessage: () => console.log('Missed: --egm [*.pgm earth gravity model file path]')},
216
+ tileset: {getMessage: () => console.log('Missed: --tileset [tileset.json file]')},
217
+ inputType: {
218
+ getMessage: () =>
219
+ console.log('Missed/Incorrect: --input-type [tileset input type: I3S or 3DTILES]'),
220
+ condition: (value) =>
221
+ Boolean(value) && Object.values(TILESET_TYPE).includes(value.toUpperCase())
222
+ }
208
223
  };
209
224
  const exceptions: (() => void)[] = [];
210
225
  for (const mandatoryOption in mandatoryOptionsWithExceptions) {
211
226
  const optionValue = options[mandatoryOption];
212
- const isWrongInputType =
213
- Boolean(optionValue) &&
214
- mandatoryOption === 'inputType' &&
215
- !Object.values(TILESET_TYPE).includes(optionValue.toUpperCase());
216
227
 
217
- if (!optionValue || isWrongInputType) {
218
- exceptions.push(mandatoryOptionsWithExceptions[mandatoryOption]);
228
+ const conditionFunc = mandatoryOptionsWithExceptions[mandatoryOption].condition;
229
+ const testValue = conditionFunc ? conditionFunc(optionValue) : optionValue;
230
+
231
+ if (!testValue) {
232
+ exceptions.push(mandatoryOptionsWithExceptions[mandatoryOption].getMessage);
219
233
  }
220
234
  }
221
235
  if (exceptions.length) {
@@ -297,8 +311,12 @@ function parseOptions(args: string[]): TileConversionOptions {
297
311
  case '--generate-bounding-volumes':
298
312
  opts.generateBoundingVolumes = getBooleanValue(index, args);
299
313
  break;
314
+ case '--analyze':
315
+ opts.analyze = getBooleanValue(index, args);
316
+ break;
300
317
  case '--metadata-class':
301
318
  opts.metadataClass = getStringValue(index, args);
319
+ break;
302
320
  case '--help':
303
321
  printHelp();
304
322
  break;
@@ -194,6 +194,7 @@ export default class I3SConverter {
194
194
  instantNodeWriting?: boolean;
195
195
  inquirer?: Promise<unknown>;
196
196
  metadataClass?: string;
197
+ analyze?: boolean;
197
198
  }): Promise<string> {
198
199
  if (isBrowser) {
199
200
  console.log(BROWSER_ERROR_MESSAGE);
@@ -216,7 +217,8 @@ export default class I3SConverter {
216
217
  instantNodeWriting = false,
217
218
  mergeMaterials = true,
218
219
  inquirer,
219
- metadataClass
220
+ metadataClass,
221
+ analyze = false
220
222
  } = options;
221
223
  this.options = {
222
224
  maxDepth,
@@ -259,11 +261,15 @@ export default class I3SConverter {
259
261
  }
260
262
  this.sourceTileset = await loadFromArchive(tilesetUrl, this.Loader, this.loadOptions);
261
263
 
262
- const preprocessResult = await this.preprocessConversion();
264
+ const preprocessResult =
265
+ this.Loader === Tiles3DLoader || analyze ? await this.preprocessConversion() : true;
263
266
 
264
- if (preprocessResult) {
265
- await this._createAndSaveTileset(outputPath, tilesetName);
266
- await this._finishConversion({slpk: Boolean(slpk), outputPath, tilesetName});
267
+ if (preprocessResult && !analyze) {
268
+ const selectMetadataClassResult = await this.selectMetadataClass();
269
+ if (selectMetadataClassResult) {
270
+ await this._createAndSaveTileset(outputPath, tilesetName);
271
+ await this._finishConversion({slpk: Boolean(slpk), outputPath, tilesetName});
272
+ }
267
273
  }
268
274
  } catch (error) {
269
275
  throw error;
@@ -317,31 +323,6 @@ export default class I3SConverter {
317
323
  return false;
318
324
  }
319
325
 
320
- if (metadataClasses.size > 1) {
321
- if (this.options.metadataClass?.length) {
322
- console.log(`${this.options.metadataClass} has been selected`);
323
- } else if (this.options.inquirer) {
324
- const result = await this.options.inquirer.prompt([
325
- {
326
- name: 'metadataClass',
327
- type: 'list',
328
- message: 'Select feature metadata data class to convert...',
329
- choices: Array.from(metadataClasses)
330
- }
331
- ]);
332
- this.options.metadataClass = result.metadataClass;
333
- console.log(`${result.metadataClass} has been selected`);
334
- } else {
335
- console.log(
336
- `A feature metadata class has not been selected. Start the converter with option "--metadata-class". For example, "npx tile-converter ... --metadata-class ${
337
- Array.from(metadataClasses)[0]
338
- }"`
339
- );
340
- console.log(`------------------------------------------------`);
341
- return false;
342
- }
343
- }
344
-
345
326
  return true;
346
327
  }
347
328
 
@@ -381,6 +362,39 @@ export default class I3SConverter {
381
362
  return null;
382
363
  }
383
364
 
365
+ /**
366
+ * Select metadata class associated with the set of feature attributes
367
+ * @returns true if the metadata class has been successfully selected
368
+ */
369
+ private async selectMetadataClass() {
370
+ const {metadataClasses} = this.preprocessData;
371
+ if (metadataClasses.size > 1) {
372
+ if (this.options.metadataClass?.length) {
373
+ console.log(`${this.options.metadataClass} has been selected`);
374
+ } else if (this.options.inquirer) {
375
+ const result = await this.options.inquirer.prompt([
376
+ {
377
+ name: 'metadataClass',
378
+ type: 'list',
379
+ message: 'Select feature metadata data class to convert...',
380
+ choices: Array.from(metadataClasses)
381
+ }
382
+ ]);
383
+ this.options.metadataClass = result.metadataClass;
384
+ console.log(`${result.metadataClass} has been selected`);
385
+ } else {
386
+ console.log(
387
+ `A feature metadata class has not been selected. Start the converter with option "--metadata-class". For example, "npx tile-converter ... --metadata-class ${
388
+ Array.from(metadataClasses)[0]
389
+ }"`
390
+ );
391
+ console.log(`------------------------------------------------`);
392
+ return false;
393
+ }
394
+ }
395
+ return true;
396
+ }
397
+
384
398
  /**
385
399
  * Convert and save the layer and embedded tiles
386
400
  * @param outputPath - path to save output data
@@ -1,32 +1,34 @@
1
1
  import '@loaders.gl/polyfills';
2
- import {parseSLPK} from '@loaders.gl/i3s';
2
+ import {parseSLPKArchive, SLPKArchive} from '@loaders.gl/i3s';
3
3
  import {FileHandleFile} from '@loaders.gl/loader-utils';
4
4
 
5
- let slpkArchive;
5
+ let slpkArchive: SLPKArchive;
6
6
 
7
7
  /**
8
8
  * Open SLPK file for reading and load HASH file
9
9
  * @param fullLayerPath - full path to SLPK file
10
10
  */
11
- export const loadArchive = async (fullLayerPath: string): Promise<void> => {
12
- slpkArchive = await parseSLPK(await FileHandleFile.from(fullLayerPath), (msg) =>
11
+ export async function loadArchive(fullLayerPath: string): Promise<void> {
12
+ slpkArchive = await parseSLPKArchive(new FileHandleFile(fullLayerPath), (msg) =>
13
13
  console.log(msg)
14
14
  );
15
15
  console.log('The server is ready to use');
16
- };
16
+ }
17
17
 
18
18
  /**
19
19
  * Get a file from SLPK
20
20
  * @param url - I3S HTTP URL
21
21
  * @returns - file content
22
22
  */
23
- export async function getFileByUrl(url: string) {
23
+ export async function getFileByUrl(url: string): Promise<ArrayBuffer | null> {
24
24
  const trimmedPath = /^\/?(.*)\/?$/.exec(url);
25
- let uncompressedFile: Buffer | null = null;
26
25
  if (trimmedPath) {
27
26
  try {
28
- uncompressedFile = Buffer.from(await slpkArchive.getFile(trimmedPath[1], 'http'));
29
- } catch (e) {}
27
+ const uncompressedFile = await slpkArchive.getFile(trimmedPath[1], 'http');
28
+ return uncompressedFile;
29
+ } catch {
30
+ // TODO - log error?
31
+ }
30
32
  }
31
- return uncompressedFile;
33
+ return null;
32
34
  }
@@ -38,7 +38,7 @@ export default class SLPKExtractor {
38
38
  }
39
39
  const {inputUrl} = options;
40
40
 
41
- const provider = await FileHandleFile.from(inputUrl);
41
+ const provider = new FileHandleFile(inputUrl);
42
42
 
43
43
  let localHeader = await parseZipLocalFileHeader(0n, provider);
44
44
  while (localHeader) {
package/dist/bundle.d.ts DELETED
@@ -1,2 +0,0 @@
1
- declare const moduleExports: any;
2
- //# sourceMappingURL=bundle.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"bundle.d.ts","sourceRoot":"","sources":["../src/bundle.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,aAAa,KAAqB,CAAC"}