vim-web 0.3.44-dev.8 → 0.3.44-dev.80

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 (227) hide show
  1. package/README.md +2 -2
  2. package/dist/style.css +47 -33
  3. package/dist/types/core-viewers/index.d.ts +3 -0
  4. package/dist/types/core-viewers/{webgl/viewer/inputs/inputHandler.d.ts → shared/baseInputHandler.d.ts} +6 -6
  5. package/dist/types/core-viewers/shared/index.d.ts +9 -0
  6. package/dist/types/core-viewers/shared/inputHandler.d.ts +118 -0
  7. package/dist/types/core-viewers/shared/keyboardHandler.d.ts +96 -0
  8. package/dist/types/core-viewers/shared/mouseHandler.d.ts +26 -0
  9. package/dist/types/core-viewers/shared/raycaster.d.ts +13 -0
  10. package/dist/types/core-viewers/shared/selection.d.ts +105 -0
  11. package/dist/types/core-viewers/{webgl/viewer/inputs → shared}/touchHandler.d.ts +15 -18
  12. package/dist/types/core-viewers/shared/vim.d.ts +35 -0
  13. package/dist/types/core-viewers/ultra/{viewer/camera.d.ts → camera.d.ts} +14 -4
  14. package/dist/types/core-viewers/ultra/{viewer/colorManager.d.ts → colorManager.d.ts} +6 -6
  15. package/dist/types/core-viewers/ultra/{viewer/decoder.d.ts → decoder.d.ts} +0 -8
  16. package/dist/types/core-viewers/ultra/element3d.d.ts +15 -0
  17. package/dist/types/core-viewers/ultra/index.d.ts +28 -8
  18. package/dist/types/core-viewers/ultra/inputAdapter.d.ts +5 -0
  19. package/dist/types/core-viewers/ultra/nodeState.d.ts +113 -0
  20. package/dist/types/core-viewers/ultra/raycaster.d.ts +52 -0
  21. package/dist/types/core-viewers/ultra/{viewer/color.d.ts → remoteColor.d.ts} +3 -3
  22. package/dist/types/core-viewers/ultra/{viewer/renderer.d.ts → renderer.d.ts} +9 -3
  23. package/dist/types/core-viewers/ultra/{viewer/rpcClient.d.ts → rpcClient.d.ts} +27 -28
  24. package/dist/types/core-viewers/ultra/rpcMarshal.d.ts +62 -0
  25. package/dist/types/core-viewers/ultra/{viewer/rpcSafeClient.d.ts → rpcSafeClient.d.ts} +22 -23
  26. package/dist/types/core-viewers/ultra/{utils/math3d.d.ts → rpcTypes.d.ts} +22 -22
  27. package/dist/types/core-viewers/ultra/{viewer/sectionBox.d.ts → sectionBox.d.ts} +7 -2
  28. package/dist/types/core-viewers/ultra/selection.d.ts +4 -0
  29. package/dist/types/core-viewers/ultra/{viewer/socketClient.d.ts → socketClient.d.ts} +4 -11
  30. package/dist/types/core-viewers/ultra/{viewer/viewer.d.ts → viewer.d.ts} +16 -13
  31. package/dist/types/core-viewers/ultra/vim.d.ts +48 -0
  32. package/dist/types/core-viewers/webgl/index.d.ts +2 -21
  33. package/dist/types/core-viewers/webgl/loader/{colorAttributes.d.ts → colorAttribute.d.ts} +4 -4
  34. package/dist/types/core-viewers/webgl/loader/{object3D.d.ts → element3d.d.ts} +12 -9
  35. package/dist/types/core-viewers/webgl/loader/geometry.d.ts +76 -78
  36. package/dist/types/core-viewers/webgl/loader/index.d.ts +24 -0
  37. package/dist/types/core-viewers/webgl/loader/materials/index.d.ts +9 -0
  38. package/dist/types/core-viewers/webgl/loader/materials/{viewerMaterials.d.ts → materials.d.ts} +5 -5
  39. package/dist/types/core-viewers/webgl/loader/mesh.d.ts +7 -7
  40. package/dist/types/core-viewers/webgl/loader/progressive/insertableGeometry.d.ts +2 -2
  41. package/dist/types/core-viewers/webgl/loader/progressive/insertableMesh.d.ts +1 -1
  42. package/dist/types/core-viewers/webgl/loader/progressive/insertableSubmesh.d.ts +1 -1
  43. package/dist/types/core-viewers/webgl/loader/progressive/instancedMesh.d.ts +1 -1
  44. package/dist/types/core-viewers/webgl/loader/progressive/instancedSubmesh.d.ts +1 -1
  45. package/dist/types/core-viewers/webgl/loader/progressive/legacyMeshFactory.d.ts +2 -2
  46. package/dist/types/core-viewers/webgl/loader/progressive/subsetBuilder.d.ts +2 -2
  47. package/dist/types/core-viewers/webgl/loader/progressive/subsetRequest.d.ts +2 -2
  48. package/dist/types/core-viewers/webgl/loader/progressive/vimRequest.d.ts +3 -3
  49. package/dist/types/core-viewers/webgl/loader/scene.d.ts +11 -14
  50. package/dist/types/core-viewers/webgl/loader/vim.d.ts +16 -20
  51. package/dist/types/core-viewers/webgl/loader/vimSettings.d.ts +2 -2
  52. package/dist/types/core-viewers/webgl/loader/{objectAttributes.d.ts → webglAttribute.d.ts} +4 -4
  53. package/dist/types/core-viewers/webgl/viewer/camera/camera.d.ts +8 -113
  54. package/dist/types/core-viewers/webgl/viewer/camera/{ICamera.d.ts → cameraInterface.d.ts} +0 -4
  55. package/dist/types/core-viewers/webgl/viewer/camera/cameraMovement.d.ts +5 -5
  56. package/dist/types/core-viewers/webgl/viewer/camera/cameraMovementLerp.d.ts +2 -2
  57. package/dist/types/core-viewers/webgl/viewer/camera/cameraMovementSnap.d.ts +2 -2
  58. package/dist/types/core-viewers/webgl/viewer/camera/{orthographic.d.ts → cameraOrthographic.d.ts} +1 -1
  59. package/dist/types/core-viewers/webgl/viewer/camera/{perspective.d.ts → cameraPerspective.d.ts} +1 -1
  60. package/dist/types/core-viewers/webgl/viewer/camera/index.d.ts +7 -0
  61. package/dist/types/core-viewers/webgl/viewer/environment/environment.d.ts +5 -5
  62. package/dist/types/core-viewers/webgl/viewer/environment/index.d.ts +3 -0
  63. package/dist/types/core-viewers/webgl/viewer/environment/{cameraLight.d.ts → light.d.ts} +2 -2
  64. package/dist/types/core-viewers/webgl/viewer/environment/skybox.d.ts +3 -3
  65. package/dist/types/core-viewers/webgl/viewer/gizmos/axes/axesSettings.d.ts +3 -2
  66. package/dist/types/core-viewers/webgl/viewer/gizmos/axes/gizmoAxes.d.ts +3 -1
  67. package/dist/types/core-viewers/webgl/viewer/gizmos/axes/index.d.ts +3 -0
  68. package/dist/types/core-viewers/webgl/viewer/gizmos/gizmoOrbit.d.ts +2 -2
  69. package/dist/types/core-viewers/webgl/viewer/gizmos/gizmos.d.ts +0 -5
  70. package/dist/types/core-viewers/webgl/viewer/gizmos/index.d.ts +7 -0
  71. package/dist/types/core-viewers/webgl/viewer/gizmos/markers/gizmoMarker.d.ts +63 -15
  72. package/dist/types/core-viewers/webgl/viewer/gizmos/markers/gizmoMarkers.d.ts +30 -7
  73. package/dist/types/core-viewers/webgl/viewer/gizmos/markers/index.d.ts +2 -0
  74. package/dist/types/core-viewers/webgl/viewer/gizmos/measure/index.d.ts +3 -0
  75. package/dist/types/core-viewers/webgl/viewer/gizmos/measure/measure.d.ts +10 -16
  76. package/dist/types/core-viewers/webgl/viewer/gizmos/sectionBox/index.d.ts +7 -0
  77. package/dist/types/core-viewers/webgl/viewer/gizmos/sectionBox/sectionBox.d.ts +4 -5
  78. package/dist/types/core-viewers/webgl/viewer/gizmos/sectionBox/sectionBoxGizmo.d.ts +1 -1
  79. package/dist/types/core-viewers/webgl/viewer/gizmos/sectionBox/sectionBoxHandle.d.ts +6 -4
  80. package/dist/types/core-viewers/webgl/viewer/gizmos/sectionBox/sectionBoxHandles.d.ts +1 -1
  81. package/dist/types/core-viewers/webgl/viewer/gizmos/sectionBox/sectionBoxInputs.d.ts +3 -40
  82. package/dist/types/core-viewers/webgl/viewer/index.d.ts +10 -0
  83. package/dist/types/core-viewers/webgl/viewer/inputsAdapter.d.ts +3 -0
  84. package/dist/types/core-viewers/webgl/viewer/raycaster.d.ts +37 -57
  85. package/dist/types/core-viewers/webgl/viewer/rendering/index.d.ts +4 -0
  86. package/dist/types/core-viewers/webgl/viewer/rendering/mergePass.d.ts +2 -2
  87. package/dist/types/core-viewers/webgl/viewer/rendering/renderScene.d.ts +8 -8
  88. package/dist/types/core-viewers/webgl/viewer/rendering/renderer.d.ts +9 -6
  89. package/dist/types/core-viewers/webgl/viewer/rendering/renderingComposer.d.ts +2 -2
  90. package/dist/types/core-viewers/webgl/viewer/rendering/renderingSection.d.ts +2 -2
  91. package/dist/types/core-viewers/webgl/viewer/selection.d.ts +6 -89
  92. package/dist/types/core-viewers/webgl/viewer/settings/index.d.ts +3 -0
  93. package/dist/types/core-viewers/webgl/viewer/settings/{defaultViewerSettings.d.ts → viewerDefaultSettings.d.ts} +1 -1
  94. package/dist/types/core-viewers/webgl/viewer/settings/viewerSettings.d.ts +2 -9
  95. package/dist/types/core-viewers/webgl/viewer/settings/viewerSettingsParsing.d.ts +1 -1
  96. package/dist/types/core-viewers/webgl/viewer/viewer.d.ts +13 -13
  97. package/dist/types/index.d.ts +2 -3
  98. package/dist/types/react-viewers/bim/bimInfoData.d.ts +2 -2
  99. package/dist/types/react-viewers/bim/bimInfoObject.d.ts +4 -4
  100. package/dist/types/react-viewers/bim/bimInfoPanel.d.ts +3 -3
  101. package/dist/types/react-viewers/bim/bimInfoVim.d.ts +4 -4
  102. package/dist/types/react-viewers/bim/bimPanel.d.ts +13 -13
  103. package/dist/types/react-viewers/bim/bimSearch.d.ts +2 -2
  104. package/dist/types/react-viewers/bim/bimTree.d.ts +10 -8
  105. package/dist/types/react-viewers/bim/bimTreeData.d.ts +5 -4
  106. package/dist/types/react-viewers/bim/index.d.ts +8 -0
  107. package/dist/types/react-viewers/container.d.ts +3 -3
  108. package/dist/types/react-viewers/controlbar/controlBar.d.ts +10 -4
  109. package/dist/types/react-viewers/controlbar/controlBarButton.d.ts +1 -4
  110. package/dist/types/react-viewers/controlbar/controlBarIds.d.ts +36 -27
  111. package/dist/types/react-viewers/controlbar/controlBarSection.d.ts +1 -4
  112. package/dist/types/react-viewers/controlbar/index.d.ts +6 -0
  113. package/dist/types/react-viewers/controlbar/style.d.ts +10 -0
  114. package/dist/types/react-viewers/errors/index.d.ts +2 -0
  115. package/dist/types/react-viewers/generic/genericField.d.ts +28 -0
  116. package/dist/types/react-viewers/generic/genericPanel.d.ts +12 -0
  117. package/dist/types/react-viewers/generic/index.d.ts +2 -0
  118. package/dist/types/react-viewers/generic/inputNumber.d.ts +5 -0
  119. package/dist/types/react-viewers/helpers/cameraObserver.d.ts +2 -2
  120. package/dist/types/react-viewers/helpers/cursor.d.ts +5 -3
  121. package/dist/types/react-viewers/helpers/customizer.d.ts +4 -0
  122. package/dist/types/react-viewers/helpers/element.d.ts +3 -2
  123. package/dist/types/react-viewers/helpers/index.d.ts +7 -0
  124. package/dist/types/react-viewers/helpers/layout.d.ts +24 -0
  125. package/dist/types/react-viewers/helpers/loadRequest.d.ts +6 -6
  126. package/dist/types/react-viewers/helpers/reactUtils.d.ts +285 -0
  127. package/dist/types/react-viewers/helpers/utils.d.ts +1 -1
  128. package/dist/types/react-viewers/{panels/icons.d.ts → icons.d.ts} +9 -0
  129. package/dist/types/react-viewers/index.d.ts +11 -6
  130. package/dist/types/react-viewers/panels/axesPanel.d.ts +4 -4
  131. package/dist/types/react-viewers/panels/contextMenu.d.ts +22 -14
  132. package/dist/types/react-viewers/panels/help.d.ts +2 -7
  133. package/dist/types/react-viewers/panels/index.d.ts +25 -0
  134. package/dist/types/react-viewers/panels/isolationPanel.d.ts +9 -0
  135. package/dist/types/react-viewers/panels/loadingBox.d.ts +5 -2
  136. package/dist/types/react-viewers/panels/messageBox.d.ts +1 -1
  137. package/dist/types/react-viewers/panels/modal.d.ts +9 -10
  138. package/dist/types/react-viewers/panels/restOfScreen.d.ts +1 -1
  139. package/dist/types/react-viewers/panels/sectionBoxPanel.d.ts +8 -2
  140. package/dist/types/react-viewers/{sidePanel → panels}/sidePanel.d.ts +3 -3
  141. package/dist/types/react-viewers/panels/toast.d.ts +3 -3
  142. package/dist/types/react-viewers/settings/index.d.ts +5 -0
  143. package/dist/types/react-viewers/settings/settings.d.ts +13 -52
  144. package/dist/types/react-viewers/settings/{menuSettings.d.ts → settingsPanel.d.ts} +3 -3
  145. package/dist/types/react-viewers/settings/settingsState.d.ts +8 -8
  146. package/dist/types/react-viewers/settings/settingsStorage.d.ts +6 -6
  147. package/dist/types/react-viewers/settings/userBoolean.d.ts +17 -0
  148. package/dist/types/react-viewers/state/cameraState.d.ts +24 -0
  149. package/dist/types/react-viewers/state/controlBarState.d.ts +36 -21
  150. package/dist/types/react-viewers/state/index.d.ts +9 -0
  151. package/dist/types/react-viewers/state/measureState.d.ts +2 -2
  152. package/dist/types/react-viewers/state/pointerState.d.ts +5 -5
  153. package/dist/types/react-viewers/state/sectionBoxState.d.ts +18 -18
  154. package/dist/types/react-viewers/state/sharedIsolation.d.ts +38 -0
  155. package/dist/types/react-viewers/state/viewerInputs.d.ts +3 -0
  156. package/dist/types/react-viewers/ultra/camera.d.ts +3 -0
  157. package/dist/types/react-viewers/ultra/controlBar.d.ts +6 -0
  158. package/dist/types/react-viewers/ultra/errors/ultraErrors.d.ts +3 -3
  159. package/dist/types/react-viewers/ultra/index.d.ts +2 -1
  160. package/dist/types/react-viewers/ultra/isolation.d.ts +3 -0
  161. package/dist/types/react-viewers/ultra/modal.d.ts +5 -0
  162. package/dist/types/react-viewers/ultra/sectionBox.d.ts +3 -0
  163. package/dist/types/react-viewers/ultra/viewer.d.ts +21 -0
  164. package/dist/types/react-viewers/ultra/viewerRef.d.ts +47 -0
  165. package/dist/types/react-viewers/urls.d.ts +1 -0
  166. package/dist/types/react-viewers/webgl/camera.d.ts +3 -0
  167. package/dist/types/react-viewers/webgl/index.d.ts +3 -8
  168. package/dist/types/react-viewers/webgl/inputsBindings.d.ts +8 -0
  169. package/dist/types/react-viewers/webgl/isolation.d.ts +2 -0
  170. package/dist/types/react-viewers/webgl/{webglLoading.d.ts → loading.d.ts} +9 -9
  171. package/dist/types/react-viewers/webgl/sectionBox.d.ts +3 -0
  172. package/dist/types/react-viewers/webgl/viewer.d.ts +28 -0
  173. package/dist/types/react-viewers/webgl/viewerRef.d.ts +107 -0
  174. package/dist/types/react-viewers/webgl/viewerState.d.ts +7 -5
  175. package/dist/types/utils/debounce.d.ts +30 -0
  176. package/dist/types/utils/index.d.ts +10 -0
  177. package/dist/types/utils/interfaces.d.ts +3 -0
  178. package/dist/types/utils/math3d.d.ts +19 -0
  179. package/dist/types/utils/partial.d.ts +7 -0
  180. package/dist/types/{core-viewers/webgl/utils/requestResult.d.ts → utils/result.d.ts} +1 -1
  181. package/dist/types/{core-viewers/webgl/utils → utils}/threeUtils.d.ts +1 -0
  182. package/dist/types/{core-viewers/ultra/utils → utils}/url.d.ts +2 -0
  183. package/dist/types/{core-viewers/ultra/utils → utils}/validation.d.ts +11 -10
  184. package/dist/vim-web.iife.js +17280 -17199
  185. package/dist/vim-web.iife.js.map +1 -1
  186. package/dist/vim-web.js +17288 -17207
  187. package/dist/vim-web.js.map +1 -1
  188. package/package.json +1 -1
  189. package/dist/types/core-viewers/ultra/utils/debounce.d.ts +0 -1
  190. package/dist/types/core-viewers/ultra/utils/deferredPromise.d.ts +0 -8
  191. package/dist/types/core-viewers/ultra/utils/result.d.ts +0 -11
  192. package/dist/types/core-viewers/ultra/viewer/inputs/InputTouch.d.ts +0 -25
  193. package/dist/types/core-viewers/ultra/viewer/inputs/inputHandler.d.ts +0 -7
  194. package/dist/types/core-viewers/ultra/viewer/inputs/inputKeyboard.d.ts +0 -20
  195. package/dist/types/core-viewers/ultra/viewer/inputs/inputMouse.d.ts +0 -21
  196. package/dist/types/core-viewers/ultra/viewer/inputs/inputs.d.ts +0 -27
  197. package/dist/types/core-viewers/ultra/viewer/marshal.d.ts +0 -86
  198. package/dist/types/core-viewers/ultra/viewer/selection.d.ts +0 -96
  199. package/dist/types/core-viewers/ultra/viewer/vim.d.ts +0 -111
  200. package/dist/types/core-viewers/webgl/utils/deferredPromise.d.ts +0 -8
  201. package/dist/types/core-viewers/webgl/viewer/gizmos/gizmoRectangle.d.ts +0 -51
  202. package/dist/types/core-viewers/webgl/viewer/gizmos/measure/measureFlow.d.ts +0 -36
  203. package/dist/types/core-viewers/webgl/viewer/inputs/input.d.ts +0 -128
  204. package/dist/types/core-viewers/webgl/viewer/inputs/keyboardHandler.d.ts +0 -113
  205. package/dist/types/core-viewers/webgl/viewer/inputs/mouseHandler.d.ts +0 -66
  206. package/dist/types/react-viewers/errors/errorUtils.d.ts +0 -2
  207. package/dist/types/react-viewers/helpers/camera.d.ts +0 -37
  208. package/dist/types/react-viewers/helpers/inputs.d.ts +0 -22
  209. package/dist/types/react-viewers/helpers/isolation.d.ts +0 -128
  210. package/dist/types/react-viewers/ultra/ultraComponent.d.ts +0 -47
  211. package/dist/types/react-viewers/ultra/ultraControlBarState.d.ts +0 -6
  212. package/dist/types/react-viewers/ultra/ultraModal.d.ts +0 -4
  213. package/dist/types/react-viewers/ultra/ultraSectionBoxState.d.ts +0 -3
  214. package/dist/types/react-viewers/webgl/webglComponent.d.ts +0 -28
  215. package/dist/types/react-viewers/webgl/webglComponentRef.d.ts +0 -118
  216. package/dist/types/react-viewers/webgl/webglSectionBoxState.d.ts +0 -3
  217. /package/dist/types/core-viewers/ultra/{viewer/decoderWithWorker.d.ts → decoderWithWorker.d.ts} +0 -0
  218. /package/dist/types/core-viewers/ultra/{viewer/loadRequest.d.ts → loadRequest.d.ts} +0 -0
  219. /package/dist/types/core-viewers/ultra/{viewer/logger.d.ts → logger.d.ts} +0 -0
  220. /package/dist/types/core-viewers/ultra/{viewer/protocol.d.ts → protocol.d.ts} +0 -0
  221. /package/dist/types/core-viewers/ultra/{viewer/streamLogger.d.ts → streamLogger.d.ts} +0 -0
  222. /package/dist/types/core-viewers/ultra/{viewer/streamRenderer.d.ts → streamRenderer.d.ts} +0 -0
  223. /package/dist/types/core-viewers/ultra/{viewer/viewport.d.ts → viewport.d.ts} +0 -0
  224. /package/dist/types/core-viewers/ultra/{viewer/vimCollection.d.ts → vimCollection.d.ts} +0 -0
  225. /package/dist/types/react-viewers/{sidePanel → state}/sideState.d.ts +0 -0
  226. /package/dist/types/{core-viewers/ultra/utils → utils}/array.d.ts +0 -0
  227. /package/dist/types/{core-viewers/ultra/utils → utils}/promise.d.ts +0 -0
@@ -1,7 +1,8 @@
1
1
  /**
2
2
  * @module viw-webgl-react
3
- * Contains settings and type definitions for the Vim web component
3
+ * Contains settings and type definitions for the Vim web viewer
4
4
  */
5
+ import { UserBoolean } from "./userBoolean";
5
6
  /**
6
7
  * Makes all fields optional recursively
7
8
  * @template T - The type to make recursively partial
@@ -11,29 +12,11 @@ export type RecursivePartial<T> = {
11
12
  [P in keyof T]?: T[P] extends (infer U)[] ? RecursivePartial<U>[] : T[P] extends object ? RecursivePartial<T[P]> : T[P];
12
13
  };
13
14
  /**
14
- * Represents a boolean value that can also be locked to always true or false
15
- * @typedef {boolean | 'AlwaysTrue' | 'AlwaysFalse'} UserBoolean
15
+ * Complete settings configuration for the Vim viewer
16
+ * @interface Settings
16
17
  */
17
- export type UserBoolean = boolean | 'AlwaysTrue' | 'AlwaysFalse';
18
- /**
19
- * Checks if a UserBoolean value is effectively true
20
- * @param {UserBoolean | boolean} value - The value to check
21
- * @returns {boolean} True if the value is true or 'AlwaysTrue'
22
- */
23
- export declare function isTrue(value: UserBoolean | boolean): value is true | "AlwaysTrue";
24
- /**
25
- * Checks if a UserBoolean value is effectively false
26
- * @param {UserBoolean | boolean} value - The value to check
27
- * @returns {boolean} True if the value is false or 'AlwaysFalse'
28
- */
29
- export declare function isFalse(value: UserBoolean | boolean): value is false | "AlwaysFalse";
30
- /**
31
- * Complete settings configuration for the Vim component
32
- * @interface ComponentSettings
33
- */
34
- export type ComponentSettings = {
18
+ export type Settings = {
35
19
  materials: {
36
- useFastMaterial: boolean;
37
20
  useGhostMaterial: boolean;
38
21
  smallGhostThreshold: number;
39
22
  };
@@ -54,14 +37,15 @@ export type ComponentSettings = {
54
37
  axesPanel: UserBoolean;
55
38
  orthographic: UserBoolean;
56
39
  resetCamera: UserBoolean;
57
- enableGhost: UserBoolean;
58
40
  controlBar: UserBoolean;
59
41
  orbit: UserBoolean;
60
42
  lookAround: UserBoolean;
61
43
  pan: UserBoolean;
62
44
  zoom: UserBoolean;
63
45
  zoomWindow: UserBoolean;
64
- zoomToFit: UserBoolean;
46
+ autoCamera: UserBoolean;
47
+ frameSelection: UserBoolean;
48
+ frameScene: UserBoolean;
65
49
  sectioningMode: UserBoolean;
66
50
  measuringMode: UserBoolean;
67
51
  toggleIsolation: UserBoolean;
@@ -74,34 +58,11 @@ export type ComponentSettings = {
74
58
  /**
75
59
  * Partial version of ComponentSettings where all properties are optional
76
60
  */
77
- export type PartialComponentSettings = RecursivePartial<ComponentSettings>;
78
- /**
79
- * Checks if any axes-related UI buttons are enabled
80
- * @param {ComponentSettings} settings - The component settings to check
81
- * @returns {boolean} True if any axes buttons are enabled
82
- */
83
- export declare function anyUiAxesButton(settings: ComponentSettings): UserBoolean;
84
- /**
85
- * Checks if any cursor-related UI buttons are enabled
86
- * @param {ComponentSettings} settings - The component settings to check
87
- * @returns {boolean} True if any cursor buttons are enabled
88
- */
89
- export declare function anyUiCursorButton(settings: ComponentSettings): boolean;
90
- /**
91
- * Checks if any tool-related UI buttons are enabled
92
- * @param {ComponentSettings} settings - The component settings to check
93
- * @returns {boolean} True if any tool buttons are enabled
94
- */
95
- export declare function anyUiToolButton(settings: ComponentSettings): boolean;
96
- /**
97
- * Checks if any settings-related UI buttons are enabled
98
- * @param {ComponentSettings} settings - The component settings to check
99
- * @returns {boolean} True if any settings buttons are enabled
100
- */
101
- export declare function anyUiSettingButton(settings: ComponentSettings): boolean;
61
+ export type PartialSettings = RecursivePartial<Settings>;
102
62
  /**
103
- * Default settings configuration for the Vim component
63
+ * Default settings configuration for the Vim Viewer
104
64
  * @constant
105
- * @type {ComponentSettings}
65
+ * @type {Settings}
106
66
  */
107
- export declare const defaultSettings: ComponentSettings;
67
+ export declare function getDefaultSettings(): Settings;
68
+ export declare function createSettings(settings: PartialSettings): Settings;
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @module viw-webgl-react
3
3
  */
4
- import * as VIM from '../../core-viewers/webgl/index';
4
+ import * as Core from '../../core-viewers';
5
5
  import { SettingsState } from './settingsState';
6
6
  /**
7
7
  * JSX Component to interact with settings.
@@ -10,8 +10,8 @@ import { SettingsState } from './settingsState';
10
10
  * @param visible will return null if this is false.
11
11
  * @returns
12
12
  */
13
- export declare function MenuSettings(props: {
14
- viewer: VIM.Viewer;
13
+ export declare function SettingsPanel(props: {
14
+ viewer: Core.Webgl.Viewer;
15
15
  settings: SettingsState;
16
16
  visible: boolean;
17
17
  }): import("react/jsx-runtime").JSX.Element;
@@ -1,18 +1,18 @@
1
1
  /**
2
2
  * @module viw-webgl-react
3
3
  */
4
- import * as VIM from '../../core-viewers/webgl/index';
5
- import { ComponentSettings, PartialComponentSettings } from './settings';
4
+ import * as Core from '../../core-viewers';
5
+ import { Settings, PartialSettings } from './settings';
6
6
  export type SettingsState = {
7
- value: ComponentSettings;
8
- update: (updater: (s: ComponentSettings) => void) => void;
9
- register: (action: (s: ComponentSettings) => void) => void;
7
+ value: Settings;
8
+ update: (updater: (s: Settings) => void) => void;
9
+ register: (action: (s: Settings) => void) => void;
10
10
  };
11
11
  /**
12
12
  * Returns a new state closure for settings.
13
13
  */
14
- export declare function useSettings(viewer: VIM.Viewer, value: PartialComponentSettings): SettingsState;
14
+ export declare function useSettings(viewer: Core.Webgl.Viewer, value: PartialSettings): SettingsState;
15
15
  /**
16
- * Apply given vim component settings to the given viewer.
16
+ * Apply given vim viewer settings to the given viewer.
17
17
  */
18
- export declare function applySettings(viewer: VIM.Viewer, settings: ComponentSettings): void;
18
+ export declare function applySettings(viewer: Core.Webgl.Viewer, settings: Settings): void;
@@ -1,15 +1,15 @@
1
1
  /**
2
2
  * @module viw-webgl-react
3
3
  */
4
- import { ComponentSettings, PartialComponentSettings } from './settings';
4
+ import { Settings, PartialSettings } from './settings';
5
5
  /**
6
- * Retrieves component settings from localStorage and applies permissions
7
- * @param settings - Partial component settings to apply permissions from
6
+ * Retrieves viewer settings from localStorage and applies permissions
7
+ * @param settings - Partial viewer settings to apply permissions from
8
8
  * @returns The stored settings with applied permissions, or empty object if retrieval fails
9
9
  */
10
- export declare function getLocalSettings(settings?: PartialComponentSettings): {};
10
+ export declare function getLocalSettings(settings?: PartialSettings): {};
11
11
  /**
12
- * Saves component settings to localStorage after removing permissions
12
+ * Saves viewer settings to localStorage after removing permissions
13
13
  * @param value - Component settings to save
14
14
  */
15
- export declare function saveSettingsToLocal(value: ComponentSettings): void;
15
+ export declare function saveSettingsToLocal(value: Settings): void;
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Represents a boolean value that can also be locked to always true or false
3
+ * @typedef {boolean | 'AlwaysTrue' | 'AlwaysFalse'} UserBoolean
4
+ */
5
+ export type UserBoolean = boolean | 'AlwaysTrue' | 'AlwaysFalse';
6
+ /**
7
+ * Checks if a UserBoolean value is effectively true
8
+ * @param {UserBoolean | boolean} value - The value to check
9
+ * @returns {boolean} True if the value is true or 'AlwaysTrue'
10
+ */
11
+ export declare function isTrue(value: UserBoolean | boolean): value is true | "AlwaysTrue";
12
+ /**
13
+ * Checks if a UserBoolean value is effectively false
14
+ * @param {UserBoolean | boolean} value - The value to check
15
+ * @returns {boolean} True if the value is false or 'AlwaysFalse'
16
+ */
17
+ export declare function isFalse(value: UserBoolean | boolean): value is false | "AlwaysFalse";
@@ -0,0 +1,24 @@
1
+ /**
2
+ * @module viw-webgl-react
3
+ */
4
+ import * as THREE from 'three';
5
+ import { SectionBoxRef } from './sectionBoxState';
6
+ import { ActionRef, AsyncFuncRef, StateRef } from '../helpers/reactUtils';
7
+ import { ISignal } from 'ste-signals';
8
+ export interface CameraRef {
9
+ autoCamera: StateRef<boolean>;
10
+ reset: ActionRef;
11
+ frameSelection: AsyncFuncRef<void>;
12
+ frameScene: AsyncFuncRef<void>;
13
+ getSelectionBox: AsyncFuncRef<THREE.Box3 | undefined>;
14
+ getSceneBox: AsyncFuncRef<THREE.Box3 | undefined>;
15
+ }
16
+ interface ICameraAdapter {
17
+ onSelectionChanged: ISignal;
18
+ frameCamera: (box: THREE.Box3, duration: number) => void;
19
+ resetCamera: (duration: number) => void;
20
+ getSelectionBox: () => Promise<THREE.Box3 | undefined>;
21
+ getSceneBox: () => Promise<THREE.Box3 | undefined>;
22
+ }
23
+ export declare function useCamera(adapter: ICameraAdapter, section: SectionBoxRef): CameraRef;
24
+ export {};
@@ -1,39 +1,54 @@
1
- import * as VIM from '../../core-viewers/webgl/index';
2
- import { ComponentCamera } from '../helpers/camera';
1
+ import * as Core from "../../core-viewers";
2
+ import { CameraRef } from './cameraState';
3
3
  import { CursorManager } from '../helpers/cursor';
4
- import { Isolation } from '../helpers/isolation';
5
- import { ComponentSettings } from '../settings/settings';
6
- import { SideState } from '../sidePanel/sideState';
7
- import * as Icons from '../panels/icons';
4
+ import { Settings } from '../settings';
5
+ import { SideState } from './sideState';
6
+ import * as Icons from '../icons';
8
7
  import { SectionBoxRef } from './sectionBoxState';
9
- import { ModalRef } from '../panels/modal';
10
- import * as ControlBar from '../controlbar/controlBar';
8
+ import { getMeasureState } from './measureState';
9
+ import { ModalHandle } from '../panels/modal';
10
+ import { IsolationRef } from './sharedIsolation';
11
+ import * as ControlBar from '../controlbar';
11
12
  /**
12
13
  * Returns a control bar section for the section box.
13
14
  */
14
15
  export declare function controlBarSectionBox(section: SectionBoxRef, hasSelection: boolean): ControlBar.IControlBarSection;
15
- /**
16
- * Combines all control bar sections into one control bar.
17
- */
18
- export declare function useControlBar(viewer: VIM.Viewer, camera: ComponentCamera, modal: ModalRef, side: SideState, isolation: Isolation, cursor: CursorManager, settings: ComponentSettings, section: SectionBoxRef, customization: ControlBar.ControlBarCustomization | undefined): (ControlBar.IControlBarSection | {
16
+ export declare function controlBarMeasure(settings: Settings, measure: ReturnType<typeof getMeasureState>): {
19
17
  id: string;
20
18
  enable: () => boolean;
21
19
  style: string;
22
- buttons: ({
20
+ buttons: {
23
21
  id: string;
24
22
  enabled: () => boolean;
23
+ isOn: () => boolean;
25
24
  tip: string;
26
25
  action: () => void;
27
- icon: typeof Icons.frameSelection;
28
- isOn: () => boolean;
29
- style: typeof ControlBar.buttonDefaultStyle;
30
- } | {
26
+ icon: typeof Icons.measure;
27
+ style: typeof ControlBar.Style.buttonDefaultStyle;
28
+ }[];
29
+ };
30
+ export declare function controlBarCamera(camera: CameraRef): ControlBar.IControlBarSection;
31
+ export declare function controlBarSelection(isolation: IsolationRef): ControlBar.IControlBarSection;
32
+ /**
33
+ * Combines all control bar sections into one control bar.
34
+ */
35
+ export declare function useControlBar(viewer: Core.Webgl.Viewer, camera: CameraRef, modal: ModalHandle, side: SideState, cursor: CursorManager, settings: Settings, section: SectionBoxRef, isolationRef: IsolationRef, customization: ControlBar.ControlBarCustomization | undefined): (ControlBar.IControlBarSection | {
36
+ id: string;
37
+ enable: () => boolean;
38
+ style: string;
39
+ buttons: {
31
40
  id: string;
32
41
  enabled: () => boolean;
42
+ isOn: () => boolean;
33
43
  tip: string;
34
44
  action: () => void;
35
- icon: typeof Icons.toggleIsolation;
36
- style: typeof ControlBar.buttonDefaultStyle;
37
- isOn?: undefined;
38
- })[];
45
+ icon: typeof Icons.measure;
46
+ style: typeof ControlBar.Style.buttonDefaultStyle;
47
+ }[];
39
48
  })[];
49
+ /**
50
+ * Checks if any settings-related UI buttons are enabled
51
+ * @param {Settings} settings - The viewer settings to check
52
+ * @returns {boolean} True if any settings buttons are enabled
53
+ */
54
+ export declare function anyUiSettingButton(settings: Settings): boolean;
@@ -0,0 +1,9 @@
1
+ export * from './cameraState';
2
+ export * from './controlBarState';
3
+ export * from './fullScreenState';
4
+ export * from './measureState';
5
+ export * from './pointerState';
6
+ export * from './sectionBoxState';
7
+ export * from './sharedIsolation';
8
+ export * from './sideState';
9
+ export * from './viewerInputs';
@@ -1,6 +1,6 @@
1
- import { WebglViewer } from '../../index';
1
+ import * as Core from '../../core-viewers';
2
2
  import { CursorManager } from '../helpers/cursor';
3
- export declare function getMeasureState(viewer: WebglViewer.Viewer, cursor: CursorManager): {
3
+ export declare function getMeasureState(viewer: Core.Webgl.Viewer, cursor: CursorManager): {
4
4
  active: boolean;
5
5
  toggle: () => void;
6
6
  clear: () => void;
@@ -1,6 +1,6 @@
1
- import * as VIM from '../../core-viewers/webgl/index';
2
- export declare function getPointerState(viewer: VIM.Viewer): {
3
- mode: VIM.PointerMode;
4
- setMode: import("react").Dispatch<import("react").SetStateAction<VIM.PointerMode>>;
5
- onButton: (target: VIM.PointerMode) => void;
1
+ import * as Core from '../../core-viewers';
2
+ export declare function getPointerState(viewer: Core.Webgl.Viewer): {
3
+ mode: Core.PointerMode;
4
+ setMode: import("react").Dispatch<import("react").SetStateAction<Core.PointerMode>>;
5
+ onButton: (target: Core.PointerMode) => void;
6
6
  };
@@ -1,5 +1,6 @@
1
1
  import * as THREE from 'three';
2
2
  import { ISignal } from 'ste-signals';
3
+ import { ArgActionRef, AsyncFuncRef, StateRef } from '../helpers/reactUtils';
3
4
  export type Offsets = {
4
5
  topOffset: string;
5
6
  sideOffset: string;
@@ -7,28 +8,27 @@ export type Offsets = {
7
8
  };
8
9
  export type OffsetField = keyof Offsets;
9
10
  export interface SectionBoxRef {
10
- getEnable: () => boolean;
11
- setEnable: (enable: boolean) => void;
12
- getVisible: () => boolean;
13
- setVisible: React.Dispatch<React.SetStateAction<boolean>>;
14
- getAuto: () => boolean;
15
- setAuto: (auto: boolean) => void;
16
- sectionSelection: () => void;
17
- sectionReset: () => void;
18
- section: (box: THREE.Box3) => void;
19
- getShowOffsetPanel: () => boolean;
20
- setShowOffsetPanel: React.Dispatch<React.SetStateAction<boolean>>;
21
- getOffsetText: (field: OffsetField) => string;
22
- setOffsetText: (field: OffsetField, value: string) => void;
23
- validate: (field: OffsetField) => void;
11
+ enable: StateRef<boolean>;
12
+ visible: StateRef<boolean>;
13
+ auto: StateRef<boolean>;
14
+ sectionSelection: AsyncFuncRef<void>;
15
+ sectionScene: AsyncFuncRef<void>;
16
+ sectionBox: ArgActionRef<THREE.Box3>;
17
+ getBox: () => THREE.Box3;
18
+ showOffsetPanel: StateRef<boolean>;
19
+ topOffset: StateRef<number>;
20
+ sideOffset: StateRef<number>;
21
+ bottomOffset: StateRef<number>;
22
+ getSelectionBox: AsyncFuncRef<THREE.Box3 | undefined>;
23
+ getSceneBox: AsyncFuncRef<THREE.Box3>;
24
24
  }
25
25
  export interface SectionBoxAdapter {
26
+ setClip: (b: boolean) => void;
26
27
  setVisible: (visible: boolean) => void;
27
28
  getBox: () => THREE.Box3;
28
- fitBox: (box: THREE.Box3) => void;
29
- getSelectionBox: () => Promise<THREE.Box3 | undefined>;
30
- getRendererBox: () => Promise<THREE.Box3>;
29
+ setBox: (box: THREE.Box3) => void;
31
30
  onSelectionChanged: ISignal;
32
- onSceneChanged: ISignal;
31
+ getSelectionBox: () => Promise<THREE.Box3 | undefined>;
32
+ getSceneBox: () => Promise<THREE.Box3>;
33
33
  }
34
34
  export declare function useSectionBox(adapter: SectionBoxAdapter): SectionBoxRef;
@@ -0,0 +1,38 @@
1
+ import { RefObject } from "react";
2
+ import { FuncRef, StateRef } from "../helpers/reactUtils";
3
+ import { ISignal } from "ste-signals";
4
+ export type VisibilityStatus = 'all' | 'allButSelection' | 'onlySelection' | 'some' | 'none';
5
+ export interface IsolationRef {
6
+ adapter: RefObject<IsolationAdapter>;
7
+ visibility: StateRef<VisibilityStatus>;
8
+ autoIsolate: StateRef<boolean>;
9
+ showPanel: StateRef<boolean>;
10
+ showGhost: StateRef<boolean>;
11
+ ghostOpacity: StateRef<number>;
12
+ showRooms: StateRef<boolean>;
13
+ onAutoIsolate: FuncRef<void>;
14
+ onVisibilityChange: FuncRef<void>;
15
+ }
16
+ export interface IsolationAdapter {
17
+ onSelectionChanged: ISignal;
18
+ onVisibilityChange: ISignal;
19
+ computeVisibility: () => VisibilityStatus;
20
+ hasSelection(): boolean;
21
+ hasVisibleSelection: () => boolean;
22
+ hasHiddenSelection: () => boolean;
23
+ clearSelection(): void;
24
+ isolateSelection(): void;
25
+ hideSelection(): void;
26
+ showSelection(): void;
27
+ isolate(instances: number[]): void;
28
+ show(instances: number[]): void;
29
+ hide(instances: number[]): void;
30
+ hideAll(): void;
31
+ showAll(): void;
32
+ showGhost(show: boolean): void;
33
+ getGhostOpacity(): number;
34
+ setGhostOpacity(opacity: number): void;
35
+ getShowRooms(): boolean;
36
+ setShowRooms(show: boolean): void;
37
+ }
38
+ export declare function useSharedIsolation(adapter: IsolationAdapter): IsolationRef;
@@ -0,0 +1,3 @@
1
+ import { InputHandler } from "../../core-viewers/shared";
2
+ import { CameraRef } from "./cameraState";
3
+ export declare function useViewerInput(handler: InputHandler, camera: CameraRef): void;
@@ -0,0 +1,3 @@
1
+ import * as Core from "../../core-viewers/ultra";
2
+ import { SectionBoxRef } from "../state/sectionBoxState";
3
+ export declare function useUltraCamera(viewer: Core.Viewer, section: SectionBoxRef): import("../state/cameraState").CameraRef;
@@ -0,0 +1,6 @@
1
+ import * as Core from '../../core-viewers/ultra';
2
+ import { ControlBarCustomization } from '../controlbar/controlBar';
3
+ import { CameraRef } from '../state/cameraState';
4
+ import { SectionBoxRef } from '../state/sectionBoxState';
5
+ import { IsolationRef } from '../state/sharedIsolation';
6
+ export declare function useUltraControlBar(viewer: Core.Viewer, section: SectionBoxRef, isolation: IsolationRef, camera: CameraRef, customization: ControlBarCustomization | undefined): import("../controlbar").IControlBarSection[];
@@ -1,3 +1,3 @@
1
- import * as Ultra from '../../../core-viewers/ultra';
2
- export declare function getErrorMessage(state: Ultra.ClientState): import("../..").MessageBoxProps;
3
- export declare function getRequestErrorMessage(source: Ultra.VimSource, error: Ultra.VimRequestErrorType): import("../..").MessageBoxProps;
1
+ import * as Core from '../../../core-viewers';
2
+ export declare function getErrorMessage(state: Core.Ultra.ClientState): import("../..").MessageBoxProps;
3
+ export declare function getRequestErrorMessage(serverUrl: string, source: Core.Ultra.VimSource, error: Core.Ultra.VimRequestErrorType): import("../..").MessageBoxProps;
@@ -1 +1,2 @@
1
- export * from './ultraComponent';
1
+ export * from './viewer';
2
+ export * from './viewerRef';
@@ -0,0 +1,3 @@
1
+ import * as Core from "../../core-viewers";
2
+ import Viewer = Core.Ultra.Viewer;
3
+ export declare function useUltraIsolation(viewer: Viewer): import("../state/sharedIsolation").IsolationRef;
@@ -0,0 +1,5 @@
1
+ import { ModalHandle } from "../panels/modal";
2
+ import * as Core from '../../core-viewers';
3
+ import { RefObject } from "react";
4
+ export declare function updateModal(modal: RefObject<ModalHandle>, state: Core.Ultra.ClientState): void;
5
+ export declare function updateProgress(request: Core.Ultra.ILoadRequest, modal: ModalHandle): Promise<void>;
@@ -0,0 +1,3 @@
1
+ import * as Core from '../../core-viewers';
2
+ import { SectionBoxRef } from '../state/sectionBoxState';
3
+ export declare function useUltraSectionBox(viewer: Core.Ultra.Viewer): SectionBoxRef;
@@ -0,0 +1,21 @@
1
+ import * as Core from '../../core-viewers';
2
+ import { Container } from '../container';
3
+ import { ViewerRef } from './viewerRef';
4
+ /**
5
+ * Creates a UI container along with a VIM.Viewer and its associated React viewer.
6
+ * @param container An optional container object. If none is provided, a container will be created.
7
+ * @returns An object containing the resulting container, reactRoot, and viewer.
8
+ */
9
+ export declare function createViewer(container?: Container | HTMLElement): Promise<ViewerRef>;
10
+ /**
11
+ * Represents a React viewer providing UI for the Vim viewer.
12
+ * @param container The container object containing root, gfx, and UI elements for the Vim viewer.
13
+ * @param viewer The Vim viewer instance for which UI is provided.
14
+ * @param onMount A callback function triggered when the viewer is mounted. Receives a reference to the Vim viewer.
15
+ * @param settings Optional settings for configuring the Vim viewer's behavior.
16
+ */
17
+ export declare function Viewer(props: {
18
+ container: Container;
19
+ core: Core.Ultra.Viewer;
20
+ onMount: (viewer: ViewerRef) => void;
21
+ }): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,47 @@
1
+ import * as Core from '../../core-viewers/ultra';
2
+ import { ModalHandle } from '../panels/modal';
3
+ import { CameraRef } from '../state/cameraState';
4
+ import { SectionBoxRef } from '../state/sectionBoxState';
5
+ import { IsolationRef } from '../state/sharedIsolation';
6
+ import { ControlBarRef } from '../controlbar';
7
+ import { GenericPanelHandle } from '../generic/';
8
+ export type ViewerRef = {
9
+ /**
10
+ * The Vim viewer instance associated with the viewer.
11
+ */
12
+ core: Core.Viewer;
13
+ /**
14
+ * API to manage the modal dialog.
15
+ */
16
+ modal: ModalHandle;
17
+ /**
18
+ * API to manage the section box.
19
+ */
20
+ sectionBox: SectionBoxRef;
21
+ /**
22
+ * API to customize the control.
23
+ */
24
+ controlBar: ControlBarRef;
25
+ /**
26
+ * Camera API to interact with the viewer camera at a higher level.
27
+ */
28
+ camera: CameraRef;
29
+ isolation: IsolationRef;
30
+ /**
31
+ * API to interact with the isolation panel.
32
+ */
33
+ isolationPanel: GenericPanelHandle;
34
+ /**
35
+ * API to interact with the isolation panel.
36
+ */
37
+ sectionBoxPanel: GenericPanelHandle;
38
+ /**
39
+ * Disposes of the viewer and its resources.
40
+ */
41
+ dispose: () => void;
42
+ /**
43
+ * Loads a file into the viewer.
44
+ * @param url The URL of the file to load.
45
+ */
46
+ load(url: Core.VimSource): Core.ILoadRequest;
47
+ };
@@ -1,2 +1,3 @@
1
1
  export declare const support = "https://docs.vimaec.com";
2
+ export declare const supportUltra = "https://docs.vimaec.com/docs/vim-for-windows/configuring-vim-ultra";
2
3
  export declare const supportControls = "https://docs.vimaec.com/docs/vim-cloud/webgl-navigation-and-controls-guide";
@@ -0,0 +1,3 @@
1
+ import * as Core from "../../core-viewers";
2
+ import { SectionBoxRef } from "../state/sectionBoxState";
3
+ export declare function useWebglCamera(viewer: Core.Webgl.Viewer, section: SectionBoxRef): import("../state/cameraState").CameraRef;
@@ -1,8 +1,3 @@
1
- export * from './webglComponent';
2
- export * as ContextMenu from '../panels/contextMenu';
3
- export * as BimInfo from '../bim/bimInfoData';
4
- export * as ControlBar from '../controlbar/controlBar';
5
- export { LoadRequest } from '../helpers/loadRequest';
6
- export * as Refs from './webglComponentRef';
7
- export { getLocalSettings as getLocalSettings } from '../settings/settingsStorage';
8
- export { type ComponentSettings as Settings, type PartialComponentSettings as PartialSettings, defaultSettings } from '../settings/settings';
1
+ export * from './viewer';
2
+ export * from './viewerRef';
3
+ export type * from './loading';
@@ -0,0 +1,8 @@
1
+ /**
2
+ * @module viw-webgl-react
3
+ */
4
+ import * as Core from '../../core-viewers';
5
+ import { SideState } from '../state/sideState';
6
+ import { CameraRef } from '../state/cameraState';
7
+ import { IsolationRef } from '../state/sharedIsolation';
8
+ export declare function applyWebglBindings(viewer: Core.Webgl.Viewer, camera: CameraRef, isolation: IsolationRef, sideState: SideState): void;
@@ -0,0 +1,2 @@
1
+ import * as Core from "../../core-viewers";
2
+ export declare function useWebglIsolation(viewer: Core.Webgl.Viewer): import("../state/sharedIsolation").IsolationRef;
@@ -1,9 +1,9 @@
1
1
  /**
2
2
  * @module viw-webgl-react
3
3
  */
4
- import * as VIM from '../../core-viewers/webgl/index';
4
+ import * as Core from '../../core-viewers';
5
5
  import { LoadRequest } from '../helpers/loadRequest';
6
- import { ModalRef } from '../panels/modal';
6
+ import { ModalHandle } from '../panels/modal';
7
7
  type AddSettings = {
8
8
  /**
9
9
  * Controls whether to frame the camera on a vim everytime it is updated.
@@ -16,7 +16,7 @@ type AddSettings = {
16
16
  */
17
17
  loadEmpty?: boolean;
18
18
  };
19
- export type OpenSettings = VIM.VimPartialSettings & AddSettings;
19
+ export type OpenSettings = Core.Webgl.VimPartialSettings & AddSettings;
20
20
  export type LoadingError = {
21
21
  url: string;
22
22
  error: string;
@@ -28,11 +28,11 @@ export type LoadingError = {
28
28
  export declare class ComponentLoader {
29
29
  private _viewer;
30
30
  private _modal;
31
- constructor(viewer: VIM.Viewer, modal: ModalRef);
31
+ constructor(viewer: Core.Webgl.Viewer, modal: React.RefObject<ModalHandle>);
32
32
  /**
33
33
  * Event emitter for progress updates.
34
34
  */
35
- onProgress(p: VIM.IProgressLogs): void;
35
+ onProgress(p: Core.Webgl.IProgressLogs): void;
36
36
  /**
37
37
  * Event emitter for completion notifications.
38
38
  */
@@ -48,20 +48,20 @@ export declare class ComponentLoader {
48
48
  * @param onProgress Optional callback function to track progress during opening.
49
49
  * Receives progress logs as input.
50
50
  */
51
- open(source: VIM.RequestSource, settings: OpenSettings, onProgress?: (p: VIM.IProgressLogs) => void): Promise<VIM.Vim>;
51
+ open(source: Core.Webgl.RequestSource, settings: OpenSettings, onProgress?: (p: Core.Webgl.IProgressLogs) => void): Promise<Core.Webgl.Vim>;
52
52
  /**
53
53
  * Creates a new load request for the provided source and settings.
54
54
  * @param source The url to the vim file or a buffer of the file.
55
55
  * @param settings Settings to apply to vim file.
56
56
  * @returns A new load request instance to track progress and get result.
57
57
  */
58
- request(source: VIM.RequestSource, settings?: VIM.VimPartialSettings): LoadRequest;
59
- add(vim: VIM.Vim, settings?: AddSettings): void;
58
+ request(source: Core.Webgl.RequestSource, settings?: Core.Webgl.VimPartialSettings): LoadRequest;
59
+ add(vim: Core.Webgl.Vim, settings?: AddSettings): void;
60
60
  /**
61
61
  * Removes the vim from the viewer and disposes it.
62
62
  * @param vim Vim to remove from the viewer.
63
63
  */
64
- remove(vim: VIM.Vim): void;
64
+ remove(vim: Core.Webgl.Vim): void;
65
65
  private initVim;
66
66
  }
67
67
  export {};
@@ -0,0 +1,3 @@
1
+ import * as Core from '../../core-viewers';
2
+ import { SectionBoxRef } from '../state/sectionBoxState';
3
+ export declare function useWebglSectionBox(viewer: Core.Webgl.Viewer): SectionBoxRef;