@itwin/core-common 5.0.0-dev.9 → 5.0.0-dev.92

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 (806) hide show
  1. package/CHANGELOG.md +55 -1
  2. package/lib/cjs/AmbientOcclusion.js +17 -9
  3. package/lib/cjs/AmbientOcclusion.js.map +1 -1
  4. package/lib/cjs/AnalysisStyle.d.ts +0 -3
  5. package/lib/cjs/AnalysisStyle.d.ts.map +1 -1
  6. package/lib/cjs/AnalysisStyle.js +20 -4
  7. package/lib/cjs/AnalysisStyle.js.map +1 -1
  8. package/lib/cjs/Atmosphere.js +39 -21
  9. package/lib/cjs/Atmosphere.js.map +1 -1
  10. package/lib/cjs/AuthorizationClient.js.map +1 -1
  11. package/lib/cjs/BackgroundMapProvider.js +4 -0
  12. package/lib/cjs/BackgroundMapProvider.js.map +1 -1
  13. package/lib/cjs/BackgroundMapSettings.js +19 -0
  14. package/lib/cjs/BackgroundMapSettings.js.map +1 -1
  15. package/lib/cjs/Base64EncodedString.js.map +1 -1
  16. package/lib/cjs/BlobReader.js +8 -6
  17. package/lib/cjs/BlobReader.js.map +1 -1
  18. package/lib/cjs/BriefcaseTypes.d.ts +2 -2
  19. package/lib/cjs/BriefcaseTypes.d.ts.map +1 -1
  20. package/lib/cjs/BriefcaseTypes.js.map +1 -1
  21. package/lib/cjs/Camera.js +3 -0
  22. package/lib/cjs/Camera.js.map +1 -1
  23. package/lib/cjs/ChangedElements.js.map +1 -1
  24. package/lib/cjs/ChangedEntities.js.map +1 -1
  25. package/lib/cjs/ChangesetProps.d.ts +1 -1
  26. package/lib/cjs/ChangesetProps.js.map +1 -1
  27. package/lib/cjs/ClipStyle.js +31 -5
  28. package/lib/cjs/ClipStyle.js.map +1 -1
  29. package/lib/cjs/Code.d.ts +0 -5
  30. package/lib/cjs/Code.d.ts.map +1 -1
  31. package/lib/cjs/Code.js +16 -11
  32. package/lib/cjs/Code.js.map +1 -1
  33. package/lib/cjs/ColorByName.js.map +1 -1
  34. package/lib/cjs/ColorDef.js +11 -10
  35. package/lib/cjs/ColorDef.js.map +1 -1
  36. package/lib/cjs/CommonLoggerCategory.js.map +1 -1
  37. package/lib/cjs/ConcurrentQuery.d.ts +37 -1
  38. package/lib/cjs/ConcurrentQuery.d.ts.map +1 -1
  39. package/lib/cjs/ConcurrentQuery.js +16 -3
  40. package/lib/cjs/ConcurrentQuery.js.map +1 -1
  41. package/lib/cjs/ContextRealityModel.js +53 -27
  42. package/lib/cjs/ContextRealityModel.js.map +1 -1
  43. package/lib/cjs/ContourDisplay.js +40 -5
  44. package/lib/cjs/ContourDisplay.js.map +1 -1
  45. package/lib/cjs/DisplayStyleSettings.js +95 -63
  46. package/lib/cjs/DisplayStyleSettings.js.map +1 -1
  47. package/lib/cjs/ECSchemaProps.js.map +1 -1
  48. package/lib/cjs/ECSqlReader.d.ts +2 -0
  49. package/lib/cjs/ECSqlReader.d.ts.map +1 -1
  50. package/lib/cjs/ECSqlReader.js +56 -50
  51. package/lib/cjs/ECSqlReader.js.map +1 -1
  52. package/lib/cjs/ECSqlTypes.js.map +1 -1
  53. package/lib/cjs/ElementMesh.js.map +1 -1
  54. package/lib/cjs/ElementProps.d.ts.map +1 -1
  55. package/lib/cjs/ElementProps.js +7 -3
  56. package/lib/cjs/ElementProps.js.map +1 -1
  57. package/lib/cjs/EmphasizeElementsProps.js.map +1 -1
  58. package/lib/cjs/EntityProps.d.ts +25 -2
  59. package/lib/cjs/EntityProps.d.ts.map +1 -1
  60. package/lib/cjs/EntityProps.js +39 -0
  61. package/lib/cjs/EntityProps.js.map +1 -1
  62. package/lib/cjs/EntityReference.js.map +1 -1
  63. package/lib/cjs/Environment.js +25 -2
  64. package/lib/cjs/Environment.js.map +1 -1
  65. package/lib/cjs/FeatureIndex.js +15 -6
  66. package/lib/cjs/FeatureIndex.js.map +1 -1
  67. package/lib/cjs/FeatureSymbology.d.ts +25 -73
  68. package/lib/cjs/FeatureSymbology.d.ts.map +1 -1
  69. package/lib/cjs/FeatureSymbology.js +88 -103
  70. package/lib/cjs/FeatureSymbology.js.map +1 -1
  71. package/lib/cjs/FeatureTable.d.ts +6 -108
  72. package/lib/cjs/FeatureTable.d.ts.map +1 -1
  73. package/lib/cjs/FeatureTable.js +13 -329
  74. package/lib/cjs/FeatureTable.js.map +1 -1
  75. package/lib/cjs/Fonts.d.ts +68 -10
  76. package/lib/cjs/Fonts.d.ts.map +1 -1
  77. package/lib/cjs/Fonts.js +19 -4
  78. package/lib/cjs/Fonts.js.map +1 -1
  79. package/lib/cjs/Frustum.js +2 -2
  80. package/lib/cjs/Frustum.js.map +1 -1
  81. package/lib/cjs/GenericInstanceFilter.js.map +1 -1
  82. package/lib/cjs/GeoCoordinateServices.d.ts +1 -0
  83. package/lib/cjs/GeoCoordinateServices.d.ts.map +1 -1
  84. package/lib/cjs/GeoCoordinateServices.js +2 -1
  85. package/lib/cjs/GeoCoordinateServices.js.map +1 -1
  86. package/lib/cjs/GeometryContainment.js.map +1 -1
  87. package/lib/cjs/GeometryParams.js +58 -0
  88. package/lib/cjs/GeometryParams.js.map +1 -1
  89. package/lib/cjs/GeometrySummary.js.map +1 -1
  90. package/lib/cjs/Gradient.d.ts +3 -4
  91. package/lib/cjs/Gradient.d.ts.map +1 -1
  92. package/lib/cjs/Gradient.js +21 -19
  93. package/lib/cjs/Gradient.js.map +1 -1
  94. package/lib/cjs/GraphicParams.js +14 -12
  95. package/lib/cjs/GraphicParams.js.map +1 -1
  96. package/lib/cjs/GroundPlane.js +8 -2
  97. package/lib/cjs/GroundPlane.js.map +1 -1
  98. package/lib/cjs/HSLColor.js +6 -0
  99. package/lib/cjs/HSLColor.js.map +1 -1
  100. package/lib/cjs/HSVColor.js +6 -0
  101. package/lib/cjs/HSVColor.js.map +1 -1
  102. package/lib/cjs/HiddenLine.d.ts +17 -18
  103. package/lib/cjs/HiddenLine.d.ts.map +1 -1
  104. package/lib/cjs/HiddenLine.js +24 -5
  105. package/lib/cjs/HiddenLine.js.map +1 -1
  106. package/lib/cjs/Hilite.js +10 -0
  107. package/lib/cjs/Hilite.js.map +1 -1
  108. package/lib/cjs/IModel.d.ts +3 -12
  109. package/lib/cjs/IModel.d.ts.map +1 -1
  110. package/lib/cjs/IModel.js +47 -23
  111. package/lib/cjs/IModel.js.map +1 -1
  112. package/lib/cjs/IModelError.d.ts +0 -2
  113. package/lib/cjs/IModelError.d.ts.map +1 -1
  114. package/lib/cjs/IModelError.js +3 -8
  115. package/lib/cjs/IModelError.js.map +1 -1
  116. package/lib/cjs/IModelVersion.js +4 -0
  117. package/lib/cjs/IModelVersion.js.map +1 -1
  118. package/lib/cjs/ITwinError.d.ts +63 -27
  119. package/lib/cjs/ITwinError.d.ts.map +1 -1
  120. package/lib/cjs/ITwinError.js +93 -45
  121. package/lib/cjs/ITwinError.js.map +1 -1
  122. package/lib/cjs/Image.d.ts +22 -8
  123. package/lib/cjs/Image.d.ts.map +1 -1
  124. package/lib/cjs/Image.js +20 -4
  125. package/lib/cjs/Image.js.map +1 -1
  126. package/lib/cjs/IpcAppProps.d.ts +2 -0
  127. package/lib/cjs/IpcAppProps.d.ts.map +1 -1
  128. package/lib/cjs/IpcAppProps.js.map +1 -1
  129. package/lib/cjs/LightSettings.js +39 -1
  130. package/lib/cjs/LightSettings.js.map +1 -1
  131. package/lib/cjs/LinePixels.js.map +1 -1
  132. package/lib/cjs/Localization.d.ts +0 -10
  133. package/lib/cjs/Localization.d.ts.map +1 -1
  134. package/lib/cjs/Localization.js +0 -1
  135. package/lib/cjs/Localization.js.map +1 -1
  136. package/lib/cjs/MapImagerySettings.js +3 -2
  137. package/lib/cjs/MapImagerySettings.js.map +1 -1
  138. package/lib/cjs/MapLayerSettings.d.ts +38 -1
  139. package/lib/cjs/MapLayerSettings.d.ts.map +1 -1
  140. package/lib/cjs/MapLayerSettings.js +71 -4
  141. package/lib/cjs/MapLayerSettings.js.map +1 -1
  142. package/lib/cjs/MassProperties.d.ts +2 -0
  143. package/lib/cjs/MassProperties.d.ts.map +1 -1
  144. package/lib/cjs/MassProperties.js.map +1 -1
  145. package/lib/cjs/MaterialProps.js.map +1 -1
  146. package/lib/cjs/ModelClipGroup.js +6 -0
  147. package/lib/cjs/ModelClipGroup.js.map +1 -1
  148. package/lib/cjs/ModelGeometryChanges.js.map +1 -1
  149. package/lib/cjs/ModelProps.js.map +1 -1
  150. package/lib/cjs/NativeAppProps.js.map +1 -1
  151. package/lib/cjs/OctEncodedNormal.js +4 -0
  152. package/lib/cjs/OctEncodedNormal.js.map +1 -1
  153. package/lib/cjs/PlanProjectionSettings.d.ts +1 -2
  154. package/lib/cjs/PlanProjectionSettings.d.ts.map +1 -1
  155. package/lib/cjs/PlanProjectionSettings.js +8 -1
  156. package/lib/cjs/PlanProjectionSettings.js.map +1 -1
  157. package/lib/cjs/PlanarClipMask.d.ts +0 -12
  158. package/lib/cjs/PlanarClipMask.d.ts.map +1 -1
  159. package/lib/cjs/PlanarClipMask.js +24 -2
  160. package/lib/cjs/PlanarClipMask.js.map +1 -1
  161. package/lib/cjs/QPoint.d.ts +5 -5
  162. package/lib/cjs/QPoint.d.ts.map +1 -1
  163. package/lib/cjs/QPoint.js +37 -29
  164. package/lib/cjs/QPoint.js.map +1 -1
  165. package/lib/cjs/RealityDataAccessProps.js.map +1 -1
  166. package/lib/cjs/RealityModelDisplaySettings.js +81 -4
  167. package/lib/cjs/RealityModelDisplaySettings.js.map +1 -1
  168. package/lib/cjs/RenderMaterial.d.ts +0 -43
  169. package/lib/cjs/RenderMaterial.d.ts.map +1 -1
  170. package/lib/cjs/RenderMaterial.js +6 -51
  171. package/lib/cjs/RenderMaterial.js.map +1 -1
  172. package/lib/cjs/RenderPolyline.d.ts +36 -0
  173. package/lib/cjs/RenderPolyline.d.ts.map +1 -0
  174. package/lib/cjs/RenderPolyline.js +26 -0
  175. package/lib/cjs/RenderPolyline.js.map +1 -0
  176. package/lib/cjs/RenderSchedule.d.ts +1 -2
  177. package/lib/cjs/RenderSchedule.d.ts.map +1 -1
  178. package/lib/cjs/RenderSchedule.js +138 -11
  179. package/lib/cjs/RenderSchedule.js.map +1 -1
  180. package/lib/cjs/RenderTexture.d.ts +5 -23
  181. package/lib/cjs/RenderTexture.d.ts.map +1 -1
  182. package/lib/cjs/RenderTexture.js +13 -16
  183. package/lib/cjs/RenderTexture.js.map +1 -1
  184. package/lib/cjs/RgbColor.js +3 -0
  185. package/lib/cjs/RgbColor.js.map +1 -1
  186. package/lib/cjs/RpcInterface.d.ts.map +1 -1
  187. package/lib/cjs/RpcInterface.js +7 -1
  188. package/lib/cjs/RpcInterface.js.map +1 -1
  189. package/lib/cjs/RpcManager.js.map +1 -1
  190. package/lib/cjs/SessionProps.js.map +1 -1
  191. package/lib/cjs/SkyBox.js +17 -4
  192. package/lib/cjs/SkyBox.js.map +1 -1
  193. package/lib/cjs/SolarCalculate.js.map +1 -1
  194. package/lib/cjs/SolarShadows.js +5 -1
  195. package/lib/cjs/SolarShadows.js.map +1 -1
  196. package/lib/cjs/SpatialClassification.js +19 -1
  197. package/lib/cjs/SpatialClassification.js.map +1 -1
  198. package/lib/cjs/SubCategoryAppearance.js +35 -1
  199. package/lib/cjs/SubCategoryAppearance.js.map +1 -1
  200. package/lib/cjs/SubCategoryOverride.js +16 -2
  201. package/lib/cjs/SubCategoryOverride.js.map +1 -1
  202. package/lib/cjs/TerrainSettings.d.ts +0 -7
  203. package/lib/cjs/TerrainSettings.d.ts.map +1 -1
  204. package/lib/cjs/TerrainSettings.js +19 -0
  205. package/lib/cjs/TerrainSettings.js.map +1 -1
  206. package/lib/cjs/TextureMapping.d.ts +17 -14
  207. package/lib/cjs/TextureMapping.d.ts.map +1 -1
  208. package/lib/cjs/TextureMapping.js +47 -19
  209. package/lib/cjs/TextureMapping.js.map +1 -1
  210. package/lib/cjs/TextureProps.js.map +1 -1
  211. package/lib/cjs/ThematicDisplay.js +53 -2
  212. package/lib/cjs/ThematicDisplay.js.map +1 -1
  213. package/lib/cjs/Thumbnail.d.ts +1 -1
  214. package/lib/cjs/Thumbnail.js.map +1 -1
  215. package/lib/cjs/TileProps.js.map +1 -1
  216. package/lib/cjs/Tween.js +28 -19
  217. package/lib/cjs/Tween.js.map +1 -1
  218. package/lib/cjs/TxnAction.js.map +1 -1
  219. package/lib/cjs/ViewDetails.js +10 -6
  220. package/lib/cjs/ViewDetails.js.map +1 -1
  221. package/lib/cjs/ViewFlags.d.ts +1 -3
  222. package/lib/cjs/ViewFlags.d.ts.map +1 -1
  223. package/lib/cjs/ViewFlags.js +86 -5
  224. package/lib/cjs/ViewFlags.js.map +1 -1
  225. package/lib/cjs/ViewProps.d.ts +2 -6
  226. package/lib/cjs/ViewProps.d.ts.map +1 -1
  227. package/lib/cjs/ViewProps.js.map +1 -1
  228. package/lib/cjs/WhiteOnWhiteReversalSettings.js +7 -2
  229. package/lib/cjs/WhiteOnWhiteReversalSettings.js.map +1 -1
  230. package/lib/cjs/annotation/TextAnnotation.d.ts +3 -2
  231. package/lib/cjs/annotation/TextAnnotation.d.ts.map +1 -1
  232. package/lib/cjs/annotation/TextAnnotation.js +13 -2
  233. package/lib/cjs/annotation/TextAnnotation.js.map +1 -1
  234. package/lib/cjs/annotation/TextBlock.d.ts +17 -0
  235. package/lib/cjs/annotation/TextBlock.d.ts.map +1 -1
  236. package/lib/cjs/annotation/TextBlock.js +41 -6
  237. package/lib/cjs/annotation/TextBlock.js.map +1 -1
  238. package/lib/cjs/annotation/TextBlockGeometryProps.js.map +1 -1
  239. package/lib/cjs/annotation/TextBlockLayoutResult.js.map +1 -1
  240. package/lib/cjs/annotation/TextStyle.js +65 -19
  241. package/lib/cjs/annotation/TextStyle.js.map +1 -1
  242. package/lib/cjs/core-common.d.ts +1 -2
  243. package/lib/cjs/core-common.d.ts.map +1 -1
  244. package/lib/cjs/core-common.js +1 -2
  245. package/lib/cjs/core-common.js.map +1 -1
  246. package/lib/cjs/domains/FunctionalElementProps.js.map +1 -1
  247. package/lib/cjs/domains/GenericElementProps.js.map +1 -1
  248. package/lib/cjs/geometry/AdditionalTransform.js +12 -0
  249. package/lib/cjs/geometry/AdditionalTransform.js.map +1 -1
  250. package/lib/cjs/geometry/AreaPattern.js +17 -0
  251. package/lib/cjs/geometry/AreaPattern.js.map +1 -1
  252. package/lib/cjs/geometry/BoundingSphere.js +4 -0
  253. package/lib/cjs/geometry/BoundingSphere.js.map +1 -1
  254. package/lib/cjs/geometry/Cartographic.js +23 -20
  255. package/lib/cjs/geometry/Cartographic.js.map +1 -1
  256. package/lib/cjs/geometry/CoordinateReferenceSystem.js +62 -0
  257. package/lib/cjs/geometry/CoordinateReferenceSystem.js.map +1 -1
  258. package/lib/cjs/geometry/ElementGeometry.js +26 -8
  259. package/lib/cjs/geometry/ElementGeometry.js.map +1 -1
  260. package/lib/cjs/geometry/ElementGeometryFB.js +54 -108
  261. package/lib/cjs/geometry/ElementGeometryFB.js.map +1 -1
  262. package/lib/cjs/geometry/FrustumPlanes.js +1 -0
  263. package/lib/cjs/geometry/FrustumPlanes.js.map +1 -1
  264. package/lib/cjs/geometry/GeodeticDatum.js +100 -0
  265. package/lib/cjs/geometry/GeodeticDatum.js.map +1 -1
  266. package/lib/cjs/geometry/GeodeticEllipsoid.js +16 -0
  267. package/lib/cjs/geometry/GeodeticEllipsoid.js.map +1 -1
  268. package/lib/cjs/geometry/GeometryStream.js +19 -6
  269. package/lib/cjs/geometry/GeometryStream.js.map +1 -1
  270. package/lib/cjs/geometry/ImageGraphic.js +10 -0
  271. package/lib/cjs/geometry/ImageGraphic.js.map +1 -1
  272. package/lib/cjs/geometry/LineStyle.js +14 -0
  273. package/lib/cjs/geometry/LineStyle.js.map +1 -1
  274. package/lib/cjs/geometry/Placement.js +6 -0
  275. package/lib/cjs/geometry/Placement.js.map +1 -1
  276. package/lib/cjs/geometry/Projection.js +75 -0
  277. package/lib/cjs/geometry/Projection.js.map +1 -1
  278. package/lib/cjs/geometry/TextString.js +18 -0
  279. package/lib/cjs/geometry/TextString.js.map +1 -1
  280. package/lib/cjs/{BackendTypes.d.ts → internal/BackendTypes.d.ts} +1 -0
  281. package/lib/cjs/internal/BackendTypes.d.ts.map +1 -0
  282. package/lib/cjs/internal/BackendTypes.js.map +1 -0
  283. package/lib/cjs/internal/PackedFeatureTable.d.ts +111 -0
  284. package/lib/cjs/internal/PackedFeatureTable.d.ts.map +1 -0
  285. package/lib/cjs/internal/PackedFeatureTable.js +359 -0
  286. package/lib/cjs/internal/PackedFeatureTable.js.map +1 -0
  287. package/lib/cjs/internal/RenderMaterialParams.d.ts +47 -0
  288. package/lib/cjs/internal/RenderMaterialParams.d.ts.map +1 -0
  289. package/lib/cjs/internal/RenderMaterialParams.js +68 -0
  290. package/lib/cjs/internal/RenderMaterialParams.js.map +1 -0
  291. package/lib/cjs/internal/RenderMesh.d.ts +52 -0
  292. package/lib/cjs/internal/RenderMesh.d.ts.map +1 -0
  293. package/lib/cjs/{Render.js → internal/RenderMesh.js} +12 -31
  294. package/lib/cjs/internal/RenderMesh.js.map +1 -0
  295. package/lib/cjs/internal/RenderTextureParams.d.ts +25 -0
  296. package/lib/cjs/internal/RenderTextureParams.d.ts.map +1 -0
  297. package/lib/cjs/internal/RenderTextureParams.js +37 -0
  298. package/lib/cjs/internal/RenderTextureParams.js.map +1 -0
  299. package/lib/cjs/internal/Snapping.js.map +1 -1
  300. package/lib/cjs/internal/cross-package.d.ts +5 -0
  301. package/lib/cjs/internal/cross-package.d.ts.map +1 -1
  302. package/lib/cjs/internal/cross-package.js +16 -0
  303. package/lib/cjs/internal/cross-package.js.map +1 -1
  304. package/lib/cjs/ipc/IpcSession.js +1 -0
  305. package/lib/cjs/ipc/IpcSession.js.map +1 -1
  306. package/lib/cjs/ipc/IpcSocket.d.ts +3 -0
  307. package/lib/cjs/ipc/IpcSocket.d.ts.map +1 -1
  308. package/lib/cjs/ipc/IpcSocket.js.map +1 -1
  309. package/lib/cjs/ipc/IpcWebSocket.js +7 -6
  310. package/lib/cjs/ipc/IpcWebSocket.js.map +1 -1
  311. package/lib/cjs/ipc/IpcWebSocketTransport.js +8 -7
  312. package/lib/cjs/ipc/IpcWebSocketTransport.js.map +1 -1
  313. package/lib/cjs/rpc/DevToolsRpcInterface.js +6 -6
  314. package/lib/cjs/rpc/DevToolsRpcInterface.js.map +1 -1
  315. package/lib/cjs/rpc/IModelReadRpcInterface.js +8 -11
  316. package/lib/cjs/rpc/IModelReadRpcInterface.js.map +1 -1
  317. package/lib/cjs/rpc/IModelTileRpcInterface.js +4 -4
  318. package/lib/cjs/rpc/IModelTileRpcInterface.js.map +1 -1
  319. package/lib/cjs/rpc/SnapshotIModelRpcInterface.js +4 -4
  320. package/lib/cjs/rpc/SnapshotIModelRpcInterface.js.map +1 -1
  321. package/lib/cjs/rpc/TestRpcManager.js +1 -4
  322. package/lib/cjs/rpc/TestRpcManager.js.map +1 -1
  323. package/lib/cjs/rpc/core/RpcConfiguration.js +51 -64
  324. package/lib/cjs/rpc/core/RpcConfiguration.js.map +1 -1
  325. package/lib/cjs/rpc/core/RpcConstants.js.map +1 -1
  326. package/lib/cjs/rpc/core/RpcControl.js +29 -38
  327. package/lib/cjs/rpc/core/RpcControl.js.map +1 -1
  328. package/lib/cjs/rpc/core/RpcInvocation.js +19 -13
  329. package/lib/cjs/rpc/core/RpcInvocation.js.map +1 -1
  330. package/lib/cjs/rpc/core/RpcMarshaling.d.ts +1 -4
  331. package/lib/cjs/rpc/core/RpcMarshaling.d.ts.map +1 -1
  332. package/lib/cjs/rpc/core/RpcMarshaling.js +5 -4
  333. package/lib/cjs/rpc/core/RpcMarshaling.js.map +1 -1
  334. package/lib/cjs/rpc/core/RpcOperation.js +29 -31
  335. package/lib/cjs/rpc/core/RpcOperation.js.map +1 -1
  336. package/lib/cjs/rpc/core/RpcPendingQueue.js +17 -16
  337. package/lib/cjs/rpc/core/RpcPendingQueue.js.map +1 -1
  338. package/lib/cjs/rpc/core/RpcProtocol.js +32 -30
  339. package/lib/cjs/rpc/core/RpcProtocol.js.map +1 -1
  340. package/lib/cjs/rpc/core/RpcPush.js +15 -8
  341. package/lib/cjs/rpc/core/RpcPush.js.map +1 -1
  342. package/lib/cjs/rpc/core/RpcRegistry.d.ts.map +1 -1
  343. package/lib/cjs/rpc/core/RpcRegistry.js +10 -9
  344. package/lib/cjs/rpc/core/RpcRegistry.js.map +1 -1
  345. package/lib/cjs/rpc/core/RpcRequest.d.ts +2 -2
  346. package/lib/cjs/rpc/core/RpcRequest.d.ts.map +1 -1
  347. package/lib/cjs/rpc/core/RpcRequest.js +51 -29
  348. package/lib/cjs/rpc/core/RpcRequest.js.map +1 -1
  349. package/lib/cjs/rpc/core/RpcRequestContext.js.map +1 -1
  350. package/lib/cjs/rpc/core/RpcRoutingToken.js +4 -2
  351. package/lib/cjs/rpc/core/RpcRoutingToken.js.map +1 -1
  352. package/lib/cjs/rpc/core/RpcSessionInvocation.js +5 -10
  353. package/lib/cjs/rpc/core/RpcSessionInvocation.js.map +1 -1
  354. package/lib/cjs/rpc/web/BentleyCloudRpcManager.js +11 -17
  355. package/lib/cjs/rpc/web/BentleyCloudRpcManager.js.map +1 -1
  356. package/lib/cjs/rpc/web/BentleyCloudRpcProtocol.js +16 -19
  357. package/lib/cjs/rpc/web/BentleyCloudRpcProtocol.js.map +1 -1
  358. package/lib/cjs/rpc/web/OpenAPI.js +2 -0
  359. package/lib/cjs/rpc/web/OpenAPI.js.map +1 -1
  360. package/lib/cjs/rpc/web/RpcMultipart.d.ts +1 -1
  361. package/lib/cjs/rpc/web/RpcMultipart.d.ts.map +1 -1
  362. package/lib/cjs/rpc/web/RpcMultipart.js +13 -12
  363. package/lib/cjs/rpc/web/RpcMultipart.js.map +1 -1
  364. package/lib/cjs/rpc/web/WebAppRpcLogging.d.ts +3 -0
  365. package/lib/cjs/rpc/web/WebAppRpcLogging.d.ts.map +1 -1
  366. package/lib/cjs/rpc/web/WebAppRpcLogging.js +1 -6
  367. package/lib/cjs/rpc/web/WebAppRpcLogging.js.map +1 -1
  368. package/lib/cjs/rpc/web/WebAppRpcProtocol.d.ts +1 -1
  369. package/lib/cjs/rpc/web/WebAppRpcProtocol.d.ts.map +1 -1
  370. package/lib/cjs/rpc/web/WebAppRpcProtocol.js +6 -6
  371. package/lib/cjs/rpc/web/WebAppRpcProtocol.js.map +1 -1
  372. package/lib/cjs/rpc/web/WebAppRpcRequest.d.ts.map +1 -1
  373. package/lib/cjs/rpc/web/WebAppRpcRequest.js +27 -27
  374. package/lib/cjs/rpc/web/WebAppRpcRequest.js.map +1 -1
  375. package/lib/cjs/rpc/web/multipart/RpcMultipartParser.d.ts +0 -2
  376. package/lib/cjs/rpc/web/multipart/RpcMultipartParser.d.ts.map +1 -1
  377. package/lib/cjs/rpc/web/multipart/RpcMultipartParser.js +14 -8
  378. package/lib/cjs/rpc/web/multipart/RpcMultipartParser.js.map +1 -1
  379. package/lib/cjs/tile/B3dmTileIO.js +7 -0
  380. package/lib/cjs/tile/B3dmTileIO.js.map +1 -1
  381. package/lib/cjs/tile/CompositeTileIO.js +3 -0
  382. package/lib/cjs/tile/CompositeTileIO.js.map +1 -1
  383. package/lib/cjs/tile/ElementGraphics.js.map +1 -1
  384. package/lib/cjs/tile/GltfTileIO.js +4 -3
  385. package/lib/cjs/tile/GltfTileIO.js.map +1 -1
  386. package/lib/cjs/tile/I3dmTileIO.js +8 -0
  387. package/lib/cjs/tile/I3dmTileIO.js.map +1 -1
  388. package/lib/cjs/tile/IModelTileIO.d.ts +2 -2
  389. package/lib/cjs/tile/IModelTileIO.js +26 -3
  390. package/lib/cjs/tile/IModelTileIO.js.map +1 -1
  391. package/lib/cjs/tile/PntsTileIO.js +5 -0
  392. package/lib/cjs/tile/PntsTileIO.js.map +1 -1
  393. package/lib/cjs/tile/TileIO.js +2 -0
  394. package/lib/cjs/tile/TileIO.js.map +1 -1
  395. package/lib/cjs/tile/TileMetadata.js +9 -1
  396. package/lib/cjs/tile/TileMetadata.js.map +1 -1
  397. package/lib/cjs/tile/Tileset3dSchema.js.map +1 -1
  398. package/lib/esm/AmbientOcclusion.js +17 -9
  399. package/lib/esm/AmbientOcclusion.js.map +1 -1
  400. package/lib/esm/AnalysisStyle.d.ts +0 -3
  401. package/lib/esm/AnalysisStyle.d.ts.map +1 -1
  402. package/lib/esm/AnalysisStyle.js +20 -4
  403. package/lib/esm/AnalysisStyle.js.map +1 -1
  404. package/lib/esm/Atmosphere.js +39 -21
  405. package/lib/esm/Atmosphere.js.map +1 -1
  406. package/lib/esm/AuthorizationClient.js.map +1 -1
  407. package/lib/esm/BackgroundMapProvider.js +4 -0
  408. package/lib/esm/BackgroundMapProvider.js.map +1 -1
  409. package/lib/esm/BackgroundMapSettings.js +19 -0
  410. package/lib/esm/BackgroundMapSettings.js.map +1 -1
  411. package/lib/esm/Base64EncodedString.js.map +1 -1
  412. package/lib/esm/BlobReader.js +8 -6
  413. package/lib/esm/BlobReader.js.map +1 -1
  414. package/lib/esm/BriefcaseTypes.d.ts +2 -2
  415. package/lib/esm/BriefcaseTypes.d.ts.map +1 -1
  416. package/lib/esm/BriefcaseTypes.js.map +1 -1
  417. package/lib/esm/Camera.js +3 -0
  418. package/lib/esm/Camera.js.map +1 -1
  419. package/lib/esm/ChangedElements.js.map +1 -1
  420. package/lib/esm/ChangedEntities.js.map +1 -1
  421. package/lib/esm/ChangesetProps.d.ts +1 -1
  422. package/lib/esm/ChangesetProps.js.map +1 -1
  423. package/lib/esm/ClipStyle.js +31 -5
  424. package/lib/esm/ClipStyle.js.map +1 -1
  425. package/lib/esm/Code.d.ts +0 -5
  426. package/lib/esm/Code.d.ts.map +1 -1
  427. package/lib/esm/Code.js +16 -11
  428. package/lib/esm/Code.js.map +1 -1
  429. package/lib/esm/ColorByName.js.map +1 -1
  430. package/lib/esm/ColorDef.js +11 -10
  431. package/lib/esm/ColorDef.js.map +1 -1
  432. package/lib/esm/CommonLoggerCategory.js.map +1 -1
  433. package/lib/esm/ConcurrentQuery.d.ts +37 -1
  434. package/lib/esm/ConcurrentQuery.d.ts.map +1 -1
  435. package/lib/esm/ConcurrentQuery.js +16 -3
  436. package/lib/esm/ConcurrentQuery.js.map +1 -1
  437. package/lib/esm/ContextRealityModel.js +53 -27
  438. package/lib/esm/ContextRealityModel.js.map +1 -1
  439. package/lib/esm/ContourDisplay.js +40 -5
  440. package/lib/esm/ContourDisplay.js.map +1 -1
  441. package/lib/esm/DisplayStyleSettings.js +95 -63
  442. package/lib/esm/DisplayStyleSettings.js.map +1 -1
  443. package/lib/esm/ECSchemaProps.js.map +1 -1
  444. package/lib/esm/ECSqlReader.d.ts +2 -0
  445. package/lib/esm/ECSqlReader.d.ts.map +1 -1
  446. package/lib/esm/ECSqlReader.js +56 -50
  447. package/lib/esm/ECSqlReader.js.map +1 -1
  448. package/lib/esm/ECSqlTypes.js.map +1 -1
  449. package/lib/esm/ElementMesh.js.map +1 -1
  450. package/lib/esm/ElementProps.d.ts.map +1 -1
  451. package/lib/esm/ElementProps.js +8 -4
  452. package/lib/esm/ElementProps.js.map +1 -1
  453. package/lib/esm/EmphasizeElementsProps.js.map +1 -1
  454. package/lib/esm/EntityProps.d.ts +25 -2
  455. package/lib/esm/EntityProps.d.ts.map +1 -1
  456. package/lib/esm/EntityProps.js +39 -0
  457. package/lib/esm/EntityProps.js.map +1 -1
  458. package/lib/esm/EntityReference.js.map +1 -1
  459. package/lib/esm/Environment.js +25 -2
  460. package/lib/esm/Environment.js.map +1 -1
  461. package/lib/esm/FeatureIndex.js +15 -6
  462. package/lib/esm/FeatureIndex.js.map +1 -1
  463. package/lib/esm/FeatureSymbology.d.ts +25 -73
  464. package/lib/esm/FeatureSymbology.d.ts.map +1 -1
  465. package/lib/esm/FeatureSymbology.js +88 -103
  466. package/lib/esm/FeatureSymbology.js.map +1 -1
  467. package/lib/esm/FeatureTable.d.ts +6 -108
  468. package/lib/esm/FeatureTable.d.ts.map +1 -1
  469. package/lib/esm/FeatureTable.js +11 -324
  470. package/lib/esm/FeatureTable.js.map +1 -1
  471. package/lib/esm/Fonts.d.ts +68 -10
  472. package/lib/esm/Fonts.d.ts.map +1 -1
  473. package/lib/esm/Fonts.js +19 -4
  474. package/lib/esm/Fonts.js.map +1 -1
  475. package/lib/esm/Frustum.js +2 -2
  476. package/lib/esm/Frustum.js.map +1 -1
  477. package/lib/esm/GenericInstanceFilter.js.map +1 -1
  478. package/lib/esm/GeoCoordinateServices.d.ts +1 -0
  479. package/lib/esm/GeoCoordinateServices.d.ts.map +1 -1
  480. package/lib/esm/GeoCoordinateServices.js +2 -1
  481. package/lib/esm/GeoCoordinateServices.js.map +1 -1
  482. package/lib/esm/GeometryContainment.js.map +1 -1
  483. package/lib/esm/GeometryParams.js +58 -0
  484. package/lib/esm/GeometryParams.js.map +1 -1
  485. package/lib/esm/GeometrySummary.js.map +1 -1
  486. package/lib/esm/Gradient.d.ts +3 -4
  487. package/lib/esm/Gradient.d.ts.map +1 -1
  488. package/lib/esm/Gradient.js +21 -19
  489. package/lib/esm/Gradient.js.map +1 -1
  490. package/lib/esm/GraphicParams.js +14 -12
  491. package/lib/esm/GraphicParams.js.map +1 -1
  492. package/lib/esm/GroundPlane.js +8 -2
  493. package/lib/esm/GroundPlane.js.map +1 -1
  494. package/lib/esm/HSLColor.js +6 -0
  495. package/lib/esm/HSLColor.js.map +1 -1
  496. package/lib/esm/HSVColor.js +6 -0
  497. package/lib/esm/HSVColor.js.map +1 -1
  498. package/lib/esm/HiddenLine.d.ts +17 -18
  499. package/lib/esm/HiddenLine.d.ts.map +1 -1
  500. package/lib/esm/HiddenLine.js +24 -5
  501. package/lib/esm/HiddenLine.js.map +1 -1
  502. package/lib/esm/Hilite.js +10 -0
  503. package/lib/esm/Hilite.js.map +1 -1
  504. package/lib/esm/IModel.d.ts +3 -12
  505. package/lib/esm/IModel.d.ts.map +1 -1
  506. package/lib/esm/IModel.js +47 -23
  507. package/lib/esm/IModel.js.map +1 -1
  508. package/lib/esm/IModelError.d.ts +0 -2
  509. package/lib/esm/IModelError.d.ts.map +1 -1
  510. package/lib/esm/IModelError.js +2 -1
  511. package/lib/esm/IModelError.js.map +1 -1
  512. package/lib/esm/IModelVersion.js +4 -0
  513. package/lib/esm/IModelVersion.js.map +1 -1
  514. package/lib/esm/ITwinError.d.ts +63 -27
  515. package/lib/esm/ITwinError.d.ts.map +1 -1
  516. package/lib/esm/ITwinError.js +87 -44
  517. package/lib/esm/ITwinError.js.map +1 -1
  518. package/lib/esm/Image.d.ts +22 -8
  519. package/lib/esm/Image.d.ts.map +1 -1
  520. package/lib/esm/Image.js +19 -4
  521. package/lib/esm/Image.js.map +1 -1
  522. package/lib/esm/IpcAppProps.d.ts +2 -0
  523. package/lib/esm/IpcAppProps.d.ts.map +1 -1
  524. package/lib/esm/IpcAppProps.js.map +1 -1
  525. package/lib/esm/LightSettings.js +39 -1
  526. package/lib/esm/LightSettings.js.map +1 -1
  527. package/lib/esm/LinePixels.js.map +1 -1
  528. package/lib/esm/Localization.d.ts +0 -10
  529. package/lib/esm/Localization.d.ts.map +1 -1
  530. package/lib/esm/Localization.js +0 -1
  531. package/lib/esm/Localization.js.map +1 -1
  532. package/lib/esm/MapImagerySettings.js +3 -2
  533. package/lib/esm/MapImagerySettings.js.map +1 -1
  534. package/lib/esm/MapLayerSettings.d.ts +38 -1
  535. package/lib/esm/MapLayerSettings.d.ts.map +1 -1
  536. package/lib/esm/MapLayerSettings.js +70 -3
  537. package/lib/esm/MapLayerSettings.js.map +1 -1
  538. package/lib/esm/MassProperties.d.ts +2 -0
  539. package/lib/esm/MassProperties.d.ts.map +1 -1
  540. package/lib/esm/MassProperties.js.map +1 -1
  541. package/lib/esm/MaterialProps.js.map +1 -1
  542. package/lib/esm/ModelClipGroup.js +6 -0
  543. package/lib/esm/ModelClipGroup.js.map +1 -1
  544. package/lib/esm/ModelGeometryChanges.js.map +1 -1
  545. package/lib/esm/ModelProps.js.map +1 -1
  546. package/lib/esm/NativeAppProps.js.map +1 -1
  547. package/lib/esm/OctEncodedNormal.js +4 -0
  548. package/lib/esm/OctEncodedNormal.js.map +1 -1
  549. package/lib/esm/PlanProjectionSettings.d.ts +1 -2
  550. package/lib/esm/PlanProjectionSettings.d.ts.map +1 -1
  551. package/lib/esm/PlanProjectionSettings.js +8 -1
  552. package/lib/esm/PlanProjectionSettings.js.map +1 -1
  553. package/lib/esm/PlanarClipMask.d.ts +0 -12
  554. package/lib/esm/PlanarClipMask.d.ts.map +1 -1
  555. package/lib/esm/PlanarClipMask.js +24 -2
  556. package/lib/esm/PlanarClipMask.js.map +1 -1
  557. package/lib/esm/QPoint.d.ts +5 -5
  558. package/lib/esm/QPoint.d.ts.map +1 -1
  559. package/lib/esm/QPoint.js +37 -29
  560. package/lib/esm/QPoint.js.map +1 -1
  561. package/lib/esm/RealityDataAccessProps.js.map +1 -1
  562. package/lib/esm/RealityModelDisplaySettings.js +81 -4
  563. package/lib/esm/RealityModelDisplaySettings.js.map +1 -1
  564. package/lib/esm/RenderMaterial.d.ts +0 -43
  565. package/lib/esm/RenderMaterial.d.ts.map +1 -1
  566. package/lib/esm/RenderMaterial.js +6 -51
  567. package/lib/esm/RenderMaterial.js.map +1 -1
  568. package/lib/esm/RenderPolyline.d.ts +36 -0
  569. package/lib/esm/RenderPolyline.d.ts.map +1 -0
  570. package/lib/esm/RenderPolyline.js +23 -0
  571. package/lib/esm/RenderPolyline.js.map +1 -0
  572. package/lib/esm/RenderSchedule.d.ts +1 -2
  573. package/lib/esm/RenderSchedule.d.ts.map +1 -1
  574. package/lib/esm/RenderSchedule.js +138 -11
  575. package/lib/esm/RenderSchedule.js.map +1 -1
  576. package/lib/esm/RenderTexture.d.ts +5 -23
  577. package/lib/esm/RenderTexture.d.ts.map +1 -1
  578. package/lib/esm/RenderTexture.js +13 -16
  579. package/lib/esm/RenderTexture.js.map +1 -1
  580. package/lib/esm/RgbColor.js +3 -0
  581. package/lib/esm/RgbColor.js.map +1 -1
  582. package/lib/esm/RpcInterface.d.ts.map +1 -1
  583. package/lib/esm/RpcInterface.js +8 -2
  584. package/lib/esm/RpcInterface.js.map +1 -1
  585. package/lib/esm/RpcManager.js.map +1 -1
  586. package/lib/esm/SessionProps.js.map +1 -1
  587. package/lib/esm/SkyBox.js +17 -4
  588. package/lib/esm/SkyBox.js.map +1 -1
  589. package/lib/esm/SolarCalculate.js.map +1 -1
  590. package/lib/esm/SolarShadows.js +5 -1
  591. package/lib/esm/SolarShadows.js.map +1 -1
  592. package/lib/esm/SpatialClassification.js +19 -1
  593. package/lib/esm/SpatialClassification.js.map +1 -1
  594. package/lib/esm/SubCategoryAppearance.js +35 -1
  595. package/lib/esm/SubCategoryAppearance.js.map +1 -1
  596. package/lib/esm/SubCategoryOverride.js +16 -2
  597. package/lib/esm/SubCategoryOverride.js.map +1 -1
  598. package/lib/esm/TerrainSettings.d.ts +0 -7
  599. package/lib/esm/TerrainSettings.d.ts.map +1 -1
  600. package/lib/esm/TerrainSettings.js +19 -0
  601. package/lib/esm/TerrainSettings.js.map +1 -1
  602. package/lib/esm/TextureMapping.d.ts +17 -14
  603. package/lib/esm/TextureMapping.d.ts.map +1 -1
  604. package/lib/esm/TextureMapping.js +47 -19
  605. package/lib/esm/TextureMapping.js.map +1 -1
  606. package/lib/esm/TextureProps.js.map +1 -1
  607. package/lib/esm/ThematicDisplay.js +53 -2
  608. package/lib/esm/ThematicDisplay.js.map +1 -1
  609. package/lib/esm/Thumbnail.d.ts +1 -1
  610. package/lib/esm/Thumbnail.js.map +1 -1
  611. package/lib/esm/TileProps.js.map +1 -1
  612. package/lib/esm/Tween.js +28 -19
  613. package/lib/esm/Tween.js.map +1 -1
  614. package/lib/esm/TxnAction.js.map +1 -1
  615. package/lib/esm/ViewDetails.js +10 -6
  616. package/lib/esm/ViewDetails.js.map +1 -1
  617. package/lib/esm/ViewFlags.d.ts +1 -3
  618. package/lib/esm/ViewFlags.d.ts.map +1 -1
  619. package/lib/esm/ViewFlags.js +86 -5
  620. package/lib/esm/ViewFlags.js.map +1 -1
  621. package/lib/esm/ViewProps.d.ts +2 -6
  622. package/lib/esm/ViewProps.d.ts.map +1 -1
  623. package/lib/esm/ViewProps.js.map +1 -1
  624. package/lib/esm/WhiteOnWhiteReversalSettings.js +7 -2
  625. package/lib/esm/WhiteOnWhiteReversalSettings.js.map +1 -1
  626. package/lib/esm/annotation/TextAnnotation.d.ts +3 -2
  627. package/lib/esm/annotation/TextAnnotation.d.ts.map +1 -1
  628. package/lib/esm/annotation/TextAnnotation.js +13 -2
  629. package/lib/esm/annotation/TextAnnotation.js.map +1 -1
  630. package/lib/esm/annotation/TextBlock.d.ts +17 -0
  631. package/lib/esm/annotation/TextBlock.d.ts.map +1 -1
  632. package/lib/esm/annotation/TextBlock.js +41 -6
  633. package/lib/esm/annotation/TextBlock.js.map +1 -1
  634. package/lib/esm/annotation/TextBlockGeometryProps.js.map +1 -1
  635. package/lib/esm/annotation/TextBlockLayoutResult.js.map +1 -1
  636. package/lib/esm/annotation/TextStyle.js +65 -19
  637. package/lib/esm/annotation/TextStyle.js.map +1 -1
  638. package/lib/esm/core-common.d.ts +1 -2
  639. package/lib/esm/core-common.d.ts.map +1 -1
  640. package/lib/esm/core-common.js +1 -2
  641. package/lib/esm/core-common.js.map +1 -1
  642. package/lib/esm/domains/FunctionalElementProps.js.map +1 -1
  643. package/lib/esm/domains/GenericElementProps.js.map +1 -1
  644. package/lib/esm/geometry/AdditionalTransform.js +12 -0
  645. package/lib/esm/geometry/AdditionalTransform.js.map +1 -1
  646. package/lib/esm/geometry/AreaPattern.js +17 -0
  647. package/lib/esm/geometry/AreaPattern.js.map +1 -1
  648. package/lib/esm/geometry/BoundingSphere.js +4 -0
  649. package/lib/esm/geometry/BoundingSphere.js.map +1 -1
  650. package/lib/esm/geometry/Cartographic.js +23 -20
  651. package/lib/esm/geometry/Cartographic.js.map +1 -1
  652. package/lib/esm/geometry/CoordinateReferenceSystem.js +62 -0
  653. package/lib/esm/geometry/CoordinateReferenceSystem.js.map +1 -1
  654. package/lib/esm/geometry/ElementGeometry.js +26 -8
  655. package/lib/esm/geometry/ElementGeometry.js.map +1 -1
  656. package/lib/esm/geometry/ElementGeometryFB.js +54 -108
  657. package/lib/esm/geometry/ElementGeometryFB.js.map +1 -1
  658. package/lib/esm/geometry/FrustumPlanes.js +1 -0
  659. package/lib/esm/geometry/FrustumPlanes.js.map +1 -1
  660. package/lib/esm/geometry/GeodeticDatum.js +100 -0
  661. package/lib/esm/geometry/GeodeticDatum.js.map +1 -1
  662. package/lib/esm/geometry/GeodeticEllipsoid.js +16 -0
  663. package/lib/esm/geometry/GeodeticEllipsoid.js.map +1 -1
  664. package/lib/esm/geometry/GeometryStream.js +19 -6
  665. package/lib/esm/geometry/GeometryStream.js.map +1 -1
  666. package/lib/esm/geometry/ImageGraphic.js +10 -0
  667. package/lib/esm/geometry/ImageGraphic.js.map +1 -1
  668. package/lib/esm/geometry/LineStyle.js +14 -0
  669. package/lib/esm/geometry/LineStyle.js.map +1 -1
  670. package/lib/esm/geometry/Placement.js +6 -0
  671. package/lib/esm/geometry/Placement.js.map +1 -1
  672. package/lib/esm/geometry/Projection.js +75 -0
  673. package/lib/esm/geometry/Projection.js.map +1 -1
  674. package/lib/esm/geometry/TextString.js +18 -0
  675. package/lib/esm/geometry/TextString.js.map +1 -1
  676. package/lib/esm/{BackendTypes.d.ts → internal/BackendTypes.d.ts} +1 -0
  677. package/lib/esm/internal/BackendTypes.d.ts.map +1 -0
  678. package/lib/esm/internal/BackendTypes.js.map +1 -0
  679. package/lib/esm/internal/PackedFeatureTable.d.ts +111 -0
  680. package/lib/esm/internal/PackedFeatureTable.d.ts.map +1 -0
  681. package/lib/esm/internal/PackedFeatureTable.js +352 -0
  682. package/lib/esm/internal/PackedFeatureTable.js.map +1 -0
  683. package/lib/esm/internal/RenderMaterialParams.d.ts +47 -0
  684. package/lib/esm/internal/RenderMaterialParams.d.ts.map +1 -0
  685. package/lib/esm/internal/RenderMaterialParams.js +64 -0
  686. package/lib/esm/internal/RenderMaterialParams.js.map +1 -0
  687. package/lib/esm/internal/RenderMesh.d.ts +52 -0
  688. package/lib/esm/internal/RenderMesh.d.ts.map +1 -0
  689. package/lib/esm/{Render.js → internal/RenderMesh.js} +11 -29
  690. package/lib/esm/internal/RenderMesh.js.map +1 -0
  691. package/lib/esm/internal/RenderTextureParams.d.ts +25 -0
  692. package/lib/esm/internal/RenderTextureParams.d.ts.map +1 -0
  693. package/lib/esm/internal/RenderTextureParams.js +33 -0
  694. package/lib/esm/internal/RenderTextureParams.js.map +1 -0
  695. package/lib/esm/internal/Snapping.js.map +1 -1
  696. package/lib/esm/internal/cross-package.d.ts +5 -0
  697. package/lib/esm/internal/cross-package.d.ts.map +1 -1
  698. package/lib/esm/internal/cross-package.js +4 -1
  699. package/lib/esm/internal/cross-package.js.map +1 -1
  700. package/lib/esm/ipc/IpcSession.js +1 -0
  701. package/lib/esm/ipc/IpcSession.js.map +1 -1
  702. package/lib/esm/ipc/IpcSocket.d.ts +3 -0
  703. package/lib/esm/ipc/IpcSocket.d.ts.map +1 -1
  704. package/lib/esm/ipc/IpcSocket.js.map +1 -1
  705. package/lib/esm/ipc/IpcWebSocket.js +7 -6
  706. package/lib/esm/ipc/IpcWebSocket.js.map +1 -1
  707. package/lib/esm/ipc/IpcWebSocketTransport.js +8 -7
  708. package/lib/esm/ipc/IpcWebSocketTransport.js.map +1 -1
  709. package/lib/esm/rpc/DevToolsRpcInterface.js +6 -6
  710. package/lib/esm/rpc/DevToolsRpcInterface.js.map +1 -1
  711. package/lib/esm/rpc/IModelReadRpcInterface.js +8 -11
  712. package/lib/esm/rpc/IModelReadRpcInterface.js.map +1 -1
  713. package/lib/esm/rpc/IModelTileRpcInterface.js +4 -4
  714. package/lib/esm/rpc/IModelTileRpcInterface.js.map +1 -1
  715. package/lib/esm/rpc/SnapshotIModelRpcInterface.js +4 -4
  716. package/lib/esm/rpc/SnapshotIModelRpcInterface.js.map +1 -1
  717. package/lib/esm/rpc/TestRpcManager.js +1 -4
  718. package/lib/esm/rpc/TestRpcManager.js.map +1 -1
  719. package/lib/esm/rpc/core/RpcConfiguration.js +51 -64
  720. package/lib/esm/rpc/core/RpcConfiguration.js.map +1 -1
  721. package/lib/esm/rpc/core/RpcConstants.js.map +1 -1
  722. package/lib/esm/rpc/core/RpcControl.js +29 -38
  723. package/lib/esm/rpc/core/RpcControl.js.map +1 -1
  724. package/lib/esm/rpc/core/RpcInvocation.js +19 -13
  725. package/lib/esm/rpc/core/RpcInvocation.js.map +1 -1
  726. package/lib/esm/rpc/core/RpcMarshaling.d.ts +1 -4
  727. package/lib/esm/rpc/core/RpcMarshaling.d.ts.map +1 -1
  728. package/lib/esm/rpc/core/RpcMarshaling.js +2 -1
  729. package/lib/esm/rpc/core/RpcMarshaling.js.map +1 -1
  730. package/lib/esm/rpc/core/RpcOperation.js +29 -31
  731. package/lib/esm/rpc/core/RpcOperation.js.map +1 -1
  732. package/lib/esm/rpc/core/RpcPendingQueue.js +17 -16
  733. package/lib/esm/rpc/core/RpcPendingQueue.js.map +1 -1
  734. package/lib/esm/rpc/core/RpcProtocol.js +32 -30
  735. package/lib/esm/rpc/core/RpcProtocol.js.map +1 -1
  736. package/lib/esm/rpc/core/RpcPush.js +15 -8
  737. package/lib/esm/rpc/core/RpcPush.js.map +1 -1
  738. package/lib/esm/rpc/core/RpcRegistry.d.ts.map +1 -1
  739. package/lib/esm/rpc/core/RpcRegistry.js +10 -9
  740. package/lib/esm/rpc/core/RpcRegistry.js.map +1 -1
  741. package/lib/esm/rpc/core/RpcRequest.d.ts +2 -2
  742. package/lib/esm/rpc/core/RpcRequest.d.ts.map +1 -1
  743. package/lib/esm/rpc/core/RpcRequest.js +51 -29
  744. package/lib/esm/rpc/core/RpcRequest.js.map +1 -1
  745. package/lib/esm/rpc/core/RpcRequestContext.js.map +1 -1
  746. package/lib/esm/rpc/core/RpcRoutingToken.js +4 -2
  747. package/lib/esm/rpc/core/RpcRoutingToken.js.map +1 -1
  748. package/lib/esm/rpc/core/RpcSessionInvocation.js +5 -10
  749. package/lib/esm/rpc/core/RpcSessionInvocation.js.map +1 -1
  750. package/lib/esm/rpc/web/BentleyCloudRpcManager.js +11 -17
  751. package/lib/esm/rpc/web/BentleyCloudRpcManager.js.map +1 -1
  752. package/lib/esm/rpc/web/BentleyCloudRpcProtocol.js +16 -19
  753. package/lib/esm/rpc/web/BentleyCloudRpcProtocol.js.map +1 -1
  754. package/lib/esm/rpc/web/OpenAPI.js +2 -0
  755. package/lib/esm/rpc/web/OpenAPI.js.map +1 -1
  756. package/lib/esm/rpc/web/RpcMultipart.d.ts +1 -1
  757. package/lib/esm/rpc/web/RpcMultipart.d.ts.map +1 -1
  758. package/lib/esm/rpc/web/RpcMultipart.js +14 -13
  759. package/lib/esm/rpc/web/RpcMultipart.js.map +1 -1
  760. package/lib/esm/rpc/web/WebAppRpcLogging.d.ts +3 -0
  761. package/lib/esm/rpc/web/WebAppRpcLogging.d.ts.map +1 -1
  762. package/lib/esm/rpc/web/WebAppRpcLogging.js +1 -6
  763. package/lib/esm/rpc/web/WebAppRpcLogging.js.map +1 -1
  764. package/lib/esm/rpc/web/WebAppRpcProtocol.d.ts +1 -1
  765. package/lib/esm/rpc/web/WebAppRpcProtocol.d.ts.map +1 -1
  766. package/lib/esm/rpc/web/WebAppRpcProtocol.js +6 -6
  767. package/lib/esm/rpc/web/WebAppRpcProtocol.js.map +1 -1
  768. package/lib/esm/rpc/web/WebAppRpcRequest.d.ts.map +1 -1
  769. package/lib/esm/rpc/web/WebAppRpcRequest.js +27 -27
  770. package/lib/esm/rpc/web/WebAppRpcRequest.js.map +1 -1
  771. package/lib/esm/rpc/web/multipart/RpcMultipartParser.d.ts +0 -2
  772. package/lib/esm/rpc/web/multipart/RpcMultipartParser.d.ts.map +1 -1
  773. package/lib/esm/rpc/web/multipart/RpcMultipartParser.js +14 -8
  774. package/lib/esm/rpc/web/multipart/RpcMultipartParser.js.map +1 -1
  775. package/lib/esm/tile/B3dmTileIO.js +7 -0
  776. package/lib/esm/tile/B3dmTileIO.js.map +1 -1
  777. package/lib/esm/tile/CompositeTileIO.js +3 -0
  778. package/lib/esm/tile/CompositeTileIO.js.map +1 -1
  779. package/lib/esm/tile/ElementGraphics.js.map +1 -1
  780. package/lib/esm/tile/GltfTileIO.js +4 -3
  781. package/lib/esm/tile/GltfTileIO.js.map +1 -1
  782. package/lib/esm/tile/I3dmTileIO.js +8 -0
  783. package/lib/esm/tile/I3dmTileIO.js.map +1 -1
  784. package/lib/esm/tile/IModelTileIO.d.ts +2 -2
  785. package/lib/esm/tile/IModelTileIO.js +26 -3
  786. package/lib/esm/tile/IModelTileIO.js.map +1 -1
  787. package/lib/esm/tile/PntsTileIO.js +5 -0
  788. package/lib/esm/tile/PntsTileIO.js.map +1 -1
  789. package/lib/esm/tile/TileIO.js +2 -0
  790. package/lib/esm/tile/TileIO.js.map +1 -1
  791. package/lib/esm/tile/TileMetadata.js +9 -1
  792. package/lib/esm/tile/TileMetadata.js.map +1 -1
  793. package/lib/esm/tile/Tileset3dSchema.js.map +1 -1
  794. package/package.json +14 -14
  795. package/lib/cjs/BackendTypes.d.ts.map +0 -1
  796. package/lib/cjs/BackendTypes.js.map +0 -1
  797. package/lib/cjs/Render.d.ts +0 -85
  798. package/lib/cjs/Render.d.ts.map +0 -1
  799. package/lib/cjs/Render.js.map +0 -1
  800. package/lib/esm/BackendTypes.d.ts.map +0 -1
  801. package/lib/esm/BackendTypes.js.map +0 -1
  802. package/lib/esm/Render.d.ts +0 -85
  803. package/lib/esm/Render.d.ts.map +0 -1
  804. package/lib/esm/Render.js.map +0 -1
  805. /package/lib/cjs/{BackendTypes.js → internal/BackendTypes.js} +0 -0
  806. /package/lib/esm/{BackendTypes.js → internal/BackendTypes.js} +0 -0
@@ -77,10 +77,25 @@ export declare enum PrimitiveTypeCode {
77
77
  }
78
78
  /** A callback function to process properties of an Entity
79
79
  * @beta
80
+ * @deprecated in 5.0. Use `PropertyHandler` from `@itwin/ecschema-metadata` instead.
81
+ *
82
+ * @example
83
+ * ```typescript
84
+ * // Current usage:
85
+ * const callback: PropertyCallback = (name: string, propMetaData: PropertyMetaData) => {
86
+ * console.log(`Property name: ${name}, Property type: ${propMetaData.primitiveType}`);
87
+ * };
88
+ *
89
+ * // Replacement:
90
+ * const callback: PropertyHandler = (propName: string, property: Property) => {
91
+ * console.log(`Property name: ${propName}, Property type: ${property.propertyType}`);
92
+ * };
93
+ * ```
80
94
  */
81
95
  export type PropertyCallback = (name: string, meta: PropertyMetaData) => void;
82
96
  /** A custom attribute instance
83
97
  * @beta
98
+ * @deprecated in 5.0. Use `CustomAttribute` interface from `@itwin/ecschema-metadata` instead.
84
99
  */
85
100
  export interface CustomAttribute {
86
101
  /** The class of the CustomAttribute */
@@ -90,7 +105,10 @@ export interface CustomAttribute {
90
105
  [propName: string]: any;
91
106
  };
92
107
  }
93
- /** @beta */
108
+ /**
109
+ * @beta
110
+ * @deprecated in 5.0. Use `@itwin/ecschema-metadata` instead.
111
+ */
94
112
  export interface PropertyMetaDataProps {
95
113
  primitiveType?: number;
96
114
  structName?: string;
@@ -113,6 +131,7 @@ export interface PropertyMetaDataProps {
113
131
  }
114
132
  /** Metadata for a property.
115
133
  * @beta
134
+ * @deprecated in 5.0. Use the `Property` class from @itwin/ecschema-metadata` instead.
116
135
  */
117
136
  export declare class PropertyMetaData implements PropertyMetaDataProps {
118
137
  primitiveType?: PrimitiveTypeCode;
@@ -141,7 +160,10 @@ export declare class PropertyMetaData implements PropertyMetaDataProps {
141
160
  /** Return `true` if this property is a NavigationProperty. */
142
161
  get isNavigation(): boolean;
143
162
  }
144
- /** @beta */
163
+ /**
164
+ * @beta
165
+ * @deprecated in 5.0. Use `@itwin/ecschema-metadata` instead.
166
+ */
145
167
  export interface EntityMetaDataProps {
146
168
  classId: Id64String;
147
169
  ecclass: string;
@@ -159,6 +181,7 @@ export interface EntityMetaDataProps {
159
181
  }
160
182
  /** Metadata for an Entity.
161
183
  * @beta
184
+ * @deprecated in 5.0. Use `EntityClass` class from `@itwin/ecschema-metadata` instead.
162
185
  */
163
186
  export declare class EntityMetaData implements EntityMetaDataProps {
164
187
  /** The Id of the class in the [[IModelDb]] from which the metadata was obtained. */
@@ -1 +1 @@
1
- {"version":3,"file":"EntityProps.d.ts","sourceRoot":"","sources":["../../src/EntityProps.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EntityProps.d.ts","sourceRoot":"","sources":["../../src/EntityProps.ts"],"names":[],"mappings":"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"}
@@ -27,8 +27,29 @@ export var PrimitiveTypeCode;
27
27
  })(PrimitiveTypeCode || (PrimitiveTypeCode = {}));
28
28
  /** Metadata for a property.
29
29
  * @beta
30
+ * @deprecated in 5.0. Use the `Property` class from @itwin/ecschema-metadata` instead.
30
31
  */
31
32
  export class PropertyMetaData {
33
+ primitiveType;
34
+ structName;
35
+ extendedType;
36
+ description;
37
+ displayLabel;
38
+ minimumValue;
39
+ maximumValue;
40
+ minimumLength;
41
+ maximumLength;
42
+ readOnly;
43
+ kindOfQuantity;
44
+ isCustomHandled;
45
+ isCustomHandledOrphan;
46
+ minOccurs;
47
+ maxOccurs;
48
+ direction;
49
+ relationshipClass;
50
+ // eslint-disable-next-line @typescript-eslint/no-deprecated
51
+ customAttributes;
52
+ // eslint-disable-next-line @typescript-eslint/no-deprecated
32
53
  constructor(jsonObj) {
33
54
  this.primitiveType = jsonObj.primitiveType;
34
55
  if (jsonObj.structName)
@@ -91,8 +112,25 @@ export class PropertyMetaData {
91
112
  }
92
113
  /** Metadata for an Entity.
93
114
  * @beta
115
+ * @deprecated in 5.0. Use `EntityClass` class from `@itwin/ecschema-metadata` instead.
94
116
  */
95
117
  export class EntityMetaData {
118
+ /** The Id of the class in the [[IModelDb]] from which the metadata was obtained. */
119
+ classId;
120
+ /** The Entity name */
121
+ ecclass;
122
+ description;
123
+ modifier;
124
+ displayLabel;
125
+ /** The base class that this class is derives from. If more than one, the first is the actual base class and the others are mixins. */
126
+ baseClasses;
127
+ /** The Custom Attributes for this class */
128
+ // eslint-disable-next-line @typescript-eslint/no-deprecated
129
+ customAttributes;
130
+ /** An object whose properties correspond by name to the properties of this class. */
131
+ // eslint-disable-next-line @typescript-eslint/no-deprecated
132
+ properties;
133
+ // eslint-disable-next-line @typescript-eslint/no-deprecated
96
134
  constructor(jsonObj) {
97
135
  this.classId = jsonObj.classId;
98
136
  this.ecclass = jsonObj.ecclass;
@@ -103,6 +141,7 @@ export class EntityMetaData {
103
141
  this.customAttributes = jsonObj.customAttributes;
104
142
  this.properties = {};
105
143
  for (const propName in jsonObj.properties) { // eslint-disable-line guard-for-in
144
+ // eslint-disable-next-line @typescript-eslint/no-deprecated
106
145
  this.properties[propName] = new PropertyMetaData(jsonObj.properties[propName]);
107
146
  }
108
147
  }
@@ -1 +1 @@
1
- {"version":3,"file":"EntityProps.js","sourceRoot":"","sources":["../../src/EntityProps.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 Entities\r\n */\r\n\r\nimport { Id64, Id64String } from \"@itwin/core-bentley\";\r\nimport { Point2d, Point3d } from \"@itwin/core-geometry\";\r\nimport { RelatedElement } from \"./ElementProps\";\r\n\r\n/** The persistent format of an [Entity]($backend), also used as the \"wire format\" when transmitting information about entities\r\n * between the backend and frontend.\r\n * EntityProps and all of its sub-types like [[ElementProps]] are \"plain old Javascript objects\" - that is, objects containing\r\n * no methods and no properties of `class` type.\r\n * @public\r\n * @extensions\r\n */\r\nexport interface EntityProps {\r\n /** A non-existent property used to discriminate between [[EntityProps]] and [Entity]($backend).\r\n * @see [Entity.isInstanceOfEntity]($backend).\r\n */\r\n readonly isInstanceOfEntity?: never;\r\n /** The full name of the [ECClass]($docs/bis/guide/references/glossary/#ecclass) for this entity, in the form \"Schema:ClassName\" */\r\n classFullName: string;\r\n /** The Id of the entity. Must be present for SELECT, UPDATE, or DELETE, ignored for INSERT. */\r\n id?: Id64String;\r\n /** Optional [json properties]($docs/bis/guide/fundamentals/element-fundamentals.md#jsonproperties) of this Entity. */\r\n jsonProperties?: { [key: string]: any };\r\n}\r\n\r\n/** Specifies the source and target elements of a [[Relationship]] instance.\r\n * @public\r\n * @extensions\r\n */\r\nexport interface SourceAndTarget {\r\n sourceId: Id64String;\r\n targetId: Id64String;\r\n}\r\n\r\n/** Properties that are common to all types of link table ECRelationships\r\n * @public\r\n * @extensions\r\n */\r\nexport interface RelationshipProps extends EntityProps, SourceAndTarget {\r\n}\r\n\r\n/** Parameters for performing a query on [Entity]($backend) classes.\r\n * @public\r\n * @extensions\r\n */\r\nexport interface EntityQueryParams {\r\n /** The sql className, in the form \"Schema.ClassName\", of the class to search. */\r\n from?: string;\r\n /** Set to true to limit results to *not* include sub-classes of \"from\" class */\r\n only?: boolean;\r\n /** Optional \"WHERE\" clause to filter entities. Note: do *not* include the \"WHERE\" keyword. */\r\n where?: string;\r\n /** Optional \"ORDERBY\" clause to sort results. Note: do *not* include the \"ORDERBY\" keyword. */\r\n orderBy?: string;\r\n /** Optional \"LIMIT\" clause to limit the number of rows returned. */\r\n limit?: number;\r\n /** Optional \"OFFSET\" clause. Only valid if Limit is also present. */\r\n offset?: number;\r\n /** Bindings for parameterized values.\r\n * @see [[ECSqlStatement.bindValues]]\r\n */\r\n bindings?: any[] | object;\r\n}\r\n\r\n/** The primitive types of an Entity property.\r\n * @beta\r\n */\r\nexport enum PrimitiveTypeCode {\r\n Uninitialized = 0x00,\r\n Binary = 0x101,\r\n Boolean = 0x201,\r\n DateTime = 0x301,\r\n Double = 0x401,\r\n Integer = 0x501,\r\n Long = 0x601,\r\n Point2d = 0x701, // eslint-disable-line @typescript-eslint/no-shadow\r\n Point3d = 0x801, // eslint-disable-line @typescript-eslint/no-shadow\r\n String = 0x901,\r\n IGeometry = 0xa01, // Used for Bentley.Geometry.Common.IGeometry types\r\n}\r\n\r\n/** A callback function to process properties of an Entity\r\n * @beta\r\n */\r\nexport type PropertyCallback = (name: string, meta: PropertyMetaData) => void;\r\n\r\n/** A custom attribute instance\r\n * @beta\r\n */\r\nexport interface CustomAttribute {\r\n /** The class of the CustomAttribute */\r\n ecclass: string;\r\n /** An object whose properties correspond by name to the properties of this custom attribute instance. */\r\n properties: { [propName: string]: any };\r\n}\r\n\r\ntype FactoryFunc = (jsonObj: any) => any;\r\n\r\n/** @beta */\r\nexport interface PropertyMetaDataProps {\r\n primitiveType?: number;\r\n structName?: string;\r\n extendedType?: string;\r\n description?: string;\r\n displayLabel?: string;\r\n minimumValue?: any;\r\n maximumValue?: any;\r\n minimumLength?: number;\r\n maximumLength?: number;\r\n readOnly?: boolean;\r\n kindOfQuantity?: string;\r\n isCustomHandled?: boolean;\r\n isCustomHandledOrphan?: boolean;\r\n minOccurs?: number;\r\n maxOccurs?: number;\r\n direction?: string;\r\n relationshipClass?: string;\r\n customAttributes?: CustomAttribute[];\r\n}\r\n\r\n/** Metadata for a property.\r\n * @beta\r\n */\r\nexport class PropertyMetaData implements PropertyMetaDataProps {\r\n public primitiveType?: PrimitiveTypeCode;\r\n public structName?: string;\r\n public extendedType?: string;\r\n public description?: string;\r\n public displayLabel?: string;\r\n public minimumValue?: any;\r\n public maximumValue?: any;\r\n public minimumLength?: number;\r\n public maximumLength?: number;\r\n public readOnly?: boolean;\r\n public kindOfQuantity?: string;\r\n public isCustomHandled?: boolean;\r\n public isCustomHandledOrphan?: boolean;\r\n public minOccurs?: number;\r\n public maxOccurs?: number;\r\n public direction?: string;\r\n public relationshipClass?: string;\r\n public customAttributes?: CustomAttribute[];\r\n\r\n public constructor(jsonObj: PropertyMetaDataProps) {\r\n this.primitiveType = jsonObj.primitiveType;\r\n if (jsonObj.structName)\r\n this.structName = jsonObj.structName;\r\n this.extendedType = jsonObj.extendedType;\r\n this.description = jsonObj.description;\r\n this.displayLabel = jsonObj.displayLabel;\r\n if (undefined !== jsonObj.minimumValue)\r\n this.minimumValue = jsonObj.minimumValue;\r\n if (undefined !== jsonObj.maximumValue)\r\n this.maximumValue = jsonObj.maximumValue;\r\n if (undefined !== jsonObj.minimumLength)\r\n this.minimumLength = jsonObj.minimumLength;\r\n if (undefined !== jsonObj.maximumLength)\r\n this.maximumLength = jsonObj.maximumLength;\r\n this.readOnly = jsonObj.readOnly;\r\n this.kindOfQuantity = jsonObj.kindOfQuantity;\r\n this.isCustomHandled = jsonObj.isCustomHandled;\r\n if (undefined !== jsonObj.minOccurs)\r\n this.minOccurs = jsonObj.minOccurs;\r\n if (undefined !== jsonObj.maxOccurs)\r\n this.maxOccurs = jsonObj.maxOccurs;\r\n this.direction = jsonObj.direction;\r\n this.relationshipClass = jsonObj.relationshipClass;\r\n this.customAttributes = jsonObj.customAttributes;\r\n }\r\n\r\n /** Create a typed value, or array of values, from a factory and an input object */\r\n private createValueOrArray(func: FactoryFunc, jsonObj: any) {\r\n if (undefined === this.minOccurs)\r\n return func(jsonObj); // not an array\r\n\r\n const val: any = [];\r\n jsonObj.forEach((element: any) => val.push(func(element)));\r\n return val;\r\n }\r\n\r\n /** construct a single property from an input object according to this metadata */\r\n public createProperty(jsonObj: any): any {\r\n if (jsonObj === undefined)\r\n return undefined;\r\n\r\n if (undefined !== this.primitiveType) {\r\n switch (this.primitiveType) {\r\n case PrimitiveTypeCode.Boolean:\r\n case PrimitiveTypeCode.Double:\r\n case PrimitiveTypeCode.Integer:\r\n case PrimitiveTypeCode.String:\r\n return jsonObj; // this works even for arrays or strings that are JSON because the parsed JSON is already the right type\r\n\r\n case PrimitiveTypeCode.Point2d:\r\n return this.createValueOrArray((obj) => Point2d.fromJSON(obj), jsonObj);\r\n\r\n case PrimitiveTypeCode.Point3d:\r\n return this.createValueOrArray((obj) => Point3d.fromJSON(obj), jsonObj);\r\n }\r\n }\r\n if (this.isNavigation)\r\n return jsonObj.id !== undefined ? new RelatedElement(jsonObj) : Id64.fromJSON(jsonObj);\r\n\r\n return jsonObj;\r\n }\r\n\r\n /** Return `true` if this property is a NavigationProperty. */\r\n public get isNavigation(): boolean {\r\n return (this.direction !== undefined); // the presence of `direction` means it is a navigation property\r\n }\r\n}\r\n\r\n/** @beta */\r\nexport interface EntityMetaDataProps {\r\n classId: Id64String;\r\n ecclass: string;\r\n description?: string;\r\n modifier?: string;\r\n displayLabel?: string;\r\n /** The base classes from which this class derives. If more than one, the first is the super class and the others are [mixins]($docs/bis/ec/ec-mixin-class). */\r\n baseClasses: string[];\r\n /** The Custom Attributes for this class */\r\n customAttributes?: CustomAttribute[];\r\n /** An object whose properties correspond by name to the properties of this class. */\r\n properties: { [propName: string]: PropertyMetaData };\r\n}\r\n\r\n/** Metadata for an Entity.\r\n * @beta\r\n */\r\nexport class EntityMetaData implements EntityMetaDataProps {\r\n /** The Id of the class in the [[IModelDb]] from which the metadata was obtained. */\r\n public readonly classId: Id64String;\r\n /** The Entity name */\r\n public readonly ecclass: string;\r\n public readonly description?: string;\r\n public readonly modifier?: string;\r\n public readonly displayLabel?: string;\r\n /** The base class that this class is derives from. If more than one, the first is the actual base class and the others are mixins. */\r\n public readonly baseClasses: string[];\r\n /** The Custom Attributes for this class */\r\n public readonly customAttributes?: CustomAttribute[];\r\n /** An object whose properties correspond by name to the properties of this class. */\r\n public readonly properties: { [propName: string]: PropertyMetaData };\r\n\r\n public constructor(jsonObj: EntityMetaDataProps) {\r\n this.classId = jsonObj.classId;\r\n this.ecclass = jsonObj.ecclass;\r\n this.description = jsonObj.description;\r\n this.modifier = jsonObj.modifier;\r\n this.displayLabel = jsonObj.displayLabel;\r\n this.baseClasses = jsonObj.baseClasses;\r\n this.customAttributes = jsonObj.customAttributes;\r\n this.properties = {};\r\n\r\n for (const propName in jsonObj.properties) { // eslint-disable-line guard-for-in\r\n this.properties[propName] = new PropertyMetaData(jsonObj.properties[propName]);\r\n }\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"EntityProps.js","sourceRoot":"","sources":["../../src/EntityProps.ts"],"names":[],"mappings":"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","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 Entities\n */\n\nimport { Id64, Id64String } from \"@itwin/core-bentley\";\nimport { Point2d, Point3d } from \"@itwin/core-geometry\";\nimport { RelatedElement } from \"./ElementProps\";\n\n/** The persistent format of an [Entity]($backend), also used as the \"wire format\" when transmitting information about entities\n * between the backend and frontend.\n * EntityProps and all of its sub-types like [[ElementProps]] are \"plain old Javascript objects\" - that is, objects containing\n * no methods and no properties of `class` type.\n * @public\n * @extensions\n */\nexport interface EntityProps {\n /** A non-existent property used to discriminate between [[EntityProps]] and [Entity]($backend).\n * @see [Entity.isInstanceOfEntity]($backend).\n */\n readonly isInstanceOfEntity?: never;\n /** The full name of the [ECClass]($docs/bis/guide/references/glossary/#ecclass) for this entity, in the form \"Schema:ClassName\" */\n classFullName: string;\n /** The Id of the entity. Must be present for SELECT, UPDATE, or DELETE, ignored for INSERT. */\n id?: Id64String;\n /** Optional [json properties]($docs/bis/guide/fundamentals/element-fundamentals.md#jsonproperties) of this Entity. */\n jsonProperties?: { [key: string]: any };\n}\n\n/** Specifies the source and target elements of a [[Relationship]] instance.\n * @public\n * @extensions\n */\nexport interface SourceAndTarget {\n sourceId: Id64String;\n targetId: Id64String;\n}\n\n/** Properties that are common to all types of link table ECRelationships\n * @public\n * @extensions\n */\nexport interface RelationshipProps extends EntityProps, SourceAndTarget {\n}\n\n/** Parameters for performing a query on [Entity]($backend) classes.\n * @public\n * @extensions\n */\nexport interface EntityQueryParams {\n /** The sql className, in the form \"Schema.ClassName\", of the class to search. */\n from?: string;\n /** Set to true to limit results to *not* include sub-classes of \"from\" class */\n only?: boolean;\n /** Optional \"WHERE\" clause to filter entities. Note: do *not* include the \"WHERE\" keyword. */\n where?: string;\n /** Optional \"ORDERBY\" clause to sort results. Note: do *not* include the \"ORDERBY\" keyword. */\n orderBy?: string;\n /** Optional \"LIMIT\" clause to limit the number of rows returned. */\n limit?: number;\n /** Optional \"OFFSET\" clause. Only valid if Limit is also present. */\n offset?: number;\n /** Bindings for parameterized values.\n * @see [[ECSqlStatement.bindValues]]\n */\n bindings?: any[] | object;\n}\n\n/** The primitive types of an Entity property.\n * @beta\n */\nexport enum PrimitiveTypeCode {\n Uninitialized = 0x00,\n Binary = 0x101,\n Boolean = 0x201,\n DateTime = 0x301,\n Double = 0x401,\n Integer = 0x501,\n Long = 0x601,\n Point2d = 0x701, // eslint-disable-line @typescript-eslint/no-shadow\n Point3d = 0x801, // eslint-disable-line @typescript-eslint/no-shadow\n String = 0x901,\n IGeometry = 0xa01, // Used for Bentley.Geometry.Common.IGeometry types\n}\n\n/** A callback function to process properties of an Entity\n * @beta\n * @deprecated in 5.0. Use `PropertyHandler` from `@itwin/ecschema-metadata` instead.\n *\n * @example\n * ```typescript\n * // Current usage:\n * const callback: PropertyCallback = (name: string, propMetaData: PropertyMetaData) => {\n * console.log(`Property name: ${name}, Property type: ${propMetaData.primitiveType}`);\n * };\n *\n * // Replacement:\n * const callback: PropertyHandler = (propName: string, property: Property) => {\n * console.log(`Property name: ${propName}, Property type: ${property.propertyType}`);\n * };\n * ```\n */\nexport type PropertyCallback = (name: string, meta: PropertyMetaData) => void;\n\n/** A custom attribute instance\n * @beta\n * @deprecated in 5.0. Use `CustomAttribute` interface from `@itwin/ecschema-metadata` instead.\n */\nexport interface CustomAttribute {\n /** The class of the CustomAttribute */\n ecclass: string;\n /** An object whose properties correspond by name to the properties of this custom attribute instance. */\n properties: { [propName: string]: any };\n}\n\ntype FactoryFunc = (jsonObj: any) => any;\n\n/**\n * @beta\n * @deprecated in 5.0. Use `@itwin/ecschema-metadata` instead.\n */\nexport interface PropertyMetaDataProps {\n primitiveType?: number;\n structName?: string;\n extendedType?: string;\n description?: string;\n displayLabel?: string;\n minimumValue?: any;\n maximumValue?: any;\n minimumLength?: number;\n maximumLength?: number;\n readOnly?: boolean;\n kindOfQuantity?: string;\n isCustomHandled?: boolean;\n isCustomHandledOrphan?: boolean;\n minOccurs?: number;\n maxOccurs?: number;\n direction?: string;\n relationshipClass?: string;\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n customAttributes?: CustomAttribute[];\n}\n\n/** Metadata for a property.\n * @beta\n * @deprecated in 5.0. Use the `Property` class from @itwin/ecschema-metadata` instead.\n */\nexport class PropertyMetaData implements PropertyMetaDataProps {\n public primitiveType?: PrimitiveTypeCode;\n public structName?: string;\n public extendedType?: string;\n public description?: string;\n public displayLabel?: string;\n public minimumValue?: any;\n public maximumValue?: any;\n public minimumLength?: number;\n public maximumLength?: number;\n public readOnly?: boolean;\n public kindOfQuantity?: string;\n public isCustomHandled?: boolean;\n public isCustomHandledOrphan?: boolean;\n public minOccurs?: number;\n public maxOccurs?: number;\n public direction?: string;\n public relationshipClass?: string;\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n public customAttributes?: CustomAttribute[];\n\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n public constructor(jsonObj: PropertyMetaDataProps) {\n this.primitiveType = jsonObj.primitiveType;\n if (jsonObj.structName)\n this.structName = jsonObj.structName;\n this.extendedType = jsonObj.extendedType;\n this.description = jsonObj.description;\n this.displayLabel = jsonObj.displayLabel;\n if (undefined !== jsonObj.minimumValue)\n this.minimumValue = jsonObj.minimumValue;\n if (undefined !== jsonObj.maximumValue)\n this.maximumValue = jsonObj.maximumValue;\n if (undefined !== jsonObj.minimumLength)\n this.minimumLength = jsonObj.minimumLength;\n if (undefined !== jsonObj.maximumLength)\n this.maximumLength = jsonObj.maximumLength;\n this.readOnly = jsonObj.readOnly;\n this.kindOfQuantity = jsonObj.kindOfQuantity;\n this.isCustomHandled = jsonObj.isCustomHandled;\n if (undefined !== jsonObj.minOccurs)\n this.minOccurs = jsonObj.minOccurs;\n if (undefined !== jsonObj.maxOccurs)\n this.maxOccurs = jsonObj.maxOccurs;\n this.direction = jsonObj.direction;\n this.relationshipClass = jsonObj.relationshipClass;\n this.customAttributes = jsonObj.customAttributes;\n }\n\n /** Create a typed value, or array of values, from a factory and an input object */\n private createValueOrArray(func: FactoryFunc, jsonObj: any) {\n if (undefined === this.minOccurs)\n return func(jsonObj); // not an array\n\n const val: any = [];\n jsonObj.forEach((element: any) => val.push(func(element)));\n return val;\n }\n\n /** construct a single property from an input object according to this metadata */\n public createProperty(jsonObj: any): any {\n if (jsonObj === undefined)\n return undefined;\n\n if (undefined !== this.primitiveType) {\n switch (this.primitiveType) {\n case PrimitiveTypeCode.Boolean:\n case PrimitiveTypeCode.Double:\n case PrimitiveTypeCode.Integer:\n case PrimitiveTypeCode.String:\n return jsonObj; // this works even for arrays or strings that are JSON because the parsed JSON is already the right type\n\n case PrimitiveTypeCode.Point2d:\n return this.createValueOrArray((obj) => Point2d.fromJSON(obj), jsonObj);\n\n case PrimitiveTypeCode.Point3d:\n return this.createValueOrArray((obj) => Point3d.fromJSON(obj), jsonObj);\n }\n }\n if (this.isNavigation)\n return jsonObj.id !== undefined ? new RelatedElement(jsonObj) : Id64.fromJSON(jsonObj);\n\n return jsonObj;\n }\n\n /** Return `true` if this property is a NavigationProperty. */\n public get isNavigation(): boolean {\n return (this.direction !== undefined); // the presence of `direction` means it is a navigation property\n }\n}\n\n/**\n * @beta\n * @deprecated in 5.0. Use `@itwin/ecschema-metadata` instead.\n */\nexport interface EntityMetaDataProps {\n classId: Id64String;\n ecclass: string;\n description?: string;\n modifier?: string;\n displayLabel?: string;\n /** The base classes from which this class derives. If more than one, the first is the super class and the others are [mixins]($docs/bis/ec/ec-mixin-class). */\n baseClasses: string[];\n /** The Custom Attributes for this class */\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n customAttributes?: CustomAttribute[];\n /** An object whose properties correspond by name to the properties of this class. */\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n properties: { [propName: string]: PropertyMetaData };\n}\n\n/** Metadata for an Entity.\n * @beta\n * @deprecated in 5.0. Use `EntityClass` class from `@itwin/ecschema-metadata` instead.\n */\nexport class EntityMetaData implements EntityMetaDataProps {\n /** The Id of the class in the [[IModelDb]] from which the metadata was obtained. */\n public readonly classId: Id64String;\n /** The Entity name */\n public readonly ecclass: string;\n public readonly description?: string;\n public readonly modifier?: string;\n public readonly displayLabel?: string;\n /** The base class that this class is derives from. If more than one, the first is the actual base class and the others are mixins. */\n public readonly baseClasses: string[];\n /** The Custom Attributes for this class */\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n public readonly customAttributes?: CustomAttribute[];\n /** An object whose properties correspond by name to the properties of this class. */\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n public readonly properties: { [propName: string]: PropertyMetaData };\n\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n public constructor(jsonObj: EntityMetaDataProps) {\n this.classId = jsonObj.classId;\n this.ecclass = jsonObj.ecclass;\n this.description = jsonObj.description;\n this.modifier = jsonObj.modifier;\n this.displayLabel = jsonObj.displayLabel;\n this.baseClasses = jsonObj.baseClasses;\n this.customAttributes = jsonObj.customAttributes;\n this.properties = {};\n\n for (const propName in jsonObj.properties) { // eslint-disable-line guard-for-in\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n this.properties[propName] = new PropertyMetaData(jsonObj.properties[propName]);\n }\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"EntityReference.js","sourceRoot":"","sources":["../../src/EntityReference.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAIH;;;;;;;;;GASG;AACH,MAAM,CAAN,IAAY,mBAKX;AALD,WAAY,mBAAmB;IAC7B,kCAAW,CAAA;IACX,oCAAa,CAAA;IACb,0CAAmB,CAAA;IACnB,yCAAkB,CAAA;AACpB,CAAC,EALW,mBAAmB,KAAnB,mBAAmB,QAK9B;AAED;;;GAGG;AACH,WAAiB,mBAAmB;IAClC,MAAM,6BAA6B,GAAG;QACpC,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,eAAe;QAC5C,CAAC,mBAAmB,CAAC,OAAO,CAAC,EAAE,iBAAiB;QAChD,CAAC,mBAAmB,CAAC,aAAa,CAAC,EAAE,uBAAuB;QAC5D,CAAC,mBAAmB,CAAC,YAAY,CAAC,EAAE,sBAAsB;KAClD,CAAC;IAEX;;OAEG;IACH,SAAgB,0BAA0B,CAAC,IAAyB;QAClE,OAAO,6BAA6B,CAAC,IAAI,CAAC,CAAC;IAC7C,CAAC;IAFe,8CAA0B,6BAEzC,CAAA;AACH,CAAC,EAdgB,mBAAmB,KAAnB,mBAAmB,QAcnC;AAUD;;GAEG;AACH,MAAM,OAAO,kBAAmB,SAAQ,GAAoB;IACnD,UAAU,CAAC,EAAc,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;IAClD,QAAQ,CAAC,EAAc,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;IAChD,SAAS,CAAC,EAAc,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;IACjD,eAAe,CAAC,EAAc,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;CAC/D","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 Schema\r\n */\r\n\r\nimport { Id64String } from \"@itwin/core-bentley\";\r\n\r\n/**\r\n * Types of concrete entities. Used for storing strings in JavaScript reference-equality containers which encode\r\n * low-level entity information.\r\n * @note the values of this enum are unstable, do not depend upon their values between versions of iTwin.js\r\n * (e.g. do not serialize them and load them in another version of iTwin.js and expect them to work)\r\n * CodeSpecs are excepted since their JavaScript representation does not derive from [Entity]($backend)\r\n * @note the string value of each variant is required/guaranteed to be 1 character\r\n * @see EntityReference\r\n * @alpha\r\n */\r\nexport enum ConcreteEntityTypes {\r\n Model = \"m\",\r\n Element = \"e\",\r\n ElementAspect = \"a\",\r\n Relationship = \"r\",\r\n}\r\n\r\n/**\r\n * Adds some utilities to the [[ConcreteEntityTypes]] enum\r\n * @alpha\r\n */\r\nexport namespace ConcreteEntityTypes {\r\n const toBisCoreRootClassFullNameMap = {\r\n [ConcreteEntityTypes.Model]: \"BisCore:Model\",\r\n [ConcreteEntityTypes.Element]: \"BisCore:Element\",\r\n [ConcreteEntityTypes.ElementAspect]: \"BisCore:ElementAspect\",\r\n [ConcreteEntityTypes.Relationship]: \"BisCore:Relationship\",\r\n } as const;\r\n\r\n /** used by the transformer to figure out where to check for the existence in a db of a concrete element id\r\n * @internal\r\n */\r\n export function toBisCoreRootClassFullName(type: ConcreteEntityTypes): string {\r\n return toBisCoreRootClassFullNameMap[type];\r\n }\r\n}\r\n\r\n/**\r\n * This id format can be used for storing a unique key for an entity in containers like `Map`.\r\n * Elements and non-element entities have different id sequences, they can collide with each other, but not within themselves.\r\n * @note for utilities that require runtime backend classes, see [EntityReferences]($backend)\r\n * @alpha\r\n */\r\nexport type EntityReference = `${ConcreteEntityTypes}${Id64String}`;\r\n\r\n/** A set of concrete entity ids, with additional functions to more literately add ids where you have the raw id and know what type it is\r\n * @alpha\r\n */\r\nexport class EntityReferenceSet extends Set<EntityReference> {\r\n public addElement(id: Id64String) { this.add(`e${id}`); }\r\n public addModel(id: Id64String) { this.add(`m${id}`); }\r\n public addAspect(id: Id64String) { this.add(`a${id}`); }\r\n public addRelationship(id: Id64String) { this.add(`r${id}`); }\r\n}\r\n\r\n/** @internal entity reference type information of a relationship */\r\nexport interface RelTypeInfo {\r\n source: ConcreteEntityTypes;\r\n target: ConcreteEntityTypes;\r\n}\r\n"]}
1
+ {"version":3,"file":"EntityReference.js","sourceRoot":"","sources":["../../src/EntityReference.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAIH;;;;;;;;;GASG;AACH,MAAM,CAAN,IAAY,mBAKX;AALD,WAAY,mBAAmB;IAC7B,kCAAW,CAAA;IACX,oCAAa,CAAA;IACb,0CAAmB,CAAA;IACnB,yCAAkB,CAAA;AACpB,CAAC,EALW,mBAAmB,KAAnB,mBAAmB,QAK9B;AAED;;;GAGG;AACH,WAAiB,mBAAmB;IAClC,MAAM,6BAA6B,GAAG;QACpC,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,eAAe;QAC5C,CAAC,mBAAmB,CAAC,OAAO,CAAC,EAAE,iBAAiB;QAChD,CAAC,mBAAmB,CAAC,aAAa,CAAC,EAAE,uBAAuB;QAC5D,CAAC,mBAAmB,CAAC,YAAY,CAAC,EAAE,sBAAsB;KAClD,CAAC;IAEX;;OAEG;IACH,SAAgB,0BAA0B,CAAC,IAAyB;QAClE,OAAO,6BAA6B,CAAC,IAAI,CAAC,CAAC;IAC7C,CAAC;IAFe,8CAA0B,6BAEzC,CAAA;AACH,CAAC,EAdgB,mBAAmB,KAAnB,mBAAmB,QAcnC;AAUD;;GAEG;AACH,MAAM,OAAO,kBAAmB,SAAQ,GAAoB;IACnD,UAAU,CAAC,EAAc,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;IAClD,QAAQ,CAAC,EAAc,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;IAChD,SAAS,CAAC,EAAc,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;IACjD,eAAe,CAAC,EAAc,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;CAC/D","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 Schema\n */\n\nimport { Id64String } from \"@itwin/core-bentley\";\n\n/**\n * Types of concrete entities. Used for storing strings in JavaScript reference-equality containers which encode\n * low-level entity information.\n * @note the values of this enum are unstable, do not depend upon their values between versions of iTwin.js\n * (e.g. do not serialize them and load them in another version of iTwin.js and expect them to work)\n * CodeSpecs are excepted since their JavaScript representation does not derive from [Entity]($backend)\n * @note the string value of each variant is required/guaranteed to be 1 character\n * @see EntityReference\n * @alpha\n */\nexport enum ConcreteEntityTypes {\n Model = \"m\",\n Element = \"e\",\n ElementAspect = \"a\",\n Relationship = \"r\",\n}\n\n/**\n * Adds some utilities to the [[ConcreteEntityTypes]] enum\n * @alpha\n */\nexport namespace ConcreteEntityTypes {\n const toBisCoreRootClassFullNameMap = {\n [ConcreteEntityTypes.Model]: \"BisCore:Model\",\n [ConcreteEntityTypes.Element]: \"BisCore:Element\",\n [ConcreteEntityTypes.ElementAspect]: \"BisCore:ElementAspect\",\n [ConcreteEntityTypes.Relationship]: \"BisCore:Relationship\",\n } as const;\n\n /** used by the transformer to figure out where to check for the existence in a db of a concrete element id\n * @internal\n */\n export function toBisCoreRootClassFullName(type: ConcreteEntityTypes): string {\n return toBisCoreRootClassFullNameMap[type];\n }\n}\n\n/**\n * This id format can be used for storing a unique key for an entity in containers like `Map`.\n * Elements and non-element entities have different id sequences, they can collide with each other, but not within themselves.\n * @note for utilities that require runtime backend classes, see [EntityReferences]($backend)\n * @alpha\n */\nexport type EntityReference = `${ConcreteEntityTypes}${Id64String}`;\n\n/** A set of concrete entity ids, with additional functions to more literately add ids where you have the raw id and know what type it is\n * @alpha\n */\nexport class EntityReferenceSet extends Set<EntityReference> {\n public addElement(id: Id64String) { this.add(`e${id}`); }\n public addModel(id: Id64String) { this.add(`m${id}`); }\n public addAspect(id: Id64String) { this.add(`a${id}`); }\n public addRelationship(id: Id64String) { this.add(`r${id}`); }\n}\n\n/** @internal entity reference type information of a relationship */\nexport interface RelTypeInfo {\n source: ConcreteEntityTypes;\n target: ConcreteEntityTypes;\n}\n"]}
@@ -14,6 +14,29 @@ import { SkyBox } from "./SkyBox";
14
14
  * @public
15
15
  */
16
16
  export class Environment {
17
+ /** If true, the sky box will be displayed.
18
+ * Default: false.
19
+ * @see [[withDisplay]] or [[DisplayStyle3dSettings.toggleSkyBox]] to change this.
20
+ */
21
+ displaySky;
22
+ /** If true, the ground plane will be displayed.
23
+ * Default: false.
24
+ * @see [[withDisplay]] or [[DisplayStyle3dSettings.toggleGroundPlane]] to change this.
25
+ */
26
+ displayGround;
27
+ /**
28
+ * @beta
29
+ * If true, the atmosphere will be displayed. Enabling this will override any color information provided to the sky box.
30
+ * Default: false.
31
+ * @see [[withDisplay]] or [[DisplayStyle3dSettings.toggleAtmosphere]] to change this.
32
+ */
33
+ displayAtmosphere;
34
+ /** Describes how the sky box should be drawn. */
35
+ sky;
36
+ /** Describes how the ground plane should be drawn. */
37
+ ground;
38
+ /** @beta Describes how the atmosphere should be drawn */
39
+ atmosphere;
17
40
  constructor(props) {
18
41
  this.displaySky = props?.displaySky ?? false;
19
42
  this.displayGround = props?.displayGround ?? false;
@@ -22,6 +45,8 @@ export class Environment {
22
45
  this.ground = props?.ground ?? GroundPlane.defaults;
23
46
  this.atmosphere = props?.atmosphere ?? Atmosphere.Settings.defaults;
24
47
  }
48
+ /** Default settings without a ground plane, sky box, or atmosphere displayed. */
49
+ static defaults = new Environment();
25
50
  /** Create a new Environment. Any properties not specified by `props` will be initialized to their default values. */
26
51
  static create(props) {
27
52
  return props ? new this(props) : this.defaults;
@@ -70,6 +95,4 @@ export class Environment {
70
95
  return Environment.create({ ...this, ...changedProps });
71
96
  }
72
97
  }
73
- /** Default settings without a ground plane, sky box, or atmosphere displayed. */
74
- Environment.defaults = new Environment();
75
98
  //# sourceMappingURL=Environment.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Environment.js","sourceRoot":"","sources":["../../src/Environment.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 { NonFunctionPropertiesOf } from \"@itwin/core-bentley\";\r\nimport { Atmosphere } from \"./Atmosphere\";\r\nimport { GroundPlane, GroundPlaneProps } from \"./GroundPlane\";\r\nimport { SkyBox, SkyBoxProps } from \"./SkyBox\";\r\n\r\n/** JSON representation of an [[Environment]].\r\n * @see [[DisplayStyle3dSettingsProps.environment]].\r\n * @public\r\n * @extensions\r\n */\r\nexport interface EnvironmentProps {\r\n /** See [[Environment.ground]] and [[Environment.displayGround]]. */\r\n ground?: GroundPlaneProps;\r\n /** See [[Environment.sky]] and [[Environment.displaySky]]. */\r\n sky?: SkyBoxProps;\r\n /** @beta See [[Environment.atmosphere]] and [[Environment.displayAtmosphere]]. */\r\n atmosphere?: Atmosphere.Props;\r\n}\r\n\r\n/** A type containing all of the properties of [[Environment]] with none of the methods and with the `readonly` modifiers removed.\r\n * @see [[Environment.create]] and [[Environment.clone]].\r\n * @public\r\n */\r\nexport type EnvironmentProperties = NonFunctionPropertiesOf<Environment>;\r\n\r\n/** As part of a [[DisplayStyle3dSettings]], controls the display of a [[SkyBox]] and [[GroundPlane]] to simulate the\r\n * outdoor environment.\r\n * @see [[DisplayStyle3dSettings.environment]].\r\n * @public\r\n */\r\nexport class Environment {\r\n /** If true, the sky box will be displayed.\r\n * Default: false.\r\n * @see [[withDisplay]] or [[DisplayStyle3dSettings.toggleSkyBox]] to change this.\r\n */\r\n public readonly displaySky: boolean;\r\n /** If true, the ground plane will be displayed.\r\n * Default: false.\r\n * @see [[withDisplay]] or [[DisplayStyle3dSettings.toggleGroundPlane]] to change this.\r\n */\r\n public readonly displayGround: boolean;\r\n /**\r\n * @beta\r\n * If true, the atmosphere will be displayed. Enabling this will override any color information provided to the sky box.\r\n * Default: false.\r\n * @see [[withDisplay]] or [[DisplayStyle3dSettings.toggleAtmosphere]] to change this.\r\n */\r\n public readonly displayAtmosphere: boolean;\r\n\r\n /** Describes how the sky box should be drawn. */\r\n public readonly sky: SkyBox;\r\n /** Describes how the ground plane should be drawn. */\r\n public readonly ground: GroundPlane;\r\n /** @beta Describes how the atmosphere should be drawn */\r\n public readonly atmosphere: Atmosphere.Settings;\r\n\r\n protected constructor(props?: Partial<EnvironmentProperties>) {\r\n this.displaySky = props?.displaySky ?? false;\r\n this.displayGround = props?.displayGround ?? false;\r\n this.displayAtmosphere = props?.displayAtmosphere ?? false;\r\n this.sky = props?.sky ?? SkyBox.defaults;\r\n this.ground = props?.ground ?? GroundPlane.defaults;\r\n this.atmosphere = props?.atmosphere ?? Atmosphere.Settings.defaults;\r\n }\r\n\r\n /** Default settings without a ground plane, sky box, or atmosphere displayed. */\r\n public static readonly defaults = new Environment();\r\n\r\n /** Create a new Environment. Any properties not specified by `props` will be initialized to their default values. */\r\n public static create(props?: Partial<EnvironmentProperties>): Environment {\r\n return props ? new this(props) : this.defaults;\r\n }\r\n\r\n /** Create a copy of this environment, changing the `displayGround`, `displaySky` and/or `displayAtmosphere` flags. */\r\n public withDisplay(display: { sky?: boolean, ground?: boolean, atmosphere?: boolean }): Environment {\r\n const displaySky = display.sky ?? this.displaySky;\r\n const displayGround = display.ground ?? this.displayGround;\r\n const displayAtmosphere = display.atmosphere ?? this.displayAtmosphere;\r\n if (displaySky === this.displaySky && displayGround === this.displayGround && displayAtmosphere === this.displayAtmosphere)\r\n return this;\r\n\r\n return Environment.create({\r\n ...this,\r\n displaySky: displaySky ?? this.displaySky,\r\n displayGround: displayGround ?? this.displayGround,\r\n displayAtmosphere: displayAtmosphere ?? this.displayAtmosphere,\r\n });\r\n }\r\n\r\n /** Convert to JSON representation. */\r\n public toJSON(): EnvironmentProps {\r\n return {\r\n sky: this.sky.toJSON(this.displaySky),\r\n ground: this.ground.toJSON(this.displayGround),\r\n atmosphere: this.atmosphere.toJSON(this.displayAtmosphere),\r\n };\r\n }\r\n\r\n /** Create from JSON representation. */\r\n public static fromJSON(props?: EnvironmentProps): Environment {\r\n if (!props)\r\n return this.defaults;\r\n\r\n return new this({\r\n displaySky: props?.sky?.display,\r\n displayGround: props?.ground?.display,\r\n displayAtmosphere: props?.atmosphere?.display,\r\n sky: props?.sky ? SkyBox.fromJSON(props.sky) : undefined,\r\n ground: props?.ground ? GroundPlane.fromJSON(props.ground) : undefined,\r\n atmosphere: props?.atmosphere ? Atmosphere.Settings.fromJSON(props.atmosphere) : undefined,\r\n });\r\n }\r\n\r\n /** Create a copy of this environment, identical except for any properties specified by `changedProps`.\r\n * Any properties of `changedProps` explicitly set to `undefined` will be reset to their default values.\r\n */\r\n public clone(changedProps?: Partial<EnvironmentProperties>): Environment {\r\n if (!changedProps)\r\n return this;\r\n\r\n return Environment.create({ ...this, ...changedProps });\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"Environment.js","sourceRoot":"","sources":["../../src/Environment.ts"],"names":[],"mappings":"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","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 { NonFunctionPropertiesOf } from \"@itwin/core-bentley\";\nimport { Atmosphere } from \"./Atmosphere\";\nimport { GroundPlane, GroundPlaneProps } from \"./GroundPlane\";\nimport { SkyBox, SkyBoxProps } from \"./SkyBox\";\n\n/** JSON representation of an [[Environment]].\n * @see [[DisplayStyle3dSettingsProps.environment]].\n * @public\n * @extensions\n */\nexport interface EnvironmentProps {\n /** See [[Environment.ground]] and [[Environment.displayGround]]. */\n ground?: GroundPlaneProps;\n /** See [[Environment.sky]] and [[Environment.displaySky]]. */\n sky?: SkyBoxProps;\n /** @beta See [[Environment.atmosphere]] and [[Environment.displayAtmosphere]]. */\n atmosphere?: Atmosphere.Props;\n}\n\n/** A type containing all of the properties of [[Environment]] with none of the methods and with the `readonly` modifiers removed.\n * @see [[Environment.create]] and [[Environment.clone]].\n * @public\n */\nexport type EnvironmentProperties = NonFunctionPropertiesOf<Environment>;\n\n/** As part of a [[DisplayStyle3dSettings]], controls the display of a [[SkyBox]] and [[GroundPlane]] to simulate the\n * outdoor environment.\n * @see [[DisplayStyle3dSettings.environment]].\n * @public\n */\nexport class Environment {\n /** If true, the sky box will be displayed.\n * Default: false.\n * @see [[withDisplay]] or [[DisplayStyle3dSettings.toggleSkyBox]] to change this.\n */\n public readonly displaySky: boolean;\n /** If true, the ground plane will be displayed.\n * Default: false.\n * @see [[withDisplay]] or [[DisplayStyle3dSettings.toggleGroundPlane]] to change this.\n */\n public readonly displayGround: boolean;\n /**\n * @beta\n * If true, the atmosphere will be displayed. Enabling this will override any color information provided to the sky box.\n * Default: false.\n * @see [[withDisplay]] or [[DisplayStyle3dSettings.toggleAtmosphere]] to change this.\n */\n public readonly displayAtmosphere: boolean;\n\n /** Describes how the sky box should be drawn. */\n public readonly sky: SkyBox;\n /** Describes how the ground plane should be drawn. */\n public readonly ground: GroundPlane;\n /** @beta Describes how the atmosphere should be drawn */\n public readonly atmosphere: Atmosphere.Settings;\n\n protected constructor(props?: Partial<EnvironmentProperties>) {\n this.displaySky = props?.displaySky ?? false;\n this.displayGround = props?.displayGround ?? false;\n this.displayAtmosphere = props?.displayAtmosphere ?? false;\n this.sky = props?.sky ?? SkyBox.defaults;\n this.ground = props?.ground ?? GroundPlane.defaults;\n this.atmosphere = props?.atmosphere ?? Atmosphere.Settings.defaults;\n }\n\n /** Default settings without a ground plane, sky box, or atmosphere displayed. */\n public static readonly defaults = new Environment();\n\n /** Create a new Environment. Any properties not specified by `props` will be initialized to their default values. */\n public static create(props?: Partial<EnvironmentProperties>): Environment {\n return props ? new this(props) : this.defaults;\n }\n\n /** Create a copy of this environment, changing the `displayGround`, `displaySky` and/or `displayAtmosphere` flags. */\n public withDisplay(display: { sky?: boolean, ground?: boolean, atmosphere?: boolean }): Environment {\n const displaySky = display.sky ?? this.displaySky;\n const displayGround = display.ground ?? this.displayGround;\n const displayAtmosphere = display.atmosphere ?? this.displayAtmosphere;\n if (displaySky === this.displaySky && displayGround === this.displayGround && displayAtmosphere === this.displayAtmosphere)\n return this;\n\n return Environment.create({\n ...this,\n displaySky: displaySky ?? this.displaySky,\n displayGround: displayGround ?? this.displayGround,\n displayAtmosphere: displayAtmosphere ?? this.displayAtmosphere,\n });\n }\n\n /** Convert to JSON representation. */\n public toJSON(): EnvironmentProps {\n return {\n sky: this.sky.toJSON(this.displaySky),\n ground: this.ground.toJSON(this.displayGround),\n atmosphere: this.atmosphere.toJSON(this.displayAtmosphere),\n };\n }\n\n /** Create from JSON representation. */\n public static fromJSON(props?: EnvironmentProps): Environment {\n if (!props)\n return this.defaults;\n\n return new this({\n displaySky: props?.sky?.display,\n displayGround: props?.ground?.display,\n displayAtmosphere: props?.atmosphere?.display,\n sky: props?.sky ? SkyBox.fromJSON(props.sky) : undefined,\n ground: props?.ground ? GroundPlane.fromJSON(props.ground) : undefined,\n atmosphere: props?.atmosphere ? Atmosphere.Settings.fromJSON(props.atmosphere) : undefined,\n });\n }\n\n /** Create a copy of this environment, identical except for any properties specified by `changedProps`.\n * Any properties of `changedProps` explicitly set to `undefined` will be reset to their default values.\n */\n public clone(changedProps?: Partial<EnvironmentProperties>): Environment {\n if (!changedProps)\n return this;\n\n return Environment.create({ ...this, ...changedProps });\n }\n}\n"]}
@@ -13,6 +13,14 @@ import { ColorDef } from "./ColorDef";
13
13
  * @public
14
14
  */
15
15
  export class NonUniformColor {
16
+ /** An array of 32-bit [[ColorDef]] values in `tbgr` format, indexed by [[indices]]. */
17
+ colors;
18
+ /** For each vertex, an index into [[colors]] indicating the color of that vertex. */
19
+ indices;
20
+ /** If `true`, indicates none of the [[colors]] have a transparency greater than zero; otherwise, all of
21
+ * the colors have a transparency greater than zero.
22
+ */
23
+ isOpaque;
16
24
  /** Constructor.
17
25
  * @param colors See [[colors]].
18
26
  * @param indices See [[indices]]
@@ -29,6 +37,7 @@ export class NonUniformColor {
29
37
  * @public
30
38
  */
31
39
  export class ColorIndex {
40
+ _color;
32
41
  /** Whether the color(s) in this index have transparency. */
33
42
  get hasAlpha() { return !this._color.isOpaque; }
34
43
  /** Whether this index specifies a single uniform color for the entire mesh or polyline. */
@@ -78,12 +87,12 @@ export var FeatureIndexType;
78
87
  * @public
79
88
  */
80
89
  export class FeatureIndex {
81
- constructor() {
82
- /** Describes the quantity (zero, one, or more than one) of features in this index. */
83
- this.type = FeatureIndexType.Empty;
84
- /** If [[type]] is [[FeatureIndexType.Uniform]], the Id of the single feature. */
85
- this.featureID = 0;
86
- }
90
+ /** Describes the quantity (zero, one, or more than one) of features in this index. */
91
+ type = FeatureIndexType.Empty;
92
+ /** If [[type]] is [[FeatureIndexType.Uniform]], the Id of the single feature. */
93
+ featureID = 0;
94
+ /** If [[type]] is [[FeatureIndexType.NonUniform]], the per-vertex feature Ids, indexed by the mesh or polyline's vertex indices. */
95
+ featureIDs;
87
96
  /** True if [[type]] is [[FeatureIndexType.Uniform]]. */
88
97
  get isUniform() { return FeatureIndexType.Uniform === this.type; }
89
98
  /** True if [[type]] is [[FeatureIndexType.Empty]]. */
@@ -1 +1 @@
1
- {"version":3,"file":"FeatureIndex.js","sourceRoot":"","sources":["../../src/FeatureIndex.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 Rendering\r\n */\r\n\r\nimport { ColorDef } from \"./ColorDef\";\r\n\r\n/** As part of a [[ColorIndex]], describes per-vertex colors for a [MeshArgs]($frontend) or [PolylineArgs]($frontend).\r\n * The [[colors]] array holds the set of unique colors. The [[indices]] array describes the color of each vertex as an index into [[colors]].\r\n * @note A `NonUniformColor` table cannot contain a mix of opaque and translucent colors. If any color in [[colors]] has a transparency greater\r\n * than zero, all of them must have a transparency greater than zero.\r\n * @public\r\n */\r\nexport class NonUniformColor {\r\n /** An array of 32-bit [[ColorDef]] values in `tbgr` format, indexed by [[indices]]. */\r\n public readonly colors: Uint32Array;\r\n /** For each vertex, an index into [[colors]] indicating the color of that vertex. */\r\n public readonly indices: Uint16Array;\r\n /** If `true`, indicates none of the [[colors]] have a transparency greater than zero; otherwise, all of\r\n * the colors have a transparency greater than zero.\r\n */\r\n public readonly isOpaque: boolean;\r\n\r\n /** Constructor.\r\n * @param colors See [[colors]].\r\n * @param indices See [[indices]]\r\n * @param hasAlpha `true` if all `colors` have a transparency greater than zero, or `false` if they all have a transparency of zero.\r\n */\r\n public constructor(colors: Uint32Array, indices: number[], hasAlpha: boolean) {\r\n this.colors = new Uint32Array(colors.buffer);\r\n this.indices = Uint16Array.from(indices);\r\n this.isOpaque = !hasAlpha;\r\n }\r\n}\r\n\r\n/** Describes the color(s) of the vertices of a [MeshArgs]($frontend) or [PolylineArgs]($frontend).\r\n * This may be a uniform color to be applied to every vertex, or a table specifying individual per-vertex colors.\r\n * @public\r\n */\r\nexport class ColorIndex {\r\n private _color: ColorDef | NonUniformColor;\r\n\r\n /** Whether the color(s) in this index have transparency. */\r\n public get hasAlpha() { return !this._color.isOpaque; }\r\n /** Whether this index specifies a single uniform color for the entire mesh or polyline. */\r\n public get isUniform() { return this._color instanceof ColorDef; }\r\n /** The number of colors in this index. */\r\n public get numColors(): number { return this.isUniform ? 1 : this.nonUniform!.colors.length; }\r\n\r\n /** Construct a default index specifying a uniform white color. */\r\n public constructor() { this._color = ColorDef.white; }\r\n\r\n /** Reset this index to specify a uniform white color. */\r\n public reset() { this._color = ColorDef.white; }\r\n\r\n /** Returns the single color to be applied to all vertices, if [[isUniform]] is `true`; or `undefined` otherwise. */\r\n public get uniform(): ColorDef | undefined {\r\n return this.isUniform ? this._color as ColorDef : undefined;\r\n }\r\n\r\n /** Set the specified color to be applied to all vertices. */\r\n public initUniform(color: ColorDef | number) {\r\n this._color = typeof color === \"number\" ? ColorDef.fromJSON(color) : color;\r\n }\r\n\r\n /** Returns the per-vertex colors, if [[isUniform]] is `false`; or `undefined` otherwise. */\r\n public get nonUniform(): NonUniformColor | undefined {\r\n return !this.isUniform ? this._color as NonUniformColor : undefined;\r\n }\r\n\r\n /** Set the per-vertex colors.\r\n * @param colors See [[NonUniformColor.colors]].\r\n * @param indices See [[NonUniformColor.indices]].\r\n * @param hasAlpha `true` if all `colors` have a transparency greater than zero, or `false` if they all have a transparency of zero.\r\n */\r\n public initNonUniform(colors: Uint32Array, indices: number[], hasAlpha: boolean) {\r\n this._color = new NonUniformColor(colors, indices, hasAlpha);\r\n }\r\n}\r\n\r\n/** Describes the type of a [[FeatureIndex]].\r\n * @public\r\n */\r\nexport enum FeatureIndexType {\r\n /** Indicates that the index contains no features. */\r\n Empty,\r\n /** Indicates that the index contains exactly one feature. */\r\n Uniform,\r\n /** Indicates that the index contains more than one feature. */\r\n NonUniform,\r\n}\r\n\r\n/** Describes the set of [[Feature]]s associated with a [MeshArgs]($frontend) or [PolylineArgs]($frontend).\r\n * The mesh or polyline may have zero or one features; or, individual vertices may be associated with different features.\r\n * The features are expressed as unsigned 32-bit integer Ids of [[Feature]]s within a [[FeatureTable]].\r\n * @public\r\n */\r\nexport class FeatureIndex {\r\n /** Describes the quantity (zero, one, or more than one) of features in this index. */\r\n public type: FeatureIndexType = FeatureIndexType.Empty;\r\n\r\n /** If [[type]] is [[FeatureIndexType.Uniform]], the Id of the single feature. */\r\n public featureID: number = 0;\r\n /** If [[type]] is [[FeatureIndexType.NonUniform]], the per-vertex feature Ids, indexed by the mesh or polyline's vertex indices. */\r\n public featureIDs?: Uint32Array;\r\n\r\n /** True if [[type]] is [[FeatureIndexType.Uniform]]. */\r\n public get isUniform(): boolean { return FeatureIndexType.Uniform === this.type; }\r\n\r\n /** True if [[type]] is [[FeatureIndexType.Empty]]. */\r\n public get isEmpty(): boolean { return FeatureIndexType.Empty === this.type; }\r\n\r\n /** Reset to an empty index. */\r\n public reset(): void {\r\n this.type = FeatureIndexType.Empty;\r\n this.featureID = 0;\r\n this.featureIDs = undefined;\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"FeatureIndex.js","sourceRoot":"","sources":["../../src/FeatureIndex.ts"],"names":[],"mappings":"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","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 Rendering\n */\n\nimport { ColorDef } from \"./ColorDef\";\n\n/** As part of a [[ColorIndex]], describes per-vertex colors for a [MeshArgs]($frontend) or [PolylineArgs]($frontend).\n * The [[colors]] array holds the set of unique colors. The [[indices]] array describes the color of each vertex as an index into [[colors]].\n * @note A `NonUniformColor` table cannot contain a mix of opaque and translucent colors. If any color in [[colors]] has a transparency greater\n * than zero, all of them must have a transparency greater than zero.\n * @public\n */\nexport class NonUniformColor {\n /** An array of 32-bit [[ColorDef]] values in `tbgr` format, indexed by [[indices]]. */\n public readonly colors: Uint32Array;\n /** For each vertex, an index into [[colors]] indicating the color of that vertex. */\n public readonly indices: Uint16Array;\n /** If `true`, indicates none of the [[colors]] have a transparency greater than zero; otherwise, all of\n * the colors have a transparency greater than zero.\n */\n public readonly isOpaque: boolean;\n\n /** Constructor.\n * @param colors See [[colors]].\n * @param indices See [[indices]]\n * @param hasAlpha `true` if all `colors` have a transparency greater than zero, or `false` if they all have a transparency of zero.\n */\n public constructor(colors: Uint32Array, indices: number[], hasAlpha: boolean) {\n this.colors = new Uint32Array(colors.buffer);\n this.indices = Uint16Array.from(indices);\n this.isOpaque = !hasAlpha;\n }\n}\n\n/** Describes the color(s) of the vertices of a [MeshArgs]($frontend) or [PolylineArgs]($frontend).\n * This may be a uniform color to be applied to every vertex, or a table specifying individual per-vertex colors.\n * @public\n */\nexport class ColorIndex {\n private _color: ColorDef | NonUniformColor;\n\n /** Whether the color(s) in this index have transparency. */\n public get hasAlpha() { return !this._color.isOpaque; }\n /** Whether this index specifies a single uniform color for the entire mesh or polyline. */\n public get isUniform() { return this._color instanceof ColorDef; }\n /** The number of colors in this index. */\n public get numColors(): number { return this.isUniform ? 1 : this.nonUniform!.colors.length; }\n\n /** Construct a default index specifying a uniform white color. */\n public constructor() { this._color = ColorDef.white; }\n\n /** Reset this index to specify a uniform white color. */\n public reset() { this._color = ColorDef.white; }\n\n /** Returns the single color to be applied to all vertices, if [[isUniform]] is `true`; or `undefined` otherwise. */\n public get uniform(): ColorDef | undefined {\n return this.isUniform ? this._color as ColorDef : undefined;\n }\n\n /** Set the specified color to be applied to all vertices. */\n public initUniform(color: ColorDef | number) {\n this._color = typeof color === \"number\" ? ColorDef.fromJSON(color) : color;\n }\n\n /** Returns the per-vertex colors, if [[isUniform]] is `false`; or `undefined` otherwise. */\n public get nonUniform(): NonUniformColor | undefined {\n return !this.isUniform ? this._color as NonUniformColor : undefined;\n }\n\n /** Set the per-vertex colors.\n * @param colors See [[NonUniformColor.colors]].\n * @param indices See [[NonUniformColor.indices]].\n * @param hasAlpha `true` if all `colors` have a transparency greater than zero, or `false` if they all have a transparency of zero.\n */\n public initNonUniform(colors: Uint32Array, indices: number[], hasAlpha: boolean) {\n this._color = new NonUniformColor(colors, indices, hasAlpha);\n }\n}\n\n/** Describes the type of a [[FeatureIndex]].\n * @public\n */\nexport enum FeatureIndexType {\n /** Indicates that the index contains no features. */\n Empty,\n /** Indicates that the index contains exactly one feature. */\n Uniform,\n /** Indicates that the index contains more than one feature. */\n NonUniform,\n}\n\n/** Describes the set of [[Feature]]s associated with a [MeshArgs]($frontend) or [PolylineArgs]($frontend).\n * The mesh or polyline may have zero or one features; or, individual vertices may be associated with different features.\n * The features are expressed as unsigned 32-bit integer Ids of [[Feature]]s within a [[FeatureTable]].\n * @public\n */\nexport class FeatureIndex {\n /** Describes the quantity (zero, one, or more than one) of features in this index. */\n public type: FeatureIndexType = FeatureIndexType.Empty;\n\n /** If [[type]] is [[FeatureIndexType.Uniform]], the Id of the single feature. */\n public featureID: number = 0;\n /** If [[type]] is [[FeatureIndexType.NonUniform]], the per-vertex feature Ids, indexed by the mesh or polyline's vertex indices. */\n public featureIDs?: Uint32Array;\n\n /** True if [[type]] is [[FeatureIndexType.Uniform]]. */\n public get isUniform(): boolean { return FeatureIndexType.Uniform === this.type; }\n\n /** True if [[type]] is [[FeatureIndexType.Empty]]. */\n public get isEmpty(): boolean { return FeatureIndexType.Empty === this.type; }\n\n /** Reset to an empty index. */\n public reset(): void {\n this.type = FeatureIndexType.Empty;\n this.featureID = 0;\n this.featureIDs = undefined;\n }\n}\n"]}
@@ -189,9 +189,7 @@ export interface OverrideFeatureAppearanceOptions {
189
189
  export interface OverrideModelAppearanceOptions extends OverrideFeatureAppearanceOptions {
190
190
  /** The Id of the model whose appearance is to be overridden. */
191
191
  modelId: Id64String;
192
- /** @internal */
193
192
  elementId?: never;
194
- /** @internal */
195
193
  subCategoryId?: never;
196
194
  }
197
195
  /** Options for using [[FeatureOverrides.override]] to override the appearance of a [GeometricElement]($backend).
@@ -200,9 +198,7 @@ export interface OverrideModelAppearanceOptions extends OverrideFeatureAppearanc
200
198
  export interface OverrideElementAppearanceOptions extends OverrideFeatureAppearanceOptions {
201
199
  /** The Id of the element whose appearance is to be overridden. */
202
200
  elementId: Id64String;
203
- /** @internal */
204
201
  modelId?: never;
205
- /** @internal */
206
202
  subCategoryId?: never;
207
203
  }
208
204
  /** Options for using [[FeatureOverrides.override]] to override the appearance of a [SubCategory]($backend).
@@ -211,9 +207,7 @@ export interface OverrideElementAppearanceOptions extends OverrideFeatureAppeara
211
207
  export interface OverrideSubCategoryAppearanceOptions extends OverrideFeatureAppearanceOptions {
212
208
  /** The Id of the subcategory whose appearance is to be overridden. */
213
209
  subCategoryId: Id64String;
214
- /** @internal */
215
210
  modelId?: never;
216
- /** @internal */
217
211
  elementId?: never;
218
212
  }
219
213
  /** Arguments supplied to [[FeatureOverrides.override]].
@@ -265,11 +259,11 @@ export type IgnoreAnimationOverrides = (args: IgnoreAnimationOverridesArgs) => b
265
259
  */
266
260
  export declare class FeatureOverrides implements FeatureAppearanceSource {
267
261
  /** @internal */
268
- protected readonly _ignoreAnimationOverrides: IgnoreAnimationOverrides[];
262
+ private readonly _ignoreAnimationOverrides;
269
263
  /** Ids of elements that should never be drawn. This takes precedence over [[alwaysDrawn]]. @internal */
270
- protected readonly _neverDrawn: Id64.Uint32Set;
264
+ private readonly _neverDrawn;
271
265
  /** Ids of elements that should always be drawn. [[neverDrawn]] takes precedence over this set. @internal */
272
- protected readonly _alwaysDrawn: Id64.Uint32Set;
266
+ private readonly _alwaysDrawn;
273
267
  /** If true, no elements *except* those defined in the "always drawn" set will be drawn.
274
268
  * @see [[setAlwaysDrawn]]
275
269
  */
@@ -279,37 +273,33 @@ export declare class FeatureOverrides implements FeatureAppearanceSource {
279
273
  */
280
274
  alwaysDrawnIgnoresSubCategory: boolean;
281
275
  /** If true, all subcategories are considered visible. This is used for drawing sheets via section callouts in the absence of an actual sheet view.
282
- * @internal
283
276
  */
284
277
  ignoreSubCategory: boolean;
285
278
  /** Overrides applied to any feature not explicitly overridden. @internal */
286
- protected _defaultOverrides: FeatureAppearance;
287
- /** Whether construction geometry should be drawn. @internal */
279
+ private _defaultOverrides;
280
+ /** Whether construction geometry should be drawn. */
288
281
  protected _constructions: boolean;
289
- /** Whether dimensions should be drawn. @internal */
282
+ /** Whether dimensions should be drawn. */
290
283
  protected _dimensions: boolean;
291
- /** Whether area patterns should be drawn. @internal */
284
+ /** Whether area patterns should be drawn. */
292
285
  protected _patterns: boolean;
293
- /** Whether line weights should be applied. If false, all lines are rendered 1-pixel wide. @internal */
286
+ /** Whether line weights should be applied. If false, all lines are rendered 1-pixel wide. */
294
287
  protected _lineWeights: boolean;
295
288
  /** Overrides applied to all elements belonging to each model. @internal */
296
- protected readonly _modelOverrides: Id64.Uint32Map<FeatureAppearance>;
297
- /** Overrides applied to specific elements. @internal */
289
+ private readonly _modelOverrides;
290
+ /** Overrides applied to specific elements. */
298
291
  protected readonly _elementOverrides: Id64.Uint32Map<FeatureAppearance>;
299
- /** Overrides applied to geometry belonging to each subcategory. @internal */
292
+ /** Overrides applied to geometry belonging to each subcategory. */
300
293
  protected readonly _subCategoryOverrides: Id64.Uint32Map<FeatureAppearance>;
301
- /** The set of displayed subcategories. Geometry belonging to subcategories not included in this set will not be drawn. @internal */
294
+ /** The set of displayed subcategories. Geometry belonging to subcategories not included in this set will not be drawn. */
302
295
  protected readonly _visibleSubCategories: Id64.Uint32Set;
303
- /** Display priorities assigned to subcategories, possibly overridden by display style. Only applicable for plan projection models. @internal */
296
+ /** Display priorities assigned to subcategories, possibly overridden by display style. Only applicable for plan projection models. */
304
297
  protected readonly _subCategoryPriorities: Id64.Uint32Map<number>;
305
298
  /** Per-model, a set of subcategories whose visibility should be inverted for elements within that model.
306
299
  * Populated by Viewport.
307
- * @internal
308
300
  */
309
301
  protected readonly _modelSubCategoryOverrides: Id64.Uint32Map<Id64.Uint32Set>;
310
- /** Ids of animation nodes that should never be drawn.
311
- * @internal
312
- */
302
+ /** Ids of animation nodes that should never be drawn. */
313
303
  readonly neverDrawnAnimationNodes: Set<number>;
314
304
  /** Mapping of animation node Ids to overrides applied to the corresponding animation nodes.
315
305
  * @internal
@@ -337,21 +327,16 @@ export declare class FeatureOverrides implements FeatureAppearanceSource {
337
327
  * @note If an element is present in both `alwaysDrawn` and [[neverDrawn]], it will not be displayed - `neverDrawn` takes precedence.
338
328
  */
339
329
  get alwaysDrawn(): Id64.Uint32Set;
340
- /** @internal */
341
- protected isNeverDrawn(elemIdLo: number, elemIdHi: number, animationNodeId: number): boolean;
342
- /** @internal */
343
- protected isAlwaysDrawn(idLo: number, idHi: number): boolean;
344
- /** Returns true if the [SubCategory]($backend) specified by Id is in the set of visible subcategories. @internal */
330
+ private isNeverDrawn;
331
+ private isAlwaysDrawn;
332
+ /** Returns true if the [SubCategory]($backend) specified by Id is in the set of visible subcategories. */
345
333
  isSubCategoryVisible(idLo: number, idHi: number): boolean;
346
- /** @internal */
334
+ /** Returns true if the [SubCategory]($backend) specified by Id is in the set of visible subcategories in the context of the specified model. */
347
335
  isSubCategoryVisibleInModel(subcatLo: number, subcatHi: number, modelLo: number, modelHi: number): boolean;
348
- /** @internal */
349
- protected getModelOverrides(idLo: number, idHi: number): FeatureAppearance | undefined;
336
+ private getModelOverrides;
350
337
  private getElementAnimationOverrides;
351
- /** @internal */
352
- protected getElementOverrides(idLo: number, idHi: number, animationNodeId: number): FeatureAppearance | undefined;
353
- /** @internal */
354
- protected getSubCategoryOverrides(idLo: number, idHi: number): FeatureAppearance | undefined;
338
+ private getElementOverrides;
339
+ private getSubCategoryOverrides;
355
340
  /** Add a [SubCategory]($backend) to the set of visible subcategories. */
356
341
  setVisibleSubCategory(id: Id64String): void;
357
342
  /** Specify the Id of an element that should never be drawn. */
@@ -372,43 +357,14 @@ export declare class FeatureOverrides implements FeatureAppearanceSource {
372
357
  * @see [[getFeatureAppearance]] for an equivalent function that accepts [Id64String]($core-bentley)s instead of integer pairs.
373
358
  */
374
359
  getAppearance(elemLo: number, elemHi: number, subcatLo: number, subcatHi: number, geomClass: GeometryClass, modelLo: number, modelHi: number, type: BatchType, animationNodeId: number): FeatureAppearance | undefined;
375
- /** Classifiers behave totally differently...in particular they are never invisible unless fully-transparent.
376
- * @internal
377
- */
378
- protected getClassifierAppearance(elemLo: number, elemHi: number, subcatLo: number, subcatHi: number, modelLo: number, modelHi: number, animationNodeId: number): FeatureAppearance | undefined;
360
+ /** Classifiers behave totally differently...in particular they are never invisible unless fully-transparent. */
361
+ private getClassifierAppearance;
379
362
  /** Return whether geometry of the specified class should be drawn.
380
363
  * @see [[ViewFlags.constructions]], [[ViewFlags.dimensions]], and [[ViewFlags.patterns]].
381
364
  */
382
365
  isClassVisible(geomClass: GeometryClass): boolean;
383
366
  /** Specify overrides for all elements belonging to a specified [GeometricModel]($backend), or all geometry belonging to a specified [GeometricElement]($backend) or [SubCategory]($backend). */
384
367
  override(args: OverrideFeatureAppearanceArgs): void;
385
- /** Specify overrides for all elements within the specified model.
386
- * @param id The Id of the model.
387
- * @param app The symbology overrides.
388
- * @param replaceExisting Specifies whether to replace a pre-existing override for the same model.
389
- * @note These overrides take priority over all other overrides.
390
- * @note If [[defaultOverrides]] are defined, they will not apply to any element within this model, even if the supplied appearance overrides nothing.
391
- * @deprecated in 3.x. Use [[FeatureOverrides.override]].
392
- */
393
- overrideModel(id: Id64String, app: FeatureAppearance, replaceExisting?: boolean): void;
394
- /** Specify overrides for all geometry belonging to the specified [SubCategory]($backend).
395
- * @param id The Id of the subcategory.
396
- * @param app The symbology overrides.
397
- * @param replaceExisting Specifies whether to replace a pre-existing override for the same subcategory.
398
- * @note These overrides have lower priority than element and model overrides.
399
- * @note If [[defaultOverrides]] are defined, they will not apply to any geometry within this subcategory, even if the supplied appearance overrides nothing.
400
- * @deprecated in 3.x. Use [[FeatureOverrides.override]].
401
- */
402
- overrideSubCategory(id: Id64String, app: FeatureAppearance, replaceExisting?: boolean): void;
403
- /** Specify overrides for all geometry originating from the specified element.
404
- * @param id The Id of the element.
405
- * @param app The symbology overrides.
406
- * @param replaceExisting Specifies whether to replace a pre-existing override for the same element.
407
- * @note These overrides take precedence over subcategory overrides, but not over model overrides.
408
- * @note If [[defaultOverrides]] are defined, they will not apply to this element, even if the supplied appearance overrides nothing.
409
- * @deprecated in 3.x. Use [[FeatureOverrides.override]].
410
- */
411
- overrideElement(id: Id64String, app: FeatureAppearance, replaceExisting?: boolean): void;
412
368
  /** Specify overrides for all geometry originating from the specified animation node.
413
369
  * @param id The Id of the animation node.
414
370
  * @param app The symbology overrides.
@@ -420,13 +376,9 @@ export declare class FeatureOverrides implements FeatureAppearanceSource {
420
376
  * @param replaceExisting Specifies whether to replace the current default overrides if they are already defined.
421
377
  */
422
378
  setDefaultOverrides(appearance: FeatureAppearance, replaceExisting?: boolean): void;
423
- /** Get the display priority of a subcategory. This is only relevant when using [[PlanProjectionSettings]].
424
- * @internal
425
- */
379
+ /** Get the display priority of a subcategory. This is only relevant when using [[PlanProjectionSettings]]. */
426
380
  getSubCategoryPriority(idLo: number, idHi: number): number;
427
- /** Adds all fully transparent elements to the _neverDrawn set. This is used for BatchedModels planar masks.
428
- * @internal
429
- */
381
+ /** Adds all fully transparent elements to the _neverDrawn set. This is used for BatchedModels planar masks. */
430
382
  addInvisibleElementOverridesToNeverDrawn(): void;
431
383
  /** Construct a new Overrides that overrides nothing.
432
384
  * @see [FeatureSymbology.Overrides]($frontend) to construct overrides based on a [ViewState]($frontend) or [Viewport]($frontend).