@itwin/core-common 3.4.0-dev.50 → 3.4.0-dev.56

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 (971) hide show
  1. package/lib/cjs/AmbientOcclusion.d.ts +49 -49
  2. package/lib/cjs/AmbientOcclusion.js +55 -55
  3. package/lib/cjs/AmbientOcclusion.js.map +1 -1
  4. package/lib/cjs/AnalysisStyle.d.ts +134 -134
  5. package/lib/cjs/AnalysisStyle.js +165 -165
  6. package/lib/cjs/AnalysisStyle.js.map +1 -1
  7. package/lib/cjs/AuthorizationClient.d.ts +11 -11
  8. package/lib/cjs/AuthorizationClient.js +9 -9
  9. package/lib/cjs/AuthorizationClient.js.map +1 -1
  10. package/lib/cjs/BackgroundMapProvider.d.ts +51 -51
  11. package/lib/cjs/BackgroundMapProvider.js +68 -68
  12. package/lib/cjs/BackgroundMapProvider.js.map +1 -1
  13. package/lib/cjs/BackgroundMapSettings.d.ts +136 -136
  14. package/lib/cjs/BackgroundMapSettings.js +156 -156
  15. package/lib/cjs/BackgroundMapSettings.js.map +1 -1
  16. package/lib/cjs/Base64EncodedString.d.ts +30 -30
  17. package/lib/cjs/Base64EncodedString.js +56 -56
  18. package/lib/cjs/Base64EncodedString.js.map +1 -1
  19. package/lib/cjs/BlobReader.d.ts +31 -31
  20. package/lib/cjs/BlobReader.js +84 -84
  21. package/lib/cjs/BlobReader.js.map +1 -1
  22. package/lib/cjs/BriefcaseTypes.d.ts +189 -189
  23. package/lib/cjs/BriefcaseTypes.js +95 -95
  24. package/lib/cjs/BriefcaseTypes.js.map +1 -1
  25. package/lib/cjs/Camera.d.ts +42 -42
  26. package/lib/cjs/Camera.d.ts.map +1 -1
  27. package/lib/cjs/Camera.js +62 -58
  28. package/lib/cjs/Camera.js.map +1 -1
  29. package/lib/cjs/ChangedElements.d.ts +83 -83
  30. package/lib/cjs/ChangedElements.js +21 -21
  31. package/lib/cjs/ChangedElements.js.map +1 -1
  32. package/lib/cjs/ChangedEntities.d.ts +45 -45
  33. package/lib/cjs/ChangedEntities.js +9 -9
  34. package/lib/cjs/ChangedEntities.js.map +1 -1
  35. package/lib/cjs/ChangesetProps.d.ts +98 -98
  36. package/lib/cjs/ChangesetProps.js +22 -22
  37. package/lib/cjs/ChangesetProps.js.map +1 -1
  38. package/lib/cjs/ClipStyle.d.ts +89 -89
  39. package/lib/cjs/ClipStyle.js +123 -123
  40. package/lib/cjs/ClipStyle.js.map +1 -1
  41. package/lib/cjs/CloudStorage.d.ts +62 -47
  42. package/lib/cjs/CloudStorage.d.ts.map +1 -1
  43. package/lib/cjs/CloudStorage.js +113 -103
  44. package/lib/cjs/CloudStorage.js.map +1 -1
  45. package/lib/cjs/CloudStorageTileCache.d.ts +27 -24
  46. package/lib/cjs/CloudStorageTileCache.d.ts.map +1 -1
  47. package/lib/cjs/CloudStorageTileCache.js +66 -62
  48. package/lib/cjs/CloudStorageTileCache.js.map +1 -1
  49. package/lib/cjs/Code.d.ts +256 -256
  50. package/lib/cjs/Code.d.ts.map +1 -1
  51. package/lib/cjs/Code.js +281 -278
  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.d.ts.map +1 -1
  58. package/lib/cjs/ColorDef.js +571 -569
  59. package/lib/cjs/ColorDef.js.map +1 -1
  60. package/lib/cjs/CommonLoggerCategory.d.ts +18 -18
  61. package/lib/cjs/CommonLoggerCategory.js +26 -26
  62. package/lib/cjs/CommonLoggerCategory.js.map +1 -1
  63. package/lib/cjs/ConcurrentQuery.d.ts +241 -241
  64. package/lib/cjs/ConcurrentQuery.d.ts.map +1 -1
  65. package/lib/cjs/ConcurrentQuery.js +380 -338
  66. package/lib/cjs/ConcurrentQuery.js.map +1 -1
  67. package/lib/cjs/ContextRealityModel.d.ts +255 -255
  68. package/lib/cjs/ContextRealityModel.js +325 -325
  69. package/lib/cjs/ContextRealityModel.js.map +1 -1
  70. package/lib/cjs/DisplayStyleSettings.d.ts +552 -552
  71. package/lib/cjs/DisplayStyleSettings.js +951 -951
  72. package/lib/cjs/DisplayStyleSettings.js.map +1 -1
  73. package/lib/cjs/ECSchemaProps.d.ts +39 -39
  74. package/lib/cjs/ECSchemaProps.js +9 -9
  75. package/lib/cjs/ECSchemaProps.js.map +1 -1
  76. package/lib/cjs/ECSqlReader.d.ts +70 -70
  77. package/lib/cjs/ECSqlReader.js +280 -280
  78. package/lib/cjs/ECSqlReader.js.map +1 -1
  79. package/lib/cjs/ECSqlTypes.d.ts +128 -128
  80. package/lib/cjs/ECSqlTypes.js +189 -189
  81. package/lib/cjs/ECSqlTypes.js.map +1 -1
  82. package/lib/cjs/ElementProps.d.ts +476 -476
  83. package/lib/cjs/ElementProps.js +99 -99
  84. package/lib/cjs/ElementProps.js.map +1 -1
  85. package/lib/cjs/EmphasizeElementsProps.d.ts +55 -55
  86. package/lib/cjs/EmphasizeElementsProps.js +25 -25
  87. package/lib/cjs/EmphasizeElementsProps.js.map +1 -1
  88. package/lib/cjs/EntityProps.d.ts +176 -176
  89. package/lib/cjs/EntityProps.js +112 -112
  90. package/lib/cjs/EntityProps.js.map +1 -1
  91. package/lib/cjs/Environment.d.ts +61 -61
  92. package/lib/cjs/Environment.js +73 -73
  93. package/lib/cjs/Environment.js.map +1 -1
  94. package/lib/cjs/FeatureGates.d.ts +31 -31
  95. package/lib/cjs/FeatureGates.d.ts.map +1 -1
  96. package/lib/cjs/FeatureGates.js +55 -51
  97. package/lib/cjs/FeatureGates.js.map +1 -1
  98. package/lib/cjs/FeatureIndex.d.ts +39 -39
  99. package/lib/cjs/FeatureIndex.d.ts.map +1 -1
  100. package/lib/cjs/FeatureIndex.js +63 -59
  101. package/lib/cjs/FeatureIndex.js.map +1 -1
  102. package/lib/cjs/FeatureSymbology.d.ts +444 -444
  103. package/lib/cjs/FeatureSymbology.d.ts.map +1 -1
  104. package/lib/cjs/FeatureSymbology.js +614 -614
  105. package/lib/cjs/FeatureSymbology.js.map +1 -1
  106. package/lib/cjs/FeatureTable.d.ts +141 -141
  107. package/lib/cjs/FeatureTable.js +278 -278
  108. package/lib/cjs/FeatureTable.js.map +1 -1
  109. package/lib/cjs/Fonts.d.ts +51 -51
  110. package/lib/cjs/Fonts.d.ts.map +1 -1
  111. package/lib/cjs/Fonts.js +53 -53
  112. package/lib/cjs/Fonts.js.map +1 -1
  113. package/lib/cjs/Frustum.d.ts +114 -114
  114. package/lib/cjs/Frustum.d.ts.map +1 -1
  115. package/lib/cjs/Frustum.js +292 -258
  116. package/lib/cjs/Frustum.js.map +1 -1
  117. package/lib/cjs/GeoCoordinateServices.d.ts +119 -119
  118. package/lib/cjs/GeoCoordinateServices.js +80 -80
  119. package/lib/cjs/GeoCoordinateServices.js.map +1 -1
  120. package/lib/cjs/GeometryContainment.d.ts +28 -28
  121. package/lib/cjs/GeometryContainment.js +9 -9
  122. package/lib/cjs/GeometryContainment.js.map +1 -1
  123. package/lib/cjs/GeometryParams.d.ts +130 -130
  124. package/lib/cjs/GeometryParams.js +174 -174
  125. package/lib/cjs/GeometryParams.js.map +1 -1
  126. package/lib/cjs/GeometrySummary.d.ts +45 -45
  127. package/lib/cjs/GeometrySummary.js +23 -23
  128. package/lib/cjs/GeometrySummary.js.map +1 -1
  129. package/lib/cjs/Gradient.d.ts +139 -139
  130. package/lib/cjs/Gradient.js +455 -455
  131. package/lib/cjs/Gradient.js.map +1 -1
  132. package/lib/cjs/GraphicParams.d.ts +58 -58
  133. package/lib/cjs/GraphicParams.js +85 -85
  134. package/lib/cjs/GraphicParams.js.map +1 -1
  135. package/lib/cjs/GroundPlane.d.ts +52 -52
  136. package/lib/cjs/GroundPlane.js +64 -64
  137. package/lib/cjs/GroundPlane.js.map +1 -1
  138. package/lib/cjs/HSLColor.d.ts +20 -20
  139. package/lib/cjs/HSLColor.js +32 -32
  140. package/lib/cjs/HSLColor.js.map +1 -1
  141. package/lib/cjs/HSVColor.d.ts +30 -30
  142. package/lib/cjs/HSVColor.js +59 -59
  143. package/lib/cjs/HSVColor.js.map +1 -1
  144. package/lib/cjs/HiddenLine.d.ts +97 -97
  145. package/lib/cjs/HiddenLine.js +162 -162
  146. package/lib/cjs/HiddenLine.js.map +1 -1
  147. package/lib/cjs/Hilite.d.ts +50 -50
  148. package/lib/cjs/Hilite.js +64 -64
  149. package/lib/cjs/Hilite.js.map +1 -1
  150. package/lib/cjs/IModel.d.ts +355 -355
  151. package/lib/cjs/IModel.js +340 -340
  152. package/lib/cjs/IModel.js.map +1 -1
  153. package/lib/cjs/IModelError.d.ts +36 -36
  154. package/lib/cjs/IModelError.js +72 -72
  155. package/lib/cjs/IModelError.js.map +1 -1
  156. package/lib/cjs/IModelVersion.d.ts +68 -68
  157. package/lib/cjs/IModelVersion.js +79 -79
  158. package/lib/cjs/IModelVersion.js.map +1 -1
  159. package/lib/cjs/Image.d.ts +86 -86
  160. package/lib/cjs/Image.d.ts.map +1 -1
  161. package/lib/cjs/Image.js +128 -126
  162. package/lib/cjs/Image.js.map +1 -1
  163. package/lib/cjs/IpcAppProps.d.ts +124 -124
  164. package/lib/cjs/IpcAppProps.js +18 -18
  165. package/lib/cjs/IpcAppProps.js.map +1 -1
  166. package/lib/cjs/LightSettings.d.ts +224 -224
  167. package/lib/cjs/LightSettings.js +309 -309
  168. package/lib/cjs/LightSettings.js.map +1 -1
  169. package/lib/cjs/LinePixels.d.ts +34 -34
  170. package/lib/cjs/LinePixels.js +42 -42
  171. package/lib/cjs/LinePixels.js.map +1 -1
  172. package/lib/cjs/Localization.d.ts +111 -111
  173. package/lib/cjs/Localization.js +26 -26
  174. package/lib/cjs/Localization.js.map +1 -1
  175. package/lib/cjs/MapImagerySettings.d.ts +62 -62
  176. package/lib/cjs/MapImagerySettings.js +80 -80
  177. package/lib/cjs/MapImagerySettings.js.map +1 -1
  178. package/lib/cjs/MapLayerSettings.d.ts +272 -272
  179. package/lib/cjs/MapLayerSettings.js +411 -411
  180. package/lib/cjs/MapLayerSettings.js.map +1 -1
  181. package/lib/cjs/MassProperties.d.ts +64 -64
  182. package/lib/cjs/MassProperties.js +23 -23
  183. package/lib/cjs/MassProperties.js.map +1 -1
  184. package/lib/cjs/MaterialProps.d.ts +118 -118
  185. package/lib/cjs/MaterialProps.js +23 -23
  186. package/lib/cjs/MaterialProps.js.map +1 -1
  187. package/lib/cjs/ModelClipGroup.d.ts +67 -67
  188. package/lib/cjs/ModelClipGroup.js +98 -98
  189. package/lib/cjs/ModelClipGroup.js.map +1 -1
  190. package/lib/cjs/ModelGeometryChanges.d.ts +107 -107
  191. package/lib/cjs/ModelGeometryChanges.js +83 -83
  192. package/lib/cjs/ModelGeometryChanges.js.map +1 -1
  193. package/lib/cjs/ModelProps.d.ts +66 -66
  194. package/lib/cjs/ModelProps.js +9 -9
  195. package/lib/cjs/ModelProps.js.map +1 -1
  196. package/lib/cjs/NativeAppProps.d.ts +122 -122
  197. package/lib/cjs/NativeAppProps.js +30 -30
  198. package/lib/cjs/NativeAppProps.js.map +1 -1
  199. package/lib/cjs/OctEncodedNormal.d.ts +33 -33
  200. package/lib/cjs/OctEncodedNormal.js +98 -98
  201. package/lib/cjs/OctEncodedNormal.js.map +1 -1
  202. package/lib/cjs/PlanProjectionSettings.d.ts +47 -47
  203. package/lib/cjs/PlanProjectionSettings.js +63 -63
  204. package/lib/cjs/PlanProjectionSettings.js.map +1 -1
  205. package/lib/cjs/PlanarClipMask.d.ts +177 -177
  206. package/lib/cjs/PlanarClipMask.js +136 -136
  207. package/lib/cjs/PlanarClipMask.js.map +1 -1
  208. package/lib/cjs/QPoint.d.ts +479 -299
  209. package/lib/cjs/QPoint.d.ts.map +1 -1
  210. package/lib/cjs/QPoint.js +826 -626
  211. package/lib/cjs/QPoint.js.map +1 -1
  212. package/lib/cjs/RealityDataAccessProps.d.ts +41 -41
  213. package/lib/cjs/RealityDataAccessProps.js +19 -19
  214. package/lib/cjs/RealityDataAccessProps.js.map +1 -1
  215. package/lib/cjs/Render.d.ts +89 -89
  216. package/lib/cjs/Render.d.ts.map +1 -1
  217. package/lib/cjs/Render.js +177 -169
  218. package/lib/cjs/Render.js.map +1 -1
  219. package/lib/cjs/RenderMaterial.d.ts +58 -58
  220. package/lib/cjs/RenderMaterial.js +76 -76
  221. package/lib/cjs/RenderMaterial.js.map +1 -1
  222. package/lib/cjs/RenderSchedule.d.ts +540 -540
  223. package/lib/cjs/RenderSchedule.js +1000 -1000
  224. package/lib/cjs/RenderTexture.d.ts +70 -70
  225. package/lib/cjs/RenderTexture.js +59 -59
  226. package/lib/cjs/RenderTexture.js.map +1 -1
  227. package/lib/cjs/RgbColor.d.ts +39 -39
  228. package/lib/cjs/RgbColor.js +67 -67
  229. package/lib/cjs/RgbColor.js.map +1 -1
  230. package/lib/cjs/RpcInterface.d.ts +33 -33
  231. package/lib/cjs/RpcInterface.js +137 -137
  232. package/lib/cjs/RpcInterface.js.map +1 -1
  233. package/lib/cjs/RpcManager.d.ts +40 -40
  234. package/lib/cjs/RpcManager.js +55 -55
  235. package/lib/cjs/RpcManager.js.map +1 -1
  236. package/lib/cjs/SessionProps.d.ts +16 -16
  237. package/lib/cjs/SessionProps.js +9 -9
  238. package/lib/cjs/SessionProps.js.map +1 -1
  239. package/lib/cjs/SkyBox.d.ts +215 -215
  240. package/lib/cjs/SkyBox.js +210 -210
  241. package/lib/cjs/SkyBox.js.map +1 -1
  242. package/lib/cjs/Snapping.d.ts +49 -49
  243. package/lib/cjs/Snapping.js +9 -9
  244. package/lib/cjs/Snapping.js.map +1 -1
  245. package/lib/cjs/SolarCalculate.d.ts +27 -27
  246. package/lib/cjs/SolarCalculate.js +211 -211
  247. package/lib/cjs/SolarCalculate.js.map +1 -1
  248. package/lib/cjs/SolarShadows.d.ts +35 -35
  249. package/lib/cjs/SolarShadows.js +62 -62
  250. package/lib/cjs/SolarShadows.js.map +1 -1
  251. package/lib/cjs/SpatialClassification.d.ts +208 -208
  252. package/lib/cjs/SpatialClassification.js +340 -340
  253. package/lib/cjs/SpatialClassification.js.map +1 -1
  254. package/lib/cjs/SubCategoryAppearance.d.ts +91 -91
  255. package/lib/cjs/SubCategoryAppearance.js +96 -96
  256. package/lib/cjs/SubCategoryAppearance.js.map +1 -1
  257. package/lib/cjs/SubCategoryOverride.d.ts +46 -46
  258. package/lib/cjs/SubCategoryOverride.d.ts.map +1 -1
  259. package/lib/cjs/SubCategoryOverride.js +104 -104
  260. package/lib/cjs/SubCategoryOverride.js.map +1 -1
  261. package/lib/cjs/TerrainSettings.d.ts +82 -77
  262. package/lib/cjs/TerrainSettings.d.ts.map +1 -1
  263. package/lib/cjs/TerrainSettings.js +102 -101
  264. package/lib/cjs/TerrainSettings.js.map +1 -1
  265. package/lib/cjs/TextureMapping.d.ts +101 -101
  266. package/lib/cjs/TextureMapping.js +174 -174
  267. package/lib/cjs/TextureMapping.js.map +1 -1
  268. package/lib/cjs/TextureProps.d.ts +65 -65
  269. package/lib/cjs/TextureProps.js +28 -28
  270. package/lib/cjs/TextureProps.js.map +1 -1
  271. package/lib/cjs/ThematicDisplay.d.ts +230 -230
  272. package/lib/cjs/ThematicDisplay.js +344 -344
  273. package/lib/cjs/ThematicDisplay.js.map +1 -1
  274. package/lib/cjs/Thumbnail.d.ts +26 -26
  275. package/lib/cjs/Thumbnail.js +9 -9
  276. package/lib/cjs/Thumbnail.js.map +1 -1
  277. package/lib/cjs/TileProps.d.ts +82 -77
  278. package/lib/cjs/TileProps.d.ts.map +1 -1
  279. package/lib/cjs/TileProps.js +29 -18
  280. package/lib/cjs/TileProps.js.map +1 -1
  281. package/lib/cjs/Tween.d.ts +191 -191
  282. package/lib/cjs/Tween.js +570 -570
  283. package/lib/cjs/Tween.js.map +1 -1
  284. package/lib/cjs/TxnAction.d.ts +21 -21
  285. package/lib/cjs/TxnAction.js +29 -29
  286. package/lib/cjs/TxnAction.js.map +1 -1
  287. package/lib/cjs/ViewDetails.d.ts +125 -125
  288. package/lib/cjs/ViewDetails.js +158 -158
  289. package/lib/cjs/ViewDetails.js.map +1 -1
  290. package/lib/cjs/ViewFlags.d.ts +291 -291
  291. package/lib/cjs/ViewFlags.d.ts.map +1 -1
  292. package/lib/cjs/ViewFlags.js +368 -368
  293. package/lib/cjs/ViewFlags.js.map +1 -1
  294. package/lib/cjs/ViewProps.d.ts +205 -205
  295. package/lib/cjs/ViewProps.js +9 -9
  296. package/lib/cjs/ViewProps.js.map +1 -1
  297. package/lib/cjs/WhiteOnWhiteReversalSettings.d.ts +36 -36
  298. package/lib/cjs/WhiteOnWhiteReversalSettings.js +37 -37
  299. package/lib/cjs/WhiteOnWhiteReversalSettings.js.map +1 -1
  300. package/lib/cjs/core-common.d.ts +240 -240
  301. package/lib/cjs/core-common.js +256 -256
  302. package/lib/cjs/core-common.js.map +1 -1
  303. package/lib/cjs/domains/FunctionalElementProps.d.ts +11 -11
  304. package/lib/cjs/domains/FunctionalElementProps.js +9 -9
  305. package/lib/cjs/domains/FunctionalElementProps.js.map +1 -1
  306. package/lib/cjs/domains/GenericElementProps.d.ts +18 -18
  307. package/lib/cjs/domains/GenericElementProps.js +9 -9
  308. package/lib/cjs/domains/GenericElementProps.js.map +1 -1
  309. package/lib/cjs/geometry/AdditionalTransform.d.ts +84 -84
  310. package/lib/cjs/geometry/AdditionalTransform.js +85 -85
  311. package/lib/cjs/geometry/AdditionalTransform.js.map +1 -1
  312. package/lib/cjs/geometry/AreaPattern.d.ts +82 -82
  313. package/lib/cjs/geometry/AreaPattern.js +204 -204
  314. package/lib/cjs/geometry/AreaPattern.js.map +1 -1
  315. package/lib/cjs/geometry/BoundingSphere.d.ts +14 -14
  316. package/lib/cjs/geometry/BoundingSphere.d.ts.map +1 -1
  317. package/lib/cjs/geometry/BoundingSphere.js +30 -24
  318. package/lib/cjs/geometry/BoundingSphere.js.map +1 -1
  319. package/lib/cjs/geometry/Cartographic.d.ts +137 -137
  320. package/lib/cjs/geometry/Cartographic.js +345 -345
  321. package/lib/cjs/geometry/Cartographic.js.map +1 -1
  322. package/lib/cjs/geometry/CoordinateReferenceSystem.d.ts +269 -269
  323. package/lib/cjs/geometry/CoordinateReferenceSystem.js +261 -261
  324. package/lib/cjs/geometry/CoordinateReferenceSystem.js.map +1 -1
  325. package/lib/cjs/geometry/ElementGeometry.d.ts +402 -402
  326. package/lib/cjs/geometry/ElementGeometry.js +1719 -1719
  327. package/lib/cjs/geometry/ElementGeometry.js.map +1 -1
  328. package/lib/cjs/geometry/ElementGeometryFB.d.ts +2372 -2372
  329. package/lib/cjs/geometry/ElementGeometryFB.js +3814 -3814
  330. package/lib/cjs/geometry/ElementGeometryFB.js.map +1 -1
  331. package/lib/cjs/geometry/FrustumPlanes.d.ts +32 -32
  332. package/lib/cjs/geometry/FrustumPlanes.js +132 -132
  333. package/lib/cjs/geometry/FrustumPlanes.js.map +1 -1
  334. package/lib/cjs/geometry/GeodeticDatum.d.ts +409 -409
  335. package/lib/cjs/geometry/GeodeticDatum.js +401 -401
  336. package/lib/cjs/geometry/GeodeticDatum.js.map +1 -1
  337. package/lib/cjs/geometry/GeodeticEllipsoid.d.ts +72 -72
  338. package/lib/cjs/geometry/GeodeticEllipsoid.js +72 -72
  339. package/lib/cjs/geometry/GeodeticEllipsoid.js.map +1 -1
  340. package/lib/cjs/geometry/GeometryStream.d.ts +347 -347
  341. package/lib/cjs/geometry/GeometryStream.js +469 -469
  342. package/lib/cjs/geometry/GeometryStream.js.map +1 -1
  343. package/lib/cjs/geometry/ImageGraphic.d.ts +74 -74
  344. package/lib/cjs/geometry/ImageGraphic.js +98 -98
  345. package/lib/cjs/geometry/ImageGraphic.js.map +1 -1
  346. package/lib/cjs/geometry/LineStyle.d.ts +71 -71
  347. package/lib/cjs/geometry/LineStyle.js +129 -129
  348. package/lib/cjs/geometry/LineStyle.js.map +1 -1
  349. package/lib/cjs/geometry/Placement.d.ts +95 -95
  350. package/lib/cjs/geometry/Placement.js +131 -131
  351. package/lib/cjs/geometry/Placement.js.map +1 -1
  352. package/lib/cjs/geometry/Projection.d.ts +251 -251
  353. package/lib/cjs/geometry/Projection.js +198 -198
  354. package/lib/cjs/geometry/Projection.js.map +1 -1
  355. package/lib/cjs/geometry/TextString.d.ts +55 -55
  356. package/lib/cjs/geometry/TextString.d.ts.map +1 -1
  357. package/lib/cjs/geometry/TextString.js +65 -65
  358. package/lib/cjs/geometry/TextString.js.map +1 -1
  359. package/lib/cjs/ipc/IpcSession.d.ts +23 -23
  360. package/lib/cjs/ipc/IpcSession.js +27 -27
  361. package/lib/cjs/ipc/IpcSession.js.map +1 -1
  362. package/lib/cjs/ipc/IpcSocket.d.ts +96 -96
  363. package/lib/cjs/ipc/IpcSocket.js +16 -16
  364. package/lib/cjs/ipc/IpcSocket.js.map +1 -1
  365. package/lib/cjs/ipc/IpcWebSocket.d.ts +61 -61
  366. package/lib/cjs/ipc/IpcWebSocket.js +151 -151
  367. package/lib/cjs/ipc/IpcWebSocket.js.map +1 -1
  368. package/lib/cjs/ipc/IpcWebSocketTransport.d.ts +15 -15
  369. package/lib/cjs/ipc/IpcWebSocketTransport.js +158 -151
  370. package/lib/cjs/ipc/IpcWebSocketTransport.js.map +1 -1
  371. package/lib/cjs/rpc/DevToolsRpcInterface.d.ts +32 -32
  372. package/lib/cjs/rpc/DevToolsRpcInterface.js +48 -48
  373. package/lib/cjs/rpc/DevToolsRpcInterface.js.map +1 -1
  374. package/lib/cjs/rpc/IModelReadRpcInterface.d.ts +75 -75
  375. package/lib/cjs/rpc/IModelReadRpcInterface.js +115 -115
  376. package/lib/cjs/rpc/IModelReadRpcInterface.js.map +1 -1
  377. package/lib/cjs/rpc/IModelTileRpcInterface.d.ts +61 -53
  378. package/lib/cjs/rpc/IModelTileRpcInterface.d.ts.map +1 -1
  379. package/lib/cjs/rpc/IModelTileRpcInterface.js +95 -86
  380. package/lib/cjs/rpc/IModelTileRpcInterface.js.map +1 -1
  381. package/lib/cjs/rpc/SnapshotIModelRpcInterface.d.ts +23 -23
  382. package/lib/cjs/rpc/SnapshotIModelRpcInterface.js +48 -48
  383. package/lib/cjs/rpc/SnapshotIModelRpcInterface.js.map +1 -1
  384. package/lib/cjs/rpc/TestRpcManager.d.ts +20 -20
  385. package/lib/cjs/rpc/TestRpcManager.js +39 -39
  386. package/lib/cjs/rpc/TestRpcManager.js.map +1 -1
  387. package/lib/cjs/rpc/WipRpcInterface.d.ts +29 -29
  388. package/lib/cjs/rpc/WipRpcInterface.js +40 -40
  389. package/lib/cjs/rpc/WipRpcInterface.js.map +1 -1
  390. package/lib/cjs/rpc/core/RpcConfiguration.d.ts +111 -111
  391. package/lib/cjs/rpc/core/RpcConfiguration.js +192 -192
  392. package/lib/cjs/rpc/core/RpcConfiguration.js.map +1 -1
  393. package/lib/cjs/rpc/core/RpcConstants.d.ts +85 -85
  394. package/lib/cjs/rpc/core/RpcConstants.js +103 -103
  395. package/lib/cjs/rpc/core/RpcConstants.js.map +1 -1
  396. package/lib/cjs/rpc/core/RpcControl.d.ts +52 -52
  397. package/lib/cjs/rpc/core/RpcControl.js +149 -149
  398. package/lib/cjs/rpc/core/RpcControl.js.map +1 -1
  399. package/lib/cjs/rpc/core/RpcInvocation.d.ts +89 -89
  400. package/lib/cjs/rpc/core/RpcInvocation.js +257 -257
  401. package/lib/cjs/rpc/core/RpcInvocation.js.map +1 -1
  402. package/lib/cjs/rpc/core/RpcMarshaling.d.ts +36 -36
  403. package/lib/cjs/rpc/core/RpcMarshaling.js +153 -153
  404. package/lib/cjs/rpc/core/RpcMarshaling.js.map +1 -1
  405. package/lib/cjs/rpc/core/RpcOperation.d.ts +67 -67
  406. package/lib/cjs/rpc/core/RpcOperation.js +133 -133
  407. package/lib/cjs/rpc/core/RpcOperation.js.map +1 -1
  408. package/lib/cjs/rpc/core/RpcPendingQueue.d.ts +21 -21
  409. package/lib/cjs/rpc/core/RpcPendingQueue.js +94 -94
  410. package/lib/cjs/rpc/core/RpcPendingQueue.js.map +1 -1
  411. package/lib/cjs/rpc/core/RpcProtocol.d.ts +132 -132
  412. package/lib/cjs/rpc/core/RpcProtocol.js +127 -127
  413. package/lib/cjs/rpc/core/RpcProtocol.js.map +1 -1
  414. package/lib/cjs/rpc/core/RpcPush.d.ts +68 -68
  415. package/lib/cjs/rpc/core/RpcPush.js +127 -127
  416. package/lib/cjs/rpc/core/RpcPush.js.map +1 -1
  417. package/lib/cjs/rpc/core/RpcRegistry.d.ts +48 -48
  418. package/lib/cjs/rpc/core/RpcRegistry.js +198 -198
  419. package/lib/cjs/rpc/core/RpcRegistry.js.map +1 -1
  420. package/lib/cjs/rpc/core/RpcRequest.d.ts +186 -186
  421. package/lib/cjs/rpc/core/RpcRequest.d.ts.map +1 -1
  422. package/lib/cjs/rpc/core/RpcRequest.js +477 -471
  423. package/lib/cjs/rpc/core/RpcRequest.js.map +1 -1
  424. package/lib/cjs/rpc/core/RpcRequestContext.d.ts +14 -14
  425. package/lib/cjs/rpc/core/RpcRequestContext.js +2 -2
  426. package/lib/cjs/rpc/core/RpcRequestContext.js.map +1 -1
  427. package/lib/cjs/rpc/core/RpcRoutingToken.d.ts +12 -12
  428. package/lib/cjs/rpc/core/RpcRoutingToken.js +23 -23
  429. package/lib/cjs/rpc/core/RpcRoutingToken.js.map +1 -1
  430. package/lib/cjs/rpc/core/RpcSessionInvocation.d.ts +10 -10
  431. package/lib/cjs/rpc/core/RpcSessionInvocation.js +59 -59
  432. package/lib/cjs/rpc/core/RpcSessionInvocation.js.map +1 -1
  433. package/lib/cjs/rpc/web/BentleyCloudRpcManager.d.ts +46 -46
  434. package/lib/cjs/rpc/web/BentleyCloudRpcManager.js +73 -73
  435. package/lib/cjs/rpc/web/BentleyCloudRpcManager.js.map +1 -1
  436. package/lib/cjs/rpc/web/BentleyCloudRpcProtocol.d.ts +33 -33
  437. package/lib/cjs/rpc/web/BentleyCloudRpcProtocol.js +142 -142
  438. package/lib/cjs/rpc/web/BentleyCloudRpcProtocol.js.map +1 -1
  439. package/lib/cjs/rpc/web/OpenAPI.d.ts +139 -139
  440. package/lib/cjs/rpc/web/OpenAPI.js +60 -60
  441. package/lib/cjs/rpc/web/OpenAPI.js.map +1 -1
  442. package/lib/cjs/rpc/web/RpcMultipart.d.ts +31 -31
  443. package/lib/cjs/rpc/web/RpcMultipart.js +45 -45
  444. package/lib/cjs/rpc/web/RpcMultipart.js.map +1 -1
  445. package/lib/cjs/rpc/web/WebAppRpcLogging.d.ts +17 -17
  446. package/lib/cjs/rpc/web/WebAppRpcLogging.js +140 -140
  447. package/lib/cjs/rpc/web/WebAppRpcLogging.js.map +1 -1
  448. package/lib/cjs/rpc/web/WebAppRpcProtocol.d.ts +86 -86
  449. package/lib/cjs/rpc/web/WebAppRpcProtocol.js +116 -116
  450. package/lib/cjs/rpc/web/WebAppRpcProtocol.js.map +1 -1
  451. package/lib/cjs/rpc/web/WebAppRpcRequest.d.ts +71 -71
  452. package/lib/cjs/rpc/web/WebAppRpcRequest.js +374 -374
  453. package/lib/cjs/rpc/web/WebAppRpcRequest.js.map +1 -1
  454. package/lib/cjs/rpc/web/multipart/RpcMultipartParser.d.ts +33 -33
  455. package/lib/cjs/rpc/web/multipart/RpcMultipartParser.d.ts.map +1 -1
  456. package/lib/cjs/rpc/web/multipart/RpcMultipartParser.js +359 -359
  457. package/lib/cjs/rpc/web/multipart/RpcMultipartParser.js.map +1 -1
  458. package/lib/cjs/tile/B3dmTileIO.d.ts +19 -19
  459. package/lib/cjs/tile/B3dmTileIO.js +66 -66
  460. package/lib/cjs/tile/B3dmTileIO.js.map +1 -1
  461. package/lib/cjs/tile/CompositeTileIO.d.ts +15 -15
  462. package/lib/cjs/tile/CompositeTileIO.js +26 -26
  463. package/lib/cjs/tile/CompositeTileIO.js.map +1 -1
  464. package/lib/cjs/tile/ElementGraphics.d.ts +134 -134
  465. package/lib/cjs/tile/ElementGraphics.js +9 -9
  466. package/lib/cjs/tile/ElementGraphics.js.map +1 -1
  467. package/lib/cjs/tile/GltfTileIO.d.ts +45 -45
  468. package/lib/cjs/tile/GltfTileIO.js +109 -109
  469. package/lib/cjs/tile/GltfTileIO.js.map +1 -1
  470. package/lib/cjs/tile/I3dmTileIO.d.ts +20 -20
  471. package/lib/cjs/tile/I3dmTileIO.d.ts.map +1 -1
  472. package/lib/cjs/tile/I3dmTileIO.js +40 -40
  473. package/lib/cjs/tile/I3dmTileIO.js.map +1 -1
  474. package/lib/cjs/tile/IModelTileIO.d.ts +75 -75
  475. package/lib/cjs/tile/IModelTileIO.js +95 -95
  476. package/lib/cjs/tile/IModelTileIO.js.map +1 -1
  477. package/lib/cjs/tile/PntsTileIO.d.ts +17 -17
  478. package/lib/cjs/tile/PntsTileIO.js +26 -26
  479. package/lib/cjs/tile/PntsTileIO.js.map +1 -1
  480. package/lib/cjs/tile/TileIO.d.ts +66 -66
  481. package/lib/cjs/tile/TileIO.js +118 -118
  482. package/lib/cjs/tile/TileIO.js.map +1 -1
  483. package/lib/cjs/tile/TileMetadata.d.ts +228 -228
  484. package/lib/cjs/tile/TileMetadata.js +676 -676
  485. package/lib/cjs/tile/TileMetadata.js.map +1 -1
  486. package/lib/esm/AmbientOcclusion.d.ts +49 -49
  487. package/lib/esm/AmbientOcclusion.js +52 -52
  488. package/lib/esm/AmbientOcclusion.js.map +1 -1
  489. package/lib/esm/AnalysisStyle.d.ts +134 -134
  490. package/lib/esm/AnalysisStyle.js +159 -159
  491. package/lib/esm/AnalysisStyle.js.map +1 -1
  492. package/lib/esm/AuthorizationClient.d.ts +11 -11
  493. package/lib/esm/AuthorizationClient.js +8 -8
  494. package/lib/esm/AuthorizationClient.js.map +1 -1
  495. package/lib/esm/BackgroundMapProvider.d.ts +51 -51
  496. package/lib/esm/BackgroundMapProvider.js +64 -64
  497. package/lib/esm/BackgroundMapProvider.js.map +1 -1
  498. package/lib/esm/BackgroundMapSettings.d.ts +136 -136
  499. package/lib/esm/BackgroundMapSettings.js +152 -152
  500. package/lib/esm/BackgroundMapSettings.js.map +1 -1
  501. package/lib/esm/Base64EncodedString.d.ts +30 -30
  502. package/lib/esm/Base64EncodedString.js +53 -53
  503. package/lib/esm/Base64EncodedString.js.map +1 -1
  504. package/lib/esm/BlobReader.d.ts +31 -31
  505. package/lib/esm/BlobReader.js +79 -79
  506. package/lib/esm/BlobReader.js.map +1 -1
  507. package/lib/esm/BriefcaseTypes.d.ts +189 -189
  508. package/lib/esm/BriefcaseTypes.js +92 -92
  509. package/lib/esm/BriefcaseTypes.js.map +1 -1
  510. package/lib/esm/Camera.d.ts +42 -42
  511. package/lib/esm/Camera.d.ts.map +1 -1
  512. package/lib/esm/Camera.js +58 -54
  513. package/lib/esm/Camera.js.map +1 -1
  514. package/lib/esm/ChangedElements.d.ts +83 -83
  515. package/lib/esm/ChangedElements.js +18 -18
  516. package/lib/esm/ChangedElements.js.map +1 -1
  517. package/lib/esm/ChangedEntities.d.ts +45 -45
  518. package/lib/esm/ChangedEntities.js +8 -8
  519. package/lib/esm/ChangedEntities.js.map +1 -1
  520. package/lib/esm/ChangesetProps.d.ts +98 -98
  521. package/lib/esm/ChangesetProps.js +19 -19
  522. package/lib/esm/ChangesetProps.js.map +1 -1
  523. package/lib/esm/ClipStyle.d.ts +89 -89
  524. package/lib/esm/ClipStyle.js +118 -118
  525. package/lib/esm/ClipStyle.js.map +1 -1
  526. package/lib/esm/CloudStorage.d.ts +62 -47
  527. package/lib/esm/CloudStorage.d.ts.map +1 -1
  528. package/lib/esm/CloudStorage.js +109 -99
  529. package/lib/esm/CloudStorage.js.map +1 -1
  530. package/lib/esm/CloudStorageTileCache.d.ts +27 -24
  531. package/lib/esm/CloudStorageTileCache.d.ts.map +1 -1
  532. package/lib/esm/CloudStorageTileCache.js +62 -58
  533. package/lib/esm/CloudStorageTileCache.js.map +1 -1
  534. package/lib/esm/Code.d.ts +256 -256
  535. package/lib/esm/Code.d.ts.map +1 -1
  536. package/lib/esm/Code.js +276 -273
  537. package/lib/esm/Code.js.map +1 -1
  538. package/lib/esm/ColorByName.d.ts +161 -161
  539. package/lib/esm/ColorByName.js +166 -166
  540. package/lib/esm/ColorByName.js.map +1 -1
  541. package/lib/esm/ColorDef.d.ts +208 -208
  542. package/lib/esm/ColorDef.d.ts.map +1 -1
  543. package/lib/esm/ColorDef.js +567 -565
  544. package/lib/esm/ColorDef.js.map +1 -1
  545. package/lib/esm/CommonLoggerCategory.d.ts +18 -18
  546. package/lib/esm/CommonLoggerCategory.js +23 -23
  547. package/lib/esm/CommonLoggerCategory.js.map +1 -1
  548. package/lib/esm/ConcurrentQuery.d.ts +241 -241
  549. package/lib/esm/ConcurrentQuery.d.ts.map +1 -1
  550. package/lib/esm/ConcurrentQuery.js +373 -331
  551. package/lib/esm/ConcurrentQuery.js.map +1 -1
  552. package/lib/esm/ContextRealityModel.d.ts +255 -255
  553. package/lib/esm/ContextRealityModel.js +320 -320
  554. package/lib/esm/ContextRealityModel.js.map +1 -1
  555. package/lib/esm/DisplayStyleSettings.d.ts +552 -552
  556. package/lib/esm/DisplayStyleSettings.js +946 -946
  557. package/lib/esm/DisplayStyleSettings.js.map +1 -1
  558. package/lib/esm/ECSchemaProps.d.ts +39 -39
  559. package/lib/esm/ECSchemaProps.js +8 -8
  560. package/lib/esm/ECSchemaProps.js.map +1 -1
  561. package/lib/esm/ECSqlReader.d.ts +70 -70
  562. package/lib/esm/ECSqlReader.js +275 -275
  563. package/lib/esm/ECSqlReader.js.map +1 -1
  564. package/lib/esm/ECSqlTypes.d.ts +128 -128
  565. package/lib/esm/ECSqlTypes.js +185 -185
  566. package/lib/esm/ECSqlTypes.js.map +1 -1
  567. package/lib/esm/ElementProps.d.ts +476 -476
  568. package/lib/esm/ElementProps.js +92 -92
  569. package/lib/esm/ElementProps.js.map +1 -1
  570. package/lib/esm/EmphasizeElementsProps.d.ts +55 -55
  571. package/lib/esm/EmphasizeElementsProps.js +22 -22
  572. package/lib/esm/EmphasizeElementsProps.js.map +1 -1
  573. package/lib/esm/EntityProps.d.ts +176 -176
  574. package/lib/esm/EntityProps.js +107 -107
  575. package/lib/esm/EntityProps.js.map +1 -1
  576. package/lib/esm/Environment.d.ts +61 -61
  577. package/lib/esm/Environment.js +69 -69
  578. package/lib/esm/Environment.js.map +1 -1
  579. package/lib/esm/FeatureGates.d.ts +31 -31
  580. package/lib/esm/FeatureGates.d.ts.map +1 -1
  581. package/lib/esm/FeatureGates.js +51 -47
  582. package/lib/esm/FeatureGates.js.map +1 -1
  583. package/lib/esm/FeatureIndex.d.ts +39 -39
  584. package/lib/esm/FeatureIndex.d.ts.map +1 -1
  585. package/lib/esm/FeatureIndex.js +57 -53
  586. package/lib/esm/FeatureIndex.js.map +1 -1
  587. package/lib/esm/FeatureSymbology.d.ts +444 -444
  588. package/lib/esm/FeatureSymbology.d.ts.map +1 -1
  589. package/lib/esm/FeatureSymbology.js +609 -609
  590. package/lib/esm/FeatureSymbology.js.map +1 -1
  591. package/lib/esm/FeatureTable.d.ts +141 -141
  592. package/lib/esm/FeatureTable.js +272 -272
  593. package/lib/esm/FeatureTable.js.map +1 -1
  594. package/lib/esm/Fonts.d.ts +51 -51
  595. package/lib/esm/Fonts.d.ts.map +1 -1
  596. package/lib/esm/Fonts.js +49 -49
  597. package/lib/esm/Fonts.js.map +1 -1
  598. package/lib/esm/Frustum.d.ts +114 -114
  599. package/lib/esm/Frustum.d.ts.map +1 -1
  600. package/lib/esm/Frustum.js +288 -254
  601. package/lib/esm/Frustum.js.map +1 -1
  602. package/lib/esm/GeoCoordinateServices.d.ts +119 -119
  603. package/lib/esm/GeoCoordinateServices.js +76 -76
  604. package/lib/esm/GeoCoordinateServices.js.map +1 -1
  605. package/lib/esm/GeometryContainment.d.ts +28 -28
  606. package/lib/esm/GeometryContainment.js +8 -8
  607. package/lib/esm/GeometryContainment.js.map +1 -1
  608. package/lib/esm/GeometryParams.d.ts +130 -130
  609. package/lib/esm/GeometryParams.js +170 -170
  610. package/lib/esm/GeometryParams.js.map +1 -1
  611. package/lib/esm/GeometrySummary.d.ts +45 -45
  612. package/lib/esm/GeometrySummary.js +20 -20
  613. package/lib/esm/GeometrySummary.js.map +1 -1
  614. package/lib/esm/Gradient.d.ts +139 -139
  615. package/lib/esm/Gradient.js +452 -452
  616. package/lib/esm/Gradient.js.map +1 -1
  617. package/lib/esm/GraphicParams.d.ts +58 -58
  618. package/lib/esm/GraphicParams.js +81 -81
  619. package/lib/esm/GraphicParams.js.map +1 -1
  620. package/lib/esm/GroundPlane.d.ts +52 -52
  621. package/lib/esm/GroundPlane.js +60 -60
  622. package/lib/esm/GroundPlane.js.map +1 -1
  623. package/lib/esm/HSLColor.d.ts +20 -20
  624. package/lib/esm/HSLColor.js +28 -28
  625. package/lib/esm/HSLColor.js.map +1 -1
  626. package/lib/esm/HSVColor.d.ts +30 -30
  627. package/lib/esm/HSVColor.js +55 -55
  628. package/lib/esm/HSVColor.js.map +1 -1
  629. package/lib/esm/HiddenLine.d.ts +97 -97
  630. package/lib/esm/HiddenLine.js +159 -159
  631. package/lib/esm/HiddenLine.js.map +1 -1
  632. package/lib/esm/Hilite.d.ts +50 -50
  633. package/lib/esm/Hilite.js +61 -61
  634. package/lib/esm/Hilite.js.map +1 -1
  635. package/lib/esm/IModel.d.ts +355 -355
  636. package/lib/esm/IModel.js +335 -335
  637. package/lib/esm/IModel.js.map +1 -1
  638. package/lib/esm/IModelError.d.ts +36 -36
  639. package/lib/esm/IModelError.js +55 -55
  640. package/lib/esm/IModelError.js.map +1 -1
  641. package/lib/esm/IModelVersion.d.ts +68 -68
  642. package/lib/esm/IModelVersion.js +75 -75
  643. package/lib/esm/IModelVersion.js.map +1 -1
  644. package/lib/esm/Image.d.ts +86 -86
  645. package/lib/esm/Image.d.ts.map +1 -1
  646. package/lib/esm/Image.js +120 -118
  647. package/lib/esm/Image.js.map +1 -1
  648. package/lib/esm/IpcAppProps.d.ts +124 -124
  649. package/lib/esm/IpcAppProps.js +15 -15
  650. package/lib/esm/IpcAppProps.js.map +1 -1
  651. package/lib/esm/LightSettings.d.ts +224 -224
  652. package/lib/esm/LightSettings.js +301 -301
  653. package/lib/esm/LightSettings.js.map +1 -1
  654. package/lib/esm/LinePixels.d.ts +34 -34
  655. package/lib/esm/LinePixels.js +39 -39
  656. package/lib/esm/LinePixels.js.map +1 -1
  657. package/lib/esm/Localization.d.ts +111 -111
  658. package/lib/esm/Localization.js +22 -22
  659. package/lib/esm/Localization.js.map +1 -1
  660. package/lib/esm/MapImagerySettings.d.ts +62 -62
  661. package/lib/esm/MapImagerySettings.js +76 -76
  662. package/lib/esm/MapImagerySettings.js.map +1 -1
  663. package/lib/esm/MapLayerSettings.d.ts +272 -272
  664. package/lib/esm/MapLayerSettings.js +403 -403
  665. package/lib/esm/MapLayerSettings.js.map +1 -1
  666. package/lib/esm/MassProperties.d.ts +64 -64
  667. package/lib/esm/MassProperties.js +20 -20
  668. package/lib/esm/MassProperties.js.map +1 -1
  669. package/lib/esm/MaterialProps.d.ts +118 -118
  670. package/lib/esm/MaterialProps.js +20 -20
  671. package/lib/esm/MaterialProps.js.map +1 -1
  672. package/lib/esm/ModelClipGroup.d.ts +67 -67
  673. package/lib/esm/ModelClipGroup.js +93 -93
  674. package/lib/esm/ModelClipGroup.js.map +1 -1
  675. package/lib/esm/ModelGeometryChanges.d.ts +107 -107
  676. package/lib/esm/ModelGeometryChanges.js +80 -80
  677. package/lib/esm/ModelGeometryChanges.js.map +1 -1
  678. package/lib/esm/ModelProps.d.ts +66 -66
  679. package/lib/esm/ModelProps.js +8 -8
  680. package/lib/esm/ModelProps.js.map +1 -1
  681. package/lib/esm/NativeAppProps.d.ts +122 -122
  682. package/lib/esm/NativeAppProps.js +27 -27
  683. package/lib/esm/NativeAppProps.js.map +1 -1
  684. package/lib/esm/OctEncodedNormal.d.ts +33 -33
  685. package/lib/esm/OctEncodedNormal.js +93 -93
  686. package/lib/esm/OctEncodedNormal.js.map +1 -1
  687. package/lib/esm/PlanProjectionSettings.d.ts +47 -47
  688. package/lib/esm/PlanProjectionSettings.js +59 -59
  689. package/lib/esm/PlanProjectionSettings.js.map +1 -1
  690. package/lib/esm/PlanarClipMask.d.ts +177 -177
  691. package/lib/esm/PlanarClipMask.js +132 -132
  692. package/lib/esm/PlanarClipMask.js.map +1 -1
  693. package/lib/esm/QPoint.d.ts +479 -299
  694. package/lib/esm/QPoint.d.ts.map +1 -1
  695. package/lib/esm/QPoint.js +815 -617
  696. package/lib/esm/QPoint.js.map +1 -1
  697. package/lib/esm/RealityDataAccessProps.d.ts +41 -41
  698. package/lib/esm/RealityDataAccessProps.js +16 -16
  699. package/lib/esm/RealityDataAccessProps.js.map +1 -1
  700. package/lib/esm/Render.d.ts +89 -89
  701. package/lib/esm/Render.d.ts.map +1 -1
  702. package/lib/esm/Render.js +165 -157
  703. package/lib/esm/Render.js.map +1 -1
  704. package/lib/esm/RenderMaterial.d.ts +58 -58
  705. package/lib/esm/RenderMaterial.js +72 -72
  706. package/lib/esm/RenderMaterial.js.map +1 -1
  707. package/lib/esm/RenderSchedule.d.ts +540 -540
  708. package/lib/esm/RenderSchedule.js +997 -997
  709. package/lib/esm/RenderTexture.d.ts +70 -70
  710. package/lib/esm/RenderTexture.js +55 -55
  711. package/lib/esm/RenderTexture.js.map +1 -1
  712. package/lib/esm/RgbColor.d.ts +39 -39
  713. package/lib/esm/RgbColor.js +63 -63
  714. package/lib/esm/RgbColor.js.map +1 -1
  715. package/lib/esm/RpcInterface.d.ts +33 -33
  716. package/lib/esm/RpcInterface.js +133 -133
  717. package/lib/esm/RpcInterface.js.map +1 -1
  718. package/lib/esm/RpcManager.d.ts +40 -40
  719. package/lib/esm/RpcManager.js +51 -51
  720. package/lib/esm/RpcManager.js.map +1 -1
  721. package/lib/esm/SessionProps.d.ts +16 -16
  722. package/lib/esm/SessionProps.js +8 -8
  723. package/lib/esm/SessionProps.js.map +1 -1
  724. package/lib/esm/SkyBox.d.ts +215 -215
  725. package/lib/esm/SkyBox.js +203 -203
  726. package/lib/esm/SkyBox.js.map +1 -1
  727. package/lib/esm/Snapping.d.ts +49 -49
  728. package/lib/esm/Snapping.js +8 -8
  729. package/lib/esm/Snapping.js.map +1 -1
  730. package/lib/esm/SolarCalculate.d.ts +27 -27
  731. package/lib/esm/SolarCalculate.js +204 -204
  732. package/lib/esm/SolarCalculate.js.map +1 -1
  733. package/lib/esm/SolarShadows.d.ts +35 -35
  734. package/lib/esm/SolarShadows.js +58 -58
  735. package/lib/esm/SolarShadows.js.map +1 -1
  736. package/lib/esm/SpatialClassification.d.ts +208 -208
  737. package/lib/esm/SpatialClassification.js +334 -334
  738. package/lib/esm/SpatialClassification.js.map +1 -1
  739. package/lib/esm/SubCategoryAppearance.d.ts +91 -91
  740. package/lib/esm/SubCategoryAppearance.js +92 -92
  741. package/lib/esm/SubCategoryAppearance.js.map +1 -1
  742. package/lib/esm/SubCategoryOverride.d.ts +46 -46
  743. package/lib/esm/SubCategoryOverride.d.ts.map +1 -1
  744. package/lib/esm/SubCategoryOverride.js +100 -100
  745. package/lib/esm/SubCategoryOverride.js.map +1 -1
  746. package/lib/esm/TerrainSettings.d.ts +82 -77
  747. package/lib/esm/TerrainSettings.d.ts.map +1 -1
  748. package/lib/esm/TerrainSettings.js +98 -97
  749. package/lib/esm/TerrainSettings.js.map +1 -1
  750. package/lib/esm/TextureMapping.d.ts +101 -101
  751. package/lib/esm/TextureMapping.js +170 -170
  752. package/lib/esm/TextureMapping.js.map +1 -1
  753. package/lib/esm/TextureProps.d.ts +65 -65
  754. package/lib/esm/TextureProps.js +25 -25
  755. package/lib/esm/TextureProps.js.map +1 -1
  756. package/lib/esm/ThematicDisplay.d.ts +230 -230
  757. package/lib/esm/ThematicDisplay.js +337 -337
  758. package/lib/esm/ThematicDisplay.js.map +1 -1
  759. package/lib/esm/Thumbnail.d.ts +26 -26
  760. package/lib/esm/Thumbnail.js +8 -8
  761. package/lib/esm/Thumbnail.js.map +1 -1
  762. package/lib/esm/TileProps.d.ts +82 -77
  763. package/lib/esm/TileProps.d.ts.map +1 -1
  764. package/lib/esm/TileProps.js +25 -15
  765. package/lib/esm/TileProps.js.map +1 -1
  766. package/lib/esm/Tween.d.ts +191 -191
  767. package/lib/esm/Tween.js +565 -565
  768. package/lib/esm/Tween.js.map +1 -1
  769. package/lib/esm/TxnAction.d.ts +21 -21
  770. package/lib/esm/TxnAction.js +26 -26
  771. package/lib/esm/TxnAction.js.map +1 -1
  772. package/lib/esm/ViewDetails.d.ts +125 -125
  773. package/lib/esm/ViewDetails.js +153 -153
  774. package/lib/esm/ViewDetails.js.map +1 -1
  775. package/lib/esm/ViewFlags.d.ts +291 -291
  776. package/lib/esm/ViewFlags.d.ts.map +1 -1
  777. package/lib/esm/ViewFlags.js +364 -364
  778. package/lib/esm/ViewFlags.js.map +1 -1
  779. package/lib/esm/ViewProps.d.ts +205 -205
  780. package/lib/esm/ViewProps.js +8 -8
  781. package/lib/esm/ViewProps.js.map +1 -1
  782. package/lib/esm/WhiteOnWhiteReversalSettings.d.ts +36 -36
  783. package/lib/esm/WhiteOnWhiteReversalSettings.js +33 -33
  784. package/lib/esm/WhiteOnWhiteReversalSettings.js.map +1 -1
  785. package/lib/esm/core-common.d.ts +240 -240
  786. package/lib/esm/core-common.js +244 -244
  787. package/lib/esm/core-common.js.map +1 -1
  788. package/lib/esm/domains/FunctionalElementProps.d.ts +11 -11
  789. package/lib/esm/domains/FunctionalElementProps.js +8 -8
  790. package/lib/esm/domains/FunctionalElementProps.js.map +1 -1
  791. package/lib/esm/domains/GenericElementProps.d.ts +18 -18
  792. package/lib/esm/domains/GenericElementProps.js +8 -8
  793. package/lib/esm/domains/GenericElementProps.js.map +1 -1
  794. package/lib/esm/geometry/AdditionalTransform.d.ts +84 -84
  795. package/lib/esm/geometry/AdditionalTransform.js +80 -80
  796. package/lib/esm/geometry/AdditionalTransform.js.map +1 -1
  797. package/lib/esm/geometry/AreaPattern.d.ts +82 -82
  798. package/lib/esm/geometry/AreaPattern.js +201 -201
  799. package/lib/esm/geometry/AreaPattern.js.map +1 -1
  800. package/lib/esm/geometry/BoundingSphere.d.ts +14 -14
  801. package/lib/esm/geometry/BoundingSphere.d.ts.map +1 -1
  802. package/lib/esm/geometry/BoundingSphere.js +26 -20
  803. package/lib/esm/geometry/BoundingSphere.js.map +1 -1
  804. package/lib/esm/geometry/Cartographic.d.ts +137 -137
  805. package/lib/esm/geometry/Cartographic.js +340 -340
  806. package/lib/esm/geometry/Cartographic.js.map +1 -1
  807. package/lib/esm/geometry/CoordinateReferenceSystem.d.ts +269 -269
  808. package/lib/esm/geometry/CoordinateReferenceSystem.js +254 -254
  809. package/lib/esm/geometry/CoordinateReferenceSystem.js.map +1 -1
  810. package/lib/esm/geometry/ElementGeometry.d.ts +402 -402
  811. package/lib/esm/geometry/ElementGeometry.js +1716 -1716
  812. package/lib/esm/geometry/ElementGeometry.js.map +1 -1
  813. package/lib/esm/geometry/ElementGeometryFB.d.ts +2372 -2372
  814. package/lib/esm/geometry/ElementGeometryFB.js +3811 -3811
  815. package/lib/esm/geometry/ElementGeometryFB.js.map +1 -1
  816. package/lib/esm/geometry/FrustumPlanes.d.ts +32 -32
  817. package/lib/esm/geometry/FrustumPlanes.js +128 -128
  818. package/lib/esm/geometry/FrustumPlanes.js.map +1 -1
  819. package/lib/esm/geometry/GeodeticDatum.d.ts +409 -409
  820. package/lib/esm/geometry/GeodeticDatum.js +390 -390
  821. package/lib/esm/geometry/GeodeticDatum.js.map +1 -1
  822. package/lib/esm/geometry/GeodeticEllipsoid.d.ts +72 -72
  823. package/lib/esm/geometry/GeodeticEllipsoid.js +68 -68
  824. package/lib/esm/geometry/GeodeticEllipsoid.js.map +1 -1
  825. package/lib/esm/geometry/GeometryStream.d.ts +347 -347
  826. package/lib/esm/geometry/GeometryStream.js +464 -464
  827. package/lib/esm/geometry/GeometryStream.js.map +1 -1
  828. package/lib/esm/geometry/ImageGraphic.d.ts +74 -74
  829. package/lib/esm/geometry/ImageGraphic.js +93 -93
  830. package/lib/esm/geometry/ImageGraphic.js.map +1 -1
  831. package/lib/esm/geometry/LineStyle.d.ts +71 -71
  832. package/lib/esm/geometry/LineStyle.js +126 -126
  833. package/lib/esm/geometry/LineStyle.js.map +1 -1
  834. package/lib/esm/geometry/Placement.d.ts +95 -95
  835. package/lib/esm/geometry/Placement.js +126 -126
  836. package/lib/esm/geometry/Placement.js.map +1 -1
  837. package/lib/esm/geometry/Projection.d.ts +251 -251
  838. package/lib/esm/geometry/Projection.js +192 -192
  839. package/lib/esm/geometry/Projection.js.map +1 -1
  840. package/lib/esm/geometry/TextString.d.ts +55 -55
  841. package/lib/esm/geometry/TextString.d.ts.map +1 -1
  842. package/lib/esm/geometry/TextString.js +61 -61
  843. package/lib/esm/geometry/TextString.js.map +1 -1
  844. package/lib/esm/ipc/IpcSession.d.ts +23 -23
  845. package/lib/esm/ipc/IpcSession.js +23 -23
  846. package/lib/esm/ipc/IpcSession.js.map +1 -1
  847. package/lib/esm/ipc/IpcSocket.d.ts +96 -96
  848. package/lib/esm/ipc/IpcSocket.js +12 -12
  849. package/lib/esm/ipc/IpcSocket.js.map +1 -1
  850. package/lib/esm/ipc/IpcWebSocket.d.ts +61 -61
  851. package/lib/esm/ipc/IpcWebSocket.js +145 -145
  852. package/lib/esm/ipc/IpcWebSocket.js.map +1 -1
  853. package/lib/esm/ipc/IpcWebSocketTransport.d.ts +15 -15
  854. package/lib/esm/ipc/IpcWebSocketTransport.js +154 -147
  855. package/lib/esm/ipc/IpcWebSocketTransport.js.map +1 -1
  856. package/lib/esm/rpc/DevToolsRpcInterface.d.ts +32 -32
  857. package/lib/esm/rpc/DevToolsRpcInterface.js +44 -44
  858. package/lib/esm/rpc/DevToolsRpcInterface.js.map +1 -1
  859. package/lib/esm/rpc/IModelReadRpcInterface.d.ts +75 -75
  860. package/lib/esm/rpc/IModelReadRpcInterface.js +110 -110
  861. package/lib/esm/rpc/IModelReadRpcInterface.js.map +1 -1
  862. package/lib/esm/rpc/IModelTileRpcInterface.d.ts +61 -53
  863. package/lib/esm/rpc/IModelTileRpcInterface.d.ts.map +1 -1
  864. package/lib/esm/rpc/IModelTileRpcInterface.js +91 -82
  865. package/lib/esm/rpc/IModelTileRpcInterface.js.map +1 -1
  866. package/lib/esm/rpc/SnapshotIModelRpcInterface.d.ts +23 -23
  867. package/lib/esm/rpc/SnapshotIModelRpcInterface.js +44 -44
  868. package/lib/esm/rpc/SnapshotIModelRpcInterface.js.map +1 -1
  869. package/lib/esm/rpc/TestRpcManager.d.ts +20 -20
  870. package/lib/esm/rpc/TestRpcManager.js +35 -35
  871. package/lib/esm/rpc/TestRpcManager.js.map +1 -1
  872. package/lib/esm/rpc/WipRpcInterface.d.ts +29 -29
  873. package/lib/esm/rpc/WipRpcInterface.js +36 -36
  874. package/lib/esm/rpc/WipRpcInterface.js.map +1 -1
  875. package/lib/esm/rpc/core/RpcConfiguration.d.ts +111 -111
  876. package/lib/esm/rpc/core/RpcConfiguration.js +185 -185
  877. package/lib/esm/rpc/core/RpcConfiguration.js.map +1 -1
  878. package/lib/esm/rpc/core/RpcConstants.d.ts +85 -85
  879. package/lib/esm/rpc/core/RpcConstants.js +100 -100
  880. package/lib/esm/rpc/core/RpcConstants.js.map +1 -1
  881. package/lib/esm/rpc/core/RpcControl.d.ts +52 -52
  882. package/lib/esm/rpc/core/RpcControl.js +142 -142
  883. package/lib/esm/rpc/core/RpcControl.js.map +1 -1
  884. package/lib/esm/rpc/core/RpcInvocation.d.ts +89 -89
  885. package/lib/esm/rpc/core/RpcInvocation.js +253 -253
  886. package/lib/esm/rpc/core/RpcInvocation.js.map +1 -1
  887. package/lib/esm/rpc/core/RpcMarshaling.d.ts +36 -36
  888. package/lib/esm/rpc/core/RpcMarshaling.js +149 -149
  889. package/lib/esm/rpc/core/RpcMarshaling.js.map +1 -1
  890. package/lib/esm/rpc/core/RpcOperation.d.ts +67 -67
  891. package/lib/esm/rpc/core/RpcOperation.js +128 -128
  892. package/lib/esm/rpc/core/RpcOperation.js.map +1 -1
  893. package/lib/esm/rpc/core/RpcPendingQueue.d.ts +21 -21
  894. package/lib/esm/rpc/core/RpcPendingQueue.js +90 -90
  895. package/lib/esm/rpc/core/RpcPendingQueue.js.map +1 -1
  896. package/lib/esm/rpc/core/RpcProtocol.d.ts +132 -132
  897. package/lib/esm/rpc/core/RpcProtocol.js +123 -123
  898. package/lib/esm/rpc/core/RpcProtocol.js.map +1 -1
  899. package/lib/esm/rpc/core/RpcPush.d.ts +68 -68
  900. package/lib/esm/rpc/core/RpcPush.js +119 -119
  901. package/lib/esm/rpc/core/RpcPush.js.map +1 -1
  902. package/lib/esm/rpc/core/RpcRegistry.d.ts +48 -48
  903. package/lib/esm/rpc/core/RpcRegistry.js +194 -194
  904. package/lib/esm/rpc/core/RpcRegistry.js.map +1 -1
  905. package/lib/esm/rpc/core/RpcRequest.d.ts +186 -186
  906. package/lib/esm/rpc/core/RpcRequest.d.ts.map +1 -1
  907. package/lib/esm/rpc/core/RpcRequest.js +472 -466
  908. package/lib/esm/rpc/core/RpcRequest.js.map +1 -1
  909. package/lib/esm/rpc/core/RpcRequestContext.d.ts +14 -14
  910. package/lib/esm/rpc/core/RpcRequestContext.js +1 -1
  911. package/lib/esm/rpc/core/RpcRequestContext.js.map +1 -1
  912. package/lib/esm/rpc/core/RpcRoutingToken.d.ts +12 -12
  913. package/lib/esm/rpc/core/RpcRoutingToken.js +19 -19
  914. package/lib/esm/rpc/core/RpcRoutingToken.js.map +1 -1
  915. package/lib/esm/rpc/core/RpcSessionInvocation.d.ts +10 -10
  916. package/lib/esm/rpc/core/RpcSessionInvocation.js +55 -55
  917. package/lib/esm/rpc/core/RpcSessionInvocation.js.map +1 -1
  918. package/lib/esm/rpc/web/BentleyCloudRpcManager.d.ts +46 -46
  919. package/lib/esm/rpc/web/BentleyCloudRpcManager.js +68 -68
  920. package/lib/esm/rpc/web/BentleyCloudRpcManager.js.map +1 -1
  921. package/lib/esm/rpc/web/BentleyCloudRpcProtocol.d.ts +33 -33
  922. package/lib/esm/rpc/web/BentleyCloudRpcProtocol.js +138 -138
  923. package/lib/esm/rpc/web/BentleyCloudRpcProtocol.js.map +1 -1
  924. package/lib/esm/rpc/web/OpenAPI.d.ts +139 -139
  925. package/lib/esm/rpc/web/OpenAPI.js +56 -56
  926. package/lib/esm/rpc/web/OpenAPI.js.map +1 -1
  927. package/lib/esm/rpc/web/RpcMultipart.d.ts +31 -31
  928. package/lib/esm/rpc/web/RpcMultipart.js +41 -41
  929. package/lib/esm/rpc/web/RpcMultipart.js.map +1 -1
  930. package/lib/esm/rpc/web/WebAppRpcLogging.d.ts +17 -17
  931. package/lib/esm/rpc/web/WebAppRpcLogging.js +136 -136
  932. package/lib/esm/rpc/web/WebAppRpcLogging.js.map +1 -1
  933. package/lib/esm/rpc/web/WebAppRpcProtocol.d.ts +86 -86
  934. package/lib/esm/rpc/web/WebAppRpcProtocol.js +112 -112
  935. package/lib/esm/rpc/web/WebAppRpcProtocol.js.map +1 -1
  936. package/lib/esm/rpc/web/WebAppRpcRequest.d.ts +71 -71
  937. package/lib/esm/rpc/web/WebAppRpcRequest.js +370 -370
  938. package/lib/esm/rpc/web/WebAppRpcRequest.js.map +1 -1
  939. package/lib/esm/rpc/web/multipart/RpcMultipartParser.d.ts +33 -33
  940. package/lib/esm/rpc/web/multipart/RpcMultipartParser.d.ts.map +1 -1
  941. package/lib/esm/rpc/web/multipart/RpcMultipartParser.js +355 -355
  942. package/lib/esm/rpc/web/multipart/RpcMultipartParser.js.map +1 -1
  943. package/lib/esm/tile/B3dmTileIO.d.ts +19 -19
  944. package/lib/esm/tile/B3dmTileIO.js +62 -62
  945. package/lib/esm/tile/B3dmTileIO.js.map +1 -1
  946. package/lib/esm/tile/CompositeTileIO.d.ts +15 -15
  947. package/lib/esm/tile/CompositeTileIO.js +22 -22
  948. package/lib/esm/tile/CompositeTileIO.js.map +1 -1
  949. package/lib/esm/tile/ElementGraphics.d.ts +134 -134
  950. package/lib/esm/tile/ElementGraphics.js +8 -8
  951. package/lib/esm/tile/ElementGraphics.js.map +1 -1
  952. package/lib/esm/tile/GltfTileIO.d.ts +45 -45
  953. package/lib/esm/tile/GltfTileIO.js +105 -105
  954. package/lib/esm/tile/GltfTileIO.js.map +1 -1
  955. package/lib/esm/tile/I3dmTileIO.d.ts +20 -20
  956. package/lib/esm/tile/I3dmTileIO.d.ts.map +1 -1
  957. package/lib/esm/tile/I3dmTileIO.js +36 -36
  958. package/lib/esm/tile/I3dmTileIO.js.map +1 -1
  959. package/lib/esm/tile/IModelTileIO.d.ts +75 -75
  960. package/lib/esm/tile/IModelTileIO.js +90 -90
  961. package/lib/esm/tile/IModelTileIO.js.map +1 -1
  962. package/lib/esm/tile/PntsTileIO.d.ts +17 -17
  963. package/lib/esm/tile/PntsTileIO.js +22 -22
  964. package/lib/esm/tile/PntsTileIO.js.map +1 -1
  965. package/lib/esm/tile/TileIO.d.ts +66 -66
  966. package/lib/esm/tile/TileIO.js +110 -110
  967. package/lib/esm/tile/TileIO.js.map +1 -1
  968. package/lib/esm/tile/TileMetadata.d.ts +228 -228
  969. package/lib/esm/tile/TileMetadata.js +661 -661
  970. package/lib/esm/tile/TileMetadata.js.map +1 -1
  971. package/package.json +8 -7
@@ -1,375 +1,375 @@
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.WebAppRpcRequest = void 0;
11
- const core_bentley_1 = require("@itwin/core-bentley");
12
- const buffer_1 = require("buffer");
13
- const IModelError_1 = require("../../IModelError");
14
- const RpcConstants_1 = require("../core/RpcConstants");
15
- const RpcMarshaling_1 = require("../core/RpcMarshaling");
16
- const RpcProtocol_1 = require("../core/RpcProtocol");
17
- const RpcRequest_1 = require("../core/RpcRequest");
18
- const RpcMultipartParser_1 = require("./multipart/RpcMultipartParser");
19
- const RpcMultipart_1 = require("./RpcMultipart");
20
- const WebAppRpcProtocol_1 = require("./WebAppRpcProtocol");
21
- /** A web application RPC request.
22
- * @internal
23
- */
24
- class WebAppRpcRequest extends RpcRequest_1.RpcRequest {
25
- /** Constructs a web application request. */
26
- constructor(client, operation, parameters) {
27
- super(client, operation, parameters);
28
- this._loading = false;
29
- this._request = {};
30
- this._pathSuffix = "";
31
- /** Convenience access to the protocol of this request. */
32
- this.protocol = this.client.configuration.protocol;
33
- /** Standardized access to metadata about the request (useful for purposes such as logging). */
34
- this.metadata = { status: 0, message: "" };
35
- this.path = this.protocol.supplyPathForOperation(this.operation, this);
36
- this.method = "head";
37
- this._request.headers = {};
38
- }
39
- get _headers() { return this._request.headers; }
40
- /** Parse headers */
41
- static parseHeaders(protocol, req) {
42
- var _a;
43
- const headerNames = protocol.serializedClientRequestContextHeaderNames;
44
- const parsedHeaders = {
45
- id: req.header(headerNames.id) || "",
46
- applicationId: req.header(headerNames.applicationId) || "",
47
- applicationVersion: req.header(headerNames.applicationVersion) || "",
48
- sessionId: req.header(headerNames.sessionId) || "",
49
- authorization: (_a = (headerNames.authorization ? req.header(headerNames.authorization) : "")) !== null && _a !== void 0 ? _a : "",
50
- };
51
- return parsedHeaders;
52
- }
53
- /** Parses a request. */
54
- static async parseRequest(protocol, req) {
55
- const operation = protocol.getOperationFromPath(req.url);
56
- const parsedHeaders = this.parseHeaders(protocol, req);
57
- const request = {
58
- ...parsedHeaders,
59
- operation: {
60
- interfaceDefinition: operation.interfaceDefinition,
61
- operationName: operation.operationName,
62
- interfaceVersion: operation.interfaceVersion,
63
- },
64
- method: req.method,
65
- path: req.url,
66
- parameters: operation.encodedRequest ? WebAppRpcRequest.parseFromPath(operation) : await WebAppRpcRequest.parseFromBody(req),
67
- caching: operation.encodedRequest ? RpcConstants_1.RpcResponseCacheControl.Immutable : RpcConstants_1.RpcResponseCacheControl.None,
68
- };
69
- request.ip = req.ip;
70
- request.protocolVersion = 0;
71
- if (protocol.protocolVersionHeaderName) {
72
- const version = req.header(protocol.protocolVersionHeaderName);
73
- if (version) {
74
- request.protocolVersion = parseInt(version, 10);
75
- }
76
- }
77
- if (!request.id) {
78
- throw new IModelError_1.IModelError(core_bentley_1.BentleyStatus.ERROR, `Invalid request: Missing required activity ID.`);
79
- }
80
- return request;
81
- }
82
- /** Sends the response for a web request. */
83
- static async sendResponse(protocol, request, fulfillment, req, res) {
84
- var _a;
85
- const versionHeader = protocol.protocolVersionHeaderName;
86
- if (versionHeader && RpcProtocol_1.RpcProtocol.protocolVersion) {
87
- res.set(versionHeader, RpcProtocol_1.RpcProtocol.protocolVersion.toString());
88
- }
89
- // eslint-disable-next-line @typescript-eslint/naming-convention
90
- const { Readable, Stream } = await Promise.resolve().then(() => require(/* webpackIgnore: true */ "stream"));
91
- const { createGzip } = await Promise.resolve().then(() => require(/* webpackIgnore: true */ "zlib"));
92
- const transportType = WebAppRpcRequest.computeTransportType(fulfillment.result, fulfillment.rawResult);
93
- let responseBody;
94
- if (transportType === RpcConstants_1.RpcContentType.Binary) {
95
- responseBody = WebAppRpcRequest.configureBinary(fulfillment, res);
96
- }
97
- else if (transportType === RpcConstants_1.RpcContentType.Multipart) {
98
- responseBody = WebAppRpcRequest.configureMultipart(fulfillment, res);
99
- }
100
- else if (transportType === RpcConstants_1.RpcContentType.Stream) {
101
- responseBody = WebAppRpcRequest.configureStream(fulfillment);
102
- }
103
- else {
104
- responseBody = WebAppRpcRequest.configureText(fulfillment, res);
105
- }
106
- WebAppRpcRequest.configureResponse(protocol, request, fulfillment, res);
107
- res.status(fulfillment.status);
108
- if (fulfillment.allowCompression && ((_a = req.header("Accept-Encoding")) === null || _a === void 0 ? void 0 : _a.includes("gzip"))) {
109
- res.set("Content-Encoding", "gzip");
110
- const readableResponseBody = (responseBody instanceof Stream) ? responseBody : Readable.from(responseBody);
111
- responseBody = readableResponseBody.pipe(createGzip());
112
- }
113
- // This check should in theory look for instances of Readable, but that would break backend implementation at
114
- // core/backend/src/RpcBackend.ts
115
- if (responseBody instanceof Stream) {
116
- responseBody.pipe(res);
117
- }
118
- else {
119
- res.send(responseBody);
120
- }
121
- }
122
- /** Determines the most efficient transport type for an RPC value. */
123
- static computeTransportType(value, source) {
124
- if (source instanceof Uint8Array || (Array.isArray(source) && source[0] instanceof Uint8Array)) {
125
- return RpcConstants_1.RpcContentType.Binary;
126
- }
127
- else if (value.data.length > 0) {
128
- return RpcConstants_1.RpcContentType.Multipart;
129
- }
130
- else if (value.stream) {
131
- return RpcConstants_1.RpcContentType.Stream;
132
- }
133
- else {
134
- return RpcConstants_1.RpcContentType.Text;
135
- }
136
- }
137
- /** Sets request header values. */
138
- setHeader(name, value) {
139
- this._headers[name] = value;
140
- }
141
- /** Sends the request. */
142
- async send() {
143
- this._loading = true;
144
- await this.setupTransport();
145
- return new Promise(async (resolve, reject) => {
146
- try {
147
- resolve(await this.performFetch());
148
- }
149
- catch (reason) {
150
- reject(new IModelError_1.ServerError(-1, typeof (reason) === "string" ? reason : "Server connection error."));
151
- }
152
- });
153
- }
154
- computeRetryAfter(attempts) {
155
- const retryAfter = this._response && this._response.headers.get("Retry-After");
156
- if (retryAfter) {
157
- this.resetTransientFaultCount();
158
- const r = Number(retryAfter);
159
- if (Number.isFinite(r)) {
160
- return r * 1000;
161
- }
162
- const d = Date.parse(retryAfter);
163
- if (!Number.isNaN(d)) {
164
- return d - Date.now();
165
- }
166
- }
167
- else {
168
- this.recordTransientFault();
169
- }
170
- return super.computeRetryAfter(attempts);
171
- }
172
- handleUnknownResponse(code) {
173
- if (this.protocol.isTimeout(code)) {
174
- this.reject(new IModelError_1.ServerTimeoutError("Request timeout."));
175
- }
176
- else {
177
- this.reject(new IModelError_1.ServerError(code, "Unknown server response code."));
178
- }
179
- }
180
- async load() {
181
- return new Promise(async (resolve, reject) => {
182
- try {
183
- if (!this._loading)
184
- return;
185
- const response = this._response;
186
- if (!response) {
187
- reject(new IModelError_1.IModelError(core_bentley_1.BentleyStatus.ERROR, "Invalid state."));
188
- return;
189
- }
190
- if (this.protocol.protocolVersionHeaderName) {
191
- const version = response.headers.get(this.protocol.protocolVersionHeaderName);
192
- if (version) {
193
- this.responseProtocolVersion = parseInt(version, 10);
194
- }
195
- }
196
- const contentType = response.headers.get(RpcConstants_1.WEB_RPC_CONSTANTS.CONTENT);
197
- const responseType = WebAppRpcProtocol_1.WebAppRpcProtocol.computeContentType(contentType);
198
- if (responseType === RpcConstants_1.RpcContentType.Binary) {
199
- resolve(await this.loadBinary(response));
200
- }
201
- else if (responseType === RpcConstants_1.RpcContentType.Multipart) {
202
- resolve(await this.loadMultipart(response, contentType));
203
- }
204
- else {
205
- resolve(await this.loadText(response));
206
- }
207
- this._loading = false;
208
- this.setLastUpdatedTime();
209
- this.protocol.events.raiseEvent(RpcConstants_1.RpcProtocolEvent.ResponseLoaded, this);
210
- }
211
- catch (reason) {
212
- if (!this._loading)
213
- return;
214
- this._loading = false;
215
- reject(new IModelError_1.ServerError(this.metadata.status, typeof (reason) === "string" ? reason : "Unknown server response error."));
216
- }
217
- });
218
- }
219
- /** Override to supply an alternate fetch function. */
220
- supplyFetch() {
221
- return fetch;
222
- }
223
- /** Override to supply an alternate Request function. */
224
- supplyRequest() {
225
- return Request;
226
- }
227
- static configureResponse(protocol, request, fulfillment, res) {
228
- const success = protocol.getStatus(fulfillment.status) === RpcConstants_1.RpcRequestStatus.Resolved;
229
- // TODO: Use stale-while-revalidate in cache headers. This needs to be tested, and does not currently have support in the router/caching-service.
230
- // This will allow browsers to use stale cached responses while also revalidating with the router, allowing us to start up a backend if necessary.
231
- // RPC Caching Service uses the s-maxage header to determine the TTL for the redis cache.
232
- const oneHourInSeconds = 3600;
233
- if (success && request.caching === RpcConstants_1.RpcResponseCacheControl.Immutable) {
234
- // If response size is > 50 MB, do not cache it.
235
- if (fulfillment.result.objects.length > (50 * 10 ** 7)) {
236
- res.set("Cache-Control", "no-store");
237
- }
238
- else if (request.operation.operationName === "generateTileContent") {
239
- res.set("Cache-Control", "no-store");
240
- }
241
- else if (request.operation.operationName === "getConnectionProps") {
242
- // GetConnectionprops can't be cached on the browser longer than the lifespan of the backend. The lifespan of backend may shrink too. Keep it at 1 second to be safe.
243
- res.set("Cache-Control", `s-maxage=${oneHourInSeconds * 24}, max-age=1, immutable`);
244
- }
245
- else if (request.operation.operationName === "getTileCacheContainerUrl") {
246
- // getTileCacheContainerUrl returns a SAS with an expiry of 23:59:59. We can't exceed that time when setting the max-age.
247
- res.set("Cache-Control", `s-maxage=${oneHourInSeconds * 23}, max-age=${oneHourInSeconds * 23}, immutable`);
248
- }
249
- else {
250
- res.set("Cache-Control", `s-maxage=${oneHourInSeconds * 24}, max-age=${oneHourInSeconds * 48}, immutable`);
251
- }
252
- }
253
- if (fulfillment.retry) {
254
- res.set("Retry-After", fulfillment.retry);
255
- }
256
- }
257
- static configureText(fulfillment, res) {
258
- res.set(RpcConstants_1.WEB_RPC_CONSTANTS.CONTENT, RpcConstants_1.WEB_RPC_CONSTANTS.TEXT);
259
- return (fulfillment.status === 204) ? "" : fulfillment.result.objects;
260
- }
261
- static configureBinary(fulfillment, res) {
262
- res.set(RpcConstants_1.WEB_RPC_CONSTANTS.CONTENT, RpcConstants_1.WEB_RPC_CONSTANTS.BINARY);
263
- const data = fulfillment.result.data[0];
264
- return buffer_1.Buffer.isBuffer(data) ? data : buffer_1.Buffer.from(data);
265
- }
266
- static configureMultipart(fulfillment, res) {
267
- const response = RpcMultipart_1.RpcMultipart.createStream(fulfillment.result);
268
- const headers = response.getHeaders();
269
- for (const header in headers) {
270
- if (headers.hasOwnProperty(header)) {
271
- res.set(header, headers[header]);
272
- }
273
- }
274
- return response;
275
- }
276
- static configureStream(fulfillment) {
277
- return fulfillment.result.stream;
278
- }
279
- static parseFromPath(operation) {
280
- const decoded = operation.encodedRequest ? buffer_1.Buffer.from(operation.encodedRequest, "base64").toString("binary") : "";
281
- return RpcMarshaling_1.RpcSerializedValue.create(decoded);
282
- }
283
- static async parseFromBody(req) {
284
- const contentType = WebAppRpcProtocol_1.WebAppRpcProtocol.computeContentType(req.header(RpcConstants_1.WEB_RPC_CONSTANTS.CONTENT));
285
- if (contentType === RpcConstants_1.RpcContentType.Binary) {
286
- const objects = JSON.stringify([RpcMarshaling_1.MarshalingBinaryMarker.createDefault()]);
287
- const data = [req.body];
288
- return RpcMarshaling_1.RpcSerializedValue.create(objects, data);
289
- }
290
- else if (contentType === RpcConstants_1.RpcContentType.Multipart) {
291
- return RpcMultipart_1.RpcMultipart.parseRequest(req);
292
- }
293
- else {
294
- return RpcMarshaling_1.RpcSerializedValue.create(req.body);
295
- }
296
- }
297
- async performFetch() {
298
- const requestClass = this.supplyRequest();
299
- const fetchFunction = this.supplyFetch();
300
- const path = new URL(this.path, typeof (location) !== "undefined" ? location.origin : undefined);
301
- if (this._pathSuffix) {
302
- const params = new URLSearchParams();
303
- params.set("parameters", this._pathSuffix);
304
- path.search = `?${params.toString()}`;
305
- }
306
- const request = new requestClass(path.toString(), this._request);
307
- const response = await fetchFunction(request);
308
- this._response = response;
309
- this.metadata.status = response.status;
310
- return response.status;
311
- }
312
- async loadText(response) {
313
- const value = await response.text();
314
- this.metadata.message = value;
315
- return RpcMarshaling_1.RpcSerializedValue.create(value);
316
- }
317
- async loadBinary(response) {
318
- const value = new Uint8Array(await response.arrayBuffer());
319
- const objects = JSON.stringify(RpcMarshaling_1.MarshalingBinaryMarker.createDefault());
320
- return RpcMarshaling_1.RpcSerializedValue.create(objects, [value]);
321
- }
322
- async loadMultipart(response, contentType) {
323
- const data = await response.arrayBuffer();
324
- const value = new RpcMultipartParser_1.RpcMultipartParser(contentType, buffer_1.Buffer.from(data)).parse();
325
- return value;
326
- }
327
- async setupTransport() {
328
- const parameters = (await this.protocol.serialize(this)).parameters;
329
- const transportType = WebAppRpcRequest.computeTransportType(parameters, this.parameters);
330
- if (transportType === RpcConstants_1.RpcContentType.Binary) {
331
- this.setupBinaryTransport(parameters);
332
- }
333
- else if (transportType === RpcConstants_1.RpcContentType.Multipart) {
334
- this.setupMultipartTransport(parameters);
335
- }
336
- else {
337
- this.setupTextTransport(parameters);
338
- }
339
- }
340
- setupBinaryTransport(parameters) {
341
- this._headers[RpcConstants_1.WEB_RPC_CONSTANTS.CONTENT] = RpcConstants_1.WEB_RPC_CONSTANTS.BINARY;
342
- this._request.method = "post";
343
- this._request.body = parameters.data[0];
344
- }
345
- setupMultipartTransport(parameters) {
346
- // IMPORTANT: do not set a multipart Content-Type header value. The browser does this automatically!
347
- delete this._headers[RpcConstants_1.WEB_RPC_CONSTANTS.CONTENT];
348
- this._request.method = "post";
349
- this._request.body = RpcMultipart_1.RpcMultipart.createForm(parameters);
350
- }
351
- setupTextTransport(parameters) {
352
- if (this.operation.policy.allowResponseCaching(this)) {
353
- const encodedBody = btoa(parameters.objects); // eslint-disable-line deprecation/deprecation
354
- if (encodedBody.length <= WebAppRpcRequest.maxUrlComponentSize) {
355
- this._request.method = "get";
356
- this._request.body = undefined;
357
- delete this._headers[RpcConstants_1.WEB_RPC_CONSTANTS.CONTENT];
358
- this._pathSuffix = encodedBody;
359
- return;
360
- }
361
- }
362
- this._pathSuffix = "";
363
- this._headers[RpcConstants_1.WEB_RPC_CONSTANTS.CONTENT] = RpcConstants_1.WEB_RPC_CONSTANTS.TEXT;
364
- this._request.method = "post";
365
- this._request.body = parameters.objects;
366
- }
367
- }
368
- exports.WebAppRpcRequest = WebAppRpcRequest;
369
- /** The maximum size permitted for an encoded component in a URL.
370
- * Note that some backends limit the total cumulative request size. Our current node backends accept requests with a max size of 16 kb.
371
- * In addition to the url size, an authorization header may also add considerably to the request size.
372
- * @note This is used for features like encoding the payload of a cacheable request in the URL.
373
- */
374
- WebAppRpcRequest.maxUrlComponentSize = 1024 * 8;
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.WebAppRpcRequest = void 0;
11
+ const core_bentley_1 = require("@itwin/core-bentley");
12
+ const buffer_1 = require("buffer");
13
+ const IModelError_1 = require("../../IModelError");
14
+ const RpcConstants_1 = require("../core/RpcConstants");
15
+ const RpcMarshaling_1 = require("../core/RpcMarshaling");
16
+ const RpcProtocol_1 = require("../core/RpcProtocol");
17
+ const RpcRequest_1 = require("../core/RpcRequest");
18
+ const RpcMultipartParser_1 = require("./multipart/RpcMultipartParser");
19
+ const RpcMultipart_1 = require("./RpcMultipart");
20
+ const WebAppRpcProtocol_1 = require("./WebAppRpcProtocol");
21
+ /** A web application RPC request.
22
+ * @internal
23
+ */
24
+ class WebAppRpcRequest extends RpcRequest_1.RpcRequest {
25
+ /** Constructs a web application request. */
26
+ constructor(client, operation, parameters) {
27
+ super(client, operation, parameters);
28
+ this._loading = false;
29
+ this._request = {};
30
+ this._pathSuffix = "";
31
+ /** Convenience access to the protocol of this request. */
32
+ this.protocol = this.client.configuration.protocol;
33
+ /** Standardized access to metadata about the request (useful for purposes such as logging). */
34
+ this.metadata = { status: 0, message: "" };
35
+ this.path = this.protocol.supplyPathForOperation(this.operation, this);
36
+ this.method = "head";
37
+ this._request.headers = {};
38
+ }
39
+ get _headers() { return this._request.headers; }
40
+ /** Parse headers */
41
+ static parseHeaders(protocol, req) {
42
+ var _a;
43
+ const headerNames = protocol.serializedClientRequestContextHeaderNames;
44
+ const parsedHeaders = {
45
+ id: req.header(headerNames.id) || "",
46
+ applicationId: req.header(headerNames.applicationId) || "",
47
+ applicationVersion: req.header(headerNames.applicationVersion) || "",
48
+ sessionId: req.header(headerNames.sessionId) || "",
49
+ authorization: (_a = (headerNames.authorization ? req.header(headerNames.authorization) : "")) !== null && _a !== void 0 ? _a : "",
50
+ };
51
+ return parsedHeaders;
52
+ }
53
+ /** Parses a request. */
54
+ static async parseRequest(protocol, req) {
55
+ const operation = protocol.getOperationFromPath(req.url);
56
+ const parsedHeaders = this.parseHeaders(protocol, req);
57
+ const request = {
58
+ ...parsedHeaders,
59
+ operation: {
60
+ interfaceDefinition: operation.interfaceDefinition,
61
+ operationName: operation.operationName,
62
+ interfaceVersion: operation.interfaceVersion,
63
+ },
64
+ method: req.method,
65
+ path: req.url,
66
+ parameters: operation.encodedRequest ? WebAppRpcRequest.parseFromPath(operation) : await WebAppRpcRequest.parseFromBody(req),
67
+ caching: operation.encodedRequest ? RpcConstants_1.RpcResponseCacheControl.Immutable : RpcConstants_1.RpcResponseCacheControl.None,
68
+ };
69
+ request.ip = req.ip;
70
+ request.protocolVersion = 0;
71
+ if (protocol.protocolVersionHeaderName) {
72
+ const version = req.header(protocol.protocolVersionHeaderName);
73
+ if (version) {
74
+ request.protocolVersion = parseInt(version, 10);
75
+ }
76
+ }
77
+ if (!request.id) {
78
+ throw new IModelError_1.IModelError(core_bentley_1.BentleyStatus.ERROR, `Invalid request: Missing required activity ID.`);
79
+ }
80
+ return request;
81
+ }
82
+ /** Sends the response for a web request. */
83
+ static async sendResponse(protocol, request, fulfillment, req, res) {
84
+ var _a;
85
+ const versionHeader = protocol.protocolVersionHeaderName;
86
+ if (versionHeader && RpcProtocol_1.RpcProtocol.protocolVersion) {
87
+ res.set(versionHeader, RpcProtocol_1.RpcProtocol.protocolVersion.toString());
88
+ }
89
+ // eslint-disable-next-line @typescript-eslint/naming-convention
90
+ const { Readable, Stream } = await Promise.resolve().then(() => require(/* webpackIgnore: true */ "stream"));
91
+ const { createGzip } = await Promise.resolve().then(() => require(/* webpackIgnore: true */ "zlib"));
92
+ const transportType = WebAppRpcRequest.computeTransportType(fulfillment.result, fulfillment.rawResult);
93
+ let responseBody;
94
+ if (transportType === RpcConstants_1.RpcContentType.Binary) {
95
+ responseBody = WebAppRpcRequest.configureBinary(fulfillment, res);
96
+ }
97
+ else if (transportType === RpcConstants_1.RpcContentType.Multipart) {
98
+ responseBody = WebAppRpcRequest.configureMultipart(fulfillment, res);
99
+ }
100
+ else if (transportType === RpcConstants_1.RpcContentType.Stream) {
101
+ responseBody = WebAppRpcRequest.configureStream(fulfillment);
102
+ }
103
+ else {
104
+ responseBody = WebAppRpcRequest.configureText(fulfillment, res);
105
+ }
106
+ WebAppRpcRequest.configureResponse(protocol, request, fulfillment, res);
107
+ res.status(fulfillment.status);
108
+ if (fulfillment.allowCompression && ((_a = req.header("Accept-Encoding")) === null || _a === void 0 ? void 0 : _a.includes("gzip"))) {
109
+ res.set("Content-Encoding", "gzip");
110
+ const readableResponseBody = (responseBody instanceof Stream) ? responseBody : Readable.from(responseBody);
111
+ responseBody = readableResponseBody.pipe(createGzip());
112
+ }
113
+ // This check should in theory look for instances of Readable, but that would break backend implementation at
114
+ // core/backend/src/RpcBackend.ts
115
+ if (responseBody instanceof Stream) {
116
+ responseBody.pipe(res);
117
+ }
118
+ else {
119
+ res.send(responseBody);
120
+ }
121
+ }
122
+ /** Determines the most efficient transport type for an RPC value. */
123
+ static computeTransportType(value, source) {
124
+ if (source instanceof Uint8Array || (Array.isArray(source) && source[0] instanceof Uint8Array)) {
125
+ return RpcConstants_1.RpcContentType.Binary;
126
+ }
127
+ else if (value.data.length > 0) {
128
+ return RpcConstants_1.RpcContentType.Multipart;
129
+ }
130
+ else if (value.stream) {
131
+ return RpcConstants_1.RpcContentType.Stream;
132
+ }
133
+ else {
134
+ return RpcConstants_1.RpcContentType.Text;
135
+ }
136
+ }
137
+ /** Sets request header values. */
138
+ setHeader(name, value) {
139
+ this._headers[name] = value;
140
+ }
141
+ /** Sends the request. */
142
+ async send() {
143
+ this._loading = true;
144
+ await this.setupTransport();
145
+ return new Promise(async (resolve, reject) => {
146
+ try {
147
+ resolve(await this.performFetch());
148
+ }
149
+ catch (reason) {
150
+ reject(new IModelError_1.ServerError(-1, typeof (reason) === "string" ? reason : "Server connection error."));
151
+ }
152
+ });
153
+ }
154
+ computeRetryAfter(attempts) {
155
+ const retryAfter = this._response && this._response.headers.get("Retry-After");
156
+ if (retryAfter) {
157
+ this.resetTransientFaultCount();
158
+ const r = Number(retryAfter);
159
+ if (Number.isFinite(r)) {
160
+ return r * 1000;
161
+ }
162
+ const d = Date.parse(retryAfter);
163
+ if (!Number.isNaN(d)) {
164
+ return d - Date.now();
165
+ }
166
+ }
167
+ else {
168
+ this.recordTransientFault();
169
+ }
170
+ return super.computeRetryAfter(attempts);
171
+ }
172
+ handleUnknownResponse(code) {
173
+ if (this.protocol.isTimeout(code)) {
174
+ this.reject(new IModelError_1.ServerTimeoutError("Request timeout."));
175
+ }
176
+ else {
177
+ this.reject(new IModelError_1.ServerError(code, "Unknown server response code."));
178
+ }
179
+ }
180
+ async load() {
181
+ return new Promise(async (resolve, reject) => {
182
+ try {
183
+ if (!this._loading)
184
+ return;
185
+ const response = this._response;
186
+ if (!response) {
187
+ reject(new IModelError_1.IModelError(core_bentley_1.BentleyStatus.ERROR, "Invalid state."));
188
+ return;
189
+ }
190
+ if (this.protocol.protocolVersionHeaderName) {
191
+ const version = response.headers.get(this.protocol.protocolVersionHeaderName);
192
+ if (version) {
193
+ this.responseProtocolVersion = parseInt(version, 10);
194
+ }
195
+ }
196
+ const contentType = response.headers.get(RpcConstants_1.WEB_RPC_CONSTANTS.CONTENT);
197
+ const responseType = WebAppRpcProtocol_1.WebAppRpcProtocol.computeContentType(contentType);
198
+ if (responseType === RpcConstants_1.RpcContentType.Binary) {
199
+ resolve(await this.loadBinary(response));
200
+ }
201
+ else if (responseType === RpcConstants_1.RpcContentType.Multipart) {
202
+ resolve(await this.loadMultipart(response, contentType));
203
+ }
204
+ else {
205
+ resolve(await this.loadText(response));
206
+ }
207
+ this._loading = false;
208
+ this.setLastUpdatedTime();
209
+ this.protocol.events.raiseEvent(RpcConstants_1.RpcProtocolEvent.ResponseLoaded, this);
210
+ }
211
+ catch (reason) {
212
+ if (!this._loading)
213
+ return;
214
+ this._loading = false;
215
+ reject(new IModelError_1.ServerError(this.metadata.status, typeof (reason) === "string" ? reason : "Unknown server response error."));
216
+ }
217
+ });
218
+ }
219
+ /** Override to supply an alternate fetch function. */
220
+ supplyFetch() {
221
+ return fetch;
222
+ }
223
+ /** Override to supply an alternate Request function. */
224
+ supplyRequest() {
225
+ return Request;
226
+ }
227
+ static configureResponse(protocol, request, fulfillment, res) {
228
+ const success = protocol.getStatus(fulfillment.status) === RpcConstants_1.RpcRequestStatus.Resolved;
229
+ // TODO: Use stale-while-revalidate in cache headers. This needs to be tested, and does not currently have support in the router/caching-service.
230
+ // This will allow browsers to use stale cached responses while also revalidating with the router, allowing us to start up a backend if necessary.
231
+ // RPC Caching Service uses the s-maxage header to determine the TTL for the redis cache.
232
+ const oneHourInSeconds = 3600;
233
+ if (success && request.caching === RpcConstants_1.RpcResponseCacheControl.Immutable) {
234
+ // If response size is > 50 MB, do not cache it.
235
+ if (fulfillment.result.objects.length > (50 * 10 ** 7)) {
236
+ res.set("Cache-Control", "no-store");
237
+ }
238
+ else if (request.operation.operationName === "generateTileContent") {
239
+ res.set("Cache-Control", "no-store");
240
+ }
241
+ else if (request.operation.operationName === "getConnectionProps") {
242
+ // GetConnectionprops can't be cached on the browser longer than the lifespan of the backend. The lifespan of backend may shrink too. Keep it at 1 second to be safe.
243
+ res.set("Cache-Control", `s-maxage=${oneHourInSeconds * 24}, max-age=1, immutable`);
244
+ }
245
+ else if (request.operation.operationName === "getTileCacheContainerUrl") {
246
+ // getTileCacheContainerUrl returns a SAS with an expiry of 23:59:59. We can't exceed that time when setting the max-age.
247
+ res.set("Cache-Control", `s-maxage=${oneHourInSeconds * 23}, max-age=${oneHourInSeconds * 23}, immutable`);
248
+ }
249
+ else {
250
+ res.set("Cache-Control", `s-maxage=${oneHourInSeconds * 24}, max-age=${oneHourInSeconds * 48}, immutable`);
251
+ }
252
+ }
253
+ if (fulfillment.retry) {
254
+ res.set("Retry-After", fulfillment.retry);
255
+ }
256
+ }
257
+ static configureText(fulfillment, res) {
258
+ res.set(RpcConstants_1.WEB_RPC_CONSTANTS.CONTENT, RpcConstants_1.WEB_RPC_CONSTANTS.TEXT);
259
+ return (fulfillment.status === 204) ? "" : fulfillment.result.objects;
260
+ }
261
+ static configureBinary(fulfillment, res) {
262
+ res.set(RpcConstants_1.WEB_RPC_CONSTANTS.CONTENT, RpcConstants_1.WEB_RPC_CONSTANTS.BINARY);
263
+ const data = fulfillment.result.data[0];
264
+ return buffer_1.Buffer.isBuffer(data) ? data : buffer_1.Buffer.from(data);
265
+ }
266
+ static configureMultipart(fulfillment, res) {
267
+ const response = RpcMultipart_1.RpcMultipart.createStream(fulfillment.result);
268
+ const headers = response.getHeaders();
269
+ for (const header in headers) {
270
+ if (headers.hasOwnProperty(header)) {
271
+ res.set(header, headers[header]);
272
+ }
273
+ }
274
+ return response;
275
+ }
276
+ static configureStream(fulfillment) {
277
+ return fulfillment.result.stream;
278
+ }
279
+ static parseFromPath(operation) {
280
+ const decoded = operation.encodedRequest ? buffer_1.Buffer.from(operation.encodedRequest, "base64").toString("binary") : "";
281
+ return RpcMarshaling_1.RpcSerializedValue.create(decoded);
282
+ }
283
+ static async parseFromBody(req) {
284
+ const contentType = WebAppRpcProtocol_1.WebAppRpcProtocol.computeContentType(req.header(RpcConstants_1.WEB_RPC_CONSTANTS.CONTENT));
285
+ if (contentType === RpcConstants_1.RpcContentType.Binary) {
286
+ const objects = JSON.stringify([RpcMarshaling_1.MarshalingBinaryMarker.createDefault()]);
287
+ const data = [req.body];
288
+ return RpcMarshaling_1.RpcSerializedValue.create(objects, data);
289
+ }
290
+ else if (contentType === RpcConstants_1.RpcContentType.Multipart) {
291
+ return RpcMultipart_1.RpcMultipart.parseRequest(req);
292
+ }
293
+ else {
294
+ return RpcMarshaling_1.RpcSerializedValue.create(req.body);
295
+ }
296
+ }
297
+ async performFetch() {
298
+ const requestClass = this.supplyRequest();
299
+ const fetchFunction = this.supplyFetch();
300
+ const path = new URL(this.path, typeof (location) !== "undefined" ? location.origin : undefined);
301
+ if (this._pathSuffix) {
302
+ const params = new URLSearchParams();
303
+ params.set("parameters", this._pathSuffix);
304
+ path.search = `?${params.toString()}`;
305
+ }
306
+ const request = new requestClass(path.toString(), this._request);
307
+ const response = await fetchFunction(request);
308
+ this._response = response;
309
+ this.metadata.status = response.status;
310
+ return response.status;
311
+ }
312
+ async loadText(response) {
313
+ const value = await response.text();
314
+ this.metadata.message = value;
315
+ return RpcMarshaling_1.RpcSerializedValue.create(value);
316
+ }
317
+ async loadBinary(response) {
318
+ const value = new Uint8Array(await response.arrayBuffer());
319
+ const objects = JSON.stringify(RpcMarshaling_1.MarshalingBinaryMarker.createDefault());
320
+ return RpcMarshaling_1.RpcSerializedValue.create(objects, [value]);
321
+ }
322
+ async loadMultipart(response, contentType) {
323
+ const data = await response.arrayBuffer();
324
+ const value = new RpcMultipartParser_1.RpcMultipartParser(contentType, buffer_1.Buffer.from(data)).parse();
325
+ return value;
326
+ }
327
+ async setupTransport() {
328
+ const parameters = (await this.protocol.serialize(this)).parameters;
329
+ const transportType = WebAppRpcRequest.computeTransportType(parameters, this.parameters);
330
+ if (transportType === RpcConstants_1.RpcContentType.Binary) {
331
+ this.setupBinaryTransport(parameters);
332
+ }
333
+ else if (transportType === RpcConstants_1.RpcContentType.Multipart) {
334
+ this.setupMultipartTransport(parameters);
335
+ }
336
+ else {
337
+ this.setupTextTransport(parameters);
338
+ }
339
+ }
340
+ setupBinaryTransport(parameters) {
341
+ this._headers[RpcConstants_1.WEB_RPC_CONSTANTS.CONTENT] = RpcConstants_1.WEB_RPC_CONSTANTS.BINARY;
342
+ this._request.method = "post";
343
+ this._request.body = parameters.data[0];
344
+ }
345
+ setupMultipartTransport(parameters) {
346
+ // IMPORTANT: do not set a multipart Content-Type header value. The browser does this automatically!
347
+ delete this._headers[RpcConstants_1.WEB_RPC_CONSTANTS.CONTENT];
348
+ this._request.method = "post";
349
+ this._request.body = RpcMultipart_1.RpcMultipart.createForm(parameters);
350
+ }
351
+ setupTextTransport(parameters) {
352
+ if (this.operation.policy.allowResponseCaching(this)) {
353
+ const encodedBody = btoa(parameters.objects); // eslint-disable-line deprecation/deprecation
354
+ if (encodedBody.length <= WebAppRpcRequest.maxUrlComponentSize) {
355
+ this._request.method = "get";
356
+ this._request.body = undefined;
357
+ delete this._headers[RpcConstants_1.WEB_RPC_CONSTANTS.CONTENT];
358
+ this._pathSuffix = encodedBody;
359
+ return;
360
+ }
361
+ }
362
+ this._pathSuffix = "";
363
+ this._headers[RpcConstants_1.WEB_RPC_CONSTANTS.CONTENT] = RpcConstants_1.WEB_RPC_CONSTANTS.TEXT;
364
+ this._request.method = "post";
365
+ this._request.body = parameters.objects;
366
+ }
367
+ }
368
+ exports.WebAppRpcRequest = WebAppRpcRequest;
369
+ /** The maximum size permitted for an encoded component in a URL.
370
+ * Note that some backends limit the total cumulative request size. Our current node backends accept requests with a max size of 16 kb.
371
+ * In addition to the url size, an authorization header may also add considerably to the request size.
372
+ * @note This is used for features like encoding the payload of a cacheable request in the URL.
373
+ */
374
+ WebAppRpcRequest.maxUrlComponentSize = 1024 * 8;
375
375
  //# sourceMappingURL=WebAppRpcRequest.js.map