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

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 (836) hide show
  1. package/CHANGELOG.md +81 -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/CatalogIModel.d.ts +152 -0
  24. package/lib/cjs/CatalogIModel.d.ts.map +1 -0
  25. package/lib/cjs/CatalogIModel.js +30 -0
  26. package/lib/cjs/CatalogIModel.js.map +1 -0
  27. package/lib/cjs/CesiumIonAssets.d.ts +23 -0
  28. package/lib/cjs/CesiumIonAssets.d.ts.map +1 -0
  29. package/lib/cjs/CesiumIonAssets.js +32 -0
  30. package/lib/cjs/CesiumIonAssets.js.map +1 -0
  31. package/lib/cjs/ChangedElements.js.map +1 -1
  32. package/lib/cjs/ChangedEntities.js.map +1 -1
  33. package/lib/cjs/ChangesetProps.d.ts +1 -1
  34. package/lib/cjs/ChangesetProps.js.map +1 -1
  35. package/lib/cjs/ClipStyle.js +31 -5
  36. package/lib/cjs/ClipStyle.js.map +1 -1
  37. package/lib/cjs/Code.d.ts +0 -5
  38. package/lib/cjs/Code.d.ts.map +1 -1
  39. package/lib/cjs/Code.js +16 -11
  40. package/lib/cjs/Code.js.map +1 -1
  41. package/lib/cjs/ColorByName.js.map +1 -1
  42. package/lib/cjs/ColorDef.js +11 -10
  43. package/lib/cjs/ColorDef.js.map +1 -1
  44. package/lib/cjs/CommonLoggerCategory.js.map +1 -1
  45. package/lib/cjs/ConcurrentQuery.d.ts +35 -0
  46. package/lib/cjs/ConcurrentQuery.d.ts.map +1 -1
  47. package/lib/cjs/ConcurrentQuery.js +19 -3
  48. package/lib/cjs/ConcurrentQuery.js.map +1 -1
  49. package/lib/cjs/ContextRealityModel.js +53 -27
  50. package/lib/cjs/ContextRealityModel.js.map +1 -1
  51. package/lib/cjs/ContourDisplay.d.ts +9 -0
  52. package/lib/cjs/ContourDisplay.d.ts.map +1 -1
  53. package/lib/cjs/ContourDisplay.js +59 -20
  54. package/lib/cjs/ContourDisplay.js.map +1 -1
  55. package/lib/cjs/DisplayStyleSettings.js +95 -63
  56. package/lib/cjs/DisplayStyleSettings.js.map +1 -1
  57. package/lib/cjs/ECSchemaProps.js.map +1 -1
  58. package/lib/cjs/ECSqlReader.d.ts +2 -0
  59. package/lib/cjs/ECSqlReader.d.ts.map +1 -1
  60. package/lib/cjs/ECSqlReader.js +54 -50
  61. package/lib/cjs/ECSqlReader.js.map +1 -1
  62. package/lib/cjs/ECSqlTypes.js.map +1 -1
  63. package/lib/cjs/ElementMesh.js.map +1 -1
  64. package/lib/cjs/ElementProps.d.ts +14 -1
  65. package/lib/cjs/ElementProps.d.ts.map +1 -1
  66. package/lib/cjs/ElementProps.js +7 -3
  67. package/lib/cjs/ElementProps.js.map +1 -1
  68. package/lib/cjs/EmphasizeElementsProps.js.map +1 -1
  69. package/lib/cjs/EntityProps.d.ts +25 -2
  70. package/lib/cjs/EntityProps.d.ts.map +1 -1
  71. package/lib/cjs/EntityProps.js +39 -0
  72. package/lib/cjs/EntityProps.js.map +1 -1
  73. package/lib/cjs/EntityReference.js.map +1 -1
  74. package/lib/cjs/Environment.js +25 -2
  75. package/lib/cjs/Environment.js.map +1 -1
  76. package/lib/cjs/FeatureIndex.js +15 -6
  77. package/lib/cjs/FeatureIndex.js.map +1 -1
  78. package/lib/cjs/FeatureSymbology.d.ts +25 -73
  79. package/lib/cjs/FeatureSymbology.d.ts.map +1 -1
  80. package/lib/cjs/FeatureSymbology.js +88 -103
  81. package/lib/cjs/FeatureSymbology.js.map +1 -1
  82. package/lib/cjs/FeatureTable.d.ts +6 -108
  83. package/lib/cjs/FeatureTable.d.ts.map +1 -1
  84. package/lib/cjs/FeatureTable.js +13 -329
  85. package/lib/cjs/FeatureTable.js.map +1 -1
  86. package/lib/cjs/Fonts.d.ts +68 -10
  87. package/lib/cjs/Fonts.d.ts.map +1 -1
  88. package/lib/cjs/Fonts.js +19 -4
  89. package/lib/cjs/Fonts.js.map +1 -1
  90. package/lib/cjs/Frustum.js +2 -2
  91. package/lib/cjs/Frustum.js.map +1 -1
  92. package/lib/cjs/GenericInstanceFilter.js.map +1 -1
  93. package/lib/cjs/GeoCoordinateServices.d.ts +1 -0
  94. package/lib/cjs/GeoCoordinateServices.d.ts.map +1 -1
  95. package/lib/cjs/GeoCoordinateServices.js +2 -1
  96. package/lib/cjs/GeoCoordinateServices.js.map +1 -1
  97. package/lib/cjs/GeometryContainment.js.map +1 -1
  98. package/lib/cjs/GeometryParams.js +58 -0
  99. package/lib/cjs/GeometryParams.js.map +1 -1
  100. package/lib/cjs/GeometrySummary.js.map +1 -1
  101. package/lib/cjs/Gradient.d.ts +3 -4
  102. package/lib/cjs/Gradient.d.ts.map +1 -1
  103. package/lib/cjs/Gradient.js +21 -19
  104. package/lib/cjs/Gradient.js.map +1 -1
  105. package/lib/cjs/GraphicParams.js +14 -12
  106. package/lib/cjs/GraphicParams.js.map +1 -1
  107. package/lib/cjs/GroundPlane.js +8 -2
  108. package/lib/cjs/GroundPlane.js.map +1 -1
  109. package/lib/cjs/HSLColor.js +6 -0
  110. package/lib/cjs/HSLColor.js.map +1 -1
  111. package/lib/cjs/HSVColor.js +6 -0
  112. package/lib/cjs/HSVColor.js.map +1 -1
  113. package/lib/cjs/HiddenLine.d.ts +17 -18
  114. package/lib/cjs/HiddenLine.d.ts.map +1 -1
  115. package/lib/cjs/HiddenLine.js +24 -5
  116. package/lib/cjs/HiddenLine.js.map +1 -1
  117. package/lib/cjs/Hilite.js +10 -0
  118. package/lib/cjs/Hilite.js.map +1 -1
  119. package/lib/cjs/IModel.d.ts +3 -12
  120. package/lib/cjs/IModel.d.ts.map +1 -1
  121. package/lib/cjs/IModel.js +47 -23
  122. package/lib/cjs/IModel.js.map +1 -1
  123. package/lib/cjs/IModelError.d.ts +17 -9
  124. package/lib/cjs/IModelError.d.ts.map +1 -1
  125. package/lib/cjs/IModelError.js +7 -11
  126. package/lib/cjs/IModelError.js.map +1 -1
  127. package/lib/cjs/IModelVersion.js +4 -0
  128. package/lib/cjs/IModelVersion.js.map +1 -1
  129. package/lib/cjs/ITwinCoreErrors.d.ts +107 -0
  130. package/lib/cjs/ITwinCoreErrors.d.ts.map +1 -0
  131. package/lib/cjs/ITwinCoreErrors.js +90 -0
  132. package/lib/cjs/ITwinCoreErrors.js.map +1 -0
  133. package/lib/cjs/Image.d.ts +22 -8
  134. package/lib/cjs/Image.d.ts.map +1 -1
  135. package/lib/cjs/Image.js +20 -4
  136. package/lib/cjs/Image.js.map +1 -1
  137. package/lib/cjs/IpcAppProps.d.ts +2 -0
  138. package/lib/cjs/IpcAppProps.d.ts.map +1 -1
  139. package/lib/cjs/IpcAppProps.js.map +1 -1
  140. package/lib/cjs/LightSettings.js +39 -1
  141. package/lib/cjs/LightSettings.js.map +1 -1
  142. package/lib/cjs/LinePixels.js.map +1 -1
  143. package/lib/cjs/Localization.d.ts +0 -10
  144. package/lib/cjs/Localization.d.ts.map +1 -1
  145. package/lib/cjs/Localization.js +0 -1
  146. package/lib/cjs/Localization.js.map +1 -1
  147. package/lib/cjs/MapImagerySettings.js +3 -2
  148. package/lib/cjs/MapImagerySettings.js.map +1 -1
  149. package/lib/cjs/MapLayerSettings.d.ts +40 -1
  150. package/lib/cjs/MapLayerSettings.d.ts.map +1 -1
  151. package/lib/cjs/MapLayerSettings.js +73 -4
  152. package/lib/cjs/MapLayerSettings.js.map +1 -1
  153. package/lib/cjs/MassProperties.d.ts +2 -0
  154. package/lib/cjs/MassProperties.d.ts.map +1 -1
  155. package/lib/cjs/MassProperties.js.map +1 -1
  156. package/lib/cjs/MaterialProps.js.map +1 -1
  157. package/lib/cjs/ModelClipGroup.js +6 -0
  158. package/lib/cjs/ModelClipGroup.js.map +1 -1
  159. package/lib/cjs/ModelGeometryChanges.js.map +1 -1
  160. package/lib/cjs/ModelProps.js.map +1 -1
  161. package/lib/cjs/NativeAppProps.js.map +1 -1
  162. package/lib/cjs/OctEncodedNormal.js +4 -0
  163. package/lib/cjs/OctEncodedNormal.js.map +1 -1
  164. package/lib/cjs/PlanProjectionSettings.d.ts +1 -2
  165. package/lib/cjs/PlanProjectionSettings.d.ts.map +1 -1
  166. package/lib/cjs/PlanProjectionSettings.js +8 -1
  167. package/lib/cjs/PlanProjectionSettings.js.map +1 -1
  168. package/lib/cjs/PlanarClipMask.d.ts +0 -12
  169. package/lib/cjs/PlanarClipMask.d.ts.map +1 -1
  170. package/lib/cjs/PlanarClipMask.js +24 -2
  171. package/lib/cjs/PlanarClipMask.js.map +1 -1
  172. package/lib/cjs/QPoint.d.ts +5 -5
  173. package/lib/cjs/QPoint.d.ts.map +1 -1
  174. package/lib/cjs/QPoint.js +37 -29
  175. package/lib/cjs/QPoint.js.map +1 -1
  176. package/lib/cjs/RealityDataAccessProps.js.map +1 -1
  177. package/lib/cjs/RealityModelDisplaySettings.js +81 -4
  178. package/lib/cjs/RealityModelDisplaySettings.js.map +1 -1
  179. package/lib/cjs/RenderMaterial.d.ts +0 -43
  180. package/lib/cjs/RenderMaterial.d.ts.map +1 -1
  181. package/lib/cjs/RenderMaterial.js +6 -51
  182. package/lib/cjs/RenderMaterial.js.map +1 -1
  183. package/lib/cjs/RenderPolyline.d.ts +36 -0
  184. package/lib/cjs/RenderPolyline.d.ts.map +1 -0
  185. package/lib/cjs/RenderPolyline.js +26 -0
  186. package/lib/cjs/RenderPolyline.js.map +1 -0
  187. package/lib/cjs/RenderSchedule.d.ts +6 -2
  188. package/lib/cjs/RenderSchedule.d.ts.map +1 -1
  189. package/lib/cjs/RenderSchedule.js +152 -11
  190. package/lib/cjs/RenderSchedule.js.map +1 -1
  191. package/lib/cjs/RenderTexture.d.ts +5 -23
  192. package/lib/cjs/RenderTexture.d.ts.map +1 -1
  193. package/lib/cjs/RenderTexture.js +13 -16
  194. package/lib/cjs/RenderTexture.js.map +1 -1
  195. package/lib/cjs/RgbColor.js +3 -0
  196. package/lib/cjs/RgbColor.js.map +1 -1
  197. package/lib/cjs/RpcInterface.d.ts.map +1 -1
  198. package/lib/cjs/RpcInterface.js +7 -1
  199. package/lib/cjs/RpcInterface.js.map +1 -1
  200. package/lib/cjs/RpcManager.js.map +1 -1
  201. package/lib/cjs/SessionProps.js.map +1 -1
  202. package/lib/cjs/SkyBox.js +17 -4
  203. package/lib/cjs/SkyBox.js.map +1 -1
  204. package/lib/cjs/SolarCalculate.js.map +1 -1
  205. package/lib/cjs/SolarShadows.js +5 -1
  206. package/lib/cjs/SolarShadows.js.map +1 -1
  207. package/lib/cjs/SpatialClassification.js +19 -1
  208. package/lib/cjs/SpatialClassification.js.map +1 -1
  209. package/lib/cjs/SubCategoryAppearance.js +35 -1
  210. package/lib/cjs/SubCategoryAppearance.js.map +1 -1
  211. package/lib/cjs/SubCategoryOverride.js +16 -2
  212. package/lib/cjs/SubCategoryOverride.js.map +1 -1
  213. package/lib/cjs/TerrainSettings.d.ts +0 -19
  214. package/lib/cjs/TerrainSettings.d.ts.map +1 -1
  215. package/lib/cjs/TerrainSettings.js +22 -15
  216. package/lib/cjs/TerrainSettings.js.map +1 -1
  217. package/lib/cjs/TextureMapping.d.ts +17 -14
  218. package/lib/cjs/TextureMapping.d.ts.map +1 -1
  219. package/lib/cjs/TextureMapping.js +47 -19
  220. package/lib/cjs/TextureMapping.js.map +1 -1
  221. package/lib/cjs/TextureProps.js.map +1 -1
  222. package/lib/cjs/ThematicDisplay.js +53 -2
  223. package/lib/cjs/ThematicDisplay.js.map +1 -1
  224. package/lib/cjs/Thumbnail.d.ts +1 -1
  225. package/lib/cjs/Thumbnail.js.map +1 -1
  226. package/lib/cjs/TileProps.js.map +1 -1
  227. package/lib/cjs/Tween.js +28 -19
  228. package/lib/cjs/Tween.js.map +1 -1
  229. package/lib/cjs/TxnAction.js.map +1 -1
  230. package/lib/cjs/ViewDetails.js +10 -6
  231. package/lib/cjs/ViewDetails.js.map +1 -1
  232. package/lib/cjs/ViewFlags.d.ts +1 -3
  233. package/lib/cjs/ViewFlags.d.ts.map +1 -1
  234. package/lib/cjs/ViewFlags.js +86 -5
  235. package/lib/cjs/ViewFlags.js.map +1 -1
  236. package/lib/cjs/ViewProps.d.ts +2 -6
  237. package/lib/cjs/ViewProps.d.ts.map +1 -1
  238. package/lib/cjs/ViewProps.js.map +1 -1
  239. package/lib/cjs/WhiteOnWhiteReversalSettings.js +7 -2
  240. package/lib/cjs/WhiteOnWhiteReversalSettings.js.map +1 -1
  241. package/lib/cjs/annotation/TextAnnotation.d.ts +3 -2
  242. package/lib/cjs/annotation/TextAnnotation.d.ts.map +1 -1
  243. package/lib/cjs/annotation/TextAnnotation.js +13 -2
  244. package/lib/cjs/annotation/TextAnnotation.js.map +1 -1
  245. package/lib/cjs/annotation/TextBlock.d.ts +17 -0
  246. package/lib/cjs/annotation/TextBlock.d.ts.map +1 -1
  247. package/lib/cjs/annotation/TextBlock.js +41 -6
  248. package/lib/cjs/annotation/TextBlock.js.map +1 -1
  249. package/lib/cjs/annotation/TextBlockGeometryProps.js.map +1 -1
  250. package/lib/cjs/annotation/TextBlockLayoutResult.js.map +1 -1
  251. package/lib/cjs/annotation/TextStyle.js +65 -19
  252. package/lib/cjs/annotation/TextStyle.js.map +1 -1
  253. package/lib/cjs/core-common.d.ts +5 -4
  254. package/lib/cjs/core-common.d.ts.map +1 -1
  255. package/lib/cjs/core-common.js +5 -4
  256. package/lib/cjs/core-common.js.map +1 -1
  257. package/lib/cjs/domains/FunctionalElementProps.js.map +1 -1
  258. package/lib/cjs/domains/GenericElementProps.js.map +1 -1
  259. package/lib/cjs/geometry/AdditionalTransform.js +12 -0
  260. package/lib/cjs/geometry/AdditionalTransform.js.map +1 -1
  261. package/lib/cjs/geometry/AreaPattern.js +17 -0
  262. package/lib/cjs/geometry/AreaPattern.js.map +1 -1
  263. package/lib/cjs/geometry/BoundingSphere.js +4 -0
  264. package/lib/cjs/geometry/BoundingSphere.js.map +1 -1
  265. package/lib/cjs/geometry/Cartographic.js +23 -20
  266. package/lib/cjs/geometry/Cartographic.js.map +1 -1
  267. package/lib/cjs/geometry/CoordinateReferenceSystem.js +62 -0
  268. package/lib/cjs/geometry/CoordinateReferenceSystem.js.map +1 -1
  269. package/lib/cjs/geometry/ElementGeometry.js +26 -8
  270. package/lib/cjs/geometry/ElementGeometry.js.map +1 -1
  271. package/lib/cjs/geometry/ElementGeometryFB.js +54 -108
  272. package/lib/cjs/geometry/ElementGeometryFB.js.map +1 -1
  273. package/lib/cjs/geometry/FrustumPlanes.js +1 -0
  274. package/lib/cjs/geometry/FrustumPlanes.js.map +1 -1
  275. package/lib/cjs/geometry/GeodeticDatum.js +100 -0
  276. package/lib/cjs/geometry/GeodeticDatum.js.map +1 -1
  277. package/lib/cjs/geometry/GeodeticEllipsoid.js +16 -0
  278. package/lib/cjs/geometry/GeodeticEllipsoid.js.map +1 -1
  279. package/lib/cjs/geometry/GeometryStream.js +19 -6
  280. package/lib/cjs/geometry/GeometryStream.js.map +1 -1
  281. package/lib/cjs/geometry/ImageGraphic.js +10 -0
  282. package/lib/cjs/geometry/ImageGraphic.js.map +1 -1
  283. package/lib/cjs/geometry/LineStyle.js +14 -0
  284. package/lib/cjs/geometry/LineStyle.js.map +1 -1
  285. package/lib/cjs/geometry/Placement.js +6 -0
  286. package/lib/cjs/geometry/Placement.js.map +1 -1
  287. package/lib/cjs/geometry/Projection.js +75 -0
  288. package/lib/cjs/geometry/Projection.js.map +1 -1
  289. package/lib/cjs/geometry/TextString.js +18 -0
  290. package/lib/cjs/geometry/TextString.js.map +1 -1
  291. package/lib/cjs/{BackendTypes.d.ts → internal/BackendTypes.d.ts} +1 -0
  292. package/lib/cjs/internal/BackendTypes.d.ts.map +1 -0
  293. package/lib/cjs/internal/BackendTypes.js.map +1 -0
  294. package/lib/cjs/internal/PackedFeatureTable.d.ts +111 -0
  295. package/lib/cjs/internal/PackedFeatureTable.d.ts.map +1 -0
  296. package/lib/cjs/internal/PackedFeatureTable.js +359 -0
  297. package/lib/cjs/internal/PackedFeatureTable.js.map +1 -0
  298. package/lib/cjs/internal/RenderMaterialParams.d.ts +47 -0
  299. package/lib/cjs/internal/RenderMaterialParams.d.ts.map +1 -0
  300. package/lib/cjs/internal/RenderMaterialParams.js +68 -0
  301. package/lib/cjs/internal/RenderMaterialParams.js.map +1 -0
  302. package/lib/cjs/internal/RenderMesh.d.ts +52 -0
  303. package/lib/cjs/internal/RenderMesh.d.ts.map +1 -0
  304. package/lib/cjs/{Render.js → internal/RenderMesh.js} +12 -31
  305. package/lib/cjs/internal/RenderMesh.js.map +1 -0
  306. package/lib/cjs/internal/RenderTextureParams.d.ts +25 -0
  307. package/lib/cjs/internal/RenderTextureParams.d.ts.map +1 -0
  308. package/lib/cjs/internal/RenderTextureParams.js +37 -0
  309. package/lib/cjs/internal/RenderTextureParams.js.map +1 -0
  310. package/lib/cjs/internal/Snapping.js.map +1 -1
  311. package/lib/cjs/internal/cross-package.d.ts +5 -0
  312. package/lib/cjs/internal/cross-package.d.ts.map +1 -1
  313. package/lib/cjs/internal/cross-package.js +16 -0
  314. package/lib/cjs/internal/cross-package.js.map +1 -1
  315. package/lib/cjs/ipc/IpcSession.js +1 -0
  316. package/lib/cjs/ipc/IpcSession.js.map +1 -1
  317. package/lib/cjs/ipc/IpcSocket.d.ts +2 -20
  318. package/lib/cjs/ipc/IpcSocket.d.ts.map +1 -1
  319. package/lib/cjs/ipc/IpcSocket.js.map +1 -1
  320. package/lib/cjs/ipc/IpcWebSocket.js +7 -6
  321. package/lib/cjs/ipc/IpcWebSocket.js.map +1 -1
  322. package/lib/cjs/ipc/IpcWebSocketTransport.js +8 -7
  323. package/lib/cjs/ipc/IpcWebSocketTransport.js.map +1 -1
  324. package/lib/cjs/rpc/DevToolsRpcInterface.js +6 -6
  325. package/lib/cjs/rpc/DevToolsRpcInterface.js.map +1 -1
  326. package/lib/cjs/rpc/IModelReadRpcInterface.js +8 -11
  327. package/lib/cjs/rpc/IModelReadRpcInterface.js.map +1 -1
  328. package/lib/cjs/rpc/IModelTileRpcInterface.js +4 -4
  329. package/lib/cjs/rpc/IModelTileRpcInterface.js.map +1 -1
  330. package/lib/cjs/rpc/SnapshotIModelRpcInterface.js +4 -4
  331. package/lib/cjs/rpc/SnapshotIModelRpcInterface.js.map +1 -1
  332. package/lib/cjs/rpc/TestRpcManager.js +1 -4
  333. package/lib/cjs/rpc/TestRpcManager.js.map +1 -1
  334. package/lib/cjs/rpc/core/RpcConfiguration.js +51 -64
  335. package/lib/cjs/rpc/core/RpcConfiguration.js.map +1 -1
  336. package/lib/cjs/rpc/core/RpcConstants.js.map +1 -1
  337. package/lib/cjs/rpc/core/RpcControl.js +29 -38
  338. package/lib/cjs/rpc/core/RpcControl.js.map +1 -1
  339. package/lib/cjs/rpc/core/RpcInvocation.js +19 -13
  340. package/lib/cjs/rpc/core/RpcInvocation.js.map +1 -1
  341. package/lib/cjs/rpc/core/RpcMarshaling.d.ts +1 -4
  342. package/lib/cjs/rpc/core/RpcMarshaling.d.ts.map +1 -1
  343. package/lib/cjs/rpc/core/RpcMarshaling.js +5 -4
  344. package/lib/cjs/rpc/core/RpcMarshaling.js.map +1 -1
  345. package/lib/cjs/rpc/core/RpcOperation.js +29 -31
  346. package/lib/cjs/rpc/core/RpcOperation.js.map +1 -1
  347. package/lib/cjs/rpc/core/RpcPendingQueue.js +17 -16
  348. package/lib/cjs/rpc/core/RpcPendingQueue.js.map +1 -1
  349. package/lib/cjs/rpc/core/RpcProtocol.js +32 -30
  350. package/lib/cjs/rpc/core/RpcProtocol.js.map +1 -1
  351. package/lib/cjs/rpc/core/RpcPush.js +15 -8
  352. package/lib/cjs/rpc/core/RpcPush.js.map +1 -1
  353. package/lib/cjs/rpc/core/RpcRegistry.d.ts.map +1 -1
  354. package/lib/cjs/rpc/core/RpcRegistry.js +10 -9
  355. package/lib/cjs/rpc/core/RpcRegistry.js.map +1 -1
  356. package/lib/cjs/rpc/core/RpcRequest.d.ts +2 -2
  357. package/lib/cjs/rpc/core/RpcRequest.d.ts.map +1 -1
  358. package/lib/cjs/rpc/core/RpcRequest.js +51 -29
  359. package/lib/cjs/rpc/core/RpcRequest.js.map +1 -1
  360. package/lib/cjs/rpc/core/RpcRequestContext.js.map +1 -1
  361. package/lib/cjs/rpc/core/RpcRoutingToken.js +4 -2
  362. package/lib/cjs/rpc/core/RpcRoutingToken.js.map +1 -1
  363. package/lib/cjs/rpc/core/RpcSessionInvocation.js +5 -10
  364. package/lib/cjs/rpc/core/RpcSessionInvocation.js.map +1 -1
  365. package/lib/cjs/rpc/web/BentleyCloudRpcManager.js +11 -17
  366. package/lib/cjs/rpc/web/BentleyCloudRpcManager.js.map +1 -1
  367. package/lib/cjs/rpc/web/BentleyCloudRpcProtocol.js +16 -19
  368. package/lib/cjs/rpc/web/BentleyCloudRpcProtocol.js.map +1 -1
  369. package/lib/cjs/rpc/web/OpenAPI.js +2 -0
  370. package/lib/cjs/rpc/web/OpenAPI.js.map +1 -1
  371. package/lib/cjs/rpc/web/RpcMultipart.d.ts +1 -1
  372. package/lib/cjs/rpc/web/RpcMultipart.d.ts.map +1 -1
  373. package/lib/cjs/rpc/web/RpcMultipart.js +13 -12
  374. package/lib/cjs/rpc/web/RpcMultipart.js.map +1 -1
  375. package/lib/cjs/rpc/web/WebAppRpcLogging.d.ts +3 -0
  376. package/lib/cjs/rpc/web/WebAppRpcLogging.d.ts.map +1 -1
  377. package/lib/cjs/rpc/web/WebAppRpcLogging.js +1 -6
  378. package/lib/cjs/rpc/web/WebAppRpcLogging.js.map +1 -1
  379. package/lib/cjs/rpc/web/WebAppRpcProtocol.d.ts +1 -1
  380. package/lib/cjs/rpc/web/WebAppRpcProtocol.d.ts.map +1 -1
  381. package/lib/cjs/rpc/web/WebAppRpcProtocol.js +6 -6
  382. package/lib/cjs/rpc/web/WebAppRpcProtocol.js.map +1 -1
  383. package/lib/cjs/rpc/web/WebAppRpcRequest.d.ts.map +1 -1
  384. package/lib/cjs/rpc/web/WebAppRpcRequest.js +27 -27
  385. package/lib/cjs/rpc/web/WebAppRpcRequest.js.map +1 -1
  386. package/lib/cjs/rpc/web/multipart/RpcMultipartParser.d.ts +0 -2
  387. package/lib/cjs/rpc/web/multipart/RpcMultipartParser.d.ts.map +1 -1
  388. package/lib/cjs/rpc/web/multipart/RpcMultipartParser.js +14 -8
  389. package/lib/cjs/rpc/web/multipart/RpcMultipartParser.js.map +1 -1
  390. package/lib/cjs/tile/B3dmTileIO.js +7 -0
  391. package/lib/cjs/tile/B3dmTileIO.js.map +1 -1
  392. package/lib/cjs/tile/CompositeTileIO.js +3 -0
  393. package/lib/cjs/tile/CompositeTileIO.js.map +1 -1
  394. package/lib/cjs/tile/ElementGraphics.js.map +1 -1
  395. package/lib/cjs/tile/GltfTileIO.js +4 -3
  396. package/lib/cjs/tile/GltfTileIO.js.map +1 -1
  397. package/lib/cjs/tile/I3dmTileIO.js +8 -0
  398. package/lib/cjs/tile/I3dmTileIO.js.map +1 -1
  399. package/lib/cjs/tile/IModelTileIO.d.ts +2 -2
  400. package/lib/cjs/tile/IModelTileIO.js +26 -3
  401. package/lib/cjs/tile/IModelTileIO.js.map +1 -1
  402. package/lib/cjs/tile/PntsTileIO.js +5 -0
  403. package/lib/cjs/tile/PntsTileIO.js.map +1 -1
  404. package/lib/cjs/tile/TileIO.js +2 -0
  405. package/lib/cjs/tile/TileIO.js.map +1 -1
  406. package/lib/cjs/tile/TileMetadata.js +9 -1
  407. package/lib/cjs/tile/TileMetadata.js.map +1 -1
  408. package/lib/cjs/tile/Tileset3dSchema.js.map +1 -1
  409. package/lib/esm/AmbientOcclusion.js +17 -9
  410. package/lib/esm/AmbientOcclusion.js.map +1 -1
  411. package/lib/esm/AnalysisStyle.d.ts +0 -3
  412. package/lib/esm/AnalysisStyle.d.ts.map +1 -1
  413. package/lib/esm/AnalysisStyle.js +20 -4
  414. package/lib/esm/AnalysisStyle.js.map +1 -1
  415. package/lib/esm/Atmosphere.js +39 -21
  416. package/lib/esm/Atmosphere.js.map +1 -1
  417. package/lib/esm/AuthorizationClient.js.map +1 -1
  418. package/lib/esm/BackgroundMapProvider.js +4 -0
  419. package/lib/esm/BackgroundMapProvider.js.map +1 -1
  420. package/lib/esm/BackgroundMapSettings.js +19 -0
  421. package/lib/esm/BackgroundMapSettings.js.map +1 -1
  422. package/lib/esm/Base64EncodedString.js.map +1 -1
  423. package/lib/esm/BlobReader.js +8 -6
  424. package/lib/esm/BlobReader.js.map +1 -1
  425. package/lib/esm/BriefcaseTypes.d.ts +2 -2
  426. package/lib/esm/BriefcaseTypes.d.ts.map +1 -1
  427. package/lib/esm/BriefcaseTypes.js.map +1 -1
  428. package/lib/esm/Camera.js +3 -0
  429. package/lib/esm/Camera.js.map +1 -1
  430. package/lib/esm/CatalogIModel.d.ts +152 -0
  431. package/lib/esm/CatalogIModel.d.ts.map +1 -0
  432. package/lib/esm/CatalogIModel.js +27 -0
  433. package/lib/esm/CatalogIModel.js.map +1 -0
  434. package/lib/esm/CesiumIonAssets.d.ts +23 -0
  435. package/lib/esm/CesiumIonAssets.d.ts.map +1 -0
  436. package/lib/esm/CesiumIonAssets.js +29 -0
  437. package/lib/esm/CesiumIonAssets.js.map +1 -0
  438. package/lib/esm/ChangedElements.js.map +1 -1
  439. package/lib/esm/ChangedEntities.js.map +1 -1
  440. package/lib/esm/ChangesetProps.d.ts +1 -1
  441. package/lib/esm/ChangesetProps.js.map +1 -1
  442. package/lib/esm/ClipStyle.js +31 -5
  443. package/lib/esm/ClipStyle.js.map +1 -1
  444. package/lib/esm/Code.d.ts +0 -5
  445. package/lib/esm/Code.d.ts.map +1 -1
  446. package/lib/esm/Code.js +16 -11
  447. package/lib/esm/Code.js.map +1 -1
  448. package/lib/esm/ColorByName.js.map +1 -1
  449. package/lib/esm/ColorDef.js +11 -10
  450. package/lib/esm/ColorDef.js.map +1 -1
  451. package/lib/esm/CommonLoggerCategory.js.map +1 -1
  452. package/lib/esm/ConcurrentQuery.d.ts +35 -0
  453. package/lib/esm/ConcurrentQuery.d.ts.map +1 -1
  454. package/lib/esm/ConcurrentQuery.js +19 -3
  455. package/lib/esm/ConcurrentQuery.js.map +1 -1
  456. package/lib/esm/ContextRealityModel.js +53 -27
  457. package/lib/esm/ContextRealityModel.js.map +1 -1
  458. package/lib/esm/ContourDisplay.d.ts +9 -0
  459. package/lib/esm/ContourDisplay.d.ts.map +1 -1
  460. package/lib/esm/ContourDisplay.js +60 -21
  461. package/lib/esm/ContourDisplay.js.map +1 -1
  462. package/lib/esm/DisplayStyleSettings.js +95 -63
  463. package/lib/esm/DisplayStyleSettings.js.map +1 -1
  464. package/lib/esm/ECSchemaProps.js.map +1 -1
  465. package/lib/esm/ECSqlReader.d.ts +2 -0
  466. package/lib/esm/ECSqlReader.d.ts.map +1 -1
  467. package/lib/esm/ECSqlReader.js +54 -50
  468. package/lib/esm/ECSqlReader.js.map +1 -1
  469. package/lib/esm/ECSqlTypes.js.map +1 -1
  470. package/lib/esm/ElementMesh.js.map +1 -1
  471. package/lib/esm/ElementProps.d.ts +14 -1
  472. package/lib/esm/ElementProps.d.ts.map +1 -1
  473. package/lib/esm/ElementProps.js +8 -4
  474. package/lib/esm/ElementProps.js.map +1 -1
  475. package/lib/esm/EmphasizeElementsProps.js.map +1 -1
  476. package/lib/esm/EntityProps.d.ts +25 -2
  477. package/lib/esm/EntityProps.d.ts.map +1 -1
  478. package/lib/esm/EntityProps.js +39 -0
  479. package/lib/esm/EntityProps.js.map +1 -1
  480. package/lib/esm/EntityReference.js.map +1 -1
  481. package/lib/esm/Environment.js +25 -2
  482. package/lib/esm/Environment.js.map +1 -1
  483. package/lib/esm/FeatureIndex.js +15 -6
  484. package/lib/esm/FeatureIndex.js.map +1 -1
  485. package/lib/esm/FeatureSymbology.d.ts +25 -73
  486. package/lib/esm/FeatureSymbology.d.ts.map +1 -1
  487. package/lib/esm/FeatureSymbology.js +88 -103
  488. package/lib/esm/FeatureSymbology.js.map +1 -1
  489. package/lib/esm/FeatureTable.d.ts +6 -108
  490. package/lib/esm/FeatureTable.d.ts.map +1 -1
  491. package/lib/esm/FeatureTable.js +11 -324
  492. package/lib/esm/FeatureTable.js.map +1 -1
  493. package/lib/esm/Fonts.d.ts +68 -10
  494. package/lib/esm/Fonts.d.ts.map +1 -1
  495. package/lib/esm/Fonts.js +19 -4
  496. package/lib/esm/Fonts.js.map +1 -1
  497. package/lib/esm/Frustum.js +2 -2
  498. package/lib/esm/Frustum.js.map +1 -1
  499. package/lib/esm/GenericInstanceFilter.js.map +1 -1
  500. package/lib/esm/GeoCoordinateServices.d.ts +1 -0
  501. package/lib/esm/GeoCoordinateServices.d.ts.map +1 -1
  502. package/lib/esm/GeoCoordinateServices.js +2 -1
  503. package/lib/esm/GeoCoordinateServices.js.map +1 -1
  504. package/lib/esm/GeometryContainment.js.map +1 -1
  505. package/lib/esm/GeometryParams.js +58 -0
  506. package/lib/esm/GeometryParams.js.map +1 -1
  507. package/lib/esm/GeometrySummary.js.map +1 -1
  508. package/lib/esm/Gradient.d.ts +3 -4
  509. package/lib/esm/Gradient.d.ts.map +1 -1
  510. package/lib/esm/Gradient.js +21 -19
  511. package/lib/esm/Gradient.js.map +1 -1
  512. package/lib/esm/GraphicParams.js +14 -12
  513. package/lib/esm/GraphicParams.js.map +1 -1
  514. package/lib/esm/GroundPlane.js +8 -2
  515. package/lib/esm/GroundPlane.js.map +1 -1
  516. package/lib/esm/HSLColor.js +6 -0
  517. package/lib/esm/HSLColor.js.map +1 -1
  518. package/lib/esm/HSVColor.js +6 -0
  519. package/lib/esm/HSVColor.js.map +1 -1
  520. package/lib/esm/HiddenLine.d.ts +17 -18
  521. package/lib/esm/HiddenLine.d.ts.map +1 -1
  522. package/lib/esm/HiddenLine.js +24 -5
  523. package/lib/esm/HiddenLine.js.map +1 -1
  524. package/lib/esm/Hilite.js +10 -0
  525. package/lib/esm/Hilite.js.map +1 -1
  526. package/lib/esm/IModel.d.ts +3 -12
  527. package/lib/esm/IModel.d.ts.map +1 -1
  528. package/lib/esm/IModel.js +47 -23
  529. package/lib/esm/IModel.js.map +1 -1
  530. package/lib/esm/IModelError.d.ts +17 -9
  531. package/lib/esm/IModelError.d.ts.map +1 -1
  532. package/lib/esm/IModelError.js +6 -4
  533. package/lib/esm/IModelError.js.map +1 -1
  534. package/lib/esm/IModelVersion.js +4 -0
  535. package/lib/esm/IModelVersion.js.map +1 -1
  536. package/lib/esm/ITwinCoreErrors.d.ts +107 -0
  537. package/lib/esm/ITwinCoreErrors.d.ts.map +1 -0
  538. package/lib/esm/ITwinCoreErrors.js +87 -0
  539. package/lib/esm/ITwinCoreErrors.js.map +1 -0
  540. package/lib/esm/Image.d.ts +22 -8
  541. package/lib/esm/Image.d.ts.map +1 -1
  542. package/lib/esm/Image.js +19 -4
  543. package/lib/esm/Image.js.map +1 -1
  544. package/lib/esm/IpcAppProps.d.ts +2 -0
  545. package/lib/esm/IpcAppProps.d.ts.map +1 -1
  546. package/lib/esm/IpcAppProps.js.map +1 -1
  547. package/lib/esm/LightSettings.js +39 -1
  548. package/lib/esm/LightSettings.js.map +1 -1
  549. package/lib/esm/LinePixels.js.map +1 -1
  550. package/lib/esm/Localization.d.ts +0 -10
  551. package/lib/esm/Localization.d.ts.map +1 -1
  552. package/lib/esm/Localization.js +0 -1
  553. package/lib/esm/Localization.js.map +1 -1
  554. package/lib/esm/MapImagerySettings.js +3 -2
  555. package/lib/esm/MapImagerySettings.js.map +1 -1
  556. package/lib/esm/MapLayerSettings.d.ts +40 -1
  557. package/lib/esm/MapLayerSettings.d.ts.map +1 -1
  558. package/lib/esm/MapLayerSettings.js +72 -3
  559. package/lib/esm/MapLayerSettings.js.map +1 -1
  560. package/lib/esm/MassProperties.d.ts +2 -0
  561. package/lib/esm/MassProperties.d.ts.map +1 -1
  562. package/lib/esm/MassProperties.js.map +1 -1
  563. package/lib/esm/MaterialProps.js.map +1 -1
  564. package/lib/esm/ModelClipGroup.js +6 -0
  565. package/lib/esm/ModelClipGroup.js.map +1 -1
  566. package/lib/esm/ModelGeometryChanges.js.map +1 -1
  567. package/lib/esm/ModelProps.js.map +1 -1
  568. package/lib/esm/NativeAppProps.js.map +1 -1
  569. package/lib/esm/OctEncodedNormal.js +4 -0
  570. package/lib/esm/OctEncodedNormal.js.map +1 -1
  571. package/lib/esm/PlanProjectionSettings.d.ts +1 -2
  572. package/lib/esm/PlanProjectionSettings.d.ts.map +1 -1
  573. package/lib/esm/PlanProjectionSettings.js +8 -1
  574. package/lib/esm/PlanProjectionSettings.js.map +1 -1
  575. package/lib/esm/PlanarClipMask.d.ts +0 -12
  576. package/lib/esm/PlanarClipMask.d.ts.map +1 -1
  577. package/lib/esm/PlanarClipMask.js +24 -2
  578. package/lib/esm/PlanarClipMask.js.map +1 -1
  579. package/lib/esm/QPoint.d.ts +5 -5
  580. package/lib/esm/QPoint.d.ts.map +1 -1
  581. package/lib/esm/QPoint.js +37 -29
  582. package/lib/esm/QPoint.js.map +1 -1
  583. package/lib/esm/RealityDataAccessProps.js.map +1 -1
  584. package/lib/esm/RealityModelDisplaySettings.js +81 -4
  585. package/lib/esm/RealityModelDisplaySettings.js.map +1 -1
  586. package/lib/esm/RenderMaterial.d.ts +0 -43
  587. package/lib/esm/RenderMaterial.d.ts.map +1 -1
  588. package/lib/esm/RenderMaterial.js +6 -51
  589. package/lib/esm/RenderMaterial.js.map +1 -1
  590. package/lib/esm/RenderPolyline.d.ts +36 -0
  591. package/lib/esm/RenderPolyline.d.ts.map +1 -0
  592. package/lib/esm/RenderPolyline.js +23 -0
  593. package/lib/esm/RenderPolyline.js.map +1 -0
  594. package/lib/esm/RenderSchedule.d.ts +6 -2
  595. package/lib/esm/RenderSchedule.d.ts.map +1 -1
  596. package/lib/esm/RenderSchedule.js +152 -11
  597. package/lib/esm/RenderSchedule.js.map +1 -1
  598. package/lib/esm/RenderTexture.d.ts +5 -23
  599. package/lib/esm/RenderTexture.d.ts.map +1 -1
  600. package/lib/esm/RenderTexture.js +13 -16
  601. package/lib/esm/RenderTexture.js.map +1 -1
  602. package/lib/esm/RgbColor.js +3 -0
  603. package/lib/esm/RgbColor.js.map +1 -1
  604. package/lib/esm/RpcInterface.d.ts.map +1 -1
  605. package/lib/esm/RpcInterface.js +8 -2
  606. package/lib/esm/RpcInterface.js.map +1 -1
  607. package/lib/esm/RpcManager.js.map +1 -1
  608. package/lib/esm/SessionProps.js.map +1 -1
  609. package/lib/esm/SkyBox.js +17 -4
  610. package/lib/esm/SkyBox.js.map +1 -1
  611. package/lib/esm/SolarCalculate.js.map +1 -1
  612. package/lib/esm/SolarShadows.js +5 -1
  613. package/lib/esm/SolarShadows.js.map +1 -1
  614. package/lib/esm/SpatialClassification.js +19 -1
  615. package/lib/esm/SpatialClassification.js.map +1 -1
  616. package/lib/esm/SubCategoryAppearance.js +35 -1
  617. package/lib/esm/SubCategoryAppearance.js.map +1 -1
  618. package/lib/esm/SubCategoryOverride.js +16 -2
  619. package/lib/esm/SubCategoryOverride.js.map +1 -1
  620. package/lib/esm/TerrainSettings.d.ts +0 -19
  621. package/lib/esm/TerrainSettings.d.ts.map +1 -1
  622. package/lib/esm/TerrainSettings.js +20 -13
  623. package/lib/esm/TerrainSettings.js.map +1 -1
  624. package/lib/esm/TextureMapping.d.ts +17 -14
  625. package/lib/esm/TextureMapping.d.ts.map +1 -1
  626. package/lib/esm/TextureMapping.js +47 -19
  627. package/lib/esm/TextureMapping.js.map +1 -1
  628. package/lib/esm/TextureProps.js.map +1 -1
  629. package/lib/esm/ThematicDisplay.js +53 -2
  630. package/lib/esm/ThematicDisplay.js.map +1 -1
  631. package/lib/esm/Thumbnail.d.ts +1 -1
  632. package/lib/esm/Thumbnail.js.map +1 -1
  633. package/lib/esm/TileProps.js.map +1 -1
  634. package/lib/esm/Tween.js +28 -19
  635. package/lib/esm/Tween.js.map +1 -1
  636. package/lib/esm/TxnAction.js.map +1 -1
  637. package/lib/esm/ViewDetails.js +10 -6
  638. package/lib/esm/ViewDetails.js.map +1 -1
  639. package/lib/esm/ViewFlags.d.ts +1 -3
  640. package/lib/esm/ViewFlags.d.ts.map +1 -1
  641. package/lib/esm/ViewFlags.js +86 -5
  642. package/lib/esm/ViewFlags.js.map +1 -1
  643. package/lib/esm/ViewProps.d.ts +2 -6
  644. package/lib/esm/ViewProps.d.ts.map +1 -1
  645. package/lib/esm/ViewProps.js.map +1 -1
  646. package/lib/esm/WhiteOnWhiteReversalSettings.js +7 -2
  647. package/lib/esm/WhiteOnWhiteReversalSettings.js.map +1 -1
  648. package/lib/esm/annotation/TextAnnotation.d.ts +3 -2
  649. package/lib/esm/annotation/TextAnnotation.d.ts.map +1 -1
  650. package/lib/esm/annotation/TextAnnotation.js +13 -2
  651. package/lib/esm/annotation/TextAnnotation.js.map +1 -1
  652. package/lib/esm/annotation/TextBlock.d.ts +17 -0
  653. package/lib/esm/annotation/TextBlock.d.ts.map +1 -1
  654. package/lib/esm/annotation/TextBlock.js +41 -6
  655. package/lib/esm/annotation/TextBlock.js.map +1 -1
  656. package/lib/esm/annotation/TextBlockGeometryProps.js.map +1 -1
  657. package/lib/esm/annotation/TextBlockLayoutResult.js.map +1 -1
  658. package/lib/esm/annotation/TextStyle.js +65 -19
  659. package/lib/esm/annotation/TextStyle.js.map +1 -1
  660. package/lib/esm/core-common.d.ts +5 -4
  661. package/lib/esm/core-common.d.ts.map +1 -1
  662. package/lib/esm/core-common.js +5 -4
  663. package/lib/esm/core-common.js.map +1 -1
  664. package/lib/esm/domains/FunctionalElementProps.js.map +1 -1
  665. package/lib/esm/domains/GenericElementProps.js.map +1 -1
  666. package/lib/esm/geometry/AdditionalTransform.js +12 -0
  667. package/lib/esm/geometry/AdditionalTransform.js.map +1 -1
  668. package/lib/esm/geometry/AreaPattern.js +17 -0
  669. package/lib/esm/geometry/AreaPattern.js.map +1 -1
  670. package/lib/esm/geometry/BoundingSphere.js +4 -0
  671. package/lib/esm/geometry/BoundingSphere.js.map +1 -1
  672. package/lib/esm/geometry/Cartographic.js +23 -20
  673. package/lib/esm/geometry/Cartographic.js.map +1 -1
  674. package/lib/esm/geometry/CoordinateReferenceSystem.js +62 -0
  675. package/lib/esm/geometry/CoordinateReferenceSystem.js.map +1 -1
  676. package/lib/esm/geometry/ElementGeometry.js +26 -8
  677. package/lib/esm/geometry/ElementGeometry.js.map +1 -1
  678. package/lib/esm/geometry/ElementGeometryFB.js +54 -108
  679. package/lib/esm/geometry/ElementGeometryFB.js.map +1 -1
  680. package/lib/esm/geometry/FrustumPlanes.js +1 -0
  681. package/lib/esm/geometry/FrustumPlanes.js.map +1 -1
  682. package/lib/esm/geometry/GeodeticDatum.js +100 -0
  683. package/lib/esm/geometry/GeodeticDatum.js.map +1 -1
  684. package/lib/esm/geometry/GeodeticEllipsoid.js +16 -0
  685. package/lib/esm/geometry/GeodeticEllipsoid.js.map +1 -1
  686. package/lib/esm/geometry/GeometryStream.js +19 -6
  687. package/lib/esm/geometry/GeometryStream.js.map +1 -1
  688. package/lib/esm/geometry/ImageGraphic.js +10 -0
  689. package/lib/esm/geometry/ImageGraphic.js.map +1 -1
  690. package/lib/esm/geometry/LineStyle.js +14 -0
  691. package/lib/esm/geometry/LineStyle.js.map +1 -1
  692. package/lib/esm/geometry/Placement.js +6 -0
  693. package/lib/esm/geometry/Placement.js.map +1 -1
  694. package/lib/esm/geometry/Projection.js +75 -0
  695. package/lib/esm/geometry/Projection.js.map +1 -1
  696. package/lib/esm/geometry/TextString.js +18 -0
  697. package/lib/esm/geometry/TextString.js.map +1 -1
  698. package/lib/esm/{BackendTypes.d.ts → internal/BackendTypes.d.ts} +1 -0
  699. package/lib/esm/internal/BackendTypes.d.ts.map +1 -0
  700. package/lib/esm/internal/BackendTypes.js.map +1 -0
  701. package/lib/esm/internal/PackedFeatureTable.d.ts +111 -0
  702. package/lib/esm/internal/PackedFeatureTable.d.ts.map +1 -0
  703. package/lib/esm/internal/PackedFeatureTable.js +352 -0
  704. package/lib/esm/internal/PackedFeatureTable.js.map +1 -0
  705. package/lib/esm/internal/RenderMaterialParams.d.ts +47 -0
  706. package/lib/esm/internal/RenderMaterialParams.d.ts.map +1 -0
  707. package/lib/esm/internal/RenderMaterialParams.js +64 -0
  708. package/lib/esm/internal/RenderMaterialParams.js.map +1 -0
  709. package/lib/esm/internal/RenderMesh.d.ts +52 -0
  710. package/lib/esm/internal/RenderMesh.d.ts.map +1 -0
  711. package/lib/esm/{Render.js → internal/RenderMesh.js} +11 -29
  712. package/lib/esm/internal/RenderMesh.js.map +1 -0
  713. package/lib/esm/internal/RenderTextureParams.d.ts +25 -0
  714. package/lib/esm/internal/RenderTextureParams.d.ts.map +1 -0
  715. package/lib/esm/internal/RenderTextureParams.js +33 -0
  716. package/lib/esm/internal/RenderTextureParams.js.map +1 -0
  717. package/lib/esm/internal/Snapping.js.map +1 -1
  718. package/lib/esm/internal/cross-package.d.ts +5 -0
  719. package/lib/esm/internal/cross-package.d.ts.map +1 -1
  720. package/lib/esm/internal/cross-package.js +4 -1
  721. package/lib/esm/internal/cross-package.js.map +1 -1
  722. package/lib/esm/ipc/IpcSession.js +1 -0
  723. package/lib/esm/ipc/IpcSession.js.map +1 -1
  724. package/lib/esm/ipc/IpcSocket.d.ts +2 -20
  725. package/lib/esm/ipc/IpcSocket.d.ts.map +1 -1
  726. package/lib/esm/ipc/IpcSocket.js.map +1 -1
  727. package/lib/esm/ipc/IpcWebSocket.js +7 -6
  728. package/lib/esm/ipc/IpcWebSocket.js.map +1 -1
  729. package/lib/esm/ipc/IpcWebSocketTransport.js +8 -7
  730. package/lib/esm/ipc/IpcWebSocketTransport.js.map +1 -1
  731. package/lib/esm/rpc/DevToolsRpcInterface.js +6 -6
  732. package/lib/esm/rpc/DevToolsRpcInterface.js.map +1 -1
  733. package/lib/esm/rpc/IModelReadRpcInterface.js +8 -11
  734. package/lib/esm/rpc/IModelReadRpcInterface.js.map +1 -1
  735. package/lib/esm/rpc/IModelTileRpcInterface.js +4 -4
  736. package/lib/esm/rpc/IModelTileRpcInterface.js.map +1 -1
  737. package/lib/esm/rpc/SnapshotIModelRpcInterface.js +4 -4
  738. package/lib/esm/rpc/SnapshotIModelRpcInterface.js.map +1 -1
  739. package/lib/esm/rpc/TestRpcManager.js +1 -4
  740. package/lib/esm/rpc/TestRpcManager.js.map +1 -1
  741. package/lib/esm/rpc/core/RpcConfiguration.js +51 -64
  742. package/lib/esm/rpc/core/RpcConfiguration.js.map +1 -1
  743. package/lib/esm/rpc/core/RpcConstants.js.map +1 -1
  744. package/lib/esm/rpc/core/RpcControl.js +29 -38
  745. package/lib/esm/rpc/core/RpcControl.js.map +1 -1
  746. package/lib/esm/rpc/core/RpcInvocation.js +19 -13
  747. package/lib/esm/rpc/core/RpcInvocation.js.map +1 -1
  748. package/lib/esm/rpc/core/RpcMarshaling.d.ts +1 -4
  749. package/lib/esm/rpc/core/RpcMarshaling.d.ts.map +1 -1
  750. package/lib/esm/rpc/core/RpcMarshaling.js +2 -1
  751. package/lib/esm/rpc/core/RpcMarshaling.js.map +1 -1
  752. package/lib/esm/rpc/core/RpcOperation.js +29 -31
  753. package/lib/esm/rpc/core/RpcOperation.js.map +1 -1
  754. package/lib/esm/rpc/core/RpcPendingQueue.js +17 -16
  755. package/lib/esm/rpc/core/RpcPendingQueue.js.map +1 -1
  756. package/lib/esm/rpc/core/RpcProtocol.js +32 -30
  757. package/lib/esm/rpc/core/RpcProtocol.js.map +1 -1
  758. package/lib/esm/rpc/core/RpcPush.js +15 -8
  759. package/lib/esm/rpc/core/RpcPush.js.map +1 -1
  760. package/lib/esm/rpc/core/RpcRegistry.d.ts.map +1 -1
  761. package/lib/esm/rpc/core/RpcRegistry.js +10 -9
  762. package/lib/esm/rpc/core/RpcRegistry.js.map +1 -1
  763. package/lib/esm/rpc/core/RpcRequest.d.ts +2 -2
  764. package/lib/esm/rpc/core/RpcRequest.d.ts.map +1 -1
  765. package/lib/esm/rpc/core/RpcRequest.js +51 -29
  766. package/lib/esm/rpc/core/RpcRequest.js.map +1 -1
  767. package/lib/esm/rpc/core/RpcRequestContext.js.map +1 -1
  768. package/lib/esm/rpc/core/RpcRoutingToken.js +4 -2
  769. package/lib/esm/rpc/core/RpcRoutingToken.js.map +1 -1
  770. package/lib/esm/rpc/core/RpcSessionInvocation.js +5 -10
  771. package/lib/esm/rpc/core/RpcSessionInvocation.js.map +1 -1
  772. package/lib/esm/rpc/web/BentleyCloudRpcManager.js +11 -17
  773. package/lib/esm/rpc/web/BentleyCloudRpcManager.js.map +1 -1
  774. package/lib/esm/rpc/web/BentleyCloudRpcProtocol.js +16 -19
  775. package/lib/esm/rpc/web/BentleyCloudRpcProtocol.js.map +1 -1
  776. package/lib/esm/rpc/web/OpenAPI.js +2 -0
  777. package/lib/esm/rpc/web/OpenAPI.js.map +1 -1
  778. package/lib/esm/rpc/web/RpcMultipart.d.ts +1 -1
  779. package/lib/esm/rpc/web/RpcMultipart.d.ts.map +1 -1
  780. package/lib/esm/rpc/web/RpcMultipart.js +14 -13
  781. package/lib/esm/rpc/web/RpcMultipart.js.map +1 -1
  782. package/lib/esm/rpc/web/WebAppRpcLogging.d.ts +3 -0
  783. package/lib/esm/rpc/web/WebAppRpcLogging.d.ts.map +1 -1
  784. package/lib/esm/rpc/web/WebAppRpcLogging.js +1 -6
  785. package/lib/esm/rpc/web/WebAppRpcLogging.js.map +1 -1
  786. package/lib/esm/rpc/web/WebAppRpcProtocol.d.ts +1 -1
  787. package/lib/esm/rpc/web/WebAppRpcProtocol.d.ts.map +1 -1
  788. package/lib/esm/rpc/web/WebAppRpcProtocol.js +6 -6
  789. package/lib/esm/rpc/web/WebAppRpcProtocol.js.map +1 -1
  790. package/lib/esm/rpc/web/WebAppRpcRequest.d.ts.map +1 -1
  791. package/lib/esm/rpc/web/WebAppRpcRequest.js +27 -27
  792. package/lib/esm/rpc/web/WebAppRpcRequest.js.map +1 -1
  793. package/lib/esm/rpc/web/multipart/RpcMultipartParser.d.ts +0 -2
  794. package/lib/esm/rpc/web/multipart/RpcMultipartParser.d.ts.map +1 -1
  795. package/lib/esm/rpc/web/multipart/RpcMultipartParser.js +14 -8
  796. package/lib/esm/rpc/web/multipart/RpcMultipartParser.js.map +1 -1
  797. package/lib/esm/tile/B3dmTileIO.js +7 -0
  798. package/lib/esm/tile/B3dmTileIO.js.map +1 -1
  799. package/lib/esm/tile/CompositeTileIO.js +3 -0
  800. package/lib/esm/tile/CompositeTileIO.js.map +1 -1
  801. package/lib/esm/tile/ElementGraphics.js.map +1 -1
  802. package/lib/esm/tile/GltfTileIO.js +4 -3
  803. package/lib/esm/tile/GltfTileIO.js.map +1 -1
  804. package/lib/esm/tile/I3dmTileIO.js +8 -0
  805. package/lib/esm/tile/I3dmTileIO.js.map +1 -1
  806. package/lib/esm/tile/IModelTileIO.d.ts +2 -2
  807. package/lib/esm/tile/IModelTileIO.js +26 -3
  808. package/lib/esm/tile/IModelTileIO.js.map +1 -1
  809. package/lib/esm/tile/PntsTileIO.js +5 -0
  810. package/lib/esm/tile/PntsTileIO.js.map +1 -1
  811. package/lib/esm/tile/TileIO.js +2 -0
  812. package/lib/esm/tile/TileIO.js.map +1 -1
  813. package/lib/esm/tile/TileMetadata.js +9 -1
  814. package/lib/esm/tile/TileMetadata.js.map +1 -1
  815. package/lib/esm/tile/Tileset3dSchema.js.map +1 -1
  816. package/package.json +14 -14
  817. package/lib/cjs/BackendTypes.d.ts.map +0 -1
  818. package/lib/cjs/BackendTypes.js.map +0 -1
  819. package/lib/cjs/ITwinError.d.ts +0 -72
  820. package/lib/cjs/ITwinError.d.ts.map +0 -1
  821. package/lib/cjs/ITwinError.js +0 -55
  822. package/lib/cjs/ITwinError.js.map +0 -1
  823. package/lib/cjs/Render.d.ts +0 -85
  824. package/lib/cjs/Render.d.ts.map +0 -1
  825. package/lib/cjs/Render.js.map +0 -1
  826. package/lib/esm/BackendTypes.d.ts.map +0 -1
  827. package/lib/esm/BackendTypes.js.map +0 -1
  828. package/lib/esm/ITwinError.d.ts +0 -72
  829. package/lib/esm/ITwinError.d.ts.map +0 -1
  830. package/lib/esm/ITwinError.js +0 -52
  831. package/lib/esm/ITwinError.js.map +0 -1
  832. package/lib/esm/Render.d.ts +0 -85
  833. package/lib/esm/Render.d.ts.map +0 -1
  834. package/lib/esm/Render.js.map +0 -1
  835. /package/lib/cjs/{BackendTypes.js → internal/BackendTypes.js} +0 -0
  836. /package/lib/esm/{BackendTypes.js → internal/BackendTypes.js} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"EmphasizeElementsProps.js","sourceRoot":"","sources":["../../src/EmphasizeElementsProps.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAMH;;;;;GAKG;AACH,IAAY,mBAOX;AAPD,WAAY,mBAAmB;IAC7B,2BAA2B;IAC3B,uEAAS,CAAA;IACT,2BAA2B;IAC3B,uEAAS,CAAA;IACT,qCAAqC;IACrC,+EAAa,CAAA;AACf,CAAC,EAPW,mBAAmB,mCAAnB,mBAAmB,QAO9B","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 { Id64Array } from \"@itwin/core-bentley\";\r\nimport { ColorDefProps } from \"./ColorDef\";\r\nimport { FeatureAppearanceProps } from \"./FeatureSymbology\";\r\n\r\n/** Options for overriding element appearance.\r\n * @see [EmphasizeElements]($frontend)\r\n * @see [[AppearanceOverrideProps]]\r\n * @public\r\n * @extensions\r\n */\r\nexport enum FeatureOverrideType {\r\n /** Override color only. */\r\n ColorOnly,\r\n /** Override alpha only. */\r\n AlphaOnly,\r\n /** Override both color and alpha. */\r\n ColorAndAlpha,\r\n}\r\n\r\n/** JSON representation of an appearance override in an [[EmphasizeElementsProps]].\r\n * @see [EmphasizeElements]($frontend).\r\n * @public\r\n * @extensions\r\n */\r\nexport interface AppearanceOverrideProps {\r\n /** Whether to override color, transparency, or both. */\r\n overrideType?: FeatureOverrideType;\r\n /** The 0xTTBBGGRR format color/transparency value. */\r\n color?: ColorDefProps;\r\n /** The element IDs to display with the specified override. */\r\n ids?: Id64Array;\r\n}\r\n\r\n/** JSON representation of an [EmphasizeElements]($frontend).\r\n * @public\r\n * @extensions\r\n */\r\nexport interface EmphasizeElementsProps {\r\n /** See [EmphasizeElements.getNeverDrawnElements]($frontend) */\r\n neverDrawn?: Id64Array;\r\n /** See [EmphasizeElements.getAlwaysDrawnElements]($frontend) */\r\n alwaysDrawn?: Id64Array;\r\n /** See [EmphasizeElements.getIsolatedElements]($frontend) */\r\n isAlwaysDrawnExclusive?: boolean;\r\n /** See [EmphasizeElements.getEmphasizedIsolatedElements]($frontend) */\r\n alwaysDrawnExclusiveEmphasized?: Id64Array;\r\n /** See [EmphasizeElements.defaultAppearance]($frontend) */\r\n defaultAppearance?: FeatureAppearanceProps;\r\n /** See [EmphasizeElements.getOverriddenElementsByKey]($frontend) */\r\n appearanceOverride?: AppearanceOverrideProps[];\r\n /** See [EmphasizeElements.wantEmphasis]($frontend) */\r\n wantEmphasis?: boolean;\r\n /** See [EmphasizeElements.unanimatedAppearance]($frontend) */\r\n unanimatedAppearance?: FeatureAppearanceProps;\r\n}\r\n"]}
1
+ {"version":3,"file":"EmphasizeElementsProps.js","sourceRoot":"","sources":["../../src/EmphasizeElementsProps.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAMH;;;;;GAKG;AACH,IAAY,mBAOX;AAPD,WAAY,mBAAmB;IAC7B,2BAA2B;IAC3B,uEAAS,CAAA;IACT,2BAA2B;IAC3B,uEAAS,CAAA;IACT,qCAAqC;IACrC,+EAAa,CAAA;AACf,CAAC,EAPW,mBAAmB,mCAAnB,mBAAmB,QAO9B","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 { Id64Array } from \"@itwin/core-bentley\";\nimport { ColorDefProps } from \"./ColorDef\";\nimport { FeatureAppearanceProps } from \"./FeatureSymbology\";\n\n/** Options for overriding element appearance.\n * @see [EmphasizeElements]($frontend)\n * @see [[AppearanceOverrideProps]]\n * @public\n * @extensions\n */\nexport enum FeatureOverrideType {\n /** Override color only. */\n ColorOnly,\n /** Override alpha only. */\n AlphaOnly,\n /** Override both color and alpha. */\n ColorAndAlpha,\n}\n\n/** JSON representation of an appearance override in an [[EmphasizeElementsProps]].\n * @see [EmphasizeElements]($frontend).\n * @public\n * @extensions\n */\nexport interface AppearanceOverrideProps {\n /** Whether to override color, transparency, or both. */\n overrideType?: FeatureOverrideType;\n /** The 0xTTBBGGRR format color/transparency value. */\n color?: ColorDefProps;\n /** The element IDs to display with the specified override. */\n ids?: Id64Array;\n}\n\n/** JSON representation of an [EmphasizeElements]($frontend).\n * @public\n * @extensions\n */\nexport interface EmphasizeElementsProps {\n /** See [EmphasizeElements.getNeverDrawnElements]($frontend) */\n neverDrawn?: Id64Array;\n /** See [EmphasizeElements.getAlwaysDrawnElements]($frontend) */\n alwaysDrawn?: Id64Array;\n /** See [EmphasizeElements.getIsolatedElements]($frontend) */\n isAlwaysDrawnExclusive?: boolean;\n /** See [EmphasizeElements.getEmphasizedIsolatedElements]($frontend) */\n alwaysDrawnExclusiveEmphasized?: Id64Array;\n /** See [EmphasizeElements.defaultAppearance]($frontend) */\n defaultAppearance?: FeatureAppearanceProps;\n /** See [EmphasizeElements.getOverriddenElementsByKey]($frontend) */\n appearanceOverride?: AppearanceOverrideProps[];\n /** See [EmphasizeElements.wantEmphasis]($frontend) */\n wantEmphasis?: boolean;\n /** See [EmphasizeElements.unanimatedAppearance]($frontend) */\n unanimatedAppearance?: FeatureAppearanceProps;\n}\n"]}
@@ -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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"}
@@ -30,8 +30,29 @@ var PrimitiveTypeCode;
30
30
  })(PrimitiveTypeCode || (exports.PrimitiveTypeCode = PrimitiveTypeCode = {}));
31
31
  /** Metadata for a property.
32
32
  * @beta
33
+ * @deprecated in 5.0. Use the `Property` class from @itwin/ecschema-metadata` instead.
33
34
  */
34
35
  class PropertyMetaData {
36
+ primitiveType;
37
+ structName;
38
+ extendedType;
39
+ description;
40
+ displayLabel;
41
+ minimumValue;
42
+ maximumValue;
43
+ minimumLength;
44
+ maximumLength;
45
+ readOnly;
46
+ kindOfQuantity;
47
+ isCustomHandled;
48
+ isCustomHandledOrphan;
49
+ minOccurs;
50
+ maxOccurs;
51
+ direction;
52
+ relationshipClass;
53
+ // eslint-disable-next-line @typescript-eslint/no-deprecated
54
+ customAttributes;
55
+ // eslint-disable-next-line @typescript-eslint/no-deprecated
35
56
  constructor(jsonObj) {
36
57
  this.primitiveType = jsonObj.primitiveType;
37
58
  if (jsonObj.structName)
@@ -95,8 +116,25 @@ class PropertyMetaData {
95
116
  exports.PropertyMetaData = PropertyMetaData;
96
117
  /** Metadata for an Entity.
97
118
  * @beta
119
+ * @deprecated in 5.0. Use `EntityClass` class from `@itwin/ecschema-metadata` instead.
98
120
  */
99
121
  class EntityMetaData {
122
+ /** The Id of the class in the [[IModelDb]] from which the metadata was obtained. */
123
+ classId;
124
+ /** The Entity name */
125
+ ecclass;
126
+ description;
127
+ modifier;
128
+ displayLabel;
129
+ /** 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. */
130
+ baseClasses;
131
+ /** The Custom Attributes for this class */
132
+ // eslint-disable-next-line @typescript-eslint/no-deprecated
133
+ customAttributes;
134
+ /** An object whose properties correspond by name to the properties of this class. */
135
+ // eslint-disable-next-line @typescript-eslint/no-deprecated
136
+ properties;
137
+ // eslint-disable-next-line @typescript-eslint/no-deprecated
100
138
  constructor(jsonObj) {
101
139
  this.classId = jsonObj.classId;
102
140
  this.ecclass = jsonObj.ecclass;
@@ -107,6 +145,7 @@ class EntityMetaData {
107
145
  this.customAttributes = jsonObj.customAttributes;
108
146
  this.properties = {};
109
147
  for (const propName in jsonObj.properties) { // eslint-disable-line guard-for-in
148
+ // eslint-disable-next-line @typescript-eslint/no-deprecated
110
149
  this.properties[propName] = new PropertyMetaData(jsonObj.properties[propName]);
111
150
  }
112
151
  }
@@ -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,IAAY,mBAKX;AALD,WAAY,mBAAmB;IAC7B,kCAAW,CAAA;IACX,oCAAa,CAAA;IACb,0CAAmB,CAAA;IACnB,yCAAkB,CAAA;AACpB,CAAC,EALW,mBAAmB,mCAAnB,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,mCAAnB,mBAAmB,QAcnC;AAUD;;GAEG;AACH,MAAa,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;AALD,gDAKC","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,IAAY,mBAKX;AALD,WAAY,mBAAmB;IAC7B,kCAAW,CAAA;IACX,oCAAa,CAAA;IACb,0CAAmB,CAAA;IACnB,yCAAkB,CAAA;AACpB,CAAC,EALW,mBAAmB,mCAAnB,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,mCAAnB,mBAAmB,QAcnC;AAUD;;GAEG;AACH,MAAa,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;AALD,gDAKC","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"]}
@@ -17,6 +17,29 @@ const SkyBox_1 = require("./SkyBox");
17
17
  * @public
18
18
  */
19
19
  class Environment {
20
+ /** If true, the sky box will be displayed.
21
+ * Default: false.
22
+ * @see [[withDisplay]] or [[DisplayStyle3dSettings.toggleSkyBox]] to change this.
23
+ */
24
+ displaySky;
25
+ /** If true, the ground plane will be displayed.
26
+ * Default: false.
27
+ * @see [[withDisplay]] or [[DisplayStyle3dSettings.toggleGroundPlane]] to change this.
28
+ */
29
+ displayGround;
30
+ /**
31
+ * @beta
32
+ * If true, the atmosphere will be displayed. Enabling this will override any color information provided to the sky box.
33
+ * Default: false.
34
+ * @see [[withDisplay]] or [[DisplayStyle3dSettings.toggleAtmosphere]] to change this.
35
+ */
36
+ displayAtmosphere;
37
+ /** Describes how the sky box should be drawn. */
38
+ sky;
39
+ /** Describes how the ground plane should be drawn. */
40
+ ground;
41
+ /** @beta Describes how the atmosphere should be drawn */
42
+ atmosphere;
20
43
  constructor(props) {
21
44
  this.displaySky = props?.displaySky ?? false;
22
45
  this.displayGround = props?.displayGround ?? false;
@@ -25,6 +48,8 @@ class Environment {
25
48
  this.ground = props?.ground ?? GroundPlane_1.GroundPlane.defaults;
26
49
  this.atmosphere = props?.atmosphere ?? Atmosphere_1.Atmosphere.Settings.defaults;
27
50
  }
51
+ /** Default settings without a ground plane, sky box, or atmosphere displayed. */
52
+ static defaults = new Environment();
28
53
  /** Create a new Environment. Any properties not specified by `props` will be initialized to their default values. */
29
54
  static create(props) {
30
55
  return props ? new this(props) : this.defaults;
@@ -74,6 +99,4 @@ class Environment {
74
99
  }
75
100
  }
76
101
  exports.Environment = Environment;
77
- /** Default settings without a ground plane, sky box, or atmosphere displayed. */
78
- Environment.defaults = new Environment();
79
102
  //# 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"]}
@@ -16,6 +16,14 @@ const ColorDef_1 = require("./ColorDef");
16
16
  * @public
17
17
  */
18
18
  class NonUniformColor {
19
+ /** An array of 32-bit [[ColorDef]] values in `tbgr` format, indexed by [[indices]]. */
20
+ colors;
21
+ /** For each vertex, an index into [[colors]] indicating the color of that vertex. */
22
+ indices;
23
+ /** If `true`, indicates none of the [[colors]] have a transparency greater than zero; otherwise, all of
24
+ * the colors have a transparency greater than zero.
25
+ */
26
+ isOpaque;
19
27
  /** Constructor.
20
28
  * @param colors See [[colors]].
21
29
  * @param indices See [[indices]]
@@ -33,6 +41,7 @@ exports.NonUniformColor = NonUniformColor;
33
41
  * @public
34
42
  */
35
43
  class ColorIndex {
44
+ _color;
36
45
  /** Whether the color(s) in this index have transparency. */
37
46
  get hasAlpha() { return !this._color.isOpaque; }
38
47
  /** Whether this index specifies a single uniform color for the entire mesh or polyline. */
@@ -83,12 +92,12 @@ var FeatureIndexType;
83
92
  * @public
84
93
  */
85
94
  class FeatureIndex {
86
- constructor() {
87
- /** Describes the quantity (zero, one, or more than one) of features in this index. */
88
- this.type = FeatureIndexType.Empty;
89
- /** If [[type]] is [[FeatureIndexType.Uniform]], the Id of the single feature. */
90
- this.featureID = 0;
91
- }
95
+ /** Describes the quantity (zero, one, or more than one) of features in this index. */
96
+ type = FeatureIndexType.Empty;
97
+ /** If [[type]] is [[FeatureIndexType.Uniform]], the Id of the single feature. */
98
+ featureID = 0;
99
+ /** If [[type]] is [[FeatureIndexType.NonUniform]], the per-vertex feature Ids, indexed by the mesh or polyline's vertex indices. */
100
+ featureIDs;
92
101
  /** True if [[type]] is [[FeatureIndexType.Uniform]]. */
93
102
  get isUniform() { return FeatureIndexType.Uniform === this.type; }
94
103
  /** 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"]}