@itwin/core-common 5.0.0-dev.11 → 5.0.0-dev.110

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 (762) hide show
  1. package/CHANGELOG.md +65 -1
  2. package/lib/cjs/AmbientOcclusion.js +17 -9
  3. package/lib/cjs/AmbientOcclusion.js.map +1 -1
  4. package/lib/cjs/AnalysisStyle.d.ts +0 -3
  5. package/lib/cjs/AnalysisStyle.d.ts.map +1 -1
  6. package/lib/cjs/AnalysisStyle.js +20 -4
  7. package/lib/cjs/AnalysisStyle.js.map +1 -1
  8. package/lib/cjs/Atmosphere.js +39 -21
  9. package/lib/cjs/Atmosphere.js.map +1 -1
  10. package/lib/cjs/BackgroundMapProvider.js +4 -0
  11. package/lib/cjs/BackgroundMapProvider.js.map +1 -1
  12. package/lib/cjs/BackgroundMapSettings.js +19 -0
  13. package/lib/cjs/BackgroundMapSettings.js.map +1 -1
  14. package/lib/cjs/BlobReader.js +8 -6
  15. package/lib/cjs/BlobReader.js.map +1 -1
  16. package/lib/cjs/BriefcaseTypes.d.ts +2 -2
  17. package/lib/cjs/BriefcaseTypes.d.ts.map +1 -1
  18. package/lib/cjs/BriefcaseTypes.js.map +1 -1
  19. package/lib/cjs/Camera.js +3 -0
  20. package/lib/cjs/Camera.js.map +1 -1
  21. package/lib/cjs/CatalogIModel.d.ts +152 -0
  22. package/lib/cjs/CatalogIModel.d.ts.map +1 -0
  23. package/lib/cjs/CatalogIModel.js +30 -0
  24. package/lib/cjs/CatalogIModel.js.map +1 -0
  25. package/lib/cjs/CesiumIonAssets.d.ts +23 -0
  26. package/lib/cjs/CesiumIonAssets.d.ts.map +1 -0
  27. package/lib/cjs/CesiumIonAssets.js +32 -0
  28. package/lib/cjs/CesiumIonAssets.js.map +1 -0
  29. package/lib/cjs/ChangesetProps.d.ts +1 -1
  30. package/lib/cjs/ChangesetProps.js.map +1 -1
  31. package/lib/cjs/ClipStyle.js +31 -5
  32. package/lib/cjs/ClipStyle.js.map +1 -1
  33. package/lib/cjs/Code.d.ts +0 -5
  34. package/lib/cjs/Code.d.ts.map +1 -1
  35. package/lib/cjs/Code.js +16 -11
  36. package/lib/cjs/Code.js.map +1 -1
  37. package/lib/cjs/ColorDef.js +11 -10
  38. package/lib/cjs/ColorDef.js.map +1 -1
  39. package/lib/cjs/ConcurrentQuery.d.ts +35 -0
  40. package/lib/cjs/ConcurrentQuery.d.ts.map +1 -1
  41. package/lib/cjs/ConcurrentQuery.js +19 -3
  42. package/lib/cjs/ConcurrentQuery.js.map +1 -1
  43. package/lib/cjs/ContextRealityModel.js +53 -27
  44. package/lib/cjs/ContextRealityModel.js.map +1 -1
  45. package/lib/cjs/ContourDisplay.js +40 -5
  46. package/lib/cjs/ContourDisplay.js.map +1 -1
  47. package/lib/cjs/DisplayStyleSettings.js +95 -63
  48. package/lib/cjs/DisplayStyleSettings.js.map +1 -1
  49. package/lib/cjs/ECSqlReader.d.ts +2 -0
  50. package/lib/cjs/ECSqlReader.d.ts.map +1 -1
  51. package/lib/cjs/ECSqlReader.js +54 -50
  52. package/lib/cjs/ECSqlReader.js.map +1 -1
  53. package/lib/cjs/ElementProps.d.ts +14 -1
  54. package/lib/cjs/ElementProps.d.ts.map +1 -1
  55. package/lib/cjs/ElementProps.js +7 -3
  56. package/lib/cjs/ElementProps.js.map +1 -1
  57. package/lib/cjs/EntityProps.d.ts +25 -2
  58. package/lib/cjs/EntityProps.d.ts.map +1 -1
  59. package/lib/cjs/EntityProps.js +39 -0
  60. package/lib/cjs/EntityProps.js.map +1 -1
  61. package/lib/cjs/Environment.js +25 -2
  62. package/lib/cjs/Environment.js.map +1 -1
  63. package/lib/cjs/FeatureIndex.js +15 -6
  64. package/lib/cjs/FeatureIndex.js.map +1 -1
  65. package/lib/cjs/FeatureSymbology.d.ts +25 -73
  66. package/lib/cjs/FeatureSymbology.d.ts.map +1 -1
  67. package/lib/cjs/FeatureSymbology.js +88 -103
  68. package/lib/cjs/FeatureSymbology.js.map +1 -1
  69. package/lib/cjs/FeatureTable.d.ts +6 -108
  70. package/lib/cjs/FeatureTable.d.ts.map +1 -1
  71. package/lib/cjs/FeatureTable.js +13 -329
  72. package/lib/cjs/FeatureTable.js.map +1 -1
  73. package/lib/cjs/Fonts.d.ts +68 -10
  74. package/lib/cjs/Fonts.d.ts.map +1 -1
  75. package/lib/cjs/Fonts.js +19 -4
  76. package/lib/cjs/Fonts.js.map +1 -1
  77. package/lib/cjs/Frustum.js +2 -2
  78. package/lib/cjs/Frustum.js.map +1 -1
  79. package/lib/cjs/GeoCoordinateServices.d.ts +1 -0
  80. package/lib/cjs/GeoCoordinateServices.d.ts.map +1 -1
  81. package/lib/cjs/GeoCoordinateServices.js +2 -1
  82. package/lib/cjs/GeoCoordinateServices.js.map +1 -1
  83. package/lib/cjs/GeometryParams.js +58 -0
  84. package/lib/cjs/GeometryParams.js.map +1 -1
  85. package/lib/cjs/Gradient.d.ts +3 -4
  86. package/lib/cjs/Gradient.d.ts.map +1 -1
  87. package/lib/cjs/Gradient.js +21 -19
  88. package/lib/cjs/Gradient.js.map +1 -1
  89. package/lib/cjs/GraphicParams.js +14 -12
  90. package/lib/cjs/GraphicParams.js.map +1 -1
  91. package/lib/cjs/GroundPlane.js +8 -2
  92. package/lib/cjs/GroundPlane.js.map +1 -1
  93. package/lib/cjs/HSLColor.js +6 -0
  94. package/lib/cjs/HSLColor.js.map +1 -1
  95. package/lib/cjs/HSVColor.js +6 -0
  96. package/lib/cjs/HSVColor.js.map +1 -1
  97. package/lib/cjs/HiddenLine.d.ts +17 -18
  98. package/lib/cjs/HiddenLine.d.ts.map +1 -1
  99. package/lib/cjs/HiddenLine.js +24 -5
  100. package/lib/cjs/HiddenLine.js.map +1 -1
  101. package/lib/cjs/Hilite.js +10 -0
  102. package/lib/cjs/Hilite.js.map +1 -1
  103. package/lib/cjs/IModel.d.ts +3 -12
  104. package/lib/cjs/IModel.d.ts.map +1 -1
  105. package/lib/cjs/IModel.js +47 -23
  106. package/lib/cjs/IModel.js.map +1 -1
  107. package/lib/cjs/IModelError.d.ts +17 -9
  108. package/lib/cjs/IModelError.d.ts.map +1 -1
  109. package/lib/cjs/IModelError.js +7 -11
  110. package/lib/cjs/IModelError.js.map +1 -1
  111. package/lib/cjs/IModelVersion.js +4 -0
  112. package/lib/cjs/IModelVersion.js.map +1 -1
  113. package/lib/cjs/ITwinCoreErrors.d.ts +107 -0
  114. package/lib/cjs/ITwinCoreErrors.d.ts.map +1 -0
  115. package/lib/cjs/ITwinCoreErrors.js +90 -0
  116. package/lib/cjs/ITwinCoreErrors.js.map +1 -0
  117. package/lib/cjs/Image.d.ts +22 -8
  118. package/lib/cjs/Image.d.ts.map +1 -1
  119. package/lib/cjs/Image.js +20 -4
  120. package/lib/cjs/Image.js.map +1 -1
  121. package/lib/cjs/IpcAppProps.d.ts +2 -0
  122. package/lib/cjs/IpcAppProps.d.ts.map +1 -1
  123. package/lib/cjs/IpcAppProps.js.map +1 -1
  124. package/lib/cjs/LightSettings.js +39 -1
  125. package/lib/cjs/LightSettings.js.map +1 -1
  126. package/lib/cjs/Localization.d.ts +0 -10
  127. package/lib/cjs/Localization.d.ts.map +1 -1
  128. package/lib/cjs/Localization.js +0 -1
  129. package/lib/cjs/Localization.js.map +1 -1
  130. package/lib/cjs/MapImagerySettings.js +3 -2
  131. package/lib/cjs/MapImagerySettings.js.map +1 -1
  132. package/lib/cjs/MapLayerSettings.d.ts +40 -1
  133. package/lib/cjs/MapLayerSettings.d.ts.map +1 -1
  134. package/lib/cjs/MapLayerSettings.js +73 -4
  135. package/lib/cjs/MapLayerSettings.js.map +1 -1
  136. package/lib/cjs/MassProperties.d.ts +2 -0
  137. package/lib/cjs/MassProperties.d.ts.map +1 -1
  138. package/lib/cjs/MassProperties.js.map +1 -1
  139. package/lib/cjs/ModelClipGroup.js +6 -0
  140. package/lib/cjs/ModelClipGroup.js.map +1 -1
  141. package/lib/cjs/OctEncodedNormal.js +4 -0
  142. package/lib/cjs/OctEncodedNormal.js.map +1 -1
  143. package/lib/cjs/PlanProjectionSettings.d.ts +1 -2
  144. package/lib/cjs/PlanProjectionSettings.d.ts.map +1 -1
  145. package/lib/cjs/PlanProjectionSettings.js +8 -1
  146. package/lib/cjs/PlanProjectionSettings.js.map +1 -1
  147. package/lib/cjs/PlanarClipMask.d.ts +0 -12
  148. package/lib/cjs/PlanarClipMask.d.ts.map +1 -1
  149. package/lib/cjs/PlanarClipMask.js +24 -2
  150. package/lib/cjs/PlanarClipMask.js.map +1 -1
  151. package/lib/cjs/QPoint.d.ts +5 -5
  152. package/lib/cjs/QPoint.d.ts.map +1 -1
  153. package/lib/cjs/QPoint.js +37 -29
  154. package/lib/cjs/QPoint.js.map +1 -1
  155. package/lib/cjs/RealityModelDisplaySettings.js +81 -4
  156. package/lib/cjs/RealityModelDisplaySettings.js.map +1 -1
  157. package/lib/cjs/RenderMaterial.d.ts +0 -43
  158. package/lib/cjs/RenderMaterial.d.ts.map +1 -1
  159. package/lib/cjs/RenderMaterial.js +6 -51
  160. package/lib/cjs/RenderMaterial.js.map +1 -1
  161. package/lib/cjs/RenderPolyline.d.ts +36 -0
  162. package/lib/cjs/RenderPolyline.d.ts.map +1 -0
  163. package/lib/cjs/RenderPolyline.js +26 -0
  164. package/lib/cjs/RenderPolyline.js.map +1 -0
  165. package/lib/cjs/RenderSchedule.d.ts +1 -2
  166. package/lib/cjs/RenderSchedule.d.ts.map +1 -1
  167. package/lib/cjs/RenderSchedule.js +138 -11
  168. package/lib/cjs/RenderSchedule.js.map +1 -1
  169. package/lib/cjs/RenderTexture.d.ts +5 -23
  170. package/lib/cjs/RenderTexture.d.ts.map +1 -1
  171. package/lib/cjs/RenderTexture.js +13 -16
  172. package/lib/cjs/RenderTexture.js.map +1 -1
  173. package/lib/cjs/RgbColor.js +3 -0
  174. package/lib/cjs/RgbColor.js.map +1 -1
  175. package/lib/cjs/RpcInterface.d.ts.map +1 -1
  176. package/lib/cjs/RpcInterface.js +7 -1
  177. package/lib/cjs/RpcInterface.js.map +1 -1
  178. package/lib/cjs/SkyBox.js +17 -4
  179. package/lib/cjs/SkyBox.js.map +1 -1
  180. package/lib/cjs/SolarShadows.js +5 -1
  181. package/lib/cjs/SolarShadows.js.map +1 -1
  182. package/lib/cjs/SpatialClassification.js +19 -1
  183. package/lib/cjs/SpatialClassification.js.map +1 -1
  184. package/lib/cjs/SubCategoryAppearance.js +35 -1
  185. package/lib/cjs/SubCategoryAppearance.js.map +1 -1
  186. package/lib/cjs/SubCategoryOverride.js +16 -2
  187. package/lib/cjs/SubCategoryOverride.js.map +1 -1
  188. package/lib/cjs/TerrainSettings.d.ts +0 -19
  189. package/lib/cjs/TerrainSettings.d.ts.map +1 -1
  190. package/lib/cjs/TerrainSettings.js +22 -15
  191. package/lib/cjs/TerrainSettings.js.map +1 -1
  192. package/lib/cjs/TextureMapping.d.ts +17 -14
  193. package/lib/cjs/TextureMapping.d.ts.map +1 -1
  194. package/lib/cjs/TextureMapping.js +47 -19
  195. package/lib/cjs/TextureMapping.js.map +1 -1
  196. package/lib/cjs/ThematicDisplay.js +53 -2
  197. package/lib/cjs/ThematicDisplay.js.map +1 -1
  198. package/lib/cjs/Thumbnail.d.ts +1 -1
  199. package/lib/cjs/Thumbnail.js.map +1 -1
  200. package/lib/cjs/Tween.js +28 -19
  201. package/lib/cjs/Tween.js.map +1 -1
  202. package/lib/cjs/ViewDetails.js +10 -6
  203. package/lib/cjs/ViewDetails.js.map +1 -1
  204. package/lib/cjs/ViewFlags.d.ts +1 -3
  205. package/lib/cjs/ViewFlags.d.ts.map +1 -1
  206. package/lib/cjs/ViewFlags.js +86 -5
  207. package/lib/cjs/ViewFlags.js.map +1 -1
  208. package/lib/cjs/ViewProps.d.ts +2 -6
  209. package/lib/cjs/ViewProps.d.ts.map +1 -1
  210. package/lib/cjs/ViewProps.js.map +1 -1
  211. package/lib/cjs/WhiteOnWhiteReversalSettings.js +7 -2
  212. package/lib/cjs/WhiteOnWhiteReversalSettings.js.map +1 -1
  213. package/lib/cjs/annotation/TextAnnotation.d.ts +3 -2
  214. package/lib/cjs/annotation/TextAnnotation.d.ts.map +1 -1
  215. package/lib/cjs/annotation/TextAnnotation.js +13 -2
  216. package/lib/cjs/annotation/TextAnnotation.js.map +1 -1
  217. package/lib/cjs/annotation/TextBlock.d.ts +17 -0
  218. package/lib/cjs/annotation/TextBlock.d.ts.map +1 -1
  219. package/lib/cjs/annotation/TextBlock.js +41 -6
  220. package/lib/cjs/annotation/TextBlock.js.map +1 -1
  221. package/lib/cjs/annotation/TextStyle.js +65 -19
  222. package/lib/cjs/annotation/TextStyle.js.map +1 -1
  223. package/lib/cjs/core-common.d.ts +5 -4
  224. package/lib/cjs/core-common.d.ts.map +1 -1
  225. package/lib/cjs/core-common.js +5 -4
  226. package/lib/cjs/core-common.js.map +1 -1
  227. package/lib/cjs/geometry/AdditionalTransform.js +12 -0
  228. package/lib/cjs/geometry/AdditionalTransform.js.map +1 -1
  229. package/lib/cjs/geometry/AreaPattern.js +17 -0
  230. package/lib/cjs/geometry/AreaPattern.js.map +1 -1
  231. package/lib/cjs/geometry/BoundingSphere.js +4 -0
  232. package/lib/cjs/geometry/BoundingSphere.js.map +1 -1
  233. package/lib/cjs/geometry/Cartographic.js +23 -20
  234. package/lib/cjs/geometry/Cartographic.js.map +1 -1
  235. package/lib/cjs/geometry/CoordinateReferenceSystem.js +62 -0
  236. package/lib/cjs/geometry/CoordinateReferenceSystem.js.map +1 -1
  237. package/lib/cjs/geometry/ElementGeometry.js +26 -8
  238. package/lib/cjs/geometry/ElementGeometry.js.map +1 -1
  239. package/lib/cjs/geometry/ElementGeometryFB.js +54 -108
  240. package/lib/cjs/geometry/ElementGeometryFB.js.map +1 -1
  241. package/lib/cjs/geometry/FrustumPlanes.js +1 -0
  242. package/lib/cjs/geometry/FrustumPlanes.js.map +1 -1
  243. package/lib/cjs/geometry/GeodeticDatum.js +100 -0
  244. package/lib/cjs/geometry/GeodeticDatum.js.map +1 -1
  245. package/lib/cjs/geometry/GeodeticEllipsoid.js +16 -0
  246. package/lib/cjs/geometry/GeodeticEllipsoid.js.map +1 -1
  247. package/lib/cjs/geometry/GeometryStream.js +19 -6
  248. package/lib/cjs/geometry/GeometryStream.js.map +1 -1
  249. package/lib/cjs/geometry/ImageGraphic.js +10 -0
  250. package/lib/cjs/geometry/ImageGraphic.js.map +1 -1
  251. package/lib/cjs/geometry/LineStyle.js +14 -0
  252. package/lib/cjs/geometry/LineStyle.js.map +1 -1
  253. package/lib/cjs/geometry/Placement.js +6 -0
  254. package/lib/cjs/geometry/Placement.js.map +1 -1
  255. package/lib/cjs/geometry/Projection.js +75 -0
  256. package/lib/cjs/geometry/Projection.js.map +1 -1
  257. package/lib/cjs/geometry/TextString.js +18 -0
  258. package/lib/cjs/geometry/TextString.js.map +1 -1
  259. package/lib/cjs/{BackendTypes.d.ts → internal/BackendTypes.d.ts} +1 -0
  260. package/lib/cjs/internal/BackendTypes.d.ts.map +1 -0
  261. package/lib/cjs/internal/BackendTypes.js.map +1 -0
  262. package/lib/cjs/internal/PackedFeatureTable.d.ts +111 -0
  263. package/lib/cjs/internal/PackedFeatureTable.d.ts.map +1 -0
  264. package/lib/cjs/internal/PackedFeatureTable.js +359 -0
  265. package/lib/cjs/internal/PackedFeatureTable.js.map +1 -0
  266. package/lib/cjs/internal/RenderMaterialParams.d.ts +47 -0
  267. package/lib/cjs/internal/RenderMaterialParams.d.ts.map +1 -0
  268. package/lib/cjs/internal/RenderMaterialParams.js +68 -0
  269. package/lib/cjs/internal/RenderMaterialParams.js.map +1 -0
  270. package/lib/cjs/internal/RenderMesh.d.ts +52 -0
  271. package/lib/cjs/internal/RenderMesh.d.ts.map +1 -0
  272. package/lib/cjs/{Render.js → internal/RenderMesh.js} +12 -31
  273. package/lib/cjs/internal/RenderMesh.js.map +1 -0
  274. package/lib/cjs/internal/RenderTextureParams.d.ts +25 -0
  275. package/lib/cjs/internal/RenderTextureParams.d.ts.map +1 -0
  276. package/lib/cjs/internal/RenderTextureParams.js +37 -0
  277. package/lib/cjs/internal/RenderTextureParams.js.map +1 -0
  278. package/lib/cjs/internal/cross-package.d.ts +5 -0
  279. package/lib/cjs/internal/cross-package.d.ts.map +1 -1
  280. package/lib/cjs/internal/cross-package.js +16 -0
  281. package/lib/cjs/internal/cross-package.js.map +1 -1
  282. package/lib/cjs/ipc/IpcSession.js +1 -0
  283. package/lib/cjs/ipc/IpcSession.js.map +1 -1
  284. package/lib/cjs/ipc/IpcSocket.d.ts +2 -20
  285. package/lib/cjs/ipc/IpcSocket.d.ts.map +1 -1
  286. package/lib/cjs/ipc/IpcSocket.js.map +1 -1
  287. package/lib/cjs/ipc/IpcWebSocket.js +7 -6
  288. package/lib/cjs/ipc/IpcWebSocket.js.map +1 -1
  289. package/lib/cjs/ipc/IpcWebSocketTransport.js +8 -7
  290. package/lib/cjs/ipc/IpcWebSocketTransport.js.map +1 -1
  291. package/lib/cjs/rpc/DevToolsRpcInterface.js +6 -6
  292. package/lib/cjs/rpc/DevToolsRpcInterface.js.map +1 -1
  293. package/lib/cjs/rpc/IModelReadRpcInterface.js +8 -11
  294. package/lib/cjs/rpc/IModelReadRpcInterface.js.map +1 -1
  295. package/lib/cjs/rpc/IModelTileRpcInterface.js +4 -4
  296. package/lib/cjs/rpc/IModelTileRpcInterface.js.map +1 -1
  297. package/lib/cjs/rpc/SnapshotIModelRpcInterface.js +4 -4
  298. package/lib/cjs/rpc/SnapshotIModelRpcInterface.js.map +1 -1
  299. package/lib/cjs/rpc/TestRpcManager.js +1 -4
  300. package/lib/cjs/rpc/TestRpcManager.js.map +1 -1
  301. package/lib/cjs/rpc/core/RpcConfiguration.js +51 -64
  302. package/lib/cjs/rpc/core/RpcConfiguration.js.map +1 -1
  303. package/lib/cjs/rpc/core/RpcControl.js +29 -38
  304. package/lib/cjs/rpc/core/RpcControl.js.map +1 -1
  305. package/lib/cjs/rpc/core/RpcInvocation.js +19 -13
  306. package/lib/cjs/rpc/core/RpcInvocation.js.map +1 -1
  307. package/lib/cjs/rpc/core/RpcMarshaling.d.ts +1 -4
  308. package/lib/cjs/rpc/core/RpcMarshaling.d.ts.map +1 -1
  309. package/lib/cjs/rpc/core/RpcMarshaling.js +5 -4
  310. package/lib/cjs/rpc/core/RpcMarshaling.js.map +1 -1
  311. package/lib/cjs/rpc/core/RpcOperation.js +29 -31
  312. package/lib/cjs/rpc/core/RpcOperation.js.map +1 -1
  313. package/lib/cjs/rpc/core/RpcPendingQueue.js +17 -16
  314. package/lib/cjs/rpc/core/RpcPendingQueue.js.map +1 -1
  315. package/lib/cjs/rpc/core/RpcProtocol.js +32 -30
  316. package/lib/cjs/rpc/core/RpcProtocol.js.map +1 -1
  317. package/lib/cjs/rpc/core/RpcPush.js +15 -8
  318. package/lib/cjs/rpc/core/RpcPush.js.map +1 -1
  319. package/lib/cjs/rpc/core/RpcRegistry.d.ts.map +1 -1
  320. package/lib/cjs/rpc/core/RpcRegistry.js +10 -9
  321. package/lib/cjs/rpc/core/RpcRegistry.js.map +1 -1
  322. package/lib/cjs/rpc/core/RpcRequest.d.ts +2 -2
  323. package/lib/cjs/rpc/core/RpcRequest.d.ts.map +1 -1
  324. package/lib/cjs/rpc/core/RpcRequest.js +51 -29
  325. package/lib/cjs/rpc/core/RpcRequest.js.map +1 -1
  326. package/lib/cjs/rpc/core/RpcRoutingToken.js +4 -2
  327. package/lib/cjs/rpc/core/RpcRoutingToken.js.map +1 -1
  328. package/lib/cjs/rpc/core/RpcSessionInvocation.js +5 -10
  329. package/lib/cjs/rpc/core/RpcSessionInvocation.js.map +1 -1
  330. package/lib/cjs/rpc/web/BentleyCloudRpcManager.js +11 -17
  331. package/lib/cjs/rpc/web/BentleyCloudRpcManager.js.map +1 -1
  332. package/lib/cjs/rpc/web/BentleyCloudRpcProtocol.js +16 -19
  333. package/lib/cjs/rpc/web/BentleyCloudRpcProtocol.js.map +1 -1
  334. package/lib/cjs/rpc/web/OpenAPI.js +2 -0
  335. package/lib/cjs/rpc/web/OpenAPI.js.map +1 -1
  336. package/lib/cjs/rpc/web/RpcMultipart.d.ts +1 -1
  337. package/lib/cjs/rpc/web/RpcMultipart.d.ts.map +1 -1
  338. package/lib/cjs/rpc/web/RpcMultipart.js +13 -12
  339. package/lib/cjs/rpc/web/RpcMultipart.js.map +1 -1
  340. package/lib/cjs/rpc/web/WebAppRpcLogging.d.ts +3 -0
  341. package/lib/cjs/rpc/web/WebAppRpcLogging.d.ts.map +1 -1
  342. package/lib/cjs/rpc/web/WebAppRpcLogging.js +1 -6
  343. package/lib/cjs/rpc/web/WebAppRpcLogging.js.map +1 -1
  344. package/lib/cjs/rpc/web/WebAppRpcProtocol.d.ts +1 -1
  345. package/lib/cjs/rpc/web/WebAppRpcProtocol.d.ts.map +1 -1
  346. package/lib/cjs/rpc/web/WebAppRpcProtocol.js +6 -6
  347. package/lib/cjs/rpc/web/WebAppRpcProtocol.js.map +1 -1
  348. package/lib/cjs/rpc/web/WebAppRpcRequest.d.ts.map +1 -1
  349. package/lib/cjs/rpc/web/WebAppRpcRequest.js +27 -27
  350. package/lib/cjs/rpc/web/WebAppRpcRequest.js.map +1 -1
  351. package/lib/cjs/rpc/web/multipart/RpcMultipartParser.d.ts +0 -2
  352. package/lib/cjs/rpc/web/multipart/RpcMultipartParser.d.ts.map +1 -1
  353. package/lib/cjs/rpc/web/multipart/RpcMultipartParser.js +14 -8
  354. package/lib/cjs/rpc/web/multipart/RpcMultipartParser.js.map +1 -1
  355. package/lib/cjs/tile/B3dmTileIO.js +7 -0
  356. package/lib/cjs/tile/B3dmTileIO.js.map +1 -1
  357. package/lib/cjs/tile/CompositeTileIO.js +3 -0
  358. package/lib/cjs/tile/CompositeTileIO.js.map +1 -1
  359. package/lib/cjs/tile/GltfTileIO.js +4 -3
  360. package/lib/cjs/tile/GltfTileIO.js.map +1 -1
  361. package/lib/cjs/tile/I3dmTileIO.js +8 -0
  362. package/lib/cjs/tile/I3dmTileIO.js.map +1 -1
  363. package/lib/cjs/tile/IModelTileIO.d.ts +2 -2
  364. package/lib/cjs/tile/IModelTileIO.js +26 -3
  365. package/lib/cjs/tile/IModelTileIO.js.map +1 -1
  366. package/lib/cjs/tile/PntsTileIO.js +5 -0
  367. package/lib/cjs/tile/PntsTileIO.js.map +1 -1
  368. package/lib/cjs/tile/TileIO.js +2 -0
  369. package/lib/cjs/tile/TileIO.js.map +1 -1
  370. package/lib/cjs/tile/TileMetadata.js +9 -1
  371. package/lib/cjs/tile/TileMetadata.js.map +1 -1
  372. package/lib/esm/AmbientOcclusion.js +17 -9
  373. package/lib/esm/AmbientOcclusion.js.map +1 -1
  374. package/lib/esm/AnalysisStyle.d.ts +0 -3
  375. package/lib/esm/AnalysisStyle.d.ts.map +1 -1
  376. package/lib/esm/AnalysisStyle.js +20 -4
  377. package/lib/esm/AnalysisStyle.js.map +1 -1
  378. package/lib/esm/Atmosphere.js +39 -21
  379. package/lib/esm/Atmosphere.js.map +1 -1
  380. package/lib/esm/BackgroundMapProvider.js +4 -0
  381. package/lib/esm/BackgroundMapProvider.js.map +1 -1
  382. package/lib/esm/BackgroundMapSettings.js +19 -0
  383. package/lib/esm/BackgroundMapSettings.js.map +1 -1
  384. package/lib/esm/BlobReader.js +8 -6
  385. package/lib/esm/BlobReader.js.map +1 -1
  386. package/lib/esm/BriefcaseTypes.d.ts +2 -2
  387. package/lib/esm/BriefcaseTypes.d.ts.map +1 -1
  388. package/lib/esm/BriefcaseTypes.js.map +1 -1
  389. package/lib/esm/Camera.js +3 -0
  390. package/lib/esm/Camera.js.map +1 -1
  391. package/lib/esm/CatalogIModel.d.ts +152 -0
  392. package/lib/esm/CatalogIModel.d.ts.map +1 -0
  393. package/lib/esm/CatalogIModel.js +27 -0
  394. package/lib/esm/CatalogIModel.js.map +1 -0
  395. package/lib/esm/CesiumIonAssets.d.ts +23 -0
  396. package/lib/esm/CesiumIonAssets.d.ts.map +1 -0
  397. package/lib/esm/CesiumIonAssets.js +29 -0
  398. package/lib/esm/CesiumIonAssets.js.map +1 -0
  399. package/lib/esm/ChangesetProps.d.ts +1 -1
  400. package/lib/esm/ChangesetProps.js.map +1 -1
  401. package/lib/esm/ClipStyle.js +31 -5
  402. package/lib/esm/ClipStyle.js.map +1 -1
  403. package/lib/esm/Code.d.ts +0 -5
  404. package/lib/esm/Code.d.ts.map +1 -1
  405. package/lib/esm/Code.js +16 -11
  406. package/lib/esm/Code.js.map +1 -1
  407. package/lib/esm/ColorDef.js +11 -10
  408. package/lib/esm/ColorDef.js.map +1 -1
  409. package/lib/esm/ConcurrentQuery.d.ts +35 -0
  410. package/lib/esm/ConcurrentQuery.d.ts.map +1 -1
  411. package/lib/esm/ConcurrentQuery.js +19 -3
  412. package/lib/esm/ConcurrentQuery.js.map +1 -1
  413. package/lib/esm/ContextRealityModel.js +53 -27
  414. package/lib/esm/ContextRealityModel.js.map +1 -1
  415. package/lib/esm/ContourDisplay.js +40 -5
  416. package/lib/esm/ContourDisplay.js.map +1 -1
  417. package/lib/esm/DisplayStyleSettings.js +95 -63
  418. package/lib/esm/DisplayStyleSettings.js.map +1 -1
  419. package/lib/esm/ECSqlReader.d.ts +2 -0
  420. package/lib/esm/ECSqlReader.d.ts.map +1 -1
  421. package/lib/esm/ECSqlReader.js +54 -50
  422. package/lib/esm/ECSqlReader.js.map +1 -1
  423. package/lib/esm/ElementProps.d.ts +14 -1
  424. package/lib/esm/ElementProps.d.ts.map +1 -1
  425. package/lib/esm/ElementProps.js +8 -4
  426. package/lib/esm/ElementProps.js.map +1 -1
  427. package/lib/esm/EntityProps.d.ts +25 -2
  428. package/lib/esm/EntityProps.d.ts.map +1 -1
  429. package/lib/esm/EntityProps.js +39 -0
  430. package/lib/esm/EntityProps.js.map +1 -1
  431. package/lib/esm/Environment.js +25 -2
  432. package/lib/esm/Environment.js.map +1 -1
  433. package/lib/esm/FeatureIndex.js +15 -6
  434. package/lib/esm/FeatureIndex.js.map +1 -1
  435. package/lib/esm/FeatureSymbology.d.ts +25 -73
  436. package/lib/esm/FeatureSymbology.d.ts.map +1 -1
  437. package/lib/esm/FeatureSymbology.js +88 -103
  438. package/lib/esm/FeatureSymbology.js.map +1 -1
  439. package/lib/esm/FeatureTable.d.ts +6 -108
  440. package/lib/esm/FeatureTable.d.ts.map +1 -1
  441. package/lib/esm/FeatureTable.js +11 -324
  442. package/lib/esm/FeatureTable.js.map +1 -1
  443. package/lib/esm/Fonts.d.ts +68 -10
  444. package/lib/esm/Fonts.d.ts.map +1 -1
  445. package/lib/esm/Fonts.js +19 -4
  446. package/lib/esm/Fonts.js.map +1 -1
  447. package/lib/esm/Frustum.js +2 -2
  448. package/lib/esm/Frustum.js.map +1 -1
  449. package/lib/esm/GeoCoordinateServices.d.ts +1 -0
  450. package/lib/esm/GeoCoordinateServices.d.ts.map +1 -1
  451. package/lib/esm/GeoCoordinateServices.js +2 -1
  452. package/lib/esm/GeoCoordinateServices.js.map +1 -1
  453. package/lib/esm/GeometryParams.js +58 -0
  454. package/lib/esm/GeometryParams.js.map +1 -1
  455. package/lib/esm/Gradient.d.ts +3 -4
  456. package/lib/esm/Gradient.d.ts.map +1 -1
  457. package/lib/esm/Gradient.js +21 -19
  458. package/lib/esm/Gradient.js.map +1 -1
  459. package/lib/esm/GraphicParams.js +14 -12
  460. package/lib/esm/GraphicParams.js.map +1 -1
  461. package/lib/esm/GroundPlane.js +8 -2
  462. package/lib/esm/GroundPlane.js.map +1 -1
  463. package/lib/esm/HSLColor.js +6 -0
  464. package/lib/esm/HSLColor.js.map +1 -1
  465. package/lib/esm/HSVColor.js +6 -0
  466. package/lib/esm/HSVColor.js.map +1 -1
  467. package/lib/esm/HiddenLine.d.ts +17 -18
  468. package/lib/esm/HiddenLine.d.ts.map +1 -1
  469. package/lib/esm/HiddenLine.js +24 -5
  470. package/lib/esm/HiddenLine.js.map +1 -1
  471. package/lib/esm/Hilite.js +10 -0
  472. package/lib/esm/Hilite.js.map +1 -1
  473. package/lib/esm/IModel.d.ts +3 -12
  474. package/lib/esm/IModel.d.ts.map +1 -1
  475. package/lib/esm/IModel.js +47 -23
  476. package/lib/esm/IModel.js.map +1 -1
  477. package/lib/esm/IModelError.d.ts +17 -9
  478. package/lib/esm/IModelError.d.ts.map +1 -1
  479. package/lib/esm/IModelError.js +6 -4
  480. package/lib/esm/IModelError.js.map +1 -1
  481. package/lib/esm/IModelVersion.js +4 -0
  482. package/lib/esm/IModelVersion.js.map +1 -1
  483. package/lib/esm/ITwinCoreErrors.d.ts +107 -0
  484. package/lib/esm/ITwinCoreErrors.d.ts.map +1 -0
  485. package/lib/esm/ITwinCoreErrors.js +87 -0
  486. package/lib/esm/ITwinCoreErrors.js.map +1 -0
  487. package/lib/esm/Image.d.ts +22 -8
  488. package/lib/esm/Image.d.ts.map +1 -1
  489. package/lib/esm/Image.js +19 -4
  490. package/lib/esm/Image.js.map +1 -1
  491. package/lib/esm/IpcAppProps.d.ts +2 -0
  492. package/lib/esm/IpcAppProps.d.ts.map +1 -1
  493. package/lib/esm/IpcAppProps.js.map +1 -1
  494. package/lib/esm/LightSettings.js +39 -1
  495. package/lib/esm/LightSettings.js.map +1 -1
  496. package/lib/esm/Localization.d.ts +0 -10
  497. package/lib/esm/Localization.d.ts.map +1 -1
  498. package/lib/esm/Localization.js +0 -1
  499. package/lib/esm/Localization.js.map +1 -1
  500. package/lib/esm/MapImagerySettings.js +3 -2
  501. package/lib/esm/MapImagerySettings.js.map +1 -1
  502. package/lib/esm/MapLayerSettings.d.ts +40 -1
  503. package/lib/esm/MapLayerSettings.d.ts.map +1 -1
  504. package/lib/esm/MapLayerSettings.js +72 -3
  505. package/lib/esm/MapLayerSettings.js.map +1 -1
  506. package/lib/esm/MassProperties.d.ts +2 -0
  507. package/lib/esm/MassProperties.d.ts.map +1 -1
  508. package/lib/esm/MassProperties.js.map +1 -1
  509. package/lib/esm/ModelClipGroup.js +6 -0
  510. package/lib/esm/ModelClipGroup.js.map +1 -1
  511. package/lib/esm/OctEncodedNormal.js +4 -0
  512. package/lib/esm/OctEncodedNormal.js.map +1 -1
  513. package/lib/esm/PlanProjectionSettings.d.ts +1 -2
  514. package/lib/esm/PlanProjectionSettings.d.ts.map +1 -1
  515. package/lib/esm/PlanProjectionSettings.js +8 -1
  516. package/lib/esm/PlanProjectionSettings.js.map +1 -1
  517. package/lib/esm/PlanarClipMask.d.ts +0 -12
  518. package/lib/esm/PlanarClipMask.d.ts.map +1 -1
  519. package/lib/esm/PlanarClipMask.js +24 -2
  520. package/lib/esm/PlanarClipMask.js.map +1 -1
  521. package/lib/esm/QPoint.d.ts +5 -5
  522. package/lib/esm/QPoint.d.ts.map +1 -1
  523. package/lib/esm/QPoint.js +37 -29
  524. package/lib/esm/QPoint.js.map +1 -1
  525. package/lib/esm/RealityModelDisplaySettings.js +81 -4
  526. package/lib/esm/RealityModelDisplaySettings.js.map +1 -1
  527. package/lib/esm/RenderMaterial.d.ts +0 -43
  528. package/lib/esm/RenderMaterial.d.ts.map +1 -1
  529. package/lib/esm/RenderMaterial.js +6 -51
  530. package/lib/esm/RenderMaterial.js.map +1 -1
  531. package/lib/esm/RenderPolyline.d.ts +36 -0
  532. package/lib/esm/RenderPolyline.d.ts.map +1 -0
  533. package/lib/esm/RenderPolyline.js +23 -0
  534. package/lib/esm/RenderPolyline.js.map +1 -0
  535. package/lib/esm/RenderSchedule.d.ts +1 -2
  536. package/lib/esm/RenderSchedule.d.ts.map +1 -1
  537. package/lib/esm/RenderSchedule.js +138 -11
  538. package/lib/esm/RenderSchedule.js.map +1 -1
  539. package/lib/esm/RenderTexture.d.ts +5 -23
  540. package/lib/esm/RenderTexture.d.ts.map +1 -1
  541. package/lib/esm/RenderTexture.js +13 -16
  542. package/lib/esm/RenderTexture.js.map +1 -1
  543. package/lib/esm/RgbColor.js +3 -0
  544. package/lib/esm/RgbColor.js.map +1 -1
  545. package/lib/esm/RpcInterface.d.ts.map +1 -1
  546. package/lib/esm/RpcInterface.js +8 -2
  547. package/lib/esm/RpcInterface.js.map +1 -1
  548. package/lib/esm/SkyBox.js +17 -4
  549. package/lib/esm/SkyBox.js.map +1 -1
  550. package/lib/esm/SolarShadows.js +5 -1
  551. package/lib/esm/SolarShadows.js.map +1 -1
  552. package/lib/esm/SpatialClassification.js +19 -1
  553. package/lib/esm/SpatialClassification.js.map +1 -1
  554. package/lib/esm/SubCategoryAppearance.js +35 -1
  555. package/lib/esm/SubCategoryAppearance.js.map +1 -1
  556. package/lib/esm/SubCategoryOverride.js +16 -2
  557. package/lib/esm/SubCategoryOverride.js.map +1 -1
  558. package/lib/esm/TerrainSettings.d.ts +0 -19
  559. package/lib/esm/TerrainSettings.d.ts.map +1 -1
  560. package/lib/esm/TerrainSettings.js +20 -13
  561. package/lib/esm/TerrainSettings.js.map +1 -1
  562. package/lib/esm/TextureMapping.d.ts +17 -14
  563. package/lib/esm/TextureMapping.d.ts.map +1 -1
  564. package/lib/esm/TextureMapping.js +47 -19
  565. package/lib/esm/TextureMapping.js.map +1 -1
  566. package/lib/esm/ThematicDisplay.js +53 -2
  567. package/lib/esm/ThematicDisplay.js.map +1 -1
  568. package/lib/esm/Thumbnail.d.ts +1 -1
  569. package/lib/esm/Thumbnail.js.map +1 -1
  570. package/lib/esm/Tween.js +28 -19
  571. package/lib/esm/Tween.js.map +1 -1
  572. package/lib/esm/ViewDetails.js +10 -6
  573. package/lib/esm/ViewDetails.js.map +1 -1
  574. package/lib/esm/ViewFlags.d.ts +1 -3
  575. package/lib/esm/ViewFlags.d.ts.map +1 -1
  576. package/lib/esm/ViewFlags.js +86 -5
  577. package/lib/esm/ViewFlags.js.map +1 -1
  578. package/lib/esm/ViewProps.d.ts +2 -6
  579. package/lib/esm/ViewProps.d.ts.map +1 -1
  580. package/lib/esm/ViewProps.js.map +1 -1
  581. package/lib/esm/WhiteOnWhiteReversalSettings.js +7 -2
  582. package/lib/esm/WhiteOnWhiteReversalSettings.js.map +1 -1
  583. package/lib/esm/annotation/TextAnnotation.d.ts +3 -2
  584. package/lib/esm/annotation/TextAnnotation.d.ts.map +1 -1
  585. package/lib/esm/annotation/TextAnnotation.js +13 -2
  586. package/lib/esm/annotation/TextAnnotation.js.map +1 -1
  587. package/lib/esm/annotation/TextBlock.d.ts +17 -0
  588. package/lib/esm/annotation/TextBlock.d.ts.map +1 -1
  589. package/lib/esm/annotation/TextBlock.js +41 -6
  590. package/lib/esm/annotation/TextBlock.js.map +1 -1
  591. package/lib/esm/annotation/TextStyle.js +65 -19
  592. package/lib/esm/annotation/TextStyle.js.map +1 -1
  593. package/lib/esm/core-common.d.ts +5 -4
  594. package/lib/esm/core-common.d.ts.map +1 -1
  595. package/lib/esm/core-common.js +5 -4
  596. package/lib/esm/core-common.js.map +1 -1
  597. package/lib/esm/geometry/AdditionalTransform.js +12 -0
  598. package/lib/esm/geometry/AdditionalTransform.js.map +1 -1
  599. package/lib/esm/geometry/AreaPattern.js +17 -0
  600. package/lib/esm/geometry/AreaPattern.js.map +1 -1
  601. package/lib/esm/geometry/BoundingSphere.js +4 -0
  602. package/lib/esm/geometry/BoundingSphere.js.map +1 -1
  603. package/lib/esm/geometry/Cartographic.js +23 -20
  604. package/lib/esm/geometry/Cartographic.js.map +1 -1
  605. package/lib/esm/geometry/CoordinateReferenceSystem.js +62 -0
  606. package/lib/esm/geometry/CoordinateReferenceSystem.js.map +1 -1
  607. package/lib/esm/geometry/ElementGeometry.js +26 -8
  608. package/lib/esm/geometry/ElementGeometry.js.map +1 -1
  609. package/lib/esm/geometry/ElementGeometryFB.js +54 -108
  610. package/lib/esm/geometry/ElementGeometryFB.js.map +1 -1
  611. package/lib/esm/geometry/FrustumPlanes.js +1 -0
  612. package/lib/esm/geometry/FrustumPlanes.js.map +1 -1
  613. package/lib/esm/geometry/GeodeticDatum.js +100 -0
  614. package/lib/esm/geometry/GeodeticDatum.js.map +1 -1
  615. package/lib/esm/geometry/GeodeticEllipsoid.js +16 -0
  616. package/lib/esm/geometry/GeodeticEllipsoid.js.map +1 -1
  617. package/lib/esm/geometry/GeometryStream.js +19 -6
  618. package/lib/esm/geometry/GeometryStream.js.map +1 -1
  619. package/lib/esm/geometry/ImageGraphic.js +10 -0
  620. package/lib/esm/geometry/ImageGraphic.js.map +1 -1
  621. package/lib/esm/geometry/LineStyle.js +14 -0
  622. package/lib/esm/geometry/LineStyle.js.map +1 -1
  623. package/lib/esm/geometry/Placement.js +6 -0
  624. package/lib/esm/geometry/Placement.js.map +1 -1
  625. package/lib/esm/geometry/Projection.js +75 -0
  626. package/lib/esm/geometry/Projection.js.map +1 -1
  627. package/lib/esm/geometry/TextString.js +18 -0
  628. package/lib/esm/geometry/TextString.js.map +1 -1
  629. package/lib/esm/{BackendTypes.d.ts → internal/BackendTypes.d.ts} +1 -0
  630. package/lib/esm/internal/BackendTypes.d.ts.map +1 -0
  631. package/lib/esm/internal/BackendTypes.js.map +1 -0
  632. package/lib/esm/internal/PackedFeatureTable.d.ts +111 -0
  633. package/lib/esm/internal/PackedFeatureTable.d.ts.map +1 -0
  634. package/lib/esm/internal/PackedFeatureTable.js +352 -0
  635. package/lib/esm/internal/PackedFeatureTable.js.map +1 -0
  636. package/lib/esm/internal/RenderMaterialParams.d.ts +47 -0
  637. package/lib/esm/internal/RenderMaterialParams.d.ts.map +1 -0
  638. package/lib/esm/internal/RenderMaterialParams.js +64 -0
  639. package/lib/esm/internal/RenderMaterialParams.js.map +1 -0
  640. package/lib/esm/internal/RenderMesh.d.ts +52 -0
  641. package/lib/esm/internal/RenderMesh.d.ts.map +1 -0
  642. package/lib/esm/{Render.js → internal/RenderMesh.js} +11 -29
  643. package/lib/esm/internal/RenderMesh.js.map +1 -0
  644. package/lib/esm/internal/RenderTextureParams.d.ts +25 -0
  645. package/lib/esm/internal/RenderTextureParams.d.ts.map +1 -0
  646. package/lib/esm/internal/RenderTextureParams.js +33 -0
  647. package/lib/esm/internal/RenderTextureParams.js.map +1 -0
  648. package/lib/esm/internal/cross-package.d.ts +5 -0
  649. package/lib/esm/internal/cross-package.d.ts.map +1 -1
  650. package/lib/esm/internal/cross-package.js +4 -1
  651. package/lib/esm/internal/cross-package.js.map +1 -1
  652. package/lib/esm/ipc/IpcSession.js +1 -0
  653. package/lib/esm/ipc/IpcSession.js.map +1 -1
  654. package/lib/esm/ipc/IpcSocket.d.ts +2 -20
  655. package/lib/esm/ipc/IpcSocket.d.ts.map +1 -1
  656. package/lib/esm/ipc/IpcSocket.js.map +1 -1
  657. package/lib/esm/ipc/IpcWebSocket.js +7 -6
  658. package/lib/esm/ipc/IpcWebSocket.js.map +1 -1
  659. package/lib/esm/ipc/IpcWebSocketTransport.js +8 -7
  660. package/lib/esm/ipc/IpcWebSocketTransport.js.map +1 -1
  661. package/lib/esm/rpc/DevToolsRpcInterface.js +6 -6
  662. package/lib/esm/rpc/DevToolsRpcInterface.js.map +1 -1
  663. package/lib/esm/rpc/IModelReadRpcInterface.js +8 -11
  664. package/lib/esm/rpc/IModelReadRpcInterface.js.map +1 -1
  665. package/lib/esm/rpc/IModelTileRpcInterface.js +4 -4
  666. package/lib/esm/rpc/IModelTileRpcInterface.js.map +1 -1
  667. package/lib/esm/rpc/SnapshotIModelRpcInterface.js +4 -4
  668. package/lib/esm/rpc/SnapshotIModelRpcInterface.js.map +1 -1
  669. package/lib/esm/rpc/TestRpcManager.js +1 -4
  670. package/lib/esm/rpc/TestRpcManager.js.map +1 -1
  671. package/lib/esm/rpc/core/RpcConfiguration.js +51 -64
  672. package/lib/esm/rpc/core/RpcConfiguration.js.map +1 -1
  673. package/lib/esm/rpc/core/RpcControl.js +29 -38
  674. package/lib/esm/rpc/core/RpcControl.js.map +1 -1
  675. package/lib/esm/rpc/core/RpcInvocation.js +19 -13
  676. package/lib/esm/rpc/core/RpcInvocation.js.map +1 -1
  677. package/lib/esm/rpc/core/RpcMarshaling.d.ts +1 -4
  678. package/lib/esm/rpc/core/RpcMarshaling.d.ts.map +1 -1
  679. package/lib/esm/rpc/core/RpcMarshaling.js +2 -1
  680. package/lib/esm/rpc/core/RpcMarshaling.js.map +1 -1
  681. package/lib/esm/rpc/core/RpcOperation.js +29 -31
  682. package/lib/esm/rpc/core/RpcOperation.js.map +1 -1
  683. package/lib/esm/rpc/core/RpcPendingQueue.js +17 -16
  684. package/lib/esm/rpc/core/RpcPendingQueue.js.map +1 -1
  685. package/lib/esm/rpc/core/RpcProtocol.js +32 -30
  686. package/lib/esm/rpc/core/RpcProtocol.js.map +1 -1
  687. package/lib/esm/rpc/core/RpcPush.js +15 -8
  688. package/lib/esm/rpc/core/RpcPush.js.map +1 -1
  689. package/lib/esm/rpc/core/RpcRegistry.d.ts.map +1 -1
  690. package/lib/esm/rpc/core/RpcRegistry.js +10 -9
  691. package/lib/esm/rpc/core/RpcRegistry.js.map +1 -1
  692. package/lib/esm/rpc/core/RpcRequest.d.ts +2 -2
  693. package/lib/esm/rpc/core/RpcRequest.d.ts.map +1 -1
  694. package/lib/esm/rpc/core/RpcRequest.js +51 -29
  695. package/lib/esm/rpc/core/RpcRequest.js.map +1 -1
  696. package/lib/esm/rpc/core/RpcRoutingToken.js +4 -2
  697. package/lib/esm/rpc/core/RpcRoutingToken.js.map +1 -1
  698. package/lib/esm/rpc/core/RpcSessionInvocation.js +5 -10
  699. package/lib/esm/rpc/core/RpcSessionInvocation.js.map +1 -1
  700. package/lib/esm/rpc/web/BentleyCloudRpcManager.js +11 -17
  701. package/lib/esm/rpc/web/BentleyCloudRpcManager.js.map +1 -1
  702. package/lib/esm/rpc/web/BentleyCloudRpcProtocol.js +16 -19
  703. package/lib/esm/rpc/web/BentleyCloudRpcProtocol.js.map +1 -1
  704. package/lib/esm/rpc/web/OpenAPI.js +2 -0
  705. package/lib/esm/rpc/web/OpenAPI.js.map +1 -1
  706. package/lib/esm/rpc/web/RpcMultipart.d.ts +1 -1
  707. package/lib/esm/rpc/web/RpcMultipart.d.ts.map +1 -1
  708. package/lib/esm/rpc/web/RpcMultipart.js +14 -13
  709. package/lib/esm/rpc/web/RpcMultipart.js.map +1 -1
  710. package/lib/esm/rpc/web/WebAppRpcLogging.d.ts +3 -0
  711. package/lib/esm/rpc/web/WebAppRpcLogging.d.ts.map +1 -1
  712. package/lib/esm/rpc/web/WebAppRpcLogging.js +1 -6
  713. package/lib/esm/rpc/web/WebAppRpcLogging.js.map +1 -1
  714. package/lib/esm/rpc/web/WebAppRpcProtocol.d.ts +1 -1
  715. package/lib/esm/rpc/web/WebAppRpcProtocol.d.ts.map +1 -1
  716. package/lib/esm/rpc/web/WebAppRpcProtocol.js +6 -6
  717. package/lib/esm/rpc/web/WebAppRpcProtocol.js.map +1 -1
  718. package/lib/esm/rpc/web/WebAppRpcRequest.d.ts.map +1 -1
  719. package/lib/esm/rpc/web/WebAppRpcRequest.js +27 -27
  720. package/lib/esm/rpc/web/WebAppRpcRequest.js.map +1 -1
  721. package/lib/esm/rpc/web/multipart/RpcMultipartParser.d.ts +0 -2
  722. package/lib/esm/rpc/web/multipart/RpcMultipartParser.d.ts.map +1 -1
  723. package/lib/esm/rpc/web/multipart/RpcMultipartParser.js +14 -8
  724. package/lib/esm/rpc/web/multipart/RpcMultipartParser.js.map +1 -1
  725. package/lib/esm/tile/B3dmTileIO.js +7 -0
  726. package/lib/esm/tile/B3dmTileIO.js.map +1 -1
  727. package/lib/esm/tile/CompositeTileIO.js +3 -0
  728. package/lib/esm/tile/CompositeTileIO.js.map +1 -1
  729. package/lib/esm/tile/GltfTileIO.js +4 -3
  730. package/lib/esm/tile/GltfTileIO.js.map +1 -1
  731. package/lib/esm/tile/I3dmTileIO.js +8 -0
  732. package/lib/esm/tile/I3dmTileIO.js.map +1 -1
  733. package/lib/esm/tile/IModelTileIO.d.ts +2 -2
  734. package/lib/esm/tile/IModelTileIO.js +26 -3
  735. package/lib/esm/tile/IModelTileIO.js.map +1 -1
  736. package/lib/esm/tile/PntsTileIO.js +5 -0
  737. package/lib/esm/tile/PntsTileIO.js.map +1 -1
  738. package/lib/esm/tile/TileIO.js +2 -0
  739. package/lib/esm/tile/TileIO.js.map +1 -1
  740. package/lib/esm/tile/TileMetadata.js +9 -1
  741. package/lib/esm/tile/TileMetadata.js.map +1 -1
  742. package/package.json +14 -14
  743. package/lib/cjs/BackendTypes.d.ts.map +0 -1
  744. package/lib/cjs/BackendTypes.js.map +0 -1
  745. package/lib/cjs/ITwinError.d.ts +0 -72
  746. package/lib/cjs/ITwinError.d.ts.map +0 -1
  747. package/lib/cjs/ITwinError.js +0 -55
  748. package/lib/cjs/ITwinError.js.map +0 -1
  749. package/lib/cjs/Render.d.ts +0 -85
  750. package/lib/cjs/Render.d.ts.map +0 -1
  751. package/lib/cjs/Render.js.map +0 -1
  752. package/lib/esm/BackendTypes.d.ts.map +0 -1
  753. package/lib/esm/BackendTypes.js.map +0 -1
  754. package/lib/esm/ITwinError.d.ts +0 -72
  755. package/lib/esm/ITwinError.d.ts.map +0 -1
  756. package/lib/esm/ITwinError.js +0 -52
  757. package/lib/esm/ITwinError.js.map +0 -1
  758. package/lib/esm/Render.d.ts +0 -85
  759. package/lib/esm/Render.d.ts.map +0 -1
  760. package/lib/esm/Render.js.map +0 -1
  761. /package/lib/cjs/{BackendTypes.js → internal/BackendTypes.js} +0 -0
  762. /package/lib/esm/{BackendTypes.js → internal/BackendTypes.js} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"Camera.js","sourceRoot":"","sources":["../../src/Camera.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Views\r\n */\r\n\r\nimport { JsonUtils } from \"@itwin/core-bentley\";\r\nimport { Angle, AngleProps, Point3d, XYAndZ, XYZProps } from \"@itwin/core-geometry\";\r\n\r\n/** JSON representation of a [[Camera]].\r\n * @public\r\n * @extensions\r\n */\r\nexport interface CameraProps {\r\n lens: AngleProps;\r\n focusDist: number; // NOTE: this is abbreviated, do not change!\r\n eye: XYZProps;\r\n}\r\n\r\n/** The current position (eyepoint), lens angle, and focus distance of a camera.\r\n * @see [Views]($docs/learning/frontend/Views.md)\r\n * @public\r\n */\r\nexport class Camera implements CameraProps {\r\n public readonly lens: Angle;\r\n public focusDist: number;\r\n public readonly eye: Point3d;\r\n\r\n public static isValidLensAngle(val: Angle) {\r\n return val.radians > (Math.PI / 8.0) && val.radians < Math.PI;\r\n }\r\n\r\n public static validateLensAngle(val: Angle) {\r\n if (!this.isValidLensAngle(val))\r\n val.setRadians(Math.PI / 2.0);\r\n }\r\n\r\n public invalidateFocus() { this.focusDist = 0.0; }\r\n public get isFocusValid() { return this.focusDist > 0.0 && this.focusDist < 1.0e14; }\r\n public getFocusDistance() { return this.focusDist; }\r\n public setFocusDistance(dist: number) { this.focusDist = dist; }\r\n public get isLensValid() { return Camera.isValidLensAngle(this.lens); }\r\n public validateLens() { Camera.validateLensAngle(this.lens); }\r\n public getLensAngle() { return this.lens; }\r\n public setLensAngle(angle: Angle) { this.lens.setFrom(angle); }\r\n public getEyePoint() { return this.eye; }\r\n public setEyePoint(pt: XYAndZ) { this.eye.setFrom(pt); }\r\n public get isValid() { return this.isLensValid && this.isFocusValid; }\r\n public equals(other: Camera) {\r\n return Math.abs(this.lens.radians - other.lens.radians) < .01 &&\r\n Math.abs(this.focusDist - other.focusDist) < .1 &&\r\n this.eye.isAlmostEqual(other.eye);\r\n }\r\n public clone() { return new Camera(this); }\r\n public setFrom(rhs: Camera) {\r\n this.lens.setFrom(rhs.lens);\r\n this.focusDist = rhs.focusDist;\r\n this.eye.setFrom(rhs.eye);\r\n }\r\n\r\n /** Construct a Camera\r\n * @param props The properties of the new camera. If undefined, create a camera with eye at {0,0,0}, 90 degree lens, 1 meter focus distance.\r\n */\r\n public constructor(props?: CameraProps) {\r\n if (props !== undefined) {\r\n this.lens = Angle.fromJSON(props.lens);\r\n this.focusDist = JsonUtils.asDouble(props.focusDist);\r\n this.eye = Point3d.fromJSON(props.eye);\r\n return;\r\n }\r\n this.lens = Angle.createRadians(Math.PI / 2.0);\r\n this.focusDist = 1;\r\n this.eye = new Point3d();\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"Camera.js","sourceRoot":"","sources":["../../src/Camera.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Views\r\n */\r\n\r\nimport { JsonUtils } from \"@itwin/core-bentley\";\r\nimport { Angle, AngleProps, Point3d, XYAndZ, XYZProps } from \"@itwin/core-geometry\";\r\n\r\n/** JSON representation of a [[Camera]].\r\n * @public\r\n * @extensions\r\n */\r\nexport interface CameraProps {\r\n lens: AngleProps;\r\n focusDist: number; // NOTE: this is abbreviated, do not change!\r\n eye: XYZProps;\r\n}\r\n\r\n/** The current position (eyepoint), lens angle, and focus distance of a camera.\r\n * @see [Views]($docs/learning/frontend/Views.md)\r\n * @public\r\n */\r\nexport class Camera implements CameraProps {\r\n public readonly lens: Angle;\r\n public focusDist: number;\r\n public readonly eye: Point3d;\r\n\r\n public static isValidLensAngle(val: Angle) {\r\n return val.radians > (Math.PI / 8.0) && val.radians < Math.PI;\r\n }\r\n\r\n public static validateLensAngle(val: Angle) {\r\n if (!this.isValidLensAngle(val))\r\n val.setRadians(Math.PI / 2.0);\r\n }\r\n\r\n public invalidateFocus() { this.focusDist = 0.0; }\r\n public get isFocusValid() { return this.focusDist > 0.0 && this.focusDist < 1.0e14; }\r\n public getFocusDistance() { return this.focusDist; }\r\n public setFocusDistance(dist: number) { this.focusDist = dist; }\r\n public get isLensValid() { return Camera.isValidLensAngle(this.lens); }\r\n public validateLens() { Camera.validateLensAngle(this.lens); }\r\n public getLensAngle() { return this.lens; }\r\n public setLensAngle(angle: Angle) { this.lens.setFrom(angle); }\r\n public getEyePoint() { return this.eye; }\r\n public setEyePoint(pt: XYAndZ) { this.eye.setFrom(pt); }\r\n public get isValid() { return this.isLensValid && this.isFocusValid; }\r\n public equals(other: Camera) {\r\n return Math.abs(this.lens.radians - other.lens.radians) < .01 &&\r\n Math.abs(this.focusDist - other.focusDist) < .1 &&\r\n this.eye.isAlmostEqual(other.eye);\r\n }\r\n public clone() { return new Camera(this); }\r\n public setFrom(rhs: Camera) {\r\n this.lens.setFrom(rhs.lens);\r\n this.focusDist = rhs.focusDist;\r\n this.eye.setFrom(rhs.eye);\r\n }\r\n\r\n /** Construct a Camera\r\n * @param props The properties of the new camera. If undefined, create a camera with eye at {0,0,0}, 90 degree lens, 1 meter focus distance.\r\n */\r\n public constructor(props?: CameraProps) {\r\n if (props !== undefined) {\r\n this.lens = Angle.fromJSON(props.lens);\r\n this.focusDist = JsonUtils.asDouble(props.focusDist);\r\n this.eye = Point3d.fromJSON(props.eye);\r\n return;\r\n }\r\n this.lens = Angle.createRadians(Math.PI / 2.0);\r\n this.focusDist = 1;\r\n this.eye = new Point3d();\r\n }\r\n}\r\n"]}
@@ -0,0 +1,152 @@
1
+ /** @packageDocumentation
2
+ * @module NativeApp
3
+ */
4
+ import { Id64String, ITwinError } from "@itwin/core-bentley";
5
+ import { LocalFileName } from "./ChangesetProps";
6
+ import { IModelConnectionProps, SnapshotOpenOptions } from "./IModel";
7
+ /**
8
+ * Errors produced by the [[CatalogIModel]] API.
9
+ * @beta
10
+ */
11
+ export declare namespace CatalogError {
12
+ const scope = "itwin-Catalog";
13
+ type Key = "invalid-seed-catalog" | "manifest-missing";
14
+ /** Determine whether an error object is a CatalogError */
15
+ function isError(error: unknown, key?: Key): error is ITwinError;
16
+ /** Instantiate and throw a CatalogError */
17
+ function throwError<T extends ITwinError>(key: Key, e: Omit<T, "name" | "iTwinErrorId">): never;
18
+ }
19
+ /** A "catalog iModel" is an [[IModel]] containing elements (e.g., component definitions) that are intended to be copied into another iModel by applications.
20
+ * They can be stored in [BlobContainer]($backend)s managed by a "reference data service" that uses [semantic versioning](https://semver.org/), much like [WorkspaceDb]($backend)s.
21
+ * @see [CatalogDb]($backend) to interact with catalog iModels on the backend
22
+ * @see [CatalogConnection]($frontend) to interact with catalog iModels on the frontend.
23
+ * @beta
24
+ */
25
+ export declare namespace CatalogIModel {
26
+ /** Metadata describing a catalog iModel.
27
+ * @note Only the [[catalogName]] field is required, and users may add additional fields for their own purposes.
28
+ * @note The manifest is stored inside of the CatalogIModel, so it is versioned along with the rest of the catalog's contents.
29
+ * @beta
30
+ */
31
+ interface Manifest {
32
+ /** The iTwinId for the Catalog */
33
+ readonly iTwinId?: Id64String;
34
+ /**
35
+ * The name of the Catalog to be shown in user interfaces. Organizations should attempt to make this name informative enough
36
+ * so that uses may refer to it in conversations. It should also be unique enough that there's no confusion when it appears in
37
+ * lists of catalogs.
38
+ * @note it is possible and valid to change the catalogName between versions of a CatalogIModel (e.g. incorporating a date).
39
+ */
40
+ readonly catalogName: string;
41
+ /** A description of the contents of this catalog to help users understand its purpose and appropriate usage. */
42
+ readonly description?: string;
43
+ /** The name of the person to contact with questions about this catalog */
44
+ readonly contactName?: string;
45
+ /** The name of the person who last modified this catalog. */
46
+ lastEditedBy?: string;
47
+ }
48
+ /** Arguments for creating a new [BlobContainer]($backend) that holds (versions of) a CatalogIModel. */
49
+ interface CreateNewContainerArgs {
50
+ /** supplies the iTwinId for the new container */
51
+ readonly iTwinId: Id64String;
52
+ /** metadata stored with the new container */
53
+ readonly metadata: {
54
+ /** a "name" for the Catalog container. Should be long enough to be unique, but this is not enforced. */
55
+ label: string;
56
+ /** Optional human-readable explanation of the information held in the container. This will be displayed in the administrator RBAC panel, and on usage reports. */
57
+ description?: string;
58
+ /** optional properties for the container */
59
+ json?: {
60
+ [key: string]: any;
61
+ };
62
+ };
63
+ /** The manifest to be stored in the catalog */
64
+ readonly manifest: Manifest;
65
+ /** The name for the CatalogIModel database within the container. May not contain a version. Default is "catalog-db" */
66
+ readonly dbName?: string;
67
+ /** version for the catalog created [[localCatalogFile]]. Defaults to "0.0.0" */
68
+ readonly version?: string;
69
+ /** A filename on the local computer of the "seed" CatalogIModel to be uploaded into the new container */
70
+ readonly localCatalogFile: LocalFileName;
71
+ }
72
+ /** Properties of a newly created container created from [[CatalogIModel.CreateNewContainerArgs]]. Most importantly, this holds the ContainerId of the new container. */
73
+ interface NewContainerProps {
74
+ /** The ContainerId of the new container (usually a [Guid]($bentley)). Applications should store this value to access the container via the CatalogIModel apis. */
75
+ readonly containerId: string;
76
+ /** the uri of the BlobContainer service where the new container resides. */
77
+ readonly baseUri: string;
78
+ /** name of the blob storage provider. */
79
+ readonly provider: "azure" | "google";
80
+ }
81
+ /** Properties to identify a specific CatalogIModel within a container. */
82
+ interface NameAndVersion {
83
+ /** The name of the catalog database. Defaults to "catalog-db" for CatalogIModels stored in cloud containers. */
84
+ readonly dbName?: string;
85
+ /** The range of acceptable versions of the database of the specified [[dbName]].
86
+ * If not present, defaults to the newest available version.
87
+ */
88
+ readonly version?: VersionRange;
89
+ }
90
+ /** Arguments to open an existing version of a CatalogIModel. */
91
+ interface OpenArgs extends NameAndVersion, SnapshotOpenOptions {
92
+ /** The ContainerId of the cloud container. If not present, dbName is the name of a file on the local computer. */
93
+ containerId?: string;
94
+ /** If true, attempt to synchronize the container with any changes in the cloud. Since this automatically happens the first time a
95
+ * container is accessed within a session, this is usually not necessary except for tests.
96
+ */
97
+ syncWithCloud?: boolean;
98
+ /** Start a prefetch operation on the CatalogIModel as it is opened. */
99
+ prefetch?: boolean;
100
+ }
101
+ /** Arguments to create a new version of a CatalogIModel from (a copy of) an existing version in a cloud container. */
102
+ interface CreateNewVersionArgs {
103
+ /** The id of cloud container. */
104
+ readonly containerId: string;
105
+ /** the source version of the CatalogIModel, from which the new version will copied. */
106
+ readonly fromDb: NameAndVersion;
107
+ /** The type of version increment to apply to the source version. */
108
+ readonly versionType: "major" | "minor" | "patch" | "premajor" | "preminor" | "prepatch" | "prerelease";
109
+ /** For prerelease versions, a string that becomes part of the version name. */
110
+ readonly identifier?: string;
111
+ }
112
+ /** A [semver string](https://github.com/npm/node-semver?tab=readme-ov-file#ranges) describing a range of acceptable [[CatalogIModel]]s,
113
+ * e.g., ">=1.2.7 <1.3.0".
114
+ */
115
+ type VersionRange = string;
116
+ /** The name of the ipc channel for [[IpcMethods]]
117
+ * @internal
118
+ */
119
+ type IpcChannel = "catalogIModel/ipc";
120
+ /** @internal */
121
+ interface IpcMethods {
122
+ /** create a new container from the BlobContainerService for holding a CatalogIModel. Also uploads the seed file */
123
+ createNewContainer(args: CreateNewContainerArgs): Promise<NewContainerProps>;
124
+ /** Acquire the write lock for a CatalogIModel container. */
125
+ acquireWriteLock(args: {
126
+ containerId: string;
127
+ username: string;
128
+ }): Promise<void>;
129
+ /** Release the write lock for a CatalogIModel container. */
130
+ releaseWriteLock(args: {
131
+ containerId: string;
132
+ abandon?: true;
133
+ }): Promise<void>;
134
+ /** create a new version of a CatalogIModel from an existing version. */
135
+ createNewVersion(args: CreateNewVersionArgs): Promise<{
136
+ oldDb: NameAndVersion;
137
+ newDb: NameAndVersion;
138
+ }>;
139
+ /** Attempt to open a CatalogIModel readonly*/
140
+ openReadonly(args: OpenArgs): Promise<IModelConnectionProps>;
141
+ /** Attempt to open a CatalogIModel for editing */
142
+ openEditable(args: OpenArgs): Promise<IModelConnectionProps>;
143
+ /** Get the manifest and version number for an open CatalogConnection. */
144
+ getInfo(key: string): Promise<{
145
+ manifest?: CatalogIModel.Manifest;
146
+ version: string;
147
+ }>;
148
+ /** Update the manifest stored in an open EditableCatalog */
149
+ updateCatalogManifest(key: string, manifest: CatalogIModel.Manifest): Promise<void>;
150
+ }
151
+ }
152
+ //# sourceMappingURL=CatalogIModel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CatalogIModel.d.ts","sourceRoot":"","sources":["../../src/CatalogIModel.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ /*---------------------------------------------------------------------------------------------
2
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
+ * See LICENSE.md in the project root for license terms and full copyright notice.
4
+ *--------------------------------------------------------------------------------------------*/
5
+ /** @packageDocumentation
6
+ * @module NativeApp
7
+ */
8
+ import { ITwinError } from "@itwin/core-bentley";
9
+ /**
10
+ * Errors produced by the [[CatalogIModel]] API.
11
+ * @beta
12
+ */
13
+ export var CatalogError;
14
+ (function (CatalogError) {
15
+ CatalogError.scope = "itwin-Catalog";
16
+ /** Determine whether an error object is a CatalogError */
17
+ function isError(error, key) {
18
+ return ITwinError.isError(error, CatalogError.scope, key);
19
+ }
20
+ CatalogError.isError = isError;
21
+ /** Instantiate and throw a CatalogError */
22
+ function throwError(key, e) {
23
+ ITwinError.throwError({ ...e, iTwinErrorId: { scope: CatalogError.scope, key } });
24
+ }
25
+ CatalogError.throwError = throwError;
26
+ })(CatalogError || (CatalogError = {}));
27
+ //# sourceMappingURL=CatalogIModel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CatalogIModel.js","sourceRoot":"","sources":["../../src/CatalogIModel.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH,OAAO,EAAc,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAI7D;;;GAGG;AACH,MAAM,KAAW,YAAY,CAgB5B;AAhBD,WAAiB,YAAY;IACd,kBAAK,GAAG,eAAe,CAAC;IAMrC,0DAA0D;IAC1D,SAAgB,OAAO,CAAC,KAAc,EAAE,GAAS;QAC/C,OAAO,UAAU,CAAC,OAAO,CAAa,KAAK,EAAE,aAAA,KAAK,EAAE,GAAG,CAAC,CAAC;IAC3D,CAAC;IAFe,oBAAO,UAEtB,CAAA;IAED,2CAA2C;IAC3C,SAAgB,UAAU,CAAuB,GAAQ,EAAE,CAAmC;QAC5F,UAAU,CAAC,UAAU,CAAa,EAAE,GAAG,CAAC,EAAE,YAAY,EAAE,EAAE,KAAK,EAAL,aAAA,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;IAC5E,CAAC;IAFe,uBAAU,aAEzB,CAAA;AACH,CAAC,EAhBgB,YAAY,KAAZ,YAAY,QAgB5B","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module NativeApp\r\n */\r\n\r\nimport { Id64String, ITwinError } from \"@itwin/core-bentley\";\r\nimport { LocalFileName } from \"./ChangesetProps\";\r\nimport { IModelConnectionProps, SnapshotOpenOptions } from \"./IModel\";\r\n\r\n/**\r\n * Errors produced by the [[CatalogIModel]] API.\r\n * @beta\r\n */\r\nexport namespace CatalogError {\r\n export const scope = \"itwin-Catalog\";\r\n\r\n export type Key =\r\n \"invalid-seed-catalog\" |\r\n \"manifest-missing\";\r\n\r\n /** Determine whether an error object is a CatalogError */\r\n export function isError(error: unknown, key?: Key): error is ITwinError {\r\n return ITwinError.isError<ITwinError>(error, scope, key);\r\n }\r\n\r\n /** Instantiate and throw a CatalogError */\r\n export function throwError<T extends ITwinError>(key: Key, e: Omit<T, \"name\" | \"iTwinErrorId\">): never {\r\n ITwinError.throwError<ITwinError>({ ...e, iTwinErrorId: { scope, key } });\r\n }\r\n}\r\n\r\n/** A \"catalog iModel\" is an [[IModel]] containing elements (e.g., component definitions) that are intended to be copied into another iModel by applications.\r\n * They can be stored in [BlobContainer]($backend)s managed by a \"reference data service\" that uses [semantic versioning](https://semver.org/), much like [WorkspaceDb]($backend)s.\r\n * @see [CatalogDb]($backend) to interact with catalog iModels on the backend\r\n * @see [CatalogConnection]($frontend) to interact with catalog iModels on the frontend.\r\n * @beta\r\n */\r\nexport namespace CatalogIModel {\r\n\r\n /** Metadata describing a catalog iModel.\r\n * @note Only the [[catalogName]] field is required, and users may add additional fields for their own purposes.\r\n * @note The manifest is stored inside of the CatalogIModel, so it is versioned along with the rest of the catalog's contents.\r\n * @beta\r\n */\r\n export interface Manifest {\r\n /** The iTwinId for the Catalog */\r\n readonly iTwinId?: Id64String;\r\n\r\n /**\r\n * The name of the Catalog to be shown in user interfaces. Organizations should attempt to make this name informative enough\r\n * so that uses may refer to it in conversations. It should also be unique enough that there's no confusion when it appears in\r\n * lists of catalogs.\r\n * @note it is possible and valid to change the catalogName between versions of a CatalogIModel (e.g. incorporating a date).\r\n */\r\n readonly catalogName: string;\r\n /** A description of the contents of this catalog to help users understand its purpose and appropriate usage. */\r\n readonly description?: string;\r\n /** The name of the person to contact with questions about this catalog */\r\n readonly contactName?: string;\r\n /** The name of the person who last modified this catalog. */\r\n lastEditedBy?: string;\r\n }\r\n\r\n /** Arguments for creating a new [BlobContainer]($backend) that holds (versions of) a CatalogIModel. */\r\n export interface CreateNewContainerArgs {\r\n /** supplies the iTwinId for the new container */\r\n readonly iTwinId: Id64String;\r\n /** metadata stored with the new container */\r\n readonly metadata: {\r\n /** a \"name\" for the Catalog container. Should be long enough to be unique, but this is not enforced. */\r\n label: string;\r\n /** Optional human-readable explanation of the information held in the container. This will be displayed in the administrator RBAC panel, and on usage reports. */\r\n description?: string;\r\n /** optional properties for the container */\r\n json?: { [key: string]: any };\r\n }\r\n\r\n /** The manifest to be stored in the catalog */\r\n readonly manifest: Manifest;\r\n /** The name for the CatalogIModel database within the container. May not contain a version. Default is \"catalog-db\" */\r\n readonly dbName?: string,\r\n /** version for the catalog created [[localCatalogFile]]. Defaults to \"0.0.0\" */\r\n readonly version?: string;\r\n /** A filename on the local computer of the \"seed\" CatalogIModel to be uploaded into the new container */\r\n readonly localCatalogFile: LocalFileName;\r\n }\r\n\r\n /** Properties of a newly created container created from [[CatalogIModel.CreateNewContainerArgs]]. Most importantly, this holds the ContainerId of the new container. */\r\n export interface NewContainerProps {\r\n /** The ContainerId of the new container (usually a [Guid]($bentley)). Applications should store this value to access the container via the CatalogIModel apis. */\r\n readonly containerId: string;\r\n /** the uri of the BlobContainer service where the new container resides. */\r\n readonly baseUri: string;\r\n /** name of the blob storage provider. */\r\n readonly provider: \"azure\" | \"google\";\r\n }\r\n\r\n /** Properties to identify a specific CatalogIModel within a container. */\r\n export interface NameAndVersion {\r\n /** The name of the catalog database. Defaults to \"catalog-db\" for CatalogIModels stored in cloud containers. */\r\n readonly dbName?: string;\r\n /** The range of acceptable versions of the database of the specified [[dbName]].\r\n * If not present, defaults to the newest available version.\r\n */\r\n readonly version?: VersionRange;\r\n }\r\n\r\n /** Arguments to open an existing version of a CatalogIModel. */\r\n export interface OpenArgs extends NameAndVersion, SnapshotOpenOptions {\r\n /** The ContainerId of the cloud container. If not present, dbName is the name of a file on the local computer. */\r\n containerId?: string;\r\n /** If true, attempt to synchronize the container with any changes in the cloud. Since this automatically happens the first time a\r\n * container is accessed within a session, this is usually not necessary except for tests.\r\n */\r\n syncWithCloud?: boolean;\r\n /** Start a prefetch operation on the CatalogIModel as it is opened. */\r\n prefetch?: boolean;\r\n }\r\n\r\n /** Arguments to create a new version of a CatalogIModel from (a copy of) an existing version in a cloud container. */\r\n export interface CreateNewVersionArgs {\r\n /** The id of cloud container. */\r\n readonly containerId: string;\r\n /** the source version of the CatalogIModel, from which the new version will copied. */\r\n readonly fromDb: NameAndVersion;\r\n /** The type of version increment to apply to the source version. */\r\n readonly versionType: \"major\" | \"minor\" | \"patch\" | \"premajor\" | \"preminor\" | \"prepatch\" | \"prerelease\";\r\n /** For prerelease versions, a string that becomes part of the version name. */\r\n readonly identifier?: string;\r\n }\r\n\r\n /** A [semver string](https://github.com/npm/node-semver?tab=readme-ov-file#ranges) describing a range of acceptable [[CatalogIModel]]s,\r\n * e.g., \">=1.2.7 <1.3.0\".\r\n */\r\n export type VersionRange = string;\r\n\r\n /** The name of the ipc channel for [[IpcMethods]]\r\n * @internal\r\n */\r\n export type IpcChannel = \"catalogIModel/ipc\";\r\n\r\n /** @internal */\r\n export interface IpcMethods {\r\n /** create a new container from the BlobContainerService for holding a CatalogIModel. Also uploads the seed file */\r\n createNewContainer(args: CreateNewContainerArgs): Promise<NewContainerProps>;\r\n /** Acquire the write lock for a CatalogIModel container. */\r\n acquireWriteLock(args: { containerId: string, username: string }): Promise<void>;\r\n /** Release the write lock for a CatalogIModel container. */\r\n releaseWriteLock(args: { containerId: string, abandon?: true }): Promise<void>;\r\n /** create a new version of a CatalogIModel from an existing version. */\r\n createNewVersion(args: CreateNewVersionArgs): Promise<{ oldDb: NameAndVersion, newDb: NameAndVersion }>;\r\n /** Attempt to open a CatalogIModel readonly*/\r\n openReadonly(args: OpenArgs): Promise<IModelConnectionProps>;\r\n /** Attempt to open a CatalogIModel for editing */\r\n openEditable(args: OpenArgs): Promise<IModelConnectionProps>;\r\n /** Get the manifest and version number for an open CatalogConnection. */\r\n getInfo(key: string): Promise<{ manifest?: CatalogIModel.Manifest, version: string }>;\r\n /** Update the manifest stored in an open EditableCatalog */\r\n updateCatalogManifest(key: string, manifest: CatalogIModel.Manifest): Promise<void>;\r\n }\r\n}\r\n"]}
@@ -0,0 +1,23 @@
1
+ /** @packageDocumentation
2
+ * @module DisplayStyles
3
+ */
4
+ /** Ids of [Cesium ion assets](https://cesium.com/platform/cesium-ion/content/) providing global terrain data.
5
+ * These values are appropriate to use with [[TerrainSettings.dataSource]] when [[TerrainSettings.providerName]] is set to "CesiumWorldTerrain".
6
+ * You may alternatively use the Id of any ion asset to which you have access.
7
+ * @see [[TerrainSettings.fromCesiumIonAsset]] to create TerrainSettings that obtain terrain from a specified ion asset.
8
+ * @public
9
+ */
10
+ export declare enum CesiumTerrainAssetId {
11
+ /** Default [global 3d terrain](https://cesium.com/platform/cesium-ion/content/cesium-world-terrain/). */
12
+ Default = "1",
13
+ /** Global 3d terrain that includes [bathymetry](https://cesium.com/platform/cesium-ion/content/cesium-world-bathymetry/) (seafloor) terrain. */
14
+ Bathymetry = "2426648"
15
+ }
16
+ /** Ids of [Cesium ion assets](https://cesium.com/platform/cesium-ion/content/) providing data not covered by [[CesiumTerrainAssetId]].
17
+ * @beta
18
+ */
19
+ export declare enum CesiumIonAssetId {
20
+ /** [Cesium OSM Buildings](https://cesium.com/platform/cesium-ion/content/cesium-osm-buildings/). */
21
+ OSMBuildings = "96188"
22
+ }
23
+ //# sourceMappingURL=CesiumIonAssets.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CesiumIonAssets.d.ts","sourceRoot":"","sources":["../../src/CesiumIonAssets.ts"],"names":[],"mappings":"AAKA;;GAEG;AAEH;;;;;GAKG;AACH,oBAAY,oBAAoB;IAC9B,yGAAyG;IACzG,OAAO,MAAM;IACb,gJAAgJ;IAChJ,UAAU,YAAY;CACvB;AAED;;GAEG;AACH,oBAAY,gBAAgB;IAC1B,oGAAoG;IACpG,YAAY,UAAU;CACvB"}
@@ -0,0 +1,29 @@
1
+ /*---------------------------------------------------------------------------------------------
2
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
+ * See LICENSE.md in the project root for license terms and full copyright notice.
4
+ *--------------------------------------------------------------------------------------------*/
5
+ /** @packageDocumentation
6
+ * @module DisplayStyles
7
+ */
8
+ /** Ids of [Cesium ion assets](https://cesium.com/platform/cesium-ion/content/) providing global terrain data.
9
+ * These values are appropriate to use with [[TerrainSettings.dataSource]] when [[TerrainSettings.providerName]] is set to "CesiumWorldTerrain".
10
+ * You may alternatively use the Id of any ion asset to which you have access.
11
+ * @see [[TerrainSettings.fromCesiumIonAsset]] to create TerrainSettings that obtain terrain from a specified ion asset.
12
+ * @public
13
+ */
14
+ export var CesiumTerrainAssetId;
15
+ (function (CesiumTerrainAssetId) {
16
+ /** Default [global 3d terrain](https://cesium.com/platform/cesium-ion/content/cesium-world-terrain/). */
17
+ CesiumTerrainAssetId["Default"] = "1";
18
+ /** Global 3d terrain that includes [bathymetry](https://cesium.com/platform/cesium-ion/content/cesium-world-bathymetry/) (seafloor) terrain. */
19
+ CesiumTerrainAssetId["Bathymetry"] = "2426648";
20
+ })(CesiumTerrainAssetId || (CesiumTerrainAssetId = {}));
21
+ /** Ids of [Cesium ion assets](https://cesium.com/platform/cesium-ion/content/) providing data not covered by [[CesiumTerrainAssetId]].
22
+ * @beta
23
+ */
24
+ export var CesiumIonAssetId;
25
+ (function (CesiumIonAssetId) {
26
+ /** [Cesium OSM Buildings](https://cesium.com/platform/cesium-ion/content/cesium-osm-buildings/). */
27
+ CesiumIonAssetId["OSMBuildings"] = "96188";
28
+ })(CesiumIonAssetId || (CesiumIonAssetId = {}));
29
+ //# sourceMappingURL=CesiumIonAssets.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CesiumIonAssets.js","sourceRoot":"","sources":["../../src/CesiumIonAssets.ts"],"names":[],"mappings":"AACA;;;+FAG+F;AAC/F;;GAEG;AAEH;;;;;GAKG;AACH,MAAM,CAAN,IAAY,oBAKX;AALD,WAAY,oBAAoB;IAC9B,yGAAyG;IACzG,qCAAa,CAAA;IACb,gJAAgJ;IAChJ,8CAAsB,CAAA;AACxB,CAAC,EALW,oBAAoB,KAApB,oBAAoB,QAK/B;AAED;;GAEG;AACH,MAAM,CAAN,IAAY,gBAGX;AAHD,WAAY,gBAAgB;IAC1B,oGAAoG;IACpG,0CAAsB,CAAA;AACxB,CAAC,EAHW,gBAAgB,KAAhB,gBAAgB,QAG3B","sourcesContent":["\r\n/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module DisplayStyles\r\n */\r\n\r\n/** Ids of [Cesium ion assets](https://cesium.com/platform/cesium-ion/content/) providing global terrain data.\r\n * These values are appropriate to use with [[TerrainSettings.dataSource]] when [[TerrainSettings.providerName]] is set to \"CesiumWorldTerrain\".\r\n * You may alternatively use the Id of any ion asset to which you have access.\r\n * @see [[TerrainSettings.fromCesiumIonAsset]] to create TerrainSettings that obtain terrain from a specified ion asset.\r\n * @public\r\n */\r\nexport enum CesiumTerrainAssetId {\r\n /** Default [global 3d terrain](https://cesium.com/platform/cesium-ion/content/cesium-world-terrain/). */\r\n Default = \"1\",\r\n /** Global 3d terrain that includes [bathymetry](https://cesium.com/platform/cesium-ion/content/cesium-world-bathymetry/) (seafloor) terrain. */\r\n Bathymetry = \"2426648\",\r\n}\r\n\r\n/** Ids of [Cesium ion assets](https://cesium.com/platform/cesium-ion/content/) providing data not covered by [[CesiumTerrainAssetId]].\r\n * @beta\r\n */\r\nexport enum CesiumIonAssetId {\r\n /** [Cesium OSM Buildings](https://cesium.com/platform/cesium-ion/content/cesium-osm-buildings/). */\r\n OSMBuildings = \"96188\",\r\n}\r\n"]}
@@ -81,7 +81,7 @@ export interface ChangesetProps {
81
81
  size: number;
82
82
  }
83
83
  /** Properties of a changeset file
84
- * @internal
84
+ * @public
85
85
  */
86
86
  export interface ChangesetFileProps extends ChangesetProps {
87
87
  /** The full pathname of the local file holding this changeset. */
@@ -1 +1 @@
1
- {"version":3,"file":"ChangesetProps.js","sourceRoot":"","sources":["../../src/ChangesetProps.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;;GAGG;AAuCH;;;GAGG;AACH,MAAM,CAAN,IAAY,aAOX;AAPD,WAAY,aAAa;IACvB,mDAAmD;IACnD,uDAAW,CAAA;IACX,+CAA+C;IAC/C,qDAAU,CAAA;IACV,gEAAgE;IAChE,8DAAwB,CAAA;AAC1B,CAAC,EAPW,aAAa,KAAb,aAAa,QAOxB","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/**\r\n * @packageDocumentation\r\n * @module iModels\r\n */\r\n\r\n/** @public */\r\nexport type LocalFileName = string;\r\n/** @public */\r\nexport type LocalDirName = string;\r\n\r\n/** A string that identifies a changeset.\r\n * @note this string is *not* a Guid. It is generated internally based on the content of the changeset.\r\n * @public\r\n * @extensions\r\n */\r\nexport type ChangesetId = string;\r\n\r\n/** The index of a changeset, assigned by iModelHub.\r\n * @note 0 means \"before the first changeset.\" Values less than 0 are invalid.\r\n * @public\r\n * @extensions\r\n */\r\nexport type ChangesetIndex = number;\r\n\r\n/** Both the index and Id of a changeset\r\n * @public\r\n * @extensions\r\n */\r\nexport interface ChangesetIndexAndId { readonly index: ChangesetIndex, readonly id: ChangesetId }\r\n\r\n/** The Id and optionally the index of a changeset\r\n * @public\r\n * @extensions\r\n */\r\nexport interface ChangesetIdWithIndex { readonly index?: ChangesetIndex, readonly id: ChangesetId }\r\n\r\n/** either changeset index, id, or both\r\n* @public\r\n * @extensions\r\n*/\r\nexport type ChangesetIndexOrId = ChangesetIndexAndId | { readonly index: ChangesetIndex, readonly id?: never } | { readonly id: ChangesetId, readonly index?: never };\r\n\r\n/** Value to indicate whether a changeset contains schema changes or not\r\n * @public\r\n * @extensions\r\n */\r\nexport enum ChangesetType {\r\n /** changeset does *not* contain schema changes. */\r\n Regular = 0,\r\n /** changeset *does* contain schema changes. */\r\n Schema = 1,\r\n /** Schema changeset pushed by iModel with SchemaSync enabled */\r\n SchemaSync = Schema | 64,\r\n}\r\n\r\n/** Properties of a changeset\r\n * @public\r\n */\r\nexport interface ChangesetProps {\r\n /** The index (sequence number) from IModelHub for this changeset. Larger index values were pushed later. */\r\n index: ChangesetIndex;\r\n /** the ChangesetId */\r\n id: ChangesetId;\r\n /** the ChangeSetId of the parent changeset of this changeset */\r\n parentId: ChangesetId;\r\n /** The type of changeset */\r\n changesType: ChangesetType;\r\n /** The user-supplied description of the work this changeset holds */\r\n description: string;\r\n /** The BriefcaseId of the briefcase that created this changeset */\r\n briefcaseId: number;\r\n /** The date this changeset was uploaded to the hub */\r\n pushDate: string;\r\n /** The identity of the user that created this changeset */\r\n userCreated: string;\r\n /** The size, in bytes, of this changeset */\r\n size: number;\r\n}\r\n\r\n/** Properties of a changeset file\r\n * @internal\r\n */\r\nexport interface ChangesetFileProps extends ChangesetProps {\r\n /** The full pathname of the local file holding this changeset. */\r\n pathname: LocalFileName;\r\n}\r\n\r\n/**\r\n * A range of changesets\r\n * @public\r\n * @extensions\r\n */\r\nexport interface ChangesetRange {\r\n /** index of the first changeset */\r\n first: ChangesetIndex;\r\n /** index of last changeset. If undefined, all changesets after first are returned. */\r\n end?: ChangesetIndex;\r\n}\r\n"]}
1
+ {"version":3,"file":"ChangesetProps.js","sourceRoot":"","sources":["../../src/ChangesetProps.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;;GAGG;AAuCH;;;GAGG;AACH,MAAM,CAAN,IAAY,aAOX;AAPD,WAAY,aAAa;IACvB,mDAAmD;IACnD,uDAAW,CAAA;IACX,+CAA+C;IAC/C,qDAAU,CAAA;IACV,gEAAgE;IAChE,8DAAwB,CAAA;AAC1B,CAAC,EAPW,aAAa,KAAb,aAAa,QAOxB","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/**\r\n * @packageDocumentation\r\n * @module iModels\r\n */\r\n\r\n/** @public */\r\nexport type LocalFileName = string;\r\n/** @public */\r\nexport type LocalDirName = string;\r\n\r\n/** A string that identifies a changeset.\r\n * @note this string is *not* a Guid. It is generated internally based on the content of the changeset.\r\n * @public\r\n * @extensions\r\n */\r\nexport type ChangesetId = string;\r\n\r\n/** The index of a changeset, assigned by iModelHub.\r\n * @note 0 means \"before the first changeset.\" Values less than 0 are invalid.\r\n * @public\r\n * @extensions\r\n */\r\nexport type ChangesetIndex = number;\r\n\r\n/** Both the index and Id of a changeset\r\n * @public\r\n * @extensions\r\n */\r\nexport interface ChangesetIndexAndId { readonly index: ChangesetIndex, readonly id: ChangesetId }\r\n\r\n/** The Id and optionally the index of a changeset\r\n * @public\r\n * @extensions\r\n */\r\nexport interface ChangesetIdWithIndex { readonly index?: ChangesetIndex, readonly id: ChangesetId }\r\n\r\n/** either changeset index, id, or both\r\n* @public\r\n * @extensions\r\n*/\r\nexport type ChangesetIndexOrId = ChangesetIndexAndId | { readonly index: ChangesetIndex, readonly id?: never } | { readonly id: ChangesetId, readonly index?: never };\r\n\r\n/** Value to indicate whether a changeset contains schema changes or not\r\n * @public\r\n * @extensions\r\n */\r\nexport enum ChangesetType {\r\n /** changeset does *not* contain schema changes. */\r\n Regular = 0,\r\n /** changeset *does* contain schema changes. */\r\n Schema = 1,\r\n /** Schema changeset pushed by iModel with SchemaSync enabled */\r\n SchemaSync = Schema | 64,\r\n}\r\n\r\n/** Properties of a changeset\r\n * @public\r\n */\r\nexport interface ChangesetProps {\r\n /** The index (sequence number) from IModelHub for this changeset. Larger index values were pushed later. */\r\n index: ChangesetIndex;\r\n /** the ChangesetId */\r\n id: ChangesetId;\r\n /** the ChangeSetId of the parent changeset of this changeset */\r\n parentId: ChangesetId;\r\n /** The type of changeset */\r\n changesType: ChangesetType;\r\n /** The user-supplied description of the work this changeset holds */\r\n description: string;\r\n /** The BriefcaseId of the briefcase that created this changeset */\r\n briefcaseId: number;\r\n /** The date this changeset was uploaded to the hub */\r\n pushDate: string;\r\n /** The identity of the user that created this changeset */\r\n userCreated: string;\r\n /** The size, in bytes, of this changeset */\r\n size: number;\r\n}\r\n\r\n/** Properties of a changeset file\r\n * @public\r\n */\r\nexport interface ChangesetFileProps extends ChangesetProps {\r\n /** The full pathname of the local file holding this changeset. */\r\n pathname: LocalFileName;\r\n}\r\n\r\n/**\r\n * A range of changesets\r\n * @public\r\n * @extensions\r\n */\r\nexport interface ChangesetRange {\r\n /** index of the first changeset */\r\n first: ChangesetIndex;\r\n /** index of last changeset. If undefined, all changesets after first are returned. */\r\n end?: ChangesetIndex;\r\n}\r\n"]}
@@ -15,6 +15,14 @@ import { ColorDef } from "./ColorDef";
15
15
  * @public
16
16
  */
17
17
  export class CutStyle {
18
+ /** Selectively overrides some of the view's [[ViewFlags]] when drawing the section-cut graphics. */
19
+ viewflags;
20
+ /** If defined, overrides the settings the view uses to draw the edges of the section-cut graphics. */
21
+ hiddenLine;
22
+ /** If defined, overrides aspects of the symbology of the section-cut graphics. */
23
+ appearance;
24
+ /** The default CutStyle, configured to draw the section-cut graphics using the view's settings, with no overrides. */
25
+ static defaults = new CutStyle();
18
26
  constructor(viewflags, hiddenLine, appearance) {
19
27
  this.viewflags = viewflags ?? {};
20
28
  if (hiddenLine && !hiddenLine.matchesDefaults)
@@ -59,14 +67,16 @@ export class CutStyle {
59
67
  return !JsonUtils.isNonEmptyObject(this.viewflags) && (!this.hiddenLine || this.hiddenLine.matchesDefaults) && (!this.appearance || this.appearance.matchesDefaults);
60
68
  }
61
69
  }
62
- /** The default CutStyle, configured to draw the section-cut graphics using the view's settings, with no overrides. */
63
- CutStyle.defaults = new CutStyle();
64
70
  /** As part of a [[ClipStyle]], describes how to colorize geometry intersecting the clip planes.
65
71
  * @note Edges are highlighted only if [[ClipStyle.ClipIntersectionStyle]] is `true`.
66
72
  * @public
67
73
  * @extensions
68
74
  */
69
75
  export class ClipIntersectionStyle {
76
+ /** Color to apply to intersection of geometry and clip planes, default white */
77
+ color;
78
+ /** Number of pixels to be considered intersecting the clip plane, default 1 */
79
+ width;
70
80
  constructor(color = RgbColor.fromColorDef(ColorDef.white), width = 1) {
71
81
  this.color = color;
72
82
  this.width = width;
@@ -77,6 +87,7 @@ export class ClipIntersectionStyle {
77
87
  return this.defaults;
78
88
  return new ClipIntersectionStyle(color, width);
79
89
  }
90
+ static defaults = new ClipIntersectionStyle();
80
91
  static fromJSON(props) {
81
92
  if (props === undefined) {
82
93
  return ClipIntersectionStyle.defaults;
@@ -103,12 +114,29 @@ export class ClipIntersectionStyle {
103
114
  return !this.color && !this.width;
104
115
  }
105
116
  }
106
- ClipIntersectionStyle.defaults = new ClipIntersectionStyle();
107
117
  /** Describes symbology and behavior applied to a [ClipVector]($core-geometry) when applied to a [ViewState]($frontend) or [[ModelClipGroup]].
108
118
  * @see [[DisplayStyleSettings.clipStyle]].
109
119
  * @public
110
120
  */
111
121
  export class ClipStyle {
122
+ /** If `true`, geometry will be produced at the clip planes.
123
+ * - Solids (closed volumes) will produce facets on the clip planes.
124
+ * - Other surfaces will produce line strings representing the edges of the surface at the clip planes.
125
+ * @note Cut geometry will only be produced for element geometry - not for, e.g., terrain or reality models.
126
+ */
127
+ produceCutGeometry;
128
+ /** If 'true', intersection of geometry and clip planes will be colorized */
129
+ colorizeIntersection;
130
+ /** Controls aspects of how the cut geometry is displayed, if [[produceCutGeometry]] is `true`. */
131
+ cutStyle;
132
+ /** If defined, geometry inside the clip planes will be drawn in this color. */
133
+ insideColor;
134
+ /** If defined, geometry outside of the clip planes will be drawn in this color instead of being clipped. */
135
+ outsideColor;
136
+ /** Controls the style of the intersection of geometry and clip planes */
137
+ intersectionStyle;
138
+ /** The default style, which overrides none of the view's settings. */
139
+ static defaults = new ClipStyle(false, false, CutStyle.defaults, undefined, undefined, undefined);
112
140
  constructor(produceCutGeometry, colorizeIntersection, cutStyle, inside, outside, intersectionStyle) {
113
141
  this.produceCutGeometry = produceCutGeometry;
114
142
  this.colorizeIntersection = colorizeIntersection;
@@ -175,6 +203,4 @@ export class ClipStyle {
175
203
  return !this.produceCutGeometry && !this.colorizeIntersection && !this.insideColor && !this.outsideColor && this.cutStyle.matchesDefaults && !this.intersectionStyle;
176
204
  }
177
205
  }
178
- /** The default style, which overrides none of the view's settings. */
179
- ClipStyle.defaults = new ClipStyle(false, false, CutStyle.defaults, undefined, undefined, undefined);
180
206
  //# sourceMappingURL=ClipStyle.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ClipStyle.js","sourceRoot":"","sources":["../../src/ClipStyle.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Views\r\n */\r\n\r\nimport { assert, JsonUtils } from \"@itwin/core-bentley\";\r\nimport { ViewFlagOverrides } from \"./ViewFlags\";\r\nimport { RgbColor, RgbColorProps } from \"./RgbColor\";\r\nimport { HiddenLine } from \"./HiddenLine\";\r\nimport { FeatureAppearance, FeatureAppearanceProps } from \"./FeatureSymbology\";\r\nimport { ColorDef } from \"./ColorDef\";\r\n\r\n/** Wire format describing a [[CutStyle]] applied to section-cut geometry produced at intersections with a view's [ClipVector]($core-geometry).\r\n * @see [[ClipStyleProps.cutStyle]].\r\n * @public\r\n * @extensions\r\n */\r\nexport interface CutStyleProps {\r\n /** If defined, overrides aspects of the view's [[ViewFlags]] when drawing the cut geometry. */\r\n viewflags?: ViewFlagOverrides;\r\n /** If defined, overrides the view's [[HiddenLine.Settings]] when drawing the cut geometry. */\r\n hiddenLine?: HiddenLine.SettingsProps;\r\n /** If defined, overrides aspects of the cut geometry's symbology. */\r\n appearance?: FeatureAppearanceProps;\r\n}\r\n\r\n/** As part of a [[ClipStyle]], describes how section-cut graphics should be displayed.\r\n * @note Section-cut graphics are only produced if [[ClipStyle.produceCutGeometry]] is `true`.\r\n * @public\r\n */\r\nexport class CutStyle {\r\n /** Selectively overrides some of the view's [[ViewFlags]] when drawing the section-cut graphics. */\r\n public readonly viewflags: Readonly<ViewFlagOverrides>;\r\n /** If defined, overrides the settings the view uses to draw the edges of the section-cut graphics. */\r\n public readonly hiddenLine?: HiddenLine.Settings;\r\n /** If defined, overrides aspects of the symbology of the section-cut graphics. */\r\n public readonly appearance?: FeatureAppearance;\r\n\r\n /** The default CutStyle, configured to draw the section-cut graphics using the view's settings, with no overrides. */\r\n public static readonly defaults = new CutStyle();\r\n\r\n private constructor(viewflags?: Readonly<ViewFlagOverrides>, hiddenLine?: HiddenLine.Settings, appearance?: FeatureAppearance) {\r\n this.viewflags = viewflags ?? {};\r\n if (hiddenLine && !hiddenLine.matchesDefaults)\r\n this.hiddenLine = hiddenLine;\r\n\r\n if (appearance && !appearance.matchesDefaults)\r\n this.appearance = appearance;\r\n }\r\n\r\n /** Create a CutStyle from its components. */\r\n public static create(viewflags?: Readonly<ViewFlagOverrides>, hiddenLine?: HiddenLine.Settings, appearance?: FeatureAppearance): CutStyle {\r\n if ((viewflags && JsonUtils.isNonEmptyObject(viewflags)) || (hiddenLine && !hiddenLine.matchesDefaults) || (appearance && !appearance.matchesDefaults))\r\n return new CutStyle(viewflags, hiddenLine, appearance);\r\n\r\n return this.defaults;\r\n }\r\n\r\n public static fromJSON(props?: CutStyleProps): CutStyle {\r\n if (JsonUtils.isNonEmptyObject(props)) {\r\n const viewflags = { ...props?.viewflags };\r\n const hiddenLine = props?.hiddenLine ? HiddenLine.Settings.fromJSON(props.hiddenLine) : undefined;\r\n const appearance = props?.appearance ? FeatureAppearance.fromJSON(props.appearance) : undefined;\r\n\r\n return this.create(viewflags, hiddenLine, appearance);\r\n } else {\r\n return this.defaults;\r\n }\r\n }\r\n\r\n /** Return JSON representation. The representation is `undefined` if this style matches the default style. */\r\n public toJSON(): CutStyleProps | undefined {\r\n if (this.matchesDefaults)\r\n return undefined;\r\n\r\n const props: CutStyleProps = {};\r\n if (JsonUtils.isNonEmptyObject(this.viewflags))\r\n props.viewflags = this.viewflags;\r\n\r\n if (this.hiddenLine && !this.hiddenLine.matchesDefaults)\r\n props.hiddenLine = this.hiddenLine?.toJSON();\r\n\r\n if (this.appearance && !this.appearance.matchesDefaults)\r\n props.appearance = this.appearance.toJSON();\r\n\r\n return props;\r\n }\r\n\r\n /** Returns true if this style matches the default style - that is, it overrides none of the view's settings. */\r\n public get matchesDefaults(): boolean {\r\n if (this === CutStyle.defaults)\r\n return true;\r\n\r\n return !JsonUtils.isNonEmptyObject(this.viewflags) && (!this.hiddenLine || this.hiddenLine.matchesDefaults) && (!this.appearance || this.appearance.matchesDefaults);\r\n }\r\n}\r\n\r\n/** Wire format describing a [[ClipIntersectionStyle]].\r\n * @see [[ClipStyleProps.ClipIntersectionStyle]].\r\n * @public\r\n * @extensions\r\n */\r\nexport interface ClipIntersectionStyleProps {\r\n /** Color to apply to intersection of geometry and clip planes, default white */\r\n color?: RgbColorProps;\r\n /** Number of pixels to be considered intersecting the clip plane, default 1 */\r\n width?: number;\r\n}\r\n\r\n/** As part of a [[ClipStyle]], describes how to colorize geometry intersecting the clip planes.\r\n * @note Edges are highlighted only if [[ClipStyle.ClipIntersectionStyle]] is `true`.\r\n * @public\r\n * @extensions\r\n */\r\nexport class ClipIntersectionStyle {\r\n /** Color to apply to intersection of geometry and clip planes, default white */\r\n public readonly color: RgbColor;\r\n /** Number of pixels to be considered intersecting the clip plane, default 1 */\r\n public readonly width: number;\r\n\r\n private constructor(color: RgbColor = RgbColor.fromColorDef(ColorDef.white), width: number = 1) {\r\n this.color = color;\r\n this.width = width;\r\n }\r\n /** Create a highlight from its components. */\r\n public static create(color?: RgbColor, width?: number): ClipIntersectionStyle {\r\n if (!color && !width)\r\n return this.defaults;\r\n\r\n return new ClipIntersectionStyle(color, width);\r\n }\r\n\r\n public static readonly defaults = new ClipIntersectionStyle();\r\n\r\n public static fromJSON(props?: ClipIntersectionStyleProps): ClipIntersectionStyle {\r\n if (props === undefined) {\r\n return ClipIntersectionStyle.defaults;\r\n }\r\n\r\n const color = props.color ? RgbColor.fromJSON(props.color) : RgbColor.fromColorDef(ColorDef.white);\r\n const width = props.width ? props.width : 1;\r\n return new ClipIntersectionStyle(color, width);\r\n }\r\n\r\n /** The JSON representation of this style. It is `undefined` if this style matches the defaults. */\r\n public toJSON(): ClipIntersectionStyleProps | undefined {\r\n const props: ClipIntersectionStyleProps = {};\r\n\r\n if (this.matchesDefaults) {\r\n return undefined;\r\n }\r\n\r\n if (this.color)\r\n props.color = this.color.toJSON();\r\n\r\n if (this.width)\r\n props.width = this.width;\r\n\r\n return props;\r\n }\r\n\r\n public get matchesDefaults(): boolean {\r\n if (this === ClipIntersectionStyle.defaults)\r\n return true;\r\n\r\n return !this.color && !this.width;\r\n }\r\n}\r\n\r\n/** Arguments supplied to [[ClipStyle.create]].\r\n * @public\r\n * @extensions\r\n */\r\nexport interface ClipStyleCreateArgs {\r\n /** If `true`, geometry will be produced at the clip planes in a 3d view.\r\n * - Solids (closed volumes) will produce facets on the clip planes.\r\n * - Other surfaces will produce line strings representing the edges of the surface at the clip planes.\r\n * @note Cut geometry will only be produced for element geometry - not for, e.g., terrain or reality models.\r\n */\r\n produceCutGeometry?: boolean;\r\n /** If `true`, intersection of geometry and clip planes will be colorized */\r\n colorizeIntersection?: boolean;\r\n /** Controls aspects of how the cut geometry is displayed, if [[produceCutGeometry]] is `true`. */\r\n cutStyle?: CutStyle;\r\n /** If defined, geometry inside the clip planes will be drawn in this color. */\r\n insideColor?: RgbColor;\r\n /** If defined, geometry outside of the clip planes will be drawn in this color instead of being clipped. */\r\n outsideColor?: RgbColor;\r\n /** Controls the style of the intersection of geometry and clip planes */\r\n intersectionStyle?: ClipIntersectionStyle;\r\n}\r\n\r\n/** Wire format describing a [[ClipStyle]].\r\n * @see [[DisplayStyleSettingsProps.clipStyle]].\r\n * @public\r\n * @extensions\r\n */\r\nexport interface ClipStyleProps {\r\n /** If `true`, geometry will be produced at the clip planes in a 3d view.\r\n * - Solids (closed volumes) will produce facets on the clip planes.\r\n * - Other surfaces will produce line strings representing the edges of the surface at the clip planes.\r\n * @note Cut geometry will only be produced for element geometry - not for, e.g., terrain or reality models.\r\n */\r\n produceCutGeometry?: boolean;\r\n /** If 'true', intersection of geometry and clip planes will be colorized */\r\n colorizeIntersection?: boolean;\r\n /** Controls aspects of how the cut geometry is displayed, if [[produceCutGeometry]] is `true`. */\r\n cutStyle?: CutStyleProps;\r\n /** If defined, geometry inside the clip planes will be drawn in this color. */\r\n insideColor?: RgbColorProps;\r\n /** If defined, geometry outside of the clip planes will be drawn in this color instead of being clipped. */\r\n outsideColor?: RgbColorProps;\r\n /** Controls the style of the intersection of geometry and clip planes */\r\n intersectionStyle?: ClipIntersectionStyleProps;\r\n}\r\n\r\n/** Describes symbology and behavior applied to a [ClipVector]($core-geometry) when applied to a [ViewState]($frontend) or [[ModelClipGroup]].\r\n * @see [[DisplayStyleSettings.clipStyle]].\r\n * @public\r\n */\r\nexport class ClipStyle {\r\n /** If `true`, geometry will be produced at the clip planes.\r\n * - Solids (closed volumes) will produce facets on the clip planes.\r\n * - Other surfaces will produce line strings representing the edges of the surface at the clip planes.\r\n * @note Cut geometry will only be produced for element geometry - not for, e.g., terrain or reality models.\r\n */\r\n public readonly produceCutGeometry: boolean;\r\n /** If 'true', intersection of geometry and clip planes will be colorized */\r\n public readonly colorizeIntersection: boolean;\r\n /** Controls aspects of how the cut geometry is displayed, if [[produceCutGeometry]] is `true`. */\r\n public readonly cutStyle: CutStyle;\r\n /** If defined, geometry inside the clip planes will be drawn in this color. */\r\n public readonly insideColor?: RgbColor;\r\n /** If defined, geometry outside of the clip planes will be drawn in this color instead of being clipped. */\r\n public readonly outsideColor?: RgbColor;\r\n /** Controls the style of the intersection of geometry and clip planes */\r\n public readonly intersectionStyle?: ClipIntersectionStyle;\r\n\r\n /** The default style, which overrides none of the view's settings. */\r\n public static readonly defaults = new ClipStyle(false, false, CutStyle.defaults, undefined, undefined, undefined);\r\n\r\n private constructor(produceCutGeometry: boolean, colorizeIntersection: boolean, cutStyle: CutStyle, inside: RgbColor | undefined, outside: RgbColor | undefined, intersectionStyle: ClipIntersectionStyle | undefined) {\r\n this.produceCutGeometry = produceCutGeometry;\r\n this.colorizeIntersection = colorizeIntersection;\r\n this.cutStyle = cutStyle;\r\n this.insideColor = inside;\r\n this.outsideColor = outside;\r\n this.intersectionStyle = intersectionStyle;\r\n }\r\n\r\n /** @deprecated in 4.x. Use [[create(style: ClipStyleCreateArgs]] */\r\n public static create(produceCutGeometry: boolean, cutStyle: CutStyle, insideColor?: RgbColor, outsideColor?: RgbColor): ClipStyle;\r\n\r\n /** Create a style from its components. */\r\n public static create(style: ClipStyleCreateArgs): ClipStyle;\r\n\r\n /** @internal */\r\n public static create(styleOrProduceCutGeometry: ClipStyleCreateArgs | boolean, cutStyle?: CutStyle, insideColor?: RgbColor, outsideColor?: RgbColor): ClipStyle {\r\n\r\n if (typeof styleOrProduceCutGeometry === \"boolean\") {\r\n cutStyle = cutStyle === undefined ? CutStyle.defaults : cutStyle;\r\n\r\n if (!styleOrProduceCutGeometry && cutStyle.matchesDefaults && !insideColor && !outsideColor) {\r\n return this.defaults;\r\n }\r\n\r\n return new ClipStyle(styleOrProduceCutGeometry, false, cutStyle, insideColor, outsideColor, undefined);\r\n }\r\n\r\n const style = styleOrProduceCutGeometry;\r\n if (!style.produceCutGeometry && !style.colorizeIntersection && (!style.cutStyle || style.cutStyle.matchesDefaults) && !style.insideColor && !style.outsideColor && !style.intersectionStyle)\r\n return this.defaults;\r\n\r\n const produceCutGeometry = style.produceCutGeometry ? true : false;\r\n const colorizeIntersection = style.colorizeIntersection ? true : false;\r\n cutStyle = style.cutStyle === undefined ? CutStyle.defaults : style.cutStyle;\r\n\r\n return new ClipStyle(produceCutGeometry, colorizeIntersection, cutStyle, style.insideColor, style.outsideColor, style.intersectionStyle);\r\n }\r\n\r\n public static fromJSON(props?: ClipStyleProps): ClipStyle {\r\n if (JsonUtils.isNonEmptyObject(props)) {\r\n const produceCutGeometry = props.produceCutGeometry ?? false;\r\n const colorizeIntersection = props.colorizeIntersection ? true : false;\r\n const cutStyle = CutStyle.fromJSON(props.cutStyle);\r\n const insideColor = props.insideColor ? RgbColor.fromJSON(props.insideColor) : undefined;\r\n const outsideColor = props.outsideColor ? RgbColor.fromJSON(props.outsideColor) : undefined;\r\n const intersectionStyle = props.intersectionStyle ? ClipIntersectionStyle.fromJSON(props.intersectionStyle) : undefined;\r\n\r\n return this.create({produceCutGeometry, colorizeIntersection, cutStyle, insideColor, outsideColor, intersectionStyle});\r\n }\r\n\r\n return this.defaults;\r\n }\r\n\r\n /** The JSON representation of this style. It is `undefined` if this style matches the defaults. */\r\n public toJSON(): ClipStyleProps | undefined {\r\n if (this.matchesDefaults)\r\n return undefined;\r\n\r\n const props: ClipStyleProps = {};\r\n if (this.produceCutGeometry)\r\n props.produceCutGeometry = true;\r\n\r\n if (this.colorizeIntersection)\r\n props.colorizeIntersection = true;\r\n\r\n const cutStyle = this.cutStyle.toJSON();\r\n if (cutStyle) {\r\n assert(!this.cutStyle.matchesDefaults);\r\n props.cutStyle = cutStyle;\r\n }\r\n\r\n if (this.insideColor)\r\n props.insideColor = this.insideColor.toJSON();\r\n\r\n if (this.outsideColor)\r\n props.outsideColor = this.outsideColor.toJSON();\r\n\r\n if (this.intersectionStyle)\r\n props.intersectionStyle = this.intersectionStyle.toJSON();\r\n\r\n return props;\r\n }\r\n\r\n /** Returns true if this style matches the [[ClipStyle.defaults]] - that is, it overrides no settings from the view. */\r\n public get matchesDefaults(): boolean {\r\n if (this === ClipStyle.defaults)\r\n return true;\r\n\r\n return !this.produceCutGeometry && !this.colorizeIntersection && !this.insideColor && !this.outsideColor && this.cutStyle.matchesDefaults && !this.intersectionStyle;\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"ClipStyle.js","sourceRoot":"","sources":["../../src/ClipStyle.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAExD,OAAO,EAAE,QAAQ,EAAiB,MAAM,YAAY,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,iBAAiB,EAA0B,MAAM,oBAAoB,CAAC;AAC/E,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAgBtC;;;GAGG;AACH,MAAM,OAAO,QAAQ;IACnB,oGAAoG;IACpF,SAAS,CAA8B;IACvD,sGAAsG;IACtF,UAAU,CAAuB;IACjD,kFAAkF;IAClE,UAAU,CAAqB;IAE/C,sHAAsH;IAC/G,MAAM,CAAU,QAAQ,GAAG,IAAI,QAAQ,EAAE,CAAC;IAEjD,YAAoB,SAAuC,EAAE,UAAgC,EAAE,UAA8B;QAC3H,IAAI,CAAC,SAAS,GAAG,SAAS,IAAI,EAAE,CAAC;QACjC,IAAI,UAAU,IAAI,CAAC,UAAU,CAAC,eAAe;YAC3C,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAE/B,IAAI,UAAU,IAAI,CAAC,UAAU,CAAC,eAAe;YAC3C,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IACjC,CAAC;IAED,6CAA6C;IACtC,MAAM,CAAC,MAAM,CAAC,SAAuC,EAAE,UAAgC,EAAE,UAA8B;QAC5H,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC;YACpJ,OAAO,IAAI,QAAQ,CAAC,SAAS,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;QAEzD,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAEM,MAAM,CAAC,QAAQ,CAAC,KAAqB;QAC1C,IAAI,SAAS,CAAC,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAC;YACtC,MAAM,SAAS,GAAG,EAAE,GAAG,KAAK,EAAE,SAAS,EAAE,CAAC;YAC1C,MAAM,UAAU,GAAG,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAClG,MAAM,UAAU,GAAG,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,iBAAiB,CAAC,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAEhG,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;QACxD,CAAC;aAAM,CAAC;YACN,OAAO,IAAI,CAAC,QAAQ,CAAC;QACvB,CAAC;IACH,CAAC;IAED,6GAA6G;IACtG,MAAM;QACX,IAAI,IAAI,CAAC,eAAe;YACtB,OAAO,SAAS,CAAC;QAEnB,MAAM,KAAK,GAAkB,EAAE,CAAC;QAChC,IAAI,SAAS,CAAC,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC;YAC5C,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QAEnC,IAAI,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,eAAe;YACrD,KAAK,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,EAAE,MAAM,EAAE,CAAC;QAE/C,IAAI,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,eAAe;YACrD,KAAK,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;QAE9C,OAAO,KAAK,CAAC;IACf,CAAC;IAED,gHAAgH;IAChH,IAAW,eAAe;QACxB,IAAI,IAAI,KAAK,QAAQ,CAAC,QAAQ;YAC5B,OAAO,IAAI,CAAC;QAEd,OAAO,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;IACvK,CAAC;;AAeH;;;;GAIG;AACH,MAAM,OAAO,qBAAqB;IAChC,gFAAgF;IAChE,KAAK,CAAW;IAChC,+EAA+E;IAC/D,KAAK,CAAS;IAE9B,YAAoB,QAAkB,QAAQ,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,QAAgB,CAAC;QAC5F,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IACD,+CAA+C;IACxC,MAAM,CAAC,MAAM,CAAC,KAAgB,EAAE,KAAc;QACnD,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK;YAClB,OAAO,IAAI,CAAC,QAAQ,CAAC;QAEvB,OAAO,IAAI,qBAAqB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IACjD,CAAC;IAEM,MAAM,CAAU,QAAQ,GAAG,IAAI,qBAAqB,EAAE,CAAC;IAEvD,MAAM,CAAC,QAAQ,CAAC,KAAkC;QACvD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,OAAO,qBAAqB,CAAC,QAAQ,CAAC;QACxC,CAAC;QAED,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QACnG,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5C,OAAO,IAAI,qBAAqB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IACjD,CAAC;IAED,mGAAmG;IAC5F,MAAM;QACX,MAAM,KAAK,GAA+B,EAAE,CAAC;QAE7C,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACzB,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,IAAI,IAAI,CAAC,KAAK;YACZ,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;QAEpC,IAAI,IAAI,CAAC,KAAK;YACZ,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QAE3B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAW,eAAe;QACxB,IAAI,IAAI,KAAK,qBAAqB,CAAC,QAAQ;YACzC,OAAO,IAAI,CAAC;QAEd,OAAO,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;IACpC,CAAC;;AAkDH;;;GAGG;AACH,MAAM,OAAO,SAAS;IACpB;;;;OAIG;IACa,kBAAkB,CAAU;IAC5C,4EAA4E;IAC5D,oBAAoB,CAAU;IAC9C,kGAAkG;IAClF,QAAQ,CAAW;IACnC,+EAA+E;IAC/D,WAAW,CAAY;IACvC,4GAA4G;IAC5F,YAAY,CAAY;IACxC,yEAAyE;IACzD,iBAAiB,CAAyB;IAE1D,sEAAsE;IAC/D,MAAM,CAAU,QAAQ,GAAG,IAAI,SAAS,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,CAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;IAElH,YAAoB,kBAA2B,EAAE,oBAA6B,EAAE,QAAkB,EAAE,MAA4B,EAAE,OAA6B,EAAE,iBAAoD;QACnN,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;QAC7C,IAAI,CAAC,oBAAoB,GAAG,oBAAoB,CAAC;QACjD,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC;QAC1B,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC;QAC5B,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;IAC7C,CAAC;IAQD,gBAAgB;IACT,MAAM,CAAC,MAAM,CAAC,yBAAwD,EAAE,QAAmB,EAAE,WAAsB,EAAE,YAAuB;QAEjJ,IAAI,OAAO,yBAAyB,KAAK,SAAS,EAAE,CAAC;YACnD,QAAQ,GAAG,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC;YAEjE,IAAI,CAAC,yBAAyB,IAAI,QAAQ,CAAC,eAAe,IAAI,CAAC,WAAW,IAAI,CAAC,YAAY,EAAE,CAAC;gBAC5F,OAAO,IAAI,CAAC,QAAQ,CAAC;YACvB,CAAC;YAED,OAAO,IAAI,SAAS,CAAC,yBAAyB,EAAE,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,YAAY,EAAE,SAAS,CAAC,CAAC;QACzG,CAAC;QAED,MAAM,KAAK,GAAG,yBAAyB,CAAC;QACxC,IAAI,CAAC,KAAK,CAAC,kBAAkB,IAAI,CAAC,KAAK,CAAC,oBAAoB,IAAI,CAAC,CAAC,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,IAAI,CAAC,KAAK,CAAC,YAAY,IAAI,CAAC,KAAK,CAAC,iBAAiB;YAC1L,OAAO,IAAI,CAAC,QAAQ,CAAC;QAEvB,MAAM,kBAAkB,GAAG,KAAK,CAAC,kBAAkB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;QACnE,MAAM,oBAAoB,GAAG,KAAK,CAAC,oBAAoB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;QACvE,QAAQ,GAAG,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC;QAE7E,OAAO,IAAI,SAAS,CAAC,kBAAkB,EAAE,oBAAoB,EAAE,QAAQ,EAAE,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,YAAY,EAAG,KAAK,CAAC,iBAAiB,CAAC,CAAC;IAC5I,CAAC;IAEM,MAAM,CAAC,QAAQ,CAAC,KAAsB;QAC3C,IAAI,SAAS,CAAC,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAC;YACtC,MAAM,kBAAkB,GAAG,KAAK,CAAC,kBAAkB,IAAI,KAAK,CAAC;YAC7D,MAAM,oBAAoB,GAAG,KAAK,CAAC,oBAAoB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;YACvE,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YACnD,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YACzF,MAAM,YAAY,GAAG,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAC5F,MAAM,iBAAiB,GAAG,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC,qBAAqB,CAAC,QAAQ,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAExH,OAAO,IAAI,CAAC,MAAM,CAAC,EAAC,kBAAkB,EAAE,oBAAoB,EAAE,QAAQ,EAAE,WAAW,EAAE,YAAY,EAAE,iBAAiB,EAAC,CAAC,CAAC;QACzH,CAAC;QAED,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED,mGAAmG;IAC5F,MAAM;QACX,IAAI,IAAI,CAAC,eAAe;YACtB,OAAO,SAAS,CAAC;QAEnB,MAAM,KAAK,GAAmB,EAAE,CAAC;QACjC,IAAI,IAAI,CAAC,kBAAkB;YACzB,KAAK,CAAC,kBAAkB,GAAG,IAAI,CAAC;QAElC,IAAI,IAAI,CAAC,oBAAoB;YAC3B,KAAK,CAAC,oBAAoB,GAAG,IAAI,CAAC;QAEpC,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;QACxC,IAAI,QAAQ,EAAE,CAAC;YACb,MAAM,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;YACvC,KAAK,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAC5B,CAAC;QAED,IAAI,IAAI,CAAC,WAAW;YAClB,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC;QAEhD,IAAI,IAAI,CAAC,YAAY;YACnB,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC;QAElD,IAAI,IAAI,CAAC,iBAAiB;YACxB,KAAK,CAAC,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,CAAC;QAE5D,OAAO,KAAK,CAAC;IACf,CAAC;IAED,uHAAuH;IACvH,IAAW,eAAe;QACxB,IAAI,IAAI,KAAK,SAAS,CAAC,QAAQ;YAC7B,OAAO,IAAI,CAAC;QAEd,OAAO,CAAC,IAAI,CAAC,kBAAkB,IAAI,CAAC,IAAI,CAAC,oBAAoB,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,QAAQ,CAAC,eAAe,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC;IACvK,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Views\r\n */\r\n\r\nimport { assert, JsonUtils } from \"@itwin/core-bentley\";\r\nimport { ViewFlagOverrides } from \"./ViewFlags\";\r\nimport { RgbColor, RgbColorProps } from \"./RgbColor\";\r\nimport { HiddenLine } from \"./HiddenLine\";\r\nimport { FeatureAppearance, FeatureAppearanceProps } from \"./FeatureSymbology\";\r\nimport { ColorDef } from \"./ColorDef\";\r\n\r\n/** Wire format describing a [[CutStyle]] applied to section-cut geometry produced at intersections with a view's [ClipVector]($core-geometry).\r\n * @see [[ClipStyleProps.cutStyle]].\r\n * @public\r\n * @extensions\r\n */\r\nexport interface CutStyleProps {\r\n /** If defined, overrides aspects of the view's [[ViewFlags]] when drawing the cut geometry. */\r\n viewflags?: ViewFlagOverrides;\r\n /** If defined, overrides the view's [[HiddenLine.Settings]] when drawing the cut geometry. */\r\n hiddenLine?: HiddenLine.SettingsProps;\r\n /** If defined, overrides aspects of the cut geometry's symbology. */\r\n appearance?: FeatureAppearanceProps;\r\n}\r\n\r\n/** As part of a [[ClipStyle]], describes how section-cut graphics should be displayed.\r\n * @note Section-cut graphics are only produced if [[ClipStyle.produceCutGeometry]] is `true`.\r\n * @public\r\n */\r\nexport class CutStyle {\r\n /** Selectively overrides some of the view's [[ViewFlags]] when drawing the section-cut graphics. */\r\n public readonly viewflags: Readonly<ViewFlagOverrides>;\r\n /** If defined, overrides the settings the view uses to draw the edges of the section-cut graphics. */\r\n public readonly hiddenLine?: HiddenLine.Settings;\r\n /** If defined, overrides aspects of the symbology of the section-cut graphics. */\r\n public readonly appearance?: FeatureAppearance;\r\n\r\n /** The default CutStyle, configured to draw the section-cut graphics using the view's settings, with no overrides. */\r\n public static readonly defaults = new CutStyle();\r\n\r\n private constructor(viewflags?: Readonly<ViewFlagOverrides>, hiddenLine?: HiddenLine.Settings, appearance?: FeatureAppearance) {\r\n this.viewflags = viewflags ?? {};\r\n if (hiddenLine && !hiddenLine.matchesDefaults)\r\n this.hiddenLine = hiddenLine;\r\n\r\n if (appearance && !appearance.matchesDefaults)\r\n this.appearance = appearance;\r\n }\r\n\r\n /** Create a CutStyle from its components. */\r\n public static create(viewflags?: Readonly<ViewFlagOverrides>, hiddenLine?: HiddenLine.Settings, appearance?: FeatureAppearance): CutStyle {\r\n if ((viewflags && JsonUtils.isNonEmptyObject(viewflags)) || (hiddenLine && !hiddenLine.matchesDefaults) || (appearance && !appearance.matchesDefaults))\r\n return new CutStyle(viewflags, hiddenLine, appearance);\r\n\r\n return this.defaults;\r\n }\r\n\r\n public static fromJSON(props?: CutStyleProps): CutStyle {\r\n if (JsonUtils.isNonEmptyObject(props)) {\r\n const viewflags = { ...props?.viewflags };\r\n const hiddenLine = props?.hiddenLine ? HiddenLine.Settings.fromJSON(props.hiddenLine) : undefined;\r\n const appearance = props?.appearance ? FeatureAppearance.fromJSON(props.appearance) : undefined;\r\n\r\n return this.create(viewflags, hiddenLine, appearance);\r\n } else {\r\n return this.defaults;\r\n }\r\n }\r\n\r\n /** Return JSON representation. The representation is `undefined` if this style matches the default style. */\r\n public toJSON(): CutStyleProps | undefined {\r\n if (this.matchesDefaults)\r\n return undefined;\r\n\r\n const props: CutStyleProps = {};\r\n if (JsonUtils.isNonEmptyObject(this.viewflags))\r\n props.viewflags = this.viewflags;\r\n\r\n if (this.hiddenLine && !this.hiddenLine.matchesDefaults)\r\n props.hiddenLine = this.hiddenLine?.toJSON();\r\n\r\n if (this.appearance && !this.appearance.matchesDefaults)\r\n props.appearance = this.appearance.toJSON();\r\n\r\n return props;\r\n }\r\n\r\n /** Returns true if this style matches the default style - that is, it overrides none of the view's settings. */\r\n public get matchesDefaults(): boolean {\r\n if (this === CutStyle.defaults)\r\n return true;\r\n\r\n return !JsonUtils.isNonEmptyObject(this.viewflags) && (!this.hiddenLine || this.hiddenLine.matchesDefaults) && (!this.appearance || this.appearance.matchesDefaults);\r\n }\r\n}\r\n\r\n/** Wire format describing a [[ClipIntersectionStyle]].\r\n * @see [[ClipStyleProps.ClipIntersectionStyle]].\r\n * @public\r\n * @extensions\r\n */\r\nexport interface ClipIntersectionStyleProps {\r\n /** Color to apply to intersection of geometry and clip planes, default white */\r\n color?: RgbColorProps;\r\n /** Number of pixels to be considered intersecting the clip plane, default 1 */\r\n width?: number;\r\n}\r\n\r\n/** As part of a [[ClipStyle]], describes how to colorize geometry intersecting the clip planes.\r\n * @note Edges are highlighted only if [[ClipStyle.ClipIntersectionStyle]] is `true`.\r\n * @public\r\n * @extensions\r\n */\r\nexport class ClipIntersectionStyle {\r\n /** Color to apply to intersection of geometry and clip planes, default white */\r\n public readonly color: RgbColor;\r\n /** Number of pixels to be considered intersecting the clip plane, default 1 */\r\n public readonly width: number;\r\n\r\n private constructor(color: RgbColor = RgbColor.fromColorDef(ColorDef.white), width: number = 1) {\r\n this.color = color;\r\n this.width = width;\r\n }\r\n /** Create a highlight from its components. */\r\n public static create(color?: RgbColor, width?: number): ClipIntersectionStyle {\r\n if (!color && !width)\r\n return this.defaults;\r\n\r\n return new ClipIntersectionStyle(color, width);\r\n }\r\n\r\n public static readonly defaults = new ClipIntersectionStyle();\r\n\r\n public static fromJSON(props?: ClipIntersectionStyleProps): ClipIntersectionStyle {\r\n if (props === undefined) {\r\n return ClipIntersectionStyle.defaults;\r\n }\r\n\r\n const color = props.color ? RgbColor.fromJSON(props.color) : RgbColor.fromColorDef(ColorDef.white);\r\n const width = props.width ? props.width : 1;\r\n return new ClipIntersectionStyle(color, width);\r\n }\r\n\r\n /** The JSON representation of this style. It is `undefined` if this style matches the defaults. */\r\n public toJSON(): ClipIntersectionStyleProps | undefined {\r\n const props: ClipIntersectionStyleProps = {};\r\n\r\n if (this.matchesDefaults) {\r\n return undefined;\r\n }\r\n\r\n if (this.color)\r\n props.color = this.color.toJSON();\r\n\r\n if (this.width)\r\n props.width = this.width;\r\n\r\n return props;\r\n }\r\n\r\n public get matchesDefaults(): boolean {\r\n if (this === ClipIntersectionStyle.defaults)\r\n return true;\r\n\r\n return !this.color && !this.width;\r\n }\r\n}\r\n\r\n/** Arguments supplied to [[ClipStyle.create]].\r\n * @public\r\n * @extensions\r\n */\r\nexport interface ClipStyleCreateArgs {\r\n /** If `true`, geometry will be produced at the clip planes in a 3d view.\r\n * - Solids (closed volumes) will produce facets on the clip planes.\r\n * - Other surfaces will produce line strings representing the edges of the surface at the clip planes.\r\n * @note Cut geometry will only be produced for element geometry - not for, e.g., terrain or reality models.\r\n */\r\n produceCutGeometry?: boolean;\r\n /** If `true`, intersection of geometry and clip planes will be colorized */\r\n colorizeIntersection?: boolean;\r\n /** Controls aspects of how the cut geometry is displayed, if [[produceCutGeometry]] is `true`. */\r\n cutStyle?: CutStyle;\r\n /** If defined, geometry inside the clip planes will be drawn in this color. */\r\n insideColor?: RgbColor;\r\n /** If defined, geometry outside of the clip planes will be drawn in this color instead of being clipped. */\r\n outsideColor?: RgbColor;\r\n /** Controls the style of the intersection of geometry and clip planes */\r\n intersectionStyle?: ClipIntersectionStyle;\r\n}\r\n\r\n/** Wire format describing a [[ClipStyle]].\r\n * @see [[DisplayStyleSettingsProps.clipStyle]].\r\n * @public\r\n * @extensions\r\n */\r\nexport interface ClipStyleProps {\r\n /** If `true`, geometry will be produced at the clip planes in a 3d view.\r\n * - Solids (closed volumes) will produce facets on the clip planes.\r\n * - Other surfaces will produce line strings representing the edges of the surface at the clip planes.\r\n * @note Cut geometry will only be produced for element geometry - not for, e.g., terrain or reality models.\r\n */\r\n produceCutGeometry?: boolean;\r\n /** If 'true', intersection of geometry and clip planes will be colorized */\r\n colorizeIntersection?: boolean;\r\n /** Controls aspects of how the cut geometry is displayed, if [[produceCutGeometry]] is `true`. */\r\n cutStyle?: CutStyleProps;\r\n /** If defined, geometry inside the clip planes will be drawn in this color. */\r\n insideColor?: RgbColorProps;\r\n /** If defined, geometry outside of the clip planes will be drawn in this color instead of being clipped. */\r\n outsideColor?: RgbColorProps;\r\n /** Controls the style of the intersection of geometry and clip planes */\r\n intersectionStyle?: ClipIntersectionStyleProps;\r\n}\r\n\r\n/** Describes symbology and behavior applied to a [ClipVector]($core-geometry) when applied to a [ViewState]($frontend) or [[ModelClipGroup]].\r\n * @see [[DisplayStyleSettings.clipStyle]].\r\n * @public\r\n */\r\nexport class ClipStyle {\r\n /** If `true`, geometry will be produced at the clip planes.\r\n * - Solids (closed volumes) will produce facets on the clip planes.\r\n * - Other surfaces will produce line strings representing the edges of the surface at the clip planes.\r\n * @note Cut geometry will only be produced for element geometry - not for, e.g., terrain or reality models.\r\n */\r\n public readonly produceCutGeometry: boolean;\r\n /** If 'true', intersection of geometry and clip planes will be colorized */\r\n public readonly colorizeIntersection: boolean;\r\n /** Controls aspects of how the cut geometry is displayed, if [[produceCutGeometry]] is `true`. */\r\n public readonly cutStyle: CutStyle;\r\n /** If defined, geometry inside the clip planes will be drawn in this color. */\r\n public readonly insideColor?: RgbColor;\r\n /** If defined, geometry outside of the clip planes will be drawn in this color instead of being clipped. */\r\n public readonly outsideColor?: RgbColor;\r\n /** Controls the style of the intersection of geometry and clip planes */\r\n public readonly intersectionStyle?: ClipIntersectionStyle;\r\n\r\n /** The default style, which overrides none of the view's settings. */\r\n public static readonly defaults = new ClipStyle(false, false, CutStyle.defaults, undefined, undefined, undefined);\r\n\r\n private constructor(produceCutGeometry: boolean, colorizeIntersection: boolean, cutStyle: CutStyle, inside: RgbColor | undefined, outside: RgbColor | undefined, intersectionStyle: ClipIntersectionStyle | undefined) {\r\n this.produceCutGeometry = produceCutGeometry;\r\n this.colorizeIntersection = colorizeIntersection;\r\n this.cutStyle = cutStyle;\r\n this.insideColor = inside;\r\n this.outsideColor = outside;\r\n this.intersectionStyle = intersectionStyle;\r\n }\r\n\r\n /** @deprecated in 4.x. Use [[create(style: ClipStyleCreateArgs]] */\r\n public static create(produceCutGeometry: boolean, cutStyle: CutStyle, insideColor?: RgbColor, outsideColor?: RgbColor): ClipStyle;\r\n\r\n /** Create a style from its components. */\r\n public static create(style: ClipStyleCreateArgs): ClipStyle;\r\n\r\n /** @internal */\r\n public static create(styleOrProduceCutGeometry: ClipStyleCreateArgs | boolean, cutStyle?: CutStyle, insideColor?: RgbColor, outsideColor?: RgbColor): ClipStyle {\r\n\r\n if (typeof styleOrProduceCutGeometry === \"boolean\") {\r\n cutStyle = cutStyle === undefined ? CutStyle.defaults : cutStyle;\r\n\r\n if (!styleOrProduceCutGeometry && cutStyle.matchesDefaults && !insideColor && !outsideColor) {\r\n return this.defaults;\r\n }\r\n\r\n return new ClipStyle(styleOrProduceCutGeometry, false, cutStyle, insideColor, outsideColor, undefined);\r\n }\r\n\r\n const style = styleOrProduceCutGeometry;\r\n if (!style.produceCutGeometry && !style.colorizeIntersection && (!style.cutStyle || style.cutStyle.matchesDefaults) && !style.insideColor && !style.outsideColor && !style.intersectionStyle)\r\n return this.defaults;\r\n\r\n const produceCutGeometry = style.produceCutGeometry ? true : false;\r\n const colorizeIntersection = style.colorizeIntersection ? true : false;\r\n cutStyle = style.cutStyle === undefined ? CutStyle.defaults : style.cutStyle;\r\n\r\n return new ClipStyle(produceCutGeometry, colorizeIntersection, cutStyle, style.insideColor, style.outsideColor, style.intersectionStyle);\r\n }\r\n\r\n public static fromJSON(props?: ClipStyleProps): ClipStyle {\r\n if (JsonUtils.isNonEmptyObject(props)) {\r\n const produceCutGeometry = props.produceCutGeometry ?? false;\r\n const colorizeIntersection = props.colorizeIntersection ? true : false;\r\n const cutStyle = CutStyle.fromJSON(props.cutStyle);\r\n const insideColor = props.insideColor ? RgbColor.fromJSON(props.insideColor) : undefined;\r\n const outsideColor = props.outsideColor ? RgbColor.fromJSON(props.outsideColor) : undefined;\r\n const intersectionStyle = props.intersectionStyle ? ClipIntersectionStyle.fromJSON(props.intersectionStyle) : undefined;\r\n\r\n return this.create({produceCutGeometry, colorizeIntersection, cutStyle, insideColor, outsideColor, intersectionStyle});\r\n }\r\n\r\n return this.defaults;\r\n }\r\n\r\n /** The JSON representation of this style. It is `undefined` if this style matches the defaults. */\r\n public toJSON(): ClipStyleProps | undefined {\r\n if (this.matchesDefaults)\r\n return undefined;\r\n\r\n const props: ClipStyleProps = {};\r\n if (this.produceCutGeometry)\r\n props.produceCutGeometry = true;\r\n\r\n if (this.colorizeIntersection)\r\n props.colorizeIntersection = true;\r\n\r\n const cutStyle = this.cutStyle.toJSON();\r\n if (cutStyle) {\r\n assert(!this.cutStyle.matchesDefaults);\r\n props.cutStyle = cutStyle;\r\n }\r\n\r\n if (this.insideColor)\r\n props.insideColor = this.insideColor.toJSON();\r\n\r\n if (this.outsideColor)\r\n props.outsideColor = this.outsideColor.toJSON();\r\n\r\n if (this.intersectionStyle)\r\n props.intersectionStyle = this.intersectionStyle.toJSON();\r\n\r\n return props;\r\n }\r\n\r\n /** Returns true if this style matches the [[ClipStyle.defaults]] - that is, it overrides no settings from the view. */\r\n public get matchesDefaults(): boolean {\r\n if (this === ClipStyle.defaults)\r\n return true;\r\n\r\n return !this.produceCutGeometry && !this.colorizeIntersection && !this.insideColor && !this.outsideColor && this.cutStyle.matchesDefaults && !this.intersectionStyle;\r\n }\r\n}\r\n"]}
package/lib/esm/Code.d.ts CHANGED
@@ -279,10 +279,5 @@ export declare class CodeSpec {
279
279
  */
280
280
  get scopeReq(): CodeScopeSpec.ScopeRequirement;
281
281
  set scopeReq(req: CodeScopeSpec.ScopeRequirement);
282
- /** Will be true if the codes associated with this CodeSpec are managed along with the iModel and false if the codes are managed by an external service.
283
- * @deprecated in 3.6 Use scopeReq instead.
284
- */
285
- get isManagedWithIModel(): boolean;
286
- set isManagedWithIModel(value: boolean);
287
282
  }
288
283
  //# sourceMappingURL=Code.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Code.d.ts","sourceRoot":"","sources":["../../src/Code.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Code.d.ts","sourceRoot":"","sources":["../../src/Code.ts"],"names":[],"mappings":"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"}
package/lib/esm/Code.js CHANGED
@@ -11,11 +11,16 @@ import { Id64, JsonUtils } from "@itwin/core-bentley";
11
11
  * @public
12
12
  */
13
13
  export class Code {
14
+ /** The id of the [CodeSpec]($docs/bis/guide/fundamentals/codes.md#codespec) of the Element */
15
+ spec;
16
+ /** The [CodeScope]($docs/bis/guide/fundamentals/codes.md#codescope-property) of the Element */
17
+ scope;
14
18
  /** The [CodeValue]($docs/bis/guide/fundamentals/codes.md#codevalue-property) of the Element
15
19
  * @note Leading and trailing whitespace is invalid so is automatically trimmed.
16
20
  */
17
21
  get value() { return this._value ?? ""; }
18
22
  set value(val) { this._value = val?.trim(); }
23
+ _value;
19
24
  constructor(codeProps) {
20
25
  this.spec = Id64.fromJSON(codeProps.spec);
21
26
  this.scope = JsonUtils.asString(codeProps.scope);
@@ -219,6 +224,17 @@ export var CodeScopeSpec;
219
224
  * @public
220
225
  */
221
226
  export class CodeSpec {
227
+ /** The iModel holding this CodeSpec. */
228
+ iModel;
229
+ /** The id of this CodeSpec. */
230
+ id;
231
+ /** The name of this CodeSpec. */
232
+ name;
233
+ /** The JSON properties for this CodeSpec.
234
+ * @note Use the getters and setters instead of accessing this directly.
235
+ * @internal
236
+ */
237
+ properties;
222
238
  constructor(iModel, id, name, properties) {
223
239
  this.iModel = iModel;
224
240
  this.id = id;
@@ -261,16 +277,5 @@ export class CodeSpec {
261
277
  else
262
278
  this.properties.scopeSpec.fGuidRequired = undefined;
263
279
  }
264
- /** Will be true if the codes associated with this CodeSpec are managed along with the iModel and false if the codes are managed by an external service.
265
- * @deprecated in 3.6 Use scopeReq instead.
266
- */
267
- get isManagedWithIModel() {
268
- return this.properties.spec?.isManagedWithDgnDb ?? true;
269
- }
270
- set isManagedWithIModel(value) {
271
- if (!this.properties.spec)
272
- this.properties.spec = {};
273
- this.properties.spec.isManagedWithDgnDb = value;
274
- }
275
280
  }
276
281
  //# sourceMappingURL=Code.js.map