@itwin/core-common 3.5.0-dev.26 → 3.5.0-dev.27

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