@loaders.gl/tile-converter 4.0.0-alpha.1 → 4.0.0-alpha.11

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 (502) hide show
  1. package/bin/converter.js +1 -1
  2. package/bin/slpk-extractor.js +4 -0
  3. package/dist/3d-tiles-attributes-worker.d.ts +28 -0
  4. package/dist/3d-tiles-attributes-worker.d.ts.map +1 -0
  5. package/dist/3d-tiles-attributes-worker.js +3 -0
  6. package/dist/3d-tiles-attributes-worker.js.map +7 -0
  7. package/dist/3d-tiles-converter/3d-tiles-converter.d.ts +90 -0
  8. package/dist/3d-tiles-converter/3d-tiles-converter.d.ts.map +1 -0
  9. package/dist/3d-tiles-converter/3d-tiles-converter.js +275 -226
  10. package/dist/3d-tiles-converter/helpers/b3dm-converter.d.ts +71 -18
  11. package/dist/3d-tiles-converter/helpers/b3dm-converter.d.ts.map +1 -0
  12. package/dist/3d-tiles-converter/helpers/b3dm-converter.js +256 -236
  13. package/dist/3d-tiles-converter/helpers/i3s-obb-to-3d-tiles-obb.d.ts +4 -7
  14. package/dist/3d-tiles-converter/helpers/i3s-obb-to-3d-tiles-obb.d.ts.map +1 -0
  15. package/dist/3d-tiles-converter/helpers/i3s-obb-to-3d-tiles-obb.js +22 -9
  16. package/dist/3d-tiles-converter/helpers/texture-atlas.d.ts +9 -0
  17. package/dist/3d-tiles-converter/helpers/texture-atlas.d.ts.map +1 -0
  18. package/dist/3d-tiles-converter/helpers/texture-atlas.js +47 -28
  19. package/dist/3d-tiles-converter/json-templates/tileset.d.ts +15 -0
  20. package/dist/3d-tiles-converter/json-templates/tileset.d.ts.map +1 -0
  21. package/dist/3d-tiles-converter/json-templates/tileset.js +42 -36
  22. package/dist/bundle.d.ts +2 -0
  23. package/dist/bundle.d.ts.map +1 -0
  24. package/dist/bundle.js +2 -2
  25. package/dist/constants.d.ts +2 -0
  26. package/dist/constants.d.ts.map +1 -0
  27. package/dist/constants.js +4 -0
  28. package/dist/converter-cli.d.ts +2 -0
  29. package/dist/converter-cli.d.ts.map +1 -0
  30. package/dist/converter-cli.js +214 -0
  31. package/dist/converter.min.js +185 -190
  32. package/dist/deps-installer/deps-installer.d.ts +11 -3
  33. package/dist/deps-installer/deps-installer.d.ts.map +1 -0
  34. package/dist/deps-installer/deps-installer.js +61 -23
  35. package/dist/dist.min.js +64143 -0
  36. package/dist/es5/3d-tiles-attributes-worker.js +25 -0
  37. package/dist/es5/3d-tiles-attributes-worker.js.map +1 -0
  38. package/dist/es5/3d-tiles-converter/3d-tiles-converter.js +467 -0
  39. package/dist/es5/3d-tiles-converter/3d-tiles-converter.js.map +1 -0
  40. package/dist/es5/3d-tiles-converter/helpers/b3dm-converter.js +293 -0
  41. package/dist/es5/3d-tiles-converter/helpers/b3dm-converter.js.map +1 -0
  42. package/dist/es5/3d-tiles-converter/helpers/i3s-obb-to-3d-tiles-obb.js +18 -0
  43. package/dist/es5/3d-tiles-converter/helpers/i3s-obb-to-3d-tiles-obb.js.map +1 -0
  44. package/dist/es5/3d-tiles-converter/helpers/texture-atlas.js +33 -0
  45. package/dist/es5/3d-tiles-converter/helpers/texture-atlas.js.map +1 -0
  46. package/dist/es5/3d-tiles-converter/json-templates/tileset.js +61 -0
  47. package/dist/es5/3d-tiles-converter/json-templates/tileset.js.map +1 -0
  48. package/dist/es5/bundle.js +6 -0
  49. package/dist/es5/bundle.js.map +1 -0
  50. package/dist/es5/constants.js +9 -0
  51. package/dist/es5/constants.js.map +1 -0
  52. package/dist/es5/converter-cli.js +244 -0
  53. package/dist/es5/converter-cli.js.map +1 -0
  54. package/dist/es5/deps-installer/deps-installer.js +124 -0
  55. package/dist/es5/deps-installer/deps-installer.js.map +1 -0
  56. package/dist/es5/i3s-attributes-worker.js +25 -0
  57. package/dist/es5/i3s-attributes-worker.js.map +1 -0
  58. package/dist/es5/i3s-converter/helpers/batch-ids-extensions.js +116 -0
  59. package/dist/es5/i3s-converter/helpers/batch-ids-extensions.js.map +1 -0
  60. package/dist/es5/i3s-converter/helpers/coordinate-converter.js +89 -0
  61. package/dist/es5/i3s-converter/helpers/coordinate-converter.js.map +1 -0
  62. package/dist/es5/i3s-converter/helpers/create-scene-server-path.js +41 -0
  63. package/dist/es5/i3s-converter/helpers/create-scene-server-path.js.map +1 -0
  64. package/dist/es5/i3s-converter/helpers/feature-attributes.js +174 -0
  65. package/dist/es5/i3s-converter/helpers/feature-attributes.js.map +1 -0
  66. package/dist/es5/i3s-converter/helpers/geometry-attributes.js +213 -0
  67. package/dist/es5/i3s-converter/helpers/geometry-attributes.js.map +1 -0
  68. package/dist/es5/i3s-converter/helpers/geometry-converter.js +1192 -0
  69. package/dist/es5/i3s-converter/helpers/geometry-converter.js.map +1 -0
  70. package/dist/es5/i3s-converter/helpers/gltf-attributes.js +113 -0
  71. package/dist/es5/i3s-converter/helpers/gltf-attributes.js.map +1 -0
  72. package/dist/es5/i3s-converter/helpers/load-3d-tiles.js +82 -0
  73. package/dist/es5/i3s-converter/helpers/load-3d-tiles.js.map +1 -0
  74. package/dist/es5/i3s-converter/helpers/node-debug.js +76 -0
  75. package/dist/es5/i3s-converter/helpers/node-debug.js.map +1 -0
  76. package/dist/es5/i3s-converter/helpers/node-index-document.js +521 -0
  77. package/dist/es5/i3s-converter/helpers/node-index-document.js.map +1 -0
  78. package/dist/es5/i3s-converter/helpers/node-pages.js +519 -0
  79. package/dist/es5/i3s-converter/helpers/node-pages.js.map +1 -0
  80. package/dist/es5/i3s-converter/helpers/preprocess-3d-tiles.js +111 -0
  81. package/dist/es5/i3s-converter/helpers/preprocess-3d-tiles.js.map +1 -0
  82. package/dist/es5/i3s-converter/helpers/tileset-traversal.js +82 -0
  83. package/dist/es5/i3s-converter/helpers/tileset-traversal.js.map +1 -0
  84. package/dist/es5/i3s-converter/i3s-converter.js +1541 -0
  85. package/dist/es5/i3s-converter/i3s-converter.js.map +1 -0
  86. package/dist/es5/i3s-converter/json-templates/geometry-definitions.js +107 -0
  87. package/dist/es5/i3s-converter/json-templates/geometry-definitions.js.map +1 -0
  88. package/dist/es5/i3s-converter/json-templates/layers.js +163 -0
  89. package/dist/es5/i3s-converter/json-templates/layers.js.map +1 -0
  90. package/dist/es5/i3s-converter/json-templates/metadata.js +31 -0
  91. package/dist/es5/i3s-converter/json-templates/metadata.js.map +1 -0
  92. package/dist/es5/i3s-converter/json-templates/node.js +99 -0
  93. package/dist/es5/i3s-converter/json-templates/node.js.map +1 -0
  94. package/dist/es5/i3s-converter/json-templates/scene-server.js +39 -0
  95. package/dist/es5/i3s-converter/json-templates/scene-server.js.map +1 -0
  96. package/dist/es5/i3s-converter/json-templates/shared-resources.js +173 -0
  97. package/dist/es5/i3s-converter/json-templates/shared-resources.js.map +1 -0
  98. package/dist/es5/i3s-converter/json-templates/store.js +107 -0
  99. package/dist/es5/i3s-converter/json-templates/store.js.map +1 -0
  100. package/dist/es5/i3s-converter/types.js +18 -0
  101. package/dist/es5/i3s-converter/types.js.map +1 -0
  102. package/dist/es5/i3s-server/README.md +19 -0
  103. package/dist/es5/i3s-server/app.js +27 -0
  104. package/dist/es5/i3s-server/app.js.map +1 -0
  105. package/dist/es5/i3s-server/controllers/index-controller.js +55 -0
  106. package/dist/es5/i3s-server/controllers/index-controller.js.map +1 -0
  107. package/dist/es5/i3s-server/controllers/slpk-controller.js +84 -0
  108. package/dist/es5/i3s-server/controllers/slpk-controller.js.map +1 -0
  109. package/dist/es5/i3s-server/routes/index.js +37 -0
  110. package/dist/es5/i3s-server/routes/index.js.map +1 -0
  111. package/dist/es5/i3s-server/routes/slpk-router.js +71 -0
  112. package/dist/es5/i3s-server/routes/slpk-router.js.map +1 -0
  113. package/dist/es5/i3s-server/utils/create-scene-server.js +17 -0
  114. package/dist/es5/i3s-server/utils/create-scene-server.js.map +1 -0
  115. package/dist/es5/index.js +21 -0
  116. package/dist/es5/index.js.map +1 -0
  117. package/dist/es5/lib/utils/cli-utils.js +57 -0
  118. package/dist/es5/lib/utils/cli-utils.js.map +1 -0
  119. package/dist/es5/lib/utils/compress-util.js +346 -0
  120. package/dist/es5/lib/utils/compress-util.js.map +1 -0
  121. package/dist/es5/lib/utils/file-utils.js +208 -0
  122. package/dist/es5/lib/utils/file-utils.js.map +1 -0
  123. package/dist/es5/lib/utils/geometry-utils.js +15 -0
  124. package/dist/es5/lib/utils/geometry-utils.js.map +1 -0
  125. package/dist/es5/lib/utils/lod-conversion-utils.js +44 -0
  126. package/dist/es5/lib/utils/lod-conversion-utils.js.map +1 -0
  127. package/dist/es5/lib/utils/queue.js +47 -0
  128. package/dist/es5/lib/utils/queue.js.map +1 -0
  129. package/dist/es5/lib/utils/statistic-utills.d.ts +25 -0
  130. package/dist/es5/lib/utils/statistic-utills.js +147 -0
  131. package/dist/es5/lib/utils/statistic-utills.js.map +1 -0
  132. package/dist/es5/lib/utils/write-queue.js +214 -0
  133. package/dist/es5/lib/utils/write-queue.js.map +1 -0
  134. package/dist/es5/pgm-loader.js +41 -0
  135. package/dist/es5/pgm-loader.js.map +1 -0
  136. package/dist/es5/slpk-extractor/helpers/file-handle-provider.js +181 -0
  137. package/dist/es5/slpk-extractor/helpers/file-handle-provider.js.map +1 -0
  138. package/dist/es5/slpk-extractor/slpk-extractor.js +172 -0
  139. package/dist/es5/slpk-extractor/slpk-extractor.js.map +1 -0
  140. package/dist/es5/slpk-extractor-cli.js +117 -0
  141. package/dist/es5/slpk-extractor-cli.js.map +1 -0
  142. package/dist/es5/workers/3d-tiles-attributes-worker.js +28 -0
  143. package/dist/es5/workers/3d-tiles-attributes-worker.js.map +1 -0
  144. package/dist/es5/workers/i3s-attributes-worker.js +30 -0
  145. package/dist/es5/workers/i3s-attributes-worker.js.map +1 -0
  146. package/dist/esm/3d-tiles-attributes-worker.js +16 -0
  147. package/dist/esm/3d-tiles-attributes-worker.js.map +1 -0
  148. package/dist/esm/3d-tiles-converter/3d-tiles-converter.js +245 -0
  149. package/dist/esm/3d-tiles-converter/3d-tiles-converter.js.map +1 -0
  150. package/dist/esm/3d-tiles-converter/helpers/b3dm-converter.js +218 -0
  151. package/dist/esm/3d-tiles-converter/helpers/b3dm-converter.js.map +1 -0
  152. package/dist/esm/3d-tiles-converter/helpers/i3s-obb-to-3d-tiles-obb.js +10 -0
  153. package/dist/esm/3d-tiles-converter/helpers/i3s-obb-to-3d-tiles-obb.js.map +1 -0
  154. package/dist/esm/3d-tiles-converter/helpers/texture-atlas.js +27 -0
  155. package/dist/esm/3d-tiles-converter/helpers/texture-atlas.js.map +1 -0
  156. package/dist/esm/3d-tiles-converter/json-templates/tileset.js +37 -0
  157. package/dist/esm/3d-tiles-converter/json-templates/tileset.js.map +1 -0
  158. package/dist/esm/bundle.js +4 -0
  159. package/dist/esm/bundle.js.map +1 -0
  160. package/dist/esm/constants.js +2 -0
  161. package/dist/esm/constants.js.map +1 -0
  162. package/dist/esm/converter-cli.js +187 -0
  163. package/dist/esm/converter-cli.js.map +1 -0
  164. package/dist/esm/deps-installer/deps-installer.js +45 -0
  165. package/dist/esm/deps-installer/deps-installer.js.map +1 -0
  166. package/dist/esm/i3s-attributes-worker.js +16 -0
  167. package/dist/esm/i3s-attributes-worker.js.map +1 -0
  168. package/dist/esm/i3s-converter/helpers/batch-ids-extensions.js +105 -0
  169. package/dist/esm/i3s-converter/helpers/batch-ids-extensions.js.map +1 -0
  170. package/dist/esm/i3s-converter/helpers/coordinate-converter.js +79 -0
  171. package/dist/esm/i3s-converter/helpers/coordinate-converter.js.map +1 -0
  172. package/dist/esm/i3s-converter/helpers/create-scene-server-path.js +16 -0
  173. package/dist/esm/i3s-converter/helpers/create-scene-server-path.js.map +1 -0
  174. package/dist/esm/i3s-converter/helpers/feature-attributes.js +147 -0
  175. package/dist/esm/i3s-converter/helpers/feature-attributes.js.map +1 -0
  176. package/{src → dist/esm}/i3s-converter/helpers/geometry-attributes.js +80 -106
  177. package/dist/esm/i3s-converter/helpers/geometry-attributes.js.map +1 -0
  178. package/dist/esm/i3s-converter/helpers/geometry-converter.js +906 -0
  179. package/dist/esm/i3s-converter/helpers/geometry-converter.js.map +1 -0
  180. package/dist/esm/i3s-converter/helpers/gltf-attributes.js +110 -0
  181. package/dist/esm/i3s-converter/helpers/gltf-attributes.js.map +1 -0
  182. package/dist/esm/i3s-converter/helpers/load-3d-tiles.js +35 -0
  183. package/dist/esm/i3s-converter/helpers/load-3d-tiles.js.map +1 -0
  184. package/{src → dist/esm}/i3s-converter/helpers/node-debug.js +20 -41
  185. package/dist/esm/i3s-converter/helpers/node-debug.js.map +1 -0
  186. package/dist/esm/i3s-converter/helpers/node-index-document.js +201 -0
  187. package/dist/esm/i3s-converter/helpers/node-index-document.js.map +1 -0
  188. package/dist/esm/i3s-converter/helpers/node-pages.js +206 -0
  189. package/dist/esm/i3s-converter/helpers/node-pages.js.map +1 -0
  190. package/dist/esm/i3s-converter/helpers/preprocess-3d-tiles.js +48 -0
  191. package/dist/esm/i3s-converter/helpers/preprocess-3d-tiles.js.map +1 -0
  192. package/dist/esm/i3s-converter/helpers/tileset-traversal.js +14 -0
  193. package/dist/esm/i3s-converter/helpers/tileset-traversal.js.map +1 -0
  194. package/dist/esm/i3s-converter/i3s-converter.js +778 -0
  195. package/dist/esm/i3s-converter/i3s-converter.js.map +1 -0
  196. package/dist/esm/i3s-converter/json-templates/geometry-definitions.js +89 -0
  197. package/dist/esm/i3s-converter/json-templates/geometry-definitions.js.map +1 -0
  198. package/dist/esm/i3s-converter/json-templates/layers.js +133 -0
  199. package/dist/esm/i3s-converter/json-templates/layers.js.map +1 -0
  200. package/dist/esm/i3s-converter/json-templates/metadata.js +22 -0
  201. package/dist/esm/i3s-converter/json-templates/metadata.js.map +1 -0
  202. package/dist/esm/i3s-converter/json-templates/node.js +80 -0
  203. package/dist/esm/i3s-converter/json-templates/node.js.map +1 -0
  204. package/dist/esm/i3s-converter/json-templates/scene-server.js +28 -0
  205. package/dist/esm/i3s-converter/json-templates/scene-server.js.map +1 -0
  206. package/dist/esm/i3s-converter/json-templates/shared-resources.js +123 -0
  207. package/dist/esm/i3s-converter/json-templates/shared-resources.js.map +1 -0
  208. package/dist/esm/i3s-converter/json-templates/store.js +98 -0
  209. package/dist/esm/i3s-converter/json-templates/store.js.map +1 -0
  210. package/dist/esm/i3s-converter/types.js +11 -0
  211. package/dist/esm/i3s-converter/types.js.map +1 -0
  212. package/dist/esm/i3s-server/README.md +19 -0
  213. package/dist/esm/i3s-server/app.js +26 -0
  214. package/dist/esm/i3s-server/app.js.map +1 -0
  215. package/dist/esm/i3s-server/bin/www +102 -0
  216. package/dist/esm/i3s-server/certs/cert.pem +19 -0
  217. package/dist/esm/i3s-server/certs/key.pem +27 -0
  218. package/dist/esm/i3s-server/controllers/index-controller.js +24 -0
  219. package/dist/esm/i3s-server/controllers/index-controller.js.map +1 -0
  220. package/dist/esm/i3s-server/controllers/slpk-controller.js +36 -0
  221. package/dist/esm/i3s-server/controllers/slpk-controller.js.map +1 -0
  222. package/dist/esm/i3s-server/routes/index.js +16 -0
  223. package/dist/esm/i3s-server/routes/index.js.map +1 -0
  224. package/dist/esm/i3s-server/routes/slpk-router.js +33 -0
  225. package/dist/esm/i3s-server/routes/slpk-router.js.map +1 -0
  226. package/dist/esm/i3s-server/utils/create-scene-server.js +16 -0
  227. package/dist/esm/i3s-server/utils/create-scene-server.js.map +1 -0
  228. package/dist/esm/index.js +3 -0
  229. package/dist/esm/index.js.map +1 -0
  230. package/dist/esm/lib/utils/cli-utils.js +47 -0
  231. package/dist/esm/lib/utils/cli-utils.js.map +1 -0
  232. package/dist/esm/lib/utils/compress-util.js +168 -0
  233. package/dist/esm/lib/utils/compress-util.js.map +1 -0
  234. package/dist/esm/lib/utils/file-utils.js +87 -0
  235. package/dist/esm/lib/utils/file-utils.js.map +1 -0
  236. package/dist/esm/lib/utils/geometry-utils.js +8 -0
  237. package/dist/esm/lib/utils/geometry-utils.js.map +1 -0
  238. package/dist/esm/lib/utils/lod-conversion-utils.js +37 -0
  239. package/dist/esm/lib/utils/lod-conversion-utils.js.map +1 -0
  240. package/dist/esm/lib/utils/queue.js +15 -0
  241. package/dist/esm/lib/utils/queue.js.map +1 -0
  242. package/dist/esm/lib/utils/statistic-utills.d.ts +25 -0
  243. package/dist/esm/lib/utils/statistic-utills.js +62 -0
  244. package/dist/esm/lib/utils/statistic-utills.js.map +1 -0
  245. package/dist/esm/lib/utils/write-queue.js +85 -0
  246. package/dist/esm/lib/utils/write-queue.js.map +1 -0
  247. package/dist/esm/pgm-loader.js +15 -0
  248. package/dist/esm/pgm-loader.js.map +1 -0
  249. package/dist/esm/slpk-extractor/helpers/file-handle-provider.js +43 -0
  250. package/dist/esm/slpk-extractor/helpers/file-handle-provider.js.map +1 -0
  251. package/dist/esm/slpk-extractor/slpk-extractor.js +63 -0
  252. package/dist/esm/slpk-extractor/slpk-extractor.js.map +1 -0
  253. package/dist/esm/slpk-extractor-cli.js +74 -0
  254. package/dist/esm/slpk-extractor-cli.js.map +1 -0
  255. package/dist/esm/workers/3d-tiles-attributes-worker.js +8 -0
  256. package/dist/esm/workers/3d-tiles-attributes-worker.js.map +1 -0
  257. package/dist/esm/workers/i3s-attributes-worker.js +7 -0
  258. package/dist/esm/workers/i3s-attributes-worker.js.map +1 -0
  259. package/dist/i3s-attributes-worker.d.ts +45 -0
  260. package/dist/i3s-attributes-worker.d.ts.map +1 -0
  261. package/dist/i3s-attributes-worker.js +9 -0
  262. package/dist/i3s-attributes-worker.js.map +7 -0
  263. package/dist/i3s-converter/helpers/batch-ids-extensions.d.ts +13 -0
  264. package/dist/i3s-converter/helpers/batch-ids-extensions.d.ts.map +1 -0
  265. package/dist/i3s-converter/helpers/batch-ids-extensions.js +138 -0
  266. package/dist/i3s-converter/helpers/coordinate-converter.d.ts +39 -0
  267. package/dist/i3s-converter/helpers/coordinate-converter.d.ts.map +1 -0
  268. package/dist/i3s-converter/helpers/coordinate-converter.js +118 -42
  269. package/dist/i3s-converter/helpers/create-scene-server-path.d.ts +9 -0
  270. package/dist/i3s-converter/helpers/create-scene-server-path.d.ts.map +1 -0
  271. package/dist/i3s-converter/helpers/create-scene-server-path.js +27 -15
  272. package/dist/i3s-converter/helpers/feature-attributes.d.ts +56 -0
  273. package/dist/i3s-converter/helpers/feature-attributes.d.ts.map +1 -0
  274. package/dist/i3s-converter/helpers/feature-attributes.js +216 -0
  275. package/dist/i3s-converter/helpers/geometry-attributes.d.ts +8 -0
  276. package/dist/i3s-converter/helpers/geometry-attributes.d.ts.map +1 -0
  277. package/dist/i3s-converter/helpers/geometry-attributes.js +188 -185
  278. package/dist/i3s-converter/helpers/geometry-converter.d.ts +41 -35
  279. package/dist/i3s-converter/helpers/geometry-converter.d.ts.map +1 -0
  280. package/dist/i3s-converter/helpers/geometry-converter.js +1179 -650
  281. package/dist/i3s-converter/helpers/gltf-attributes.d.ts +28 -0
  282. package/dist/i3s-converter/helpers/gltf-attributes.d.ts.map +1 -0
  283. package/dist/i3s-converter/helpers/gltf-attributes.js +129 -0
  284. package/dist/i3s-converter/helpers/load-3d-tiles.d.ts +18 -0
  285. package/dist/i3s-converter/helpers/load-3d-tiles.d.ts.map +1 -0
  286. package/dist/i3s-converter/helpers/load-3d-tiles.js +53 -0
  287. package/dist/i3s-converter/helpers/node-debug.d.ts +8 -0
  288. package/dist/i3s-converter/helpers/node-debug.d.ts.map +1 -0
  289. package/dist/i3s-converter/helpers/node-debug.js +106 -74
  290. package/dist/i3s-converter/helpers/node-index-document.d.ts +103 -0
  291. package/dist/i3s-converter/helpers/node-index-document.d.ts.map +1 -0
  292. package/dist/i3s-converter/helpers/node-index-document.js +268 -0
  293. package/dist/i3s-converter/helpers/node-pages.d.ts +125 -113
  294. package/dist/i3s-converter/helpers/node-pages.d.ts.map +1 -0
  295. package/dist/i3s-converter/helpers/node-pages.js +313 -133
  296. package/dist/i3s-converter/helpers/preprocess-3d-tiles.d.ts +22 -0
  297. package/dist/i3s-converter/helpers/preprocess-3d-tiles.d.ts.map +1 -0
  298. package/dist/i3s-converter/helpers/preprocess-3d-tiles.js +75 -0
  299. package/dist/i3s-converter/helpers/tileset-traversal.d.ts +25 -0
  300. package/dist/i3s-converter/helpers/tileset-traversal.d.ts.map +1 -0
  301. package/dist/i3s-converter/helpers/tileset-traversal.js +29 -0
  302. package/dist/i3s-converter/i3s-converter.d.ts +267 -0
  303. package/dist/i3s-converter/i3s-converter.d.ts.map +1 -0
  304. package/dist/i3s-converter/i3s-converter.js +891 -867
  305. package/dist/i3s-converter/json-templates/geometry-definitions.d.ts +7 -0
  306. package/dist/i3s-converter/json-templates/geometry-definitions.d.ts.map +1 -0
  307. package/dist/i3s-converter/json-templates/geometry-definitions.js +87 -0
  308. package/dist/i3s-converter/json-templates/layers.d.ts +70 -0
  309. package/dist/i3s-converter/json-templates/layers.d.ts.map +1 -0
  310. package/dist/i3s-converter/json-templates/layers.js +138 -190
  311. package/dist/i3s-converter/json-templates/metadata.d.ts +22 -0
  312. package/dist/i3s-converter/json-templates/metadata.d.ts.map +1 -0
  313. package/dist/i3s-converter/json-templates/metadata.js +25 -22
  314. package/dist/i3s-converter/json-templates/node.d.ts +61 -0
  315. package/dist/i3s-converter/json-templates/node.d.ts.map +1 -0
  316. package/dist/i3s-converter/json-templates/node.js +88 -79
  317. package/dist/i3s-converter/json-templates/scene-server.d.ts +28 -0
  318. package/dist/i3s-converter/json-templates/scene-server.d.ts.map +1 -0
  319. package/dist/i3s-converter/json-templates/scene-server.js +31 -28
  320. package/dist/i3s-converter/json-templates/shared-resources.d.ts +14 -0
  321. package/dist/i3s-converter/json-templates/shared-resources.d.ts.map +1 -0
  322. package/dist/i3s-converter/json-templates/shared-resources.js +124 -125
  323. package/dist/i3s-converter/json-templates/store.d.ts +95 -0
  324. package/dist/i3s-converter/json-templates/store.d.ts.map +1 -0
  325. package/dist/i3s-converter/json-templates/store.js +100 -95
  326. package/dist/i3s-converter/types.d.ts +163 -0
  327. package/dist/i3s-converter/types.d.ts.map +1 -0
  328. package/dist/i3s-converter/types.js +17 -0
  329. package/dist/i3s-server/app.d.ts +3 -0
  330. package/dist/i3s-server/app.d.ts.map +1 -0
  331. package/dist/i3s-server/app.js +11 -10
  332. package/dist/i3s-server/controllers/index-controller.d.ts +2 -0
  333. package/dist/i3s-server/controllers/index-controller.d.ts.map +1 -0
  334. package/dist/i3s-server/controllers/index-controller.js +16 -24
  335. package/dist/i3s-server/controllers/slpk-controller.d.ts +3 -0
  336. package/dist/i3s-server/controllers/slpk-controller.d.ts.map +1 -0
  337. package/dist/i3s-server/controllers/slpk-controller.js +32 -0
  338. package/dist/i3s-server/routes/index.d.ts +3 -0
  339. package/dist/i3s-server/routes/index.d.ts.map +1 -0
  340. package/dist/i3s-server/routes/index.js +11 -15
  341. package/dist/i3s-server/routes/slpk-router.d.ts +3 -0
  342. package/dist/i3s-server/routes/slpk-router.d.ts.map +1 -0
  343. package/dist/i3s-server/routes/slpk-router.js +33 -0
  344. package/dist/i3s-server/utils/create-scene-server.d.ts +11 -0
  345. package/dist/i3s-server/utils/create-scene-server.d.ts.map +1 -0
  346. package/dist/i3s-server/utils/create-scene-server.js +14 -0
  347. package/dist/index.d.ts +3 -0
  348. package/dist/index.d.ts.map +1 -0
  349. package/dist/index.js +10 -5
  350. package/dist/lib/utils/cli-utils.d.ts +34 -0
  351. package/dist/lib/utils/cli-utils.d.ts.map +1 -0
  352. package/dist/lib/utils/cli-utils.js +82 -0
  353. package/dist/lib/utils/compress-util.d.ts +45 -0
  354. package/dist/lib/utils/compress-util.d.ts.map +1 -0
  355. package/dist/lib/utils/compress-util.js +238 -160
  356. package/dist/lib/utils/file-utils.d.ts +22 -14
  357. package/dist/lib/utils/file-utils.d.ts.map +1 -0
  358. package/dist/lib/utils/file-utils.js +134 -36
  359. package/dist/lib/utils/geometry-utils.d.ts +9 -0
  360. package/dist/lib/utils/geometry-utils.d.ts.map +1 -0
  361. package/dist/lib/utils/geometry-utils.js +18 -0
  362. package/dist/lib/utils/lod-conversion-utils.d.ts +23 -13
  363. package/dist/lib/utils/lod-conversion-utils.d.ts.map +1 -0
  364. package/dist/lib/utils/lod-conversion-utils.js +72 -39
  365. package/dist/lib/utils/queue.d.ts +7 -0
  366. package/dist/lib/utils/queue.d.ts.map +1 -0
  367. package/dist/lib/utils/queue.js +18 -0
  368. package/dist/lib/utils/statistic-utills.d.ts +3 -25
  369. package/dist/lib/utils/statistic-utills.d.ts.map +1 -0
  370. package/dist/lib/utils/statistic-utills.js +58 -67
  371. package/dist/lib/utils/write-queue.d.ts +39 -0
  372. package/dist/lib/utils/write-queue.d.ts.map +1 -0
  373. package/dist/lib/utils/write-queue.js +80 -0
  374. package/dist/pgm-loader.d.ts +6 -0
  375. package/dist/pgm-loader.d.ts.map +1 -0
  376. package/dist/pgm-loader.js +23 -14
  377. package/dist/slpk-extractor/helpers/file-handle-provider.d.ts +48 -0
  378. package/dist/slpk-extractor/helpers/file-handle-provider.d.ts.map +1 -0
  379. package/dist/slpk-extractor/helpers/file-handle-provider.js +71 -0
  380. package/dist/slpk-extractor/slpk-extractor.d.ts +23 -0
  381. package/dist/slpk-extractor/slpk-extractor.d.ts.map +1 -0
  382. package/dist/slpk-extractor/slpk-extractor.js +78 -0
  383. package/dist/slpk-extractor-cli.d.ts +17 -0
  384. package/dist/slpk-extractor-cli.d.ts.map +1 -0
  385. package/dist/slpk-extractor-cli.js +102 -0
  386. package/dist/slpk-extractor.min.js +189 -0
  387. package/dist/workers/3d-tiles-attributes-worker.d.ts +2 -0
  388. package/dist/workers/3d-tiles-attributes-worker.d.ts.map +1 -0
  389. package/dist/workers/3d-tiles-attributes-worker.js +9 -0
  390. package/dist/workers/i3s-attributes-worker.d.ts +2 -0
  391. package/dist/workers/i3s-attributes-worker.d.ts.map +1 -0
  392. package/dist/workers/i3s-attributes-worker.js +5 -0
  393. package/package.json +36 -24
  394. package/src/3d-tiles-attributes-worker.ts +43 -0
  395. package/src/3d-tiles-converter/3d-tiles-converter.ts +131 -63
  396. package/src/3d-tiles-converter/helpers/{b3dm-converter.js → b3dm-converter.ts} +72 -53
  397. package/src/3d-tiles-converter/helpers/{i3s-obb-to-3d-tiles-obb.js → i3s-obb-to-3d-tiles-obb.ts} +16 -1
  398. package/src/3d-tiles-converter/helpers/texture-atlas.ts +4 -4
  399. package/src/3d-tiles-converter/json-templates/{tileset.js → tileset.ts} +9 -9
  400. package/src/constants.ts +2 -0
  401. package/src/converter-cli.ts +305 -0
  402. package/src/deps-installer/deps-installer.ts +72 -0
  403. package/src/i3s-attributes-worker.ts +59 -0
  404. package/src/i3s-converter/helpers/batch-ids-extensions.ts +202 -0
  405. package/src/i3s-converter/helpers/coordinate-converter.ts +94 -34
  406. package/src/i3s-converter/helpers/create-scene-server-path.ts +29 -0
  407. package/src/i3s-converter/helpers/feature-attributes.ts +247 -0
  408. package/src/i3s-converter/helpers/geometry-attributes.ts +267 -0
  409. package/src/i3s-converter/helpers/geometry-converter.ts +1667 -0
  410. package/src/i3s-converter/helpers/gltf-attributes.ts +162 -0
  411. package/src/i3s-converter/helpers/load-3d-tiles.ts +68 -0
  412. package/src/i3s-converter/helpers/node-debug.ts +146 -0
  413. package/src/i3s-converter/helpers/node-index-document.ts +335 -0
  414. package/src/i3s-converter/helpers/node-pages.ts +344 -0
  415. package/src/i3s-converter/helpers/preprocess-3d-tiles.ts +79 -0
  416. package/src/i3s-converter/helpers/tileset-traversal.ts +51 -0
  417. package/src/i3s-converter/i3s-converter.ts +650 -669
  418. package/src/i3s-converter/json-templates/geometry-definitions.ts +83 -0
  419. package/src/i3s-converter/json-templates/layers.ts +137 -0
  420. package/src/i3s-converter/json-templates/{metadata.js → metadata.ts} +2 -2
  421. package/src/i3s-converter/json-templates/{node.js → node.ts} +12 -12
  422. package/src/i3s-converter/json-templates/{scene-server.js → scene-server.ts} +2 -2
  423. package/src/i3s-converter/json-templates/{shared-resources.js → shared-resources.ts} +17 -17
  424. package/src/i3s-converter/types.ts +185 -0
  425. package/src/i3s-server/README.md +19 -0
  426. package/src/i3s-server/app.js +8 -1
  427. package/src/i3s-server/controllers/slpk-controller.js +38 -0
  428. package/src/i3s-server/routes/slpk-router.js +33 -0
  429. package/src/i3s-server/utils/create-scene-server.js +15 -0
  430. package/src/index.ts +0 -4
  431. package/src/lib/utils/cli-utils.ts +78 -0
  432. package/src/lib/utils/{compress-util.js → compress-util.ts} +105 -18
  433. package/src/lib/utils/file-utils.ts +140 -0
  434. package/src/lib/utils/geometry-utils.ts +14 -0
  435. package/src/lib/utils/{lod-conversion-utils.js → lod-conversion-utils.ts} +31 -5
  436. package/src/lib/utils/queue.ts +17 -0
  437. package/src/lib/utils/write-queue.ts +110 -0
  438. package/src/pgm-loader.ts +3 -3
  439. package/src/slpk-extractor/helpers/file-handle-provider.ts +91 -0
  440. package/src/slpk-extractor/slpk-extractor.ts +102 -0
  441. package/src/slpk-extractor-cli.ts +128 -0
  442. package/src/workers/3d-tiles-attributes-worker.ts +6 -0
  443. package/src/workers/i3s-attributes-worker.ts +7 -0
  444. package/dist/3d-tiles-converter/3d-tiles-converter.js.map +0 -1
  445. package/dist/3d-tiles-converter/helpers/b3dm-converter.js.map +0 -1
  446. package/dist/3d-tiles-converter/helpers/i3s-obb-to-3d-tiles-obb.js.map +0 -1
  447. package/dist/3d-tiles-converter/helpers/texture-atlas.js.map +0 -1
  448. package/dist/3d-tiles-converter/json-templates/tileset.js.map +0 -1
  449. package/dist/bundle.js.map +0 -1
  450. package/dist/deps-installer/deps-installer.js.map +0 -1
  451. package/dist/i3s-converter/helpers/coordinate-converter.js.map +0 -1
  452. package/dist/i3s-converter/helpers/create-scene-server-path.js.map +0 -1
  453. package/dist/i3s-converter/helpers/geometry-attributes.js.map +0 -1
  454. package/dist/i3s-converter/helpers/geometry-converter.js.map +0 -1
  455. package/dist/i3s-converter/helpers/node-debug.js.map +0 -1
  456. package/dist/i3s-converter/helpers/node-pages.js.map +0 -1
  457. package/dist/i3s-converter/i3s-converter.js.map +0 -1
  458. package/dist/i3s-converter/json-templates/layers.js.map +0 -1
  459. package/dist/i3s-converter/json-templates/metadata.js.map +0 -1
  460. package/dist/i3s-converter/json-templates/node.js.map +0 -1
  461. package/dist/i3s-converter/json-templates/scene-server.js.map +0 -1
  462. package/dist/i3s-converter/json-templates/shared-resources.js.map +0 -1
  463. package/dist/i3s-converter/json-templates/store.js.map +0 -1
  464. package/dist/i3s-server/app.js.map +0 -1
  465. package/dist/i3s-server/controllers/index-controller.js.map +0 -1
  466. package/dist/i3s-server/routes/index.js.map +0 -1
  467. package/dist/index.js.map +0 -1
  468. package/dist/lib/geoid-height-model.d.ts +0 -41
  469. package/dist/lib/geoid-height-model.js +0 -140
  470. package/dist/lib/geoid-height-model.js.map +0 -1
  471. package/dist/lib/pgm-parser.d.ts +0 -14
  472. package/dist/lib/pgm-parser.js +0 -183
  473. package/dist/lib/pgm-parser.js.map +0 -1
  474. package/dist/lib/utils/compress-util.js.map +0 -1
  475. package/dist/lib/utils/compress-utils.d.ts +0 -53
  476. package/dist/lib/utils/file-utils.js.map +0 -1
  477. package/dist/lib/utils/lod-conversion-utils.js.map +0 -1
  478. package/dist/lib/utils/statistic-utills.js.map +0 -1
  479. package/dist/pgm-loader.js.map +0 -1
  480. package/src/3d-tiles-converter/helpers/b3dm-converter.d.ts +0 -23
  481. package/src/3d-tiles-converter/helpers/i3s-obb-to-3d-tiles-obb.d.ts +0 -16
  482. package/src/deps-installer/deps-installer.d.ts +0 -10
  483. package/src/deps-installer/deps-installer.js +0 -22
  484. package/src/i3s-converter/helpers/create-scene-server-path.js +0 -25
  485. package/src/i3s-converter/helpers/geometry-converter.d.ts +0 -40
  486. package/src/i3s-converter/helpers/geometry-converter.js +0 -915
  487. package/src/i3s-converter/helpers/node-pages.d.ts +0 -144
  488. package/src/i3s-converter/helpers/node-pages.js +0 -208
  489. package/src/i3s-converter/json-templates/layers.js +0 -199
  490. package/src/lib/geoid-height-model.d.ts +0 -41
  491. package/src/lib/geoid-height-model.js +0 -239
  492. package/src/lib/pgm-parser.d.ts +0 -14
  493. package/src/lib/pgm-parser.js +0 -179
  494. package/src/lib/utils/compress-utils.d.ts +0 -53
  495. package/src/lib/utils/file-utils.d.ts +0 -43
  496. package/src/lib/utils/file-utils.js +0 -38
  497. package/src/lib/utils/lod-conversion-utils.d.ts +0 -32
  498. /package/dist/{i3s-server → es5/i3s-server}/bin/www +0 -0
  499. /package/dist/{i3s-server → es5/i3s-server}/certs/cert.pem +0 -0
  500. /package/dist/{i3s-server → es5/i3s-server}/certs/key.pem +0 -0
  501. /package/src/i3s-converter/json-templates/{store.js → store.ts} +0 -0
  502. /package/src/lib/utils/{statistic-utills.js → statistic-utills.ts} +0 -0
@@ -0,0 +1,84 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
5
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
6
+ require('@loaders.gl/polyfills');
7
+ var _require = require('@loaders.gl/core'),
8
+ fetchFile = _require.fetchFile,
9
+ parse = _require.parse;
10
+ var _require2 = require('@loaders.gl/i3s'),
11
+ SLPKLoader = _require2.SLPKLoader;
12
+ var path = require('path');
13
+ var slpkArchive;
14
+ var loadArchive = function () {
15
+ var _ref = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee(fullLayerPath) {
16
+ return _regenerator.default.wrap(function _callee$(_context) {
17
+ while (1) switch (_context.prev = _context.next) {
18
+ case 0:
19
+ _context.next = 2;
20
+ return fetchFile(fullLayerPath);
21
+ case 2:
22
+ _context.next = 4;
23
+ return _context.sent.arrayBuffer();
24
+ case 4:
25
+ slpkArchive = _context.sent;
26
+ case 5:
27
+ case "end":
28
+ return _context.stop();
29
+ }
30
+ }, _callee);
31
+ }));
32
+ return function loadArchive(_x) {
33
+ return _ref.apply(this, arguments);
34
+ };
35
+ }();
36
+ var I3S_LAYER_PATH = process.env.I3sLayerPath || '';
37
+ var FULL_LAYER_PATH = path.join(process.cwd(), I3S_LAYER_PATH);
38
+ loadArchive(FULL_LAYER_PATH);
39
+ function getFileByUrl(_x2) {
40
+ return _getFileByUrl.apply(this, arguments);
41
+ }
42
+ function _getFileByUrl() {
43
+ _getFileByUrl = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee2(url) {
44
+ var trimmedPath, uncompressedFile;
45
+ return _regenerator.default.wrap(function _callee2$(_context2) {
46
+ while (1) switch (_context2.prev = _context2.next) {
47
+ case 0:
48
+ trimmedPath = /^\/?(.*)\/?$/.exec(url);
49
+ if (!trimmedPath) {
50
+ _context2.next = 12;
51
+ break;
52
+ }
53
+ _context2.prev = 2;
54
+ _context2.t0 = Buffer;
55
+ _context2.next = 6;
56
+ return parse(slpkArchive, SLPKLoader, {
57
+ slpk: {
58
+ path: trimmedPath[1],
59
+ pathMode: 'http'
60
+ }
61
+ });
62
+ case 6:
63
+ _context2.t1 = _context2.sent;
64
+ uncompressedFile = _context2.t0.from.call(_context2.t0, _context2.t1);
65
+ _context2.next = 12;
66
+ break;
67
+ case 10:
68
+ _context2.prev = 10;
69
+ _context2.t2 = _context2["catch"](2);
70
+ case 12:
71
+ return _context2.abrupt("return", uncompressedFile);
72
+ case 13:
73
+ case "end":
74
+ return _context2.stop();
75
+ }
76
+ }, _callee2, null, [[2, 10]]);
77
+ }));
78
+ return _getFileByUrl.apply(this, arguments);
79
+ }
80
+ module.exports = {
81
+ loadArchive: loadArchive,
82
+ getFileByUrl: getFileByUrl
83
+ };
84
+ //# sourceMappingURL=slpk-controller.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"slpk-controller.js","names":["require","_require","fetchFile","parse","_require2","SLPKLoader","path","slpkArchive","loadArchive","_ref","_asyncToGenerator2","default","_regenerator","mark","_callee","fullLayerPath","wrap","_callee$","_context","prev","next","sent","arrayBuffer","stop","_x","apply","arguments","I3S_LAYER_PATH","process","env","I3sLayerPath","FULL_LAYER_PATH","join","cwd","getFileByUrl","_x2","_getFileByUrl","_callee2","url","trimmedPath","uncompressedFile","_callee2$","_context2","exec","t0","Buffer","slpk","pathMode","t1","from","call","t2","abrupt","module","exports"],"sources":["../../../../src/i3s-server/controllers/slpk-controller.js"],"sourcesContent":["require('@loaders.gl/polyfills');\nconst {fetchFile, parse} = require('@loaders.gl/core');\nconst {SLPKLoader} = require('@loaders.gl/i3s');\nconst path = require('path');\n\nlet slpkArchive;\n\nconst loadArchive = async (fullLayerPath) => {\n slpkArchive = await (await fetchFile(fullLayerPath)).arrayBuffer();\n};\n\nconst I3S_LAYER_PATH = process.env.I3sLayerPath || ''; // eslint-disable-line no-process-env, no-undef\nconst FULL_LAYER_PATH = path.join(process.cwd(), I3S_LAYER_PATH); // eslint-disable-line no-undef\n\nloadArchive(FULL_LAYER_PATH);\n\nasync function getFileByUrl(url) {\n const trimmedPath = /^\\/?(.*)\\/?$/.exec(url);\n let uncompressedFile;\n if (trimmedPath) {\n try {\n uncompressedFile = Buffer.from(\n await parse(slpkArchive, SLPKLoader, {\n slpk: {\n path: trimmedPath[1],\n pathMode: 'http'\n }\n })\n );\n } catch (e) {}\n }\n return uncompressedFile;\n}\n\nmodule.exports = {\n loadArchive,\n getFileByUrl\n};\n"],"mappings":";;;;;AAAAA,OAAO,CAAC,uBAAuB,CAAC;AAChC,IAAAC,QAAA,GAA2BD,OAAO,CAAC,kBAAkB,CAAC;EAA/CE,SAAS,GAAAD,QAAA,CAATC,SAAS;EAAEC,KAAK,GAAAF,QAAA,CAALE,KAAK;AACvB,IAAAC,SAAA,GAAqBJ,OAAO,CAAC,iBAAiB,CAAC;EAAxCK,UAAU,GAAAD,SAAA,CAAVC,UAAU;AACjB,IAAMC,IAAI,GAAGN,OAAO,CAAC,MAAM,CAAC;AAE5B,IAAIO,WAAW;AAEf,IAAMC,WAAW;EAAA,IAAAC,IAAA,OAAAC,kBAAA,CAAAC,OAAA,EAAAC,YAAA,CAAAD,OAAA,CAAAE,IAAA,CAAG,SAAAC,QAAOC,aAAa;IAAA,OAAAH,YAAA,CAAAD,OAAA,CAAAK,IAAA,UAAAC,SAAAC,QAAA;MAAA,kBAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAE,IAAA;QAAA;UAAAF,QAAA,CAAAE,IAAA;UAAA,OACXlB,SAAS,CAACa,aAAa,CAAC;QAAA;UAAAG,QAAA,CAAAE,IAAA;UAAA,OAAAF,QAAA,CAAAG,IAAA,CAAEC,WAAW;QAAA;UAAhEf,WAAW,GAAAW,QAAA,CAAAG,IAAA;QAAA;QAAA;UAAA,OAAAH,QAAA,CAAAK,IAAA;MAAA;IAAA,GAAAT,OAAA;EAAA,CACZ;EAAA,gBAFKN,WAAWA,CAAAgB,EAAA;IAAA,OAAAf,IAAA,CAAAgB,KAAA,OAAAC,SAAA;EAAA;AAAA,GAEhB;AAED,IAAMC,cAAc,GAAGC,OAAO,CAACC,GAAG,CAACC,YAAY,IAAI,EAAE;AACrD,IAAMC,eAAe,GAAGzB,IAAI,CAAC0B,IAAI,CAACJ,OAAO,CAACK,GAAG,CAAC,CAAC,EAAEN,cAAc,CAAC;AAEhEnB,WAAW,CAACuB,eAAe,CAAC;AAAC,SAEdG,YAAYA,CAAAC,GAAA;EAAA,OAAAC,aAAA,CAAAX,KAAA,OAAAC,SAAA;AAAA;AAAA,SAAAU,cAAA;EAAAA,aAAA,OAAA1B,kBAAA,CAAAC,OAAA,EAAAC,YAAA,CAAAD,OAAA,CAAAE,IAAA,CAA3B,SAAAwB,SAA4BC,GAAG;IAAA,IAAAC,WAAA,EAAAC,gBAAA;IAAA,OAAA5B,YAAA,CAAAD,OAAA,CAAAK,IAAA,UAAAyB,UAAAC,SAAA;MAAA,kBAAAA,SAAA,CAAAvB,IAAA,GAAAuB,SAAA,CAAAtB,IAAA;QAAA;UACvBmB,WAAW,GAAG,cAAc,CAACI,IAAI,CAACL,GAAG,CAAC;UAAA,KAExCC,WAAW;YAAAG,SAAA,CAAAtB,IAAA;YAAA;UAAA;UAAAsB,SAAA,CAAAvB,IAAA;UAAAuB,SAAA,CAAAE,EAAA,GAEQC,MAAM;UAAAH,SAAA,CAAAtB,IAAA;UAAA,OACjBjB,KAAK,CAACI,WAAW,EAAEF,UAAU,EAAE;YACnCyC,IAAI,EAAE;cACJxC,IAAI,EAAEiC,WAAW,CAAC,CAAC,CAAC;cACpBQ,QAAQ,EAAE;YACZ;UACF,CAAC,CAAC;QAAA;UAAAL,SAAA,CAAAM,EAAA,GAAAN,SAAA,CAAArB,IAAA;UANJmB,gBAAgB,GAAAE,SAAA,CAAAE,EAAA,CAAUK,IAAI,CAAAC,IAAA,CAAAR,SAAA,CAAAE,EAAA,EAAAF,SAAA,CAAAM,EAAA;UAAAN,SAAA,CAAAtB,IAAA;UAAA;QAAA;UAAAsB,SAAA,CAAAvB,IAAA;UAAAuB,SAAA,CAAAS,EAAA,GAAAT,SAAA;QAAA;UAAA,OAAAA,SAAA,CAAAU,MAAA,WAU3BZ,gBAAgB;QAAA;QAAA;UAAA,OAAAE,SAAA,CAAAnB,IAAA;MAAA;IAAA,GAAAc,QAAA;EAAA,CACxB;EAAA,OAAAD,aAAA,CAAAX,KAAA,OAAAC,SAAA;AAAA;AAED2B,MAAM,CAACC,OAAO,GAAG;EACf9C,WAAW,EAAXA,WAAW;EACX0B,YAAY,EAAZA;AACF,CAAC"}
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
5
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
6
+ var express = require('express');
7
+ var router = express.Router();
8
+ var _require = require('../controllers/index-controller'),
9
+ getFileNameByUrl = _require.getFileNameByUrl;
10
+ router.get('*', function () {
11
+ var _ref = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee(req, res, next) {
12
+ var fileName;
13
+ return _regenerator.default.wrap(function _callee$(_context) {
14
+ while (1) switch (_context.prev = _context.next) {
15
+ case 0:
16
+ _context.next = 2;
17
+ return getFileNameByUrl(req.path);
18
+ case 2:
19
+ fileName = _context.sent;
20
+ if (fileName) {
21
+ res.sendFile(fileName);
22
+ } else {
23
+ res.status(404);
24
+ res.send('File not found');
25
+ }
26
+ case 4:
27
+ case "end":
28
+ return _context.stop();
29
+ }
30
+ }, _callee);
31
+ }));
32
+ return function (_x, _x2, _x3) {
33
+ return _ref.apply(this, arguments);
34
+ };
35
+ }());
36
+ module.exports = router;
37
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["express","require","router","Router","_require","getFileNameByUrl","get","_ref","_asyncToGenerator2","default","_regenerator","mark","_callee","req","res","next","fileName","wrap","_callee$","_context","prev","path","sent","sendFile","status","send","stop","_x","_x2","_x3","apply","arguments","module","exports"],"sources":["../../../../src/i3s-server/routes/index.js"],"sourcesContent":["const express = require('express');\nconst router = express.Router();\nconst {getFileNameByUrl} = require('../controllers/index-controller');\n\n/* GET home page. */\nrouter.get('*', async function (req, res, next) {\n const fileName = await getFileNameByUrl(req.path);\n if (fileName) {\n res.sendFile(fileName);\n } else {\n res.status(404);\n res.send('File not found');\n }\n});\n\nmodule.exports = router;\n"],"mappings":";;;;;AAAA,IAAMA,OAAO,GAAGC,OAAO,CAAC,SAAS,CAAC;AAClC,IAAMC,MAAM,GAAGF,OAAO,CAACG,MAAM,CAAC,CAAC;AAC/B,IAAAC,QAAA,GAA2BH,OAAO,CAAC,iCAAiC,CAAC;EAA9DI,gBAAgB,GAAAD,QAAA,CAAhBC,gBAAgB;AAGvBH,MAAM,CAACI,GAAG,CAAC,GAAG;EAAA,IAAAC,IAAA,OAAAC,kBAAA,CAAAC,OAAA,EAAAC,YAAA,CAAAD,OAAA,CAAAE,IAAA,CAAE,SAAAC,QAAgBC,GAAG,EAAEC,GAAG,EAAEC,IAAI;IAAA,IAAAC,QAAA;IAAA,OAAAN,YAAA,CAAAD,OAAA,CAAAQ,IAAA,UAAAC,SAAAC,QAAA;MAAA,kBAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAJ,IAAA;QAAA;UAAAI,QAAA,CAAAJ,IAAA;UAAA,OACrBV,gBAAgB,CAACQ,GAAG,CAACQ,IAAI,CAAC;QAAA;UAA3CL,QAAQ,GAAAG,QAAA,CAAAG,IAAA;UACd,IAAIN,QAAQ,EAAE;YACZF,GAAG,CAACS,QAAQ,CAACP,QAAQ,CAAC;UACxB,CAAC,MAAM;YACLF,GAAG,CAACU,MAAM,CAAC,GAAG,CAAC;YACfV,GAAG,CAACW,IAAI,CAAC,gBAAgB,CAAC;UAC5B;QAAC;QAAA;UAAA,OAAAN,QAAA,CAAAO,IAAA;MAAA;IAAA,GAAAd,OAAA;EAAA,CACF;EAAA,iBAAAe,EAAA,EAAAC,GAAA,EAAAC,GAAA;IAAA,OAAAtB,IAAA,CAAAuB,KAAA,OAAAC,SAAA;EAAA;AAAA,IAAC;AAEFC,MAAM,CAACC,OAAO,GAAG/B,MAAM"}
@@ -0,0 +1,71 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
5
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
6
+ var express = require('express');
7
+ var _require = require('../controllers/slpk-controller'),
8
+ getFileByUrl = _require.getFileByUrl;
9
+ var createSceneServer = require('../utils/create-scene-server');
10
+ var sceneServerRouter = express.Router();
11
+ sceneServerRouter.get('*', function () {
12
+ var _ref = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee(req, res, next) {
13
+ var file, layer, sceneServerResponse;
14
+ return _regenerator.default.wrap(function _callee$(_context) {
15
+ while (1) switch (_context.prev = _context.next) {
16
+ case 0:
17
+ _context.next = 2;
18
+ return getFileByUrl('/');
19
+ case 2:
20
+ file = _context.sent;
21
+ if (file) {
22
+ layer = JSON.parse(file.toString());
23
+ sceneServerResponse = createSceneServer(layer.name, layer);
24
+ res.send(sceneServerResponse);
25
+ } else {
26
+ res.status(404);
27
+ res.send('File not found');
28
+ }
29
+ case 4:
30
+ case "end":
31
+ return _context.stop();
32
+ }
33
+ }, _callee);
34
+ }));
35
+ return function (_x, _x2, _x3) {
36
+ return _ref.apply(this, arguments);
37
+ };
38
+ }());
39
+ var router = express.Router();
40
+ router.get('*', function () {
41
+ var _ref2 = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee2(req, res, next) {
42
+ var file;
43
+ return _regenerator.default.wrap(function _callee2$(_context2) {
44
+ while (1) switch (_context2.prev = _context2.next) {
45
+ case 0:
46
+ console.log(req.path);
47
+ _context2.next = 3;
48
+ return getFileByUrl(req.path);
49
+ case 3:
50
+ file = _context2.sent;
51
+ if (file) {
52
+ res.send(file);
53
+ } else {
54
+ res.status(404);
55
+ res.send('File not found');
56
+ }
57
+ case 5:
58
+ case "end":
59
+ return _context2.stop();
60
+ }
61
+ }, _callee2);
62
+ }));
63
+ return function (_x4, _x5, _x6) {
64
+ return _ref2.apply(this, arguments);
65
+ };
66
+ }());
67
+ module.exports = {
68
+ sceneServerRouter: sceneServerRouter,
69
+ router: router
70
+ };
71
+ //# sourceMappingURL=slpk-router.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"slpk-router.js","names":["express","require","_require","getFileByUrl","createSceneServer","sceneServerRouter","Router","get","_ref","_asyncToGenerator2","default","_regenerator","mark","_callee","req","res","next","file","layer","sceneServerResponse","wrap","_callee$","_context","prev","sent","JSON","parse","toString","name","send","status","stop","_x","_x2","_x3","apply","arguments","router","_ref2","_callee2","_callee2$","_context2","console","log","path","_x4","_x5","_x6","module","exports"],"sources":["../../../../src/i3s-server/routes/slpk-router.js"],"sourcesContent":["const express = require('express');\nconst {getFileByUrl} = require('../controllers/slpk-controller');\nconst createSceneServer = require('../utils/create-scene-server');\n\nconst sceneServerRouter = express.Router();\nsceneServerRouter.get('*', async function (req, res, next) {\n const file = await getFileByUrl('/');\n if (file) {\n const layer = JSON.parse(file.toString());\n const sceneServerResponse = createSceneServer(layer.name, layer);\n res.send(sceneServerResponse);\n } else {\n res.status(404);\n res.send('File not found');\n }\n});\n\nconst router = express.Router();\nrouter.get('*', async function (req, res, next) {\n console.log(req.path);\n const file = await getFileByUrl(req.path);\n if (file) {\n res.send(file);\n } else {\n res.status(404);\n res.send('File not found');\n }\n});\n\nmodule.exports = {\n sceneServerRouter,\n router\n};\n"],"mappings":";;;;;AAAA,IAAMA,OAAO,GAAGC,OAAO,CAAC,SAAS,CAAC;AAClC,IAAAC,QAAA,GAAuBD,OAAO,CAAC,gCAAgC,CAAC;EAAzDE,YAAY,GAAAD,QAAA,CAAZC,YAAY;AACnB,IAAMC,iBAAiB,GAAGH,OAAO,CAAC,8BAA8B,CAAC;AAEjE,IAAMI,iBAAiB,GAAGL,OAAO,CAACM,MAAM,CAAC,CAAC;AAC1CD,iBAAiB,CAACE,GAAG,CAAC,GAAG;EAAA,IAAAC,IAAA,OAAAC,kBAAA,CAAAC,OAAA,EAAAC,YAAA,CAAAD,OAAA,CAAAE,IAAA,CAAE,SAAAC,QAAgBC,GAAG,EAAEC,GAAG,EAAEC,IAAI;IAAA,IAAAC,IAAA,EAAAC,KAAA,EAAAC,mBAAA;IAAA,OAAAR,YAAA,CAAAD,OAAA,CAAAU,IAAA,UAAAC,SAAAC,QAAA;MAAA,kBAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAN,IAAA;QAAA;UAAAM,QAAA,CAAAN,IAAA;UAAA,OACpCb,YAAY,CAAC,GAAG,CAAC;QAAA;UAA9Bc,IAAI,GAAAK,QAAA,CAAAE,IAAA;UACV,IAAIP,IAAI,EAAE;YACFC,KAAK,GAAGO,IAAI,CAACC,KAAK,CAACT,IAAI,CAACU,QAAQ,CAAC,CAAC,CAAC;YACnCR,mBAAmB,GAAGf,iBAAiB,CAACc,KAAK,CAACU,IAAI,EAAEV,KAAK,CAAC;YAChEH,GAAG,CAACc,IAAI,CAACV,mBAAmB,CAAC;UAC/B,CAAC,MAAM;YACLJ,GAAG,CAACe,MAAM,CAAC,GAAG,CAAC;YACff,GAAG,CAACc,IAAI,CAAC,gBAAgB,CAAC;UAC5B;QAAC;QAAA;UAAA,OAAAP,QAAA,CAAAS,IAAA;MAAA;IAAA,GAAAlB,OAAA;EAAA,CACF;EAAA,iBAAAmB,EAAA,EAAAC,GAAA,EAAAC,GAAA;IAAA,OAAA1B,IAAA,CAAA2B,KAAA,OAAAC,SAAA;EAAA;AAAA,IAAC;AAEF,IAAMC,MAAM,GAAGrC,OAAO,CAACM,MAAM,CAAC,CAAC;AAC/B+B,MAAM,CAAC9B,GAAG,CAAC,GAAG;EAAA,IAAA+B,KAAA,OAAA7B,kBAAA,CAAAC,OAAA,EAAAC,YAAA,CAAAD,OAAA,CAAAE,IAAA,CAAE,SAAA2B,SAAgBzB,GAAG,EAAEC,GAAG,EAAEC,IAAI;IAAA,IAAAC,IAAA;IAAA,OAAAN,YAAA,CAAAD,OAAA,CAAAU,IAAA,UAAAoB,UAAAC,SAAA;MAAA,kBAAAA,SAAA,CAAAlB,IAAA,GAAAkB,SAAA,CAAAzB,IAAA;QAAA;UAC5C0B,OAAO,CAACC,GAAG,CAAC7B,GAAG,CAAC8B,IAAI,CAAC;UAACH,SAAA,CAAAzB,IAAA;UAAA,OACHb,YAAY,CAACW,GAAG,CAAC8B,IAAI,CAAC;QAAA;UAAnC3B,IAAI,GAAAwB,SAAA,CAAAjB,IAAA;UACV,IAAIP,IAAI,EAAE;YACRF,GAAG,CAACc,IAAI,CAACZ,IAAI,CAAC;UAChB,CAAC,MAAM;YACLF,GAAG,CAACe,MAAM,CAAC,GAAG,CAAC;YACff,GAAG,CAACc,IAAI,CAAC,gBAAgB,CAAC;UAC5B;QAAC;QAAA;UAAA,OAAAY,SAAA,CAAAV,IAAA;MAAA;IAAA,GAAAQ,QAAA;EAAA,CACF;EAAA,iBAAAM,GAAA,EAAAC,GAAA,EAAAC,GAAA;IAAA,OAAAT,KAAA,CAAAH,KAAA,OAAAC,SAAA;EAAA;AAAA,IAAC;AAEFY,MAAM,CAACC,OAAO,GAAG;EACf5C,iBAAiB,EAAjBA,iBAAiB;EACjBgC,MAAM,EAANA;AACF,CAAC"}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+
3
+ var _require = require('uuid'),
4
+ uuidv4 = _require.v4;
5
+ var createSceneServer = function createSceneServer(name, layer) {
6
+ return {
7
+ serviceItemId: uuidv4().replace(/-/gi, ''),
8
+ serviceName: name,
9
+ name: name,
10
+ currentVersion: '10.7',
11
+ serviceVersion: '1.8',
12
+ supportedBindings: ['REST'],
13
+ layers: [layer]
14
+ };
15
+ };
16
+ module.exports = createSceneServer;
17
+ //# sourceMappingURL=create-scene-server.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-scene-server.js","names":["_require","require","uuidv4","v4","createSceneServer","name","layer","serviceItemId","replace","serviceName","currentVersion","serviceVersion","supportedBindings","layers","module","exports"],"sources":["../../../../src/i3s-server/utils/create-scene-server.js"],"sourcesContent":["const {v4: uuidv4} = require('uuid');\n\nconst createSceneServer = (name, layer) => {\n return {\n serviceItemId: uuidv4().replace(/-/gi, ''),\n serviceName: name,\n name,\n currentVersion: '10.7',\n serviceVersion: '1.8',\n supportedBindings: ['REST'],\n layers: [layer]\n };\n};\n\nmodule.exports = createSceneServer;\n"],"mappings":";;AAAA,IAAAA,QAAA,GAAqBC,OAAO,CAAC,MAAM,CAAC;EAAzBC,MAAM,GAAAF,QAAA,CAAVG,EAAE;AAET,IAAMC,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAIC,IAAI,EAAEC,KAAK,EAAK;EACzC,OAAO;IACLC,aAAa,EAAEL,MAAM,CAAC,CAAC,CAACM,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC;IAC1CC,WAAW,EAAEJ,IAAI;IACjBA,IAAI,EAAJA,IAAI;IACJK,cAAc,EAAE,MAAM;IACtBC,cAAc,EAAE,KAAK;IACrBC,iBAAiB,EAAE,CAAC,MAAM,CAAC;IAC3BC,MAAM,EAAE,CAACP,KAAK;EAChB,CAAC;AACH,CAAC;AAEDQ,MAAM,CAACC,OAAO,GAAGX,iBAAiB"}
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ Object.defineProperty(exports, "I3SConverter", {
8
+ enumerable: true,
9
+ get: function get() {
10
+ return _i3sConverter.default;
11
+ }
12
+ });
13
+ Object.defineProperty(exports, "Tiles3DConverter", {
14
+ enumerable: true,
15
+ get: function get() {
16
+ return _dTilesConverter.default;
17
+ }
18
+ });
19
+ var _i3sConverter = _interopRequireDefault(require("./i3s-converter/i3s-converter"));
20
+ var _dTilesConverter = _interopRequireDefault(require("./3d-tiles-converter/3d-tiles-converter"));
21
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["_i3sConverter","_interopRequireDefault","require","_dTilesConverter"],"sources":["../../src/index.ts"],"sourcesContent":["export {default as I3SConverter} from './i3s-converter/i3s-converter';\nexport {default as Tiles3DConverter} from './3d-tiles-converter/3d-tiles-converter';\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA,IAAAA,aAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,gBAAA,GAAAF,sBAAA,CAAAC,OAAA"}
@@ -0,0 +1,57 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getBooleanValue = getBooleanValue;
7
+ exports.getIntegerValue = getIntegerValue;
8
+ exports.getStringValue = getStringValue;
9
+ exports.getURLValue = getURLValue;
10
+ exports.validateOptionsWithEqual = validateOptionsWithEqual;
11
+ function getStringValue(index, args) {
12
+ if (index + 1 >= args.length) {
13
+ return '';
14
+ }
15
+ var value = args[index + 1];
16
+ if (value.indexOf('--') === 0) {
17
+ return '';
18
+ }
19
+ return value;
20
+ }
21
+ function getURLValue(index, args) {
22
+ var value = getStringValue(index, args);
23
+ console.log("Input tileset value: ".concat(value));
24
+ console.log("Modified tileset value: ".concat(value.replace(/\\/g, '/')));
25
+ return value.replace(/\\/g, '/');
26
+ }
27
+ function validateOptionsWithEqual(args) {
28
+ return args.reduce(function (acc, curr) {
29
+ var equalSignIndex = curr.indexOf('=');
30
+ var beforeEqual = curr.slice(0, equalSignIndex);
31
+ var afterEqual = curr.slice(equalSignIndex + 1, curr.length);
32
+ var condition = curr.includes('=') && curr.startsWith('--') && afterEqual;
33
+ if (condition) {
34
+ return acc.concat(beforeEqual, afterEqual);
35
+ }
36
+ return acc.concat(curr);
37
+ }, []);
38
+ }
39
+ function getIntegerValue(index, args) {
40
+ var stringValue = getStringValue(index, args);
41
+ var result = Number.parseInt(stringValue);
42
+ if (isFinite(result)) {
43
+ return result;
44
+ }
45
+ return NaN;
46
+ }
47
+ function getBooleanValue(index, args) {
48
+ var stringValue = getStringValue(index, args).toLowerCase().trim();
49
+ if (['--no-draco', '--split-nodes'].includes(args[index]) && !stringValue) {
50
+ return false;
51
+ }
52
+ if (!stringValue || stringValue === 'true') {
53
+ return true;
54
+ }
55
+ return false;
56
+ }
57
+ //# sourceMappingURL=cli-utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli-utils.js","names":["getStringValue","index","args","length","value","indexOf","getURLValue","console","log","concat","replace","validateOptionsWithEqual","reduce","acc","curr","equalSignIndex","beforeEqual","slice","afterEqual","condition","includes","startsWith","getIntegerValue","stringValue","result","Number","parseInt","isFinite","NaN","getBooleanValue","toLowerCase","trim"],"sources":["../../../../src/lib/utils/cli-utils.ts"],"sourcesContent":["/**\n * Get string option value from cli arguments\n * @param index - option's name index in the argument's array.\n * The value of the option should be next to name of the option.\n * @param args - cli arguments array\n * @returns - string value of the option\n */\nexport function getStringValue(index: number, args: string[]): string {\n if (index + 1 >= args.length) {\n return '';\n }\n const value = args[index + 1];\n if (value.indexOf('--') === 0) {\n return '';\n }\n return value;\n}\n\n/**\n * Modyfy URL path to be compatible with fetch\n * @param index - option's name index in the argument's array.\n * The value of the option should be next to name of the option.\n * @param args - cli arguments array\n * @returns - string value of the option\n */\nexport function getURLValue(index: number, args: string[]): string {\n const value = getStringValue(index, args);\n console.log(`Input tileset value: ${value}`);\n console.log(`Modified tileset value: ${value.replace(/\\\\/g, '/')}`);\n return value.replace(/\\\\/g, '/');\n}\n\nexport function validateOptionsWithEqual(args: string[]): string[] {\n return args.reduce((acc: string[], curr) => {\n const equalSignIndex = curr.indexOf('=');\n const beforeEqual = curr.slice(0, equalSignIndex);\n const afterEqual = curr.slice(equalSignIndex + 1, curr.length);\n const condition = curr.includes('=') && curr.startsWith('--') && afterEqual;\n if (condition) {\n return acc.concat(beforeEqual, afterEqual);\n }\n return acc.concat(curr);\n }, []);\n}\n\n/**\n * Get integer option value from cli arguments\n * @param index - option's name index in the argument's array\n * The value of the option should be next to name of the option.\n * @param args - cli arguments array\n * @returns - number value of the option\n */\nexport function getIntegerValue(index: number, args: string[]): number {\n const stringValue: string = getStringValue(index, args);\n const result: number = Number.parseInt(stringValue);\n if (isFinite(result)) {\n return result;\n }\n return NaN;\n}\n\n/**\n * Get boolean option value from cli arguments\n * @param index - option's name index in the argument's array\n * The value of the option should be next to name of the option.\n * @param args - cli arguments array\n * @returns - boolean value of the option\n */\nexport function getBooleanValue(index: number, args: string[]): boolean {\n const stringValue: string = getStringValue(index, args).toLowerCase().trim();\n if (['--no-draco', '--split-nodes'].includes(args[index]) && !stringValue) {\n return false;\n }\n if (!stringValue || stringValue === 'true') {\n return true;\n }\n return false;\n}\n"],"mappings":";;;;;;;;;;AAOO,SAASA,cAAcA,CAACC,KAAa,EAAEC,IAAc,EAAU;EACpE,IAAID,KAAK,GAAG,CAAC,IAAIC,IAAI,CAACC,MAAM,EAAE;IAC5B,OAAO,EAAE;EACX;EACA,IAAMC,KAAK,GAAGF,IAAI,CAACD,KAAK,GAAG,CAAC,CAAC;EAC7B,IAAIG,KAAK,CAACC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;IAC7B,OAAO,EAAE;EACX;EACA,OAAOD,KAAK;AACd;AASO,SAASE,WAAWA,CAACL,KAAa,EAAEC,IAAc,EAAU;EACjE,IAAME,KAAK,GAAGJ,cAAc,CAACC,KAAK,EAAEC,IAAI,CAAC;EACzCK,OAAO,CAACC,GAAG,yBAAAC,MAAA,CAAyBL,KAAK,CAAE,CAAC;EAC5CG,OAAO,CAACC,GAAG,4BAAAC,MAAA,CAA4BL,KAAK,CAACM,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAE,CAAC;EACnE,OAAON,KAAK,CAACM,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC;AAClC;AAEO,SAASC,wBAAwBA,CAACT,IAAc,EAAY;EACjE,OAAOA,IAAI,CAACU,MAAM,CAAC,UAACC,GAAa,EAAEC,IAAI,EAAK;IAC1C,IAAMC,cAAc,GAAGD,IAAI,CAACT,OAAO,CAAC,GAAG,CAAC;IACxC,IAAMW,WAAW,GAAGF,IAAI,CAACG,KAAK,CAAC,CAAC,EAAEF,cAAc,CAAC;IACjD,IAAMG,UAAU,GAAGJ,IAAI,CAACG,KAAK,CAACF,cAAc,GAAG,CAAC,EAAED,IAAI,CAACX,MAAM,CAAC;IAC9D,IAAMgB,SAAS,GAAGL,IAAI,CAACM,QAAQ,CAAC,GAAG,CAAC,IAAIN,IAAI,CAACO,UAAU,CAAC,IAAI,CAAC,IAAIH,UAAU;IAC3E,IAAIC,SAAS,EAAE;MACb,OAAON,GAAG,CAACJ,MAAM,CAACO,WAAW,EAAEE,UAAU,CAAC;IAC5C;IACA,OAAOL,GAAG,CAACJ,MAAM,CAACK,IAAI,CAAC;EACzB,CAAC,EAAE,EAAE,CAAC;AACR;AASO,SAASQ,eAAeA,CAACrB,KAAa,EAAEC,IAAc,EAAU;EACrE,IAAMqB,WAAmB,GAAGvB,cAAc,CAACC,KAAK,EAAEC,IAAI,CAAC;EACvD,IAAMsB,MAAc,GAAGC,MAAM,CAACC,QAAQ,CAACH,WAAW,CAAC;EACnD,IAAII,QAAQ,CAACH,MAAM,CAAC,EAAE;IACpB,OAAOA,MAAM;EACf;EACA,OAAOI,GAAG;AACZ;AASO,SAASC,eAAeA,CAAC5B,KAAa,EAAEC,IAAc,EAAW;EACtE,IAAMqB,WAAmB,GAAGvB,cAAc,CAACC,KAAK,EAAEC,IAAI,CAAC,CAAC4B,WAAW,CAAC,CAAC,CAACC,IAAI,CAAC,CAAC;EAC5E,IAAI,CAAC,YAAY,EAAE,eAAe,CAAC,CAACX,QAAQ,CAAClB,IAAI,CAACD,KAAK,CAAC,CAAC,IAAI,CAACsB,WAAW,EAAE;IACzE,OAAO,KAAK;EACd;EACA,IAAI,CAACA,WAAW,IAAIA,WAAW,KAAK,MAAM,EAAE;IAC1C,OAAO,IAAI;EACb;EACA,OAAO,KAAK;AACd"}