@itwin/core-bentley 3.6.0-dev.8 → 3.6.1

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 (245) hide show
  1. package/CHANGELOG.md +51 -1
  2. package/LICENSE.md +1 -1
  3. package/lib/cjs/AccessToken.d.ts +10 -8
  4. package/lib/cjs/AccessToken.d.ts.map +1 -1
  5. package/lib/cjs/AccessToken.js +9 -9
  6. package/lib/cjs/AccessToken.js.map +1 -1
  7. package/lib/cjs/Assert.d.ts +25 -25
  8. package/lib/cjs/Assert.js +45 -45
  9. package/lib/cjs/Assert.js.map +1 -1
  10. package/lib/cjs/BeEvent.d.ts +81 -81
  11. package/lib/cjs/BeEvent.js +156 -156
  12. package/lib/cjs/BeEvent.js.map +1 -1
  13. package/lib/cjs/BeSQLite.d.ts +172 -170
  14. package/lib/cjs/BeSQLite.d.ts.map +1 -1
  15. package/lib/cjs/BeSQLite.js +185 -183
  16. package/lib/cjs/BeSQLite.js.map +1 -1
  17. package/lib/cjs/BentleyError.d.ts +378 -378
  18. package/lib/cjs/BentleyError.d.ts.map +1 -1
  19. package/lib/cjs/BentleyError.js +703 -702
  20. package/lib/cjs/BentleyError.js.map +1 -1
  21. package/lib/cjs/BentleyLoggerCategory.d.ts +11 -11
  22. package/lib/cjs/BentleyLoggerCategory.js +19 -19
  23. package/lib/cjs/BentleyLoggerCategory.js.map +1 -1
  24. package/lib/cjs/ByteStream.d.ts +110 -94
  25. package/lib/cjs/ByteStream.d.ts.map +1 -1
  26. package/lib/cjs/ByteStream.js +159 -143
  27. package/lib/cjs/ByteStream.js.map +1 -1
  28. package/lib/cjs/ClassUtils.d.ts +14 -14
  29. package/lib/cjs/ClassUtils.js +27 -27
  30. package/lib/cjs/ClassUtils.js.map +1 -1
  31. package/lib/cjs/Compare.d.ts +47 -47
  32. package/lib/cjs/Compare.js +75 -75
  33. package/lib/cjs/Compare.js.map +1 -1
  34. package/lib/cjs/CompressedId64Set.d.ts +134 -134
  35. package/lib/cjs/CompressedId64Set.js +428 -428
  36. package/lib/cjs/CompressedId64Set.js.map +1 -1
  37. package/lib/cjs/Dictionary.d.ts +125 -125
  38. package/lib/cjs/Dictionary.js +203 -203
  39. package/lib/cjs/Dictionary.js.map +1 -1
  40. package/lib/cjs/Disposable.d.ts +80 -80
  41. package/lib/cjs/Disposable.js +120 -120
  42. package/lib/cjs/Disposable.js.map +1 -1
  43. package/lib/cjs/Id.d.ts +285 -277
  44. package/lib/cjs/Id.d.ts.map +1 -1
  45. package/lib/cjs/Id.js +643 -629
  46. package/lib/cjs/Id.js.map +1 -1
  47. package/lib/cjs/IndexMap.d.ts +65 -65
  48. package/lib/cjs/IndexMap.js +91 -91
  49. package/lib/cjs/IndexMap.js.map +1 -1
  50. package/lib/cjs/JsonSchema.d.ts +77 -77
  51. package/lib/cjs/JsonSchema.js +9 -9
  52. package/lib/cjs/JsonSchema.js.map +1 -1
  53. package/lib/cjs/JsonUtils.d.ts +78 -78
  54. package/lib/cjs/JsonUtils.js +151 -151
  55. package/lib/cjs/JsonUtils.js.map +1 -1
  56. package/lib/cjs/LRUMap.d.ts +129 -129
  57. package/lib/cjs/LRUMap.js +333 -333
  58. package/lib/cjs/LRUMap.js.map +1 -1
  59. package/lib/cjs/Logger.d.ts +143 -143
  60. package/lib/cjs/Logger.js +258 -258
  61. package/lib/cjs/Logger.js.map +1 -1
  62. package/lib/cjs/ObservableSet.d.ts +23 -23
  63. package/lib/cjs/ObservableSet.js +51 -51
  64. package/lib/cjs/ObservableSet.js.map +1 -1
  65. package/lib/cjs/OneAtATimeAction.d.ts +31 -31
  66. package/lib/cjs/OneAtATimeAction.js +94 -94
  67. package/lib/cjs/OneAtATimeAction.js.map +1 -1
  68. package/lib/cjs/OrderedId64Iterable.d.ts +74 -74
  69. package/lib/cjs/OrderedId64Iterable.js +235 -235
  70. package/lib/cjs/OrderedId64Iterable.js.map +1 -1
  71. package/lib/cjs/OrderedSet.d.ts +40 -40
  72. package/lib/cjs/OrderedSet.js +64 -64
  73. package/lib/cjs/OrderedSet.js.map +1 -1
  74. package/lib/cjs/PriorityQueue.d.ts +70 -70
  75. package/lib/cjs/PriorityQueue.js +140 -140
  76. package/lib/cjs/PriorityQueue.js.map +1 -1
  77. package/lib/cjs/ProcessDetector.d.ts +59 -59
  78. package/lib/cjs/ProcessDetector.js +71 -71
  79. package/lib/cjs/ProcessDetector.js.map +1 -1
  80. package/lib/cjs/SortedArray.d.ts +236 -232
  81. package/lib/cjs/SortedArray.d.ts.map +1 -1
  82. package/lib/cjs/SortedArray.js +315 -303
  83. package/lib/cjs/SortedArray.js.map +1 -1
  84. package/lib/cjs/StatusCategory.d.ts +30 -30
  85. package/lib/cjs/StatusCategory.js +460 -460
  86. package/lib/cjs/StatusCategory.js.map +1 -1
  87. package/lib/cjs/StringUtils.d.ts +22 -22
  88. package/lib/cjs/StringUtils.js +148 -148
  89. package/lib/cjs/StringUtils.js.map +1 -1
  90. package/lib/cjs/Time.d.ts +122 -122
  91. package/lib/cjs/Time.js +152 -152
  92. package/lib/cjs/Time.js.map +1 -1
  93. package/lib/cjs/Tracing.d.ts +40 -40
  94. package/lib/cjs/Tracing.js +130 -130
  95. package/lib/cjs/Tracing.js.map +1 -1
  96. package/lib/cjs/TupleKeyedMap.d.ts +36 -36
  97. package/lib/cjs/TupleKeyedMap.js +102 -102
  98. package/lib/cjs/TupleKeyedMap.js.map +1 -1
  99. package/lib/cjs/TypedArrayBuilder.d.ts +155 -97
  100. package/lib/cjs/TypedArrayBuilder.d.ts.map +1 -1
  101. package/lib/cjs/TypedArrayBuilder.js +208 -134
  102. package/lib/cjs/TypedArrayBuilder.js.map +1 -1
  103. package/lib/cjs/UnexpectedErrors.d.ts +43 -43
  104. package/lib/cjs/UnexpectedErrors.js +68 -68
  105. package/lib/cjs/UnexpectedErrors.js.map +1 -1
  106. package/lib/cjs/UtilityTypes.d.ts +96 -100
  107. package/lib/cjs/UtilityTypes.d.ts.map +1 -1
  108. package/lib/cjs/UtilityTypes.js +40 -40
  109. package/lib/cjs/UtilityTypes.js.map +1 -1
  110. package/lib/cjs/YieldManager.d.ts +18 -18
  111. package/lib/cjs/YieldManager.js +34 -34
  112. package/lib/cjs/YieldManager.js.map +1 -1
  113. package/lib/cjs/core-bentley.d.ts +74 -75
  114. package/lib/cjs/core-bentley.d.ts.map +1 -1
  115. package/lib/cjs/core-bentley.js +90 -91
  116. package/lib/cjs/core-bentley.js.map +1 -1
  117. package/lib/cjs/partitionArray.d.ts +21 -21
  118. package/lib/cjs/partitionArray.js +43 -43
  119. package/lib/cjs/partitionArray.js.map +1 -1
  120. package/lib/esm/AccessToken.d.ts +10 -8
  121. package/lib/esm/AccessToken.d.ts.map +1 -1
  122. package/lib/esm/AccessToken.js +8 -8
  123. package/lib/esm/AccessToken.js.map +1 -1
  124. package/lib/esm/Assert.d.ts +25 -25
  125. package/lib/esm/Assert.js +41 -41
  126. package/lib/esm/Assert.js.map +1 -1
  127. package/lib/esm/BeEvent.d.ts +81 -81
  128. package/lib/esm/BeEvent.js +150 -150
  129. package/lib/esm/BeEvent.js.map +1 -1
  130. package/lib/esm/BeSQLite.d.ts +172 -170
  131. package/lib/esm/BeSQLite.d.ts.map +1 -1
  132. package/lib/esm/BeSQLite.js +182 -180
  133. package/lib/esm/BeSQLite.js.map +1 -1
  134. package/lib/esm/BentleyError.d.ts +378 -378
  135. package/lib/esm/BentleyError.d.ts.map +1 -1
  136. package/lib/esm/BentleyError.js +699 -698
  137. package/lib/esm/BentleyError.js.map +1 -1
  138. package/lib/esm/BentleyLoggerCategory.d.ts +11 -11
  139. package/lib/esm/BentleyLoggerCategory.js +16 -16
  140. package/lib/esm/BentleyLoggerCategory.js.map +1 -1
  141. package/lib/esm/ByteStream.d.ts +110 -94
  142. package/lib/esm/ByteStream.d.ts.map +1 -1
  143. package/lib/esm/ByteStream.js +155 -139
  144. package/lib/esm/ByteStream.js.map +1 -1
  145. package/lib/esm/ClassUtils.d.ts +14 -14
  146. package/lib/esm/ClassUtils.js +22 -22
  147. package/lib/esm/ClassUtils.js.map +1 -1
  148. package/lib/esm/Compare.d.ts +47 -47
  149. package/lib/esm/Compare.js +63 -63
  150. package/lib/esm/Compare.js.map +1 -1
  151. package/lib/esm/CompressedId64Set.d.ts +134 -134
  152. package/lib/esm/CompressedId64Set.js +423 -423
  153. package/lib/esm/CompressedId64Set.js.map +1 -1
  154. package/lib/esm/Dictionary.d.ts +125 -125
  155. package/lib/esm/Dictionary.js +199 -199
  156. package/lib/esm/Dictionary.js.map +1 -1
  157. package/lib/esm/Disposable.d.ts +80 -80
  158. package/lib/esm/Disposable.js +112 -112
  159. package/lib/esm/Disposable.js.map +1 -1
  160. package/lib/esm/Id.d.ts +285 -277
  161. package/lib/esm/Id.d.ts.map +1 -1
  162. package/lib/esm/Id.js +639 -625
  163. package/lib/esm/Id.js.map +1 -1
  164. package/lib/esm/IndexMap.d.ts +65 -65
  165. package/lib/esm/IndexMap.js +86 -86
  166. package/lib/esm/IndexMap.js.map +1 -1
  167. package/lib/esm/JsonSchema.d.ts +77 -77
  168. package/lib/esm/JsonSchema.js +8 -8
  169. package/lib/esm/JsonSchema.js.map +1 -1
  170. package/lib/esm/JsonUtils.d.ts +78 -78
  171. package/lib/esm/JsonUtils.js +148 -148
  172. package/lib/esm/JsonUtils.js.map +1 -1
  173. package/lib/esm/LRUMap.d.ts +129 -129
  174. package/lib/esm/LRUMap.js +326 -326
  175. package/lib/esm/LRUMap.js.map +1 -1
  176. package/lib/esm/Logger.d.ts +143 -143
  177. package/lib/esm/Logger.js +253 -253
  178. package/lib/esm/Logger.js.map +1 -1
  179. package/lib/esm/ObservableSet.d.ts +23 -23
  180. package/lib/esm/ObservableSet.js +47 -47
  181. package/lib/esm/ObservableSet.js.map +1 -1
  182. package/lib/esm/OneAtATimeAction.d.ts +31 -31
  183. package/lib/esm/OneAtATimeAction.js +89 -89
  184. package/lib/esm/OneAtATimeAction.js.map +1 -1
  185. package/lib/esm/OrderedId64Iterable.d.ts +74 -74
  186. package/lib/esm/OrderedId64Iterable.js +232 -232
  187. package/lib/esm/OrderedId64Iterable.js.map +1 -1
  188. package/lib/esm/OrderedSet.d.ts +40 -40
  189. package/lib/esm/OrderedSet.js +59 -59
  190. package/lib/esm/OrderedSet.js.map +1 -1
  191. package/lib/esm/PriorityQueue.d.ts +70 -70
  192. package/lib/esm/PriorityQueue.js +136 -136
  193. package/lib/esm/PriorityQueue.js.map +1 -1
  194. package/lib/esm/ProcessDetector.d.ts +59 -59
  195. package/lib/esm/ProcessDetector.js +67 -67
  196. package/lib/esm/ProcessDetector.js.map +1 -1
  197. package/lib/esm/SortedArray.d.ts +236 -232
  198. package/lib/esm/SortedArray.d.ts.map +1 -1
  199. package/lib/esm/SortedArray.js +308 -296
  200. package/lib/esm/SortedArray.js.map +1 -1
  201. package/lib/esm/StatusCategory.d.ts +30 -30
  202. package/lib/esm/StatusCategory.js +454 -454
  203. package/lib/esm/StatusCategory.js.map +1 -1
  204. package/lib/esm/StringUtils.d.ts +22 -22
  205. package/lib/esm/StringUtils.js +142 -142
  206. package/lib/esm/StringUtils.js.map +1 -1
  207. package/lib/esm/Time.d.ts +122 -122
  208. package/lib/esm/Time.js +146 -146
  209. package/lib/esm/Time.js.map +1 -1
  210. package/lib/esm/Tracing.d.ts +40 -40
  211. package/lib/esm/Tracing.js +126 -126
  212. package/lib/esm/Tracing.js.map +1 -1
  213. package/lib/esm/TupleKeyedMap.d.ts +36 -36
  214. package/lib/esm/TupleKeyedMap.js +98 -98
  215. package/lib/esm/TupleKeyedMap.js.map +1 -1
  216. package/lib/esm/TypedArrayBuilder.d.ts +155 -97
  217. package/lib/esm/TypedArrayBuilder.d.ts.map +1 -1
  218. package/lib/esm/TypedArrayBuilder.js +200 -127
  219. package/lib/esm/TypedArrayBuilder.js.map +1 -1
  220. package/lib/esm/UnexpectedErrors.d.ts +43 -43
  221. package/lib/esm/UnexpectedErrors.js +64 -64
  222. package/lib/esm/UnexpectedErrors.js.map +1 -1
  223. package/lib/esm/UtilityTypes.d.ts +96 -100
  224. package/lib/esm/UtilityTypes.d.ts.map +1 -1
  225. package/lib/esm/UtilityTypes.js +34 -34
  226. package/lib/esm/UtilityTypes.js.map +1 -1
  227. package/lib/esm/YieldManager.d.ts +18 -18
  228. package/lib/esm/YieldManager.js +30 -30
  229. package/lib/esm/YieldManager.js.map +1 -1
  230. package/lib/esm/core-bentley.d.ts +74 -75
  231. package/lib/esm/core-bentley.d.ts.map +1 -1
  232. package/lib/esm/core-bentley.js +78 -79
  233. package/lib/esm/core-bentley.js.map +1 -1
  234. package/lib/esm/partitionArray.d.ts +21 -21
  235. package/lib/esm/partitionArray.js +39 -39
  236. package/lib/esm/partitionArray.js.map +1 -1
  237. package/package.json +3 -3
  238. package/lib/cjs/AsyncMutex.d.ts +0 -27
  239. package/lib/cjs/AsyncMutex.d.ts.map +0 -1
  240. package/lib/cjs/AsyncMutex.js +0 -44
  241. package/lib/cjs/AsyncMutex.js.map +0 -1
  242. package/lib/esm/AsyncMutex.d.ts +0 -27
  243. package/lib/esm/AsyncMutex.d.ts.map +0 -1
  244. package/lib/esm/AsyncMutex.js +0 -40
  245. package/lib/esm/AsyncMutex.js.map +0 -1
@@ -1,80 +1,79 @@
1
- /*---------------------------------------------------------------------------------------------
2
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
- * See LICENSE.md in the project root for license terms and full copyright notice.
4
- *--------------------------------------------------------------------------------------------*/
5
- export * from "./AccessToken";
6
- export * from "./Assert";
7
- export * from "./AsyncMutex";
8
- export * from "./BeEvent";
9
- export * from "./BentleyError";
10
- export * from "./BentleyLoggerCategory";
11
- export * from "./StatusCategory";
12
- export * from "./BeSQLite";
13
- export * from "./ByteStream";
14
- export * from "./ClassUtils";
15
- export * from "./Compare";
16
- export * from "./CompressedId64Set";
17
- export * from "./Dictionary";
18
- export * from "./Disposable";
19
- export * from "./Id";
20
- export * from "./IndexMap";
21
- export * from "./JsonSchema";
22
- export * from "./JsonUtils";
23
- export * from "./Logger";
24
- export * from "./LRUMap";
25
- export * from "./ObservableSet";
26
- export * from "./OneAtATimeAction";
27
- export * from "./OrderedId64Iterable";
28
- export * from "./OrderedSet";
29
- export * from "./partitionArray";
30
- export * from "./PriorityQueue";
31
- export * from "./ProcessDetector";
32
- export * from "./SortedArray";
33
- export * from "./StringUtils";
34
- export * from "./Time";
35
- export * from "./Tracing";
36
- export * from "./TupleKeyedMap";
37
- export * from "./TypedArrayBuilder";
38
- export * from "./UnexpectedErrors";
39
- export * from "./UtilityTypes";
40
- export * from "./YieldManager";
41
- /** @docs-package-description
42
- * The core-bentley package contains classes to solve problems that are common for both client and server use cases.
43
- */
44
- /**
45
- * @docs-group-description BeSQLite
46
- * Classes for working with SQLite databases. SQLite underlies IModelDb and ECDb - see [Executing ECSQL]($docs/learning/ECSQL.md)
47
- */
48
- /**
49
- * @docs-group-description Errors
50
- * Classes for working with errors.
51
- */
52
- /**
53
- * @docs-group-description Events
54
- * Classes for raising and handling events.
55
- */
56
- /**
57
- * @docs-group-description Ids
58
- * Classes for working with unique identifiers.
59
- */
60
- /**
61
- * @docs-group-description Logging
62
- * Classes for configuring and logging diagnostic messages - see [Learning about Logging]($docs/learning/common/Logging.md)
63
- */
64
- /**
65
- * @docs-group-description Collections
66
- * Specialized, customizable collection classes like priority queues.
67
- */
68
- /**
69
- * @docs-group-description Json
70
- * utilities for dealing with Json strings and files.
71
- */
72
- /**
73
- * @docs-group-description Utils
74
- * Miscellaneous utility classes.
75
- */
76
- /**
77
- * @docs-group-description ProcessDetector
78
- * Functions for determining the type of the current JavaScript process.
79
- */
1
+ /*---------------------------------------------------------------------------------------------
2
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
+ * See LICENSE.md in the project root for license terms and full copyright notice.
4
+ *--------------------------------------------------------------------------------------------*/
5
+ export * from "./AccessToken";
6
+ export * from "./Assert";
7
+ export * from "./BeEvent";
8
+ export * from "./BentleyError";
9
+ export * from "./BentleyLoggerCategory";
10
+ export * from "./StatusCategory";
11
+ export * from "./BeSQLite";
12
+ export * from "./ByteStream";
13
+ export * from "./ClassUtils";
14
+ export * from "./Compare";
15
+ export * from "./CompressedId64Set";
16
+ export * from "./Dictionary";
17
+ export * from "./Disposable";
18
+ export * from "./Id";
19
+ export * from "./IndexMap";
20
+ export * from "./JsonSchema";
21
+ export * from "./JsonUtils";
22
+ export * from "./Logger";
23
+ export * from "./LRUMap";
24
+ export * from "./ObservableSet";
25
+ export * from "./OneAtATimeAction";
26
+ export * from "./OrderedId64Iterable";
27
+ export * from "./OrderedSet";
28
+ export * from "./partitionArray";
29
+ export * from "./PriorityQueue";
30
+ export * from "./ProcessDetector";
31
+ export * from "./SortedArray";
32
+ export * from "./StringUtils";
33
+ export * from "./Time";
34
+ export * from "./Tracing";
35
+ export * from "./TupleKeyedMap";
36
+ export * from "./TypedArrayBuilder";
37
+ export * from "./UnexpectedErrors";
38
+ export * from "./UtilityTypes";
39
+ export * from "./YieldManager";
40
+ /** @docs-package-description
41
+ * The core-bentley package contains classes to solve problems that are common for both client and server use cases.
42
+ */
43
+ /**
44
+ * @docs-group-description BeSQLite
45
+ * Classes for working with SQLite databases. SQLite underlies IModelDb and ECDb - see [Executing ECSQL]($docs/learning/ECSQL.md)
46
+ */
47
+ /**
48
+ * @docs-group-description Errors
49
+ * Classes for working with errors.
50
+ */
51
+ /**
52
+ * @docs-group-description Events
53
+ * Classes for raising and handling events.
54
+ */
55
+ /**
56
+ * @docs-group-description Ids
57
+ * Classes for working with unique identifiers.
58
+ */
59
+ /**
60
+ * @docs-group-description Logging
61
+ * Classes for configuring and logging diagnostic messages - see [Learning about Logging]($docs/learning/common/Logging.md)
62
+ */
63
+ /**
64
+ * @docs-group-description Collections
65
+ * Specialized, customizable collection classes like priority queues.
66
+ */
67
+ /**
68
+ * @docs-group-description Json
69
+ * utilities for dealing with Json strings and files.
70
+ */
71
+ /**
72
+ * @docs-group-description Utils
73
+ * Miscellaneous utility classes.
74
+ */
75
+ /**
76
+ * @docs-group-description ProcessDetector
77
+ * Functions for determining the type of the current JavaScript process.
78
+ */
80
79
  //# sourceMappingURL=core-bentley.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"core-bentley.js","sourceRoot":"","sources":["../../src/core-bentley.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,yBAAyB,CAAC;AACxC,cAAc,kBAAkB,CAAC;AACjC,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,qBAAqB,CAAC;AACpC,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,MAAM,CAAC;AACrB,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,QAAQ,CAAC;AACvB,cAAc,WAAW,CAAC;AAC1B,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAE/B;;GAEG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG","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\nexport * from \"./AccessToken\";\r\nexport * from \"./Assert\";\r\nexport * from \"./AsyncMutex\";\r\nexport * from \"./BeEvent\";\r\nexport * from \"./BentleyError\";\r\nexport * from \"./BentleyLoggerCategory\";\r\nexport * from \"./StatusCategory\";\r\nexport * from \"./BeSQLite\";\r\nexport * from \"./ByteStream\";\r\nexport * from \"./ClassUtils\";\r\nexport * from \"./Compare\";\r\nexport * from \"./CompressedId64Set\";\r\nexport * from \"./Dictionary\";\r\nexport * from \"./Disposable\";\r\nexport * from \"./Id\";\r\nexport * from \"./IndexMap\";\r\nexport * from \"./JsonSchema\";\r\nexport * from \"./JsonUtils\";\r\nexport * from \"./Logger\";\r\nexport * from \"./LRUMap\";\r\nexport * from \"./ObservableSet\";\r\nexport * from \"./OneAtATimeAction\";\r\nexport * from \"./OrderedId64Iterable\";\r\nexport * from \"./OrderedSet\";\r\nexport * from \"./partitionArray\";\r\nexport * from \"./PriorityQueue\";\r\nexport * from \"./ProcessDetector\";\r\nexport * from \"./SortedArray\";\r\nexport * from \"./StringUtils\";\r\nexport * from \"./Time\";\r\nexport * from \"./Tracing\";\r\nexport * from \"./TupleKeyedMap\";\r\nexport * from \"./TypedArrayBuilder\";\r\nexport * from \"./UnexpectedErrors\";\r\nexport * from \"./UtilityTypes\";\r\nexport * from \"./YieldManager\";\r\n\r\n/** @docs-package-description\r\n * The core-bentley package contains classes to solve problems that are common for both client and server use cases.\r\n */\r\n/**\r\n * @docs-group-description BeSQLite\r\n * Classes for working with SQLite databases. SQLite underlies IModelDb and ECDb - see [Executing ECSQL]($docs/learning/ECSQL.md)\r\n */\r\n/**\r\n * @docs-group-description Errors\r\n * Classes for working with errors.\r\n */\r\n/**\r\n * @docs-group-description Events\r\n * Classes for raising and handling events.\r\n */\r\n/**\r\n * @docs-group-description Ids\r\n * Classes for working with unique identifiers.\r\n */\r\n/**\r\n * @docs-group-description Logging\r\n * Classes for configuring and logging diagnostic messages - see [Learning about Logging]($docs/learning/common/Logging.md)\r\n */\r\n/**\r\n * @docs-group-description Collections\r\n * Specialized, customizable collection classes like priority queues.\r\n */\r\n/**\r\n * @docs-group-description Json\r\n * utilities for dealing with Json strings and files.\r\n */\r\n/**\r\n * @docs-group-description Utils\r\n * Miscellaneous utility classes.\r\n */\r\n/**\r\n * @docs-group-description ProcessDetector\r\n * Functions for determining the type of the current JavaScript process.\r\n */\r\n"]}
1
+ {"version":3,"file":"core-bentley.js","sourceRoot":"","sources":["../../src/core-bentley.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,yBAAyB,CAAC;AACxC,cAAc,kBAAkB,CAAC;AACjC,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,qBAAqB,CAAC;AACpC,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,MAAM,CAAC;AACrB,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,QAAQ,CAAC;AACvB,cAAc,WAAW,CAAC;AAC1B,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAE/B;;GAEG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG","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*--------------------------------------------------------------------------------------------*/\nexport * from \"./AccessToken\";\nexport * from \"./Assert\";\nexport * from \"./BeEvent\";\nexport * from \"./BentleyError\";\nexport * from \"./BentleyLoggerCategory\";\nexport * from \"./StatusCategory\";\nexport * from \"./BeSQLite\";\nexport * from \"./ByteStream\";\nexport * from \"./ClassUtils\";\nexport * from \"./Compare\";\nexport * from \"./CompressedId64Set\";\nexport * from \"./Dictionary\";\nexport * from \"./Disposable\";\nexport * from \"./Id\";\nexport * from \"./IndexMap\";\nexport * from \"./JsonSchema\";\nexport * from \"./JsonUtils\";\nexport * from \"./Logger\";\nexport * from \"./LRUMap\";\nexport * from \"./ObservableSet\";\nexport * from \"./OneAtATimeAction\";\nexport * from \"./OrderedId64Iterable\";\nexport * from \"./OrderedSet\";\nexport * from \"./partitionArray\";\nexport * from \"./PriorityQueue\";\nexport * from \"./ProcessDetector\";\nexport * from \"./SortedArray\";\nexport * from \"./StringUtils\";\nexport * from \"./Time\";\nexport * from \"./Tracing\";\nexport * from \"./TupleKeyedMap\";\nexport * from \"./TypedArrayBuilder\";\nexport * from \"./UnexpectedErrors\";\nexport * from \"./UtilityTypes\";\nexport * from \"./YieldManager\";\n\n/** @docs-package-description\n * The core-bentley package contains classes to solve problems that are common for both client and server use cases.\n */\n/**\n * @docs-group-description BeSQLite\n * Classes for working with SQLite databases. SQLite underlies IModelDb and ECDb - see [Executing ECSQL]($docs/learning/ECSQL.md)\n */\n/**\n * @docs-group-description Errors\n * Classes for working with errors.\n */\n/**\n * @docs-group-description Events\n * Classes for raising and handling events.\n */\n/**\n * @docs-group-description Ids\n * Classes for working with unique identifiers.\n */\n/**\n * @docs-group-description Logging\n * Classes for configuring and logging diagnostic messages - see [Learning about Logging]($docs/learning/common/Logging.md)\n */\n/**\n * @docs-group-description Collections\n * Specialized, customizable collection classes like priority queues.\n */\n/**\n * @docs-group-description Json\n * utilities for dealing with Json strings and files.\n */\n/**\n * @docs-group-description Utils\n * Miscellaneous utility classes.\n */\n/**\n * @docs-group-description ProcessDetector\n * Functions for determining the type of the current JavaScript process.\n */\n"]}
@@ -1,22 +1,22 @@
1
- /** @packageDocumentation
2
- * @module Collections
3
- */
4
- /** Partitions an array in-place according to some criterion, such that elements that fulfill the criterion are grouped in the lower
5
- * portion of the array, and those that fail to fulfill the criterion are grouped in the upper portion of the array.
6
- * @param array The array to be partitioned.
7
- * @param criterion A function invoked for each element of the array, returning whether the element fulfills the criterion.
8
- * @returns The index of the upper partition, i.e., of the first element that fails the criterion. If all elements fulfill the criterion, this is the length of the array.
9
- * @note The relative ordering of elements within each partition is unspecified.
10
- * Example:
11
- * ```ts
12
- * function isEven(n: number) { return 0 === n % 2; }
13
- * const list = [ 1, 2, 3, 4, 5 ];
14
- * const firstOddIndex = partitionArray(list, isEven); // firstOddIndex = 2
15
- * // 2 and 4 now appear before 1, 3, and 5 in the list; their ordering is otherwise unspecified.
16
- * for (let i = 0; i < list.length; i++)
17
- * assert(isEven(list[i]) === i < firstOddIndex);
18
- * ```
19
- * @public
20
- */
21
- export declare function partitionArray<T>(array: T[], criterion: (element: T) => boolean): number;
1
+ /** @packageDocumentation
2
+ * @module Collections
3
+ */
4
+ /** Partitions an array in-place according to some criterion, such that elements that fulfill the criterion are grouped in the lower
5
+ * portion of the array, and those that fail to fulfill the criterion are grouped in the upper portion of the array.
6
+ * @param array The array to be partitioned.
7
+ * @param criterion A function invoked for each element of the array, returning whether the element fulfills the criterion.
8
+ * @returns The index of the upper partition, i.e., of the first element that fails the criterion. If all elements fulfill the criterion, this is the length of the array.
9
+ * @note The relative ordering of elements within each partition is unspecified.
10
+ * Example:
11
+ * ```ts
12
+ * function isEven(n: number) { return 0 === n % 2; }
13
+ * const list = [ 1, 2, 3, 4, 5 ];
14
+ * const firstOddIndex = partitionArray(list, isEven); // firstOddIndex = 2
15
+ * // 2 and 4 now appear before 1, 3, and 5 in the list; their ordering is otherwise unspecified.
16
+ * for (let i = 0; i < list.length; i++)
17
+ * assert(isEven(list[i]) === i < firstOddIndex);
18
+ * ```
19
+ * @public
20
+ */
21
+ export declare function partitionArray<T>(array: T[], criterion: (element: T) => boolean): number;
22
22
  //# sourceMappingURL=partitionArray.d.ts.map
@@ -1,40 +1,40 @@
1
- /*---------------------------------------------------------------------------------------------
2
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
- * See LICENSE.md in the project root for license terms and full copyright notice.
4
- *--------------------------------------------------------------------------------------------*/
5
- /** @packageDocumentation
6
- * @module Collections
7
- */
8
- /** Partitions an array in-place according to some criterion, such that elements that fulfill the criterion are grouped in the lower
9
- * portion of the array, and those that fail to fulfill the criterion are grouped in the upper portion of the array.
10
- * @param array The array to be partitioned.
11
- * @param criterion A function invoked for each element of the array, returning whether the element fulfills the criterion.
12
- * @returns The index of the upper partition, i.e., of the first element that fails the criterion. If all elements fulfill the criterion, this is the length of the array.
13
- * @note The relative ordering of elements within each partition is unspecified.
14
- * Example:
15
- * ```ts
16
- * function isEven(n: number) { return 0 === n % 2; }
17
- * const list = [ 1, 2, 3, 4, 5 ];
18
- * const firstOddIndex = partitionArray(list, isEven); // firstOddIndex = 2
19
- * // 2 and 4 now appear before 1, 3, and 5 in the list; their ordering is otherwise unspecified.
20
- * for (let i = 0; i < list.length; i++)
21
- * assert(isEven(list[i]) === i < firstOddIndex);
22
- * ```
23
- * @public
24
- */
25
- export function partitionArray(array, criterion) {
26
- let index = 0;
27
- let partition = array.length;
28
- while (index < partition) {
29
- const elem = array[index];
30
- if (criterion(elem)) {
31
- ++index;
32
- }
33
- else {
34
- array[index] = array[--partition];
35
- array[partition] = elem;
36
- }
37
- }
38
- return partition;
39
- }
1
+ /*---------------------------------------------------------------------------------------------
2
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
+ * See LICENSE.md in the project root for license terms and full copyright notice.
4
+ *--------------------------------------------------------------------------------------------*/
5
+ /** @packageDocumentation
6
+ * @module Collections
7
+ */
8
+ /** Partitions an array in-place according to some criterion, such that elements that fulfill the criterion are grouped in the lower
9
+ * portion of the array, and those that fail to fulfill the criterion are grouped in the upper portion of the array.
10
+ * @param array The array to be partitioned.
11
+ * @param criterion A function invoked for each element of the array, returning whether the element fulfills the criterion.
12
+ * @returns The index of the upper partition, i.e., of the first element that fails the criterion. If all elements fulfill the criterion, this is the length of the array.
13
+ * @note The relative ordering of elements within each partition is unspecified.
14
+ * Example:
15
+ * ```ts
16
+ * function isEven(n: number) { return 0 === n % 2; }
17
+ * const list = [ 1, 2, 3, 4, 5 ];
18
+ * const firstOddIndex = partitionArray(list, isEven); // firstOddIndex = 2
19
+ * // 2 and 4 now appear before 1, 3, and 5 in the list; their ordering is otherwise unspecified.
20
+ * for (let i = 0; i < list.length; i++)
21
+ * assert(isEven(list[i]) === i < firstOddIndex);
22
+ * ```
23
+ * @public
24
+ */
25
+ export function partitionArray(array, criterion) {
26
+ let index = 0;
27
+ let partition = array.length;
28
+ while (index < partition) {
29
+ const elem = array[index];
30
+ if (criterion(elem)) {
31
+ ++index;
32
+ }
33
+ else {
34
+ array[index] = array[--partition];
35
+ array[partition] = elem;
36
+ }
37
+ }
38
+ return partition;
39
+ }
40
40
  //# sourceMappingURL=partitionArray.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"partitionArray.js","sourceRoot":"","sources":["../../src/partitionArray.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,cAAc,CAAI,KAAU,EAAE,SAAkC;IAC9E,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,IAAI,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC;IAC7B,OAAO,KAAK,GAAG,SAAS,EAAE;QACxB,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;QAC1B,IAAI,SAAS,CAAC,IAAI,CAAC,EAAE;YACnB,EAAE,KAAK,CAAC;SACT;aAAM;YACL,KAAK,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,EAAE,SAAS,CAAC,CAAC;YAClC,KAAK,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC;SACzB;KACF;IAED,OAAO,SAAS,CAAC;AACnB,CAAC","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 Collections\r\n */\r\n\r\n/** Partitions an array in-place according to some criterion, such that elements that fulfill the criterion are grouped in the lower\r\n * portion of the array, and those that fail to fulfill the criterion are grouped in the upper portion of the array.\r\n * @param array The array to be partitioned.\r\n * @param criterion A function invoked for each element of the array, returning whether the element fulfills the criterion.\r\n * @returns The index of the upper partition, i.e., of the first element that fails the criterion. If all elements fulfill the criterion, this is the length of the array.\r\n * @note The relative ordering of elements within each partition is unspecified.\r\n * Example:\r\n * ```ts\r\n * function isEven(n: number) { return 0 === n % 2; }\r\n * const list = [ 1, 2, 3, 4, 5 ];\r\n * const firstOddIndex = partitionArray(list, isEven); // firstOddIndex = 2\r\n * // 2 and 4 now appear before 1, 3, and 5 in the list; their ordering is otherwise unspecified.\r\n * for (let i = 0; i < list.length; i++)\r\n * assert(isEven(list[i]) === i < firstOddIndex);\r\n * ```\r\n * @public\r\n */\r\nexport function partitionArray<T>(array: T[], criterion: (element: T) => boolean): number {\r\n let index = 0;\r\n let partition = array.length;\r\n while (index < partition) {\r\n const elem = array[index];\r\n if (criterion(elem)) {\r\n ++index;\r\n } else {\r\n array[index] = array[--partition];\r\n array[partition] = elem;\r\n }\r\n }\r\n\r\n return partition;\r\n}\r\n"]}
1
+ {"version":3,"file":"partitionArray.js","sourceRoot":"","sources":["../../src/partitionArray.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,cAAc,CAAI,KAAU,EAAE,SAAkC;IAC9E,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,IAAI,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC;IAC7B,OAAO,KAAK,GAAG,SAAS,EAAE;QACxB,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;QAC1B,IAAI,SAAS,CAAC,IAAI,CAAC,EAAE;YACnB,EAAE,KAAK,CAAC;SACT;aAAM;YACL,KAAK,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,EAAE,SAAS,CAAC,CAAC;YAClC,KAAK,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC;SACzB;KACF;IAED,OAAO,SAAS,CAAC;AACnB,CAAC","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 Collections\n */\n\n/** Partitions an array in-place according to some criterion, such that elements that fulfill the criterion are grouped in the lower\n * portion of the array, and those that fail to fulfill the criterion are grouped in the upper portion of the array.\n * @param array The array to be partitioned.\n * @param criterion A function invoked for each element of the array, returning whether the element fulfills the criterion.\n * @returns The index of the upper partition, i.e., of the first element that fails the criterion. If all elements fulfill the criterion, this is the length of the array.\n * @note The relative ordering of elements within each partition is unspecified.\n * Example:\n * ```ts\n * function isEven(n: number) { return 0 === n % 2; }\n * const list = [ 1, 2, 3, 4, 5 ];\n * const firstOddIndex = partitionArray(list, isEven); // firstOddIndex = 2\n * // 2 and 4 now appear before 1, 3, and 5 in the list; their ordering is otherwise unspecified.\n * for (let i = 0; i < list.length; i++)\n * assert(isEven(list[i]) === i < firstOddIndex);\n * ```\n * @public\n */\nexport function partitionArray<T>(array: T[], criterion: (element: T) => boolean): number {\n let index = 0;\n let partition = array.length;\n while (index < partition) {\n const elem = array[index];\n if (criterion(elem)) {\n ++index;\n } else {\n array[index] = array[--partition];\n array[partition] = elem;\n }\n }\n\n return partition;\n}\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@itwin/core-bentley",
3
- "version": "3.6.0-dev.8",
3
+ "version": "3.6.1",
4
4
  "description": "Bentley JavaScript core components",
5
5
  "main": "lib/cjs/core-bentley.js",
6
6
  "module": "lib/esm/core-bentley.js",
@@ -21,8 +21,8 @@
21
21
  "url": "http://www.bentley.com"
22
22
  },
23
23
  "devDependencies": {
24
- "@itwin/build-tools": "3.6.0-dev.8",
25
- "@itwin/eslint-plugin": "3.6.0-dev.8",
24
+ "@itwin/build-tools": "3.6.1",
25
+ "@itwin/eslint-plugin": "3.6.1",
26
26
  "@opentelemetry/api": "1.0.4",
27
27
  "@types/chai": "4.3.1",
28
28
  "@types/chai-as-promised": "^7",
@@ -1,27 +0,0 @@
1
- /** @packageDocumentation
2
- * @module Utils
3
- */
4
- /**
5
- * Type of method to unlock the held mutex
6
- * @see [[AsyncMutex]]
7
- * @alpha
8
- */
9
- export declare type AsyncMutexUnlockFnType = () => void;
10
- /**
11
- * Utility to ensure a block of async code executes atomically.
12
- * Even if JavaScript precludes the possibility of race conditions between threads, there is potential for
13
- * race conditions with async code. This utility is needed in cases where a block of async code needs to run
14
- * to completion before another block is started.
15
- * This utility was based on this article: https://spin.atomicobject.com/2018/09/10/javascript-concurrency/
16
- * @alpha
17
- */
18
- export declare class AsyncMutex {
19
- private _mutex;
20
- /**
21
- * Await the return value to setup a lock. The return value
22
- * is also the unlock function that can be called to unlock
23
- * the mutex.
24
- */
25
- lock(): Promise<AsyncMutexUnlockFnType>;
26
- }
27
- //# sourceMappingURL=AsyncMutex.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AsyncMutex.d.ts","sourceRoot":"","sources":["../../src/AsyncMutex.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH;;;;GAIG;AACH,oBAAY,sBAAsB,GAAG,MAAM,IAAI,CAAC;AAEhD;;;;;;;GAOG;AACH,qBAAa,UAAU;IACrB,OAAO,CAAC,MAAM,CAAqB;IAEnC;;;;OAIG;IACU,IAAI,IAAI,OAAO,CAAC,sBAAsB,CAAC;CAgBrD"}
@@ -1,44 +0,0 @@
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 Utils
8
- */
9
- Object.defineProperty(exports, "__esModule", { value: true });
10
- exports.AsyncMutex = void 0;
11
- /**
12
- * Utility to ensure a block of async code executes atomically.
13
- * Even if JavaScript precludes the possibility of race conditions between threads, there is potential for
14
- * race conditions with async code. This utility is needed in cases where a block of async code needs to run
15
- * to completion before another block is started.
16
- * This utility was based on this article: https://spin.atomicobject.com/2018/09/10/javascript-concurrency/
17
- * @alpha
18
- */
19
- class AsyncMutex {
20
- constructor() {
21
- this._mutex = Promise.resolve();
22
- }
23
- /**
24
- * Await the return value to setup a lock. The return value
25
- * is also the unlock function that can be called to unlock
26
- * the mutex.
27
- */
28
- async lock() {
29
- /**
30
- * Note: The promise returned by this method will resolve (with the unlock function, which is actually the
31
- * mutex’s then’s resolve function) once any previous mutexes have finished and called their
32
- * respective unlock function that was yielded over their promise.
33
- */
34
- let begin = (_unlock) => { };
35
- this._mutex = this._mutex.then(async () => {
36
- return new Promise(begin);
37
- });
38
- return new Promise((res) => {
39
- begin = res;
40
- });
41
- }
42
- }
43
- exports.AsyncMutex = AsyncMutex;
44
- //# sourceMappingURL=AsyncMutex.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AsyncMutex.js","sourceRoot":"","sources":["../../src/AsyncMutex.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AASH;;;;;;;GAOG;AACH,MAAa,UAAU;IAAvB;QACU,WAAM,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAuBrC,CAAC;IArBC;;;;OAIG;IACI,KAAK,CAAC,IAAI;QACf;;;;WAIG;QACH,IAAI,KAAK,GAA6C,CAAC,OAAO,EAAE,EAAE,GAAG,CAAC,CAAC;QAEvE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,IAAmB,EAAE;YACvD,OAAO,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC;QAC5B,CAAC,CAAC,CAAC;QAEH,OAAO,IAAI,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;YACzB,KAAK,GAAG,GAAG,CAAC;QACd,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AAxBD,gCAwBC","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 Utils\r\n */\r\n\r\n/**\r\n * Type of method to unlock the held mutex\r\n * @see [[AsyncMutex]]\r\n * @alpha\r\n */\r\nexport type AsyncMutexUnlockFnType = () => void;\r\n\r\n/**\r\n * Utility to ensure a block of async code executes atomically.\r\n * Even if JavaScript precludes the possibility of race conditions between threads, there is potential for\r\n * race conditions with async code. This utility is needed in cases where a block of async code needs to run\r\n * to completion before another block is started.\r\n * This utility was based on this article: https://spin.atomicobject.com/2018/09/10/javascript-concurrency/\r\n * @alpha\r\n */\r\nexport class AsyncMutex {\r\n private _mutex = Promise.resolve();\r\n\r\n /**\r\n * Await the return value to setup a lock. The return value\r\n * is also the unlock function that can be called to unlock\r\n * the mutex.\r\n */\r\n public async lock(): Promise<AsyncMutexUnlockFnType> {\r\n /**\r\n * Note: The promise returned by this method will resolve (with the unlock function, which is actually the\r\n * mutex’s then’s resolve function) once any previous mutexes have finished and called their\r\n * respective unlock function that was yielded over their promise.\r\n */\r\n let begin: (unlock: AsyncMutexUnlockFnType) => void = (_unlock) => { };\r\n\r\n this._mutex = this._mutex.then(async (): Promise<void> => {\r\n return new Promise(begin);\r\n });\r\n\r\n return new Promise((res) => {\r\n begin = res;\r\n });\r\n }\r\n}\r\n"]}
@@ -1,27 +0,0 @@
1
- /** @packageDocumentation
2
- * @module Utils
3
- */
4
- /**
5
- * Type of method to unlock the held mutex
6
- * @see [[AsyncMutex]]
7
- * @alpha
8
- */
9
- export declare type AsyncMutexUnlockFnType = () => void;
10
- /**
11
- * Utility to ensure a block of async code executes atomically.
12
- * Even if JavaScript precludes the possibility of race conditions between threads, there is potential for
13
- * race conditions with async code. This utility is needed in cases where a block of async code needs to run
14
- * to completion before another block is started.
15
- * This utility was based on this article: https://spin.atomicobject.com/2018/09/10/javascript-concurrency/
16
- * @alpha
17
- */
18
- export declare class AsyncMutex {
19
- private _mutex;
20
- /**
21
- * Await the return value to setup a lock. The return value
22
- * is also the unlock function that can be called to unlock
23
- * the mutex.
24
- */
25
- lock(): Promise<AsyncMutexUnlockFnType>;
26
- }
27
- //# sourceMappingURL=AsyncMutex.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AsyncMutex.d.ts","sourceRoot":"","sources":["../../src/AsyncMutex.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH;;;;GAIG;AACH,oBAAY,sBAAsB,GAAG,MAAM,IAAI,CAAC;AAEhD;;;;;;;GAOG;AACH,qBAAa,UAAU;IACrB,OAAO,CAAC,MAAM,CAAqB;IAEnC;;;;OAIG;IACU,IAAI,IAAI,OAAO,CAAC,sBAAsB,CAAC;CAgBrD"}
@@ -1,40 +0,0 @@
1
- /*---------------------------------------------------------------------------------------------
2
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
- * See LICENSE.md in the project root for license terms and full copyright notice.
4
- *--------------------------------------------------------------------------------------------*/
5
- /** @packageDocumentation
6
- * @module Utils
7
- */
8
- /**
9
- * Utility to ensure a block of async code executes atomically.
10
- * Even if JavaScript precludes the possibility of race conditions between threads, there is potential for
11
- * race conditions with async code. This utility is needed in cases where a block of async code needs to run
12
- * to completion before another block is started.
13
- * This utility was based on this article: https://spin.atomicobject.com/2018/09/10/javascript-concurrency/
14
- * @alpha
15
- */
16
- export class AsyncMutex {
17
- constructor() {
18
- this._mutex = Promise.resolve();
19
- }
20
- /**
21
- * Await the return value to setup a lock. The return value
22
- * is also the unlock function that can be called to unlock
23
- * the mutex.
24
- */
25
- async lock() {
26
- /**
27
- * Note: The promise returned by this method will resolve (with the unlock function, which is actually the
28
- * mutex’s then’s resolve function) once any previous mutexes have finished and called their
29
- * respective unlock function that was yielded over their promise.
30
- */
31
- let begin = (_unlock) => { };
32
- this._mutex = this._mutex.then(async () => {
33
- return new Promise(begin);
34
- });
35
- return new Promise((res) => {
36
- begin = res;
37
- });
38
- }
39
- }
40
- //# sourceMappingURL=AsyncMutex.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AsyncMutex.js","sourceRoot":"","sources":["../../src/AsyncMutex.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AASH;;;;;;;GAOG;AACH,MAAM,OAAO,UAAU;IAAvB;QACU,WAAM,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAuBrC,CAAC;IArBC;;;;OAIG;IACI,KAAK,CAAC,IAAI;QACf;;;;WAIG;QACH,IAAI,KAAK,GAA6C,CAAC,OAAO,EAAE,EAAE,GAAG,CAAC,CAAC;QAEvE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,IAAmB,EAAE;YACvD,OAAO,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC;QAC5B,CAAC,CAAC,CAAC;QAEH,OAAO,IAAI,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;YACzB,KAAK,GAAG,GAAG,CAAC;QACd,CAAC,CAAC,CAAC;IACL,CAAC;CACF","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Utils\r\n */\r\n\r\n/**\r\n * Type of method to unlock the held mutex\r\n * @see [[AsyncMutex]]\r\n * @alpha\r\n */\r\nexport type AsyncMutexUnlockFnType = () => void;\r\n\r\n/**\r\n * Utility to ensure a block of async code executes atomically.\r\n * Even if JavaScript precludes the possibility of race conditions between threads, there is potential for\r\n * race conditions with async code. This utility is needed in cases where a block of async code needs to run\r\n * to completion before another block is started.\r\n * This utility was based on this article: https://spin.atomicobject.com/2018/09/10/javascript-concurrency/\r\n * @alpha\r\n */\r\nexport class AsyncMutex {\r\n private _mutex = Promise.resolve();\r\n\r\n /**\r\n * Await the return value to setup a lock. The return value\r\n * is also the unlock function that can be called to unlock\r\n * the mutex.\r\n */\r\n public async lock(): Promise<AsyncMutexUnlockFnType> {\r\n /**\r\n * Note: The promise returned by this method will resolve (with the unlock function, which is actually the\r\n * mutex’s then’s resolve function) once any previous mutexes have finished and called their\r\n * respective unlock function that was yielded over their promise.\r\n */\r\n let begin: (unlock: AsyncMutexUnlockFnType) => void = (_unlock) => { };\r\n\r\n this._mutex = this._mutex.then(async (): Promise<void> => {\r\n return new Promise(begin);\r\n });\r\n\r\n return new Promise((res) => {\r\n begin = res;\r\n });\r\n }\r\n}\r\n"]}