@loaders.gl/tile-converter 4.0.0-alpha.8 → 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.
- package/bin/i3s-server.js +4 -0
- package/bin/slpk-extractor.js +4 -0
- package/dist/3d-tiles-converter/3d-tiles-converter.d.ts +5 -5
- package/dist/3d-tiles-converter/3d-tiles-converter.d.ts.map +1 -1
- package/dist/3d-tiles-converter/helpers/b3dm-converter.d.ts +10 -5
- package/dist/3d-tiles-converter/helpers/b3dm-converter.d.ts.map +1 -1
- package/dist/3d-tiles-converter/helpers/load-i3s.d.ts +10 -0
- package/dist/3d-tiles-converter/helpers/load-i3s.d.ts.map +1 -0
- package/dist/3d-tiles-converter/helpers/texture-atlas.d.ts +2 -1
- package/dist/3d-tiles-converter/helpers/texture-atlas.d.ts.map +1 -1
- package/dist/converter.min.js +172 -103
- package/dist/deps-installer/deps-installer.d.ts +3 -2
- package/dist/deps-installer/deps-installer.d.ts.map +1 -1
- package/dist/dist.min.js +32718 -32568
- package/dist/es5/3d-tiles-converter/3d-tiles-converter.js +97 -117
- package/dist/es5/3d-tiles-converter/3d-tiles-converter.js.map +1 -1
- package/dist/es5/3d-tiles-converter/helpers/b3dm-converter.js +24 -22
- package/dist/es5/3d-tiles-converter/helpers/b3dm-converter.js.map +1 -1
- package/dist/es5/3d-tiles-converter/helpers/load-i3s.js +63 -0
- package/dist/es5/3d-tiles-converter/helpers/load-i3s.js.map +1 -0
- package/dist/es5/3d-tiles-converter/helpers/texture-atlas.js.map +1 -1
- package/dist/es5/converter-cli.js +25 -65
- package/dist/es5/converter-cli.js.map +1 -1
- package/dist/es5/deps-installer/deps-installer.js +115 -40
- package/dist/es5/deps-installer/deps-installer.js.map +1 -1
- package/dist/es5/i3s-converter/helpers/batch-ids-extensions.js +45 -15
- package/dist/es5/i3s-converter/helpers/batch-ids-extensions.js.map +1 -1
- package/dist/es5/i3s-converter/helpers/coordinate-converter.js.map +1 -1
- package/dist/es5/i3s-converter/helpers/feature-attributes.js +8 -18
- package/dist/es5/i3s-converter/helpers/feature-attributes.js.map +1 -1
- package/dist/es5/i3s-converter/helpers/geometry-attributes.js +83 -43
- package/dist/es5/i3s-converter/helpers/geometry-attributes.js.map +1 -1
- package/dist/es5/i3s-converter/helpers/geometry-converter.js +100 -102
- package/dist/es5/i3s-converter/helpers/geometry-converter.js.map +1 -1
- package/dist/es5/i3s-converter/helpers/gltf-attributes.js.map +1 -1
- package/dist/es5/i3s-converter/helpers/load-3d-tiles.js +70 -4
- package/dist/es5/i3s-converter/helpers/load-3d-tiles.js.map +1 -1
- package/dist/es5/i3s-converter/helpers/node-index-document.js +3 -2
- package/dist/es5/i3s-converter/helpers/node-index-document.js.map +1 -1
- package/dist/es5/i3s-converter/helpers/preprocess-3d-tiles.js +47 -12
- package/dist/es5/i3s-converter/helpers/preprocess-3d-tiles.js.map +1 -1
- package/dist/es5/i3s-converter/i3s-converter.js +187 -174
- package/dist/es5/i3s-converter/i3s-converter.js.map +1 -1
- package/dist/es5/i3s-converter/types.js +11 -11
- package/dist/es5/i3s-converter/types.js.map +1 -1
- package/dist/es5/i3s-server/README.md +46 -2
- package/dist/es5/i3s-server/app.js +23 -15
- package/dist/es5/i3s-server/app.js.map +1 -1
- package/dist/es5/i3s-server/bin/www.js +33 -0
- package/dist/es5/i3s-server/bin/www.js.map +1 -0
- package/dist/es5/i3s-server/controllers/index-controller.js +23 -22
- package/dist/es5/i3s-server/controllers/index-controller.js.map +1 -1
- package/dist/es5/i3s-server/controllers/slpk-controller.js +35 -38
- package/dist/es5/i3s-server/controllers/slpk-controller.js.map +1 -1
- package/dist/es5/i3s-server/routes/index.js +2 -2
- package/dist/es5/i3s-server/routes/index.js.map +1 -1
- package/dist/es5/i3s-server/routes/slpk-router.js +14 -13
- package/dist/es5/i3s-server/routes/slpk-router.js.map +1 -1
- package/dist/es5/i3s-server/utils/create-scene-server.js +7 -4
- package/dist/es5/i3s-server/utils/create-scene-server.js.map +1 -1
- package/dist/es5/i3s-server/utils/server-utils.js +49 -0
- package/dist/es5/i3s-server/utils/server-utils.js.map +1 -0
- package/dist/es5/lib/utils/cli-utils.js +57 -0
- package/dist/es5/lib/utils/cli-utils.js.map +1 -0
- package/dist/es5/lib/utils/compress-util.js +1 -1
- package/dist/es5/lib/utils/compress-util.js.map +1 -1
- package/dist/es5/lib/utils/lod-conversion-utils.js +10 -4
- package/dist/es5/lib/utils/lod-conversion-utils.js.map +1 -1
- package/dist/es5/pgm-loader.js +11 -3
- package/dist/es5/pgm-loader.js.map +1 -1
- package/dist/es5/slpk-extractor/slpk-extractor.js +171 -0
- package/dist/es5/slpk-extractor/slpk-extractor.js.map +1 -0
- package/dist/es5/slpk-extractor-cli.js +117 -0
- package/dist/es5/slpk-extractor-cli.js.map +1 -0
- package/dist/esm/3d-tiles-converter/3d-tiles-converter.js +51 -58
- package/dist/esm/3d-tiles-converter/3d-tiles-converter.js.map +1 -1
- package/dist/esm/3d-tiles-converter/helpers/b3dm-converter.js +12 -11
- package/dist/esm/3d-tiles-converter/helpers/b3dm-converter.js.map +1 -1
- package/dist/esm/3d-tiles-converter/helpers/load-i3s.js +32 -0
- package/dist/esm/3d-tiles-converter/helpers/load-i3s.js.map +1 -0
- package/dist/esm/3d-tiles-converter/helpers/texture-atlas.js.map +1 -1
- package/dist/esm/converter-cli.js +8 -48
- package/dist/esm/converter-cli.js.map +1 -1
- package/dist/esm/deps-installer/deps-installer.js +40 -13
- package/dist/esm/deps-installer/deps-installer.js.map +1 -1
- package/dist/esm/i3s-converter/helpers/batch-ids-extensions.js +28 -11
- package/dist/esm/i3s-converter/helpers/batch-ids-extensions.js.map +1 -1
- package/dist/esm/i3s-converter/helpers/coordinate-converter.js.map +1 -1
- package/dist/esm/i3s-converter/helpers/feature-attributes.js +10 -8
- package/dist/esm/i3s-converter/helpers/feature-attributes.js.map +1 -1
- package/dist/esm/i3s-converter/helpers/geometry-attributes.js +77 -34
- package/dist/esm/i3s-converter/helpers/geometry-attributes.js.map +1 -1
- package/dist/esm/i3s-converter/helpers/geometry-converter.js +60 -61
- package/dist/esm/i3s-converter/helpers/geometry-converter.js.map +1 -1
- package/dist/esm/i3s-converter/helpers/gltf-attributes.js.map +1 -1
- package/dist/esm/i3s-converter/helpers/load-3d-tiles.js +33 -4
- package/dist/esm/i3s-converter/helpers/load-3d-tiles.js.map +1 -1
- package/dist/esm/i3s-converter/helpers/node-index-document.js +2 -1
- package/dist/esm/i3s-converter/helpers/node-index-document.js.map +1 -1
- package/dist/esm/i3s-converter/helpers/preprocess-3d-tiles.js +37 -12
- package/dist/esm/i3s-converter/helpers/preprocess-3d-tiles.js.map +1 -1
- package/dist/esm/i3s-converter/i3s-converter.js +101 -73
- package/dist/esm/i3s-converter/i3s-converter.js.map +1 -1
- package/dist/esm/i3s-converter/types.js +9 -9
- package/dist/esm/i3s-converter/types.js.map +1 -1
- package/dist/esm/i3s-server/README.md +46 -2
- package/dist/esm/i3s-server/app.js +13 -11
- package/dist/esm/i3s-server/app.js.map +1 -1
- package/dist/esm/i3s-server/bin/i3s-server.min.js +516 -0
- package/dist/esm/i3s-server/bin/www.js +30 -0
- package/dist/esm/i3s-server/bin/www.js.map +1 -0
- package/dist/esm/i3s-server/controllers/index-controller.js +4 -7
- package/dist/esm/i3s-server/controllers/index-controller.js.map +1 -1
- package/dist/esm/i3s-server/controllers/slpk-controller.js +9 -26
- package/dist/esm/i3s-server/controllers/slpk-controller.js.map +1 -1
- package/dist/esm/i3s-server/routes/index.js +1 -1
- package/dist/esm/i3s-server/routes/index.js.map +1 -1
- package/dist/esm/i3s-server/routes/slpk-router.js +5 -11
- package/dist/esm/i3s-server/routes/slpk-router.js.map +1 -1
- package/dist/esm/i3s-server/utils/create-scene-server.js +2 -5
- package/dist/esm/i3s-server/utils/create-scene-server.js.map +1 -1
- package/dist/esm/i3s-server/utils/server-utils.js +40 -0
- package/dist/esm/i3s-server/utils/server-utils.js.map +1 -0
- package/dist/esm/lib/utils/cli-utils.js +47 -0
- package/dist/esm/lib/utils/cli-utils.js.map +1 -0
- package/dist/esm/lib/utils/compress-util.js +1 -1
- package/dist/esm/lib/utils/compress-util.js.map +1 -1
- package/dist/esm/lib/utils/lod-conversion-utils.js +6 -4
- package/dist/esm/lib/utils/lod-conversion-utils.js.map +1 -1
- package/dist/esm/pgm-loader.js +7 -4
- package/dist/esm/pgm-loader.js.map +1 -1
- package/dist/esm/slpk-extractor/slpk-extractor.js +63 -0
- package/dist/esm/slpk-extractor/slpk-extractor.js.map +1 -0
- package/dist/esm/slpk-extractor-cli.js +74 -0
- package/dist/esm/slpk-extractor-cli.js.map +1 -0
- package/dist/i3s-converter/helpers/batch-ids-extensions.d.ts +15 -2
- package/dist/i3s-converter/helpers/batch-ids-extensions.d.ts.map +1 -1
- package/dist/i3s-converter/helpers/coordinate-converter.d.ts +1 -2
- package/dist/i3s-converter/helpers/coordinate-converter.d.ts.map +1 -1
- package/dist/i3s-converter/helpers/feature-attributes.d.ts +8 -8
- package/dist/i3s-converter/helpers/feature-attributes.d.ts.map +1 -1
- package/dist/i3s-converter/helpers/geometry-attributes.d.ts.map +1 -1
- package/dist/i3s-converter/helpers/geometry-converter.d.ts +9 -9
- package/dist/i3s-converter/helpers/geometry-converter.d.ts.map +1 -1
- package/dist/i3s-converter/helpers/gltf-attributes.d.ts +3 -3
- package/dist/i3s-converter/helpers/gltf-attributes.d.ts.map +1 -1
- package/dist/i3s-converter/helpers/load-3d-tiles.d.ts +15 -0
- package/dist/i3s-converter/helpers/load-3d-tiles.d.ts.map +1 -1
- package/dist/i3s-converter/helpers/node-index-document.d.ts.map +1 -1
- package/dist/i3s-converter/helpers/preprocess-3d-tiles.d.ts +4 -5
- package/dist/i3s-converter/helpers/preprocess-3d-tiles.d.ts.map +1 -1
- package/dist/i3s-converter/i3s-converter.d.ts +3 -2
- package/dist/i3s-converter/i3s-converter.d.ts.map +1 -1
- package/dist/i3s-converter/types.d.ts +48 -7
- package/dist/i3s-converter/types.d.ts.map +1 -1
- package/dist/i3s-server/app.d.ts +1 -2
- package/dist/i3s-server/app.d.ts.map +1 -1
- package/dist/i3s-server/bin/www.d.ts +3 -0
- package/dist/i3s-server/bin/www.d.ts.map +1 -0
- package/dist/i3s-server/controllers/index-controller.d.ts +6 -1
- package/dist/i3s-server/controllers/index-controller.d.ts.map +1 -1
- package/dist/i3s-server/controllers/slpk-controller.d.ts +13 -2
- package/dist/i3s-server/controllers/slpk-controller.d.ts.map +1 -1
- package/dist/i3s-server/routes/index.d.ts +1 -2
- package/dist/i3s-server/routes/index.d.ts.map +1 -1
- package/dist/i3s-server/routes/slpk-router.d.ts +2 -2
- package/dist/i3s-server/routes/slpk-router.d.ts.map +1 -1
- package/dist/i3s-server/utils/create-scene-server.d.ts +11 -5
- package/dist/i3s-server/utils/create-scene-server.d.ts.map +1 -1
- package/dist/i3s-server/utils/server-utils.d.ts +24 -0
- package/dist/i3s-server/utils/server-utils.d.ts.map +1 -0
- package/dist/lib/utils/cli-utils.d.ts +34 -0
- package/dist/lib/utils/cli-utils.d.ts.map +1 -0
- package/dist/lib/utils/lod-conversion-utils.d.ts +2 -2
- package/dist/lib/utils/lod-conversion-utils.d.ts.map +1 -1
- package/dist/pgm-loader.d.ts +9 -2
- package/dist/pgm-loader.d.ts.map +1 -1
- package/dist/slpk-extractor/slpk-extractor.d.ts +23 -0
- package/dist/slpk-extractor/slpk-extractor.d.ts.map +1 -0
- package/dist/slpk-extractor-cli.d.ts +17 -0
- package/dist/slpk-extractor-cli.d.ts.map +1 -0
- package/dist/slpk-extractor.min.js +189 -0
- package/package.json +28 -22
- package/src/3d-tiles-converter/3d-tiles-converter.ts +65 -69
- package/src/3d-tiles-converter/helpers/b3dm-converter.ts +23 -19
- package/src/3d-tiles-converter/helpers/load-i3s.ts +52 -0
- package/src/3d-tiles-converter/helpers/texture-atlas.ts +6 -2
- package/src/converter-cli.ts +16 -74
- package/src/deps-installer/deps-installer.ts +58 -12
- package/src/i3s-converter/helpers/batch-ids-extensions.ts +77 -32
- package/src/i3s-converter/helpers/coordinate-converter.ts +1 -2
- package/src/i3s-converter/helpers/feature-attributes.ts +23 -18
- package/src/i3s-converter/helpers/geometry-attributes.ts +81 -44
- package/src/i3s-converter/helpers/geometry-converter.ts +149 -126
- package/src/i3s-converter/helpers/gltf-attributes.ts +9 -10
- package/src/i3s-converter/helpers/load-3d-tiles.ts +61 -5
- package/src/i3s-converter/helpers/node-index-document.ts +5 -1
- package/src/i3s-converter/helpers/preprocess-3d-tiles.ts +70 -21
- package/src/i3s-converter/i3s-converter.ts +145 -73
- package/src/i3s-converter/types.ts +49 -7
- package/src/i3s-server/README.md +46 -2
- package/src/i3s-server/{app.js → app.ts} +11 -9
- package/src/i3s-server/bin/www.ts +38 -0
- package/src/i3s-server/controllers/{index-controller.js → index-controller.ts} +10 -9
- package/src/i3s-server/controllers/slpk-controller.ts +32 -0
- package/src/i3s-server/routes/{index.js → index.ts} +2 -1
- package/src/i3s-server/routes/{slpk-router.js → slpk-router.ts} +5 -10
- package/src/i3s-server/utils/create-scene-server.ts +20 -0
- package/src/i3s-server/utils/server-utils.ts +70 -0
- package/src/lib/utils/cli-utils.ts +78 -0
- package/src/lib/utils/compress-util.ts +1 -1
- package/src/lib/utils/lod-conversion-utils.ts +10 -6
- package/src/pgm-loader.ts +15 -7
- package/src/slpk-extractor/slpk-extractor.ts +101 -0
- package/src/slpk-extractor-cli.ts +128 -0
- package/dist/3d-tiles-attributes-worker.d.ts +0 -28
- package/dist/3d-tiles-attributes-worker.d.ts.map +0 -1
- package/dist/3d-tiles-attributes-worker.js +0 -3
- package/dist/3d-tiles-attributes-worker.js.map +0 -7
- package/dist/3d-tiles-converter/3d-tiles-converter.js +0 -288
- package/dist/3d-tiles-converter/helpers/b3dm-converter.js +0 -269
- package/dist/3d-tiles-converter/helpers/i3s-obb-to-3d-tiles-obb.js +0 -23
- package/dist/3d-tiles-converter/helpers/texture-atlas.js +0 -52
- package/dist/3d-tiles-converter/json-templates/tileset.js +0 -43
- package/dist/bundle.js +0 -5
- package/dist/constants.js +0 -4
- package/dist/converter-cli.js +0 -280
- package/dist/deps-installer/deps-installer.js +0 -62
- package/dist/es5/3d-tiles-attributes-worker.js +0 -25
- package/dist/es5/3d-tiles-attributes-worker.js.map +0 -1
- package/dist/es5/i3s-attributes-worker.js +0 -25
- package/dist/es5/i3s-attributes-worker.js.map +0 -1
- package/dist/es5/i3s-server/bin/www +0 -102
- package/dist/es5/workers/3d-tiles-attributes-worker.js +0 -28
- package/dist/es5/workers/3d-tiles-attributes-worker.js.map +0 -1
- package/dist/es5/workers/i3s-attributes-worker.js +0 -30
- package/dist/es5/workers/i3s-attributes-worker.js.map +0 -1
- package/dist/esm/3d-tiles-attributes-worker.js +0 -16
- package/dist/esm/3d-tiles-attributes-worker.js.map +0 -1
- package/dist/esm/i3s-attributes-worker.js +0 -16
- package/dist/esm/i3s-attributes-worker.js.map +0 -1
- package/dist/esm/i3s-server/bin/www +0 -102
- package/dist/esm/workers/3d-tiles-attributes-worker.js +0 -8
- package/dist/esm/workers/3d-tiles-attributes-worker.js.map +0 -1
- package/dist/esm/workers/i3s-attributes-worker.js +0 -7
- package/dist/esm/workers/i3s-attributes-worker.js.map +0 -1
- package/dist/i3s-attributes-worker.d.ts +0 -45
- package/dist/i3s-attributes-worker.d.ts.map +0 -1
- package/dist/i3s-attributes-worker.js +0 -9
- package/dist/i3s-attributes-worker.js.map +0 -7
- package/dist/i3s-converter/helpers/batch-ids-extensions.js +0 -138
- package/dist/i3s-converter/helpers/coordinate-converter.js +0 -123
- package/dist/i3s-converter/helpers/create-scene-server-path.js +0 -28
- package/dist/i3s-converter/helpers/feature-attributes.js +0 -216
- package/dist/i3s-converter/helpers/geometry-attributes.js +0 -202
- package/dist/i3s-converter/helpers/geometry-converter.js +0 -1225
- package/dist/i3s-converter/helpers/gltf-attributes.js +0 -128
- package/dist/i3s-converter/helpers/load-3d-tiles.js +0 -53
- package/dist/i3s-converter/helpers/node-debug.js +0 -120
- package/dist/i3s-converter/helpers/node-index-document.js +0 -268
- package/dist/i3s-converter/helpers/node-pages.js +0 -316
- package/dist/i3s-converter/helpers/preprocess-3d-tiles.js +0 -76
- package/dist/i3s-converter/helpers/tileset-traversal.js +0 -29
- package/dist/i3s-converter/i3s-converter.js +0 -911
- package/dist/i3s-converter/json-templates/geometry-definitions.js +0 -87
- package/dist/i3s-converter/json-templates/layers.js +0 -139
- package/dist/i3s-converter/json-templates/metadata.js +0 -25
- package/dist/i3s-converter/json-templates/node.js +0 -89
- package/dist/i3s-converter/json-templates/scene-server.js +0 -31
- package/dist/i3s-converter/json-templates/shared-resources.js +0 -129
- package/dist/i3s-converter/json-templates/store.js +0 -103
- package/dist/i3s-converter/types.js +0 -17
- package/dist/i3s-server/app.js +0 -22
- package/dist/i3s-server/controllers/index-controller.js +0 -23
- package/dist/i3s-server/controllers/slpk-controller.js +0 -32
- package/dist/i3s-server/routes/index.js +0 -16
- package/dist/i3s-server/routes/slpk-router.js +0 -33
- package/dist/i3s-server/utils/create-scene-server.js +0 -14
- package/dist/index.js +0 -10
- package/dist/lib/utils/compress-util.js +0 -257
- package/dist/lib/utils/file-utils.js +0 -139
- package/dist/lib/utils/geometry-utils.js +0 -18
- package/dist/lib/utils/lod-conversion-utils.js +0 -76
- package/dist/lib/utils/queue.js +0 -18
- package/dist/lib/utils/statistic-utills.js +0 -64
- package/dist/lib/utils/write-queue.js +0 -80
- package/dist/pgm-loader.js +0 -24
- package/dist/workers/3d-tiles-attributes-worker.d.ts +0 -2
- package/dist/workers/3d-tiles-attributes-worker.d.ts.map +0 -1
- package/dist/workers/3d-tiles-attributes-worker.js +0 -9
- package/dist/workers/i3s-attributes-worker.d.ts +0 -2
- package/dist/workers/i3s-attributes-worker.d.ts.map +0 -1
- package/dist/workers/i3s-attributes-worker.js +0 -5
- package/src/3d-tiles-attributes-worker.ts +0 -43
- package/src/i3s-attributes-worker.ts +0 -59
- package/src/i3s-server/bin/www +0 -102
- package/src/i3s-server/controllers/slpk-controller.js +0 -38
- package/src/i3s-server/utils/create-scene-server.js +0 -15
- package/src/workers/3d-tiles-attributes-worker.ts +0 -6
- 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
|
|
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
|
-
|
|
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
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
var
|
|
9
|
-
|
|
10
|
-
|
|
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
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
app
|
|
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(
|
|
19
|
-
app.use(
|
|
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":["
|
|
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
|
|
7
|
-
var
|
|
8
|
-
var 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
|
|
26
|
+
case 3:
|
|
23
27
|
if (!(_i < _extensions.length)) {
|
|
24
|
-
_context.next =
|
|
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 =
|
|
30
|
-
_context.next =
|
|
33
|
+
_context.prev = 6;
|
|
34
|
+
_context.next = 9;
|
|
31
35
|
return promises.access(fileName);
|
|
32
|
-
case
|
|
36
|
+
case 9:
|
|
33
37
|
return _context.abrupt("return", fileName);
|
|
34
|
-
case
|
|
35
|
-
_context.prev =
|
|
36
|
-
_context.t0 = _context["catch"](
|
|
37
|
-
return _context.abrupt("continue",
|
|
38
|
-
case
|
|
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 =
|
|
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, [[
|
|
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":["
|
|
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(
|
|
7
|
-
var
|
|
8
|
-
|
|
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.
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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 =
|
|
56
|
+
_context2.next = 13;
|
|
51
57
|
break;
|
|
52
58
|
}
|
|
53
|
-
_context2.prev =
|
|
59
|
+
_context2.prev = 3;
|
|
54
60
|
_context2.t0 = Buffer;
|
|
55
|
-
_context2.next =
|
|
56
|
-
return
|
|
57
|
-
|
|
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 =
|
|
66
|
+
_context2.next = 13;
|
|
66
67
|
break;
|
|
67
|
-
case
|
|
68
|
-
_context2.prev =
|
|
69
|
-
_context2.t2 = _context2["catch"](
|
|
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, [[
|
|
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","
|
|
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
|
|
7
|
-
var 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":["
|
|
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
|
|
7
|
-
var
|
|
8
|
-
|
|
9
|
-
var
|
|
10
|
-
|
|
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 =
|
|
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":["
|
|
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
|
-
|
|
4
|
-
|
|
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:
|
|
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
|
-
|
|
19
|
+
exports.createSceneServer = createSceneServer;
|
|
17
20
|
//# sourceMappingURL=create-scene-server.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-scene-server.js","names":["
|
|
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
|