@loaders.gl/tile-converter 4.0.0-alpha.1 → 4.0.0-alpha.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/converter.js +1 -1
- package/bin/slpk-extractor.js +4 -0
- package/dist/3d-tiles-attributes-worker.d.ts +28 -0
- package/dist/3d-tiles-attributes-worker.d.ts.map +1 -0
- package/dist/3d-tiles-attributes-worker.js +3 -0
- package/dist/3d-tiles-attributes-worker.js.map +7 -0
- package/dist/3d-tiles-converter/3d-tiles-converter.d.ts +90 -0
- package/dist/3d-tiles-converter/3d-tiles-converter.d.ts.map +1 -0
- package/dist/3d-tiles-converter/3d-tiles-converter.js +275 -226
- package/dist/3d-tiles-converter/helpers/b3dm-converter.d.ts +71 -18
- package/dist/3d-tiles-converter/helpers/b3dm-converter.d.ts.map +1 -0
- package/dist/3d-tiles-converter/helpers/b3dm-converter.js +256 -236
- package/dist/3d-tiles-converter/helpers/i3s-obb-to-3d-tiles-obb.d.ts +4 -7
- package/dist/3d-tiles-converter/helpers/i3s-obb-to-3d-tiles-obb.d.ts.map +1 -0
- package/dist/3d-tiles-converter/helpers/i3s-obb-to-3d-tiles-obb.js +22 -9
- package/dist/3d-tiles-converter/helpers/texture-atlas.d.ts +9 -0
- package/dist/3d-tiles-converter/helpers/texture-atlas.d.ts.map +1 -0
- package/dist/3d-tiles-converter/helpers/texture-atlas.js +47 -28
- package/dist/3d-tiles-converter/json-templates/tileset.d.ts +15 -0
- package/dist/3d-tiles-converter/json-templates/tileset.d.ts.map +1 -0
- package/dist/3d-tiles-converter/json-templates/tileset.js +42 -36
- package/dist/bundle.d.ts +2 -0
- package/dist/bundle.d.ts.map +1 -0
- package/dist/bundle.js +2 -2
- package/dist/constants.d.ts +2 -0
- package/dist/constants.d.ts.map +1 -0
- package/dist/constants.js +4 -0
- package/dist/converter-cli.d.ts +2 -0
- package/dist/converter-cli.d.ts.map +1 -0
- package/dist/converter-cli.js +214 -0
- package/dist/converter.min.js +185 -190
- package/dist/deps-installer/deps-installer.d.ts +11 -3
- package/dist/deps-installer/deps-installer.d.ts.map +1 -0
- package/dist/deps-installer/deps-installer.js +61 -23
- package/dist/dist.min.js +64143 -0
- package/dist/es5/3d-tiles-attributes-worker.js +25 -0
- package/dist/es5/3d-tiles-attributes-worker.js.map +1 -0
- package/dist/es5/3d-tiles-converter/3d-tiles-converter.js +467 -0
- package/dist/es5/3d-tiles-converter/3d-tiles-converter.js.map +1 -0
- package/dist/es5/3d-tiles-converter/helpers/b3dm-converter.js +293 -0
- package/dist/es5/3d-tiles-converter/helpers/b3dm-converter.js.map +1 -0
- package/dist/es5/3d-tiles-converter/helpers/i3s-obb-to-3d-tiles-obb.js +18 -0
- package/dist/es5/3d-tiles-converter/helpers/i3s-obb-to-3d-tiles-obb.js.map +1 -0
- package/dist/es5/3d-tiles-converter/helpers/texture-atlas.js +33 -0
- package/dist/es5/3d-tiles-converter/helpers/texture-atlas.js.map +1 -0
- package/dist/es5/3d-tiles-converter/json-templates/tileset.js +61 -0
- package/dist/es5/3d-tiles-converter/json-templates/tileset.js.map +1 -0
- package/dist/es5/bundle.js +6 -0
- package/dist/es5/bundle.js.map +1 -0
- package/dist/es5/constants.js +9 -0
- package/dist/es5/constants.js.map +1 -0
- package/dist/es5/converter-cli.js +244 -0
- package/dist/es5/converter-cli.js.map +1 -0
- package/dist/es5/deps-installer/deps-installer.js +124 -0
- package/dist/es5/deps-installer/deps-installer.js.map +1 -0
- package/dist/es5/i3s-attributes-worker.js +25 -0
- package/dist/es5/i3s-attributes-worker.js.map +1 -0
- package/dist/es5/i3s-converter/helpers/batch-ids-extensions.js +116 -0
- package/dist/es5/i3s-converter/helpers/batch-ids-extensions.js.map +1 -0
- package/dist/es5/i3s-converter/helpers/coordinate-converter.js +89 -0
- package/dist/es5/i3s-converter/helpers/coordinate-converter.js.map +1 -0
- package/dist/es5/i3s-converter/helpers/create-scene-server-path.js +41 -0
- package/dist/es5/i3s-converter/helpers/create-scene-server-path.js.map +1 -0
- package/dist/es5/i3s-converter/helpers/feature-attributes.js +174 -0
- package/dist/es5/i3s-converter/helpers/feature-attributes.js.map +1 -0
- package/dist/es5/i3s-converter/helpers/geometry-attributes.js +213 -0
- package/dist/es5/i3s-converter/helpers/geometry-attributes.js.map +1 -0
- package/dist/es5/i3s-converter/helpers/geometry-converter.js +1192 -0
- package/dist/es5/i3s-converter/helpers/geometry-converter.js.map +1 -0
- package/dist/es5/i3s-converter/helpers/gltf-attributes.js +113 -0
- package/dist/es5/i3s-converter/helpers/gltf-attributes.js.map +1 -0
- package/dist/es5/i3s-converter/helpers/load-3d-tiles.js +82 -0
- package/dist/es5/i3s-converter/helpers/load-3d-tiles.js.map +1 -0
- package/dist/es5/i3s-converter/helpers/node-debug.js +76 -0
- package/dist/es5/i3s-converter/helpers/node-debug.js.map +1 -0
- package/dist/es5/i3s-converter/helpers/node-index-document.js +521 -0
- package/dist/es5/i3s-converter/helpers/node-index-document.js.map +1 -0
- package/dist/es5/i3s-converter/helpers/node-pages.js +519 -0
- package/dist/es5/i3s-converter/helpers/node-pages.js.map +1 -0
- package/dist/es5/i3s-converter/helpers/preprocess-3d-tiles.js +111 -0
- package/dist/es5/i3s-converter/helpers/preprocess-3d-tiles.js.map +1 -0
- package/dist/es5/i3s-converter/helpers/tileset-traversal.js +82 -0
- package/dist/es5/i3s-converter/helpers/tileset-traversal.js.map +1 -0
- package/dist/es5/i3s-converter/i3s-converter.js +1541 -0
- package/dist/es5/i3s-converter/i3s-converter.js.map +1 -0
- package/dist/es5/i3s-converter/json-templates/geometry-definitions.js +107 -0
- package/dist/es5/i3s-converter/json-templates/geometry-definitions.js.map +1 -0
- package/dist/es5/i3s-converter/json-templates/layers.js +163 -0
- package/dist/es5/i3s-converter/json-templates/layers.js.map +1 -0
- package/dist/es5/i3s-converter/json-templates/metadata.js +31 -0
- package/dist/es5/i3s-converter/json-templates/metadata.js.map +1 -0
- package/dist/es5/i3s-converter/json-templates/node.js +99 -0
- package/dist/es5/i3s-converter/json-templates/node.js.map +1 -0
- package/dist/es5/i3s-converter/json-templates/scene-server.js +39 -0
- package/dist/es5/i3s-converter/json-templates/scene-server.js.map +1 -0
- package/dist/es5/i3s-converter/json-templates/shared-resources.js +173 -0
- package/dist/es5/i3s-converter/json-templates/shared-resources.js.map +1 -0
- package/dist/es5/i3s-converter/json-templates/store.js +107 -0
- package/dist/es5/i3s-converter/json-templates/store.js.map +1 -0
- package/dist/es5/i3s-converter/types.js +18 -0
- package/dist/es5/i3s-converter/types.js.map +1 -0
- package/dist/es5/i3s-server/README.md +19 -0
- package/dist/es5/i3s-server/app.js +27 -0
- package/dist/es5/i3s-server/app.js.map +1 -0
- package/dist/es5/i3s-server/controllers/index-controller.js +55 -0
- package/dist/es5/i3s-server/controllers/index-controller.js.map +1 -0
- package/dist/es5/i3s-server/controllers/slpk-controller.js +84 -0
- package/dist/es5/i3s-server/controllers/slpk-controller.js.map +1 -0
- package/dist/es5/i3s-server/routes/index.js +37 -0
- package/dist/es5/i3s-server/routes/index.js.map +1 -0
- package/dist/es5/i3s-server/routes/slpk-router.js +71 -0
- package/dist/es5/i3s-server/routes/slpk-router.js.map +1 -0
- package/dist/es5/i3s-server/utils/create-scene-server.js +17 -0
- package/dist/es5/i3s-server/utils/create-scene-server.js.map +1 -0
- package/dist/es5/index.js +21 -0
- package/dist/es5/index.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 +346 -0
- package/dist/es5/lib/utils/compress-util.js.map +1 -0
- package/dist/es5/lib/utils/file-utils.js +208 -0
- package/dist/es5/lib/utils/file-utils.js.map +1 -0
- package/dist/es5/lib/utils/geometry-utils.js +15 -0
- package/dist/es5/lib/utils/geometry-utils.js.map +1 -0
- package/dist/es5/lib/utils/lod-conversion-utils.js +44 -0
- package/dist/es5/lib/utils/lod-conversion-utils.js.map +1 -0
- package/dist/es5/lib/utils/queue.js +47 -0
- package/dist/es5/lib/utils/queue.js.map +1 -0
- package/dist/es5/lib/utils/statistic-utills.d.ts +25 -0
- package/dist/es5/lib/utils/statistic-utills.js +147 -0
- package/dist/es5/lib/utils/statistic-utills.js.map +1 -0
- package/dist/es5/lib/utils/write-queue.js +214 -0
- package/dist/es5/lib/utils/write-queue.js.map +1 -0
- package/dist/es5/pgm-loader.js +41 -0
- package/dist/es5/pgm-loader.js.map +1 -0
- package/dist/es5/slpk-extractor/helpers/file-handle-provider.js +181 -0
- package/dist/es5/slpk-extractor/helpers/file-handle-provider.js.map +1 -0
- package/dist/es5/slpk-extractor/slpk-extractor.js +172 -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/es5/workers/3d-tiles-attributes-worker.js +28 -0
- package/dist/es5/workers/3d-tiles-attributes-worker.js.map +1 -0
- package/dist/es5/workers/i3s-attributes-worker.js +30 -0
- package/dist/es5/workers/i3s-attributes-worker.js.map +1 -0
- package/dist/esm/3d-tiles-attributes-worker.js +16 -0
- package/dist/esm/3d-tiles-attributes-worker.js.map +1 -0
- package/dist/esm/3d-tiles-converter/3d-tiles-converter.js +245 -0
- package/dist/esm/3d-tiles-converter/3d-tiles-converter.js.map +1 -0
- package/dist/esm/3d-tiles-converter/helpers/b3dm-converter.js +218 -0
- package/dist/esm/3d-tiles-converter/helpers/b3dm-converter.js.map +1 -0
- package/dist/esm/3d-tiles-converter/helpers/i3s-obb-to-3d-tiles-obb.js +10 -0
- package/dist/esm/3d-tiles-converter/helpers/i3s-obb-to-3d-tiles-obb.js.map +1 -0
- package/dist/esm/3d-tiles-converter/helpers/texture-atlas.js +27 -0
- package/dist/esm/3d-tiles-converter/helpers/texture-atlas.js.map +1 -0
- package/dist/esm/3d-tiles-converter/json-templates/tileset.js +37 -0
- package/dist/esm/3d-tiles-converter/json-templates/tileset.js.map +1 -0
- package/dist/esm/bundle.js +4 -0
- package/dist/esm/bundle.js.map +1 -0
- package/dist/esm/constants.js +2 -0
- package/dist/esm/constants.js.map +1 -0
- package/dist/esm/converter-cli.js +187 -0
- package/dist/esm/converter-cli.js.map +1 -0
- package/dist/esm/deps-installer/deps-installer.js +45 -0
- package/dist/esm/deps-installer/deps-installer.js.map +1 -0
- package/dist/esm/i3s-attributes-worker.js +16 -0
- package/dist/esm/i3s-attributes-worker.js.map +1 -0
- package/dist/esm/i3s-converter/helpers/batch-ids-extensions.js +105 -0
- package/dist/esm/i3s-converter/helpers/batch-ids-extensions.js.map +1 -0
- package/dist/esm/i3s-converter/helpers/coordinate-converter.js +79 -0
- package/dist/esm/i3s-converter/helpers/coordinate-converter.js.map +1 -0
- package/dist/esm/i3s-converter/helpers/create-scene-server-path.js +16 -0
- package/dist/esm/i3s-converter/helpers/create-scene-server-path.js.map +1 -0
- package/dist/esm/i3s-converter/helpers/feature-attributes.js +147 -0
- package/dist/esm/i3s-converter/helpers/feature-attributes.js.map +1 -0
- package/{src → dist/esm}/i3s-converter/helpers/geometry-attributes.js +80 -106
- package/dist/esm/i3s-converter/helpers/geometry-attributes.js.map +1 -0
- package/dist/esm/i3s-converter/helpers/geometry-converter.js +906 -0
- package/dist/esm/i3s-converter/helpers/geometry-converter.js.map +1 -0
- package/dist/esm/i3s-converter/helpers/gltf-attributes.js +110 -0
- package/dist/esm/i3s-converter/helpers/gltf-attributes.js.map +1 -0
- package/dist/esm/i3s-converter/helpers/load-3d-tiles.js +35 -0
- package/dist/esm/i3s-converter/helpers/load-3d-tiles.js.map +1 -0
- package/{src → dist/esm}/i3s-converter/helpers/node-debug.js +20 -41
- package/dist/esm/i3s-converter/helpers/node-debug.js.map +1 -0
- package/dist/esm/i3s-converter/helpers/node-index-document.js +201 -0
- package/dist/esm/i3s-converter/helpers/node-index-document.js.map +1 -0
- package/dist/esm/i3s-converter/helpers/node-pages.js +206 -0
- package/dist/esm/i3s-converter/helpers/node-pages.js.map +1 -0
- package/dist/esm/i3s-converter/helpers/preprocess-3d-tiles.js +48 -0
- package/dist/esm/i3s-converter/helpers/preprocess-3d-tiles.js.map +1 -0
- package/dist/esm/i3s-converter/helpers/tileset-traversal.js +14 -0
- package/dist/esm/i3s-converter/helpers/tileset-traversal.js.map +1 -0
- package/dist/esm/i3s-converter/i3s-converter.js +778 -0
- package/dist/esm/i3s-converter/i3s-converter.js.map +1 -0
- package/dist/esm/i3s-converter/json-templates/geometry-definitions.js +89 -0
- package/dist/esm/i3s-converter/json-templates/geometry-definitions.js.map +1 -0
- package/dist/esm/i3s-converter/json-templates/layers.js +133 -0
- package/dist/esm/i3s-converter/json-templates/layers.js.map +1 -0
- package/dist/esm/i3s-converter/json-templates/metadata.js +22 -0
- package/dist/esm/i3s-converter/json-templates/metadata.js.map +1 -0
- package/dist/esm/i3s-converter/json-templates/node.js +80 -0
- package/dist/esm/i3s-converter/json-templates/node.js.map +1 -0
- package/dist/esm/i3s-converter/json-templates/scene-server.js +28 -0
- package/dist/esm/i3s-converter/json-templates/scene-server.js.map +1 -0
- package/dist/esm/i3s-converter/json-templates/shared-resources.js +123 -0
- package/dist/esm/i3s-converter/json-templates/shared-resources.js.map +1 -0
- package/dist/esm/i3s-converter/json-templates/store.js +98 -0
- package/dist/esm/i3s-converter/json-templates/store.js.map +1 -0
- package/dist/esm/i3s-converter/types.js +11 -0
- package/dist/esm/i3s-converter/types.js.map +1 -0
- package/dist/esm/i3s-server/README.md +19 -0
- package/dist/esm/i3s-server/app.js +26 -0
- package/dist/esm/i3s-server/app.js.map +1 -0
- package/dist/esm/i3s-server/bin/www +102 -0
- package/dist/esm/i3s-server/certs/cert.pem +19 -0
- package/dist/esm/i3s-server/certs/key.pem +27 -0
- package/dist/esm/i3s-server/controllers/index-controller.js +24 -0
- package/dist/esm/i3s-server/controllers/index-controller.js.map +1 -0
- package/dist/esm/i3s-server/controllers/slpk-controller.js +36 -0
- package/dist/esm/i3s-server/controllers/slpk-controller.js.map +1 -0
- package/dist/esm/i3s-server/routes/index.js +16 -0
- package/dist/esm/i3s-server/routes/index.js.map +1 -0
- package/dist/esm/i3s-server/routes/slpk-router.js +33 -0
- package/dist/esm/i3s-server/routes/slpk-router.js.map +1 -0
- package/dist/esm/i3s-server/utils/create-scene-server.js +16 -0
- package/dist/esm/i3s-server/utils/create-scene-server.js.map +1 -0
- package/dist/esm/index.js +3 -0
- package/dist/esm/index.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 +168 -0
- package/dist/esm/lib/utils/compress-util.js.map +1 -0
- package/dist/esm/lib/utils/file-utils.js +87 -0
- package/dist/esm/lib/utils/file-utils.js.map +1 -0
- package/dist/esm/lib/utils/geometry-utils.js +8 -0
- package/dist/esm/lib/utils/geometry-utils.js.map +1 -0
- package/dist/esm/lib/utils/lod-conversion-utils.js +37 -0
- package/dist/esm/lib/utils/lod-conversion-utils.js.map +1 -0
- package/dist/esm/lib/utils/queue.js +15 -0
- package/dist/esm/lib/utils/queue.js.map +1 -0
- package/dist/esm/lib/utils/statistic-utills.d.ts +25 -0
- package/dist/esm/lib/utils/statistic-utills.js +62 -0
- package/dist/esm/lib/utils/statistic-utills.js.map +1 -0
- package/dist/esm/lib/utils/write-queue.js +85 -0
- package/dist/esm/lib/utils/write-queue.js.map +1 -0
- package/dist/esm/pgm-loader.js +15 -0
- package/dist/esm/pgm-loader.js.map +1 -0
- package/dist/esm/slpk-extractor/helpers/file-handle-provider.js +43 -0
- package/dist/esm/slpk-extractor/helpers/file-handle-provider.js.map +1 -0
- 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/esm/workers/3d-tiles-attributes-worker.js +8 -0
- package/dist/esm/workers/3d-tiles-attributes-worker.js.map +1 -0
- package/dist/esm/workers/i3s-attributes-worker.js +7 -0
- package/dist/esm/workers/i3s-attributes-worker.js.map +1 -0
- package/dist/i3s-attributes-worker.d.ts +45 -0
- package/dist/i3s-attributes-worker.d.ts.map +1 -0
- package/dist/i3s-attributes-worker.js +9 -0
- package/dist/i3s-attributes-worker.js.map +7 -0
- package/dist/i3s-converter/helpers/batch-ids-extensions.d.ts +13 -0
- package/dist/i3s-converter/helpers/batch-ids-extensions.d.ts.map +1 -0
- package/dist/i3s-converter/helpers/batch-ids-extensions.js +138 -0
- package/dist/i3s-converter/helpers/coordinate-converter.d.ts +39 -0
- package/dist/i3s-converter/helpers/coordinate-converter.d.ts.map +1 -0
- package/dist/i3s-converter/helpers/coordinate-converter.js +118 -42
- package/dist/i3s-converter/helpers/create-scene-server-path.d.ts +9 -0
- package/dist/i3s-converter/helpers/create-scene-server-path.d.ts.map +1 -0
- package/dist/i3s-converter/helpers/create-scene-server-path.js +27 -15
- package/dist/i3s-converter/helpers/feature-attributes.d.ts +56 -0
- package/dist/i3s-converter/helpers/feature-attributes.d.ts.map +1 -0
- package/dist/i3s-converter/helpers/feature-attributes.js +216 -0
- package/dist/i3s-converter/helpers/geometry-attributes.d.ts +8 -0
- package/dist/i3s-converter/helpers/geometry-attributes.d.ts.map +1 -0
- package/dist/i3s-converter/helpers/geometry-attributes.js +188 -185
- package/dist/i3s-converter/helpers/geometry-converter.d.ts +41 -35
- package/dist/i3s-converter/helpers/geometry-converter.d.ts.map +1 -0
- package/dist/i3s-converter/helpers/geometry-converter.js +1179 -650
- package/dist/i3s-converter/helpers/gltf-attributes.d.ts +28 -0
- package/dist/i3s-converter/helpers/gltf-attributes.d.ts.map +1 -0
- package/dist/i3s-converter/helpers/gltf-attributes.js +129 -0
- package/dist/i3s-converter/helpers/load-3d-tiles.d.ts +18 -0
- package/dist/i3s-converter/helpers/load-3d-tiles.d.ts.map +1 -0
- package/dist/i3s-converter/helpers/load-3d-tiles.js +53 -0
- package/dist/i3s-converter/helpers/node-debug.d.ts +8 -0
- package/dist/i3s-converter/helpers/node-debug.d.ts.map +1 -0
- package/dist/i3s-converter/helpers/node-debug.js +106 -74
- package/dist/i3s-converter/helpers/node-index-document.d.ts +103 -0
- package/dist/i3s-converter/helpers/node-index-document.d.ts.map +1 -0
- package/dist/i3s-converter/helpers/node-index-document.js +268 -0
- package/dist/i3s-converter/helpers/node-pages.d.ts +125 -113
- package/dist/i3s-converter/helpers/node-pages.d.ts.map +1 -0
- package/dist/i3s-converter/helpers/node-pages.js +313 -133
- package/dist/i3s-converter/helpers/preprocess-3d-tiles.d.ts +22 -0
- package/dist/i3s-converter/helpers/preprocess-3d-tiles.d.ts.map +1 -0
- package/dist/i3s-converter/helpers/preprocess-3d-tiles.js +75 -0
- package/dist/i3s-converter/helpers/tileset-traversal.d.ts +25 -0
- package/dist/i3s-converter/helpers/tileset-traversal.d.ts.map +1 -0
- package/dist/i3s-converter/helpers/tileset-traversal.js +29 -0
- package/dist/i3s-converter/i3s-converter.d.ts +267 -0
- package/dist/i3s-converter/i3s-converter.d.ts.map +1 -0
- package/dist/i3s-converter/i3s-converter.js +891 -867
- package/dist/i3s-converter/json-templates/geometry-definitions.d.ts +7 -0
- package/dist/i3s-converter/json-templates/geometry-definitions.d.ts.map +1 -0
- package/dist/i3s-converter/json-templates/geometry-definitions.js +87 -0
- package/dist/i3s-converter/json-templates/layers.d.ts +70 -0
- package/dist/i3s-converter/json-templates/layers.d.ts.map +1 -0
- package/dist/i3s-converter/json-templates/layers.js +138 -190
- package/dist/i3s-converter/json-templates/metadata.d.ts +22 -0
- package/dist/i3s-converter/json-templates/metadata.d.ts.map +1 -0
- package/dist/i3s-converter/json-templates/metadata.js +25 -22
- package/dist/i3s-converter/json-templates/node.d.ts +61 -0
- package/dist/i3s-converter/json-templates/node.d.ts.map +1 -0
- package/dist/i3s-converter/json-templates/node.js +88 -79
- package/dist/i3s-converter/json-templates/scene-server.d.ts +28 -0
- package/dist/i3s-converter/json-templates/scene-server.d.ts.map +1 -0
- package/dist/i3s-converter/json-templates/scene-server.js +31 -28
- package/dist/i3s-converter/json-templates/shared-resources.d.ts +14 -0
- package/dist/i3s-converter/json-templates/shared-resources.d.ts.map +1 -0
- package/dist/i3s-converter/json-templates/shared-resources.js +124 -125
- package/dist/i3s-converter/json-templates/store.d.ts +95 -0
- package/dist/i3s-converter/json-templates/store.d.ts.map +1 -0
- package/dist/i3s-converter/json-templates/store.js +100 -95
- package/dist/i3s-converter/types.d.ts +163 -0
- package/dist/i3s-converter/types.d.ts.map +1 -0
- package/dist/i3s-converter/types.js +17 -0
- package/dist/i3s-server/app.d.ts +3 -0
- package/dist/i3s-server/app.d.ts.map +1 -0
- package/dist/i3s-server/app.js +11 -10
- package/dist/i3s-server/controllers/index-controller.d.ts +2 -0
- package/dist/i3s-server/controllers/index-controller.d.ts.map +1 -0
- package/dist/i3s-server/controllers/index-controller.js +16 -24
- package/dist/i3s-server/controllers/slpk-controller.d.ts +3 -0
- package/dist/i3s-server/controllers/slpk-controller.d.ts.map +1 -0
- package/dist/i3s-server/controllers/slpk-controller.js +32 -0
- package/dist/i3s-server/routes/index.d.ts +3 -0
- package/dist/i3s-server/routes/index.d.ts.map +1 -0
- package/dist/i3s-server/routes/index.js +11 -15
- package/dist/i3s-server/routes/slpk-router.d.ts +3 -0
- package/dist/i3s-server/routes/slpk-router.d.ts.map +1 -0
- package/dist/i3s-server/routes/slpk-router.js +33 -0
- package/dist/i3s-server/utils/create-scene-server.d.ts +11 -0
- package/dist/i3s-server/utils/create-scene-server.d.ts.map +1 -0
- package/dist/i3s-server/utils/create-scene-server.js +14 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +10 -5
- 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/cli-utils.js +82 -0
- package/dist/lib/utils/compress-util.d.ts +45 -0
- package/dist/lib/utils/compress-util.d.ts.map +1 -0
- package/dist/lib/utils/compress-util.js +238 -160
- package/dist/lib/utils/file-utils.d.ts +22 -14
- package/dist/lib/utils/file-utils.d.ts.map +1 -0
- package/dist/lib/utils/file-utils.js +134 -36
- package/dist/lib/utils/geometry-utils.d.ts +9 -0
- package/dist/lib/utils/geometry-utils.d.ts.map +1 -0
- package/dist/lib/utils/geometry-utils.js +18 -0
- package/dist/lib/utils/lod-conversion-utils.d.ts +23 -13
- package/dist/lib/utils/lod-conversion-utils.d.ts.map +1 -0
- package/dist/lib/utils/lod-conversion-utils.js +72 -39
- package/dist/lib/utils/queue.d.ts +7 -0
- package/dist/lib/utils/queue.d.ts.map +1 -0
- package/dist/lib/utils/queue.js +18 -0
- package/dist/lib/utils/statistic-utills.d.ts +3 -25
- package/dist/lib/utils/statistic-utills.d.ts.map +1 -0
- package/dist/lib/utils/statistic-utills.js +58 -67
- package/dist/lib/utils/write-queue.d.ts +39 -0
- package/dist/lib/utils/write-queue.d.ts.map +1 -0
- package/dist/lib/utils/write-queue.js +80 -0
- package/dist/pgm-loader.d.ts +6 -0
- package/dist/pgm-loader.d.ts.map +1 -0
- package/dist/pgm-loader.js +23 -14
- package/dist/slpk-extractor/helpers/file-handle-provider.d.ts +48 -0
- package/dist/slpk-extractor/helpers/file-handle-provider.d.ts.map +1 -0
- package/dist/slpk-extractor/helpers/file-handle-provider.js +71 -0
- 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/slpk-extractor.js +78 -0
- package/dist/slpk-extractor-cli.d.ts +17 -0
- package/dist/slpk-extractor-cli.d.ts.map +1 -0
- package/dist/slpk-extractor-cli.js +102 -0
- package/dist/slpk-extractor.min.js +189 -0
- package/dist/workers/3d-tiles-attributes-worker.d.ts +2 -0
- package/dist/workers/3d-tiles-attributes-worker.d.ts.map +1 -0
- package/dist/workers/3d-tiles-attributes-worker.js +9 -0
- package/dist/workers/i3s-attributes-worker.d.ts +2 -0
- package/dist/workers/i3s-attributes-worker.d.ts.map +1 -0
- package/dist/workers/i3s-attributes-worker.js +5 -0
- package/package.json +36 -24
- package/src/3d-tiles-attributes-worker.ts +43 -0
- package/src/3d-tiles-converter/3d-tiles-converter.ts +131 -63
- package/src/3d-tiles-converter/helpers/{b3dm-converter.js → b3dm-converter.ts} +72 -53
- package/src/3d-tiles-converter/helpers/{i3s-obb-to-3d-tiles-obb.js → i3s-obb-to-3d-tiles-obb.ts} +16 -1
- package/src/3d-tiles-converter/helpers/texture-atlas.ts +4 -4
- package/src/3d-tiles-converter/json-templates/{tileset.js → tileset.ts} +9 -9
- package/src/constants.ts +2 -0
- package/src/converter-cli.ts +305 -0
- package/src/deps-installer/deps-installer.ts +72 -0
- package/src/i3s-attributes-worker.ts +59 -0
- package/src/i3s-converter/helpers/batch-ids-extensions.ts +202 -0
- package/src/i3s-converter/helpers/coordinate-converter.ts +94 -34
- package/src/i3s-converter/helpers/create-scene-server-path.ts +29 -0
- package/src/i3s-converter/helpers/feature-attributes.ts +247 -0
- package/src/i3s-converter/helpers/geometry-attributes.ts +267 -0
- package/src/i3s-converter/helpers/geometry-converter.ts +1667 -0
- package/src/i3s-converter/helpers/gltf-attributes.ts +162 -0
- package/src/i3s-converter/helpers/load-3d-tiles.ts +68 -0
- package/src/i3s-converter/helpers/node-debug.ts +146 -0
- package/src/i3s-converter/helpers/node-index-document.ts +335 -0
- package/src/i3s-converter/helpers/node-pages.ts +344 -0
- package/src/i3s-converter/helpers/preprocess-3d-tiles.ts +79 -0
- package/src/i3s-converter/helpers/tileset-traversal.ts +51 -0
- package/src/i3s-converter/i3s-converter.ts +650 -669
- package/src/i3s-converter/json-templates/geometry-definitions.ts +83 -0
- package/src/i3s-converter/json-templates/layers.ts +137 -0
- package/src/i3s-converter/json-templates/{metadata.js → metadata.ts} +2 -2
- package/src/i3s-converter/json-templates/{node.js → node.ts} +12 -12
- package/src/i3s-converter/json-templates/{scene-server.js → scene-server.ts} +2 -2
- package/src/i3s-converter/json-templates/{shared-resources.js → shared-resources.ts} +17 -17
- package/src/i3s-converter/types.ts +185 -0
- package/src/i3s-server/README.md +19 -0
- package/src/i3s-server/app.js +8 -1
- package/src/i3s-server/controllers/slpk-controller.js +38 -0
- package/src/i3s-server/routes/slpk-router.js +33 -0
- package/src/i3s-server/utils/create-scene-server.js +15 -0
- package/src/index.ts +0 -4
- package/src/lib/utils/cli-utils.ts +78 -0
- package/src/lib/utils/{compress-util.js → compress-util.ts} +105 -18
- package/src/lib/utils/file-utils.ts +140 -0
- package/src/lib/utils/geometry-utils.ts +14 -0
- package/src/lib/utils/{lod-conversion-utils.js → lod-conversion-utils.ts} +31 -5
- package/src/lib/utils/queue.ts +17 -0
- package/src/lib/utils/write-queue.ts +110 -0
- package/src/pgm-loader.ts +3 -3
- package/src/slpk-extractor/helpers/file-handle-provider.ts +91 -0
- package/src/slpk-extractor/slpk-extractor.ts +102 -0
- package/src/slpk-extractor-cli.ts +128 -0
- package/src/workers/3d-tiles-attributes-worker.ts +6 -0
- package/src/workers/i3s-attributes-worker.ts +7 -0
- package/dist/3d-tiles-converter/3d-tiles-converter.js.map +0 -1
- package/dist/3d-tiles-converter/helpers/b3dm-converter.js.map +0 -1
- package/dist/3d-tiles-converter/helpers/i3s-obb-to-3d-tiles-obb.js.map +0 -1
- package/dist/3d-tiles-converter/helpers/texture-atlas.js.map +0 -1
- package/dist/3d-tiles-converter/json-templates/tileset.js.map +0 -1
- package/dist/bundle.js.map +0 -1
- package/dist/deps-installer/deps-installer.js.map +0 -1
- package/dist/i3s-converter/helpers/coordinate-converter.js.map +0 -1
- package/dist/i3s-converter/helpers/create-scene-server-path.js.map +0 -1
- package/dist/i3s-converter/helpers/geometry-attributes.js.map +0 -1
- package/dist/i3s-converter/helpers/geometry-converter.js.map +0 -1
- package/dist/i3s-converter/helpers/node-debug.js.map +0 -1
- package/dist/i3s-converter/helpers/node-pages.js.map +0 -1
- package/dist/i3s-converter/i3s-converter.js.map +0 -1
- package/dist/i3s-converter/json-templates/layers.js.map +0 -1
- package/dist/i3s-converter/json-templates/metadata.js.map +0 -1
- package/dist/i3s-converter/json-templates/node.js.map +0 -1
- package/dist/i3s-converter/json-templates/scene-server.js.map +0 -1
- package/dist/i3s-converter/json-templates/shared-resources.js.map +0 -1
- package/dist/i3s-converter/json-templates/store.js.map +0 -1
- package/dist/i3s-server/app.js.map +0 -1
- package/dist/i3s-server/controllers/index-controller.js.map +0 -1
- package/dist/i3s-server/routes/index.js.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/lib/geoid-height-model.d.ts +0 -41
- package/dist/lib/geoid-height-model.js +0 -140
- package/dist/lib/geoid-height-model.js.map +0 -1
- package/dist/lib/pgm-parser.d.ts +0 -14
- package/dist/lib/pgm-parser.js +0 -183
- package/dist/lib/pgm-parser.js.map +0 -1
- package/dist/lib/utils/compress-util.js.map +0 -1
- package/dist/lib/utils/compress-utils.d.ts +0 -53
- package/dist/lib/utils/file-utils.js.map +0 -1
- package/dist/lib/utils/lod-conversion-utils.js.map +0 -1
- package/dist/lib/utils/statistic-utills.js.map +0 -1
- package/dist/pgm-loader.js.map +0 -1
- package/src/3d-tiles-converter/helpers/b3dm-converter.d.ts +0 -23
- package/src/3d-tiles-converter/helpers/i3s-obb-to-3d-tiles-obb.d.ts +0 -16
- package/src/deps-installer/deps-installer.d.ts +0 -10
- package/src/deps-installer/deps-installer.js +0 -22
- package/src/i3s-converter/helpers/create-scene-server-path.js +0 -25
- package/src/i3s-converter/helpers/geometry-converter.d.ts +0 -40
- package/src/i3s-converter/helpers/geometry-converter.js +0 -915
- package/src/i3s-converter/helpers/node-pages.d.ts +0 -144
- package/src/i3s-converter/helpers/node-pages.js +0 -208
- package/src/i3s-converter/json-templates/layers.js +0 -199
- package/src/lib/geoid-height-model.d.ts +0 -41
- package/src/lib/geoid-height-model.js +0 -239
- package/src/lib/pgm-parser.d.ts +0 -14
- package/src/lib/pgm-parser.js +0 -179
- package/src/lib/utils/compress-utils.d.ts +0 -53
- package/src/lib/utils/file-utils.d.ts +0 -43
- package/src/lib/utils/file-utils.js +0 -38
- package/src/lib/utils/lod-conversion-utils.d.ts +0 -32
- /package/dist/{i3s-server → es5/i3s-server}/bin/www +0 -0
- /package/dist/{i3s-server → es5/i3s-server}/certs/cert.pem +0 -0
- /package/dist/{i3s-server → es5/i3s-server}/certs/key.pem +0 -0
- /package/src/i3s-converter/json-templates/{store.js → store.ts} +0 -0
- /package/src/lib/utils/{statistic-utills.js → statistic-utills.ts} +0 -0
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.convertGeometricErrorToScreenThreshold = convertGeometricErrorToScreenThreshold;
|
|
7
|
+
exports.convertScreenThresholdToGeometricError = convertScreenThresholdToGeometricError;
|
|
8
|
+
var DEFAULT_MAXIMUM_SCREEN_SPACE_ERROR = 16;
|
|
9
|
+
function convertGeometricErrorToScreenThreshold(tile, coordinates) {
|
|
10
|
+
var lodSelection = [];
|
|
11
|
+
var boundingVolume = tile.boundingVolume;
|
|
12
|
+
var lodMetricValue = tile.lodMetricValue || 0.1;
|
|
13
|
+
var maxScreenThreshold = {
|
|
14
|
+
metricType: 'maxScreenThreshold',
|
|
15
|
+
maxError: coordinates.mbs[3] * 2 * DEFAULT_MAXIMUM_SCREEN_SPACE_ERROR / lodMetricValue
|
|
16
|
+
};
|
|
17
|
+
var maxScreenThresholdSQ = {
|
|
18
|
+
metricType: 'maxScreenThresholdSQ',
|
|
19
|
+
maxError: Math.PI * 0.25 * maxScreenThreshold.maxError * maxScreenThreshold.maxError
|
|
20
|
+
};
|
|
21
|
+
if (boundingVolume.constructor.name === 'OrientedBoundingBox') {
|
|
22
|
+
lodSelection.push(maxScreenThresholdSQ);
|
|
23
|
+
lodSelection.push(maxScreenThreshold);
|
|
24
|
+
} else {
|
|
25
|
+
lodSelection.push(maxScreenThreshold);
|
|
26
|
+
lodSelection.push(maxScreenThresholdSQ);
|
|
27
|
+
}
|
|
28
|
+
return lodSelection;
|
|
29
|
+
}
|
|
30
|
+
function convertScreenThresholdToGeometricError(node) {
|
|
31
|
+
var metricData = node.header.lodSelection.maxScreenThreshold || {};
|
|
32
|
+
var maxError = metricData.maxError;
|
|
33
|
+
if (!maxError) {
|
|
34
|
+
var sqMetricData = node.header.lodSelection.maxScreenThresholdSQ;
|
|
35
|
+
if (sqMetricData) {
|
|
36
|
+
maxError = Math.sqrt(sqMetricData.maxError / (Math.PI * 0.25));
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
if (!maxError) {
|
|
40
|
+
maxError = DEFAULT_MAXIMUM_SCREEN_SPACE_ERROR;
|
|
41
|
+
}
|
|
42
|
+
return node.header.mbs[3] * 2 * DEFAULT_MAXIMUM_SCREEN_SPACE_ERROR / maxError;
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=lod-conversion-utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lod-conversion-utils.js","names":["DEFAULT_MAXIMUM_SCREEN_SPACE_ERROR","convertGeometricErrorToScreenThreshold","tile","coordinates","lodSelection","boundingVolume","lodMetricValue","maxScreenThreshold","metricType","maxError","mbs","maxScreenThresholdSQ","Math","PI","constructor","name","push","convertScreenThresholdToGeometricError","node","metricData","header","sqMetricData","sqrt"],"sources":["../../../../src/lib/utils/lod-conversion-utils.ts"],"sourcesContent":["import {Tiles3DTileJSONPostprocessed} from '@loaders.gl/3d-tiles';\nimport {BoundingVolumes} from '@loaders.gl/i3s';\nimport {Tile3D} from '@loaders.gl/tiles';\n\n// https://cesium.com/docs/cesiumjs-ref-doc/Cesium3DTileset.html\nconst DEFAULT_MAXIMUM_SCREEN_SPACE_ERROR = 16;\n/**\n * Do conversion from geometric error to screen threshold\n * \n * In 3DTiles we have HLOD logic and parent tile also has bigger lodMetric value then its children.\n * In I3s we have reverse logic related to maxError. Parent has lower maxError than its child.\n * In nodes where are no children tile.lodMetricValue is 0. This is because of logic of HLOD in 3DTiles\n * 3DTiles spec:\n * https://github.com/CesiumGS/3d-tiles/tree/master/specification#geometric-error\n * I3S spec:\n * https://github.com/Esri/i3s-spec/blob/master/docs/1.7/lodSelection.cmn.md\n * To avoid infinity values when we do calculations of maxError we shold replace 0 with value which allows us\n * to make child maxError bigger than his parent maxError.\n * \n * @param tile - 3d-tiles tile JSON\n * @param coordinates - node converted coordinates\n * @returns An array of LOD metrics in format compatible with i3s 3DNodeIndexDocument.lodSelection\n * @example \n * [\n {\n \"metricType\": \"maxScreenThresholdSQ\",\n \"maxError\": 870638.071285568\n },\n {\n \"metricType\": \"maxScreenThreshold\",\n \"maxError\": 1052.8679031638949\n }\n ]\n */\nexport function convertGeometricErrorToScreenThreshold(\n tile: Tiles3DTileJSONPostprocessed,\n coordinates: BoundingVolumes\n) {\n const lodSelection: {metricType: string; maxError: number}[] = [];\n const boundingVolume = tile.boundingVolume;\n const lodMetricValue = tile.lodMetricValue || 0.1;\n const maxScreenThreshold = {\n metricType: 'maxScreenThreshold',\n maxError: (coordinates.mbs[3] * 2 * DEFAULT_MAXIMUM_SCREEN_SPACE_ERROR) / lodMetricValue\n };\n const maxScreenThresholdSQ = {\n metricType: 'maxScreenThresholdSQ',\n maxError: Math.PI * 0.25 * maxScreenThreshold.maxError * maxScreenThreshold.maxError\n };\n\n if (boundingVolume.constructor.name === 'OrientedBoundingBox') {\n lodSelection.push(maxScreenThresholdSQ);\n lodSelection.push(maxScreenThreshold);\n } else {\n lodSelection.push(maxScreenThreshold);\n lodSelection.push(maxScreenThresholdSQ);\n }\n\n return lodSelection;\n}\n\n/**\n * Convert LOD metric from \"Screen Threshold\" to \"Screen Space Error\"\n * @param node - i3s node data\n * @returns lod metric in 3d-tiles format\n */\nexport function convertScreenThresholdToGeometricError(node: Tile3D): number {\n const metricData = node.header.lodSelection.maxScreenThreshold || {};\n let maxError = metricData.maxError;\n if (!maxError) {\n const sqMetricData = node.header.lodSelection.maxScreenThresholdSQ;\n if (sqMetricData) {\n maxError = Math.sqrt(sqMetricData.maxError / (Math.PI * 0.25));\n }\n }\n\n if (!maxError) {\n maxError = DEFAULT_MAXIMUM_SCREEN_SPACE_ERROR;\n }\n\n return (node.header.mbs[3] * 2 * DEFAULT_MAXIMUM_SCREEN_SPACE_ERROR) / maxError;\n}\n"],"mappings":";;;;;;;AAKA,IAAMA,kCAAkC,GAAG,EAAE;AA6BtC,SAASC,sCAAsCA,CACpDC,IAAkC,EAClCC,WAA4B,EAC5B;EACA,IAAMC,YAAsD,GAAG,EAAE;EACjE,IAAMC,cAAc,GAAGH,IAAI,CAACG,cAAc;EAC1C,IAAMC,cAAc,GAAGJ,IAAI,CAACI,cAAc,IAAI,GAAG;EACjD,IAAMC,kBAAkB,GAAG;IACzBC,UAAU,EAAE,oBAAoB;IAChCC,QAAQ,EAAGN,WAAW,CAACO,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAGV,kCAAkC,GAAIM;EAC5E,CAAC;EACD,IAAMK,oBAAoB,GAAG;IAC3BH,UAAU,EAAE,sBAAsB;IAClCC,QAAQ,EAAEG,IAAI,CAACC,EAAE,GAAG,IAAI,GAAGN,kBAAkB,CAACE,QAAQ,GAAGF,kBAAkB,CAACE;EAC9E,CAAC;EAED,IAAIJ,cAAc,CAACS,WAAW,CAACC,IAAI,KAAK,qBAAqB,EAAE;IAC7DX,YAAY,CAACY,IAAI,CAACL,oBAAoB,CAAC;IACvCP,YAAY,CAACY,IAAI,CAACT,kBAAkB,CAAC;EACvC,CAAC,MAAM;IACLH,YAAY,CAACY,IAAI,CAACT,kBAAkB,CAAC;IACrCH,YAAY,CAACY,IAAI,CAACL,oBAAoB,CAAC;EACzC;EAEA,OAAOP,YAAY;AACrB;AAOO,SAASa,sCAAsCA,CAACC,IAAY,EAAU;EAC3E,IAAMC,UAAU,GAAGD,IAAI,CAACE,MAAM,CAAChB,YAAY,CAACG,kBAAkB,IAAI,CAAC,CAAC;EACpE,IAAIE,QAAQ,GAAGU,UAAU,CAACV,QAAQ;EAClC,IAAI,CAACA,QAAQ,EAAE;IACb,IAAMY,YAAY,GAAGH,IAAI,CAACE,MAAM,CAAChB,YAAY,CAACO,oBAAoB;IAClE,IAAIU,YAAY,EAAE;MAChBZ,QAAQ,GAAGG,IAAI,CAACU,IAAI,CAACD,YAAY,CAACZ,QAAQ,IAAIG,IAAI,CAACC,EAAE,GAAG,IAAI,CAAC,CAAC;IAChE;EACF;EAEA,IAAI,CAACJ,QAAQ,EAAE;IACbA,QAAQ,GAAGT,kCAAkC;EAC/C;EAEA,OAAQkB,IAAI,CAACE,MAAM,CAACV,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAGV,kCAAkC,GAAIS,QAAQ;AACjF"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.Queue = void 0;
|
|
8
|
+
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
9
|
+
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
10
|
+
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
11
|
+
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
12
|
+
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
13
|
+
var _wrapNativeSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/wrapNativeSuper"));
|
|
14
|
+
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
|
|
15
|
+
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
16
|
+
var Queue = function (_Array) {
|
|
17
|
+
(0, _inherits2.default)(Queue, _Array);
|
|
18
|
+
var _super = _createSuper(Queue);
|
|
19
|
+
function Queue() {
|
|
20
|
+
(0, _classCallCheck2.default)(this, Queue);
|
|
21
|
+
return _super.apply(this, arguments);
|
|
22
|
+
}
|
|
23
|
+
(0, _createClass2.default)(Queue, [{
|
|
24
|
+
key: "enqueue",
|
|
25
|
+
value: function enqueue(val) {
|
|
26
|
+
this.push(val);
|
|
27
|
+
}
|
|
28
|
+
}, {
|
|
29
|
+
key: "dequeue",
|
|
30
|
+
value: function dequeue() {
|
|
31
|
+
return this.shift();
|
|
32
|
+
}
|
|
33
|
+
}, {
|
|
34
|
+
key: "peek",
|
|
35
|
+
value: function peek() {
|
|
36
|
+
return this[0];
|
|
37
|
+
}
|
|
38
|
+
}, {
|
|
39
|
+
key: "isEmpty",
|
|
40
|
+
value: function isEmpty() {
|
|
41
|
+
return this.length === 0;
|
|
42
|
+
}
|
|
43
|
+
}]);
|
|
44
|
+
return Queue;
|
|
45
|
+
}((0, _wrapNativeSuper2.default)(Array));
|
|
46
|
+
exports.Queue = Queue;
|
|
47
|
+
//# sourceMappingURL=queue.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"queue.js","names":["Queue","_Array","_inherits2","default","_super","_createSuper","_classCallCheck2","apply","arguments","_createClass2","key","value","enqueue","val","push","dequeue","shift","peek","isEmpty","length","_wrapNativeSuper2","Array","exports"],"sources":["../../../../src/lib/utils/queue.ts"],"sourcesContent":["export class Queue<T> extends Array<T> {\n enqueue(val: T) {\n this.push(val);\n }\n\n dequeue(): T | undefined {\n return this.shift();\n }\n\n peek(): T {\n return this[0];\n }\n\n isEmpty() {\n return this.length === 0;\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;IAAaA,KAAK,aAAAC,MAAA;EAAA,IAAAC,UAAA,CAAAC,OAAA,EAAAH,KAAA,EAAAC,MAAA;EAAA,IAAAG,MAAA,GAAAC,YAAA,CAAAL,KAAA;EAAA,SAAAA,MAAA;IAAA,IAAAM,gBAAA,CAAAH,OAAA,QAAAH,KAAA;IAAA,OAAAI,MAAA,CAAAG,KAAA,OAAAC,SAAA;EAAA;EAAA,IAAAC,aAAA,CAAAN,OAAA,EAAAH,KAAA;IAAAU,GAAA;IAAAC,KAAA,EAChB,SAAAC,QAAQC,GAAM,EAAE;MACd,IAAI,CAACC,IAAI,CAACD,GAAG,CAAC;IAChB;EAAC;IAAAH,GAAA;IAAAC,KAAA,EAED,SAAAI,QAAA,EAAyB;MACvB,OAAO,IAAI,CAACC,KAAK,CAAC,CAAC;IACrB;EAAC;IAAAN,GAAA;IAAAC,KAAA,EAED,SAAAM,KAAA,EAAU;MACR,OAAO,IAAI,CAAC,CAAC,CAAC;IAChB;EAAC;IAAAP,GAAA;IAAAC,KAAA,EAED,SAAAO,QAAA,EAAU;MACR,OAAO,IAAI,CAACC,MAAM,KAAK,CAAC;IAC1B;EAAC;EAAA,OAAAnB,KAAA;AAAA,MAAAoB,iBAAA,CAAAjB,OAAA,EAf2BkB,KAAK;AAAAC,OAAA,CAAAtB,KAAA,GAAAA,KAAA"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Do milliseconds time conversion to readable time string.
|
|
3
|
+
* @param tile - 3d-tiles tile Object
|
|
4
|
+
* @param coordinates - node converted coordinates
|
|
5
|
+
* @returns String which characterizes conversion time period
|
|
6
|
+
*/
|
|
7
|
+
export function timeConverter(time: [number, number]): String;
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* Calculate files sizes after conversion.
|
|
11
|
+
* @param params - Object with params of conversion.
|
|
12
|
+
* @returns Promise with generated files size in bytes.
|
|
13
|
+
*/
|
|
14
|
+
export function calculateFilesSize(params: {
|
|
15
|
+
slpk: boolean;
|
|
16
|
+
outputPath: string;
|
|
17
|
+
tilesetName: string;
|
|
18
|
+
}): Number;
|
|
19
|
+
|
|
20
|
+
/**
|
|
21
|
+
* Reqursivelly calculate files sizes in directory.
|
|
22
|
+
* @param dirPath - Directory path.
|
|
23
|
+
* @returns Promise with files size in directory.
|
|
24
|
+
*/
|
|
25
|
+
export function getTotalFilesSize(dirPath: string): Number;
|
|
@@ -0,0 +1,147 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.calculateFilesSize = calculateFilesSize;
|
|
8
|
+
exports.timeConverter = timeConverter;
|
|
9
|
+
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
10
|
+
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
11
|
+
var _path = require("path");
|
|
12
|
+
var _fs = require("fs");
|
|
13
|
+
var _fileUtils = require("./file-utils");
|
|
14
|
+
function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
|
|
15
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
16
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
17
|
+
function timeConverter(time) {
|
|
18
|
+
var nanoSecondsInMillisecond = 1e6;
|
|
19
|
+
var timeInSeconds = time[0];
|
|
20
|
+
var hours = Math.floor(timeInSeconds / 3600);
|
|
21
|
+
timeInSeconds = timeInSeconds - hours * 3600;
|
|
22
|
+
var minutes = Math.floor(timeInSeconds / 60);
|
|
23
|
+
timeInSeconds = timeInSeconds - minutes * 60;
|
|
24
|
+
var seconds = Math.floor(timeInSeconds);
|
|
25
|
+
var milliseconds = time[1] / nanoSecondsInMillisecond;
|
|
26
|
+
var result = '';
|
|
27
|
+
if (hours) {
|
|
28
|
+
result += "".concat(hours, "h ");
|
|
29
|
+
}
|
|
30
|
+
if (minutes) {
|
|
31
|
+
result += "".concat(minutes, "m ");
|
|
32
|
+
}
|
|
33
|
+
if (seconds) {
|
|
34
|
+
result += "".concat(seconds, "s");
|
|
35
|
+
}
|
|
36
|
+
if (!result) {
|
|
37
|
+
result += "".concat(milliseconds, "ms");
|
|
38
|
+
}
|
|
39
|
+
return result;
|
|
40
|
+
}
|
|
41
|
+
function calculateFilesSize(_x) {
|
|
42
|
+
return _calculateFilesSize.apply(this, arguments);
|
|
43
|
+
}
|
|
44
|
+
function _calculateFilesSize() {
|
|
45
|
+
_calculateFilesSize = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee(params) {
|
|
46
|
+
var slpk, outputPath, tilesetName, fullOutputPath, slpkPath, stat, directoryPath, totalSize;
|
|
47
|
+
return _regenerator.default.wrap(function _callee$(_context) {
|
|
48
|
+
while (1) switch (_context.prev = _context.next) {
|
|
49
|
+
case 0:
|
|
50
|
+
slpk = params.slpk, outputPath = params.outputPath, tilesetName = params.tilesetName;
|
|
51
|
+
fullOutputPath = (0, _fileUtils.getAbsoluteFilePath)(outputPath);
|
|
52
|
+
_context.prev = 2;
|
|
53
|
+
if (!slpk) {
|
|
54
|
+
_context.next = 9;
|
|
55
|
+
break;
|
|
56
|
+
}
|
|
57
|
+
slpkPath = (0, _path.join)(fullOutputPath, "".concat(tilesetName, ".slpk"));
|
|
58
|
+
_context.next = 7;
|
|
59
|
+
return _fs.promises.stat(slpkPath);
|
|
60
|
+
case 7:
|
|
61
|
+
stat = _context.sent;
|
|
62
|
+
return _context.abrupt("return", stat.size);
|
|
63
|
+
case 9:
|
|
64
|
+
directoryPath = (0, _path.join)(fullOutputPath, tilesetName);
|
|
65
|
+
_context.next = 12;
|
|
66
|
+
return getTotalFilesSize(directoryPath);
|
|
67
|
+
case 12:
|
|
68
|
+
totalSize = _context.sent;
|
|
69
|
+
return _context.abrupt("return", totalSize);
|
|
70
|
+
case 16:
|
|
71
|
+
_context.prev = 16;
|
|
72
|
+
_context.t0 = _context["catch"](2);
|
|
73
|
+
console.log('Calculate file sizes error: ', _context.t0);
|
|
74
|
+
return _context.abrupt("return", null);
|
|
75
|
+
case 20:
|
|
76
|
+
case "end":
|
|
77
|
+
return _context.stop();
|
|
78
|
+
}
|
|
79
|
+
}, _callee, null, [[2, 16]]);
|
|
80
|
+
}));
|
|
81
|
+
return _calculateFilesSize.apply(this, arguments);
|
|
82
|
+
}
|
|
83
|
+
function getTotalFilesSize(_x2) {
|
|
84
|
+
return _getTotalFilesSize.apply(this, arguments);
|
|
85
|
+
}
|
|
86
|
+
function _getTotalFilesSize() {
|
|
87
|
+
_getTotalFilesSize = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee2(dirPath) {
|
|
88
|
+
var totalFileSize, files, _iterator, _step, file, fileStat;
|
|
89
|
+
return _regenerator.default.wrap(function _callee2$(_context2) {
|
|
90
|
+
while (1) switch (_context2.prev = _context2.next) {
|
|
91
|
+
case 0:
|
|
92
|
+
totalFileSize = 0;
|
|
93
|
+
_context2.next = 3;
|
|
94
|
+
return _fs.promises.readdir(dirPath);
|
|
95
|
+
case 3:
|
|
96
|
+
files = _context2.sent;
|
|
97
|
+
_iterator = _createForOfIteratorHelper(files);
|
|
98
|
+
_context2.prev = 5;
|
|
99
|
+
_iterator.s();
|
|
100
|
+
case 7:
|
|
101
|
+
if ((_step = _iterator.n()).done) {
|
|
102
|
+
_context2.next = 22;
|
|
103
|
+
break;
|
|
104
|
+
}
|
|
105
|
+
file = _step.value;
|
|
106
|
+
_context2.next = 11;
|
|
107
|
+
return _fs.promises.stat((0, _path.join)(dirPath, file));
|
|
108
|
+
case 11:
|
|
109
|
+
fileStat = _context2.sent;
|
|
110
|
+
if (!fileStat.isDirectory()) {
|
|
111
|
+
_context2.next = 19;
|
|
112
|
+
break;
|
|
113
|
+
}
|
|
114
|
+
_context2.t0 = totalFileSize;
|
|
115
|
+
_context2.next = 16;
|
|
116
|
+
return getTotalFilesSize((0, _path.join)(dirPath, file));
|
|
117
|
+
case 16:
|
|
118
|
+
totalFileSize = _context2.t0 += _context2.sent;
|
|
119
|
+
_context2.next = 20;
|
|
120
|
+
break;
|
|
121
|
+
case 19:
|
|
122
|
+
totalFileSize += fileStat.size;
|
|
123
|
+
case 20:
|
|
124
|
+
_context2.next = 7;
|
|
125
|
+
break;
|
|
126
|
+
case 22:
|
|
127
|
+
_context2.next = 27;
|
|
128
|
+
break;
|
|
129
|
+
case 24:
|
|
130
|
+
_context2.prev = 24;
|
|
131
|
+
_context2.t1 = _context2["catch"](5);
|
|
132
|
+
_iterator.e(_context2.t1);
|
|
133
|
+
case 27:
|
|
134
|
+
_context2.prev = 27;
|
|
135
|
+
_iterator.f();
|
|
136
|
+
return _context2.finish(27);
|
|
137
|
+
case 30:
|
|
138
|
+
return _context2.abrupt("return", totalFileSize);
|
|
139
|
+
case 31:
|
|
140
|
+
case "end":
|
|
141
|
+
return _context2.stop();
|
|
142
|
+
}
|
|
143
|
+
}, _callee2, null, [[5, 24, 27, 30]]);
|
|
144
|
+
}));
|
|
145
|
+
return _getTotalFilesSize.apply(this, arguments);
|
|
146
|
+
}
|
|
147
|
+
//# sourceMappingURL=statistic-utills.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"statistic-utills.js","names":["_path","require","_fs","_fileUtils","_createForOfIteratorHelper","o","allowArrayLike","it","Symbol","iterator","Array","isArray","_unsupportedIterableToArray","length","i","F","s","n","done","value","e","_e","f","TypeError","normalCompletion","didErr","err","call","step","next","_e2","return","minLen","_arrayLikeToArray","Object","prototype","toString","slice","constructor","name","from","test","arr","len","arr2","timeConverter","time","nanoSecondsInMillisecond","timeInSeconds","hours","Math","floor","minutes","seconds","milliseconds","result","concat","calculateFilesSize","_x","_calculateFilesSize","apply","arguments","_asyncToGenerator2","default","_regenerator","mark","_callee","params","slpk","outputPath","tilesetName","fullOutputPath","slpkPath","stat","directoryPath","totalSize","wrap","_callee$","_context","prev","getAbsoluteFilePath","join","fs","sent","abrupt","size","getTotalFilesSize","t0","console","log","stop","_x2","_getTotalFilesSize","_callee2","dirPath","totalFileSize","files","_iterator","_step","file","fileStat","_callee2$","_context2","readdir","isDirectory","t1","finish"],"sources":["../../../../src/lib/utils/statistic-utills.ts"],"sourcesContent":["import {join} from 'path';\nimport {promises as fs} from 'fs';\nimport {getAbsoluteFilePath} from './file-utils';\n\nexport function timeConverter(time) {\n const nanoSecondsInMillisecond = 1e6;\n let timeInSeconds = time[0];\n const hours = Math.floor(timeInSeconds / 3600);\n timeInSeconds = timeInSeconds - hours * 3600;\n const minutes = Math.floor(timeInSeconds / 60);\n timeInSeconds = timeInSeconds - minutes * 60;\n const seconds = Math.floor(timeInSeconds);\n const milliseconds = time[1] / nanoSecondsInMillisecond;\n let result = '';\n\n if (hours) {\n result += `${hours}h `;\n }\n\n if (minutes) {\n result += `${minutes}m `;\n }\n\n if (seconds) {\n result += `${seconds}s`;\n }\n\n if (!result) {\n result += `${milliseconds}ms`;\n }\n\n return result;\n}\n\nexport async function calculateFilesSize(params) {\n const {slpk, outputPath, tilesetName} = params;\n const fullOutputPath = getAbsoluteFilePath(outputPath);\n\n try {\n if (slpk) {\n const slpkPath = join(fullOutputPath, `${tilesetName}.slpk`);\n const stat = await fs.stat(slpkPath);\n return stat.size;\n }\n\n const directoryPath = join(fullOutputPath, tilesetName);\n const totalSize = await getTotalFilesSize(directoryPath);\n return totalSize;\n } catch (error) {\n console.log('Calculate file sizes error: ', error); // eslint-disable-line\n return null;\n }\n}\n\nasync function getTotalFilesSize(dirPath) {\n let totalFileSize = 0;\n\n const files = await fs.readdir(dirPath);\n\n for (const file of files) {\n const fileStat = await fs.stat(join(dirPath, file));\n if (fileStat.isDirectory()) {\n totalFileSize += await getTotalFilesSize(join(dirPath, file));\n } else {\n totalFileSize += fileStat.size;\n }\n }\n return totalFileSize;\n}\n"],"mappings":";;;;;;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,GAAA,GAAAD,OAAA;AACA,IAAAE,UAAA,GAAAF,OAAA;AAAiD,SAAAG,2BAAAC,CAAA,EAAAC,cAAA,QAAAC,EAAA,UAAAC,MAAA,oBAAAH,CAAA,CAAAG,MAAA,CAAAC,QAAA,KAAAJ,CAAA,qBAAAE,EAAA,QAAAG,KAAA,CAAAC,OAAA,CAAAN,CAAA,MAAAE,EAAA,GAAAK,2BAAA,CAAAP,CAAA,MAAAC,cAAA,IAAAD,CAAA,WAAAA,CAAA,CAAAQ,MAAA,qBAAAN,EAAA,EAAAF,CAAA,GAAAE,EAAA,MAAAO,CAAA,UAAAC,CAAA,YAAAA,EAAA,eAAAC,CAAA,EAAAD,CAAA,EAAAE,CAAA,WAAAA,EAAA,QAAAH,CAAA,IAAAT,CAAA,CAAAQ,MAAA,WAAAK,IAAA,mBAAAA,IAAA,SAAAC,KAAA,EAAAd,CAAA,CAAAS,CAAA,UAAAM,CAAA,WAAAA,EAAAC,EAAA,UAAAA,EAAA,KAAAC,CAAA,EAAAP,CAAA,gBAAAQ,SAAA,iJAAAC,gBAAA,SAAAC,MAAA,UAAAC,GAAA,WAAAV,CAAA,WAAAA,EAAA,IAAAT,EAAA,GAAAA,EAAA,CAAAoB,IAAA,CAAAtB,CAAA,MAAAY,CAAA,WAAAA,EAAA,QAAAW,IAAA,GAAArB,EAAA,CAAAsB,IAAA,IAAAL,gBAAA,GAAAI,IAAA,CAAAV,IAAA,SAAAU,IAAA,KAAAR,CAAA,WAAAA,EAAAU,GAAA,IAAAL,MAAA,SAAAC,GAAA,GAAAI,GAAA,KAAAR,CAAA,WAAAA,EAAA,eAAAE,gBAAA,IAAAjB,EAAA,CAAAwB,MAAA,UAAAxB,EAAA,CAAAwB,MAAA,oBAAAN,MAAA,QAAAC,GAAA;AAAA,SAAAd,4BAAAP,CAAA,EAAA2B,MAAA,SAAA3B,CAAA,qBAAAA,CAAA,sBAAA4B,iBAAA,CAAA5B,CAAA,EAAA2B,MAAA,OAAAf,CAAA,GAAAiB,MAAA,CAAAC,SAAA,CAAAC,QAAA,CAAAT,IAAA,CAAAtB,CAAA,EAAAgC,KAAA,aAAApB,CAAA,iBAAAZ,CAAA,CAAAiC,WAAA,EAAArB,CAAA,GAAAZ,CAAA,CAAAiC,WAAA,CAAAC,IAAA,MAAAtB,CAAA,cAAAA,CAAA,mBAAAP,KAAA,CAAA8B,IAAA,CAAAnC,CAAA,OAAAY,CAAA,+DAAAwB,IAAA,CAAAxB,CAAA,UAAAgB,iBAAA,CAAA5B,CAAA,EAAA2B,MAAA;AAAA,SAAAC,kBAAAS,GAAA,EAAAC,GAAA,QAAAA,GAAA,YAAAA,GAAA,GAAAD,GAAA,CAAA7B,MAAA,EAAA8B,GAAA,GAAAD,GAAA,CAAA7B,MAAA,WAAAC,CAAA,MAAA8B,IAAA,OAAAlC,KAAA,CAAAiC,GAAA,GAAA7B,CAAA,GAAA6B,GAAA,EAAA7B,CAAA,IAAA8B,IAAA,CAAA9B,CAAA,IAAA4B,GAAA,CAAA5B,CAAA,UAAA8B,IAAA;AAE1C,SAASC,aAAaA,CAACC,IAAI,EAAE;EAClC,IAAMC,wBAAwB,GAAG,GAAG;EACpC,IAAIC,aAAa,GAAGF,IAAI,CAAC,CAAC,CAAC;EAC3B,IAAMG,KAAK,GAAGC,IAAI,CAACC,KAAK,CAACH,aAAa,GAAG,IAAI,CAAC;EAC9CA,aAAa,GAAGA,aAAa,GAAGC,KAAK,GAAG,IAAI;EAC5C,IAAMG,OAAO,GAAGF,IAAI,CAACC,KAAK,CAACH,aAAa,GAAG,EAAE,CAAC;EAC9CA,aAAa,GAAGA,aAAa,GAAGI,OAAO,GAAG,EAAE;EAC5C,IAAMC,OAAO,GAAGH,IAAI,CAACC,KAAK,CAACH,aAAa,CAAC;EACzC,IAAMM,YAAY,GAAGR,IAAI,CAAC,CAAC,CAAC,GAAGC,wBAAwB;EACvD,IAAIQ,MAAM,GAAG,EAAE;EAEf,IAAIN,KAAK,EAAE;IACTM,MAAM,OAAAC,MAAA,CAAOP,KAAK,OAAI;EACxB;EAEA,IAAIG,OAAO,EAAE;IACXG,MAAM,OAAAC,MAAA,CAAOJ,OAAO,OAAI;EAC1B;EAEA,IAAIC,OAAO,EAAE;IACXE,MAAM,OAAAC,MAAA,CAAOH,OAAO,MAAG;EACzB;EAEA,IAAI,CAACE,MAAM,EAAE;IACXA,MAAM,OAAAC,MAAA,CAAOF,YAAY,OAAI;EAC/B;EAEA,OAAOC,MAAM;AACf;AAAC,SAEqBE,kBAAkBA,CAAAC,EAAA;EAAA,OAAAC,mBAAA,CAAAC,KAAA,OAAAC,SAAA;AAAA;AAAA,SAAAF,oBAAA;EAAAA,mBAAA,OAAAG,kBAAA,CAAAC,OAAA,EAAAC,YAAA,CAAAD,OAAA,CAAAE,IAAA,CAAjC,SAAAC,QAAkCC,MAAM;IAAA,IAAAC,IAAA,EAAAC,UAAA,EAAAC,WAAA,EAAAC,cAAA,EAAAC,QAAA,EAAAC,IAAA,EAAAC,aAAA,EAAAC,SAAA;IAAA,OAAAX,YAAA,CAAAD,OAAA,CAAAa,IAAA,UAAAC,SAAAC,QAAA;MAAA,kBAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAjD,IAAA;QAAA;UACtCuC,IAAI,GAA6BD,MAAM,CAAvCC,IAAI,EAAEC,UAAU,GAAiBF,MAAM,CAAjCE,UAAU,EAAEC,WAAW,GAAIH,MAAM,CAArBG,WAAW;UAC9BC,cAAc,GAAG,IAAAS,8BAAmB,EAACX,UAAU,CAAC;UAAAS,QAAA,CAAAC,IAAA;UAAA,KAGhDX,IAAI;YAAAU,QAAA,CAAAjD,IAAA;YAAA;UAAA;UACA2C,QAAQ,GAAG,IAAAS,UAAI,EAACV,cAAc,KAAAf,MAAA,CAAKc,WAAW,UAAO,CAAC;UAAAQ,QAAA,CAAAjD,IAAA;UAAA,OACzCqD,YAAE,CAACT,IAAI,CAACD,QAAQ,CAAC;QAAA;UAA9BC,IAAI,GAAAK,QAAA,CAAAK,IAAA;UAAA,OAAAL,QAAA,CAAAM,MAAA,WACHX,IAAI,CAACY,IAAI;QAAA;UAGZX,aAAa,GAAG,IAAAO,UAAI,EAACV,cAAc,EAAED,WAAW,CAAC;UAAAQ,QAAA,CAAAjD,IAAA;UAAA,OAC/ByD,iBAAiB,CAACZ,aAAa,CAAC;QAAA;UAAlDC,SAAS,GAAAG,QAAA,CAAAK,IAAA;UAAA,OAAAL,QAAA,CAAAM,MAAA,WACRT,SAAS;QAAA;UAAAG,QAAA,CAAAC,IAAA;UAAAD,QAAA,CAAAS,EAAA,GAAAT,QAAA;UAEhBU,OAAO,CAACC,GAAG,CAAC,8BAA8B,EAAAX,QAAA,CAAAS,EAAO,CAAC;UAAC,OAAAT,QAAA,CAAAM,MAAA,WAC5C,IAAI;QAAA;QAAA;UAAA,OAAAN,QAAA,CAAAY,IAAA;MAAA;IAAA,GAAAxB,OAAA;EAAA,CAEd;EAAA,OAAAP,mBAAA,CAAAC,KAAA,OAAAC,SAAA;AAAA;AAAA,SAEcyB,iBAAiBA,CAAAK,GAAA;EAAA,OAAAC,kBAAA,CAAAhC,KAAA,OAAAC,SAAA;AAAA;AAAA,SAAA+B,mBAAA;EAAAA,kBAAA,OAAA9B,kBAAA,CAAAC,OAAA,EAAAC,YAAA,CAAAD,OAAA,CAAAE,IAAA,CAAhC,SAAA4B,SAAiCC,OAAO;IAAA,IAAAC,aAAA,EAAAC,KAAA,EAAAC,SAAA,EAAAC,KAAA,EAAAC,IAAA,EAAAC,QAAA;IAAA,OAAApC,YAAA,CAAAD,OAAA,CAAAa,IAAA,UAAAyB,UAAAC,SAAA;MAAA,kBAAAA,SAAA,CAAAvB,IAAA,GAAAuB,SAAA,CAAAzE,IAAA;QAAA;UAClCkE,aAAa,GAAG,CAAC;UAAAO,SAAA,CAAAzE,IAAA;UAAA,OAEDqD,YAAE,CAACqB,OAAO,CAACT,OAAO,CAAC;QAAA;UAAjCE,KAAK,GAAAM,SAAA,CAAAnB,IAAA;UAAAc,SAAA,GAAA7F,0BAAA,CAEQ4F,KAAK;UAAAM,SAAA,CAAAvB,IAAA;UAAAkB,SAAA,CAAAjF,CAAA;QAAA;UAAA,KAAAkF,KAAA,GAAAD,SAAA,CAAAhF,CAAA,IAAAC,IAAA;YAAAoF,SAAA,CAAAzE,IAAA;YAAA;UAAA;UAAbsE,IAAI,GAAAD,KAAA,CAAA/E,KAAA;UAAAmF,SAAA,CAAAzE,IAAA;UAAA,OACUqD,YAAE,CAACT,IAAI,CAAC,IAAAQ,UAAI,EAACa,OAAO,EAAEK,IAAI,CAAC,CAAC;QAAA;UAA7CC,QAAQ,GAAAE,SAAA,CAAAnB,IAAA;UAAA,KACViB,QAAQ,CAACI,WAAW,CAAC,CAAC;YAAAF,SAAA,CAAAzE,IAAA;YAAA;UAAA;UAAAyE,SAAA,CAAAf,EAAA,GACxBQ,aAAa;UAAAO,SAAA,CAAAzE,IAAA;UAAA,OAAUyD,iBAAiB,CAAC,IAAAL,UAAI,EAACa,OAAO,EAAEK,IAAI,CAAC,CAAC;QAAA;UAA7DJ,aAAa,GAAAO,SAAA,CAAAf,EAAA,IAAAe,SAAA,CAAAnB,IAAA;UAAAmB,SAAA,CAAAzE,IAAA;UAAA;QAAA;UAEbkE,aAAa,IAAIK,QAAQ,CAACf,IAAI;QAAC;UAAAiB,SAAA,CAAAzE,IAAA;UAAA;QAAA;UAAAyE,SAAA,CAAAzE,IAAA;UAAA;QAAA;UAAAyE,SAAA,CAAAvB,IAAA;UAAAuB,SAAA,CAAAG,EAAA,GAAAH,SAAA;UAAAL,SAAA,CAAA7E,CAAA,CAAAkF,SAAA,CAAAG,EAAA;QAAA;UAAAH,SAAA,CAAAvB,IAAA;UAAAkB,SAAA,CAAA3E,CAAA;UAAA,OAAAgF,SAAA,CAAAI,MAAA;QAAA;UAAA,OAAAJ,SAAA,CAAAlB,MAAA,WAG5BW,aAAa;QAAA;QAAA;UAAA,OAAAO,SAAA,CAAAZ,IAAA;MAAA;IAAA,GAAAG,QAAA;EAAA,CACrB;EAAA,OAAAD,kBAAA,CAAAhC,KAAA,OAAAC,SAAA;AAAA"}
|
|
@@ -0,0 +1,214 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.default = void 0;
|
|
8
|
+
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
9
|
+
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
10
|
+
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
11
|
+
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
12
|
+
var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
|
|
13
|
+
var _get2 = _interopRequireDefault(require("@babel/runtime/helpers/get"));
|
|
14
|
+
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
15
|
+
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
16
|
+
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
17
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
18
|
+
var _queue = require("./queue");
|
|
19
|
+
var _process = _interopRequireDefault(require("process"));
|
|
20
|
+
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
|
|
21
|
+
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
22
|
+
var MEMORY_LIMIT = 4 * 1024 * 1024 * 1024;
|
|
23
|
+
var WriteQueue = function (_Queue) {
|
|
24
|
+
(0, _inherits2.default)(WriteQueue, _Queue);
|
|
25
|
+
var _super = _createSuper(WriteQueue);
|
|
26
|
+
function WriteQueue() {
|
|
27
|
+
var _this;
|
|
28
|
+
var listeningInterval = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 2000;
|
|
29
|
+
var writeConcurrency = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 400;
|
|
30
|
+
(0, _classCallCheck2.default)(this, WriteQueue);
|
|
31
|
+
_this = _super.call(this);
|
|
32
|
+
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "intervalId", void 0);
|
|
33
|
+
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "writePromise", null);
|
|
34
|
+
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "fileMap", {});
|
|
35
|
+
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "listeningInterval", void 0);
|
|
36
|
+
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "writeConcurrency", void 0);
|
|
37
|
+
_this.listeningInterval = listeningInterval;
|
|
38
|
+
_this.writeConcurrency = writeConcurrency;
|
|
39
|
+
return _this;
|
|
40
|
+
}
|
|
41
|
+
(0, _createClass2.default)(WriteQueue, [{
|
|
42
|
+
key: "enqueue",
|
|
43
|
+
value: function () {
|
|
44
|
+
var _enqueue = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee(val) {
|
|
45
|
+
var writeImmediately,
|
|
46
|
+
_ref,
|
|
47
|
+
archiveKey,
|
|
48
|
+
writePromise,
|
|
49
|
+
result,
|
|
50
|
+
_args = arguments;
|
|
51
|
+
return _regenerator.default.wrap(function _callee$(_context) {
|
|
52
|
+
while (1) switch (_context.prev = _context.next) {
|
|
53
|
+
case 0:
|
|
54
|
+
writeImmediately = _args.length > 1 && _args[1] !== undefined ? _args[1] : false;
|
|
55
|
+
if (!writeImmediately) {
|
|
56
|
+
_context.next = 9;
|
|
57
|
+
break;
|
|
58
|
+
}
|
|
59
|
+
_ref = val, archiveKey = _ref.archiveKey, writePromise = _ref.writePromise;
|
|
60
|
+
_context.next = 5;
|
|
61
|
+
return writePromise();
|
|
62
|
+
case 5:
|
|
63
|
+
result = _context.sent;
|
|
64
|
+
if (archiveKey && result) {
|
|
65
|
+
this.fileMap[archiveKey] = result;
|
|
66
|
+
}
|
|
67
|
+
_context.next = 13;
|
|
68
|
+
break;
|
|
69
|
+
case 9:
|
|
70
|
+
(0, _get2.default)((0, _getPrototypeOf2.default)(WriteQueue.prototype), "enqueue", this).call(this, val);
|
|
71
|
+
if (!(_process.default.memoryUsage().rss > MEMORY_LIMIT)) {
|
|
72
|
+
_context.next = 13;
|
|
73
|
+
break;
|
|
74
|
+
}
|
|
75
|
+
_context.next = 13;
|
|
76
|
+
return this.startWrite();
|
|
77
|
+
case 13:
|
|
78
|
+
case "end":
|
|
79
|
+
return _context.stop();
|
|
80
|
+
}
|
|
81
|
+
}, _callee, this);
|
|
82
|
+
}));
|
|
83
|
+
function enqueue(_x) {
|
|
84
|
+
return _enqueue.apply(this, arguments);
|
|
85
|
+
}
|
|
86
|
+
return enqueue;
|
|
87
|
+
}()
|
|
88
|
+
}, {
|
|
89
|
+
key: "startListening",
|
|
90
|
+
value: function startListening() {
|
|
91
|
+
this.intervalId = setInterval(this.startWrite.bind(this), this.listeningInterval);
|
|
92
|
+
}
|
|
93
|
+
}, {
|
|
94
|
+
key: "stopListening",
|
|
95
|
+
value: function stopListening() {
|
|
96
|
+
if (this.intervalId) {
|
|
97
|
+
clearInterval(this.intervalId);
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
}, {
|
|
101
|
+
key: "startWrite",
|
|
102
|
+
value: function () {
|
|
103
|
+
var _startWrite = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee2() {
|
|
104
|
+
return _regenerator.default.wrap(function _callee2$(_context2) {
|
|
105
|
+
while (1) switch (_context2.prev = _context2.next) {
|
|
106
|
+
case 0:
|
|
107
|
+
if (!this.writePromise) {
|
|
108
|
+
this.writePromise = this.doWrite();
|
|
109
|
+
}
|
|
110
|
+
_context2.next = 3;
|
|
111
|
+
return this.writePromise;
|
|
112
|
+
case 3:
|
|
113
|
+
this.writePromise = null;
|
|
114
|
+
case 4:
|
|
115
|
+
case "end":
|
|
116
|
+
return _context2.stop();
|
|
117
|
+
}
|
|
118
|
+
}, _callee2, this);
|
|
119
|
+
}));
|
|
120
|
+
function startWrite() {
|
|
121
|
+
return _startWrite.apply(this, arguments);
|
|
122
|
+
}
|
|
123
|
+
return startWrite;
|
|
124
|
+
}()
|
|
125
|
+
}, {
|
|
126
|
+
key: "finalize",
|
|
127
|
+
value: function () {
|
|
128
|
+
var _finalize = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee3() {
|
|
129
|
+
return _regenerator.default.wrap(function _callee3$(_context3) {
|
|
130
|
+
while (1) switch (_context3.prev = _context3.next) {
|
|
131
|
+
case 0:
|
|
132
|
+
this.stopListening();
|
|
133
|
+
_context3.next = 3;
|
|
134
|
+
return this.startWrite();
|
|
135
|
+
case 3:
|
|
136
|
+
case "end":
|
|
137
|
+
return _context3.stop();
|
|
138
|
+
}
|
|
139
|
+
}, _callee3, this);
|
|
140
|
+
}));
|
|
141
|
+
function finalize() {
|
|
142
|
+
return _finalize.apply(this, arguments);
|
|
143
|
+
}
|
|
144
|
+
return finalize;
|
|
145
|
+
}()
|
|
146
|
+
}, {
|
|
147
|
+
key: "doWrite",
|
|
148
|
+
value: function () {
|
|
149
|
+
var _doWrite = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee4() {
|
|
150
|
+
var promises, archiveKeys, i, item, _ref2, archiveKey, writePromise, promise, writeResults;
|
|
151
|
+
return _regenerator.default.wrap(function _callee4$(_context4) {
|
|
152
|
+
while (1) switch (_context4.prev = _context4.next) {
|
|
153
|
+
case 0:
|
|
154
|
+
if (!this.length) {
|
|
155
|
+
_context4.next = 21;
|
|
156
|
+
break;
|
|
157
|
+
}
|
|
158
|
+
promises = [];
|
|
159
|
+
archiveKeys = [];
|
|
160
|
+
i = 0;
|
|
161
|
+
case 4:
|
|
162
|
+
if (!(i < this.writeConcurrency)) {
|
|
163
|
+
_context4.next = 15;
|
|
164
|
+
break;
|
|
165
|
+
}
|
|
166
|
+
item = this.dequeue();
|
|
167
|
+
if (item) {
|
|
168
|
+
_context4.next = 8;
|
|
169
|
+
break;
|
|
170
|
+
}
|
|
171
|
+
return _context4.abrupt("break", 15);
|
|
172
|
+
case 8:
|
|
173
|
+
_ref2 = item, archiveKey = _ref2.archiveKey, writePromise = _ref2.writePromise;
|
|
174
|
+
archiveKeys.push(archiveKey);
|
|
175
|
+
promise = writePromise();
|
|
176
|
+
promises.push(promise);
|
|
177
|
+
case 12:
|
|
178
|
+
i++;
|
|
179
|
+
_context4.next = 4;
|
|
180
|
+
break;
|
|
181
|
+
case 15:
|
|
182
|
+
_context4.next = 17;
|
|
183
|
+
return Promise.allSettled(promises);
|
|
184
|
+
case 17:
|
|
185
|
+
writeResults = _context4.sent;
|
|
186
|
+
this.updateFileMap(archiveKeys, writeResults);
|
|
187
|
+
_context4.next = 0;
|
|
188
|
+
break;
|
|
189
|
+
case 21:
|
|
190
|
+
case "end":
|
|
191
|
+
return _context4.stop();
|
|
192
|
+
}
|
|
193
|
+
}, _callee4, this);
|
|
194
|
+
}));
|
|
195
|
+
function doWrite() {
|
|
196
|
+
return _doWrite.apply(this, arguments);
|
|
197
|
+
}
|
|
198
|
+
return doWrite;
|
|
199
|
+
}()
|
|
200
|
+
}, {
|
|
201
|
+
key: "updateFileMap",
|
|
202
|
+
value: function updateFileMap(archiveKeys, writeResults) {
|
|
203
|
+
for (var i = 0; i < archiveKeys.length; i++) {
|
|
204
|
+
var archiveKey = archiveKeys[i];
|
|
205
|
+
if (archiveKey && 'value' in writeResults[i]) {
|
|
206
|
+
this.fileMap[archiveKey] = writeResults[i].value;
|
|
207
|
+
}
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
}]);
|
|
211
|
+
return WriteQueue;
|
|
212
|
+
}(_queue.Queue);
|
|
213
|
+
exports.default = WriteQueue;
|
|
214
|
+
//# sourceMappingURL=write-queue.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"write-queue.js","names":["_queue","require","_process","_interopRequireDefault","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","default","result","NewTarget","constructor","Reflect","construct","arguments","apply","_possibleConstructorReturn2","sham","Proxy","Boolean","prototype","valueOf","call","e","MEMORY_LIMIT","WriteQueue","_Queue","_inherits2","_super","_this","listeningInterval","length","undefined","writeConcurrency","_classCallCheck2","_defineProperty2","_assertThisInitialized2","_createClass2","key","value","_enqueue","_asyncToGenerator2","_regenerator","mark","_callee","val","writeImmediately","_ref","archiveKey","writePromise","_args","wrap","_callee$","_context","prev","next","sent","fileMap","_get2","process","memoryUsage","rss","startWrite","stop","enqueue","_x","startListening","intervalId","setInterval","bind","stopListening","clearInterval","_startWrite","_callee2","_callee2$","_context2","doWrite","_finalize","_callee3","_callee3$","_context3","finalize","_doWrite","_callee4","promises","archiveKeys","i","item","_ref2","promise","writeResults","_callee4$","_context4","dequeue","abrupt","push","Promise","allSettled","updateFileMap","Queue","exports"],"sources":["../../../../src/lib/utils/write-queue.ts"],"sourcesContent":["import {Queue} from './queue';\nimport process from 'process';\n\n/** Memory limit size is based on testing */\nconst MEMORY_LIMIT = 4 * 1024 * 1024 * 1024; // 4GB\n\nexport type WriteQueueItem = {\n archiveKey?: string;\n /**\n * writePromise() returns a Promise that will be awaited in Promise.allSettled(promises);\n * Arguments for this call are specified in writeQueue.enqueue call like this:\n * await writeQueue.enqueue({\n * archiveKey: `nodePages/xxx.json.gz`,\n * writePromise: () => writeFileForSlpk(slpkPath, data, `xxx.json`)\n * });\n * Note, a function like writeFileForSlpk should NOT be called when initializing the object for enqueue().\n * If he function is called, the promise will be created\n * and the function will allocate resources (file descriptors) for file writing.\n * It will be done for ALL items in the queue, which is not supposed to happen.\n * That's why the function should be passed as\n * writePromise: () => writeFileForSlpk(slpkPath, content, `xxx.json`)\n * instead of\n * writePromise: writeFileForSlpk(slpkPath, content, `xxx.json`) // INCORRECT !\n */\n writePromise: () => Promise<string | null>;\n};\n\nexport default class WriteQueue<T extends WriteQueueItem> extends Queue<T> {\n private intervalId?: NodeJS.Timeout;\n public writePromise: Promise<void> | null = null;\n public fileMap: {[key: string]: string} = {};\n public listeningInterval: number;\n public writeConcurrency: number;\n\n constructor(listeningInterval: number = 2000, writeConcurrency: number = 400) {\n super();\n this.listeningInterval = listeningInterval;\n this.writeConcurrency = writeConcurrency;\n }\n\n async enqueue(val: T, writeImmediately: boolean = false) {\n if (writeImmediately) {\n const {archiveKey, writePromise} = val as WriteQueueItem;\n const result = await writePromise();\n if (archiveKey && result) {\n this.fileMap[archiveKey] = result;\n }\n } else {\n super.enqueue(val);\n /** https://nodejs.org/docs/latest-v14.x/api/process.html#process_process_memoryusage */\n if (process.memoryUsage().rss > MEMORY_LIMIT) {\n await this.startWrite();\n }\n }\n }\n\n startListening() {\n this.intervalId = setInterval(this.startWrite.bind(this), this.listeningInterval);\n }\n\n stopListening() {\n if (this.intervalId) {\n clearInterval(this.intervalId);\n }\n }\n\n async startWrite(): Promise<void> {\n if (!this.writePromise) {\n this.writePromise = this.doWrite();\n }\n await this.writePromise;\n this.writePromise = null;\n }\n\n async finalize(): Promise<void> {\n this.stopListening();\n await this.startWrite();\n }\n\n private async doWrite(): Promise<void> {\n while (this.length) {\n const promises: Promise<string | null>[] = [];\n const archiveKeys: (string | undefined)[] = [];\n for (let i = 0; i < this.writeConcurrency; i++) {\n const item = this.dequeue();\n if (!item) {\n break;\n }\n const {archiveKey, writePromise} = item as WriteQueueItem;\n archiveKeys.push(archiveKey);\n const promise = writePromise();\n promises.push(promise);\n }\n const writeResults = await Promise.allSettled(promises);\n this.updateFileMap(archiveKeys, writeResults);\n }\n }\n\n private updateFileMap(\n archiveKeys: (string | undefined)[],\n writeResults: PromiseSettledResult<string | null>[]\n ) {\n for (let i = 0; i < archiveKeys.length; i++) {\n const archiveKey = archiveKeys[i];\n if (archiveKey && 'value' in writeResults[i]) {\n this.fileMap[archiveKey] = (writeResults[i] as PromiseFulfilledResult<string>).value;\n }\n }\n }\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.PGMLoader = void 0;
|
|
8
|
+
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
9
|
+
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
10
|
+
var _geoid = require("@math.gl/geoid");
|
|
11
|
+
var VERSION = typeof "4.0.0-alpha.11" !== 'undefined' ? "4.0.0-alpha.11" : 'latest';
|
|
12
|
+
var PGMLoader = {
|
|
13
|
+
name: 'PGM - Netpbm grayscale image format',
|
|
14
|
+
id: 'pgm',
|
|
15
|
+
module: 'tile-converter',
|
|
16
|
+
version: VERSION,
|
|
17
|
+
mimeTypes: ['image/x-portable-graymap'],
|
|
18
|
+
parse: function () {
|
|
19
|
+
var _parse = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee(arrayBuffer, options) {
|
|
20
|
+
return _regenerator.default.wrap(function _callee$(_context) {
|
|
21
|
+
while (1) switch (_context.prev = _context.next) {
|
|
22
|
+
case 0:
|
|
23
|
+
return _context.abrupt("return", (0, _geoid.parsePGM)(new Uint8Array(arrayBuffer), options));
|
|
24
|
+
case 1:
|
|
25
|
+
case "end":
|
|
26
|
+
return _context.stop();
|
|
27
|
+
}
|
|
28
|
+
}, _callee);
|
|
29
|
+
}));
|
|
30
|
+
function parse(_x, _x2) {
|
|
31
|
+
return _parse.apply(this, arguments);
|
|
32
|
+
}
|
|
33
|
+
return parse;
|
|
34
|
+
}(),
|
|
35
|
+
extensions: ['pgm'],
|
|
36
|
+
options: {
|
|
37
|
+
cubic: false
|
|
38
|
+
}
|
|
39
|
+
};
|
|
40
|
+
exports.PGMLoader = PGMLoader;
|
|
41
|
+
//# sourceMappingURL=pgm-loader.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pgm-loader.js","names":["_geoid","require","VERSION","PGMLoader","name","id","module","version","mimeTypes","parse","_parse","_asyncToGenerator2","default","_regenerator","mark","_callee","arrayBuffer","options","wrap","_callee$","_context","prev","next","abrupt","parsePGM","Uint8Array","stop","_x","_x2","apply","arguments","extensions","cubic","exports"],"sources":["../../src/pgm-loader.ts"],"sourcesContent":["import type {LoaderWithParser} from '@loaders.gl/loader-utils';\nimport {parsePGM} from '@math.gl/geoid';\n\n// __VERSION__ is injected by babel-plugin-version-inline\n// @ts-ignore TS2304: Cannot find name '__VERSION__'.\nconst VERSION = typeof __VERSION__ !== 'undefined' ? __VERSION__ : 'latest';\n\n/**\n * Loader for PGM - Netpbm grayscale image format\n */\nexport const PGMLoader: LoaderWithParser = {\n name: 'PGM - Netpbm grayscale image format',\n id: 'pgm',\n module: 'tile-converter',\n version: VERSION,\n mimeTypes: ['image/x-portable-graymap'],\n // @ts-expect-error LoaderOptions does not have cubic parameter\n parse: async (arrayBuffer, options) => parsePGM(new Uint8Array(arrayBuffer), options),\n extensions: ['pgm'],\n options: {\n // TODO - use pgm namespace\n cubic: false\n }\n};\n"],"mappings":";;;;;;;;;AACA,IAAAA,MAAA,GAAAC,OAAA;AAIA,IAAMC,OAAO,GAAG,uBAAkB,KAAK,WAAW,sBAAiB,QAAQ;AAKpE,IAAMC,SAA2B,GAAG;EACzCC,IAAI,EAAE,qCAAqC;EAC3CC,EAAE,EAAE,KAAK;EACTC,MAAM,EAAE,gBAAgB;EACxBC,OAAO,EAAEL,OAAO;EAChBM,SAAS,EAAE,CAAC,0BAA0B,CAAC;EAEvCC,KAAK;IAAA,IAAAC,MAAA,OAAAC,kBAAA,CAAAC,OAAA,EAAAC,YAAA,CAAAD,OAAA,CAAAE,IAAA,CAAE,SAAAC,QAAOC,WAAW,EAAEC,OAAO;MAAA,OAAAJ,YAAA,CAAAD,OAAA,CAAAM,IAAA,UAAAC,SAAAC,QAAA;QAAA,kBAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAE,IAAA;UAAA;YAAA,OAAAF,QAAA,CAAAG,MAAA,WAAK,IAAAC,eAAQ,EAAC,IAAIC,UAAU,CAACT,WAAW,CAAC,EAAEC,OAAO,CAAC;UAAA;UAAA;YAAA,OAAAG,QAAA,CAAAM,IAAA;QAAA;MAAA,GAAAX,OAAA;IAAA;IAAA,SAAAN,MAAAkB,EAAA,EAAAC,GAAA;MAAA,OAAAlB,MAAA,CAAAmB,KAAA,OAAAC,SAAA;IAAA;IAAA,OAAArB,KAAA;EAAA;EACrFsB,UAAU,EAAE,CAAC,KAAK,CAAC;EACnBd,OAAO,EAAE;IAEPe,KAAK,EAAE;EACT;AACF,CAAC;AAACC,OAAA,CAAA9B,SAAA,GAAAA,SAAA"}
|