@itwin/core-common 3.4.0-dev.60 → 3.4.0-dev.62

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 (923) hide show
  1. package/lib/cjs/AmbientOcclusion.d.ts +49 -49
  2. package/lib/cjs/AmbientOcclusion.js +55 -55
  3. package/lib/cjs/AmbientOcclusion.js.map +1 -1
  4. package/lib/cjs/AnalysisStyle.d.ts +134 -134
  5. package/lib/cjs/AnalysisStyle.js +165 -165
  6. package/lib/cjs/AnalysisStyle.js.map +1 -1
  7. package/lib/cjs/AuthorizationClient.d.ts +11 -11
  8. package/lib/cjs/AuthorizationClient.js +9 -9
  9. package/lib/cjs/AuthorizationClient.js.map +1 -1
  10. package/lib/cjs/BackgroundMapProvider.d.ts +51 -51
  11. package/lib/cjs/BackgroundMapProvider.js +68 -68
  12. package/lib/cjs/BackgroundMapProvider.js.map +1 -1
  13. package/lib/cjs/BackgroundMapSettings.d.ts +136 -136
  14. package/lib/cjs/BackgroundMapSettings.js +156 -156
  15. package/lib/cjs/BackgroundMapSettings.js.map +1 -1
  16. package/lib/cjs/Base64EncodedString.d.ts +30 -30
  17. package/lib/cjs/Base64EncodedString.js +56 -56
  18. package/lib/cjs/Base64EncodedString.js.map +1 -1
  19. package/lib/cjs/BlobReader.d.ts +31 -31
  20. package/lib/cjs/BlobReader.js +84 -84
  21. package/lib/cjs/BlobReader.js.map +1 -1
  22. package/lib/cjs/BriefcaseTypes.d.ts +189 -189
  23. package/lib/cjs/BriefcaseTypes.js +95 -95
  24. package/lib/cjs/BriefcaseTypes.js.map +1 -1
  25. package/lib/cjs/Camera.d.ts +42 -42
  26. package/lib/cjs/Camera.js +62 -62
  27. package/lib/cjs/Camera.js.map +1 -1
  28. package/lib/cjs/ChangedElements.d.ts +83 -83
  29. package/lib/cjs/ChangedElements.js +21 -21
  30. package/lib/cjs/ChangedElements.js.map +1 -1
  31. package/lib/cjs/ChangedEntities.d.ts +45 -45
  32. package/lib/cjs/ChangedEntities.js +9 -9
  33. package/lib/cjs/ChangedEntities.js.map +1 -1
  34. package/lib/cjs/ChangesetProps.d.ts +98 -98
  35. package/lib/cjs/ChangesetProps.js +22 -22
  36. package/lib/cjs/ChangesetProps.js.map +1 -1
  37. package/lib/cjs/ClipStyle.d.ts +89 -89
  38. package/lib/cjs/ClipStyle.js +123 -123
  39. package/lib/cjs/ClipStyle.js.map +1 -1
  40. package/lib/cjs/CloudStorage.d.ts +62 -62
  41. package/lib/cjs/CloudStorage.js +113 -113
  42. package/lib/cjs/CloudStorage.js.map +1 -1
  43. package/lib/cjs/CloudStorageTileCache.d.ts +27 -27
  44. package/lib/cjs/CloudStorageTileCache.js +66 -66
  45. package/lib/cjs/CloudStorageTileCache.js.map +1 -1
  46. package/lib/cjs/Code.d.ts +256 -256
  47. package/lib/cjs/Code.js +281 -281
  48. package/lib/cjs/Code.js.map +1 -1
  49. package/lib/cjs/ColorByName.d.ts +161 -161
  50. package/lib/cjs/ColorByName.js +169 -169
  51. package/lib/cjs/ColorByName.js.map +1 -1
  52. package/lib/cjs/ColorDef.d.ts +208 -208
  53. package/lib/cjs/ColorDef.js +571 -571
  54. package/lib/cjs/ColorDef.js.map +1 -1
  55. package/lib/cjs/CommonLoggerCategory.d.ts +18 -18
  56. package/lib/cjs/CommonLoggerCategory.js +26 -26
  57. package/lib/cjs/CommonLoggerCategory.js.map +1 -1
  58. package/lib/cjs/ConcurrentQuery.d.ts +241 -241
  59. package/lib/cjs/ConcurrentQuery.js +380 -380
  60. package/lib/cjs/ConcurrentQuery.js.map +1 -1
  61. package/lib/cjs/ContextRealityModel.d.ts +255 -255
  62. package/lib/cjs/ContextRealityModel.js +325 -325
  63. package/lib/cjs/ContextRealityModel.js.map +1 -1
  64. package/lib/cjs/DisplayStyleSettings.d.ts +552 -552
  65. package/lib/cjs/DisplayStyleSettings.js +951 -951
  66. package/lib/cjs/DisplayStyleSettings.js.map +1 -1
  67. package/lib/cjs/ECSchemaProps.d.ts +39 -39
  68. package/lib/cjs/ECSchemaProps.js +9 -9
  69. package/lib/cjs/ECSchemaProps.js.map +1 -1
  70. package/lib/cjs/ECSqlReader.d.ts +70 -70
  71. package/lib/cjs/ECSqlReader.js +280 -280
  72. package/lib/cjs/ECSqlReader.js.map +1 -1
  73. package/lib/cjs/ECSqlTypes.d.ts +128 -128
  74. package/lib/cjs/ECSqlTypes.js +189 -189
  75. package/lib/cjs/ECSqlTypes.js.map +1 -1
  76. package/lib/cjs/ElementProps.d.ts +476 -476
  77. package/lib/cjs/ElementProps.js +99 -99
  78. package/lib/cjs/ElementProps.js.map +1 -1
  79. package/lib/cjs/EmphasizeElementsProps.d.ts +55 -55
  80. package/lib/cjs/EmphasizeElementsProps.js +25 -25
  81. package/lib/cjs/EmphasizeElementsProps.js.map +1 -1
  82. package/lib/cjs/EntityProps.d.ts +176 -176
  83. package/lib/cjs/EntityProps.js +112 -112
  84. package/lib/cjs/EntityProps.js.map +1 -1
  85. package/lib/cjs/Environment.d.ts +61 -61
  86. package/lib/cjs/Environment.js +73 -73
  87. package/lib/cjs/Environment.js.map +1 -1
  88. package/lib/cjs/FeatureGates.d.ts +31 -31
  89. package/lib/cjs/FeatureGates.js +55 -55
  90. package/lib/cjs/FeatureGates.js.map +1 -1
  91. package/lib/cjs/FeatureIndex.d.ts +39 -39
  92. package/lib/cjs/FeatureIndex.js +63 -63
  93. package/lib/cjs/FeatureIndex.js.map +1 -1
  94. package/lib/cjs/FeatureSymbology.d.ts +444 -444
  95. package/lib/cjs/FeatureSymbology.js +614 -614
  96. package/lib/cjs/FeatureSymbology.js.map +1 -1
  97. package/lib/cjs/FeatureTable.d.ts +141 -141
  98. package/lib/cjs/FeatureTable.js +278 -278
  99. package/lib/cjs/FeatureTable.js.map +1 -1
  100. package/lib/cjs/Fonts.d.ts +51 -51
  101. package/lib/cjs/Fonts.js +53 -53
  102. package/lib/cjs/Fonts.js.map +1 -1
  103. package/lib/cjs/Frustum.d.ts +114 -114
  104. package/lib/cjs/Frustum.js +292 -292
  105. package/lib/cjs/Frustum.js.map +1 -1
  106. package/lib/cjs/GeoCoordinateServices.d.ts +119 -119
  107. package/lib/cjs/GeoCoordinateServices.js +80 -80
  108. package/lib/cjs/GeoCoordinateServices.js.map +1 -1
  109. package/lib/cjs/GeometryContainment.d.ts +28 -28
  110. package/lib/cjs/GeometryContainment.js +9 -9
  111. package/lib/cjs/GeometryContainment.js.map +1 -1
  112. package/lib/cjs/GeometryParams.d.ts +130 -130
  113. package/lib/cjs/GeometryParams.js +174 -174
  114. package/lib/cjs/GeometryParams.js.map +1 -1
  115. package/lib/cjs/GeometrySummary.d.ts +45 -45
  116. package/lib/cjs/GeometrySummary.js +23 -23
  117. package/lib/cjs/GeometrySummary.js.map +1 -1
  118. package/lib/cjs/Gradient.d.ts +139 -139
  119. package/lib/cjs/Gradient.js +455 -455
  120. package/lib/cjs/Gradient.js.map +1 -1
  121. package/lib/cjs/GraphicParams.d.ts +58 -58
  122. package/lib/cjs/GraphicParams.js +85 -85
  123. package/lib/cjs/GraphicParams.js.map +1 -1
  124. package/lib/cjs/GroundPlane.d.ts +52 -52
  125. package/lib/cjs/GroundPlane.js +64 -64
  126. package/lib/cjs/GroundPlane.js.map +1 -1
  127. package/lib/cjs/HSLColor.d.ts +20 -20
  128. package/lib/cjs/HSLColor.js +32 -32
  129. package/lib/cjs/HSLColor.js.map +1 -1
  130. package/lib/cjs/HSVColor.d.ts +30 -30
  131. package/lib/cjs/HSVColor.js +59 -59
  132. package/lib/cjs/HSVColor.js.map +1 -1
  133. package/lib/cjs/HiddenLine.d.ts +97 -97
  134. package/lib/cjs/HiddenLine.js +162 -162
  135. package/lib/cjs/HiddenLine.js.map +1 -1
  136. package/lib/cjs/Hilite.d.ts +50 -50
  137. package/lib/cjs/Hilite.js +64 -64
  138. package/lib/cjs/Hilite.js.map +1 -1
  139. package/lib/cjs/IModel.d.ts +359 -359
  140. package/lib/cjs/IModel.js +347 -347
  141. package/lib/cjs/IModel.js.map +1 -1
  142. package/lib/cjs/IModelError.d.ts +36 -36
  143. package/lib/cjs/IModelError.js +72 -72
  144. package/lib/cjs/IModelError.js.map +1 -1
  145. package/lib/cjs/IModelVersion.d.ts +68 -68
  146. package/lib/cjs/IModelVersion.js +79 -79
  147. package/lib/cjs/IModelVersion.js.map +1 -1
  148. package/lib/cjs/Image.d.ts +86 -86
  149. package/lib/cjs/Image.js +128 -128
  150. package/lib/cjs/Image.js.map +1 -1
  151. package/lib/cjs/IpcAppProps.d.ts +124 -124
  152. package/lib/cjs/IpcAppProps.js +18 -18
  153. package/lib/cjs/IpcAppProps.js.map +1 -1
  154. package/lib/cjs/LightSettings.d.ts +224 -224
  155. package/lib/cjs/LightSettings.js +309 -309
  156. package/lib/cjs/LightSettings.js.map +1 -1
  157. package/lib/cjs/LinePixels.d.ts +34 -34
  158. package/lib/cjs/LinePixels.js +42 -42
  159. package/lib/cjs/LinePixels.js.map +1 -1
  160. package/lib/cjs/Localization.d.ts +111 -111
  161. package/lib/cjs/Localization.js +26 -26
  162. package/lib/cjs/Localization.js.map +1 -1
  163. package/lib/cjs/MapImagerySettings.d.ts +62 -62
  164. package/lib/cjs/MapImagerySettings.js +80 -80
  165. package/lib/cjs/MapImagerySettings.js.map +1 -1
  166. package/lib/cjs/MapLayerSettings.d.ts +272 -272
  167. package/lib/cjs/MapLayerSettings.js +411 -411
  168. package/lib/cjs/MapLayerSettings.js.map +1 -1
  169. package/lib/cjs/MassProperties.d.ts +64 -64
  170. package/lib/cjs/MassProperties.js +23 -23
  171. package/lib/cjs/MassProperties.js.map +1 -1
  172. package/lib/cjs/MaterialProps.d.ts +118 -118
  173. package/lib/cjs/MaterialProps.js +23 -23
  174. package/lib/cjs/MaterialProps.js.map +1 -1
  175. package/lib/cjs/ModelClipGroup.d.ts +67 -67
  176. package/lib/cjs/ModelClipGroup.js +98 -98
  177. package/lib/cjs/ModelClipGroup.js.map +1 -1
  178. package/lib/cjs/ModelGeometryChanges.d.ts +107 -107
  179. package/lib/cjs/ModelGeometryChanges.js +83 -83
  180. package/lib/cjs/ModelGeometryChanges.js.map +1 -1
  181. package/lib/cjs/ModelProps.d.ts +66 -66
  182. package/lib/cjs/ModelProps.js +9 -9
  183. package/lib/cjs/ModelProps.js.map +1 -1
  184. package/lib/cjs/NativeAppProps.d.ts +122 -122
  185. package/lib/cjs/NativeAppProps.js +30 -30
  186. package/lib/cjs/NativeAppProps.js.map +1 -1
  187. package/lib/cjs/OctEncodedNormal.d.ts +33 -33
  188. package/lib/cjs/OctEncodedNormal.js +98 -98
  189. package/lib/cjs/OctEncodedNormal.js.map +1 -1
  190. package/lib/cjs/PlanProjectionSettings.d.ts +47 -47
  191. package/lib/cjs/PlanProjectionSettings.js +63 -63
  192. package/lib/cjs/PlanProjectionSettings.js.map +1 -1
  193. package/lib/cjs/PlanarClipMask.d.ts +177 -177
  194. package/lib/cjs/PlanarClipMask.js +136 -136
  195. package/lib/cjs/PlanarClipMask.js.map +1 -1
  196. package/lib/cjs/QPoint.d.ts +479 -479
  197. package/lib/cjs/QPoint.js +826 -826
  198. package/lib/cjs/QPoint.js.map +1 -1
  199. package/lib/cjs/RealityDataAccessProps.d.ts +41 -41
  200. package/lib/cjs/RealityDataAccessProps.js +19 -19
  201. package/lib/cjs/RealityDataAccessProps.js.map +1 -1
  202. package/lib/cjs/Render.d.ts +89 -89
  203. package/lib/cjs/Render.js +177 -177
  204. package/lib/cjs/Render.js.map +1 -1
  205. package/lib/cjs/RenderMaterial.d.ts +58 -58
  206. package/lib/cjs/RenderMaterial.js +76 -76
  207. package/lib/cjs/RenderMaterial.js.map +1 -1
  208. package/lib/cjs/RenderSchedule.d.ts +540 -540
  209. package/lib/cjs/RenderSchedule.js +1000 -1000
  210. package/lib/cjs/RenderTexture.d.ts +70 -70
  211. package/lib/cjs/RenderTexture.js +59 -59
  212. package/lib/cjs/RenderTexture.js.map +1 -1
  213. package/lib/cjs/RgbColor.d.ts +39 -39
  214. package/lib/cjs/RgbColor.js +67 -67
  215. package/lib/cjs/RgbColor.js.map +1 -1
  216. package/lib/cjs/RpcInterface.d.ts +33 -33
  217. package/lib/cjs/RpcInterface.js +137 -137
  218. package/lib/cjs/RpcInterface.js.map +1 -1
  219. package/lib/cjs/RpcManager.d.ts +40 -40
  220. package/lib/cjs/RpcManager.js +55 -55
  221. package/lib/cjs/RpcManager.js.map +1 -1
  222. package/lib/cjs/SessionProps.d.ts +16 -16
  223. package/lib/cjs/SessionProps.js +9 -9
  224. package/lib/cjs/SessionProps.js.map +1 -1
  225. package/lib/cjs/SkyBox.d.ts +215 -215
  226. package/lib/cjs/SkyBox.js +210 -210
  227. package/lib/cjs/SkyBox.js.map +1 -1
  228. package/lib/cjs/Snapping.d.ts +49 -49
  229. package/lib/cjs/Snapping.js +9 -9
  230. package/lib/cjs/Snapping.js.map +1 -1
  231. package/lib/cjs/SolarCalculate.d.ts +27 -27
  232. package/lib/cjs/SolarCalculate.js +211 -211
  233. package/lib/cjs/SolarCalculate.js.map +1 -1
  234. package/lib/cjs/SolarShadows.d.ts +35 -35
  235. package/lib/cjs/SolarShadows.js +62 -62
  236. package/lib/cjs/SolarShadows.js.map +1 -1
  237. package/lib/cjs/SpatialClassification.d.ts +208 -208
  238. package/lib/cjs/SpatialClassification.js +340 -340
  239. package/lib/cjs/SpatialClassification.js.map +1 -1
  240. package/lib/cjs/SubCategoryAppearance.d.ts +91 -91
  241. package/lib/cjs/SubCategoryAppearance.js +96 -96
  242. package/lib/cjs/SubCategoryAppearance.js.map +1 -1
  243. package/lib/cjs/SubCategoryOverride.d.ts +46 -46
  244. package/lib/cjs/SubCategoryOverride.js +104 -104
  245. package/lib/cjs/SubCategoryOverride.js.map +1 -1
  246. package/lib/cjs/TerrainSettings.d.ts +82 -82
  247. package/lib/cjs/TerrainSettings.js +102 -102
  248. package/lib/cjs/TerrainSettings.js.map +1 -1
  249. package/lib/cjs/TextureMapping.d.ts +101 -101
  250. package/lib/cjs/TextureMapping.js +174 -174
  251. package/lib/cjs/TextureMapping.js.map +1 -1
  252. package/lib/cjs/TextureProps.d.ts +65 -65
  253. package/lib/cjs/TextureProps.js +28 -28
  254. package/lib/cjs/TextureProps.js.map +1 -1
  255. package/lib/cjs/ThematicDisplay.d.ts +230 -230
  256. package/lib/cjs/ThematicDisplay.js +344 -344
  257. package/lib/cjs/ThematicDisplay.js.map +1 -1
  258. package/lib/cjs/Thumbnail.d.ts +26 -26
  259. package/lib/cjs/Thumbnail.js +9 -9
  260. package/lib/cjs/Thumbnail.js.map +1 -1
  261. package/lib/cjs/TileProps.d.ts +82 -82
  262. package/lib/cjs/TileProps.js +29 -29
  263. package/lib/cjs/TileProps.js.map +1 -1
  264. package/lib/cjs/Tween.d.ts +191 -191
  265. package/lib/cjs/Tween.js +570 -570
  266. package/lib/cjs/Tween.js.map +1 -1
  267. package/lib/cjs/TxnAction.d.ts +21 -21
  268. package/lib/cjs/TxnAction.js +29 -29
  269. package/lib/cjs/TxnAction.js.map +1 -1
  270. package/lib/cjs/ViewDetails.d.ts +125 -125
  271. package/lib/cjs/ViewDetails.js +158 -158
  272. package/lib/cjs/ViewDetails.js.map +1 -1
  273. package/lib/cjs/ViewFlags.d.ts +291 -291
  274. package/lib/cjs/ViewFlags.js +368 -368
  275. package/lib/cjs/ViewFlags.js.map +1 -1
  276. package/lib/cjs/ViewProps.d.ts +205 -205
  277. package/lib/cjs/ViewProps.js +9 -9
  278. package/lib/cjs/ViewProps.js.map +1 -1
  279. package/lib/cjs/WhiteOnWhiteReversalSettings.d.ts +36 -36
  280. package/lib/cjs/WhiteOnWhiteReversalSettings.js +37 -37
  281. package/lib/cjs/WhiteOnWhiteReversalSettings.js.map +1 -1
  282. package/lib/cjs/core-common.d.ts +240 -240
  283. package/lib/cjs/core-common.js +256 -256
  284. package/lib/cjs/core-common.js.map +1 -1
  285. package/lib/cjs/domains/FunctionalElementProps.d.ts +11 -11
  286. package/lib/cjs/domains/FunctionalElementProps.js +9 -9
  287. package/lib/cjs/domains/FunctionalElementProps.js.map +1 -1
  288. package/lib/cjs/domains/GenericElementProps.d.ts +18 -18
  289. package/lib/cjs/domains/GenericElementProps.js +9 -9
  290. package/lib/cjs/domains/GenericElementProps.js.map +1 -1
  291. package/lib/cjs/geometry/AdditionalTransform.d.ts +84 -84
  292. package/lib/cjs/geometry/AdditionalTransform.js +85 -85
  293. package/lib/cjs/geometry/AdditionalTransform.js.map +1 -1
  294. package/lib/cjs/geometry/AreaPattern.d.ts +82 -82
  295. package/lib/cjs/geometry/AreaPattern.js +204 -204
  296. package/lib/cjs/geometry/AreaPattern.js.map +1 -1
  297. package/lib/cjs/geometry/BoundingSphere.d.ts +14 -14
  298. package/lib/cjs/geometry/BoundingSphere.js +30 -30
  299. package/lib/cjs/geometry/BoundingSphere.js.map +1 -1
  300. package/lib/cjs/geometry/Cartographic.d.ts +137 -137
  301. package/lib/cjs/geometry/Cartographic.js +345 -345
  302. package/lib/cjs/geometry/Cartographic.js.map +1 -1
  303. package/lib/cjs/geometry/CoordinateReferenceSystem.d.ts +269 -269
  304. package/lib/cjs/geometry/CoordinateReferenceSystem.js +261 -261
  305. package/lib/cjs/geometry/CoordinateReferenceSystem.js.map +1 -1
  306. package/lib/cjs/geometry/ElementGeometry.d.ts +402 -402
  307. package/lib/cjs/geometry/ElementGeometry.js +1719 -1719
  308. package/lib/cjs/geometry/ElementGeometry.js.map +1 -1
  309. package/lib/cjs/geometry/ElementGeometryFB.d.ts +2372 -2372
  310. package/lib/cjs/geometry/ElementGeometryFB.js +3814 -3814
  311. package/lib/cjs/geometry/ElementGeometryFB.js.map +1 -1
  312. package/lib/cjs/geometry/FrustumPlanes.d.ts +32 -32
  313. package/lib/cjs/geometry/FrustumPlanes.js +132 -132
  314. package/lib/cjs/geometry/FrustumPlanes.js.map +1 -1
  315. package/lib/cjs/geometry/GeodeticDatum.d.ts +409 -409
  316. package/lib/cjs/geometry/GeodeticDatum.js +401 -401
  317. package/lib/cjs/geometry/GeodeticDatum.js.map +1 -1
  318. package/lib/cjs/geometry/GeodeticEllipsoid.d.ts +72 -72
  319. package/lib/cjs/geometry/GeodeticEllipsoid.js +72 -72
  320. package/lib/cjs/geometry/GeodeticEllipsoid.js.map +1 -1
  321. package/lib/cjs/geometry/GeometryStream.d.ts +347 -347
  322. package/lib/cjs/geometry/GeometryStream.js +469 -469
  323. package/lib/cjs/geometry/GeometryStream.js.map +1 -1
  324. package/lib/cjs/geometry/ImageGraphic.d.ts +74 -74
  325. package/lib/cjs/geometry/ImageGraphic.js +98 -98
  326. package/lib/cjs/geometry/ImageGraphic.js.map +1 -1
  327. package/lib/cjs/geometry/LineStyle.d.ts +71 -71
  328. package/lib/cjs/geometry/LineStyle.js +129 -129
  329. package/lib/cjs/geometry/LineStyle.js.map +1 -1
  330. package/lib/cjs/geometry/Placement.d.ts +95 -95
  331. package/lib/cjs/geometry/Placement.js +131 -131
  332. package/lib/cjs/geometry/Placement.js.map +1 -1
  333. package/lib/cjs/geometry/Projection.d.ts +251 -251
  334. package/lib/cjs/geometry/Projection.js +198 -198
  335. package/lib/cjs/geometry/Projection.js.map +1 -1
  336. package/lib/cjs/geometry/TextString.d.ts +55 -55
  337. package/lib/cjs/geometry/TextString.js +65 -65
  338. package/lib/cjs/geometry/TextString.js.map +1 -1
  339. package/lib/cjs/ipc/IpcSession.d.ts +23 -23
  340. package/lib/cjs/ipc/IpcSession.js +27 -27
  341. package/lib/cjs/ipc/IpcSession.js.map +1 -1
  342. package/lib/cjs/ipc/IpcSocket.d.ts +96 -96
  343. package/lib/cjs/ipc/IpcSocket.js +16 -16
  344. package/lib/cjs/ipc/IpcSocket.js.map +1 -1
  345. package/lib/cjs/ipc/IpcWebSocket.d.ts +61 -61
  346. package/lib/cjs/ipc/IpcWebSocket.js +151 -151
  347. package/lib/cjs/ipc/IpcWebSocket.js.map +1 -1
  348. package/lib/cjs/ipc/IpcWebSocketTransport.d.ts +15 -15
  349. package/lib/cjs/ipc/IpcWebSocketTransport.js +158 -158
  350. package/lib/cjs/ipc/IpcWebSocketTransport.js.map +1 -1
  351. package/lib/cjs/rpc/DevToolsRpcInterface.d.ts +32 -32
  352. package/lib/cjs/rpc/DevToolsRpcInterface.js +48 -48
  353. package/lib/cjs/rpc/DevToolsRpcInterface.js.map +1 -1
  354. package/lib/cjs/rpc/IModelReadRpcInterface.d.ts +75 -75
  355. package/lib/cjs/rpc/IModelReadRpcInterface.js +115 -115
  356. package/lib/cjs/rpc/IModelReadRpcInterface.js.map +1 -1
  357. package/lib/cjs/rpc/IModelTileRpcInterface.d.ts +61 -61
  358. package/lib/cjs/rpc/IModelTileRpcInterface.js +96 -96
  359. package/lib/cjs/rpc/IModelTileRpcInterface.js.map +1 -1
  360. package/lib/cjs/rpc/SnapshotIModelRpcInterface.d.ts +23 -23
  361. package/lib/cjs/rpc/SnapshotIModelRpcInterface.js +48 -48
  362. package/lib/cjs/rpc/SnapshotIModelRpcInterface.js.map +1 -1
  363. package/lib/cjs/rpc/TestRpcManager.d.ts +20 -20
  364. package/lib/cjs/rpc/TestRpcManager.js +39 -39
  365. package/lib/cjs/rpc/TestRpcManager.js.map +1 -1
  366. package/lib/cjs/rpc/WipRpcInterface.d.ts +29 -29
  367. package/lib/cjs/rpc/WipRpcInterface.js +40 -40
  368. package/lib/cjs/rpc/WipRpcInterface.js.map +1 -1
  369. package/lib/cjs/rpc/core/RpcConfiguration.d.ts +111 -111
  370. package/lib/cjs/rpc/core/RpcConfiguration.js +192 -192
  371. package/lib/cjs/rpc/core/RpcConfiguration.js.map +1 -1
  372. package/lib/cjs/rpc/core/RpcConstants.d.ts +85 -85
  373. package/lib/cjs/rpc/core/RpcConstants.js +103 -103
  374. package/lib/cjs/rpc/core/RpcConstants.js.map +1 -1
  375. package/lib/cjs/rpc/core/RpcControl.d.ts +52 -52
  376. package/lib/cjs/rpc/core/RpcControl.js +149 -149
  377. package/lib/cjs/rpc/core/RpcControl.js.map +1 -1
  378. package/lib/cjs/rpc/core/RpcInvocation.d.ts +89 -89
  379. package/lib/cjs/rpc/core/RpcInvocation.js +257 -257
  380. package/lib/cjs/rpc/core/RpcInvocation.js.map +1 -1
  381. package/lib/cjs/rpc/core/RpcMarshaling.d.ts +36 -36
  382. package/lib/cjs/rpc/core/RpcMarshaling.js +153 -153
  383. package/lib/cjs/rpc/core/RpcMarshaling.js.map +1 -1
  384. package/lib/cjs/rpc/core/RpcOperation.d.ts +67 -67
  385. package/lib/cjs/rpc/core/RpcOperation.js +133 -133
  386. package/lib/cjs/rpc/core/RpcOperation.js.map +1 -1
  387. package/lib/cjs/rpc/core/RpcPendingQueue.d.ts +21 -21
  388. package/lib/cjs/rpc/core/RpcPendingQueue.js +94 -94
  389. package/lib/cjs/rpc/core/RpcPendingQueue.js.map +1 -1
  390. package/lib/cjs/rpc/core/RpcProtocol.d.ts +132 -132
  391. package/lib/cjs/rpc/core/RpcProtocol.js +127 -127
  392. package/lib/cjs/rpc/core/RpcProtocol.js.map +1 -1
  393. package/lib/cjs/rpc/core/RpcPush.d.ts +68 -68
  394. package/lib/cjs/rpc/core/RpcPush.js +127 -127
  395. package/lib/cjs/rpc/core/RpcPush.js.map +1 -1
  396. package/lib/cjs/rpc/core/RpcRegistry.d.ts +48 -48
  397. package/lib/cjs/rpc/core/RpcRegistry.js +198 -198
  398. package/lib/cjs/rpc/core/RpcRegistry.js.map +1 -1
  399. package/lib/cjs/rpc/core/RpcRequest.d.ts +186 -186
  400. package/lib/cjs/rpc/core/RpcRequest.js +477 -477
  401. package/lib/cjs/rpc/core/RpcRequest.js.map +1 -1
  402. package/lib/cjs/rpc/core/RpcRequestContext.d.ts +14 -14
  403. package/lib/cjs/rpc/core/RpcRequestContext.js +2 -2
  404. package/lib/cjs/rpc/core/RpcRequestContext.js.map +1 -1
  405. package/lib/cjs/rpc/core/RpcRoutingToken.d.ts +12 -12
  406. package/lib/cjs/rpc/core/RpcRoutingToken.js +23 -23
  407. package/lib/cjs/rpc/core/RpcRoutingToken.js.map +1 -1
  408. package/lib/cjs/rpc/core/RpcSessionInvocation.d.ts +10 -10
  409. package/lib/cjs/rpc/core/RpcSessionInvocation.js +59 -59
  410. package/lib/cjs/rpc/core/RpcSessionInvocation.js.map +1 -1
  411. package/lib/cjs/rpc/web/BentleyCloudRpcManager.d.ts +46 -46
  412. package/lib/cjs/rpc/web/BentleyCloudRpcManager.js +73 -73
  413. package/lib/cjs/rpc/web/BentleyCloudRpcManager.js.map +1 -1
  414. package/lib/cjs/rpc/web/BentleyCloudRpcProtocol.d.ts +33 -33
  415. package/lib/cjs/rpc/web/BentleyCloudRpcProtocol.js +142 -142
  416. package/lib/cjs/rpc/web/BentleyCloudRpcProtocol.js.map +1 -1
  417. package/lib/cjs/rpc/web/OpenAPI.d.ts +139 -139
  418. package/lib/cjs/rpc/web/OpenAPI.js +60 -60
  419. package/lib/cjs/rpc/web/OpenAPI.js.map +1 -1
  420. package/lib/cjs/rpc/web/RpcMultipart.d.ts +31 -31
  421. package/lib/cjs/rpc/web/RpcMultipart.js +45 -45
  422. package/lib/cjs/rpc/web/RpcMultipart.js.map +1 -1
  423. package/lib/cjs/rpc/web/WebAppRpcLogging.d.ts +17 -17
  424. package/lib/cjs/rpc/web/WebAppRpcLogging.js +140 -140
  425. package/lib/cjs/rpc/web/WebAppRpcLogging.js.map +1 -1
  426. package/lib/cjs/rpc/web/WebAppRpcProtocol.d.ts +86 -86
  427. package/lib/cjs/rpc/web/WebAppRpcProtocol.js +116 -116
  428. package/lib/cjs/rpc/web/WebAppRpcProtocol.js.map +1 -1
  429. package/lib/cjs/rpc/web/WebAppRpcRequest.d.ts +71 -71
  430. package/lib/cjs/rpc/web/WebAppRpcRequest.js +374 -374
  431. package/lib/cjs/rpc/web/WebAppRpcRequest.js.map +1 -1
  432. package/lib/cjs/rpc/web/multipart/RpcMultipartParser.d.ts +33 -33
  433. package/lib/cjs/rpc/web/multipart/RpcMultipartParser.js +359 -359
  434. package/lib/cjs/rpc/web/multipart/RpcMultipartParser.js.map +1 -1
  435. package/lib/cjs/tile/B3dmTileIO.d.ts +19 -19
  436. package/lib/cjs/tile/B3dmTileIO.js +66 -66
  437. package/lib/cjs/tile/B3dmTileIO.js.map +1 -1
  438. package/lib/cjs/tile/CompositeTileIO.d.ts +15 -15
  439. package/lib/cjs/tile/CompositeTileIO.js +26 -26
  440. package/lib/cjs/tile/CompositeTileIO.js.map +1 -1
  441. package/lib/cjs/tile/ElementGraphics.d.ts +134 -134
  442. package/lib/cjs/tile/ElementGraphics.js +9 -9
  443. package/lib/cjs/tile/ElementGraphics.js.map +1 -1
  444. package/lib/cjs/tile/GltfTileIO.d.ts +45 -45
  445. package/lib/cjs/tile/GltfTileIO.js +109 -109
  446. package/lib/cjs/tile/GltfTileIO.js.map +1 -1
  447. package/lib/cjs/tile/I3dmTileIO.d.ts +20 -20
  448. package/lib/cjs/tile/I3dmTileIO.js +40 -40
  449. package/lib/cjs/tile/I3dmTileIO.js.map +1 -1
  450. package/lib/cjs/tile/IModelTileIO.d.ts +75 -75
  451. package/lib/cjs/tile/IModelTileIO.js +95 -95
  452. package/lib/cjs/tile/IModelTileIO.js.map +1 -1
  453. package/lib/cjs/tile/PntsTileIO.d.ts +17 -17
  454. package/lib/cjs/tile/PntsTileIO.js +26 -26
  455. package/lib/cjs/tile/PntsTileIO.js.map +1 -1
  456. package/lib/cjs/tile/TileIO.d.ts +66 -66
  457. package/lib/cjs/tile/TileIO.js +118 -118
  458. package/lib/cjs/tile/TileIO.js.map +1 -1
  459. package/lib/cjs/tile/TileMetadata.d.ts +228 -228
  460. package/lib/cjs/tile/TileMetadata.js +676 -676
  461. package/lib/cjs/tile/TileMetadata.js.map +1 -1
  462. package/lib/esm/AmbientOcclusion.d.ts +49 -49
  463. package/lib/esm/AmbientOcclusion.js +52 -52
  464. package/lib/esm/AmbientOcclusion.js.map +1 -1
  465. package/lib/esm/AnalysisStyle.d.ts +134 -134
  466. package/lib/esm/AnalysisStyle.js +159 -159
  467. package/lib/esm/AnalysisStyle.js.map +1 -1
  468. package/lib/esm/AuthorizationClient.d.ts +11 -11
  469. package/lib/esm/AuthorizationClient.js +8 -8
  470. package/lib/esm/AuthorizationClient.js.map +1 -1
  471. package/lib/esm/BackgroundMapProvider.d.ts +51 -51
  472. package/lib/esm/BackgroundMapProvider.js +64 -64
  473. package/lib/esm/BackgroundMapProvider.js.map +1 -1
  474. package/lib/esm/BackgroundMapSettings.d.ts +136 -136
  475. package/lib/esm/BackgroundMapSettings.js +152 -152
  476. package/lib/esm/BackgroundMapSettings.js.map +1 -1
  477. package/lib/esm/Base64EncodedString.d.ts +30 -30
  478. package/lib/esm/Base64EncodedString.js +53 -53
  479. package/lib/esm/Base64EncodedString.js.map +1 -1
  480. package/lib/esm/BlobReader.d.ts +31 -31
  481. package/lib/esm/BlobReader.js +79 -79
  482. package/lib/esm/BlobReader.js.map +1 -1
  483. package/lib/esm/BriefcaseTypes.d.ts +189 -189
  484. package/lib/esm/BriefcaseTypes.js +92 -92
  485. package/lib/esm/BriefcaseTypes.js.map +1 -1
  486. package/lib/esm/Camera.d.ts +42 -42
  487. package/lib/esm/Camera.js +58 -58
  488. package/lib/esm/Camera.js.map +1 -1
  489. package/lib/esm/ChangedElements.d.ts +83 -83
  490. package/lib/esm/ChangedElements.js +18 -18
  491. package/lib/esm/ChangedElements.js.map +1 -1
  492. package/lib/esm/ChangedEntities.d.ts +45 -45
  493. package/lib/esm/ChangedEntities.js +8 -8
  494. package/lib/esm/ChangedEntities.js.map +1 -1
  495. package/lib/esm/ChangesetProps.d.ts +98 -98
  496. package/lib/esm/ChangesetProps.js +19 -19
  497. package/lib/esm/ChangesetProps.js.map +1 -1
  498. package/lib/esm/ClipStyle.d.ts +89 -89
  499. package/lib/esm/ClipStyle.js +118 -118
  500. package/lib/esm/ClipStyle.js.map +1 -1
  501. package/lib/esm/CloudStorage.d.ts +62 -62
  502. package/lib/esm/CloudStorage.js +109 -109
  503. package/lib/esm/CloudStorage.js.map +1 -1
  504. package/lib/esm/CloudStorageTileCache.d.ts +27 -27
  505. package/lib/esm/CloudStorageTileCache.js +62 -62
  506. package/lib/esm/CloudStorageTileCache.js.map +1 -1
  507. package/lib/esm/Code.d.ts +256 -256
  508. package/lib/esm/Code.js +276 -276
  509. package/lib/esm/Code.js.map +1 -1
  510. package/lib/esm/ColorByName.d.ts +161 -161
  511. package/lib/esm/ColorByName.js +166 -166
  512. package/lib/esm/ColorByName.js.map +1 -1
  513. package/lib/esm/ColorDef.d.ts +208 -208
  514. package/lib/esm/ColorDef.js +567 -567
  515. package/lib/esm/ColorDef.js.map +1 -1
  516. package/lib/esm/CommonLoggerCategory.d.ts +18 -18
  517. package/lib/esm/CommonLoggerCategory.js +23 -23
  518. package/lib/esm/CommonLoggerCategory.js.map +1 -1
  519. package/lib/esm/ConcurrentQuery.d.ts +241 -241
  520. package/lib/esm/ConcurrentQuery.js +373 -373
  521. package/lib/esm/ConcurrentQuery.js.map +1 -1
  522. package/lib/esm/ContextRealityModel.d.ts +255 -255
  523. package/lib/esm/ContextRealityModel.js +320 -320
  524. package/lib/esm/ContextRealityModel.js.map +1 -1
  525. package/lib/esm/DisplayStyleSettings.d.ts +552 -552
  526. package/lib/esm/DisplayStyleSettings.js +946 -946
  527. package/lib/esm/DisplayStyleSettings.js.map +1 -1
  528. package/lib/esm/ECSchemaProps.d.ts +39 -39
  529. package/lib/esm/ECSchemaProps.js +8 -8
  530. package/lib/esm/ECSchemaProps.js.map +1 -1
  531. package/lib/esm/ECSqlReader.d.ts +70 -70
  532. package/lib/esm/ECSqlReader.js +275 -275
  533. package/lib/esm/ECSqlReader.js.map +1 -1
  534. package/lib/esm/ECSqlTypes.d.ts +128 -128
  535. package/lib/esm/ECSqlTypes.js +185 -185
  536. package/lib/esm/ECSqlTypes.js.map +1 -1
  537. package/lib/esm/ElementProps.d.ts +476 -476
  538. package/lib/esm/ElementProps.js +92 -92
  539. package/lib/esm/ElementProps.js.map +1 -1
  540. package/lib/esm/EmphasizeElementsProps.d.ts +55 -55
  541. package/lib/esm/EmphasizeElementsProps.js +22 -22
  542. package/lib/esm/EmphasizeElementsProps.js.map +1 -1
  543. package/lib/esm/EntityProps.d.ts +176 -176
  544. package/lib/esm/EntityProps.js +107 -107
  545. package/lib/esm/EntityProps.js.map +1 -1
  546. package/lib/esm/Environment.d.ts +61 -61
  547. package/lib/esm/Environment.js +69 -69
  548. package/lib/esm/Environment.js.map +1 -1
  549. package/lib/esm/FeatureGates.d.ts +31 -31
  550. package/lib/esm/FeatureGates.js +51 -51
  551. package/lib/esm/FeatureGates.js.map +1 -1
  552. package/lib/esm/FeatureIndex.d.ts +39 -39
  553. package/lib/esm/FeatureIndex.js +57 -57
  554. package/lib/esm/FeatureIndex.js.map +1 -1
  555. package/lib/esm/FeatureSymbology.d.ts +444 -444
  556. package/lib/esm/FeatureSymbology.js +609 -609
  557. package/lib/esm/FeatureSymbology.js.map +1 -1
  558. package/lib/esm/FeatureTable.d.ts +141 -141
  559. package/lib/esm/FeatureTable.js +272 -272
  560. package/lib/esm/FeatureTable.js.map +1 -1
  561. package/lib/esm/Fonts.d.ts +51 -51
  562. package/lib/esm/Fonts.js +49 -49
  563. package/lib/esm/Fonts.js.map +1 -1
  564. package/lib/esm/Frustum.d.ts +114 -114
  565. package/lib/esm/Frustum.js +288 -288
  566. package/lib/esm/Frustum.js.map +1 -1
  567. package/lib/esm/GeoCoordinateServices.d.ts +119 -119
  568. package/lib/esm/GeoCoordinateServices.js +76 -76
  569. package/lib/esm/GeoCoordinateServices.js.map +1 -1
  570. package/lib/esm/GeometryContainment.d.ts +28 -28
  571. package/lib/esm/GeometryContainment.js +8 -8
  572. package/lib/esm/GeometryContainment.js.map +1 -1
  573. package/lib/esm/GeometryParams.d.ts +130 -130
  574. package/lib/esm/GeometryParams.js +170 -170
  575. package/lib/esm/GeometryParams.js.map +1 -1
  576. package/lib/esm/GeometrySummary.d.ts +45 -45
  577. package/lib/esm/GeometrySummary.js +20 -20
  578. package/lib/esm/GeometrySummary.js.map +1 -1
  579. package/lib/esm/Gradient.d.ts +139 -139
  580. package/lib/esm/Gradient.js +452 -452
  581. package/lib/esm/Gradient.js.map +1 -1
  582. package/lib/esm/GraphicParams.d.ts +58 -58
  583. package/lib/esm/GraphicParams.js +81 -81
  584. package/lib/esm/GraphicParams.js.map +1 -1
  585. package/lib/esm/GroundPlane.d.ts +52 -52
  586. package/lib/esm/GroundPlane.js +60 -60
  587. package/lib/esm/GroundPlane.js.map +1 -1
  588. package/lib/esm/HSLColor.d.ts +20 -20
  589. package/lib/esm/HSLColor.js +28 -28
  590. package/lib/esm/HSLColor.js.map +1 -1
  591. package/lib/esm/HSVColor.d.ts +30 -30
  592. package/lib/esm/HSVColor.js +55 -55
  593. package/lib/esm/HSVColor.js.map +1 -1
  594. package/lib/esm/HiddenLine.d.ts +97 -97
  595. package/lib/esm/HiddenLine.js +159 -159
  596. package/lib/esm/HiddenLine.js.map +1 -1
  597. package/lib/esm/Hilite.d.ts +50 -50
  598. package/lib/esm/Hilite.js +61 -61
  599. package/lib/esm/Hilite.js.map +1 -1
  600. package/lib/esm/IModel.d.ts +359 -359
  601. package/lib/esm/IModel.js +342 -342
  602. package/lib/esm/IModel.js.map +1 -1
  603. package/lib/esm/IModelError.d.ts +36 -36
  604. package/lib/esm/IModelError.js +55 -55
  605. package/lib/esm/IModelError.js.map +1 -1
  606. package/lib/esm/IModelVersion.d.ts +68 -68
  607. package/lib/esm/IModelVersion.js +75 -75
  608. package/lib/esm/IModelVersion.js.map +1 -1
  609. package/lib/esm/Image.d.ts +86 -86
  610. package/lib/esm/Image.js +120 -120
  611. package/lib/esm/Image.js.map +1 -1
  612. package/lib/esm/IpcAppProps.d.ts +124 -124
  613. package/lib/esm/IpcAppProps.js +15 -15
  614. package/lib/esm/IpcAppProps.js.map +1 -1
  615. package/lib/esm/LightSettings.d.ts +224 -224
  616. package/lib/esm/LightSettings.js +301 -301
  617. package/lib/esm/LightSettings.js.map +1 -1
  618. package/lib/esm/LinePixels.d.ts +34 -34
  619. package/lib/esm/LinePixels.js +39 -39
  620. package/lib/esm/LinePixels.js.map +1 -1
  621. package/lib/esm/Localization.d.ts +111 -111
  622. package/lib/esm/Localization.js +22 -22
  623. package/lib/esm/Localization.js.map +1 -1
  624. package/lib/esm/MapImagerySettings.d.ts +62 -62
  625. package/lib/esm/MapImagerySettings.js +76 -76
  626. package/lib/esm/MapImagerySettings.js.map +1 -1
  627. package/lib/esm/MapLayerSettings.d.ts +272 -272
  628. package/lib/esm/MapLayerSettings.js +403 -403
  629. package/lib/esm/MapLayerSettings.js.map +1 -1
  630. package/lib/esm/MassProperties.d.ts +64 -64
  631. package/lib/esm/MassProperties.js +20 -20
  632. package/lib/esm/MassProperties.js.map +1 -1
  633. package/lib/esm/MaterialProps.d.ts +118 -118
  634. package/lib/esm/MaterialProps.js +20 -20
  635. package/lib/esm/MaterialProps.js.map +1 -1
  636. package/lib/esm/ModelClipGroup.d.ts +67 -67
  637. package/lib/esm/ModelClipGroup.js +93 -93
  638. package/lib/esm/ModelClipGroup.js.map +1 -1
  639. package/lib/esm/ModelGeometryChanges.d.ts +107 -107
  640. package/lib/esm/ModelGeometryChanges.js +80 -80
  641. package/lib/esm/ModelGeometryChanges.js.map +1 -1
  642. package/lib/esm/ModelProps.d.ts +66 -66
  643. package/lib/esm/ModelProps.js +8 -8
  644. package/lib/esm/ModelProps.js.map +1 -1
  645. package/lib/esm/NativeAppProps.d.ts +122 -122
  646. package/lib/esm/NativeAppProps.js +27 -27
  647. package/lib/esm/NativeAppProps.js.map +1 -1
  648. package/lib/esm/OctEncodedNormal.d.ts +33 -33
  649. package/lib/esm/OctEncodedNormal.js +93 -93
  650. package/lib/esm/OctEncodedNormal.js.map +1 -1
  651. package/lib/esm/PlanProjectionSettings.d.ts +47 -47
  652. package/lib/esm/PlanProjectionSettings.js +59 -59
  653. package/lib/esm/PlanProjectionSettings.js.map +1 -1
  654. package/lib/esm/PlanarClipMask.d.ts +177 -177
  655. package/lib/esm/PlanarClipMask.js +132 -132
  656. package/lib/esm/PlanarClipMask.js.map +1 -1
  657. package/lib/esm/QPoint.d.ts +479 -479
  658. package/lib/esm/QPoint.js +815 -815
  659. package/lib/esm/QPoint.js.map +1 -1
  660. package/lib/esm/RealityDataAccessProps.d.ts +41 -41
  661. package/lib/esm/RealityDataAccessProps.js +16 -16
  662. package/lib/esm/RealityDataAccessProps.js.map +1 -1
  663. package/lib/esm/Render.d.ts +89 -89
  664. package/lib/esm/Render.js +165 -165
  665. package/lib/esm/Render.js.map +1 -1
  666. package/lib/esm/RenderMaterial.d.ts +58 -58
  667. package/lib/esm/RenderMaterial.js +72 -72
  668. package/lib/esm/RenderMaterial.js.map +1 -1
  669. package/lib/esm/RenderSchedule.d.ts +540 -540
  670. package/lib/esm/RenderSchedule.js +997 -997
  671. package/lib/esm/RenderTexture.d.ts +70 -70
  672. package/lib/esm/RenderTexture.js +55 -55
  673. package/lib/esm/RenderTexture.js.map +1 -1
  674. package/lib/esm/RgbColor.d.ts +39 -39
  675. package/lib/esm/RgbColor.js +63 -63
  676. package/lib/esm/RgbColor.js.map +1 -1
  677. package/lib/esm/RpcInterface.d.ts +33 -33
  678. package/lib/esm/RpcInterface.js +133 -133
  679. package/lib/esm/RpcInterface.js.map +1 -1
  680. package/lib/esm/RpcManager.d.ts +40 -40
  681. package/lib/esm/RpcManager.js +51 -51
  682. package/lib/esm/RpcManager.js.map +1 -1
  683. package/lib/esm/SessionProps.d.ts +16 -16
  684. package/lib/esm/SessionProps.js +8 -8
  685. package/lib/esm/SessionProps.js.map +1 -1
  686. package/lib/esm/SkyBox.d.ts +215 -215
  687. package/lib/esm/SkyBox.js +203 -203
  688. package/lib/esm/SkyBox.js.map +1 -1
  689. package/lib/esm/Snapping.d.ts +49 -49
  690. package/lib/esm/Snapping.js +8 -8
  691. package/lib/esm/Snapping.js.map +1 -1
  692. package/lib/esm/SolarCalculate.d.ts +27 -27
  693. package/lib/esm/SolarCalculate.js +204 -204
  694. package/lib/esm/SolarCalculate.js.map +1 -1
  695. package/lib/esm/SolarShadows.d.ts +35 -35
  696. package/lib/esm/SolarShadows.js +58 -58
  697. package/lib/esm/SolarShadows.js.map +1 -1
  698. package/lib/esm/SpatialClassification.d.ts +208 -208
  699. package/lib/esm/SpatialClassification.js +334 -334
  700. package/lib/esm/SpatialClassification.js.map +1 -1
  701. package/lib/esm/SubCategoryAppearance.d.ts +91 -91
  702. package/lib/esm/SubCategoryAppearance.js +92 -92
  703. package/lib/esm/SubCategoryAppearance.js.map +1 -1
  704. package/lib/esm/SubCategoryOverride.d.ts +46 -46
  705. package/lib/esm/SubCategoryOverride.js +100 -100
  706. package/lib/esm/SubCategoryOverride.js.map +1 -1
  707. package/lib/esm/TerrainSettings.d.ts +82 -82
  708. package/lib/esm/TerrainSettings.js +98 -98
  709. package/lib/esm/TerrainSettings.js.map +1 -1
  710. package/lib/esm/TextureMapping.d.ts +101 -101
  711. package/lib/esm/TextureMapping.js +170 -170
  712. package/lib/esm/TextureMapping.js.map +1 -1
  713. package/lib/esm/TextureProps.d.ts +65 -65
  714. package/lib/esm/TextureProps.js +25 -25
  715. package/lib/esm/TextureProps.js.map +1 -1
  716. package/lib/esm/ThematicDisplay.d.ts +230 -230
  717. package/lib/esm/ThematicDisplay.js +337 -337
  718. package/lib/esm/ThematicDisplay.js.map +1 -1
  719. package/lib/esm/Thumbnail.d.ts +26 -26
  720. package/lib/esm/Thumbnail.js +8 -8
  721. package/lib/esm/Thumbnail.js.map +1 -1
  722. package/lib/esm/TileProps.d.ts +82 -82
  723. package/lib/esm/TileProps.js +25 -25
  724. package/lib/esm/TileProps.js.map +1 -1
  725. package/lib/esm/Tween.d.ts +191 -191
  726. package/lib/esm/Tween.js +565 -565
  727. package/lib/esm/Tween.js.map +1 -1
  728. package/lib/esm/TxnAction.d.ts +21 -21
  729. package/lib/esm/TxnAction.js +26 -26
  730. package/lib/esm/TxnAction.js.map +1 -1
  731. package/lib/esm/ViewDetails.d.ts +125 -125
  732. package/lib/esm/ViewDetails.js +153 -153
  733. package/lib/esm/ViewDetails.js.map +1 -1
  734. package/lib/esm/ViewFlags.d.ts +291 -291
  735. package/lib/esm/ViewFlags.js +364 -364
  736. package/lib/esm/ViewFlags.js.map +1 -1
  737. package/lib/esm/ViewProps.d.ts +205 -205
  738. package/lib/esm/ViewProps.js +8 -8
  739. package/lib/esm/ViewProps.js.map +1 -1
  740. package/lib/esm/WhiteOnWhiteReversalSettings.d.ts +36 -36
  741. package/lib/esm/WhiteOnWhiteReversalSettings.js +33 -33
  742. package/lib/esm/WhiteOnWhiteReversalSettings.js.map +1 -1
  743. package/lib/esm/core-common.d.ts +240 -240
  744. package/lib/esm/core-common.js +244 -244
  745. package/lib/esm/core-common.js.map +1 -1
  746. package/lib/esm/domains/FunctionalElementProps.d.ts +11 -11
  747. package/lib/esm/domains/FunctionalElementProps.js +8 -8
  748. package/lib/esm/domains/FunctionalElementProps.js.map +1 -1
  749. package/lib/esm/domains/GenericElementProps.d.ts +18 -18
  750. package/lib/esm/domains/GenericElementProps.js +8 -8
  751. package/lib/esm/domains/GenericElementProps.js.map +1 -1
  752. package/lib/esm/geometry/AdditionalTransform.d.ts +84 -84
  753. package/lib/esm/geometry/AdditionalTransform.js +80 -80
  754. package/lib/esm/geometry/AdditionalTransform.js.map +1 -1
  755. package/lib/esm/geometry/AreaPattern.d.ts +82 -82
  756. package/lib/esm/geometry/AreaPattern.js +201 -201
  757. package/lib/esm/geometry/AreaPattern.js.map +1 -1
  758. package/lib/esm/geometry/BoundingSphere.d.ts +14 -14
  759. package/lib/esm/geometry/BoundingSphere.js +26 -26
  760. package/lib/esm/geometry/BoundingSphere.js.map +1 -1
  761. package/lib/esm/geometry/Cartographic.d.ts +137 -137
  762. package/lib/esm/geometry/Cartographic.js +340 -340
  763. package/lib/esm/geometry/Cartographic.js.map +1 -1
  764. package/lib/esm/geometry/CoordinateReferenceSystem.d.ts +269 -269
  765. package/lib/esm/geometry/CoordinateReferenceSystem.js +254 -254
  766. package/lib/esm/geometry/CoordinateReferenceSystem.js.map +1 -1
  767. package/lib/esm/geometry/ElementGeometry.d.ts +402 -402
  768. package/lib/esm/geometry/ElementGeometry.js +1716 -1716
  769. package/lib/esm/geometry/ElementGeometry.js.map +1 -1
  770. package/lib/esm/geometry/ElementGeometryFB.d.ts +2372 -2372
  771. package/lib/esm/geometry/ElementGeometryFB.js +3811 -3811
  772. package/lib/esm/geometry/ElementGeometryFB.js.map +1 -1
  773. package/lib/esm/geometry/FrustumPlanes.d.ts +32 -32
  774. package/lib/esm/geometry/FrustumPlanes.js +128 -128
  775. package/lib/esm/geometry/FrustumPlanes.js.map +1 -1
  776. package/lib/esm/geometry/GeodeticDatum.d.ts +409 -409
  777. package/lib/esm/geometry/GeodeticDatum.js +390 -390
  778. package/lib/esm/geometry/GeodeticDatum.js.map +1 -1
  779. package/lib/esm/geometry/GeodeticEllipsoid.d.ts +72 -72
  780. package/lib/esm/geometry/GeodeticEllipsoid.js +68 -68
  781. package/lib/esm/geometry/GeodeticEllipsoid.js.map +1 -1
  782. package/lib/esm/geometry/GeometryStream.d.ts +347 -347
  783. package/lib/esm/geometry/GeometryStream.js +464 -464
  784. package/lib/esm/geometry/GeometryStream.js.map +1 -1
  785. package/lib/esm/geometry/ImageGraphic.d.ts +74 -74
  786. package/lib/esm/geometry/ImageGraphic.js +93 -93
  787. package/lib/esm/geometry/ImageGraphic.js.map +1 -1
  788. package/lib/esm/geometry/LineStyle.d.ts +71 -71
  789. package/lib/esm/geometry/LineStyle.js +126 -126
  790. package/lib/esm/geometry/LineStyle.js.map +1 -1
  791. package/lib/esm/geometry/Placement.d.ts +95 -95
  792. package/lib/esm/geometry/Placement.js +126 -126
  793. package/lib/esm/geometry/Placement.js.map +1 -1
  794. package/lib/esm/geometry/Projection.d.ts +251 -251
  795. package/lib/esm/geometry/Projection.js +192 -192
  796. package/lib/esm/geometry/Projection.js.map +1 -1
  797. package/lib/esm/geometry/TextString.d.ts +55 -55
  798. package/lib/esm/geometry/TextString.js +61 -61
  799. package/lib/esm/geometry/TextString.js.map +1 -1
  800. package/lib/esm/ipc/IpcSession.d.ts +23 -23
  801. package/lib/esm/ipc/IpcSession.js +23 -23
  802. package/lib/esm/ipc/IpcSession.js.map +1 -1
  803. package/lib/esm/ipc/IpcSocket.d.ts +96 -96
  804. package/lib/esm/ipc/IpcSocket.js +12 -12
  805. package/lib/esm/ipc/IpcSocket.js.map +1 -1
  806. package/lib/esm/ipc/IpcWebSocket.d.ts +61 -61
  807. package/lib/esm/ipc/IpcWebSocket.js +145 -145
  808. package/lib/esm/ipc/IpcWebSocket.js.map +1 -1
  809. package/lib/esm/ipc/IpcWebSocketTransport.d.ts +15 -15
  810. package/lib/esm/ipc/IpcWebSocketTransport.js +154 -154
  811. package/lib/esm/ipc/IpcWebSocketTransport.js.map +1 -1
  812. package/lib/esm/rpc/DevToolsRpcInterface.d.ts +32 -32
  813. package/lib/esm/rpc/DevToolsRpcInterface.js +44 -44
  814. package/lib/esm/rpc/DevToolsRpcInterface.js.map +1 -1
  815. package/lib/esm/rpc/IModelReadRpcInterface.d.ts +75 -75
  816. package/lib/esm/rpc/IModelReadRpcInterface.js +110 -110
  817. package/lib/esm/rpc/IModelReadRpcInterface.js.map +1 -1
  818. package/lib/esm/rpc/IModelTileRpcInterface.d.ts +61 -61
  819. package/lib/esm/rpc/IModelTileRpcInterface.js +92 -92
  820. package/lib/esm/rpc/IModelTileRpcInterface.js.map +1 -1
  821. package/lib/esm/rpc/SnapshotIModelRpcInterface.d.ts +23 -23
  822. package/lib/esm/rpc/SnapshotIModelRpcInterface.js +44 -44
  823. package/lib/esm/rpc/SnapshotIModelRpcInterface.js.map +1 -1
  824. package/lib/esm/rpc/TestRpcManager.d.ts +20 -20
  825. package/lib/esm/rpc/TestRpcManager.js +35 -35
  826. package/lib/esm/rpc/TestRpcManager.js.map +1 -1
  827. package/lib/esm/rpc/WipRpcInterface.d.ts +29 -29
  828. package/lib/esm/rpc/WipRpcInterface.js +36 -36
  829. package/lib/esm/rpc/WipRpcInterface.js.map +1 -1
  830. package/lib/esm/rpc/core/RpcConfiguration.d.ts +111 -111
  831. package/lib/esm/rpc/core/RpcConfiguration.js +185 -185
  832. package/lib/esm/rpc/core/RpcConfiguration.js.map +1 -1
  833. package/lib/esm/rpc/core/RpcConstants.d.ts +85 -85
  834. package/lib/esm/rpc/core/RpcConstants.js +100 -100
  835. package/lib/esm/rpc/core/RpcConstants.js.map +1 -1
  836. package/lib/esm/rpc/core/RpcControl.d.ts +52 -52
  837. package/lib/esm/rpc/core/RpcControl.js +142 -142
  838. package/lib/esm/rpc/core/RpcControl.js.map +1 -1
  839. package/lib/esm/rpc/core/RpcInvocation.d.ts +89 -89
  840. package/lib/esm/rpc/core/RpcInvocation.js +253 -253
  841. package/lib/esm/rpc/core/RpcInvocation.js.map +1 -1
  842. package/lib/esm/rpc/core/RpcMarshaling.d.ts +36 -36
  843. package/lib/esm/rpc/core/RpcMarshaling.js +149 -149
  844. package/lib/esm/rpc/core/RpcMarshaling.js.map +1 -1
  845. package/lib/esm/rpc/core/RpcOperation.d.ts +67 -67
  846. package/lib/esm/rpc/core/RpcOperation.js +128 -128
  847. package/lib/esm/rpc/core/RpcOperation.js.map +1 -1
  848. package/lib/esm/rpc/core/RpcPendingQueue.d.ts +21 -21
  849. package/lib/esm/rpc/core/RpcPendingQueue.js +90 -90
  850. package/lib/esm/rpc/core/RpcPendingQueue.js.map +1 -1
  851. package/lib/esm/rpc/core/RpcProtocol.d.ts +132 -132
  852. package/lib/esm/rpc/core/RpcProtocol.js +123 -123
  853. package/lib/esm/rpc/core/RpcProtocol.js.map +1 -1
  854. package/lib/esm/rpc/core/RpcPush.d.ts +68 -68
  855. package/lib/esm/rpc/core/RpcPush.js +119 -119
  856. package/lib/esm/rpc/core/RpcPush.js.map +1 -1
  857. package/lib/esm/rpc/core/RpcRegistry.d.ts +48 -48
  858. package/lib/esm/rpc/core/RpcRegistry.js +194 -194
  859. package/lib/esm/rpc/core/RpcRegistry.js.map +1 -1
  860. package/lib/esm/rpc/core/RpcRequest.d.ts +186 -186
  861. package/lib/esm/rpc/core/RpcRequest.js +472 -472
  862. package/lib/esm/rpc/core/RpcRequest.js.map +1 -1
  863. package/lib/esm/rpc/core/RpcRequestContext.d.ts +14 -14
  864. package/lib/esm/rpc/core/RpcRequestContext.js +1 -1
  865. package/lib/esm/rpc/core/RpcRequestContext.js.map +1 -1
  866. package/lib/esm/rpc/core/RpcRoutingToken.d.ts +12 -12
  867. package/lib/esm/rpc/core/RpcRoutingToken.js +19 -19
  868. package/lib/esm/rpc/core/RpcRoutingToken.js.map +1 -1
  869. package/lib/esm/rpc/core/RpcSessionInvocation.d.ts +10 -10
  870. package/lib/esm/rpc/core/RpcSessionInvocation.js +55 -55
  871. package/lib/esm/rpc/core/RpcSessionInvocation.js.map +1 -1
  872. package/lib/esm/rpc/web/BentleyCloudRpcManager.d.ts +46 -46
  873. package/lib/esm/rpc/web/BentleyCloudRpcManager.js +68 -68
  874. package/lib/esm/rpc/web/BentleyCloudRpcManager.js.map +1 -1
  875. package/lib/esm/rpc/web/BentleyCloudRpcProtocol.d.ts +33 -33
  876. package/lib/esm/rpc/web/BentleyCloudRpcProtocol.js +138 -138
  877. package/lib/esm/rpc/web/BentleyCloudRpcProtocol.js.map +1 -1
  878. package/lib/esm/rpc/web/OpenAPI.d.ts +139 -139
  879. package/lib/esm/rpc/web/OpenAPI.js +56 -56
  880. package/lib/esm/rpc/web/OpenAPI.js.map +1 -1
  881. package/lib/esm/rpc/web/RpcMultipart.d.ts +31 -31
  882. package/lib/esm/rpc/web/RpcMultipart.js +41 -41
  883. package/lib/esm/rpc/web/RpcMultipart.js.map +1 -1
  884. package/lib/esm/rpc/web/WebAppRpcLogging.d.ts +17 -17
  885. package/lib/esm/rpc/web/WebAppRpcLogging.js +136 -136
  886. package/lib/esm/rpc/web/WebAppRpcLogging.js.map +1 -1
  887. package/lib/esm/rpc/web/WebAppRpcProtocol.d.ts +86 -86
  888. package/lib/esm/rpc/web/WebAppRpcProtocol.js +112 -112
  889. package/lib/esm/rpc/web/WebAppRpcProtocol.js.map +1 -1
  890. package/lib/esm/rpc/web/WebAppRpcRequest.d.ts +71 -71
  891. package/lib/esm/rpc/web/WebAppRpcRequest.js +370 -370
  892. package/lib/esm/rpc/web/WebAppRpcRequest.js.map +1 -1
  893. package/lib/esm/rpc/web/multipart/RpcMultipartParser.d.ts +33 -33
  894. package/lib/esm/rpc/web/multipart/RpcMultipartParser.js +355 -355
  895. package/lib/esm/rpc/web/multipart/RpcMultipartParser.js.map +1 -1
  896. package/lib/esm/tile/B3dmTileIO.d.ts +19 -19
  897. package/lib/esm/tile/B3dmTileIO.js +62 -62
  898. package/lib/esm/tile/B3dmTileIO.js.map +1 -1
  899. package/lib/esm/tile/CompositeTileIO.d.ts +15 -15
  900. package/lib/esm/tile/CompositeTileIO.js +22 -22
  901. package/lib/esm/tile/CompositeTileIO.js.map +1 -1
  902. package/lib/esm/tile/ElementGraphics.d.ts +134 -134
  903. package/lib/esm/tile/ElementGraphics.js +8 -8
  904. package/lib/esm/tile/ElementGraphics.js.map +1 -1
  905. package/lib/esm/tile/GltfTileIO.d.ts +45 -45
  906. package/lib/esm/tile/GltfTileIO.js +105 -105
  907. package/lib/esm/tile/GltfTileIO.js.map +1 -1
  908. package/lib/esm/tile/I3dmTileIO.d.ts +20 -20
  909. package/lib/esm/tile/I3dmTileIO.js +36 -36
  910. package/lib/esm/tile/I3dmTileIO.js.map +1 -1
  911. package/lib/esm/tile/IModelTileIO.d.ts +75 -75
  912. package/lib/esm/tile/IModelTileIO.js +90 -90
  913. package/lib/esm/tile/IModelTileIO.js.map +1 -1
  914. package/lib/esm/tile/PntsTileIO.d.ts +17 -17
  915. package/lib/esm/tile/PntsTileIO.js +22 -22
  916. package/lib/esm/tile/PntsTileIO.js.map +1 -1
  917. package/lib/esm/tile/TileIO.d.ts +66 -66
  918. package/lib/esm/tile/TileIO.js +110 -110
  919. package/lib/esm/tile/TileIO.js.map +1 -1
  920. package/lib/esm/tile/TileMetadata.d.ts +228 -228
  921. package/lib/esm/tile/TileMetadata.js +661 -661
  922. package/lib/esm/tile/TileMetadata.js.map +1 -1
  923. package/package.json +7 -7
@@ -1,134 +1,134 @@
1
- /*---------------------------------------------------------------------------------------------
2
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
- * See LICENSE.md in the project root for license terms and full copyright notice.
4
- *--------------------------------------------------------------------------------------------*/
5
- /** @packageDocumentation
6
- * @module RpcInterface
7
- */
8
- import * as semver from "semver";
9
- import { RpcConfiguration } from "./rpc/core/RpcConfiguration";
10
- import { CURRENT_REQUEST } from "./rpc/core/RpcRegistry";
11
- import { aggregateLoad, RpcRequest } from "./rpc/core/RpcRequest";
12
- import { RpcRoutingToken } from "./rpc/core/RpcRoutingToken";
13
- import { IpcSession } from "./ipc/IpcSession";
14
- import { BentleyStatus, IModelError, NoContentError } from "./IModelError";
15
- import { RpcRequestEvent, RpcRequestStatus } from "./rpc/core/RpcConstants";
16
- import { BeDuration } from "@itwin/core-bentley";
17
- /** An RPC interface is a set of operations exposed by a service that a client can call, using configurable protocols,
18
- * in a platform-independent way. TheRpcInterface class is the base class for RPC interface definitions and implementations.
19
- * @public
20
- */
21
- export class RpcInterface {
22
- /** @internal */
23
- constructor(routing = RpcRoutingToken.default) {
24
- this.routing = routing;
25
- this.configuration = RpcConfiguration.supply(this);
26
- }
27
- /** Determines whether the backend version of an RPC interface is compatible (according to semantic versioning) with the frontend version of the interface. */
28
- static isVersionCompatible(backend, frontend) {
29
- const difference = semver.diff(backend, frontend);
30
- if (semver.prerelease(backend) || semver.prerelease(frontend)) {
31
- return difference === null;
32
- }
33
- else if (semver.major(backend) === 0 || semver.major(frontend) === 0) {
34
- return difference === null || (difference === "patch" && semver.patch(frontend) < semver.patch(backend));
35
- }
36
- else {
37
- return difference === null || difference === "patch" || (difference === "minor" && semver.minor(frontend) < semver.minor(backend));
38
- }
39
- }
40
- /** Obtains the implementation result for an RPC operation. */
41
- async forward(parameters) {
42
- const parametersCompat = (arguments.length === 1 && typeof (parameters) === "object") ? parameters : arguments;
43
- const parametersArray = Array.isArray(parametersCompat) ? parametersCompat : Array.prototype.slice.call(parametersCompat);
44
- const operationName = parametersArray.pop();
45
- const session = IpcSession.active;
46
- if (session) {
47
- return intercept(session, this, operationName, parametersArray);
48
- }
49
- else {
50
- const request = new this.configuration.protocol.requestType(this, operationName, parametersArray);
51
- request.submit(); // eslint-disable-line @typescript-eslint/no-floating-promises
52
- this[CURRENT_REQUEST] = request;
53
- return request.response;
54
- }
55
- }
56
- }
57
- RpcInterface.prototype.configurationSupplier = undefined;
58
- class InterceptedRequest extends RpcRequest {
59
- async load() { throw new Error(); }
60
- async send() { throw new Error(); }
61
- setHeader(_name, _value) { throw new Error(); }
62
- }
63
- async function intercept(session, client, operation, parameters) {
64
- const request = new InterceptedRequest(client, operation, []);
65
- client[CURRENT_REQUEST] = request;
66
- const context = await client.configuration.protocol.serialize(request);
67
- request.parameters = parameters;
68
- const info = {
69
- definition: {
70
- interfaceName: context.operation.interfaceDefinition,
71
- interfaceVersion: context.operation.interfaceVersion,
72
- },
73
- operation,
74
- parameters,
75
- context: {
76
- applicationId: context.applicationId,
77
- applicationVersion: context.applicationVersion,
78
- id: context.id,
79
- sessionId: context.sessionId,
80
- protocolVersion: (context.protocolVersion || 0).toString(),
81
- },
82
- };
83
- const dispatch = async () => {
84
- aggregateLoad.lastRequest = new Date().getTime();
85
- const response = await session.handleRpc(info);
86
- aggregateLoad.lastResponse = new Date().getTime();
87
- if (typeof (response) === "object" && response.hasOwnProperty("iTwinRpcCoreResponse") && response.hasOwnProperty("managedStatus")) {
88
- const status = response;
89
- if (status.managedStatus === "pending") {
90
- return handlePending(request, status, dispatch);
91
- }
92
- else if (status.managedStatus === "notFound") {
93
- return handleNotFound(request, status, dispatch);
94
- }
95
- else if (status.managedStatus === "noContent") {
96
- return handleNoContent();
97
- }
98
- }
99
- else {
100
- return response;
101
- }
102
- };
103
- return dispatch();
104
- }
105
- async function handlePending(request, status, dispatch) {
106
- request._status = RpcRequestStatus.Pending;
107
- request._extendedStatus = status.responseValue.message;
108
- RpcRequest.events.raiseEvent(RpcRequestEvent.PendingUpdateReceived, request);
109
- const delay = request.operation.policy.retryInterval(request.client.configuration);
110
- await BeDuration.wait(delay);
111
- return dispatch();
112
- }
113
- async function handleNotFound(request, status, dispatch) {
114
- return new Promise((resolve, reject) => {
115
- let resubmitted = false;
116
- RpcRequest.notFoundHandlers.raiseEvent(request, status.responseValue, async () => {
117
- if (resubmitted) {
118
- throw new IModelError(BentleyStatus.ERROR, `Already resubmitted using this handler.`);
119
- }
120
- resubmitted = true;
121
- try {
122
- const response = await dispatch();
123
- resolve(response);
124
- }
125
- catch (err) {
126
- reject(err);
127
- }
128
- }, reject);
129
- });
130
- }
131
- async function handleNoContent() {
132
- throw new NoContentError();
133
- }
1
+ /*---------------------------------------------------------------------------------------------
2
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
+ * See LICENSE.md in the project root for license terms and full copyright notice.
4
+ *--------------------------------------------------------------------------------------------*/
5
+ /** @packageDocumentation
6
+ * @module RpcInterface
7
+ */
8
+ import * as semver from "semver";
9
+ import { RpcConfiguration } from "./rpc/core/RpcConfiguration";
10
+ import { CURRENT_REQUEST } from "./rpc/core/RpcRegistry";
11
+ import { aggregateLoad, RpcRequest } from "./rpc/core/RpcRequest";
12
+ import { RpcRoutingToken } from "./rpc/core/RpcRoutingToken";
13
+ import { IpcSession } from "./ipc/IpcSession";
14
+ import { BentleyStatus, IModelError, NoContentError } from "./IModelError";
15
+ import { RpcRequestEvent, RpcRequestStatus } from "./rpc/core/RpcConstants";
16
+ import { BeDuration } from "@itwin/core-bentley";
17
+ /** An RPC interface is a set of operations exposed by a service that a client can call, using configurable protocols,
18
+ * in a platform-independent way. TheRpcInterface class is the base class for RPC interface definitions and implementations.
19
+ * @public
20
+ */
21
+ export class RpcInterface {
22
+ /** @internal */
23
+ constructor(routing = RpcRoutingToken.default) {
24
+ this.routing = routing;
25
+ this.configuration = RpcConfiguration.supply(this);
26
+ }
27
+ /** Determines whether the backend version of an RPC interface is compatible (according to semantic versioning) with the frontend version of the interface. */
28
+ static isVersionCompatible(backend, frontend) {
29
+ const difference = semver.diff(backend, frontend);
30
+ if (semver.prerelease(backend) || semver.prerelease(frontend)) {
31
+ return difference === null;
32
+ }
33
+ else if (semver.major(backend) === 0 || semver.major(frontend) === 0) {
34
+ return difference === null || (difference === "patch" && semver.patch(frontend) < semver.patch(backend));
35
+ }
36
+ else {
37
+ return difference === null || difference === "patch" || (difference === "minor" && semver.minor(frontend) < semver.minor(backend));
38
+ }
39
+ }
40
+ /** Obtains the implementation result for an RPC operation. */
41
+ async forward(parameters) {
42
+ const parametersCompat = (arguments.length === 1 && typeof (parameters) === "object") ? parameters : arguments;
43
+ const parametersArray = Array.isArray(parametersCompat) ? parametersCompat : Array.prototype.slice.call(parametersCompat);
44
+ const operationName = parametersArray.pop();
45
+ const session = IpcSession.active;
46
+ if (session) {
47
+ return intercept(session, this, operationName, parametersArray);
48
+ }
49
+ else {
50
+ const request = new this.configuration.protocol.requestType(this, operationName, parametersArray);
51
+ request.submit(); // eslint-disable-line @typescript-eslint/no-floating-promises
52
+ this[CURRENT_REQUEST] = request;
53
+ return request.response;
54
+ }
55
+ }
56
+ }
57
+ RpcInterface.prototype.configurationSupplier = undefined;
58
+ class InterceptedRequest extends RpcRequest {
59
+ async load() { throw new Error(); }
60
+ async send() { throw new Error(); }
61
+ setHeader(_name, _value) { throw new Error(); }
62
+ }
63
+ async function intercept(session, client, operation, parameters) {
64
+ const request = new InterceptedRequest(client, operation, []);
65
+ client[CURRENT_REQUEST] = request;
66
+ const context = await client.configuration.protocol.serialize(request);
67
+ request.parameters = parameters;
68
+ const info = {
69
+ definition: {
70
+ interfaceName: context.operation.interfaceDefinition,
71
+ interfaceVersion: context.operation.interfaceVersion,
72
+ },
73
+ operation,
74
+ parameters,
75
+ context: {
76
+ applicationId: context.applicationId,
77
+ applicationVersion: context.applicationVersion,
78
+ id: context.id,
79
+ sessionId: context.sessionId,
80
+ protocolVersion: (context.protocolVersion || 0).toString(),
81
+ },
82
+ };
83
+ const dispatch = async () => {
84
+ aggregateLoad.lastRequest = new Date().getTime();
85
+ const response = await session.handleRpc(info);
86
+ aggregateLoad.lastResponse = new Date().getTime();
87
+ if (typeof (response) === "object" && response.hasOwnProperty("iTwinRpcCoreResponse") && response.hasOwnProperty("managedStatus")) {
88
+ const status = response;
89
+ if (status.managedStatus === "pending") {
90
+ return handlePending(request, status, dispatch);
91
+ }
92
+ else if (status.managedStatus === "notFound") {
93
+ return handleNotFound(request, status, dispatch);
94
+ }
95
+ else if (status.managedStatus === "noContent") {
96
+ return handleNoContent();
97
+ }
98
+ }
99
+ else {
100
+ return response;
101
+ }
102
+ };
103
+ return dispatch();
104
+ }
105
+ async function handlePending(request, status, dispatch) {
106
+ request._status = RpcRequestStatus.Pending;
107
+ request._extendedStatus = status.responseValue.message;
108
+ RpcRequest.events.raiseEvent(RpcRequestEvent.PendingUpdateReceived, request);
109
+ const delay = request.operation.policy.retryInterval(request.client.configuration);
110
+ await BeDuration.wait(delay);
111
+ return dispatch();
112
+ }
113
+ async function handleNotFound(request, status, dispatch) {
114
+ return new Promise((resolve, reject) => {
115
+ let resubmitted = false;
116
+ RpcRequest.notFoundHandlers.raiseEvent(request, status.responseValue, async () => {
117
+ if (resubmitted) {
118
+ throw new IModelError(BentleyStatus.ERROR, `Already resubmitted using this handler.`);
119
+ }
120
+ resubmitted = true;
121
+ try {
122
+ const response = await dispatch();
123
+ resolve(response);
124
+ }
125
+ catch (err) {
126
+ reject(err);
127
+ }
128
+ }, reject);
129
+ });
130
+ }
131
+ async function handleNoContent() {
132
+ throw new NoContentError();
133
+ }
134
134
  //# sourceMappingURL=RpcInterface.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"RpcInterface.js","sourceRoot":"","sources":["../../src/RpcInterface.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 RpcInterface\n */\n\nimport * as semver from \"semver\";\nimport { RpcConfiguration, RpcConfigurationSupplier } from \"./rpc/core/RpcConfiguration\";\nimport { CURRENT_REQUEST } from \"./rpc/core/RpcRegistry\";\nimport { aggregateLoad, RpcRequest } from \"./rpc/core/RpcRequest\";\nimport { RpcRoutingToken } from \"./rpc/core/RpcRoutingToken\";\nimport { InterceptedRpcRequest, IpcSession } from \"./ipc/IpcSession\";\nimport { RpcSerializedValue } from \"./rpc/core/RpcMarshaling\";\nimport { RpcManagedStatus } from \"./rpc/core/RpcProtocol\";\nimport { BentleyStatus, IModelError, NoContentError } from \"./IModelError\";\nimport { RpcRequestEvent, RpcRequestStatus } from \"./rpc/core/RpcConstants\";\nimport { BeDuration } from \"@itwin/core-bentley\";\nimport { RpcNotFoundResponse } from \"./rpc/core/RpcControl\";\n\n/** @internal */\nexport interface RpcInterfaceDefinition<T extends RpcInterface = RpcInterface> { prototype: T, interfaceName: string, interfaceVersion: string }\n\n/** @internal */\nexport type RpcInterfaceImplementation<T extends RpcInterface = RpcInterface> = new () => T;\n\n/** An RPC interface is a set of operations exposed by a service that a client can call, using configurable protocols,\n * in a platform-independent way. TheRpcInterface class is the base class for RPC interface definitions and implementations.\n * @public\n */\nexport abstract class RpcInterface {\n /** Determines whether the backend version of an RPC interface is compatible (according to semantic versioning) with the frontend version of the interface. */\n public static isVersionCompatible(backend: string, frontend: string): boolean {\n const difference = semver.diff(backend, frontend);\n if (semver.prerelease(backend) || semver.prerelease(frontend)) {\n return difference === null;\n } else if (semver.major(backend) === 0 || semver.major(frontend) === 0) {\n return difference === null || (difference === \"patch\" && semver.patch(frontend) < semver.patch(backend));\n } else {\n return difference === null || difference === \"patch\" || (difference === \"minor\" && semver.minor(frontend) < semver.minor(backend));\n }\n }\n\n /** The configuration for the RPC interface.\n * @internal\n */\n public readonly configuration: RpcConfiguration;\n\n /** @internal */\n public readonly routing: RpcRoutingToken;\n\n /** @internal */\n public constructor(routing: RpcRoutingToken = RpcRoutingToken.default) {\n this.routing = routing;\n this.configuration = RpcConfiguration.supply(this);\n }\n\n /** Obtains the implementation result for an RPC operation. */\n public async forward<T = any>(parameters: IArguments): Promise<T> {\n const parametersCompat = (arguments.length === 1 && typeof (parameters) === \"object\") ? parameters : arguments;\n const parametersArray = Array.isArray(parametersCompat) ? parametersCompat : Array.prototype.slice.call(parametersCompat);\n const operationName = parametersArray.pop();\n\n const session = IpcSession.active;\n if (session) {\n return intercept(session, this, operationName, parametersArray);\n } else {\n const request = new (this.configuration.protocol.requestType as any)(this, operationName, parametersArray) as RpcRequest;\n request.submit(); // eslint-disable-line @typescript-eslint/no-floating-promises\n (this as any)[CURRENT_REQUEST] = request;\n return request.response;\n }\n }\n\n /** @internal */\n public configurationSupplier: RpcConfigurationSupplier | undefined;\n}\n\nRpcInterface.prototype.configurationSupplier = undefined;\n\nclass InterceptedRequest extends RpcRequest {\n protected override async load(): Promise<RpcSerializedValue> { throw new Error(); }\n protected override async send(): Promise<number> { throw new Error(); }\n protected override setHeader(_name: string, _value: string): void { throw new Error(); }\n}\n\nasync function intercept(session: IpcSession, client: RpcInterface, operation: string, parameters: any[]) {\n const request = new InterceptedRequest(client, operation, []);\n (client as any)[CURRENT_REQUEST] = request;\n\n const context = await client.configuration.protocol.serialize(request);\n request.parameters = parameters;\n\n const info: InterceptedRpcRequest = {\n definition: {\n interfaceName: context.operation.interfaceDefinition,\n interfaceVersion: context.operation.interfaceVersion,\n },\n operation,\n parameters,\n context: {\n applicationId: context.applicationId,\n applicationVersion: context.applicationVersion,\n id: context.id,\n sessionId: context.sessionId,\n protocolVersion: (context.protocolVersion || 0).toString(),\n },\n };\n\n const dispatch = async () => {\n aggregateLoad.lastRequest = new Date().getTime();\n\n const response = await session.handleRpc(info);\n\n aggregateLoad.lastResponse = new Date().getTime();\n\n if (typeof (response) === \"object\" && response.hasOwnProperty(\"iTwinRpcCoreResponse\") && response.hasOwnProperty(\"managedStatus\")) {\n const status: RpcManagedStatus = response;\n\n if (status.managedStatus === \"pending\") {\n return handlePending(request, status, dispatch);\n } else if (status.managedStatus === \"notFound\") {\n return handleNotFound(request, status, dispatch);\n } else if (status.managedStatus === \"noContent\") {\n return handleNoContent();\n }\n } else {\n return response;\n }\n };\n\n return dispatch();\n}\n\nasync function handlePending(request: InterceptedRequest, status: RpcManagedStatus, dispatch: () => Promise<any>) {\n request._status = RpcRequestStatus.Pending;\n request._extendedStatus = (status.responseValue as { message: string }).message;\n RpcRequest.events.raiseEvent(RpcRequestEvent.PendingUpdateReceived, request);\n\n const delay = request.operation.policy.retryInterval(request.client.configuration);\n\n await BeDuration.wait(delay);\n return dispatch();\n}\n\nasync function handleNotFound(request: InterceptedRequest, status: RpcManagedStatus, dispatch: () => Promise<any>) {\n return new Promise((resolve, reject) => {\n let resubmitted = false;\n\n RpcRequest.notFoundHandlers.raiseEvent(request, status.responseValue as RpcNotFoundResponse, async () => {\n if (resubmitted) {\n throw new IModelError(BentleyStatus.ERROR, `Already resubmitted using this handler.`);\n }\n\n resubmitted = true;\n\n try {\n const response = await dispatch();\n resolve(response);\n } catch (err) {\n reject(err);\n }\n }, reject);\n });\n}\n\nasync function handleNoContent() {\n throw new NoContentError();\n}\n"]}
1
+ {"version":3,"file":"RpcInterface.js","sourceRoot":"","sources":["../../src/RpcInterface.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 RpcInterface\r\n */\r\n\r\nimport * as semver from \"semver\";\r\nimport { RpcConfiguration, RpcConfigurationSupplier } from \"./rpc/core/RpcConfiguration\";\r\nimport { CURRENT_REQUEST } from \"./rpc/core/RpcRegistry\";\r\nimport { aggregateLoad, RpcRequest } from \"./rpc/core/RpcRequest\";\r\nimport { RpcRoutingToken } from \"./rpc/core/RpcRoutingToken\";\r\nimport { InterceptedRpcRequest, IpcSession } from \"./ipc/IpcSession\";\r\nimport { RpcSerializedValue } from \"./rpc/core/RpcMarshaling\";\r\nimport { RpcManagedStatus } from \"./rpc/core/RpcProtocol\";\r\nimport { BentleyStatus, IModelError, NoContentError } from \"./IModelError\";\r\nimport { RpcRequestEvent, RpcRequestStatus } from \"./rpc/core/RpcConstants\";\r\nimport { BeDuration } from \"@itwin/core-bentley\";\r\nimport { RpcNotFoundResponse } from \"./rpc/core/RpcControl\";\r\n\r\n/** @internal */\r\nexport interface RpcInterfaceDefinition<T extends RpcInterface = RpcInterface> { prototype: T, interfaceName: string, interfaceVersion: string }\r\n\r\n/** @internal */\r\nexport type RpcInterfaceImplementation<T extends RpcInterface = RpcInterface> = new () => T;\r\n\r\n/** An RPC interface is a set of operations exposed by a service that a client can call, using configurable protocols,\r\n * in a platform-independent way. TheRpcInterface class is the base class for RPC interface definitions and implementations.\r\n * @public\r\n */\r\nexport abstract class RpcInterface {\r\n /** Determines whether the backend version of an RPC interface is compatible (according to semantic versioning) with the frontend version of the interface. */\r\n public static isVersionCompatible(backend: string, frontend: string): boolean {\r\n const difference = semver.diff(backend, frontend);\r\n if (semver.prerelease(backend) || semver.prerelease(frontend)) {\r\n return difference === null;\r\n } else if (semver.major(backend) === 0 || semver.major(frontend) === 0) {\r\n return difference === null || (difference === \"patch\" && semver.patch(frontend) < semver.patch(backend));\r\n } else {\r\n return difference === null || difference === \"patch\" || (difference === \"minor\" && semver.minor(frontend) < semver.minor(backend));\r\n }\r\n }\r\n\r\n /** The configuration for the RPC interface.\r\n * @internal\r\n */\r\n public readonly configuration: RpcConfiguration;\r\n\r\n /** @internal */\r\n public readonly routing: RpcRoutingToken;\r\n\r\n /** @internal */\r\n public constructor(routing: RpcRoutingToken = RpcRoutingToken.default) {\r\n this.routing = routing;\r\n this.configuration = RpcConfiguration.supply(this);\r\n }\r\n\r\n /** Obtains the implementation result for an RPC operation. */\r\n public async forward<T = any>(parameters: IArguments): Promise<T> {\r\n const parametersCompat = (arguments.length === 1 && typeof (parameters) === \"object\") ? parameters : arguments;\r\n const parametersArray = Array.isArray(parametersCompat) ? parametersCompat : Array.prototype.slice.call(parametersCompat);\r\n const operationName = parametersArray.pop();\r\n\r\n const session = IpcSession.active;\r\n if (session) {\r\n return intercept(session, this, operationName, parametersArray);\r\n } else {\r\n const request = new (this.configuration.protocol.requestType as any)(this, operationName, parametersArray) as RpcRequest;\r\n request.submit(); // eslint-disable-line @typescript-eslint/no-floating-promises\r\n (this as any)[CURRENT_REQUEST] = request;\r\n return request.response;\r\n }\r\n }\r\n\r\n /** @internal */\r\n public configurationSupplier: RpcConfigurationSupplier | undefined;\r\n}\r\n\r\nRpcInterface.prototype.configurationSupplier = undefined;\r\n\r\nclass InterceptedRequest extends RpcRequest {\r\n protected override async load(): Promise<RpcSerializedValue> { throw new Error(); }\r\n protected override async send(): Promise<number> { throw new Error(); }\r\n protected override setHeader(_name: string, _value: string): void { throw new Error(); }\r\n}\r\n\r\nasync function intercept(session: IpcSession, client: RpcInterface, operation: string, parameters: any[]) {\r\n const request = new InterceptedRequest(client, operation, []);\r\n (client as any)[CURRENT_REQUEST] = request;\r\n\r\n const context = await client.configuration.protocol.serialize(request);\r\n request.parameters = parameters;\r\n\r\n const info: InterceptedRpcRequest = {\r\n definition: {\r\n interfaceName: context.operation.interfaceDefinition,\r\n interfaceVersion: context.operation.interfaceVersion,\r\n },\r\n operation,\r\n parameters,\r\n context: {\r\n applicationId: context.applicationId,\r\n applicationVersion: context.applicationVersion,\r\n id: context.id,\r\n sessionId: context.sessionId,\r\n protocolVersion: (context.protocolVersion || 0).toString(),\r\n },\r\n };\r\n\r\n const dispatch = async () => {\r\n aggregateLoad.lastRequest = new Date().getTime();\r\n\r\n const response = await session.handleRpc(info);\r\n\r\n aggregateLoad.lastResponse = new Date().getTime();\r\n\r\n if (typeof (response) === \"object\" && response.hasOwnProperty(\"iTwinRpcCoreResponse\") && response.hasOwnProperty(\"managedStatus\")) {\r\n const status: RpcManagedStatus = response;\r\n\r\n if (status.managedStatus === \"pending\") {\r\n return handlePending(request, status, dispatch);\r\n } else if (status.managedStatus === \"notFound\") {\r\n return handleNotFound(request, status, dispatch);\r\n } else if (status.managedStatus === \"noContent\") {\r\n return handleNoContent();\r\n }\r\n } else {\r\n return response;\r\n }\r\n };\r\n\r\n return dispatch();\r\n}\r\n\r\nasync function handlePending(request: InterceptedRequest, status: RpcManagedStatus, dispatch: () => Promise<any>) {\r\n request._status = RpcRequestStatus.Pending;\r\n request._extendedStatus = (status.responseValue as { message: string }).message;\r\n RpcRequest.events.raiseEvent(RpcRequestEvent.PendingUpdateReceived, request);\r\n\r\n const delay = request.operation.policy.retryInterval(request.client.configuration);\r\n\r\n await BeDuration.wait(delay);\r\n return dispatch();\r\n}\r\n\r\nasync function handleNotFound(request: InterceptedRequest, status: RpcManagedStatus, dispatch: () => Promise<any>) {\r\n return new Promise((resolve, reject) => {\r\n let resubmitted = false;\r\n\r\n RpcRequest.notFoundHandlers.raiseEvent(request, status.responseValue as RpcNotFoundResponse, async () => {\r\n if (resubmitted) {\r\n throw new IModelError(BentleyStatus.ERROR, `Already resubmitted using this handler.`);\r\n }\r\n\r\n resubmitted = true;\r\n\r\n try {\r\n const response = await dispatch();\r\n resolve(response);\r\n } catch (err) {\r\n reject(err);\r\n }\r\n }, reject);\r\n });\r\n}\r\n\r\nasync function handleNoContent() {\r\n throw new NoContentError();\r\n}\r\n"]}
@@ -1,41 +1,41 @@
1
- /** @packageDocumentation
2
- * @module RpcInterface
3
- */
4
- import { IModelRpcProps } from "./IModel";
5
- import { RpcInterface, RpcInterfaceDefinition, RpcInterfaceImplementation } from "./RpcInterface";
6
- import { RpcRoutingToken } from "./rpc/core/RpcRoutingToken";
7
- /** Describes the endpoints of an RPC interface.
8
- * @internal
9
- */
10
- export interface RpcInterfaceEndpoints {
11
- interfaceName: string;
12
- interfaceVersion: string;
13
- operationNames: string[];
14
- compatible: boolean;
15
- }
16
- /** RPC interface management is concerned with coordination of access and configuration for RPC interfaces.
17
- * @internal
18
- */
19
- export declare class RpcManager {
20
- /** Initializes an RPC interface class.
21
- * @note This function must be called on the frontend and on the backend for each RPC interface class used by an application.
22
- */
23
- static initializeInterface<T extends RpcInterface>(definition: RpcInterfaceDefinition<T>): void;
24
- /** Terminates an RPC interface class. */
25
- static terminateInterface<T extends RpcInterface>(definition: RpcInterfaceDefinition<T>): void;
26
- /** Returns the RPC client instance for the frontend. */
27
- static getClientForInterface<T extends RpcInterface>(definition: RpcInterfaceDefinition<T>, routing?: RpcRoutingToken): T;
28
- /** Register the RPC implementation class for the backend. */
29
- static registerImpl<TDefinition extends RpcInterface, TImplementation extends TDefinition>(definition: RpcInterfaceDefinition<TDefinition>, implementation: RpcInterfaceImplementation<TImplementation>): void;
30
- /** Supply the instance of the RPC interface implementation class for the backend (optional). */
31
- static supplyImplInstance<TDefinition extends RpcInterface, TImplementation extends TDefinition>(definition: RpcInterfaceDefinition<TDefinition>, instance: TImplementation): void;
32
- /** Unregister the RPC implementation class for the backend. */
33
- static unregisterImpl<TDefinition extends RpcInterface>(definition: RpcInterfaceDefinition<TDefinition>): void;
34
- /** Describes the RPC interfaces and endpoints that are currently available from the backend.
35
- * @note Some endpoints may be marked incompatible if the frontend expected a different interface declaration than the backend supplied. RPC operations against an incompatible interface will fail.
36
- */
37
- static describeAvailableEndpoints(): Promise<RpcInterfaceEndpoints[]>;
38
- /** Configures RPC protocols that employ iModel-based routing infrastructure. */
39
- static setIModel(props: IModelRpcProps): void;
40
- }
1
+ /** @packageDocumentation
2
+ * @module RpcInterface
3
+ */
4
+ import { IModelRpcProps } from "./IModel";
5
+ import { RpcInterface, RpcInterfaceDefinition, RpcInterfaceImplementation } from "./RpcInterface";
6
+ import { RpcRoutingToken } from "./rpc/core/RpcRoutingToken";
7
+ /** Describes the endpoints of an RPC interface.
8
+ * @internal
9
+ */
10
+ export interface RpcInterfaceEndpoints {
11
+ interfaceName: string;
12
+ interfaceVersion: string;
13
+ operationNames: string[];
14
+ compatible: boolean;
15
+ }
16
+ /** RPC interface management is concerned with coordination of access and configuration for RPC interfaces.
17
+ * @internal
18
+ */
19
+ export declare class RpcManager {
20
+ /** Initializes an RPC interface class.
21
+ * @note This function must be called on the frontend and on the backend for each RPC interface class used by an application.
22
+ */
23
+ static initializeInterface<T extends RpcInterface>(definition: RpcInterfaceDefinition<T>): void;
24
+ /** Terminates an RPC interface class. */
25
+ static terminateInterface<T extends RpcInterface>(definition: RpcInterfaceDefinition<T>): void;
26
+ /** Returns the RPC client instance for the frontend. */
27
+ static getClientForInterface<T extends RpcInterface>(definition: RpcInterfaceDefinition<T>, routing?: RpcRoutingToken): T;
28
+ /** Register the RPC implementation class for the backend. */
29
+ static registerImpl<TDefinition extends RpcInterface, TImplementation extends TDefinition>(definition: RpcInterfaceDefinition<TDefinition>, implementation: RpcInterfaceImplementation<TImplementation>): void;
30
+ /** Supply the instance of the RPC interface implementation class for the backend (optional). */
31
+ static supplyImplInstance<TDefinition extends RpcInterface, TImplementation extends TDefinition>(definition: RpcInterfaceDefinition<TDefinition>, instance: TImplementation): void;
32
+ /** Unregister the RPC implementation class for the backend. */
33
+ static unregisterImpl<TDefinition extends RpcInterface>(definition: RpcInterfaceDefinition<TDefinition>): void;
34
+ /** Describes the RPC interfaces and endpoints that are currently available from the backend.
35
+ * @note Some endpoints may be marked incompatible if the frontend expected a different interface declaration than the backend supplied. RPC operations against an incompatible interface will fail.
36
+ */
37
+ static describeAvailableEndpoints(): Promise<RpcInterfaceEndpoints[]>;
38
+ /** Configures RPC protocols that employ iModel-based routing infrastructure. */
39
+ static setIModel(props: IModelRpcProps): void;
40
+ }
41
41
  //# sourceMappingURL=RpcManager.d.ts.map
@@ -1,52 +1,52 @@
1
- /*---------------------------------------------------------------------------------------------
2
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
- * See LICENSE.md in the project root for license terms and full copyright notice.
4
- *--------------------------------------------------------------------------------------------*/
5
- /** @packageDocumentation
6
- * @module RpcInterface
7
- */
8
- import { RpcOperation } from "./rpc/core/RpcOperation";
9
- import { RpcRegistry } from "./rpc/core/RpcRegistry";
10
- import { RpcRoutingToken } from "./rpc/core/RpcRoutingToken";
11
- /** RPC interface management is concerned with coordination of access and configuration for RPC interfaces.
12
- * @internal
13
- */
14
- export class RpcManager {
15
- /** Initializes an RPC interface class.
16
- * @note This function must be called on the frontend and on the backend for each RPC interface class used by an application.
17
- */
18
- static initializeInterface(definition) {
19
- RpcRegistry.instance.initializeRpcInterface(definition);
20
- }
21
- /** Terminates an RPC interface class. */
22
- static terminateInterface(definition) {
23
- RpcRegistry.instance.terminateRpcInterface(definition);
24
- }
25
- /** Returns the RPC client instance for the frontend. */
26
- static getClientForInterface(definition, routing = RpcRoutingToken.default) {
27
- return RpcRegistry.instance.getClientForInterface(definition, routing);
28
- }
29
- /** Register the RPC implementation class for the backend. */
30
- static registerImpl(definition, implementation) {
31
- RpcRegistry.instance.registerImpl(definition, implementation);
32
- }
33
- /** Supply the instance of the RPC interface implementation class for the backend (optional). */
34
- static supplyImplInstance(definition, instance) {
35
- RpcRegistry.instance.supplyImplInstance(definition, instance);
36
- }
37
- /** Unregister the RPC implementation class for the backend. */
38
- static unregisterImpl(definition) {
39
- RpcRegistry.instance.unregisterImpl(definition);
40
- }
41
- /** Describes the RPC interfaces and endpoints that are currently available from the backend.
42
- * @note Some endpoints may be marked incompatible if the frontend expected a different interface declaration than the backend supplied. RPC operations against an incompatible interface will fail.
43
- */
44
- static async describeAvailableEndpoints() {
45
- return RpcRegistry.instance.describeAvailableEndpoints();
46
- }
47
- /** Configures RPC protocols that employ iModel-based routing infrastructure. */
48
- static setIModel(props) {
49
- RpcOperation.fallbackToken = props;
50
- }
51
- }
1
+ /*---------------------------------------------------------------------------------------------
2
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
+ * See LICENSE.md in the project root for license terms and full copyright notice.
4
+ *--------------------------------------------------------------------------------------------*/
5
+ /** @packageDocumentation
6
+ * @module RpcInterface
7
+ */
8
+ import { RpcOperation } from "./rpc/core/RpcOperation";
9
+ import { RpcRegistry } from "./rpc/core/RpcRegistry";
10
+ import { RpcRoutingToken } from "./rpc/core/RpcRoutingToken";
11
+ /** RPC interface management is concerned with coordination of access and configuration for RPC interfaces.
12
+ * @internal
13
+ */
14
+ export class RpcManager {
15
+ /** Initializes an RPC interface class.
16
+ * @note This function must be called on the frontend and on the backend for each RPC interface class used by an application.
17
+ */
18
+ static initializeInterface(definition) {
19
+ RpcRegistry.instance.initializeRpcInterface(definition);
20
+ }
21
+ /** Terminates an RPC interface class. */
22
+ static terminateInterface(definition) {
23
+ RpcRegistry.instance.terminateRpcInterface(definition);
24
+ }
25
+ /** Returns the RPC client instance for the frontend. */
26
+ static getClientForInterface(definition, routing = RpcRoutingToken.default) {
27
+ return RpcRegistry.instance.getClientForInterface(definition, routing);
28
+ }
29
+ /** Register the RPC implementation class for the backend. */
30
+ static registerImpl(definition, implementation) {
31
+ RpcRegistry.instance.registerImpl(definition, implementation);
32
+ }
33
+ /** Supply the instance of the RPC interface implementation class for the backend (optional). */
34
+ static supplyImplInstance(definition, instance) {
35
+ RpcRegistry.instance.supplyImplInstance(definition, instance);
36
+ }
37
+ /** Unregister the RPC implementation class for the backend. */
38
+ static unregisterImpl(definition) {
39
+ RpcRegistry.instance.unregisterImpl(definition);
40
+ }
41
+ /** Describes the RPC interfaces and endpoints that are currently available from the backend.
42
+ * @note Some endpoints may be marked incompatible if the frontend expected a different interface declaration than the backend supplied. RPC operations against an incompatible interface will fail.
43
+ */
44
+ static async describeAvailableEndpoints() {
45
+ return RpcRegistry.instance.describeAvailableEndpoints();
46
+ }
47
+ /** Configures RPC protocols that employ iModel-based routing infrastructure. */
48
+ static setIModel(props) {
49
+ RpcOperation.fallbackToken = props;
50
+ }
51
+ }
52
52
  //# sourceMappingURL=RpcManager.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"RpcManager.js","sourceRoot":"","sources":["../../src/RpcManager.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAGH,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAErD,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAY7D;;GAEG;AACH,MAAM,OAAO,UAAU;IACrB;;OAEG;IACI,MAAM,CAAC,mBAAmB,CAAyB,UAAqC;QAC7F,WAAW,CAAC,QAAQ,CAAC,sBAAsB,CAAC,UAAU,CAAC,CAAC;IAC1D,CAAC;IAED,yCAAyC;IAClC,MAAM,CAAC,kBAAkB,CAAyB,UAAqC;QAC5F,WAAW,CAAC,QAAQ,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;IACzD,CAAC;IAED,wDAAwD;IACjD,MAAM,CAAC,qBAAqB,CAAyB,UAAqC,EAAE,UAA2B,eAAe,CAAC,OAAO;QACnJ,OAAO,WAAW,CAAC,QAAQ,CAAC,qBAAqB,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IACzE,CAAC;IAED,6DAA6D;IACtD,MAAM,CAAC,YAAY,CAAwE,UAA+C,EAAE,cAA2D;QAC5M,WAAW,CAAC,QAAQ,CAAC,YAAY,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;IAChE,CAAC;IAED,gGAAgG;IACzF,MAAM,CAAC,kBAAkB,CAAwE,UAA+C,EAAE,QAAyB;QAChL,WAAW,CAAC,QAAQ,CAAC,kBAAkB,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;IAChE,CAAC;IAED,+DAA+D;IACxD,MAAM,CAAC,cAAc,CAAmC,UAA+C;QAC5G,WAAW,CAAC,QAAQ,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;IAClD,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,KAAK,CAAC,0BAA0B;QAC5C,OAAO,WAAW,CAAC,QAAQ,CAAC,0BAA0B,EAAE,CAAC;IAC3D,CAAC;IAED,gFAAgF;IACzE,MAAM,CAAC,SAAS,CAAC,KAAqB;QAC3C,YAAY,CAAC,aAAa,GAAG,KAAK,CAAC;IACrC,CAAC;CACF","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 RpcInterface\n */\n\nimport { IModelRpcProps } from \"./IModel\";\nimport { RpcOperation } from \"./rpc/core/RpcOperation\";\nimport { RpcRegistry } from \"./rpc/core/RpcRegistry\";\nimport { RpcInterface, RpcInterfaceDefinition, RpcInterfaceImplementation } from \"./RpcInterface\";\nimport { RpcRoutingToken } from \"./rpc/core/RpcRoutingToken\";\n\n/** Describes the endpoints of an RPC interface.\n * @internal\n */\nexport interface RpcInterfaceEndpoints {\n interfaceName: string;\n interfaceVersion: string;\n operationNames: string[];\n compatible: boolean;\n}\n\n/** RPC interface management is concerned with coordination of access and configuration for RPC interfaces.\n * @internal\n */\nexport class RpcManager {\n /** Initializes an RPC interface class.\n * @note This function must be called on the frontend and on the backend for each RPC interface class used by an application.\n */\n public static initializeInterface<T extends RpcInterface>(definition: RpcInterfaceDefinition<T>): void {\n RpcRegistry.instance.initializeRpcInterface(definition);\n }\n\n /** Terminates an RPC interface class. */\n public static terminateInterface<T extends RpcInterface>(definition: RpcInterfaceDefinition<T>): void {\n RpcRegistry.instance.terminateRpcInterface(definition);\n }\n\n /** Returns the RPC client instance for the frontend. */\n public static getClientForInterface<T extends RpcInterface>(definition: RpcInterfaceDefinition<T>, routing: RpcRoutingToken = RpcRoutingToken.default): T {\n return RpcRegistry.instance.getClientForInterface(definition, routing);\n }\n\n /** Register the RPC implementation class for the backend. */\n public static registerImpl<TDefinition extends RpcInterface, TImplementation extends TDefinition>(definition: RpcInterfaceDefinition<TDefinition>, implementation: RpcInterfaceImplementation<TImplementation>): void {\n RpcRegistry.instance.registerImpl(definition, implementation);\n }\n\n /** Supply the instance of the RPC interface implementation class for the backend (optional). */\n public static supplyImplInstance<TDefinition extends RpcInterface, TImplementation extends TDefinition>(definition: RpcInterfaceDefinition<TDefinition>, instance: TImplementation): void {\n RpcRegistry.instance.supplyImplInstance(definition, instance);\n }\n\n /** Unregister the RPC implementation class for the backend. */\n public static unregisterImpl<TDefinition extends RpcInterface>(definition: RpcInterfaceDefinition<TDefinition>): void {\n RpcRegistry.instance.unregisterImpl(definition);\n }\n\n /** Describes the RPC interfaces and endpoints that are currently available from the backend.\n * @note Some endpoints may be marked incompatible if the frontend expected a different interface declaration than the backend supplied. RPC operations against an incompatible interface will fail.\n */\n public static async describeAvailableEndpoints(): Promise<RpcInterfaceEndpoints[]> {\n return RpcRegistry.instance.describeAvailableEndpoints();\n }\n\n /** Configures RPC protocols that employ iModel-based routing infrastructure. */\n public static setIModel(props: IModelRpcProps) {\n RpcOperation.fallbackToken = props;\n }\n}\n"]}
1
+ {"version":3,"file":"RpcManager.js","sourceRoot":"","sources":["../../src/RpcManager.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAGH,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAErD,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAY7D;;GAEG;AACH,MAAM,OAAO,UAAU;IACrB;;OAEG;IACI,MAAM,CAAC,mBAAmB,CAAyB,UAAqC;QAC7F,WAAW,CAAC,QAAQ,CAAC,sBAAsB,CAAC,UAAU,CAAC,CAAC;IAC1D,CAAC;IAED,yCAAyC;IAClC,MAAM,CAAC,kBAAkB,CAAyB,UAAqC;QAC5F,WAAW,CAAC,QAAQ,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;IACzD,CAAC;IAED,wDAAwD;IACjD,MAAM,CAAC,qBAAqB,CAAyB,UAAqC,EAAE,UAA2B,eAAe,CAAC,OAAO;QACnJ,OAAO,WAAW,CAAC,QAAQ,CAAC,qBAAqB,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IACzE,CAAC;IAED,6DAA6D;IACtD,MAAM,CAAC,YAAY,CAAwE,UAA+C,EAAE,cAA2D;QAC5M,WAAW,CAAC,QAAQ,CAAC,YAAY,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;IAChE,CAAC;IAED,gGAAgG;IACzF,MAAM,CAAC,kBAAkB,CAAwE,UAA+C,EAAE,QAAyB;QAChL,WAAW,CAAC,QAAQ,CAAC,kBAAkB,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;IAChE,CAAC;IAED,+DAA+D;IACxD,MAAM,CAAC,cAAc,CAAmC,UAA+C;QAC5G,WAAW,CAAC,QAAQ,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;IAClD,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,KAAK,CAAC,0BAA0B;QAC5C,OAAO,WAAW,CAAC,QAAQ,CAAC,0BAA0B,EAAE,CAAC;IAC3D,CAAC;IAED,gFAAgF;IACzE,MAAM,CAAC,SAAS,CAAC,KAAqB;QAC3C,YAAY,CAAC,aAAa,GAAG,KAAK,CAAC;IACrC,CAAC;CACF","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 RpcInterface\r\n */\r\n\r\nimport { IModelRpcProps } from \"./IModel\";\r\nimport { RpcOperation } from \"./rpc/core/RpcOperation\";\r\nimport { RpcRegistry } from \"./rpc/core/RpcRegistry\";\r\nimport { RpcInterface, RpcInterfaceDefinition, RpcInterfaceImplementation } from \"./RpcInterface\";\r\nimport { RpcRoutingToken } from \"./rpc/core/RpcRoutingToken\";\r\n\r\n/** Describes the endpoints of an RPC interface.\r\n * @internal\r\n */\r\nexport interface RpcInterfaceEndpoints {\r\n interfaceName: string;\r\n interfaceVersion: string;\r\n operationNames: string[];\r\n compatible: boolean;\r\n}\r\n\r\n/** RPC interface management is concerned with coordination of access and configuration for RPC interfaces.\r\n * @internal\r\n */\r\nexport class RpcManager {\r\n /** Initializes an RPC interface class.\r\n * @note This function must be called on the frontend and on the backend for each RPC interface class used by an application.\r\n */\r\n public static initializeInterface<T extends RpcInterface>(definition: RpcInterfaceDefinition<T>): void {\r\n RpcRegistry.instance.initializeRpcInterface(definition);\r\n }\r\n\r\n /** Terminates an RPC interface class. */\r\n public static terminateInterface<T extends RpcInterface>(definition: RpcInterfaceDefinition<T>): void {\r\n RpcRegistry.instance.terminateRpcInterface(definition);\r\n }\r\n\r\n /** Returns the RPC client instance for the frontend. */\r\n public static getClientForInterface<T extends RpcInterface>(definition: RpcInterfaceDefinition<T>, routing: RpcRoutingToken = RpcRoutingToken.default): T {\r\n return RpcRegistry.instance.getClientForInterface(definition, routing);\r\n }\r\n\r\n /** Register the RPC implementation class for the backend. */\r\n public static registerImpl<TDefinition extends RpcInterface, TImplementation extends TDefinition>(definition: RpcInterfaceDefinition<TDefinition>, implementation: RpcInterfaceImplementation<TImplementation>): void {\r\n RpcRegistry.instance.registerImpl(definition, implementation);\r\n }\r\n\r\n /** Supply the instance of the RPC interface implementation class for the backend (optional). */\r\n public static supplyImplInstance<TDefinition extends RpcInterface, TImplementation extends TDefinition>(definition: RpcInterfaceDefinition<TDefinition>, instance: TImplementation): void {\r\n RpcRegistry.instance.supplyImplInstance(definition, instance);\r\n }\r\n\r\n /** Unregister the RPC implementation class for the backend. */\r\n public static unregisterImpl<TDefinition extends RpcInterface>(definition: RpcInterfaceDefinition<TDefinition>): void {\r\n RpcRegistry.instance.unregisterImpl(definition);\r\n }\r\n\r\n /** Describes the RPC interfaces and endpoints that are currently available from the backend.\r\n * @note Some endpoints may be marked incompatible if the frontend expected a different interface declaration than the backend supplied. RPC operations against an incompatible interface will fail.\r\n */\r\n public static async describeAvailableEndpoints(): Promise<RpcInterfaceEndpoints[]> {\r\n return RpcRegistry.instance.describeAvailableEndpoints();\r\n }\r\n\r\n /** Configures RPC protocols that employ iModel-based routing infrastructure. */\r\n public static setIModel(props: IModelRpcProps) {\r\n RpcOperation.fallbackToken = props;\r\n }\r\n}\r\n"]}
@@ -1,17 +1,17 @@
1
- /** @packageDocumentation
2
- * @module RpcInterface
3
- */
4
- import { GuidString } from "@itwin/core-bentley";
5
- /** Properties that identify a session.
6
- * @public
7
- * @extensions
8
- */
9
- export interface SessionProps {
10
- /** Used for logging and usage tracking to identify the application */
11
- readonly applicationId: string;
12
- /** Used for logging and usage tracking to identify the application version */
13
- readonly applicationVersion: string;
14
- /** Used for logging to identify a session */
15
- readonly sessionId: GuidString;
16
- }
1
+ /** @packageDocumentation
2
+ * @module RpcInterface
3
+ */
4
+ import { GuidString } from "@itwin/core-bentley";
5
+ /** Properties that identify a session.
6
+ * @public
7
+ * @extensions
8
+ */
9
+ export interface SessionProps {
10
+ /** Used for logging and usage tracking to identify the application */
11
+ readonly applicationId: string;
12
+ /** Used for logging and usage tracking to identify the application version */
13
+ readonly applicationVersion: string;
14
+ /** Used for logging to identify a session */
15
+ readonly sessionId: GuidString;
16
+ }
17
17
  //# sourceMappingURL=SessionProps.d.ts.map
@@ -1,9 +1,9 @@
1
- /*---------------------------------------------------------------------------------------------
2
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
- * See LICENSE.md in the project root for license terms and full copyright notice.
4
- *--------------------------------------------------------------------------------------------*/
5
- /** @packageDocumentation
6
- * @module RpcInterface
7
- */
8
- export {};
1
+ /*---------------------------------------------------------------------------------------------
2
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
+ * See LICENSE.md in the project root for license terms and full copyright notice.
4
+ *--------------------------------------------------------------------------------------------*/
5
+ /** @packageDocumentation
6
+ * @module RpcInterface
7
+ */
8
+ export {};
9
9
  //# sourceMappingURL=SessionProps.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SessionProps.js","sourceRoot":"","sources":["../../src/SessionProps.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG","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 RpcInterface\n */\n\nimport { GuidString } from \"@itwin/core-bentley\";\n\n/** Properties that identify a session.\n * @public\n * @extensions\n */\nexport interface SessionProps {\n /** Used for logging and usage tracking to identify the application */\n readonly applicationId: string;\n\n /** Used for logging and usage tracking to identify the application version */\n readonly applicationVersion: string;\n\n /** Used for logging to identify a session */\n readonly sessionId: GuidString;\n}\n\n"]}
1
+ {"version":3,"file":"SessionProps.js","sourceRoot":"","sources":["../../src/SessionProps.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG","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 RpcInterface\r\n */\r\n\r\nimport { GuidString } from \"@itwin/core-bentley\";\r\n\r\n/** Properties that identify a session.\r\n * @public\r\n * @extensions\r\n */\r\nexport interface SessionProps {\r\n /** Used for logging and usage tracking to identify the application */\r\n readonly applicationId: string;\r\n\r\n /** Used for logging and usage tracking to identify the application version */\r\n readonly applicationVersion: string;\r\n\r\n /** Used for logging to identify a session */\r\n readonly sessionId: GuidString;\r\n}\r\n\r\n"]}