@itwin/core-common 3.5.0-dev.18 → 3.5.0-dev.20

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 (946) hide show
  1. package/CHANGELOG.md +8 -1
  2. package/lib/cjs/AmbientOcclusion.d.ts +49 -49
  3. package/lib/cjs/AmbientOcclusion.js +55 -55
  4. package/lib/cjs/AmbientOcclusion.js.map +1 -1
  5. package/lib/cjs/AnalysisStyle.d.ts +134 -134
  6. package/lib/cjs/AnalysisStyle.js +165 -165
  7. package/lib/cjs/AnalysisStyle.js.map +1 -1
  8. package/lib/cjs/AuthorizationClient.d.ts +11 -11
  9. package/lib/cjs/AuthorizationClient.js +9 -9
  10. package/lib/cjs/AuthorizationClient.js.map +1 -1
  11. package/lib/cjs/BackgroundMapProvider.d.ts +51 -51
  12. package/lib/cjs/BackgroundMapProvider.js +68 -68
  13. package/lib/cjs/BackgroundMapProvider.js.map +1 -1
  14. package/lib/cjs/BackgroundMapSettings.d.ts +136 -136
  15. package/lib/cjs/BackgroundMapSettings.js +156 -156
  16. package/lib/cjs/BackgroundMapSettings.js.map +1 -1
  17. package/lib/cjs/Base64EncodedString.d.ts +30 -30
  18. package/lib/cjs/Base64EncodedString.js +56 -56
  19. package/lib/cjs/Base64EncodedString.js.map +1 -1
  20. package/lib/cjs/BlobReader.d.ts +31 -31
  21. package/lib/cjs/BlobReader.js +84 -84
  22. package/lib/cjs/BlobReader.js.map +1 -1
  23. package/lib/cjs/BriefcaseTypes.d.ts +189 -189
  24. package/lib/cjs/BriefcaseTypes.js +95 -95
  25. package/lib/cjs/BriefcaseTypes.js.map +1 -1
  26. package/lib/cjs/Camera.d.ts +42 -42
  27. package/lib/cjs/Camera.js +62 -62
  28. package/lib/cjs/Camera.js.map +1 -1
  29. package/lib/cjs/ChangedElements.d.ts +83 -83
  30. package/lib/cjs/ChangedElements.js +21 -21
  31. package/lib/cjs/ChangedElements.js.map +1 -1
  32. package/lib/cjs/ChangedEntities.d.ts +45 -45
  33. package/lib/cjs/ChangedEntities.js +9 -9
  34. package/lib/cjs/ChangedEntities.js.map +1 -1
  35. package/lib/cjs/ChangesetProps.d.ts +98 -98
  36. package/lib/cjs/ChangesetProps.js +22 -22
  37. package/lib/cjs/ChangesetProps.js.map +1 -1
  38. package/lib/cjs/ClipStyle.d.ts +89 -89
  39. package/lib/cjs/ClipStyle.js +123 -123
  40. package/lib/cjs/ClipStyle.js.map +1 -1
  41. package/lib/cjs/CloudStorage.d.ts +62 -62
  42. package/lib/cjs/CloudStorage.js +113 -113
  43. package/lib/cjs/CloudStorage.js.map +1 -1
  44. package/lib/cjs/CloudStorageTileCache.d.ts +27 -27
  45. package/lib/cjs/CloudStorageTileCache.js +66 -66
  46. package/lib/cjs/CloudStorageTileCache.js.map +1 -1
  47. package/lib/cjs/Code.d.ts +256 -256
  48. package/lib/cjs/Code.js +281 -281
  49. package/lib/cjs/Code.js.map +1 -1
  50. package/lib/cjs/ColorByName.d.ts +161 -161
  51. package/lib/cjs/ColorByName.js +169 -169
  52. package/lib/cjs/ColorByName.js.map +1 -1
  53. package/lib/cjs/ColorDef.d.ts +208 -208
  54. package/lib/cjs/ColorDef.js +571 -571
  55. package/lib/cjs/ColorDef.js.map +1 -1
  56. package/lib/cjs/CommonLoggerCategory.d.ts +18 -18
  57. package/lib/cjs/CommonLoggerCategory.js +26 -26
  58. package/lib/cjs/CommonLoggerCategory.js.map +1 -1
  59. package/lib/cjs/ConcurrentQuery.d.ts +241 -241
  60. package/lib/cjs/ConcurrentQuery.js +380 -380
  61. package/lib/cjs/ConcurrentQuery.js.map +1 -1
  62. package/lib/cjs/ContextRealityModel.d.ts +276 -276
  63. package/lib/cjs/ContextRealityModel.js +358 -358
  64. package/lib/cjs/ContextRealityModel.js.map +1 -1
  65. package/lib/cjs/DisplayStyleSettings.d.ts +584 -584
  66. package/lib/cjs/DisplayStyleSettings.js +981 -981
  67. package/lib/cjs/DisplayStyleSettings.js.map +1 -1
  68. package/lib/cjs/ECSchemaProps.d.ts +39 -39
  69. package/lib/cjs/ECSchemaProps.js +9 -9
  70. package/lib/cjs/ECSchemaProps.js.map +1 -1
  71. package/lib/cjs/ECSqlReader.d.ts +70 -70
  72. package/lib/cjs/ECSqlReader.js +280 -280
  73. package/lib/cjs/ECSqlReader.js.map +1 -1
  74. package/lib/cjs/ECSqlTypes.d.ts +128 -128
  75. package/lib/cjs/ECSqlTypes.js +189 -189
  76. package/lib/cjs/ECSqlTypes.js.map +1 -1
  77. package/lib/cjs/ElementProps.d.ts +476 -476
  78. package/lib/cjs/ElementProps.js +99 -99
  79. package/lib/cjs/ElementProps.js.map +1 -1
  80. package/lib/cjs/EmphasizeElementsProps.d.ts +55 -55
  81. package/lib/cjs/EmphasizeElementsProps.js +25 -25
  82. package/lib/cjs/EmphasizeElementsProps.js.map +1 -1
  83. package/lib/cjs/EntityProps.d.ts +176 -176
  84. package/lib/cjs/EntityProps.js +112 -112
  85. package/lib/cjs/EntityProps.js.map +1 -1
  86. package/lib/cjs/EntityReference.d.ts +52 -0
  87. package/lib/cjs/EntityReference.d.ts.map +1 -0
  88. package/lib/cjs/EntityReference.js +57 -0
  89. package/lib/cjs/EntityReference.js.map +1 -0
  90. package/lib/cjs/Environment.d.ts +61 -61
  91. package/lib/cjs/Environment.js +73 -73
  92. package/lib/cjs/Environment.js.map +1 -1
  93. package/lib/cjs/FeatureGates.d.ts +31 -31
  94. package/lib/cjs/FeatureGates.js +55 -55
  95. package/lib/cjs/FeatureGates.js.map +1 -1
  96. package/lib/cjs/FeatureIndex.d.ts +39 -39
  97. package/lib/cjs/FeatureIndex.js +63 -63
  98. package/lib/cjs/FeatureIndex.js.map +1 -1
  99. package/lib/cjs/FeatureSymbology.d.ts +444 -444
  100. package/lib/cjs/FeatureSymbology.js +614 -614
  101. package/lib/cjs/FeatureSymbology.js.map +1 -1
  102. package/lib/cjs/FeatureTable.d.ts +141 -141
  103. package/lib/cjs/FeatureTable.js +278 -278
  104. package/lib/cjs/FeatureTable.js.map +1 -1
  105. package/lib/cjs/Fonts.d.ts +51 -51
  106. package/lib/cjs/Fonts.js +53 -53
  107. package/lib/cjs/Fonts.js.map +1 -1
  108. package/lib/cjs/Frustum.d.ts +114 -114
  109. package/lib/cjs/Frustum.js +292 -292
  110. package/lib/cjs/Frustum.js.map +1 -1
  111. package/lib/cjs/GeoCoordinateServices.d.ts +119 -119
  112. package/lib/cjs/GeoCoordinateServices.js +80 -80
  113. package/lib/cjs/GeoCoordinateServices.js.map +1 -1
  114. package/lib/cjs/GeometryContainment.d.ts +28 -28
  115. package/lib/cjs/GeometryContainment.js +9 -9
  116. package/lib/cjs/GeometryContainment.js.map +1 -1
  117. package/lib/cjs/GeometryParams.d.ts +130 -130
  118. package/lib/cjs/GeometryParams.js +174 -174
  119. package/lib/cjs/GeometryParams.js.map +1 -1
  120. package/lib/cjs/GeometrySummary.d.ts +45 -45
  121. package/lib/cjs/GeometrySummary.js +23 -23
  122. package/lib/cjs/GeometrySummary.js.map +1 -1
  123. package/lib/cjs/Gradient.d.ts +139 -139
  124. package/lib/cjs/Gradient.js +455 -455
  125. package/lib/cjs/Gradient.js.map +1 -1
  126. package/lib/cjs/GraphicParams.d.ts +58 -58
  127. package/lib/cjs/GraphicParams.js +85 -85
  128. package/lib/cjs/GraphicParams.js.map +1 -1
  129. package/lib/cjs/GroundPlane.d.ts +52 -52
  130. package/lib/cjs/GroundPlane.js +64 -64
  131. package/lib/cjs/GroundPlane.js.map +1 -1
  132. package/lib/cjs/HSLColor.d.ts +20 -20
  133. package/lib/cjs/HSLColor.js +32 -32
  134. package/lib/cjs/HSLColor.js.map +1 -1
  135. package/lib/cjs/HSVColor.d.ts +30 -30
  136. package/lib/cjs/HSVColor.js +59 -59
  137. package/lib/cjs/HSVColor.js.map +1 -1
  138. package/lib/cjs/HiddenLine.d.ts +97 -97
  139. package/lib/cjs/HiddenLine.js +162 -162
  140. package/lib/cjs/HiddenLine.js.map +1 -1
  141. package/lib/cjs/Hilite.d.ts +50 -50
  142. package/lib/cjs/Hilite.js +64 -64
  143. package/lib/cjs/Hilite.js.map +1 -1
  144. package/lib/cjs/IModel.d.ts +359 -359
  145. package/lib/cjs/IModel.js +347 -347
  146. package/lib/cjs/IModel.js.map +1 -1
  147. package/lib/cjs/IModelError.d.ts +36 -36
  148. package/lib/cjs/IModelError.js +72 -72
  149. package/lib/cjs/IModelError.js.map +1 -1
  150. package/lib/cjs/IModelVersion.d.ts +68 -68
  151. package/lib/cjs/IModelVersion.js +79 -79
  152. package/lib/cjs/IModelVersion.js.map +1 -1
  153. package/lib/cjs/Image.d.ts +86 -86
  154. package/lib/cjs/Image.js +128 -128
  155. package/lib/cjs/Image.js.map +1 -1
  156. package/lib/cjs/IpcAppProps.d.ts +124 -124
  157. package/lib/cjs/IpcAppProps.js +18 -18
  158. package/lib/cjs/IpcAppProps.js.map +1 -1
  159. package/lib/cjs/LightSettings.d.ts +224 -224
  160. package/lib/cjs/LightSettings.js +309 -309
  161. package/lib/cjs/LightSettings.js.map +1 -1
  162. package/lib/cjs/LinePixels.d.ts +34 -34
  163. package/lib/cjs/LinePixels.js +42 -42
  164. package/lib/cjs/LinePixels.js.map +1 -1
  165. package/lib/cjs/Localization.d.ts +111 -111
  166. package/lib/cjs/Localization.js +26 -26
  167. package/lib/cjs/Localization.js.map +1 -1
  168. package/lib/cjs/MapImagerySettings.d.ts +62 -62
  169. package/lib/cjs/MapImagerySettings.js +80 -80
  170. package/lib/cjs/MapImagerySettings.js.map +1 -1
  171. package/lib/cjs/MapLayerSettings.d.ts +272 -272
  172. package/lib/cjs/MapLayerSettings.js +411 -411
  173. package/lib/cjs/MapLayerSettings.js.map +1 -1
  174. package/lib/cjs/MassProperties.d.ts +64 -64
  175. package/lib/cjs/MassProperties.js +23 -23
  176. package/lib/cjs/MassProperties.js.map +1 -1
  177. package/lib/cjs/MaterialProps.d.ts +118 -118
  178. package/lib/cjs/MaterialProps.js +23 -23
  179. package/lib/cjs/MaterialProps.js.map +1 -1
  180. package/lib/cjs/ModelClipGroup.d.ts +67 -67
  181. package/lib/cjs/ModelClipGroup.js +98 -98
  182. package/lib/cjs/ModelClipGroup.js.map +1 -1
  183. package/lib/cjs/ModelGeometryChanges.d.ts +107 -107
  184. package/lib/cjs/ModelGeometryChanges.js +83 -83
  185. package/lib/cjs/ModelGeometryChanges.js.map +1 -1
  186. package/lib/cjs/ModelProps.d.ts +67 -67
  187. package/lib/cjs/ModelProps.js +9 -9
  188. package/lib/cjs/ModelProps.js.map +1 -1
  189. package/lib/cjs/NativeAppProps.d.ts +122 -122
  190. package/lib/cjs/NativeAppProps.js +30 -30
  191. package/lib/cjs/NativeAppProps.js.map +1 -1
  192. package/lib/cjs/OctEncodedNormal.d.ts +33 -33
  193. package/lib/cjs/OctEncodedNormal.js +98 -98
  194. package/lib/cjs/OctEncodedNormal.js.map +1 -1
  195. package/lib/cjs/PlanProjectionSettings.d.ts +47 -47
  196. package/lib/cjs/PlanProjectionSettings.js +63 -63
  197. package/lib/cjs/PlanProjectionSettings.js.map +1 -1
  198. package/lib/cjs/PlanarClipMask.d.ts +177 -177
  199. package/lib/cjs/PlanarClipMask.js +136 -136
  200. package/lib/cjs/PlanarClipMask.js.map +1 -1
  201. package/lib/cjs/QPoint.d.ts +479 -479
  202. package/lib/cjs/QPoint.js +826 -826
  203. package/lib/cjs/QPoint.js.map +1 -1
  204. package/lib/cjs/RealityDataAccessProps.d.ts +41 -41
  205. package/lib/cjs/RealityDataAccessProps.js +19 -19
  206. package/lib/cjs/RealityDataAccessProps.js.map +1 -1
  207. package/lib/cjs/RealityModelDisplaySettings.d.ts +118 -118
  208. package/lib/cjs/RealityModelDisplaySettings.js +114 -114
  209. package/lib/cjs/RealityModelDisplaySettings.js.map +1 -1
  210. package/lib/cjs/Render.d.ts +89 -89
  211. package/lib/cjs/Render.js +177 -177
  212. package/lib/cjs/Render.js.map +1 -1
  213. package/lib/cjs/RenderMaterial.d.ts +58 -58
  214. package/lib/cjs/RenderMaterial.js +76 -76
  215. package/lib/cjs/RenderMaterial.js.map +1 -1
  216. package/lib/cjs/RenderSchedule.d.ts +541 -540
  217. package/lib/cjs/RenderSchedule.d.ts.map +1 -1
  218. package/lib/cjs/RenderSchedule.js +1000 -1000
  219. package/lib/cjs/RenderSchedule.js.map +1 -1
  220. package/lib/cjs/RenderTexture.d.ts +70 -70
  221. package/lib/cjs/RenderTexture.js +59 -59
  222. package/lib/cjs/RenderTexture.js.map +1 -1
  223. package/lib/cjs/RgbColor.d.ts +47 -47
  224. package/lib/cjs/RgbColor.js +77 -77
  225. package/lib/cjs/RgbColor.js.map +1 -1
  226. package/lib/cjs/RpcInterface.d.ts +33 -33
  227. package/lib/cjs/RpcInterface.js +137 -137
  228. package/lib/cjs/RpcInterface.js.map +1 -1
  229. package/lib/cjs/RpcManager.d.ts +40 -40
  230. package/lib/cjs/RpcManager.js +55 -55
  231. package/lib/cjs/RpcManager.js.map +1 -1
  232. package/lib/cjs/SessionProps.d.ts +16 -16
  233. package/lib/cjs/SessionProps.js +9 -9
  234. package/lib/cjs/SessionProps.js.map +1 -1
  235. package/lib/cjs/SkyBox.d.ts +215 -215
  236. package/lib/cjs/SkyBox.js +210 -210
  237. package/lib/cjs/SkyBox.js.map +1 -1
  238. package/lib/cjs/Snapping.d.ts +49 -49
  239. package/lib/cjs/Snapping.js +9 -9
  240. package/lib/cjs/Snapping.js.map +1 -1
  241. package/lib/cjs/SolarCalculate.d.ts +27 -27
  242. package/lib/cjs/SolarCalculate.js +211 -211
  243. package/lib/cjs/SolarCalculate.js.map +1 -1
  244. package/lib/cjs/SolarShadows.d.ts +35 -35
  245. package/lib/cjs/SolarShadows.js +62 -62
  246. package/lib/cjs/SolarShadows.js.map +1 -1
  247. package/lib/cjs/SpatialClassification.d.ts +208 -208
  248. package/lib/cjs/SpatialClassification.js +340 -340
  249. package/lib/cjs/SpatialClassification.js.map +1 -1
  250. package/lib/cjs/SubCategoryAppearance.d.ts +91 -91
  251. package/lib/cjs/SubCategoryAppearance.js +96 -96
  252. package/lib/cjs/SubCategoryAppearance.js.map +1 -1
  253. package/lib/cjs/SubCategoryOverride.d.ts +46 -46
  254. package/lib/cjs/SubCategoryOverride.js +104 -104
  255. package/lib/cjs/SubCategoryOverride.js.map +1 -1
  256. package/lib/cjs/TerrainSettings.d.ts +82 -82
  257. package/lib/cjs/TerrainSettings.js +102 -102
  258. package/lib/cjs/TerrainSettings.js.map +1 -1
  259. package/lib/cjs/TextureMapping.d.ts +101 -101
  260. package/lib/cjs/TextureMapping.js +174 -174
  261. package/lib/cjs/TextureMapping.js.map +1 -1
  262. package/lib/cjs/TextureProps.d.ts +65 -65
  263. package/lib/cjs/TextureProps.js +28 -28
  264. package/lib/cjs/TextureProps.js.map +1 -1
  265. package/lib/cjs/ThematicDisplay.d.ts +230 -230
  266. package/lib/cjs/ThematicDisplay.js +344 -344
  267. package/lib/cjs/ThematicDisplay.js.map +1 -1
  268. package/lib/cjs/Thumbnail.d.ts +26 -26
  269. package/lib/cjs/Thumbnail.js +9 -9
  270. package/lib/cjs/Thumbnail.js.map +1 -1
  271. package/lib/cjs/TileProps.d.ts +82 -82
  272. package/lib/cjs/TileProps.js +29 -29
  273. package/lib/cjs/TileProps.js.map +1 -1
  274. package/lib/cjs/Tween.d.ts +191 -191
  275. package/lib/cjs/Tween.js +570 -570
  276. package/lib/cjs/Tween.js.map +1 -1
  277. package/lib/cjs/TxnAction.d.ts +21 -21
  278. package/lib/cjs/TxnAction.js +29 -29
  279. package/lib/cjs/TxnAction.js.map +1 -1
  280. package/lib/cjs/ViewDetails.d.ts +125 -125
  281. package/lib/cjs/ViewDetails.js +158 -158
  282. package/lib/cjs/ViewDetails.js.map +1 -1
  283. package/lib/cjs/ViewFlags.d.ts +291 -291
  284. package/lib/cjs/ViewFlags.js +368 -368
  285. package/lib/cjs/ViewFlags.js.map +1 -1
  286. package/lib/cjs/ViewProps.d.ts +205 -205
  287. package/lib/cjs/ViewProps.js +9 -9
  288. package/lib/cjs/ViewProps.js.map +1 -1
  289. package/lib/cjs/WhiteOnWhiteReversalSettings.d.ts +36 -36
  290. package/lib/cjs/WhiteOnWhiteReversalSettings.js +37 -37
  291. package/lib/cjs/WhiteOnWhiteReversalSettings.js.map +1 -1
  292. package/lib/cjs/core-common.d.ts +242 -241
  293. package/lib/cjs/core-common.d.ts.map +1 -1
  294. package/lib/cjs/core-common.js +258 -257
  295. package/lib/cjs/core-common.js.map +1 -1
  296. package/lib/cjs/domains/FunctionalElementProps.d.ts +11 -11
  297. package/lib/cjs/domains/FunctionalElementProps.js +9 -9
  298. package/lib/cjs/domains/FunctionalElementProps.js.map +1 -1
  299. package/lib/cjs/domains/GenericElementProps.d.ts +18 -18
  300. package/lib/cjs/domains/GenericElementProps.js +9 -9
  301. package/lib/cjs/domains/GenericElementProps.js.map +1 -1
  302. package/lib/cjs/geometry/AdditionalTransform.d.ts +84 -84
  303. package/lib/cjs/geometry/AdditionalTransform.js +85 -85
  304. package/lib/cjs/geometry/AdditionalTransform.js.map +1 -1
  305. package/lib/cjs/geometry/AreaPattern.d.ts +82 -82
  306. package/lib/cjs/geometry/AreaPattern.js +204 -204
  307. package/lib/cjs/geometry/AreaPattern.js.map +1 -1
  308. package/lib/cjs/geometry/BoundingSphere.d.ts +14 -14
  309. package/lib/cjs/geometry/BoundingSphere.js +30 -30
  310. package/lib/cjs/geometry/BoundingSphere.js.map +1 -1
  311. package/lib/cjs/geometry/Cartographic.d.ts +137 -137
  312. package/lib/cjs/geometry/Cartographic.js +345 -345
  313. package/lib/cjs/geometry/Cartographic.js.map +1 -1
  314. package/lib/cjs/geometry/CoordinateReferenceSystem.d.ts +269 -269
  315. package/lib/cjs/geometry/CoordinateReferenceSystem.js +261 -261
  316. package/lib/cjs/geometry/CoordinateReferenceSystem.js.map +1 -1
  317. package/lib/cjs/geometry/ElementGeometry.d.ts +402 -402
  318. package/lib/cjs/geometry/ElementGeometry.js +1719 -1719
  319. package/lib/cjs/geometry/ElementGeometry.js.map +1 -1
  320. package/lib/cjs/geometry/ElementGeometryFB.d.ts +2372 -2372
  321. package/lib/cjs/geometry/ElementGeometryFB.js +3814 -3814
  322. package/lib/cjs/geometry/ElementGeometryFB.js.map +1 -1
  323. package/lib/cjs/geometry/FrustumPlanes.d.ts +32 -32
  324. package/lib/cjs/geometry/FrustumPlanes.js +132 -132
  325. package/lib/cjs/geometry/FrustumPlanes.js.map +1 -1
  326. package/lib/cjs/geometry/GeodeticDatum.d.ts +409 -409
  327. package/lib/cjs/geometry/GeodeticDatum.js +401 -401
  328. package/lib/cjs/geometry/GeodeticDatum.js.map +1 -1
  329. package/lib/cjs/geometry/GeodeticEllipsoid.d.ts +72 -72
  330. package/lib/cjs/geometry/GeodeticEllipsoid.js +72 -72
  331. package/lib/cjs/geometry/GeodeticEllipsoid.js.map +1 -1
  332. package/lib/cjs/geometry/GeometryStream.d.ts +347 -347
  333. package/lib/cjs/geometry/GeometryStream.js +469 -469
  334. package/lib/cjs/geometry/GeometryStream.js.map +1 -1
  335. package/lib/cjs/geometry/ImageGraphic.d.ts +74 -74
  336. package/lib/cjs/geometry/ImageGraphic.js +98 -98
  337. package/lib/cjs/geometry/ImageGraphic.js.map +1 -1
  338. package/lib/cjs/geometry/LineStyle.d.ts +71 -71
  339. package/lib/cjs/geometry/LineStyle.js +129 -129
  340. package/lib/cjs/geometry/LineStyle.js.map +1 -1
  341. package/lib/cjs/geometry/Placement.d.ts +95 -95
  342. package/lib/cjs/geometry/Placement.js +131 -131
  343. package/lib/cjs/geometry/Placement.js.map +1 -1
  344. package/lib/cjs/geometry/Projection.d.ts +251 -251
  345. package/lib/cjs/geometry/Projection.js +198 -198
  346. package/lib/cjs/geometry/Projection.js.map +1 -1
  347. package/lib/cjs/geometry/TextString.d.ts +55 -55
  348. package/lib/cjs/geometry/TextString.js +65 -65
  349. package/lib/cjs/geometry/TextString.js.map +1 -1
  350. package/lib/cjs/ipc/IpcSession.d.ts +23 -23
  351. package/lib/cjs/ipc/IpcSession.js +27 -27
  352. package/lib/cjs/ipc/IpcSession.js.map +1 -1
  353. package/lib/cjs/ipc/IpcSocket.d.ts +96 -96
  354. package/lib/cjs/ipc/IpcSocket.js +16 -16
  355. package/lib/cjs/ipc/IpcSocket.js.map +1 -1
  356. package/lib/cjs/ipc/IpcWebSocket.d.ts +61 -61
  357. package/lib/cjs/ipc/IpcWebSocket.js +151 -151
  358. package/lib/cjs/ipc/IpcWebSocket.js.map +1 -1
  359. package/lib/cjs/ipc/IpcWebSocketTransport.d.ts +15 -15
  360. package/lib/cjs/ipc/IpcWebSocketTransport.js +158 -158
  361. package/lib/cjs/ipc/IpcWebSocketTransport.js.map +1 -1
  362. package/lib/cjs/rpc/DevToolsRpcInterface.d.ts +32 -32
  363. package/lib/cjs/rpc/DevToolsRpcInterface.js +48 -48
  364. package/lib/cjs/rpc/DevToolsRpcInterface.js.map +1 -1
  365. package/lib/cjs/rpc/IModelReadRpcInterface.d.ts +75 -75
  366. package/lib/cjs/rpc/IModelReadRpcInterface.js +115 -115
  367. package/lib/cjs/rpc/IModelReadRpcInterface.js.map +1 -1
  368. package/lib/cjs/rpc/IModelTileRpcInterface.d.ts +61 -61
  369. package/lib/cjs/rpc/IModelTileRpcInterface.js +96 -96
  370. package/lib/cjs/rpc/IModelTileRpcInterface.js.map +1 -1
  371. package/lib/cjs/rpc/SnapshotIModelRpcInterface.d.ts +23 -23
  372. package/lib/cjs/rpc/SnapshotIModelRpcInterface.js +48 -48
  373. package/lib/cjs/rpc/SnapshotIModelRpcInterface.js.map +1 -1
  374. package/lib/cjs/rpc/TestRpcManager.d.ts +20 -20
  375. package/lib/cjs/rpc/TestRpcManager.js +39 -39
  376. package/lib/cjs/rpc/TestRpcManager.js.map +1 -1
  377. package/lib/cjs/rpc/WipRpcInterface.d.ts +29 -29
  378. package/lib/cjs/rpc/WipRpcInterface.js +40 -40
  379. package/lib/cjs/rpc/WipRpcInterface.js.map +1 -1
  380. package/lib/cjs/rpc/core/RpcConfiguration.d.ts +111 -111
  381. package/lib/cjs/rpc/core/RpcConfiguration.js +192 -192
  382. package/lib/cjs/rpc/core/RpcConfiguration.js.map +1 -1
  383. package/lib/cjs/rpc/core/RpcConstants.d.ts +85 -85
  384. package/lib/cjs/rpc/core/RpcConstants.js +103 -103
  385. package/lib/cjs/rpc/core/RpcConstants.js.map +1 -1
  386. package/lib/cjs/rpc/core/RpcControl.d.ts +52 -52
  387. package/lib/cjs/rpc/core/RpcControl.js +149 -149
  388. package/lib/cjs/rpc/core/RpcControl.js.map +1 -1
  389. package/lib/cjs/rpc/core/RpcInvocation.d.ts +89 -89
  390. package/lib/cjs/rpc/core/RpcInvocation.js +257 -257
  391. package/lib/cjs/rpc/core/RpcInvocation.js.map +1 -1
  392. package/lib/cjs/rpc/core/RpcMarshaling.d.ts +36 -36
  393. package/lib/cjs/rpc/core/RpcMarshaling.js +153 -153
  394. package/lib/cjs/rpc/core/RpcMarshaling.js.map +1 -1
  395. package/lib/cjs/rpc/core/RpcOperation.d.ts +67 -67
  396. package/lib/cjs/rpc/core/RpcOperation.js +133 -133
  397. package/lib/cjs/rpc/core/RpcOperation.js.map +1 -1
  398. package/lib/cjs/rpc/core/RpcPendingQueue.d.ts +21 -21
  399. package/lib/cjs/rpc/core/RpcPendingQueue.js +94 -94
  400. package/lib/cjs/rpc/core/RpcPendingQueue.js.map +1 -1
  401. package/lib/cjs/rpc/core/RpcProtocol.d.ts +132 -132
  402. package/lib/cjs/rpc/core/RpcProtocol.js +127 -127
  403. package/lib/cjs/rpc/core/RpcProtocol.js.map +1 -1
  404. package/lib/cjs/rpc/core/RpcPush.d.ts +68 -68
  405. package/lib/cjs/rpc/core/RpcPush.js +127 -127
  406. package/lib/cjs/rpc/core/RpcPush.js.map +1 -1
  407. package/lib/cjs/rpc/core/RpcRegistry.d.ts +48 -48
  408. package/lib/cjs/rpc/core/RpcRegistry.js +198 -198
  409. package/lib/cjs/rpc/core/RpcRegistry.js.map +1 -1
  410. package/lib/cjs/rpc/core/RpcRequest.d.ts +186 -186
  411. package/lib/cjs/rpc/core/RpcRequest.js +477 -477
  412. package/lib/cjs/rpc/core/RpcRequest.js.map +1 -1
  413. package/lib/cjs/rpc/core/RpcRequestContext.d.ts +14 -14
  414. package/lib/cjs/rpc/core/RpcRequestContext.js +2 -2
  415. package/lib/cjs/rpc/core/RpcRequestContext.js.map +1 -1
  416. package/lib/cjs/rpc/core/RpcRoutingToken.d.ts +12 -12
  417. package/lib/cjs/rpc/core/RpcRoutingToken.js +23 -23
  418. package/lib/cjs/rpc/core/RpcRoutingToken.js.map +1 -1
  419. package/lib/cjs/rpc/core/RpcSessionInvocation.d.ts +10 -10
  420. package/lib/cjs/rpc/core/RpcSessionInvocation.js +59 -59
  421. package/lib/cjs/rpc/core/RpcSessionInvocation.js.map +1 -1
  422. package/lib/cjs/rpc/web/BentleyCloudRpcManager.d.ts +46 -46
  423. package/lib/cjs/rpc/web/BentleyCloudRpcManager.js +73 -73
  424. package/lib/cjs/rpc/web/BentleyCloudRpcManager.js.map +1 -1
  425. package/lib/cjs/rpc/web/BentleyCloudRpcProtocol.d.ts +33 -33
  426. package/lib/cjs/rpc/web/BentleyCloudRpcProtocol.js +142 -142
  427. package/lib/cjs/rpc/web/BentleyCloudRpcProtocol.js.map +1 -1
  428. package/lib/cjs/rpc/web/OpenAPI.d.ts +139 -139
  429. package/lib/cjs/rpc/web/OpenAPI.js +60 -60
  430. package/lib/cjs/rpc/web/OpenAPI.js.map +1 -1
  431. package/lib/cjs/rpc/web/RpcMultipart.d.ts +31 -31
  432. package/lib/cjs/rpc/web/RpcMultipart.js +45 -45
  433. package/lib/cjs/rpc/web/RpcMultipart.js.map +1 -1
  434. package/lib/cjs/rpc/web/WebAppRpcLogging.d.ts +17 -17
  435. package/lib/cjs/rpc/web/WebAppRpcLogging.js +140 -140
  436. package/lib/cjs/rpc/web/WebAppRpcLogging.js.map +1 -1
  437. package/lib/cjs/rpc/web/WebAppRpcProtocol.d.ts +86 -86
  438. package/lib/cjs/rpc/web/WebAppRpcProtocol.js +116 -116
  439. package/lib/cjs/rpc/web/WebAppRpcProtocol.js.map +1 -1
  440. package/lib/cjs/rpc/web/WebAppRpcRequest.d.ts +71 -71
  441. package/lib/cjs/rpc/web/WebAppRpcRequest.js +374 -374
  442. package/lib/cjs/rpc/web/WebAppRpcRequest.js.map +1 -1
  443. package/lib/cjs/rpc/web/multipart/RpcMultipartParser.d.ts +33 -33
  444. package/lib/cjs/rpc/web/multipart/RpcMultipartParser.js +359 -359
  445. package/lib/cjs/rpc/web/multipart/RpcMultipartParser.js.map +1 -1
  446. package/lib/cjs/tile/B3dmTileIO.d.ts +19 -19
  447. package/lib/cjs/tile/B3dmTileIO.js +66 -66
  448. package/lib/cjs/tile/B3dmTileIO.js.map +1 -1
  449. package/lib/cjs/tile/CompositeTileIO.d.ts +15 -15
  450. package/lib/cjs/tile/CompositeTileIO.js +26 -26
  451. package/lib/cjs/tile/CompositeTileIO.js.map +1 -1
  452. package/lib/cjs/tile/ElementGraphics.d.ts +145 -134
  453. package/lib/cjs/tile/ElementGraphics.d.ts.map +1 -1
  454. package/lib/cjs/tile/ElementGraphics.js +9 -9
  455. package/lib/cjs/tile/ElementGraphics.js.map +1 -1
  456. package/lib/cjs/tile/GltfTileIO.d.ts +45 -45
  457. package/lib/cjs/tile/GltfTileIO.js +109 -109
  458. package/lib/cjs/tile/GltfTileIO.js.map +1 -1
  459. package/lib/cjs/tile/I3dmTileIO.d.ts +20 -20
  460. package/lib/cjs/tile/I3dmTileIO.js +40 -40
  461. package/lib/cjs/tile/I3dmTileIO.js.map +1 -1
  462. package/lib/cjs/tile/IModelTileIO.d.ts +75 -75
  463. package/lib/cjs/tile/IModelTileIO.js +95 -95
  464. package/lib/cjs/tile/IModelTileIO.js.map +1 -1
  465. package/lib/cjs/tile/PntsTileIO.d.ts +17 -17
  466. package/lib/cjs/tile/PntsTileIO.js +26 -26
  467. package/lib/cjs/tile/PntsTileIO.js.map +1 -1
  468. package/lib/cjs/tile/TileIO.d.ts +66 -66
  469. package/lib/cjs/tile/TileIO.js +118 -118
  470. package/lib/cjs/tile/TileIO.js.map +1 -1
  471. package/lib/cjs/tile/TileMetadata.d.ts +228 -228
  472. package/lib/cjs/tile/TileMetadata.js +676 -676
  473. package/lib/cjs/tile/TileMetadata.js.map +1 -1
  474. package/lib/esm/AmbientOcclusion.d.ts +49 -49
  475. package/lib/esm/AmbientOcclusion.js +52 -52
  476. package/lib/esm/AmbientOcclusion.js.map +1 -1
  477. package/lib/esm/AnalysisStyle.d.ts +134 -134
  478. package/lib/esm/AnalysisStyle.js +159 -159
  479. package/lib/esm/AnalysisStyle.js.map +1 -1
  480. package/lib/esm/AuthorizationClient.d.ts +11 -11
  481. package/lib/esm/AuthorizationClient.js +8 -8
  482. package/lib/esm/AuthorizationClient.js.map +1 -1
  483. package/lib/esm/BackgroundMapProvider.d.ts +51 -51
  484. package/lib/esm/BackgroundMapProvider.js +64 -64
  485. package/lib/esm/BackgroundMapProvider.js.map +1 -1
  486. package/lib/esm/BackgroundMapSettings.d.ts +136 -136
  487. package/lib/esm/BackgroundMapSettings.js +152 -152
  488. package/lib/esm/BackgroundMapSettings.js.map +1 -1
  489. package/lib/esm/Base64EncodedString.d.ts +30 -30
  490. package/lib/esm/Base64EncodedString.js +53 -53
  491. package/lib/esm/Base64EncodedString.js.map +1 -1
  492. package/lib/esm/BlobReader.d.ts +31 -31
  493. package/lib/esm/BlobReader.js +79 -79
  494. package/lib/esm/BlobReader.js.map +1 -1
  495. package/lib/esm/BriefcaseTypes.d.ts +189 -189
  496. package/lib/esm/BriefcaseTypes.js +92 -92
  497. package/lib/esm/BriefcaseTypes.js.map +1 -1
  498. package/lib/esm/Camera.d.ts +42 -42
  499. package/lib/esm/Camera.js +58 -58
  500. package/lib/esm/Camera.js.map +1 -1
  501. package/lib/esm/ChangedElements.d.ts +83 -83
  502. package/lib/esm/ChangedElements.js +18 -18
  503. package/lib/esm/ChangedElements.js.map +1 -1
  504. package/lib/esm/ChangedEntities.d.ts +45 -45
  505. package/lib/esm/ChangedEntities.js +8 -8
  506. package/lib/esm/ChangedEntities.js.map +1 -1
  507. package/lib/esm/ChangesetProps.d.ts +98 -98
  508. package/lib/esm/ChangesetProps.js +19 -19
  509. package/lib/esm/ChangesetProps.js.map +1 -1
  510. package/lib/esm/ClipStyle.d.ts +89 -89
  511. package/lib/esm/ClipStyle.js +118 -118
  512. package/lib/esm/ClipStyle.js.map +1 -1
  513. package/lib/esm/CloudStorage.d.ts +62 -62
  514. package/lib/esm/CloudStorage.js +109 -109
  515. package/lib/esm/CloudStorage.js.map +1 -1
  516. package/lib/esm/CloudStorageTileCache.d.ts +27 -27
  517. package/lib/esm/CloudStorageTileCache.js +62 -62
  518. package/lib/esm/CloudStorageTileCache.js.map +1 -1
  519. package/lib/esm/Code.d.ts +256 -256
  520. package/lib/esm/Code.js +276 -276
  521. package/lib/esm/Code.js.map +1 -1
  522. package/lib/esm/ColorByName.d.ts +161 -161
  523. package/lib/esm/ColorByName.js +166 -166
  524. package/lib/esm/ColorByName.js.map +1 -1
  525. package/lib/esm/ColorDef.d.ts +208 -208
  526. package/lib/esm/ColorDef.js +567 -567
  527. package/lib/esm/ColorDef.js.map +1 -1
  528. package/lib/esm/CommonLoggerCategory.d.ts +18 -18
  529. package/lib/esm/CommonLoggerCategory.js +23 -23
  530. package/lib/esm/CommonLoggerCategory.js.map +1 -1
  531. package/lib/esm/ConcurrentQuery.d.ts +241 -241
  532. package/lib/esm/ConcurrentQuery.js +373 -373
  533. package/lib/esm/ConcurrentQuery.js.map +1 -1
  534. package/lib/esm/ContextRealityModel.d.ts +276 -276
  535. package/lib/esm/ContextRealityModel.js +353 -353
  536. package/lib/esm/ContextRealityModel.js.map +1 -1
  537. package/lib/esm/DisplayStyleSettings.d.ts +584 -584
  538. package/lib/esm/DisplayStyleSettings.js +976 -976
  539. package/lib/esm/DisplayStyleSettings.js.map +1 -1
  540. package/lib/esm/ECSchemaProps.d.ts +39 -39
  541. package/lib/esm/ECSchemaProps.js +8 -8
  542. package/lib/esm/ECSchemaProps.js.map +1 -1
  543. package/lib/esm/ECSqlReader.d.ts +70 -70
  544. package/lib/esm/ECSqlReader.js +275 -275
  545. package/lib/esm/ECSqlReader.js.map +1 -1
  546. package/lib/esm/ECSqlTypes.d.ts +128 -128
  547. package/lib/esm/ECSqlTypes.js +185 -185
  548. package/lib/esm/ECSqlTypes.js.map +1 -1
  549. package/lib/esm/ElementProps.d.ts +476 -476
  550. package/lib/esm/ElementProps.js +92 -92
  551. package/lib/esm/ElementProps.js.map +1 -1
  552. package/lib/esm/EmphasizeElementsProps.d.ts +55 -55
  553. package/lib/esm/EmphasizeElementsProps.js +22 -22
  554. package/lib/esm/EmphasizeElementsProps.js.map +1 -1
  555. package/lib/esm/EntityProps.d.ts +176 -176
  556. package/lib/esm/EntityProps.js +107 -107
  557. package/lib/esm/EntityProps.js.map +1 -1
  558. package/lib/esm/EntityReference.d.ts +52 -0
  559. package/lib/esm/EntityReference.d.ts.map +1 -0
  560. package/lib/esm/EntityReference.js +53 -0
  561. package/lib/esm/EntityReference.js.map +1 -0
  562. package/lib/esm/Environment.d.ts +61 -61
  563. package/lib/esm/Environment.js +69 -69
  564. package/lib/esm/Environment.js.map +1 -1
  565. package/lib/esm/FeatureGates.d.ts +31 -31
  566. package/lib/esm/FeatureGates.js +51 -51
  567. package/lib/esm/FeatureGates.js.map +1 -1
  568. package/lib/esm/FeatureIndex.d.ts +39 -39
  569. package/lib/esm/FeatureIndex.js +57 -57
  570. package/lib/esm/FeatureIndex.js.map +1 -1
  571. package/lib/esm/FeatureSymbology.d.ts +444 -444
  572. package/lib/esm/FeatureSymbology.js +609 -609
  573. package/lib/esm/FeatureSymbology.js.map +1 -1
  574. package/lib/esm/FeatureTable.d.ts +141 -141
  575. package/lib/esm/FeatureTable.js +272 -272
  576. package/lib/esm/FeatureTable.js.map +1 -1
  577. package/lib/esm/Fonts.d.ts +51 -51
  578. package/lib/esm/Fonts.js +49 -49
  579. package/lib/esm/Fonts.js.map +1 -1
  580. package/lib/esm/Frustum.d.ts +114 -114
  581. package/lib/esm/Frustum.js +288 -288
  582. package/lib/esm/Frustum.js.map +1 -1
  583. package/lib/esm/GeoCoordinateServices.d.ts +119 -119
  584. package/lib/esm/GeoCoordinateServices.js +76 -76
  585. package/lib/esm/GeoCoordinateServices.js.map +1 -1
  586. package/lib/esm/GeometryContainment.d.ts +28 -28
  587. package/lib/esm/GeometryContainment.js +8 -8
  588. package/lib/esm/GeometryContainment.js.map +1 -1
  589. package/lib/esm/GeometryParams.d.ts +130 -130
  590. package/lib/esm/GeometryParams.js +170 -170
  591. package/lib/esm/GeometryParams.js.map +1 -1
  592. package/lib/esm/GeometrySummary.d.ts +45 -45
  593. package/lib/esm/GeometrySummary.js +20 -20
  594. package/lib/esm/GeometrySummary.js.map +1 -1
  595. package/lib/esm/Gradient.d.ts +139 -139
  596. package/lib/esm/Gradient.js +452 -452
  597. package/lib/esm/Gradient.js.map +1 -1
  598. package/lib/esm/GraphicParams.d.ts +58 -58
  599. package/lib/esm/GraphicParams.js +81 -81
  600. package/lib/esm/GraphicParams.js.map +1 -1
  601. package/lib/esm/GroundPlane.d.ts +52 -52
  602. package/lib/esm/GroundPlane.js +60 -60
  603. package/lib/esm/GroundPlane.js.map +1 -1
  604. package/lib/esm/HSLColor.d.ts +20 -20
  605. package/lib/esm/HSLColor.js +28 -28
  606. package/lib/esm/HSLColor.js.map +1 -1
  607. package/lib/esm/HSVColor.d.ts +30 -30
  608. package/lib/esm/HSVColor.js +55 -55
  609. package/lib/esm/HSVColor.js.map +1 -1
  610. package/lib/esm/HiddenLine.d.ts +97 -97
  611. package/lib/esm/HiddenLine.js +159 -159
  612. package/lib/esm/HiddenLine.js.map +1 -1
  613. package/lib/esm/Hilite.d.ts +50 -50
  614. package/lib/esm/Hilite.js +61 -61
  615. package/lib/esm/Hilite.js.map +1 -1
  616. package/lib/esm/IModel.d.ts +359 -359
  617. package/lib/esm/IModel.js +342 -342
  618. package/lib/esm/IModel.js.map +1 -1
  619. package/lib/esm/IModelError.d.ts +36 -36
  620. package/lib/esm/IModelError.js +55 -55
  621. package/lib/esm/IModelError.js.map +1 -1
  622. package/lib/esm/IModelVersion.d.ts +68 -68
  623. package/lib/esm/IModelVersion.js +75 -75
  624. package/lib/esm/IModelVersion.js.map +1 -1
  625. package/lib/esm/Image.d.ts +86 -86
  626. package/lib/esm/Image.js +120 -120
  627. package/lib/esm/Image.js.map +1 -1
  628. package/lib/esm/IpcAppProps.d.ts +124 -124
  629. package/lib/esm/IpcAppProps.js +15 -15
  630. package/lib/esm/IpcAppProps.js.map +1 -1
  631. package/lib/esm/LightSettings.d.ts +224 -224
  632. package/lib/esm/LightSettings.js +301 -301
  633. package/lib/esm/LightSettings.js.map +1 -1
  634. package/lib/esm/LinePixels.d.ts +34 -34
  635. package/lib/esm/LinePixels.js +39 -39
  636. package/lib/esm/LinePixels.js.map +1 -1
  637. package/lib/esm/Localization.d.ts +111 -111
  638. package/lib/esm/Localization.js +22 -22
  639. package/lib/esm/Localization.js.map +1 -1
  640. package/lib/esm/MapImagerySettings.d.ts +62 -62
  641. package/lib/esm/MapImagerySettings.js +76 -76
  642. package/lib/esm/MapImagerySettings.js.map +1 -1
  643. package/lib/esm/MapLayerSettings.d.ts +272 -272
  644. package/lib/esm/MapLayerSettings.js +403 -403
  645. package/lib/esm/MapLayerSettings.js.map +1 -1
  646. package/lib/esm/MassProperties.d.ts +64 -64
  647. package/lib/esm/MassProperties.js +20 -20
  648. package/lib/esm/MassProperties.js.map +1 -1
  649. package/lib/esm/MaterialProps.d.ts +118 -118
  650. package/lib/esm/MaterialProps.js +20 -20
  651. package/lib/esm/MaterialProps.js.map +1 -1
  652. package/lib/esm/ModelClipGroup.d.ts +67 -67
  653. package/lib/esm/ModelClipGroup.js +93 -93
  654. package/lib/esm/ModelClipGroup.js.map +1 -1
  655. package/lib/esm/ModelGeometryChanges.d.ts +107 -107
  656. package/lib/esm/ModelGeometryChanges.js +80 -80
  657. package/lib/esm/ModelGeometryChanges.js.map +1 -1
  658. package/lib/esm/ModelProps.d.ts +67 -67
  659. package/lib/esm/ModelProps.js +8 -8
  660. package/lib/esm/ModelProps.js.map +1 -1
  661. package/lib/esm/NativeAppProps.d.ts +122 -122
  662. package/lib/esm/NativeAppProps.js +27 -27
  663. package/lib/esm/NativeAppProps.js.map +1 -1
  664. package/lib/esm/OctEncodedNormal.d.ts +33 -33
  665. package/lib/esm/OctEncodedNormal.js +93 -93
  666. package/lib/esm/OctEncodedNormal.js.map +1 -1
  667. package/lib/esm/PlanProjectionSettings.d.ts +47 -47
  668. package/lib/esm/PlanProjectionSettings.js +59 -59
  669. package/lib/esm/PlanProjectionSettings.js.map +1 -1
  670. package/lib/esm/PlanarClipMask.d.ts +177 -177
  671. package/lib/esm/PlanarClipMask.js +132 -132
  672. package/lib/esm/PlanarClipMask.js.map +1 -1
  673. package/lib/esm/QPoint.d.ts +479 -479
  674. package/lib/esm/QPoint.js +815 -815
  675. package/lib/esm/QPoint.js.map +1 -1
  676. package/lib/esm/RealityDataAccessProps.d.ts +41 -41
  677. package/lib/esm/RealityDataAccessProps.js +16 -16
  678. package/lib/esm/RealityDataAccessProps.js.map +1 -1
  679. package/lib/esm/RealityModelDisplaySettings.d.ts +118 -118
  680. package/lib/esm/RealityModelDisplaySettings.js +109 -109
  681. package/lib/esm/RealityModelDisplaySettings.js.map +1 -1
  682. package/lib/esm/Render.d.ts +89 -89
  683. package/lib/esm/Render.js +165 -165
  684. package/lib/esm/Render.js.map +1 -1
  685. package/lib/esm/RenderMaterial.d.ts +58 -58
  686. package/lib/esm/RenderMaterial.js +72 -72
  687. package/lib/esm/RenderMaterial.js.map +1 -1
  688. package/lib/esm/RenderSchedule.d.ts +541 -540
  689. package/lib/esm/RenderSchedule.d.ts.map +1 -1
  690. package/lib/esm/RenderSchedule.js +997 -997
  691. package/lib/esm/RenderSchedule.js.map +1 -1
  692. package/lib/esm/RenderTexture.d.ts +70 -70
  693. package/lib/esm/RenderTexture.js +55 -55
  694. package/lib/esm/RenderTexture.js.map +1 -1
  695. package/lib/esm/RgbColor.d.ts +47 -47
  696. package/lib/esm/RgbColor.js +73 -73
  697. package/lib/esm/RgbColor.js.map +1 -1
  698. package/lib/esm/RpcInterface.d.ts +33 -33
  699. package/lib/esm/RpcInterface.js +133 -133
  700. package/lib/esm/RpcInterface.js.map +1 -1
  701. package/lib/esm/RpcManager.d.ts +40 -40
  702. package/lib/esm/RpcManager.js +51 -51
  703. package/lib/esm/RpcManager.js.map +1 -1
  704. package/lib/esm/SessionProps.d.ts +16 -16
  705. package/lib/esm/SessionProps.js +8 -8
  706. package/lib/esm/SessionProps.js.map +1 -1
  707. package/lib/esm/SkyBox.d.ts +215 -215
  708. package/lib/esm/SkyBox.js +203 -203
  709. package/lib/esm/SkyBox.js.map +1 -1
  710. package/lib/esm/Snapping.d.ts +49 -49
  711. package/lib/esm/Snapping.js +8 -8
  712. package/lib/esm/Snapping.js.map +1 -1
  713. package/lib/esm/SolarCalculate.d.ts +27 -27
  714. package/lib/esm/SolarCalculate.js +204 -204
  715. package/lib/esm/SolarCalculate.js.map +1 -1
  716. package/lib/esm/SolarShadows.d.ts +35 -35
  717. package/lib/esm/SolarShadows.js +58 -58
  718. package/lib/esm/SolarShadows.js.map +1 -1
  719. package/lib/esm/SpatialClassification.d.ts +208 -208
  720. package/lib/esm/SpatialClassification.js +334 -334
  721. package/lib/esm/SpatialClassification.js.map +1 -1
  722. package/lib/esm/SubCategoryAppearance.d.ts +91 -91
  723. package/lib/esm/SubCategoryAppearance.js +92 -92
  724. package/lib/esm/SubCategoryAppearance.js.map +1 -1
  725. package/lib/esm/SubCategoryOverride.d.ts +46 -46
  726. package/lib/esm/SubCategoryOverride.js +100 -100
  727. package/lib/esm/SubCategoryOverride.js.map +1 -1
  728. package/lib/esm/TerrainSettings.d.ts +82 -82
  729. package/lib/esm/TerrainSettings.js +98 -98
  730. package/lib/esm/TerrainSettings.js.map +1 -1
  731. package/lib/esm/TextureMapping.d.ts +101 -101
  732. package/lib/esm/TextureMapping.js +170 -170
  733. package/lib/esm/TextureMapping.js.map +1 -1
  734. package/lib/esm/TextureProps.d.ts +65 -65
  735. package/lib/esm/TextureProps.js +25 -25
  736. package/lib/esm/TextureProps.js.map +1 -1
  737. package/lib/esm/ThematicDisplay.d.ts +230 -230
  738. package/lib/esm/ThematicDisplay.js +337 -337
  739. package/lib/esm/ThematicDisplay.js.map +1 -1
  740. package/lib/esm/Thumbnail.d.ts +26 -26
  741. package/lib/esm/Thumbnail.js +8 -8
  742. package/lib/esm/Thumbnail.js.map +1 -1
  743. package/lib/esm/TileProps.d.ts +82 -82
  744. package/lib/esm/TileProps.js +25 -25
  745. package/lib/esm/TileProps.js.map +1 -1
  746. package/lib/esm/Tween.d.ts +191 -191
  747. package/lib/esm/Tween.js +565 -565
  748. package/lib/esm/Tween.js.map +1 -1
  749. package/lib/esm/TxnAction.d.ts +21 -21
  750. package/lib/esm/TxnAction.js +26 -26
  751. package/lib/esm/TxnAction.js.map +1 -1
  752. package/lib/esm/ViewDetails.d.ts +125 -125
  753. package/lib/esm/ViewDetails.js +153 -153
  754. package/lib/esm/ViewDetails.js.map +1 -1
  755. package/lib/esm/ViewFlags.d.ts +291 -291
  756. package/lib/esm/ViewFlags.js +364 -364
  757. package/lib/esm/ViewFlags.js.map +1 -1
  758. package/lib/esm/ViewProps.d.ts +205 -205
  759. package/lib/esm/ViewProps.js +8 -8
  760. package/lib/esm/ViewProps.js.map +1 -1
  761. package/lib/esm/WhiteOnWhiteReversalSettings.d.ts +36 -36
  762. package/lib/esm/WhiteOnWhiteReversalSettings.js +33 -33
  763. package/lib/esm/WhiteOnWhiteReversalSettings.js.map +1 -1
  764. package/lib/esm/core-common.d.ts +242 -241
  765. package/lib/esm/core-common.d.ts.map +1 -1
  766. package/lib/esm/core-common.js +246 -245
  767. package/lib/esm/core-common.js.map +1 -1
  768. package/lib/esm/domains/FunctionalElementProps.d.ts +11 -11
  769. package/lib/esm/domains/FunctionalElementProps.js +8 -8
  770. package/lib/esm/domains/FunctionalElementProps.js.map +1 -1
  771. package/lib/esm/domains/GenericElementProps.d.ts +18 -18
  772. package/lib/esm/domains/GenericElementProps.js +8 -8
  773. package/lib/esm/domains/GenericElementProps.js.map +1 -1
  774. package/lib/esm/geometry/AdditionalTransform.d.ts +84 -84
  775. package/lib/esm/geometry/AdditionalTransform.js +80 -80
  776. package/lib/esm/geometry/AdditionalTransform.js.map +1 -1
  777. package/lib/esm/geometry/AreaPattern.d.ts +82 -82
  778. package/lib/esm/geometry/AreaPattern.js +201 -201
  779. package/lib/esm/geometry/AreaPattern.js.map +1 -1
  780. package/lib/esm/geometry/BoundingSphere.d.ts +14 -14
  781. package/lib/esm/geometry/BoundingSphere.js +26 -26
  782. package/lib/esm/geometry/BoundingSphere.js.map +1 -1
  783. package/lib/esm/geometry/Cartographic.d.ts +137 -137
  784. package/lib/esm/geometry/Cartographic.js +340 -340
  785. package/lib/esm/geometry/Cartographic.js.map +1 -1
  786. package/lib/esm/geometry/CoordinateReferenceSystem.d.ts +269 -269
  787. package/lib/esm/geometry/CoordinateReferenceSystem.js +254 -254
  788. package/lib/esm/geometry/CoordinateReferenceSystem.js.map +1 -1
  789. package/lib/esm/geometry/ElementGeometry.d.ts +402 -402
  790. package/lib/esm/geometry/ElementGeometry.js +1716 -1716
  791. package/lib/esm/geometry/ElementGeometry.js.map +1 -1
  792. package/lib/esm/geometry/ElementGeometryFB.d.ts +2372 -2372
  793. package/lib/esm/geometry/ElementGeometryFB.js +3811 -3811
  794. package/lib/esm/geometry/ElementGeometryFB.js.map +1 -1
  795. package/lib/esm/geometry/FrustumPlanes.d.ts +32 -32
  796. package/lib/esm/geometry/FrustumPlanes.js +128 -128
  797. package/lib/esm/geometry/FrustumPlanes.js.map +1 -1
  798. package/lib/esm/geometry/GeodeticDatum.d.ts +409 -409
  799. package/lib/esm/geometry/GeodeticDatum.js +390 -390
  800. package/lib/esm/geometry/GeodeticDatum.js.map +1 -1
  801. package/lib/esm/geometry/GeodeticEllipsoid.d.ts +72 -72
  802. package/lib/esm/geometry/GeodeticEllipsoid.js +68 -68
  803. package/lib/esm/geometry/GeodeticEllipsoid.js.map +1 -1
  804. package/lib/esm/geometry/GeometryStream.d.ts +347 -347
  805. package/lib/esm/geometry/GeometryStream.js +464 -464
  806. package/lib/esm/geometry/GeometryStream.js.map +1 -1
  807. package/lib/esm/geometry/ImageGraphic.d.ts +74 -74
  808. package/lib/esm/geometry/ImageGraphic.js +93 -93
  809. package/lib/esm/geometry/ImageGraphic.js.map +1 -1
  810. package/lib/esm/geometry/LineStyle.d.ts +71 -71
  811. package/lib/esm/geometry/LineStyle.js +126 -126
  812. package/lib/esm/geometry/LineStyle.js.map +1 -1
  813. package/lib/esm/geometry/Placement.d.ts +95 -95
  814. package/lib/esm/geometry/Placement.js +126 -126
  815. package/lib/esm/geometry/Placement.js.map +1 -1
  816. package/lib/esm/geometry/Projection.d.ts +251 -251
  817. package/lib/esm/geometry/Projection.js +192 -192
  818. package/lib/esm/geometry/Projection.js.map +1 -1
  819. package/lib/esm/geometry/TextString.d.ts +55 -55
  820. package/lib/esm/geometry/TextString.js +61 -61
  821. package/lib/esm/geometry/TextString.js.map +1 -1
  822. package/lib/esm/ipc/IpcSession.d.ts +23 -23
  823. package/lib/esm/ipc/IpcSession.js +23 -23
  824. package/lib/esm/ipc/IpcSession.js.map +1 -1
  825. package/lib/esm/ipc/IpcSocket.d.ts +96 -96
  826. package/lib/esm/ipc/IpcSocket.js +12 -12
  827. package/lib/esm/ipc/IpcSocket.js.map +1 -1
  828. package/lib/esm/ipc/IpcWebSocket.d.ts +61 -61
  829. package/lib/esm/ipc/IpcWebSocket.js +145 -145
  830. package/lib/esm/ipc/IpcWebSocket.js.map +1 -1
  831. package/lib/esm/ipc/IpcWebSocketTransport.d.ts +15 -15
  832. package/lib/esm/ipc/IpcWebSocketTransport.js +154 -154
  833. package/lib/esm/ipc/IpcWebSocketTransport.js.map +1 -1
  834. package/lib/esm/rpc/DevToolsRpcInterface.d.ts +32 -32
  835. package/lib/esm/rpc/DevToolsRpcInterface.js +44 -44
  836. package/lib/esm/rpc/DevToolsRpcInterface.js.map +1 -1
  837. package/lib/esm/rpc/IModelReadRpcInterface.d.ts +75 -75
  838. package/lib/esm/rpc/IModelReadRpcInterface.js +110 -110
  839. package/lib/esm/rpc/IModelReadRpcInterface.js.map +1 -1
  840. package/lib/esm/rpc/IModelTileRpcInterface.d.ts +61 -61
  841. package/lib/esm/rpc/IModelTileRpcInterface.js +92 -92
  842. package/lib/esm/rpc/IModelTileRpcInterface.js.map +1 -1
  843. package/lib/esm/rpc/SnapshotIModelRpcInterface.d.ts +23 -23
  844. package/lib/esm/rpc/SnapshotIModelRpcInterface.js +44 -44
  845. package/lib/esm/rpc/SnapshotIModelRpcInterface.js.map +1 -1
  846. package/lib/esm/rpc/TestRpcManager.d.ts +20 -20
  847. package/lib/esm/rpc/TestRpcManager.js +35 -35
  848. package/lib/esm/rpc/TestRpcManager.js.map +1 -1
  849. package/lib/esm/rpc/WipRpcInterface.d.ts +29 -29
  850. package/lib/esm/rpc/WipRpcInterface.js +36 -36
  851. package/lib/esm/rpc/WipRpcInterface.js.map +1 -1
  852. package/lib/esm/rpc/core/RpcConfiguration.d.ts +111 -111
  853. package/lib/esm/rpc/core/RpcConfiguration.js +185 -185
  854. package/lib/esm/rpc/core/RpcConfiguration.js.map +1 -1
  855. package/lib/esm/rpc/core/RpcConstants.d.ts +85 -85
  856. package/lib/esm/rpc/core/RpcConstants.js +100 -100
  857. package/lib/esm/rpc/core/RpcConstants.js.map +1 -1
  858. package/lib/esm/rpc/core/RpcControl.d.ts +52 -52
  859. package/lib/esm/rpc/core/RpcControl.js +142 -142
  860. package/lib/esm/rpc/core/RpcControl.js.map +1 -1
  861. package/lib/esm/rpc/core/RpcInvocation.d.ts +89 -89
  862. package/lib/esm/rpc/core/RpcInvocation.js +253 -253
  863. package/lib/esm/rpc/core/RpcInvocation.js.map +1 -1
  864. package/lib/esm/rpc/core/RpcMarshaling.d.ts +36 -36
  865. package/lib/esm/rpc/core/RpcMarshaling.js +149 -149
  866. package/lib/esm/rpc/core/RpcMarshaling.js.map +1 -1
  867. package/lib/esm/rpc/core/RpcOperation.d.ts +67 -67
  868. package/lib/esm/rpc/core/RpcOperation.js +128 -128
  869. package/lib/esm/rpc/core/RpcOperation.js.map +1 -1
  870. package/lib/esm/rpc/core/RpcPendingQueue.d.ts +21 -21
  871. package/lib/esm/rpc/core/RpcPendingQueue.js +90 -90
  872. package/lib/esm/rpc/core/RpcPendingQueue.js.map +1 -1
  873. package/lib/esm/rpc/core/RpcProtocol.d.ts +132 -132
  874. package/lib/esm/rpc/core/RpcProtocol.js +123 -123
  875. package/lib/esm/rpc/core/RpcProtocol.js.map +1 -1
  876. package/lib/esm/rpc/core/RpcPush.d.ts +68 -68
  877. package/lib/esm/rpc/core/RpcPush.js +119 -119
  878. package/lib/esm/rpc/core/RpcPush.js.map +1 -1
  879. package/lib/esm/rpc/core/RpcRegistry.d.ts +48 -48
  880. package/lib/esm/rpc/core/RpcRegistry.js +194 -194
  881. package/lib/esm/rpc/core/RpcRegistry.js.map +1 -1
  882. package/lib/esm/rpc/core/RpcRequest.d.ts +186 -186
  883. package/lib/esm/rpc/core/RpcRequest.js +472 -472
  884. package/lib/esm/rpc/core/RpcRequest.js.map +1 -1
  885. package/lib/esm/rpc/core/RpcRequestContext.d.ts +14 -14
  886. package/lib/esm/rpc/core/RpcRequestContext.js +1 -1
  887. package/lib/esm/rpc/core/RpcRequestContext.js.map +1 -1
  888. package/lib/esm/rpc/core/RpcRoutingToken.d.ts +12 -12
  889. package/lib/esm/rpc/core/RpcRoutingToken.js +19 -19
  890. package/lib/esm/rpc/core/RpcRoutingToken.js.map +1 -1
  891. package/lib/esm/rpc/core/RpcSessionInvocation.d.ts +10 -10
  892. package/lib/esm/rpc/core/RpcSessionInvocation.js +55 -55
  893. package/lib/esm/rpc/core/RpcSessionInvocation.js.map +1 -1
  894. package/lib/esm/rpc/web/BentleyCloudRpcManager.d.ts +46 -46
  895. package/lib/esm/rpc/web/BentleyCloudRpcManager.js +68 -68
  896. package/lib/esm/rpc/web/BentleyCloudRpcManager.js.map +1 -1
  897. package/lib/esm/rpc/web/BentleyCloudRpcProtocol.d.ts +33 -33
  898. package/lib/esm/rpc/web/BentleyCloudRpcProtocol.js +138 -138
  899. package/lib/esm/rpc/web/BentleyCloudRpcProtocol.js.map +1 -1
  900. package/lib/esm/rpc/web/OpenAPI.d.ts +139 -139
  901. package/lib/esm/rpc/web/OpenAPI.js +56 -56
  902. package/lib/esm/rpc/web/OpenAPI.js.map +1 -1
  903. package/lib/esm/rpc/web/RpcMultipart.d.ts +31 -31
  904. package/lib/esm/rpc/web/RpcMultipart.js +41 -41
  905. package/lib/esm/rpc/web/RpcMultipart.js.map +1 -1
  906. package/lib/esm/rpc/web/WebAppRpcLogging.d.ts +17 -17
  907. package/lib/esm/rpc/web/WebAppRpcLogging.js +136 -136
  908. package/lib/esm/rpc/web/WebAppRpcLogging.js.map +1 -1
  909. package/lib/esm/rpc/web/WebAppRpcProtocol.d.ts +86 -86
  910. package/lib/esm/rpc/web/WebAppRpcProtocol.js +112 -112
  911. package/lib/esm/rpc/web/WebAppRpcProtocol.js.map +1 -1
  912. package/lib/esm/rpc/web/WebAppRpcRequest.d.ts +71 -71
  913. package/lib/esm/rpc/web/WebAppRpcRequest.js +370 -370
  914. package/lib/esm/rpc/web/WebAppRpcRequest.js.map +1 -1
  915. package/lib/esm/rpc/web/multipart/RpcMultipartParser.d.ts +33 -33
  916. package/lib/esm/rpc/web/multipart/RpcMultipartParser.js +355 -355
  917. package/lib/esm/rpc/web/multipart/RpcMultipartParser.js.map +1 -1
  918. package/lib/esm/tile/B3dmTileIO.d.ts +19 -19
  919. package/lib/esm/tile/B3dmTileIO.js +62 -62
  920. package/lib/esm/tile/B3dmTileIO.js.map +1 -1
  921. package/lib/esm/tile/CompositeTileIO.d.ts +15 -15
  922. package/lib/esm/tile/CompositeTileIO.js +22 -22
  923. package/lib/esm/tile/CompositeTileIO.js.map +1 -1
  924. package/lib/esm/tile/ElementGraphics.d.ts +145 -134
  925. package/lib/esm/tile/ElementGraphics.d.ts.map +1 -1
  926. package/lib/esm/tile/ElementGraphics.js +8 -8
  927. package/lib/esm/tile/ElementGraphics.js.map +1 -1
  928. package/lib/esm/tile/GltfTileIO.d.ts +45 -45
  929. package/lib/esm/tile/GltfTileIO.js +105 -105
  930. package/lib/esm/tile/GltfTileIO.js.map +1 -1
  931. package/lib/esm/tile/I3dmTileIO.d.ts +20 -20
  932. package/lib/esm/tile/I3dmTileIO.js +36 -36
  933. package/lib/esm/tile/I3dmTileIO.js.map +1 -1
  934. package/lib/esm/tile/IModelTileIO.d.ts +75 -75
  935. package/lib/esm/tile/IModelTileIO.js +90 -90
  936. package/lib/esm/tile/IModelTileIO.js.map +1 -1
  937. package/lib/esm/tile/PntsTileIO.d.ts +17 -17
  938. package/lib/esm/tile/PntsTileIO.js +22 -22
  939. package/lib/esm/tile/PntsTileIO.js.map +1 -1
  940. package/lib/esm/tile/TileIO.d.ts +66 -66
  941. package/lib/esm/tile/TileIO.js +110 -110
  942. package/lib/esm/tile/TileIO.js.map +1 -1
  943. package/lib/esm/tile/TileMetadata.d.ts +228 -228
  944. package/lib/esm/tile/TileMetadata.js +661 -661
  945. package/lib/esm/tile/TileMetadata.js.map +1 -1
  946. package/package.json +7 -7
@@ -1 +1 @@
1
- {"version":3,"file":"MapLayerSettings.js","sourceRoot":"","sources":["../../src/MapLayerSettings.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 MapLayers\n */\n\nimport { assert, Id64String } from \"@itwin/core-bentley\";\nimport { BackgroundMapProvider, BackgroundMapProviderProps, BackgroundMapType } from \"./BackgroundMapProvider\";\nimport { DeprecatedBackgroundMapProps } from \"./BackgroundMapSettings\";\n\n/** The current set of supported map layer formats.\n * In order to be displayed, a corresponding format must have been registered in the [MapLayerFormatRegistry]($frontend)\n * @public\n */\nexport type ImageryMapLayerFormatId = \"ArcGIS\" | \"BingMaps\" | \"MapboxImagery\" | \"TileURL\" | \"WMS\" | \"WMTS\";\n\n/** @public */\nexport type SubLayerId = string | number;\n\n/** JSON representation of the settings associated with a map sublayer included within a [[MapLayerProps]].\n * A map sub layer represents a set of objects within the layer that can be controlled separately. These\n * are produced only from map servers that produce images on demand and are not supported by tiled (cached) servers.\n * @see [[MapLayerProps]]\n * @public\n */\nexport interface MapSubLayerProps {\n name: string;\n title?: string;\n visible?: boolean;\n id?: SubLayerId;\n parent?: SubLayerId;\n children?: SubLayerId[];\n}\n\n/** Normalized representation of a [[MapSubLayerProps]] for which values\n * have been validated and default values have been applied where explicit values not defined.\n * A map sub layer represents a set of objects within the layer that can be controlled separately. These\n * are produced only from map servers that produce images on demand and are not supported by tiled (cached) servers.\n * This class can represent a hierarchy, in this case a sub layer is visible only if all its ancestors are also visible.\n * @see [[MapLayerSettings]]\n * @public\n */\nexport class MapSubLayerSettings {\n /** Typically Name is a single word used for machine-to-machine communication while the Title is for the benefit of humans (WMS) */\n public readonly name: string;\n /** Title. */\n public readonly title?: string;\n /** If true the sub layer is visible. If part of a hierarchy, a sub layer is visible only if its ancestors are also visible. */\n public readonly visible: boolean;\n /** A unique string or number that may be used to identify the sub layer (ArcGIS) */\n public readonly id: SubLayerId;\n /** One or more sublayer children */\n public readonly children?: SubLayerId[];\n /** sublayer parent. */\n public readonly parent?: SubLayerId;\n\n constructor(name: string, title?: string, visible?: boolean, id?: SubLayerId, parent?: SubLayerId, children?: SubLayerId[]) {\n this.name = name;\n this.title = title;\n this.visible = visible !== undefined && visible;\n this.id = (id === undefined) ? this.name : id;\n this.parent = parent;\n this.children = children;\n }\n\n /** Construct from JSON, performing validation and applying default values for undefined fields. */\n public static fromJSON(json: MapSubLayerProps): MapSubLayerSettings {\n return new MapSubLayerSettings(json.name, json.title, json.visible, (json.id === json.name) ? undefined : json.id, json.parent, json.children);\n }\n\n public toJSON(): MapSubLayerProps {\n const props: MapSubLayerProps = { name: this.name, visible: this.visible };\n\n if (undefined !== this.id && this.id !== this.name)\n props.id = this.id;\n\n if (undefined !== this.title)\n props.title = this.title;\n\n if (this.children)\n props.children = [...this.children];\n\n if (undefined !== this.parent)\n props.parent = this.parent;\n\n return props;\n }\n\n /** Creating a copy of this MapSubLayer, optionally modifying some if its properties */\n public clone(changedProps: Partial<MapSubLayerProps>): MapSubLayerSettings {\n if (undefined === changedProps)\n return this;\n\n const props = {\n name: undefined !== changedProps.name ? changedProps.name : this.name,\n id: undefined !== changedProps.id ? changedProps.id : this.id,\n visible: undefined !== changedProps.visible ? changedProps.visible : this.visible,\n parent: undefined !== changedProps.parent ? changedProps.parent : this.parent,\n children: undefined !== changedProps.children ? changedProps.children.slice() : this.children?.slice(),\n title: undefined !== changedProps.title ? changedProps.title : this.title,\n };\n return MapSubLayerSettings.fromJSON(props)!;\n }\n\n /** @internal */\n public displayMatches(other: MapSubLayerSettings): boolean {\n return this.name === other.name && this.visible === other.visible;\n }\n\n /** return true if this sublayer is named. */\n public get isNamed(): boolean { return this.name.length > 0; }\n\n /** return true if this sublayer is a leaf (has no children) */\n public get isLeaf(): boolean { return this.children === undefined || this.children.length === 0; }\n\n /** return true if this sublayer is an unnamed group */\n public get isUnnamedGroup(): boolean { return !this.isLeaf && !this.isNamed; }\n\n /** return a string representing this sublayer id (converting to string if underlying id is number) */\n public get idString(): string { return (typeof this.id === \"number\") ? this.id.toString(10) : this.id; }\n}\n\n/** JSON representation of properties common to both [[ImageMapLayerProps]] and [[ModelMapLayerProps]].\n * @see [[MapImageryProps]]\n * @public\n */\nexport interface CommonMapLayerProps {\n /** Controls visibility of layer. Defaults to 'true'. */\n visible?: boolean;\n\n /** A user-friendly name for the layer. */\n name: string;\n /** A transparency value from 0.0 (fully opaque) to 1.0 (fully transparent) to apply to map graphics when drawing,\n * or false to indicate the transparency should not be overridden.\n * Default value: 0.\n */\n transparency?: number;\n /** True to indicate background is transparent.\n * Default: true.\n */\n transparentBackground?: boolean;\n}\n\n/** JSON representation of an [[ImageMapLayerSettings]].\n * @see [[MapImagerySettings]].\n * @see [[ImageryMapLayerFormatId]].\n * @public\n */\nexport interface ImageMapLayerProps extends CommonMapLayerProps {\n /** URL */\n url: string;\n /** Identifies the map layers source.*/\n formatId: string;\n /** Source layers. If undefined all layers are displayed. */\n subLayers?: MapSubLayerProps[];\n /** Access Key for the Layer, like a subscription key or access token.\n * ###TODO This does not belong in the props object. It should never be persisted.\n */\n /** @internal */\n accessKey?: MapLayerKey;\n\n /** @internal */\n modelId?: never;\n}\n\n/** JSON representation of a [[ModelMapLayerSettings]].\n * @see [[MapImagerySettings]].\n * @public\n */\nexport interface ModelMapLayerProps extends CommonMapLayerProps {\n /** The Id of the [GeometricModel]($backend) containing the geometry to be drawn by the layer. */\n modelId: Id64String;\n\n /** @internal */\n url?: never;\n /** @internal */\n formatId?: never;\n /** @internal */\n subLayers?: never;\n /** @internal */\n accessKey?: never;\n}\n\n/** JSON representation of a [[MapLayerSettings]].\n * @see [[MapImagerySettings]].\n * @public\n */\nexport type MapLayerProps = ImageMapLayerProps | ModelMapLayerProps;\n\n/**\n * stores key-value pair to be added to all requests made involving map layer.\n * @public\n */\nexport interface MapLayerKey {\n key: string;\n value: string;\n}\n\n/** Abstract base class for normalized representation of a [[MapLayerProps]] for which values have been validated and default values have been applied where explicit values not defined.\n * This class is extended by [[ImageMapLayerSettings]] and [ModelMapLayerSettings]] to create the settings for image and model based layers.\n * One or more map layers may be included within [[MapImagerySettings]] object.\n * @see [[MapImagerySettings]]\n * @public\n */\nexport abstract class MapLayerSettings {\n public readonly visible: boolean;\n\n public readonly name: string;\n public readonly transparency: number;\n public readonly transparentBackground: boolean;\n public abstract get allSubLayersInvisible(): boolean;\n public abstract clone(changedProps: Partial<MapLayerProps>): MapLayerSettings;\n public abstract toJSON(): MapLayerProps;\n\n /** @internal */\n protected constructor(name: string, visible = true, transparency: number = 0, transparentBackground = true) {\n this.name = name;\n this.visible = visible;\n this.transparentBackground = transparentBackground;\n this.transparency = transparency;\n }\n\n /** Create a map layer settings from its JSON representation. */\n public static fromJSON(props: MapLayerProps): MapLayerSettings {\n return undefined !== props.modelId ? ModelMapLayerSettings.fromJSON(props) : ImageMapLayerSettings.fromJSON(props);\n }\n\n /** @internal */\n protected _toJSON(): CommonMapLayerProps {\n const props: CommonMapLayerProps = {\n name: this.name,\n visible: this.visible,\n };\n\n if (0 !== this.transparency)\n props.transparency = this.transparency;\n\n if (this.transparentBackground === false)\n props.transparentBackground = this.transparentBackground;\n\n return props;\n }\n\n /** @internal */\n protected cloneProps(changedProps: Partial<MapLayerProps>): CommonMapLayerProps {\n return {\n name: undefined !== changedProps.name ? changedProps.name : this.name,\n visible: undefined !== changedProps.visible ? changedProps.visible : this.visible,\n transparency: undefined !== changedProps.transparency ? changedProps.transparency : this.transparency,\n transparentBackground: undefined !== changedProps.transparentBackground ? changedProps.transparentBackground : this.transparentBackground,\n };\n }\n\n /** @internal */\n public displayMatches(other: MapLayerSettings): boolean {\n return this.name === other.name && this.visible === other.visible && this.transparency === other.transparency && this.transparentBackground === other.transparentBackground;\n }\n\n /** Return a unique string identifying the layers source... The URL for image layer or modelID for model layer */\n public abstract get source(): string;\n\n /** @internal */\n public matchesNameAndSource(name: string, source: string): boolean {\n return this.name === name && this.source === source;\n }\n}\n\n/** Normalized representation of a [[ImageMapLayerProps]] for which values have been validated and default values have been applied where explicit values not defined.\n * Image map layers are created from servers that produce images that represent map tiles. Map layers map also be represented by models.\n * One or more map layers may be included within [[MapImagerySettings]] object.\n * @see [[MapImagerySettings]]\n * @see [[ModelMapLayerSettings]] for model based map layer settings.\n * @public\n */\nexport class ImageMapLayerSettings extends MapLayerSettings {\n public readonly formatId: string;\n public readonly url: string;\n public userName?: string;\n public password?: string;\n public accessKey?: MapLayerKey;\n public readonly subLayers: MapSubLayerSettings[];\n public override get source(): string { return this.url; }\n\n /** @internal */\n protected constructor(props: ImageMapLayerProps) {\n const transparentBackground = props.transparentBackground ?? true;\n super(props.name, props.visible, props.transparency, transparentBackground);\n\n this.formatId = props.formatId;\n this.url = props.url;\n this.accessKey = props.accessKey;\n this.subLayers = [];\n if (!props.subLayers)\n return;\n\n for (const subLayerProps of props.subLayers) {\n const subLayer = MapSubLayerSettings.fromJSON(subLayerProps);\n if (subLayer)\n this.subLayers.push(subLayer);\n }\n }\n\n public static override fromJSON(props: ImageMapLayerProps): ImageMapLayerSettings {\n return new this(props);\n }\n\n /** return JSON representation of this MapLayerSettings object */\n public override toJSON(): ImageMapLayerProps {\n const props = super._toJSON() as ImageMapLayerProps;\n props.url = this.url;\n props.formatId = this.formatId;\n\n if (this.subLayers.length > 0)\n props.subLayers = this.subLayers.map((x) => x.toJSON());\n\n return props;\n }\n\n /** Create a copy of this MapLayerSettings, optionally modifying some of its properties.\n * @param changedProps JSON representation of the properties to change.\n * @returns A MapLayerSettings with all of its properties set to match those of `this`, except those explicitly defined in `changedProps`.\n */\n public clone(changedProps: Partial<ImageMapLayerProps>): ImageMapLayerSettings {\n const clone = ImageMapLayerSettings.fromJSON(this.cloneProps(changedProps));\n\n // Clone members not part of MapLayerProps\n clone.userName = this.userName;\n clone.password = this.password;\n clone.accessKey = this.accessKey;\n\n return clone;\n }\n\n /** @internal */\n protected override cloneProps(changedProps: Partial<ImageMapLayerProps>): ImageMapLayerProps {\n const props = super.cloneProps(changedProps) as ImageMapLayerProps;\n\n props.formatId = changedProps.formatId ?? this.formatId;\n props.url = changedProps.url ?? this.url;\n props.accessKey = changedProps.accessKey ?? this.accessKey;\n props.subLayers = changedProps.subLayers ?? this.subLayers;\n\n return props;\n }\n\n /** @internal */\n public override displayMatches(other: MapLayerSettings): boolean {\n if (! (other instanceof ImageMapLayerSettings) || !super.displayMatches(other))\n return false;\n\n if (this.userName !== other.userName || this.password !== other.password || this.subLayers.length !== other.subLayers.length) {\n return false;\n }\n\n for (let i = 0; i < this.subLayers.length; i++)\n if (!this.subLayers[i].displayMatches(other.subLayers[i]))\n return false;\n\n return true;\n }\n\n /** Return a sublayer matching id -- or undefined if not found */\n public subLayerById(id?: SubLayerId): MapSubLayerSettings | undefined {\n return id === undefined ? undefined : this.subLayers.find((subLayer) => subLayer.id === id);\n }\n\n private hasInvisibleAncestors(subLayer?: MapSubLayerSettings): boolean {\n if (!subLayer || !subLayer.parent)\n return false;\n\n const parent = this.subLayerById(subLayer.parent);\n if (!parent)\n return false;\n\n // Visibility of named group has no impact on the visibility of children (only unnamed group does)\n // i.e For WMS, its should be possible to request a child layer when its parent is not visible (if the parent is also named)\n return (!parent.visible && !parent.isNamed) || this.hasInvisibleAncestors(parent);\n }\n\n /** Return true if sublayer is visible -- testing ancestors for visibility if they exist. */\n public isSubLayerVisible(subLayer: MapSubLayerSettings): boolean {\n if (!subLayer.visible)\n return false;\n\n return !this.hasInvisibleAncestors(subLayer);\n }\n\n /** Return true if all sublayers are invisible. */\n public get allSubLayersInvisible(): boolean {\n if (this.subLayers.length === 0)\n return false;\n\n return this.subLayers.every((subLayer) => (subLayer.isUnnamedGroup || !this.isSubLayerVisible(subLayer)));\n }\n\n /** Return the children for a sublayer */\n public getSubLayerChildren(subLayer: MapSubLayerSettings): MapSubLayerSettings[] | undefined {\n if (!subLayer.children)\n return undefined;\n\n const children = new Array<MapSubLayerSettings>();\n subLayer.children.forEach((childId) => {\n const child = this.subLayerById(childId);\n if (child !== undefined)\n children.push(child);\n });\n\n return children;\n }\n\n /** @internal */\n protected static mapTypeName(type: BackgroundMapType) { // TBD.. Localization.\n switch (type) {\n case BackgroundMapType.Aerial:\n return \"Aerial Imagery\";\n default:\n case BackgroundMapType.Hybrid:\n return \"Aerial Imagery with labels\";\n case BackgroundMapType.Street:\n return \"Streets\";\n }\n }\n\n public setCredentials(userName?: string, password?: string) {\n this.userName = userName;\n this.password = password;\n }\n}\n\n/** Normalized representation of a [[ModelMapLayerProps]] for which values have been validated and default values have been applied where explicit values not defined.\n * Model map layers are produced from models, typically from two dimensional geometry that may originate in a GIS system.\n * One or more map layers may be included within [[MapImagerySettings]] object.\n * @see [[MapImagerySettings]]\n * @see [[ImageMapLayerSettings]] for image based map layer settings.\n * @public\n */\nexport class ModelMapLayerSettings extends MapLayerSettings {\n public readonly modelId: Id64String;\n public override get source(): string { return this.modelId; }\n\n /** @internal */\n protected constructor(modelId: Id64String, name: string, visible = true,\n transparency: number = 0, transparentBackground = true) {\n super(name, visible, transparency, transparentBackground);\n this.modelId = modelId;\n }\n\n /** Construct from JSON, performing validation and applying default values for undefined fields. */\n public static override fromJSON(json: ModelMapLayerProps): ModelMapLayerSettings {\n const transparentBackground = (json.transparentBackground === undefined) ? true : json.transparentBackground;\n return new this(json.modelId, json.name, json.visible, json.transparency, transparentBackground);\n }\n\n /** return JSON representation of this MapLayerSettings object */\n public override toJSON(): ModelMapLayerProps {\n const props = super._toJSON() as ModelMapLayerProps;\n props.modelId = this.modelId;\n return props;\n }\n\n /** Create a copy of this MapLayerSettings, optionally modifying some of its properties.\n * @param changedProps JSON representation of the properties to change.\n * @returns A MapLayerSettings with all of its properties set to match those of `this`, except those explicitly defined in `changedProps`.\n */\n public clone(changedProps: Partial<ModelMapLayerProps>): ModelMapLayerSettings {\n return ModelMapLayerSettings.fromJSON(this.cloneProps(changedProps));\n }\n\n /** @internal */\n protected override cloneProps(changedProps: Partial<ModelMapLayerProps>): ModelMapLayerProps {\n const props = super.cloneProps(changedProps) as ModelMapLayerProps;\n props.modelId = changedProps.modelId ?? this.modelId;\n return props;\n }\n\n /** @internal */\n public override displayMatches(other: MapLayerSettings): boolean {\n if (!(other instanceof ModelMapLayerSettings) || !super.displayMatches(other))\n return false;\n\n return this.modelId === other.modelId;\n }\n\n /** Return true if all sublayers are invisible (always false as model layers do not include sublayers). */\n public get allSubLayersInvisible(): boolean {\n return false;\n }\n}\n\n/** JSON representation of a [[BaseMapLayerSettings]].\n * @public\n */\nexport interface BaseMapLayerProps extends ImageMapLayerProps {\n provider?: BackgroundMapProviderProps;\n}\n\n/** A [[ImageMapLayerSettings]] that can serve as the base layer for a [[MapImagerySettings]].\n * The base layer supports all of the same options as any other layer, but also allows for simplified configuration based\n * on a small set of known supported [[BackgroundMapProvider]]s like [Bing Maps](https://www.microsoft.com/en-us/maps).\n * If the base layer was configured from such a provider, that information will be preserved and can be queried; this allows\n * the imagery provider and/or type to be easily modified.\n * @see [[MapImagerySettings.backgroundBase]].\n * @public\n */\nexport class BaseMapLayerSettings extends ImageMapLayerSettings {\n private _provider?: BackgroundMapProvider;\n\n /** The provider from which this base layer was configured, if any. */\n public get provider(): BackgroundMapProvider | undefined { return this._provider; }\n\n /** Create a base layer from its JSON representation.\n * TODO: This, MapLayerSettings.fromJSON, and MapSubLayerSettings.fromJSON should never return undefined.\n * That means they should not accept undefined for props and should define props such that it fully describes the\n * layer - e.g., url and name must be defined.\n */\n public static override fromJSON(props: BaseMapLayerProps): BaseMapLayerSettings {\n const settings = super.fromJSON(props);\n assert(settings instanceof BaseMapLayerSettings);\n if (props.provider)\n settings._provider = BackgroundMapProvider.fromJSON(props.provider);\n\n return settings;\n }\n\n /** Convert this layer to its JSON representation. */\n public override toJSON(): BaseMapLayerProps {\n const props = super.toJSON() as BaseMapLayerProps;\n if (this.provider)\n props.provider = this.provider.toJSON();\n\n return props;\n }\n\n /** @internal */\n public override cloneProps(changedProps: Partial<BaseMapLayerProps>): BaseMapLayerProps {\n const props = super.cloneProps(changedProps) as BaseMapLayerProps;\n\n if (changedProps.provider)\n props.provider = changedProps.provider;\n else if (this.provider)\n props.provider = this.provider.toJSON();\n\n return props;\n }\n\n /** Create a copy of this layer. */\n public override clone(changedProps: Partial<BaseMapLayerProps>): BaseMapLayerSettings {\n const prevUrl = this.url;\n const clone = BaseMapLayerSettings.fromJSON(this.cloneProps(changedProps))!;\n\n if (this.provider && prevUrl !== this.url)\n clone._provider = undefined;\n\n return clone;\n }\n\n /** Create a base layer from a BackgroundMapProvider. */\n public static fromProvider(provider: BackgroundMapProvider, options?: { invisible?: boolean, transparency?: number }): BaseMapLayerSettings {\n let formatId: string, url: string, name: string;\n switch (provider.name) {\n case \"BingProvider\":\n default:\n formatId = \"BingMaps\";\n\n let imagerySet;\n switch (provider.type) {\n case BackgroundMapType.Street:\n imagerySet = \"Road\";\n break;\n case BackgroundMapType.Aerial:\n imagerySet = \"Aerial\";\n break;\n case BackgroundMapType.Hybrid:\n default:\n imagerySet = \"AerialWithLabels\";\n break;\n }\n\n name = `Bing Maps: ${ImageMapLayerSettings.mapTypeName(provider.type)}`;\n url = `https://dev.virtualearth.net/REST/v1/Imagery/Metadata/${imagerySet}?o=json&incl=ImageryProviders&key={bingKey}`;\n break;\n\n case \"MapBoxProvider\":\n formatId = \"MapboxImagery\";\n name = `MapBox: ${ImageMapLayerSettings.mapTypeName(provider.type)}`;\n switch (provider.type) {\n case BackgroundMapType.Street:\n url = \"https://api.mapbox.com/styles/v1/mapbox/streets-v11/tiles/\";\n break;\n case BackgroundMapType.Aerial:\n url = \"https://api.mapbox.com/styles/v1/mapbox/satellite-v9/tiles/\";\n break;\n case BackgroundMapType.Hybrid:\n url = \"https://api.mapbox.com/styles/v1/mapbox/satellite-streets-v11/tiles/\";\n break;\n }\n\n break;\n }\n\n const settings = super.fromJSON({\n name,\n formatId,\n url,\n transparentBackground: false,\n visible: !options?.invisible,\n transparency: options?.transparency,\n });\n\n assert(undefined !== settings);\n assert(settings instanceof BaseMapLayerSettings);\n\n settings._provider = provider;\n return settings;\n }\n\n /** @internal */\n public static fromBackgroundMapProps(props: DeprecatedBackgroundMapProps): BaseMapLayerSettings {\n return this.fromProvider(BackgroundMapProvider.fromBackgroundMapProps(props));\n }\n\n /** @alpha */\n public cloneWithProvider(provider: BackgroundMapProvider): BaseMapLayerSettings {\n return BaseMapLayerSettings.fromProvider(provider, { invisible: !this.visible, transparency: this.transparency });\n }\n}\n"]}
1
+ {"version":3,"file":"MapLayerSettings.js","sourceRoot":"","sources":["../../src/MapLayerSettings.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 MapLayers\r\n */\r\n\r\nimport { assert, Id64String } from \"@itwin/core-bentley\";\r\nimport { BackgroundMapProvider, BackgroundMapProviderProps, BackgroundMapType } from \"./BackgroundMapProvider\";\r\nimport { DeprecatedBackgroundMapProps } from \"./BackgroundMapSettings\";\r\n\r\n/** The current set of supported map layer formats.\r\n * In order to be displayed, a corresponding format must have been registered in the [MapLayerFormatRegistry]($frontend)\r\n * @public\r\n */\r\nexport type ImageryMapLayerFormatId = \"ArcGIS\" | \"BingMaps\" | \"MapboxImagery\" | \"TileURL\" | \"WMS\" | \"WMTS\";\r\n\r\n/** @public */\r\nexport type SubLayerId = string | number;\r\n\r\n/** JSON representation of the settings associated with a map sublayer included within a [[MapLayerProps]].\r\n * A map sub layer represents a set of objects within the layer that can be controlled separately. These\r\n * are produced only from map servers that produce images on demand and are not supported by tiled (cached) servers.\r\n * @see [[MapLayerProps]]\r\n * @public\r\n */\r\nexport interface MapSubLayerProps {\r\n name: string;\r\n title?: string;\r\n visible?: boolean;\r\n id?: SubLayerId;\r\n parent?: SubLayerId;\r\n children?: SubLayerId[];\r\n}\r\n\r\n/** Normalized representation of a [[MapSubLayerProps]] for which values\r\n * have been validated and default values have been applied where explicit values not defined.\r\n * A map sub layer represents a set of objects within the layer that can be controlled separately. These\r\n * are produced only from map servers that produce images on demand and are not supported by tiled (cached) servers.\r\n * This class can represent a hierarchy, in this case a sub layer is visible only if all its ancestors are also visible.\r\n * @see [[MapLayerSettings]]\r\n * @public\r\n */\r\nexport class MapSubLayerSettings {\r\n /** Typically Name is a single word used for machine-to-machine communication while the Title is for the benefit of humans (WMS) */\r\n public readonly name: string;\r\n /** Title. */\r\n public readonly title?: string;\r\n /** If true the sub layer is visible. If part of a hierarchy, a sub layer is visible only if its ancestors are also visible. */\r\n public readonly visible: boolean;\r\n /** A unique string or number that may be used to identify the sub layer (ArcGIS) */\r\n public readonly id: SubLayerId;\r\n /** One or more sublayer children */\r\n public readonly children?: SubLayerId[];\r\n /** sublayer parent. */\r\n public readonly parent?: SubLayerId;\r\n\r\n constructor(name: string, title?: string, visible?: boolean, id?: SubLayerId, parent?: SubLayerId, children?: SubLayerId[]) {\r\n this.name = name;\r\n this.title = title;\r\n this.visible = visible !== undefined && visible;\r\n this.id = (id === undefined) ? this.name : id;\r\n this.parent = parent;\r\n this.children = children;\r\n }\r\n\r\n /** Construct from JSON, performing validation and applying default values for undefined fields. */\r\n public static fromJSON(json: MapSubLayerProps): MapSubLayerSettings {\r\n return new MapSubLayerSettings(json.name, json.title, json.visible, (json.id === json.name) ? undefined : json.id, json.parent, json.children);\r\n }\r\n\r\n public toJSON(): MapSubLayerProps {\r\n const props: MapSubLayerProps = { name: this.name, visible: this.visible };\r\n\r\n if (undefined !== this.id && this.id !== this.name)\r\n props.id = this.id;\r\n\r\n if (undefined !== this.title)\r\n props.title = this.title;\r\n\r\n if (this.children)\r\n props.children = [...this.children];\r\n\r\n if (undefined !== this.parent)\r\n props.parent = this.parent;\r\n\r\n return props;\r\n }\r\n\r\n /** Creating a copy of this MapSubLayer, optionally modifying some if its properties */\r\n public clone(changedProps: Partial<MapSubLayerProps>): MapSubLayerSettings {\r\n if (undefined === changedProps)\r\n return this;\r\n\r\n const props = {\r\n name: undefined !== changedProps.name ? changedProps.name : this.name,\r\n id: undefined !== changedProps.id ? changedProps.id : this.id,\r\n visible: undefined !== changedProps.visible ? changedProps.visible : this.visible,\r\n parent: undefined !== changedProps.parent ? changedProps.parent : this.parent,\r\n children: undefined !== changedProps.children ? changedProps.children.slice() : this.children?.slice(),\r\n title: undefined !== changedProps.title ? changedProps.title : this.title,\r\n };\r\n return MapSubLayerSettings.fromJSON(props)!;\r\n }\r\n\r\n /** @internal */\r\n public displayMatches(other: MapSubLayerSettings): boolean {\r\n return this.name === other.name && this.visible === other.visible;\r\n }\r\n\r\n /** return true if this sublayer is named. */\r\n public get isNamed(): boolean { return this.name.length > 0; }\r\n\r\n /** return true if this sublayer is a leaf (has no children) */\r\n public get isLeaf(): boolean { return this.children === undefined || this.children.length === 0; }\r\n\r\n /** return true if this sublayer is an unnamed group */\r\n public get isUnnamedGroup(): boolean { return !this.isLeaf && !this.isNamed; }\r\n\r\n /** return a string representing this sublayer id (converting to string if underlying id is number) */\r\n public get idString(): string { return (typeof this.id === \"number\") ? this.id.toString(10) : this.id; }\r\n}\r\n\r\n/** JSON representation of properties common to both [[ImageMapLayerProps]] and [[ModelMapLayerProps]].\r\n * @see [[MapImageryProps]]\r\n * @public\r\n */\r\nexport interface CommonMapLayerProps {\r\n /** Controls visibility of layer. Defaults to 'true'. */\r\n visible?: boolean;\r\n\r\n /** A user-friendly name for the layer. */\r\n name: string;\r\n /** A transparency value from 0.0 (fully opaque) to 1.0 (fully transparent) to apply to map graphics when drawing,\r\n * or false to indicate the transparency should not be overridden.\r\n * Default value: 0.\r\n */\r\n transparency?: number;\r\n /** True to indicate background is transparent.\r\n * Default: true.\r\n */\r\n transparentBackground?: boolean;\r\n}\r\n\r\n/** JSON representation of an [[ImageMapLayerSettings]].\r\n * @see [[MapImagerySettings]].\r\n * @see [[ImageryMapLayerFormatId]].\r\n * @public\r\n */\r\nexport interface ImageMapLayerProps extends CommonMapLayerProps {\r\n /** URL */\r\n url: string;\r\n /** Identifies the map layers source.*/\r\n formatId: string;\r\n /** Source layers. If undefined all layers are displayed. */\r\n subLayers?: MapSubLayerProps[];\r\n /** Access Key for the Layer, like a subscription key or access token.\r\n * ###TODO This does not belong in the props object. It should never be persisted.\r\n */\r\n /** @internal */\r\n accessKey?: MapLayerKey;\r\n\r\n /** @internal */\r\n modelId?: never;\r\n}\r\n\r\n/** JSON representation of a [[ModelMapLayerSettings]].\r\n * @see [[MapImagerySettings]].\r\n * @public\r\n */\r\nexport interface ModelMapLayerProps extends CommonMapLayerProps {\r\n /** The Id of the [GeometricModel]($backend) containing the geometry to be drawn by the layer. */\r\n modelId: Id64String;\r\n\r\n /** @internal */\r\n url?: never;\r\n /** @internal */\r\n formatId?: never;\r\n /** @internal */\r\n subLayers?: never;\r\n /** @internal */\r\n accessKey?: never;\r\n}\r\n\r\n/** JSON representation of a [[MapLayerSettings]].\r\n * @see [[MapImagerySettings]].\r\n * @public\r\n */\r\nexport type MapLayerProps = ImageMapLayerProps | ModelMapLayerProps;\r\n\r\n/**\r\n * stores key-value pair to be added to all requests made involving map layer.\r\n * @public\r\n */\r\nexport interface MapLayerKey {\r\n key: string;\r\n value: string;\r\n}\r\n\r\n/** Abstract base class for normalized representation of a [[MapLayerProps]] for which values have been validated and default values have been applied where explicit values not defined.\r\n * This class is extended by [[ImageMapLayerSettings]] and [ModelMapLayerSettings]] to create the settings for image and model based layers.\r\n * One or more map layers may be included within [[MapImagerySettings]] object.\r\n * @see [[MapImagerySettings]]\r\n * @public\r\n */\r\nexport abstract class MapLayerSettings {\r\n public readonly visible: boolean;\r\n\r\n public readonly name: string;\r\n public readonly transparency: number;\r\n public readonly transparentBackground: boolean;\r\n public abstract get allSubLayersInvisible(): boolean;\r\n public abstract clone(changedProps: Partial<MapLayerProps>): MapLayerSettings;\r\n public abstract toJSON(): MapLayerProps;\r\n\r\n /** @internal */\r\n protected constructor(name: string, visible = true, transparency: number = 0, transparentBackground = true) {\r\n this.name = name;\r\n this.visible = visible;\r\n this.transparentBackground = transparentBackground;\r\n this.transparency = transparency;\r\n }\r\n\r\n /** Create a map layer settings from its JSON representation. */\r\n public static fromJSON(props: MapLayerProps): MapLayerSettings {\r\n return undefined !== props.modelId ? ModelMapLayerSettings.fromJSON(props) : ImageMapLayerSettings.fromJSON(props);\r\n }\r\n\r\n /** @internal */\r\n protected _toJSON(): CommonMapLayerProps {\r\n const props: CommonMapLayerProps = {\r\n name: this.name,\r\n visible: this.visible,\r\n };\r\n\r\n if (0 !== this.transparency)\r\n props.transparency = this.transparency;\r\n\r\n if (this.transparentBackground === false)\r\n props.transparentBackground = this.transparentBackground;\r\n\r\n return props;\r\n }\r\n\r\n /** @internal */\r\n protected cloneProps(changedProps: Partial<MapLayerProps>): CommonMapLayerProps {\r\n return {\r\n name: undefined !== changedProps.name ? changedProps.name : this.name,\r\n visible: undefined !== changedProps.visible ? changedProps.visible : this.visible,\r\n transparency: undefined !== changedProps.transparency ? changedProps.transparency : this.transparency,\r\n transparentBackground: undefined !== changedProps.transparentBackground ? changedProps.transparentBackground : this.transparentBackground,\r\n };\r\n }\r\n\r\n /** @internal */\r\n public displayMatches(other: MapLayerSettings): boolean {\r\n return this.name === other.name && this.visible === other.visible && this.transparency === other.transparency && this.transparentBackground === other.transparentBackground;\r\n }\r\n\r\n /** Return a unique string identifying the layers source... The URL for image layer or modelID for model layer */\r\n public abstract get source(): string;\r\n\r\n /** @internal */\r\n public matchesNameAndSource(name: string, source: string): boolean {\r\n return this.name === name && this.source === source;\r\n }\r\n}\r\n\r\n/** Normalized representation of a [[ImageMapLayerProps]] for which values have been validated and default values have been applied where explicit values not defined.\r\n * Image map layers are created from servers that produce images that represent map tiles. Map layers map also be represented by models.\r\n * One or more map layers may be included within [[MapImagerySettings]] object.\r\n * @see [[MapImagerySettings]]\r\n * @see [[ModelMapLayerSettings]] for model based map layer settings.\r\n * @public\r\n */\r\nexport class ImageMapLayerSettings extends MapLayerSettings {\r\n public readonly formatId: string;\r\n public readonly url: string;\r\n public userName?: string;\r\n public password?: string;\r\n public accessKey?: MapLayerKey;\r\n public readonly subLayers: MapSubLayerSettings[];\r\n public override get source(): string { return this.url; }\r\n\r\n /** @internal */\r\n protected constructor(props: ImageMapLayerProps) {\r\n const transparentBackground = props.transparentBackground ?? true;\r\n super(props.name, props.visible, props.transparency, transparentBackground);\r\n\r\n this.formatId = props.formatId;\r\n this.url = props.url;\r\n this.accessKey = props.accessKey;\r\n this.subLayers = [];\r\n if (!props.subLayers)\r\n return;\r\n\r\n for (const subLayerProps of props.subLayers) {\r\n const subLayer = MapSubLayerSettings.fromJSON(subLayerProps);\r\n if (subLayer)\r\n this.subLayers.push(subLayer);\r\n }\r\n }\r\n\r\n public static override fromJSON(props: ImageMapLayerProps): ImageMapLayerSettings {\r\n return new this(props);\r\n }\r\n\r\n /** return JSON representation of this MapLayerSettings object */\r\n public override toJSON(): ImageMapLayerProps {\r\n const props = super._toJSON() as ImageMapLayerProps;\r\n props.url = this.url;\r\n props.formatId = this.formatId;\r\n\r\n if (this.subLayers.length > 0)\r\n props.subLayers = this.subLayers.map((x) => x.toJSON());\r\n\r\n return props;\r\n }\r\n\r\n /** Create a copy of this MapLayerSettings, optionally modifying some of its properties.\r\n * @param changedProps JSON representation of the properties to change.\r\n * @returns A MapLayerSettings with all of its properties set to match those of `this`, except those explicitly defined in `changedProps`.\r\n */\r\n public clone(changedProps: Partial<ImageMapLayerProps>): ImageMapLayerSettings {\r\n const clone = ImageMapLayerSettings.fromJSON(this.cloneProps(changedProps));\r\n\r\n // Clone members not part of MapLayerProps\r\n clone.userName = this.userName;\r\n clone.password = this.password;\r\n clone.accessKey = this.accessKey;\r\n\r\n return clone;\r\n }\r\n\r\n /** @internal */\r\n protected override cloneProps(changedProps: Partial<ImageMapLayerProps>): ImageMapLayerProps {\r\n const props = super.cloneProps(changedProps) as ImageMapLayerProps;\r\n\r\n props.formatId = changedProps.formatId ?? this.formatId;\r\n props.url = changedProps.url ?? this.url;\r\n props.accessKey = changedProps.accessKey ?? this.accessKey;\r\n props.subLayers = changedProps.subLayers ?? this.subLayers;\r\n\r\n return props;\r\n }\r\n\r\n /** @internal */\r\n public override displayMatches(other: MapLayerSettings): boolean {\r\n if (! (other instanceof ImageMapLayerSettings) || !super.displayMatches(other))\r\n return false;\r\n\r\n if (this.userName !== other.userName || this.password !== other.password || this.subLayers.length !== other.subLayers.length) {\r\n return false;\r\n }\r\n\r\n for (let i = 0; i < this.subLayers.length; i++)\r\n if (!this.subLayers[i].displayMatches(other.subLayers[i]))\r\n return false;\r\n\r\n return true;\r\n }\r\n\r\n /** Return a sublayer matching id -- or undefined if not found */\r\n public subLayerById(id?: SubLayerId): MapSubLayerSettings | undefined {\r\n return id === undefined ? undefined : this.subLayers.find((subLayer) => subLayer.id === id);\r\n }\r\n\r\n private hasInvisibleAncestors(subLayer?: MapSubLayerSettings): boolean {\r\n if (!subLayer || !subLayer.parent)\r\n return false;\r\n\r\n const parent = this.subLayerById(subLayer.parent);\r\n if (!parent)\r\n return false;\r\n\r\n // Visibility of named group has no impact on the visibility of children (only unnamed group does)\r\n // i.e For WMS, its should be possible to request a child layer when its parent is not visible (if the parent is also named)\r\n return (!parent.visible && !parent.isNamed) || this.hasInvisibleAncestors(parent);\r\n }\r\n\r\n /** Return true if sublayer is visible -- testing ancestors for visibility if they exist. */\r\n public isSubLayerVisible(subLayer: MapSubLayerSettings): boolean {\r\n if (!subLayer.visible)\r\n return false;\r\n\r\n return !this.hasInvisibleAncestors(subLayer);\r\n }\r\n\r\n /** Return true if all sublayers are invisible. */\r\n public get allSubLayersInvisible(): boolean {\r\n if (this.subLayers.length === 0)\r\n return false;\r\n\r\n return this.subLayers.every((subLayer) => (subLayer.isUnnamedGroup || !this.isSubLayerVisible(subLayer)));\r\n }\r\n\r\n /** Return the children for a sublayer */\r\n public getSubLayerChildren(subLayer: MapSubLayerSettings): MapSubLayerSettings[] | undefined {\r\n if (!subLayer.children)\r\n return undefined;\r\n\r\n const children = new Array<MapSubLayerSettings>();\r\n subLayer.children.forEach((childId) => {\r\n const child = this.subLayerById(childId);\r\n if (child !== undefined)\r\n children.push(child);\r\n });\r\n\r\n return children;\r\n }\r\n\r\n /** @internal */\r\n protected static mapTypeName(type: BackgroundMapType) { // TBD.. Localization.\r\n switch (type) {\r\n case BackgroundMapType.Aerial:\r\n return \"Aerial Imagery\";\r\n default:\r\n case BackgroundMapType.Hybrid:\r\n return \"Aerial Imagery with labels\";\r\n case BackgroundMapType.Street:\r\n return \"Streets\";\r\n }\r\n }\r\n\r\n public setCredentials(userName?: string, password?: string) {\r\n this.userName = userName;\r\n this.password = password;\r\n }\r\n}\r\n\r\n/** Normalized representation of a [[ModelMapLayerProps]] for which values have been validated and default values have been applied where explicit values not defined.\r\n * Model map layers are produced from models, typically from two dimensional geometry that may originate in a GIS system.\r\n * One or more map layers may be included within [[MapImagerySettings]] object.\r\n * @see [[MapImagerySettings]]\r\n * @see [[ImageMapLayerSettings]] for image based map layer settings.\r\n * @public\r\n */\r\nexport class ModelMapLayerSettings extends MapLayerSettings {\r\n public readonly modelId: Id64String;\r\n public override get source(): string { return this.modelId; }\r\n\r\n /** @internal */\r\n protected constructor(modelId: Id64String, name: string, visible = true,\r\n transparency: number = 0, transparentBackground = true) {\r\n super(name, visible, transparency, transparentBackground);\r\n this.modelId = modelId;\r\n }\r\n\r\n /** Construct from JSON, performing validation and applying default values for undefined fields. */\r\n public static override fromJSON(json: ModelMapLayerProps): ModelMapLayerSettings {\r\n const transparentBackground = (json.transparentBackground === undefined) ? true : json.transparentBackground;\r\n return new this(json.modelId, json.name, json.visible, json.transparency, transparentBackground);\r\n }\r\n\r\n /** return JSON representation of this MapLayerSettings object */\r\n public override toJSON(): ModelMapLayerProps {\r\n const props = super._toJSON() as ModelMapLayerProps;\r\n props.modelId = this.modelId;\r\n return props;\r\n }\r\n\r\n /** Create a copy of this MapLayerSettings, optionally modifying some of its properties.\r\n * @param changedProps JSON representation of the properties to change.\r\n * @returns A MapLayerSettings with all of its properties set to match those of `this`, except those explicitly defined in `changedProps`.\r\n */\r\n public clone(changedProps: Partial<ModelMapLayerProps>): ModelMapLayerSettings {\r\n return ModelMapLayerSettings.fromJSON(this.cloneProps(changedProps));\r\n }\r\n\r\n /** @internal */\r\n protected override cloneProps(changedProps: Partial<ModelMapLayerProps>): ModelMapLayerProps {\r\n const props = super.cloneProps(changedProps) as ModelMapLayerProps;\r\n props.modelId = changedProps.modelId ?? this.modelId;\r\n return props;\r\n }\r\n\r\n /** @internal */\r\n public override displayMatches(other: MapLayerSettings): boolean {\r\n if (!(other instanceof ModelMapLayerSettings) || !super.displayMatches(other))\r\n return false;\r\n\r\n return this.modelId === other.modelId;\r\n }\r\n\r\n /** Return true if all sublayers are invisible (always false as model layers do not include sublayers). */\r\n public get allSubLayersInvisible(): boolean {\r\n return false;\r\n }\r\n}\r\n\r\n/** JSON representation of a [[BaseMapLayerSettings]].\r\n * @public\r\n */\r\nexport interface BaseMapLayerProps extends ImageMapLayerProps {\r\n provider?: BackgroundMapProviderProps;\r\n}\r\n\r\n/** A [[ImageMapLayerSettings]] that can serve as the base layer for a [[MapImagerySettings]].\r\n * The base layer supports all of the same options as any other layer, but also allows for simplified configuration based\r\n * on a small set of known supported [[BackgroundMapProvider]]s like [Bing Maps](https://www.microsoft.com/en-us/maps).\r\n * If the base layer was configured from such a provider, that information will be preserved and can be queried; this allows\r\n * the imagery provider and/or type to be easily modified.\r\n * @see [[MapImagerySettings.backgroundBase]].\r\n * @public\r\n */\r\nexport class BaseMapLayerSettings extends ImageMapLayerSettings {\r\n private _provider?: BackgroundMapProvider;\r\n\r\n /** The provider from which this base layer was configured, if any. */\r\n public get provider(): BackgroundMapProvider | undefined { return this._provider; }\r\n\r\n /** Create a base layer from its JSON representation.\r\n * TODO: This, MapLayerSettings.fromJSON, and MapSubLayerSettings.fromJSON should never return undefined.\r\n * That means they should not accept undefined for props and should define props such that it fully describes the\r\n * layer - e.g., url and name must be defined.\r\n */\r\n public static override fromJSON(props: BaseMapLayerProps): BaseMapLayerSettings {\r\n const settings = super.fromJSON(props);\r\n assert(settings instanceof BaseMapLayerSettings);\r\n if (props.provider)\r\n settings._provider = BackgroundMapProvider.fromJSON(props.provider);\r\n\r\n return settings;\r\n }\r\n\r\n /** Convert this layer to its JSON representation. */\r\n public override toJSON(): BaseMapLayerProps {\r\n const props = super.toJSON() as BaseMapLayerProps;\r\n if (this.provider)\r\n props.provider = this.provider.toJSON();\r\n\r\n return props;\r\n }\r\n\r\n /** @internal */\r\n public override cloneProps(changedProps: Partial<BaseMapLayerProps>): BaseMapLayerProps {\r\n const props = super.cloneProps(changedProps) as BaseMapLayerProps;\r\n\r\n if (changedProps.provider)\r\n props.provider = changedProps.provider;\r\n else if (this.provider)\r\n props.provider = this.provider.toJSON();\r\n\r\n return props;\r\n }\r\n\r\n /** Create a copy of this layer. */\r\n public override clone(changedProps: Partial<BaseMapLayerProps>): BaseMapLayerSettings {\r\n const prevUrl = this.url;\r\n const clone = BaseMapLayerSettings.fromJSON(this.cloneProps(changedProps))!;\r\n\r\n if (this.provider && prevUrl !== this.url)\r\n clone._provider = undefined;\r\n\r\n return clone;\r\n }\r\n\r\n /** Create a base layer from a BackgroundMapProvider. */\r\n public static fromProvider(provider: BackgroundMapProvider, options?: { invisible?: boolean, transparency?: number }): BaseMapLayerSettings {\r\n let formatId: string, url: string, name: string;\r\n switch (provider.name) {\r\n case \"BingProvider\":\r\n default:\r\n formatId = \"BingMaps\";\r\n\r\n let imagerySet;\r\n switch (provider.type) {\r\n case BackgroundMapType.Street:\r\n imagerySet = \"Road\";\r\n break;\r\n case BackgroundMapType.Aerial:\r\n imagerySet = \"Aerial\";\r\n break;\r\n case BackgroundMapType.Hybrid:\r\n default:\r\n imagerySet = \"AerialWithLabels\";\r\n break;\r\n }\r\n\r\n name = `Bing Maps: ${ImageMapLayerSettings.mapTypeName(provider.type)}`;\r\n url = `https://dev.virtualearth.net/REST/v1/Imagery/Metadata/${imagerySet}?o=json&incl=ImageryProviders&key={bingKey}`;\r\n break;\r\n\r\n case \"MapBoxProvider\":\r\n formatId = \"MapboxImagery\";\r\n name = `MapBox: ${ImageMapLayerSettings.mapTypeName(provider.type)}`;\r\n switch (provider.type) {\r\n case BackgroundMapType.Street:\r\n url = \"https://api.mapbox.com/styles/v1/mapbox/streets-v11/tiles/\";\r\n break;\r\n case BackgroundMapType.Aerial:\r\n url = \"https://api.mapbox.com/styles/v1/mapbox/satellite-v9/tiles/\";\r\n break;\r\n case BackgroundMapType.Hybrid:\r\n url = \"https://api.mapbox.com/styles/v1/mapbox/satellite-streets-v11/tiles/\";\r\n break;\r\n }\r\n\r\n break;\r\n }\r\n\r\n const settings = super.fromJSON({\r\n name,\r\n formatId,\r\n url,\r\n transparentBackground: false,\r\n visible: !options?.invisible,\r\n transparency: options?.transparency,\r\n });\r\n\r\n assert(undefined !== settings);\r\n assert(settings instanceof BaseMapLayerSettings);\r\n\r\n settings._provider = provider;\r\n return settings;\r\n }\r\n\r\n /** @internal */\r\n public static fromBackgroundMapProps(props: DeprecatedBackgroundMapProps): BaseMapLayerSettings {\r\n return this.fromProvider(BackgroundMapProvider.fromBackgroundMapProps(props));\r\n }\r\n\r\n /** @alpha */\r\n public cloneWithProvider(provider: BackgroundMapProvider): BaseMapLayerSettings {\r\n return BaseMapLayerSettings.fromProvider(provider, { invisible: !this.visible, transparency: this.transparency });\r\n }\r\n}\r\n"]}
@@ -1,65 +1,65 @@
1
- /** @packageDocumentation
2
- * @module Geometry
3
- */
4
- import { BentleyStatus, CompressedId64Set, Id64Array, Id64String } from "@itwin/core-bentley";
5
- import { XYZProps } from "@itwin/core-geometry";
6
- /** Specify whether to accumulate volumes, areas, or lengths for the supplied elements.
7
- * @public
8
- * @extensions
9
- */
10
- export declare enum MassPropertiesOperation {
11
- /** Return lengths for open paths and planar regions. */
12
- AccumulateLengths = 0,
13
- /** Return areas and perimeters for solid and surface geometry. */
14
- AccumulateAreas = 1,
15
- /** Return volumes and areas for solid geometry. */
16
- AccumulateVolumes = 2
17
- }
18
- /** Information required to request mass properties for elements from the front end to the back end.
19
- * @public
20
- * @extensions
21
- */
22
- export interface MassPropertiesRequestProps {
23
- operation: MassPropertiesOperation;
24
- candidates?: Id64Array;
25
- }
26
- /** Information required to request mass properties for each element separately from the front end to the back end.
27
- * @public
28
- */
29
- export interface MassPropertiesPerCandidateRequestProps {
30
- operations: MassPropertiesOperation[];
31
- candidates: CompressedId64Set;
32
- }
33
- /** Information returned from the back end to the front end holding the result of the mass properties calculation.
34
- * @public
35
- * @extensions
36
- */
37
- export interface MassPropertiesResponseProps {
38
- /** Success if requested [[MassPropertiesOperation]] could be evaluated for the specified elements */
39
- status: BentleyStatus;
40
- /** Volume of solids when [[MassPropertiesOperation.AccumulateVolumes]] requested */
41
- volume?: number;
42
- /** Surface area of solids and surfaces when [[MassPropertiesOperation.AccumulateVolumes]] or [[MassPropertiesOperation.AccumulateAreas]] requested */
43
- area?: number;
44
- /** Perimeter of surfaces and planar regions when [[MassPropertiesOperation.AccumulateAreas]] requested */
45
- perimeter?: number;
46
- /** Length of curves or perimeter of planar regions when [[MassPropertiesOperation.AccumulateAreas]] or [[MassPropertiesOperation.AccumulateLength]] requested */
47
- length?: number;
48
- /** Centroid of geometry */
49
- centroid?: XYZProps;
50
- /** Product of inertia with respect to xy plane */
51
- ixy?: number;
52
- /** Product of inertia with respect to xz plane */
53
- ixz?: number;
54
- /** Product of inertia with respect to yz plane */
55
- iyz?: number;
56
- /** Moments of inertia */
57
- moments?: XYZProps;
58
- }
59
- /** Information returned from the back end to the front end holding the result of the mass properties calculation for a single candidate.
60
- * @public
61
- */
62
- export interface MassPropertiesPerCandidateResponseProps extends MassPropertiesResponseProps {
63
- candidate: Id64String;
64
- }
1
+ /** @packageDocumentation
2
+ * @module Geometry
3
+ */
4
+ import { BentleyStatus, CompressedId64Set, Id64Array, Id64String } from "@itwin/core-bentley";
5
+ import { XYZProps } from "@itwin/core-geometry";
6
+ /** Specify whether to accumulate volumes, areas, or lengths for the supplied elements.
7
+ * @public
8
+ * @extensions
9
+ */
10
+ export declare enum MassPropertiesOperation {
11
+ /** Return lengths for open paths and planar regions. */
12
+ AccumulateLengths = 0,
13
+ /** Return areas and perimeters for solid and surface geometry. */
14
+ AccumulateAreas = 1,
15
+ /** Return volumes and areas for solid geometry. */
16
+ AccumulateVolumes = 2
17
+ }
18
+ /** Information required to request mass properties for elements from the front end to the back end.
19
+ * @public
20
+ * @extensions
21
+ */
22
+ export interface MassPropertiesRequestProps {
23
+ operation: MassPropertiesOperation;
24
+ candidates?: Id64Array;
25
+ }
26
+ /** Information required to request mass properties for each element separately from the front end to the back end.
27
+ * @public
28
+ */
29
+ export interface MassPropertiesPerCandidateRequestProps {
30
+ operations: MassPropertiesOperation[];
31
+ candidates: CompressedId64Set;
32
+ }
33
+ /** Information returned from the back end to the front end holding the result of the mass properties calculation.
34
+ * @public
35
+ * @extensions
36
+ */
37
+ export interface MassPropertiesResponseProps {
38
+ /** Success if requested [[MassPropertiesOperation]] could be evaluated for the specified elements */
39
+ status: BentleyStatus;
40
+ /** Volume of solids when [[MassPropertiesOperation.AccumulateVolumes]] requested */
41
+ volume?: number;
42
+ /** Surface area of solids and surfaces when [[MassPropertiesOperation.AccumulateVolumes]] or [[MassPropertiesOperation.AccumulateAreas]] requested */
43
+ area?: number;
44
+ /** Perimeter of surfaces and planar regions when [[MassPropertiesOperation.AccumulateAreas]] requested */
45
+ perimeter?: number;
46
+ /** Length of curves or perimeter of planar regions when [[MassPropertiesOperation.AccumulateAreas]] or [[MassPropertiesOperation.AccumulateLength]] requested */
47
+ length?: number;
48
+ /** Centroid of geometry */
49
+ centroid?: XYZProps;
50
+ /** Product of inertia with respect to xy plane */
51
+ ixy?: number;
52
+ /** Product of inertia with respect to xz plane */
53
+ ixz?: number;
54
+ /** Product of inertia with respect to yz plane */
55
+ iyz?: number;
56
+ /** Moments of inertia */
57
+ moments?: XYZProps;
58
+ }
59
+ /** Information returned from the back end to the front end holding the result of the mass properties calculation for a single candidate.
60
+ * @public
61
+ */
62
+ export interface MassPropertiesPerCandidateResponseProps extends MassPropertiesResponseProps {
63
+ candidate: Id64String;
64
+ }
65
65
  //# sourceMappingURL=MassProperties.d.ts.map
@@ -1,24 +1,24 @@
1
- "use strict";
2
- /*---------------------------------------------------------------------------------------------
3
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
4
- * See LICENSE.md in the project root for license terms and full copyright notice.
5
- *--------------------------------------------------------------------------------------------*/
6
- /** @packageDocumentation
7
- * @module Geometry
8
- */
9
- Object.defineProperty(exports, "__esModule", { value: true });
10
- exports.MassPropertiesOperation = void 0;
11
- /** Specify whether to accumulate volumes, areas, or lengths for the supplied elements.
12
- * @public
13
- * @extensions
14
- */
15
- var MassPropertiesOperation;
16
- (function (MassPropertiesOperation) {
17
- /** Return lengths for open paths and planar regions. */
18
- MassPropertiesOperation[MassPropertiesOperation["AccumulateLengths"] = 0] = "AccumulateLengths";
19
- /** Return areas and perimeters for solid and surface geometry. */
20
- MassPropertiesOperation[MassPropertiesOperation["AccumulateAreas"] = 1] = "AccumulateAreas";
21
- /** Return volumes and areas for solid geometry. */
22
- MassPropertiesOperation[MassPropertiesOperation["AccumulateVolumes"] = 2] = "AccumulateVolumes";
23
- })(MassPropertiesOperation = exports.MassPropertiesOperation || (exports.MassPropertiesOperation = {}));
1
+ "use strict";
2
+ /*---------------------------------------------------------------------------------------------
3
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
4
+ * See LICENSE.md in the project root for license terms and full copyright notice.
5
+ *--------------------------------------------------------------------------------------------*/
6
+ /** @packageDocumentation
7
+ * @module Geometry
8
+ */
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.MassPropertiesOperation = void 0;
11
+ /** Specify whether to accumulate volumes, areas, or lengths for the supplied elements.
12
+ * @public
13
+ * @extensions
14
+ */
15
+ var MassPropertiesOperation;
16
+ (function (MassPropertiesOperation) {
17
+ /** Return lengths for open paths and planar regions. */
18
+ MassPropertiesOperation[MassPropertiesOperation["AccumulateLengths"] = 0] = "AccumulateLengths";
19
+ /** Return areas and perimeters for solid and surface geometry. */
20
+ MassPropertiesOperation[MassPropertiesOperation["AccumulateAreas"] = 1] = "AccumulateAreas";
21
+ /** Return volumes and areas for solid geometry. */
22
+ MassPropertiesOperation[MassPropertiesOperation["AccumulateVolumes"] = 2] = "AccumulateVolumes";
23
+ })(MassPropertiesOperation = exports.MassPropertiesOperation || (exports.MassPropertiesOperation = {}));
24
24
  //# sourceMappingURL=MassProperties.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MassProperties.js","sourceRoot":"","sources":["../../src/MassProperties.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAKH;;;GAGG;AACH,IAAY,uBAOX;AAPD,WAAY,uBAAuB;IACjC,wDAAwD;IACxD,+FAAqB,CAAA;IACrB,kEAAkE;IAClE,2FAAmB,CAAA;IACnB,mDAAmD;IACnD,+FAAqB,CAAA;AACvB,CAAC,EAPW,uBAAuB,GAAvB,+BAAuB,KAAvB,+BAAuB,QAOlC","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 Geometry\n */\n\nimport { BentleyStatus, CompressedId64Set, Id64Array, Id64String } from \"@itwin/core-bentley\";\nimport { XYZProps } from \"@itwin/core-geometry\";\n\n/** Specify whether to accumulate volumes, areas, or lengths for the supplied elements.\n * @public\n * @extensions\n */\nexport enum MassPropertiesOperation {\n /** Return lengths for open paths and planar regions. */\n AccumulateLengths = 0,\n /** Return areas and perimeters for solid and surface geometry. */\n AccumulateAreas = 1,\n /** Return volumes and areas for solid geometry. */\n AccumulateVolumes = 2,\n}\n\n/** Information required to request mass properties for elements from the front end to the back end.\n * @public\n * @extensions\n */\nexport interface MassPropertiesRequestProps {\n operation: MassPropertiesOperation;\n candidates?: Id64Array;\n}\n\n/** Information required to request mass properties for each element separately from the front end to the back end.\n * @public\n */\nexport interface MassPropertiesPerCandidateRequestProps {\n operations: MassPropertiesOperation[];\n candidates: CompressedId64Set;\n}\n\n/** Information returned from the back end to the front end holding the result of the mass properties calculation.\n * @public\n * @extensions\n */\nexport interface MassPropertiesResponseProps {\n /** Success if requested [[MassPropertiesOperation]] could be evaluated for the specified elements */\n status: BentleyStatus;\n /** Volume of solids when [[MassPropertiesOperation.AccumulateVolumes]] requested */\n volume?: number;\n /** Surface area of solids and surfaces when [[MassPropertiesOperation.AccumulateVolumes]] or [[MassPropertiesOperation.AccumulateAreas]] requested */\n area?: number;\n /** Perimeter of surfaces and planar regions when [[MassPropertiesOperation.AccumulateAreas]] requested */\n perimeter?: number;\n /** Length of curves or perimeter of planar regions when [[MassPropertiesOperation.AccumulateAreas]] or [[MassPropertiesOperation.AccumulateLength]] requested */\n length?: number;\n /** Centroid of geometry */\n centroid?: XYZProps;\n /** Product of inertia with respect to xy plane */\n ixy?: number;\n /** Product of inertia with respect to xz plane */\n ixz?: number;\n /** Product of inertia with respect to yz plane */\n iyz?: number;\n /** Moments of inertia */\n moments?: XYZProps;\n}\n\n/** Information returned from the back end to the front end holding the result of the mass properties calculation for a single candidate.\n * @public\n */\nexport interface MassPropertiesPerCandidateResponseProps extends MassPropertiesResponseProps {\n candidate: Id64String;\n}\n"]}
1
+ {"version":3,"file":"MassProperties.js","sourceRoot":"","sources":["../../src/MassProperties.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAKH;;;GAGG;AACH,IAAY,uBAOX;AAPD,WAAY,uBAAuB;IACjC,wDAAwD;IACxD,+FAAqB,CAAA;IACrB,kEAAkE;IAClE,2FAAmB,CAAA;IACnB,mDAAmD;IACnD,+FAAqB,CAAA;AACvB,CAAC,EAPW,uBAAuB,GAAvB,+BAAuB,KAAvB,+BAAuB,QAOlC","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 Geometry\r\n */\r\n\r\nimport { BentleyStatus, CompressedId64Set, Id64Array, Id64String } from \"@itwin/core-bentley\";\r\nimport { XYZProps } from \"@itwin/core-geometry\";\r\n\r\n/** Specify whether to accumulate volumes, areas, or lengths for the supplied elements.\r\n * @public\r\n * @extensions\r\n */\r\nexport enum MassPropertiesOperation {\r\n /** Return lengths for open paths and planar regions. */\r\n AccumulateLengths = 0,\r\n /** Return areas and perimeters for solid and surface geometry. */\r\n AccumulateAreas = 1,\r\n /** Return volumes and areas for solid geometry. */\r\n AccumulateVolumes = 2,\r\n}\r\n\r\n/** Information required to request mass properties for elements from the front end to the back end.\r\n * @public\r\n * @extensions\r\n */\r\nexport interface MassPropertiesRequestProps {\r\n operation: MassPropertiesOperation;\r\n candidates?: Id64Array;\r\n}\r\n\r\n/** Information required to request mass properties for each element separately from the front end to the back end.\r\n * @public\r\n */\r\nexport interface MassPropertiesPerCandidateRequestProps {\r\n operations: MassPropertiesOperation[];\r\n candidates: CompressedId64Set;\r\n}\r\n\r\n/** Information returned from the back end to the front end holding the result of the mass properties calculation.\r\n * @public\r\n * @extensions\r\n */\r\nexport interface MassPropertiesResponseProps {\r\n /** Success if requested [[MassPropertiesOperation]] could be evaluated for the specified elements */\r\n status: BentleyStatus;\r\n /** Volume of solids when [[MassPropertiesOperation.AccumulateVolumes]] requested */\r\n volume?: number;\r\n /** Surface area of solids and surfaces when [[MassPropertiesOperation.AccumulateVolumes]] or [[MassPropertiesOperation.AccumulateAreas]] requested */\r\n area?: number;\r\n /** Perimeter of surfaces and planar regions when [[MassPropertiesOperation.AccumulateAreas]] requested */\r\n perimeter?: number;\r\n /** Length of curves or perimeter of planar regions when [[MassPropertiesOperation.AccumulateAreas]] or [[MassPropertiesOperation.AccumulateLength]] requested */\r\n length?: number;\r\n /** Centroid of geometry */\r\n centroid?: XYZProps;\r\n /** Product of inertia with respect to xy plane */\r\n ixy?: number;\r\n /** Product of inertia with respect to xz plane */\r\n ixz?: number;\r\n /** Product of inertia with respect to yz plane */\r\n iyz?: number;\r\n /** Moments of inertia */\r\n moments?: XYZProps;\r\n}\r\n\r\n/** Information returned from the back end to the front end holding the result of the mass properties calculation for a single candidate.\r\n * @public\r\n */\r\nexport interface MassPropertiesPerCandidateResponseProps extends MassPropertiesResponseProps {\r\n candidate: Id64String;\r\n}\r\n"]}
@@ -1,119 +1,119 @@
1
- /** @packageDocumentation
2
- * @module Rendering
3
- */
4
- import { Id64String } from "@itwin/core-bentley";
5
- import { DefinitionElementProps } from "./ElementProps";
6
- import { TextureMapping } from "./TextureMapping";
7
- /** Describes a color as an array of three numbers ranging from 0 to 1 where the first entry corresponds to the color's red component,
8
- * the second to green, and the third to blue.
9
- * @see usage in [[RenderMaterialAssetProps]].
10
- * @public
11
- * @extensions
12
- */
13
- export declare type RgbFactorProps = number[];
14
- /** A 2d point specified as an array of 2 numbers [x, y].
15
- * @see usage in [[TextureMapProps]].
16
- * @public
17
- * @extensions
18
- */
19
- export declare type Point2dProps = number[];
20
- /** Describes the units in which a [[TextureMapProps]]' scale is expressed.
21
- * @public
22
- * @extensions
23
- */
24
- export declare enum TextureMapUnits {
25
- /** Indicates the scale has no units. */
26
- Relative = 0,
27
- Meters = 3,
28
- Millimeters = 4,
29
- Feet = 5,
30
- Inches = 6
31
- }
32
- /** As part of a [[RenderMaterialAssetProps]], describes how to map a [[RenderTexture]]'s image to the triangles of a mesh to which the material is applied.
33
- * @public
34
- * @extensions
35
- */
36
- export interface TextureMapProps {
37
- /** Angle in degrees to rotate texture when applying; defaults to 0.0 if undefined */
38
- pattern_angle?: number;
39
- /** If true, flip the pattern map in U; if undefined, defaults to false */
40
- pattern_u_flip?: boolean;
41
- /** If true, flip the pattern map in V; if undefined, defaults to false */
42
- pattern_flip?: boolean;
43
- /** X, Y scale to apply to the pattern map; if undefined, defaults to {0,0}, which is almost never useful. */
44
- pattern_scale?: Point2dProps;
45
- /** X, Y offset to apply to the pattern map; if undefined, defaults to {0,0} */
46
- pattern_offset?: Point2dProps;
47
- /** Units to use when applying the scaling; if undefined, defaults to [[TextureMapUnits.Relative]] */
48
- pattern_scalemode?: TextureMapUnits;
49
- /** Mapping mode to use for the texture application; if undefined, defaults to [[TextureMapping.Mode.Parametric]] */
50
- pattern_mapping?: TextureMapping.Mode;
51
- /** Weight at which to combine diffuse image and color; if undefined, defaults to 1.0 */
52
- pattern_weight?: number;
53
- /** The Id of the persistent [Texture]($backend) element defining the texture image. */
54
- TextureId: Id64String;
55
- }
56
- /** Describes the graphical properties of a [RenderMaterialElement]($backend) as part of a [[RenderMaterialProps]].
57
- * @public
58
- * @extensions
59
- */
60
- export interface RenderMaterialAssetProps {
61
- /** If true, this material has a fill/diffuse color; if undefined, defaults to false */
62
- HasBaseColor?: boolean;
63
- /** Surface color used for fill or diffuse illumination; if undefined, defaults to black */
64
- color?: RgbFactorProps;
65
- /** If true, this material has a specular color; if undefined, defaults to false */
66
- HasSpecularColor?: boolean;
67
- /** Surface color used for specular illumination; if undefined, defaults to black */
68
- specular_color?: RgbFactorProps;
69
- /** If true, this material has a specular exponent; if undefined, defaults to false */
70
- HasFinish?: boolean;
71
- /** Specular exponent (surface shininess); range is 0 to 128; if undefined, defaults to 15.0 * 0.9 */
72
- finish?: number;
73
- /** If true, this material has surface transparency; if undefined, defaults to false */
74
- HasTransmit?: boolean;
75
- /** Surface transparency; if undefined, defaults to 0.0 */
76
- transmit?: number;
77
- /** If true, this material has a value for diffuse reflectivity; if undefined, defaults to false */
78
- HasDiffuse?: boolean;
79
- /** Surface diffuse reflectivity; if undefined, defaults to 0.6 */
80
- diffuse?: number;
81
- /** If true, this material has a value for specular reflectivity; if undefined, defaults to false. If false, specular value is actually set to 0.0 */
82
- HasSpecular?: boolean;
83
- /** Surface specular reflectivity; if undefined, defaults to 0.4 */
84
- specular?: number;
85
- /** If true, this material has a value for environmental reflectivity; if undefined, defaults to false */
86
- HasReflect?: boolean;
87
- /** Surface environmental reflectivity; stored as fraction of specular in V8 material settings; if undefined defaults to 0.0 */
88
- reflect?: number;
89
- /** If true, this material has a surface reflectance color; if undefined, defaults to false. If false, reflectance color is actually set to specular color */
90
- HasReflectColor?: boolean;
91
- /** Surface reflectance color; if undefined, defaults to black */
92
- reflect_color?: RgbFactorProps;
93
- /** An optional set of texture maps associated with this material.
94
- * A large variety of map types may be present (e.g., bump maps, specular maps, fur, etc), but currently only the pattern map is used.
95
- */
96
- Map?: {
97
- /** Optional pattern map. */
98
- Pattern?: TextureMapProps;
99
- };
100
- }
101
- /** Properties that define a [RenderMaterialElement]($backend).
102
- * @see [[RenderMaterial]] for the representation used by the display system.
103
- * @public
104
- * @extensions
105
- */
106
- export interface RenderMaterialProps extends DefinitionElementProps {
107
- /** The name of a palette that can be used to categorize multiple materials. */
108
- paletteName: string;
109
- /** An optional description of the material. */
110
- description?: string;
111
- jsonProperties?: {
112
- /** A container for various "assets" describing aspects of the material. */
113
- materialAssets?: {
114
- /** Properties of the material describing how it is displayed. */
115
- renderMaterial?: RenderMaterialAssetProps;
116
- };
117
- };
118
- }
1
+ /** @packageDocumentation
2
+ * @module Rendering
3
+ */
4
+ import { Id64String } from "@itwin/core-bentley";
5
+ import { DefinitionElementProps } from "./ElementProps";
6
+ import { TextureMapping } from "./TextureMapping";
7
+ /** Describes a color as an array of three numbers ranging from 0 to 1 where the first entry corresponds to the color's red component,
8
+ * the second to green, and the third to blue.
9
+ * @see usage in [[RenderMaterialAssetProps]].
10
+ * @public
11
+ * @extensions
12
+ */
13
+ export declare type RgbFactorProps = number[];
14
+ /** A 2d point specified as an array of 2 numbers [x, y].
15
+ * @see usage in [[TextureMapProps]].
16
+ * @public
17
+ * @extensions
18
+ */
19
+ export declare type Point2dProps = number[];
20
+ /** Describes the units in which a [[TextureMapProps]]' scale is expressed.
21
+ * @public
22
+ * @extensions
23
+ */
24
+ export declare enum TextureMapUnits {
25
+ /** Indicates the scale has no units. */
26
+ Relative = 0,
27
+ Meters = 3,
28
+ Millimeters = 4,
29
+ Feet = 5,
30
+ Inches = 6
31
+ }
32
+ /** As part of a [[RenderMaterialAssetProps]], describes how to map a [[RenderTexture]]'s image to the triangles of a mesh to which the material is applied.
33
+ * @public
34
+ * @extensions
35
+ */
36
+ export interface TextureMapProps {
37
+ /** Angle in degrees to rotate texture when applying; defaults to 0.0 if undefined */
38
+ pattern_angle?: number;
39
+ /** If true, flip the pattern map in U; if undefined, defaults to false */
40
+ pattern_u_flip?: boolean;
41
+ /** If true, flip the pattern map in V; if undefined, defaults to false */
42
+ pattern_flip?: boolean;
43
+ /** X, Y scale to apply to the pattern map; if undefined, defaults to {0,0}, which is almost never useful. */
44
+ pattern_scale?: Point2dProps;
45
+ /** X, Y offset to apply to the pattern map; if undefined, defaults to {0,0} */
46
+ pattern_offset?: Point2dProps;
47
+ /** Units to use when applying the scaling; if undefined, defaults to [[TextureMapUnits.Relative]] */
48
+ pattern_scalemode?: TextureMapUnits;
49
+ /** Mapping mode to use for the texture application; if undefined, defaults to [[TextureMapping.Mode.Parametric]] */
50
+ pattern_mapping?: TextureMapping.Mode;
51
+ /** Weight at which to combine diffuse image and color; if undefined, defaults to 1.0 */
52
+ pattern_weight?: number;
53
+ /** The Id of the persistent [Texture]($backend) element defining the texture image. */
54
+ TextureId: Id64String;
55
+ }
56
+ /** Describes the graphical properties of a [RenderMaterialElement]($backend) as part of a [[RenderMaterialProps]].
57
+ * @public
58
+ * @extensions
59
+ */
60
+ export interface RenderMaterialAssetProps {
61
+ /** If true, this material has a fill/diffuse color; if undefined, defaults to false */
62
+ HasBaseColor?: boolean;
63
+ /** Surface color used for fill or diffuse illumination; if undefined, defaults to black */
64
+ color?: RgbFactorProps;
65
+ /** If true, this material has a specular color; if undefined, defaults to false */
66
+ HasSpecularColor?: boolean;
67
+ /** Surface color used for specular illumination; if undefined, defaults to black */
68
+ specular_color?: RgbFactorProps;
69
+ /** If true, this material has a specular exponent; if undefined, defaults to false */
70
+ HasFinish?: boolean;
71
+ /** Specular exponent (surface shininess); range is 0 to 128; if undefined, defaults to 15.0 * 0.9 */
72
+ finish?: number;
73
+ /** If true, this material has surface transparency; if undefined, defaults to false */
74
+ HasTransmit?: boolean;
75
+ /** Surface transparency; if undefined, defaults to 0.0 */
76
+ transmit?: number;
77
+ /** If true, this material has a value for diffuse reflectivity; if undefined, defaults to false */
78
+ HasDiffuse?: boolean;
79
+ /** Surface diffuse reflectivity; if undefined, defaults to 0.6 */
80
+ diffuse?: number;
81
+ /** If true, this material has a value for specular reflectivity; if undefined, defaults to false. If false, specular value is actually set to 0.0 */
82
+ HasSpecular?: boolean;
83
+ /** Surface specular reflectivity; if undefined, defaults to 0.4 */
84
+ specular?: number;
85
+ /** If true, this material has a value for environmental reflectivity; if undefined, defaults to false */
86
+ HasReflect?: boolean;
87
+ /** Surface environmental reflectivity; stored as fraction of specular in V8 material settings; if undefined defaults to 0.0 */
88
+ reflect?: number;
89
+ /** If true, this material has a surface reflectance color; if undefined, defaults to false. If false, reflectance color is actually set to specular color */
90
+ HasReflectColor?: boolean;
91
+ /** Surface reflectance color; if undefined, defaults to black */
92
+ reflect_color?: RgbFactorProps;
93
+ /** An optional set of texture maps associated with this material.
94
+ * A large variety of map types may be present (e.g., bump maps, specular maps, fur, etc), but currently only the pattern map is used.
95
+ */
96
+ Map?: {
97
+ /** Optional pattern map. */
98
+ Pattern?: TextureMapProps;
99
+ };
100
+ }
101
+ /** Properties that define a [RenderMaterialElement]($backend).
102
+ * @see [[RenderMaterial]] for the representation used by the display system.
103
+ * @public
104
+ * @extensions
105
+ */
106
+ export interface RenderMaterialProps extends DefinitionElementProps {
107
+ /** The name of a palette that can be used to categorize multiple materials. */
108
+ paletteName: string;
109
+ /** An optional description of the material. */
110
+ description?: string;
111
+ jsonProperties?: {
112
+ /** A container for various "assets" describing aspects of the material. */
113
+ materialAssets?: {
114
+ /** Properties of the material describing how it is displayed. */
115
+ renderMaterial?: RenderMaterialAssetProps;
116
+ };
117
+ };
118
+ }
119
119
  //# sourceMappingURL=MaterialProps.d.ts.map