@loaders.gl/tile-converter 4.0.0-alpha.13 → 4.0.0-alpha.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (142) hide show
  1. package/bin/i3s-server.js +4 -0
  2. package/dist/3d-tiles-converter/3d-tiles-converter.d.ts +0 -1
  3. package/dist/3d-tiles-converter/3d-tiles-converter.d.ts.map +1 -1
  4. package/dist/3d-tiles-converter/3d-tiles-converter.js +8 -19
  5. package/dist/3d-tiles-converter/helpers/b3dm-converter.d.ts +4 -1
  6. package/dist/3d-tiles-converter/helpers/b3dm-converter.d.ts.map +1 -1
  7. package/dist/converter.min.js +65 -65
  8. package/dist/dist.min.js +881 -261
  9. package/dist/es5/3d-tiles-converter/3d-tiles-converter.js +34 -67
  10. package/dist/es5/3d-tiles-converter/3d-tiles-converter.js.map +1 -1
  11. package/dist/es5/3d-tiles-converter/helpers/b3dm-converter.js.map +1 -1
  12. package/dist/es5/deps-installer/deps-installer.js +1 -1
  13. package/dist/es5/i3s-converter/helpers/batch-ids-extensions.js.map +1 -1
  14. package/dist/es5/i3s-converter/helpers/geometry-converter.js.map +1 -1
  15. package/dist/es5/i3s-converter/helpers/gltf-attributes.js.map +1 -1
  16. package/dist/es5/i3s-converter/i3s-converter.js +36 -43
  17. package/dist/es5/i3s-converter/i3s-converter.js.map +1 -1
  18. package/dist/es5/i3s-converter/types.js.map +1 -1
  19. package/dist/es5/i3s-server/README.md +46 -2
  20. package/dist/es5/i3s-server/app.js +3 -3
  21. package/dist/es5/i3s-server/app.js.map +1 -1
  22. package/dist/es5/i3s-server/bin/www.js +61 -0
  23. package/dist/es5/i3s-server/bin/www.js.map +1 -0
  24. package/dist/es5/i3s-server/controllers/slpk-controller.js +14 -18
  25. package/dist/es5/i3s-server/controllers/slpk-controller.js.map +1 -1
  26. package/dist/es5/index.js +7 -0
  27. package/dist/es5/index.js.map +1 -1
  28. package/dist/es5/pgm-loader.js +1 -1
  29. package/dist/es5/slpk-extractor/helpers/file-handle-provider.js +59 -26
  30. package/dist/es5/slpk-extractor/helpers/file-handle-provider.js.map +1 -1
  31. package/dist/es5/slpk-extractor/helpers/fs-promises.js +77 -0
  32. package/dist/es5/slpk-extractor/helpers/fs-promises.js.map +1 -0
  33. package/dist/es5/slpk-extractor/slpk-extractor.js +7 -7
  34. package/dist/es5/slpk-extractor/slpk-extractor.js.map +1 -1
  35. package/dist/esm/3d-tiles-converter/3d-tiles-converter.js +8 -18
  36. package/dist/esm/3d-tiles-converter/3d-tiles-converter.js.map +1 -1
  37. package/dist/esm/3d-tiles-converter/helpers/b3dm-converter.js.map +1 -1
  38. package/dist/esm/deps-installer/deps-installer.js +1 -1
  39. package/dist/esm/i3s-converter/helpers/batch-ids-extensions.js.map +1 -1
  40. package/dist/esm/i3s-converter/helpers/geometry-converter.js.map +1 -1
  41. package/dist/esm/i3s-converter/helpers/gltf-attributes.js.map +1 -1
  42. package/dist/esm/i3s-converter/i3s-converter.js +5 -8
  43. package/dist/esm/i3s-converter/i3s-converter.js.map +1 -1
  44. package/dist/esm/i3s-converter/types.js.map +1 -1
  45. package/dist/esm/i3s-server/README.md +46 -2
  46. package/dist/esm/i3s-server/app.js +4 -4
  47. package/dist/esm/i3s-server/app.js.map +1 -1
  48. package/dist/esm/i3s-server/bin/i3s-server.min.js +614 -0
  49. package/{src/i3s-server/bin/www → dist/esm/i3s-server/bin/www.js} +12 -55
  50. package/dist/esm/i3s-server/bin/www.js.map +1 -0
  51. package/dist/esm/i3s-server/controllers/slpk-controller.js +6 -12
  52. package/dist/esm/i3s-server/controllers/slpk-controller.js.map +1 -1
  53. package/dist/esm/index.js +1 -0
  54. package/dist/esm/index.js.map +1 -1
  55. package/dist/esm/pgm-loader.js +1 -1
  56. package/dist/esm/slpk-extractor/helpers/file-handle-provider.js +17 -6
  57. package/dist/esm/slpk-extractor/helpers/file-handle-provider.js.map +1 -1
  58. package/dist/esm/slpk-extractor/helpers/fs-promises.js +32 -0
  59. package/dist/esm/slpk-extractor/helpers/fs-promises.js.map +1 -0
  60. package/dist/esm/slpk-extractor/slpk-extractor.js +2 -2
  61. package/dist/esm/slpk-extractor/slpk-extractor.js.map +1 -1
  62. package/dist/i3s-converter/helpers/batch-ids-extensions.d.ts +1 -1
  63. package/dist/i3s-converter/helpers/batch-ids-extensions.d.ts.map +1 -1
  64. package/dist/i3s-converter/helpers/geometry-converter.d.ts +2 -3
  65. package/dist/i3s-converter/helpers/geometry-converter.d.ts.map +1 -1
  66. package/dist/i3s-converter/helpers/gltf-attributes.d.ts +2 -2
  67. package/dist/i3s-converter/helpers/gltf-attributes.d.ts.map +1 -1
  68. package/dist/i3s-converter/i3s-converter.d.ts.map +1 -1
  69. package/dist/i3s-converter/i3s-converter.js +5 -6
  70. package/dist/i3s-converter/types.d.ts +32 -1
  71. package/dist/i3s-converter/types.d.ts.map +1 -1
  72. package/dist/i3s-server/app.d.ts.map +1 -1
  73. package/dist/i3s-server/app.js +1 -1
  74. package/dist/i3s-server/bin/www.d.ts +3 -0
  75. package/dist/i3s-server/bin/www.d.ts.map +1 -0
  76. package/dist/i3s-server/bin/www.js +83 -0
  77. package/dist/i3s-server/controllers/slpk-controller.d.ts.map +1 -1
  78. package/dist/i3s-server/controllers/slpk-controller.js +4 -9
  79. package/dist/index.d.ts +1 -0
  80. package/dist/index.d.ts.map +1 -1
  81. package/dist/index.js +3 -1
  82. package/dist/slpk-extractor/helpers/file-handle-provider.d.ts +15 -12
  83. package/dist/slpk-extractor/helpers/file-handle-provider.d.ts.map +1 -1
  84. package/dist/slpk-extractor/helpers/file-handle-provider.js +25 -10
  85. package/dist/slpk-extractor/helpers/fs-promises.d.ts +38 -0
  86. package/dist/slpk-extractor/helpers/fs-promises.d.ts.map +1 -0
  87. package/dist/slpk-extractor/helpers/fs-promises.js +51 -0
  88. package/dist/slpk-extractor/slpk-extractor.d.ts +2 -2
  89. package/dist/slpk-extractor/slpk-extractor.d.ts.map +1 -1
  90. package/dist/slpk-extractor/slpk-extractor.js +4 -7
  91. package/dist/slpk-extractor.min.js +44 -44
  92. package/package.json +20 -21
  93. package/src/3d-tiles-converter/3d-tiles-converter.ts +10 -28
  94. package/src/3d-tiles-converter/helpers/b3dm-converter.ts +5 -2
  95. package/src/i3s-converter/helpers/batch-ids-extensions.ts +1 -1
  96. package/src/i3s-converter/helpers/geometry-converter.ts +2 -7
  97. package/src/i3s-converter/helpers/gltf-attributes.ts +2 -2
  98. package/src/i3s-converter/i3s-converter.ts +5 -6
  99. package/src/i3s-converter/types.ts +32 -1
  100. package/src/i3s-server/README.md +46 -2
  101. package/src/i3s-server/app.js +1 -1
  102. package/{dist/es5/i3s-server/bin/www → src/i3s-server/bin/www.js} +7 -7
  103. package/src/i3s-server/controllers/slpk-controller.js +4 -11
  104. package/src/index.ts +1 -0
  105. package/src/slpk-extractor/helpers/file-handle-provider.ts +36 -18
  106. package/src/slpk-extractor/helpers/fs-promises.ts +66 -0
  107. package/src/slpk-extractor/slpk-extractor.ts +5 -6
  108. package/dist/3d-tiles-attributes-worker.d.ts +0 -28
  109. package/dist/3d-tiles-attributes-worker.d.ts.map +0 -1
  110. package/dist/3d-tiles-attributes-worker.js +0 -3
  111. package/dist/3d-tiles-attributes-worker.js.map +0 -7
  112. package/dist/es5/3d-tiles-attributes-worker.js +0 -25
  113. package/dist/es5/3d-tiles-attributes-worker.js.map +0 -1
  114. package/dist/es5/i3s-attributes-worker.js +0 -25
  115. package/dist/es5/i3s-attributes-worker.js.map +0 -1
  116. package/dist/es5/workers/3d-tiles-attributes-worker.js +0 -28
  117. package/dist/es5/workers/3d-tiles-attributes-worker.js.map +0 -1
  118. package/dist/es5/workers/i3s-attributes-worker.js +0 -30
  119. package/dist/es5/workers/i3s-attributes-worker.js.map +0 -1
  120. package/dist/esm/3d-tiles-attributes-worker.js +0 -16
  121. package/dist/esm/3d-tiles-attributes-worker.js.map +0 -1
  122. package/dist/esm/i3s-attributes-worker.js +0 -16
  123. package/dist/esm/i3s-attributes-worker.js.map +0 -1
  124. package/dist/esm/i3s-server/bin/www +0 -102
  125. package/dist/esm/workers/3d-tiles-attributes-worker.js +0 -8
  126. package/dist/esm/workers/3d-tiles-attributes-worker.js.map +0 -1
  127. package/dist/esm/workers/i3s-attributes-worker.js +0 -7
  128. package/dist/esm/workers/i3s-attributes-worker.js.map +0 -1
  129. package/dist/i3s-attributes-worker.d.ts +0 -45
  130. package/dist/i3s-attributes-worker.d.ts.map +0 -1
  131. package/dist/i3s-attributes-worker.js +0 -9
  132. package/dist/i3s-attributes-worker.js.map +0 -7
  133. package/dist/workers/3d-tiles-attributes-worker.d.ts +0 -2
  134. package/dist/workers/3d-tiles-attributes-worker.d.ts.map +0 -1
  135. package/dist/workers/3d-tiles-attributes-worker.js +0 -9
  136. package/dist/workers/i3s-attributes-worker.d.ts +0 -2
  137. package/dist/workers/i3s-attributes-worker.d.ts.map +0 -1
  138. package/dist/workers/i3s-attributes-worker.js +0 -5
  139. package/src/3d-tiles-attributes-worker.ts +0 -43
  140. package/src/i3s-attributes-worker.ts +0 -59
  141. package/src/workers/3d-tiles-attributes-worker.ts +0 -6
  142. package/src/workers/i3s-attributes-worker.ts +0 -7
@@ -8,12 +8,56 @@ The server provides I3S Rest endpoints per specification https://github.com/Esri
8
8
  ### Serve 3DTiles to I3S converted dataset
9
9
 
10
10
  - Convert data set from 3DTiles to I3S without `--slpk` option
11
- - Serve output folder `I3sLayerPath="./data/BatchedTextured" DEBUG=i3s-server:* npx i3s-server`
11
+ - Serve output folder
12
+
13
+ Example for path `./data/BatchTextured/SceneServer/layers/0/...`:
14
+
15
+ #### Start the server
16
+
17
+ ```bash
18
+ PORT=8080 HTTPS_PORT=4443 I3sLayerPath="./data" DEBUG=i3s-server:* npx i3s-server
19
+ ```
20
+ #### Check the layer availability
21
+
22
+ The layer should be available on URLs:
23
+
24
+ - `http://localhost:8080/BatchTextured/SceneServer/layers/0/...`
25
+ - `https://localhost:4443/BatchTextured/SceneServer/layers/0/...`
26
+
27
+ #### Open in ArcGIS
28
+
29
+ `https://www.arcgis.com/home/webscene/viewer.html?url=http://localhost:8080/BatchTextured/SceneServer/layers/0/`
30
+
31
+ #### Open in I3S Explorer
32
+
33
+ `https://i3s.loaders.gl/viewer?tileset=http://localhost:8080/BatchTextured/SceneServer/layers/0`
12
34
 
13
35
  ### Serve SLPK
14
36
 
15
- - Serve slpk file `I3sLayerPath="../datasets/Rancho_Mesh_mesh_v17_1.slpk" DEBUG=i3s-server:* npx i3s-server`
37
+ Example for path `../datasets/Rancho_Mesh_mesh_v17_1.slpk`:
38
+
39
+ #### Start the server
40
+
41
+ ```bash
42
+ PORT=8080 HTTPS_PORT=4443 I3sLayerPath="../datasets/Rancho_Mesh_mesh_v17_1.slpk" DEBUG=i3s-server:* npx i3s-server
43
+ ```
44
+ #### Check the layer availability
45
+
46
+ The layer should be available on URLs:
47
+
48
+ - `http://localhost:8080/SceneServer/layers/0/...`
49
+ - `https://localhost:4443/SceneServer/layers/0/...`
50
+
51
+ #### Open in ArcGIS
52
+
53
+ `https://www.arcgis.com/home/webscene/viewer.html?url=http://localhost:8080/SceneServer`
54
+
55
+ #### Open in I3S Explorer
56
+
57
+ `https://i3s.loaders.gl/viewer?tileset=http://localhost:8080/SceneServer/layers/0`
16
58
 
17
59
  ## ENV variables
18
60
 
19
61
  - `I3sLayerPath` - path to converted data or SLPK file.
62
+ - `PORT` - HTTP port. Eg for `PORT = 8080 npx i3s-server` the server will work on host `http://localhost:8080/...`. Default value is `80`;
63
+ - `HTTPS_PORT` - HTTPS port. Eg for `PORT = 4443 npx i3s-server` the server will work on host `https://localhost:4443/...`. Default value is `443`
@@ -5,9 +5,6 @@ var path = require('path');
5
5
  var logger = require('morgan');
6
6
  var cors = require('cors');
7
7
  var indexRouter = require('./routes/index');
8
- var _require = require('./routes/slpk-router'),
9
- sceneServerRouter = _require.sceneServerRouter,
10
- router = _require.router;
11
8
  var I3S_LAYER_PATH = process.env.I3sLayerPath || '';
12
9
  var app = express();
13
10
  app.use(logger('dev'));
@@ -18,6 +15,9 @@ app.use(express.urlencoded({
18
15
  app.use(express.static(path.join(__dirname, 'public')));
19
16
  app.use(cors());
20
17
  if (/\.slpk$/.test(I3S_LAYER_PATH)) {
18
+ var _require = require('./routes/slpk-router'),
19
+ sceneServerRouter = _require.sceneServerRouter,
20
+ router = _require.router;
21
21
  app.use('/SceneServer/layers/0', router);
22
22
  app.use('/SceneServer', sceneServerRouter);
23
23
  } else {
@@ -1 +1 @@
1
- {"version":3,"file":"app.js","names":["express","require","path","logger","cors","indexRouter","_require","sceneServerRouter","router","I3S_LAYER_PATH","process","env","I3sLayerPath","app","use","json","urlencoded","extended","static","join","__dirname","test","module","exports"],"sources":["../../../src/i3s-server/app.js"],"sourcesContent":["const express = require('express');\nconst path = require('path');\nconst logger = require('morgan');\nconst cors = require('cors');\n\nconst indexRouter = require('./routes/index');\nconst {sceneServerRouter, router} = require('./routes/slpk-router');\n\nconst I3S_LAYER_PATH = process.env.I3sLayerPath || ''; // eslint-disable-line no-process-env, no-undef\nconst app = express();\n\napp.use(logger('dev'));\napp.use(express.json());\napp.use(express.urlencoded({extended: false}));\napp.use(express.static(path.join(__dirname, 'public')));\napp.use(cors());\n\nif (/\\.slpk$/.test(I3S_LAYER_PATH)) {\n app.use('/SceneServer/layers/0', router);\n app.use('/SceneServer', sceneServerRouter);\n} else {\n app.use('/', indexRouter);\n}\n\nmodule.exports = app;\n"],"mappings":";;AAAA,IAAMA,OAAO,GAAGC,OAAO,CAAC,SAAS,CAAC;AAClC,IAAMC,IAAI,GAAGD,OAAO,CAAC,MAAM,CAAC;AAC5B,IAAME,MAAM,GAAGF,OAAO,CAAC,QAAQ,CAAC;AAChC,IAAMG,IAAI,GAAGH,OAAO,CAAC,MAAM,CAAC;AAE5B,IAAMI,WAAW,GAAGJ,OAAO,CAAC,gBAAgB,CAAC;AAC7C,IAAAK,QAAA,GAAoCL,OAAO,CAAC,sBAAsB,CAAC;EAA5DM,iBAAiB,GAAAD,QAAA,CAAjBC,iBAAiB;EAAEC,MAAM,GAAAF,QAAA,CAANE,MAAM;AAEhC,IAAMC,cAAc,GAAGC,OAAO,CAACC,GAAG,CAACC,YAAY,IAAI,EAAE;AACrD,IAAMC,GAAG,GAAGb,OAAO,CAAC,CAAC;AAErBa,GAAG,CAACC,GAAG,CAACX,MAAM,CAAC,KAAK,CAAC,CAAC;AACtBU,GAAG,CAACC,GAAG,CAACd,OAAO,CAACe,IAAI,CAAC,CAAC,CAAC;AACvBF,GAAG,CAACC,GAAG,CAACd,OAAO,CAACgB,UAAU,CAAC;EAACC,QAAQ,EAAE;AAAK,CAAC,CAAC,CAAC;AAC9CJ,GAAG,CAACC,GAAG,CAACd,OAAO,CAACkB,MAAM,CAAChB,IAAI,CAACiB,IAAI,CAACC,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC;AACvDP,GAAG,CAACC,GAAG,CAACV,IAAI,CAAC,CAAC,CAAC;AAEf,IAAI,SAAS,CAACiB,IAAI,CAACZ,cAAc,CAAC,EAAE;EAClCI,GAAG,CAACC,GAAG,CAAC,uBAAuB,EAAEN,MAAM,CAAC;EACxCK,GAAG,CAACC,GAAG,CAAC,cAAc,EAAEP,iBAAiB,CAAC;AAC5C,CAAC,MAAM;EACLM,GAAG,CAACC,GAAG,CAAC,GAAG,EAAET,WAAW,CAAC;AAC3B;AAEAiB,MAAM,CAACC,OAAO,GAAGV,GAAG"}
1
+ {"version":3,"file":"app.js","names":["express","require","path","logger","cors","indexRouter","I3S_LAYER_PATH","process","env","I3sLayerPath","app","use","json","urlencoded","extended","static","join","__dirname","test","_require","sceneServerRouter","router","module","exports"],"sources":["../../../src/i3s-server/app.js"],"sourcesContent":["const express = require('express');\nconst path = require('path');\nconst logger = require('morgan');\nconst cors = require('cors');\n\nconst indexRouter = require('./routes/index');\n\nconst I3S_LAYER_PATH = process.env.I3sLayerPath || ''; // eslint-disable-line no-process-env, no-undef\nconst app = express();\n\napp.use(logger('dev'));\napp.use(express.json());\napp.use(express.urlencoded({extended: false}));\napp.use(express.static(path.join(__dirname, 'public')));\napp.use(cors());\n\nif (/\\.slpk$/.test(I3S_LAYER_PATH)) {\n 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\nmodule.exports = app;\n"],"mappings":";;AAAA,IAAMA,OAAO,GAAGC,OAAO,CAAC,SAAS,CAAC;AAClC,IAAMC,IAAI,GAAGD,OAAO,CAAC,MAAM,CAAC;AAC5B,IAAME,MAAM,GAAGF,OAAO,CAAC,QAAQ,CAAC;AAChC,IAAMG,IAAI,GAAGH,OAAO,CAAC,MAAM,CAAC;AAE5B,IAAMI,WAAW,GAAGJ,OAAO,CAAC,gBAAgB,CAAC;AAE7C,IAAMK,cAAc,GAAGC,OAAO,CAACC,GAAG,CAACC,YAAY,IAAI,EAAE;AACrD,IAAMC,GAAG,GAAGV,OAAO,CAAC,CAAC;AAErBU,GAAG,CAACC,GAAG,CAACR,MAAM,CAAC,KAAK,CAAC,CAAC;AACtBO,GAAG,CAACC,GAAG,CAACX,OAAO,CAACY,IAAI,CAAC,CAAC,CAAC;AACvBF,GAAG,CAACC,GAAG,CAACX,OAAO,CAACa,UAAU,CAAC;EAACC,QAAQ,EAAE;AAAK,CAAC,CAAC,CAAC;AAC9CJ,GAAG,CAACC,GAAG,CAACX,OAAO,CAACe,MAAM,CAACb,IAAI,CAACc,IAAI,CAACC,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC;AACvDP,GAAG,CAACC,GAAG,CAACP,IAAI,CAAC,CAAC,CAAC;AAEf,IAAI,SAAS,CAACc,IAAI,CAACZ,cAAc,CAAC,EAAE;EAClC,IAAAa,QAAA,GAAoClB,OAAO,CAAC,sBAAsB,CAAC;IAA5DmB,iBAAiB,GAAAD,QAAA,CAAjBC,iBAAiB;IAAEC,MAAM,GAAAF,QAAA,CAANE,MAAM;EAChCX,GAAG,CAACC,GAAG,CAAC,uBAAuB,EAAEU,MAAM,CAAC;EACxCX,GAAG,CAACC,GAAG,CAAC,cAAc,EAAES,iBAAiB,CAAC;AAC5C,CAAC,MAAM;EACLV,GAAG,CAACC,GAAG,CAAC,GAAG,EAAEN,WAAW,CAAC;AAC3B;AAEAiB,MAAM,CAACC,OAAO,GAAGb,GAAG"}
@@ -0,0 +1,61 @@
1
+ #!/usr/bin/env node
2
+ "use strict";
3
+
4
+ var app = require('../app');
5
+ var debug = require('debug')('i3s-server:server');
6
+ var https = require('https');
7
+ var http = require('http');
8
+ var fs = require('fs');
9
+ var path = require('path');
10
+ var httpPort = normalizePort(process.env.PORT || '80');
11
+ var httpsPort = normalizePort(process.env.HTTPS_PORT || '443');
12
+ var options = {
13
+ key: fs.readFileSync(path.join(__dirname, '../certs/key.pem')),
14
+ cert: fs.readFileSync(path.join(__dirname, '../certs/cert.pem'))
15
+ };
16
+ var httpServer = http.createServer(app);
17
+ var httpsServer = https.createServer(options, app);
18
+ httpServer.listen(httpPort);
19
+ httpServer.on('error', formErrorHandler(httpPort));
20
+ httpServer.on('listening', formListeningHandler(httpServer));
21
+ httpsServer.listen(httpsPort);
22
+ httpsServer.on('error', formErrorHandler(httpsPort));
23
+ httpsServer.on('listening', formListeningHandler(httpsServer));
24
+ function normalizePort(val) {
25
+ var chkPort = parseInt(val, 10);
26
+ if (isNaN(chkPort)) {
27
+ return val;
28
+ }
29
+ if (chkPort >= 0) {
30
+ return chkPort;
31
+ }
32
+ return false;
33
+ }
34
+ function formErrorHandler(optionalPort) {
35
+ return function onError(error) {
36
+ if (error.syscall !== 'listen') {
37
+ throw error;
38
+ }
39
+ var bind = typeof global.port === 'string' ? "Pipe ".concat(optionalPort) : "Port ".concat(optionalPort);
40
+ switch (error.code) {
41
+ case 'EACCES':
42
+ console.error("".concat(bind, " requires elevated privileges"));
43
+ process.exit(1);
44
+ break;
45
+ case 'EADDRINUSE':
46
+ console.error("".concat(bind, " is already in use"));
47
+ process.exit(1);
48
+ break;
49
+ default:
50
+ throw error;
51
+ }
52
+ };
53
+ }
54
+ function formListeningHandler(optionalServer) {
55
+ return function onListening() {
56
+ var addr = optionalServer.address();
57
+ var bind = typeof addr === 'string' ? "pipe ".concat(addr) : "port ".concat(addr.port);
58
+ debug("Listening on ".concat(bind));
59
+ };
60
+ }
61
+ //# sourceMappingURL=www.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"www.js","names":["app","require","debug","https","http","fs","path","httpPort","normalizePort","process","env","PORT","httpsPort","HTTPS_PORT","options","key","readFileSync","join","__dirname","cert","httpServer","createServer","httpsServer","listen","on","formErrorHandler","formListeningHandler","val","chkPort","parseInt","isNaN","optionalPort","onError","error","syscall","bind","global","port","concat","code","console","exit","optionalServer","onListening","addr","address"],"sources":["../../../../src/i3s-server/bin/www.js"],"sourcesContent":["#!/usr/bin/env node\n\n/**\n * Module dependencies.\n */\n\nconst app = require('../app');\nconst debug = require('debug')('i3s-server:server');\nconst https = require('https');\nconst http = require('http');\nconst fs = require('fs');\nconst path = require('path');\n\n/**\n * Get port from environment and store in Express.\n */\n\nconst httpPort = normalizePort(process.env.PORT || '80'); // eslint-disable-line no-process-env, no-undef\nconst httpsPort = normalizePort(process.env.HTTPS_PORT || '443'); // eslint-disable-line no-process-env, no-undef\n\n/**\n * Create HTTP server.\n */\n\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/**\n * Listen on provided port, on all network interfaces.\n */\n\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\n/**\n * Normalize a port into a number, string, or false.\n */\n\nfunction normalizePort(val) {\n const chkPort = parseInt(val, 10);\n\n if (isNaN(chkPort)) {\n // named pipe\n return val;\n }\n\n if (chkPort >= 0) {\n // port number\n return chkPort;\n }\n\n return false;\n}\n\n/**\n * Event listener for HTTP/HTTPS server \"error\" event.\n */\n\nfunction formErrorHandler(optionalPort) {\n return function onError(error) {\n if (error.syscall !== 'listen') {\n throw error;\n }\n\n const bind = typeof global.port === 'string' ? `Pipe ${optionalPort}` : `Port ${optionalPort}`;\n\n // handle specific listen errors with friendly messages\n switch (error.code) {\n case 'EACCES':\n console.error(`${bind} requires elevated privileges`); // eslint-disable-line no-console, no-undef\n process.exit(1); // eslint-disable-line no-process-exit, no-undef\n break;\n case 'EADDRINUSE':\n console.error(`${bind} is already in use`); // eslint-disable-line no-console, no-undef\n process.exit(1); // eslint-disable-line no-process-exit, no-undef\n break;\n default:\n throw error;\n }\n };\n}\n\n/**\n * Event listener for HTTP/HTTPS server \"listening\" event.\n */\nfunction formListeningHandler(optionalServer) {\n return function onListening() {\n const addr = optionalServer.address();\n const bind = typeof addr === 'string' ? `pipe ${addr}` : `port ${addr.port}`;\n debug(`Listening on ${bind}`);\n };\n}\n"],"mappings":"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"}
@@ -4,26 +4,27 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
4
4
  var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
5
5
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
6
6
  require('@loaders.gl/polyfills');
7
- var _require = require('@loaders.gl/core'),
8
- fetchFile = _require.fetchFile,
9
- parse = _require.parse;
10
- var _require2 = require('@loaders.gl/i3s'),
11
- SLPKLoader = _require2.SLPKLoader;
7
+ var _require = require('@loaders.gl/i3s'),
8
+ parseSLPK = _require.parseSLPK;
12
9
  var path = require('path');
10
+ var _require2 = require('@loaders.gl/tile-converter'),
11
+ FileHandleProvider = _require2.FileHandleProvider;
13
12
  var slpkArchive;
14
13
  var loadArchive = function () {
15
14
  var _ref = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee(fullLayerPath) {
16
15
  return _regenerator.default.wrap(function _callee$(_context) {
17
16
  while (1) switch (_context.prev = _context.next) {
18
17
  case 0:
19
- _context.next = 2;
20
- return fetchFile(fullLayerPath);
21
- case 2:
22
- _context.next = 4;
23
- return _context.sent.arrayBuffer();
24
- case 4:
18
+ _context.t0 = parseSLPK;
19
+ _context.next = 3;
20
+ return FileHandleProvider.from(fullLayerPath);
21
+ case 3:
22
+ _context.t1 = _context.sent;
23
+ _context.next = 6;
24
+ return (0, _context.t0)(_context.t1);
25
+ case 6:
25
26
  slpkArchive = _context.sent;
26
- case 5:
27
+ case 7:
27
28
  case "end":
28
29
  return _context.stop();
29
30
  }
@@ -53,12 +54,7 @@ function _getFileByUrl() {
53
54
  _context2.prev = 2;
54
55
  _context2.t0 = Buffer;
55
56
  _context2.next = 6;
56
- return parse(slpkArchive, SLPKLoader, {
57
- slpk: {
58
- path: trimmedPath[1],
59
- pathMode: 'http'
60
- }
61
- });
57
+ return slpkArchive.getFile(trimmedPath[1], 'http');
62
58
  case 6:
63
59
  _context2.t1 = _context2.sent;
64
60
  uncompressedFile = _context2.t0.from.call(_context2.t0, _context2.t1);
@@ -1 +1 @@
1
- {"version":3,"file":"slpk-controller.js","names":["require","_require","fetchFile","parse","_require2","SLPKLoader","path","slpkArchive","loadArchive","_ref","_asyncToGenerator2","default","_regenerator","mark","_callee","fullLayerPath","wrap","_callee$","_context","prev","next","sent","arrayBuffer","stop","_x","apply","arguments","I3S_LAYER_PATH","process","env","I3sLayerPath","FULL_LAYER_PATH","join","cwd","getFileByUrl","_x2","_getFileByUrl","_callee2","url","trimmedPath","uncompressedFile","_callee2$","_context2","exec","t0","Buffer","slpk","pathMode","t1","from","call","t2","abrupt","module","exports"],"sources":["../../../../src/i3s-server/controllers/slpk-controller.js"],"sourcesContent":["require('@loaders.gl/polyfills');\nconst {fetchFile, parse} = require('@loaders.gl/core');\nconst {SLPKLoader} = require('@loaders.gl/i3s');\nconst path = require('path');\n\nlet slpkArchive;\n\nconst loadArchive = async (fullLayerPath) => {\n slpkArchive = await (await fetchFile(fullLayerPath)).arrayBuffer();\n};\n\nconst I3S_LAYER_PATH = process.env.I3sLayerPath || ''; // eslint-disable-line no-process-env, no-undef\nconst FULL_LAYER_PATH = path.join(process.cwd(), I3S_LAYER_PATH); // eslint-disable-line no-undef\n\nloadArchive(FULL_LAYER_PATH);\n\nasync function getFileByUrl(url) {\n const trimmedPath = /^\\/?(.*)\\/?$/.exec(url);\n let uncompressedFile;\n if (trimmedPath) {\n try {\n uncompressedFile = Buffer.from(\n await parse(slpkArchive, SLPKLoader, {\n slpk: {\n path: trimmedPath[1],\n pathMode: 'http'\n }\n })\n );\n } catch (e) {}\n }\n return uncompressedFile;\n}\n\nmodule.exports = {\n loadArchive,\n getFileByUrl\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"slpk-controller.js","names":["require","_require","parseSLPK","path","_require2","FileHandleProvider","slpkArchive","loadArchive","_ref","_asyncToGenerator2","default","_regenerator","mark","_callee","fullLayerPath","wrap","_callee$","_context","prev","next","t0","from","t1","sent","stop","_x","apply","arguments","I3S_LAYER_PATH","process","env","I3sLayerPath","FULL_LAYER_PATH","join","cwd","getFileByUrl","_x2","_getFileByUrl","_callee2","url","trimmedPath","uncompressedFile","_callee2$","_context2","exec","Buffer","getFile","call","t2","abrupt","module","exports"],"sources":["../../../../src/i3s-server/controllers/slpk-controller.js"],"sourcesContent":["require('@loaders.gl/polyfills');\nconst {parseSLPK} = require('@loaders.gl/i3s');\nconst path = require('path');\nconst {FileHandleProvider} = require('@loaders.gl/tile-converter');\n\nlet slpkArchive;\n\nconst loadArchive = async (fullLayerPath) => {\n slpkArchive = await parseSLPK(await FileHandleProvider.from(fullLayerPath));\n};\n\nconst I3S_LAYER_PATH = process.env.I3sLayerPath || ''; // eslint-disable-line no-process-env, no-undef\nconst FULL_LAYER_PATH = path.join(process.cwd(), I3S_LAYER_PATH); // eslint-disable-line no-undef\n\nloadArchive(FULL_LAYER_PATH);\n\nasync function getFileByUrl(url) {\n const trimmedPath = /^\\/?(.*)\\/?$/.exec(url);\n let uncompressedFile;\n if (trimmedPath) {\n try {\n uncompressedFile = Buffer.from(await slpkArchive.getFile(trimmedPath[1], 'http'));\n } catch (e) {}\n }\n return uncompressedFile;\n}\n\nmodule.exports = {\n loadArchive,\n getFileByUrl\n};\n"],"mappings":"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"}
package/dist/es5/index.js CHANGED
@@ -4,6 +4,12 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
+ Object.defineProperty(exports, "FileHandleProvider", {
8
+ enumerable: true,
9
+ get: function get() {
10
+ return _fileHandleProvider.FileHandleProvider;
11
+ }
12
+ });
7
13
  Object.defineProperty(exports, "I3SConverter", {
8
14
  enumerable: true,
9
15
  get: function get() {
@@ -18,4 +24,5 @@ Object.defineProperty(exports, "Tiles3DConverter", {
18
24
  });
19
25
  var _i3sConverter = _interopRequireDefault(require("./i3s-converter/i3s-converter"));
20
26
  var _dTilesConverter = _interopRequireDefault(require("./3d-tiles-converter/3d-tiles-converter"));
27
+ var _fileHandleProvider = require("./slpk-extractor/helpers/file-handle-provider");
21
28
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["_i3sConverter","_interopRequireDefault","require","_dTilesConverter"],"sources":["../../src/index.ts"],"sourcesContent":["export {default as I3SConverter} from './i3s-converter/i3s-converter';\nexport {default as Tiles3DConverter} from './3d-tiles-converter/3d-tiles-converter';\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA,IAAAA,aAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,gBAAA,GAAAF,sBAAA,CAAAC,OAAA"}
1
+ {"version":3,"file":"index.js","names":["_i3sConverter","_interopRequireDefault","require","_dTilesConverter","_fileHandleProvider"],"sources":["../../src/index.ts"],"sourcesContent":["export {default as I3SConverter} from './i3s-converter/i3s-converter';\nexport {default as Tiles3DConverter} from './3d-tiles-converter/3d-tiles-converter';\nexport {FileHandleProvider} from './slpk-extractor/helpers/file-handle-provider';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,aAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,gBAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,mBAAA,GAAAF,OAAA"}
@@ -8,7 +8,7 @@ exports.PGMLoader = void 0;
8
8
  var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
9
9
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
10
10
  var _geoid = require("@math.gl/geoid");
11
- var VERSION = typeof "4.0.0-alpha.13" !== 'undefined' ? "4.0.0-alpha.13" : 'latest';
11
+ var VERSION = typeof "4.0.0-alpha.15" !== 'undefined' ? "4.0.0-alpha.15" : 'latest';
12
12
  var PGMLoader = {
13
13
  name: 'PGM - Netpbm grayscale image format',
14
14
  id: 'pgm',
@@ -10,7 +10,7 @@ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/
10
10
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
11
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
12
12
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
13
- var _fs = require("fs");
13
+ var _fsPromises = require("./fs-promises");
14
14
  var FileHandleProvider = function () {
15
15
  function FileHandleProvider(fileDescriptor, size) {
16
16
  (0, _classCallCheck2.default)(this, FileHandleProvider);
@@ -116,25 +116,64 @@ var FileHandleProvider = function () {
116
116
  return getUint32;
117
117
  }()
118
118
  }, {
119
- key: "slice",
119
+ key: "getBigUint64",
120
120
  value: function () {
121
- var _slice = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee4(startOffset, endOffset) {
122
- var length;
121
+ var _getBigUint = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee4(offset) {
122
+ var val;
123
123
  return _regenerator.default.wrap(function _callee4$(_context4) {
124
124
  while (1) switch (_context4.prev = _context4.next) {
125
125
  case 0:
126
- length = endOffset - startOffset;
126
+ _context4.t0 = BigInt64Array;
127
127
  _context4.next = 3;
128
- return this.fileDescriptor.read(Buffer.alloc(length), 0, length, startOffset);
128
+ return this.fileDescriptor.read(Buffer.alloc(8), 0, 4, offset);
129
129
  case 3:
130
- return _context4.abrupt("return", _context4.sent.buffer.buffer);
131
- case 4:
130
+ _context4.t1 = _context4.sent.buffer.buffer;
131
+ val = new _context4.t0(_context4.t1).at(0);
132
+ if (!(val === undefined)) {
133
+ _context4.next = 7;
134
+ break;
135
+ }
136
+ throw new Error('something went wrong');
137
+ case 7:
138
+ return _context4.abrupt("return", val);
139
+ case 8:
132
140
  case "end":
133
141
  return _context4.stop();
134
142
  }
135
143
  }, _callee4, this);
136
144
  }));
137
- function slice(_x4, _x5) {
145
+ function getBigUint64(_x4) {
146
+ return _getBigUint.apply(this, arguments);
147
+ }
148
+ return getBigUint64;
149
+ }()
150
+ }, {
151
+ key: "slice",
152
+ value: function () {
153
+ var _slice = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee5(startOffsset, endOffset) {
154
+ var bigLength, length;
155
+ return _regenerator.default.wrap(function _callee5$(_context5) {
156
+ while (1) switch (_context5.prev = _context5.next) {
157
+ case 0:
158
+ bigLength = endOffset - startOffsset;
159
+ if (!(bigLength > Number.MAX_SAFE_INTEGER)) {
160
+ _context5.next = 3;
161
+ break;
162
+ }
163
+ throw new Error('too big slice');
164
+ case 3:
165
+ length = Number(bigLength);
166
+ _context5.next = 6;
167
+ return this.fileDescriptor.read(Buffer.alloc(length), 0, length, startOffsset);
168
+ case 6:
169
+ return _context5.abrupt("return", _context5.sent.buffer.buffer);
170
+ case 7:
171
+ case "end":
172
+ return _context5.stop();
173
+ }
174
+ }, _callee5, this);
175
+ }));
176
+ function slice(_x5, _x6) {
138
177
  return _slice.apply(this, arguments);
139
178
  }
140
179
  return slice;
@@ -147,29 +186,23 @@ var FileHandleProvider = function () {
147
186
  }], [{
148
187
  key: "from",
149
188
  value: function () {
150
- var _from = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee5(path) {
189
+ var _from = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee6(path) {
151
190
  var fileDescriptor;
152
- return _regenerator.default.wrap(function _callee5$(_context5) {
153
- while (1) switch (_context5.prev = _context5.next) {
191
+ return _regenerator.default.wrap(function _callee6$(_context6) {
192
+ while (1) switch (_context6.prev = _context6.next) {
154
193
  case 0:
155
- _context5.next = 2;
156
- return _fs.promises.open(path);
194
+ _context6.next = 2;
195
+ return _fsPromises.FileHandle.open(path);
157
196
  case 2:
158
- fileDescriptor = _context5.sent;
159
- _context5.t0 = FileHandleProvider;
160
- _context5.t1 = fileDescriptor;
161
- _context5.next = 7;
162
- return fileDescriptor.stat();
163
- case 7:
164
- _context5.t2 = _context5.sent.size;
165
- return _context5.abrupt("return", new _context5.t0(_context5.t1, _context5.t2));
166
- case 9:
197
+ fileDescriptor = _context6.sent;
198
+ return _context6.abrupt("return", new FileHandleProvider(fileDescriptor, fileDescriptor.stat.size));
199
+ case 4:
167
200
  case "end":
168
- return _context5.stop();
201
+ return _context6.stop();
169
202
  }
170
- }, _callee5);
203
+ }, _callee6);
171
204
  }));
172
- function from(_x6) {
205
+ function from(_x7) {
173
206
  return _from.apply(this, arguments);
174
207
  }
175
208
  return from;
@@ -1 +1 @@
1
- {"version":3,"file":"file-handle-provider.js","names":["_fs","require","FileHandleProvider","fileDescriptor","size","_classCallCheck2","default","_defineProperty2","_createClass2","key","value","_getUint","_asyncToGenerator2","_regenerator","mark","_callee","offset","val","wrap","_callee$","_context","prev","next","t0","Uint8Array","read","Buffer","alloc","t1","sent","buffer","at","undefined","Error","abrupt","stop","getUint8","_x","apply","arguments","_getUint2","_callee2","_callee2$","_context2","Uint16Array","getUint16","_x2","_getUint3","_callee3","_callee3$","_context3","Uint32Array","getUint32","_x3","_slice","_callee4","startOffset","endOffset","length","_callee4$","_context4","slice","_x4","_x5","get","_from","_callee5","path","_callee5$","_context5","fsPromises","open","stat","t2","from","_x6","exports"],"sources":["../../../../src/slpk-extractor/helpers/file-handle-provider.ts"],"sourcesContent":["import {FileProvider} from '@loaders.gl/i3s';\nimport {promises as fsPromises, PathLike} from 'fs';\n\n/**\n * Provides file data using node fs library\n */\nexport class FileHandleProvider implements FileProvider {\n /**\n * Returns a new copy of FileHandleProvider\n * @param path The path to the file in file system\n */\n static async from(path: PathLike): Promise<FileHandleProvider> {\n const fileDescriptor = await fsPromises.open(path);\n return new FileHandleProvider(fileDescriptor, (await fileDescriptor.stat()).size);\n }\n\n /**\n * The FileHandle from which data is provided\n */\n private fileDescriptor: fsPromises.FileHandle;\n\n /**\n * The file length in bytes\n */\n private size: number;\n\n private constructor(fileDescriptor: fsPromises.FileHandle, size: number) {\n this.fileDescriptor = fileDescriptor;\n this.size = size;\n }\n\n /**\n * Gets an unsigned 8-bit integer (unsigned byte) at the specified byte offset from the start of the file.\n * @param offset The offset, in bytes, from the start of the file where to read the data.\n */\n async getUint8(offset: number): Promise<number> {\n const val = new Uint8Array(\n (await this.fileDescriptor.read(Buffer.alloc(1), 0, 1, offset)).buffer.buffer\n ).at(0);\n if (val === undefined) {\n throw new Error('something went wrong');\n }\n return val;\n }\n\n /**\n * Gets an unsigned 16-bit integer (unsigned byte) at the specified byte offset from the start of the file.\n * @param offset The offset, in bytes, from the start of the file where to read the data.\n */\n async getUint16(offset: number): Promise<number> {\n const val = new Uint16Array(\n (await this.fileDescriptor.read(Buffer.alloc(2), 0, 2, offset)).buffer.buffer\n ).at(0);\n if (val === undefined) {\n throw new Error('something went wrong');\n }\n return val;\n }\n\n /**\n * Gets an unsigned 32-bit integer (unsigned byte) at the specified byte offset from the start of the file.\n * @param offset The offset, in bytes, from the start of the file where to read the data.\n */\n async getUint32(offset: number): Promise<number> {\n const val = new Uint32Array(\n (await this.fileDescriptor.read(Buffer.alloc(4), 0, 4, offset)).buffer.buffer\n ).at(0);\n if (val === undefined) {\n throw new Error('something went wrong');\n }\n return val;\n }\n\n /**\n * returns an ArrayBuffer whose contents are a copy of this file bytes from startOffset, inclusive, up to endOffset, exclusive.\n * @param startOffset The offset, in bytes, from the start of the file where to start reading the data.\n * @param endOffset The offset, in bytes, from the start of the file where to end reading the data.\n */\n async slice(startOffset: number, endOffset: number): Promise<ArrayBuffer> {\n const length = endOffset - startOffset;\n return (await this.fileDescriptor.read(Buffer.alloc(length), 0, length, startOffset)).buffer\n .buffer;\n }\n\n /**\n * the length (in bytes) of the data.\n */\n get length(): number {\n return this.size;\n }\n}\n"],"mappings":";;;;;;;;;;;;AACA,IAAAA,GAAA,GAAAC,OAAA;AAAoD,IAKvCC,kBAAkB;EAoB7B,SAAAA,mBAAoBC,cAAqC,EAAEC,IAAY,EAAE;IAAA,IAAAC,gBAAA,CAAAC,OAAA,QAAAJ,kBAAA;IAAA,IAAAK,gBAAA,CAAAD,OAAA;IAAA,IAAAC,gBAAA,CAAAD,OAAA;IACvE,IAAI,CAACH,cAAc,GAAGA,cAAc;IACpC,IAAI,CAACC,IAAI,GAAGA,IAAI;EAClB;EAAC,IAAAI,aAAA,CAAAF,OAAA,EAAAJ,kBAAA;IAAAO,GAAA;IAAAC,KAAA;MAAA,IAAAC,QAAA,OAAAC,kBAAA,CAAAN,OAAA,EAAAO,YAAA,CAAAP,OAAA,CAAAQ,IAAA,CAMD,SAAAC,QAAeC,MAAc;QAAA,IAAAC,GAAA;QAAA,OAAAJ,YAAA,CAAAP,OAAA,CAAAY,IAAA,UAAAC,SAAAC,QAAA;UAAA,kBAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAE,IAAA;YAAA;cAAAF,QAAA,CAAAG,EAAA,GACXC,UAAU;cAAAJ,QAAA,CAAAE,IAAA;cAAA,OACjB,IAAI,CAACnB,cAAc,CAACsB,IAAI,CAACC,MAAM,CAACC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAEX,MAAM,CAAC;YAAA;cAAAI,QAAA,CAAAQ,EAAA,GAAAR,QAAA,CAAAS,IAAA,CAAEC,MAAM,CAACA,MAAM;cADzEb,GAAG,OAAAG,QAAA,CAAAG,EAAA,CAAAH,QAAA,CAAAQ,EAAA,EAEPG,EAAE,CAAC,CAAC;cAAA,MACFd,GAAG,KAAKe,SAAS;gBAAAZ,QAAA,CAAAE,IAAA;gBAAA;cAAA;cAAA,MACb,IAAIW,KAAK,CAAC,sBAAsB,CAAC;YAAA;cAAA,OAAAb,QAAA,CAAAc,MAAA,WAElCjB,GAAG;YAAA;YAAA;cAAA,OAAAG,QAAA,CAAAe,IAAA;UAAA;QAAA,GAAApB,OAAA;MAAA,CACX;MAAA,SAAAqB,SAAAC,EAAA;QAAA,OAAA1B,QAAA,CAAA2B,KAAA,OAAAC,SAAA;MAAA;MAAA,OAAAH,QAAA;IAAA;EAAA;IAAA3B,GAAA;IAAAC,KAAA;MAAA,IAAA8B,SAAA,OAAA5B,kBAAA,CAAAN,OAAA,EAAAO,YAAA,CAAAP,OAAA,CAAAQ,IAAA,CAMD,SAAA2B,SAAgBzB,MAAc;QAAA,IAAAC,GAAA;QAAA,OAAAJ,YAAA,CAAAP,OAAA,CAAAY,IAAA,UAAAwB,UAAAC,SAAA;UAAA,kBAAAA,SAAA,CAAAtB,IAAA,GAAAsB,SAAA,CAAArB,IAAA;YAAA;cAAAqB,SAAA,CAAApB,EAAA,GACZqB,WAAW;cAAAD,SAAA,CAAArB,IAAA;cAAA,OAClB,IAAI,CAACnB,cAAc,CAACsB,IAAI,CAACC,MAAM,CAACC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAEX,MAAM,CAAC;YAAA;cAAA2B,SAAA,CAAAf,EAAA,GAAAe,SAAA,CAAAd,IAAA,CAAEC,MAAM,CAACA,MAAM;cADzEb,GAAG,OAAA0B,SAAA,CAAApB,EAAA,CAAAoB,SAAA,CAAAf,EAAA,EAEPG,EAAE,CAAC,CAAC;cAAA,MACFd,GAAG,KAAKe,SAAS;gBAAAW,SAAA,CAAArB,IAAA;gBAAA;cAAA;cAAA,MACb,IAAIW,KAAK,CAAC,sBAAsB,CAAC;YAAA;cAAA,OAAAU,SAAA,CAAAT,MAAA,WAElCjB,GAAG;YAAA;YAAA;cAAA,OAAA0B,SAAA,CAAAR,IAAA;UAAA;QAAA,GAAAM,QAAA;MAAA,CACX;MAAA,SAAAI,UAAAC,GAAA;QAAA,OAAAN,SAAA,CAAAF,KAAA,OAAAC,SAAA;MAAA;MAAA,OAAAM,SAAA;IAAA;EAAA;IAAApC,GAAA;IAAAC,KAAA;MAAA,IAAAqC,SAAA,OAAAnC,kBAAA,CAAAN,OAAA,EAAAO,YAAA,CAAAP,OAAA,CAAAQ,IAAA,CAMD,SAAAkC,SAAgBhC,MAAc;QAAA,IAAAC,GAAA;QAAA,OAAAJ,YAAA,CAAAP,OAAA,CAAAY,IAAA,UAAA+B,UAAAC,SAAA;UAAA,kBAAAA,SAAA,CAAA7B,IAAA,GAAA6B,SAAA,CAAA5B,IAAA;YAAA;cAAA4B,SAAA,CAAA3B,EAAA,GACZ4B,WAAW;cAAAD,SAAA,CAAA5B,IAAA;cAAA,OAClB,IAAI,CAACnB,cAAc,CAACsB,IAAI,CAACC,MAAM,CAACC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAEX,MAAM,CAAC;YAAA;cAAAkC,SAAA,CAAAtB,EAAA,GAAAsB,SAAA,CAAArB,IAAA,CAAEC,MAAM,CAACA,MAAM;cADzEb,GAAG,OAAAiC,SAAA,CAAA3B,EAAA,CAAA2B,SAAA,CAAAtB,EAAA,EAEPG,EAAE,CAAC,CAAC;cAAA,MACFd,GAAG,KAAKe,SAAS;gBAAAkB,SAAA,CAAA5B,IAAA;gBAAA;cAAA;cAAA,MACb,IAAIW,KAAK,CAAC,sBAAsB,CAAC;YAAA;cAAA,OAAAiB,SAAA,CAAAhB,MAAA,WAElCjB,GAAG;YAAA;YAAA;cAAA,OAAAiC,SAAA,CAAAf,IAAA;UAAA;QAAA,GAAAa,QAAA;MAAA,CACX;MAAA,SAAAI,UAAAC,GAAA;QAAA,OAAAN,SAAA,CAAAT,KAAA,OAAAC,SAAA;MAAA;MAAA,OAAAa,SAAA;IAAA;EAAA;IAAA3C,GAAA;IAAAC,KAAA;MAAA,IAAA4C,MAAA,OAAA1C,kBAAA,CAAAN,OAAA,EAAAO,YAAA,CAAAP,OAAA,CAAAQ,IAAA,CAOD,SAAAyC,SAAYC,WAAmB,EAAEC,SAAiB;QAAA,IAAAC,MAAA;QAAA,OAAA7C,YAAA,CAAAP,OAAA,CAAAY,IAAA,UAAAyC,UAAAC,SAAA;UAAA,kBAAAA,SAAA,CAAAvC,IAAA,GAAAuC,SAAA,CAAAtC,IAAA;YAAA;cAC1CoC,MAAM,GAAGD,SAAS,GAAGD,WAAW;cAAAI,SAAA,CAAAtC,IAAA;cAAA,OACxB,IAAI,CAACnB,cAAc,CAACsB,IAAI,CAACC,MAAM,CAACC,KAAK,CAAC+B,MAAM,CAAC,EAAE,CAAC,EAAEA,MAAM,EAAEF,WAAW,CAAC;YAAA;cAAA,OAAAI,SAAA,CAAA1B,MAAA,WAAA0B,SAAA,CAAA/B,IAAA,CAAEC,MAAM,CACzFA,MAAM;YAAA;YAAA;cAAA,OAAA8B,SAAA,CAAAzB,IAAA;UAAA;QAAA,GAAAoB,QAAA;MAAA,CACV;MAAA,SAAAM,MAAAC,GAAA,EAAAC,GAAA;QAAA,OAAAT,MAAA,CAAAhB,KAAA,OAAAC,SAAA;MAAA;MAAA,OAAAsB,KAAA;IAAA;EAAA;IAAApD,GAAA;IAAAuD,GAAA,EAKD,SAAAA,IAAA,EAAqB;MACnB,OAAO,IAAI,CAAC5D,IAAI;IAClB;EAAC;IAAAK,GAAA;IAAAC,KAAA;MAAA,IAAAuD,KAAA,OAAArD,kBAAA,CAAAN,OAAA,EAAAO,YAAA,CAAAP,OAAA,CAAAQ,IAAA,CA9ED,SAAAoD,SAAkBC,IAAc;QAAA,IAAAhE,cAAA;QAAA,OAAAU,YAAA,CAAAP,OAAA,CAAAY,IAAA,UAAAkD,UAAAC,SAAA;UAAA,kBAAAA,SAAA,CAAAhD,IAAA,GAAAgD,SAAA,CAAA/C,IAAA;YAAA;cAAA+C,SAAA,CAAA/C,IAAA;cAAA,OACDgD,YAAU,CAACC,IAAI,CAACJ,IAAI,CAAC;YAAA;cAA5ChE,cAAc,GAAAkE,SAAA,CAAAxC,IAAA;cAAAwC,SAAA,CAAA9C,EAAA,GACTrB,kBAAkB;cAAAmE,SAAA,CAAAzC,EAAA,GAACzB,cAAc;cAAAkE,SAAA,CAAA/C,IAAA;cAAA,OAASnB,cAAc,CAACqE,IAAI,CAAC,CAAC;YAAA;cAAAH,SAAA,CAAAI,EAAA,GAAAJ,SAAA,CAAAxC,IAAA,CAAEzB,IAAI;cAAA,OAAAiE,SAAA,CAAAnC,MAAA,eAAAmC,SAAA,CAAA9C,EAAA,CAAA8C,SAAA,CAAAzC,EAAA,EAAAyC,SAAA,CAAAI,EAAA;YAAA;YAAA;cAAA,OAAAJ,SAAA,CAAAlC,IAAA;UAAA;QAAA,GAAA+B,QAAA;MAAA,CACjF;MAAA,SAAAQ,KAAAC,GAAA;QAAA,OAAAV,KAAA,CAAA3B,KAAA,OAAAC,SAAA;MAAA;MAAA,OAAAmC,IAAA;IAAA;EAAA;EAAA,OAAAxE,kBAAA;AAAA;AAAA0E,OAAA,CAAA1E,kBAAA,GAAAA,kBAAA"}
1
+ {"version":3,"file":"file-handle-provider.js","names":["_fsPromises","require","FileHandleProvider","fileDescriptor","size","_classCallCheck2","default","_defineProperty2","_createClass2","key","value","_getUint","_asyncToGenerator2","_regenerator","mark","_callee","offset","val","wrap","_callee$","_context","prev","next","t0","Uint8Array","read","Buffer","alloc","t1","sent","buffer","at","undefined","Error","abrupt","stop","getUint8","_x","apply","arguments","_getUint2","_callee2","_callee2$","_context2","Uint16Array","getUint16","_x2","_getUint3","_callee3","_callee3$","_context3","Uint32Array","getUint32","_x3","_getBigUint","_callee4","_callee4$","_context4","BigInt64Array","getBigUint64","_x4","_slice","_callee5","startOffsset","endOffset","bigLength","length","_callee5$","_context5","Number","MAX_SAFE_INTEGER","slice","_x5","_x6","get","_from","_callee6","path","_callee6$","_context6","FileHandle","open","stat","from","_x7","exports"],"sources":["../../../../src/slpk-extractor/helpers/file-handle-provider.ts"],"sourcesContent":["import {FileProvider} from '@loaders.gl/i3s';\nimport {FileHandle} from './fs-promises';\n\n/**\n * Provides file data using node fs library\n */\nexport class FileHandleProvider implements FileProvider {\n /**\n * Returns a new copy of FileHandleProvider\n * @param path The path to the file in file system\n */\n static async from(path: string): Promise<FileHandleProvider> {\n const fileDescriptor = await FileHandle.open(path);\n return new FileHandleProvider(fileDescriptor, fileDescriptor.stat.size);\n }\n\n /**\n * The FileHandle from which data is provided\n */\n private fileDescriptor: FileHandle;\n\n /**\n * The file length in bytes\n */\n private size: bigint;\n\n private constructor(fileDescriptor: FileHandle, size: bigint) {\n this.fileDescriptor = fileDescriptor;\n this.size = size;\n }\n\n /**\n * Gets an unsigned 8-bit integer at the specified byte offset from the start of the file.\n * @param offset The offset, in bytes, from the start of the file where to read the data.\n */\n async getUint8(offset: bigint): Promise<number> {\n const val = new Uint8Array(\n (await this.fileDescriptor.read(Buffer.alloc(1), 0, 1, offset)).buffer.buffer\n ).at(0);\n if (val === undefined) {\n throw new Error('something went wrong');\n }\n return val;\n }\n\n /**\n * Gets an unsigned 16-bit integer at the specified byte offset from the start of the file.\n * @param offset The offset, in bytes, from the start of the file where to read the data.\n */\n async getUint16(offset: bigint): Promise<number> {\n const val = new Uint16Array(\n (await this.fileDescriptor.read(Buffer.alloc(2), 0, 2, offset)).buffer.buffer\n ).at(0);\n if (val === undefined) {\n throw new Error('something went wrong');\n }\n return val;\n }\n\n /**\n * Gets an unsigned 32-bit integer at the specified byte offset from the start of the file.\n * @param offset The offset, in bytes, from the start of the file where to read the data.\n */\n async getUint32(offset: bigint): Promise<number> {\n const val = new Uint32Array(\n (await this.fileDescriptor.read(Buffer.alloc(4), 0, 4, offset)).buffer.buffer\n ).at(0);\n if (val === undefined) {\n throw new Error('something went wrong');\n }\n return val;\n }\n\n /**\n * Gets an unsigned 32-bit integer at the specified byte offset from the start of the file.\n * @param offset The offset, in bytes, from the start of the file where to read the data.\n */\n async getBigUint64(offset: bigint): Promise<bigint> {\n const val = new BigInt64Array(\n (await this.fileDescriptor.read(Buffer.alloc(8), 0, 4, offset)).buffer.buffer\n ).at(0);\n if (val === undefined) {\n throw new Error('something went wrong');\n }\n return val;\n }\n\n /**\n * returns an ArrayBuffer whose contents are a copy of this file bytes from startOffset, inclusive, up to endOffset, exclusive.\n * @param startOffsset The offset, in byte, from the start of the file where to start reading the data.\n * @param endOffset The offset, in bytes, from the start of the file where to end reading the data.\n */\n async slice(startOffsset: bigint, endOffset: bigint): Promise<ArrayBuffer> {\n const bigLength = endOffset - startOffsset;\n if (bigLength > Number.MAX_SAFE_INTEGER) {\n throw new Error('too big slice');\n }\n const length = Number(bigLength);\n return (await this.fileDescriptor.read(Buffer.alloc(length), 0, length, startOffsset)).buffer\n .buffer;\n }\n\n /**\n * the length (in bytes) of the data.\n */\n get length(): bigint {\n return this.size;\n }\n}\n"],"mappings":"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"}
@@ -0,0 +1,77 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.FileHandle = void 0;
8
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
9
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
10
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
11
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
12
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
13
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
14
+ var _fs = require("fs");
15
+ var FileHandle = function () {
16
+ function FileHandle(fileDescriptor, stats) {
17
+ var _this = this;
18
+ (0, _classCallCheck2.default)(this, FileHandle);
19
+ (0, _defineProperty2.default)(this, "fileDescriptor", void 0);
20
+ (0, _defineProperty2.default)(this, "stats", void 0);
21
+ (0, _defineProperty2.default)(this, "read", function (buffer, offset, length, position) {
22
+ return new Promise(function (s) {
23
+ (0, _fs.read)(_this.fileDescriptor, buffer, offset, length, position, function (_err, bytesRead, buffer) {
24
+ return s({
25
+ bytesRead: bytesRead,
26
+ buffer: buffer
27
+ });
28
+ });
29
+ });
30
+ });
31
+ this.fileDescriptor = fileDescriptor;
32
+ this.stats = stats;
33
+ }
34
+ (0, _createClass2.default)(FileHandle, [{
35
+ key: "stat",
36
+ get: function get() {
37
+ return this.stats;
38
+ }
39
+ }]);
40
+ return FileHandle;
41
+ }();
42
+ exports.FileHandle = FileHandle;
43
+ (0, _defineProperty2.default)(FileHandle, "open", function () {
44
+ var _ref = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee(path) {
45
+ var _yield$Promise$all, _yield$Promise$all2, fd, stats;
46
+ return _regenerator.default.wrap(function _callee$(_context) {
47
+ while (1) switch (_context.prev = _context.next) {
48
+ case 0:
49
+ _context.next = 2;
50
+ return Promise.all([new Promise(function (s) {
51
+ (0, _fs.open)(path, undefined, undefined, function (_err, fd) {
52
+ return s(fd);
53
+ });
54
+ }), new Promise(function (s) {
55
+ (0, _fs.stat)(path, {
56
+ bigint: true
57
+ }, function (_err, stats) {
58
+ return s(stats);
59
+ });
60
+ })]);
61
+ case 2:
62
+ _yield$Promise$all = _context.sent;
63
+ _yield$Promise$all2 = (0, _slicedToArray2.default)(_yield$Promise$all, 2);
64
+ fd = _yield$Promise$all2[0];
65
+ stats = _yield$Promise$all2[1];
66
+ return _context.abrupt("return", new FileHandle(fd, stats));
67
+ case 7:
68
+ case "end":
69
+ return _context.stop();
70
+ }
71
+ }, _callee);
72
+ }));
73
+ return function (_x) {
74
+ return _ref.apply(this, arguments);
75
+ };
76
+ }());
77
+ //# sourceMappingURL=fs-promises.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fs-promises.js","names":["_fs","require","FileHandle","fileDescriptor","stats","_this","_classCallCheck2","default","_defineProperty2","buffer","offset","length","position","Promise","s","read","_err","bytesRead","_createClass2","key","get","exports","_ref","_asyncToGenerator2","_regenerator","mark","_callee","path","_yield$Promise$all","_yield$Promise$all2","fd","wrap","_callee$","_context","prev","next","all","open","undefined","stat","bigint","sent","_slicedToArray2","abrupt","stop","_x","apply","arguments"],"sources":["../../../../src/slpk-extractor/helpers/fs-promises.ts"],"sourcesContent":["import {read, open, stat, BigIntStats} from 'fs';\n\n/** file reading result */\nexport type FileReadResult = {\n /** amount of the bytes read */\n bytesRead: number;\n /** the buffer filled with data from file*/\n buffer: Buffer;\n};\n\n/** Object handling file info */\nexport class FileHandle {\n private fileDescriptor: number;\n private stats: BigIntStats;\n private constructor(fileDescriptor: number, stats: BigIntStats) {\n this.fileDescriptor = fileDescriptor;\n this.stats = stats;\n }\n /**\n * Opens a `FileHandle`.\n *\n * @param path path to the file\n * @return Fulfills with a {FileHandle} object.\n */\n\n static open = async (path: string): Promise<FileHandle> => {\n const [fd, stats] = await Promise.all([\n new Promise<number>((s) => {\n open(path, undefined, undefined, (_err, fd) => s(fd));\n }),\n new Promise<BigIntStats>((s) => {\n stat(path, {bigint: true}, (_err, stats) => s(stats));\n })\n ]);\n return new FileHandle(fd, stats);\n };\n\n /**\n * Reads data from the file and stores that in the given buffer.\n *\n * If the file is not modified concurrently, the end-of-file is reached when the\n * number of bytes read is zero.\n * @param buffer A buffer that will be filled with the file data read.\n * @param offset The location in the buffer at which to start filling.\n * @param length The number of bytes to read.\n * @param position The location where to begin reading data from the file. If `null`, data will be read from the current file position, and the position will be updated. If `position` is an\n * integer, the current file position will remain unchanged.\n * @return Fulfills upon success with a FileReadResult object\n */\n read = (\n buffer: Buffer,\n offset: number,\n length: number,\n position: number | bigint\n ): Promise<FileReadResult> => {\n return new Promise((s) => {\n read(this.fileDescriptor, buffer, offset, length, position, (_err, bytesRead, buffer) =>\n s({bytesRead, buffer})\n );\n });\n };\n\n get stat(): BigIntStats {\n return this.stats;\n }\n}\n"],"mappings":";;;;;;;;;;;;;AAAA,IAAAA,GAAA,GAAAC,OAAA;AAAiD,IAWpCC,UAAU;EAGrB,SAAAA,WAAoBC,cAAsB,EAAEC,KAAkB,EAAE;IAAA,IAAAC,KAAA;IAAA,IAAAC,gBAAA,CAAAC,OAAA,QAAAL,UAAA;IAAA,IAAAM,gBAAA,CAAAD,OAAA;IAAA,IAAAC,gBAAA,CAAAD,OAAA;IAAA,IAAAC,gBAAA,CAAAD,OAAA,gBAmCzD,UACLE,MAAc,EACdC,MAAc,EACdC,MAAc,EACdC,QAAyB,EACG;MAC5B,OAAO,IAAIC,OAAO,CAAC,UAACC,CAAC,EAAK;QACxB,IAAAC,QAAI,EAACV,KAAI,CAACF,cAAc,EAAEM,MAAM,EAAEC,MAAM,EAAEC,MAAM,EAAEC,QAAQ,EAAE,UAACI,IAAI,EAAEC,SAAS,EAAER,MAAM;UAAA,OAClFK,CAAC,CAAC;YAACG,SAAS,EAATA,SAAS;YAAER,MAAM,EAANA;UAAM,CAAC,CAAC;QAAA,CACxB,CAAC;MACH,CAAC,CAAC;IACJ,CAAC;IA7CC,IAAI,CAACN,cAAc,GAAGA,cAAc;IACpC,IAAI,CAACC,KAAK,GAAGA,KAAK;EACpB;EAAC,IAAAc,aAAA,CAAAX,OAAA,EAAAL,UAAA;IAAAiB,GAAA;IAAAC,GAAA,EA6CD,SAAAA,IAAA,EAAwB;MACtB,OAAO,IAAI,CAAChB,KAAK;IACnB;EAAC;EAAA,OAAAF,UAAA;AAAA;AAAAmB,OAAA,CAAAnB,UAAA,GAAAA,UAAA;AAAA,IAAAM,gBAAA,CAAAD,OAAA,EArDUL,UAAU;EAAA,IAAAoB,IAAA,OAAAC,kBAAA,CAAAhB,OAAA,EAAAiB,YAAA,CAAAjB,OAAA,CAAAkB,IAAA,CAcP,SAAAC,QAAOC,IAAY;IAAA,IAAAC,kBAAA,EAAAC,mBAAA,EAAAC,EAAA,EAAA1B,KAAA;IAAA,OAAAoB,YAAA,CAAAjB,OAAA,CAAAwB,IAAA,UAAAC,SAAAC,QAAA;MAAA,kBAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAE,IAAA;QAAA;UAAAF,QAAA,CAAAE,IAAA;UAAA,OACLtB,OAAO,CAACuB,GAAG,CAAC,CACpC,IAAIvB,OAAO,CAAS,UAACC,CAAC,EAAK;YACzB,IAAAuB,QAAI,EAACV,IAAI,EAAEW,SAAS,EAAEA,SAAS,EAAE,UAACtB,IAAI,EAAEc,EAAE;cAAA,OAAKhB,CAAC,CAACgB,EAAE,CAAC;YAAA,EAAC;UACvD,CAAC,CAAC,EACF,IAAIjB,OAAO,CAAc,UAACC,CAAC,EAAK;YAC9B,IAAAyB,QAAI,EAACZ,IAAI,EAAE;cAACa,MAAM,EAAE;YAAI,CAAC,EAAE,UAACxB,IAAI,EAAEZ,KAAK;cAAA,OAAKU,CAAC,CAACV,KAAK,CAAC;YAAA,EAAC;UACvD,CAAC,CAAC,CACH,CAAC;QAAA;UAAAwB,kBAAA,GAAAK,QAAA,CAAAQ,IAAA;UAAAZ,mBAAA,OAAAa,eAAA,CAAAnC,OAAA,EAAAqB,kBAAA;UAPKE,EAAE,GAAAD,mBAAA;UAAEzB,KAAK,GAAAyB,mBAAA;UAAA,OAAAI,QAAA,CAAAU,MAAA,WAQT,IAAIzC,UAAU,CAAC4B,EAAE,EAAE1B,KAAK,CAAC;QAAA;QAAA;UAAA,OAAA6B,QAAA,CAAAW,IAAA;MAAA;IAAA,GAAAlB,OAAA;EAAA,CACjC;EAAA,iBAAAmB,EAAA;IAAA,OAAAvB,IAAA,CAAAwB,KAAA,OAAAC,SAAA;EAAA;AAAA"}
@@ -17,11 +17,11 @@ var _loaderUtils = require("@loaders.gl/loader-utils");
17
17
  var _compression = require("@loaders.gl/compression");
18
18
  var _fileUtils = require("../lib/utils/file-utils");
19
19
  var indexNames = ['3dSceneLayer.json.gz', '3dNodeIndexDocument.json.gz', 'sharedResource.json.gz'];
20
- var SLPKExtractor = function () {
21
- function SLPKExtractor() {
22
- (0, _classCallCheck2.default)(this, SLPKExtractor);
20
+ var SLPKConverter = function () {
21
+ function SLPKConverter() {
22
+ (0, _classCallCheck2.default)(this, SLPKConverter);
23
23
  }
24
- (0, _createClass2.default)(SLPKExtractor, [{
24
+ (0, _createClass2.default)(SLPKConverter, [{
25
25
  key: "extract",
26
26
  value: function () {
27
27
  var _extract = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee(options) {
@@ -42,7 +42,7 @@ var SLPKExtractor = function () {
42
42
  case 6:
43
43
  provider = _context.sent;
44
44
  _context.next = 9;
45
- return (0, _i3s.parseZipLocalFileHeader)(0, provider);
45
+ return (0, _i3s.parseZipLocalFileHeader)(0n, provider);
46
46
  case 9:
47
47
  localHeader = _context.sent;
48
48
  case 10:
@@ -166,7 +166,7 @@ var SLPKExtractor = function () {
166
166
  return writeFile;
167
167
  }()
168
168
  }]);
169
- return SLPKExtractor;
169
+ return SLPKConverter;
170
170
  }();
171
- exports.default = SLPKExtractor;
171
+ exports.default = SLPKConverter;
172
172
  //# sourceMappingURL=slpk-extractor.js.map