vim-web 0.6.0-dev.3 → 0.6.0-dev.5

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 (262) hide show
  1. package/README.md +104 -75
  2. package/dist/style.css +3 -0
  3. package/dist/vim-bim.d.ts +1920 -0
  4. package/dist/vim-web.d.ts +3351 -0
  5. package/dist/vim-web.iife.js +18541 -19530
  6. package/dist/vim-web.iife.js.map +1 -1
  7. package/dist/vim-web.js +18561 -19550
  8. package/dist/vim-web.js.map +1 -1
  9. package/package.json +12 -9
  10. package/dist/types/core-viewers/index.d.ts +0 -3
  11. package/dist/types/core-viewers/shared/baseInputHandler.d.ts +0 -28
  12. package/dist/types/core-viewers/shared/index.d.ts +0 -11
  13. package/dist/types/core-viewers/shared/inputAdapter.d.ts +0 -22
  14. package/dist/types/core-viewers/shared/inputHandler.d.ts +0 -99
  15. package/dist/types/core-viewers/shared/keyboardHandler.d.ts +0 -96
  16. package/dist/types/core-viewers/shared/loadResult.d.ts +0 -55
  17. package/dist/types/core-viewers/shared/mouseHandler.d.ts +0 -30
  18. package/dist/types/core-viewers/shared/raycaster.d.ts +0 -27
  19. package/dist/types/core-viewers/shared/selection.d.ts +0 -105
  20. package/dist/types/core-viewers/shared/touchHandler.d.ts +0 -42
  21. package/dist/types/core-viewers/shared/vim.d.ts +0 -48
  22. package/dist/types/core-viewers/shared/vimCollection.d.ts +0 -25
  23. package/dist/types/core-viewers/ultra/camera.d.ts +0 -116
  24. package/dist/types/core-viewers/ultra/colorManager.d.ts +0 -73
  25. package/dist/types/core-viewers/ultra/decoder.d.ts +0 -108
  26. package/dist/types/core-viewers/ultra/decoderWithWorker.d.ts +0 -80
  27. package/dist/types/core-viewers/ultra/element3d.d.ts +0 -44
  28. package/dist/types/core-viewers/ultra/index.d.ts +0 -29
  29. package/dist/types/core-viewers/ultra/inputAdapter.d.ts +0 -8
  30. package/dist/types/core-viewers/ultra/loadRequest.d.ts +0 -14
  31. package/dist/types/core-viewers/ultra/logger.d.ts +0 -9
  32. package/dist/types/core-viewers/ultra/protocol.d.ts +0 -13
  33. package/dist/types/core-viewers/ultra/raycaster.d.ts +0 -52
  34. package/dist/types/core-viewers/ultra/remoteColor.d.ts +0 -37
  35. package/dist/types/core-viewers/ultra/renderer.d.ts +0 -147
  36. package/dist/types/core-viewers/ultra/rpcClient.d.ts +0 -86
  37. package/dist/types/core-viewers/ultra/rpcMarshal.d.ts +0 -64
  38. package/dist/types/core-viewers/ultra/rpcSafeClient.d.ts +0 -470
  39. package/dist/types/core-viewers/ultra/rpcTypes.d.ts +0 -71
  40. package/dist/types/core-viewers/ultra/rpcUtils.d.ts +0 -8
  41. package/dist/types/core-viewers/ultra/sectionBox.d.ts +0 -33
  42. package/dist/types/core-viewers/ultra/selection.d.ts +0 -4
  43. package/dist/types/core-viewers/ultra/socketClient.d.ts +0 -153
  44. package/dist/types/core-viewers/ultra/streamLogger.d.ts +0 -19
  45. package/dist/types/core-viewers/ultra/streamRenderer.d.ts +0 -7
  46. package/dist/types/core-viewers/ultra/viewer.d.ts +0 -139
  47. package/dist/types/core-viewers/ultra/viewport.d.ts +0 -47
  48. package/dist/types/core-viewers/ultra/vim.d.ts +0 -50
  49. package/dist/types/core-viewers/ultra/vimCollection.d.ts +0 -51
  50. package/dist/types/core-viewers/ultra/visibility.d.ts +0 -100
  51. package/dist/types/core-viewers/webgl/index.d.ts +0 -5
  52. package/dist/types/core-viewers/webgl/loader/averageBoundingBox.d.ts +0 -6
  53. package/dist/types/core-viewers/webgl/loader/colorAttribute.d.ts +0 -34
  54. package/dist/types/core-viewers/webgl/loader/element3d.d.ts +0 -108
  55. package/dist/types/core-viewers/webgl/loader/elementMapping.d.ts +0 -113
  56. package/dist/types/core-viewers/webgl/loader/geometry.d.ts +0 -103
  57. package/dist/types/core-viewers/webgl/loader/index.d.ts +0 -24
  58. package/dist/types/core-viewers/webgl/loader/materials/ghostMaterial.d.ts +0 -16
  59. package/dist/types/core-viewers/webgl/loader/materials/index.d.ts +0 -10
  60. package/dist/types/core-viewers/webgl/loader/materials/maskMaterial.d.ts +0 -8
  61. package/dist/types/core-viewers/webgl/loader/materials/materials.d.ts +0 -161
  62. package/dist/types/core-viewers/webgl/loader/materials/mergeMaterial.d.ts +0 -18
  63. package/dist/types/core-viewers/webgl/loader/materials/outlineMaterial.d.ts +0 -78
  64. package/dist/types/core-viewers/webgl/loader/materials/pickingMaterial.d.ts +0 -42
  65. package/dist/types/core-viewers/webgl/loader/materials/simpleMaterial.d.ts +0 -17
  66. package/dist/types/core-viewers/webgl/loader/materials/skyboxMaterial.d.ts +0 -16
  67. package/dist/types/core-viewers/webgl/loader/materials/standardMaterial.d.ts +0 -57
  68. package/dist/types/core-viewers/webgl/loader/materials/transferMaterial.d.ts +0 -8
  69. package/dist/types/core-viewers/webgl/loader/mesh.d.ts +0 -118
  70. package/dist/types/core-viewers/webgl/loader/progressive/g3dOffsets.d.ts +0 -53
  71. package/dist/types/core-viewers/webgl/loader/progressive/g3dSubset.d.ts +0 -117
  72. package/dist/types/core-viewers/webgl/loader/progressive/insertableGeometry.d.ts +0 -45
  73. package/dist/types/core-viewers/webgl/loader/progressive/insertableMesh.d.ts +0 -63
  74. package/dist/types/core-viewers/webgl/loader/progressive/insertableSubmesh.d.ts +0 -43
  75. package/dist/types/core-viewers/webgl/loader/progressive/instancedMesh.d.ts +0 -39
  76. package/dist/types/core-viewers/webgl/loader/progressive/instancedMeshFactory.d.ts +0 -27
  77. package/dist/types/core-viewers/webgl/loader/progressive/instancedSubmesh.d.ts +0 -31
  78. package/dist/types/core-viewers/webgl/loader/progressive/legacyMeshFactory.d.ts +0 -26
  79. package/dist/types/core-viewers/webgl/loader/progressive/loadRequest.d.ts +0 -21
  80. package/dist/types/core-viewers/webgl/loader/progressive/loadingSynchronizer.d.ts +0 -27
  81. package/dist/types/core-viewers/webgl/loader/progressive/subsetBuilder.d.ts +0 -74
  82. package/dist/types/core-viewers/webgl/loader/progressive/subsetRequest.d.ts +0 -38
  83. package/dist/types/core-viewers/webgl/loader/progressive/vimx.d.ts +0 -17
  84. package/dist/types/core-viewers/webgl/loader/scene.d.ts +0 -90
  85. package/dist/types/core-viewers/webgl/loader/vim.d.ts +0 -163
  86. package/dist/types/core-viewers/webgl/loader/vimCollection.d.ts +0 -79
  87. package/dist/types/core-viewers/webgl/loader/vimSettings.d.ts +0 -69
  88. package/dist/types/core-viewers/webgl/loader/webglAttribute.d.ts +0 -19
  89. package/dist/types/core-viewers/webgl/utils/boxes.d.ts +0 -5
  90. package/dist/types/core-viewers/webgl/viewer/camera/camera.d.ts +0 -149
  91. package/dist/types/core-viewers/webgl/viewer/camera/cameraInterface.d.ts +0 -107
  92. package/dist/types/core-viewers/webgl/viewer/camera/cameraMovement.d.ts +0 -88
  93. package/dist/types/core-viewers/webgl/viewer/camera/cameraMovementLerp.d.ts +0 -28
  94. package/dist/types/core-viewers/webgl/viewer/camera/cameraMovementSnap.d.ts +0 -23
  95. package/dist/types/core-viewers/webgl/viewer/camera/cameraOrthographic.d.ts +0 -11
  96. package/dist/types/core-viewers/webgl/viewer/camera/cameraPerspective.d.ts +0 -11
  97. package/dist/types/core-viewers/webgl/viewer/camera/index.d.ts +0 -7
  98. package/dist/types/core-viewers/webgl/viewer/environment/environment.d.ts +0 -38
  99. package/dist/types/core-viewers/webgl/viewer/environment/index.d.ts +0 -3
  100. package/dist/types/core-viewers/webgl/viewer/environment/light.d.ts +0 -43
  101. package/dist/types/core-viewers/webgl/viewer/environment/skybox.d.ts +0 -39
  102. package/dist/types/core-viewers/webgl/viewer/gizmos/axes/axes.d.ts +0 -14
  103. package/dist/types/core-viewers/webgl/viewer/gizmos/axes/axesSettings.d.ts +0 -20
  104. package/dist/types/core-viewers/webgl/viewer/gizmos/axes/gizmoAxes.d.ts +0 -62
  105. package/dist/types/core-viewers/webgl/viewer/gizmos/axes/index.d.ts +0 -3
  106. package/dist/types/core-viewers/webgl/viewer/gizmos/gizmoLoading.d.ts +0 -23
  107. package/dist/types/core-viewers/webgl/viewer/gizmos/gizmoOrbit.d.ts +0 -76
  108. package/dist/types/core-viewers/webgl/viewer/gizmos/gizmos.d.ts +0 -45
  109. package/dist/types/core-viewers/webgl/viewer/gizmos/index.d.ts +0 -7
  110. package/dist/types/core-viewers/webgl/viewer/gizmos/markers/gizmoMarker.d.ts +0 -113
  111. package/dist/types/core-viewers/webgl/viewer/gizmos/markers/gizmoMarkers.d.ts +0 -52
  112. package/dist/types/core-viewers/webgl/viewer/gizmos/markers/index.d.ts +0 -2
  113. package/dist/types/core-viewers/webgl/viewer/gizmos/measure/index.d.ts +0 -3
  114. package/dist/types/core-viewers/webgl/viewer/gizmos/measure/measure.d.ts +0 -97
  115. package/dist/types/core-viewers/webgl/viewer/gizmos/measure/measureGizmo.d.ts +0 -44
  116. package/dist/types/core-viewers/webgl/viewer/gizmos/measure/measureHtml.d.ts +0 -26
  117. package/dist/types/core-viewers/webgl/viewer/gizmos/sectionBox/SectionBoxMesh.d.ts +0 -15
  118. package/dist/types/core-viewers/webgl/viewer/gizmos/sectionBox/index.d.ts +0 -7
  119. package/dist/types/core-viewers/webgl/viewer/gizmos/sectionBox/sectionBox.d.ts +0 -103
  120. package/dist/types/core-viewers/webgl/viewer/gizmos/sectionBox/sectionBoxGizmo.d.ts +0 -18
  121. package/dist/types/core-viewers/webgl/viewer/gizmos/sectionBox/sectionBoxHandle.d.ts +0 -20
  122. package/dist/types/core-viewers/webgl/viewer/gizmos/sectionBox/sectionBoxHandles.d.ts +0 -20
  123. package/dist/types/core-viewers/webgl/viewer/gizmos/sectionBox/sectionBoxInputs.d.ts +0 -118
  124. package/dist/types/core-viewers/webgl/viewer/gizmos/sectionBox/sectionBoxOutline.d.ts +0 -15
  125. package/dist/types/core-viewers/webgl/viewer/index.d.ts +0 -10
  126. package/dist/types/core-viewers/webgl/viewer/inputAdapter.d.ts +0 -3
  127. package/dist/types/core-viewers/webgl/viewer/raycaster.d.ts +0 -71
  128. package/dist/types/core-viewers/webgl/viewer/rendering/gpuPicker.d.ts +0 -145
  129. package/dist/types/core-viewers/webgl/viewer/rendering/index.d.ts +0 -4
  130. package/dist/types/core-viewers/webgl/viewer/rendering/mergePass.d.ts +0 -18
  131. package/dist/types/core-viewers/webgl/viewer/rendering/outlinePass.d.ts +0 -19
  132. package/dist/types/core-viewers/webgl/viewer/rendering/renderScene.d.ts +0 -57
  133. package/dist/types/core-viewers/webgl/viewer/rendering/renderer.d.ts +0 -135
  134. package/dist/types/core-viewers/webgl/viewer/rendering/renderingComposer.d.ts +0 -95
  135. package/dist/types/core-viewers/webgl/viewer/rendering/renderingSection.d.ts +0 -40
  136. package/dist/types/core-viewers/webgl/viewer/rendering/transferPass.d.ts +0 -17
  137. package/dist/types/core-viewers/webgl/viewer/selection.d.ts +0 -9
  138. package/dist/types/core-viewers/webgl/viewer/settings/index.d.ts +0 -3
  139. package/dist/types/core-viewers/webgl/viewer/settings/viewerDefaultSettings.d.ts +0 -5
  140. package/dist/types/core-viewers/webgl/viewer/settings/viewerSettings.d.ts +0 -310
  141. package/dist/types/core-viewers/webgl/viewer/settings/viewerSettingsParsing.d.ts +0 -9
  142. package/dist/types/core-viewers/webgl/viewer/viewer.d.ts +0 -115
  143. package/dist/types/core-viewers/webgl/viewer/viewport.d.ts +0 -73
  144. package/dist/types/index.d.ts +0 -3
  145. package/dist/types/react-viewers/bim/bimInfoBody.d.ts +0 -9
  146. package/dist/types/react-viewers/bim/bimInfoData.d.ts +0 -144
  147. package/dist/types/react-viewers/bim/bimInfoHeader.d.ts +0 -6
  148. package/dist/types/react-viewers/bim/bimInfoObject.d.ts +0 -12
  149. package/dist/types/react-viewers/bim/bimInfoPanel.d.ts +0 -10
  150. package/dist/types/react-viewers/bim/bimInfoVim.d.ts +0 -5
  151. package/dist/types/react-viewers/bim/bimPanel.d.ts +0 -40
  152. package/dist/types/react-viewers/bim/bimSearch.d.ts +0 -17
  153. package/dist/types/react-viewers/bim/bimTree.d.ts +0 -33
  154. package/dist/types/react-viewers/bim/bimTreeData.d.ts +0 -44
  155. package/dist/types/react-viewers/bim/bimUtils.d.ts +0 -13
  156. package/dist/types/react-viewers/bim/index.d.ts +0 -8
  157. package/dist/types/react-viewers/bim/openState.d.ts +0 -5
  158. package/dist/types/react-viewers/container.d.ts +0 -27
  159. package/dist/types/react-viewers/controlbar/controlBar.d.ts +0 -25
  160. package/dist/types/react-viewers/controlbar/controlBarButton.d.ts +0 -15
  161. package/dist/types/react-viewers/controlbar/controlBarIds.d.ts +0 -32
  162. package/dist/types/react-viewers/controlbar/controlBarSection.d.ts +0 -8
  163. package/dist/types/react-viewers/controlbar/index.d.ts +0 -5
  164. package/dist/types/react-viewers/controlbar/style.d.ts +0 -10
  165. package/dist/types/react-viewers/errors/errorStyle.d.ts +0 -15
  166. package/dist/types/react-viewers/errors/errors.d.ts +0 -6
  167. package/dist/types/react-viewers/errors/index.d.ts +0 -2
  168. package/dist/types/react-viewers/generic/genericField.d.ts +0 -31
  169. package/dist/types/react-viewers/generic/genericPanel.d.ts +0 -12
  170. package/dist/types/react-viewers/generic/index.d.ts +0 -2
  171. package/dist/types/react-viewers/generic/inputNumber.d.ts +0 -4
  172. package/dist/types/react-viewers/helpers/cameraObserver.d.ts +0 -8
  173. package/dist/types/react-viewers/helpers/cursor.d.ts +0 -37
  174. package/dist/types/react-viewers/helpers/customizer.d.ts +0 -4
  175. package/dist/types/react-viewers/helpers/data.d.ts +0 -27
  176. package/dist/types/react-viewers/helpers/element.d.ts +0 -14
  177. package/dist/types/react-viewers/helpers/fullScreenObserver.d.ts +0 -9
  178. package/dist/types/react-viewers/helpers/index.d.ts +0 -6
  179. package/dist/types/react-viewers/helpers/layout.d.ts +0 -24
  180. package/dist/types/react-viewers/helpers/loadRequest.d.ts +0 -28
  181. package/dist/types/react-viewers/helpers/reactUtils.d.ts +0 -286
  182. package/dist/types/react-viewers/helpers/requestResult.d.ts +0 -13
  183. package/dist/types/react-viewers/helpers/utils.d.ts +0 -15
  184. package/dist/types/react-viewers/icons.d.ts +0 -61
  185. package/dist/types/react-viewers/index.d.ts +0 -14
  186. package/dist/types/react-viewers/panels/axesPanel.d.ts +0 -21
  187. package/dist/types/react-viewers/panels/contextMenu.d.ts +0 -83
  188. package/dist/types/react-viewers/panels/help.d.ts +0 -10
  189. package/dist/types/react-viewers/panels/index.d.ts +0 -26
  190. package/dist/types/react-viewers/panels/isolationPanel.d.ts +0 -11
  191. package/dist/types/react-viewers/panels/loadingBox.d.ts +0 -29
  192. package/dist/types/react-viewers/panels/logo.d.ts +0 -5
  193. package/dist/types/react-viewers/panels/messageBox.d.ts +0 -15
  194. package/dist/types/react-viewers/panels/modal.d.ts +0 -17
  195. package/dist/types/react-viewers/panels/overlay.d.ts +0 -10
  196. package/dist/types/react-viewers/panels/performance.d.ts +0 -7
  197. package/dist/types/react-viewers/panels/restOfScreen.d.ts +0 -5
  198. package/dist/types/react-viewers/panels/sectionBoxPanel.d.ts +0 -10
  199. package/dist/types/react-viewers/panels/sidePanel.d.ts +0 -20
  200. package/dist/types/react-viewers/panels/toast.d.ts +0 -22
  201. package/dist/types/react-viewers/settings/anySettings.d.ts +0 -7
  202. package/dist/types/react-viewers/settings/index.d.ts +0 -5
  203. package/dist/types/react-viewers/settings/settingsInputBox.d.ts +0 -4
  204. package/dist/types/react-viewers/settings/settingsItem.d.ts +0 -30
  205. package/dist/types/react-viewers/settings/settingsKeys.d.ts +0 -46
  206. package/dist/types/react-viewers/settings/settingsPanel.d.ts +0 -18
  207. package/dist/types/react-viewers/settings/settingsPanelContent.d.ts +0 -6
  208. package/dist/types/react-viewers/settings/settingsState.d.ts +0 -18
  209. package/dist/types/react-viewers/settings/settingsStorage.d.ts +0 -15
  210. package/dist/types/react-viewers/settings/settingsSubtitle.d.ts +0 -2
  211. package/dist/types/react-viewers/settings/settingsToggle.d.ts +0 -11
  212. package/dist/types/react-viewers/settings/userBoolean.d.ts +0 -17
  213. package/dist/types/react-viewers/state/cameraState.d.ts +0 -24
  214. package/dist/types/react-viewers/state/controlBarState.d.ts +0 -88
  215. package/dist/types/react-viewers/state/fullScreenState.d.ts +0 -4
  216. package/dist/types/react-viewers/state/index.d.ts +0 -9
  217. package/dist/types/react-viewers/state/measureState.d.ts +0 -7
  218. package/dist/types/react-viewers/state/pointerState.d.ts +0 -6
  219. package/dist/types/react-viewers/state/sectionBoxState.d.ts +0 -34
  220. package/dist/types/react-viewers/state/sharedIsolation.d.ts +0 -40
  221. package/dist/types/react-viewers/state/sideState.d.ts +0 -22
  222. package/dist/types/react-viewers/state/viewerInputs.d.ts +0 -3
  223. package/dist/types/react-viewers/ultra/camera.d.ts +0 -3
  224. package/dist/types/react-viewers/ultra/controlBar.d.ts +0 -9
  225. package/dist/types/react-viewers/ultra/errors/fileLoadingError.d.ts +0 -2
  226. package/dist/types/react-viewers/ultra/errors/fileOpeningError.d.ts +0 -2
  227. package/dist/types/react-viewers/ultra/errors/serverCompatibilityError.d.ts +0 -2
  228. package/dist/types/react-viewers/ultra/errors/serverConnectionError.d.ts +0 -2
  229. package/dist/types/react-viewers/ultra/errors/serverFileDownloadingError.d.ts +0 -2
  230. package/dist/types/react-viewers/ultra/errors/serverStreamError.d.ts +0 -2
  231. package/dist/types/react-viewers/ultra/errors/ultraErrors.d.ts +0 -3
  232. package/dist/types/react-viewers/ultra/index.d.ts +0 -3
  233. package/dist/types/react-viewers/ultra/isolation.d.ts +0 -3
  234. package/dist/types/react-viewers/ultra/modal.d.ts +0 -5
  235. package/dist/types/react-viewers/ultra/sectionBox.d.ts +0 -3
  236. package/dist/types/react-viewers/ultra/settings.d.ts +0 -13
  237. package/dist/types/react-viewers/ultra/settingsPanel.d.ts +0 -5
  238. package/dist/types/react-viewers/ultra/viewer.d.ts +0 -23
  239. package/dist/types/react-viewers/ultra/viewerRef.d.ts +0 -50
  240. package/dist/types/react-viewers/urls.d.ts +0 -2
  241. package/dist/types/react-viewers/webgl/camera.d.ts +0 -3
  242. package/dist/types/react-viewers/webgl/index.d.ts +0 -4
  243. package/dist/types/react-viewers/webgl/inputsBindings.d.ts +0 -8
  244. package/dist/types/react-viewers/webgl/isolation.d.ts +0 -2
  245. package/dist/types/react-viewers/webgl/loading.d.ts +0 -64
  246. package/dist/types/react-viewers/webgl/sectionBox.d.ts +0 -3
  247. package/dist/types/react-viewers/webgl/settings.d.ts +0 -36
  248. package/dist/types/react-viewers/webgl/settingsPanel.d.ts +0 -12
  249. package/dist/types/react-viewers/webgl/viewer.d.ts +0 -28
  250. package/dist/types/react-viewers/webgl/viewerRef.d.ts +0 -131
  251. package/dist/types/react-viewers/webgl/viewerState.d.ts +0 -13
  252. package/dist/types/utils/array.d.ts +0 -18
  253. package/dist/types/utils/asyncQueue.d.ts +0 -15
  254. package/dist/types/utils/debounce.d.ts +0 -30
  255. package/dist/types/utils/index.d.ts +0 -10
  256. package/dist/types/utils/interfaces.d.ts +0 -3
  257. package/dist/types/utils/math3d.d.ts +0 -19
  258. package/dist/types/utils/partial.d.ts +0 -7
  259. package/dist/types/utils/promise.d.ts +0 -21
  260. package/dist/types/utils/threeUtils.d.ts +0 -4
  261. package/dist/types/utils/url.d.ts +0 -10
  262. package/dist/types/utils/validation.d.ts +0 -29
@@ -1,470 +0,0 @@
1
- import * as RpcTypes from "./rpcTypes";
2
- import { MaterialHandle, RpcClient } from "./rpcClient";
3
- import { VisibilityState } from "./visibility";
4
- /**
5
- * Describes the source location and optional authentication for loading a VIM file.
6
- */
7
- export type VimSource = {
8
- /**
9
- * URL to the VIM file.
10
- * Can be a local path (file://) or remote URL (http:// or https://).
11
- */
12
- url: string;
13
- /**
14
- * Optional authentication token for accessing protected resources.
15
- */
16
- authToken?: string;
17
- };
18
- /**
19
- * Represents the loading state and progress for a single vim.
20
- */
21
- export type VimLoadingState = {
22
- /**
23
- * Current loading status.
24
- */
25
- status: VimLoadingStatus;
26
- /**
27
- * Loading progress as a percentage from 0 to 100.
28
- */
29
- progress: number;
30
- };
31
- /**
32
- * Defines supported input modes for camera control in the viewer.
33
- */
34
- export declare enum InputMode {
35
- /**
36
- * Orbit mode — rotates around a fixed point.
37
- */
38
- Orbit = "orbit",
39
- /**
40
- * Free mode — allows unrestricted movement.
41
- */
42
- Free = "free"
43
- }
44
- /**
45
- * Scene-wide rendering and lighting configuration options.
46
- */
47
- export type SceneSettings = {
48
- /**
49
- * White point for tone mapping (clamped between 0 and 1).
50
- */
51
- toneMappingWhitePoint: number;
52
- /**
53
- * Global HDR intensity multiplier (floored to 0).
54
- */
55
- hdrScale: number;
56
- /**
57
- * HDR scale for the background (clamped between 0 and 1).
58
- */
59
- hdrBackgroundScale: number;
60
- /**
61
- * Background saturation (clamped between 0 and 1).
62
- */
63
- hdrBackgroundSaturation: number;
64
- /**
65
- * Background blur strength (clamped between 0 and 1).
66
- */
67
- backgroundBlur: number;
68
- /**
69
- * Background color in linear RGBA format.
70
- */
71
- backgroundColor: RpcTypes.RGBA;
72
- };
73
- /**
74
- * Default scene settings used when none are explicitly provided.
75
- */
76
- export declare const defaultSceneSettings: SceneSettings;
77
- /**
78
- * Enumerates the possible states of VIM file loading.
79
- */
80
- export declare enum VimLoadingStatus {
81
- /**
82
- * No known loading activity.
83
- */
84
- Unknown = 0,
85
- /**
86
- * Actively loading VIM data.
87
- */
88
- Loading = 1,
89
- /**
90
- * Downloading VIM file from a remote source.
91
- */
92
- Downloading = 2,
93
- /**
94
- * Load completed successfully.
95
- */
96
- Done = 3,
97
- /**
98
- * Download failed (e.g., due to network or permission issues).
99
- */
100
- FailedToDownload = 4,
101
- /**
102
- * VIM file could not be parsed or initialized correctly.
103
- */
104
- FailedToLoad = 5
105
- }
106
- /**
107
- * Provides safe, validated methods to interact with the RpcClient.
108
- * This class wraps low-level RPC calls with input validation, error handling,
109
- * and batching support to ensure robustness and performance when dealing with large data.
110
- */
111
- export declare class RpcSafeClient {
112
- private readonly rpc;
113
- private readonly batchSize;
114
- /**
115
- * The URL used by the underlying RPC connection.
116
- */
117
- get url(): string;
118
- /**
119
- * Indicates whether the RPC client is currently connected.
120
- */
121
- get connected(): boolean;
122
- /**
123
- * Creates a new RpcSafeClient instance.
124
- * @param rpc - The underlying RpcClient used for communication
125
- * @param batchSize - Maximum size of batched data for operations (default: 10000)
126
- */
127
- constructor(rpc: RpcClient, batchSize?: number);
128
- /*******************************************************************************
129
- * SCENE MANAGEMENT METHODS
130
- * Methods for managing the overall scene, including initialization, lighting,
131
- * and scene-wide settings.
132
- ******************************************************************************/
133
- /**
134
- * Initializes and starts the scene with the given settings.
135
- * @param settings - Optional partial scene settings to override defaults
136
- * @returns Promise resolving to true if the scene started successfully, false otherwise
137
- * @remarks Missing values will be filled from {@link defaultSceneSettings}
138
- */
139
- RPCStartScene(settings?: Partial<SceneSettings>): Promise<boolean>;
140
- /**
141
- * Updates the scene’s lighting configuration.
142
- * @param settings - The complete lighting and background settings to apply
143
- */
144
- RPCSetLighting(settings: SceneSettings): void;
145
- /**
146
- * Retrieves the total number of elements across the entire scene.
147
- * @returns Promise resolving to the total number of elements (0 on failure).
148
- */
149
- RPCGetElementCountForScene(): Promise<number>;
150
- /**
151
- * Retrieves the number of elements within a specific loaded vim.
152
- * @param vimIndex - Index of the loaded vim to query
153
- * @returns Promise resolving to the element count (0 on failure)
154
- */
155
- RPCGetElementCountForVim(vimIndex: number): Promise<number>;
156
- /*******************************************************************************
157
- * ELEMENTS VISIBILITY METHODS
158
- * Methods for controlling element visibility, including show/hide, ghosting,
159
- * and highlighting functionality.
160
- ******************************************************************************/
161
- /**
162
- * Sets a single visibility state for given elements within a loaded vim.
163
- * The operation is automatically split into batches if the array is large.
164
- *
165
- * @param vimIndex - The index of the loaded vim containing the elements
166
- * @param vimElementIndices - Array of vim-based element indices to apply the state to
167
- * @param state - The visibility state to apply (e.g., VISIBLE, HIDDEN)
168
- */
169
- RPCSetStateElements(vimIndex: number, vimElementIndices: number[], state: VisibilityState): void;
170
- /**
171
- * Sets individual visibility states for multiple elements in a vim.
172
- * Each element receives a corresponding visibility state from the input array.
173
- * The operation is automatically split into batches if the array is large.
174
- *
175
- * @param vimIndex - The index of the loaded vim
176
- * @param vimElementIndices - Array of vim-based element indices
177
- * @param states - Array of visibility states to apply, one per element
178
- */
179
- RPCSetStatesElements(vimIndex: number, vimElementIndices: number[], states: VisibilityState[]): void;
180
- /**
181
- * Applies a single visibility state to all elements of a loaded vim.
182
- *
183
- * @param vimIndex - The index of the loaded vim
184
- * @param state - The visibility state to apply (e.g., VISIBLE, HIDDEN)
185
- */
186
- RPCSetStateVim(vimIndex: number, state: VisibilityState): void;
187
- /*******************************************************************************
188
- * TEXT AND UI METHODS
189
- * Methods for creating and managing 3D text elements in the scene.
190
- ******************************************************************************/
191
- /**
192
- * Creates a 3D text element in the scene.
193
- * @param position - The world-space position for the text
194
- * @param color - The color of the text
195
- * @param text - The content to display
196
- * @returns Promise resolving to the handle of the created text component
197
- */
198
- RPCCreateText(position: RpcTypes.Vector3, color: RpcTypes.RGBA32, text: string): Promise<number>;
199
- /**
200
- * Destroys a text component, removing it from the scene.
201
- * @param componentHandle - The handle of the text component to destroy
202
- */
203
- RPCDestroyText(componentHandle: number): void;
204
- /*******************************************************************************
205
- * SECTION BOX METHODS
206
- * Methods for controlling section box visibility and position.
207
- ******************************************************************************/
208
- /**
209
- * Enables or disables the section box.
210
- * @param enable - True to enable the section box, false to disable it
211
- */
212
- RPCEnableSectionBox(enable: boolean): void;
213
- /**
214
- * Sets the parameters of the section box.
215
- * @param state - The new section box state, including visibility and bounding box
216
- */
217
- RPCSetSectionBox(state: RpcTypes.SectionBoxState): void;
218
- /**
219
- * Retrieves the current section box state.
220
- * @returns Promise resolving to the section box state or undefined on failure
221
- */
222
- RPCGetSectionBox(): Promise<RpcTypes.SectionBoxState | undefined>;
223
- /*******************************************************************************
224
- * CAMERA AND VIEW METHODS
225
- * Methods for controlling camera position, movement, framing, and view settings.
226
- ******************************************************************************/
227
- /**
228
- * Retrieves the current camera position and orientation.
229
- * @returns Promise resolving to a segment representing the camera's current position and target
230
- */
231
- RPCGetCameraView(): Promise<RpcTypes.Segment | undefined>;
232
- /**
233
- * Sets the camera position and orientation.
234
- * @param segment - The desired camera position and target
235
- * @param blendTime - Duration of the camera transition in seconds (non-negative)
236
- */
237
- RPCSetCameraView(segment: RpcTypes.Segment, blendTime: number): void;
238
- /**
239
- * Sets the camera's position without changing its target.
240
- * The camera will move to the specified position while maintaining its current look-at direction.
241
- *
242
- * @param position - The new position of the camera in world space
243
- * @param blendTime - Duration of the camera transition in seconds (non-negative)
244
- */
245
- RPCSetCameraPosition(position: RpcTypes.Vector3, blendTime: number): void;
246
- /**
247
- * Sets the camera's look-at target without changing its position.
248
- * The camera will rotate to face the specified target while remaining at its current position.
249
- *
250
- * @param target - The new look-at target of the camera in world space
251
- * @param blendTime - Duration of the camera transition in seconds (non-negative)
252
- */
253
- RPCSetCameraTarget(target: RpcTypes.Vector3, blendTime: number): void;
254
- /**
255
- * Retrieves the axis-aligned bounding box (AABB) that encompasses the entire scene.
256
- * This includes all loaded geometry across all loaded vims.
257
- *
258
- * @returns Promise resolving to the global AABB of the scene, or undefined on failure
259
- */
260
- RPCGetAABBForScene(): Promise<RpcTypes.Box3 | undefined>;
261
- /**
262
- * Retrieves the axis-aligned bounding box (AABB) for a specific loaded vim.
263
- * This bounding box represents the spatial bounds of all geometry within the given loaded vim.
264
- *
265
- * @param vimIndex - The index of the loaded vim to query
266
- * @returns Promise resolving to the vim bounding box, or undefined on failure
267
- */
268
- RPCGetAABBForVim(vimIndex: number): Promise<RpcTypes.Box3 | undefined>;
269
- /**
270
- * Calculates the bounding box for specified elements of a loaded vim.
271
- * Large element arrays are automatically processed in batches.
272
- * @param vimIndex - The index of the loaded vim
273
- * @param vimElementIndices - Array of vim-based element indices to calculate bounds for
274
- * @returns Promise resolving to the combined bounding box or undefined on failure
275
- */
276
- RPCGetAABBForElements(vimIndex: number, vimElementIndices: number[]): Promise<RpcTypes.Box3 | undefined>;
277
- private RPCGetAABBForElementsBatched;
278
- /**
279
- * Frames the camera to show all elements in the scene.
280
- * @param blendTime - Duration of the camera transition in seconds (non-negative)
281
- * @returns Promise resolving to camera segment representing the final position
282
- */
283
- RPCFrameScene(blendTime: number): Promise<RpcTypes.Segment | undefined>;
284
- /**
285
- * Frames a specific vim in the scene.
286
- * @param vimIndex - The index of the loaded vim to frame
287
- * @param blendTime - Duration of the camera transition in seconds (non-negative)
288
- * @returns Promise resolving to camera segment representing the final position
289
- */
290
- RPCFrameVim(vimIndex: number, blendTime: number): Promise<RpcTypes.Segment | undefined>;
291
- /**
292
- * Frames specific elements of a loaded vim.
293
- * Automatically batches large arrays of elements.
294
- * @param vimIndex - The index of the loaded vim
295
- * @param vimElementIndices - Array of vim-based element indices to frame
296
- * @param blendTime - Duration of the camera transition in seconds (non-negative)
297
- * @returns Promise resolving to camera segment representing the final position
298
- */
299
- RPCFrameElements(vimIndex: number, vimElementIndices: number[], blendTime: number): Promise<RpcTypes.Segment | undefined>;
300
- /**
301
- * Frames the camera to show a specific bounding box.
302
- * @param box - The bounding box to frame
303
- * @param blendTime - Duration of the camera transition in seconds (non-negative)
304
- */
305
- RPCFrameAABB(box: RpcTypes.Box3, blendTime: number): Promise<RpcTypes.Segment | undefined>;
306
- /*******************************************************************************
307
- * INPUT HANDLING METHODS
308
- * Methods for handling user input including mouse, keyboard, and camera controls.
309
- ******************************************************************************/
310
- /**
311
- * Sets the camera movement speed.
312
- * @param speed - The desired movement speed (must be positive)
313
- */
314
- RPCSetCameraSpeed(speed: number): void;
315
- /**
316
- * Sets the camera control mode.
317
- * @param mode - The desired input mode (e.g., {@link InputMode.Orbit} or {@link InputMode.Free})
318
- */
319
- RPCSetCameraMode(mode: InputMode): void;
320
- /**
321
- * Sets the viewer's aspect ratio.
322
- * @param width - The width of the desired aspect ratio
323
- * @param height - The height of the desired aspect ratio
324
- */
325
- RPCSetCameraAspectRatio(width: number, height: number): void;
326
- /*******************************************************************************
327
- * VIM FILE MANAGEMENT METHODS
328
- * Methods for loading, unloading, and managing VIM files.
329
- ******************************************************************************/
330
- /**
331
- * Loads a VIM file from the local filesystem.
332
- * @param source - The path to the VIM file (supports file:// protocol)
333
- * @returns Promise resolving to the index of the loaded vim
334
- */
335
- RPCLoadVim(source: VimSource): Promise<number>;
336
- /**
337
- * Loads a VIM file from a remote URL.
338
- * @param source - The URL or file path of the VIM file to load
339
- * @returns Promise resolving to the index of the loaded vim
340
- */
341
- RPCLoadVimURL(source: VimSource): Promise<number>;
342
- /**
343
- * Retrieves the current loading state and progress of a vim.
344
- * @param vimIndex - The index of the vim being loaded
345
- * @returns Promise resolving to the current loading state and progress
346
- */
347
- RPCGetVimLoadingState(vimIndex: number): Promise<VimLoadingState>;
348
- /**
349
- * Clears the entire scene, unloading all vims and resetting to initial state.
350
- */
351
- RPCUnloadAll(): void;
352
- /**
353
- * Sets the color used for ghosted geometry.
354
- * @param ghostColor - The RGBA color to use for ghosted elements
355
- */
356
- RPCSetGhostColor(ghostColor: RpcTypes.RGBA): void;
357
- /**
358
- * Performs hit testing at a specified screen position.
359
- * @param pos - Normalized screen coordinates (0-1, 0-1)
360
- * @returns Promise resolving to hit test result if a valid hit was detected, undefined otherwise
361
- */
362
- RPCPerformHitTest(pos: RpcTypes.Vector2): Promise<RpcTypes.HitCheckResult | undefined>;
363
- /**
364
- * Sends a mouse button event to the viewer.
365
- * @param position - The normalized screen coordinates (0-1, 0-1)
366
- * @param mouseButton - The mouse button code (0=left, 1=middle, 2=right)
367
- * @param down - True if button is pressed down, false if released
368
- */
369
- RPCMouseButtonEvent(position: RpcTypes.Vector2, mouseButton: number, down: boolean): void;
370
- /**
371
- * Sends a mouse double-click event to the viewer.
372
- * @param position - The normalized screen coordinates (0-1, 0-1)
373
- * @param mouseButton - The mouse button code (0=left, 1=middle, 2=right)
374
- */
375
- RPCMouseDoubleClickEvent(position: RpcTypes.Vector2, mouseButton: number): void;
376
- /**
377
- * Sends a mouse movement event to the viewer.
378
- * @param position - The normalized screen coordinates (0-1, 0-1)
379
- */
380
- RPCMouseMoveEvent(position: RpcTypes.Vector2): void;
381
- /**
382
- * Sends a mouse scroll wheel event to the viewer.
383
- * @param scrollValue - The scroll amount (-1 to 1)
384
- */
385
- RPCMouseScrollEvent(scrollValue: number): void;
386
- /**
387
- * Sends a mouse selection event to the viewer.
388
- * @param position - The normalized screen coordinates (0-1, 0-1)
389
- * @param mouseButton - The mouse button code (0=left, 1=middle, 2=right)
390
- */
391
- RPCMouseSelectEvent(position: RpcTypes.Vector2, mouseButton: number): void;
392
- /**
393
- * Sends a keyboard event to the viewer.
394
- * @param keyCode - The key code of the event
395
- * @param down - True if key is pressed down, false if released
396
- */
397
- RPCKeyEvent(keyCode: number, down: boolean): void;
398
- /*******************************************************************************
399
- * MATERIAL MANAGEMENT METHODS
400
- * Methods for creating and managing materials and material instances.
401
- ******************************************************************************/
402
- /**
403
- * Creates multiple material instances with the same smoothness but different colors.
404
- * Large color arrays are automatically processed in batches for better performance.
405
- * @param materialHandle - The base material to create instances from
406
- * @param smoothness - The smoothness value to apply (clamped between 0 and 1)
407
- * @param colors - Array of colors for each material instance
408
- * @returns Array of handles for the created material instances
409
- */
410
- RPCCreateMaterialInstances(materialHandle: MaterialHandle, smoothness: number, colors: RpcTypes.RGBA32[]): Promise<number[] | undefined>;
411
- private createMaterialInstancesBatched;
412
- /**
413
- * Destroys multiple material instances, freeing associated resources.
414
- * @param materialInstanceHandles - Array of handles for material instances to destroy
415
- */
416
- RPCDestroyMaterialInstances(materialInstanceHandles: number[]): void;
417
- /**
418
- * Sets material overrides for specific elements in a loaded vim.
419
- * Large arrays are automatically processed in batches.
420
- * @param vimIndex - The index of the loaded vim
421
- * @param vimElementIndices - Array of vim-based element indices to override
422
- * @param materialInstanceHandles - Array of material instance handles to apply (must match element length)
423
- */
424
- RPCSetMaterialOverridesForElements(vimIndex: number, vimElementIndices: number[], materialInstanceHandles: number[]): void;
425
- private setMaterialOverridesBatched;
426
- /**
427
- * Clears all material overrides for the entire scene.
428
- */
429
- RPCClearMaterialOverridesForScene(): void;
430
- /**
431
- * Clears all material overrides for a specific loaded vim.
432
- * @param vimIndex - The index of the loaded vim
433
- */
434
- RPCClearMaterialOverridesForVim(vimIndex: number): void;
435
- /**
436
- * Clears all material overrides for specific elements in a loaded vim.
437
- * @param vimIndex - The index of the loaded vim
438
- * @param vimElementIndices - Array of vim-based element indices to clear overrides for
439
- */
440
- RPCClearMaterialOverridesForElements(vimIndex: number, vimElementIndices: number[]): void;
441
- /*******************************************************************************
442
- * DEBUG AND UTILITY METHODS
443
- * Utility methods for debugging, error handling, and misc functionality.
444
- ******************************************************************************/
445
- /**
446
- * Retrieves the current API version from the RPC client.
447
- * @returns Promise resolving to the API version string
448
- */
449
- RPCGetAPIVersion(): Promise<string>;
450
- /**
451
- * Gets the API version of the underlying RPC client.
452
- * @returns The API version string.
453
- */
454
- get API_VERSION(): string;
455
- /**
456
- * Retrieves the last error message from the RPC client.
457
- * @returns Promise resolving to the last error message string
458
- */
459
- RPCGetLastError(): Promise<string>;
460
- /**
461
- * Pauses or resumes the rendering loop.
462
- * @param pause - True to pause rendering, false to resume
463
- */
464
- RPCPauseRendering(pause: boolean): void;
465
- /**
466
- * Triggers a RenderDoc frame capture if RenderDoc is attached.
467
- */
468
- RPCTriggerRenderDocCapture(): void;
469
- private safeCall;
470
- }
@@ -1,71 +0,0 @@
1
- import * as THREE from 'three';
2
- export { Vector2, Vector3, Box3, Matrix4 as Matrix44 } from 'three';
3
- export declare class Segment {
4
- origin: THREE.Vector3;
5
- target: THREE.Vector3;
6
- constructor(origin?: THREE.Vector3, target?: THREE.Vector3);
7
- static fromArray(array: number[]): Segment;
8
- toArray(): number[];
9
- isValid(): boolean;
10
- equals(segment: Segment): boolean;
11
- }
12
- export declare class RGBA {
13
- r: number;
14
- g: number;
15
- b: number;
16
- a: number;
17
- constructor(r: number, g: number, b: number, a?: number);
18
- static fromThree(color: THREE.Color, opacity?: number): RGBA;
19
- toThree(): THREE.Color;
20
- clone(): RGBA;
21
- isValid(): boolean;
22
- equals(color: RGBA): boolean;
23
- static fromString(str: string): RGBA;
24
- }
25
- export declare class RGB {
26
- r: number;
27
- g: number;
28
- b: number;
29
- constructor(r: number, g: number, b: number);
30
- }
31
- export declare class RGBA32 {
32
- readonly hex: number;
33
- constructor(hex: number);
34
- static fromThree(color: THREE.Color, opacity?: number): RGBA32;
35
- static fromInts(r: number, g: number, b: number, a?: number): RGBA32;
36
- static fromFloats(r: number, g: number, b: number, a?: number): RGBA32;
37
- static fromString(str: string): RGBA32;
38
- /**
39
- * The red component of the color in the range [0-255].
40
- */
41
- get r(): number;
42
- /**
43
- * The green component of the color in the range [0-255].
44
- */
45
- get g(): number;
46
- /**
47
- * The blue component of the color in the range [0-255].
48
- */
49
- get b(): number;
50
- /**
51
- * The alpha component of the color in the range [0-255].
52
- */
53
- get a(): number;
54
- }
55
- export type HitCheckResult = {
56
- vimIndex: number;
57
- vimElementIndex: number;
58
- sceneElementIndex: number;
59
- worldPosition: THREE.Vector3;
60
- worldNormal: THREE.Vector3;
61
- };
62
- export type VimStatus = {
63
- status: number;
64
- progress: number;
65
- };
66
- export type SectionBoxState = {
67
- visible: boolean;
68
- interactive: boolean;
69
- clip: boolean;
70
- box: THREE.Box3;
71
- };
@@ -1,8 +0,0 @@
1
- import * as rpcTypes from "./rpcTypes";
2
- import * as THREE from "three";
3
- export declare function RGBToThree(color: rpcTypes.RGB): THREE.Color;
4
- export declare function RGBAToThree(color: rpcTypes.RGBA): THREE.Color;
5
- export declare function RGBA32ToThree(color: rpcTypes.RGBA32): THREE.Color;
6
- export declare function RGBfromThree(color: THREE.Color): rpcTypes.RGB;
7
- export declare function RGBAfromThree(color: THREE.Color, opacity?: number): rpcTypes.RGBA;
8
- export declare function RGBA32fromThree(color: THREE.Color, opacity?: number): rpcTypes.RGBA32;
@@ -1,33 +0,0 @@
1
- import { RpcSafeClient } from "./rpcSafeClient";
2
- import * as THREE from "three";
3
- export declare class SectionBox {
4
- private _visible;
5
- private _interactible;
6
- private _clip;
7
- private _box;
8
- private _rpc;
9
- private _interval;
10
- private _animationFrame;
11
- private _pullId;
12
- private _onUpdate;
13
- get onUpdate(): import("ste-signals").ISignal;
14
- private get needUpdate();
15
- constructor(rpc: RpcSafeClient);
16
- onConnect(): Promise<void>;
17
- scheduleUpdate(): void;
18
- private pull;
19
- private push;
20
- get visible(): boolean;
21
- set visible(value: boolean);
22
- get interactive(): boolean;
23
- set interactive(value: boolean);
24
- get clip(): boolean;
25
- set clip(value: boolean);
26
- /**
27
- * Fits the given box, invalid dimensions will be reversed.
28
- * @param box - The new bounding box.
29
- */
30
- setBox(box: THREE.Box3): void;
31
- getBox(): THREE.Box3 | undefined;
32
- dispose(): void;
33
- }
@@ -1,4 +0,0 @@
1
- import { Selection } from "../shared/selection";
2
- import { Element3D } from "./element3d";
3
- export type ISelection = Selection<Element3D>;
4
- export declare function createSelection(): ISelection;