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

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 (300) hide show
  1. package/bin/i3s-server.js +4 -0
  2. package/bin/slpk-extractor.js +4 -0
  3. package/dist/3d-tiles-converter/3d-tiles-converter.d.ts +5 -5
  4. package/dist/3d-tiles-converter/3d-tiles-converter.d.ts.map +1 -1
  5. package/dist/3d-tiles-converter/helpers/b3dm-converter.d.ts +10 -5
  6. package/dist/3d-tiles-converter/helpers/b3dm-converter.d.ts.map +1 -1
  7. package/dist/3d-tiles-converter/helpers/load-i3s.d.ts +10 -0
  8. package/dist/3d-tiles-converter/helpers/load-i3s.d.ts.map +1 -0
  9. package/dist/3d-tiles-converter/helpers/texture-atlas.d.ts +2 -1
  10. package/dist/3d-tiles-converter/helpers/texture-atlas.d.ts.map +1 -1
  11. package/dist/converter.min.js +172 -103
  12. package/dist/deps-installer/deps-installer.d.ts +3 -2
  13. package/dist/deps-installer/deps-installer.d.ts.map +1 -1
  14. package/dist/dist.min.js +32715 -32567
  15. package/dist/es5/3d-tiles-converter/3d-tiles-converter.js +97 -117
  16. package/dist/es5/3d-tiles-converter/3d-tiles-converter.js.map +1 -1
  17. package/dist/es5/3d-tiles-converter/helpers/b3dm-converter.js +24 -22
  18. package/dist/es5/3d-tiles-converter/helpers/b3dm-converter.js.map +1 -1
  19. package/dist/es5/3d-tiles-converter/helpers/load-i3s.js +63 -0
  20. package/dist/es5/3d-tiles-converter/helpers/load-i3s.js.map +1 -0
  21. package/dist/es5/3d-tiles-converter/helpers/texture-atlas.js.map +1 -1
  22. package/dist/es5/converter-cli.js +25 -65
  23. package/dist/es5/converter-cli.js.map +1 -1
  24. package/dist/es5/deps-installer/deps-installer.js +113 -39
  25. package/dist/es5/deps-installer/deps-installer.js.map +1 -1
  26. package/dist/es5/i3s-converter/helpers/batch-ids-extensions.js +45 -15
  27. package/dist/es5/i3s-converter/helpers/batch-ids-extensions.js.map +1 -1
  28. package/dist/es5/i3s-converter/helpers/coordinate-converter.js.map +1 -1
  29. package/dist/es5/i3s-converter/helpers/feature-attributes.js +8 -18
  30. package/dist/es5/i3s-converter/helpers/feature-attributes.js.map +1 -1
  31. package/dist/es5/i3s-converter/helpers/geometry-attributes.js +83 -43
  32. package/dist/es5/i3s-converter/helpers/geometry-attributes.js.map +1 -1
  33. package/dist/es5/i3s-converter/helpers/geometry-converter.js +100 -102
  34. package/dist/es5/i3s-converter/helpers/geometry-converter.js.map +1 -1
  35. package/dist/es5/i3s-converter/helpers/gltf-attributes.js.map +1 -1
  36. package/dist/es5/i3s-converter/helpers/load-3d-tiles.js +70 -4
  37. package/dist/es5/i3s-converter/helpers/load-3d-tiles.js.map +1 -1
  38. package/dist/es5/i3s-converter/helpers/node-index-document.js +3 -2
  39. package/dist/es5/i3s-converter/helpers/node-index-document.js.map +1 -1
  40. package/dist/es5/i3s-converter/helpers/preprocess-3d-tiles.js +47 -12
  41. package/dist/es5/i3s-converter/helpers/preprocess-3d-tiles.js.map +1 -1
  42. package/dist/es5/i3s-converter/i3s-converter.js +187 -174
  43. package/dist/es5/i3s-converter/i3s-converter.js.map +1 -1
  44. package/dist/es5/i3s-converter/types.js +11 -11
  45. package/dist/es5/i3s-converter/types.js.map +1 -1
  46. package/dist/es5/i3s-server/README.md +46 -2
  47. package/dist/es5/i3s-server/app.js +23 -15
  48. package/dist/es5/i3s-server/app.js.map +1 -1
  49. package/dist/es5/i3s-server/bin/www.js +33 -0
  50. package/dist/es5/i3s-server/bin/www.js.map +1 -0
  51. package/dist/es5/i3s-server/controllers/index-controller.js +23 -22
  52. package/dist/es5/i3s-server/controllers/index-controller.js.map +1 -1
  53. package/dist/es5/i3s-server/controllers/slpk-controller.js +35 -38
  54. package/dist/es5/i3s-server/controllers/slpk-controller.js.map +1 -1
  55. package/dist/es5/i3s-server/routes/index.js +2 -2
  56. package/dist/es5/i3s-server/routes/index.js.map +1 -1
  57. package/dist/es5/i3s-server/routes/slpk-router.js +14 -13
  58. package/dist/es5/i3s-server/routes/slpk-router.js.map +1 -1
  59. package/dist/es5/i3s-server/utils/create-scene-server.js +7 -4
  60. package/dist/es5/i3s-server/utils/create-scene-server.js.map +1 -1
  61. package/dist/es5/i3s-server/utils/server-utils.js +49 -0
  62. package/dist/es5/i3s-server/utils/server-utils.js.map +1 -0
  63. package/dist/es5/lib/utils/cli-utils.js +57 -0
  64. package/dist/es5/lib/utils/cli-utils.js.map +1 -0
  65. package/dist/es5/lib/utils/compress-util.js +1 -1
  66. package/dist/es5/lib/utils/compress-util.js.map +1 -1
  67. package/dist/es5/lib/utils/lod-conversion-utils.js +10 -4
  68. package/dist/es5/lib/utils/lod-conversion-utils.js.map +1 -1
  69. package/dist/es5/pgm-loader.js +11 -3
  70. package/dist/es5/pgm-loader.js.map +1 -1
  71. package/dist/es5/slpk-extractor/slpk-extractor.js +171 -0
  72. package/dist/es5/slpk-extractor/slpk-extractor.js.map +1 -0
  73. package/dist/es5/slpk-extractor-cli.js +117 -0
  74. package/dist/es5/slpk-extractor-cli.js.map +1 -0
  75. package/dist/esm/3d-tiles-converter/3d-tiles-converter.js +51 -58
  76. package/dist/esm/3d-tiles-converter/3d-tiles-converter.js.map +1 -1
  77. package/dist/esm/3d-tiles-converter/helpers/b3dm-converter.js +12 -11
  78. package/dist/esm/3d-tiles-converter/helpers/b3dm-converter.js.map +1 -1
  79. package/dist/esm/3d-tiles-converter/helpers/load-i3s.js +32 -0
  80. package/dist/esm/3d-tiles-converter/helpers/load-i3s.js.map +1 -0
  81. package/dist/esm/3d-tiles-converter/helpers/texture-atlas.js.map +1 -1
  82. package/dist/esm/converter-cli.js +8 -48
  83. package/dist/esm/converter-cli.js.map +1 -1
  84. package/dist/esm/deps-installer/deps-installer.js +38 -12
  85. package/dist/esm/deps-installer/deps-installer.js.map +1 -1
  86. package/dist/esm/i3s-converter/helpers/batch-ids-extensions.js +28 -11
  87. package/dist/esm/i3s-converter/helpers/batch-ids-extensions.js.map +1 -1
  88. package/dist/esm/i3s-converter/helpers/coordinate-converter.js.map +1 -1
  89. package/dist/esm/i3s-converter/helpers/feature-attributes.js +10 -8
  90. package/dist/esm/i3s-converter/helpers/feature-attributes.js.map +1 -1
  91. package/dist/esm/i3s-converter/helpers/geometry-attributes.js +77 -34
  92. package/dist/esm/i3s-converter/helpers/geometry-attributes.js.map +1 -1
  93. package/dist/esm/i3s-converter/helpers/geometry-converter.js +60 -61
  94. package/dist/esm/i3s-converter/helpers/geometry-converter.js.map +1 -1
  95. package/dist/esm/i3s-converter/helpers/gltf-attributes.js.map +1 -1
  96. package/dist/esm/i3s-converter/helpers/load-3d-tiles.js +33 -4
  97. package/dist/esm/i3s-converter/helpers/load-3d-tiles.js.map +1 -1
  98. package/dist/esm/i3s-converter/helpers/node-index-document.js +2 -1
  99. package/dist/esm/i3s-converter/helpers/node-index-document.js.map +1 -1
  100. package/dist/esm/i3s-converter/helpers/preprocess-3d-tiles.js +37 -12
  101. package/dist/esm/i3s-converter/helpers/preprocess-3d-tiles.js.map +1 -1
  102. package/dist/esm/i3s-converter/i3s-converter.js +101 -73
  103. package/dist/esm/i3s-converter/i3s-converter.js.map +1 -1
  104. package/dist/esm/i3s-converter/types.js +9 -9
  105. package/dist/esm/i3s-converter/types.js.map +1 -1
  106. package/dist/esm/i3s-server/README.md +46 -2
  107. package/dist/esm/i3s-server/app.js +13 -11
  108. package/dist/esm/i3s-server/app.js.map +1 -1
  109. package/dist/esm/i3s-server/bin/i3s-server.min.js +516 -0
  110. package/dist/esm/i3s-server/bin/www.js +30 -0
  111. package/dist/esm/i3s-server/bin/www.js.map +1 -0
  112. package/dist/esm/i3s-server/controllers/index-controller.js +4 -7
  113. package/dist/esm/i3s-server/controllers/index-controller.js.map +1 -1
  114. package/dist/esm/i3s-server/controllers/slpk-controller.js +9 -26
  115. package/dist/esm/i3s-server/controllers/slpk-controller.js.map +1 -1
  116. package/dist/esm/i3s-server/routes/index.js +1 -1
  117. package/dist/esm/i3s-server/routes/index.js.map +1 -1
  118. package/dist/esm/i3s-server/routes/slpk-router.js +5 -11
  119. package/dist/esm/i3s-server/routes/slpk-router.js.map +1 -1
  120. package/dist/esm/i3s-server/utils/create-scene-server.js +2 -5
  121. package/dist/esm/i3s-server/utils/create-scene-server.js.map +1 -1
  122. package/dist/esm/i3s-server/utils/server-utils.js +40 -0
  123. package/dist/esm/i3s-server/utils/server-utils.js.map +1 -0
  124. package/dist/esm/lib/utils/cli-utils.js +47 -0
  125. package/dist/esm/lib/utils/cli-utils.js.map +1 -0
  126. package/dist/esm/lib/utils/compress-util.js +1 -1
  127. package/dist/esm/lib/utils/compress-util.js.map +1 -1
  128. package/dist/esm/lib/utils/lod-conversion-utils.js +6 -4
  129. package/dist/esm/lib/utils/lod-conversion-utils.js.map +1 -1
  130. package/dist/esm/pgm-loader.js +7 -4
  131. package/dist/esm/pgm-loader.js.map +1 -1
  132. package/dist/esm/slpk-extractor/slpk-extractor.js +63 -0
  133. package/dist/esm/slpk-extractor/slpk-extractor.js.map +1 -0
  134. package/dist/esm/slpk-extractor-cli.js +74 -0
  135. package/dist/esm/slpk-extractor-cli.js.map +1 -0
  136. package/dist/i3s-converter/helpers/batch-ids-extensions.d.ts +15 -2
  137. package/dist/i3s-converter/helpers/batch-ids-extensions.d.ts.map +1 -1
  138. package/dist/i3s-converter/helpers/coordinate-converter.d.ts +1 -2
  139. package/dist/i3s-converter/helpers/coordinate-converter.d.ts.map +1 -1
  140. package/dist/i3s-converter/helpers/feature-attributes.d.ts +8 -8
  141. package/dist/i3s-converter/helpers/feature-attributes.d.ts.map +1 -1
  142. package/dist/i3s-converter/helpers/geometry-attributes.d.ts.map +1 -1
  143. package/dist/i3s-converter/helpers/geometry-converter.d.ts +9 -9
  144. package/dist/i3s-converter/helpers/geometry-converter.d.ts.map +1 -1
  145. package/dist/i3s-converter/helpers/gltf-attributes.d.ts +3 -3
  146. package/dist/i3s-converter/helpers/gltf-attributes.d.ts.map +1 -1
  147. package/dist/i3s-converter/helpers/load-3d-tiles.d.ts +15 -0
  148. package/dist/i3s-converter/helpers/load-3d-tiles.d.ts.map +1 -1
  149. package/dist/i3s-converter/helpers/node-index-document.d.ts.map +1 -1
  150. package/dist/i3s-converter/helpers/preprocess-3d-tiles.d.ts +4 -5
  151. package/dist/i3s-converter/helpers/preprocess-3d-tiles.d.ts.map +1 -1
  152. package/dist/i3s-converter/i3s-converter.d.ts +3 -2
  153. package/dist/i3s-converter/i3s-converter.d.ts.map +1 -1
  154. package/dist/i3s-converter/types.d.ts +48 -7
  155. package/dist/i3s-converter/types.d.ts.map +1 -1
  156. package/dist/i3s-server/app.d.ts +1 -2
  157. package/dist/i3s-server/app.d.ts.map +1 -1
  158. package/dist/i3s-server/bin/www.d.ts +3 -0
  159. package/dist/i3s-server/bin/www.d.ts.map +1 -0
  160. package/dist/i3s-server/controllers/index-controller.d.ts +6 -1
  161. package/dist/i3s-server/controllers/index-controller.d.ts.map +1 -1
  162. package/dist/i3s-server/controllers/slpk-controller.d.ts +13 -2
  163. package/dist/i3s-server/controllers/slpk-controller.d.ts.map +1 -1
  164. package/dist/i3s-server/routes/index.d.ts +1 -2
  165. package/dist/i3s-server/routes/index.d.ts.map +1 -1
  166. package/dist/i3s-server/routes/slpk-router.d.ts +2 -2
  167. package/dist/i3s-server/routes/slpk-router.d.ts.map +1 -1
  168. package/dist/i3s-server/utils/create-scene-server.d.ts +11 -5
  169. package/dist/i3s-server/utils/create-scene-server.d.ts.map +1 -1
  170. package/dist/i3s-server/utils/server-utils.d.ts +24 -0
  171. package/dist/i3s-server/utils/server-utils.d.ts.map +1 -0
  172. package/dist/lib/utils/cli-utils.d.ts +34 -0
  173. package/dist/lib/utils/cli-utils.d.ts.map +1 -0
  174. package/dist/lib/utils/lod-conversion-utils.d.ts +2 -2
  175. package/dist/lib/utils/lod-conversion-utils.d.ts.map +1 -1
  176. package/dist/pgm-loader.d.ts +9 -2
  177. package/dist/pgm-loader.d.ts.map +1 -1
  178. package/dist/slpk-extractor/slpk-extractor.d.ts +23 -0
  179. package/dist/slpk-extractor/slpk-extractor.d.ts.map +1 -0
  180. package/dist/slpk-extractor-cli.d.ts +17 -0
  181. package/dist/slpk-extractor-cli.d.ts.map +1 -0
  182. package/dist/slpk-extractor.min.js +189 -0
  183. package/package.json +27 -21
  184. package/src/3d-tiles-converter/3d-tiles-converter.ts +65 -69
  185. package/src/3d-tiles-converter/helpers/b3dm-converter.ts +23 -19
  186. package/src/3d-tiles-converter/helpers/load-i3s.ts +52 -0
  187. package/src/3d-tiles-converter/helpers/texture-atlas.ts +6 -2
  188. package/src/converter-cli.ts +16 -74
  189. package/src/deps-installer/deps-installer.ts +56 -11
  190. package/src/i3s-converter/helpers/batch-ids-extensions.ts +77 -32
  191. package/src/i3s-converter/helpers/coordinate-converter.ts +1 -2
  192. package/src/i3s-converter/helpers/feature-attributes.ts +23 -18
  193. package/src/i3s-converter/helpers/geometry-attributes.ts +81 -44
  194. package/src/i3s-converter/helpers/geometry-converter.ts +149 -126
  195. package/src/i3s-converter/helpers/gltf-attributes.ts +9 -10
  196. package/src/i3s-converter/helpers/load-3d-tiles.ts +61 -5
  197. package/src/i3s-converter/helpers/node-index-document.ts +5 -1
  198. package/src/i3s-converter/helpers/preprocess-3d-tiles.ts +70 -21
  199. package/src/i3s-converter/i3s-converter.ts +145 -73
  200. package/src/i3s-converter/types.ts +49 -7
  201. package/src/i3s-server/README.md +46 -2
  202. package/src/i3s-server/{app.js → app.ts} +11 -9
  203. package/src/i3s-server/bin/www.ts +38 -0
  204. package/src/i3s-server/controllers/{index-controller.js → index-controller.ts} +10 -9
  205. package/src/i3s-server/controllers/slpk-controller.ts +32 -0
  206. package/src/i3s-server/routes/{index.js → index.ts} +2 -1
  207. package/src/i3s-server/routes/{slpk-router.js → slpk-router.ts} +5 -10
  208. package/src/i3s-server/utils/create-scene-server.ts +20 -0
  209. package/src/i3s-server/utils/server-utils.ts +70 -0
  210. package/src/lib/utils/cli-utils.ts +78 -0
  211. package/src/lib/utils/compress-util.ts +1 -1
  212. package/src/lib/utils/lod-conversion-utils.ts +10 -6
  213. package/src/pgm-loader.ts +15 -7
  214. package/src/slpk-extractor/slpk-extractor.ts +101 -0
  215. package/src/slpk-extractor-cli.ts +128 -0
  216. package/dist/3d-tiles-attributes-worker.d.ts +0 -28
  217. package/dist/3d-tiles-attributes-worker.d.ts.map +0 -1
  218. package/dist/3d-tiles-attributes-worker.js +0 -3
  219. package/dist/3d-tiles-attributes-worker.js.map +0 -7
  220. package/dist/3d-tiles-converter/3d-tiles-converter.js +0 -288
  221. package/dist/3d-tiles-converter/helpers/b3dm-converter.js +0 -269
  222. package/dist/3d-tiles-converter/helpers/i3s-obb-to-3d-tiles-obb.js +0 -23
  223. package/dist/3d-tiles-converter/helpers/texture-atlas.js +0 -52
  224. package/dist/3d-tiles-converter/json-templates/tileset.js +0 -43
  225. package/dist/bundle.js +0 -5
  226. package/dist/constants.js +0 -4
  227. package/dist/converter-cli.js +0 -280
  228. package/dist/deps-installer/deps-installer.js +0 -63
  229. package/dist/es5/3d-tiles-attributes-worker.js +0 -25
  230. package/dist/es5/3d-tiles-attributes-worker.js.map +0 -1
  231. package/dist/es5/i3s-attributes-worker.js +0 -25
  232. package/dist/es5/i3s-attributes-worker.js.map +0 -1
  233. package/dist/es5/i3s-server/bin/www +0 -102
  234. package/dist/es5/workers/3d-tiles-attributes-worker.js +0 -28
  235. package/dist/es5/workers/3d-tiles-attributes-worker.js.map +0 -1
  236. package/dist/es5/workers/i3s-attributes-worker.js +0 -30
  237. package/dist/es5/workers/i3s-attributes-worker.js.map +0 -1
  238. package/dist/esm/3d-tiles-attributes-worker.js +0 -16
  239. package/dist/esm/3d-tiles-attributes-worker.js.map +0 -1
  240. package/dist/esm/i3s-attributes-worker.js +0 -16
  241. package/dist/esm/i3s-attributes-worker.js.map +0 -1
  242. package/dist/esm/i3s-server/bin/www +0 -102
  243. package/dist/esm/workers/3d-tiles-attributes-worker.js +0 -8
  244. package/dist/esm/workers/3d-tiles-attributes-worker.js.map +0 -1
  245. package/dist/esm/workers/i3s-attributes-worker.js +0 -7
  246. package/dist/esm/workers/i3s-attributes-worker.js.map +0 -1
  247. package/dist/i3s-attributes-worker.d.ts +0 -45
  248. package/dist/i3s-attributes-worker.d.ts.map +0 -1
  249. package/dist/i3s-attributes-worker.js +0 -9
  250. package/dist/i3s-attributes-worker.js.map +0 -7
  251. package/dist/i3s-converter/helpers/batch-ids-extensions.js +0 -138
  252. package/dist/i3s-converter/helpers/coordinate-converter.js +0 -123
  253. package/dist/i3s-converter/helpers/create-scene-server-path.js +0 -28
  254. package/dist/i3s-converter/helpers/feature-attributes.js +0 -216
  255. package/dist/i3s-converter/helpers/geometry-attributes.js +0 -202
  256. package/dist/i3s-converter/helpers/geometry-converter.js +0 -1225
  257. package/dist/i3s-converter/helpers/gltf-attributes.js +0 -128
  258. package/dist/i3s-converter/helpers/load-3d-tiles.js +0 -53
  259. package/dist/i3s-converter/helpers/node-debug.js +0 -120
  260. package/dist/i3s-converter/helpers/node-index-document.js +0 -268
  261. package/dist/i3s-converter/helpers/node-pages.js +0 -316
  262. package/dist/i3s-converter/helpers/preprocess-3d-tiles.js +0 -76
  263. package/dist/i3s-converter/helpers/tileset-traversal.js +0 -29
  264. package/dist/i3s-converter/i3s-converter.js +0 -911
  265. package/dist/i3s-converter/json-templates/geometry-definitions.js +0 -87
  266. package/dist/i3s-converter/json-templates/layers.js +0 -139
  267. package/dist/i3s-converter/json-templates/metadata.js +0 -25
  268. package/dist/i3s-converter/json-templates/node.js +0 -89
  269. package/dist/i3s-converter/json-templates/scene-server.js +0 -31
  270. package/dist/i3s-converter/json-templates/shared-resources.js +0 -129
  271. package/dist/i3s-converter/json-templates/store.js +0 -103
  272. package/dist/i3s-converter/types.js +0 -17
  273. package/dist/i3s-server/app.js +0 -22
  274. package/dist/i3s-server/controllers/index-controller.js +0 -23
  275. package/dist/i3s-server/controllers/slpk-controller.js +0 -32
  276. package/dist/i3s-server/routes/index.js +0 -16
  277. package/dist/i3s-server/routes/slpk-router.js +0 -33
  278. package/dist/i3s-server/utils/create-scene-server.js +0 -14
  279. package/dist/index.js +0 -10
  280. package/dist/lib/utils/compress-util.js +0 -257
  281. package/dist/lib/utils/file-utils.js +0 -139
  282. package/dist/lib/utils/geometry-utils.js +0 -18
  283. package/dist/lib/utils/lod-conversion-utils.js +0 -76
  284. package/dist/lib/utils/queue.js +0 -18
  285. package/dist/lib/utils/statistic-utills.js +0 -64
  286. package/dist/lib/utils/write-queue.js +0 -80
  287. package/dist/pgm-loader.js +0 -24
  288. package/dist/workers/3d-tiles-attributes-worker.d.ts +0 -2
  289. package/dist/workers/3d-tiles-attributes-worker.d.ts.map +0 -1
  290. package/dist/workers/3d-tiles-attributes-worker.js +0 -9
  291. package/dist/workers/i3s-attributes-worker.d.ts +0 -2
  292. package/dist/workers/i3s-attributes-worker.d.ts.map +0 -1
  293. package/dist/workers/i3s-attributes-worker.js +0 -5
  294. package/src/3d-tiles-attributes-worker.ts +0 -43
  295. package/src/i3s-attributes-worker.ts +0 -59
  296. package/src/i3s-server/bin/www +0 -102
  297. package/src/i3s-server/controllers/slpk-controller.js +0 -38
  298. package/src/i3s-server/utils/create-scene-server.js +0 -15
  299. package/src/workers/3d-tiles-attributes-worker.ts +0 -6
  300. package/src/workers/i3s-attributes-worker.ts +0 -7
@@ -8,12 +8,56 @@ The server provides I3S Rest endpoints per specification https://github.com/Esri
8
8
  ### Serve 3DTiles to I3S converted dataset
9
9
 
10
10
  - Convert data set from 3DTiles to I3S without `--slpk` option
11
- - Serve output folder `I3sLayerPath="./data/BatchedTextured" DEBUG=i3s-server:* npx i3s-server`
11
+ - Serve output folder
12
+
13
+ Example for path `./data/BatchTextured/SceneServer/layers/0/...`:
14
+
15
+ #### Start the server
16
+
17
+ ```bash
18
+ PORT=8080 HTTPS_PORT=4443 I3sLayerPath="./data" DEBUG=i3s-server:* npx i3s-server
19
+ ```
20
+ #### Check the layer availability
21
+
22
+ The layer should be available on URLs:
23
+
24
+ - `http://localhost:8080/BatchTextured/SceneServer/layers/0/...`
25
+ - `https://localhost:4443/BatchTextured/SceneServer/layers/0/...`
26
+
27
+ #### Open in ArcGIS
28
+
29
+ `https://www.arcgis.com/home/webscene/viewer.html?url=http://localhost:8080/BatchTextured/SceneServer/layers/0/`
30
+
31
+ #### Open in I3S Explorer
32
+
33
+ `https://i3s.loaders.gl/viewer?tileset=http://localhost:8080/BatchTextured/SceneServer/layers/0`
12
34
 
13
35
  ### Serve SLPK
14
36
 
15
- - Serve slpk file `I3sLayerPath="../datasets/Rancho_Mesh_mesh_v17_1.slpk" DEBUG=i3s-server:* npx i3s-server`
37
+ Example for path `../datasets/Rancho_Mesh_mesh_v17_1.slpk`:
38
+
39
+ #### Start the server
40
+
41
+ ```bash
42
+ PORT=8080 HTTPS_PORT=4443 I3sLayerPath="../datasets/Rancho_Mesh_mesh_v17_1.slpk" DEBUG=i3s-server:* npx i3s-server
43
+ ```
44
+ #### Check the layer availability
45
+
46
+ The layer should be available on URLs:
47
+
48
+ - `http://localhost:8080/SceneServer/layers/0/...`
49
+ - `https://localhost:4443/SceneServer/layers/0/...`
50
+
51
+ #### Open in ArcGIS
52
+
53
+ `https://www.arcgis.com/home/webscene/viewer.html?url=http://localhost:8080/SceneServer`
54
+
55
+ #### Open in I3S Explorer
56
+
57
+ `https://i3s.loaders.gl/viewer?tileset=http://localhost:8080/SceneServer/layers/0`
16
58
 
17
59
  ## ENV variables
18
60
 
19
61
  - `I3sLayerPath` - path to converted data or SLPK file.
62
+ - `PORT` - HTTP port. Eg for `PORT = 8080 npx i3s-server` the server will work on host `http://localhost:8080/...`. Default value is `80`;
63
+ - `HTTPS_PORT` - HTTPS port. Eg for `PORT = 4443 npx i3s-server` the server will work on host `https://localhost:4443/...`. Default value is `443`
@@ -1,27 +1,35 @@
1
1
  "use strict";
2
2
 
3
- var express = require('express');
4
- var path = require('path');
5
- var logger = require('morgan');
6
- var cors = require('cors');
7
- var indexRouter = require('./routes/index');
8
- var _require = require('./routes/slpk-router'),
9
- sceneServerRouter = _require.sceneServerRouter,
10
- router = _require.router;
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.app = void 0;
8
+ var _express = _interopRequireDefault(require("express"));
9
+ var _path = _interopRequireDefault(require("path"));
10
+ var _morgan = _interopRequireDefault(require("morgan"));
11
+ var _cors = _interopRequireDefault(require("cors"));
12
+ var _slpkController = require("./controllers/slpk-controller");
11
13
  var I3S_LAYER_PATH = process.env.I3sLayerPath || '';
12
- var app = express();
13
- app.use(logger('dev'));
14
- app.use(express.json());
15
- app.use(express.urlencoded({
14
+ var FULL_LAYER_PATH = _path.default.join(process.cwd(), I3S_LAYER_PATH);
15
+ (0, _slpkController.loadArchive)(FULL_LAYER_PATH);
16
+ var indexRouter = require('./routes/index');
17
+ var app = (0, _express.default)();
18
+ exports.app = app;
19
+ app.use((0, _morgan.default)('dev'));
20
+ app.use(_express.default.json());
21
+ app.use(_express.default.urlencoded({
16
22
  extended: false
17
23
  }));
18
- app.use(express.static(path.join(__dirname, 'public')));
19
- app.use(cors());
24
+ app.use(_express.default.static(_path.default.join(__dirname, 'public')));
25
+ app.use((0, _cors.default)());
20
26
  if (/\.slpk$/.test(I3S_LAYER_PATH)) {
27
+ var _require = require('./routes/slpk-router'),
28
+ sceneServerRouter = _require.sceneServerRouter,
29
+ router = _require.router;
21
30
  app.use('/SceneServer/layers/0', router);
22
31
  app.use('/SceneServer', sceneServerRouter);
23
32
  } else {
24
33
  app.use('/', indexRouter);
25
34
  }
26
- module.exports = app;
27
35
  //# sourceMappingURL=app.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"app.js","names":["express","require","path","logger","cors","indexRouter","_require","sceneServerRouter","router","I3S_LAYER_PATH","process","env","I3sLayerPath","app","use","json","urlencoded","extended","static","join","__dirname","test","module","exports"],"sources":["../../../src/i3s-server/app.js"],"sourcesContent":["const express = require('express');\nconst path = require('path');\nconst logger = require('morgan');\nconst cors = require('cors');\n\nconst indexRouter = require('./routes/index');\nconst {sceneServerRouter, router} = require('./routes/slpk-router');\n\nconst I3S_LAYER_PATH = process.env.I3sLayerPath || ''; // eslint-disable-line no-process-env, no-undef\nconst app = express();\n\napp.use(logger('dev'));\napp.use(express.json());\napp.use(express.urlencoded({extended: false}));\napp.use(express.static(path.join(__dirname, 'public')));\napp.use(cors());\n\nif (/\\.slpk$/.test(I3S_LAYER_PATH)) {\n app.use('/SceneServer/layers/0', router);\n app.use('/SceneServer', sceneServerRouter);\n} else {\n app.use('/', indexRouter);\n}\n\nmodule.exports = app;\n"],"mappings":";;AAAA,IAAMA,OAAO,GAAGC,OAAO,CAAC,SAAS,CAAC;AAClC,IAAMC,IAAI,GAAGD,OAAO,CAAC,MAAM,CAAC;AAC5B,IAAME,MAAM,GAAGF,OAAO,CAAC,QAAQ,CAAC;AAChC,IAAMG,IAAI,GAAGH,OAAO,CAAC,MAAM,CAAC;AAE5B,IAAMI,WAAW,GAAGJ,OAAO,CAAC,gBAAgB,CAAC;AAC7C,IAAAK,QAAA,GAAoCL,OAAO,CAAC,sBAAsB,CAAC;EAA5DM,iBAAiB,GAAAD,QAAA,CAAjBC,iBAAiB;EAAEC,MAAM,GAAAF,QAAA,CAANE,MAAM;AAEhC,IAAMC,cAAc,GAAGC,OAAO,CAACC,GAAG,CAACC,YAAY,IAAI,EAAE;AACrD,IAAMC,GAAG,GAAGb,OAAO,CAAC,CAAC;AAErBa,GAAG,CAACC,GAAG,CAACX,MAAM,CAAC,KAAK,CAAC,CAAC;AACtBU,GAAG,CAACC,GAAG,CAACd,OAAO,CAACe,IAAI,CAAC,CAAC,CAAC;AACvBF,GAAG,CAACC,GAAG,CAACd,OAAO,CAACgB,UAAU,CAAC;EAACC,QAAQ,EAAE;AAAK,CAAC,CAAC,CAAC;AAC9CJ,GAAG,CAACC,GAAG,CAACd,OAAO,CAACkB,MAAM,CAAChB,IAAI,CAACiB,IAAI,CAACC,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC;AACvDP,GAAG,CAACC,GAAG,CAACV,IAAI,CAAC,CAAC,CAAC;AAEf,IAAI,SAAS,CAACiB,IAAI,CAACZ,cAAc,CAAC,EAAE;EAClCI,GAAG,CAACC,GAAG,CAAC,uBAAuB,EAAEN,MAAM,CAAC;EACxCK,GAAG,CAACC,GAAG,CAAC,cAAc,EAAEP,iBAAiB,CAAC;AAC5C,CAAC,MAAM;EACLM,GAAG,CAACC,GAAG,CAAC,GAAG,EAAET,WAAW,CAAC;AAC3B;AAEAiB,MAAM,CAACC,OAAO,GAAGV,GAAG"}
1
+ {"version":3,"file":"app.js","names":["_express","_interopRequireDefault","require","_path","_morgan","_cors","_slpkController","I3S_LAYER_PATH","process","env","I3sLayerPath","FULL_LAYER_PATH","path","join","cwd","loadArchive","indexRouter","app","express","exports","use","logger","json","urlencoded","extended","static","__dirname","cors","test","_require","sceneServerRouter","router"],"sources":["../../../src/i3s-server/app.ts"],"sourcesContent":["import express from 'express';\nimport path from 'path';\nimport logger from 'morgan';\nimport cors from 'cors';\nimport {loadArchive} from './controllers/slpk-controller';\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\nloadArchive(FULL_LAYER_PATH);\n\nconst indexRouter = require('./routes/index');\n\nexport const app = express();\n\napp.use(logger('dev'));\napp.use(express.json());\napp.use(express.urlencoded({extended: false}));\napp.use(express.static(path.join(__dirname, 'public')));\napp.use(cors());\n\nif (/\\.slpk$/.test(I3S_LAYER_PATH)) {\n const {sceneServerRouter, router} = require('./routes/slpk-router');\n app.use('/SceneServer/layers/0', router);\n app.use('/SceneServer', sceneServerRouter);\n} else {\n app.use('/', indexRouter);\n}\n"],"mappings":";;;;;;;AAAA,IAAAA,QAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,KAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,OAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,KAAA,GAAAJ,sBAAA,CAAAC,OAAA;AACA,IAAAI,eAAA,GAAAJ,OAAA;AAEA,IAAMK,cAAc,GAAGC,OAAO,CAACC,GAAG,CAACC,YAAY,IAAI,EAAE;AACrD,IAAMC,eAAe,GAAGC,aAAI,CAACC,IAAI,CAACL,OAAO,CAACM,GAAG,CAAC,CAAC,EAAEP,cAAc,CAAC;AAChE,IAAAQ,2BAAW,EAACJ,eAAe,CAAC;AAE5B,IAAMK,WAAW,GAAGd,OAAO,CAAC,gBAAgB,CAAC;AAEtC,IAAMe,GAAG,GAAG,IAAAC,gBAAO,EAAC,CAAC;AAACC,OAAA,CAAAF,GAAA,GAAAA,GAAA;AAE7BA,GAAG,CAACG,GAAG,CAAC,IAAAC,eAAM,EAAC,KAAK,CAAC,CAAC;AACtBJ,GAAG,CAACG,GAAG,CAACF,gBAAO,CAACI,IAAI,CAAC,CAAC,CAAC;AACvBL,GAAG,CAACG,GAAG,CAACF,gBAAO,CAACK,UAAU,CAAC;EAACC,QAAQ,EAAE;AAAK,CAAC,CAAC,CAAC;AAC9CP,GAAG,CAACG,GAAG,CAACF,gBAAO,CAACO,MAAM,CAACb,aAAI,CAACC,IAAI,CAACa,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC;AACvDT,GAAG,CAACG,GAAG,CAAC,IAAAO,aAAI,EAAC,CAAC,CAAC;AAEf,IAAI,SAAS,CAACC,IAAI,CAACrB,cAAc,CAAC,EAAE;EAClC,IAAAsB,QAAA,GAAoC3B,OAAO,CAAC,sBAAsB,CAAC;IAA5D4B,iBAAiB,GAAAD,QAAA,CAAjBC,iBAAiB;IAAEC,MAAM,GAAAF,QAAA,CAANE,MAAM;EAChCd,GAAG,CAACG,GAAG,CAAC,uBAAuB,EAAEW,MAAM,CAAC;EACxCd,GAAG,CAACG,GAAG,CAAC,cAAc,EAAEU,iBAAiB,CAAC;AAC5C,CAAC,MAAM;EACLb,GAAG,CAACG,GAAG,CAAC,GAAG,EAAEJ,WAAW,CAAC;AAC3B"}
@@ -0,0 +1,33 @@
1
+ #!/usr/bin/env node
2
+ "use strict";
3
+
4
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
5
+ var _app = require("../app");
6
+ var _https = _interopRequireDefault(require("https"));
7
+ var _http = _interopRequireDefault(require("http"));
8
+ var _fs = _interopRequireDefault(require("fs"));
9
+ var _path = _interopRequireDefault(require("path"));
10
+ var _serverUtils = require("../utils/server-utils");
11
+ var httpPort = (0, _serverUtils.normalizePort)(process.env.PORT || '80');
12
+ if (httpPort === false) {
13
+ console.error("Incorrect HTTP port");
14
+ process.exit(1);
15
+ }
16
+ var httpsPort = (0, _serverUtils.normalizePort)(process.env.HTTPS_PORT || '443');
17
+ if (httpsPort === false) {
18
+ console.error("Incorrect HTTPs port");
19
+ process.exit(1);
20
+ }
21
+ var options = {
22
+ key: _fs.default.readFileSync(_path.default.join(__dirname, '../certs/key.pem')),
23
+ cert: _fs.default.readFileSync(_path.default.join(__dirname, '../certs/cert.pem'))
24
+ };
25
+ var httpServer = _http.default.createServer(_app.app);
26
+ var httpsServer = _https.default.createServer(options, _app.app);
27
+ httpServer.listen(httpPort);
28
+ httpServer.on('error', (0, _serverUtils.formErrorHandler)(httpPort));
29
+ httpServer.on('listening', (0, _serverUtils.formListeningHandler)(httpServer));
30
+ httpsServer.listen(httpsPort);
31
+ httpsServer.on('error', (0, _serverUtils.formErrorHandler)(httpsPort));
32
+ httpsServer.on('listening', (0, _serverUtils.formListeningHandler)(httpsServer));
33
+ //# sourceMappingURL=www.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"www.js","names":["_interopRequireDefault","require","_app","_https","_http","_fs","_path","_serverUtils","httpPort","normalizePort","process","env","PORT","console","error","exit","httpsPort","HTTPS_PORT","options","key","fs","readFileSync","path","join","__dirname","cert","httpServer","http","createServer","app","httpsServer","https","listen","on","formErrorHandler","formListeningHandler"],"sources":["../../../../src/i3s-server/bin/www.ts"],"sourcesContent":["#!/usr/bin/env node\n\nimport {app} from '../app';\nimport https from 'https';\nimport http from 'http';\nimport fs from 'fs';\nimport path from 'path';\nimport {formErrorHandler, formListeningHandler, normalizePort} from '../utils/server-utils';\n\n/** Get port from environment and store in Express. */\nconst httpPort = normalizePort(process.env.PORT || '80');\nif (httpPort === false) {\n console.error(`Incorrect HTTP port`);\n process.exit(1);\n}\nconst httpsPort = normalizePort(process.env.HTTPS_PORT || '443');\nif (httpsPort === false) {\n console.error(`Incorrect HTTPs port`);\n process.exit(1);\n}\n\n/** Create HTTP server. */\nconst options = {\n key: fs.readFileSync(path.join(__dirname, '../certs/key.pem')),\n cert: fs.readFileSync(path.join(__dirname, '../certs/cert.pem'))\n};\n\nconst httpServer = http.createServer(app);\nconst httpsServer = https.createServer(options, app);\n\n/** Listen on provided port, on all network interfaces. */\nhttpServer.listen(httpPort);\nhttpServer.on('error', formErrorHandler(httpPort));\nhttpServer.on('listening', formListeningHandler(httpServer));\n\nhttpsServer.listen(httpsPort);\nhttpsServer.on('error', formErrorHandler(httpsPort));\nhttpsServer.on('listening', formListeningHandler(httpsServer));\n"],"mappings":"AAAA;AAAmB;;AAAA,IAAAA,sBAAA,GAAAC,OAAA;AAEnB,IAAAC,IAAA,GAAAD,OAAA;AACA,IAAAE,MAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,KAAA,GAAAJ,sBAAA,CAAAC,OAAA;AACA,IAAAI,GAAA,GAAAL,sBAAA,CAAAC,OAAA;AACA,IAAAK,KAAA,GAAAN,sBAAA,CAAAC,OAAA;AACA,IAAAM,YAAA,GAAAN,OAAA;AAGA,IAAMO,QAAQ,GAAG,IAAAC,0BAAa,EAACC,OAAO,CAACC,GAAG,CAACC,IAAI,IAAI,IAAI,CAAC;AACxD,IAAIJ,QAAQ,KAAK,KAAK,EAAE;EACtBK,OAAO,CAACC,KAAK,sBAAsB,CAAC;EACpCJ,OAAO,CAACK,IAAI,CAAC,CAAC,CAAC;AACjB;AACA,IAAMC,SAAS,GAAG,IAAAP,0BAAa,EAACC,OAAO,CAACC,GAAG,CAACM,UAAU,IAAI,KAAK,CAAC;AAChE,IAAID,SAAS,KAAK,KAAK,EAAE;EACvBH,OAAO,CAACC,KAAK,uBAAuB,CAAC;EACrCJ,OAAO,CAACK,IAAI,CAAC,CAAC,CAAC;AACjB;AAGA,IAAMG,OAAO,GAAG;EACdC,GAAG,EAAEC,WAAE,CAACC,YAAY,CAACC,aAAI,CAACC,IAAI,CAACC,SAAS,EAAE,kBAAkB,CAAC,CAAC;EAC9DC,IAAI,EAAEL,WAAE,CAACC,YAAY,CAACC,aAAI,CAACC,IAAI,CAACC,SAAS,EAAE,mBAAmB,CAAC;AACjE,CAAC;AAED,IAAME,UAAU,GAAGC,aAAI,CAACC,YAAY,CAACC,QAAG,CAAC;AACzC,IAAMC,WAAW,GAAGC,cAAK,CAACH,YAAY,CAACV,OAAO,EAAEW,QAAG,CAAC;AAGpDH,UAAU,CAACM,MAAM,CAACxB,QAAQ,CAAC;AAC3BkB,UAAU,CAACO,EAAE,CAAC,OAAO,EAAE,IAAAC,6BAAgB,EAAC1B,QAAQ,CAAC,CAAC;AAClDkB,UAAU,CAACO,EAAE,CAAC,WAAW,EAAE,IAAAE,iCAAoB,EAACT,UAAU,CAAC,CAAC;AAE5DI,WAAW,CAACE,MAAM,CAAChB,SAAS,CAAC;AAC7Bc,WAAW,CAACG,EAAE,CAAC,OAAO,EAAE,IAAAC,6BAAgB,EAAClB,SAAS,CAAC,CAAC;AACpDc,WAAW,CAACG,EAAE,CAAC,WAAW,EAAE,IAAAE,iCAAoB,EAACL,WAAW,CAAC,CAAC"}
@@ -1,55 +1,56 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.getFileNameByUrl = getFileNameByUrl;
4
8
  var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
5
9
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
6
- var path = require('path');
7
- var fs = require('fs');
8
- var promises = fs.promises;
10
+ var _path = _interopRequireDefault(require("path"));
11
+ var _fs = _interopRequireDefault(require("fs"));
12
+ var promises = _fs.default.promises;
9
13
  var I3S_LAYER_PATH = process.env.I3sLayerPath || '';
10
- var FULL_LAYER_PATH = path.join(process.cwd(), I3S_LAYER_PATH);
11
14
  function getFileNameByUrl(_x) {
12
15
  return _getFileNameByUrl.apply(this, arguments);
13
16
  }
14
17
  function _getFileNameByUrl() {
15
18
  _getFileNameByUrl = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee(url) {
16
- var extensions, _i, _extensions, ext, fileName;
19
+ var extensions, FULL_LAYER_PATH, _i, _extensions, ext, fileName;
17
20
  return _regenerator.default.wrap(function _callee$(_context) {
18
21
  while (1) switch (_context.prev = _context.next) {
19
22
  case 0:
20
23
  extensions = ['json', 'bin', 'jpg', 'jpeg', 'png', 'bin.dds', 'ktx2'];
24
+ FULL_LAYER_PATH = _path.default.join(process.cwd(), I3S_LAYER_PATH);
21
25
  _i = 0, _extensions = extensions;
22
- case 2:
26
+ case 3:
23
27
  if (!(_i < _extensions.length)) {
24
- _context.next = 17;
28
+ _context.next = 18;
25
29
  break;
26
30
  }
27
31
  ext = _extensions[_i];
28
32
  fileName = "".concat(FULL_LAYER_PATH).concat(url, "/index.").concat(ext);
29
- _context.prev = 5;
30
- _context.next = 8;
33
+ _context.prev = 6;
34
+ _context.next = 9;
31
35
  return promises.access(fileName);
32
- case 8:
36
+ case 9:
33
37
  return _context.abrupt("return", fileName);
34
- case 11:
35
- _context.prev = 11;
36
- _context.t0 = _context["catch"](5);
37
- return _context.abrupt("continue", 14);
38
- case 14:
38
+ case 12:
39
+ _context.prev = 12;
40
+ _context.t0 = _context["catch"](6);
41
+ return _context.abrupt("continue", 15);
42
+ case 15:
39
43
  _i++;
40
- _context.next = 2;
44
+ _context.next = 3;
41
45
  break;
42
- case 17:
43
- return _context.abrupt("return", null);
44
46
  case 18:
47
+ return _context.abrupt("return", null);
48
+ case 19:
45
49
  case "end":
46
50
  return _context.stop();
47
51
  }
48
- }, _callee, null, [[5, 11]]);
52
+ }, _callee, null, [[6, 12]]);
49
53
  }));
50
54
  return _getFileNameByUrl.apply(this, arguments);
51
55
  }
52
- module.exports = {
53
- getFileNameByUrl: getFileNameByUrl
54
- };
55
56
  //# sourceMappingURL=index-controller.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index-controller.js","names":["path","require","fs","promises","I3S_LAYER_PATH","process","env","I3sLayerPath","FULL_LAYER_PATH","join","cwd","getFileNameByUrl","_x","_getFileNameByUrl","apply","arguments","_asyncToGenerator2","default","_regenerator","mark","_callee","url","extensions","_i","_extensions","ext","fileName","wrap","_callee$","_context","prev","next","length","concat","access","abrupt","t0","stop","module","exports"],"sources":["../../../../src/i3s-server/controllers/index-controller.js"],"sourcesContent":["const path = require('path');\nconst fs = require('fs');\n\nconst {promises} = fs;\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\nasync function getFileNameByUrl(url) {\n const extensions = ['json', 'bin', 'jpg', 'jpeg', 'png', 'bin.dds', 'ktx2'];\n for (const ext of extensions) {\n const fileName = `${FULL_LAYER_PATH}${url}/index.${ext}`;\n try {\n await promises.access(fileName);\n return fileName;\n } catch {\n continue; // eslint-disable-line no-continue\n }\n }\n return null;\n}\n\nmodule.exports = {\n getFileNameByUrl\n};\n"],"mappings":";;;;;AAAA,IAAMA,IAAI,GAAGC,OAAO,CAAC,MAAM,CAAC;AAC5B,IAAMC,EAAE,GAAGD,OAAO,CAAC,IAAI,CAAC;AAExB,IAAOE,QAAQ,GAAID,EAAE,CAAdC,QAAQ;AAEf,IAAMC,cAAc,GAAGC,OAAO,CAACC,GAAG,CAACC,YAAY,IAAI,EAAE;AACrD,IAAMC,eAAe,GAAGR,IAAI,CAACS,IAAI,CAACJ,OAAO,CAACK,GAAG,CAAC,CAAC,EAAEN,cAAc,CAAC;AAAC,SAElDO,gBAAgBA,CAAAC,EAAA;EAAA,OAAAC,iBAAA,CAAAC,KAAA,OAAAC,SAAA;AAAA;AAAA,SAAAF,kBAAA;EAAAA,iBAAA,OAAAG,kBAAA,CAAAC,OAAA,EAAAC,YAAA,CAAAD,OAAA,CAAAE,IAAA,CAA/B,SAAAC,QAAgCC,GAAG;IAAA,IAAAC,UAAA,EAAAC,EAAA,EAAAC,WAAA,EAAAC,GAAA,EAAAC,QAAA;IAAA,OAAAR,YAAA,CAAAD,OAAA,CAAAU,IAAA,UAAAC,SAAAC,QAAA;MAAA,kBAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAE,IAAA;QAAA;UAC3BT,UAAU,GAAG,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,CAAC;UAAAC,EAAA,MAAAC,WAAA,GACzDF,UAAU;QAAA;UAAA,MAAAC,EAAA,GAAAC,WAAA,CAAAQ,MAAA;YAAAH,QAAA,CAAAE,IAAA;YAAA;UAAA;UAAjBN,GAAG,GAAAD,WAAA,CAAAD,EAAA;UACNG,QAAQ,MAAAO,MAAA,CAAMzB,eAAe,EAAAyB,MAAA,CAAGZ,GAAG,aAAAY,MAAA,CAAUR,GAAG;UAAAI,QAAA,CAAAC,IAAA;UAAAD,QAAA,CAAAE,IAAA;UAAA,OAE9C5B,QAAQ,CAAC+B,MAAM,CAACR,QAAQ,CAAC;QAAA;UAAA,OAAAG,QAAA,CAAAM,MAAA,WACxBT,QAAQ;QAAA;UAAAG,QAAA,CAAAC,IAAA;UAAAD,QAAA,CAAAO,EAAA,GAAAP,QAAA;UAAA,OAAAA,QAAA,CAAAM,MAAA;QAAA;UAAAZ,EAAA;UAAAM,QAAA,CAAAE,IAAA;UAAA;QAAA;UAAA,OAAAF,QAAA,CAAAM,MAAA,WAKZ,IAAI;QAAA;QAAA;UAAA,OAAAN,QAAA,CAAAQ,IAAA;MAAA;IAAA,GAAAjB,OAAA;EAAA,CACZ;EAAA,OAAAP,iBAAA,CAAAC,KAAA,OAAAC,SAAA;AAAA;AAEDuB,MAAM,CAACC,OAAO,GAAG;EACf5B,gBAAgB,EAAhBA;AACF,CAAC"}
1
+ {"version":3,"file":"index-controller.js","names":["_path","_interopRequireDefault","require","_fs","promises","fs","I3S_LAYER_PATH","process","env","I3sLayerPath","getFileNameByUrl","_x","_getFileNameByUrl","apply","arguments","_asyncToGenerator2","default","_regenerator","mark","_callee","url","extensions","FULL_LAYER_PATH","_i","_extensions","ext","fileName","wrap","_callee$","_context","prev","next","path","join","cwd","length","concat","access","abrupt","t0","stop"],"sources":["../../../../src/i3s-server/controllers/index-controller.ts"],"sourcesContent":["import path from 'path';\nimport fs from 'fs';\n\nconst {promises} = fs;\n\nconst I3S_LAYER_PATH = process.env.I3sLayerPath || '';\n\n/**\n * Get local file name by input HTTP URL\n * @param url - I3S HTTP service url\n * @returns - local file name\n */\nexport async function getFileNameByUrl(url: string): Promise<string | null> {\n const extensions = ['json', 'bin', 'jpg', 'jpeg', 'png', 'bin.dds', 'ktx2'];\n const FULL_LAYER_PATH = path.join(process.cwd(), I3S_LAYER_PATH);\n for (const ext of extensions) {\n const fileName = `${FULL_LAYER_PATH}${url}/index.${ext}`;\n try {\n await promises.access(fileName);\n return fileName;\n } catch {\n continue; // eslint-disable-line no-continue\n }\n }\n return null;\n}\n"],"mappings":";;;;;;;;;AAAA,IAAAA,KAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,GAAA,GAAAF,sBAAA,CAAAC,OAAA;AAEA,IAAOE,QAAQ,GAAIC,WAAE,CAAdD,QAAQ;AAEf,IAAME,cAAc,GAAGC,OAAO,CAACC,GAAG,CAACC,YAAY,IAAI,EAAE;AAAC,SAOhCC,gBAAgBA,CAAAC,EAAA;EAAA,OAAAC,iBAAA,CAAAC,KAAA,OAAAC,SAAA;AAAA;AAAA,SAAAF,kBAAA;EAAAA,iBAAA,OAAAG,kBAAA,CAAAC,OAAA,EAAAC,YAAA,CAAAD,OAAA,CAAAE,IAAA,CAA/B,SAAAC,QAAgCC,GAAW;IAAA,IAAAC,UAAA,EAAAC,eAAA,EAAAC,EAAA,EAAAC,WAAA,EAAAC,GAAA,EAAAC,QAAA;IAAA,OAAAT,YAAA,CAAAD,OAAA,CAAAW,IAAA,UAAAC,SAAAC,QAAA;MAAA,kBAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAE,IAAA;QAAA;UAC1CV,UAAU,GAAG,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,CAAC;UACrEC,eAAe,GAAGU,aAAI,CAACC,IAAI,CAAC1B,OAAO,CAAC2B,GAAG,CAAC,CAAC,EAAE5B,cAAc,CAAC;UAAAiB,EAAA,MAAAC,WAAA,GAC9CH,UAAU;QAAA;UAAA,MAAAE,EAAA,GAAAC,WAAA,CAAAW,MAAA;YAAAN,QAAA,CAAAE,IAAA;YAAA;UAAA;UAAjBN,GAAG,GAAAD,WAAA,CAAAD,EAAA;UACNG,QAAQ,MAAAU,MAAA,CAAMd,eAAe,EAAAc,MAAA,CAAGhB,GAAG,aAAAgB,MAAA,CAAUX,GAAG;UAAAI,QAAA,CAAAC,IAAA;UAAAD,QAAA,CAAAE,IAAA;UAAA,OAE9C3B,QAAQ,CAACiC,MAAM,CAACX,QAAQ,CAAC;QAAA;UAAA,OAAAG,QAAA,CAAAS,MAAA,WACxBZ,QAAQ;QAAA;UAAAG,QAAA,CAAAC,IAAA;UAAAD,QAAA,CAAAU,EAAA,GAAAV,QAAA;UAAA,OAAAA,QAAA,CAAAS,MAAA;QAAA;UAAAf,EAAA;UAAAM,QAAA,CAAAE,IAAA;UAAA;QAAA;UAAA,OAAAF,QAAA,CAAAS,MAAA,WAKZ,IAAI;QAAA;QAAA;UAAA,OAAAT,QAAA,CAAAW,IAAA;MAAA;IAAA,GAAArB,OAAA;EAAA,CACZ;EAAA,OAAAP,iBAAA,CAAAC,KAAA,OAAAC,SAAA;AAAA"}
@@ -1,29 +1,36 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.getFileByUrl = getFileByUrl;
8
+ exports.loadArchive = void 0;
4
9
  var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
5
10
  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');
11
+ require("@loaders.gl/polyfills");
12
+ var _i3s = require("@loaders.gl/i3s");
13
+ var _loaderUtils = require("@loaders.gl/loader-utils");
13
14
  var slpkArchive;
14
15
  var loadArchive = function () {
15
16
  var _ref = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee(fullLayerPath) {
16
17
  return _regenerator.default.wrap(function _callee$(_context) {
17
18
  while (1) switch (_context.prev = _context.next) {
18
19
  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:
20
+ _context.t0 = _i3s.parseSLPK;
21
+ _context.next = 3;
22
+ return _loaderUtils.FileHandleFile.from(fullLayerPath);
23
+ case 3:
24
+ _context.t1 = _context.sent;
25
+ _context.t2 = function (msg) {
26
+ return console.log(msg);
27
+ };
28
+ _context.next = 7;
29
+ return (0, _context.t0)(_context.t1, _context.t2);
30
+ case 7:
25
31
  slpkArchive = _context.sent;
26
- case 5:
32
+ console.log('The server is ready to use');
33
+ case 9:
27
34
  case "end":
28
35
  return _context.stop();
29
36
  }
@@ -33,9 +40,7 @@ var loadArchive = function () {
33
40
  return _ref.apply(this, arguments);
34
41
  };
35
42
  }();
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);
43
+ exports.loadArchive = loadArchive;
39
44
  function getFileByUrl(_x2) {
40
45
  return _getFileByUrl.apply(this, arguments);
41
46
  }
@@ -46,39 +51,31 @@ function _getFileByUrl() {
46
51
  while (1) switch (_context2.prev = _context2.next) {
47
52
  case 0:
48
53
  trimmedPath = /^\/?(.*)\/?$/.exec(url);
54
+ uncompressedFile = null;
49
55
  if (!trimmedPath) {
50
- _context2.next = 12;
56
+ _context2.next = 13;
51
57
  break;
52
58
  }
53
- _context2.prev = 2;
59
+ _context2.prev = 3;
54
60
  _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:
61
+ _context2.next = 7;
62
+ return slpkArchive.getFile(trimmedPath[1], 'http');
63
+ case 7:
63
64
  _context2.t1 = _context2.sent;
64
65
  uncompressedFile = _context2.t0.from.call(_context2.t0, _context2.t1);
65
- _context2.next = 12;
66
+ _context2.next = 13;
66
67
  break;
67
- case 10:
68
- _context2.prev = 10;
69
- _context2.t2 = _context2["catch"](2);
70
- case 12:
71
- return _context2.abrupt("return", uncompressedFile);
68
+ case 11:
69
+ _context2.prev = 11;
70
+ _context2.t2 = _context2["catch"](3);
72
71
  case 13:
72
+ return _context2.abrupt("return", uncompressedFile);
73
+ case 14:
73
74
  case "end":
74
75
  return _context2.stop();
75
76
  }
76
- }, _callee2, null, [[2, 10]]);
77
+ }, _callee2, null, [[3, 11]]);
77
78
  }));
78
79
  return _getFileByUrl.apply(this, arguments);
79
80
  }
80
- module.exports = {
81
- loadArchive: loadArchive,
82
- getFileByUrl: getFileByUrl
83
- };
84
81
  //# sourceMappingURL=slpk-controller.js.map
@@ -1 +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"}
1
+ {"version":3,"file":"slpk-controller.js","names":["require","_i3s","_loaderUtils","slpkArchive","loadArchive","_ref","_asyncToGenerator2","default","_regenerator","mark","_callee","fullLayerPath","wrap","_callee$","_context","prev","next","t0","parseSLPK","FileHandleFile","from","t1","sent","t2","msg","console","log","stop","_x","apply","arguments","exports","getFileByUrl","_x2","_getFileByUrl","_callee2","url","trimmedPath","uncompressedFile","_callee2$","_context2","exec","Buffer","getFile","call","abrupt"],"sources":["../../../../src/i3s-server/controllers/slpk-controller.ts"],"sourcesContent":["import '@loaders.gl/polyfills';\nimport {parseSLPK} from '@loaders.gl/i3s';\nimport {FileHandleFile} from '@loaders.gl/loader-utils';\n\nlet slpkArchive;\n\n/**\n * Open SLPK file for reading and load HASH file\n * @param fullLayerPath - full path to SLPK file\n */\nexport const loadArchive = async (fullLayerPath: string): Promise<void> => {\n slpkArchive = await parseSLPK(await FileHandleFile.from(fullLayerPath), (msg) =>\n console.log(msg)\n );\n console.log('The server is ready to use');\n};\n\n/**\n * Get a file from SLPK\n * @param url - I3S HTTP URL\n * @returns - file content\n */\nexport async function getFileByUrl(url: string) {\n const trimmedPath = /^\\/?(.*)\\/?$/.exec(url);\n let uncompressedFile: Buffer | null = null;\n if (trimmedPath) {\n try {\n uncompressedFile = Buffer.from(await slpkArchive.getFile(trimmedPath[1], 'http'));\n } catch (e) {}\n }\n return uncompressedFile;\n}\n"],"mappings":";;;;;;;;;;AAAAA,OAAA;AACA,IAAAC,IAAA,GAAAD,OAAA;AACA,IAAAE,YAAA,GAAAF,OAAA;AAEA,IAAIG,WAAW;AAMR,IAAMC,WAAW;EAAA,IAAAC,IAAA,OAAAC,kBAAA,CAAAC,OAAA,EAAAC,YAAA,CAAAD,OAAA,CAAAE,IAAA,CAAG,SAAAC,QAAOC,aAAqB;IAAA,OAAAH,YAAA,CAAAD,OAAA,CAAAK,IAAA,UAAAC,SAAAC,QAAA;MAAA,kBAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAE,IAAA;QAAA;UAAAF,QAAA,CAAAG,EAAA,GACjCC,cAAS;UAAAJ,QAAA,CAAAE,IAAA;UAAA,OAAOG,2BAAc,CAACC,IAAI,CAACT,aAAa,CAAC;QAAA;UAAAG,QAAA,CAAAO,EAAA,GAAAP,QAAA,CAAAQ,IAAA;UAAAR,QAAA,CAAAS,EAAA,GAAE,UAACC,GAAG;YAAA,OAC1EC,OAAO,CAACC,GAAG,CAACF,GAAG,CAAC;UAAA;UAAAV,QAAA,CAAAE,IAAA;UAAA,WAAAF,QAAA,CAAAG,EAAA,EAAAH,QAAA,CAAAO,EAAA,EAAAP,QAAA,CAAAS,EAAA;QAAA;UADlBpB,WAAW,GAAAW,QAAA,CAAAQ,IAAA;UAGXG,OAAO,CAACC,GAAG,CAAC,4BAA4B,CAAC;QAAC;QAAA;UAAA,OAAAZ,QAAA,CAAAa,IAAA;MAAA;IAAA,GAAAjB,OAAA;EAAA,CAC3C;EAAA,gBALYN,WAAWA,CAAAwB,EAAA;IAAA,OAAAvB,IAAA,CAAAwB,KAAA,OAAAC,SAAA;EAAA;AAAA,GAKvB;AAACC,OAAA,CAAA3B,WAAA,GAAAA,WAAA;AAAA,SAOoB4B,YAAYA,CAAAC,GAAA;EAAA,OAAAC,aAAA,CAAAL,KAAA,OAAAC,SAAA;AAAA;AAAA,SAAAI,cAAA;EAAAA,aAAA,OAAA5B,kBAAA,CAAAC,OAAA,EAAAC,YAAA,CAAAD,OAAA,CAAAE,IAAA,CAA3B,SAAA0B,SAA4BC,GAAW;IAAA,IAAAC,WAAA,EAAAC,gBAAA;IAAA,OAAA9B,YAAA,CAAAD,OAAA,CAAAK,IAAA,UAAA2B,UAAAC,SAAA;MAAA,kBAAAA,SAAA,CAAAzB,IAAA,GAAAyB,SAAA,CAAAxB,IAAA;QAAA;UACtCqB,WAAW,GAAG,cAAc,CAACI,IAAI,CAACL,GAAG,CAAC;UACxCE,gBAA+B,GAAG,IAAI;UAAA,KACtCD,WAAW;YAAAG,SAAA,CAAAxB,IAAA;YAAA;UAAA;UAAAwB,SAAA,CAAAzB,IAAA;UAAAyB,SAAA,CAAAvB,EAAA,GAEQyB,MAAM;UAAAF,SAAA,CAAAxB,IAAA;UAAA,OAAYb,WAAW,CAACwC,OAAO,CAACN,WAAW,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC;QAAA;UAAAG,SAAA,CAAAnB,EAAA,GAAAmB,SAAA,CAAAlB,IAAA;UAAhFgB,gBAAgB,GAAAE,SAAA,CAAAvB,EAAA,CAAUG,IAAI,CAAAwB,IAAA,CAAAJ,SAAA,CAAAvB,EAAA,EAAAuB,SAAA,CAAAnB,EAAA;UAAAmB,SAAA,CAAAxB,IAAA;UAAA;QAAA;UAAAwB,SAAA,CAAAzB,IAAA;UAAAyB,SAAA,CAAAjB,EAAA,GAAAiB,SAAA;QAAA;UAAA,OAAAA,SAAA,CAAAK,MAAA,WAG3BP,gBAAgB;QAAA;QAAA;UAAA,OAAAE,SAAA,CAAAb,IAAA;MAAA;IAAA,GAAAQ,QAAA;EAAA,CACxB;EAAA,OAAAD,aAAA,CAAAL,KAAA,OAAAC,SAAA;AAAA"}
@@ -3,8 +3,8 @@
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
4
  var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
5
5
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
6
- var express = require('express');
7
- var router = express.Router();
6
+ var _express = _interopRequireDefault(require("express"));
7
+ var router = _express.default.Router();
8
8
  var _require = require('../controllers/index-controller'),
9
9
  getFileNameByUrl = _require.getFileNameByUrl;
10
10
  router.get('*', function () {
@@ -1 +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"}
1
+ {"version":3,"file":"index.js","names":["_express","_interopRequireDefault","require","router","express","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.ts"],"sourcesContent":["import express from 'express';\n\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,IAAAA,QAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAMC,MAAM,GAAGC,gBAAO,CAACC,MAAM,CAAC,CAAC;AAC/B,IAAAC,QAAA,GAA2BJ,OAAO,CAAC,iCAAiC,CAAC;EAA9DK,gBAAgB,GAAAD,QAAA,CAAhBC,gBAAgB;AAGvBJ,MAAM,CAACK,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,GAAGhC,MAAM"}
@@ -1,13 +1,17 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.sceneServerRouter = exports.router = void 0;
4
8
  var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
5
9
  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();
10
+ var _express = _interopRequireDefault(require("express"));
11
+ var _slpkController = require("../controllers/slpk-controller");
12
+ var _createSceneServer = require("../utils/create-scene-server");
13
+ var sceneServerRouter = _express.default.Router();
14
+ exports.sceneServerRouter = sceneServerRouter;
11
15
  sceneServerRouter.get('*', function () {
12
16
  var _ref = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee(req, res, next) {
13
17
  var file, layer, sceneServerResponse;
@@ -15,12 +19,12 @@ sceneServerRouter.get('*', function () {
15
19
  while (1) switch (_context.prev = _context.next) {
16
20
  case 0:
17
21
  _context.next = 2;
18
- return getFileByUrl('/');
22
+ return (0, _slpkController.getFileByUrl)('/');
19
23
  case 2:
20
24
  file = _context.sent;
21
25
  if (file) {
22
26
  layer = JSON.parse(file.toString());
23
- sceneServerResponse = createSceneServer(layer.name, layer);
27
+ sceneServerResponse = (0, _createSceneServer.createSceneServer)(layer.name, layer);
24
28
  res.send(sceneServerResponse);
25
29
  } else {
26
30
  res.status(404);
@@ -36,7 +40,8 @@ sceneServerRouter.get('*', function () {
36
40
  return _ref.apply(this, arguments);
37
41
  };
38
42
  }());
39
- var router = express.Router();
43
+ var router = _express.default.Router();
44
+ exports.router = router;
40
45
  router.get('*', function () {
41
46
  var _ref2 = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee2(req, res, next) {
42
47
  var file;
@@ -45,7 +50,7 @@ router.get('*', function () {
45
50
  case 0:
46
51
  console.log(req.path);
47
52
  _context2.next = 3;
48
- return getFileByUrl(req.path);
53
+ return (0, _slpkController.getFileByUrl)(req.path);
49
54
  case 3:
50
55
  file = _context2.sent;
51
56
  if (file) {
@@ -64,8 +69,4 @@ router.get('*', function () {
64
69
  return _ref2.apply(this, arguments);
65
70
  };
66
71
  }());
67
- module.exports = {
68
- sceneServerRouter: sceneServerRouter,
69
- router: router
70
- };
71
72
  //# sourceMappingURL=slpk-router.js.map
@@ -1 +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"}
1
+ {"version":3,"file":"slpk-router.js","names":["_express","_interopRequireDefault","require","_slpkController","_createSceneServer","sceneServerRouter","express","Router","exports","get","_ref","_asyncToGenerator2","default","_regenerator","mark","_callee","req","res","next","file","layer","sceneServerResponse","wrap","_callee$","_context","prev","getFileByUrl","sent","JSON","parse","toString","createSceneServer","name","send","status","stop","_x","_x2","_x3","apply","arguments","router","_ref2","_callee2","_callee2$","_context2","console","log","path","_x4","_x5","_x6"],"sources":["../../../../src/i3s-server/routes/slpk-router.ts"],"sourcesContent":["import express from 'express';\nimport {getFileByUrl} from '../controllers/slpk-controller';\nimport {createSceneServer} from '../utils/create-scene-server';\n\nexport const 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\nexport const 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"],"mappings":";;;;;;;;;AAAA,IAAAA,QAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,eAAA,GAAAD,OAAA;AACA,IAAAE,kBAAA,GAAAF,OAAA;AAEO,IAAMG,iBAAiB,GAAGC,gBAAO,CAACC,MAAM,CAAC,CAAC;AAACC,OAAA,CAAAH,iBAAA,GAAAA,iBAAA;AAClDA,iBAAiB,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,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,OACpC,IAAAQ,4BAAY,EAAC,GAAG,CAAC;QAAA;UAA9BP,IAAI,GAAAK,QAAA,CAAAG,IAAA;UACV,IAAIR,IAAI,EAAE;YACFC,KAAK,GAAGQ,IAAI,CAACC,KAAK,CAACV,IAAI,CAACW,QAAQ,CAAC,CAAC,CAAC;YACnCT,mBAAmB,GAAG,IAAAU,oCAAiB,EAACX,KAAK,CAACY,IAAI,EAAEZ,KAAK,CAAC;YAChEH,GAAG,CAACgB,IAAI,CAACZ,mBAAmB,CAAC;UAC/B,CAAC,MAAM;YACLJ,GAAG,CAACiB,MAAM,CAAC,GAAG,CAAC;YACfjB,GAAG,CAACgB,IAAI,CAAC,gBAAgB,CAAC;UAC5B;QAAC;QAAA;UAAA,OAAAT,QAAA,CAAAW,IAAA;MAAA;IAAA,GAAApB,OAAA;EAAA,CACF;EAAA,iBAAAqB,EAAA,EAAAC,GAAA,EAAAC,GAAA;IAAA,OAAA5B,IAAA,CAAA6B,KAAA,OAAAC,SAAA;EAAA;AAAA,IAAC;AAEK,IAAMC,MAAM,GAAGnC,gBAAO,CAACC,MAAM,CAAC,CAAC;AAACC,OAAA,CAAAiC,MAAA,GAAAA,MAAA;AACvCA,MAAM,CAAChC,GAAG,CAAC,GAAG;EAAA,IAAAiC,KAAA,OAAA/B,kBAAA,CAAAC,OAAA,EAAAC,YAAA,CAAAD,OAAA,CAAAE,IAAA,CAAE,SAAA6B,SAAgB3B,GAAG,EAAEC,GAAG,EAAEC,IAAI;IAAA,IAAAC,IAAA;IAAA,OAAAN,YAAA,CAAAD,OAAA,CAAAU,IAAA,UAAAsB,UAAAC,SAAA;MAAA,kBAAAA,SAAA,CAAApB,IAAA,GAAAoB,SAAA,CAAA3B,IAAA;QAAA;UAC5C4B,OAAO,CAACC,GAAG,CAAC/B,GAAG,CAACgC,IAAI,CAAC;UAACH,SAAA,CAAA3B,IAAA;UAAA,OACH,IAAAQ,4BAAY,EAACV,GAAG,CAACgC,IAAI,CAAC;QAAA;UAAnC7B,IAAI,GAAA0B,SAAA,CAAAlB,IAAA;UACV,IAAIR,IAAI,EAAE;YACRF,GAAG,CAACgB,IAAI,CAACd,IAAI,CAAC;UAChB,CAAC,MAAM;YACLF,GAAG,CAACiB,MAAM,CAAC,GAAG,CAAC;YACfjB,GAAG,CAACgB,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"}
@@ -1,10 +1,13 @@
1
1
  "use strict";
2
2
 
3
- var _require = require('uuid'),
4
- uuidv4 = _require.v4;
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.createSceneServer = void 0;
7
+ var _uuid = require("uuid");
5
8
  var createSceneServer = function createSceneServer(name, layer) {
6
9
  return {
7
- serviceItemId: uuidv4().replace(/-/gi, ''),
10
+ serviceItemId: (0, _uuid.v4)().replace(/-/gi, ''),
8
11
  serviceName: name,
9
12
  name: name,
10
13
  currentVersion: '10.7',
@@ -13,5 +16,5 @@ var createSceneServer = function createSceneServer(name, layer) {
13
16
  layers: [layer]
14
17
  };
15
18
  };
16
- module.exports = createSceneServer;
19
+ exports.createSceneServer = createSceneServer;
17
20
  //# sourceMappingURL=create-scene-server.js.map
@@ -1 +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"}
1
+ {"version":3,"file":"create-scene-server.js","names":["_uuid","require","createSceneServer","name","layer","serviceItemId","uuidv4","replace","serviceName","currentVersion","serviceVersion","supportedBindings","layers","exports"],"sources":["../../../../src/i3s-server/utils/create-scene-server.ts"],"sourcesContent":["import {SceneLayer3D} from '@loaders.gl/i3s';\nimport {v4 as uuidv4} from 'uuid';\n\n/**\n * Create `/SceneServer` response\n * @param name - service name, custom user-friendly name of the service\n * @param layer - I3S layer JSON\n * @returns reponse JSON for `/SceneServer` route\n */\nexport const createSceneServer = (name: string, layer: SceneLayer3D) => {\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"],"mappings":";;;;;;AACA,IAAAA,KAAA,GAAAC,OAAA;AAQO,IAAMC,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAIC,IAAY,EAAEC,KAAmB,EAAK;EACtE,OAAO;IACLC,aAAa,EAAE,IAAAC,QAAM,EAAC,CAAC,CAACC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC;IAC1CC,WAAW,EAAEL,IAAI;IACjBA,IAAI,EAAJA,IAAI;IACJM,cAAc,EAAE,MAAM;IACtBC,cAAc,EAAE,KAAK;IACrBC,iBAAiB,EAAE,CAAC,MAAM,CAAC;IAC3BC,MAAM,EAAE,CAACR,KAAK;EAChB,CAAC;AACH,CAAC;AAACS,OAAA,CAAAX,iBAAA,GAAAA,iBAAA"}
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.formErrorHandler = formErrorHandler;
8
+ exports.formListeningHandler = formListeningHandler;
9
+ exports.normalizePort = normalizePort;
10
+ var _debug = _interopRequireDefault(require("debug"));
11
+ var debug = (0, _debug.default)('i3s-server:server');
12
+ function normalizePort(val) {
13
+ var chkPort = parseInt(val, 10);
14
+ if (Number.isNaN(chkPort)) {
15
+ return val;
16
+ }
17
+ if (chkPort >= 0) {
18
+ return chkPort;
19
+ }
20
+ return false;
21
+ }
22
+ function formErrorHandler(optionalPort) {
23
+ return function onError(error) {
24
+ if (error.syscall !== 'listen') {
25
+ throw error;
26
+ }
27
+ var bind = typeof optionalPort === 'string' ? "Pipe ".concat(optionalPort) : "Port ".concat(optionalPort);
28
+ switch (error.code) {
29
+ case 'EACCES':
30
+ console.error("".concat(bind, " requires elevated privileges"));
31
+ process.exit(1);
32
+ break;
33
+ case 'EADDRINUSE':
34
+ console.error("".concat(bind, " is already in use"));
35
+ process.exit(1);
36
+ break;
37
+ default:
38
+ throw error;
39
+ }
40
+ };
41
+ }
42
+ function formListeningHandler(optionalServer) {
43
+ return function onListening() {
44
+ var addr = optionalServer.address();
45
+ var bind = typeof addr === 'string' ? "pipe ".concat(addr) : "port ".concat(addr === null || addr === void 0 ? void 0 : addr.port);
46
+ debug("Listening on ".concat(bind));
47
+ };
48
+ }
49
+ //# sourceMappingURL=server-utils.js.map