@itwin/core-common 3.7.0-dev.6 → 3.7.0-dev.8

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