@itwin/core-common 3.5.0-dev.27 → 3.5.0-dev.29

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 (937) hide show
  1. package/lib/cjs/AmbientOcclusion.d.ts +49 -49
  2. package/lib/cjs/AmbientOcclusion.js +55 -55
  3. package/lib/cjs/AmbientOcclusion.js.map +1 -1
  4. package/lib/cjs/AnalysisStyle.d.ts +134 -134
  5. package/lib/cjs/AnalysisStyle.js +165 -165
  6. package/lib/cjs/AnalysisStyle.js.map +1 -1
  7. package/lib/cjs/AuthorizationClient.d.ts +11 -11
  8. package/lib/cjs/AuthorizationClient.js +9 -9
  9. package/lib/cjs/AuthorizationClient.js.map +1 -1
  10. package/lib/cjs/BackgroundMapProvider.d.ts +51 -51
  11. package/lib/cjs/BackgroundMapProvider.js +68 -68
  12. package/lib/cjs/BackgroundMapProvider.js.map +1 -1
  13. package/lib/cjs/BackgroundMapSettings.d.ts +136 -136
  14. package/lib/cjs/BackgroundMapSettings.js +156 -156
  15. package/lib/cjs/BackgroundMapSettings.js.map +1 -1
  16. package/lib/cjs/Base64EncodedString.d.ts +30 -30
  17. package/lib/cjs/Base64EncodedString.js +56 -56
  18. package/lib/cjs/Base64EncodedString.js.map +1 -1
  19. package/lib/cjs/BlobReader.d.ts +31 -31
  20. package/lib/cjs/BlobReader.js +84 -84
  21. package/lib/cjs/BlobReader.js.map +1 -1
  22. package/lib/cjs/BriefcaseTypes.d.ts +189 -189
  23. package/lib/cjs/BriefcaseTypes.js +95 -95
  24. package/lib/cjs/BriefcaseTypes.js.map +1 -1
  25. package/lib/cjs/Camera.d.ts +42 -42
  26. package/lib/cjs/Camera.js +62 -62
  27. package/lib/cjs/Camera.js.map +1 -1
  28. package/lib/cjs/ChangedElements.d.ts +83 -83
  29. package/lib/cjs/ChangedElements.js +21 -21
  30. package/lib/cjs/ChangedElements.js.map +1 -1
  31. package/lib/cjs/ChangedEntities.d.ts +45 -45
  32. package/lib/cjs/ChangedEntities.js +9 -9
  33. package/lib/cjs/ChangedEntities.js.map +1 -1
  34. package/lib/cjs/ChangesetProps.d.ts +98 -98
  35. package/lib/cjs/ChangesetProps.js +22 -22
  36. package/lib/cjs/ChangesetProps.js.map +1 -1
  37. package/lib/cjs/ClipStyle.d.ts +89 -89
  38. package/lib/cjs/ClipStyle.js +123 -123
  39. package/lib/cjs/ClipStyle.js.map +1 -1
  40. package/lib/cjs/CloudStorage.d.ts +62 -62
  41. package/lib/cjs/CloudStorage.js +113 -113
  42. package/lib/cjs/CloudStorage.js.map +1 -1
  43. package/lib/cjs/CloudStorageTileCache.d.ts +27 -27
  44. package/lib/cjs/CloudStorageTileCache.js +66 -66
  45. package/lib/cjs/CloudStorageTileCache.js.map +1 -1
  46. package/lib/cjs/Code.d.ts +256 -256
  47. package/lib/cjs/Code.js +281 -281
  48. package/lib/cjs/Code.js.map +1 -1
  49. package/lib/cjs/ColorByName.d.ts +161 -161
  50. package/lib/cjs/ColorByName.js +169 -169
  51. package/lib/cjs/ColorByName.js.map +1 -1
  52. package/lib/cjs/ColorDef.d.ts +208 -208
  53. package/lib/cjs/ColorDef.js +571 -571
  54. package/lib/cjs/ColorDef.js.map +1 -1
  55. package/lib/cjs/CommonLoggerCategory.d.ts +18 -18
  56. package/lib/cjs/CommonLoggerCategory.js +26 -26
  57. package/lib/cjs/CommonLoggerCategory.js.map +1 -1
  58. package/lib/cjs/ConcurrentQuery.d.ts +241 -241
  59. package/lib/cjs/ConcurrentQuery.js +380 -380
  60. package/lib/cjs/ConcurrentQuery.js.map +1 -1
  61. package/lib/cjs/ContextRealityModel.d.ts +276 -276
  62. package/lib/cjs/ContextRealityModel.js +358 -358
  63. package/lib/cjs/ContextRealityModel.js.map +1 -1
  64. package/lib/cjs/DisplayStyleSettings.d.ts +584 -584
  65. package/lib/cjs/DisplayStyleSettings.js +981 -981
  66. package/lib/cjs/DisplayStyleSettings.js.map +1 -1
  67. package/lib/cjs/ECSchemaProps.d.ts +39 -39
  68. package/lib/cjs/ECSchemaProps.js +9 -9
  69. package/lib/cjs/ECSchemaProps.js.map +1 -1
  70. package/lib/cjs/ECSqlReader.d.ts +70 -70
  71. package/lib/cjs/ECSqlReader.js +280 -280
  72. package/lib/cjs/ECSqlReader.js.map +1 -1
  73. package/lib/cjs/ECSqlTypes.d.ts +128 -128
  74. package/lib/cjs/ECSqlTypes.js +189 -189
  75. package/lib/cjs/ECSqlTypes.js.map +1 -1
  76. package/lib/cjs/ElementProps.d.ts +476 -476
  77. package/lib/cjs/ElementProps.js +99 -99
  78. package/lib/cjs/ElementProps.js.map +1 -1
  79. package/lib/cjs/EmphasizeElementsProps.d.ts +55 -55
  80. package/lib/cjs/EmphasizeElementsProps.js +25 -25
  81. package/lib/cjs/EmphasizeElementsProps.js.map +1 -1
  82. package/lib/cjs/EntityProps.d.ts +176 -176
  83. package/lib/cjs/EntityProps.js +112 -112
  84. package/lib/cjs/EntityProps.js.map +1 -1
  85. package/lib/cjs/EntityReference.d.ts +51 -51
  86. package/lib/cjs/EntityReference.js +56 -56
  87. package/lib/cjs/EntityReference.js.map +1 -1
  88. package/lib/cjs/Environment.d.ts +61 -61
  89. package/lib/cjs/Environment.js +73 -73
  90. package/lib/cjs/Environment.js.map +1 -1
  91. package/lib/cjs/FeatureGates.d.ts +31 -31
  92. package/lib/cjs/FeatureGates.js +55 -55
  93. package/lib/cjs/FeatureGates.js.map +1 -1
  94. package/lib/cjs/FeatureIndex.d.ts +39 -39
  95. package/lib/cjs/FeatureIndex.js +63 -63
  96. package/lib/cjs/FeatureIndex.js.map +1 -1
  97. package/lib/cjs/FeatureSymbology.d.ts +444 -444
  98. package/lib/cjs/FeatureSymbology.js +614 -614
  99. package/lib/cjs/FeatureSymbology.js.map +1 -1
  100. package/lib/cjs/FeatureTable.d.ts +141 -141
  101. package/lib/cjs/FeatureTable.js +278 -278
  102. package/lib/cjs/FeatureTable.js.map +1 -1
  103. package/lib/cjs/Fonts.d.ts +51 -51
  104. package/lib/cjs/Fonts.js +53 -53
  105. package/lib/cjs/Fonts.js.map +1 -1
  106. package/lib/cjs/Frustum.d.ts +114 -114
  107. package/lib/cjs/Frustum.js +292 -292
  108. package/lib/cjs/Frustum.js.map +1 -1
  109. package/lib/cjs/GeoCoordinateServices.d.ts +119 -119
  110. package/lib/cjs/GeoCoordinateServices.js +80 -80
  111. package/lib/cjs/GeoCoordinateServices.js.map +1 -1
  112. package/lib/cjs/GeometryContainment.d.ts +28 -28
  113. package/lib/cjs/GeometryContainment.js +9 -9
  114. package/lib/cjs/GeometryContainment.js.map +1 -1
  115. package/lib/cjs/GeometryParams.d.ts +130 -130
  116. package/lib/cjs/GeometryParams.js +174 -174
  117. package/lib/cjs/GeometryParams.js.map +1 -1
  118. package/lib/cjs/GeometrySummary.d.ts +45 -45
  119. package/lib/cjs/GeometrySummary.js +23 -23
  120. package/lib/cjs/GeometrySummary.js.map +1 -1
  121. package/lib/cjs/Gradient.d.ts +139 -139
  122. package/lib/cjs/Gradient.js +455 -455
  123. package/lib/cjs/Gradient.js.map +1 -1
  124. package/lib/cjs/GraphicParams.d.ts +58 -58
  125. package/lib/cjs/GraphicParams.js +85 -85
  126. package/lib/cjs/GraphicParams.js.map +1 -1
  127. package/lib/cjs/GroundPlane.d.ts +52 -52
  128. package/lib/cjs/GroundPlane.js +64 -64
  129. package/lib/cjs/GroundPlane.js.map +1 -1
  130. package/lib/cjs/HSLColor.d.ts +20 -20
  131. package/lib/cjs/HSLColor.js +32 -32
  132. package/lib/cjs/HSLColor.js.map +1 -1
  133. package/lib/cjs/HSVColor.d.ts +30 -30
  134. package/lib/cjs/HSVColor.js +59 -59
  135. package/lib/cjs/HSVColor.js.map +1 -1
  136. package/lib/cjs/HiddenLine.d.ts +97 -97
  137. package/lib/cjs/HiddenLine.js +162 -162
  138. package/lib/cjs/HiddenLine.js.map +1 -1
  139. package/lib/cjs/Hilite.d.ts +50 -50
  140. package/lib/cjs/Hilite.js +64 -64
  141. package/lib/cjs/Hilite.js.map +1 -1
  142. package/lib/cjs/IModel.d.ts +359 -359
  143. package/lib/cjs/IModel.js +347 -347
  144. package/lib/cjs/IModel.js.map +1 -1
  145. package/lib/cjs/IModelError.d.ts +36 -36
  146. package/lib/cjs/IModelError.js +72 -72
  147. package/lib/cjs/IModelError.js.map +1 -1
  148. package/lib/cjs/IModelVersion.d.ts +68 -68
  149. package/lib/cjs/IModelVersion.js +79 -79
  150. package/lib/cjs/IModelVersion.js.map +1 -1
  151. package/lib/cjs/Image.d.ts +86 -86
  152. package/lib/cjs/Image.js +128 -128
  153. package/lib/cjs/Image.js.map +1 -1
  154. package/lib/cjs/IpcAppProps.d.ts +141 -124
  155. package/lib/cjs/IpcAppProps.d.ts.map +1 -1
  156. package/lib/cjs/IpcAppProps.js +23 -18
  157. package/lib/cjs/IpcAppProps.js.map +1 -1
  158. package/lib/cjs/LightSettings.d.ts +224 -224
  159. package/lib/cjs/LightSettings.js +309 -309
  160. package/lib/cjs/LightSettings.js.map +1 -1
  161. package/lib/cjs/LinePixels.d.ts +34 -34
  162. package/lib/cjs/LinePixels.js +42 -42
  163. package/lib/cjs/LinePixels.js.map +1 -1
  164. package/lib/cjs/Localization.d.ts +111 -111
  165. package/lib/cjs/Localization.js +26 -26
  166. package/lib/cjs/Localization.js.map +1 -1
  167. package/lib/cjs/MapImagerySettings.d.ts +62 -62
  168. package/lib/cjs/MapImagerySettings.js +80 -80
  169. package/lib/cjs/MapImagerySettings.js.map +1 -1
  170. package/lib/cjs/MapLayerSettings.d.ts +272 -272
  171. package/lib/cjs/MapLayerSettings.js +411 -411
  172. package/lib/cjs/MapLayerSettings.js.map +1 -1
  173. package/lib/cjs/MassProperties.d.ts +64 -64
  174. package/lib/cjs/MassProperties.js +23 -23
  175. package/lib/cjs/MassProperties.js.map +1 -1
  176. package/lib/cjs/MaterialProps.d.ts +118 -118
  177. package/lib/cjs/MaterialProps.js +23 -23
  178. package/lib/cjs/MaterialProps.js.map +1 -1
  179. package/lib/cjs/ModelClipGroup.d.ts +67 -67
  180. package/lib/cjs/ModelClipGroup.js +98 -98
  181. package/lib/cjs/ModelClipGroup.js.map +1 -1
  182. package/lib/cjs/ModelGeometryChanges.d.ts +107 -107
  183. package/lib/cjs/ModelGeometryChanges.js +83 -83
  184. package/lib/cjs/ModelGeometryChanges.js.map +1 -1
  185. package/lib/cjs/ModelProps.d.ts +67 -67
  186. package/lib/cjs/ModelProps.js +9 -9
  187. package/lib/cjs/ModelProps.js.map +1 -1
  188. package/lib/cjs/NativeAppProps.d.ts +122 -122
  189. package/lib/cjs/NativeAppProps.js +30 -30
  190. package/lib/cjs/NativeAppProps.js.map +1 -1
  191. package/lib/cjs/OctEncodedNormal.d.ts +33 -33
  192. package/lib/cjs/OctEncodedNormal.js +98 -98
  193. package/lib/cjs/OctEncodedNormal.js.map +1 -1
  194. package/lib/cjs/PlanProjectionSettings.d.ts +47 -47
  195. package/lib/cjs/PlanProjectionSettings.js +63 -63
  196. package/lib/cjs/PlanProjectionSettings.js.map +1 -1
  197. package/lib/cjs/PlanarClipMask.d.ts +177 -177
  198. package/lib/cjs/PlanarClipMask.js +136 -136
  199. package/lib/cjs/PlanarClipMask.js.map +1 -1
  200. package/lib/cjs/QPoint.d.ts +479 -479
  201. package/lib/cjs/QPoint.js +826 -826
  202. package/lib/cjs/QPoint.js.map +1 -1
  203. package/lib/cjs/RealityDataAccessProps.d.ts +41 -41
  204. package/lib/cjs/RealityDataAccessProps.js +19 -19
  205. package/lib/cjs/RealityDataAccessProps.js.map +1 -1
  206. package/lib/cjs/RealityModelDisplaySettings.d.ts +118 -118
  207. package/lib/cjs/RealityModelDisplaySettings.js +114 -114
  208. package/lib/cjs/RealityModelDisplaySettings.js.map +1 -1
  209. package/lib/cjs/Render.d.ts +89 -89
  210. package/lib/cjs/Render.js +177 -177
  211. package/lib/cjs/Render.js.map +1 -1
  212. package/lib/cjs/RenderMaterial.d.ts +58 -58
  213. package/lib/cjs/RenderMaterial.js +76 -76
  214. package/lib/cjs/RenderMaterial.js.map +1 -1
  215. package/lib/cjs/RenderSchedule.d.ts +541 -541
  216. package/lib/cjs/RenderSchedule.js +1000 -1000
  217. package/lib/cjs/RenderTexture.d.ts +70 -70
  218. package/lib/cjs/RenderTexture.js +59 -59
  219. package/lib/cjs/RenderTexture.js.map +1 -1
  220. package/lib/cjs/RgbColor.d.ts +47 -47
  221. package/lib/cjs/RgbColor.js +77 -77
  222. package/lib/cjs/RgbColor.js.map +1 -1
  223. package/lib/cjs/RpcInterface.d.ts +33 -33
  224. package/lib/cjs/RpcInterface.js +137 -137
  225. package/lib/cjs/RpcInterface.js.map +1 -1
  226. package/lib/cjs/RpcManager.d.ts +40 -40
  227. package/lib/cjs/RpcManager.js +55 -55
  228. package/lib/cjs/RpcManager.js.map +1 -1
  229. package/lib/cjs/SessionProps.d.ts +16 -16
  230. package/lib/cjs/SessionProps.js +9 -9
  231. package/lib/cjs/SessionProps.js.map +1 -1
  232. package/lib/cjs/SkyBox.d.ts +215 -215
  233. package/lib/cjs/SkyBox.js +210 -210
  234. package/lib/cjs/SkyBox.js.map +1 -1
  235. package/lib/cjs/Snapping.d.ts +49 -49
  236. package/lib/cjs/Snapping.js +9 -9
  237. package/lib/cjs/Snapping.js.map +1 -1
  238. package/lib/cjs/SolarCalculate.d.ts +27 -27
  239. package/lib/cjs/SolarCalculate.js +211 -211
  240. package/lib/cjs/SolarCalculate.js.map +1 -1
  241. package/lib/cjs/SolarShadows.d.ts +35 -35
  242. package/lib/cjs/SolarShadows.js +62 -62
  243. package/lib/cjs/SolarShadows.js.map +1 -1
  244. package/lib/cjs/SpatialClassification.d.ts +208 -208
  245. package/lib/cjs/SpatialClassification.js +340 -340
  246. package/lib/cjs/SpatialClassification.js.map +1 -1
  247. package/lib/cjs/SubCategoryAppearance.d.ts +91 -91
  248. package/lib/cjs/SubCategoryAppearance.js +96 -96
  249. package/lib/cjs/SubCategoryAppearance.js.map +1 -1
  250. package/lib/cjs/SubCategoryOverride.d.ts +46 -46
  251. package/lib/cjs/SubCategoryOverride.js +104 -104
  252. package/lib/cjs/SubCategoryOverride.js.map +1 -1
  253. package/lib/cjs/TerrainSettings.d.ts +82 -82
  254. package/lib/cjs/TerrainSettings.js +102 -102
  255. package/lib/cjs/TerrainSettings.js.map +1 -1
  256. package/lib/cjs/TextureMapping.d.ts +101 -101
  257. package/lib/cjs/TextureMapping.js +174 -174
  258. package/lib/cjs/TextureMapping.js.map +1 -1
  259. package/lib/cjs/TextureProps.d.ts +65 -65
  260. package/lib/cjs/TextureProps.js +28 -28
  261. package/lib/cjs/TextureProps.js.map +1 -1
  262. package/lib/cjs/ThematicDisplay.d.ts +230 -230
  263. package/lib/cjs/ThematicDisplay.js +344 -344
  264. package/lib/cjs/ThematicDisplay.js.map +1 -1
  265. package/lib/cjs/Thumbnail.d.ts +26 -26
  266. package/lib/cjs/Thumbnail.js +9 -9
  267. package/lib/cjs/Thumbnail.js.map +1 -1
  268. package/lib/cjs/TileProps.d.ts +82 -82
  269. package/lib/cjs/TileProps.js +29 -29
  270. package/lib/cjs/TileProps.js.map +1 -1
  271. package/lib/cjs/Tween.d.ts +191 -191
  272. package/lib/cjs/Tween.js +570 -570
  273. package/lib/cjs/Tween.js.map +1 -1
  274. package/lib/cjs/TxnAction.d.ts +21 -21
  275. package/lib/cjs/TxnAction.js +29 -29
  276. package/lib/cjs/TxnAction.js.map +1 -1
  277. package/lib/cjs/ViewDetails.d.ts +125 -125
  278. package/lib/cjs/ViewDetails.js +158 -158
  279. package/lib/cjs/ViewDetails.js.map +1 -1
  280. package/lib/cjs/ViewFlags.d.ts +291 -291
  281. package/lib/cjs/ViewFlags.js +368 -368
  282. package/lib/cjs/ViewFlags.js.map +1 -1
  283. package/lib/cjs/ViewProps.d.ts +205 -205
  284. package/lib/cjs/ViewProps.js +9 -9
  285. package/lib/cjs/ViewProps.js.map +1 -1
  286. package/lib/cjs/WhiteOnWhiteReversalSettings.d.ts +36 -36
  287. package/lib/cjs/WhiteOnWhiteReversalSettings.js +37 -37
  288. package/lib/cjs/WhiteOnWhiteReversalSettings.js.map +1 -1
  289. package/lib/cjs/core-common.d.ts +242 -242
  290. package/lib/cjs/core-common.js +258 -258
  291. package/lib/cjs/core-common.js.map +1 -1
  292. package/lib/cjs/domains/FunctionalElementProps.d.ts +11 -11
  293. package/lib/cjs/domains/FunctionalElementProps.js +9 -9
  294. package/lib/cjs/domains/FunctionalElementProps.js.map +1 -1
  295. package/lib/cjs/domains/GenericElementProps.d.ts +18 -18
  296. package/lib/cjs/domains/GenericElementProps.js +9 -9
  297. package/lib/cjs/domains/GenericElementProps.js.map +1 -1
  298. package/lib/cjs/geometry/AdditionalTransform.d.ts +84 -84
  299. package/lib/cjs/geometry/AdditionalTransform.js +85 -85
  300. package/lib/cjs/geometry/AdditionalTransform.js.map +1 -1
  301. package/lib/cjs/geometry/AreaPattern.d.ts +82 -82
  302. package/lib/cjs/geometry/AreaPattern.js +204 -204
  303. package/lib/cjs/geometry/AreaPattern.js.map +1 -1
  304. package/lib/cjs/geometry/BoundingSphere.d.ts +14 -14
  305. package/lib/cjs/geometry/BoundingSphere.js +30 -30
  306. package/lib/cjs/geometry/BoundingSphere.js.map +1 -1
  307. package/lib/cjs/geometry/Cartographic.d.ts +137 -137
  308. package/lib/cjs/geometry/Cartographic.js +345 -345
  309. package/lib/cjs/geometry/Cartographic.js.map +1 -1
  310. package/lib/cjs/geometry/CoordinateReferenceSystem.d.ts +269 -269
  311. package/lib/cjs/geometry/CoordinateReferenceSystem.js +261 -261
  312. package/lib/cjs/geometry/CoordinateReferenceSystem.js.map +1 -1
  313. package/lib/cjs/geometry/ElementGeometry.d.ts +402 -402
  314. package/lib/cjs/geometry/ElementGeometry.js +1719 -1719
  315. package/lib/cjs/geometry/ElementGeometry.js.map +1 -1
  316. package/lib/cjs/geometry/ElementGeometryFB.d.ts +2372 -2372
  317. package/lib/cjs/geometry/ElementGeometryFB.js +3814 -3814
  318. package/lib/cjs/geometry/ElementGeometryFB.js.map +1 -1
  319. package/lib/cjs/geometry/FrustumPlanes.d.ts +32 -32
  320. package/lib/cjs/geometry/FrustumPlanes.js +132 -132
  321. package/lib/cjs/geometry/FrustumPlanes.js.map +1 -1
  322. package/lib/cjs/geometry/GeodeticDatum.d.ts +409 -409
  323. package/lib/cjs/geometry/GeodeticDatum.js +401 -401
  324. package/lib/cjs/geometry/GeodeticDatum.js.map +1 -1
  325. package/lib/cjs/geometry/GeodeticEllipsoid.d.ts +72 -72
  326. package/lib/cjs/geometry/GeodeticEllipsoid.js +72 -72
  327. package/lib/cjs/geometry/GeodeticEllipsoid.js.map +1 -1
  328. package/lib/cjs/geometry/GeometryStream.d.ts +347 -347
  329. package/lib/cjs/geometry/GeometryStream.js +469 -469
  330. package/lib/cjs/geometry/GeometryStream.js.map +1 -1
  331. package/lib/cjs/geometry/ImageGraphic.d.ts +74 -74
  332. package/lib/cjs/geometry/ImageGraphic.js +98 -98
  333. package/lib/cjs/geometry/ImageGraphic.js.map +1 -1
  334. package/lib/cjs/geometry/LineStyle.d.ts +71 -71
  335. package/lib/cjs/geometry/LineStyle.js +129 -129
  336. package/lib/cjs/geometry/LineStyle.js.map +1 -1
  337. package/lib/cjs/geometry/Placement.d.ts +95 -95
  338. package/lib/cjs/geometry/Placement.js +131 -131
  339. package/lib/cjs/geometry/Placement.js.map +1 -1
  340. package/lib/cjs/geometry/Projection.d.ts +251 -251
  341. package/lib/cjs/geometry/Projection.js +198 -198
  342. package/lib/cjs/geometry/Projection.js.map +1 -1
  343. package/lib/cjs/geometry/TextString.d.ts +55 -55
  344. package/lib/cjs/geometry/TextString.js +65 -65
  345. package/lib/cjs/geometry/TextString.js.map +1 -1
  346. package/lib/cjs/ipc/IpcSession.d.ts +23 -23
  347. package/lib/cjs/ipc/IpcSession.js +27 -27
  348. package/lib/cjs/ipc/IpcSession.js.map +1 -1
  349. package/lib/cjs/ipc/IpcSocket.d.ts +96 -96
  350. package/lib/cjs/ipc/IpcSocket.js +16 -16
  351. package/lib/cjs/ipc/IpcSocket.js.map +1 -1
  352. package/lib/cjs/ipc/IpcWebSocket.d.ts +61 -61
  353. package/lib/cjs/ipc/IpcWebSocket.js +151 -151
  354. package/lib/cjs/ipc/IpcWebSocket.js.map +1 -1
  355. package/lib/cjs/ipc/IpcWebSocketTransport.d.ts +15 -15
  356. package/lib/cjs/ipc/IpcWebSocketTransport.js +158 -158
  357. package/lib/cjs/ipc/IpcWebSocketTransport.js.map +1 -1
  358. package/lib/cjs/rpc/DevToolsRpcInterface.d.ts +32 -32
  359. package/lib/cjs/rpc/DevToolsRpcInterface.js +48 -48
  360. package/lib/cjs/rpc/DevToolsRpcInterface.js.map +1 -1
  361. package/lib/cjs/rpc/IModelReadRpcInterface.d.ts +97 -97
  362. package/lib/cjs/rpc/IModelReadRpcInterface.js +119 -119
  363. package/lib/cjs/rpc/IModelReadRpcInterface.js.map +1 -1
  364. package/lib/cjs/rpc/IModelTileRpcInterface.d.ts +61 -61
  365. package/lib/cjs/rpc/IModelTileRpcInterface.js +96 -96
  366. package/lib/cjs/rpc/IModelTileRpcInterface.js.map +1 -1
  367. package/lib/cjs/rpc/SnapshotIModelRpcInterface.d.ts +23 -23
  368. package/lib/cjs/rpc/SnapshotIModelRpcInterface.js +48 -48
  369. package/lib/cjs/rpc/SnapshotIModelRpcInterface.js.map +1 -1
  370. package/lib/cjs/rpc/TestRpcManager.d.ts +20 -20
  371. package/lib/cjs/rpc/TestRpcManager.js +39 -39
  372. package/lib/cjs/rpc/TestRpcManager.js.map +1 -1
  373. package/lib/cjs/rpc/WipRpcInterface.d.ts +29 -29
  374. package/lib/cjs/rpc/WipRpcInterface.js +40 -40
  375. package/lib/cjs/rpc/WipRpcInterface.js.map +1 -1
  376. package/lib/cjs/rpc/core/RpcConfiguration.d.ts +111 -111
  377. package/lib/cjs/rpc/core/RpcConfiguration.js +192 -192
  378. package/lib/cjs/rpc/core/RpcConfiguration.js.map +1 -1
  379. package/lib/cjs/rpc/core/RpcConstants.d.ts +85 -85
  380. package/lib/cjs/rpc/core/RpcConstants.js +103 -103
  381. package/lib/cjs/rpc/core/RpcConstants.js.map +1 -1
  382. package/lib/cjs/rpc/core/RpcControl.d.ts +52 -52
  383. package/lib/cjs/rpc/core/RpcControl.js +149 -149
  384. package/lib/cjs/rpc/core/RpcControl.js.map +1 -1
  385. package/lib/cjs/rpc/core/RpcInvocation.d.ts +89 -89
  386. package/lib/cjs/rpc/core/RpcInvocation.js +257 -257
  387. package/lib/cjs/rpc/core/RpcInvocation.js.map +1 -1
  388. package/lib/cjs/rpc/core/RpcMarshaling.d.ts +36 -36
  389. package/lib/cjs/rpc/core/RpcMarshaling.js +153 -153
  390. package/lib/cjs/rpc/core/RpcMarshaling.js.map +1 -1
  391. package/lib/cjs/rpc/core/RpcOperation.d.ts +67 -67
  392. package/lib/cjs/rpc/core/RpcOperation.js +133 -133
  393. package/lib/cjs/rpc/core/RpcOperation.js.map +1 -1
  394. package/lib/cjs/rpc/core/RpcPendingQueue.d.ts +21 -21
  395. package/lib/cjs/rpc/core/RpcPendingQueue.js +94 -94
  396. package/lib/cjs/rpc/core/RpcPendingQueue.js.map +1 -1
  397. package/lib/cjs/rpc/core/RpcProtocol.d.ts +132 -132
  398. package/lib/cjs/rpc/core/RpcProtocol.js +127 -127
  399. package/lib/cjs/rpc/core/RpcProtocol.js.map +1 -1
  400. package/lib/cjs/rpc/core/RpcPush.d.ts +68 -68
  401. package/lib/cjs/rpc/core/RpcPush.js +127 -127
  402. package/lib/cjs/rpc/core/RpcPush.js.map +1 -1
  403. package/lib/cjs/rpc/core/RpcRegistry.d.ts +48 -48
  404. package/lib/cjs/rpc/core/RpcRegistry.js +198 -198
  405. package/lib/cjs/rpc/core/RpcRegistry.js.map +1 -1
  406. package/lib/cjs/rpc/core/RpcRequest.d.ts +186 -186
  407. package/lib/cjs/rpc/core/RpcRequest.js +477 -477
  408. package/lib/cjs/rpc/core/RpcRequest.js.map +1 -1
  409. package/lib/cjs/rpc/core/RpcRequestContext.d.ts +14 -14
  410. package/lib/cjs/rpc/core/RpcRequestContext.js +2 -2
  411. package/lib/cjs/rpc/core/RpcRequestContext.js.map +1 -1
  412. package/lib/cjs/rpc/core/RpcRoutingToken.d.ts +12 -12
  413. package/lib/cjs/rpc/core/RpcRoutingToken.js +23 -23
  414. package/lib/cjs/rpc/core/RpcRoutingToken.js.map +1 -1
  415. package/lib/cjs/rpc/core/RpcSessionInvocation.d.ts +10 -10
  416. package/lib/cjs/rpc/core/RpcSessionInvocation.js +59 -59
  417. package/lib/cjs/rpc/core/RpcSessionInvocation.js.map +1 -1
  418. package/lib/cjs/rpc/web/BentleyCloudRpcManager.d.ts +46 -46
  419. package/lib/cjs/rpc/web/BentleyCloudRpcManager.js +73 -73
  420. package/lib/cjs/rpc/web/BentleyCloudRpcManager.js.map +1 -1
  421. package/lib/cjs/rpc/web/BentleyCloudRpcProtocol.d.ts +33 -33
  422. package/lib/cjs/rpc/web/BentleyCloudRpcProtocol.js +142 -142
  423. package/lib/cjs/rpc/web/BentleyCloudRpcProtocol.js.map +1 -1
  424. package/lib/cjs/rpc/web/OpenAPI.d.ts +139 -139
  425. package/lib/cjs/rpc/web/OpenAPI.js +60 -60
  426. package/lib/cjs/rpc/web/OpenAPI.js.map +1 -1
  427. package/lib/cjs/rpc/web/RpcMultipart.d.ts +31 -31
  428. package/lib/cjs/rpc/web/RpcMultipart.js +45 -45
  429. package/lib/cjs/rpc/web/RpcMultipart.js.map +1 -1
  430. package/lib/cjs/rpc/web/WebAppRpcLogging.d.ts +17 -17
  431. package/lib/cjs/rpc/web/WebAppRpcLogging.js +140 -140
  432. package/lib/cjs/rpc/web/WebAppRpcLogging.js.map +1 -1
  433. package/lib/cjs/rpc/web/WebAppRpcProtocol.d.ts +86 -86
  434. package/lib/cjs/rpc/web/WebAppRpcProtocol.js +116 -116
  435. package/lib/cjs/rpc/web/WebAppRpcProtocol.js.map +1 -1
  436. package/lib/cjs/rpc/web/WebAppRpcRequest.d.ts +71 -71
  437. package/lib/cjs/rpc/web/WebAppRpcRequest.js +374 -374
  438. package/lib/cjs/rpc/web/WebAppRpcRequest.js.map +1 -1
  439. package/lib/cjs/rpc/web/multipart/RpcMultipartParser.d.ts +33 -33
  440. package/lib/cjs/rpc/web/multipart/RpcMultipartParser.js +359 -359
  441. package/lib/cjs/rpc/web/multipart/RpcMultipartParser.js.map +1 -1
  442. package/lib/cjs/tile/B3dmTileIO.d.ts +19 -19
  443. package/lib/cjs/tile/B3dmTileIO.js +66 -66
  444. package/lib/cjs/tile/B3dmTileIO.js.map +1 -1
  445. package/lib/cjs/tile/CompositeTileIO.d.ts +15 -15
  446. package/lib/cjs/tile/CompositeTileIO.js +26 -26
  447. package/lib/cjs/tile/CompositeTileIO.js.map +1 -1
  448. package/lib/cjs/tile/ElementGraphics.d.ts +145 -145
  449. package/lib/cjs/tile/ElementGraphics.js +9 -9
  450. package/lib/cjs/tile/ElementGraphics.js.map +1 -1
  451. package/lib/cjs/tile/GltfTileIO.d.ts +45 -45
  452. package/lib/cjs/tile/GltfTileIO.js +109 -109
  453. package/lib/cjs/tile/GltfTileIO.js.map +1 -1
  454. package/lib/cjs/tile/I3dmTileIO.d.ts +20 -20
  455. package/lib/cjs/tile/I3dmTileIO.js +40 -40
  456. package/lib/cjs/tile/I3dmTileIO.js.map +1 -1
  457. package/lib/cjs/tile/IModelTileIO.d.ts +75 -75
  458. package/lib/cjs/tile/IModelTileIO.js +95 -95
  459. package/lib/cjs/tile/IModelTileIO.js.map +1 -1
  460. package/lib/cjs/tile/PntsTileIO.d.ts +17 -17
  461. package/lib/cjs/tile/PntsTileIO.js +26 -26
  462. package/lib/cjs/tile/PntsTileIO.js.map +1 -1
  463. package/lib/cjs/tile/TileIO.d.ts +66 -66
  464. package/lib/cjs/tile/TileIO.js +118 -118
  465. package/lib/cjs/tile/TileIO.js.map +1 -1
  466. package/lib/cjs/tile/TileMetadata.d.ts +228 -228
  467. package/lib/cjs/tile/TileMetadata.js +676 -676
  468. package/lib/cjs/tile/TileMetadata.js.map +1 -1
  469. package/lib/esm/AmbientOcclusion.d.ts +49 -49
  470. package/lib/esm/AmbientOcclusion.js +52 -52
  471. package/lib/esm/AmbientOcclusion.js.map +1 -1
  472. package/lib/esm/AnalysisStyle.d.ts +134 -134
  473. package/lib/esm/AnalysisStyle.js +159 -159
  474. package/lib/esm/AnalysisStyle.js.map +1 -1
  475. package/lib/esm/AuthorizationClient.d.ts +11 -11
  476. package/lib/esm/AuthorizationClient.js +8 -8
  477. package/lib/esm/AuthorizationClient.js.map +1 -1
  478. package/lib/esm/BackgroundMapProvider.d.ts +51 -51
  479. package/lib/esm/BackgroundMapProvider.js +64 -64
  480. package/lib/esm/BackgroundMapProvider.js.map +1 -1
  481. package/lib/esm/BackgroundMapSettings.d.ts +136 -136
  482. package/lib/esm/BackgroundMapSettings.js +152 -152
  483. package/lib/esm/BackgroundMapSettings.js.map +1 -1
  484. package/lib/esm/Base64EncodedString.d.ts +30 -30
  485. package/lib/esm/Base64EncodedString.js +53 -53
  486. package/lib/esm/Base64EncodedString.js.map +1 -1
  487. package/lib/esm/BlobReader.d.ts +31 -31
  488. package/lib/esm/BlobReader.js +79 -79
  489. package/lib/esm/BlobReader.js.map +1 -1
  490. package/lib/esm/BriefcaseTypes.d.ts +189 -189
  491. package/lib/esm/BriefcaseTypes.js +92 -92
  492. package/lib/esm/BriefcaseTypes.js.map +1 -1
  493. package/lib/esm/Camera.d.ts +42 -42
  494. package/lib/esm/Camera.js +58 -58
  495. package/lib/esm/Camera.js.map +1 -1
  496. package/lib/esm/ChangedElements.d.ts +83 -83
  497. package/lib/esm/ChangedElements.js +18 -18
  498. package/lib/esm/ChangedElements.js.map +1 -1
  499. package/lib/esm/ChangedEntities.d.ts +45 -45
  500. package/lib/esm/ChangedEntities.js +8 -8
  501. package/lib/esm/ChangedEntities.js.map +1 -1
  502. package/lib/esm/ChangesetProps.d.ts +98 -98
  503. package/lib/esm/ChangesetProps.js +19 -19
  504. package/lib/esm/ChangesetProps.js.map +1 -1
  505. package/lib/esm/ClipStyle.d.ts +89 -89
  506. package/lib/esm/ClipStyle.js +118 -118
  507. package/lib/esm/ClipStyle.js.map +1 -1
  508. package/lib/esm/CloudStorage.d.ts +62 -62
  509. package/lib/esm/CloudStorage.js +109 -109
  510. package/lib/esm/CloudStorage.js.map +1 -1
  511. package/lib/esm/CloudStorageTileCache.d.ts +27 -27
  512. package/lib/esm/CloudStorageTileCache.js +62 -62
  513. package/lib/esm/CloudStorageTileCache.js.map +1 -1
  514. package/lib/esm/Code.d.ts +256 -256
  515. package/lib/esm/Code.js +276 -276
  516. package/lib/esm/Code.js.map +1 -1
  517. package/lib/esm/ColorByName.d.ts +161 -161
  518. package/lib/esm/ColorByName.js +166 -166
  519. package/lib/esm/ColorByName.js.map +1 -1
  520. package/lib/esm/ColorDef.d.ts +208 -208
  521. package/lib/esm/ColorDef.js +567 -567
  522. package/lib/esm/ColorDef.js.map +1 -1
  523. package/lib/esm/CommonLoggerCategory.d.ts +18 -18
  524. package/lib/esm/CommonLoggerCategory.js +23 -23
  525. package/lib/esm/CommonLoggerCategory.js.map +1 -1
  526. package/lib/esm/ConcurrentQuery.d.ts +241 -241
  527. package/lib/esm/ConcurrentQuery.js +373 -373
  528. package/lib/esm/ConcurrentQuery.js.map +1 -1
  529. package/lib/esm/ContextRealityModel.d.ts +276 -276
  530. package/lib/esm/ContextRealityModel.js +353 -353
  531. package/lib/esm/ContextRealityModel.js.map +1 -1
  532. package/lib/esm/DisplayStyleSettings.d.ts +584 -584
  533. package/lib/esm/DisplayStyleSettings.js +976 -976
  534. package/lib/esm/DisplayStyleSettings.js.map +1 -1
  535. package/lib/esm/ECSchemaProps.d.ts +39 -39
  536. package/lib/esm/ECSchemaProps.js +8 -8
  537. package/lib/esm/ECSchemaProps.js.map +1 -1
  538. package/lib/esm/ECSqlReader.d.ts +70 -70
  539. package/lib/esm/ECSqlReader.js +275 -275
  540. package/lib/esm/ECSqlReader.js.map +1 -1
  541. package/lib/esm/ECSqlTypes.d.ts +128 -128
  542. package/lib/esm/ECSqlTypes.js +185 -185
  543. package/lib/esm/ECSqlTypes.js.map +1 -1
  544. package/lib/esm/ElementProps.d.ts +476 -476
  545. package/lib/esm/ElementProps.js +92 -92
  546. package/lib/esm/ElementProps.js.map +1 -1
  547. package/lib/esm/EmphasizeElementsProps.d.ts +55 -55
  548. package/lib/esm/EmphasizeElementsProps.js +22 -22
  549. package/lib/esm/EmphasizeElementsProps.js.map +1 -1
  550. package/lib/esm/EntityProps.d.ts +176 -176
  551. package/lib/esm/EntityProps.js +107 -107
  552. package/lib/esm/EntityProps.js.map +1 -1
  553. package/lib/esm/EntityReference.d.ts +51 -51
  554. package/lib/esm/EntityReference.js +52 -52
  555. package/lib/esm/EntityReference.js.map +1 -1
  556. package/lib/esm/Environment.d.ts +61 -61
  557. package/lib/esm/Environment.js +69 -69
  558. package/lib/esm/Environment.js.map +1 -1
  559. package/lib/esm/FeatureGates.d.ts +31 -31
  560. package/lib/esm/FeatureGates.js +51 -51
  561. package/lib/esm/FeatureGates.js.map +1 -1
  562. package/lib/esm/FeatureIndex.d.ts +39 -39
  563. package/lib/esm/FeatureIndex.js +57 -57
  564. package/lib/esm/FeatureIndex.js.map +1 -1
  565. package/lib/esm/FeatureSymbology.d.ts +444 -444
  566. package/lib/esm/FeatureSymbology.js +609 -609
  567. package/lib/esm/FeatureSymbology.js.map +1 -1
  568. package/lib/esm/FeatureTable.d.ts +141 -141
  569. package/lib/esm/FeatureTable.js +272 -272
  570. package/lib/esm/FeatureTable.js.map +1 -1
  571. package/lib/esm/Fonts.d.ts +51 -51
  572. package/lib/esm/Fonts.js +49 -49
  573. package/lib/esm/Fonts.js.map +1 -1
  574. package/lib/esm/Frustum.d.ts +114 -114
  575. package/lib/esm/Frustum.js +288 -288
  576. package/lib/esm/Frustum.js.map +1 -1
  577. package/lib/esm/GeoCoordinateServices.d.ts +119 -119
  578. package/lib/esm/GeoCoordinateServices.js +76 -76
  579. package/lib/esm/GeoCoordinateServices.js.map +1 -1
  580. package/lib/esm/GeometryContainment.d.ts +28 -28
  581. package/lib/esm/GeometryContainment.js +8 -8
  582. package/lib/esm/GeometryContainment.js.map +1 -1
  583. package/lib/esm/GeometryParams.d.ts +130 -130
  584. package/lib/esm/GeometryParams.js +170 -170
  585. package/lib/esm/GeometryParams.js.map +1 -1
  586. package/lib/esm/GeometrySummary.d.ts +45 -45
  587. package/lib/esm/GeometrySummary.js +20 -20
  588. package/lib/esm/GeometrySummary.js.map +1 -1
  589. package/lib/esm/Gradient.d.ts +139 -139
  590. package/lib/esm/Gradient.js +452 -452
  591. package/lib/esm/Gradient.js.map +1 -1
  592. package/lib/esm/GraphicParams.d.ts +58 -58
  593. package/lib/esm/GraphicParams.js +81 -81
  594. package/lib/esm/GraphicParams.js.map +1 -1
  595. package/lib/esm/GroundPlane.d.ts +52 -52
  596. package/lib/esm/GroundPlane.js +60 -60
  597. package/lib/esm/GroundPlane.js.map +1 -1
  598. package/lib/esm/HSLColor.d.ts +20 -20
  599. package/lib/esm/HSLColor.js +28 -28
  600. package/lib/esm/HSLColor.js.map +1 -1
  601. package/lib/esm/HSVColor.d.ts +30 -30
  602. package/lib/esm/HSVColor.js +55 -55
  603. package/lib/esm/HSVColor.js.map +1 -1
  604. package/lib/esm/HiddenLine.d.ts +97 -97
  605. package/lib/esm/HiddenLine.js +159 -159
  606. package/lib/esm/HiddenLine.js.map +1 -1
  607. package/lib/esm/Hilite.d.ts +50 -50
  608. package/lib/esm/Hilite.js +61 -61
  609. package/lib/esm/Hilite.js.map +1 -1
  610. package/lib/esm/IModel.d.ts +359 -359
  611. package/lib/esm/IModel.js +342 -342
  612. package/lib/esm/IModel.js.map +1 -1
  613. package/lib/esm/IModelError.d.ts +36 -36
  614. package/lib/esm/IModelError.js +55 -55
  615. package/lib/esm/IModelError.js.map +1 -1
  616. package/lib/esm/IModelVersion.d.ts +68 -68
  617. package/lib/esm/IModelVersion.js +75 -75
  618. package/lib/esm/IModelVersion.js.map +1 -1
  619. package/lib/esm/Image.d.ts +86 -86
  620. package/lib/esm/Image.js +120 -120
  621. package/lib/esm/Image.js.map +1 -1
  622. package/lib/esm/IpcAppProps.d.ts +141 -124
  623. package/lib/esm/IpcAppProps.d.ts.map +1 -1
  624. package/lib/esm/IpcAppProps.js +19 -15
  625. package/lib/esm/IpcAppProps.js.map +1 -1
  626. package/lib/esm/LightSettings.d.ts +224 -224
  627. package/lib/esm/LightSettings.js +301 -301
  628. package/lib/esm/LightSettings.js.map +1 -1
  629. package/lib/esm/LinePixels.d.ts +34 -34
  630. package/lib/esm/LinePixels.js +39 -39
  631. package/lib/esm/LinePixels.js.map +1 -1
  632. package/lib/esm/Localization.d.ts +111 -111
  633. package/lib/esm/Localization.js +22 -22
  634. package/lib/esm/Localization.js.map +1 -1
  635. package/lib/esm/MapImagerySettings.d.ts +62 -62
  636. package/lib/esm/MapImagerySettings.js +76 -76
  637. package/lib/esm/MapImagerySettings.js.map +1 -1
  638. package/lib/esm/MapLayerSettings.d.ts +272 -272
  639. package/lib/esm/MapLayerSettings.js +403 -403
  640. package/lib/esm/MapLayerSettings.js.map +1 -1
  641. package/lib/esm/MassProperties.d.ts +64 -64
  642. package/lib/esm/MassProperties.js +20 -20
  643. package/lib/esm/MassProperties.js.map +1 -1
  644. package/lib/esm/MaterialProps.d.ts +118 -118
  645. package/lib/esm/MaterialProps.js +20 -20
  646. package/lib/esm/MaterialProps.js.map +1 -1
  647. package/lib/esm/ModelClipGroup.d.ts +67 -67
  648. package/lib/esm/ModelClipGroup.js +93 -93
  649. package/lib/esm/ModelClipGroup.js.map +1 -1
  650. package/lib/esm/ModelGeometryChanges.d.ts +107 -107
  651. package/lib/esm/ModelGeometryChanges.js +80 -80
  652. package/lib/esm/ModelGeometryChanges.js.map +1 -1
  653. package/lib/esm/ModelProps.d.ts +67 -67
  654. package/lib/esm/ModelProps.js +8 -8
  655. package/lib/esm/ModelProps.js.map +1 -1
  656. package/lib/esm/NativeAppProps.d.ts +122 -122
  657. package/lib/esm/NativeAppProps.js +27 -27
  658. package/lib/esm/NativeAppProps.js.map +1 -1
  659. package/lib/esm/OctEncodedNormal.d.ts +33 -33
  660. package/lib/esm/OctEncodedNormal.js +93 -93
  661. package/lib/esm/OctEncodedNormal.js.map +1 -1
  662. package/lib/esm/PlanProjectionSettings.d.ts +47 -47
  663. package/lib/esm/PlanProjectionSettings.js +59 -59
  664. package/lib/esm/PlanProjectionSettings.js.map +1 -1
  665. package/lib/esm/PlanarClipMask.d.ts +177 -177
  666. package/lib/esm/PlanarClipMask.js +132 -132
  667. package/lib/esm/PlanarClipMask.js.map +1 -1
  668. package/lib/esm/QPoint.d.ts +479 -479
  669. package/lib/esm/QPoint.js +815 -815
  670. package/lib/esm/QPoint.js.map +1 -1
  671. package/lib/esm/RealityDataAccessProps.d.ts +41 -41
  672. package/lib/esm/RealityDataAccessProps.js +16 -16
  673. package/lib/esm/RealityDataAccessProps.js.map +1 -1
  674. package/lib/esm/RealityModelDisplaySettings.d.ts +118 -118
  675. package/lib/esm/RealityModelDisplaySettings.js +109 -109
  676. package/lib/esm/RealityModelDisplaySettings.js.map +1 -1
  677. package/lib/esm/Render.d.ts +89 -89
  678. package/lib/esm/Render.js +165 -165
  679. package/lib/esm/Render.js.map +1 -1
  680. package/lib/esm/RenderMaterial.d.ts +58 -58
  681. package/lib/esm/RenderMaterial.js +72 -72
  682. package/lib/esm/RenderMaterial.js.map +1 -1
  683. package/lib/esm/RenderSchedule.d.ts +541 -541
  684. package/lib/esm/RenderSchedule.js +997 -997
  685. package/lib/esm/RenderTexture.d.ts +70 -70
  686. package/lib/esm/RenderTexture.js +55 -55
  687. package/lib/esm/RenderTexture.js.map +1 -1
  688. package/lib/esm/RgbColor.d.ts +47 -47
  689. package/lib/esm/RgbColor.js +73 -73
  690. package/lib/esm/RgbColor.js.map +1 -1
  691. package/lib/esm/RpcInterface.d.ts +33 -33
  692. package/lib/esm/RpcInterface.js +133 -133
  693. package/lib/esm/RpcInterface.js.map +1 -1
  694. package/lib/esm/RpcManager.d.ts +40 -40
  695. package/lib/esm/RpcManager.js +51 -51
  696. package/lib/esm/RpcManager.js.map +1 -1
  697. package/lib/esm/SessionProps.d.ts +16 -16
  698. package/lib/esm/SessionProps.js +8 -8
  699. package/lib/esm/SessionProps.js.map +1 -1
  700. package/lib/esm/SkyBox.d.ts +215 -215
  701. package/lib/esm/SkyBox.js +203 -203
  702. package/lib/esm/SkyBox.js.map +1 -1
  703. package/lib/esm/Snapping.d.ts +49 -49
  704. package/lib/esm/Snapping.js +8 -8
  705. package/lib/esm/Snapping.js.map +1 -1
  706. package/lib/esm/SolarCalculate.d.ts +27 -27
  707. package/lib/esm/SolarCalculate.js +204 -204
  708. package/lib/esm/SolarCalculate.js.map +1 -1
  709. package/lib/esm/SolarShadows.d.ts +35 -35
  710. package/lib/esm/SolarShadows.js +58 -58
  711. package/lib/esm/SolarShadows.js.map +1 -1
  712. package/lib/esm/SpatialClassification.d.ts +208 -208
  713. package/lib/esm/SpatialClassification.js +334 -334
  714. package/lib/esm/SpatialClassification.js.map +1 -1
  715. package/lib/esm/SubCategoryAppearance.d.ts +91 -91
  716. package/lib/esm/SubCategoryAppearance.js +92 -92
  717. package/lib/esm/SubCategoryAppearance.js.map +1 -1
  718. package/lib/esm/SubCategoryOverride.d.ts +46 -46
  719. package/lib/esm/SubCategoryOverride.js +100 -100
  720. package/lib/esm/SubCategoryOverride.js.map +1 -1
  721. package/lib/esm/TerrainSettings.d.ts +82 -82
  722. package/lib/esm/TerrainSettings.js +98 -98
  723. package/lib/esm/TerrainSettings.js.map +1 -1
  724. package/lib/esm/TextureMapping.d.ts +101 -101
  725. package/lib/esm/TextureMapping.js +170 -170
  726. package/lib/esm/TextureMapping.js.map +1 -1
  727. package/lib/esm/TextureProps.d.ts +65 -65
  728. package/lib/esm/TextureProps.js +25 -25
  729. package/lib/esm/TextureProps.js.map +1 -1
  730. package/lib/esm/ThematicDisplay.d.ts +230 -230
  731. package/lib/esm/ThematicDisplay.js +337 -337
  732. package/lib/esm/ThematicDisplay.js.map +1 -1
  733. package/lib/esm/Thumbnail.d.ts +26 -26
  734. package/lib/esm/Thumbnail.js +8 -8
  735. package/lib/esm/Thumbnail.js.map +1 -1
  736. package/lib/esm/TileProps.d.ts +82 -82
  737. package/lib/esm/TileProps.js +25 -25
  738. package/lib/esm/TileProps.js.map +1 -1
  739. package/lib/esm/Tween.d.ts +191 -191
  740. package/lib/esm/Tween.js +565 -565
  741. package/lib/esm/Tween.js.map +1 -1
  742. package/lib/esm/TxnAction.d.ts +21 -21
  743. package/lib/esm/TxnAction.js +26 -26
  744. package/lib/esm/TxnAction.js.map +1 -1
  745. package/lib/esm/ViewDetails.d.ts +125 -125
  746. package/lib/esm/ViewDetails.js +153 -153
  747. package/lib/esm/ViewDetails.js.map +1 -1
  748. package/lib/esm/ViewFlags.d.ts +291 -291
  749. package/lib/esm/ViewFlags.js +364 -364
  750. package/lib/esm/ViewFlags.js.map +1 -1
  751. package/lib/esm/ViewProps.d.ts +205 -205
  752. package/lib/esm/ViewProps.js +8 -8
  753. package/lib/esm/ViewProps.js.map +1 -1
  754. package/lib/esm/WhiteOnWhiteReversalSettings.d.ts +36 -36
  755. package/lib/esm/WhiteOnWhiteReversalSettings.js +33 -33
  756. package/lib/esm/WhiteOnWhiteReversalSettings.js.map +1 -1
  757. package/lib/esm/core-common.d.ts +242 -242
  758. package/lib/esm/core-common.js +246 -246
  759. package/lib/esm/core-common.js.map +1 -1
  760. package/lib/esm/domains/FunctionalElementProps.d.ts +11 -11
  761. package/lib/esm/domains/FunctionalElementProps.js +8 -8
  762. package/lib/esm/domains/FunctionalElementProps.js.map +1 -1
  763. package/lib/esm/domains/GenericElementProps.d.ts +18 -18
  764. package/lib/esm/domains/GenericElementProps.js +8 -8
  765. package/lib/esm/domains/GenericElementProps.js.map +1 -1
  766. package/lib/esm/geometry/AdditionalTransform.d.ts +84 -84
  767. package/lib/esm/geometry/AdditionalTransform.js +80 -80
  768. package/lib/esm/geometry/AdditionalTransform.js.map +1 -1
  769. package/lib/esm/geometry/AreaPattern.d.ts +82 -82
  770. package/lib/esm/geometry/AreaPattern.js +201 -201
  771. package/lib/esm/geometry/AreaPattern.js.map +1 -1
  772. package/lib/esm/geometry/BoundingSphere.d.ts +14 -14
  773. package/lib/esm/geometry/BoundingSphere.js +26 -26
  774. package/lib/esm/geometry/BoundingSphere.js.map +1 -1
  775. package/lib/esm/geometry/Cartographic.d.ts +137 -137
  776. package/lib/esm/geometry/Cartographic.js +340 -340
  777. package/lib/esm/geometry/Cartographic.js.map +1 -1
  778. package/lib/esm/geometry/CoordinateReferenceSystem.d.ts +269 -269
  779. package/lib/esm/geometry/CoordinateReferenceSystem.js +254 -254
  780. package/lib/esm/geometry/CoordinateReferenceSystem.js.map +1 -1
  781. package/lib/esm/geometry/ElementGeometry.d.ts +402 -402
  782. package/lib/esm/geometry/ElementGeometry.js +1716 -1716
  783. package/lib/esm/geometry/ElementGeometry.js.map +1 -1
  784. package/lib/esm/geometry/ElementGeometryFB.d.ts +2372 -2372
  785. package/lib/esm/geometry/ElementGeometryFB.js +3811 -3811
  786. package/lib/esm/geometry/ElementGeometryFB.js.map +1 -1
  787. package/lib/esm/geometry/FrustumPlanes.d.ts +32 -32
  788. package/lib/esm/geometry/FrustumPlanes.js +128 -128
  789. package/lib/esm/geometry/FrustumPlanes.js.map +1 -1
  790. package/lib/esm/geometry/GeodeticDatum.d.ts +409 -409
  791. package/lib/esm/geometry/GeodeticDatum.js +390 -390
  792. package/lib/esm/geometry/GeodeticDatum.js.map +1 -1
  793. package/lib/esm/geometry/GeodeticEllipsoid.d.ts +72 -72
  794. package/lib/esm/geometry/GeodeticEllipsoid.js +68 -68
  795. package/lib/esm/geometry/GeodeticEllipsoid.js.map +1 -1
  796. package/lib/esm/geometry/GeometryStream.d.ts +347 -347
  797. package/lib/esm/geometry/GeometryStream.js +464 -464
  798. package/lib/esm/geometry/GeometryStream.js.map +1 -1
  799. package/lib/esm/geometry/ImageGraphic.d.ts +74 -74
  800. package/lib/esm/geometry/ImageGraphic.js +93 -93
  801. package/lib/esm/geometry/ImageGraphic.js.map +1 -1
  802. package/lib/esm/geometry/LineStyle.d.ts +71 -71
  803. package/lib/esm/geometry/LineStyle.js +126 -126
  804. package/lib/esm/geometry/LineStyle.js.map +1 -1
  805. package/lib/esm/geometry/Placement.d.ts +95 -95
  806. package/lib/esm/geometry/Placement.js +126 -126
  807. package/lib/esm/geometry/Placement.js.map +1 -1
  808. package/lib/esm/geometry/Projection.d.ts +251 -251
  809. package/lib/esm/geometry/Projection.js +192 -192
  810. package/lib/esm/geometry/Projection.js.map +1 -1
  811. package/lib/esm/geometry/TextString.d.ts +55 -55
  812. package/lib/esm/geometry/TextString.js +61 -61
  813. package/lib/esm/geometry/TextString.js.map +1 -1
  814. package/lib/esm/ipc/IpcSession.d.ts +23 -23
  815. package/lib/esm/ipc/IpcSession.js +23 -23
  816. package/lib/esm/ipc/IpcSession.js.map +1 -1
  817. package/lib/esm/ipc/IpcSocket.d.ts +96 -96
  818. package/lib/esm/ipc/IpcSocket.js +12 -12
  819. package/lib/esm/ipc/IpcSocket.js.map +1 -1
  820. package/lib/esm/ipc/IpcWebSocket.d.ts +61 -61
  821. package/lib/esm/ipc/IpcWebSocket.js +145 -145
  822. package/lib/esm/ipc/IpcWebSocket.js.map +1 -1
  823. package/lib/esm/ipc/IpcWebSocketTransport.d.ts +15 -15
  824. package/lib/esm/ipc/IpcWebSocketTransport.js +154 -154
  825. package/lib/esm/ipc/IpcWebSocketTransport.js.map +1 -1
  826. package/lib/esm/rpc/DevToolsRpcInterface.d.ts +32 -32
  827. package/lib/esm/rpc/DevToolsRpcInterface.js +44 -44
  828. package/lib/esm/rpc/DevToolsRpcInterface.js.map +1 -1
  829. package/lib/esm/rpc/IModelReadRpcInterface.d.ts +97 -97
  830. package/lib/esm/rpc/IModelReadRpcInterface.js +114 -114
  831. package/lib/esm/rpc/IModelReadRpcInterface.js.map +1 -1
  832. package/lib/esm/rpc/IModelTileRpcInterface.d.ts +61 -61
  833. package/lib/esm/rpc/IModelTileRpcInterface.js +92 -92
  834. package/lib/esm/rpc/IModelTileRpcInterface.js.map +1 -1
  835. package/lib/esm/rpc/SnapshotIModelRpcInterface.d.ts +23 -23
  836. package/lib/esm/rpc/SnapshotIModelRpcInterface.js +44 -44
  837. package/lib/esm/rpc/SnapshotIModelRpcInterface.js.map +1 -1
  838. package/lib/esm/rpc/TestRpcManager.d.ts +20 -20
  839. package/lib/esm/rpc/TestRpcManager.js +35 -35
  840. package/lib/esm/rpc/TestRpcManager.js.map +1 -1
  841. package/lib/esm/rpc/WipRpcInterface.d.ts +29 -29
  842. package/lib/esm/rpc/WipRpcInterface.js +36 -36
  843. package/lib/esm/rpc/WipRpcInterface.js.map +1 -1
  844. package/lib/esm/rpc/core/RpcConfiguration.d.ts +111 -111
  845. package/lib/esm/rpc/core/RpcConfiguration.js +185 -185
  846. package/lib/esm/rpc/core/RpcConfiguration.js.map +1 -1
  847. package/lib/esm/rpc/core/RpcConstants.d.ts +85 -85
  848. package/lib/esm/rpc/core/RpcConstants.js +100 -100
  849. package/lib/esm/rpc/core/RpcConstants.js.map +1 -1
  850. package/lib/esm/rpc/core/RpcControl.d.ts +52 -52
  851. package/lib/esm/rpc/core/RpcControl.js +142 -142
  852. package/lib/esm/rpc/core/RpcControl.js.map +1 -1
  853. package/lib/esm/rpc/core/RpcInvocation.d.ts +89 -89
  854. package/lib/esm/rpc/core/RpcInvocation.js +253 -253
  855. package/lib/esm/rpc/core/RpcInvocation.js.map +1 -1
  856. package/lib/esm/rpc/core/RpcMarshaling.d.ts +36 -36
  857. package/lib/esm/rpc/core/RpcMarshaling.js +149 -149
  858. package/lib/esm/rpc/core/RpcMarshaling.js.map +1 -1
  859. package/lib/esm/rpc/core/RpcOperation.d.ts +67 -67
  860. package/lib/esm/rpc/core/RpcOperation.js +128 -128
  861. package/lib/esm/rpc/core/RpcOperation.js.map +1 -1
  862. package/lib/esm/rpc/core/RpcPendingQueue.d.ts +21 -21
  863. package/lib/esm/rpc/core/RpcPendingQueue.js +90 -90
  864. package/lib/esm/rpc/core/RpcPendingQueue.js.map +1 -1
  865. package/lib/esm/rpc/core/RpcProtocol.d.ts +132 -132
  866. package/lib/esm/rpc/core/RpcProtocol.js +123 -123
  867. package/lib/esm/rpc/core/RpcProtocol.js.map +1 -1
  868. package/lib/esm/rpc/core/RpcPush.d.ts +68 -68
  869. package/lib/esm/rpc/core/RpcPush.js +119 -119
  870. package/lib/esm/rpc/core/RpcPush.js.map +1 -1
  871. package/lib/esm/rpc/core/RpcRegistry.d.ts +48 -48
  872. package/lib/esm/rpc/core/RpcRegistry.js +194 -194
  873. package/lib/esm/rpc/core/RpcRegistry.js.map +1 -1
  874. package/lib/esm/rpc/core/RpcRequest.d.ts +186 -186
  875. package/lib/esm/rpc/core/RpcRequest.js +472 -472
  876. package/lib/esm/rpc/core/RpcRequest.js.map +1 -1
  877. package/lib/esm/rpc/core/RpcRequestContext.d.ts +14 -14
  878. package/lib/esm/rpc/core/RpcRequestContext.js +1 -1
  879. package/lib/esm/rpc/core/RpcRequestContext.js.map +1 -1
  880. package/lib/esm/rpc/core/RpcRoutingToken.d.ts +12 -12
  881. package/lib/esm/rpc/core/RpcRoutingToken.js +19 -19
  882. package/lib/esm/rpc/core/RpcRoutingToken.js.map +1 -1
  883. package/lib/esm/rpc/core/RpcSessionInvocation.d.ts +10 -10
  884. package/lib/esm/rpc/core/RpcSessionInvocation.js +55 -55
  885. package/lib/esm/rpc/core/RpcSessionInvocation.js.map +1 -1
  886. package/lib/esm/rpc/web/BentleyCloudRpcManager.d.ts +46 -46
  887. package/lib/esm/rpc/web/BentleyCloudRpcManager.js +68 -68
  888. package/lib/esm/rpc/web/BentleyCloudRpcManager.js.map +1 -1
  889. package/lib/esm/rpc/web/BentleyCloudRpcProtocol.d.ts +33 -33
  890. package/lib/esm/rpc/web/BentleyCloudRpcProtocol.js +138 -138
  891. package/lib/esm/rpc/web/BentleyCloudRpcProtocol.js.map +1 -1
  892. package/lib/esm/rpc/web/OpenAPI.d.ts +139 -139
  893. package/lib/esm/rpc/web/OpenAPI.js +56 -56
  894. package/lib/esm/rpc/web/OpenAPI.js.map +1 -1
  895. package/lib/esm/rpc/web/RpcMultipart.d.ts +31 -31
  896. package/lib/esm/rpc/web/RpcMultipart.js +41 -41
  897. package/lib/esm/rpc/web/RpcMultipart.js.map +1 -1
  898. package/lib/esm/rpc/web/WebAppRpcLogging.d.ts +17 -17
  899. package/lib/esm/rpc/web/WebAppRpcLogging.js +136 -136
  900. package/lib/esm/rpc/web/WebAppRpcLogging.js.map +1 -1
  901. package/lib/esm/rpc/web/WebAppRpcProtocol.d.ts +86 -86
  902. package/lib/esm/rpc/web/WebAppRpcProtocol.js +112 -112
  903. package/lib/esm/rpc/web/WebAppRpcProtocol.js.map +1 -1
  904. package/lib/esm/rpc/web/WebAppRpcRequest.d.ts +71 -71
  905. package/lib/esm/rpc/web/WebAppRpcRequest.js +370 -370
  906. package/lib/esm/rpc/web/WebAppRpcRequest.js.map +1 -1
  907. package/lib/esm/rpc/web/multipart/RpcMultipartParser.d.ts +33 -33
  908. package/lib/esm/rpc/web/multipart/RpcMultipartParser.js +355 -355
  909. package/lib/esm/rpc/web/multipart/RpcMultipartParser.js.map +1 -1
  910. package/lib/esm/tile/B3dmTileIO.d.ts +19 -19
  911. package/lib/esm/tile/B3dmTileIO.js +62 -62
  912. package/lib/esm/tile/B3dmTileIO.js.map +1 -1
  913. package/lib/esm/tile/CompositeTileIO.d.ts +15 -15
  914. package/lib/esm/tile/CompositeTileIO.js +22 -22
  915. package/lib/esm/tile/CompositeTileIO.js.map +1 -1
  916. package/lib/esm/tile/ElementGraphics.d.ts +145 -145
  917. package/lib/esm/tile/ElementGraphics.js +8 -8
  918. package/lib/esm/tile/ElementGraphics.js.map +1 -1
  919. package/lib/esm/tile/GltfTileIO.d.ts +45 -45
  920. package/lib/esm/tile/GltfTileIO.js +105 -105
  921. package/lib/esm/tile/GltfTileIO.js.map +1 -1
  922. package/lib/esm/tile/I3dmTileIO.d.ts +20 -20
  923. package/lib/esm/tile/I3dmTileIO.js +36 -36
  924. package/lib/esm/tile/I3dmTileIO.js.map +1 -1
  925. package/lib/esm/tile/IModelTileIO.d.ts +75 -75
  926. package/lib/esm/tile/IModelTileIO.js +90 -90
  927. package/lib/esm/tile/IModelTileIO.js.map +1 -1
  928. package/lib/esm/tile/PntsTileIO.d.ts +17 -17
  929. package/lib/esm/tile/PntsTileIO.js +22 -22
  930. package/lib/esm/tile/PntsTileIO.js.map +1 -1
  931. package/lib/esm/tile/TileIO.d.ts +66 -66
  932. package/lib/esm/tile/TileIO.js +110 -110
  933. package/lib/esm/tile/TileIO.js.map +1 -1
  934. package/lib/esm/tile/TileMetadata.d.ts +228 -228
  935. package/lib/esm/tile/TileMetadata.js +661 -661
  936. package/lib/esm/tile/TileMetadata.js.map +1 -1
  937. package/package.json +7 -7
@@ -1 +1 @@
1
- {"version":3,"file":"ContextRealityModel.js","sourceRoot":"","sources":["../../src/ContextRealityModel.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,sDAAsD;AACtD,yDAA+E;AAC/E,qDAAmG;AACnG,mEAAqF;AACrF,+EAAsG;AAatG;;GAEG;AACH,IAAY,mBAyBX;AAzBD,WAAY,mBAAmB;IAC7B;;;;;OAKG;IACH,gDAAyB,CAAA;IACzB;;;;;OAKG;IACH,kDAA2B,CAAA;IAC3B;;;;OAIG;IACH,oDAA6B,CAAA;IAC7B;;OAEG;IACH,wDAAiC,CAAA;AACnC,CAAC,EAzBW,mBAAmB,GAAnB,2BAAmB,KAAnB,2BAAmB,QAyB9B;AAED;;GAEG;AACH,IAAY,iBASX;AATD,WAAY,iBAAiB;IAC3B;;SAEK;IACL,8CAAyB,CAAA;IACzB;;MAEE;IACF,gCAAW,CAAA;AACb,CAAC,EATW,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QAS5B;AAED;;GAEG;AACH,WAAiB,iBAAiB;IAChC;;;;OAIG;IACH,SAAgB,OAAO,CAAC,UAAkB;QACxC,IAAI,MAAM,GAAG,iBAAiB,CAAC,UAAU,CAAC;QAC1C,IAAI,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC;YAC7B,MAAM,GAAG,iBAAiB,CAAC,GAAG,CAAC;QACjC,OAAO,MAAM,CAAC;IAChB,CAAC;IALe,yBAAO,UAKtB,CAAA;AACH,CAAC,EAZgB,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QAYjC;AAuBD;;WAEW;AACX,IAAiB,oBAAoB,CAepC;AAfD,WAAiB,oBAAoB;IACnC,wFAAwF;IACxF,SAAgB,eAAe,CAAC,WAAiC;QAC/D,OAAO,GAAG,WAAW,CAAC,QAAQ,IAAI,WAAW,CAAC,MAAM,IAAI,WAAW,CAAC,EAAE,IAAI,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,OAAO,EAAE,CAAC;IACnG,CAAC;IAFe,oCAAe,kBAE9B,CAAA;IACD,8GAA8G;IAC9G,SAAgB,OAAO,CAAC,IAA0B,EAAE,IAA0B;QAC5E,IAAI,CAAC,IAAI,CAAC,QAAQ,KAAK,mBAAmB,CAAC,cAAc,CAAC,IAAI,IAAI,CAAC,QAAQ,KAAK,mBAAmB,CAAC,cAAc;YAChH,OAAO,IAAI,CAAC,CAAC,2DAA2D;QAC1E,IAAI,CAAC,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC,EAAE;YAC/F,gGAAgG;YAChG,OAAO,IAAI,CAAC;SACb;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IARe,4BAAO,UAQtB,CAAA;AACH,CAAC,EAfgB,oBAAoB,GAApB,4BAAoB,KAApB,4BAAoB,QAepC;AA2CD,cAAc;AACd,IAAiB,wBAAwB,CA0CxC;AA1CD,WAAiB,wBAAwB;IACvC,sCAAsC;IACtC,SAAgB,KAAK,CAAC,KAA+B;;QACnD,qFAAqF;QACrF,kHAAkH;QAClH,MAAM,MAAM,GAA6B,EAAE,UAAU,EAAE,MAAA,KAAK,CAAC,UAAU,mCAAI,EAAE,EAAE,CAAC;QAEhF,IAAI,KAAK,CAAC,WAAW;YACnB,MAAM,CAAC,WAAW,GAAG,EAAE,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;QAEhD,IAAI,KAAK,CAAC,IAAI;YACZ,MAAM,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;QAE3B,IAAI,KAAK,CAAC,aAAa;YACrB,MAAM,CAAC,aAAa,GAAG,KAAK,CAAC,aAAa,CAAC;QAE7C,IAAI,KAAK,CAAC,WAAW;YACnB,MAAM,CAAC,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC;QAEzC,IAAI,KAAK,CAAC,WAAW;YACnB,MAAM,CAAC,WAAW,GAAG,EAAE,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;QAEhD,IAAI,KAAK,CAAC,mBAAmB,EAAE;YAC7B,MAAM,CAAC,mBAAmB,GAAG,EAAE,GAAG,KAAK,CAAC,mBAAmB,EAAE,CAAC;YAC9D,IAAI,KAAK,CAAC,mBAAmB,CAAC,GAAG;gBAC/B,MAAM,CAAC,mBAAmB,CAAC,GAAG,GAAG,EAAE,GAAG,KAAK,CAAC,mBAAmB,CAAC,GAAG,EAAE,CAAC;SACzE;QAED,IAAI,KAAK,CAAC,eAAe,EAAE;YACzB,MAAM,CAAC,eAAe,GAAG,EAAE,GAAG,KAAK,CAAC,eAAe,EAAE,CAAC;YACtD,IAAI,KAAK,CAAC,eAAe,CAAC,UAAU;gBAClC,MAAM,CAAC,eAAe,CAAC,UAAU,GAAG,EAAE,GAAG,MAAM,CAAC,eAAe,CAAC,UAAU,EAAE,CAAC;SAChF;QAED,IAAI,KAAK,CAAC,cAAc;YACtB,MAAM,CAAC,cAAc,GAAG,EAAE,GAAG,KAAK,CAAC,cAAc,EAAE,CAAC;QAEtD,IAAI,KAAK,CAAC,WAAW;YACnB,MAAM,CAAC,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,GAAG,OAAO,EAAE,GAAG,CAAC,EAAE,KAAK,EAAE,EAAE,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QAEjG,OAAO,MAAM,CAAC;IAChB,CAAC;IAvCe,8BAAK,QAuCpB,CAAA;AACH,CAAC,EA1CgB,wBAAwB,GAAxB,gCAAwB,KAAxB,gCAAwB,QA0CxC;AAED;;;;;GAKG;AACH,MAAa,mBAAmB;IAkC9B;;OAEG;IACH,YAAmB,KAA+B;;QAZlD,6EAA6E;QAC7D,4BAAuB,GAAG,IAAI,sBAAO,EAAyF,CAAC;QAC/I,0EAA0E;QAC1D,iCAA4B,GAAG,IAAI,sBAAO,EAAqF,CAAC;QAChJ;;WAEG;QACa,6BAAwB,GAAG,IAAI,sBAAO,EAAkF,CAAC;QAMvI,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC;QACrC,IAAI,CAAC,IAAI,GAAG,MAAA,KAAK,CAAC,IAAI,mCAAI,EAAE,CAAC;QAC7B,IAAI,CAAC,GAAG,GAAG,MAAA,KAAK,CAAC,UAAU,mCAAI,EAAE,CAAC;QAClC,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC;QACrC,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC,aAAa,CAAC;QACzC,IAAI,CAAC,WAAW,GAAG,MAAA,KAAK,CAAC,WAAW,mCAAI,EAAE,CAAC;QAC3C,IAAI,CAAC,oBAAoB,GAAG,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC,oCAAiB,CAAC,QAAQ,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC1H,IAAI,CAAC,gBAAgB,GAAG,yDAA2B,CAAC,QAAQ,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;QAEpF,IAAI,KAAK,CAAC,cAAc,IAAI,KAAK,CAAC,cAAc,CAAC,IAAI,KAAK,mCAAkB,CAAC,IAAI;YAC/E,IAAI,CAAC,eAAe,GAAG,uCAAsB,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QAE/E,IAAI,KAAK,CAAC,WAAW;YACnB,IAAI,CAAC,WAAW,GAAG,IAAI,0CAAkB,CAAC,KAAK,CAAC,CAAC;IACrD,CAAC;IAED,gGAAgG;IAChG,IAAW,sBAAsB;QAC/B,OAAO,IAAI,CAAC,eAAe,CAAC;IAC9B,CAAC;IACD,IAAW,sBAAsB,CAAC,QAA4C;QAC5E,IAAI,CAAC,uBAAuB,CAAC,UAAU,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QACxD,IAAI,CAAC,QAAQ;YACX,OAAO,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC;;YAElC,IAAI,CAAC,MAAM,CAAC,cAAc,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC;QAEjD,IAAI,CAAC,eAAe,GAAG,QAAQ,CAAC;IAClC,CAAC;IAED,2KAA2K;IAC3K,IAAW,mBAAmB;QAC5B,OAAO,IAAI,CAAC,oBAAoB,CAAC;IACnC,CAAC;IACD,IAAW,mBAAmB,CAAC,SAAwC;QACrE,IAAI,CAAC,4BAA4B,CAAC,UAAU,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QAC9D,IAAI,CAAC,SAAS;YACZ,OAAO,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAAC;;YAEvC,IAAI,CAAC,MAAM,CAAC,mBAAmB,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC;QAEvD,IAAI,CAAC,oBAAoB,GAAG,SAAS,CAAC;IACxC,CAAC;IAED;;OAEG;IACH,IAAW,eAAe;QACxB,OAAO,IAAI,CAAC,gBAAgB,CAAC;IAC/B,CAAC;IACD,IAAW,eAAe,CAAC,QAAqC;QAC9D,IAAI,CAAC,wBAAwB,CAAC,UAAU,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QACzD,IAAI,CAAC,MAAM,CAAC,eAAe,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC;QAChD,IAAI,CAAC,gBAAgB,GAAG,QAAQ,CAAC;IACnC,CAAC;IAED,qDAAqD;IAC9C,MAAM;QACX,OAAO,wBAAwB,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACrD,CAAC;IAED,6EAA6E;IACtE,iBAAiB,CAAC,IAAY,EAAE,GAAW;QAChD,OAAO,IAAI,CAAC,IAAI,KAAK,IAAI,IAAI,IAAI,CAAC,GAAG,KAAK,GAAG,CAAC;IAChD,CAAC;CACF;AAxGD,kDAwGC;AAaD;;;;;GAKG;AACH,MAAa,oBAAoB;IAe/B;;;;;OAKG;IACH,YAAmB,SAAwC,EAAE,yBAAoF;QAlBhI,YAAO,GAA0B,EAAE,CAAC;QACrD,6HAA6H;QAC7G,4BAAuB,GAAG,IAAI,sBAAO,EAAyF,CAAC;QAC/I,0HAA0H;QAC1G,iCAA4B,GAAG,IAAI,sBAAO,EAAqF,CAAC;QAChJ;;WAEG;QACa,6BAAwB,GAAG,IAAI,sBAAO,EAAkF,CAAC;QACzI,6FAA6F;QAC7E,cAAS,GAAG,IAAI,sBAAO,EAAuG,CAAC;QAS7I,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAC5B,IAAI,CAAC,YAAY,GAAG,yBAAyB,aAAzB,yBAAyB,cAAzB,yBAAyB,GAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,mBAAmB,CAAC,KAAK,CAAC,CAAC,CAAC;QAE7F,MAAM,MAAM,GAAG,SAAS,CAAC,oBAAoB,CAAC;QAC9C,IAAI,MAAM;YACR,KAAK,MAAM,KAAK,IAAI,MAAM;gBACxB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;IACjD,CAAC;IAED,4CAA4C;IAC5C,IAAW,MAAM;QACf,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED;;;OAGG;IACI,GAAG,CAAC,KAA+B;QACxC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,oBAAoB;YACvC,IAAI,CAAC,UAAU,CAAC,oBAAoB,GAAG,EAAE,CAAC;QAE5C,KAAK,GAAG,wBAAwB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC9C,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAEtC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QAE5C,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACzB,IAAI,CAAC,UAAU,CAAC,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAEjD,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;OAGG;IACI,MAAM,CAAC,KAA0B;QACtC,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC1C,IAAI,CAAC,CAAC,KAAK,KAAK;YACd,OAAO,KAAK,CAAC;QAEf,IAAA,qBAAM,EAAC,SAAS,KAAK,IAAI,CAAC,UAAU,CAAC,oBAAoB,CAAC,CAAC;QAC3D,IAAA,qBAAM,EAAC,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC;QAE5D,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;QAC/B,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;QAE5C,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAC9B,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC;YAC1B,IAAI,CAAC,UAAU,CAAC,oBAAoB,GAAG,SAAS,CAAC;;YAEjD,IAAI,CAAC,UAAU,CAAC,oBAAoB,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAExD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,+CAA+C;IACxC,KAAK;QACV,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE;YAC/B,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;YAC/B,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;SAC7C;QAED,IAAI,CAAC,UAAU,CAAC,oBAAoB,GAAG,SAAS,CAAC;QACjD,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;IAC1B,CAAC;IAED;;;;;;OAMG;IACI,OAAO,CAAC,SAA8B,EAAE,WAAqC;QAClF,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAC9C,IAAI,CAAC,CAAC,KAAK,KAAK;YACd,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;QAE9D,IAAA,qBAAM,EAAC,SAAS,KAAK,IAAI,CAAC,UAAU,CAAC,oBAAoB,CAAC,CAAC;QAC3D,IAAA,qBAAM,EAAC,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC;QAE5D,WAAW,GAAG,wBAAwB,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QAC1D,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;QAE5C,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QAC5C,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;QAEnC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;QAC5B,IAAI,CAAC,UAAU,CAAC,oBAAoB,CAAC,KAAK,CAAC,GAAG,WAAW,CAAC;QAE1D,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;;OAKG;IACI,MAAM,CAAC,QAA6B,EAAE,WAA8C;QACzF,MAAM,KAAK,GAAG;YACZ,GAAG,QAAQ,CAAC,MAAM,EAAE;YACpB,GAAG,WAAW;SACf,CAAC;QAEF,uGAAuG;QACvG,IAAI,SAAS,KAAK,KAAK,CAAC,UAAU;YAChC,KAAK,CAAC,UAAU,GAAG,QAAQ,CAAC,GAAG,CAAC;QAElC,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IACvC,CAAC;IAEO,WAAW,CAAC,KAA+B;QACjD,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;QACvC,6DAA6D;QAC7D,KAAK,CAAC,uBAAuB,CAAC,WAAW,CAAC,IAAI,CAAC,2BAA2B,EAAE,IAAI,CAAC,CAAC;QAClF,6DAA6D;QAC7D,KAAK,CAAC,4BAA4B,CAAC,WAAW,CAAC,IAAI,CAAC,gCAAgC,EAAE,IAAI,CAAC,CAAC;QAC5F,6DAA6D;QAC7D,KAAK,CAAC,wBAAwB,CAAC,WAAW,CAAC,IAAI,CAAC,4BAA4B,EAAE,IAAI,CAAC,CAAC;QACpF,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,kBAAkB,CAAC,KAA0B;QACnD,6DAA6D;QAC7D,KAAK,CAAC,uBAAuB,CAAC,cAAc,CAAC,IAAI,CAAC,2BAA2B,EAAE,IAAI,CAAC,CAAC;QACrF,6DAA6D;QAC7D,KAAK,CAAC,4BAA4B,CAAC,cAAc,CAAC,IAAI,CAAC,gCAAgC,EAAE,IAAI,CAAC,CAAC;QAC/F,6DAA6D;QAC7D,KAAK,CAAC,wBAAwB,CAAC,cAAc,CAAC,IAAI,CAAC,4BAA4B,EAAE,IAAI,CAAC,CAAC;IACzF,CAAC;IAEO,2BAA2B,CAAC,IAAwC,EAAE,KAA0B;QACtG,IAAI,CAAC,uBAAuB,CAAC,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IACvD,CAAC;IAEO,gCAAgC,CAAC,GAAkC,EAAE,KAA0B;QACrG,IAAI,CAAC,4BAA4B,CAAC,UAAU,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAC3D,CAAC;IAEO,4BAA4B,CAAC,QAAqC,EAAE,KAA0B;QACpG,IAAI,CAAC,wBAAwB,CAAC,UAAU,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IAC5D,CAAC;CACF;AAvKD,oDAuKC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module DisplayStyles\n */\n\nimport { assert, BeEvent } from \"@itwin/core-bentley\";\nimport { FeatureAppearance, FeatureAppearanceProps } from \"./FeatureSymbology\";\nimport { PlanarClipMaskMode, PlanarClipMaskProps, PlanarClipMaskSettings } from \"./PlanarClipMask\";\nimport { SpatialClassifierProps, SpatialClassifiers } from \"./SpatialClassification\";\nimport { RealityModelDisplayProps, RealityModelDisplaySettings } from \"./RealityModelDisplaySettings\";\n\n/** JSON representation of the blob properties for an OrbitGt property cloud.\n * @alpha\n */\nexport interface OrbitGtBlobProps {\n rdsUrl?: string;\n containerName: string;\n blobFileName: string;\n sasToken: string;\n accountName: string;\n}\n\n/** Identify the Reality Data service provider\n * @beta\n */\nexport enum RealityDataProvider {\n /**\n * This is the legacy mode where the access to the 3d tiles is harcoded in ContextRealityModelProps.tilesetUrl property.\n * It was use to support RealityMesh3DTiles, Terrain3DTiles, Cesium3DTiles\n * You should use other mode when possible\n * @see [[RealityDataSource.createKeyFromUrl]] that will try to detect provider from an URL\n */\n TilesetUrl = \"TilesetUrl\",\n /**\n * This is the legacy mode where the access to the 3d tiles is harcoded in ContextRealityModelProps.OrbitGtBlob property.\n * It was use to support OrbitPointCloud (OPC) from other server than ContextShare\n * You should use other mode when possible\n * @see [[RealityDataSource.createKeyFromOrbitGtBlobProps]] that will try to detect provider from an URL\n */\n OrbitGtBlob = \"OrbitGtBlob\",\n /**\n * Will provide access url from realityDataId and iTwinId on contextShare for 3dTile storage format or OPC storage format\n * This provider support all type of 3dTile storage fomat and OrbitPointCloud: RealityMesh3DTiles, Terrain3DTiles, Cesium3DTiles, OPC\n * @see [[RealityDataFormat]].\n */\n ContextShare = \"ContextShare\",\n /**\n * Will provide Open Street Map Building (OSM) from Cesium Ion (in 3dTile format)\n */\n CesiumIonAsset = \"CesiumIonAsset\",\n}\n\n/** Identify the Reality Data storage format\n * @beta\n */\nexport enum RealityDataFormat {\n /**\n * 3dTile supported formats; RealityMesh3DTiles, Terrain3DTiles, Cesium3DTiles\n * */\n ThreeDTile = \"ThreeDTile\",\n /**\n * Orbit Point Cloud (OPC) storage format (RealityDataType.OPC)\n */\n OPC = \"OPC\",\n}\n\n/** Utility function for RealityDataFormat\n * @beta\n */\nexport namespace RealityDataFormat {\n /**\n * Try to extract the RealityDataFormat from the url\n * @param tilesetUrl the reality data attachment url\n * @returns the extracted RealityDataFormat or ThreeDTile by default if not found\n */\n export function fromUrl(tilesetUrl: string): RealityDataFormat {\n let format = RealityDataFormat.ThreeDTile;\n if (tilesetUrl.includes(\".opc\"))\n format = RealityDataFormat.OPC;\n return format;\n }\n}\n\n/**\n * Key used by RealityDataSource to identify provider and reality data format\n * This key identify one and only one reality data source on the provider\n * @beta\n */\nexport interface RealityDataSourceKey {\n /**\n * The provider that supplies the access to reality data source for displaying the reality model\n * @see [[RealityDataProvider]] for default supported value;\n */\n provider: string;\n /**\n * The format used by the provider to store the reality data\n * @see [[RealityDataFormat]] for default supported value;\n */\n format: string;\n /** The reality data id that identify a reality data for the provider */\n id: string;\n /** The context id that was used when reality data was attached - if none provided, current session iTwinId will be used */\n iTwinId?: string;\n}\n/**\n * RealityDataSourceKey utility functions\n * @beta */\nexport namespace RealityDataSourceKey {\n /** Utility function to convert a RealityDataSourceKey into its string representation */\n export function convertToString(rdSourceKey: RealityDataSourceKey): string {\n return `${rdSourceKey.provider}:${rdSourceKey.format}:${rdSourceKey.id}:${rdSourceKey?.iTwinId}`;\n }\n /** Utility function to compare two RealityDataSourceKey, we consider it equal even if itwinId is different */\n export function isEqual(key1: RealityDataSourceKey, key2: RealityDataSourceKey): boolean {\n if ((key1.provider === RealityDataProvider.CesiumIonAsset) && key2.provider === RealityDataProvider.CesiumIonAsset)\n return true; // ignore other properties for CesiumIonAsset, id is hidden\n if ((key1.provider === key2.provider) && (key1.format === key2.format) && (key1.id === key2.id)) {\n // && (key1?.iTwinId === key2?.iTwinId)) -> ignore iTwinId, consider it is the same reality data\n return true;\n }\n return false;\n }\n}\n\n/** JSON representation of the reality data reference attachment properties.\n * @beta\n*/\nexport interface RealityDataSourceProps {\n /** The source key that identify a reality data for the provider. */\n sourceKey: RealityDataSourceKey;\n}\n\n/** JSON representation of a [[ContextRealityModel]].\n * @public\n * @extensions\n */\nexport interface ContextRealityModelProps {\n /** See [[ContextRealityModel.rdSourceKey]].\n * @beta\n */\n rdSourceKey?: RealityDataSourceKey;\n /** The URL that supplies the 3d tiles for displaying the reality model. */\n tilesetUrl: string;\n /** See [[ContextRealityModel.orbitGtBlob]].\n * @alpha\n */\n orbitGtBlob?: OrbitGtBlobProps;\n /** See [[ContextRealityModel.realityDataId]]. */\n realityDataId?: string;\n /** An optional, user-friendly name for the reality model suitable for display in a user interface. */\n name?: string;\n /** An optional, user-friendly description of the reality model suitable for display in a user interface. */\n description?: string;\n /** See [[ContextRealityModel.classifiers]]. */\n classifiers?: SpatialClassifierProps[];\n /** See [[ContextRealityModel.planarClipMask]]. */\n planarClipMask?: PlanarClipMaskProps;\n /** See [[ContextRealityModel.appearanceOverrides]]. */\n appearanceOverrides?: FeatureAppearanceProps;\n /** See [[ContextRealityModel.displaySettings]].\n * @beta\n */\n displaySettings?: RealityModelDisplayProps;\n}\n\n/** @public */\nexport namespace ContextRealityModelProps {\n /** Produce a deep copy of `input`. */\n export function clone(input: ContextRealityModelProps) {\n // Spread operator is shallow, and includes `undefined` properties and empty strings.\n // We want to make deep copies, omit undefined properties and empty strings, and require tilesetUrl to be defined.\n const output: ContextRealityModelProps = { tilesetUrl: input.tilesetUrl ?? \"\" };\n\n if (input.rdSourceKey)\n output.rdSourceKey = { ...input.rdSourceKey };\n\n if (input.name)\n output.name = input.name;\n\n if (input.realityDataId)\n output.realityDataId = input.realityDataId;\n\n if (input.description)\n output.description = input.description;\n\n if (input.orbitGtBlob)\n output.orbitGtBlob = { ...input.orbitGtBlob };\n\n if (input.appearanceOverrides) {\n output.appearanceOverrides = { ...input.appearanceOverrides };\n if (input.appearanceOverrides.rgb)\n output.appearanceOverrides.rgb = { ...input.appearanceOverrides.rgb };\n }\n\n if (input.displaySettings) {\n output.displaySettings = { ...input.displaySettings };\n if (input.displaySettings.pointCloud)\n output.displaySettings.pointCloud = { ...output.displaySettings.pointCloud };\n }\n\n if (input.planarClipMask)\n output.planarClipMask = { ...input.planarClipMask };\n\n if (input.classifiers)\n output.classifiers = input.classifiers.map((x) => { return { ...x, flags: { ...x.flags } }; });\n\n return output;\n }\n}\n\n/** A reality model not associated with a [GeometricModel]($backend) but instead defined in a [DisplayStyle]($backend) or [DisplayStyleState]($frontend).\n * Such reality models are displayed to provide context to the view and can be freely attached and detached at display time.\n * @see [this interactive example](https://www.itwinjs.org/sample-showcase/?group=Viewer&sample=reality-data-sample)\n * @see [[DisplayStyleSettings.contextRealityModels]] to define context reality models for a display style.\n * @public\n */\nexport class ContextRealityModel {\n /** @internal */\n protected readonly _props: ContextRealityModelProps;\n /**\n * The reality data source key identify the reality data provider and storage format.\n * It takes precedence over tilesetUrl and orbitGtBlob when present and can be use to actually replace these properties.\n * @beta\n */\n public readonly rdSourceKey?: RealityDataSourceKey;\n /** A name suitable for display in a user interface. By default, an empty string. */\n public readonly name: string;\n /** The URL that supplies the 3d tiles for displaying the reality model. */\n public readonly url: string;\n /** A description of the model suitable for display in a user interface. By default, an empty string. */\n public readonly description: string;\n /** An optional identifier that, if present, can be used to elide a request to the reality data service. */\n public readonly realityDataId?: string;\n /** A set of [[SpatialClassifier]]s, of which one at any given time can be used to classify the reality model. */\n public readonly classifiers?: SpatialClassifiers;\n /** @alpha */\n public readonly orbitGtBlob?: Readonly<OrbitGtBlobProps>;\n protected _appearanceOverrides?: FeatureAppearance;\n /** @beta */\n protected _displaySettings: RealityModelDisplaySettings;\n protected _planarClipMask?: PlanarClipMaskSettings;\n /** Event dispatched just before assignment to [[planarClipMaskSettings]]. */\n public readonly onPlanarClipMaskChanged = new BeEvent<(newSettings: PlanarClipMaskSettings | undefined, model: ContextRealityModel) => void>();\n /** Event dispatched just before assignment to [[appearanceOverrides]]. */\n public readonly onAppearanceOverridesChanged = new BeEvent<(newOverrides: FeatureAppearance | undefined, model: ContextRealityModel) => void>();\n /** Event dispatched just before assignment to [[displaySettings]].\n * @beta\n */\n public readonly onDisplaySettingsChanged = new BeEvent<(newSettings: RealityModelDisplaySettings, model: ContextRealityModel) => void>();\n\n /** Construct a new context reality model.\n * @param props JSON representation of the reality model, which will be kept in sync with changes made via the ContextRealityModel's methods.\n */\n public constructor(props: ContextRealityModelProps) {\n this._props = props;\n this.rdSourceKey = props.rdSourceKey;\n this.name = props.name ?? \"\";\n this.url = props.tilesetUrl ?? \"\";\n this.orbitGtBlob = props.orbitGtBlob;\n this.realityDataId = props.realityDataId;\n this.description = props.description ?? \"\";\n this._appearanceOverrides = props.appearanceOverrides ? FeatureAppearance.fromJSON(props.appearanceOverrides) : undefined;\n this._displaySettings = RealityModelDisplaySettings.fromJSON(props.displaySettings);\n\n if (props.planarClipMask && props.planarClipMask.mode !== PlanarClipMaskMode.None)\n this._planarClipMask = PlanarClipMaskSettings.fromJSON(props.planarClipMask);\n\n if (props.classifiers)\n this.classifiers = new SpatialClassifiers(props);\n }\n\n /** Optionally describes how the geometry of the reality model can be masked by other models. */\n public get planarClipMaskSettings(): PlanarClipMaskSettings | undefined {\n return this._planarClipMask;\n }\n public set planarClipMaskSettings(settings: PlanarClipMaskSettings | undefined) {\n this.onPlanarClipMaskChanged.raiseEvent(settings, this);\n if (!settings)\n delete this._props.planarClipMask;\n else\n this._props.planarClipMask = settings.toJSON();\n\n this._planarClipMask = settings;\n }\n\n /** Overrides applied to the appearance of the reality model. Only the rgb, transparency, nonLocatable, and emphasized properties are applicable - the rest are ignored. */\n public get appearanceOverrides(): FeatureAppearance | undefined {\n return this._appearanceOverrides;\n }\n public set appearanceOverrides(overrides: FeatureAppearance | undefined) {\n this.onAppearanceOverridesChanged.raiseEvent(overrides, this);\n if (!overrides)\n delete this._props.appearanceOverrides;\n else\n this._props.appearanceOverrides = overrides.toJSON();\n\n this._appearanceOverrides = overrides;\n }\n\n /** Settings controlling how this reality model is displayed in a [Viewport]($frontend).\n * @beta\n */\n public get displaySettings(): RealityModelDisplaySettings {\n return this._displaySettings;\n }\n public set displaySettings(settings: RealityModelDisplaySettings) {\n this.onDisplaySettingsChanged.raiseEvent(settings, this);\n this._props.displaySettings = settings.toJSON();\n this._displaySettings = settings;\n }\n\n /** Convert this model to its JSON representation. */\n public toJSON(): ContextRealityModelProps {\n return ContextRealityModelProps.clone(this._props);\n }\n\n /** Returns true if [[name]] and [[url]] match the specified name and url. */\n public matchesNameAndUrl(name: string, url: string): boolean {\n return this.name === name && this.url === url;\n }\n}\n\n/** An object that can store the JSON representation of a list of [[ContextRealityModel]]s.\n * @see [[ContextRealityModels]].\n * @see [[DisplayStyleSettingsProps.contextRealityModels]].\n * @public\n * @extensions\n */\nexport interface ContextRealityModelsContainer {\n /** The list of reality models. */\n contextRealityModels?: ContextRealityModelProps[];\n}\n\n/** A list of [[ContextRealityModel]]s attached to a [[DisplayStyleSettings]]. The list may be presented to the user with the name and description of each model.\n * The list is automatically synchronized with the underlying JSON representation provided by the input [[ContextRealityModelsContainer]].\n * @see [this interactive example](https://www.itwinjs.org/sample-showcase/?group=Viewer&sample=reality-data-sample)\n * @see [[DisplayStyleSettings.contextRealityModels]].\n * @public\n */\nexport class ContextRealityModels {\n private readonly _container: ContextRealityModelsContainer;\n private readonly _createModel: (props: ContextRealityModelProps) => ContextRealityModel;\n private readonly _models: ContextRealityModel[] = [];\n /** Event dispatched just before [[ContextRealityModel.planarClipMaskSettings]] is modified for one of the reality models. */\n public readonly onPlanarClipMaskChanged = new BeEvent<(model: ContextRealityModel, newSettings: PlanarClipMaskSettings | undefined) => void>();\n /** Event dispatched just before [[ContextRealityModel.appearanceOverrides]] is modified for one of the reality models. */\n public readonly onAppearanceOverridesChanged = new BeEvent<(model: ContextRealityModel, newOverrides: FeatureAppearance | undefined) => void>();\n /** Event dispatched just before [[ContextRealityModel.displaySettings]] is modified for one of the reality models.\n * @beta\n */\n public readonly onDisplaySettingsChanged = new BeEvent<(model: ContextRealityModel, newSettings: RealityModelDisplaySettings) => void>();\n /** Event dispatched when a model is [[add]]ed, [[delete]]d, [[replace]]d, or [[update]]d. */\n public readonly onChanged = new BeEvent<(previousModel: ContextRealityModel | undefined, newModel: ContextRealityModel | undefined) => void>();\n\n /** Construct a new list of reality models from its JSON representation. THe list will be initialized from `container.classifiers` and that JSON representation\n * will be kept in sync with changes made to the list. The caller should not directly modify `container.classifiers` or its contents as that will cause the list\n * to become out of sync with the JSON representation.\n * @param container The object that holds the JSON representation of the list.\n * @param createContextRealityModel Optional function used to instantiate ContextRealityModels added to the list.\n */\n public constructor(container: ContextRealityModelsContainer, createContextRealityModel?: (props: ContextRealityModelProps) => ContextRealityModel) {\n this._container = container;\n this._createModel = createContextRealityModel ?? ((props) => new ContextRealityModel(props));\n\n const models = container.contextRealityModels;\n if (models)\n for (const model of models)\n this._models.push(this.createModel(model));\n }\n\n /** The read-only list of reality models. */\n public get models(): ReadonlyArray<ContextRealityModel> {\n return this._models;\n }\n\n /** Append a new reality model to the list.\n * @param The JSON representation of the reality model.\n * @returns the newly-added reality model.\n */\n public add(props: ContextRealityModelProps): ContextRealityModel {\n if (!this._container.contextRealityModels)\n this._container.contextRealityModels = [];\n\n props = ContextRealityModelProps.clone(props);\n const model = this.createModel(props);\n\n this.onChanged.raiseEvent(undefined, model);\n\n this._models.push(model);\n this._container.contextRealityModels.push(props);\n\n return model;\n }\n\n /** Remove the specified reality model from the list.\n * @param model The reality model to remove.\n * @returns true if the model was removed, or false if the model was not present in the list.\n */\n public delete(model: ContextRealityModel): boolean {\n const index = this._models.indexOf(model);\n if (-1 === index)\n return false;\n\n assert(undefined !== this._container.contextRealityModels);\n assert(index < this._container.contextRealityModels.length);\n\n this.dropEventListeners(model);\n this.onChanged.raiseEvent(model, undefined);\n\n this._models.splice(index, 1);\n if (this.models.length === 0)\n this._container.contextRealityModels = undefined;\n else\n this._container.contextRealityModels.splice(index, 1);\n\n return true;\n }\n\n /** Remove all reality models from the list. */\n public clear(): void {\n for (const model of this.models) {\n this.dropEventListeners(model);\n this.onChanged.raiseEvent(model, undefined);\n }\n\n this._container.contextRealityModels = undefined;\n this._models.length = 0;\n }\n\n /** Replace a reality model in the list.\n * @param toReplace The reality model to be replaced.\n * @param replaceWith The JSON representation of the replacement reality model.\n * @returns the newly-created reality model that replaced `toReplace`.\n * @throws Error if `toReplace` is not present in the list\n * @note The replacement occupies the same index in the list as `toReplace` did.\n */\n public replace(toReplace: ContextRealityModel, replaceWith: ContextRealityModelProps): ContextRealityModel {\n const index = this._models.indexOf(toReplace);\n if (-1 === index)\n throw new Error(\"ContextRealityModel not present in list.\");\n\n assert(undefined !== this._container.contextRealityModels);\n assert(index < this._container.contextRealityModels.length);\n\n replaceWith = ContextRealityModelProps.clone(replaceWith);\n const model = this.createModel(replaceWith);\n\n this.onChanged.raiseEvent(toReplace, model);\n this.dropEventListeners(toReplace);\n\n this._models[index] = model;\n this._container.contextRealityModels[index] = replaceWith;\n\n return model;\n }\n\n /** Change selected properties of a reality model.\n * @param toUpdate The reality model whose properties are to be modified.\n * @param updateProps The properties to change.\n * @returns The updated reality model, identical to `toUpdate` except for properties explicitly supplied by `updateProps`.\n * @throws Error if `toUpdate` is not present in the list.\n */\n public update(toUpdate: ContextRealityModel, updateProps: Partial<ContextRealityModelProps>): ContextRealityModel {\n const props = {\n ...toUpdate.toJSON(),\n ...updateProps,\n };\n\n // Partial<> makes it possible to pass `undefined` for tilesetUrl...preserve previous URL in that case.\n if (undefined === props.tilesetUrl)\n props.tilesetUrl = toUpdate.url;\n\n return this.replace(toUpdate, props);\n }\n\n private createModel(props: ContextRealityModelProps): ContextRealityModel {\n const model = this._createModel(props);\n // eslint-disable-next-line @typescript-eslint/unbound-method\n model.onPlanarClipMaskChanged.addListener(this.handlePlanarClipMaskChanged, this);\n // eslint-disable-next-line @typescript-eslint/unbound-method\n model.onAppearanceOverridesChanged.addListener(this.handleAppearanceOverridesChanged, this);\n // eslint-disable-next-line @typescript-eslint/unbound-method\n model.onDisplaySettingsChanged.addListener(this.handleDisplaySettingsChanged, this);\n return model;\n }\n\n private dropEventListeners(model: ContextRealityModel): void {\n // eslint-disable-next-line @typescript-eslint/unbound-method\n model.onPlanarClipMaskChanged.removeListener(this.handlePlanarClipMaskChanged, this);\n // eslint-disable-next-line @typescript-eslint/unbound-method\n model.onAppearanceOverridesChanged.removeListener(this.handleAppearanceOverridesChanged, this);\n // eslint-disable-next-line @typescript-eslint/unbound-method\n model.onDisplaySettingsChanged.removeListener(this.handleDisplaySettingsChanged, this);\n }\n\n private handlePlanarClipMaskChanged(mask: PlanarClipMaskSettings | undefined, model: ContextRealityModel): void {\n this.onPlanarClipMaskChanged.raiseEvent(model, mask);\n }\n\n private handleAppearanceOverridesChanged(app: FeatureAppearance | undefined, model: ContextRealityModel): void {\n this.onAppearanceOverridesChanged.raiseEvent(model, app);\n }\n\n private handleDisplaySettingsChanged(settings: RealityModelDisplaySettings, model: ContextRealityModel): void {\n this.onDisplaySettingsChanged.raiseEvent(model, settings);\n }\n}\n"]}
1
+ {"version":3,"file":"ContextRealityModel.js","sourceRoot":"","sources":["../../src/ContextRealityModel.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 DisplayStyles\r\n */\r\n\r\nimport { assert, BeEvent } from \"@itwin/core-bentley\";\r\nimport { FeatureAppearance, FeatureAppearanceProps } from \"./FeatureSymbology\";\r\nimport { PlanarClipMaskMode, PlanarClipMaskProps, PlanarClipMaskSettings } from \"./PlanarClipMask\";\r\nimport { SpatialClassifierProps, SpatialClassifiers } from \"./SpatialClassification\";\r\nimport { RealityModelDisplayProps, RealityModelDisplaySettings } from \"./RealityModelDisplaySettings\";\r\n\r\n/** JSON representation of the blob properties for an OrbitGt property cloud.\r\n * @alpha\r\n */\r\nexport interface OrbitGtBlobProps {\r\n rdsUrl?: string;\r\n containerName: string;\r\n blobFileName: string;\r\n sasToken: string;\r\n accountName: string;\r\n}\r\n\r\n/** Identify the Reality Data service provider\r\n * @beta\r\n */\r\nexport enum RealityDataProvider {\r\n /**\r\n * This is the legacy mode where the access to the 3d tiles is harcoded in ContextRealityModelProps.tilesetUrl property.\r\n * It was use to support RealityMesh3DTiles, Terrain3DTiles, Cesium3DTiles\r\n * You should use other mode when possible\r\n * @see [[RealityDataSource.createKeyFromUrl]] that will try to detect provider from an URL\r\n */\r\n TilesetUrl = \"TilesetUrl\",\r\n /**\r\n * This is the legacy mode where the access to the 3d tiles is harcoded in ContextRealityModelProps.OrbitGtBlob property.\r\n * It was use to support OrbitPointCloud (OPC) from other server than ContextShare\r\n * You should use other mode when possible\r\n * @see [[RealityDataSource.createKeyFromOrbitGtBlobProps]] that will try to detect provider from an URL\r\n */\r\n OrbitGtBlob = \"OrbitGtBlob\",\r\n /**\r\n * Will provide access url from realityDataId and iTwinId on contextShare for 3dTile storage format or OPC storage format\r\n * This provider support all type of 3dTile storage fomat and OrbitPointCloud: RealityMesh3DTiles, Terrain3DTiles, Cesium3DTiles, OPC\r\n * @see [[RealityDataFormat]].\r\n */\r\n ContextShare = \"ContextShare\",\r\n /**\r\n * Will provide Open Street Map Building (OSM) from Cesium Ion (in 3dTile format)\r\n */\r\n CesiumIonAsset = \"CesiumIonAsset\",\r\n}\r\n\r\n/** Identify the Reality Data storage format\r\n * @beta\r\n */\r\nexport enum RealityDataFormat {\r\n /**\r\n * 3dTile supported formats; RealityMesh3DTiles, Terrain3DTiles, Cesium3DTiles\r\n * */\r\n ThreeDTile = \"ThreeDTile\",\r\n /**\r\n * Orbit Point Cloud (OPC) storage format (RealityDataType.OPC)\r\n */\r\n OPC = \"OPC\",\r\n}\r\n\r\n/** Utility function for RealityDataFormat\r\n * @beta\r\n */\r\nexport namespace RealityDataFormat {\r\n /**\r\n * Try to extract the RealityDataFormat from the url\r\n * @param tilesetUrl the reality data attachment url\r\n * @returns the extracted RealityDataFormat or ThreeDTile by default if not found\r\n */\r\n export function fromUrl(tilesetUrl: string): RealityDataFormat {\r\n let format = RealityDataFormat.ThreeDTile;\r\n if (tilesetUrl.includes(\".opc\"))\r\n format = RealityDataFormat.OPC;\r\n return format;\r\n }\r\n}\r\n\r\n/**\r\n * Key used by RealityDataSource to identify provider and reality data format\r\n * This key identify one and only one reality data source on the provider\r\n * @beta\r\n */\r\nexport interface RealityDataSourceKey {\r\n /**\r\n * The provider that supplies the access to reality data source for displaying the reality model\r\n * @see [[RealityDataProvider]] for default supported value;\r\n */\r\n provider: string;\r\n /**\r\n * The format used by the provider to store the reality data\r\n * @see [[RealityDataFormat]] for default supported value;\r\n */\r\n format: string;\r\n /** The reality data id that identify a reality data for the provider */\r\n id: string;\r\n /** The context id that was used when reality data was attached - if none provided, current session iTwinId will be used */\r\n iTwinId?: string;\r\n}\r\n/**\r\n * RealityDataSourceKey utility functions\r\n * @beta */\r\nexport namespace RealityDataSourceKey {\r\n /** Utility function to convert a RealityDataSourceKey into its string representation */\r\n export function convertToString(rdSourceKey: RealityDataSourceKey): string {\r\n return `${rdSourceKey.provider}:${rdSourceKey.format}:${rdSourceKey.id}:${rdSourceKey?.iTwinId}`;\r\n }\r\n /** Utility function to compare two RealityDataSourceKey, we consider it equal even if itwinId is different */\r\n export function isEqual(key1: RealityDataSourceKey, key2: RealityDataSourceKey): boolean {\r\n if ((key1.provider === RealityDataProvider.CesiumIonAsset) && key2.provider === RealityDataProvider.CesiumIonAsset)\r\n return true; // ignore other properties for CesiumIonAsset, id is hidden\r\n if ((key1.provider === key2.provider) && (key1.format === key2.format) && (key1.id === key2.id)) {\r\n // && (key1?.iTwinId === key2?.iTwinId)) -> ignore iTwinId, consider it is the same reality data\r\n return true;\r\n }\r\n return false;\r\n }\r\n}\r\n\r\n/** JSON representation of the reality data reference attachment properties.\r\n * @beta\r\n*/\r\nexport interface RealityDataSourceProps {\r\n /** The source key that identify a reality data for the provider. */\r\n sourceKey: RealityDataSourceKey;\r\n}\r\n\r\n/** JSON representation of a [[ContextRealityModel]].\r\n * @public\r\n * @extensions\r\n */\r\nexport interface ContextRealityModelProps {\r\n /** See [[ContextRealityModel.rdSourceKey]].\r\n * @beta\r\n */\r\n rdSourceKey?: RealityDataSourceKey;\r\n /** The URL that supplies the 3d tiles for displaying the reality model. */\r\n tilesetUrl: string;\r\n /** See [[ContextRealityModel.orbitGtBlob]].\r\n * @alpha\r\n */\r\n orbitGtBlob?: OrbitGtBlobProps;\r\n /** See [[ContextRealityModel.realityDataId]]. */\r\n realityDataId?: string;\r\n /** An optional, user-friendly name for the reality model suitable for display in a user interface. */\r\n name?: string;\r\n /** An optional, user-friendly description of the reality model suitable for display in a user interface. */\r\n description?: string;\r\n /** See [[ContextRealityModel.classifiers]]. */\r\n classifiers?: SpatialClassifierProps[];\r\n /** See [[ContextRealityModel.planarClipMask]]. */\r\n planarClipMask?: PlanarClipMaskProps;\r\n /** See [[ContextRealityModel.appearanceOverrides]]. */\r\n appearanceOverrides?: FeatureAppearanceProps;\r\n /** See [[ContextRealityModel.displaySettings]].\r\n * @beta\r\n */\r\n displaySettings?: RealityModelDisplayProps;\r\n}\r\n\r\n/** @public */\r\nexport namespace ContextRealityModelProps {\r\n /** Produce a deep copy of `input`. */\r\n export function clone(input: ContextRealityModelProps) {\r\n // Spread operator is shallow, and includes `undefined` properties and empty strings.\r\n // We want to make deep copies, omit undefined properties and empty strings, and require tilesetUrl to be defined.\r\n const output: ContextRealityModelProps = { tilesetUrl: input.tilesetUrl ?? \"\" };\r\n\r\n if (input.rdSourceKey)\r\n output.rdSourceKey = { ...input.rdSourceKey };\r\n\r\n if (input.name)\r\n output.name = input.name;\r\n\r\n if (input.realityDataId)\r\n output.realityDataId = input.realityDataId;\r\n\r\n if (input.description)\r\n output.description = input.description;\r\n\r\n if (input.orbitGtBlob)\r\n output.orbitGtBlob = { ...input.orbitGtBlob };\r\n\r\n if (input.appearanceOverrides) {\r\n output.appearanceOverrides = { ...input.appearanceOverrides };\r\n if (input.appearanceOverrides.rgb)\r\n output.appearanceOverrides.rgb = { ...input.appearanceOverrides.rgb };\r\n }\r\n\r\n if (input.displaySettings) {\r\n output.displaySettings = { ...input.displaySettings };\r\n if (input.displaySettings.pointCloud)\r\n output.displaySettings.pointCloud = { ...output.displaySettings.pointCloud };\r\n }\r\n\r\n if (input.planarClipMask)\r\n output.planarClipMask = { ...input.planarClipMask };\r\n\r\n if (input.classifiers)\r\n output.classifiers = input.classifiers.map((x) => { return { ...x, flags: { ...x.flags } }; });\r\n\r\n return output;\r\n }\r\n}\r\n\r\n/** A reality model not associated with a [GeometricModel]($backend) but instead defined in a [DisplayStyle]($backend) or [DisplayStyleState]($frontend).\r\n * Such reality models are displayed to provide context to the view and can be freely attached and detached at display time.\r\n * @see [this interactive example](https://www.itwinjs.org/sample-showcase/?group=Viewer&sample=reality-data-sample)\r\n * @see [[DisplayStyleSettings.contextRealityModels]] to define context reality models for a display style.\r\n * @public\r\n */\r\nexport class ContextRealityModel {\r\n /** @internal */\r\n protected readonly _props: ContextRealityModelProps;\r\n /**\r\n * The reality data source key identify the reality data provider and storage format.\r\n * It takes precedence over tilesetUrl and orbitGtBlob when present and can be use to actually replace these properties.\r\n * @beta\r\n */\r\n public readonly rdSourceKey?: RealityDataSourceKey;\r\n /** A name suitable for display in a user interface. By default, an empty string. */\r\n public readonly name: string;\r\n /** The URL that supplies the 3d tiles for displaying the reality model. */\r\n public readonly url: string;\r\n /** A description of the model suitable for display in a user interface. By default, an empty string. */\r\n public readonly description: string;\r\n /** An optional identifier that, if present, can be used to elide a request to the reality data service. */\r\n public readonly realityDataId?: string;\r\n /** A set of [[SpatialClassifier]]s, of which one at any given time can be used to classify the reality model. */\r\n public readonly classifiers?: SpatialClassifiers;\r\n /** @alpha */\r\n public readonly orbitGtBlob?: Readonly<OrbitGtBlobProps>;\r\n protected _appearanceOverrides?: FeatureAppearance;\r\n /** @beta */\r\n protected _displaySettings: RealityModelDisplaySettings;\r\n protected _planarClipMask?: PlanarClipMaskSettings;\r\n /** Event dispatched just before assignment to [[planarClipMaskSettings]]. */\r\n public readonly onPlanarClipMaskChanged = new BeEvent<(newSettings: PlanarClipMaskSettings | undefined, model: ContextRealityModel) => void>();\r\n /** Event dispatched just before assignment to [[appearanceOverrides]]. */\r\n public readonly onAppearanceOverridesChanged = new BeEvent<(newOverrides: FeatureAppearance | undefined, model: ContextRealityModel) => void>();\r\n /** Event dispatched just before assignment to [[displaySettings]].\r\n * @beta\r\n */\r\n public readonly onDisplaySettingsChanged = new BeEvent<(newSettings: RealityModelDisplaySettings, model: ContextRealityModel) => void>();\r\n\r\n /** Construct a new context reality model.\r\n * @param props JSON representation of the reality model, which will be kept in sync with changes made via the ContextRealityModel's methods.\r\n */\r\n public constructor(props: ContextRealityModelProps) {\r\n this._props = props;\r\n this.rdSourceKey = props.rdSourceKey;\r\n this.name = props.name ?? \"\";\r\n this.url = props.tilesetUrl ?? \"\";\r\n this.orbitGtBlob = props.orbitGtBlob;\r\n this.realityDataId = props.realityDataId;\r\n this.description = props.description ?? \"\";\r\n this._appearanceOverrides = props.appearanceOverrides ? FeatureAppearance.fromJSON(props.appearanceOverrides) : undefined;\r\n this._displaySettings = RealityModelDisplaySettings.fromJSON(props.displaySettings);\r\n\r\n if (props.planarClipMask && props.planarClipMask.mode !== PlanarClipMaskMode.None)\r\n this._planarClipMask = PlanarClipMaskSettings.fromJSON(props.planarClipMask);\r\n\r\n if (props.classifiers)\r\n this.classifiers = new SpatialClassifiers(props);\r\n }\r\n\r\n /** Optionally describes how the geometry of the reality model can be masked by other models. */\r\n public get planarClipMaskSettings(): PlanarClipMaskSettings | undefined {\r\n return this._planarClipMask;\r\n }\r\n public set planarClipMaskSettings(settings: PlanarClipMaskSettings | undefined) {\r\n this.onPlanarClipMaskChanged.raiseEvent(settings, this);\r\n if (!settings)\r\n delete this._props.planarClipMask;\r\n else\r\n this._props.planarClipMask = settings.toJSON();\r\n\r\n this._planarClipMask = settings;\r\n }\r\n\r\n /** Overrides applied to the appearance of the reality model. Only the rgb, transparency, nonLocatable, and emphasized properties are applicable - the rest are ignored. */\r\n public get appearanceOverrides(): FeatureAppearance | undefined {\r\n return this._appearanceOverrides;\r\n }\r\n public set appearanceOverrides(overrides: FeatureAppearance | undefined) {\r\n this.onAppearanceOverridesChanged.raiseEvent(overrides, this);\r\n if (!overrides)\r\n delete this._props.appearanceOverrides;\r\n else\r\n this._props.appearanceOverrides = overrides.toJSON();\r\n\r\n this._appearanceOverrides = overrides;\r\n }\r\n\r\n /** Settings controlling how this reality model is displayed in a [Viewport]($frontend).\r\n * @beta\r\n */\r\n public get displaySettings(): RealityModelDisplaySettings {\r\n return this._displaySettings;\r\n }\r\n public set displaySettings(settings: RealityModelDisplaySettings) {\r\n this.onDisplaySettingsChanged.raiseEvent(settings, this);\r\n this._props.displaySettings = settings.toJSON();\r\n this._displaySettings = settings;\r\n }\r\n\r\n /** Convert this model to its JSON representation. */\r\n public toJSON(): ContextRealityModelProps {\r\n return ContextRealityModelProps.clone(this._props);\r\n }\r\n\r\n /** Returns true if [[name]] and [[url]] match the specified name and url. */\r\n public matchesNameAndUrl(name: string, url: string): boolean {\r\n return this.name === name && this.url === url;\r\n }\r\n}\r\n\r\n/** An object that can store the JSON representation of a list of [[ContextRealityModel]]s.\r\n * @see [[ContextRealityModels]].\r\n * @see [[DisplayStyleSettingsProps.contextRealityModels]].\r\n * @public\r\n * @extensions\r\n */\r\nexport interface ContextRealityModelsContainer {\r\n /** The list of reality models. */\r\n contextRealityModels?: ContextRealityModelProps[];\r\n}\r\n\r\n/** A list of [[ContextRealityModel]]s attached to a [[DisplayStyleSettings]]. The list may be presented to the user with the name and description of each model.\r\n * The list is automatically synchronized with the underlying JSON representation provided by the input [[ContextRealityModelsContainer]].\r\n * @see [this interactive example](https://www.itwinjs.org/sample-showcase/?group=Viewer&sample=reality-data-sample)\r\n * @see [[DisplayStyleSettings.contextRealityModels]].\r\n * @public\r\n */\r\nexport class ContextRealityModels {\r\n private readonly _container: ContextRealityModelsContainer;\r\n private readonly _createModel: (props: ContextRealityModelProps) => ContextRealityModel;\r\n private readonly _models: ContextRealityModel[] = [];\r\n /** Event dispatched just before [[ContextRealityModel.planarClipMaskSettings]] is modified for one of the reality models. */\r\n public readonly onPlanarClipMaskChanged = new BeEvent<(model: ContextRealityModel, newSettings: PlanarClipMaskSettings | undefined) => void>();\r\n /** Event dispatched just before [[ContextRealityModel.appearanceOverrides]] is modified for one of the reality models. */\r\n public readonly onAppearanceOverridesChanged = new BeEvent<(model: ContextRealityModel, newOverrides: FeatureAppearance | undefined) => void>();\r\n /** Event dispatched just before [[ContextRealityModel.displaySettings]] is modified for one of the reality models.\r\n * @beta\r\n */\r\n public readonly onDisplaySettingsChanged = new BeEvent<(model: ContextRealityModel, newSettings: RealityModelDisplaySettings) => void>();\r\n /** Event dispatched when a model is [[add]]ed, [[delete]]d, [[replace]]d, or [[update]]d. */\r\n public readonly onChanged = new BeEvent<(previousModel: ContextRealityModel | undefined, newModel: ContextRealityModel | undefined) => void>();\r\n\r\n /** Construct a new list of reality models from its JSON representation. THe list will be initialized from `container.classifiers` and that JSON representation\r\n * will be kept in sync with changes made to the list. The caller should not directly modify `container.classifiers` or its contents as that will cause the list\r\n * to become out of sync with the JSON representation.\r\n * @param container The object that holds the JSON representation of the list.\r\n * @param createContextRealityModel Optional function used to instantiate ContextRealityModels added to the list.\r\n */\r\n public constructor(container: ContextRealityModelsContainer, createContextRealityModel?: (props: ContextRealityModelProps) => ContextRealityModel) {\r\n this._container = container;\r\n this._createModel = createContextRealityModel ?? ((props) => new ContextRealityModel(props));\r\n\r\n const models = container.contextRealityModels;\r\n if (models)\r\n for (const model of models)\r\n this._models.push(this.createModel(model));\r\n }\r\n\r\n /** The read-only list of reality models. */\r\n public get models(): ReadonlyArray<ContextRealityModel> {\r\n return this._models;\r\n }\r\n\r\n /** Append a new reality model to the list.\r\n * @param The JSON representation of the reality model.\r\n * @returns the newly-added reality model.\r\n */\r\n public add(props: ContextRealityModelProps): ContextRealityModel {\r\n if (!this._container.contextRealityModels)\r\n this._container.contextRealityModels = [];\r\n\r\n props = ContextRealityModelProps.clone(props);\r\n const model = this.createModel(props);\r\n\r\n this.onChanged.raiseEvent(undefined, model);\r\n\r\n this._models.push(model);\r\n this._container.contextRealityModels.push(props);\r\n\r\n return model;\r\n }\r\n\r\n /** Remove the specified reality model from the list.\r\n * @param model The reality model to remove.\r\n * @returns true if the model was removed, or false if the model was not present in the list.\r\n */\r\n public delete(model: ContextRealityModel): boolean {\r\n const index = this._models.indexOf(model);\r\n if (-1 === index)\r\n return false;\r\n\r\n assert(undefined !== this._container.contextRealityModels);\r\n assert(index < this._container.contextRealityModels.length);\r\n\r\n this.dropEventListeners(model);\r\n this.onChanged.raiseEvent(model, undefined);\r\n\r\n this._models.splice(index, 1);\r\n if (this.models.length === 0)\r\n this._container.contextRealityModels = undefined;\r\n else\r\n this._container.contextRealityModels.splice(index, 1);\r\n\r\n return true;\r\n }\r\n\r\n /** Remove all reality models from the list. */\r\n public clear(): void {\r\n for (const model of this.models) {\r\n this.dropEventListeners(model);\r\n this.onChanged.raiseEvent(model, undefined);\r\n }\r\n\r\n this._container.contextRealityModels = undefined;\r\n this._models.length = 0;\r\n }\r\n\r\n /** Replace a reality model in the list.\r\n * @param toReplace The reality model to be replaced.\r\n * @param replaceWith The JSON representation of the replacement reality model.\r\n * @returns the newly-created reality model that replaced `toReplace`.\r\n * @throws Error if `toReplace` is not present in the list\r\n * @note The replacement occupies the same index in the list as `toReplace` did.\r\n */\r\n public replace(toReplace: ContextRealityModel, replaceWith: ContextRealityModelProps): ContextRealityModel {\r\n const index = this._models.indexOf(toReplace);\r\n if (-1 === index)\r\n throw new Error(\"ContextRealityModel not present in list.\");\r\n\r\n assert(undefined !== this._container.contextRealityModels);\r\n assert(index < this._container.contextRealityModels.length);\r\n\r\n replaceWith = ContextRealityModelProps.clone(replaceWith);\r\n const model = this.createModel(replaceWith);\r\n\r\n this.onChanged.raiseEvent(toReplace, model);\r\n this.dropEventListeners(toReplace);\r\n\r\n this._models[index] = model;\r\n this._container.contextRealityModels[index] = replaceWith;\r\n\r\n return model;\r\n }\r\n\r\n /** Change selected properties of a reality model.\r\n * @param toUpdate The reality model whose properties are to be modified.\r\n * @param updateProps The properties to change.\r\n * @returns The updated reality model, identical to `toUpdate` except for properties explicitly supplied by `updateProps`.\r\n * @throws Error if `toUpdate` is not present in the list.\r\n */\r\n public update(toUpdate: ContextRealityModel, updateProps: Partial<ContextRealityModelProps>): ContextRealityModel {\r\n const props = {\r\n ...toUpdate.toJSON(),\r\n ...updateProps,\r\n };\r\n\r\n // Partial<> makes it possible to pass `undefined` for tilesetUrl...preserve previous URL in that case.\r\n if (undefined === props.tilesetUrl)\r\n props.tilesetUrl = toUpdate.url;\r\n\r\n return this.replace(toUpdate, props);\r\n }\r\n\r\n private createModel(props: ContextRealityModelProps): ContextRealityModel {\r\n const model = this._createModel(props);\r\n // eslint-disable-next-line @typescript-eslint/unbound-method\r\n model.onPlanarClipMaskChanged.addListener(this.handlePlanarClipMaskChanged, this);\r\n // eslint-disable-next-line @typescript-eslint/unbound-method\r\n model.onAppearanceOverridesChanged.addListener(this.handleAppearanceOverridesChanged, this);\r\n // eslint-disable-next-line @typescript-eslint/unbound-method\r\n model.onDisplaySettingsChanged.addListener(this.handleDisplaySettingsChanged, this);\r\n return model;\r\n }\r\n\r\n private dropEventListeners(model: ContextRealityModel): void {\r\n // eslint-disable-next-line @typescript-eslint/unbound-method\r\n model.onPlanarClipMaskChanged.removeListener(this.handlePlanarClipMaskChanged, this);\r\n // eslint-disable-next-line @typescript-eslint/unbound-method\r\n model.onAppearanceOverridesChanged.removeListener(this.handleAppearanceOverridesChanged, this);\r\n // eslint-disable-next-line @typescript-eslint/unbound-method\r\n model.onDisplaySettingsChanged.removeListener(this.handleDisplaySettingsChanged, this);\r\n }\r\n\r\n private handlePlanarClipMaskChanged(mask: PlanarClipMaskSettings | undefined, model: ContextRealityModel): void {\r\n this.onPlanarClipMaskChanged.raiseEvent(model, mask);\r\n }\r\n\r\n private handleAppearanceOverridesChanged(app: FeatureAppearance | undefined, model: ContextRealityModel): void {\r\n this.onAppearanceOverridesChanged.raiseEvent(model, app);\r\n }\r\n\r\n private handleDisplaySettingsChanged(settings: RealityModelDisplaySettings, model: ContextRealityModel): void {\r\n this.onDisplaySettingsChanged.raiseEvent(model, settings);\r\n }\r\n}\r\n"]}