@cognite/reveal 3.2.0 → 4.0.0-dev.20221025

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 (209) hide show
  1. package/4ecf80bd209836dc884c.worker.js.LICENSE.txt +24 -0
  2. package/README.md +24 -1
  3. package/eptBinaryDecoder.worker.map +1 -1
  4. package/extensions/datasource.d.ts +1 -1
  5. package/extensions/datasource.js +1 -1
  6. package/extensions/datasource.map +1 -1
  7. package/index.d.ts +5 -2
  8. package/index.js +1 -1
  9. package/index.js.LICENSE.txt +8 -0
  10. package/index.map +1 -1
  11. package/package.json +6 -9
  12. package/packages/360-images/index.d.ts +6 -0
  13. package/packages/360-images/src/Image360Entity.d.ts +44 -0
  14. package/packages/360-images/src/Image360EntityFactory.d.ts +13 -0
  15. package/packages/360-images/src/Image360Facade.d.ts +20 -0
  16. package/packages/360-images/src/Image360Icon.d.ts +16 -0
  17. package/packages/api/src/api-helpers/Image360ApiHelper.d.ts +28 -0
  18. package/packages/api/src/public/RevealManager.d.ts +2 -3
  19. package/packages/api/src/public/migration/Cognite3DViewer.d.ts +44 -19
  20. package/packages/api/src/public/migration/types.d.ts +16 -14
  21. package/packages/api/src/public/types.d.ts +2 -1
  22. package/packages/api/src/storage/RevealManagerHelper.d.ts +1 -1
  23. package/packages/cad-geometry-loaders/index.d.ts +0 -1
  24. package/packages/cad-geometry-loaders/src/CadManager.d.ts +2 -2
  25. package/packages/cad-geometry-loaders/src/CadModelUpdateHandler.d.ts +1 -1
  26. package/packages/cad-geometry-loaders/src/InternalRevealCadOptions.d.ts +0 -6
  27. package/packages/cad-geometry-loaders/src/createCadManager.d.ts +3 -3
  28. package/packages/cad-geometry-loaders/src/sector/SectorLoader.d.ts +1 -2
  29. package/packages/cad-geometry-loaders/src/sector/culling/computeSectorCost.d.ts +0 -1
  30. package/packages/cad-geometry-loaders/src/sector/culling/takensectors/index.d.ts +0 -1
  31. package/packages/cad-model/src/CadModelFactory.d.ts +1 -2
  32. package/packages/cad-model/src/wrappers/CadNode.d.ts +2 -9
  33. package/packages/cad-model/src/wrappers/Cognite3DModel.d.ts +2 -2
  34. package/packages/cad-parsers/index.d.ts +2 -7
  35. package/packages/cad-parsers/src/cad/types.d.ts +0 -12
  36. package/packages/cad-parsers/src/metadata/CadModelMetadata.d.ts +1 -1
  37. package/packages/cad-parsers/src/metadata/CadModelMetadataRepository.d.ts +1 -1
  38. package/packages/cad-parsers/src/metadata/types.d.ts +0 -1
  39. package/packages/cad-parsers/src/utilities/computeBoundingBoxFromAttributes.d.ts +5 -1
  40. package/packages/cad-styling/index.d.ts +2 -1
  41. package/packages/cad-styling/src/CdfNodeCollectionBase.d.ts +20 -0
  42. package/packages/cad-styling/src/NodeCollectionDeserializer.d.ts +4 -9
  43. package/packages/cad-styling/src/NodeIdNodeCollection.d.ts +30 -0
  44. package/packages/cad-styling/src/PropertyFilterNodeCollection.d.ts +3 -15
  45. package/packages/cad-styling/src/SinglePropertyFilterNodeCollection.d.ts +2 -14
  46. package/packages/cad-styling/src/TreeIndexNodeCollection.d.ts +2 -0
  47. package/packages/camera-manager/index.d.ts +2 -0
  48. package/packages/camera-manager/src/ComboControls.d.ts +1 -3
  49. package/packages/camera-manager/src/Keyboard.d.ts +2 -1
  50. package/packages/camera-manager/src/ProxyCameraManager.d.ts +25 -0
  51. package/packages/camera-manager/src/StationaryCameraManager.d.ts +27 -0
  52. package/packages/data-providers/index.d.ts +21 -0
  53. package/packages/data-providers/src/Image360Provider.d.ts +6 -0
  54. package/packages/data-providers/src/ModelDataProvider.d.ts +21 -0
  55. package/packages/{modeldata-api → data-providers}/src/ModelIdentifier.d.ts +0 -0
  56. package/packages/{modeldata-api → data-providers}/src/ModelMetadataProvider.d.ts +0 -0
  57. package/packages/data-providers/src/PointCloudStylableObjectProvider.d.ts +8 -0
  58. package/packages/data-providers/src/image-360-data-providers/Cdf360ImageEventProvider.d.ts +16 -0
  59. package/packages/data-providers/src/image-360-data-providers/Local360ImageProvider.d.ts +8 -0
  60. package/packages/{modeldata-api/src → data-providers/src/metadata-providers}/CdfModelMetadataProvider.d.ts +3 -3
  61. package/packages/{modeldata-api/src → data-providers/src/metadata-providers}/LocalModelMetadataProvider.d.ts +3 -3
  62. package/packages/{modeldata-api/src → data-providers/src/model-data-providers}/CdfModelDataProvider.d.ts +1 -1
  63. package/packages/{modeldata-api/src → data-providers/src/model-data-providers}/LocalModelDataProvider.d.ts +1 -1
  64. package/packages/{modeldata-api/src → data-providers/src/model-identifiers}/CdfModelIdentifier.d.ts +1 -1
  65. package/packages/{modeldata-api/src → data-providers/src/model-identifiers}/LocalModelIdentifier.d.ts +1 -1
  66. package/packages/data-providers/src/pointcloud-stylable-object-providers/CdfPointCloudStylableObjectProvider.d.ts +14 -0
  67. package/packages/data-providers/src/pointcloud-stylable-object-providers/DummyPointCloudStylableObjectProvider.d.ts +9 -0
  68. package/packages/data-providers/src/pointcloud-stylable-object-providers/StylableObject.d.ts +12 -0
  69. package/packages/data-providers/src/pointcloud-stylable-object-providers/cdfAnnotationsToObjects.d.ts +5 -0
  70. package/packages/data-providers/src/pointcloud-stylable-object-providers/types.d.ts +19 -0
  71. package/packages/data-providers/src/types.d.ts +44 -0
  72. package/packages/{modeldata-api/src → data-providers/src/utilities}/applyDefaultModelTransformation.d.ts +1 -1
  73. package/packages/{modeldata-api/src/utilities.d.ts → data-providers/src/utilities/fetchWithStatusCheck.d.ts} +0 -2
  74. package/packages/data-source/src/CdfDataSource.d.ts +1 -1
  75. package/packages/data-source/src/DataSource.d.ts +1 -1
  76. package/packages/data-source/src/LocalDataSource.d.ts +1 -1
  77. package/packages/metrics/src/types.d.ts +1 -1
  78. package/packages/model-base/src/MetadataRepository.d.ts +1 -1
  79. package/packages/pointcloud-styling/index.d.ts +7 -0
  80. package/packages/pointcloud-styling/src/AnnotationIdPointCloudObjectCollection.d.ts +13 -0
  81. package/packages/pointcloud-styling/src/PointCloudAppearance.d.ts +10 -0
  82. package/packages/pointcloud-styling/src/PointCloudObjectCollection.d.ts +23 -0
  83. package/packages/pointcloud-styling/src/StyledPointCloudObjectCollection.d.ts +13 -0
  84. package/packages/pointclouds/index.d.ts +4 -1
  85. package/packages/pointclouds/src/CognitePointCloudModel.d.ts +68 -17
  86. package/packages/pointclouds/src/PointCloudFactory.d.ts +9 -4
  87. package/packages/pointclouds/src/PointCloudIntersection.d.ts +4 -0
  88. package/packages/pointclouds/src/PointCloudManager.d.ts +6 -5
  89. package/packages/pointclouds/src/PointCloudMetadata.d.ts +2 -2
  90. package/packages/pointclouds/src/PointCloudMetadataRepository.d.ts +1 -1
  91. package/packages/pointclouds/src/PointCloudNode.d.ts +17 -8
  92. package/packages/pointclouds/src/PointCloudPickingHandler.d.ts +4 -0
  93. package/packages/pointclouds/src/PotreeNodeWrapper.d.ts +28 -15
  94. package/packages/pointclouds/src/PotreePnextLoader.d.ts +1 -1
  95. package/packages/pointclouds/src/classificationsProviders/IPointClassificationsProvider.d.ts +8 -0
  96. package/packages/pointclouds/src/classificationsProviders/LocalPointClassificationsProvider.d.ts +9 -0
  97. package/packages/pointclouds/src/classificationsProviders/UrlPointClassificationsProvider.d.ts +12 -0
  98. package/packages/pointclouds/src/constants.d.ts +5 -0
  99. package/packages/pointclouds/src/createPointCloudManager.d.ts +4 -2
  100. package/packages/pointclouds/src/decomposeStylableObjects.d.ts +5 -0
  101. package/packages/pointclouds/src/potree-three-loader/Potree.d.ts +5 -10
  102. package/packages/pointclouds/src/potree-three-loader/geometry/PointCloudEptGeometry.d.ts +7 -12
  103. package/packages/pointclouds/src/potree-three-loader/geometry/PointCloudEptGeometryNode.d.ts +2 -1
  104. package/packages/pointclouds/src/potree-three-loader/index.d.ts +0 -1
  105. package/packages/pointclouds/src/potree-three-loader/loading/ClassificationInfo.d.ts +15 -0
  106. package/packages/pointclouds/src/potree-three-loader/loading/EptBinaryLoader.d.ts +6 -3
  107. package/packages/pointclouds/src/potree-three-loader/loading/EptJson.d.ts +25 -0
  108. package/packages/pointclouds/src/potree-three-loader/loading/EptLoader.d.ts +2 -2
  109. package/packages/pointclouds/src/potree-three-loader/loading/ILoader.d.ts +1 -1
  110. package/packages/pointclouds/src/potree-three-loader/tree/PointCloudOctree.d.ts +4 -4
  111. package/packages/pointclouds/src/potree-three-loader/tree/PointCloudOctreePickerHelper.d.ts +1 -1
  112. package/packages/pointclouds/src/potree-three-loader/types/IPotree.d.ts +2 -1
  113. package/packages/pointclouds/src/potree-three-loader/utils/createObjectIdMaps.d.ts +6 -0
  114. package/packages/pointclouds/src/potree-three-loader/utils/utils.d.ts +4 -0
  115. package/packages/pointclouds/src/potree-three-loader/workers/assignPointsToObjectsWithWasm.d.ts +5 -0
  116. package/packages/pointclouds/src/potree-three-loader/workers/eptBinaryDecoder.worker.d.ts +7 -18
  117. package/packages/pointclouds/src/potree-three-loader/workers/parseEpt.d.ts +4 -0
  118. package/packages/pointclouds/src/potree-three-loader/workers/types.d.ts +33 -0
  119. package/packages/pointclouds/wasm/index.d.ts +18 -0
  120. package/packages/rendering/index.d.ts +7 -3
  121. package/packages/rendering/src/PointCloudMaterialManager.d.ts +19 -0
  122. package/packages/rendering/src/pointcloud-rendering/PointCloudMaterial.d.ts +121 -0
  123. package/packages/rendering/src/pointcloud-rendering/PointCloudObjectAppearanceTexture.d.ts +30 -0
  124. package/packages/rendering/src/pointcloud-rendering/PointCloudObjectIdMaps.d.ts +7 -0
  125. package/packages/rendering/src/pointcloud-rendering/classification.d.ts +2 -0
  126. package/packages/{pointclouds/src/potree-three-loader/rendering → rendering/src/pointcloud-rendering}/constants.d.ts +7 -5
  127. package/packages/rendering/src/pointcloud-rendering/enums.d.ts +24 -0
  128. package/packages/{pointclouds/src/potree-three-loader/rendering → rendering/src/pointcloud-rendering}/gradients/SpectralGradient.d.ts +0 -0
  129. package/packages/rendering/src/pointcloud-rendering/index.d.ts +8 -0
  130. package/packages/rendering/src/pointcloud-rendering/texture-generation.d.ts +8 -0
  131. package/packages/{pointclouds/src/potree-three-loader/rendering → rendering/src/pointcloud-rendering}/types.d.ts +9 -1
  132. package/packages/rendering/src/render-passes/PointCloudEffectsPass.d.ts +3 -8
  133. package/packages/rendering/src/render-passes/PostProcessingPass.d.ts +1 -0
  134. package/packages/rendering/src/render-passes/types.d.ts +12 -11
  135. package/packages/rendering/src/render-pipeline-providers/DefaultRenderPipelineProvider.d.ts +2 -1
  136. package/packages/rendering/src/render-pipeline-providers/PointCloudRenderPipelineProvider.d.ts +2 -1
  137. package/packages/rendering/src/rendering/shaders.d.ts +4 -0
  138. package/packages/rendering/src/rendering/types.d.ts +0 -1
  139. package/packages/rendering/src/utilities/renderUtilities.d.ts +4 -2
  140. package/packages/sector-loader/index.d.ts +0 -1
  141. package/packages/sector-loader/src/GltfSectorLoader.d.ts +1 -1
  142. package/packages/sector-loader/src/GltfSectorRepository.d.ts +1 -1
  143. package/packages/tools/index.d.ts +0 -3
  144. package/packages/tools/src/Cognite3DViewerToolBase.d.ts +1 -1
  145. package/packages/tools/src/HtmlOverlay/HtmlOverlayTool.d.ts +1 -1
  146. package/packages/tools/src/Measurement/MeasurementTool.d.ts +1 -1
  147. package/packages/utilities/index.d.ts +7 -4
  148. package/packages/utilities/src/SceneHandler.d.ts +6 -6
  149. package/packages/utilities/src/events/types.d.ts +9 -1
  150. package/packages/utilities/src/linalg.d.ts +11 -0
  151. package/packages/utilities/src/shapes/Box.d.ts +12 -0
  152. package/packages/utilities/src/shapes/CompositeShape.d.ts +13 -0
  153. package/packages/utilities/src/shapes/Cylinder.d.ts +14 -0
  154. package/packages/utilities/src/shapes/ISerializableShape.d.ts +11 -0
  155. package/packages/utilities/src/shapes/IShape.d.ts +9 -0
  156. package/packages/utilities/src/shapes/SerializableBox.d.ts +8 -0
  157. package/packages/utilities/src/shapes/SerializableCompositeShape.d.ts +7 -0
  158. package/packages/utilities/src/shapes/SerializableCylinder.d.ts +10 -0
  159. package/packages/utilities/src/shapes/index.d.ts +11 -0
  160. package/packages/utilities/src/three/createDistinctColors.d.ts +5 -0
  161. package/packages/utilities/src/three/fromThreeVector3.d.ts +5 -0
  162. package/packages/utilities/src/workers/workerize-transferable/index.d.ts +7 -0
  163. package/packages/utilities/src/workers/workerize-transferable/message-types.d.ts +4 -0
  164. package/packages/utilities/src/workers/workerize-transferable/on-main.d.ts +13 -0
  165. package/packages/utilities/src/workers/workerize-transferable/on-worker.d.ts +14 -0
  166. package/packages/utilities/src/workers/workerize-transferable/util.d.ts +10 -0
  167. package/packages/utilities/src/worldToViewport.d.ts +4 -0
  168. package/tools.js +1 -1
  169. package/tools.map +1 -1
  170. package/packages/cad-geometry-loaders/src/sector/culling/ByVisibilityGpuSectorCuller.d.ts +0 -51
  171. package/packages/cad-geometry-loaders/src/sector/culling/OrderSectorsByVisibilityCoverage.d.ts +0 -106
  172. package/packages/cad-geometry-loaders/src/sector/culling/RenderAlreadyLoadedGeometryProvider.d.ts +0 -11
  173. package/packages/cad-geometry-loaders/src/sector/culling/createV8SectorCuller.d.ts +0 -7
  174. package/packages/cad-geometry-loaders/src/sector/culling/takensectors/TakenV8SectorMap.d.ts +0 -17
  175. package/packages/cad-geometry-loaders/src/sector/culling/takensectors/TakenV8SectorTree.d.ts +0 -24
  176. package/packages/cad-geometry-loaders/src/utilities/rxOperations.d.ts +0 -6
  177. package/packages/cad-model/src/batching/InstancedMeshManager.d.ts +0 -20
  178. package/packages/cad-parsers/src/cad/CadSectorParser.d.ts +0 -15
  179. package/packages/cad-parsers/src/cad/filterInstanceMesh.d.ts +0 -6
  180. package/packages/cad-parsers/src/cad/filterPrimitivesV8.d.ts +0 -9
  181. package/packages/cad-parsers/src/cad/primitiveGeometries.d.ts +0 -30
  182. package/packages/cad-parsers/src/cad/triangleMeshes.d.ts +0 -6
  183. package/packages/cad-parsers/src/metadata/parsers/CadMetadataParserV8.d.ts +0 -6
  184. package/packages/cad-parsers/src/utilities/float32BufferToMatrix.d.ts +0 -12
  185. package/packages/modeldata-api/index.d.ts +0 -12
  186. package/packages/modeldata-api/src/types.d.ts +0 -43
  187. package/packages/pointclouds/src/createPointClassKey.d.ts +0 -5
  188. package/packages/pointclouds/src/potree-three-loader/rendering/PointCloudMaterial.d.ts +0 -204
  189. package/packages/pointclouds/src/potree-three-loader/rendering/classification.d.ts +0 -2
  190. package/packages/pointclouds/src/potree-three-loader/rendering/clipping.d.ts +0 -12
  191. package/packages/pointclouds/src/potree-three-loader/rendering/enums.d.ts +0 -46
  192. package/packages/pointclouds/src/potree-three-loader/rendering/features.d.ts +0 -6
  193. package/packages/pointclouds/src/potree-three-loader/rendering/index.d.ts +0 -5
  194. package/packages/pointclouds/src/potree-three-loader/rendering/texture-generation.d.ts +0 -5
  195. package/packages/pointclouds/src/potree-three-loader/utils/math.d.ts +0 -1
  196. package/packages/rendering/src/rendering/createSimpleGeometryMesh.d.ts +0 -6
  197. package/packages/rendering/src/rendering/primitives.d.ts +0 -12
  198. package/packages/sector-loader/src/V8SectorRepository.d.ts +0 -26
  199. package/packages/sector-loader/src/v8/SimpleAndDetailedToSector3D.d.ts +0 -20
  200. package/packages/sector-loader/src/v8/arrays.d.ts +0 -5
  201. package/packages/sector-loader/src/v8/groupMeshesByNumber.d.ts +0 -8
  202. package/packages/sector-loader/src/v8/sectorUtilities.d.ts +0 -16
  203. package/packages/tools/src/DebugLoadedSectorsTool.d.ts +0 -23
  204. package/packages/tools/src/Geomap/Geomap.d.ts +0 -17
  205. package/packages/tools/src/Geomap/GeomapTool.d.ts +0 -23
  206. package/packages/tools/src/Geomap/MapConfig.d.ts +0 -195
  207. package/packages/utilities/src/networking/isTheSameDomain.d.ts +0 -11
  208. package/packages/utilities/src/revealEnv.d.ts +0 -10
  209. package/packages/utilities/src/workers/WorkerPool.d.ts +0 -14
@@ -0,0 +1,24 @@
1
+ /*!
2
+ * Adopted from https://github.com/naoak/workerize-transferable
3
+ */
4
+
5
+ /*!
6
+ * Copyright 2021 Cognite AS
7
+ */
8
+
9
+ /*!
10
+ * Copyright 2022 Cognite AS
11
+ */
12
+
13
+ /*!
14
+ * The buffer module from node.js, for the browser.
15
+ *
16
+ * @author Feross Aboukhadijeh <feross@feross.org> <http://feross.org>
17
+ * @license MIT
18
+ */
19
+
20
+ /**
21
+ * @license
22
+ * Copyright 2010-2022 Three.js Authors
23
+ * SPDX-License-Identifier: MIT
24
+ */
package/README.md CHANGED
@@ -70,13 +70,19 @@ In case if you see an error like that:
70
70
 
71
71
  See the next steps in our [documentation](https://cognitedata.github.io/reveal-docs/docs/installation#installation-for-projects-with-content-security-policy).
72
72
 
73
+ ## Prerequisites
74
+
75
+ For development, you will need to install [Node](https://nodejs.org/en/download/), [Yarn](https://yarnpkg.com/getting-started/install) and [Rust+Cargo](https://doc.rust-lang.org/cargo/getting-started/installation.html).
76
+
77
+ Run `yarn` in the viewer
78
+
73
79
  ## Local Packages
74
80
  The Reveal viewer is structured using local packages.
75
81
  This allows you to test features in isolation and constrain the dependencies with logical barriers between features.
76
82
  Packages are located in the `/packages/` subfolder.
77
83
  There is no enforced structure of the packages and their layout and content will vary depending on what the package exposes to the rest of the system.
78
84
  Dependencies that are located in the `viewer/package.json` will be shared and are accessible by any package without having to explicitly declare a dependency in the respective package's `package.json`.
79
- Any external dependency (e.g. `lodash`, `threejs`, etc.) must be declared in the root `package.json` such that they will be properly installed by users that consume the `Reveal` NPM package.
85
+ Any external dependency (e.g. `lodash`, `threejs`, etc.) must be declared in the root `package.json` such that they will be properly installed by users that consume the `Reveal` NPM package.
80
86
 
81
87
  ### Creating a local package
82
88
  Create a new folder under the `/packages/` folder, e.g. `/packages/[MY-PACKAGE-NAME]` and include a package with the following structure:
@@ -106,6 +112,22 @@ If your package depends on another local package, it must be explicitly declared
106
112
  The `workspace` keyword declares that the dependency is a local package and should never be fetched from NPM.
107
113
  And the `':*'` syntax means that it should just grab any version available. See [this](https://yarnpkg.com/features/workspaces) for more documentation on yarn workspaces.
108
114
 
115
+ If you want to add Rust/Webassembly code to a package, you can add the following script in `package.json`:
116
+
117
+ ```json
118
+ {
119
+ "scripts": {
120
+ "run-wasm-pack": "yarn run ws:update-cargo-index && wasm-pack"
121
+ }
122
+ }
123
+ ```
124
+ and let the Cargo crate reside in `<package-name>/wasm`.
125
+ Then the crate will automatically be built and tested by the `build` and `test` scripts in the workspace root respectively.
126
+ The `ws:update-cargo-index` step ensures that the local `crates.io` index has been updated before running build.
127
+ Otherwise, the index update will be executed in a quiet manner, and the command may appear to hang for several minutes.
128
+
129
+ When writing tests in Rust, the tests must be annotated with the `#[wasm_bindgen_test]` attribute, instead of the conventional `#[test]`, and `wasm-bindgen-test` must be added as a (dev-)dependency. All tests are run as part of the normal `yarn test` script in the root folder, but can also be run manually with e.g. `wasm-pack test --chrome --headless` in the relevant `wasm` folder.
130
+
109
131
  It is also possible to run and test a local package in isolation from the rest of Reveal.
110
132
  Convenience functionality has been created to make this easy.
111
133
  Add the following script to your package's `package.json`:
@@ -145,6 +167,7 @@ For more information about visual tests, see [visual-tests/README.md](visual-tes
145
167
  ├── app # Runnable app
146
168
  └──index.ts # Entry point for runnable app
147
169
  ├── src # Source code for package
170
+ ├── wasm # Rust/Webassembly source code for package
148
171
  ├── test # Automated tests
149
172
  ├── package.json # Package declaration
150
173
  ├── index.ts # Entry point for package