@itwin/core-common 3.6.0-dev.14 → 3.6.0-dev.21

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 (948) hide show
  1. package/CHANGELOG.md +8 -1
  2. package/lib/cjs/AmbientOcclusion.d.ts +49 -49
  3. package/lib/cjs/AmbientOcclusion.js +55 -55
  4. package/lib/cjs/AmbientOcclusion.js.map +1 -1
  5. package/lib/cjs/AnalysisStyle.d.ts +134 -134
  6. package/lib/cjs/AnalysisStyle.js +165 -165
  7. package/lib/cjs/AnalysisStyle.js.map +1 -1
  8. package/lib/cjs/AuthorizationClient.d.ts +11 -11
  9. package/lib/cjs/AuthorizationClient.js +9 -9
  10. package/lib/cjs/AuthorizationClient.js.map +1 -1
  11. package/lib/cjs/BackendTypes.d.ts +12 -12
  12. package/lib/cjs/BackendTypes.js +9 -9
  13. package/lib/cjs/BackendTypes.js.map +1 -1
  14. package/lib/cjs/BackgroundMapProvider.d.ts +51 -51
  15. package/lib/cjs/BackgroundMapProvider.js +68 -68
  16. package/lib/cjs/BackgroundMapProvider.js.map +1 -1
  17. package/lib/cjs/BackgroundMapSettings.d.ts +136 -136
  18. package/lib/cjs/BackgroundMapSettings.js +156 -156
  19. package/lib/cjs/BackgroundMapSettings.js.map +1 -1
  20. package/lib/cjs/Base64EncodedString.d.ts +32 -32
  21. package/lib/cjs/Base64EncodedString.js +66 -66
  22. package/lib/cjs/Base64EncodedString.js.map +1 -1
  23. package/lib/cjs/BlobReader.d.ts +31 -31
  24. package/lib/cjs/BlobReader.js +84 -84
  25. package/lib/cjs/BlobReader.js.map +1 -1
  26. package/lib/cjs/BriefcaseTypes.d.ts +189 -189
  27. package/lib/cjs/BriefcaseTypes.js +95 -95
  28. package/lib/cjs/BriefcaseTypes.js.map +1 -1
  29. package/lib/cjs/Camera.d.ts +42 -42
  30. package/lib/cjs/Camera.js +62 -62
  31. package/lib/cjs/Camera.js.map +1 -1
  32. package/lib/cjs/ChangedElements.d.ts +85 -85
  33. package/lib/cjs/ChangedElements.js +23 -23
  34. package/lib/cjs/ChangedElements.js.map +1 -1
  35. package/lib/cjs/ChangedEntities.d.ts +45 -45
  36. package/lib/cjs/ChangedEntities.js +9 -9
  37. package/lib/cjs/ChangedEntities.js.map +1 -1
  38. package/lib/cjs/ChangesetProps.d.ts +98 -98
  39. package/lib/cjs/ChangesetProps.js +22 -22
  40. package/lib/cjs/ChangesetProps.js.map +1 -1
  41. package/lib/cjs/ClipStyle.d.ts +89 -89
  42. package/lib/cjs/ClipStyle.js +123 -123
  43. package/lib/cjs/ClipStyle.js.map +1 -1
  44. package/lib/cjs/CloudStorage.d.ts +62 -62
  45. package/lib/cjs/CloudStorage.js +113 -113
  46. package/lib/cjs/CloudStorage.js.map +1 -1
  47. package/lib/cjs/CloudStorageTileCache.d.ts +27 -27
  48. package/lib/cjs/CloudStorageTileCache.js +66 -66
  49. package/lib/cjs/CloudStorageTileCache.js.map +1 -1
  50. package/lib/cjs/Code.d.ts +256 -256
  51. package/lib/cjs/Code.js +281 -281
  52. package/lib/cjs/Code.js.map +1 -1
  53. package/lib/cjs/ColorByName.d.ts +161 -161
  54. package/lib/cjs/ColorByName.js +169 -169
  55. package/lib/cjs/ColorByName.js.map +1 -1
  56. package/lib/cjs/ColorDef.d.ts +208 -208
  57. package/lib/cjs/ColorDef.js +571 -571
  58. package/lib/cjs/ColorDef.js.map +1 -1
  59. package/lib/cjs/CommonLoggerCategory.d.ts +18 -18
  60. package/lib/cjs/CommonLoggerCategory.js +26 -26
  61. package/lib/cjs/CommonLoggerCategory.js.map +1 -1
  62. package/lib/cjs/ConcurrentQuery.d.ts +421 -421
  63. package/lib/cjs/ConcurrentQuery.js +552 -552
  64. package/lib/cjs/ConcurrentQuery.js.map +1 -1
  65. package/lib/cjs/ContextRealityModel.d.ts +276 -276
  66. package/lib/cjs/ContextRealityModel.js +358 -358
  67. package/lib/cjs/ContextRealityModel.js.map +1 -1
  68. package/lib/cjs/DisplayStyleSettings.d.ts +584 -584
  69. package/lib/cjs/DisplayStyleSettings.js +981 -981
  70. package/lib/cjs/DisplayStyleSettings.js.map +1 -1
  71. package/lib/cjs/ECSchemaProps.d.ts +39 -39
  72. package/lib/cjs/ECSchemaProps.js +9 -9
  73. package/lib/cjs/ECSchemaProps.js.map +1 -1
  74. package/lib/cjs/ECSqlReader.d.ts +70 -70
  75. package/lib/cjs/ECSqlReader.js +280 -280
  76. package/lib/cjs/ECSqlReader.js.map +1 -1
  77. package/lib/cjs/ECSqlTypes.d.ts +128 -128
  78. package/lib/cjs/ECSqlTypes.js +189 -189
  79. package/lib/cjs/ECSqlTypes.js.map +1 -1
  80. package/lib/cjs/ElementMesh.d.ts +39 -39
  81. package/lib/cjs/ElementMesh.js +56 -56
  82. package/lib/cjs/ElementMesh.js.map +1 -1
  83. package/lib/cjs/ElementProps.d.ts +479 -479
  84. package/lib/cjs/ElementProps.js +99 -99
  85. package/lib/cjs/ElementProps.js.map +1 -1
  86. package/lib/cjs/EmphasizeElementsProps.d.ts +55 -55
  87. package/lib/cjs/EmphasizeElementsProps.js +25 -25
  88. package/lib/cjs/EmphasizeElementsProps.js.map +1 -1
  89. package/lib/cjs/EntityProps.d.ts +176 -176
  90. package/lib/cjs/EntityProps.js +112 -112
  91. package/lib/cjs/EntityProps.js.map +1 -1
  92. package/lib/cjs/EntityReference.d.ts +51 -51
  93. package/lib/cjs/EntityReference.js +56 -56
  94. package/lib/cjs/EntityReference.js.map +1 -1
  95. package/lib/cjs/Environment.d.ts +61 -61
  96. package/lib/cjs/Environment.js +73 -73
  97. package/lib/cjs/Environment.js.map +1 -1
  98. package/lib/cjs/FeatureGates.d.ts +31 -31
  99. package/lib/cjs/FeatureGates.js +55 -55
  100. package/lib/cjs/FeatureGates.js.map +1 -1
  101. package/lib/cjs/FeatureIndex.d.ts +39 -39
  102. package/lib/cjs/FeatureIndex.js +63 -63
  103. package/lib/cjs/FeatureIndex.js.map +1 -1
  104. package/lib/cjs/FeatureSymbology.d.ts +444 -444
  105. package/lib/cjs/FeatureSymbology.js +614 -614
  106. package/lib/cjs/FeatureSymbology.js.map +1 -1
  107. package/lib/cjs/FeatureTable.d.ts +141 -141
  108. package/lib/cjs/FeatureTable.js +278 -278
  109. package/lib/cjs/FeatureTable.js.map +1 -1
  110. package/lib/cjs/Fonts.d.ts +51 -51
  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.js +292 -292
  115. package/lib/cjs/Frustum.js.map +1 -1
  116. package/lib/cjs/GeoCoordinateServices.d.ts +119 -119
  117. package/lib/cjs/GeoCoordinateServices.js +80 -80
  118. package/lib/cjs/GeoCoordinateServices.js.map +1 -1
  119. package/lib/cjs/GeometryContainment.d.ts +28 -28
  120. package/lib/cjs/GeometryContainment.js +9 -9
  121. package/lib/cjs/GeometryContainment.js.map +1 -1
  122. package/lib/cjs/GeometryParams.d.ts +130 -130
  123. package/lib/cjs/GeometryParams.js +174 -174
  124. package/lib/cjs/GeometryParams.js.map +1 -1
  125. package/lib/cjs/GeometrySummary.d.ts +45 -45
  126. package/lib/cjs/GeometrySummary.js +23 -23
  127. package/lib/cjs/GeometrySummary.js.map +1 -1
  128. package/lib/cjs/Gradient.d.ts +139 -139
  129. package/lib/cjs/Gradient.js +455 -455
  130. package/lib/cjs/Gradient.js.map +1 -1
  131. package/lib/cjs/GraphicParams.d.ts +58 -58
  132. package/lib/cjs/GraphicParams.js +85 -85
  133. package/lib/cjs/GraphicParams.js.map +1 -1
  134. package/lib/cjs/GroundPlane.d.ts +52 -52
  135. package/lib/cjs/GroundPlane.js +64 -64
  136. package/lib/cjs/GroundPlane.js.map +1 -1
  137. package/lib/cjs/HSLColor.d.ts +20 -20
  138. package/lib/cjs/HSLColor.js +32 -32
  139. package/lib/cjs/HSLColor.js.map +1 -1
  140. package/lib/cjs/HSVColor.d.ts +30 -30
  141. package/lib/cjs/HSVColor.js +59 -59
  142. package/lib/cjs/HSVColor.js.map +1 -1
  143. package/lib/cjs/HiddenLine.d.ts +97 -97
  144. package/lib/cjs/HiddenLine.js +162 -162
  145. package/lib/cjs/HiddenLine.js.map +1 -1
  146. package/lib/cjs/Hilite.d.ts +50 -50
  147. package/lib/cjs/Hilite.js +64 -64
  148. package/lib/cjs/Hilite.js.map +1 -1
  149. package/lib/cjs/IModel.d.ts +359 -359
  150. package/lib/cjs/IModel.js +347 -347
  151. package/lib/cjs/IModel.js.map +1 -1
  152. package/lib/cjs/IModelError.d.ts +36 -36
  153. package/lib/cjs/IModelError.js +72 -72
  154. package/lib/cjs/IModelError.js.map +1 -1
  155. package/lib/cjs/IModelVersion.d.ts +68 -68
  156. package/lib/cjs/IModelVersion.js +79 -79
  157. package/lib/cjs/IModelVersion.js.map +1 -1
  158. package/lib/cjs/Image.d.ts +86 -86
  159. package/lib/cjs/Image.js +128 -128
  160. package/lib/cjs/Image.js.map +1 -1
  161. package/lib/cjs/IpcAppProps.d.ts +141 -141
  162. package/lib/cjs/IpcAppProps.js +23 -23
  163. package/lib/cjs/IpcAppProps.js.map +1 -1
  164. package/lib/cjs/LightSettings.d.ts +224 -224
  165. package/lib/cjs/LightSettings.js +309 -309
  166. package/lib/cjs/LightSettings.js.map +1 -1
  167. package/lib/cjs/LinePixels.d.ts +34 -34
  168. package/lib/cjs/LinePixels.js +42 -42
  169. package/lib/cjs/LinePixels.js.map +1 -1
  170. package/lib/cjs/Localization.d.ts +113 -113
  171. package/lib/cjs/Localization.js +26 -26
  172. package/lib/cjs/Localization.js.map +1 -1
  173. package/lib/cjs/MapImagerySettings.d.ts +62 -62
  174. package/lib/cjs/MapImagerySettings.js +80 -80
  175. package/lib/cjs/MapImagerySettings.js.map +1 -1
  176. package/lib/cjs/MapLayerSettings.d.ts +272 -272
  177. package/lib/cjs/MapLayerSettings.js +411 -411
  178. package/lib/cjs/MapLayerSettings.js.map +1 -1
  179. package/lib/cjs/MassProperties.d.ts +64 -64
  180. package/lib/cjs/MassProperties.js +23 -23
  181. package/lib/cjs/MassProperties.js.map +1 -1
  182. package/lib/cjs/MaterialProps.d.ts +118 -118
  183. package/lib/cjs/MaterialProps.js +23 -23
  184. package/lib/cjs/MaterialProps.js.map +1 -1
  185. package/lib/cjs/ModelClipGroup.d.ts +67 -67
  186. package/lib/cjs/ModelClipGroup.js +98 -98
  187. package/lib/cjs/ModelClipGroup.js.map +1 -1
  188. package/lib/cjs/ModelGeometryChanges.d.ts +107 -107
  189. package/lib/cjs/ModelGeometryChanges.js +83 -83
  190. package/lib/cjs/ModelGeometryChanges.js.map +1 -1
  191. package/lib/cjs/ModelProps.d.ts +67 -67
  192. package/lib/cjs/ModelProps.js +9 -9
  193. package/lib/cjs/ModelProps.js.map +1 -1
  194. package/lib/cjs/NativeAppProps.d.ts +122 -122
  195. package/lib/cjs/NativeAppProps.js +30 -30
  196. package/lib/cjs/NativeAppProps.js.map +1 -1
  197. package/lib/cjs/OctEncodedNormal.d.ts +33 -33
  198. package/lib/cjs/OctEncodedNormal.js +98 -98
  199. package/lib/cjs/OctEncodedNormal.js.map +1 -1
  200. package/lib/cjs/PlanProjectionSettings.d.ts +47 -47
  201. package/lib/cjs/PlanProjectionSettings.js +63 -63
  202. package/lib/cjs/PlanProjectionSettings.js.map +1 -1
  203. package/lib/cjs/PlanarClipMask.d.ts +177 -177
  204. package/lib/cjs/PlanarClipMask.js +136 -136
  205. package/lib/cjs/PlanarClipMask.js.map +1 -1
  206. package/lib/cjs/QPoint.d.ts +479 -479
  207. package/lib/cjs/QPoint.js +826 -826
  208. package/lib/cjs/QPoint.js.map +1 -1
  209. package/lib/cjs/RealityDataAccessProps.d.ts +41 -41
  210. package/lib/cjs/RealityDataAccessProps.js +19 -19
  211. package/lib/cjs/RealityDataAccessProps.js.map +1 -1
  212. package/lib/cjs/RealityModelDisplaySettings.d.ts +183 -183
  213. package/lib/cjs/RealityModelDisplaySettings.js +142 -142
  214. package/lib/cjs/RealityModelDisplaySettings.js.map +1 -1
  215. package/lib/cjs/Render.d.ts +89 -89
  216. package/lib/cjs/Render.js +177 -177
  217. package/lib/cjs/Render.js.map +1 -1
  218. package/lib/cjs/RenderMaterial.d.ts +58 -58
  219. package/lib/cjs/RenderMaterial.js +76 -76
  220. package/lib/cjs/RenderMaterial.js.map +1 -1
  221. package/lib/cjs/RenderSchedule.d.ts +543 -543
  222. package/lib/cjs/RenderSchedule.js +1002 -1002
  223. package/lib/cjs/RenderTexture.d.ts +70 -70
  224. package/lib/cjs/RenderTexture.js +59 -59
  225. package/lib/cjs/RenderTexture.js.map +1 -1
  226. package/lib/cjs/RgbColor.d.ts +47 -47
  227. package/lib/cjs/RgbColor.js +77 -77
  228. package/lib/cjs/RgbColor.js.map +1 -1
  229. package/lib/cjs/RpcInterface.d.ts +33 -33
  230. package/lib/cjs/RpcInterface.js +137 -137
  231. package/lib/cjs/RpcInterface.js.map +1 -1
  232. package/lib/cjs/RpcManager.d.ts +40 -40
  233. package/lib/cjs/RpcManager.js +55 -55
  234. package/lib/cjs/RpcManager.js.map +1 -1
  235. package/lib/cjs/SessionProps.d.ts +16 -16
  236. package/lib/cjs/SessionProps.js +9 -9
  237. package/lib/cjs/SessionProps.js.map +1 -1
  238. package/lib/cjs/SkyBox.d.ts +215 -215
  239. package/lib/cjs/SkyBox.js +210 -210
  240. package/lib/cjs/SkyBox.js.map +1 -1
  241. package/lib/cjs/Snapping.d.ts +49 -49
  242. package/lib/cjs/Snapping.js +9 -9
  243. package/lib/cjs/Snapping.js.map +1 -1
  244. package/lib/cjs/SolarCalculate.d.ts +27 -27
  245. package/lib/cjs/SolarCalculate.js +211 -211
  246. package/lib/cjs/SolarCalculate.js.map +1 -1
  247. package/lib/cjs/SolarShadows.d.ts +35 -35
  248. package/lib/cjs/SolarShadows.js +62 -62
  249. package/lib/cjs/SolarShadows.js.map +1 -1
  250. package/lib/cjs/SpatialClassification.d.ts +208 -208
  251. package/lib/cjs/SpatialClassification.js +340 -340
  252. package/lib/cjs/SpatialClassification.js.map +1 -1
  253. package/lib/cjs/SubCategoryAppearance.d.ts +91 -91
  254. package/lib/cjs/SubCategoryAppearance.js +96 -96
  255. package/lib/cjs/SubCategoryAppearance.js.map +1 -1
  256. package/lib/cjs/SubCategoryOverride.d.ts +46 -46
  257. package/lib/cjs/SubCategoryOverride.js +104 -104
  258. package/lib/cjs/SubCategoryOverride.js.map +1 -1
  259. package/lib/cjs/TerrainSettings.d.ts +82 -82
  260. package/lib/cjs/TerrainSettings.js +102 -102
  261. package/lib/cjs/TerrainSettings.js.map +1 -1
  262. package/lib/cjs/TextureMapping.d.ts +116 -116
  263. package/lib/cjs/TextureMapping.js +174 -174
  264. package/lib/cjs/TextureMapping.js.map +1 -1
  265. package/lib/cjs/TextureProps.d.ts +65 -65
  266. package/lib/cjs/TextureProps.js +28 -28
  267. package/lib/cjs/TextureProps.js.map +1 -1
  268. package/lib/cjs/ThematicDisplay.d.ts +230 -230
  269. package/lib/cjs/ThematicDisplay.js +344 -344
  270. package/lib/cjs/ThematicDisplay.js.map +1 -1
  271. package/lib/cjs/Thumbnail.d.ts +26 -26
  272. package/lib/cjs/Thumbnail.js +9 -9
  273. package/lib/cjs/Thumbnail.js.map +1 -1
  274. package/lib/cjs/TileProps.d.ts +82 -82
  275. package/lib/cjs/TileProps.js +29 -29
  276. package/lib/cjs/TileProps.js.map +1 -1
  277. package/lib/cjs/Tween.d.ts +191 -191
  278. package/lib/cjs/Tween.js +570 -570
  279. package/lib/cjs/Tween.js.map +1 -1
  280. package/lib/cjs/TxnAction.d.ts +21 -21
  281. package/lib/cjs/TxnAction.js +29 -29
  282. package/lib/cjs/TxnAction.js.map +1 -1
  283. package/lib/cjs/ViewDetails.d.ts +125 -125
  284. package/lib/cjs/ViewDetails.js +166 -166
  285. package/lib/cjs/ViewDetails.js.map +1 -1
  286. package/lib/cjs/ViewFlags.d.ts +291 -291
  287. package/lib/cjs/ViewFlags.js +368 -368
  288. package/lib/cjs/ViewFlags.js.map +1 -1
  289. package/lib/cjs/ViewProps.d.ts +205 -205
  290. package/lib/cjs/ViewProps.js +9 -9
  291. package/lib/cjs/ViewProps.js.map +1 -1
  292. package/lib/cjs/WhiteOnWhiteReversalSettings.d.ts +36 -36
  293. package/lib/cjs/WhiteOnWhiteReversalSettings.js +37 -37
  294. package/lib/cjs/WhiteOnWhiteReversalSettings.js.map +1 -1
  295. package/lib/cjs/core-common.d.ts +245 -245
  296. package/lib/cjs/core-common.js +261 -261
  297. package/lib/cjs/core-common.js.map +1 -1
  298. package/lib/cjs/domains/FunctionalElementProps.d.ts +11 -11
  299. package/lib/cjs/domains/FunctionalElementProps.js +9 -9
  300. package/lib/cjs/domains/FunctionalElementProps.js.map +1 -1
  301. package/lib/cjs/domains/GenericElementProps.d.ts +18 -18
  302. package/lib/cjs/domains/GenericElementProps.js +9 -9
  303. package/lib/cjs/domains/GenericElementProps.js.map +1 -1
  304. package/lib/cjs/geometry/AdditionalTransform.d.ts +84 -84
  305. package/lib/cjs/geometry/AdditionalTransform.js +85 -85
  306. package/lib/cjs/geometry/AdditionalTransform.js.map +1 -1
  307. package/lib/cjs/geometry/AreaPattern.d.ts +82 -82
  308. package/lib/cjs/geometry/AreaPattern.js +204 -204
  309. package/lib/cjs/geometry/AreaPattern.js.map +1 -1
  310. package/lib/cjs/geometry/BoundingSphere.d.ts +14 -14
  311. package/lib/cjs/geometry/BoundingSphere.js +30 -30
  312. package/lib/cjs/geometry/BoundingSphere.js.map +1 -1
  313. package/lib/cjs/geometry/Cartographic.d.ts +137 -137
  314. package/lib/cjs/geometry/Cartographic.js +345 -345
  315. package/lib/cjs/geometry/Cartographic.js.map +1 -1
  316. package/lib/cjs/geometry/CoordinateReferenceSystem.d.ts +269 -269
  317. package/lib/cjs/geometry/CoordinateReferenceSystem.js +261 -261
  318. package/lib/cjs/geometry/CoordinateReferenceSystem.js.map +1 -1
  319. package/lib/cjs/geometry/ElementGeometry.d.ts +402 -402
  320. package/lib/cjs/geometry/ElementGeometry.js +1719 -1719
  321. package/lib/cjs/geometry/ElementGeometry.js.map +1 -1
  322. package/lib/cjs/geometry/ElementGeometryFB.d.ts +2372 -2372
  323. package/lib/cjs/geometry/ElementGeometryFB.js +3814 -3814
  324. package/lib/cjs/geometry/ElementGeometryFB.js.map +1 -1
  325. package/lib/cjs/geometry/FrustumPlanes.d.ts +32 -32
  326. package/lib/cjs/geometry/FrustumPlanes.js +132 -132
  327. package/lib/cjs/geometry/FrustumPlanes.js.map +1 -1
  328. package/lib/cjs/geometry/GeodeticDatum.d.ts +409 -409
  329. package/lib/cjs/geometry/GeodeticDatum.js +401 -401
  330. package/lib/cjs/geometry/GeodeticDatum.js.map +1 -1
  331. package/lib/cjs/geometry/GeodeticEllipsoid.d.ts +72 -72
  332. package/lib/cjs/geometry/GeodeticEllipsoid.js +72 -72
  333. package/lib/cjs/geometry/GeodeticEllipsoid.js.map +1 -1
  334. package/lib/cjs/geometry/GeometryStream.d.ts +347 -347
  335. package/lib/cjs/geometry/GeometryStream.js +469 -469
  336. package/lib/cjs/geometry/GeometryStream.js.map +1 -1
  337. package/lib/cjs/geometry/ImageGraphic.d.ts +74 -74
  338. package/lib/cjs/geometry/ImageGraphic.js +98 -98
  339. package/lib/cjs/geometry/ImageGraphic.js.map +1 -1
  340. package/lib/cjs/geometry/LineStyle.d.ts +71 -71
  341. package/lib/cjs/geometry/LineStyle.js +129 -129
  342. package/lib/cjs/geometry/LineStyle.js.map +1 -1
  343. package/lib/cjs/geometry/Placement.d.ts +95 -95
  344. package/lib/cjs/geometry/Placement.js +131 -131
  345. package/lib/cjs/geometry/Placement.js.map +1 -1
  346. package/lib/cjs/geometry/Projection.d.ts +251 -251
  347. package/lib/cjs/geometry/Projection.js +198 -198
  348. package/lib/cjs/geometry/Projection.js.map +1 -1
  349. package/lib/cjs/geometry/TextString.d.ts +55 -55
  350. package/lib/cjs/geometry/TextString.js +65 -65
  351. package/lib/cjs/geometry/TextString.js.map +1 -1
  352. package/lib/cjs/ipc/IpcSession.d.ts +23 -23
  353. package/lib/cjs/ipc/IpcSession.js +27 -27
  354. package/lib/cjs/ipc/IpcSession.js.map +1 -1
  355. package/lib/cjs/ipc/IpcSocket.d.ts +96 -96
  356. package/lib/cjs/ipc/IpcSocket.js +16 -16
  357. package/lib/cjs/ipc/IpcSocket.js.map +1 -1
  358. package/lib/cjs/ipc/IpcWebSocket.d.ts +61 -61
  359. package/lib/cjs/ipc/IpcWebSocket.js +151 -151
  360. package/lib/cjs/ipc/IpcWebSocket.js.map +1 -1
  361. package/lib/cjs/ipc/IpcWebSocketTransport.d.ts +15 -15
  362. package/lib/cjs/ipc/IpcWebSocketTransport.js +160 -160
  363. package/lib/cjs/ipc/IpcWebSocketTransport.js.map +1 -1
  364. package/lib/cjs/rpc/DevToolsRpcInterface.d.ts +32 -32
  365. package/lib/cjs/rpc/DevToolsRpcInterface.js +48 -48
  366. package/lib/cjs/rpc/DevToolsRpcInterface.js.map +1 -1
  367. package/lib/cjs/rpc/IModelReadRpcInterface.d.ts +99 -99
  368. package/lib/cjs/rpc/IModelReadRpcInterface.js +122 -122
  369. package/lib/cjs/rpc/IModelReadRpcInterface.js.map +1 -1
  370. package/lib/cjs/rpc/IModelTileRpcInterface.d.ts +61 -61
  371. package/lib/cjs/rpc/IModelTileRpcInterface.js +96 -96
  372. package/lib/cjs/rpc/IModelTileRpcInterface.js.map +1 -1
  373. package/lib/cjs/rpc/SnapshotIModelRpcInterface.d.ts +23 -23
  374. package/lib/cjs/rpc/SnapshotIModelRpcInterface.js +48 -48
  375. package/lib/cjs/rpc/SnapshotIModelRpcInterface.js.map +1 -1
  376. package/lib/cjs/rpc/TestRpcManager.d.ts +20 -20
  377. package/lib/cjs/rpc/TestRpcManager.js +39 -39
  378. package/lib/cjs/rpc/TestRpcManager.js.map +1 -1
  379. package/lib/cjs/rpc/WipRpcInterface.d.ts +29 -29
  380. package/lib/cjs/rpc/WipRpcInterface.js +40 -40
  381. package/lib/cjs/rpc/WipRpcInterface.js.map +1 -1
  382. package/lib/cjs/rpc/core/RpcConfiguration.d.ts +111 -111
  383. package/lib/cjs/rpc/core/RpcConfiguration.js +191 -191
  384. package/lib/cjs/rpc/core/RpcConfiguration.js.map +1 -1
  385. package/lib/cjs/rpc/core/RpcConstants.d.ts +85 -85
  386. package/lib/cjs/rpc/core/RpcConstants.js +103 -103
  387. package/lib/cjs/rpc/core/RpcConstants.js.map +1 -1
  388. package/lib/cjs/rpc/core/RpcControl.d.ts +54 -54
  389. package/lib/cjs/rpc/core/RpcControl.js +144 -144
  390. package/lib/cjs/rpc/core/RpcControl.js.map +1 -1
  391. package/lib/cjs/rpc/core/RpcInvocation.d.ts +89 -89
  392. package/lib/cjs/rpc/core/RpcInvocation.js +258 -258
  393. package/lib/cjs/rpc/core/RpcInvocation.js.map +1 -1
  394. package/lib/cjs/rpc/core/RpcMarshaling.d.ts +35 -35
  395. package/lib/cjs/rpc/core/RpcMarshaling.js +156 -156
  396. package/lib/cjs/rpc/core/RpcMarshaling.js.map +1 -1
  397. package/lib/cjs/rpc/core/RpcOperation.d.ts +67 -67
  398. package/lib/cjs/rpc/core/RpcOperation.js +133 -133
  399. package/lib/cjs/rpc/core/RpcOperation.js.map +1 -1
  400. package/lib/cjs/rpc/core/RpcPendingQueue.d.ts +21 -21
  401. package/lib/cjs/rpc/core/RpcPendingQueue.js +94 -94
  402. package/lib/cjs/rpc/core/RpcPendingQueue.js.map +1 -1
  403. package/lib/cjs/rpc/core/RpcProtocol.d.ts +132 -132
  404. package/lib/cjs/rpc/core/RpcProtocol.js +127 -127
  405. package/lib/cjs/rpc/core/RpcProtocol.js.map +1 -1
  406. package/lib/cjs/rpc/core/RpcPush.d.ts +68 -68
  407. package/lib/cjs/rpc/core/RpcPush.js +127 -127
  408. package/lib/cjs/rpc/core/RpcPush.js.map +1 -1
  409. package/lib/cjs/rpc/core/RpcRegistry.d.ts +48 -48
  410. package/lib/cjs/rpc/core/RpcRegistry.js +198 -198
  411. package/lib/cjs/rpc/core/RpcRegistry.js.map +1 -1
  412. package/lib/cjs/rpc/core/RpcRequest.d.ts +186 -186
  413. package/lib/cjs/rpc/core/RpcRequest.js +477 -477
  414. package/lib/cjs/rpc/core/RpcRequest.js.map +1 -1
  415. package/lib/cjs/rpc/core/RpcRequestContext.d.ts +14 -14
  416. package/lib/cjs/rpc/core/RpcRequestContext.js +2 -2
  417. package/lib/cjs/rpc/core/RpcRequestContext.js.map +1 -1
  418. package/lib/cjs/rpc/core/RpcRoutingToken.d.ts +12 -12
  419. package/lib/cjs/rpc/core/RpcRoutingToken.js +23 -23
  420. package/lib/cjs/rpc/core/RpcRoutingToken.js.map +1 -1
  421. package/lib/cjs/rpc/core/RpcSessionInvocation.d.ts +10 -10
  422. package/lib/cjs/rpc/core/RpcSessionInvocation.js +59 -59
  423. package/lib/cjs/rpc/core/RpcSessionInvocation.js.map +1 -1
  424. package/lib/cjs/rpc/web/BentleyCloudRpcManager.d.ts +46 -46
  425. package/lib/cjs/rpc/web/BentleyCloudRpcManager.js +73 -73
  426. package/lib/cjs/rpc/web/BentleyCloudRpcManager.js.map +1 -1
  427. package/lib/cjs/rpc/web/BentleyCloudRpcProtocol.d.ts +33 -33
  428. package/lib/cjs/rpc/web/BentleyCloudRpcProtocol.js +142 -142
  429. package/lib/cjs/rpc/web/BentleyCloudRpcProtocol.js.map +1 -1
  430. package/lib/cjs/rpc/web/OpenAPI.d.ts +139 -139
  431. package/lib/cjs/rpc/web/OpenAPI.js +60 -60
  432. package/lib/cjs/rpc/web/OpenAPI.js.map +1 -1
  433. package/lib/cjs/rpc/web/RpcMultipart.d.ts +35 -35
  434. package/lib/cjs/rpc/web/RpcMultipart.js +50 -50
  435. package/lib/cjs/rpc/web/RpcMultipart.js.map +1 -1
  436. package/lib/cjs/rpc/web/WebAppRpcLogging.d.ts +28 -28
  437. package/lib/cjs/rpc/web/WebAppRpcLogging.js +139 -139
  438. package/lib/cjs/rpc/web/WebAppRpcLogging.js.map +1 -1
  439. package/lib/cjs/rpc/web/WebAppRpcProtocol.d.ts +87 -87
  440. package/lib/cjs/rpc/web/WebAppRpcProtocol.js +116 -116
  441. package/lib/cjs/rpc/web/WebAppRpcProtocol.js.map +1 -1
  442. package/lib/cjs/rpc/web/WebAppRpcRequest.d.ts +67 -67
  443. package/lib/cjs/rpc/web/WebAppRpcRequest.js +239 -239
  444. package/lib/cjs/rpc/web/WebAppRpcRequest.js.map +1 -1
  445. package/lib/cjs/rpc/web/multipart/RpcMultipartParser.d.ts +32 -32
  446. package/lib/cjs/rpc/web/multipart/RpcMultipartParser.js +372 -372
  447. package/lib/cjs/rpc/web/multipart/RpcMultipartParser.js.map +1 -1
  448. package/lib/cjs/tile/B3dmTileIO.d.ts +19 -19
  449. package/lib/cjs/tile/B3dmTileIO.js +66 -66
  450. package/lib/cjs/tile/B3dmTileIO.js.map +1 -1
  451. package/lib/cjs/tile/CompositeTileIO.d.ts +15 -15
  452. package/lib/cjs/tile/CompositeTileIO.js +26 -26
  453. package/lib/cjs/tile/CompositeTileIO.js.map +1 -1
  454. package/lib/cjs/tile/ElementGraphics.d.ts +145 -145
  455. package/lib/cjs/tile/ElementGraphics.js +9 -9
  456. package/lib/cjs/tile/ElementGraphics.js.map +1 -1
  457. package/lib/cjs/tile/GltfTileIO.d.ts +45 -45
  458. package/lib/cjs/tile/GltfTileIO.js +109 -109
  459. package/lib/cjs/tile/GltfTileIO.js.map +1 -1
  460. package/lib/cjs/tile/I3dmTileIO.d.ts +20 -20
  461. package/lib/cjs/tile/I3dmTileIO.js +40 -40
  462. package/lib/cjs/tile/I3dmTileIO.js.map +1 -1
  463. package/lib/cjs/tile/IModelTileIO.d.ts +75 -75
  464. package/lib/cjs/tile/IModelTileIO.js +95 -95
  465. package/lib/cjs/tile/IModelTileIO.js.map +1 -1
  466. package/lib/cjs/tile/PntsTileIO.d.ts +17 -17
  467. package/lib/cjs/tile/PntsTileIO.js +26 -26
  468. package/lib/cjs/tile/PntsTileIO.js.map +1 -1
  469. package/lib/cjs/tile/TileIO.d.ts +66 -66
  470. package/lib/cjs/tile/TileIO.js +118 -118
  471. package/lib/cjs/tile/TileIO.js.map +1 -1
  472. package/lib/cjs/tile/TileMetadata.d.ts +228 -228
  473. package/lib/cjs/tile/TileMetadata.js +676 -676
  474. package/lib/cjs/tile/TileMetadata.js.map +1 -1
  475. package/lib/esm/AmbientOcclusion.d.ts +49 -49
  476. package/lib/esm/AmbientOcclusion.js +52 -52
  477. package/lib/esm/AmbientOcclusion.js.map +1 -1
  478. package/lib/esm/AnalysisStyle.d.ts +134 -134
  479. package/lib/esm/AnalysisStyle.js +159 -159
  480. package/lib/esm/AnalysisStyle.js.map +1 -1
  481. package/lib/esm/AuthorizationClient.d.ts +11 -11
  482. package/lib/esm/AuthorizationClient.js +8 -8
  483. package/lib/esm/AuthorizationClient.js.map +1 -1
  484. package/lib/esm/BackendTypes.d.ts +12 -12
  485. package/lib/esm/BackendTypes.js +8 -8
  486. package/lib/esm/BackendTypes.js.map +1 -1
  487. package/lib/esm/BackgroundMapProvider.d.ts +51 -51
  488. package/lib/esm/BackgroundMapProvider.js +64 -64
  489. package/lib/esm/BackgroundMapProvider.js.map +1 -1
  490. package/lib/esm/BackgroundMapSettings.d.ts +136 -136
  491. package/lib/esm/BackgroundMapSettings.js +152 -152
  492. package/lib/esm/BackgroundMapSettings.js.map +1 -1
  493. package/lib/esm/Base64EncodedString.d.ts +32 -32
  494. package/lib/esm/Base64EncodedString.js +63 -63
  495. package/lib/esm/Base64EncodedString.js.map +1 -1
  496. package/lib/esm/BlobReader.d.ts +31 -31
  497. package/lib/esm/BlobReader.js +79 -79
  498. package/lib/esm/BlobReader.js.map +1 -1
  499. package/lib/esm/BriefcaseTypes.d.ts +189 -189
  500. package/lib/esm/BriefcaseTypes.js +92 -92
  501. package/lib/esm/BriefcaseTypes.js.map +1 -1
  502. package/lib/esm/Camera.d.ts +42 -42
  503. package/lib/esm/Camera.js +58 -58
  504. package/lib/esm/Camera.js.map +1 -1
  505. package/lib/esm/ChangedElements.d.ts +85 -85
  506. package/lib/esm/ChangedElements.js +20 -20
  507. package/lib/esm/ChangedElements.js.map +1 -1
  508. package/lib/esm/ChangedEntities.d.ts +45 -45
  509. package/lib/esm/ChangedEntities.js +8 -8
  510. package/lib/esm/ChangedEntities.js.map +1 -1
  511. package/lib/esm/ChangesetProps.d.ts +98 -98
  512. package/lib/esm/ChangesetProps.js +19 -19
  513. package/lib/esm/ChangesetProps.js.map +1 -1
  514. package/lib/esm/ClipStyle.d.ts +89 -89
  515. package/lib/esm/ClipStyle.js +118 -118
  516. package/lib/esm/ClipStyle.js.map +1 -1
  517. package/lib/esm/CloudStorage.d.ts +62 -62
  518. package/lib/esm/CloudStorage.js +109 -109
  519. package/lib/esm/CloudStorage.js.map +1 -1
  520. package/lib/esm/CloudStorageTileCache.d.ts +27 -27
  521. package/lib/esm/CloudStorageTileCache.js +62 -62
  522. package/lib/esm/CloudStorageTileCache.js.map +1 -1
  523. package/lib/esm/Code.d.ts +256 -256
  524. package/lib/esm/Code.js +276 -276
  525. package/lib/esm/Code.js.map +1 -1
  526. package/lib/esm/ColorByName.d.ts +161 -161
  527. package/lib/esm/ColorByName.js +166 -166
  528. package/lib/esm/ColorByName.js.map +1 -1
  529. package/lib/esm/ColorDef.d.ts +208 -208
  530. package/lib/esm/ColorDef.js +567 -567
  531. package/lib/esm/ColorDef.js.map +1 -1
  532. package/lib/esm/CommonLoggerCategory.d.ts +18 -18
  533. package/lib/esm/CommonLoggerCategory.js +23 -23
  534. package/lib/esm/CommonLoggerCategory.js.map +1 -1
  535. package/lib/esm/ConcurrentQuery.d.ts +421 -421
  536. package/lib/esm/ConcurrentQuery.js +545 -545
  537. package/lib/esm/ConcurrentQuery.js.map +1 -1
  538. package/lib/esm/ContextRealityModel.d.ts +276 -276
  539. package/lib/esm/ContextRealityModel.js +353 -353
  540. package/lib/esm/ContextRealityModel.js.map +1 -1
  541. package/lib/esm/DisplayStyleSettings.d.ts +584 -584
  542. package/lib/esm/DisplayStyleSettings.js +976 -976
  543. package/lib/esm/DisplayStyleSettings.js.map +1 -1
  544. package/lib/esm/ECSchemaProps.d.ts +39 -39
  545. package/lib/esm/ECSchemaProps.js +8 -8
  546. package/lib/esm/ECSchemaProps.js.map +1 -1
  547. package/lib/esm/ECSqlReader.d.ts +70 -70
  548. package/lib/esm/ECSqlReader.js +275 -275
  549. package/lib/esm/ECSqlReader.js.map +1 -1
  550. package/lib/esm/ECSqlTypes.d.ts +128 -128
  551. package/lib/esm/ECSqlTypes.js +185 -185
  552. package/lib/esm/ECSqlTypes.js.map +1 -1
  553. package/lib/esm/ElementMesh.d.ts +39 -39
  554. package/lib/esm/ElementMesh.js +52 -52
  555. package/lib/esm/ElementMesh.js.map +1 -1
  556. package/lib/esm/ElementProps.d.ts +479 -479
  557. package/lib/esm/ElementProps.js +92 -92
  558. package/lib/esm/ElementProps.js.map +1 -1
  559. package/lib/esm/EmphasizeElementsProps.d.ts +55 -55
  560. package/lib/esm/EmphasizeElementsProps.js +22 -22
  561. package/lib/esm/EmphasizeElementsProps.js.map +1 -1
  562. package/lib/esm/EntityProps.d.ts +176 -176
  563. package/lib/esm/EntityProps.js +107 -107
  564. package/lib/esm/EntityProps.js.map +1 -1
  565. package/lib/esm/EntityReference.d.ts +51 -51
  566. package/lib/esm/EntityReference.js +52 -52
  567. package/lib/esm/EntityReference.js.map +1 -1
  568. package/lib/esm/Environment.d.ts +61 -61
  569. package/lib/esm/Environment.js +69 -69
  570. package/lib/esm/Environment.js.map +1 -1
  571. package/lib/esm/FeatureGates.d.ts +31 -31
  572. package/lib/esm/FeatureGates.js +51 -51
  573. package/lib/esm/FeatureGates.js.map +1 -1
  574. package/lib/esm/FeatureIndex.d.ts +39 -39
  575. package/lib/esm/FeatureIndex.js +57 -57
  576. package/lib/esm/FeatureIndex.js.map +1 -1
  577. package/lib/esm/FeatureSymbology.d.ts +444 -444
  578. package/lib/esm/FeatureSymbology.js +609 -609
  579. package/lib/esm/FeatureSymbology.js.map +1 -1
  580. package/lib/esm/FeatureTable.d.ts +141 -141
  581. package/lib/esm/FeatureTable.js +272 -272
  582. package/lib/esm/FeatureTable.js.map +1 -1
  583. package/lib/esm/Fonts.d.ts +51 -51
  584. package/lib/esm/Fonts.js +49 -49
  585. package/lib/esm/Fonts.js.map +1 -1
  586. package/lib/esm/Frustum.d.ts +114 -114
  587. package/lib/esm/Frustum.js +288 -288
  588. package/lib/esm/Frustum.js.map +1 -1
  589. package/lib/esm/GeoCoordinateServices.d.ts +119 -119
  590. package/lib/esm/GeoCoordinateServices.js +76 -76
  591. package/lib/esm/GeoCoordinateServices.js.map +1 -1
  592. package/lib/esm/GeometryContainment.d.ts +28 -28
  593. package/lib/esm/GeometryContainment.js +8 -8
  594. package/lib/esm/GeometryContainment.js.map +1 -1
  595. package/lib/esm/GeometryParams.d.ts +130 -130
  596. package/lib/esm/GeometryParams.js +170 -170
  597. package/lib/esm/GeometryParams.js.map +1 -1
  598. package/lib/esm/GeometrySummary.d.ts +45 -45
  599. package/lib/esm/GeometrySummary.js +20 -20
  600. package/lib/esm/GeometrySummary.js.map +1 -1
  601. package/lib/esm/Gradient.d.ts +139 -139
  602. package/lib/esm/Gradient.js +452 -452
  603. package/lib/esm/Gradient.js.map +1 -1
  604. package/lib/esm/GraphicParams.d.ts +58 -58
  605. package/lib/esm/GraphicParams.js +81 -81
  606. package/lib/esm/GraphicParams.js.map +1 -1
  607. package/lib/esm/GroundPlane.d.ts +52 -52
  608. package/lib/esm/GroundPlane.js +60 -60
  609. package/lib/esm/GroundPlane.js.map +1 -1
  610. package/lib/esm/HSLColor.d.ts +20 -20
  611. package/lib/esm/HSLColor.js +28 -28
  612. package/lib/esm/HSLColor.js.map +1 -1
  613. package/lib/esm/HSVColor.d.ts +30 -30
  614. package/lib/esm/HSVColor.js +55 -55
  615. package/lib/esm/HSVColor.js.map +1 -1
  616. package/lib/esm/HiddenLine.d.ts +97 -97
  617. package/lib/esm/HiddenLine.js +159 -159
  618. package/lib/esm/HiddenLine.js.map +1 -1
  619. package/lib/esm/Hilite.d.ts +50 -50
  620. package/lib/esm/Hilite.js +61 -61
  621. package/lib/esm/Hilite.js.map +1 -1
  622. package/lib/esm/IModel.d.ts +359 -359
  623. package/lib/esm/IModel.js +342 -342
  624. package/lib/esm/IModel.js.map +1 -1
  625. package/lib/esm/IModelError.d.ts +36 -36
  626. package/lib/esm/IModelError.js +55 -55
  627. package/lib/esm/IModelError.js.map +1 -1
  628. package/lib/esm/IModelVersion.d.ts +68 -68
  629. package/lib/esm/IModelVersion.js +75 -75
  630. package/lib/esm/IModelVersion.js.map +1 -1
  631. package/lib/esm/Image.d.ts +86 -86
  632. package/lib/esm/Image.js +120 -120
  633. package/lib/esm/Image.js.map +1 -1
  634. package/lib/esm/IpcAppProps.d.ts +141 -141
  635. package/lib/esm/IpcAppProps.js +19 -19
  636. package/lib/esm/IpcAppProps.js.map +1 -1
  637. package/lib/esm/LightSettings.d.ts +224 -224
  638. package/lib/esm/LightSettings.js +301 -301
  639. package/lib/esm/LightSettings.js.map +1 -1
  640. package/lib/esm/LinePixels.d.ts +34 -34
  641. package/lib/esm/LinePixels.js +39 -39
  642. package/lib/esm/LinePixels.js.map +1 -1
  643. package/lib/esm/Localization.d.ts +113 -113
  644. package/lib/esm/Localization.js +22 -22
  645. package/lib/esm/Localization.js.map +1 -1
  646. package/lib/esm/MapImagerySettings.d.ts +62 -62
  647. package/lib/esm/MapImagerySettings.js +76 -76
  648. package/lib/esm/MapImagerySettings.js.map +1 -1
  649. package/lib/esm/MapLayerSettings.d.ts +272 -272
  650. package/lib/esm/MapLayerSettings.js +403 -403
  651. package/lib/esm/MapLayerSettings.js.map +1 -1
  652. package/lib/esm/MassProperties.d.ts +64 -64
  653. package/lib/esm/MassProperties.js +20 -20
  654. package/lib/esm/MassProperties.js.map +1 -1
  655. package/lib/esm/MaterialProps.d.ts +118 -118
  656. package/lib/esm/MaterialProps.js +20 -20
  657. package/lib/esm/MaterialProps.js.map +1 -1
  658. package/lib/esm/ModelClipGroup.d.ts +67 -67
  659. package/lib/esm/ModelClipGroup.js +93 -93
  660. package/lib/esm/ModelClipGroup.js.map +1 -1
  661. package/lib/esm/ModelGeometryChanges.d.ts +107 -107
  662. package/lib/esm/ModelGeometryChanges.js +80 -80
  663. package/lib/esm/ModelGeometryChanges.js.map +1 -1
  664. package/lib/esm/ModelProps.d.ts +67 -67
  665. package/lib/esm/ModelProps.js +8 -8
  666. package/lib/esm/ModelProps.js.map +1 -1
  667. package/lib/esm/NativeAppProps.d.ts +122 -122
  668. package/lib/esm/NativeAppProps.js +27 -27
  669. package/lib/esm/NativeAppProps.js.map +1 -1
  670. package/lib/esm/OctEncodedNormal.d.ts +33 -33
  671. package/lib/esm/OctEncodedNormal.js +93 -93
  672. package/lib/esm/OctEncodedNormal.js.map +1 -1
  673. package/lib/esm/PlanProjectionSettings.d.ts +47 -47
  674. package/lib/esm/PlanProjectionSettings.js +59 -59
  675. package/lib/esm/PlanProjectionSettings.js.map +1 -1
  676. package/lib/esm/PlanarClipMask.d.ts +177 -177
  677. package/lib/esm/PlanarClipMask.js +132 -132
  678. package/lib/esm/PlanarClipMask.js.map +1 -1
  679. package/lib/esm/QPoint.d.ts +479 -479
  680. package/lib/esm/QPoint.js +815 -815
  681. package/lib/esm/QPoint.js.map +1 -1
  682. package/lib/esm/RealityDataAccessProps.d.ts +41 -41
  683. package/lib/esm/RealityDataAccessProps.js +16 -16
  684. package/lib/esm/RealityDataAccessProps.js.map +1 -1
  685. package/lib/esm/RealityModelDisplaySettings.d.ts +183 -183
  686. package/lib/esm/RealityModelDisplaySettings.js +137 -137
  687. package/lib/esm/RealityModelDisplaySettings.js.map +1 -1
  688. package/lib/esm/Render.d.ts +89 -89
  689. package/lib/esm/Render.js +165 -165
  690. package/lib/esm/Render.js.map +1 -1
  691. package/lib/esm/RenderMaterial.d.ts +58 -58
  692. package/lib/esm/RenderMaterial.js +72 -72
  693. package/lib/esm/RenderMaterial.js.map +1 -1
  694. package/lib/esm/RenderSchedule.d.ts +543 -543
  695. package/lib/esm/RenderSchedule.js +999 -999
  696. package/lib/esm/RenderTexture.d.ts +70 -70
  697. package/lib/esm/RenderTexture.js +55 -55
  698. package/lib/esm/RenderTexture.js.map +1 -1
  699. package/lib/esm/RgbColor.d.ts +47 -47
  700. package/lib/esm/RgbColor.js +73 -73
  701. package/lib/esm/RgbColor.js.map +1 -1
  702. package/lib/esm/RpcInterface.d.ts +33 -33
  703. package/lib/esm/RpcInterface.js +133 -133
  704. package/lib/esm/RpcInterface.js.map +1 -1
  705. package/lib/esm/RpcManager.d.ts +40 -40
  706. package/lib/esm/RpcManager.js +51 -51
  707. package/lib/esm/RpcManager.js.map +1 -1
  708. package/lib/esm/SessionProps.d.ts +16 -16
  709. package/lib/esm/SessionProps.js +8 -8
  710. package/lib/esm/SessionProps.js.map +1 -1
  711. package/lib/esm/SkyBox.d.ts +215 -215
  712. package/lib/esm/SkyBox.js +203 -203
  713. package/lib/esm/SkyBox.js.map +1 -1
  714. package/lib/esm/Snapping.d.ts +49 -49
  715. package/lib/esm/Snapping.js +8 -8
  716. package/lib/esm/Snapping.js.map +1 -1
  717. package/lib/esm/SolarCalculate.d.ts +27 -27
  718. package/lib/esm/SolarCalculate.js +204 -204
  719. package/lib/esm/SolarCalculate.js.map +1 -1
  720. package/lib/esm/SolarShadows.d.ts +35 -35
  721. package/lib/esm/SolarShadows.js +58 -58
  722. package/lib/esm/SolarShadows.js.map +1 -1
  723. package/lib/esm/SpatialClassification.d.ts +208 -208
  724. package/lib/esm/SpatialClassification.js +334 -334
  725. package/lib/esm/SpatialClassification.js.map +1 -1
  726. package/lib/esm/SubCategoryAppearance.d.ts +91 -91
  727. package/lib/esm/SubCategoryAppearance.js +92 -92
  728. package/lib/esm/SubCategoryAppearance.js.map +1 -1
  729. package/lib/esm/SubCategoryOverride.d.ts +46 -46
  730. package/lib/esm/SubCategoryOverride.js +100 -100
  731. package/lib/esm/SubCategoryOverride.js.map +1 -1
  732. package/lib/esm/TerrainSettings.d.ts +82 -82
  733. package/lib/esm/TerrainSettings.js +98 -98
  734. package/lib/esm/TerrainSettings.js.map +1 -1
  735. package/lib/esm/TextureMapping.d.ts +116 -116
  736. package/lib/esm/TextureMapping.js +170 -170
  737. package/lib/esm/TextureMapping.js.map +1 -1
  738. package/lib/esm/TextureProps.d.ts +65 -65
  739. package/lib/esm/TextureProps.js +25 -25
  740. package/lib/esm/TextureProps.js.map +1 -1
  741. package/lib/esm/ThematicDisplay.d.ts +230 -230
  742. package/lib/esm/ThematicDisplay.js +337 -337
  743. package/lib/esm/ThematicDisplay.js.map +1 -1
  744. package/lib/esm/Thumbnail.d.ts +26 -26
  745. package/lib/esm/Thumbnail.js +8 -8
  746. package/lib/esm/Thumbnail.js.map +1 -1
  747. package/lib/esm/TileProps.d.ts +82 -82
  748. package/lib/esm/TileProps.js +25 -25
  749. package/lib/esm/TileProps.js.map +1 -1
  750. package/lib/esm/Tween.d.ts +191 -191
  751. package/lib/esm/Tween.js +565 -565
  752. package/lib/esm/Tween.js.map +1 -1
  753. package/lib/esm/TxnAction.d.ts +21 -21
  754. package/lib/esm/TxnAction.js +26 -26
  755. package/lib/esm/TxnAction.js.map +1 -1
  756. package/lib/esm/ViewDetails.d.ts +125 -125
  757. package/lib/esm/ViewDetails.js +161 -161
  758. package/lib/esm/ViewDetails.js.map +1 -1
  759. package/lib/esm/ViewFlags.d.ts +291 -291
  760. package/lib/esm/ViewFlags.js +364 -364
  761. package/lib/esm/ViewFlags.js.map +1 -1
  762. package/lib/esm/ViewProps.d.ts +205 -205
  763. package/lib/esm/ViewProps.js +8 -8
  764. package/lib/esm/ViewProps.js.map +1 -1
  765. package/lib/esm/WhiteOnWhiteReversalSettings.d.ts +36 -36
  766. package/lib/esm/WhiteOnWhiteReversalSettings.js +33 -33
  767. package/lib/esm/WhiteOnWhiteReversalSettings.js.map +1 -1
  768. package/lib/esm/core-common.d.ts +245 -245
  769. package/lib/esm/core-common.js +249 -249
  770. package/lib/esm/core-common.js.map +1 -1
  771. package/lib/esm/domains/FunctionalElementProps.d.ts +11 -11
  772. package/lib/esm/domains/FunctionalElementProps.js +8 -8
  773. package/lib/esm/domains/FunctionalElementProps.js.map +1 -1
  774. package/lib/esm/domains/GenericElementProps.d.ts +18 -18
  775. package/lib/esm/domains/GenericElementProps.js +8 -8
  776. package/lib/esm/domains/GenericElementProps.js.map +1 -1
  777. package/lib/esm/geometry/AdditionalTransform.d.ts +84 -84
  778. package/lib/esm/geometry/AdditionalTransform.js +80 -80
  779. package/lib/esm/geometry/AdditionalTransform.js.map +1 -1
  780. package/lib/esm/geometry/AreaPattern.d.ts +82 -82
  781. package/lib/esm/geometry/AreaPattern.js +201 -201
  782. package/lib/esm/geometry/AreaPattern.js.map +1 -1
  783. package/lib/esm/geometry/BoundingSphere.d.ts +14 -14
  784. package/lib/esm/geometry/BoundingSphere.js +26 -26
  785. package/lib/esm/geometry/BoundingSphere.js.map +1 -1
  786. package/lib/esm/geometry/Cartographic.d.ts +137 -137
  787. package/lib/esm/geometry/Cartographic.js +340 -340
  788. package/lib/esm/geometry/Cartographic.js.map +1 -1
  789. package/lib/esm/geometry/CoordinateReferenceSystem.d.ts +269 -269
  790. package/lib/esm/geometry/CoordinateReferenceSystem.js +254 -254
  791. package/lib/esm/geometry/CoordinateReferenceSystem.js.map +1 -1
  792. package/lib/esm/geometry/ElementGeometry.d.ts +402 -402
  793. package/lib/esm/geometry/ElementGeometry.js +1716 -1716
  794. package/lib/esm/geometry/ElementGeometry.js.map +1 -1
  795. package/lib/esm/geometry/ElementGeometryFB.d.ts +2372 -2372
  796. package/lib/esm/geometry/ElementGeometryFB.js +3811 -3811
  797. package/lib/esm/geometry/ElementGeometryFB.js.map +1 -1
  798. package/lib/esm/geometry/FrustumPlanes.d.ts +32 -32
  799. package/lib/esm/geometry/FrustumPlanes.js +128 -128
  800. package/lib/esm/geometry/FrustumPlanes.js.map +1 -1
  801. package/lib/esm/geometry/GeodeticDatum.d.ts +409 -409
  802. package/lib/esm/geometry/GeodeticDatum.js +390 -390
  803. package/lib/esm/geometry/GeodeticDatum.js.map +1 -1
  804. package/lib/esm/geometry/GeodeticEllipsoid.d.ts +72 -72
  805. package/lib/esm/geometry/GeodeticEllipsoid.js +68 -68
  806. package/lib/esm/geometry/GeodeticEllipsoid.js.map +1 -1
  807. package/lib/esm/geometry/GeometryStream.d.ts +347 -347
  808. package/lib/esm/geometry/GeometryStream.js +464 -464
  809. package/lib/esm/geometry/GeometryStream.js.map +1 -1
  810. package/lib/esm/geometry/ImageGraphic.d.ts +74 -74
  811. package/lib/esm/geometry/ImageGraphic.js +93 -93
  812. package/lib/esm/geometry/ImageGraphic.js.map +1 -1
  813. package/lib/esm/geometry/LineStyle.d.ts +71 -71
  814. package/lib/esm/geometry/LineStyle.js +126 -126
  815. package/lib/esm/geometry/LineStyle.js.map +1 -1
  816. package/lib/esm/geometry/Placement.d.ts +95 -95
  817. package/lib/esm/geometry/Placement.js +126 -126
  818. package/lib/esm/geometry/Placement.js.map +1 -1
  819. package/lib/esm/geometry/Projection.d.ts +251 -251
  820. package/lib/esm/geometry/Projection.js +192 -192
  821. package/lib/esm/geometry/Projection.js.map +1 -1
  822. package/lib/esm/geometry/TextString.d.ts +55 -55
  823. package/lib/esm/geometry/TextString.js +61 -61
  824. package/lib/esm/geometry/TextString.js.map +1 -1
  825. package/lib/esm/ipc/IpcSession.d.ts +23 -23
  826. package/lib/esm/ipc/IpcSession.js +23 -23
  827. package/lib/esm/ipc/IpcSession.js.map +1 -1
  828. package/lib/esm/ipc/IpcSocket.d.ts +96 -96
  829. package/lib/esm/ipc/IpcSocket.js +12 -12
  830. package/lib/esm/ipc/IpcSocket.js.map +1 -1
  831. package/lib/esm/ipc/IpcWebSocket.d.ts +61 -61
  832. package/lib/esm/ipc/IpcWebSocket.js +145 -145
  833. package/lib/esm/ipc/IpcWebSocket.js.map +1 -1
  834. package/lib/esm/ipc/IpcWebSocketTransport.d.ts +15 -15
  835. package/lib/esm/ipc/IpcWebSocketTransport.js +156 -156
  836. package/lib/esm/ipc/IpcWebSocketTransport.js.map +1 -1
  837. package/lib/esm/rpc/DevToolsRpcInterface.d.ts +32 -32
  838. package/lib/esm/rpc/DevToolsRpcInterface.js +44 -44
  839. package/lib/esm/rpc/DevToolsRpcInterface.js.map +1 -1
  840. package/lib/esm/rpc/IModelReadRpcInterface.d.ts +99 -99
  841. package/lib/esm/rpc/IModelReadRpcInterface.js +117 -117
  842. package/lib/esm/rpc/IModelReadRpcInterface.js.map +1 -1
  843. package/lib/esm/rpc/IModelTileRpcInterface.d.ts +61 -61
  844. package/lib/esm/rpc/IModelTileRpcInterface.js +92 -92
  845. package/lib/esm/rpc/IModelTileRpcInterface.js.map +1 -1
  846. package/lib/esm/rpc/SnapshotIModelRpcInterface.d.ts +23 -23
  847. package/lib/esm/rpc/SnapshotIModelRpcInterface.js +44 -44
  848. package/lib/esm/rpc/SnapshotIModelRpcInterface.js.map +1 -1
  849. package/lib/esm/rpc/TestRpcManager.d.ts +20 -20
  850. package/lib/esm/rpc/TestRpcManager.js +35 -35
  851. package/lib/esm/rpc/TestRpcManager.js.map +1 -1
  852. package/lib/esm/rpc/WipRpcInterface.d.ts +29 -29
  853. package/lib/esm/rpc/WipRpcInterface.js +36 -36
  854. package/lib/esm/rpc/WipRpcInterface.js.map +1 -1
  855. package/lib/esm/rpc/core/RpcConfiguration.d.ts +111 -111
  856. package/lib/esm/rpc/core/RpcConfiguration.js +184 -184
  857. package/lib/esm/rpc/core/RpcConfiguration.js.map +1 -1
  858. package/lib/esm/rpc/core/RpcConstants.d.ts +85 -85
  859. package/lib/esm/rpc/core/RpcConstants.js +100 -100
  860. package/lib/esm/rpc/core/RpcConstants.js.map +1 -1
  861. package/lib/esm/rpc/core/RpcControl.d.ts +54 -54
  862. package/lib/esm/rpc/core/RpcControl.js +137 -137
  863. package/lib/esm/rpc/core/RpcControl.js.map +1 -1
  864. package/lib/esm/rpc/core/RpcInvocation.d.ts +89 -89
  865. package/lib/esm/rpc/core/RpcInvocation.js +254 -254
  866. package/lib/esm/rpc/core/RpcInvocation.js.map +1 -1
  867. package/lib/esm/rpc/core/RpcMarshaling.d.ts +35 -35
  868. package/lib/esm/rpc/core/RpcMarshaling.js +152 -152
  869. package/lib/esm/rpc/core/RpcMarshaling.js.map +1 -1
  870. package/lib/esm/rpc/core/RpcOperation.d.ts +67 -67
  871. package/lib/esm/rpc/core/RpcOperation.js +128 -128
  872. package/lib/esm/rpc/core/RpcOperation.js.map +1 -1
  873. package/lib/esm/rpc/core/RpcPendingQueue.d.ts +21 -21
  874. package/lib/esm/rpc/core/RpcPendingQueue.js +90 -90
  875. package/lib/esm/rpc/core/RpcPendingQueue.js.map +1 -1
  876. package/lib/esm/rpc/core/RpcProtocol.d.ts +132 -132
  877. package/lib/esm/rpc/core/RpcProtocol.js +123 -123
  878. package/lib/esm/rpc/core/RpcProtocol.js.map +1 -1
  879. package/lib/esm/rpc/core/RpcPush.d.ts +68 -68
  880. package/lib/esm/rpc/core/RpcPush.js +119 -119
  881. package/lib/esm/rpc/core/RpcPush.js.map +1 -1
  882. package/lib/esm/rpc/core/RpcRegistry.d.ts +48 -48
  883. package/lib/esm/rpc/core/RpcRegistry.js +194 -194
  884. package/lib/esm/rpc/core/RpcRegistry.js.map +1 -1
  885. package/lib/esm/rpc/core/RpcRequest.d.ts +186 -186
  886. package/lib/esm/rpc/core/RpcRequest.js +472 -472
  887. package/lib/esm/rpc/core/RpcRequest.js.map +1 -1
  888. package/lib/esm/rpc/core/RpcRequestContext.d.ts +14 -14
  889. package/lib/esm/rpc/core/RpcRequestContext.js +1 -1
  890. package/lib/esm/rpc/core/RpcRequestContext.js.map +1 -1
  891. package/lib/esm/rpc/core/RpcRoutingToken.d.ts +12 -12
  892. package/lib/esm/rpc/core/RpcRoutingToken.js +19 -19
  893. package/lib/esm/rpc/core/RpcRoutingToken.js.map +1 -1
  894. package/lib/esm/rpc/core/RpcSessionInvocation.d.ts +10 -10
  895. package/lib/esm/rpc/core/RpcSessionInvocation.js +55 -55
  896. package/lib/esm/rpc/core/RpcSessionInvocation.js.map +1 -1
  897. package/lib/esm/rpc/web/BentleyCloudRpcManager.d.ts +46 -46
  898. package/lib/esm/rpc/web/BentleyCloudRpcManager.js +68 -68
  899. package/lib/esm/rpc/web/BentleyCloudRpcManager.js.map +1 -1
  900. package/lib/esm/rpc/web/BentleyCloudRpcProtocol.d.ts +33 -33
  901. package/lib/esm/rpc/web/BentleyCloudRpcProtocol.js +138 -138
  902. package/lib/esm/rpc/web/BentleyCloudRpcProtocol.js.map +1 -1
  903. package/lib/esm/rpc/web/OpenAPI.d.ts +139 -139
  904. package/lib/esm/rpc/web/OpenAPI.js +56 -56
  905. package/lib/esm/rpc/web/OpenAPI.js.map +1 -1
  906. package/lib/esm/rpc/web/RpcMultipart.d.ts +35 -35
  907. package/lib/esm/rpc/web/RpcMultipart.js +46 -46
  908. package/lib/esm/rpc/web/RpcMultipart.js.map +1 -1
  909. package/lib/esm/rpc/web/WebAppRpcLogging.d.ts +28 -28
  910. package/lib/esm/rpc/web/WebAppRpcLogging.js +135 -135
  911. package/lib/esm/rpc/web/WebAppRpcLogging.js.map +1 -1
  912. package/lib/esm/rpc/web/WebAppRpcProtocol.d.ts +87 -87
  913. package/lib/esm/rpc/web/WebAppRpcProtocol.js +112 -112
  914. package/lib/esm/rpc/web/WebAppRpcProtocol.js.map +1 -1
  915. package/lib/esm/rpc/web/WebAppRpcRequest.d.ts +67 -67
  916. package/lib/esm/rpc/web/WebAppRpcRequest.js +235 -235
  917. package/lib/esm/rpc/web/WebAppRpcRequest.js.map +1 -1
  918. package/lib/esm/rpc/web/multipart/RpcMultipartParser.d.ts +32 -32
  919. package/lib/esm/rpc/web/multipart/RpcMultipartParser.js +368 -368
  920. package/lib/esm/rpc/web/multipart/RpcMultipartParser.js.map +1 -1
  921. package/lib/esm/tile/B3dmTileIO.d.ts +19 -19
  922. package/lib/esm/tile/B3dmTileIO.js +62 -62
  923. package/lib/esm/tile/B3dmTileIO.js.map +1 -1
  924. package/lib/esm/tile/CompositeTileIO.d.ts +15 -15
  925. package/lib/esm/tile/CompositeTileIO.js +22 -22
  926. package/lib/esm/tile/CompositeTileIO.js.map +1 -1
  927. package/lib/esm/tile/ElementGraphics.d.ts +145 -145
  928. package/lib/esm/tile/ElementGraphics.js +8 -8
  929. package/lib/esm/tile/ElementGraphics.js.map +1 -1
  930. package/lib/esm/tile/GltfTileIO.d.ts +45 -45
  931. package/lib/esm/tile/GltfTileIO.js +105 -105
  932. package/lib/esm/tile/GltfTileIO.js.map +1 -1
  933. package/lib/esm/tile/I3dmTileIO.d.ts +20 -20
  934. package/lib/esm/tile/I3dmTileIO.js +36 -36
  935. package/lib/esm/tile/I3dmTileIO.js.map +1 -1
  936. package/lib/esm/tile/IModelTileIO.d.ts +75 -75
  937. package/lib/esm/tile/IModelTileIO.js +90 -90
  938. package/lib/esm/tile/IModelTileIO.js.map +1 -1
  939. package/lib/esm/tile/PntsTileIO.d.ts +17 -17
  940. package/lib/esm/tile/PntsTileIO.js +22 -22
  941. package/lib/esm/tile/PntsTileIO.js.map +1 -1
  942. package/lib/esm/tile/TileIO.d.ts +66 -66
  943. package/lib/esm/tile/TileIO.js +110 -110
  944. package/lib/esm/tile/TileIO.js.map +1 -1
  945. package/lib/esm/tile/TileMetadata.d.ts +228 -228
  946. package/lib/esm/tile/TileMetadata.js +661 -661
  947. package/lib/esm/tile/TileMetadata.js.map +1 -1
  948. package/package.json +7 -7
@@ -1 +1 @@
1
- {"version":3,"file":"IpcSocket.js","sourceRoot":"","sources":["../../../src/ipc/IpcSocket.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH;;;KAGK;AACE,MAAM,YAAY,GAAG,CAAC,OAAe,EAAE,EAAE,CAAC,SAAS,OAAO,EAAE,CAAC;AAAvD,QAAA,YAAY,gBAA2C","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 IpcSocket\r\n */\r\n\r\n/**\r\n * The prefix for all IpcSocket channels to disambiguate from system channels.\r\n * @internal\r\n * */\r\nexport const iTwinChannel = (channel: string) => `itwin.${channel}`;\r\n\r\n/**\r\n * A function to handle an Ipc message.\r\n * @public\r\n */\r\nexport type IpcListener = (evt: Event, ...args: any[]) => void;\r\n\r\n/**\r\n * Function returned when establishing an Ipc `receive` listener or `invoke` handler. Call this method to remove the listener/handler.\r\n * @public\r\n * @extensions\r\n */\r\nexport type RemoveFunction = () => void;\r\n\r\n/**\r\n * Payload of an IpcInvoke response. The presence of `error` indicates that the backend threw an exception and the\r\n * frontend will re-throw a [BackendError]$(frontend) with the `errorNumber` and `message` values. Otherwise the `result`\r\n * member holds the response.\r\n * @internal */\r\nexport type IpcInvokeReturn = { result: any, error?: never } | { result?: never, error: { name: string, message: string, errorNumber: number, stack?: string } };\r\n\r\n/**\r\n * An inter-process socket connection between a single [IModelHost]($backend) on the backend (the node process), and an [IModelApp]($frontend) on\r\n * the frontend (the browser process.) Each side will implement this interface to form a two way connection. The frontend and backend\r\n * processes connected through an IpcSocket don't necessarily have to be on the same computer, but often are.\r\n * @public\r\n*/\r\nexport interface IpcSocket {\r\n /**\r\n * Send a message over the socket.\r\n * @param channel The name of the channel for the message. Must begin with the [[iTwinChannel]] prefix.\r\n * @param data The optional data of the message.\r\n * @note `data` is serialized with the [Structured Clone Algorithm](https://developer.mozilla.org/en-US/docs/Web/API/Web_Workers_API/Structured_clone_algorithm), so only\r\n * primitive types and `ArrayBuffers` are allowed.\r\n */\r\n send: (channel: string, ...data: any[]) => void;\r\n /**\r\n * Establish a handler to receive messages for a channel through a socket.\r\n * @param channel The name of the channel for the messages. Must begin with the [[iTwinChannel]] prefix.\r\n * @param listener A function called when messages are sent over `channel`\r\n * @note returns A function to call to remove the listener.\r\n */\r\n addListener: (channel: string, listener: IpcListener) => RemoveFunction;\r\n /**\r\n * Remove a previously registered listener\r\n * @param channel The name of the channel for the listener previously registered with [[addListener]]\r\n * @param listener The function passed to [[addListener]]\r\n */\r\n removeListener: (channel: string, listener: IpcListener) => void;\r\n}\r\n\r\n/**\r\n * Interface for the frontend (browser) side of a socket connection. Frontends may invoke methods implemented on the backend.\r\n * @public\r\n */\r\nexport interface IpcSocketFrontend extends IpcSocket {\r\n /**\r\n * Send a message to the backend via `channel` and expect a result asynchronously.\r\n * @param channel The name of the channel for the method. Must begin with the [[iTwinChannel]] prefix.\r\n * @see Electron [ipcRenderer.invoke](https://www.electronjs.org/docs/api/ipc-renderer) documentation for details.\r\n * Note that this interface *may* be implemented via Electron for desktop apps, or via\r\n * [WebSockets](https://developer.mozilla.org/en-US/docs/Web/API/WebSockets_API) for mobile or web-based\r\n * Ipc connections. In either case, the Electron documentation provides the specifications for how it works.\r\n * @note `args` are serialized with the [Structured Clone Algorithm](https://developer.mozilla.org/en-US/docs/Web/API/Web_Workers_API/Structured_clone_algorithm), so only\r\n * primitive types and `ArrayBuffers` are allowed.\r\n */\r\n invoke: (channel: string, ...args: any[]) => Promise<any>;\r\n}\r\n\r\n/**\r\n * Interface for the backend (Node.js) side of a socket connection. Backends provide the implementation\r\n * of methods that are invoked from the frontend.\r\n * @public\r\n */\r\nexport interface IpcSocketBackend extends IpcSocket {\r\n /**\r\n * Establish a backend implementation of an Ipc interface for a channel.\r\n * @param channel The name of the channel for this handler. Must begin with the [[iTwinChannel]] prefix.\r\n * @param handler A function that supplies the implementation for methods invoked over `channel` via [[IpcSocketFrontend.invoke]]\r\n * @note returns A function to call to remove the handler.\r\n */\r\n handle: (channel: string, handler: (...args: any[]) => Promise<any>) => RemoveFunction;\r\n}\r\n\r\n"]}
1
+ {"version":3,"file":"IpcSocket.js","sourceRoot":"","sources":["../../../src/ipc/IpcSocket.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH;;;KAGK;AACE,MAAM,YAAY,GAAG,CAAC,OAAe,EAAE,EAAE,CAAC,SAAS,OAAO,EAAE,CAAC;AAAvD,QAAA,YAAY,gBAA2C","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 IpcSocket\n */\n\n/**\n * The prefix for all IpcSocket channels to disambiguate from system channels.\n * @internal\n * */\nexport const iTwinChannel = (channel: string) => `itwin.${channel}`;\n\n/**\n * A function to handle an Ipc message.\n * @public\n */\nexport type IpcListener = (evt: Event, ...args: any[]) => void;\n\n/**\n * Function returned when establishing an Ipc `receive` listener or `invoke` handler. Call this method to remove the listener/handler.\n * @public\n * @extensions\n */\nexport type RemoveFunction = () => void;\n\n/**\n * Payload of an IpcInvoke response. The presence of `error` indicates that the backend threw an exception and the\n * frontend will re-throw a [BackendError]$(frontend) with the `errorNumber` and `message` values. Otherwise the `result`\n * member holds the response.\n * @internal */\nexport type IpcInvokeReturn = { result: any, error?: never } | { result?: never, error: { name: string, message: string, errorNumber: number, stack?: string } };\n\n/**\n * An inter-process socket connection between a single [IModelHost]($backend) on the backend (the node process), and an [IModelApp]($frontend) on\n * the frontend (the browser process.) Each side will implement this interface to form a two way connection. The frontend and backend\n * processes connected through an IpcSocket don't necessarily have to be on the same computer, but often are.\n * @public\n*/\nexport interface IpcSocket {\n /**\n * Send a message over the socket.\n * @param channel The name of the channel for the message. Must begin with the [[iTwinChannel]] prefix.\n * @param data The optional data of the message.\n * @note `data` is serialized with the [Structured Clone Algorithm](https://developer.mozilla.org/en-US/docs/Web/API/Web_Workers_API/Structured_clone_algorithm), so only\n * primitive types and `ArrayBuffers` are allowed.\n */\n send: (channel: string, ...data: any[]) => void;\n /**\n * Establish a handler to receive messages for a channel through a socket.\n * @param channel The name of the channel for the messages. Must begin with the [[iTwinChannel]] prefix.\n * @param listener A function called when messages are sent over `channel`\n * @note returns A function to call to remove the listener.\n */\n addListener: (channel: string, listener: IpcListener) => RemoveFunction;\n /**\n * Remove a previously registered listener\n * @param channel The name of the channel for the listener previously registered with [[addListener]]\n * @param listener The function passed to [[addListener]]\n */\n removeListener: (channel: string, listener: IpcListener) => void;\n}\n\n/**\n * Interface for the frontend (browser) side of a socket connection. Frontends may invoke methods implemented on the backend.\n * @public\n */\nexport interface IpcSocketFrontend extends IpcSocket {\n /**\n * Send a message to the backend via `channel` and expect a result asynchronously.\n * @param channel The name of the channel for the method. Must begin with the [[iTwinChannel]] prefix.\n * @see Electron [ipcRenderer.invoke](https://www.electronjs.org/docs/api/ipc-renderer) documentation for details.\n * Note that this interface *may* be implemented via Electron for desktop apps, or via\n * [WebSockets](https://developer.mozilla.org/en-US/docs/Web/API/WebSockets_API) for mobile or web-based\n * Ipc connections. In either case, the Electron documentation provides the specifications for how it works.\n * @note `args` are serialized with the [Structured Clone Algorithm](https://developer.mozilla.org/en-US/docs/Web/API/Web_Workers_API/Structured_clone_algorithm), so only\n * primitive types and `ArrayBuffers` are allowed.\n */\n invoke: (channel: string, ...args: any[]) => Promise<any>;\n}\n\n/**\n * Interface for the backend (Node.js) side of a socket connection. Backends provide the implementation\n * of methods that are invoked from the frontend.\n * @public\n */\nexport interface IpcSocketBackend extends IpcSocket {\n /**\n * Establish a backend implementation of an Ipc interface for a channel.\n * @param channel The name of the channel for this handler. Must begin with the [[iTwinChannel]] prefix.\n * @param handler A function that supplies the implementation for methods invoked over `channel` via [[IpcSocketFrontend.invoke]]\n * @note returns A function to call to remove the handler.\n */\n handle: (channel: string, handler: (...args: any[]) => Promise<any>) => RemoveFunction;\n}\n\n"]}
@@ -1,62 +1,62 @@
1
- /** @packageDocumentation
2
- * @module IpcSocket
3
- */
4
- import { IpcListener, IpcSocket, IpcSocketBackend, IpcSocketFrontend, RemoveFunction } from "./IpcSocket";
5
- import { IpcWebSocketTransport } from "./IpcWebSocketTransport";
6
- /** @internal */
7
- export declare enum IpcWebSocketMessageType {
8
- Send = 0,
9
- Push = 1,
10
- Invoke = 2,
11
- Response = 3,
12
- Internal = 4,
13
- Duplicate = 5
14
- }
15
- /** @internal */
16
- export interface IpcWebSocketMessage {
17
- type: IpcWebSocketMessageType;
18
- request?: number;
19
- response?: number;
20
- channel: string;
21
- method?: string;
22
- data?: any[];
23
- sequence: number;
24
- }
25
- /** @internal */
26
- export declare namespace IpcWebSocketMessage {
27
- function internal(): IpcWebSocketMessage;
28
- function duplicate(): IpcWebSocketMessage;
29
- function skip(message: IpcWebSocketMessage): boolean;
30
- }
31
- /** @internal */
32
- export declare abstract class IpcWebSocket implements IpcSocket {
33
- static transport: IpcWebSocketTransport;
34
- static receivers: Set<(evt: Event, message: IpcWebSocketMessage) => void>;
35
- protected _channels: Map<string, Set<IpcListener>>;
36
- constructor();
37
- abstract send(channel: string, ...data: any[]): void;
38
- addListener(channel: string, listener: IpcListener): RemoveFunction;
39
- removeListener(channel: string, listener: IpcListener): void;
40
- private broadcast;
41
- }
42
- /** @internal */
43
- export declare class IpcWebSocketFrontend extends IpcWebSocket implements IpcSocketFrontend {
44
- private _nextRequest;
45
- private _pendingRequests;
46
- constructor();
47
- send(channel: string, ...data: any[]): void;
48
- invoke(channel: string, methodName: string, ...args: any[]): Promise<any>;
49
- private dispatch;
50
- }
51
- /** @internal */
52
- export declare class IpcWebSocketBackend extends IpcWebSocket implements IpcSocketBackend {
53
- private _handlers;
54
- private _processingQueue;
55
- private _processing;
56
- constructor();
57
- send(channel: string, ...data: any[]): void;
58
- handle(channel: string, handler: (event: Event, methodName: string, ...args: any[]) => Promise<any>): RemoveFunction;
59
- private dispatch;
60
- private processMessages;
61
- }
1
+ /** @packageDocumentation
2
+ * @module IpcSocket
3
+ */
4
+ import { IpcListener, IpcSocket, IpcSocketBackend, IpcSocketFrontend, RemoveFunction } from "./IpcSocket";
5
+ import { IpcWebSocketTransport } from "./IpcWebSocketTransport";
6
+ /** @internal */
7
+ export declare enum IpcWebSocketMessageType {
8
+ Send = 0,
9
+ Push = 1,
10
+ Invoke = 2,
11
+ Response = 3,
12
+ Internal = 4,
13
+ Duplicate = 5
14
+ }
15
+ /** @internal */
16
+ export interface IpcWebSocketMessage {
17
+ type: IpcWebSocketMessageType;
18
+ request?: number;
19
+ response?: number;
20
+ channel: string;
21
+ method?: string;
22
+ data?: any[];
23
+ sequence: number;
24
+ }
25
+ /** @internal */
26
+ export declare namespace IpcWebSocketMessage {
27
+ function internal(): IpcWebSocketMessage;
28
+ function duplicate(): IpcWebSocketMessage;
29
+ function skip(message: IpcWebSocketMessage): boolean;
30
+ }
31
+ /** @internal */
32
+ export declare abstract class IpcWebSocket implements IpcSocket {
33
+ static transport: IpcWebSocketTransport;
34
+ static receivers: Set<(evt: Event, message: IpcWebSocketMessage) => void>;
35
+ protected _channels: Map<string, Set<IpcListener>>;
36
+ constructor();
37
+ abstract send(channel: string, ...data: any[]): void;
38
+ addListener(channel: string, listener: IpcListener): RemoveFunction;
39
+ removeListener(channel: string, listener: IpcListener): void;
40
+ private broadcast;
41
+ }
42
+ /** @internal */
43
+ export declare class IpcWebSocketFrontend extends IpcWebSocket implements IpcSocketFrontend {
44
+ private _nextRequest;
45
+ private _pendingRequests;
46
+ constructor();
47
+ send(channel: string, ...data: any[]): void;
48
+ invoke(channel: string, methodName: string, ...args: any[]): Promise<any>;
49
+ private dispatch;
50
+ }
51
+ /** @internal */
52
+ export declare class IpcWebSocketBackend extends IpcWebSocket implements IpcSocketBackend {
53
+ private _handlers;
54
+ private _processingQueue;
55
+ private _processing;
56
+ constructor();
57
+ send(channel: string, ...data: any[]): void;
58
+ handle(channel: string, handler: (event: Event, methodName: string, ...args: any[]) => Promise<any>): RemoveFunction;
59
+ private dispatch;
60
+ private processMessages;
61
+ }
62
62
  //# sourceMappingURL=IpcWebSocket.d.ts.map
@@ -1,152 +1,152 @@
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 IpcSocket
8
- */
9
- Object.defineProperty(exports, "__esModule", { value: true });
10
- exports.IpcWebSocketBackend = exports.IpcWebSocketFrontend = exports.IpcWebSocket = exports.IpcWebSocketMessage = exports.IpcWebSocketMessageType = void 0;
11
- /** @internal */
12
- var IpcWebSocketMessageType;
13
- (function (IpcWebSocketMessageType) {
14
- IpcWebSocketMessageType[IpcWebSocketMessageType["Send"] = 0] = "Send";
15
- IpcWebSocketMessageType[IpcWebSocketMessageType["Push"] = 1] = "Push";
16
- IpcWebSocketMessageType[IpcWebSocketMessageType["Invoke"] = 2] = "Invoke";
17
- IpcWebSocketMessageType[IpcWebSocketMessageType["Response"] = 3] = "Response";
18
- IpcWebSocketMessageType[IpcWebSocketMessageType["Internal"] = 4] = "Internal";
19
- IpcWebSocketMessageType[IpcWebSocketMessageType["Duplicate"] = 5] = "Duplicate";
20
- })(IpcWebSocketMessageType = exports.IpcWebSocketMessageType || (exports.IpcWebSocketMessageType = {}));
21
- /** @internal */
22
- var IpcWebSocketMessage;
23
- (function (IpcWebSocketMessage) {
24
- function internal() {
25
- return { type: IpcWebSocketMessageType.Internal, channel: "", sequence: Number.MIN_SAFE_INTEGER };
26
- }
27
- IpcWebSocketMessage.internal = internal;
28
- function duplicate() {
29
- return { type: IpcWebSocketMessageType.Duplicate, channel: "", sequence: Number.MIN_SAFE_INTEGER };
30
- }
31
- IpcWebSocketMessage.duplicate = duplicate;
32
- function skip(message) {
33
- return message.type === IpcWebSocketMessageType.Internal || message.type === IpcWebSocketMessageType.Duplicate;
34
- }
35
- IpcWebSocketMessage.skip = skip;
36
- })(IpcWebSocketMessage = exports.IpcWebSocketMessage || (exports.IpcWebSocketMessage = {}));
37
- /** @internal */
38
- class IpcWebSocket {
39
- constructor() {
40
- this._channels = new Map();
41
- IpcWebSocket.receivers.add(async (e, m) => this.broadcast(e, m));
42
- }
43
- addListener(channel, listener) {
44
- let listeners = this._channels.get(channel);
45
- if (!listeners) {
46
- listeners = new Set();
47
- this._channels.set(channel, listeners);
48
- }
49
- if (!listeners.has(listener))
50
- listeners.add(listener);
51
- return () => listeners.delete(listener);
52
- }
53
- removeListener(channel, listener) {
54
- var _a;
55
- (_a = this._channels.get(channel)) === null || _a === void 0 ? void 0 : _a.delete(listener);
56
- }
57
- async broadcast(evt, message) {
58
- if (message.type !== IpcWebSocketMessageType.Send && message.type !== IpcWebSocketMessageType.Push)
59
- return;
60
- const handlers = this._channels.get(message.channel);
61
- if (!handlers)
62
- return;
63
- let arg = message.data;
64
- if (typeof (arg) === "undefined")
65
- arg = [];
66
- for (const handler of handlers)
67
- handler(evt, ...arg);
68
- }
69
- }
70
- exports.IpcWebSocket = IpcWebSocket;
71
- IpcWebSocket.receivers = new Set();
72
- /** @internal */
73
- class IpcWebSocketFrontend extends IpcWebSocket {
74
- constructor() {
75
- super();
76
- this._nextRequest = 0;
77
- this._pendingRequests = new Map();
78
- IpcWebSocket.receivers.add(async (e, m) => this.dispatch(e, m));
79
- }
80
- send(channel, ...data) {
81
- IpcWebSocket.transport.send({ type: IpcWebSocketMessageType.Send, channel, data, sequence: -1 });
82
- }
83
- async invoke(channel, methodName, ...args) {
84
- const requestId = ++this._nextRequest;
85
- IpcWebSocket.transport.send({ type: IpcWebSocketMessageType.Invoke, channel, method: methodName, data: args, request: requestId, sequence: -1 });
86
- return new Promise((resolve) => {
87
- this._pendingRequests.set(requestId, resolve);
88
- });
89
- }
90
- async dispatch(_evt, message) {
91
- if (message.type !== IpcWebSocketMessageType.Response || !message.response)
92
- return;
93
- const pendingHandler = this._pendingRequests.get(message.response);
94
- if (!pendingHandler)
95
- return;
96
- this._pendingRequests.delete(message.response);
97
- pendingHandler(message.data);
98
- }
99
- }
100
- exports.IpcWebSocketFrontend = IpcWebSocketFrontend;
101
- /** @internal */
102
- class IpcWebSocketBackend extends IpcWebSocket {
103
- constructor() {
104
- super();
105
- this._handlers = new Map();
106
- this._processingQueue = [];
107
- IpcWebSocket.receivers.add(async (e, m) => this.dispatch(e, m));
108
- }
109
- send(channel, ...data) {
110
- IpcWebSocket.transport.send({ type: IpcWebSocketMessageType.Push, channel, data, sequence: -1 });
111
- }
112
- handle(channel, handler) {
113
- this._handlers.set(channel, handler);
114
- return () => {
115
- if (this._handlers.get(channel) === handler)
116
- this._handlers.delete(channel);
117
- };
118
- }
119
- async dispatch(_evt, message) {
120
- if (message.type !== IpcWebSocketMessageType.Invoke)
121
- return;
122
- this._processingQueue.push(message);
123
- await this.processMessages();
124
- }
125
- async processMessages() {
126
- if (this._processing || !this._processingQueue.length) {
127
- return;
128
- }
129
- const message = this._processingQueue.shift();
130
- if (message && message.method) {
131
- const handler = this._handlers.get(message.channel);
132
- if (handler) {
133
- this._processing = message;
134
- let args = message.data;
135
- if (typeof (args) === "undefined")
136
- args = [];
137
- const response = await handler({}, message.method, ...args);
138
- IpcWebSocket.transport.send({
139
- type: IpcWebSocketMessageType.Response,
140
- channel: message.channel,
141
- response: message.request,
142
- data: response,
143
- sequence: -1,
144
- });
145
- this._processing = undefined;
146
- }
147
- }
148
- await this.processMessages();
149
- }
150
- }
151
- exports.IpcWebSocketBackend = IpcWebSocketBackend;
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 IpcSocket
8
+ */
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.IpcWebSocketBackend = exports.IpcWebSocketFrontend = exports.IpcWebSocket = exports.IpcWebSocketMessage = exports.IpcWebSocketMessageType = void 0;
11
+ /** @internal */
12
+ var IpcWebSocketMessageType;
13
+ (function (IpcWebSocketMessageType) {
14
+ IpcWebSocketMessageType[IpcWebSocketMessageType["Send"] = 0] = "Send";
15
+ IpcWebSocketMessageType[IpcWebSocketMessageType["Push"] = 1] = "Push";
16
+ IpcWebSocketMessageType[IpcWebSocketMessageType["Invoke"] = 2] = "Invoke";
17
+ IpcWebSocketMessageType[IpcWebSocketMessageType["Response"] = 3] = "Response";
18
+ IpcWebSocketMessageType[IpcWebSocketMessageType["Internal"] = 4] = "Internal";
19
+ IpcWebSocketMessageType[IpcWebSocketMessageType["Duplicate"] = 5] = "Duplicate";
20
+ })(IpcWebSocketMessageType = exports.IpcWebSocketMessageType || (exports.IpcWebSocketMessageType = {}));
21
+ /** @internal */
22
+ var IpcWebSocketMessage;
23
+ (function (IpcWebSocketMessage) {
24
+ function internal() {
25
+ return { type: IpcWebSocketMessageType.Internal, channel: "", sequence: Number.MIN_SAFE_INTEGER };
26
+ }
27
+ IpcWebSocketMessage.internal = internal;
28
+ function duplicate() {
29
+ return { type: IpcWebSocketMessageType.Duplicate, channel: "", sequence: Number.MIN_SAFE_INTEGER };
30
+ }
31
+ IpcWebSocketMessage.duplicate = duplicate;
32
+ function skip(message) {
33
+ return message.type === IpcWebSocketMessageType.Internal || message.type === IpcWebSocketMessageType.Duplicate;
34
+ }
35
+ IpcWebSocketMessage.skip = skip;
36
+ })(IpcWebSocketMessage = exports.IpcWebSocketMessage || (exports.IpcWebSocketMessage = {}));
37
+ /** @internal */
38
+ class IpcWebSocket {
39
+ constructor() {
40
+ this._channels = new Map();
41
+ IpcWebSocket.receivers.add(async (e, m) => this.broadcast(e, m));
42
+ }
43
+ addListener(channel, listener) {
44
+ let listeners = this._channels.get(channel);
45
+ if (!listeners) {
46
+ listeners = new Set();
47
+ this._channels.set(channel, listeners);
48
+ }
49
+ if (!listeners.has(listener))
50
+ listeners.add(listener);
51
+ return () => listeners.delete(listener);
52
+ }
53
+ removeListener(channel, listener) {
54
+ var _a;
55
+ (_a = this._channels.get(channel)) === null || _a === void 0 ? void 0 : _a.delete(listener);
56
+ }
57
+ async broadcast(evt, message) {
58
+ if (message.type !== IpcWebSocketMessageType.Send && message.type !== IpcWebSocketMessageType.Push)
59
+ return;
60
+ const handlers = this._channels.get(message.channel);
61
+ if (!handlers)
62
+ return;
63
+ let arg = message.data;
64
+ if (typeof (arg) === "undefined")
65
+ arg = [];
66
+ for (const handler of handlers)
67
+ handler(evt, ...arg);
68
+ }
69
+ }
70
+ exports.IpcWebSocket = IpcWebSocket;
71
+ IpcWebSocket.receivers = new Set();
72
+ /** @internal */
73
+ class IpcWebSocketFrontend extends IpcWebSocket {
74
+ constructor() {
75
+ super();
76
+ this._nextRequest = 0;
77
+ this._pendingRequests = new Map();
78
+ IpcWebSocket.receivers.add(async (e, m) => this.dispatch(e, m));
79
+ }
80
+ send(channel, ...data) {
81
+ IpcWebSocket.transport.send({ type: IpcWebSocketMessageType.Send, channel, data, sequence: -1 });
82
+ }
83
+ async invoke(channel, methodName, ...args) {
84
+ const requestId = ++this._nextRequest;
85
+ IpcWebSocket.transport.send({ type: IpcWebSocketMessageType.Invoke, channel, method: methodName, data: args, request: requestId, sequence: -1 });
86
+ return new Promise((resolve) => {
87
+ this._pendingRequests.set(requestId, resolve);
88
+ });
89
+ }
90
+ async dispatch(_evt, message) {
91
+ if (message.type !== IpcWebSocketMessageType.Response || !message.response)
92
+ return;
93
+ const pendingHandler = this._pendingRequests.get(message.response);
94
+ if (!pendingHandler)
95
+ return;
96
+ this._pendingRequests.delete(message.response);
97
+ pendingHandler(message.data);
98
+ }
99
+ }
100
+ exports.IpcWebSocketFrontend = IpcWebSocketFrontend;
101
+ /** @internal */
102
+ class IpcWebSocketBackend extends IpcWebSocket {
103
+ constructor() {
104
+ super();
105
+ this._handlers = new Map();
106
+ this._processingQueue = [];
107
+ IpcWebSocket.receivers.add(async (e, m) => this.dispatch(e, m));
108
+ }
109
+ send(channel, ...data) {
110
+ IpcWebSocket.transport.send({ type: IpcWebSocketMessageType.Push, channel, data, sequence: -1 });
111
+ }
112
+ handle(channel, handler) {
113
+ this._handlers.set(channel, handler);
114
+ return () => {
115
+ if (this._handlers.get(channel) === handler)
116
+ this._handlers.delete(channel);
117
+ };
118
+ }
119
+ async dispatch(_evt, message) {
120
+ if (message.type !== IpcWebSocketMessageType.Invoke)
121
+ return;
122
+ this._processingQueue.push(message);
123
+ await this.processMessages();
124
+ }
125
+ async processMessages() {
126
+ if (this._processing || !this._processingQueue.length) {
127
+ return;
128
+ }
129
+ const message = this._processingQueue.shift();
130
+ if (message && message.method) {
131
+ const handler = this._handlers.get(message.channel);
132
+ if (handler) {
133
+ this._processing = message;
134
+ let args = message.data;
135
+ if (typeof (args) === "undefined")
136
+ args = [];
137
+ const response = await handler({}, message.method, ...args);
138
+ IpcWebSocket.transport.send({
139
+ type: IpcWebSocketMessageType.Response,
140
+ channel: message.channel,
141
+ response: message.request,
142
+ data: response,
143
+ sequence: -1,
144
+ });
145
+ this._processing = undefined;
146
+ }
147
+ }
148
+ await this.processMessages();
149
+ }
150
+ }
151
+ exports.IpcWebSocketBackend = IpcWebSocketBackend;
152
152
  //# sourceMappingURL=IpcWebSocket.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"IpcWebSocket.js","sourceRoot":"","sources":["../../../src/ipc/IpcWebSocket.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 IpcSocket\r\n */\r\n\r\nimport { IpcListener, IpcSocket, IpcSocketBackend, IpcSocketFrontend, RemoveFunction } from \"./IpcSocket\";\r\nimport { IpcWebSocketTransport } from \"./IpcWebSocketTransport\";\r\n\r\n/** @internal */\r\nexport enum IpcWebSocketMessageType {\r\n Send,\r\n Push,\r\n Invoke,\r\n Response,\r\n Internal,\r\n Duplicate\r\n}\r\n\r\n/** @internal */\r\nexport interface IpcWebSocketMessage {\r\n type: IpcWebSocketMessageType;\r\n request?: number;\r\n response?: number;\r\n channel: string;\r\n method?: string;\r\n data?: any[];\r\n sequence: number;\r\n}\r\n\r\n/** @internal */\r\nexport namespace IpcWebSocketMessage {\r\n export function internal(): IpcWebSocketMessage {\r\n return { type: IpcWebSocketMessageType.Internal, channel: \"\", sequence: Number.MIN_SAFE_INTEGER };\r\n }\r\n\r\n export function duplicate(): IpcWebSocketMessage {\r\n return { type: IpcWebSocketMessageType.Duplicate, channel: \"\", sequence: Number.MIN_SAFE_INTEGER };\r\n }\r\n\r\n export function skip(message: IpcWebSocketMessage): boolean {\r\n return message.type === IpcWebSocketMessageType.Internal || message.type === IpcWebSocketMessageType.Duplicate;\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport abstract class IpcWebSocket implements IpcSocket {\r\n public static transport: IpcWebSocketTransport;\r\n public static receivers: Set<(evt: Event, message: IpcWebSocketMessage) => void> = new Set();\r\n\r\n protected _channels = new Map<string, Set<IpcListener>>();\r\n\r\n public constructor() {\r\n IpcWebSocket.receivers.add(async (e, m) => this.broadcast(e, m));\r\n }\r\n\r\n public abstract send(channel: string, ...data: any[]): void;\r\n\r\n public addListener(channel: string, listener: IpcListener): RemoveFunction {\r\n let listeners = this._channels.get(channel);\r\n if (!listeners) {\r\n listeners = new Set();\r\n this._channels.set(channel, listeners);\r\n }\r\n\r\n if (!listeners.has(listener))\r\n listeners.add(listener);\r\n\r\n return () => listeners!.delete(listener);\r\n }\r\n\r\n public removeListener(channel: string, listener: IpcListener) {\r\n this._channels.get(channel)?.delete(listener);\r\n }\r\n\r\n private async broadcast(evt: Event, message: IpcWebSocketMessage) {\r\n if (message.type !== IpcWebSocketMessageType.Send && message.type !== IpcWebSocketMessageType.Push)\r\n return;\r\n\r\n const handlers = this._channels.get(message.channel);\r\n if (!handlers)\r\n return;\r\n\r\n let arg = message.data;\r\n if (typeof (arg) === \"undefined\")\r\n arg = [];\r\n\r\n for (const handler of handlers)\r\n handler(evt, ...arg);\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport class IpcWebSocketFrontend extends IpcWebSocket implements IpcSocketFrontend {\r\n private _nextRequest = 0;\r\n private _pendingRequests = new Map<number, (response: any) => void>();\r\n\r\n public constructor() {\r\n super();\r\n IpcWebSocket.receivers.add(async (e, m) => this.dispatch(e, m));\r\n }\r\n\r\n public send(channel: string, ...data: any[]): void {\r\n IpcWebSocket.transport.send({ type: IpcWebSocketMessageType.Send, channel, data, sequence: -1 });\r\n }\r\n\r\n public async invoke(channel: string, methodName: string, ...args: any[]): Promise<any> {\r\n const requestId = ++this._nextRequest;\r\n IpcWebSocket.transport.send({ type: IpcWebSocketMessageType.Invoke, channel, method: methodName, data: args, request: requestId, sequence: -1 });\r\n\r\n return new Promise((resolve) => {\r\n this._pendingRequests.set(requestId, resolve);\r\n });\r\n }\r\n\r\n private async dispatch(_evt: Event, message: IpcWebSocketMessage) {\r\n if (message.type !== IpcWebSocketMessageType.Response || !message.response)\r\n return;\r\n\r\n const pendingHandler = this._pendingRequests.get(message.response);\r\n if (!pendingHandler)\r\n return;\r\n\r\n this._pendingRequests.delete(message.response);\r\n pendingHandler(message.data);\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport class IpcWebSocketBackend extends IpcWebSocket implements IpcSocketBackend {\r\n private _handlers = new Map<string, (event: Event, methodName: string, ...args: any[]) => Promise<any>>();\r\n private _processingQueue: IpcWebSocketMessage[] = [];\r\n private _processing: IpcWebSocketMessage | undefined;\r\n\r\n public constructor() {\r\n super();\r\n IpcWebSocket.receivers.add(async (e, m) => this.dispatch(e, m));\r\n }\r\n\r\n public send(channel: string, ...data: any[]): void {\r\n IpcWebSocket.transport.send({ type: IpcWebSocketMessageType.Push, channel, data, sequence: -1 });\r\n }\r\n\r\n public handle(channel: string, handler: (event: Event, methodName: string, ...args: any[]) => Promise<any>): RemoveFunction {\r\n this._handlers.set(channel, handler);\r\n\r\n return () => {\r\n if (this._handlers.get(channel) === handler)\r\n this._handlers.delete(channel);\r\n };\r\n }\r\n\r\n private async dispatch(_evt: Event, message: IpcWebSocketMessage) {\r\n if (message.type !== IpcWebSocketMessageType.Invoke)\r\n return;\r\n\r\n this._processingQueue.push(message);\r\n await this.processMessages();\r\n }\r\n\r\n private async processMessages() {\r\n if (this._processing || !this._processingQueue.length) {\r\n return;\r\n }\r\n\r\n const message = this._processingQueue.shift();\r\n if (message && message.method) {\r\n const handler = this._handlers.get(message.channel);\r\n if (handler) {\r\n this._processing = message;\r\n\r\n let args = message.data;\r\n if (typeof (args) === \"undefined\")\r\n args = [];\r\n\r\n const response = await handler({} as any, message.method, ...args);\r\n\r\n IpcWebSocket.transport.send({\r\n type: IpcWebSocketMessageType.Response,\r\n channel: message.channel,\r\n response: message.request,\r\n data: response,\r\n sequence: -1,\r\n });\r\n\r\n this._processing = undefined;\r\n }\r\n }\r\n\r\n await this.processMessages();\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"IpcWebSocket.js","sourceRoot":"","sources":["../../../src/ipc/IpcWebSocket.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 IpcSocket\n */\n\nimport { IpcListener, IpcSocket, IpcSocketBackend, IpcSocketFrontend, RemoveFunction } from \"./IpcSocket\";\nimport { IpcWebSocketTransport } from \"./IpcWebSocketTransport\";\n\n/** @internal */\nexport enum IpcWebSocketMessageType {\n Send,\n Push,\n Invoke,\n Response,\n Internal,\n Duplicate\n}\n\n/** @internal */\nexport interface IpcWebSocketMessage {\n type: IpcWebSocketMessageType;\n request?: number;\n response?: number;\n channel: string;\n method?: string;\n data?: any[];\n sequence: number;\n}\n\n/** @internal */\nexport namespace IpcWebSocketMessage {\n export function internal(): IpcWebSocketMessage {\n return { type: IpcWebSocketMessageType.Internal, channel: \"\", sequence: Number.MIN_SAFE_INTEGER };\n }\n\n export function duplicate(): IpcWebSocketMessage {\n return { type: IpcWebSocketMessageType.Duplicate, channel: \"\", sequence: Number.MIN_SAFE_INTEGER };\n }\n\n export function skip(message: IpcWebSocketMessage): boolean {\n return message.type === IpcWebSocketMessageType.Internal || message.type === IpcWebSocketMessageType.Duplicate;\n }\n}\n\n/** @internal */\nexport abstract class IpcWebSocket implements IpcSocket {\n public static transport: IpcWebSocketTransport;\n public static receivers: Set<(evt: Event, message: IpcWebSocketMessage) => void> = new Set();\n\n protected _channels = new Map<string, Set<IpcListener>>();\n\n public constructor() {\n IpcWebSocket.receivers.add(async (e, m) => this.broadcast(e, m));\n }\n\n public abstract send(channel: string, ...data: any[]): void;\n\n public addListener(channel: string, listener: IpcListener): RemoveFunction {\n let listeners = this._channels.get(channel);\n if (!listeners) {\n listeners = new Set();\n this._channels.set(channel, listeners);\n }\n\n if (!listeners.has(listener))\n listeners.add(listener);\n\n return () => listeners!.delete(listener);\n }\n\n public removeListener(channel: string, listener: IpcListener) {\n this._channels.get(channel)?.delete(listener);\n }\n\n private async broadcast(evt: Event, message: IpcWebSocketMessage) {\n if (message.type !== IpcWebSocketMessageType.Send && message.type !== IpcWebSocketMessageType.Push)\n return;\n\n const handlers = this._channels.get(message.channel);\n if (!handlers)\n return;\n\n let arg = message.data;\n if (typeof (arg) === \"undefined\")\n arg = [];\n\n for (const handler of handlers)\n handler(evt, ...arg);\n }\n}\n\n/** @internal */\nexport class IpcWebSocketFrontend extends IpcWebSocket implements IpcSocketFrontend {\n private _nextRequest = 0;\n private _pendingRequests = new Map<number, (response: any) => void>();\n\n public constructor() {\n super();\n IpcWebSocket.receivers.add(async (e, m) => this.dispatch(e, m));\n }\n\n public send(channel: string, ...data: any[]): void {\n IpcWebSocket.transport.send({ type: IpcWebSocketMessageType.Send, channel, data, sequence: -1 });\n }\n\n public async invoke(channel: string, methodName: string, ...args: any[]): Promise<any> {\n const requestId = ++this._nextRequest;\n IpcWebSocket.transport.send({ type: IpcWebSocketMessageType.Invoke, channel, method: methodName, data: args, request: requestId, sequence: -1 });\n\n return new Promise((resolve) => {\n this._pendingRequests.set(requestId, resolve);\n });\n }\n\n private async dispatch(_evt: Event, message: IpcWebSocketMessage) {\n if (message.type !== IpcWebSocketMessageType.Response || !message.response)\n return;\n\n const pendingHandler = this._pendingRequests.get(message.response);\n if (!pendingHandler)\n return;\n\n this._pendingRequests.delete(message.response);\n pendingHandler(message.data);\n }\n}\n\n/** @internal */\nexport class IpcWebSocketBackend extends IpcWebSocket implements IpcSocketBackend {\n private _handlers = new Map<string, (event: Event, methodName: string, ...args: any[]) => Promise<any>>();\n private _processingQueue: IpcWebSocketMessage[] = [];\n private _processing: IpcWebSocketMessage | undefined;\n\n public constructor() {\n super();\n IpcWebSocket.receivers.add(async (e, m) => this.dispatch(e, m));\n }\n\n public send(channel: string, ...data: any[]): void {\n IpcWebSocket.transport.send({ type: IpcWebSocketMessageType.Push, channel, data, sequence: -1 });\n }\n\n public handle(channel: string, handler: (event: Event, methodName: string, ...args: any[]) => Promise<any>): RemoveFunction {\n this._handlers.set(channel, handler);\n\n return () => {\n if (this._handlers.get(channel) === handler)\n this._handlers.delete(channel);\n };\n }\n\n private async dispatch(_evt: Event, message: IpcWebSocketMessage) {\n if (message.type !== IpcWebSocketMessageType.Invoke)\n return;\n\n this._processingQueue.push(message);\n await this.processMessages();\n }\n\n private async processMessages() {\n if (this._processing || !this._processingQueue.length) {\n return;\n }\n\n const message = this._processingQueue.shift();\n if (message && message.method) {\n const handler = this._handlers.get(message.channel);\n if (handler) {\n this._processing = message;\n\n let args = message.data;\n if (typeof (args) === \"undefined\")\n args = [];\n\n const response = await handler({} as any, message.method, ...args);\n\n IpcWebSocket.transport.send({\n type: IpcWebSocketMessageType.Response,\n channel: message.channel,\n response: message.request,\n data: response,\n sequence: -1,\n });\n\n this._processing = undefined;\n }\n }\n\n await this.processMessages();\n }\n}\n"]}
@@ -1,16 +1,16 @@
1
- /** @packageDocumentation
2
- * @module IpcSocket
3
- */
4
- import { IpcWebSocketMessage } from "./IpcWebSocket";
5
- /** @internal */
6
- export declare abstract class IpcWebSocketTransport {
7
- private _partial?;
8
- private _received;
9
- private _outstanding;
10
- abstract send(message: IpcWebSocketMessage): void;
11
- protected unwrap(data: any): any;
12
- protected notifyIncoming(data: any, connection: any): Promise<IpcWebSocketMessage>;
13
- protected serialize(data: IpcWebSocketMessage): any[];
14
- protected notifyClose(connection: any): void;
15
- }
1
+ /** @packageDocumentation
2
+ * @module IpcSocket
3
+ */
4
+ import { IpcWebSocketMessage } from "./IpcWebSocket";
5
+ /** @internal */
6
+ export declare abstract class IpcWebSocketTransport {
7
+ private _partial?;
8
+ private _received;
9
+ private _outstanding;
10
+ abstract send(message: IpcWebSocketMessage): void;
11
+ protected unwrap(data: any): any;
12
+ protected notifyIncoming(data: any, connection: any): Promise<IpcWebSocketMessage>;
13
+ protected serialize(data: IpcWebSocketMessage): any[];
14
+ protected notifyClose(connection: any): void;
15
+ }
16
16
  //# sourceMappingURL=IpcWebSocketTransport.d.ts.map