@itwin/core-common 3.4.1 → 3.4.2

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 (932) hide show
  1. package/CHANGELOG.md +6 -1
  2. package/lib/cjs/AmbientOcclusion.d.ts +49 -49
  3. package/lib/cjs/AmbientOcclusion.js +55 -55
  4. package/lib/cjs/AmbientOcclusion.js.map +1 -1
  5. package/lib/cjs/AnalysisStyle.d.ts +134 -134
  6. package/lib/cjs/AnalysisStyle.js +165 -165
  7. package/lib/cjs/AnalysisStyle.js.map +1 -1
  8. package/lib/cjs/AuthorizationClient.d.ts +11 -11
  9. package/lib/cjs/AuthorizationClient.js +9 -9
  10. package/lib/cjs/AuthorizationClient.js.map +1 -1
  11. package/lib/cjs/BackgroundMapProvider.d.ts +51 -51
  12. package/lib/cjs/BackgroundMapProvider.js +68 -68
  13. package/lib/cjs/BackgroundMapProvider.js.map +1 -1
  14. package/lib/cjs/BackgroundMapSettings.d.ts +136 -136
  15. package/lib/cjs/BackgroundMapSettings.js +156 -156
  16. package/lib/cjs/BackgroundMapSettings.js.map +1 -1
  17. package/lib/cjs/Base64EncodedString.d.ts +30 -30
  18. package/lib/cjs/Base64EncodedString.js +56 -56
  19. package/lib/cjs/Base64EncodedString.js.map +1 -1
  20. package/lib/cjs/BlobReader.d.ts +31 -31
  21. package/lib/cjs/BlobReader.js +84 -84
  22. package/lib/cjs/BlobReader.js.map +1 -1
  23. package/lib/cjs/BriefcaseTypes.d.ts +189 -189
  24. package/lib/cjs/BriefcaseTypes.js +95 -95
  25. package/lib/cjs/BriefcaseTypes.js.map +1 -1
  26. package/lib/cjs/Camera.d.ts +42 -42
  27. package/lib/cjs/Camera.js +62 -62
  28. package/lib/cjs/Camera.js.map +1 -1
  29. package/lib/cjs/ChangedElements.d.ts +83 -83
  30. package/lib/cjs/ChangedElements.js +21 -21
  31. package/lib/cjs/ChangedElements.js.map +1 -1
  32. package/lib/cjs/ChangedEntities.d.ts +45 -45
  33. package/lib/cjs/ChangedEntities.js +9 -9
  34. package/lib/cjs/ChangedEntities.js.map +1 -1
  35. package/lib/cjs/ChangesetProps.d.ts +98 -98
  36. package/lib/cjs/ChangesetProps.js +22 -22
  37. package/lib/cjs/ChangesetProps.js.map +1 -1
  38. package/lib/cjs/ClipStyle.d.ts +89 -89
  39. package/lib/cjs/ClipStyle.js +123 -123
  40. package/lib/cjs/ClipStyle.js.map +1 -1
  41. package/lib/cjs/CloudStorage.d.ts +62 -62
  42. package/lib/cjs/CloudStorage.js +113 -113
  43. package/lib/cjs/CloudStorage.js.map +1 -1
  44. package/lib/cjs/CloudStorageTileCache.d.ts +27 -27
  45. package/lib/cjs/CloudStorageTileCache.js +66 -66
  46. package/lib/cjs/CloudStorageTileCache.js.map +1 -1
  47. package/lib/cjs/Code.d.ts +256 -256
  48. package/lib/cjs/Code.js +281 -281
  49. package/lib/cjs/Code.js.map +1 -1
  50. package/lib/cjs/ColorByName.d.ts +161 -161
  51. package/lib/cjs/ColorByName.js +169 -169
  52. package/lib/cjs/ColorByName.js.map +1 -1
  53. package/lib/cjs/ColorDef.d.ts +208 -208
  54. package/lib/cjs/ColorDef.js +571 -571
  55. package/lib/cjs/ColorDef.js.map +1 -1
  56. package/lib/cjs/CommonLoggerCategory.d.ts +18 -18
  57. package/lib/cjs/CommonLoggerCategory.js +26 -26
  58. package/lib/cjs/CommonLoggerCategory.js.map +1 -1
  59. package/lib/cjs/ConcurrentQuery.d.ts +241 -241
  60. package/lib/cjs/ConcurrentQuery.js +380 -380
  61. package/lib/cjs/ConcurrentQuery.js.map +1 -1
  62. package/lib/cjs/ContextRealityModel.d.ts +255 -255
  63. package/lib/cjs/ContextRealityModel.js +325 -325
  64. package/lib/cjs/ContextRealityModel.js.map +1 -1
  65. package/lib/cjs/DisplayStyleSettings.d.ts +552 -552
  66. package/lib/cjs/DisplayStyleSettings.js +951 -951
  67. package/lib/cjs/DisplayStyleSettings.js.map +1 -1
  68. package/lib/cjs/ECSchemaProps.d.ts +39 -39
  69. package/lib/cjs/ECSchemaProps.js +9 -9
  70. package/lib/cjs/ECSchemaProps.js.map +1 -1
  71. package/lib/cjs/ECSqlReader.d.ts +70 -70
  72. package/lib/cjs/ECSqlReader.js +280 -280
  73. package/lib/cjs/ECSqlReader.js.map +1 -1
  74. package/lib/cjs/ECSqlTypes.d.ts +128 -128
  75. package/lib/cjs/ECSqlTypes.js +189 -189
  76. package/lib/cjs/ECSqlTypes.js.map +1 -1
  77. package/lib/cjs/ElementProps.d.ts +476 -476
  78. package/lib/cjs/ElementProps.js +99 -99
  79. package/lib/cjs/ElementProps.js.map +1 -1
  80. package/lib/cjs/EmphasizeElementsProps.d.ts +55 -55
  81. package/lib/cjs/EmphasizeElementsProps.js +25 -25
  82. package/lib/cjs/EmphasizeElementsProps.js.map +1 -1
  83. package/lib/cjs/EntityProps.d.ts +176 -176
  84. package/lib/cjs/EntityProps.js +112 -112
  85. package/lib/cjs/EntityProps.js.map +1 -1
  86. package/lib/cjs/EntityReference.d.ts +51 -51
  87. package/lib/cjs/EntityReference.js +56 -56
  88. package/lib/cjs/EntityReference.js.map +1 -1
  89. package/lib/cjs/Environment.d.ts +61 -61
  90. package/lib/cjs/Environment.js +73 -73
  91. package/lib/cjs/Environment.js.map +1 -1
  92. package/lib/cjs/FeatureGates.d.ts +31 -31
  93. package/lib/cjs/FeatureGates.js +55 -55
  94. package/lib/cjs/FeatureGates.js.map +1 -1
  95. package/lib/cjs/FeatureIndex.d.ts +39 -39
  96. package/lib/cjs/FeatureIndex.js +63 -63
  97. package/lib/cjs/FeatureIndex.js.map +1 -1
  98. package/lib/cjs/FeatureSymbology.d.ts +444 -444
  99. package/lib/cjs/FeatureSymbology.js +614 -614
  100. package/lib/cjs/FeatureSymbology.js.map +1 -1
  101. package/lib/cjs/FeatureTable.d.ts +141 -141
  102. package/lib/cjs/FeatureTable.js +278 -278
  103. package/lib/cjs/FeatureTable.js.map +1 -1
  104. package/lib/cjs/Fonts.d.ts +51 -51
  105. package/lib/cjs/Fonts.js +53 -53
  106. package/lib/cjs/Fonts.js.map +1 -1
  107. package/lib/cjs/Frustum.d.ts +114 -114
  108. package/lib/cjs/Frustum.js +292 -292
  109. package/lib/cjs/Frustum.js.map +1 -1
  110. package/lib/cjs/GeoCoordinateServices.d.ts +119 -119
  111. package/lib/cjs/GeoCoordinateServices.js +80 -80
  112. package/lib/cjs/GeoCoordinateServices.js.map +1 -1
  113. package/lib/cjs/GeometryContainment.d.ts +28 -28
  114. package/lib/cjs/GeometryContainment.js +9 -9
  115. package/lib/cjs/GeometryContainment.js.map +1 -1
  116. package/lib/cjs/GeometryParams.d.ts +130 -130
  117. package/lib/cjs/GeometryParams.js +174 -174
  118. package/lib/cjs/GeometryParams.js.map +1 -1
  119. package/lib/cjs/GeometrySummary.d.ts +45 -45
  120. package/lib/cjs/GeometrySummary.js +23 -23
  121. package/lib/cjs/GeometrySummary.js.map +1 -1
  122. package/lib/cjs/Gradient.d.ts +139 -139
  123. package/lib/cjs/Gradient.js +455 -455
  124. package/lib/cjs/Gradient.js.map +1 -1
  125. package/lib/cjs/GraphicParams.d.ts +58 -58
  126. package/lib/cjs/GraphicParams.js +85 -85
  127. package/lib/cjs/GraphicParams.js.map +1 -1
  128. package/lib/cjs/GroundPlane.d.ts +52 -52
  129. package/lib/cjs/GroundPlane.js +64 -64
  130. package/lib/cjs/GroundPlane.js.map +1 -1
  131. package/lib/cjs/HSLColor.d.ts +20 -20
  132. package/lib/cjs/HSLColor.js +32 -32
  133. package/lib/cjs/HSLColor.js.map +1 -1
  134. package/lib/cjs/HSVColor.d.ts +30 -30
  135. package/lib/cjs/HSVColor.js +59 -59
  136. package/lib/cjs/HSVColor.js.map +1 -1
  137. package/lib/cjs/HiddenLine.d.ts +97 -97
  138. package/lib/cjs/HiddenLine.js +162 -162
  139. package/lib/cjs/HiddenLine.js.map +1 -1
  140. package/lib/cjs/Hilite.d.ts +50 -50
  141. package/lib/cjs/Hilite.js +64 -64
  142. package/lib/cjs/Hilite.js.map +1 -1
  143. package/lib/cjs/IModel.d.ts +359 -359
  144. package/lib/cjs/IModel.js +347 -347
  145. package/lib/cjs/IModel.js.map +1 -1
  146. package/lib/cjs/IModelError.d.ts +36 -36
  147. package/lib/cjs/IModelError.js +72 -72
  148. package/lib/cjs/IModelError.js.map +1 -1
  149. package/lib/cjs/IModelVersion.d.ts +68 -68
  150. package/lib/cjs/IModelVersion.js +79 -79
  151. package/lib/cjs/IModelVersion.js.map +1 -1
  152. package/lib/cjs/Image.d.ts +86 -86
  153. package/lib/cjs/Image.js +128 -128
  154. package/lib/cjs/Image.js.map +1 -1
  155. package/lib/cjs/IpcAppProps.d.ts +124 -124
  156. package/lib/cjs/IpcAppProps.js +18 -18
  157. package/lib/cjs/IpcAppProps.js.map +1 -1
  158. package/lib/cjs/LightSettings.d.ts +224 -224
  159. package/lib/cjs/LightSettings.js +309 -309
  160. package/lib/cjs/LightSettings.js.map +1 -1
  161. package/lib/cjs/LinePixels.d.ts +34 -34
  162. package/lib/cjs/LinePixels.js +42 -42
  163. package/lib/cjs/LinePixels.js.map +1 -1
  164. package/lib/cjs/Localization.d.ts +111 -111
  165. package/lib/cjs/Localization.js +26 -26
  166. package/lib/cjs/Localization.js.map +1 -1
  167. package/lib/cjs/MapImagerySettings.d.ts +62 -62
  168. package/lib/cjs/MapImagerySettings.js +80 -80
  169. package/lib/cjs/MapImagerySettings.js.map +1 -1
  170. package/lib/cjs/MapLayerSettings.d.ts +272 -272
  171. package/lib/cjs/MapLayerSettings.js +411 -411
  172. package/lib/cjs/MapLayerSettings.js.map +1 -1
  173. package/lib/cjs/MassProperties.d.ts +64 -64
  174. package/lib/cjs/MassProperties.js +23 -23
  175. package/lib/cjs/MassProperties.js.map +1 -1
  176. package/lib/cjs/MaterialProps.d.ts +118 -118
  177. package/lib/cjs/MaterialProps.js +23 -23
  178. package/lib/cjs/MaterialProps.js.map +1 -1
  179. package/lib/cjs/ModelClipGroup.d.ts +67 -67
  180. package/lib/cjs/ModelClipGroup.js +98 -98
  181. package/lib/cjs/ModelClipGroup.js.map +1 -1
  182. package/lib/cjs/ModelGeometryChanges.d.ts +107 -107
  183. package/lib/cjs/ModelGeometryChanges.js +83 -83
  184. package/lib/cjs/ModelGeometryChanges.js.map +1 -1
  185. package/lib/cjs/ModelProps.d.ts +67 -67
  186. package/lib/cjs/ModelProps.js +9 -9
  187. package/lib/cjs/ModelProps.js.map +1 -1
  188. package/lib/cjs/NativeAppProps.d.ts +122 -122
  189. package/lib/cjs/NativeAppProps.js +30 -30
  190. package/lib/cjs/NativeAppProps.js.map +1 -1
  191. package/lib/cjs/OctEncodedNormal.d.ts +33 -33
  192. package/lib/cjs/OctEncodedNormal.js +98 -98
  193. package/lib/cjs/OctEncodedNormal.js.map +1 -1
  194. package/lib/cjs/PlanProjectionSettings.d.ts +47 -47
  195. package/lib/cjs/PlanProjectionSettings.js +63 -63
  196. package/lib/cjs/PlanProjectionSettings.js.map +1 -1
  197. package/lib/cjs/PlanarClipMask.d.ts +177 -177
  198. package/lib/cjs/PlanarClipMask.js +136 -136
  199. package/lib/cjs/PlanarClipMask.js.map +1 -1
  200. package/lib/cjs/QPoint.d.ts +479 -479
  201. package/lib/cjs/QPoint.js +826 -826
  202. package/lib/cjs/QPoint.js.map +1 -1
  203. package/lib/cjs/RealityDataAccessProps.d.ts +41 -41
  204. package/lib/cjs/RealityDataAccessProps.js +19 -19
  205. package/lib/cjs/RealityDataAccessProps.js.map +1 -1
  206. package/lib/cjs/Render.d.ts +89 -89
  207. package/lib/cjs/Render.js +177 -177
  208. package/lib/cjs/Render.js.map +1 -1
  209. package/lib/cjs/RenderMaterial.d.ts +58 -58
  210. package/lib/cjs/RenderMaterial.js +76 -76
  211. package/lib/cjs/RenderMaterial.js.map +1 -1
  212. package/lib/cjs/RenderSchedule.d.ts +541 -541
  213. package/lib/cjs/RenderSchedule.js +1000 -1000
  214. package/lib/cjs/RenderTexture.d.ts +70 -70
  215. package/lib/cjs/RenderTexture.js +59 -59
  216. package/lib/cjs/RenderTexture.js.map +1 -1
  217. package/lib/cjs/RgbColor.d.ts +39 -39
  218. package/lib/cjs/RgbColor.js +67 -67
  219. package/lib/cjs/RgbColor.js.map +1 -1
  220. package/lib/cjs/RpcInterface.d.ts +33 -33
  221. package/lib/cjs/RpcInterface.js +137 -137
  222. package/lib/cjs/RpcInterface.js.map +1 -1
  223. package/lib/cjs/RpcManager.d.ts +40 -40
  224. package/lib/cjs/RpcManager.js +55 -55
  225. package/lib/cjs/RpcManager.js.map +1 -1
  226. package/lib/cjs/SessionProps.d.ts +16 -16
  227. package/lib/cjs/SessionProps.js +9 -9
  228. package/lib/cjs/SessionProps.js.map +1 -1
  229. package/lib/cjs/SkyBox.d.ts +215 -215
  230. package/lib/cjs/SkyBox.js +210 -210
  231. package/lib/cjs/SkyBox.js.map +1 -1
  232. package/lib/cjs/Snapping.d.ts +49 -49
  233. package/lib/cjs/Snapping.js +9 -9
  234. package/lib/cjs/Snapping.js.map +1 -1
  235. package/lib/cjs/SolarCalculate.d.ts +27 -27
  236. package/lib/cjs/SolarCalculate.js +211 -211
  237. package/lib/cjs/SolarCalculate.js.map +1 -1
  238. package/lib/cjs/SolarShadows.d.ts +35 -35
  239. package/lib/cjs/SolarShadows.js +62 -62
  240. package/lib/cjs/SolarShadows.js.map +1 -1
  241. package/lib/cjs/SpatialClassification.d.ts +208 -208
  242. package/lib/cjs/SpatialClassification.js +340 -340
  243. package/lib/cjs/SpatialClassification.js.map +1 -1
  244. package/lib/cjs/SubCategoryAppearance.d.ts +91 -91
  245. package/lib/cjs/SubCategoryAppearance.js +96 -96
  246. package/lib/cjs/SubCategoryAppearance.js.map +1 -1
  247. package/lib/cjs/SubCategoryOverride.d.ts +46 -46
  248. package/lib/cjs/SubCategoryOverride.js +104 -104
  249. package/lib/cjs/SubCategoryOverride.js.map +1 -1
  250. package/lib/cjs/TerrainSettings.d.ts +82 -82
  251. package/lib/cjs/TerrainSettings.js +102 -102
  252. package/lib/cjs/TerrainSettings.js.map +1 -1
  253. package/lib/cjs/TextureMapping.d.ts +101 -101
  254. package/lib/cjs/TextureMapping.js +174 -174
  255. package/lib/cjs/TextureMapping.js.map +1 -1
  256. package/lib/cjs/TextureProps.d.ts +65 -65
  257. package/lib/cjs/TextureProps.js +28 -28
  258. package/lib/cjs/TextureProps.js.map +1 -1
  259. package/lib/cjs/ThematicDisplay.d.ts +230 -230
  260. package/lib/cjs/ThematicDisplay.js +344 -344
  261. package/lib/cjs/ThematicDisplay.js.map +1 -1
  262. package/lib/cjs/Thumbnail.d.ts +26 -26
  263. package/lib/cjs/Thumbnail.js +9 -9
  264. package/lib/cjs/Thumbnail.js.map +1 -1
  265. package/lib/cjs/TileProps.d.ts +82 -82
  266. package/lib/cjs/TileProps.js +29 -29
  267. package/lib/cjs/TileProps.js.map +1 -1
  268. package/lib/cjs/Tween.d.ts +191 -191
  269. package/lib/cjs/Tween.js +570 -570
  270. package/lib/cjs/Tween.js.map +1 -1
  271. package/lib/cjs/TxnAction.d.ts +21 -21
  272. package/lib/cjs/TxnAction.js +29 -29
  273. package/lib/cjs/TxnAction.js.map +1 -1
  274. package/lib/cjs/ViewDetails.d.ts +125 -125
  275. package/lib/cjs/ViewDetails.js +158 -158
  276. package/lib/cjs/ViewDetails.js.map +1 -1
  277. package/lib/cjs/ViewFlags.d.ts +291 -291
  278. package/lib/cjs/ViewFlags.js +368 -368
  279. package/lib/cjs/ViewFlags.js.map +1 -1
  280. package/lib/cjs/ViewProps.d.ts +205 -205
  281. package/lib/cjs/ViewProps.js +9 -9
  282. package/lib/cjs/ViewProps.js.map +1 -1
  283. package/lib/cjs/WhiteOnWhiteReversalSettings.d.ts +36 -36
  284. package/lib/cjs/WhiteOnWhiteReversalSettings.js +37 -37
  285. package/lib/cjs/WhiteOnWhiteReversalSettings.js.map +1 -1
  286. package/lib/cjs/core-common.d.ts +241 -241
  287. package/lib/cjs/core-common.js +257 -257
  288. package/lib/cjs/core-common.js.map +1 -1
  289. package/lib/cjs/domains/FunctionalElementProps.d.ts +11 -11
  290. package/lib/cjs/domains/FunctionalElementProps.js +9 -9
  291. package/lib/cjs/domains/FunctionalElementProps.js.map +1 -1
  292. package/lib/cjs/domains/GenericElementProps.d.ts +18 -18
  293. package/lib/cjs/domains/GenericElementProps.js +9 -9
  294. package/lib/cjs/domains/GenericElementProps.js.map +1 -1
  295. package/lib/cjs/geometry/AdditionalTransform.d.ts +84 -84
  296. package/lib/cjs/geometry/AdditionalTransform.js +85 -85
  297. package/lib/cjs/geometry/AdditionalTransform.js.map +1 -1
  298. package/lib/cjs/geometry/AreaPattern.d.ts +82 -82
  299. package/lib/cjs/geometry/AreaPattern.js +204 -204
  300. package/lib/cjs/geometry/AreaPattern.js.map +1 -1
  301. package/lib/cjs/geometry/BoundingSphere.d.ts +14 -14
  302. package/lib/cjs/geometry/BoundingSphere.js +30 -30
  303. package/lib/cjs/geometry/BoundingSphere.js.map +1 -1
  304. package/lib/cjs/geometry/Cartographic.d.ts +137 -137
  305. package/lib/cjs/geometry/Cartographic.js +345 -345
  306. package/lib/cjs/geometry/Cartographic.js.map +1 -1
  307. package/lib/cjs/geometry/CoordinateReferenceSystem.d.ts +269 -269
  308. package/lib/cjs/geometry/CoordinateReferenceSystem.js +261 -261
  309. package/lib/cjs/geometry/CoordinateReferenceSystem.js.map +1 -1
  310. package/lib/cjs/geometry/ElementGeometry.d.ts +402 -402
  311. package/lib/cjs/geometry/ElementGeometry.js +1719 -1719
  312. package/lib/cjs/geometry/ElementGeometry.js.map +1 -1
  313. package/lib/cjs/geometry/ElementGeometryFB.d.ts +2372 -2372
  314. package/lib/cjs/geometry/ElementGeometryFB.js +3814 -3814
  315. package/lib/cjs/geometry/ElementGeometryFB.js.map +1 -1
  316. package/lib/cjs/geometry/FrustumPlanes.d.ts +32 -32
  317. package/lib/cjs/geometry/FrustumPlanes.js +132 -132
  318. package/lib/cjs/geometry/FrustumPlanes.js.map +1 -1
  319. package/lib/cjs/geometry/GeodeticDatum.d.ts +409 -409
  320. package/lib/cjs/geometry/GeodeticDatum.js +401 -401
  321. package/lib/cjs/geometry/GeodeticDatum.js.map +1 -1
  322. package/lib/cjs/geometry/GeodeticEllipsoid.d.ts +72 -72
  323. package/lib/cjs/geometry/GeodeticEllipsoid.js +72 -72
  324. package/lib/cjs/geometry/GeodeticEllipsoid.js.map +1 -1
  325. package/lib/cjs/geometry/GeometryStream.d.ts +347 -347
  326. package/lib/cjs/geometry/GeometryStream.js +469 -469
  327. package/lib/cjs/geometry/GeometryStream.js.map +1 -1
  328. package/lib/cjs/geometry/ImageGraphic.d.ts +74 -74
  329. package/lib/cjs/geometry/ImageGraphic.js +98 -98
  330. package/lib/cjs/geometry/ImageGraphic.js.map +1 -1
  331. package/lib/cjs/geometry/LineStyle.d.ts +71 -71
  332. package/lib/cjs/geometry/LineStyle.js +129 -129
  333. package/lib/cjs/geometry/LineStyle.js.map +1 -1
  334. package/lib/cjs/geometry/Placement.d.ts +95 -95
  335. package/lib/cjs/geometry/Placement.js +131 -131
  336. package/lib/cjs/geometry/Placement.js.map +1 -1
  337. package/lib/cjs/geometry/Projection.d.ts +251 -251
  338. package/lib/cjs/geometry/Projection.js +198 -198
  339. package/lib/cjs/geometry/Projection.js.map +1 -1
  340. package/lib/cjs/geometry/TextString.d.ts +55 -55
  341. package/lib/cjs/geometry/TextString.js +65 -65
  342. package/lib/cjs/geometry/TextString.js.map +1 -1
  343. package/lib/cjs/ipc/IpcSession.d.ts +23 -23
  344. package/lib/cjs/ipc/IpcSession.js +27 -27
  345. package/lib/cjs/ipc/IpcSession.js.map +1 -1
  346. package/lib/cjs/ipc/IpcSocket.d.ts +96 -96
  347. package/lib/cjs/ipc/IpcSocket.js +16 -16
  348. package/lib/cjs/ipc/IpcSocket.js.map +1 -1
  349. package/lib/cjs/ipc/IpcWebSocket.d.ts +61 -61
  350. package/lib/cjs/ipc/IpcWebSocket.js +151 -151
  351. package/lib/cjs/ipc/IpcWebSocket.js.map +1 -1
  352. package/lib/cjs/ipc/IpcWebSocketTransport.d.ts +15 -15
  353. package/lib/cjs/ipc/IpcWebSocketTransport.js +158 -158
  354. package/lib/cjs/ipc/IpcWebSocketTransport.js.map +1 -1
  355. package/lib/cjs/rpc/DevToolsRpcInterface.d.ts +32 -32
  356. package/lib/cjs/rpc/DevToolsRpcInterface.js +48 -48
  357. package/lib/cjs/rpc/DevToolsRpcInterface.js.map +1 -1
  358. package/lib/cjs/rpc/IModelReadRpcInterface.d.ts +97 -75
  359. package/lib/cjs/rpc/IModelReadRpcInterface.d.ts.map +1 -1
  360. package/lib/cjs/rpc/IModelReadRpcInterface.js +119 -115
  361. package/lib/cjs/rpc/IModelReadRpcInterface.js.map +1 -1
  362. package/lib/cjs/rpc/IModelTileRpcInterface.d.ts +61 -61
  363. package/lib/cjs/rpc/IModelTileRpcInterface.js +96 -96
  364. package/lib/cjs/rpc/IModelTileRpcInterface.js.map +1 -1
  365. package/lib/cjs/rpc/SnapshotIModelRpcInterface.d.ts +23 -23
  366. package/lib/cjs/rpc/SnapshotIModelRpcInterface.js +48 -48
  367. package/lib/cjs/rpc/SnapshotIModelRpcInterface.js.map +1 -1
  368. package/lib/cjs/rpc/TestRpcManager.d.ts +20 -20
  369. package/lib/cjs/rpc/TestRpcManager.js +39 -39
  370. package/lib/cjs/rpc/TestRpcManager.js.map +1 -1
  371. package/lib/cjs/rpc/WipRpcInterface.d.ts +29 -29
  372. package/lib/cjs/rpc/WipRpcInterface.js +40 -40
  373. package/lib/cjs/rpc/WipRpcInterface.js.map +1 -1
  374. package/lib/cjs/rpc/core/RpcConfiguration.d.ts +111 -111
  375. package/lib/cjs/rpc/core/RpcConfiguration.js +192 -192
  376. package/lib/cjs/rpc/core/RpcConfiguration.js.map +1 -1
  377. package/lib/cjs/rpc/core/RpcConstants.d.ts +85 -85
  378. package/lib/cjs/rpc/core/RpcConstants.js +103 -103
  379. package/lib/cjs/rpc/core/RpcConstants.js.map +1 -1
  380. package/lib/cjs/rpc/core/RpcControl.d.ts +52 -52
  381. package/lib/cjs/rpc/core/RpcControl.js +149 -149
  382. package/lib/cjs/rpc/core/RpcControl.js.map +1 -1
  383. package/lib/cjs/rpc/core/RpcInvocation.d.ts +89 -89
  384. package/lib/cjs/rpc/core/RpcInvocation.js +257 -257
  385. package/lib/cjs/rpc/core/RpcInvocation.js.map +1 -1
  386. package/lib/cjs/rpc/core/RpcMarshaling.d.ts +36 -36
  387. package/lib/cjs/rpc/core/RpcMarshaling.js +153 -153
  388. package/lib/cjs/rpc/core/RpcMarshaling.js.map +1 -1
  389. package/lib/cjs/rpc/core/RpcOperation.d.ts +67 -67
  390. package/lib/cjs/rpc/core/RpcOperation.js +133 -133
  391. package/lib/cjs/rpc/core/RpcOperation.js.map +1 -1
  392. package/lib/cjs/rpc/core/RpcPendingQueue.d.ts +21 -21
  393. package/lib/cjs/rpc/core/RpcPendingQueue.js +94 -94
  394. package/lib/cjs/rpc/core/RpcPendingQueue.js.map +1 -1
  395. package/lib/cjs/rpc/core/RpcProtocol.d.ts +132 -132
  396. package/lib/cjs/rpc/core/RpcProtocol.js +127 -127
  397. package/lib/cjs/rpc/core/RpcProtocol.js.map +1 -1
  398. package/lib/cjs/rpc/core/RpcPush.d.ts +68 -68
  399. package/lib/cjs/rpc/core/RpcPush.js +127 -127
  400. package/lib/cjs/rpc/core/RpcPush.js.map +1 -1
  401. package/lib/cjs/rpc/core/RpcRegistry.d.ts +48 -48
  402. package/lib/cjs/rpc/core/RpcRegistry.js +198 -198
  403. package/lib/cjs/rpc/core/RpcRegistry.js.map +1 -1
  404. package/lib/cjs/rpc/core/RpcRequest.d.ts +186 -186
  405. package/lib/cjs/rpc/core/RpcRequest.js +477 -477
  406. package/lib/cjs/rpc/core/RpcRequest.js.map +1 -1
  407. package/lib/cjs/rpc/core/RpcRequestContext.d.ts +14 -14
  408. package/lib/cjs/rpc/core/RpcRequestContext.js +2 -2
  409. package/lib/cjs/rpc/core/RpcRequestContext.js.map +1 -1
  410. package/lib/cjs/rpc/core/RpcRoutingToken.d.ts +12 -12
  411. package/lib/cjs/rpc/core/RpcRoutingToken.js +23 -23
  412. package/lib/cjs/rpc/core/RpcRoutingToken.js.map +1 -1
  413. package/lib/cjs/rpc/core/RpcSessionInvocation.d.ts +10 -10
  414. package/lib/cjs/rpc/core/RpcSessionInvocation.js +59 -59
  415. package/lib/cjs/rpc/core/RpcSessionInvocation.js.map +1 -1
  416. package/lib/cjs/rpc/web/BentleyCloudRpcManager.d.ts +46 -46
  417. package/lib/cjs/rpc/web/BentleyCloudRpcManager.js +73 -73
  418. package/lib/cjs/rpc/web/BentleyCloudRpcManager.js.map +1 -1
  419. package/lib/cjs/rpc/web/BentleyCloudRpcProtocol.d.ts +33 -33
  420. package/lib/cjs/rpc/web/BentleyCloudRpcProtocol.js +142 -142
  421. package/lib/cjs/rpc/web/BentleyCloudRpcProtocol.js.map +1 -1
  422. package/lib/cjs/rpc/web/OpenAPI.d.ts +139 -139
  423. package/lib/cjs/rpc/web/OpenAPI.js +60 -60
  424. package/lib/cjs/rpc/web/OpenAPI.js.map +1 -1
  425. package/lib/cjs/rpc/web/RpcMultipart.d.ts +31 -31
  426. package/lib/cjs/rpc/web/RpcMultipart.js +45 -45
  427. package/lib/cjs/rpc/web/RpcMultipart.js.map +1 -1
  428. package/lib/cjs/rpc/web/WebAppRpcLogging.d.ts +17 -17
  429. package/lib/cjs/rpc/web/WebAppRpcLogging.js +140 -140
  430. package/lib/cjs/rpc/web/WebAppRpcLogging.js.map +1 -1
  431. package/lib/cjs/rpc/web/WebAppRpcProtocol.d.ts +86 -86
  432. package/lib/cjs/rpc/web/WebAppRpcProtocol.js +116 -116
  433. package/lib/cjs/rpc/web/WebAppRpcProtocol.js.map +1 -1
  434. package/lib/cjs/rpc/web/WebAppRpcRequest.d.ts +71 -71
  435. package/lib/cjs/rpc/web/WebAppRpcRequest.js +374 -374
  436. package/lib/cjs/rpc/web/WebAppRpcRequest.js.map +1 -1
  437. package/lib/cjs/rpc/web/multipart/RpcMultipartParser.d.ts +33 -33
  438. package/lib/cjs/rpc/web/multipart/RpcMultipartParser.js +359 -359
  439. package/lib/cjs/rpc/web/multipart/RpcMultipartParser.js.map +1 -1
  440. package/lib/cjs/tile/B3dmTileIO.d.ts +19 -19
  441. package/lib/cjs/tile/B3dmTileIO.js +66 -66
  442. package/lib/cjs/tile/B3dmTileIO.js.map +1 -1
  443. package/lib/cjs/tile/CompositeTileIO.d.ts +15 -15
  444. package/lib/cjs/tile/CompositeTileIO.js +26 -26
  445. package/lib/cjs/tile/CompositeTileIO.js.map +1 -1
  446. package/lib/cjs/tile/ElementGraphics.d.ts +134 -134
  447. package/lib/cjs/tile/ElementGraphics.js +9 -9
  448. package/lib/cjs/tile/ElementGraphics.js.map +1 -1
  449. package/lib/cjs/tile/GltfTileIO.d.ts +45 -45
  450. package/lib/cjs/tile/GltfTileIO.js +109 -109
  451. package/lib/cjs/tile/GltfTileIO.js.map +1 -1
  452. package/lib/cjs/tile/I3dmTileIO.d.ts +20 -20
  453. package/lib/cjs/tile/I3dmTileIO.js +40 -40
  454. package/lib/cjs/tile/I3dmTileIO.js.map +1 -1
  455. package/lib/cjs/tile/IModelTileIO.d.ts +75 -75
  456. package/lib/cjs/tile/IModelTileIO.js +95 -95
  457. package/lib/cjs/tile/IModelTileIO.js.map +1 -1
  458. package/lib/cjs/tile/PntsTileIO.d.ts +17 -17
  459. package/lib/cjs/tile/PntsTileIO.js +26 -26
  460. package/lib/cjs/tile/PntsTileIO.js.map +1 -1
  461. package/lib/cjs/tile/TileIO.d.ts +66 -66
  462. package/lib/cjs/tile/TileIO.js +118 -118
  463. package/lib/cjs/tile/TileIO.js.map +1 -1
  464. package/lib/cjs/tile/TileMetadata.d.ts +228 -228
  465. package/lib/cjs/tile/TileMetadata.js +676 -676
  466. package/lib/cjs/tile/TileMetadata.js.map +1 -1
  467. package/lib/esm/AmbientOcclusion.d.ts +49 -49
  468. package/lib/esm/AmbientOcclusion.js +52 -52
  469. package/lib/esm/AmbientOcclusion.js.map +1 -1
  470. package/lib/esm/AnalysisStyle.d.ts +134 -134
  471. package/lib/esm/AnalysisStyle.js +159 -159
  472. package/lib/esm/AnalysisStyle.js.map +1 -1
  473. package/lib/esm/AuthorizationClient.d.ts +11 -11
  474. package/lib/esm/AuthorizationClient.js +8 -8
  475. package/lib/esm/AuthorizationClient.js.map +1 -1
  476. package/lib/esm/BackgroundMapProvider.d.ts +51 -51
  477. package/lib/esm/BackgroundMapProvider.js +64 -64
  478. package/lib/esm/BackgroundMapProvider.js.map +1 -1
  479. package/lib/esm/BackgroundMapSettings.d.ts +136 -136
  480. package/lib/esm/BackgroundMapSettings.js +152 -152
  481. package/lib/esm/BackgroundMapSettings.js.map +1 -1
  482. package/lib/esm/Base64EncodedString.d.ts +30 -30
  483. package/lib/esm/Base64EncodedString.js +53 -53
  484. package/lib/esm/Base64EncodedString.js.map +1 -1
  485. package/lib/esm/BlobReader.d.ts +31 -31
  486. package/lib/esm/BlobReader.js +79 -79
  487. package/lib/esm/BlobReader.js.map +1 -1
  488. package/lib/esm/BriefcaseTypes.d.ts +189 -189
  489. package/lib/esm/BriefcaseTypes.js +92 -92
  490. package/lib/esm/BriefcaseTypes.js.map +1 -1
  491. package/lib/esm/Camera.d.ts +42 -42
  492. package/lib/esm/Camera.js +58 -58
  493. package/lib/esm/Camera.js.map +1 -1
  494. package/lib/esm/ChangedElements.d.ts +83 -83
  495. package/lib/esm/ChangedElements.js +18 -18
  496. package/lib/esm/ChangedElements.js.map +1 -1
  497. package/lib/esm/ChangedEntities.d.ts +45 -45
  498. package/lib/esm/ChangedEntities.js +8 -8
  499. package/lib/esm/ChangedEntities.js.map +1 -1
  500. package/lib/esm/ChangesetProps.d.ts +98 -98
  501. package/lib/esm/ChangesetProps.js +19 -19
  502. package/lib/esm/ChangesetProps.js.map +1 -1
  503. package/lib/esm/ClipStyle.d.ts +89 -89
  504. package/lib/esm/ClipStyle.js +118 -118
  505. package/lib/esm/ClipStyle.js.map +1 -1
  506. package/lib/esm/CloudStorage.d.ts +62 -62
  507. package/lib/esm/CloudStorage.js +109 -109
  508. package/lib/esm/CloudStorage.js.map +1 -1
  509. package/lib/esm/CloudStorageTileCache.d.ts +27 -27
  510. package/lib/esm/CloudStorageTileCache.js +62 -62
  511. package/lib/esm/CloudStorageTileCache.js.map +1 -1
  512. package/lib/esm/Code.d.ts +256 -256
  513. package/lib/esm/Code.js +276 -276
  514. package/lib/esm/Code.js.map +1 -1
  515. package/lib/esm/ColorByName.d.ts +161 -161
  516. package/lib/esm/ColorByName.js +166 -166
  517. package/lib/esm/ColorByName.js.map +1 -1
  518. package/lib/esm/ColorDef.d.ts +208 -208
  519. package/lib/esm/ColorDef.js +567 -567
  520. package/lib/esm/ColorDef.js.map +1 -1
  521. package/lib/esm/CommonLoggerCategory.d.ts +18 -18
  522. package/lib/esm/CommonLoggerCategory.js +23 -23
  523. package/lib/esm/CommonLoggerCategory.js.map +1 -1
  524. package/lib/esm/ConcurrentQuery.d.ts +241 -241
  525. package/lib/esm/ConcurrentQuery.js +373 -373
  526. package/lib/esm/ConcurrentQuery.js.map +1 -1
  527. package/lib/esm/ContextRealityModel.d.ts +255 -255
  528. package/lib/esm/ContextRealityModel.js +320 -320
  529. package/lib/esm/ContextRealityModel.js.map +1 -1
  530. package/lib/esm/DisplayStyleSettings.d.ts +552 -552
  531. package/lib/esm/DisplayStyleSettings.js +946 -946
  532. package/lib/esm/DisplayStyleSettings.js.map +1 -1
  533. package/lib/esm/ECSchemaProps.d.ts +39 -39
  534. package/lib/esm/ECSchemaProps.js +8 -8
  535. package/lib/esm/ECSchemaProps.js.map +1 -1
  536. package/lib/esm/ECSqlReader.d.ts +70 -70
  537. package/lib/esm/ECSqlReader.js +275 -275
  538. package/lib/esm/ECSqlReader.js.map +1 -1
  539. package/lib/esm/ECSqlTypes.d.ts +128 -128
  540. package/lib/esm/ECSqlTypes.js +185 -185
  541. package/lib/esm/ECSqlTypes.js.map +1 -1
  542. package/lib/esm/ElementProps.d.ts +476 -476
  543. package/lib/esm/ElementProps.js +92 -92
  544. package/lib/esm/ElementProps.js.map +1 -1
  545. package/lib/esm/EmphasizeElementsProps.d.ts +55 -55
  546. package/lib/esm/EmphasizeElementsProps.js +22 -22
  547. package/lib/esm/EmphasizeElementsProps.js.map +1 -1
  548. package/lib/esm/EntityProps.d.ts +176 -176
  549. package/lib/esm/EntityProps.js +107 -107
  550. package/lib/esm/EntityProps.js.map +1 -1
  551. package/lib/esm/EntityReference.d.ts +51 -51
  552. package/lib/esm/EntityReference.js +52 -52
  553. package/lib/esm/EntityReference.js.map +1 -1
  554. package/lib/esm/Environment.d.ts +61 -61
  555. package/lib/esm/Environment.js +69 -69
  556. package/lib/esm/Environment.js.map +1 -1
  557. package/lib/esm/FeatureGates.d.ts +31 -31
  558. package/lib/esm/FeatureGates.js +51 -51
  559. package/lib/esm/FeatureGates.js.map +1 -1
  560. package/lib/esm/FeatureIndex.d.ts +39 -39
  561. package/lib/esm/FeatureIndex.js +57 -57
  562. package/lib/esm/FeatureIndex.js.map +1 -1
  563. package/lib/esm/FeatureSymbology.d.ts +444 -444
  564. package/lib/esm/FeatureSymbology.js +609 -609
  565. package/lib/esm/FeatureSymbology.js.map +1 -1
  566. package/lib/esm/FeatureTable.d.ts +141 -141
  567. package/lib/esm/FeatureTable.js +272 -272
  568. package/lib/esm/FeatureTable.js.map +1 -1
  569. package/lib/esm/Fonts.d.ts +51 -51
  570. package/lib/esm/Fonts.js +49 -49
  571. package/lib/esm/Fonts.js.map +1 -1
  572. package/lib/esm/Frustum.d.ts +114 -114
  573. package/lib/esm/Frustum.js +288 -288
  574. package/lib/esm/Frustum.js.map +1 -1
  575. package/lib/esm/GeoCoordinateServices.d.ts +119 -119
  576. package/lib/esm/GeoCoordinateServices.js +76 -76
  577. package/lib/esm/GeoCoordinateServices.js.map +1 -1
  578. package/lib/esm/GeometryContainment.d.ts +28 -28
  579. package/lib/esm/GeometryContainment.js +8 -8
  580. package/lib/esm/GeometryContainment.js.map +1 -1
  581. package/lib/esm/GeometryParams.d.ts +130 -130
  582. package/lib/esm/GeometryParams.js +170 -170
  583. package/lib/esm/GeometryParams.js.map +1 -1
  584. package/lib/esm/GeometrySummary.d.ts +45 -45
  585. package/lib/esm/GeometrySummary.js +20 -20
  586. package/lib/esm/GeometrySummary.js.map +1 -1
  587. package/lib/esm/Gradient.d.ts +139 -139
  588. package/lib/esm/Gradient.js +452 -452
  589. package/lib/esm/Gradient.js.map +1 -1
  590. package/lib/esm/GraphicParams.d.ts +58 -58
  591. package/lib/esm/GraphicParams.js +81 -81
  592. package/lib/esm/GraphicParams.js.map +1 -1
  593. package/lib/esm/GroundPlane.d.ts +52 -52
  594. package/lib/esm/GroundPlane.js +60 -60
  595. package/lib/esm/GroundPlane.js.map +1 -1
  596. package/lib/esm/HSLColor.d.ts +20 -20
  597. package/lib/esm/HSLColor.js +28 -28
  598. package/lib/esm/HSLColor.js.map +1 -1
  599. package/lib/esm/HSVColor.d.ts +30 -30
  600. package/lib/esm/HSVColor.js +55 -55
  601. package/lib/esm/HSVColor.js.map +1 -1
  602. package/lib/esm/HiddenLine.d.ts +97 -97
  603. package/lib/esm/HiddenLine.js +159 -159
  604. package/lib/esm/HiddenLine.js.map +1 -1
  605. package/lib/esm/Hilite.d.ts +50 -50
  606. package/lib/esm/Hilite.js +61 -61
  607. package/lib/esm/Hilite.js.map +1 -1
  608. package/lib/esm/IModel.d.ts +359 -359
  609. package/lib/esm/IModel.js +342 -342
  610. package/lib/esm/IModel.js.map +1 -1
  611. package/lib/esm/IModelError.d.ts +36 -36
  612. package/lib/esm/IModelError.js +55 -55
  613. package/lib/esm/IModelError.js.map +1 -1
  614. package/lib/esm/IModelVersion.d.ts +68 -68
  615. package/lib/esm/IModelVersion.js +75 -75
  616. package/lib/esm/IModelVersion.js.map +1 -1
  617. package/lib/esm/Image.d.ts +86 -86
  618. package/lib/esm/Image.js +120 -120
  619. package/lib/esm/Image.js.map +1 -1
  620. package/lib/esm/IpcAppProps.d.ts +124 -124
  621. package/lib/esm/IpcAppProps.js +15 -15
  622. package/lib/esm/IpcAppProps.js.map +1 -1
  623. package/lib/esm/LightSettings.d.ts +224 -224
  624. package/lib/esm/LightSettings.js +301 -301
  625. package/lib/esm/LightSettings.js.map +1 -1
  626. package/lib/esm/LinePixels.d.ts +34 -34
  627. package/lib/esm/LinePixels.js +39 -39
  628. package/lib/esm/LinePixels.js.map +1 -1
  629. package/lib/esm/Localization.d.ts +111 -111
  630. package/lib/esm/Localization.js +22 -22
  631. package/lib/esm/Localization.js.map +1 -1
  632. package/lib/esm/MapImagerySettings.d.ts +62 -62
  633. package/lib/esm/MapImagerySettings.js +76 -76
  634. package/lib/esm/MapImagerySettings.js.map +1 -1
  635. package/lib/esm/MapLayerSettings.d.ts +272 -272
  636. package/lib/esm/MapLayerSettings.js +403 -403
  637. package/lib/esm/MapLayerSettings.js.map +1 -1
  638. package/lib/esm/MassProperties.d.ts +64 -64
  639. package/lib/esm/MassProperties.js +20 -20
  640. package/lib/esm/MassProperties.js.map +1 -1
  641. package/lib/esm/MaterialProps.d.ts +118 -118
  642. package/lib/esm/MaterialProps.js +20 -20
  643. package/lib/esm/MaterialProps.js.map +1 -1
  644. package/lib/esm/ModelClipGroup.d.ts +67 -67
  645. package/lib/esm/ModelClipGroup.js +93 -93
  646. package/lib/esm/ModelClipGroup.js.map +1 -1
  647. package/lib/esm/ModelGeometryChanges.d.ts +107 -107
  648. package/lib/esm/ModelGeometryChanges.js +80 -80
  649. package/lib/esm/ModelGeometryChanges.js.map +1 -1
  650. package/lib/esm/ModelProps.d.ts +67 -67
  651. package/lib/esm/ModelProps.js +8 -8
  652. package/lib/esm/ModelProps.js.map +1 -1
  653. package/lib/esm/NativeAppProps.d.ts +122 -122
  654. package/lib/esm/NativeAppProps.js +27 -27
  655. package/lib/esm/NativeAppProps.js.map +1 -1
  656. package/lib/esm/OctEncodedNormal.d.ts +33 -33
  657. package/lib/esm/OctEncodedNormal.js +93 -93
  658. package/lib/esm/OctEncodedNormal.js.map +1 -1
  659. package/lib/esm/PlanProjectionSettings.d.ts +47 -47
  660. package/lib/esm/PlanProjectionSettings.js +59 -59
  661. package/lib/esm/PlanProjectionSettings.js.map +1 -1
  662. package/lib/esm/PlanarClipMask.d.ts +177 -177
  663. package/lib/esm/PlanarClipMask.js +132 -132
  664. package/lib/esm/PlanarClipMask.js.map +1 -1
  665. package/lib/esm/QPoint.d.ts +479 -479
  666. package/lib/esm/QPoint.js +815 -815
  667. package/lib/esm/QPoint.js.map +1 -1
  668. package/lib/esm/RealityDataAccessProps.d.ts +41 -41
  669. package/lib/esm/RealityDataAccessProps.js +16 -16
  670. package/lib/esm/RealityDataAccessProps.js.map +1 -1
  671. package/lib/esm/Render.d.ts +89 -89
  672. package/lib/esm/Render.js +165 -165
  673. package/lib/esm/Render.js.map +1 -1
  674. package/lib/esm/RenderMaterial.d.ts +58 -58
  675. package/lib/esm/RenderMaterial.js +72 -72
  676. package/lib/esm/RenderMaterial.js.map +1 -1
  677. package/lib/esm/RenderSchedule.d.ts +541 -541
  678. package/lib/esm/RenderSchedule.js +997 -997
  679. package/lib/esm/RenderTexture.d.ts +70 -70
  680. package/lib/esm/RenderTexture.js +55 -55
  681. package/lib/esm/RenderTexture.js.map +1 -1
  682. package/lib/esm/RgbColor.d.ts +39 -39
  683. package/lib/esm/RgbColor.js +63 -63
  684. package/lib/esm/RgbColor.js.map +1 -1
  685. package/lib/esm/RpcInterface.d.ts +33 -33
  686. package/lib/esm/RpcInterface.js +133 -133
  687. package/lib/esm/RpcInterface.js.map +1 -1
  688. package/lib/esm/RpcManager.d.ts +40 -40
  689. package/lib/esm/RpcManager.js +51 -51
  690. package/lib/esm/RpcManager.js.map +1 -1
  691. package/lib/esm/SessionProps.d.ts +16 -16
  692. package/lib/esm/SessionProps.js +8 -8
  693. package/lib/esm/SessionProps.js.map +1 -1
  694. package/lib/esm/SkyBox.d.ts +215 -215
  695. package/lib/esm/SkyBox.js +203 -203
  696. package/lib/esm/SkyBox.js.map +1 -1
  697. package/lib/esm/Snapping.d.ts +49 -49
  698. package/lib/esm/Snapping.js +8 -8
  699. package/lib/esm/Snapping.js.map +1 -1
  700. package/lib/esm/SolarCalculate.d.ts +27 -27
  701. package/lib/esm/SolarCalculate.js +204 -204
  702. package/lib/esm/SolarCalculate.js.map +1 -1
  703. package/lib/esm/SolarShadows.d.ts +35 -35
  704. package/lib/esm/SolarShadows.js +58 -58
  705. package/lib/esm/SolarShadows.js.map +1 -1
  706. package/lib/esm/SpatialClassification.d.ts +208 -208
  707. package/lib/esm/SpatialClassification.js +334 -334
  708. package/lib/esm/SpatialClassification.js.map +1 -1
  709. package/lib/esm/SubCategoryAppearance.d.ts +91 -91
  710. package/lib/esm/SubCategoryAppearance.js +92 -92
  711. package/lib/esm/SubCategoryAppearance.js.map +1 -1
  712. package/lib/esm/SubCategoryOverride.d.ts +46 -46
  713. package/lib/esm/SubCategoryOverride.js +100 -100
  714. package/lib/esm/SubCategoryOverride.js.map +1 -1
  715. package/lib/esm/TerrainSettings.d.ts +82 -82
  716. package/lib/esm/TerrainSettings.js +98 -98
  717. package/lib/esm/TerrainSettings.js.map +1 -1
  718. package/lib/esm/TextureMapping.d.ts +101 -101
  719. package/lib/esm/TextureMapping.js +170 -170
  720. package/lib/esm/TextureMapping.js.map +1 -1
  721. package/lib/esm/TextureProps.d.ts +65 -65
  722. package/lib/esm/TextureProps.js +25 -25
  723. package/lib/esm/TextureProps.js.map +1 -1
  724. package/lib/esm/ThematicDisplay.d.ts +230 -230
  725. package/lib/esm/ThematicDisplay.js +337 -337
  726. package/lib/esm/ThematicDisplay.js.map +1 -1
  727. package/lib/esm/Thumbnail.d.ts +26 -26
  728. package/lib/esm/Thumbnail.js +8 -8
  729. package/lib/esm/Thumbnail.js.map +1 -1
  730. package/lib/esm/TileProps.d.ts +82 -82
  731. package/lib/esm/TileProps.js +25 -25
  732. package/lib/esm/TileProps.js.map +1 -1
  733. package/lib/esm/Tween.d.ts +191 -191
  734. package/lib/esm/Tween.js +565 -565
  735. package/lib/esm/Tween.js.map +1 -1
  736. package/lib/esm/TxnAction.d.ts +21 -21
  737. package/lib/esm/TxnAction.js +26 -26
  738. package/lib/esm/TxnAction.js.map +1 -1
  739. package/lib/esm/ViewDetails.d.ts +125 -125
  740. package/lib/esm/ViewDetails.js +153 -153
  741. package/lib/esm/ViewDetails.js.map +1 -1
  742. package/lib/esm/ViewFlags.d.ts +291 -291
  743. package/lib/esm/ViewFlags.js +364 -364
  744. package/lib/esm/ViewFlags.js.map +1 -1
  745. package/lib/esm/ViewProps.d.ts +205 -205
  746. package/lib/esm/ViewProps.js +8 -8
  747. package/lib/esm/ViewProps.js.map +1 -1
  748. package/lib/esm/WhiteOnWhiteReversalSettings.d.ts +36 -36
  749. package/lib/esm/WhiteOnWhiteReversalSettings.js +33 -33
  750. package/lib/esm/WhiteOnWhiteReversalSettings.js.map +1 -1
  751. package/lib/esm/core-common.d.ts +241 -241
  752. package/lib/esm/core-common.js +245 -245
  753. package/lib/esm/core-common.js.map +1 -1
  754. package/lib/esm/domains/FunctionalElementProps.d.ts +11 -11
  755. package/lib/esm/domains/FunctionalElementProps.js +8 -8
  756. package/lib/esm/domains/FunctionalElementProps.js.map +1 -1
  757. package/lib/esm/domains/GenericElementProps.d.ts +18 -18
  758. package/lib/esm/domains/GenericElementProps.js +8 -8
  759. package/lib/esm/domains/GenericElementProps.js.map +1 -1
  760. package/lib/esm/geometry/AdditionalTransform.d.ts +84 -84
  761. package/lib/esm/geometry/AdditionalTransform.js +80 -80
  762. package/lib/esm/geometry/AdditionalTransform.js.map +1 -1
  763. package/lib/esm/geometry/AreaPattern.d.ts +82 -82
  764. package/lib/esm/geometry/AreaPattern.js +201 -201
  765. package/lib/esm/geometry/AreaPattern.js.map +1 -1
  766. package/lib/esm/geometry/BoundingSphere.d.ts +14 -14
  767. package/lib/esm/geometry/BoundingSphere.js +26 -26
  768. package/lib/esm/geometry/BoundingSphere.js.map +1 -1
  769. package/lib/esm/geometry/Cartographic.d.ts +137 -137
  770. package/lib/esm/geometry/Cartographic.js +340 -340
  771. package/lib/esm/geometry/Cartographic.js.map +1 -1
  772. package/lib/esm/geometry/CoordinateReferenceSystem.d.ts +269 -269
  773. package/lib/esm/geometry/CoordinateReferenceSystem.js +254 -254
  774. package/lib/esm/geometry/CoordinateReferenceSystem.js.map +1 -1
  775. package/lib/esm/geometry/ElementGeometry.d.ts +402 -402
  776. package/lib/esm/geometry/ElementGeometry.js +1716 -1716
  777. package/lib/esm/geometry/ElementGeometry.js.map +1 -1
  778. package/lib/esm/geometry/ElementGeometryFB.d.ts +2372 -2372
  779. package/lib/esm/geometry/ElementGeometryFB.js +3811 -3811
  780. package/lib/esm/geometry/ElementGeometryFB.js.map +1 -1
  781. package/lib/esm/geometry/FrustumPlanes.d.ts +32 -32
  782. package/lib/esm/geometry/FrustumPlanes.js +128 -128
  783. package/lib/esm/geometry/FrustumPlanes.js.map +1 -1
  784. package/lib/esm/geometry/GeodeticDatum.d.ts +409 -409
  785. package/lib/esm/geometry/GeodeticDatum.js +390 -390
  786. package/lib/esm/geometry/GeodeticDatum.js.map +1 -1
  787. package/lib/esm/geometry/GeodeticEllipsoid.d.ts +72 -72
  788. package/lib/esm/geometry/GeodeticEllipsoid.js +68 -68
  789. package/lib/esm/geometry/GeodeticEllipsoid.js.map +1 -1
  790. package/lib/esm/geometry/GeometryStream.d.ts +347 -347
  791. package/lib/esm/geometry/GeometryStream.js +464 -464
  792. package/lib/esm/geometry/GeometryStream.js.map +1 -1
  793. package/lib/esm/geometry/ImageGraphic.d.ts +74 -74
  794. package/lib/esm/geometry/ImageGraphic.js +93 -93
  795. package/lib/esm/geometry/ImageGraphic.js.map +1 -1
  796. package/lib/esm/geometry/LineStyle.d.ts +71 -71
  797. package/lib/esm/geometry/LineStyle.js +126 -126
  798. package/lib/esm/geometry/LineStyle.js.map +1 -1
  799. package/lib/esm/geometry/Placement.d.ts +95 -95
  800. package/lib/esm/geometry/Placement.js +126 -126
  801. package/lib/esm/geometry/Placement.js.map +1 -1
  802. package/lib/esm/geometry/Projection.d.ts +251 -251
  803. package/lib/esm/geometry/Projection.js +192 -192
  804. package/lib/esm/geometry/Projection.js.map +1 -1
  805. package/lib/esm/geometry/TextString.d.ts +55 -55
  806. package/lib/esm/geometry/TextString.js +61 -61
  807. package/lib/esm/geometry/TextString.js.map +1 -1
  808. package/lib/esm/ipc/IpcSession.d.ts +23 -23
  809. package/lib/esm/ipc/IpcSession.js +23 -23
  810. package/lib/esm/ipc/IpcSession.js.map +1 -1
  811. package/lib/esm/ipc/IpcSocket.d.ts +96 -96
  812. package/lib/esm/ipc/IpcSocket.js +12 -12
  813. package/lib/esm/ipc/IpcSocket.js.map +1 -1
  814. package/lib/esm/ipc/IpcWebSocket.d.ts +61 -61
  815. package/lib/esm/ipc/IpcWebSocket.js +145 -145
  816. package/lib/esm/ipc/IpcWebSocket.js.map +1 -1
  817. package/lib/esm/ipc/IpcWebSocketTransport.d.ts +15 -15
  818. package/lib/esm/ipc/IpcWebSocketTransport.js +154 -154
  819. package/lib/esm/ipc/IpcWebSocketTransport.js.map +1 -1
  820. package/lib/esm/rpc/DevToolsRpcInterface.d.ts +32 -32
  821. package/lib/esm/rpc/DevToolsRpcInterface.js +44 -44
  822. package/lib/esm/rpc/DevToolsRpcInterface.js.map +1 -1
  823. package/lib/esm/rpc/IModelReadRpcInterface.d.ts +97 -75
  824. package/lib/esm/rpc/IModelReadRpcInterface.d.ts.map +1 -1
  825. package/lib/esm/rpc/IModelReadRpcInterface.js +114 -110
  826. package/lib/esm/rpc/IModelReadRpcInterface.js.map +1 -1
  827. package/lib/esm/rpc/IModelTileRpcInterface.d.ts +61 -61
  828. package/lib/esm/rpc/IModelTileRpcInterface.js +92 -92
  829. package/lib/esm/rpc/IModelTileRpcInterface.js.map +1 -1
  830. package/lib/esm/rpc/SnapshotIModelRpcInterface.d.ts +23 -23
  831. package/lib/esm/rpc/SnapshotIModelRpcInterface.js +44 -44
  832. package/lib/esm/rpc/SnapshotIModelRpcInterface.js.map +1 -1
  833. package/lib/esm/rpc/TestRpcManager.d.ts +20 -20
  834. package/lib/esm/rpc/TestRpcManager.js +35 -35
  835. package/lib/esm/rpc/TestRpcManager.js.map +1 -1
  836. package/lib/esm/rpc/WipRpcInterface.d.ts +29 -29
  837. package/lib/esm/rpc/WipRpcInterface.js +36 -36
  838. package/lib/esm/rpc/WipRpcInterface.js.map +1 -1
  839. package/lib/esm/rpc/core/RpcConfiguration.d.ts +111 -111
  840. package/lib/esm/rpc/core/RpcConfiguration.js +185 -185
  841. package/lib/esm/rpc/core/RpcConfiguration.js.map +1 -1
  842. package/lib/esm/rpc/core/RpcConstants.d.ts +85 -85
  843. package/lib/esm/rpc/core/RpcConstants.js +100 -100
  844. package/lib/esm/rpc/core/RpcConstants.js.map +1 -1
  845. package/lib/esm/rpc/core/RpcControl.d.ts +52 -52
  846. package/lib/esm/rpc/core/RpcControl.js +142 -142
  847. package/lib/esm/rpc/core/RpcControl.js.map +1 -1
  848. package/lib/esm/rpc/core/RpcInvocation.d.ts +89 -89
  849. package/lib/esm/rpc/core/RpcInvocation.js +253 -253
  850. package/lib/esm/rpc/core/RpcInvocation.js.map +1 -1
  851. package/lib/esm/rpc/core/RpcMarshaling.d.ts +36 -36
  852. package/lib/esm/rpc/core/RpcMarshaling.js +149 -149
  853. package/lib/esm/rpc/core/RpcMarshaling.js.map +1 -1
  854. package/lib/esm/rpc/core/RpcOperation.d.ts +67 -67
  855. package/lib/esm/rpc/core/RpcOperation.js +128 -128
  856. package/lib/esm/rpc/core/RpcOperation.js.map +1 -1
  857. package/lib/esm/rpc/core/RpcPendingQueue.d.ts +21 -21
  858. package/lib/esm/rpc/core/RpcPendingQueue.js +90 -90
  859. package/lib/esm/rpc/core/RpcPendingQueue.js.map +1 -1
  860. package/lib/esm/rpc/core/RpcProtocol.d.ts +132 -132
  861. package/lib/esm/rpc/core/RpcProtocol.js +123 -123
  862. package/lib/esm/rpc/core/RpcProtocol.js.map +1 -1
  863. package/lib/esm/rpc/core/RpcPush.d.ts +68 -68
  864. package/lib/esm/rpc/core/RpcPush.js +119 -119
  865. package/lib/esm/rpc/core/RpcPush.js.map +1 -1
  866. package/lib/esm/rpc/core/RpcRegistry.d.ts +48 -48
  867. package/lib/esm/rpc/core/RpcRegistry.js +194 -194
  868. package/lib/esm/rpc/core/RpcRegistry.js.map +1 -1
  869. package/lib/esm/rpc/core/RpcRequest.d.ts +186 -186
  870. package/lib/esm/rpc/core/RpcRequest.js +472 -472
  871. package/lib/esm/rpc/core/RpcRequest.js.map +1 -1
  872. package/lib/esm/rpc/core/RpcRequestContext.d.ts +14 -14
  873. package/lib/esm/rpc/core/RpcRequestContext.js +1 -1
  874. package/lib/esm/rpc/core/RpcRequestContext.js.map +1 -1
  875. package/lib/esm/rpc/core/RpcRoutingToken.d.ts +12 -12
  876. package/lib/esm/rpc/core/RpcRoutingToken.js +19 -19
  877. package/lib/esm/rpc/core/RpcRoutingToken.js.map +1 -1
  878. package/lib/esm/rpc/core/RpcSessionInvocation.d.ts +10 -10
  879. package/lib/esm/rpc/core/RpcSessionInvocation.js +55 -55
  880. package/lib/esm/rpc/core/RpcSessionInvocation.js.map +1 -1
  881. package/lib/esm/rpc/web/BentleyCloudRpcManager.d.ts +46 -46
  882. package/lib/esm/rpc/web/BentleyCloudRpcManager.js +68 -68
  883. package/lib/esm/rpc/web/BentleyCloudRpcManager.js.map +1 -1
  884. package/lib/esm/rpc/web/BentleyCloudRpcProtocol.d.ts +33 -33
  885. package/lib/esm/rpc/web/BentleyCloudRpcProtocol.js +138 -138
  886. package/lib/esm/rpc/web/BentleyCloudRpcProtocol.js.map +1 -1
  887. package/lib/esm/rpc/web/OpenAPI.d.ts +139 -139
  888. package/lib/esm/rpc/web/OpenAPI.js +56 -56
  889. package/lib/esm/rpc/web/OpenAPI.js.map +1 -1
  890. package/lib/esm/rpc/web/RpcMultipart.d.ts +31 -31
  891. package/lib/esm/rpc/web/RpcMultipart.js +41 -41
  892. package/lib/esm/rpc/web/RpcMultipart.js.map +1 -1
  893. package/lib/esm/rpc/web/WebAppRpcLogging.d.ts +17 -17
  894. package/lib/esm/rpc/web/WebAppRpcLogging.js +136 -136
  895. package/lib/esm/rpc/web/WebAppRpcLogging.js.map +1 -1
  896. package/lib/esm/rpc/web/WebAppRpcProtocol.d.ts +86 -86
  897. package/lib/esm/rpc/web/WebAppRpcProtocol.js +112 -112
  898. package/lib/esm/rpc/web/WebAppRpcProtocol.js.map +1 -1
  899. package/lib/esm/rpc/web/WebAppRpcRequest.d.ts +71 -71
  900. package/lib/esm/rpc/web/WebAppRpcRequest.js +370 -370
  901. package/lib/esm/rpc/web/WebAppRpcRequest.js.map +1 -1
  902. package/lib/esm/rpc/web/multipart/RpcMultipartParser.d.ts +33 -33
  903. package/lib/esm/rpc/web/multipart/RpcMultipartParser.js +355 -355
  904. package/lib/esm/rpc/web/multipart/RpcMultipartParser.js.map +1 -1
  905. package/lib/esm/tile/B3dmTileIO.d.ts +19 -19
  906. package/lib/esm/tile/B3dmTileIO.js +62 -62
  907. package/lib/esm/tile/B3dmTileIO.js.map +1 -1
  908. package/lib/esm/tile/CompositeTileIO.d.ts +15 -15
  909. package/lib/esm/tile/CompositeTileIO.js +22 -22
  910. package/lib/esm/tile/CompositeTileIO.js.map +1 -1
  911. package/lib/esm/tile/ElementGraphics.d.ts +134 -134
  912. package/lib/esm/tile/ElementGraphics.js +8 -8
  913. package/lib/esm/tile/ElementGraphics.js.map +1 -1
  914. package/lib/esm/tile/GltfTileIO.d.ts +45 -45
  915. package/lib/esm/tile/GltfTileIO.js +105 -105
  916. package/lib/esm/tile/GltfTileIO.js.map +1 -1
  917. package/lib/esm/tile/I3dmTileIO.d.ts +20 -20
  918. package/lib/esm/tile/I3dmTileIO.js +36 -36
  919. package/lib/esm/tile/I3dmTileIO.js.map +1 -1
  920. package/lib/esm/tile/IModelTileIO.d.ts +75 -75
  921. package/lib/esm/tile/IModelTileIO.js +90 -90
  922. package/lib/esm/tile/IModelTileIO.js.map +1 -1
  923. package/lib/esm/tile/PntsTileIO.d.ts +17 -17
  924. package/lib/esm/tile/PntsTileIO.js +22 -22
  925. package/lib/esm/tile/PntsTileIO.js.map +1 -1
  926. package/lib/esm/tile/TileIO.d.ts +66 -66
  927. package/lib/esm/tile/TileIO.js +110 -110
  928. package/lib/esm/tile/TileIO.js.map +1 -1
  929. package/lib/esm/tile/TileMetadata.d.ts +228 -228
  930. package/lib/esm/tile/TileMetadata.js +661 -661
  931. package/lib/esm/tile/TileMetadata.js.map +1 -1
  932. package/package.json +7 -7
@@ -1,69 +1,69 @@
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 { RpcManager } from "../../RpcManager";
9
- import { RpcConfiguration } from "../core/RpcConfiguration";
10
- import { RpcRequestEvent } from "../core/RpcConstants";
11
- import { RpcRequest } from "../core/RpcRequest";
12
- import { BentleyCloudRpcProtocol } from "./BentleyCloudRpcProtocol";
13
- import { RpcRoutingToken } from "../core/RpcRoutingToken";
14
- /** Operating parameters for Bentley cloud RPC interface deployments.
15
- * @internal
16
- */
17
- export class BentleyCloudRpcConfiguration extends RpcConfiguration {
18
- }
19
- /** Access-Control header values for backend servers that serve frontends using BentleyCloudRpcProtocol. */
20
- BentleyCloudRpcConfiguration.accessControl = {
21
- allowOrigin: "*",
22
- allowMethods: "POST, GET, OPTIONS",
23
- allowHeaders: "Content-Type, Access-Control-Allow-Headers, Authorization, X-Requested-With, X-Correlation-Id, X-Session-Id, X-Application-Id, X-Application-Version, X-User-Id, X-Protocol-Version",
24
- };
25
- /** Coordinates usage of RPC interfaces for Bentley cloud deployments.
26
- * @internal
27
- */
28
- export class BentleyCloudRpcManager extends RpcManager {
29
- /** Initializes BentleyCloudRpcManager for the frontend of an application. */
30
- static initializeClient(params, interfaces, routing = RpcRoutingToken.default) {
31
- return BentleyCloudRpcManager.performInitialization(params, interfaces, routing);
32
- }
33
- /** Initializes BentleyCloudRpcManager for the backend of an application. */
34
- static initializeImpl(params, interfaces) {
35
- return BentleyCloudRpcManager.performInitialization(params, interfaces);
36
- }
37
- static performInitialization(params, interfaces, routing = RpcRoutingToken.default) {
38
- const protocol = class extends (params.protocol || BentleyCloudRpcProtocol) {
39
- constructor() {
40
- super(...arguments);
41
- this.pathPrefix = params.uriPrefix || "";
42
- this.info = params.info;
43
- }
44
- };
45
- const config = class extends BentleyCloudRpcConfiguration {
46
- constructor() {
47
- super(...arguments);
48
- this.interfaces = () => interfaces;
49
- this.protocol = new protocol(this);
50
- this.routing = routing;
51
- }
52
- };
53
- for (const def of interfaces) {
54
- RpcConfiguration.assignWithRouting(def, routing, config);
55
- }
56
- const instance = RpcConfiguration.obtain(config);
57
- RpcConfiguration.initializeInterfaces(instance);
58
- if (params.pendingRequestListener) {
59
- const listener = params.pendingRequestListener;
60
- RpcRequest.events.addListener((type, request) => {
61
- if (type === RpcRequestEvent.PendingUpdateReceived && request.protocol === instance.protocol) {
62
- listener(type, request);
63
- }
64
- });
65
- }
66
- return instance;
67
- }
68
- }
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 { RpcManager } from "../../RpcManager";
9
+ import { RpcConfiguration } from "../core/RpcConfiguration";
10
+ import { RpcRequestEvent } from "../core/RpcConstants";
11
+ import { RpcRequest } from "../core/RpcRequest";
12
+ import { BentleyCloudRpcProtocol } from "./BentleyCloudRpcProtocol";
13
+ import { RpcRoutingToken } from "../core/RpcRoutingToken";
14
+ /** Operating parameters for Bentley cloud RPC interface deployments.
15
+ * @internal
16
+ */
17
+ export class BentleyCloudRpcConfiguration extends RpcConfiguration {
18
+ }
19
+ /** Access-Control header values for backend servers that serve frontends using BentleyCloudRpcProtocol. */
20
+ BentleyCloudRpcConfiguration.accessControl = {
21
+ allowOrigin: "*",
22
+ allowMethods: "POST, GET, OPTIONS",
23
+ allowHeaders: "Content-Type, Access-Control-Allow-Headers, Authorization, X-Requested-With, X-Correlation-Id, X-Session-Id, X-Application-Id, X-Application-Version, X-User-Id, X-Protocol-Version",
24
+ };
25
+ /** Coordinates usage of RPC interfaces for Bentley cloud deployments.
26
+ * @internal
27
+ */
28
+ export class BentleyCloudRpcManager extends RpcManager {
29
+ /** Initializes BentleyCloudRpcManager for the frontend of an application. */
30
+ static initializeClient(params, interfaces, routing = RpcRoutingToken.default) {
31
+ return BentleyCloudRpcManager.performInitialization(params, interfaces, routing);
32
+ }
33
+ /** Initializes BentleyCloudRpcManager for the backend of an application. */
34
+ static initializeImpl(params, interfaces) {
35
+ return BentleyCloudRpcManager.performInitialization(params, interfaces);
36
+ }
37
+ static performInitialization(params, interfaces, routing = RpcRoutingToken.default) {
38
+ const protocol = class extends (params.protocol || BentleyCloudRpcProtocol) {
39
+ constructor() {
40
+ super(...arguments);
41
+ this.pathPrefix = params.uriPrefix || "";
42
+ this.info = params.info;
43
+ }
44
+ };
45
+ const config = class extends BentleyCloudRpcConfiguration {
46
+ constructor() {
47
+ super(...arguments);
48
+ this.interfaces = () => interfaces;
49
+ this.protocol = new protocol(this);
50
+ this.routing = routing;
51
+ }
52
+ };
53
+ for (const def of interfaces) {
54
+ RpcConfiguration.assignWithRouting(def, routing, config);
55
+ }
56
+ const instance = RpcConfiguration.obtain(config);
57
+ RpcConfiguration.initializeInterfaces(instance);
58
+ if (params.pendingRequestListener) {
59
+ const listener = params.pendingRequestListener;
60
+ RpcRequest.events.addListener((type, request) => {
61
+ if (type === RpcRequestEvent.PendingUpdateReceived && request.protocol === instance.protocol) {
62
+ listener(type, request);
63
+ }
64
+ });
65
+ }
66
+ return instance;
67
+ }
68
+ }
69
69
  //# sourceMappingURL=BentleyCloudRpcManager.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BentleyCloudRpcManager.js","sourceRoot":"","sources":["../../../../src/rpc/web/BentleyCloudRpcManager.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAGH,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,UAAU,EAA0B,MAAM,oBAAoB,CAAC;AACxE,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAEpE,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAgB1D;;GAEG;AACH,MAAM,OAAgB,4BAA6B,SAAQ,gBAAgB;;AACzE,2GAA2G;AACpF,0CAAa,GAAG;IACrC,WAAW,EAAE,GAAG;IAChB,YAAY,EAAE,oBAAoB;IAClC,YAAY,EAAE,qLAAqL;CACpM,CAAC;AAMJ;;GAEG;AACH,MAAM,OAAO,sBAAuB,SAAQ,UAAU;IACpD,6EAA6E;IACtE,MAAM,CAAC,gBAAgB,CAAC,MAA6B,EAAE,UAAoC,EAAE,UAA2B,eAAe,CAAC,OAAO;QACpJ,OAAO,sBAAsB,CAAC,qBAAqB,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;IACnF,CAAC;IAED,4EAA4E;IACrE,MAAM,CAAC,cAAc,CAAC,MAA6B,EAAE,UAAoC;QAC9F,OAAO,sBAAsB,CAAC,qBAAqB,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IAC1E,CAAC;IAEO,MAAM,CAAC,qBAAqB,CAAC,MAA6B,EAAE,UAAoC,EAAE,UAA2B,eAAe,CAAC,OAAO;QAC1J,MAAM,QAAQ,GAAG,KAAM,SAAQ,CAAC,MAAM,CAAC,QAAQ,IAAI,uBAAuB,CAAC;YAA1D;;gBACC,eAAU,GAAG,MAAM,CAAC,SAAS,IAAI,EAAE,CAAC;gBAC7C,SAAI,GAAG,MAAM,CAAC,IAAI,CAAC;YAC5B,CAAC;SAAA,CAAC;QAEF,MAAM,MAAM,GAAG,KAAM,SAAQ,4BAA4B;YAA1C;;gBACN,eAAU,GAAG,GAAG,EAAE,CAAC,UAAU,CAAC;gBAC9B,aAAQ,GAA4B,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC;gBAC9C,YAAO,GAAG,OAAO,CAAC;YACpC,CAAC;SAAA,CAAC;QAEF,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE;YAC5B,gBAAgB,CAAC,iBAAiB,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;SAC1D;QAED,MAAM,QAAQ,GAAG,gBAAgB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACjD,gBAAgB,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC;QAEhD,IAAI,MAAM,CAAC,sBAAsB,EAAE;YACjC,MAAM,QAAQ,GAAG,MAAM,CAAC,sBAAsB,CAAC;YAE/C,UAAU,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE;gBAC9C,IAAI,IAAI,KAAK,eAAe,CAAC,qBAAqB,IAAI,OAAO,CAAC,QAAQ,KAAK,QAAQ,CAAC,QAAQ,EAAE;oBAC5F,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;iBACzB;YACH,CAAC,CAAC,CAAC;SACJ;QAED,OAAO,QAAQ,CAAC;IAClB,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 { RpcInterfaceDefinition } from \"../../RpcInterface\";\nimport { RpcManager } from \"../../RpcManager\";\nimport { RpcConfiguration } from \"../core/RpcConfiguration\";\nimport { RpcRequestEvent } from \"../core/RpcConstants\";\nimport { RpcRequest, RpcRequestEventHandler } from \"../core/RpcRequest\";\nimport { BentleyCloudRpcProtocol } from \"./BentleyCloudRpcProtocol\";\nimport { OpenAPIInfo } from \"./OpenAPI\";\nimport { RpcRoutingToken } from \"../core/RpcRoutingToken\";\n\n/** Initialization parameters for BentleyCloudRpcConfiguration.\n * @internal\n */\nexport interface BentleyCloudRpcParams {\n /** Identifies the remote server that implements a set of RpcInterfaces. Note that the ID of the remote server is not a URI or hostname. It is a string that matches a key in the orchestrator's app registry. */\n info: OpenAPIInfo;\n /** The protocol for Bentley cloud RPC interface deployments */\n protocol?: typeof BentleyCloudRpcProtocol;\n /** The URI of the orchestrator that will route requests to the remote RpcInterface server. If not supplied, this default to the origin of the Web page. This is required only when calling initializeClient and only if the server is not the origin of the Web page. */\n uriPrefix?: string;\n /** Handler for RPC request events. */\n pendingRequestListener?: RpcRequestEventHandler;\n}\n\n/** Operating parameters for Bentley cloud RPC interface deployments.\n * @internal\n */\nexport abstract class BentleyCloudRpcConfiguration extends RpcConfiguration {\n /** Access-Control header values for backend servers that serve frontends using BentleyCloudRpcProtocol. */\n public static readonly accessControl = {\n allowOrigin: \"*\",\n allowMethods: \"POST, GET, OPTIONS\",\n allowHeaders: \"Content-Type, Access-Control-Allow-Headers, Authorization, X-Requested-With, X-Correlation-Id, X-Session-Id, X-Application-Id, X-Application-Version, X-User-Id, X-Protocol-Version\",\n };\n\n /** The protocol of the configuration. */\n public abstract override readonly protocol: BentleyCloudRpcProtocol;\n}\n\n/** Coordinates usage of RPC interfaces for Bentley cloud deployments.\n * @internal\n */\nexport class BentleyCloudRpcManager extends RpcManager {\n /** Initializes BentleyCloudRpcManager for the frontend of an application. */\n public static initializeClient(params: BentleyCloudRpcParams, interfaces: RpcInterfaceDefinition[], routing: RpcRoutingToken = RpcRoutingToken.default): BentleyCloudRpcConfiguration {\n return BentleyCloudRpcManager.performInitialization(params, interfaces, routing);\n }\n\n /** Initializes BentleyCloudRpcManager for the backend of an application. */\n public static initializeImpl(params: BentleyCloudRpcParams, interfaces: RpcInterfaceDefinition[]): BentleyCloudRpcConfiguration {\n return BentleyCloudRpcManager.performInitialization(params, interfaces);\n }\n\n private static performInitialization(params: BentleyCloudRpcParams, interfaces: RpcInterfaceDefinition[], routing: RpcRoutingToken = RpcRoutingToken.default): BentleyCloudRpcConfiguration {\n const protocol = class extends (params.protocol || BentleyCloudRpcProtocol) {\n public override pathPrefix = params.uriPrefix || \"\";\n public info = params.info;\n };\n\n const config = class extends BentleyCloudRpcConfiguration {\n public interfaces = () => interfaces;\n public protocol: BentleyCloudRpcProtocol = new protocol(this);\n public override routing = routing;\n };\n\n for (const def of interfaces) {\n RpcConfiguration.assignWithRouting(def, routing, config);\n }\n\n const instance = RpcConfiguration.obtain(config);\n RpcConfiguration.initializeInterfaces(instance);\n\n if (params.pendingRequestListener) {\n const listener = params.pendingRequestListener;\n\n RpcRequest.events.addListener((type, request) => {\n if (type === RpcRequestEvent.PendingUpdateReceived && request.protocol === instance.protocol) {\n listener(type, request);\n }\n });\n }\n\n return instance;\n }\n}\n"]}
1
+ {"version":3,"file":"BentleyCloudRpcManager.js","sourceRoot":"","sources":["../../../../src/rpc/web/BentleyCloudRpcManager.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAGH,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,UAAU,EAA0B,MAAM,oBAAoB,CAAC;AACxE,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAEpE,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAgB1D;;GAEG;AACH,MAAM,OAAgB,4BAA6B,SAAQ,gBAAgB;;AACzE,2GAA2G;AACpF,0CAAa,GAAG;IACrC,WAAW,EAAE,GAAG;IAChB,YAAY,EAAE,oBAAoB;IAClC,YAAY,EAAE,qLAAqL;CACpM,CAAC;AAMJ;;GAEG;AACH,MAAM,OAAO,sBAAuB,SAAQ,UAAU;IACpD,6EAA6E;IACtE,MAAM,CAAC,gBAAgB,CAAC,MAA6B,EAAE,UAAoC,EAAE,UAA2B,eAAe,CAAC,OAAO;QACpJ,OAAO,sBAAsB,CAAC,qBAAqB,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;IACnF,CAAC;IAED,4EAA4E;IACrE,MAAM,CAAC,cAAc,CAAC,MAA6B,EAAE,UAAoC;QAC9F,OAAO,sBAAsB,CAAC,qBAAqB,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IAC1E,CAAC;IAEO,MAAM,CAAC,qBAAqB,CAAC,MAA6B,EAAE,UAAoC,EAAE,UAA2B,eAAe,CAAC,OAAO;QAC1J,MAAM,QAAQ,GAAG,KAAM,SAAQ,CAAC,MAAM,CAAC,QAAQ,IAAI,uBAAuB,CAAC;YAA1D;;gBACC,eAAU,GAAG,MAAM,CAAC,SAAS,IAAI,EAAE,CAAC;gBAC7C,SAAI,GAAG,MAAM,CAAC,IAAI,CAAC;YAC5B,CAAC;SAAA,CAAC;QAEF,MAAM,MAAM,GAAG,KAAM,SAAQ,4BAA4B;YAA1C;;gBACN,eAAU,GAAG,GAAG,EAAE,CAAC,UAAU,CAAC;gBAC9B,aAAQ,GAA4B,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC;gBAC9C,YAAO,GAAG,OAAO,CAAC;YACpC,CAAC;SAAA,CAAC;QAEF,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE;YAC5B,gBAAgB,CAAC,iBAAiB,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;SAC1D;QAED,MAAM,QAAQ,GAAG,gBAAgB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACjD,gBAAgB,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC;QAEhD,IAAI,MAAM,CAAC,sBAAsB,EAAE;YACjC,MAAM,QAAQ,GAAG,MAAM,CAAC,sBAAsB,CAAC;YAE/C,UAAU,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE;gBAC9C,IAAI,IAAI,KAAK,eAAe,CAAC,qBAAqB,IAAI,OAAO,CAAC,QAAQ,KAAK,QAAQ,CAAC,QAAQ,EAAE;oBAC5F,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;iBACzB;YACH,CAAC,CAAC,CAAC;SACJ;QAED,OAAO,QAAQ,CAAC;IAClB,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 { RpcInterfaceDefinition } from \"../../RpcInterface\";\r\nimport { RpcManager } from \"../../RpcManager\";\r\nimport { RpcConfiguration } from \"../core/RpcConfiguration\";\r\nimport { RpcRequestEvent } from \"../core/RpcConstants\";\r\nimport { RpcRequest, RpcRequestEventHandler } from \"../core/RpcRequest\";\r\nimport { BentleyCloudRpcProtocol } from \"./BentleyCloudRpcProtocol\";\r\nimport { OpenAPIInfo } from \"./OpenAPI\";\r\nimport { RpcRoutingToken } from \"../core/RpcRoutingToken\";\r\n\r\n/** Initialization parameters for BentleyCloudRpcConfiguration.\r\n * @internal\r\n */\r\nexport interface BentleyCloudRpcParams {\r\n /** Identifies the remote server that implements a set of RpcInterfaces. Note that the ID of the remote server is not a URI or hostname. It is a string that matches a key in the orchestrator's app registry. */\r\n info: OpenAPIInfo;\r\n /** The protocol for Bentley cloud RPC interface deployments */\r\n protocol?: typeof BentleyCloudRpcProtocol;\r\n /** The URI of the orchestrator that will route requests to the remote RpcInterface server. If not supplied, this default to the origin of the Web page. This is required only when calling initializeClient and only if the server is not the origin of the Web page. */\r\n uriPrefix?: string;\r\n /** Handler for RPC request events. */\r\n pendingRequestListener?: RpcRequestEventHandler;\r\n}\r\n\r\n/** Operating parameters for Bentley cloud RPC interface deployments.\r\n * @internal\r\n */\r\nexport abstract class BentleyCloudRpcConfiguration extends RpcConfiguration {\r\n /** Access-Control header values for backend servers that serve frontends using BentleyCloudRpcProtocol. */\r\n public static readonly accessControl = {\r\n allowOrigin: \"*\",\r\n allowMethods: \"POST, GET, OPTIONS\",\r\n allowHeaders: \"Content-Type, Access-Control-Allow-Headers, Authorization, X-Requested-With, X-Correlation-Id, X-Session-Id, X-Application-Id, X-Application-Version, X-User-Id, X-Protocol-Version\",\r\n };\r\n\r\n /** The protocol of the configuration. */\r\n public abstract override readonly protocol: BentleyCloudRpcProtocol;\r\n}\r\n\r\n/** Coordinates usage of RPC interfaces for Bentley cloud deployments.\r\n * @internal\r\n */\r\nexport class BentleyCloudRpcManager extends RpcManager {\r\n /** Initializes BentleyCloudRpcManager for the frontend of an application. */\r\n public static initializeClient(params: BentleyCloudRpcParams, interfaces: RpcInterfaceDefinition[], routing: RpcRoutingToken = RpcRoutingToken.default): BentleyCloudRpcConfiguration {\r\n return BentleyCloudRpcManager.performInitialization(params, interfaces, routing);\r\n }\r\n\r\n /** Initializes BentleyCloudRpcManager for the backend of an application. */\r\n public static initializeImpl(params: BentleyCloudRpcParams, interfaces: RpcInterfaceDefinition[]): BentleyCloudRpcConfiguration {\r\n return BentleyCloudRpcManager.performInitialization(params, interfaces);\r\n }\r\n\r\n private static performInitialization(params: BentleyCloudRpcParams, interfaces: RpcInterfaceDefinition[], routing: RpcRoutingToken = RpcRoutingToken.default): BentleyCloudRpcConfiguration {\r\n const protocol = class extends (params.protocol || BentleyCloudRpcProtocol) {\r\n public override pathPrefix = params.uriPrefix || \"\";\r\n public info = params.info;\r\n };\r\n\r\n const config = class extends BentleyCloudRpcConfiguration {\r\n public interfaces = () => interfaces;\r\n public protocol: BentleyCloudRpcProtocol = new protocol(this);\r\n public override routing = routing;\r\n };\r\n\r\n for (const def of interfaces) {\r\n RpcConfiguration.assignWithRouting(def, routing, config);\r\n }\r\n\r\n const instance = RpcConfiguration.obtain(config);\r\n RpcConfiguration.initializeInterfaces(instance);\r\n\r\n if (params.pendingRequestListener) {\r\n const listener = params.pendingRequestListener;\r\n\r\n RpcRequest.events.addListener((type, request) => {\r\n if (type === RpcRequestEvent.PendingUpdateReceived && request.protocol === instance.protocol) {\r\n listener(type, request);\r\n }\r\n });\r\n }\r\n\r\n return instance;\r\n }\r\n}\r\n"]}
@@ -1,34 +1,34 @@
1
- /** @packageDocumentation
2
- * @module RpcInterface
3
- */
4
- import { IModelRpcProps } from "../../IModel";
5
- import { RpcOperation } from "../core/RpcOperation";
6
- import { SerializedRpcOperation, SerializedRpcRequest } from "../core/RpcProtocol";
7
- import { RpcRequest } from "../core/RpcRequest";
8
- import { OpenAPIParameter } from "./OpenAPI";
9
- import { WebAppRpcProtocol } from "./WebAppRpcProtocol";
10
- import { SerializedRpcActivity } from "../core/RpcInvocation";
11
- /** An http protocol for Bentley cloud RPC interface deployments.
12
- * @internal
13
- */
14
- export declare abstract class BentleyCloudRpcProtocol extends WebAppRpcProtocol {
15
- checkToken: boolean;
16
- /** The name of various HTTP request headers based on client's request context */
17
- serializedClientRequestContextHeaderNames: SerializedRpcActivity;
18
- /** The name of the RPC protocol version header. */
19
- protocolVersionHeaderName: string;
20
- /** Returns the operation specified by an OpenAPI-compatible URI path. */
21
- getOperationFromPath(path: string): SerializedRpcOperation;
22
- /** Supplies the OpenAPI-compatible URI path for an RPC operation. */
23
- supplyPathForOperation(operation: RpcOperation, request: RpcRequest | undefined): string;
24
- /**
25
- * Inflates the IModelRpcProps from the URL path for each request on the backend.
26
- * @note This function updates the IModelRpcProps value supplied in the request body.
27
- */
28
- inflateToken(tokenFromBody: IModelRpcProps, request: SerializedRpcRequest): IModelRpcProps;
29
- /** Returns the OpenAPI-compatible URI path parameters for an RPC operation.
30
- * @internal
31
- */
32
- supplyPathParametersForOperation(_operation: RpcOperation): OpenAPIParameter[];
33
- }
1
+ /** @packageDocumentation
2
+ * @module RpcInterface
3
+ */
4
+ import { IModelRpcProps } from "../../IModel";
5
+ import { RpcOperation } from "../core/RpcOperation";
6
+ import { SerializedRpcOperation, SerializedRpcRequest } from "../core/RpcProtocol";
7
+ import { RpcRequest } from "../core/RpcRequest";
8
+ import { OpenAPIParameter } from "./OpenAPI";
9
+ import { WebAppRpcProtocol } from "./WebAppRpcProtocol";
10
+ import { SerializedRpcActivity } from "../core/RpcInvocation";
11
+ /** An http protocol for Bentley cloud RPC interface deployments.
12
+ * @internal
13
+ */
14
+ export declare abstract class BentleyCloudRpcProtocol extends WebAppRpcProtocol {
15
+ checkToken: boolean;
16
+ /** The name of various HTTP request headers based on client's request context */
17
+ serializedClientRequestContextHeaderNames: SerializedRpcActivity;
18
+ /** The name of the RPC protocol version header. */
19
+ protocolVersionHeaderName: string;
20
+ /** Returns the operation specified by an OpenAPI-compatible URI path. */
21
+ getOperationFromPath(path: string): SerializedRpcOperation;
22
+ /** Supplies the OpenAPI-compatible URI path for an RPC operation. */
23
+ supplyPathForOperation(operation: RpcOperation, request: RpcRequest | undefined): string;
24
+ /**
25
+ * Inflates the IModelRpcProps from the URL path for each request on the backend.
26
+ * @note This function updates the IModelRpcProps value supplied in the request body.
27
+ */
28
+ inflateToken(tokenFromBody: IModelRpcProps, request: SerializedRpcRequest): IModelRpcProps;
29
+ /** Returns the OpenAPI-compatible URI path parameters for an RPC operation.
30
+ * @internal
31
+ */
32
+ supplyPathParametersForOperation(_operation: RpcOperation): OpenAPIParameter[];
33
+ }
34
34
  //# sourceMappingURL=BentleyCloudRpcProtocol.d.ts.map
@@ -1,139 +1,139 @@
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 { BentleyStatus } from "@itwin/core-bentley";
9
- import { IModelError } from "../../IModelError";
10
- import { RpcConfiguration } from "../core/RpcConfiguration";
11
- import { RpcOperation } from "../core/RpcOperation";
12
- import { WebAppRpcProtocol } from "./WebAppRpcProtocol";
13
- var AppMode;
14
- (function (AppMode) {
15
- AppMode["MilestoneReview"] = "1";
16
- })(AppMode || (AppMode = {}));
17
- /** An http protocol for Bentley cloud RPC interface deployments.
18
- * @internal
19
- */
20
- export class BentleyCloudRpcProtocol extends WebAppRpcProtocol {
21
- constructor() {
22
- super(...arguments);
23
- this.checkToken = true;
24
- /** The name of various HTTP request headers based on client's request context */
25
- this.serializedClientRequestContextHeaderNames = {
26
- /** The name of the HTTP request id header. */
27
- id: "X-Correlation-Id",
28
- /** The name of the HTTP application id header. */
29
- applicationId: "X-Application-Id",
30
- /** The name of the HTTP application version header. */
31
- applicationVersion: "X-Application-Version",
32
- /** The name of the HTTP session id header. */
33
- sessionId: "X-Session-Id",
34
- /** The name of the HTTP authorization header. */
35
- authorization: "Authorization",
36
- };
37
- /** The name of the RPC protocol version header. */
38
- this.protocolVersionHeaderName = "X-Protocol-Version";
39
- }
40
- /** Returns the operation specified by an OpenAPI-compatible URI path. */
41
- getOperationFromPath(path) {
42
- const url = new URL(path, "https://localhost/");
43
- const components = url.pathname.split("/").filter((x) => x); // filter out empty segments
44
- const operationComponent = components.slice(-1)[0];
45
- const encodedRequest = url.searchParams.get("parameters") || "";
46
- // The encodedRequest should be base64 - fail now if any other characters detected.
47
- if (/[^A-z0-9=+\/]/.test(encodedRequest))
48
- throw new IModelError(BentleyStatus.ERROR, `Invalid request: Malformed URL parameters detected.`);
49
- const firstHyphen = operationComponent.indexOf("-");
50
- const lastHyphen = operationComponent.lastIndexOf("-");
51
- const interfaceDefinition = operationComponent.slice(0, firstHyphen);
52
- const interfaceVersion = operationComponent.slice(firstHyphen + 1, lastHyphen);
53
- const operationName = operationComponent.slice(lastHyphen + 1);
54
- return { interfaceDefinition, operationName, interfaceVersion, encodedRequest };
55
- }
56
- /** Supplies the OpenAPI-compatible URI path for an RPC operation. */
57
- supplyPathForOperation(operation, request) {
58
- var _a;
59
- const prefix = this.pathPrefix;
60
- const appTitle = this.info.title;
61
- const appVersion = this.info.version;
62
- const operationId = `${operation.interfaceDefinition.interfaceName}-${operation.interfaceVersion}-${operation.operationName}`;
63
- let appMode = "";
64
- let iTwinId = "";
65
- let iModelId = "";
66
- let routeChangesetId;
67
- /* Note: The changesetId field is omitted in the route in the case of ReadWrite connections since the connection is generally expected to be at the
68
- * latest version and not some specific changeset. Also, for the first version (before any changesets), the changesetId in the route is arbitrarily
69
- * set to "0" instead of an empty string, since the latter is more un-intuitive for a route. However, in all other use cases, including the changesetId
70
- * held by the IModelRpcProps itself, the changesetId of "" (i.e., empty string) signifies the first version - this is more intuitive and retains
71
- * compatibility with the majority of use cases. */
72
- if (request === undefined) {
73
- appMode = "{modeId}";
74
- iTwinId = "{iTwinId}";
75
- iModelId = "{iModelId}";
76
- routeChangesetId = "{changeSetId}";
77
- }
78
- else {
79
- let token = operation.policy.token(request) || RpcOperation.fallbackToken;
80
- if (!token || !token.iModelId) {
81
- if (RpcConfiguration.disableRoutingValidation) {
82
- token = { key: "" };
83
- }
84
- else {
85
- throw new IModelError(BentleyStatus.ERROR, "Invalid iModelToken for RPC operation request");
86
- }
87
- }
88
- iTwinId = encodeURIComponent(token.iTwinId || "");
89
- iModelId = encodeURIComponent(token.iModelId);
90
- routeChangesetId = ((_a = token.changeset) === null || _a === void 0 ? void 0 : _a.id) || "0";
91
- appMode = AppMode.MilestoneReview;
92
- }
93
- return `${prefix}/${appTitle}/${appVersion}/mode/${appMode}/context/${iTwinId}/imodel/${iModelId}${!!routeChangesetId ? `/changeset/${routeChangesetId}` : ""}/${operationId}`;
94
- }
95
- /**
96
- * Inflates the IModelRpcProps from the URL path for each request on the backend.
97
- * @note This function updates the IModelRpcProps value supplied in the request body.
98
- */
99
- inflateToken(tokenFromBody, request) {
100
- var _a, _b, _c;
101
- const urlPathComponents = request.path.split("/");
102
- const iModelKey = tokenFromBody.key;
103
- let iModelId = tokenFromBody.iModelId;
104
- let iTwinId = tokenFromBody.iTwinId;
105
- const changeset = { id: (_b = (_a = tokenFromBody.changeset) === null || _a === void 0 ? void 0 : _a.id) !== null && _b !== void 0 ? _b : "0", index: (_c = tokenFromBody.changeset) === null || _c === void 0 ? void 0 : _c.index };
106
- for (let i = 0; i <= urlPathComponents.length; ++i) {
107
- const key = urlPathComponents[i];
108
- const value = urlPathComponents[i + 1];
109
- if (key === "mode") {
110
- ++i;
111
- }
112
- else if (key === "context") {
113
- iTwinId = value;
114
- ++i;
115
- }
116
- else if (key === "imodel") {
117
- iModelId = value;
118
- ++i;
119
- }
120
- else if (key === "changeset") {
121
- changeset.id = (value === "0") ? "" : value;
122
- ++i;
123
- }
124
- }
125
- return { key: iModelKey, iTwinId, iModelId, changeset };
126
- }
127
- /** Returns the OpenAPI-compatible URI path parameters for an RPC operation.
128
- * @internal
129
- */
130
- supplyPathParametersForOperation(_operation) {
131
- return [
132
- { name: "modeId", in: "path", required: true, schema: { type: "string" } },
133
- { name: "iTwinId", in: "path", required: true, schema: { type: "string" } },
134
- { name: "iModelId", in: "path", required: true, schema: { type: "string" } },
135
- { name: "changeSetId", in: "path", required: false, schema: { type: "string" } },
136
- ];
137
- }
138
- }
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 { BentleyStatus } from "@itwin/core-bentley";
9
+ import { IModelError } from "../../IModelError";
10
+ import { RpcConfiguration } from "../core/RpcConfiguration";
11
+ import { RpcOperation } from "../core/RpcOperation";
12
+ import { WebAppRpcProtocol } from "./WebAppRpcProtocol";
13
+ var AppMode;
14
+ (function (AppMode) {
15
+ AppMode["MilestoneReview"] = "1";
16
+ })(AppMode || (AppMode = {}));
17
+ /** An http protocol for Bentley cloud RPC interface deployments.
18
+ * @internal
19
+ */
20
+ export class BentleyCloudRpcProtocol extends WebAppRpcProtocol {
21
+ constructor() {
22
+ super(...arguments);
23
+ this.checkToken = true;
24
+ /** The name of various HTTP request headers based on client's request context */
25
+ this.serializedClientRequestContextHeaderNames = {
26
+ /** The name of the HTTP request id header. */
27
+ id: "X-Correlation-Id",
28
+ /** The name of the HTTP application id header. */
29
+ applicationId: "X-Application-Id",
30
+ /** The name of the HTTP application version header. */
31
+ applicationVersion: "X-Application-Version",
32
+ /** The name of the HTTP session id header. */
33
+ sessionId: "X-Session-Id",
34
+ /** The name of the HTTP authorization header. */
35
+ authorization: "Authorization",
36
+ };
37
+ /** The name of the RPC protocol version header. */
38
+ this.protocolVersionHeaderName = "X-Protocol-Version";
39
+ }
40
+ /** Returns the operation specified by an OpenAPI-compatible URI path. */
41
+ getOperationFromPath(path) {
42
+ const url = new URL(path, "https://localhost/");
43
+ const components = url.pathname.split("/").filter((x) => x); // filter out empty segments
44
+ const operationComponent = components.slice(-1)[0];
45
+ const encodedRequest = url.searchParams.get("parameters") || "";
46
+ // The encodedRequest should be base64 - fail now if any other characters detected.
47
+ if (/[^A-z0-9=+\/]/.test(encodedRequest))
48
+ throw new IModelError(BentleyStatus.ERROR, `Invalid request: Malformed URL parameters detected.`);
49
+ const firstHyphen = operationComponent.indexOf("-");
50
+ const lastHyphen = operationComponent.lastIndexOf("-");
51
+ const interfaceDefinition = operationComponent.slice(0, firstHyphen);
52
+ const interfaceVersion = operationComponent.slice(firstHyphen + 1, lastHyphen);
53
+ const operationName = operationComponent.slice(lastHyphen + 1);
54
+ return { interfaceDefinition, operationName, interfaceVersion, encodedRequest };
55
+ }
56
+ /** Supplies the OpenAPI-compatible URI path for an RPC operation. */
57
+ supplyPathForOperation(operation, request) {
58
+ var _a;
59
+ const prefix = this.pathPrefix;
60
+ const appTitle = this.info.title;
61
+ const appVersion = this.info.version;
62
+ const operationId = `${operation.interfaceDefinition.interfaceName}-${operation.interfaceVersion}-${operation.operationName}`;
63
+ let appMode = "";
64
+ let iTwinId = "";
65
+ let iModelId = "";
66
+ let routeChangesetId;
67
+ /* Note: The changesetId field is omitted in the route in the case of ReadWrite connections since the connection is generally expected to be at the
68
+ * latest version and not some specific changeset. Also, for the first version (before any changesets), the changesetId in the route is arbitrarily
69
+ * set to "0" instead of an empty string, since the latter is more un-intuitive for a route. However, in all other use cases, including the changesetId
70
+ * held by the IModelRpcProps itself, the changesetId of "" (i.e., empty string) signifies the first version - this is more intuitive and retains
71
+ * compatibility with the majority of use cases. */
72
+ if (request === undefined) {
73
+ appMode = "{modeId}";
74
+ iTwinId = "{iTwinId}";
75
+ iModelId = "{iModelId}";
76
+ routeChangesetId = "{changeSetId}";
77
+ }
78
+ else {
79
+ let token = operation.policy.token(request) || RpcOperation.fallbackToken;
80
+ if (!token || !token.iModelId) {
81
+ if (RpcConfiguration.disableRoutingValidation) {
82
+ token = { key: "" };
83
+ }
84
+ else {
85
+ throw new IModelError(BentleyStatus.ERROR, "Invalid iModelToken for RPC operation request");
86
+ }
87
+ }
88
+ iTwinId = encodeURIComponent(token.iTwinId || "");
89
+ iModelId = encodeURIComponent(token.iModelId);
90
+ routeChangesetId = ((_a = token.changeset) === null || _a === void 0 ? void 0 : _a.id) || "0";
91
+ appMode = AppMode.MilestoneReview;
92
+ }
93
+ return `${prefix}/${appTitle}/${appVersion}/mode/${appMode}/context/${iTwinId}/imodel/${iModelId}${!!routeChangesetId ? `/changeset/${routeChangesetId}` : ""}/${operationId}`;
94
+ }
95
+ /**
96
+ * Inflates the IModelRpcProps from the URL path for each request on the backend.
97
+ * @note This function updates the IModelRpcProps value supplied in the request body.
98
+ */
99
+ inflateToken(tokenFromBody, request) {
100
+ var _a, _b, _c;
101
+ const urlPathComponents = request.path.split("/");
102
+ const iModelKey = tokenFromBody.key;
103
+ let iModelId = tokenFromBody.iModelId;
104
+ let iTwinId = tokenFromBody.iTwinId;
105
+ const changeset = { id: (_b = (_a = tokenFromBody.changeset) === null || _a === void 0 ? void 0 : _a.id) !== null && _b !== void 0 ? _b : "0", index: (_c = tokenFromBody.changeset) === null || _c === void 0 ? void 0 : _c.index };
106
+ for (let i = 0; i <= urlPathComponents.length; ++i) {
107
+ const key = urlPathComponents[i];
108
+ const value = urlPathComponents[i + 1];
109
+ if (key === "mode") {
110
+ ++i;
111
+ }
112
+ else if (key === "context") {
113
+ iTwinId = value;
114
+ ++i;
115
+ }
116
+ else if (key === "imodel") {
117
+ iModelId = value;
118
+ ++i;
119
+ }
120
+ else if (key === "changeset") {
121
+ changeset.id = (value === "0") ? "" : value;
122
+ ++i;
123
+ }
124
+ }
125
+ return { key: iModelKey, iTwinId, iModelId, changeset };
126
+ }
127
+ /** Returns the OpenAPI-compatible URI path parameters for an RPC operation.
128
+ * @internal
129
+ */
130
+ supplyPathParametersForOperation(_operation) {
131
+ return [
132
+ { name: "modeId", in: "path", required: true, schema: { type: "string" } },
133
+ { name: "iTwinId", in: "path", required: true, schema: { type: "string" } },
134
+ { name: "iModelId", in: "path", required: true, schema: { type: "string" } },
135
+ { name: "changeSetId", in: "path", required: false, schema: { type: "string" } },
136
+ ];
137
+ }
138
+ }
139
139
  //# sourceMappingURL=BentleyCloudRpcProtocol.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BentleyCloudRpcProtocol.js","sourceRoot":"","sources":["../../../../src/rpc/web/BentleyCloudRpcProtocol.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 { BentleyStatus } from \"@itwin/core-bentley\";\nimport { IModelRpcProps } from \"../../IModel\";\nimport { IModelError } from \"../../IModelError\";\nimport { RpcConfiguration } from \"../core/RpcConfiguration\";\nimport { RpcOperation } from \"../core/RpcOperation\";\nimport { SerializedRpcOperation, SerializedRpcRequest } from \"../core/RpcProtocol\";\nimport { RpcRequest } from \"../core/RpcRequest\";\nimport { OpenAPIParameter } from \"./OpenAPI\";\nimport { WebAppRpcProtocol } from \"./WebAppRpcProtocol\";\nimport { SerializedRpcActivity } from \"../core/RpcInvocation\";\n\nenum AppMode {\n MilestoneReview = \"1\",\n}\n\n/** An http protocol for Bentley cloud RPC interface deployments.\n * @internal\n */\nexport abstract class BentleyCloudRpcProtocol extends WebAppRpcProtocol {\n public override checkToken = true;\n\n /** The name of various HTTP request headers based on client's request context */\n public override serializedClientRequestContextHeaderNames: SerializedRpcActivity = {\n /** The name of the HTTP request id header. */\n id: \"X-Correlation-Id\",\n\n /** The name of the HTTP application id header. */\n applicationId: \"X-Application-Id\",\n\n /** The name of the HTTP application version header. */\n applicationVersion: \"X-Application-Version\",\n\n /** The name of the HTTP session id header. */\n sessionId: \"X-Session-Id\",\n\n /** The name of the HTTP authorization header. */\n authorization: \"Authorization\",\n };\n\n /** The name of the RPC protocol version header. */\n public override protocolVersionHeaderName = \"X-Protocol-Version\";\n\n /** Returns the operation specified by an OpenAPI-compatible URI path. */\n public override getOperationFromPath(path: string): SerializedRpcOperation {\n const url = new URL(path, \"https://localhost/\");\n const components = url.pathname.split(\"/\").filter((x) => x); // filter out empty segments\n\n const operationComponent = components.slice(-1)[0];\n const encodedRequest = url.searchParams.get(\"parameters\") || \"\";\n\n // The encodedRequest should be base64 - fail now if any other characters detected.\n if (/[^A-z0-9=+\\/]/.test(encodedRequest))\n throw new IModelError(BentleyStatus.ERROR, `Invalid request: Malformed URL parameters detected.`);\n\n const firstHyphen = operationComponent.indexOf(\"-\");\n const lastHyphen = operationComponent.lastIndexOf(\"-\");\n const interfaceDefinition = operationComponent.slice(0, firstHyphen);\n const interfaceVersion = operationComponent.slice(firstHyphen + 1, lastHyphen);\n const operationName = operationComponent.slice(lastHyphen + 1);\n\n return { interfaceDefinition, operationName, interfaceVersion, encodedRequest };\n }\n\n /** Supplies the OpenAPI-compatible URI path for an RPC operation. */\n public override supplyPathForOperation(operation: RpcOperation, request: RpcRequest | undefined) {\n const prefix = this.pathPrefix;\n const appTitle = this.info.title;\n const appVersion = this.info.version;\n const operationId = `${operation.interfaceDefinition.interfaceName}-${operation.interfaceVersion}-${operation.operationName}`;\n\n let appMode: string = \"\";\n let iTwinId: string = \"\";\n let iModelId: string = \"\";\n let routeChangesetId: string | undefined;\n /* Note: The changesetId field is omitted in the route in the case of ReadWrite connections since the connection is generally expected to be at the\n * latest version and not some specific changeset. Also, for the first version (before any changesets), the changesetId in the route is arbitrarily\n * set to \"0\" instead of an empty string, since the latter is more un-intuitive for a route. However, in all other use cases, including the changesetId\n * held by the IModelRpcProps itself, the changesetId of \"\" (i.e., empty string) signifies the first version - this is more intuitive and retains\n * compatibility with the majority of use cases. */\n\n if (request === undefined) {\n appMode = \"{modeId}\";\n iTwinId = \"{iTwinId}\";\n iModelId = \"{iModelId}\";\n routeChangesetId = \"{changeSetId}\";\n } else {\n let token = operation.policy.token(request) || RpcOperation.fallbackToken;\n\n if (!token || !token.iModelId) {\n if (RpcConfiguration.disableRoutingValidation) {\n token = { key: \"\" };\n } else {\n throw new IModelError(BentleyStatus.ERROR, \"Invalid iModelToken for RPC operation request\");\n }\n }\n\n iTwinId = encodeURIComponent(token.iTwinId || \"\");\n iModelId = encodeURIComponent(token.iModelId!);\n\n routeChangesetId = token.changeset?.id || \"0\";\n appMode = AppMode.MilestoneReview;\n }\n\n return `${prefix}/${appTitle}/${appVersion}/mode/${appMode}/context/${iTwinId}/imodel/${iModelId}${!!routeChangesetId ? `/changeset/${routeChangesetId}` : \"\"}/${operationId}`;\n }\n\n /**\n * Inflates the IModelRpcProps from the URL path for each request on the backend.\n * @note This function updates the IModelRpcProps value supplied in the request body.\n */\n public override inflateToken(tokenFromBody: IModelRpcProps, request: SerializedRpcRequest): IModelRpcProps {\n const urlPathComponents = request.path.split(\"/\");\n\n const iModelKey = tokenFromBody.key;\n let iModelId = tokenFromBody.iModelId;\n let iTwinId = tokenFromBody.iTwinId;\n const changeset = { id: tokenFromBody.changeset?.id ?? \"0\", index: tokenFromBody.changeset?.index };\n\n for (let i = 0; i <= urlPathComponents.length; ++i) {\n const key = urlPathComponents[i];\n const value = urlPathComponents[i + 1];\n if (key === \"mode\") {\n ++i;\n } else if (key === \"context\") {\n iTwinId = value;\n ++i;\n } else if (key === \"imodel\") {\n iModelId = value;\n ++i;\n } else if (key === \"changeset\") {\n changeset.id = (value === \"0\") ? \"\" : value;\n ++i;\n }\n }\n\n return { key: iModelKey, iTwinId, iModelId, changeset };\n }\n\n /** Returns the OpenAPI-compatible URI path parameters for an RPC operation.\n * @internal\n */\n public supplyPathParametersForOperation(_operation: RpcOperation): OpenAPIParameter[] {\n return [\n { name: \"modeId\", in: \"path\", required: true, schema: { type: \"string\" } },\n { name: \"iTwinId\", in: \"path\", required: true, schema: { type: \"string\" } },\n { name: \"iModelId\", in: \"path\", required: true, schema: { type: \"string\" } },\n { name: \"changeSetId\", in: \"path\", required: false, schema: { type: \"string\" } },\n ];\n }\n}\n"]}
1
+ {"version":3,"file":"BentleyCloudRpcProtocol.js","sourceRoot":"","sources":["../../../../src/rpc/web/BentleyCloudRpcProtocol.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 { BentleyStatus } from \"@itwin/core-bentley\";\r\nimport { IModelRpcProps } from \"../../IModel\";\r\nimport { IModelError } from \"../../IModelError\";\r\nimport { RpcConfiguration } from \"../core/RpcConfiguration\";\r\nimport { RpcOperation } from \"../core/RpcOperation\";\r\nimport { SerializedRpcOperation, SerializedRpcRequest } from \"../core/RpcProtocol\";\r\nimport { RpcRequest } from \"../core/RpcRequest\";\r\nimport { OpenAPIParameter } from \"./OpenAPI\";\r\nimport { WebAppRpcProtocol } from \"./WebAppRpcProtocol\";\r\nimport { SerializedRpcActivity } from \"../core/RpcInvocation\";\r\n\r\nenum AppMode {\r\n MilestoneReview = \"1\",\r\n}\r\n\r\n/** An http protocol for Bentley cloud RPC interface deployments.\r\n * @internal\r\n */\r\nexport abstract class BentleyCloudRpcProtocol extends WebAppRpcProtocol {\r\n public override checkToken = true;\r\n\r\n /** The name of various HTTP request headers based on client's request context */\r\n public override serializedClientRequestContextHeaderNames: SerializedRpcActivity = {\r\n /** The name of the HTTP request id header. */\r\n id: \"X-Correlation-Id\",\r\n\r\n /** The name of the HTTP application id header. */\r\n applicationId: \"X-Application-Id\",\r\n\r\n /** The name of the HTTP application version header. */\r\n applicationVersion: \"X-Application-Version\",\r\n\r\n /** The name of the HTTP session id header. */\r\n sessionId: \"X-Session-Id\",\r\n\r\n /** The name of the HTTP authorization header. */\r\n authorization: \"Authorization\",\r\n };\r\n\r\n /** The name of the RPC protocol version header. */\r\n public override protocolVersionHeaderName = \"X-Protocol-Version\";\r\n\r\n /** Returns the operation specified by an OpenAPI-compatible URI path. */\r\n public override getOperationFromPath(path: string): SerializedRpcOperation {\r\n const url = new URL(path, \"https://localhost/\");\r\n const components = url.pathname.split(\"/\").filter((x) => x); // filter out empty segments\r\n\r\n const operationComponent = components.slice(-1)[0];\r\n const encodedRequest = url.searchParams.get(\"parameters\") || \"\";\r\n\r\n // The encodedRequest should be base64 - fail now if any other characters detected.\r\n if (/[^A-z0-9=+\\/]/.test(encodedRequest))\r\n throw new IModelError(BentleyStatus.ERROR, `Invalid request: Malformed URL parameters detected.`);\r\n\r\n const firstHyphen = operationComponent.indexOf(\"-\");\r\n const lastHyphen = operationComponent.lastIndexOf(\"-\");\r\n const interfaceDefinition = operationComponent.slice(0, firstHyphen);\r\n const interfaceVersion = operationComponent.slice(firstHyphen + 1, lastHyphen);\r\n const operationName = operationComponent.slice(lastHyphen + 1);\r\n\r\n return { interfaceDefinition, operationName, interfaceVersion, encodedRequest };\r\n }\r\n\r\n /** Supplies the OpenAPI-compatible URI path for an RPC operation. */\r\n public override supplyPathForOperation(operation: RpcOperation, request: RpcRequest | undefined) {\r\n const prefix = this.pathPrefix;\r\n const appTitle = this.info.title;\r\n const appVersion = this.info.version;\r\n const operationId = `${operation.interfaceDefinition.interfaceName}-${operation.interfaceVersion}-${operation.operationName}`;\r\n\r\n let appMode: string = \"\";\r\n let iTwinId: string = \"\";\r\n let iModelId: string = \"\";\r\n let routeChangesetId: string | undefined;\r\n /* Note: The changesetId field is omitted in the route in the case of ReadWrite connections since the connection is generally expected to be at the\r\n * latest version and not some specific changeset. Also, for the first version (before any changesets), the changesetId in the route is arbitrarily\r\n * set to \"0\" instead of an empty string, since the latter is more un-intuitive for a route. However, in all other use cases, including the changesetId\r\n * held by the IModelRpcProps itself, the changesetId of \"\" (i.e., empty string) signifies the first version - this is more intuitive and retains\r\n * compatibility with the majority of use cases. */\r\n\r\n if (request === undefined) {\r\n appMode = \"{modeId}\";\r\n iTwinId = \"{iTwinId}\";\r\n iModelId = \"{iModelId}\";\r\n routeChangesetId = \"{changeSetId}\";\r\n } else {\r\n let token = operation.policy.token(request) || RpcOperation.fallbackToken;\r\n\r\n if (!token || !token.iModelId) {\r\n if (RpcConfiguration.disableRoutingValidation) {\r\n token = { key: \"\" };\r\n } else {\r\n throw new IModelError(BentleyStatus.ERROR, \"Invalid iModelToken for RPC operation request\");\r\n }\r\n }\r\n\r\n iTwinId = encodeURIComponent(token.iTwinId || \"\");\r\n iModelId = encodeURIComponent(token.iModelId!);\r\n\r\n routeChangesetId = token.changeset?.id || \"0\";\r\n appMode = AppMode.MilestoneReview;\r\n }\r\n\r\n return `${prefix}/${appTitle}/${appVersion}/mode/${appMode}/context/${iTwinId}/imodel/${iModelId}${!!routeChangesetId ? `/changeset/${routeChangesetId}` : \"\"}/${operationId}`;\r\n }\r\n\r\n /**\r\n * Inflates the IModelRpcProps from the URL path for each request on the backend.\r\n * @note This function updates the IModelRpcProps value supplied in the request body.\r\n */\r\n public override inflateToken(tokenFromBody: IModelRpcProps, request: SerializedRpcRequest): IModelRpcProps {\r\n const urlPathComponents = request.path.split(\"/\");\r\n\r\n const iModelKey = tokenFromBody.key;\r\n let iModelId = tokenFromBody.iModelId;\r\n let iTwinId = tokenFromBody.iTwinId;\r\n const changeset = { id: tokenFromBody.changeset?.id ?? \"0\", index: tokenFromBody.changeset?.index };\r\n\r\n for (let i = 0; i <= urlPathComponents.length; ++i) {\r\n const key = urlPathComponents[i];\r\n const value = urlPathComponents[i + 1];\r\n if (key === \"mode\") {\r\n ++i;\r\n } else if (key === \"context\") {\r\n iTwinId = value;\r\n ++i;\r\n } else if (key === \"imodel\") {\r\n iModelId = value;\r\n ++i;\r\n } else if (key === \"changeset\") {\r\n changeset.id = (value === \"0\") ? \"\" : value;\r\n ++i;\r\n }\r\n }\r\n\r\n return { key: iModelKey, iTwinId, iModelId, changeset };\r\n }\r\n\r\n /** Returns the OpenAPI-compatible URI path parameters for an RPC operation.\r\n * @internal\r\n */\r\n public supplyPathParametersForOperation(_operation: RpcOperation): OpenAPIParameter[] {\r\n return [\r\n { name: \"modeId\", in: \"path\", required: true, schema: { type: \"string\" } },\r\n { name: \"iTwinId\", in: \"path\", required: true, schema: { type: \"string\" } },\r\n { name: \"iModelId\", in: \"path\", required: true, schema: { type: \"string\" } },\r\n { name: \"changeSetId\", in: \"path\", required: false, schema: { type: \"string\" } },\r\n ];\r\n }\r\n}\r\n"]}