@itwin/core-bentley 5.0.0-dev.9 → 5.0.0-dev.92

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 (164) hide show
  1. package/CHANGELOG.md +51 -1
  2. package/lib/cjs/AccessToken.js.map +1 -1
  3. package/lib/cjs/Assert.js.map +1 -1
  4. package/lib/cjs/BeEvent.js +3 -7
  5. package/lib/cjs/BeEvent.js.map +1 -1
  6. package/lib/cjs/BeSQLite.js.map +1 -1
  7. package/lib/cjs/BentleyError.d.ts +3 -0
  8. package/lib/cjs/BentleyError.d.ts.map +1 -1
  9. package/lib/cjs/BentleyError.js +6 -1
  10. package/lib/cjs/BentleyError.js.map +1 -1
  11. package/lib/cjs/BentleyLoggerCategory.js.map +1 -1
  12. package/lib/cjs/ByteStream.d.ts +3 -22
  13. package/lib/cjs/ByteStream.d.ts.map +1 -1
  14. package/lib/cjs/ByteStream.js +7 -21
  15. package/lib/cjs/ByteStream.js.map +1 -1
  16. package/lib/cjs/ClassUtils.js.map +1 -1
  17. package/lib/cjs/Compare.d.ts +15 -0
  18. package/lib/cjs/Compare.d.ts.map +1 -1
  19. package/lib/cjs/Compare.js +48 -0
  20. package/lib/cjs/Compare.js.map +1 -1
  21. package/lib/cjs/CompressedId64Set.js +6 -3
  22. package/lib/cjs/CompressedId64Set.js.map +1 -1
  23. package/lib/cjs/Dictionary.js +8 -3
  24. package/lib/cjs/Dictionary.js.map +1 -1
  25. package/lib/cjs/Disposable.d.ts +18 -0
  26. package/lib/cjs/Disposable.d.ts.map +1 -1
  27. package/lib/cjs/Disposable.js +25 -25
  28. package/lib/cjs/Disposable.js.map +1 -1
  29. package/lib/cjs/Id.d.ts +0 -4
  30. package/lib/cjs/Id.d.ts.map +1 -1
  31. package/lib/cjs/Id.js +9 -11
  32. package/lib/cjs/Id.js.map +1 -1
  33. package/lib/cjs/IndexMap.js +6 -1
  34. package/lib/cjs/IndexMap.js.map +1 -1
  35. package/lib/cjs/JsonSchema.js.map +1 -1
  36. package/lib/cjs/JsonUtils.js.map +1 -1
  37. package/lib/cjs/LRUMap.js +16 -0
  38. package/lib/cjs/LRUMap.js.map +1 -1
  39. package/lib/cjs/Logger.d.ts +24 -2
  40. package/lib/cjs/Logger.d.ts.map +1 -1
  41. package/lib/cjs/Logger.js +26 -7
  42. package/lib/cjs/Logger.js.map +1 -1
  43. package/lib/cjs/ObservableSet.js +6 -6
  44. package/lib/cjs/ObservableSet.js.map +1 -1
  45. package/lib/cjs/OneAtATimeAction.js +9 -0
  46. package/lib/cjs/OneAtATimeAction.js.map +1 -1
  47. package/lib/cjs/OrderedId64Iterable.js.map +1 -1
  48. package/lib/cjs/OrderedSet.js +1 -0
  49. package/lib/cjs/OrderedSet.js.map +1 -1
  50. package/lib/cjs/PriorityQueue.js +3 -1
  51. package/lib/cjs/PriorityQueue.js.map +1 -1
  52. package/lib/cjs/ProcessDetector.js.map +1 -1
  53. package/lib/cjs/SortedArray.js +4 -1
  54. package/lib/cjs/SortedArray.js.map +1 -1
  55. package/lib/cjs/StatusCategory.js +42 -105
  56. package/lib/cjs/StatusCategory.js.map +1 -1
  57. package/lib/cjs/StringUtils.js.map +1 -1
  58. package/lib/cjs/Time.js +5 -0
  59. package/lib/cjs/Time.js.map +1 -1
  60. package/lib/cjs/Tracing.js +2 -0
  61. package/lib/cjs/Tracing.js.map +1 -1
  62. package/lib/cjs/TupleKeyedMap.js +2 -2
  63. package/lib/cjs/TupleKeyedMap.js.map +1 -1
  64. package/lib/cjs/TypedArrayBuilder.js +8 -0
  65. package/lib/cjs/TypedArrayBuilder.js.map +1 -1
  66. package/lib/cjs/UnexpectedErrors.js +10 -12
  67. package/lib/cjs/UnexpectedErrors.js.map +1 -1
  68. package/lib/cjs/UtilityTypes.js.map +1 -1
  69. package/lib/cjs/YieldManager.js +3 -1
  70. package/lib/cjs/YieldManager.js.map +1 -1
  71. package/lib/cjs/core-bentley.js.map +1 -1
  72. package/lib/cjs/internal/BeSQLiteInternal.js.map +1 -1
  73. package/lib/cjs/internal/RepositoryStatus.js.map +1 -1
  74. package/lib/cjs/internal/cross-package.d.ts +0 -1
  75. package/lib/cjs/internal/cross-package.d.ts.map +1 -1
  76. package/lib/cjs/internal/cross-package.js +1 -3
  77. package/lib/cjs/internal/cross-package.js.map +1 -1
  78. package/lib/cjs/partitionArray.js.map +1 -1
  79. package/lib/esm/AccessToken.js.map +1 -1
  80. package/lib/esm/Assert.js.map +1 -1
  81. package/lib/esm/BeEvent.js +3 -7
  82. package/lib/esm/BeEvent.js.map +1 -1
  83. package/lib/esm/BeSQLite.js.map +1 -1
  84. package/lib/esm/BentleyError.d.ts +3 -0
  85. package/lib/esm/BentleyError.d.ts.map +1 -1
  86. package/lib/esm/BentleyError.js +6 -1
  87. package/lib/esm/BentleyError.js.map +1 -1
  88. package/lib/esm/BentleyLoggerCategory.js.map +1 -1
  89. package/lib/esm/ByteStream.d.ts +3 -22
  90. package/lib/esm/ByteStream.d.ts.map +1 -1
  91. package/lib/esm/ByteStream.js +7 -21
  92. package/lib/esm/ByteStream.js.map +1 -1
  93. package/lib/esm/ClassUtils.js.map +1 -1
  94. package/lib/esm/Compare.d.ts +15 -0
  95. package/lib/esm/Compare.d.ts.map +1 -1
  96. package/lib/esm/Compare.js +46 -0
  97. package/lib/esm/Compare.js.map +1 -1
  98. package/lib/esm/CompressedId64Set.js +6 -3
  99. package/lib/esm/CompressedId64Set.js.map +1 -1
  100. package/lib/esm/Dictionary.js +8 -3
  101. package/lib/esm/Dictionary.js.map +1 -1
  102. package/lib/esm/Disposable.d.ts +18 -0
  103. package/lib/esm/Disposable.d.ts.map +1 -1
  104. package/lib/esm/Disposable.js +24 -25
  105. package/lib/esm/Disposable.js.map +1 -1
  106. package/lib/esm/Id.d.ts +0 -4
  107. package/lib/esm/Id.d.ts.map +1 -1
  108. package/lib/esm/Id.js +9 -11
  109. package/lib/esm/Id.js.map +1 -1
  110. package/lib/esm/IndexMap.js +6 -1
  111. package/lib/esm/IndexMap.js.map +1 -1
  112. package/lib/esm/JsonSchema.js.map +1 -1
  113. package/lib/esm/JsonUtils.js.map +1 -1
  114. package/lib/esm/LRUMap.js +16 -0
  115. package/lib/esm/LRUMap.js.map +1 -1
  116. package/lib/esm/Logger.d.ts +24 -2
  117. package/lib/esm/Logger.d.ts.map +1 -1
  118. package/lib/esm/Logger.js +26 -7
  119. package/lib/esm/Logger.js.map +1 -1
  120. package/lib/esm/ObservableSet.js +6 -6
  121. package/lib/esm/ObservableSet.js.map +1 -1
  122. package/lib/esm/OneAtATimeAction.js +9 -0
  123. package/lib/esm/OneAtATimeAction.js.map +1 -1
  124. package/lib/esm/OrderedId64Iterable.js.map +1 -1
  125. package/lib/esm/OrderedSet.js +1 -0
  126. package/lib/esm/OrderedSet.js.map +1 -1
  127. package/lib/esm/PriorityQueue.js +3 -1
  128. package/lib/esm/PriorityQueue.js.map +1 -1
  129. package/lib/esm/ProcessDetector.js.map +1 -1
  130. package/lib/esm/SortedArray.js +4 -1
  131. package/lib/esm/SortedArray.js.map +1 -1
  132. package/lib/esm/StatusCategory.js +42 -105
  133. package/lib/esm/StatusCategory.js.map +1 -1
  134. package/lib/esm/StringUtils.js.map +1 -1
  135. package/lib/esm/Time.js +5 -0
  136. package/lib/esm/Time.js.map +1 -1
  137. package/lib/esm/Tracing.js +2 -0
  138. package/lib/esm/Tracing.js.map +1 -1
  139. package/lib/esm/TupleKeyedMap.js +2 -2
  140. package/lib/esm/TupleKeyedMap.js.map +1 -1
  141. package/lib/esm/TypedArrayBuilder.js +8 -0
  142. package/lib/esm/TypedArrayBuilder.js.map +1 -1
  143. package/lib/esm/UnexpectedErrors.js +10 -12
  144. package/lib/esm/UnexpectedErrors.js.map +1 -1
  145. package/lib/esm/UtilityTypes.js.map +1 -1
  146. package/lib/esm/YieldManager.js +3 -1
  147. package/lib/esm/YieldManager.js.map +1 -1
  148. package/lib/esm/core-bentley.js.map +1 -1
  149. package/lib/esm/internal/BeSQLiteInternal.js.map +1 -1
  150. package/lib/esm/internal/RepositoryStatus.js.map +1 -1
  151. package/lib/esm/internal/cross-package.d.ts +0 -1
  152. package/lib/esm/internal/cross-package.d.ts.map +1 -1
  153. package/lib/esm/internal/cross-package.js +0 -1
  154. package/lib/esm/internal/cross-package.js.map +1 -1
  155. package/lib/esm/partitionArray.js.map +1 -1
  156. package/package.json +8 -8
  157. package/lib/cjs/internal/staticLoggerMetadata.d.ts +0 -11
  158. package/lib/cjs/internal/staticLoggerMetadata.d.ts.map +0 -1
  159. package/lib/cjs/internal/staticLoggerMetadata.js +0 -17
  160. package/lib/cjs/internal/staticLoggerMetadata.js.map +0 -1
  161. package/lib/esm/internal/staticLoggerMetadata.d.ts +0 -11
  162. package/lib/esm/internal/staticLoggerMetadata.d.ts.map +0 -1
  163. package/lib/esm/internal/staticLoggerMetadata.js +0 -14
  164. package/lib/esm/internal/staticLoggerMetadata.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"SortedArray.js","sourceRoot":"","sources":["../../src/SortedArray.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 Collections\r\n */\r\n\r\nimport { OrderedComparator } from \"./Compare\";\r\n\r\n/**\r\n * A function that, given a value of type T, returns a copy of that value. Such functions are used by various collection classes.\r\n * It is up to the function to decide how deeply or shallowly the value is cloned. For example, [[shallowClone]] simply returns the input.\r\n * @public\r\n */\r\nexport type CloneFunction<T> = (value: T) => T;\r\n\r\n/**\r\n * A [[CloneFunction]] that, given a value of type T, returns the same value.\r\n * Useful as a default argument for functions that can alternatively accept custom logic for cloning values of object type.\r\n * @param value The value to clone.\r\n * @returns the input value.\r\n * @public\r\n */\r\nexport function shallowClone<T>(value: T) {\r\n return value;\r\n}\r\n\r\n/**\r\n * Given a sorted array, computes the position at which the specified value should be inserted into the array so that the array remains sorted.\r\n * @param value The value whose position is to be computed.\r\n * @param list An array of U already sorted according to the comparison criterion.\r\n * @param compare The function used to compare the value with elements in `list`.\r\n * @returns an object with 'index' corresponding to the computed position and 'equal' set to true if an equivalent element already exists at that index.\r\n * @public\r\n */\r\nexport function lowerBound<T, U = T>(value: T, list: U[], compare: OrderedComparator<T, U>): { index: number, equal: boolean } {\r\n return lowerBoundOfEquivalent(list, (element: U) => compare(value, element));\r\n}\r\n\r\nfunction lowerBoundOfEquivalent<T>(list: T[], criterion: (element: T) => number): { index: number, equal: boolean } {\r\n let low = 0;\r\n let high = list.length;\r\n while (low < high) {\r\n const mid = Math.floor((low + high) / 2);\r\n const comp = criterion(list[mid]);\r\n if (0 === comp)\r\n return { index: mid, equal: true };\r\n else if (comp < 0)\r\n high = mid;\r\n else\r\n low = mid + 1;\r\n }\r\n\r\n return { index: low, equal: false };\r\n}\r\n\r\n/** Describes how duplicate values are handled when inserting into a [[SortedArray]].\r\n * A \"duplicate\" value is one that compares equal to a value already present in the array, per the array's comparison function.\r\n * @public\r\n */\r\nexport enum DuplicatePolicy {\r\n /** The array allows duplicate values to be inserted. All duplicate values will be adjacent in the array, but the ordering between duplicate values is unspecified.\r\n * @note In the presence of duplicate values, functions like [[SortedArray.indexOf]] and [[SortedArray.findEqual]] will return one of the values - exactly which one is unspecified.\r\n */\r\n Allow,\r\n /** Duplicate values are forbidden - when attempting to insert a value equivalent to one already present, the already-present value is retained. */\r\n Retain,\r\n /** Duplicate values are forbidden - when attempting to insert a value equivalent to one already present, the already-present value is replaced by the new value.\r\n * This can be useful when the value type carries additional data that is not evaluated by the comparison function.\r\n */\r\n Replace,\r\n}\r\n\r\n/**\r\n * A read-only view of an array of some type T sorted according to some user-supplied criterion.\r\n * Duplicate elements may be present, though sub-types may enforce uniqueness of elements.\r\n * In the absence of duplicates, a ReadonlySortedArray<T> can behave like a Set<T> where T is an object and equality is determined\r\n * by some criterion other than object identity.\r\n *\r\n * Because the array is always sorted, querying for the presence of an element is performed using binary\r\n * search, which is more efficient than a linear search for reasonably large arrays.\r\n *\r\n * The comparison function must meet the following criteria, given 'lhs' and 'rhs' of type T:\r\n * - If lhs is equal to rhs, returns 0\r\n * - If lhs is less than rhs, returns a negative value\r\n * - If lhs is greater than rhs, returns a positive value\r\n * - If compare(lhs, rhs) returns 0, then compare(rhs, lhs) must also return 0\r\n * - If compare(lhs, rhs) returns a negative value, then compare(rhs, lhs) must return a positive value, and vice versa.\r\n *\r\n * Note that the array is read-only only from the perspective of its public interface. Mutation methods are defined for internal use by sub-types.\r\n *\r\n * @see [[SortedArray]] for a general-purpose mutable sorted array.\r\n * @public\r\n */\r\nexport class ReadonlySortedArray<T> implements Iterable<T> {\r\n protected _array: T[] = [];\r\n protected readonly _compare: OrderedComparator<T>;\r\n protected readonly _clone: CloneFunction<T>;\r\n protected readonly _duplicatePolicy: DuplicatePolicy;\r\n\r\n /**\r\n * Construct a new ReadonlySortedArray<T>.\r\n * @param compare The function used to compare elements within the array.\r\n * @param duplicatePolicy Policy for handling attempts to insert a value when an equivalent value already exists. If the input is a boolean, then `true` indicates [[DuplicatePolicy.Allow]], and `false` indicates [[DuplicatePolicy.Retain]].\r\n * @param clone The function invoked to clone a new element for insertion into the array. The default implementation simply returns its input.\r\n */\r\n protected constructor(compare: OrderedComparator<T>, duplicatePolicy: DuplicatePolicy | boolean = false, clone: CloneFunction<T> = shallowClone) {\r\n this._compare = compare;\r\n this._clone = clone;\r\n if (typeof duplicatePolicy === \"boolean\")\r\n duplicatePolicy = duplicatePolicy ? DuplicatePolicy.Allow : DuplicatePolicy.Retain;\r\n\r\n this._duplicatePolicy = duplicatePolicy;\r\n }\r\n\r\n /** The number of elements in the array */\r\n public get length(): number { return this._array.length; }\r\n\r\n /** Returns true if the array contains no elements. */\r\n public get isEmpty(): boolean { return 0 === this.length; }\r\n\r\n /** Returns an iterator over the contents of the array in sorted order, suitable for use in `for-of` loops. */\r\n public [Symbol.iterator](): Iterator<T> { return this._array[Symbol.iterator](); }\r\n\r\n /**\r\n * Looks up the index of an element comparing equal to the specified value using binary search.\r\n * @param value The value to search for\r\n * @returns the index of the first equivalent element found in the array, or -1 if no such element exists.\r\n */\r\n public indexOf(value: T): number {\r\n const bound = this.lowerBound(value);\r\n return bound.equal ? bound.index : -1;\r\n }\r\n\r\n /**\r\n * Returns true if this array contains at least one value comparing equal to the specified value.\r\n * @param value The value to search for\r\n * @returns true if an equivalent element exists in the array.\r\n */\r\n public contains(value: T): boolean {\r\n return -1 !== this.indexOf(value);\r\n }\r\n\r\n /**\r\n * Looks up an element comparing equal to the specified value using binary search.\r\n * @param value The value to search for\r\n * @returns the first equivalent element found in the array, or undefined if no such element exists.\r\n */\r\n public findEqual(value: T): T | undefined {\r\n const index = this.indexOf(value);\r\n return -1 !== index ? this._array[index] : undefined;\r\n }\r\n\r\n /** Find an element that compares as equivalent based on some criterion. If multiple elements are equivalent, the specific one returned is unspecified.\r\n * As an example, consider a `SortedArray<ModelState>` which uses `ModelState.id` as its ordering criterion. To find a model by its Id,\r\n * use `sortedArray.findEquivalent((element) => compareStrings(element.id, modelId))` where `modelId` is an [[Id64String]].\r\n * @param criterion A function accepting an element and returning 0 if it compares as equivalent, a negative number if it compares as \"less-than\", or a positive value if it compares as \"greater-than\".\r\n * @returns The first element found that meets the criterion, or `undefined` if no elements meet the criterion.\r\n * @see [[indexOfEquivalent]].\r\n * @public\r\n */\r\n public findEquivalent(criterion: (element: T) => number): T | undefined {\r\n const index = this.indexOfEquivalent(criterion);\r\n return -1 !== index ? this._array[index] : undefined;\r\n }\r\n\r\n /** Find the index of an element that compares as equivalent based on some criterion. If multiple elements are equivalent, the specific one returned is unspecified.\r\n * As an example, consider a `SortedArray<ModelState>` which uses `ModelState.id` as its ordering criterion. To find the index of a model by its Id,\r\n * use `sortedArray.indexOfEquivalent((element) => compareStrings(element.id, modelId))` where `modelId` is an [[Id64String]].\r\n * @param criterion A function accepting an element and returning 0 if it compares as equivalent, a negative number if the element compares as \"less-than\", or a positive value if the element compares as \"greater-than\".\r\n * @returns The index of the first element found that meets the criterion, or -1 if no elements meet the criterion.\r\n * @public\r\n */\r\n public indexOfEquivalent(criterion: (element: T) => number): number {\r\n // NB: Must invert the ordering.\r\n const bound = lowerBoundOfEquivalent(this._array, (elem: T) => 0 - criterion(elem));\r\n return bound.equal ? bound.index : -1;\r\n }\r\n\r\n /**\r\n * Looks up an element by its index in the array.\r\n * @param index The array index\r\n * @returns the element corresponding to that position in the array, or undefined if the supplied index exceeds the length of the array.\r\n */\r\n public get(index: number): T | undefined { return index < this.length ? this._array[index] : undefined; }\r\n\r\n /** Apply a function to each element in the array, in sorted order.\r\n * @param func The function to be applied.\r\n */\r\n public forEach(func: (value: T) => void): void {\r\n for (let i = 0; i < this.length; i++)\r\n func(this._array[i]);\r\n }\r\n\r\n /** The equivalent of [Array.slice](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/slice). */\r\n public slice(start?: number, end?: number): ReadonlySortedArray<T> {\r\n const slice = new ReadonlySortedArray<T>(this._compare, this._duplicatePolicy, this._clone);\r\n slice._array = this._array.slice(start, end);\r\n return slice;\r\n }\r\n\r\n /**\r\n * Computes the position at which the specified value should be inserted to maintain sorted order.\r\n * @param value The value whose position is to be computed.\r\n * @returns an object with 'index' corresponding to the computed position and 'equal' set to true if an equivalent element already exists at that index.\r\n */\r\n protected lowerBound(value: T): { index: number, equal: boolean } { return lowerBound(value, this._array, this._compare); }\r\n\r\n /** Clears the contents of the sorted array. */\r\n protected _clear(): void { this._array.length = 0; }\r\n\r\n /** Extracts the sorted array as a T[] and empties the contents of this ReadonlySortedArray.\r\n * @returns the contents of this ReadonlySortedArray as a T[].\r\n */\r\n protected _extractArray(): T[] {\r\n const result = this._array;\r\n this._array = [];\r\n return result;\r\n }\r\n\r\n /**\r\n * Attempts to insert a new value into the array at a position determined by the ordering.\r\n * The behavior differs based on the array's [[DuplicatePolicy]]:\r\n * If duplicates are **not** permitted, then:\r\n * - If an equivalent element already exists in the array:\r\n * - [[DuplicatePolicy.Retain]]: nothing will be inserted and the index of the existing element will be returned.\r\n * - [[DuplicatePolicy.Replace]]: the input value will overwrite the existing element at the same index and that index will be returned.\r\n * - Otherwise, the element is inserted and its index is returned.\r\n * If duplicates **are** permitted, then:\r\n * - The element will be inserted in a correct position based on the sorting criterion;\r\n * - The position of the element relative to other elements comparing as equal to it is unspecified; and\r\n * - The actual index of the newly-inserted element is returned.\r\n * If the element is to be inserted, then the supplied value will be passed to the clone function supplied to the constructor and the result will be inserted into the array.\r\n * @param value The value to insert\r\n * @param onInsert The optional callback method to call if insertion occurs with the inserted value\r\n * @returns the index in the array of the newly-inserted value, or, if duplicates are not permitted and an equivalent value already exists, the index of the equivalent value.\r\n */\r\n protected _insert(value: T, onInsert?: (value: T) => any): number {\r\n const bound = this.lowerBound(value);\r\n\r\n if (bound.equal) {\r\n switch (this._duplicatePolicy) {\r\n case DuplicatePolicy.Retain:\r\n return bound.index;\r\n case DuplicatePolicy.Replace:\r\n this._array[bound.index] = this._clone(value);\r\n if (onInsert)\r\n onInsert(value);\r\n\r\n return bound.index;\r\n }\r\n }\r\n\r\n this._array.splice(bound.index, 0, this._clone(value));\r\n if (undefined !== onInsert)\r\n onInsert(value);\r\n\r\n return bound.index;\r\n }\r\n\r\n /**\r\n * Removes the first occurrence of a value comparing equal to the specified value from the array.\r\n * @param value The value of the element to delete\r\n * @returns the index of the deleted value, or -1 if no such element exists.\r\n */\r\n protected _remove(value: T): number {\r\n const bound = this.lowerBound(value);\r\n if (bound.equal) {\r\n this._array.splice(bound.index, 1);\r\n return bound.index;\r\n } else {\r\n return -1;\r\n }\r\n }\r\n}\r\n\r\n/**\r\n * Maintains an array of some type T in sorted order. The ordering is specified by a function supplied\r\n * by the user.\r\n * By default, only unique elements are permitted; attempting to insert a new element that compares\r\n * as equal to an element already in the array will not modify the contents of the array.\r\n *\r\n * This allows a SortedArray<T> to behave like a Set<T> where T is an object and equality is determined\r\n * by some criterion other than object identity.\r\n *\r\n * Because the array is always sorted, querying for the presence of an element is performed using binary\r\n * search, which is more efficient than a linear search for reasonably large arrays.\r\n *\r\n * The user can also specify how the SortedArray takes ownership of inserted values, e.g., by cloning them.\r\n *\r\n * The comparison function must meet the following criteria, given 'lhs' and 'rhs' of type T:\r\n * - If lhs is equal to rhs, returns 0\r\n * - If lhs is less than rhs, returns a negative value\r\n * - If lhs is greater than rhs, returns a positive value\r\n * - If compare(lhs, rhs) returns 0, then compare(rhs, lhs) must also return 0\r\n * - If compare(lhs, rhs) returns a negative value, then compare(rhs, lhs) must return a positive value, and vice versa.\r\n *\r\n * Modifying an element in a way that affects the comparison function will produce unpredictable results, the\r\n * most likely of which is that the array will cease to be sorted.\r\n * @public\r\n */\r\nexport class SortedArray<T> extends ReadonlySortedArray<T> {\r\n /**\r\n * Construct a new SortedArray<T>.\r\n * @param compare The function used to compare elements within the array.\r\n * @param duplicatePolicy Policy for handling attempts to insert a value when an equivalent value already exists. If the input is a boolean, then `true` indicates [[DuplicatePolicy.Allow]], and `false` indicates [[DuplicatePolicy.Retain]].\r\n * @param clone The function invoked to clone a new element for insertion into the array. The default implementation simply returns its input.\r\n */\r\n public constructor(compare: OrderedComparator<T>, duplicatePolicy: DuplicatePolicy | boolean = false, clone: CloneFunction<T> = shallowClone) {\r\n super(compare, duplicatePolicy, clone);\r\n }\r\n\r\n /** Clears the contents of the sorted array. */\r\n public clear(): void { this._clear(); }\r\n\r\n /** Extracts the sorted array as a T[] and empties the contents of this SortedArray.\r\n * @returns the contents of this SortedArray as a T[].\r\n */\r\n public extractArray(): T[] { return this._extractArray(); }\r\n\r\n /**\r\n * Attempts to insert a new value into the array at a position determined by the ordering.\r\n * The behavior differs based on whether or not duplicate elements are permitted.\r\n * If duplicates are **not** permitted, then:\r\n * - If an equivalent element already exists in the array, nothing will be inserted and the index of the existing element will be returned.\r\n * - Otherwise, the element is inserted and its index is returned.\r\n * If duplicates **are** permitted, then:\r\n * - The element will be inserted in a correct position based on the sorting criterion;\r\n * - The position of the element relative to other elements comparing as equal to it is unspecified; and\r\n * - The actual index of the newly-inserted element is returned.\r\n * If the element is to be inserted, then the supplied value will be passed to the clone function supplied to the constructor and the result will be inserted into the array.\r\n * @param value The value to insert\r\n * @param onInsert The optional callback method to call if insertion occurs with the inserted value\r\n * @returns the index in the array of the newly-inserted value, or, if duplicates are not permitted and an equivalent value already exists, the index of the equivalent value.\r\n */\r\n public insert(value: T, onInsert?: (value: T) => any): number { return this._insert(value, onInsert); }\r\n\r\n /**\r\n * Removes the first occurrence of a value comparing equal to the specified value from the array.\r\n * @param value The value of the element to delete\r\n * @returns the index of the deleted value, or -1 if no such element exists.\r\n */\r\n public remove(value: T): number { return this._remove(value); }\r\n\r\n /** The equivalent of [Array.slice](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/slice). */\r\n public override slice(start?: number, end?: number): SortedArray<T> {\r\n const slice = new SortedArray<T>(this._compare, this._duplicatePolicy, this._clone);\r\n slice._array = this._array.slice(start, end);\r\n return slice;\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"SortedArray.js","sourceRoot":"","sources":["../../src/SortedArray.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 Collections\n */\n\nimport { OrderedComparator } from \"./Compare\";\n\n/**\n * A function that, given a value of type T, returns a copy of that value. Such functions are used by various collection classes.\n * It is up to the function to decide how deeply or shallowly the value is cloned. For example, [[shallowClone]] simply returns the input.\n * @public\n */\nexport type CloneFunction<T> = (value: T) => T;\n\n/**\n * A [[CloneFunction]] that, given a value of type T, returns the same value.\n * Useful as a default argument for functions that can alternatively accept custom logic for cloning values of object type.\n * @param value The value to clone.\n * @returns the input value.\n * @public\n */\nexport function shallowClone<T>(value: T) {\n return value;\n}\n\n/**\n * Given a sorted array, computes the position at which the specified value should be inserted into the array so that the array remains sorted.\n * @param value The value whose position is to be computed.\n * @param list An array of U already sorted according to the comparison criterion.\n * @param compare The function used to compare the value with elements in `list`.\n * @returns an object with 'index' corresponding to the computed position and 'equal' set to true if an equivalent element already exists at that index.\n * @public\n */\nexport function lowerBound<T, U = T>(value: T, list: U[], compare: OrderedComparator<T, U>): { index: number, equal: boolean } {\n return lowerBoundOfEquivalent(list, (element: U) => compare(value, element));\n}\n\nfunction lowerBoundOfEquivalent<T>(list: T[], criterion: (element: T) => number): { index: number, equal: boolean } {\n let low = 0;\n let high = list.length;\n while (low < high) {\n const mid = Math.floor((low + high) / 2);\n const comp = criterion(list[mid]);\n if (0 === comp)\n return { index: mid, equal: true };\n else if (comp < 0)\n high = mid;\n else\n low = mid + 1;\n }\n\n return { index: low, equal: false };\n}\n\n/** Describes how duplicate values are handled when inserting into a [[SortedArray]].\n * A \"duplicate\" value is one that compares equal to a value already present in the array, per the array's comparison function.\n * @public\n */\nexport enum DuplicatePolicy {\n /** The array allows duplicate values to be inserted. All duplicate values will be adjacent in the array, but the ordering between duplicate values is unspecified.\n * @note In the presence of duplicate values, functions like [[SortedArray.indexOf]] and [[SortedArray.findEqual]] will return one of the values - exactly which one is unspecified.\n */\n Allow,\n /** Duplicate values are forbidden - when attempting to insert a value equivalent to one already present, the already-present value is retained. */\n Retain,\n /** Duplicate values are forbidden - when attempting to insert a value equivalent to one already present, the already-present value is replaced by the new value.\n * This can be useful when the value type carries additional data that is not evaluated by the comparison function.\n */\n Replace,\n}\n\n/**\n * A read-only view of an array of some type T sorted according to some user-supplied criterion.\n * Duplicate elements may be present, though sub-types may enforce uniqueness of elements.\n * In the absence of duplicates, a ReadonlySortedArray<T> can behave like a Set<T> where T is an object and equality is determined\n * by some criterion other than object identity.\n *\n * Because the array is always sorted, querying for the presence of an element is performed using binary\n * search, which is more efficient than a linear search for reasonably large arrays.\n *\n * The comparison function must meet the following criteria, given 'lhs' and 'rhs' of type T:\n * - If lhs is equal to rhs, returns 0\n * - If lhs is less than rhs, returns a negative value\n * - If lhs is greater than rhs, returns a positive value\n * - If compare(lhs, rhs) returns 0, then compare(rhs, lhs) must also return 0\n * - If compare(lhs, rhs) returns a negative value, then compare(rhs, lhs) must return a positive value, and vice versa.\n *\n * Note that the array is read-only only from the perspective of its public interface. Mutation methods are defined for internal use by sub-types.\n *\n * @see [[SortedArray]] for a general-purpose mutable sorted array.\n * @public\n */\nexport class ReadonlySortedArray<T> implements Iterable<T> {\n protected _array: T[] = [];\n protected readonly _compare: OrderedComparator<T>;\n protected readonly _clone: CloneFunction<T>;\n protected readonly _duplicatePolicy: DuplicatePolicy;\n\n /**\n * Construct a new ReadonlySortedArray<T>.\n * @param compare The function used to compare elements within the array.\n * @param duplicatePolicy Policy for handling attempts to insert a value when an equivalent value already exists. If the input is a boolean, then `true` indicates [[DuplicatePolicy.Allow]], and `false` indicates [[DuplicatePolicy.Retain]].\n * @param clone The function invoked to clone a new element for insertion into the array. The default implementation simply returns its input.\n */\n protected constructor(compare: OrderedComparator<T>, duplicatePolicy: DuplicatePolicy | boolean = false, clone: CloneFunction<T> = shallowClone) {\n this._compare = compare;\n this._clone = clone;\n if (typeof duplicatePolicy === \"boolean\")\n duplicatePolicy = duplicatePolicy ? DuplicatePolicy.Allow : DuplicatePolicy.Retain;\n\n this._duplicatePolicy = duplicatePolicy;\n }\n\n /** The number of elements in the array */\n public get length(): number { return this._array.length; }\n\n /** Returns true if the array contains no elements. */\n public get isEmpty(): boolean { return 0 === this.length; }\n\n /** Returns an iterator over the contents of the array in sorted order, suitable for use in `for-of` loops. */\n public [Symbol.iterator](): Iterator<T> { return this._array[Symbol.iterator](); }\n\n /**\n * Looks up the index of an element comparing equal to the specified value using binary search.\n * @param value The value to search for\n * @returns the index of the first equivalent element found in the array, or -1 if no such element exists.\n */\n public indexOf(value: T): number {\n const bound = this.lowerBound(value);\n return bound.equal ? bound.index : -1;\n }\n\n /**\n * Returns true if this array contains at least one value comparing equal to the specified value.\n * @param value The value to search for\n * @returns true if an equivalent element exists in the array.\n */\n public contains(value: T): boolean {\n return -1 !== this.indexOf(value);\n }\n\n /**\n * Looks up an element comparing equal to the specified value using binary search.\n * @param value The value to search for\n * @returns the first equivalent element found in the array, or undefined if no such element exists.\n */\n public findEqual(value: T): T | undefined {\n const index = this.indexOf(value);\n return -1 !== index ? this._array[index] : undefined;\n }\n\n /** Find an element that compares as equivalent based on some criterion. If multiple elements are equivalent, the specific one returned is unspecified.\n * As an example, consider a `SortedArray<ModelState>` which uses `ModelState.id` as its ordering criterion. To find a model by its Id,\n * use `sortedArray.findEquivalent((element) => compareStrings(element.id, modelId))` where `modelId` is an [[Id64String]].\n * @param criterion A function accepting an element and returning 0 if it compares as equivalent, a negative number if it compares as \"less-than\", or a positive value if it compares as \"greater-than\".\n * @returns The first element found that meets the criterion, or `undefined` if no elements meet the criterion.\n * @see [[indexOfEquivalent]].\n * @public\n */\n public findEquivalent(criterion: (element: T) => number): T | undefined {\n const index = this.indexOfEquivalent(criterion);\n return -1 !== index ? this._array[index] : undefined;\n }\n\n /** Find the index of an element that compares as equivalent based on some criterion. If multiple elements are equivalent, the specific one returned is unspecified.\n * As an example, consider a `SortedArray<ModelState>` which uses `ModelState.id` as its ordering criterion. To find the index of a model by its Id,\n * use `sortedArray.indexOfEquivalent((element) => compareStrings(element.id, modelId))` where `modelId` is an [[Id64String]].\n * @param criterion A function accepting an element and returning 0 if it compares as equivalent, a negative number if the element compares as \"less-than\", or a positive value if the element compares as \"greater-than\".\n * @returns The index of the first element found that meets the criterion, or -1 if no elements meet the criterion.\n * @public\n */\n public indexOfEquivalent(criterion: (element: T) => number): number {\n // NB: Must invert the ordering.\n const bound = lowerBoundOfEquivalent(this._array, (elem: T) => 0 - criterion(elem));\n return bound.equal ? bound.index : -1;\n }\n\n /**\n * Looks up an element by its index in the array.\n * @param index The array index\n * @returns the element corresponding to that position in the array, or undefined if the supplied index exceeds the length of the array.\n */\n public get(index: number): T | undefined { return index < this.length ? this._array[index] : undefined; }\n\n /** Apply a function to each element in the array, in sorted order.\n * @param func The function to be applied.\n */\n public forEach(func: (value: T) => void): void {\n for (let i = 0; i < this.length; i++)\n func(this._array[i]);\n }\n\n /** The equivalent of [Array.slice](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/slice). */\n public slice(start?: number, end?: number): ReadonlySortedArray<T> {\n const slice = new ReadonlySortedArray<T>(this._compare, this._duplicatePolicy, this._clone);\n slice._array = this._array.slice(start, end);\n return slice;\n }\n\n /**\n * Computes the position at which the specified value should be inserted to maintain sorted order.\n * @param value The value whose position is to be computed.\n * @returns an object with 'index' corresponding to the computed position and 'equal' set to true if an equivalent element already exists at that index.\n */\n protected lowerBound(value: T): { index: number, equal: boolean } { return lowerBound(value, this._array, this._compare); }\n\n /** Clears the contents of the sorted array. */\n protected _clear(): void { this._array.length = 0; }\n\n /** Extracts the sorted array as a T[] and empties the contents of this ReadonlySortedArray.\n * @returns the contents of this ReadonlySortedArray as a T[].\n */\n protected _extractArray(): T[] {\n const result = this._array;\n this._array = [];\n return result;\n }\n\n /**\n * Attempts to insert a new value into the array at a position determined by the ordering.\n * The behavior differs based on the array's [[DuplicatePolicy]]:\n * If duplicates are **not** permitted, then:\n * - If an equivalent element already exists in the array:\n * - [[DuplicatePolicy.Retain]]: nothing will be inserted and the index of the existing element will be returned.\n * - [[DuplicatePolicy.Replace]]: the input value will overwrite the existing element at the same index and that index will be returned.\n * - Otherwise, the element is inserted and its index is returned.\n * If duplicates **are** permitted, then:\n * - The element will be inserted in a correct position based on the sorting criterion;\n * - The position of the element relative to other elements comparing as equal to it is unspecified; and\n * - The actual index of the newly-inserted element is returned.\n * If the element is to be inserted, then the supplied value will be passed to the clone function supplied to the constructor and the result will be inserted into the array.\n * @param value The value to insert\n * @param onInsert The optional callback method to call if insertion occurs with the inserted value\n * @returns the index in the array of the newly-inserted value, or, if duplicates are not permitted and an equivalent value already exists, the index of the equivalent value.\n */\n protected _insert(value: T, onInsert?: (value: T) => any): number {\n const bound = this.lowerBound(value);\n\n if (bound.equal) {\n switch (this._duplicatePolicy) {\n case DuplicatePolicy.Retain:\n return bound.index;\n case DuplicatePolicy.Replace:\n this._array[bound.index] = this._clone(value);\n if (onInsert)\n onInsert(value);\n\n return bound.index;\n }\n }\n\n this._array.splice(bound.index, 0, this._clone(value));\n if (undefined !== onInsert)\n onInsert(value);\n\n return bound.index;\n }\n\n /**\n * Removes the first occurrence of a value comparing equal to the specified value from the array.\n * @param value The value of the element to delete\n * @returns the index of the deleted value, or -1 if no such element exists.\n */\n protected _remove(value: T): number {\n const bound = this.lowerBound(value);\n if (bound.equal) {\n this._array.splice(bound.index, 1);\n return bound.index;\n } else {\n return -1;\n }\n }\n}\n\n/**\n * Maintains an array of some type T in sorted order. The ordering is specified by a function supplied\n * by the user.\n * By default, only unique elements are permitted; attempting to insert a new element that compares\n * as equal to an element already in the array will not modify the contents of the array.\n *\n * This allows a SortedArray<T> to behave like a Set<T> where T is an object and equality is determined\n * by some criterion other than object identity.\n *\n * Because the array is always sorted, querying for the presence of an element is performed using binary\n * search, which is more efficient than a linear search for reasonably large arrays.\n *\n * The user can also specify how the SortedArray takes ownership of inserted values, e.g., by cloning them.\n *\n * The comparison function must meet the following criteria, given 'lhs' and 'rhs' of type T:\n * - If lhs is equal to rhs, returns 0\n * - If lhs is less than rhs, returns a negative value\n * - If lhs is greater than rhs, returns a positive value\n * - If compare(lhs, rhs) returns 0, then compare(rhs, lhs) must also return 0\n * - If compare(lhs, rhs) returns a negative value, then compare(rhs, lhs) must return a positive value, and vice versa.\n *\n * Modifying an element in a way that affects the comparison function will produce unpredictable results, the\n * most likely of which is that the array will cease to be sorted.\n * @public\n */\nexport class SortedArray<T> extends ReadonlySortedArray<T> {\n /**\n * Construct a new SortedArray<T>.\n * @param compare The function used to compare elements within the array.\n * @param duplicatePolicy Policy for handling attempts to insert a value when an equivalent value already exists. If the input is a boolean, then `true` indicates [[DuplicatePolicy.Allow]], and `false` indicates [[DuplicatePolicy.Retain]].\n * @param clone The function invoked to clone a new element for insertion into the array. The default implementation simply returns its input.\n */\n public constructor(compare: OrderedComparator<T>, duplicatePolicy: DuplicatePolicy | boolean = false, clone: CloneFunction<T> = shallowClone) {\n super(compare, duplicatePolicy, clone);\n }\n\n /** Clears the contents of the sorted array. */\n public clear(): void { this._clear(); }\n\n /** Extracts the sorted array as a T[] and empties the contents of this SortedArray.\n * @returns the contents of this SortedArray as a T[].\n */\n public extractArray(): T[] { return this._extractArray(); }\n\n /**\n * Attempts to insert a new value into the array at a position determined by the ordering.\n * The behavior differs based on whether or not duplicate elements are permitted.\n * If duplicates are **not** permitted, then:\n * - If an equivalent element already exists in the array, nothing will be inserted and the index of the existing element will be returned.\n * - Otherwise, the element is inserted and its index is returned.\n * If duplicates **are** permitted, then:\n * - The element will be inserted in a correct position based on the sorting criterion;\n * - The position of the element relative to other elements comparing as equal to it is unspecified; and\n * - The actual index of the newly-inserted element is returned.\n * If the element is to be inserted, then the supplied value will be passed to the clone function supplied to the constructor and the result will be inserted into the array.\n * @param value The value to insert\n * @param onInsert The optional callback method to call if insertion occurs with the inserted value\n * @returns the index in the array of the newly-inserted value, or, if duplicates are not permitted and an equivalent value already exists, the index of the equivalent value.\n */\n public insert(value: T, onInsert?: (value: T) => any): number { return this._insert(value, onInsert); }\n\n /**\n * Removes the first occurrence of a value comparing equal to the specified value from the array.\n * @param value The value of the element to delete\n * @returns the index of the deleted value, or -1 if no such element exists.\n */\n public remove(value: T): number { return this._remove(value); }\n\n /** The equivalent of [Array.slice](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/slice). */\n public override slice(start?: number, end?: number): SortedArray<T> {\n const slice = new SortedArray<T>(this._compare, this._duplicatePolicy, this._clone);\n slice._array = this._array.slice(start, end);\n return slice;\n }\n}\n"]}
@@ -14,6 +14,7 @@ const RepositoryStatus_1 = require("./internal/RepositoryStatus");
14
14
  * @alpha
15
15
  */
16
16
  class StatusCategory {
17
+ static handlers = new Set();
17
18
  static for(error) {
18
19
  for (const handler of this.handlers) {
19
20
  const category = handler(error);
@@ -28,16 +29,12 @@ class StatusCategory {
28
29
  }
29
30
  }
30
31
  exports.StatusCategory = StatusCategory;
31
- StatusCategory.handlers = new Set();
32
32
  /***
33
33
  * A success status.
34
34
  * @alpha
35
35
  */
36
36
  class SuccessCategory extends StatusCategory {
37
- constructor() {
38
- super(...arguments);
39
- this.error = false;
40
- }
37
+ error = false;
41
38
  }
42
39
  exports.SuccessCategory = SuccessCategory;
43
40
  /**
@@ -45,164 +42,104 @@ exports.SuccessCategory = SuccessCategory;
45
42
  * @alpha
46
43
  */
47
44
  class ErrorCategory extends StatusCategory {
48
- constructor() {
49
- super(...arguments);
50
- this.error = true;
51
- }
45
+ error = true;
52
46
  }
53
47
  exports.ErrorCategory = ErrorCategory;
54
48
  var HTTP;
55
49
  (function (HTTP) {
56
50
  class OK extends SuccessCategory {
57
- constructor() {
58
- super(...arguments);
59
- this.name = "OK";
60
- this.code = 200;
61
- }
51
+ name = "OK";
52
+ code = 200;
62
53
  }
63
54
  HTTP.OK = OK;
64
55
  class Accepted extends SuccessCategory {
65
- constructor() {
66
- super(...arguments);
67
- this.name = "Accepted";
68
- this.code = 202;
69
- }
56
+ name = "Accepted";
57
+ code = 202;
70
58
  }
71
59
  HTTP.Accepted = Accepted;
72
60
  class NoContent extends SuccessCategory {
73
- constructor() {
74
- super(...arguments);
75
- this.name = "NoContent";
76
- this.code = 204;
77
- }
61
+ name = "NoContent";
62
+ code = 204;
78
63
  }
79
64
  HTTP.NoContent = NoContent;
80
65
  class BadRequest extends ErrorCategory {
81
- constructor() {
82
- super(...arguments);
83
- this.name = "BadRequest";
84
- this.code = 400;
85
- }
66
+ name = "BadRequest";
67
+ code = 400;
86
68
  }
87
69
  HTTP.BadRequest = BadRequest;
88
70
  class Unauthorized extends ErrorCategory {
89
- constructor() {
90
- super(...arguments);
91
- this.name = "Unauthorized";
92
- this.code = 401;
93
- }
71
+ name = "Unauthorized";
72
+ code = 401;
94
73
  }
95
74
  HTTP.Unauthorized = Unauthorized;
96
75
  class Forbidden extends ErrorCategory {
97
- constructor() {
98
- super(...arguments);
99
- this.name = "Forbidden";
100
- this.code = 403;
101
- }
76
+ name = "Forbidden";
77
+ code = 403;
102
78
  }
103
79
  HTTP.Forbidden = Forbidden;
104
80
  class NotFound extends ErrorCategory {
105
- constructor() {
106
- super(...arguments);
107
- this.name = "NotFound";
108
- this.code = 404;
109
- }
81
+ name = "NotFound";
82
+ code = 404;
110
83
  }
111
84
  HTTP.NotFound = NotFound;
112
85
  class RequestTimeout extends ErrorCategory {
113
- constructor() {
114
- super(...arguments);
115
- this.name = "RequestTimeout";
116
- this.code = 408;
117
- }
86
+ name = "RequestTimeout";
87
+ code = 408;
118
88
  }
119
89
  HTTP.RequestTimeout = RequestTimeout;
120
90
  class Conflict extends ErrorCategory {
121
- constructor() {
122
- super(...arguments);
123
- this.name = "Conflict";
124
- this.code = 409;
125
- }
91
+ name = "Conflict";
92
+ code = 409;
126
93
  }
127
94
  HTTP.Conflict = Conflict;
128
95
  class Gone extends ErrorCategory {
129
- constructor() {
130
- super(...arguments);
131
- this.name = "Gone";
132
- this.code = 410;
133
- }
96
+ name = "Gone";
97
+ code = 410;
134
98
  }
135
99
  HTTP.Gone = Gone;
136
100
  class PreconditionFailed extends ErrorCategory {
137
- constructor() {
138
- super(...arguments);
139
- this.name = "PreconditionFailed";
140
- this.code = 412;
141
- }
101
+ name = "PreconditionFailed";
102
+ code = 412;
142
103
  }
143
104
  HTTP.PreconditionFailed = PreconditionFailed;
144
105
  class ExpectationFailed extends ErrorCategory {
145
- constructor() {
146
- super(...arguments);
147
- this.name = "ExpectationFailed";
148
- this.code = 417;
149
- }
106
+ name = "ExpectationFailed";
107
+ code = 417;
150
108
  }
151
109
  HTTP.ExpectationFailed = ExpectationFailed;
152
110
  class MisdirectedRequest extends ErrorCategory {
153
- constructor() {
154
- super(...arguments);
155
- this.name = "MisdirectedRequest";
156
- this.code = 421;
157
- }
111
+ name = "MisdirectedRequest";
112
+ code = 421;
158
113
  }
159
114
  HTTP.MisdirectedRequest = MisdirectedRequest;
160
115
  class UnprocessableEntity extends ErrorCategory {
161
- constructor() {
162
- super(...arguments);
163
- this.name = "UnprocessableEntity";
164
- this.code = 422;
165
- }
116
+ name = "UnprocessableEntity";
117
+ code = 422;
166
118
  }
167
119
  HTTP.UnprocessableEntity = UnprocessableEntity;
168
120
  class UpgradeRequired extends ErrorCategory {
169
- constructor() {
170
- super(...arguments);
171
- this.name = "UpgradeRequired";
172
- this.code = 426;
173
- }
121
+ name = "UpgradeRequired";
122
+ code = 426;
174
123
  }
175
124
  HTTP.UpgradeRequired = UpgradeRequired;
176
125
  class PreconditionRequired extends ErrorCategory {
177
- constructor() {
178
- super(...arguments);
179
- this.name = "PreconditionRequired";
180
- this.code = 428;
181
- }
126
+ name = "PreconditionRequired";
127
+ code = 428;
182
128
  }
183
129
  HTTP.PreconditionRequired = PreconditionRequired;
184
130
  class TooManyRequests extends ErrorCategory {
185
- constructor() {
186
- super(...arguments);
187
- this.name = "TooManyRequests";
188
- this.code = 429;
189
- }
131
+ name = "TooManyRequests";
132
+ code = 429;
190
133
  }
191
134
  HTTP.TooManyRequests = TooManyRequests;
192
135
  class InternalServerError extends ErrorCategory {
193
- constructor() {
194
- super(...arguments);
195
- this.name = "InternalServerError";
196
- this.code = 500;
197
- }
136
+ name = "InternalServerError";
137
+ code = 500;
198
138
  }
199
139
  HTTP.InternalServerError = InternalServerError;
200
140
  class NotImplemented extends ErrorCategory {
201
- constructor() {
202
- super(...arguments);
203
- this.name = "NotImplemented";
204
- this.code = 501;
205
- }
141
+ name = "NotImplemented";
142
+ code = 501;
206
143
  }
207
144
  HTTP.NotImplemented = NotImplemented;
208
145
  })(HTTP || (HTTP = {}));
@@ -459,7 +396,7 @@ function lookupHttpStatusCategory(statusCode) {
459
396
  case BentleyError_1.GeoServiceStatus.NoDatumConverter: return new OperationFailed();
460
397
  case BentleyError_1.GeoServiceStatus.VerticalDatumConvertError: return new OperationFailed();
461
398
  case BentleyError_1.GeoServiceStatus.CSMapError: return new InternalError();
462
- case BentleyError_1.GeoServiceStatus.Pending: return new Pending();
399
+ case BentleyError_1.GeoServiceStatus.Pending: return new Pending(); // eslint-disable-line @typescript-eslint/no-deprecated
463
400
  case BentleyError_1.RealityDataStatus.Success: return new Success();
464
401
  case BentleyError_1.RealityDataStatus.InvalidData: return new InvalidData();
465
402
  default: return new UnknownError();
@@ -1 +1 @@
1
- {"version":3,"file":"StatusCategory.js","sourceRoot":"","sources":["../../src/StatusCategory.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 Errors\r\n */\r\n\r\nimport {\r\n BentleyError,\r\n BentleyStatus,\r\n BriefcaseStatus,\r\n ChangeSetStatus,\r\n GeoServiceStatus,\r\n HttpStatus,\r\n IModelHubStatus,\r\n IModelStatus,\r\n RealityDataStatus,\r\n RpcInterfaceStatus,\r\n} from \"./BentleyError\";\r\nimport { RepositoryStatus } from \"./internal/RepositoryStatus\";\r\n\r\n/* eslint-disable @typescript-eslint/no-shadow */\r\n\r\n/** @alpha */\r\nexport type StatusCategoryHandler = (error: Error) => StatusCategory | undefined;\r\n\r\n/** A group of related statuses for aggregate reporting purposes.\r\n * @alpha\r\n */\r\nexport abstract class StatusCategory {\r\n public static handlers: Set<StatusCategoryHandler> = new Set();\r\n\r\n public static for(error: Error): StatusCategory {\r\n for (const handler of this.handlers) {\r\n const category = handler(error);\r\n if (category) {\r\n return category;\r\n }\r\n }\r\n\r\n const errorNumber = (error as BentleyError).errorNumber as unknown;\r\n if (typeof errorNumber === \"number\")\r\n return lookupHttpStatusCategory(errorNumber);\r\n\r\n return new UnknownError();\r\n }\r\n\r\n public abstract name: string;\r\n public abstract code: number;\r\n public abstract error: boolean;\r\n}\r\n\r\n/***\r\n * A success status.\r\n * @alpha\r\n */\r\nexport abstract class SuccessCategory extends StatusCategory {\r\n public error = false;\r\n}\r\n\r\n/**\r\n * An error status.\r\n * @alpha\r\n */\r\nexport abstract class ErrorCategory extends StatusCategory {\r\n public error = true;\r\n}\r\n\r\nnamespace HTTP {\r\n export class OK extends SuccessCategory { public name = \"OK\"; public code = 200; }\r\n export class Accepted extends SuccessCategory { public name = \"Accepted\"; public code = 202; }\r\n export class NoContent extends SuccessCategory { public name = \"NoContent\"; public code = 204; }\r\n\r\n export class BadRequest extends ErrorCategory { public name = \"BadRequest\"; public code = 400; }\r\n export class Unauthorized extends ErrorCategory { public name = \"Unauthorized\"; public code = 401; }\r\n export class Forbidden extends ErrorCategory { public name = \"Forbidden\"; public code = 403; }\r\n export class NotFound extends ErrorCategory { public name = \"NotFound\"; public code = 404; }\r\n export class RequestTimeout extends ErrorCategory { public name = \"RequestTimeout\"; public code = 408; }\r\n export class Conflict extends ErrorCategory { public name = \"Conflict\"; public code = 409; }\r\n export class Gone extends ErrorCategory { public name = \"Gone\"; public code = 410; }\r\n export class PreconditionFailed extends ErrorCategory { public name = \"PreconditionFailed\"; public code = 412; }\r\n export class ExpectationFailed extends ErrorCategory { public name = \"ExpectationFailed\"; public code = 417; }\r\n export class MisdirectedRequest extends ErrorCategory { public name = \"MisdirectedRequest\"; public code = 421; }\r\n export class UnprocessableEntity extends ErrorCategory { public name = \"UnprocessableEntity\"; public code = 422; }\r\n export class UpgradeRequired extends ErrorCategory { public name = \"UpgradeRequired\"; public code = 426; }\r\n export class PreconditionRequired extends ErrorCategory { public name = \"PreconditionRequired\"; public code = 428; }\r\n export class TooManyRequests extends ErrorCategory { public name = \"TooManyRequests\"; public code = 429; }\r\n\r\n export class InternalServerError extends ErrorCategory { public name = \"InternalServerError\"; public code = 500; }\r\n export class NotImplemented extends ErrorCategory { public name = \"NotImplemented\"; public code = 501; }\r\n}\r\n\r\nclass Success extends HTTP.OK { }\r\n\r\nclass Pending extends HTTP.Accepted { }\r\n\r\nclass NoContent extends HTTP.NoContent { }\r\nclass NothingToDo extends HTTP.NoContent { }\r\n\r\nclass BadRequest extends HTTP.BadRequest { }\r\n\r\nclass Forbidden extends HTTP.Forbidden { }\r\nclass PermissionsViolation extends HTTP.Forbidden { }\r\nclass ReadOnly extends HTTP.Forbidden { }\r\n\r\nclass NotFound extends HTTP.NotFound { }\r\n\r\nclass NotEnabled extends HTTP.UnprocessableEntity { }\r\nclass NotSupported extends HTTP.UnprocessableEntity { }\r\n\r\nclass ValidationError extends HTTP.BadRequest { }\r\n\r\nclass Timeout extends HTTP.RequestTimeout { }\r\n\r\nclass Conflict extends HTTP.Conflict { }\r\n\r\nclass Cancelled extends HTTP.Gone { }\r\n\r\nclass ConstraintViolation extends HTTP.Forbidden { }\r\nclass VersioningViolation extends HTTP.Forbidden { }\r\n\r\nclass Corruption extends HTTP.InternalServerError { }\r\nclass InvalidData extends HTTP.InternalServerError { }\r\nclass OperationFailed extends HTTP.InternalServerError { }\r\nclass StateViolation extends HTTP.InternalServerError { }\r\n\r\nclass Locked extends HTTP.Conflict { }\r\n\r\nclass NetworkError extends HTTP.InternalServerError { }\r\n\r\nclass Throttled extends HTTP.TooManyRequests { }\r\n\r\nclass FileSystemError extends HTTP.InternalServerError { }\r\nclass InternalError extends HTTP.InternalServerError { }\r\nclass UnknownError extends HTTP.InternalServerError { }\r\n\r\nclass NotImplemented extends HTTP.NotImplemented { }\r\n\r\nclass Aborted extends HTTP.BadRequest { }\r\n\r\nfunction lookupHttpStatusCategory(statusCode: number): StatusCategory {\r\n switch (statusCode) {\r\n case BentleyStatus.SUCCESS: return new Success();\r\n case BentleyStatus.ERROR: return new UnknownError();\r\n\r\n case IModelStatus.Success: return new Success();\r\n case IModelStatus.AlreadyLoaded: return new StateViolation();\r\n case IModelStatus.AlreadyOpen: return new StateViolation();\r\n case IModelStatus.BadArg: return new ValidationError();\r\n case IModelStatus.BadElement: return new ValidationError();\r\n case IModelStatus.BadModel: return new ValidationError();\r\n case IModelStatus.BadRequest: return new BadRequest();\r\n case IModelStatus.BadSchema: return new ValidationError();\r\n case IModelStatus.CannotUndo: return new OperationFailed();\r\n case IModelStatus.CodeNotReserved: return new StateViolation();\r\n case IModelStatus.DeletionProhibited: return new Forbidden();\r\n case IModelStatus.DuplicateCode: return new Conflict();\r\n case IModelStatus.DuplicateName: return new Conflict();\r\n case IModelStatus.ElementBlockedChange: return new ConstraintViolation();\r\n case IModelStatus.FileAlreadyExists: return new Conflict();\r\n case IModelStatus.FileNotFound: return new NotFound();\r\n case IModelStatus.FileNotLoaded: return new FileSystemError();\r\n case IModelStatus.ForeignKeyConstraint: return new ConstraintViolation();\r\n case IModelStatus.IdExists: return new Conflict();\r\n case IModelStatus.InDynamicTransaction: return new StateViolation();\r\n case IModelStatus.InvalidCategory: return new ValidationError();\r\n case IModelStatus.InvalidCode: return new ValidationError();\r\n case IModelStatus.InvalidCodeSpec: return new ValidationError();\r\n case IModelStatus.InvalidId: return new ValidationError();\r\n case IModelStatus.InvalidName: return new ValidationError();\r\n case IModelStatus.InvalidParent: return new Conflict();\r\n case IModelStatus.InvalidProfileVersion: return new InvalidData();\r\n case IModelStatus.IsCreatingChangeSet: return new StateViolation();\r\n case IModelStatus.LockNotHeld: return new Forbidden();\r\n case IModelStatus.Mismatch2d3d: return new ValidationError();\r\n case IModelStatus.MismatchGcs: return new ValidationError();\r\n case IModelStatus.MissingDomain: return new ValidationError();\r\n case IModelStatus.MissingHandler: return new ValidationError();\r\n case IModelStatus.MissingId: return new ValidationError();\r\n case IModelStatus.NoGeometry: return new NoContent();\r\n case IModelStatus.NoMultiTxnOperation: return new StateViolation();\r\n case IModelStatus.NotEnabled: return new NotEnabled();\r\n case IModelStatus.NotFound: return new NotFound();\r\n case IModelStatus.NotOpen: return new StateViolation();\r\n case IModelStatus.NotOpenForWrite: return new Forbidden();\r\n case IModelStatus.NotSameUnitBase: return new ValidationError();\r\n case IModelStatus.NothingToRedo: return new NothingToDo();\r\n case IModelStatus.NothingToUndo: return new NothingToDo();\r\n case IModelStatus.ParentBlockedChange: return new Forbidden();\r\n case IModelStatus.ReadError: return new FileSystemError();\r\n case IModelStatus.ReadOnly: return new ReadOnly();\r\n case IModelStatus.ReadOnlyDomain: return new ReadOnly();\r\n case IModelStatus.RepositoryManagerError: return new NetworkError();\r\n case IModelStatus.SQLiteError: return new InternalError();\r\n case IModelStatus.TransactionActive: return new StateViolation();\r\n case IModelStatus.UnitsMissing: return new ValidationError();\r\n case IModelStatus.UnknownFormat: return new InvalidData();\r\n case IModelStatus.UpgradeFailed: return new OperationFailed();\r\n case IModelStatus.ValidationFailed: return new ValidationError();\r\n case IModelStatus.VersionTooNew: return new VersioningViolation();\r\n case IModelStatus.VersionTooOld: return new VersioningViolation();\r\n case IModelStatus.ViewNotFound: return new NotFound();\r\n case IModelStatus.WriteError: return new FileSystemError();\r\n case IModelStatus.WrongClass: return new ValidationError();\r\n case IModelStatus.WrongIModel: return new ValidationError();\r\n case IModelStatus.WrongDomain: return new ValidationError();\r\n case IModelStatus.WrongElement: return new ValidationError();\r\n case IModelStatus.WrongHandler: return new ValidationError();\r\n case IModelStatus.WrongModel: return new ValidationError();\r\n case IModelStatus.ConstraintNotUnique: return new ConstraintViolation();\r\n case IModelStatus.NoGeoLocation: return new ValidationError();\r\n case IModelStatus.ServerTimeout: return new Timeout();\r\n case IModelStatus.NoContent: return new NoContent();\r\n case IModelStatus.NotRegistered: return new NotImplemented();\r\n case IModelStatus.FunctionNotFound: return new NotImplemented();\r\n case IModelStatus.NoActiveCommand: return new StateViolation();\r\n case IModelStatus.Aborted: return new Aborted();\r\n\r\n case BriefcaseStatus.CannotAcquire: return new OperationFailed();\r\n case BriefcaseStatus.CannotDownload: return new OperationFailed();\r\n case BriefcaseStatus.CannotUpload: return new OperationFailed();\r\n case BriefcaseStatus.CannotCopy: return new OperationFailed();\r\n case BriefcaseStatus.CannotDelete: return new OperationFailed();\r\n case BriefcaseStatus.VersionNotFound: return new NotFound();\r\n case BriefcaseStatus.CannotApplyChanges: return new OperationFailed();\r\n case BriefcaseStatus.DownloadCancelled: return new Cancelled();\r\n case BriefcaseStatus.ContainsDeletedChangeSets: return new ValidationError();\r\n\r\n case RpcInterfaceStatus.Success: return new Success();\r\n case RpcInterfaceStatus.IncompatibleVersion: return new VersioningViolation();\r\n\r\n case ChangeSetStatus.Success: return new Success();\r\n case ChangeSetStatus.ApplyError: return new OperationFailed();\r\n case ChangeSetStatus.ChangeTrackingNotEnabled: return new NotEnabled();\r\n case ChangeSetStatus.CorruptedChangeStream: return new Corruption();\r\n case ChangeSetStatus.FileNotFound: return new NotFound();\r\n case ChangeSetStatus.FileWriteError: return new FileSystemError();\r\n case ChangeSetStatus.HasLocalChanges: return new StateViolation();\r\n case ChangeSetStatus.HasUncommittedChanges: return new StateViolation();\r\n case ChangeSetStatus.InvalidId: return new Corruption();\r\n case ChangeSetStatus.InvalidVersion: return new Corruption();\r\n case ChangeSetStatus.InDynamicTransaction: return new StateViolation();\r\n case ChangeSetStatus.IsCreatingChangeSet: return new StateViolation();\r\n case ChangeSetStatus.IsNotCreatingChangeSet: return new StateViolation();\r\n case ChangeSetStatus.MergePropagationError: return new OperationFailed();\r\n case ChangeSetStatus.NothingToMerge: return new NothingToDo();\r\n case ChangeSetStatus.NoTransactions: return new OperationFailed();\r\n case ChangeSetStatus.ParentMismatch: return new ValidationError();\r\n case ChangeSetStatus.SQLiteError: return new InternalError();\r\n case ChangeSetStatus.WrongDgnDb: return new ValidationError();\r\n case ChangeSetStatus.CouldNotOpenDgnDb: return new OperationFailed();\r\n case ChangeSetStatus.MergeSchemaChangesOnOpen: return new BadRequest();\r\n case ChangeSetStatus.ReverseOrReinstateSchemaChanges: return new Conflict();\r\n case ChangeSetStatus.ProcessSchemaChangesOnOpen: return new BadRequest();\r\n case ChangeSetStatus.CannotMergeIntoReadonly: return new ValidationError();\r\n case ChangeSetStatus.CannotMergeIntoMaster: return new ValidationError();\r\n case ChangeSetStatus.CannotMergeIntoReversed: return new ValidationError();\r\n\r\n case RepositoryStatus.Success: return new Success();\r\n case RepositoryStatus.ServerUnavailable: return new NetworkError();\r\n case RepositoryStatus.LockAlreadyHeld: return new Conflict();\r\n case RepositoryStatus.SyncError: return new NetworkError();\r\n case RepositoryStatus.InvalidResponse: return new NetworkError();\r\n case RepositoryStatus.PendingTransactions: return new StateViolation();\r\n case RepositoryStatus.LockUsed: return new StateViolation();\r\n case RepositoryStatus.CannotCreateChangeSet: return new InternalError();\r\n case RepositoryStatus.InvalidRequest: return new NetworkError();\r\n case RepositoryStatus.ChangeSetRequired: return new StateViolation();\r\n case RepositoryStatus.CodeUnavailable: return new Conflict();\r\n case RepositoryStatus.CodeNotReserved: return new StateViolation();\r\n case RepositoryStatus.CodeUsed: return new StateViolation();\r\n case RepositoryStatus.LockNotHeld: return new Forbidden();\r\n case RepositoryStatus.RepositoryIsLocked: return new Locked();\r\n case RepositoryStatus.ChannelConstraintViolation: return new ConstraintViolation();\r\n\r\n case HttpStatus.Success: return new Success();\r\n\r\n case IModelHubStatus.Success: return new Success();\r\n case IModelHubStatus.Unknown: return new UnknownError();\r\n case IModelHubStatus.MissingRequiredProperties: return new ValidationError();\r\n case IModelHubStatus.InvalidPropertiesValues: return new ValidationError();\r\n case IModelHubStatus.UserDoesNotHavePermission: return new PermissionsViolation();\r\n case IModelHubStatus.UserDoesNotHaveAccess: return new PermissionsViolation();\r\n case IModelHubStatus.InvalidBriefcase: return new ValidationError();\r\n case IModelHubStatus.BriefcaseDoesNotExist: return new NotFound();\r\n case IModelHubStatus.BriefcaseDoesNotBelongToUser: return new PermissionsViolation();\r\n case IModelHubStatus.AnotherUserPushing: return new StateViolation();\r\n case IModelHubStatus.ChangeSetAlreadyExists: return new Conflict();\r\n case IModelHubStatus.ChangeSetDoesNotExist: return new NotFound();\r\n case IModelHubStatus.FileIsNotUploaded: return new StateViolation();\r\n case IModelHubStatus.iModelIsNotInitialized: return new StateViolation();\r\n case IModelHubStatus.ChangeSetPointsToBadSeed: return new InvalidData();\r\n case IModelHubStatus.OperationFailed: return new OperationFailed();\r\n case IModelHubStatus.PullIsRequired: return new StateViolation();\r\n case IModelHubStatus.MaximumNumberOfBriefcasesPerUser: return new Throttled();\r\n case IModelHubStatus.MaximumNumberOfBriefcasesPerUserPerMinute: return new Throttled();\r\n case IModelHubStatus.DatabaseTemporarilyLocked: return new Locked();\r\n case IModelHubStatus.iModelIsLocked: return new Locked();\r\n case IModelHubStatus.CodesExist: return new Conflict();\r\n case IModelHubStatus.LocksExist: return new Conflict();\r\n case IModelHubStatus.iModelAlreadyExists: return new Conflict();\r\n case IModelHubStatus.iModelDoesNotExist: return new NotFound();\r\n case IModelHubStatus.FileDoesNotExist: return new NotFound();\r\n case IModelHubStatus.FileAlreadyExists: return new Conflict();\r\n case IModelHubStatus.LockDoesNotExist: return new NotFound();\r\n case IModelHubStatus.LockOwnedByAnotherBriefcase: return new Conflict();\r\n case IModelHubStatus.CodeStateInvalid: return new StateViolation();\r\n case IModelHubStatus.CodeReservedByAnotherBriefcase: return new Conflict();\r\n case IModelHubStatus.CodeDoesNotExist: return new NotFound();\r\n case IModelHubStatus.EventTypeDoesNotExist: return new NotFound();\r\n case IModelHubStatus.EventSubscriptionDoesNotExist: return new NotFound();\r\n case IModelHubStatus.EventSubscriptionAlreadyExists: return new StateViolation();\r\n case IModelHubStatus.ITwinIdIsNotSpecified: return new ValidationError();\r\n case IModelHubStatus.FailedToGetITwinPermissions: return new OperationFailed();\r\n case IModelHubStatus.FailedToGetITwinMembers: return new OperationFailed();\r\n case IModelHubStatus.ChangeSetAlreadyHasVersion: return new Conflict();\r\n case IModelHubStatus.VersionAlreadyExists: return new Conflict();\r\n case IModelHubStatus.JobSchedulingFailed: return new InternalError();\r\n case IModelHubStatus.ConflictsAggregate: return new Conflict();\r\n case IModelHubStatus.FailedToGetITwinById: return new OperationFailed();\r\n case IModelHubStatus.DatabaseOperationFailed: return new OperationFailed();\r\n case IModelHubStatus.SeedFileInitializationFailed: return new OperationFailed();\r\n case IModelHubStatus.FailedToGetAssetPermissions: return new OperationFailed();\r\n case IModelHubStatus.FailedToGetAssetMembers: return new OperationFailed();\r\n case IModelHubStatus.ITwinDoesNotExist: return new NotFound();\r\n case IModelHubStatus.LockChunkDoesNotExist: return new NotFound();\r\n case IModelHubStatus.CheckpointAlreadyExists: return new Conflict();\r\n case IModelHubStatus.CheckpointDoesNotExist: return new NotFound();\r\n case IModelHubStatus.UndefinedArgumentError: return new ValidationError();\r\n case IModelHubStatus.InvalidArgumentError: return new ValidationError();\r\n case IModelHubStatus.MissingDownloadUrlError: return new ValidationError();\r\n case IModelHubStatus.NotSupportedInBrowser: return new NotSupported();\r\n case IModelHubStatus.FileHandlerNotSet: return new NotImplemented();\r\n case IModelHubStatus.FileNotFound: return new NotFound();\r\n case IModelHubStatus.InitializationTimeout: return new Timeout();\r\n\r\n case GeoServiceStatus.Success: return new Success();\r\n case GeoServiceStatus.NoGeoLocation: return new ValidationError();\r\n case GeoServiceStatus.OutOfUsefulRange: return new ValidationError();\r\n case GeoServiceStatus.OutOfMathematicalDomain: return new ValidationError();\r\n case GeoServiceStatus.NoDatumConverter: return new OperationFailed();\r\n case GeoServiceStatus.VerticalDatumConvertError: return new OperationFailed();\r\n case GeoServiceStatus.CSMapError: return new InternalError();\r\n case GeoServiceStatus.Pending: return new Pending();\r\n\r\n case RealityDataStatus.Success: return new Success();\r\n case RealityDataStatus.InvalidData: return new InvalidData();\r\n\r\n default: return new UnknownError();\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"StatusCategory.js","sourceRoot":"","sources":["../../src/StatusCategory.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 Errors\n */\n\nimport {\n BentleyError,\n BentleyStatus,\n BriefcaseStatus,\n ChangeSetStatus,\n GeoServiceStatus,\n HttpStatus,\n IModelHubStatus,\n IModelStatus,\n RealityDataStatus,\n RpcInterfaceStatus,\n} from \"./BentleyError\";\nimport { RepositoryStatus } from \"./internal/RepositoryStatus\";\n\n/* eslint-disable @typescript-eslint/no-shadow */\n\n/** @alpha */\nexport type StatusCategoryHandler = (error: Error) => StatusCategory | undefined;\n\n/** A group of related statuses for aggregate reporting purposes.\n * @alpha\n */\nexport abstract class StatusCategory {\n public static handlers: Set<StatusCategoryHandler> = new Set();\n\n public static for(error: Error): StatusCategory {\n for (const handler of this.handlers) {\n const category = handler(error);\n if (category) {\n return category;\n }\n }\n\n const errorNumber = (error as BentleyError).errorNumber as unknown;\n if (typeof errorNumber === \"number\")\n return lookupHttpStatusCategory(errorNumber);\n\n return new UnknownError();\n }\n\n public abstract name: string;\n public abstract code: number;\n public abstract error: boolean;\n}\n\n/***\n * A success status.\n * @alpha\n */\nexport abstract class SuccessCategory extends StatusCategory {\n public error = false;\n}\n\n/**\n * An error status.\n * @alpha\n */\nexport abstract class ErrorCategory extends StatusCategory {\n public error = true;\n}\n\nnamespace HTTP {\n export class OK extends SuccessCategory { public name = \"OK\"; public code = 200; }\n export class Accepted extends SuccessCategory { public name = \"Accepted\"; public code = 202; }\n export class NoContent extends SuccessCategory { public name = \"NoContent\"; public code = 204; }\n\n export class BadRequest extends ErrorCategory { public name = \"BadRequest\"; public code = 400; }\n export class Unauthorized extends ErrorCategory { public name = \"Unauthorized\"; public code = 401; }\n export class Forbidden extends ErrorCategory { public name = \"Forbidden\"; public code = 403; }\n export class NotFound extends ErrorCategory { public name = \"NotFound\"; public code = 404; }\n export class RequestTimeout extends ErrorCategory { public name = \"RequestTimeout\"; public code = 408; }\n export class Conflict extends ErrorCategory { public name = \"Conflict\"; public code = 409; }\n export class Gone extends ErrorCategory { public name = \"Gone\"; public code = 410; }\n export class PreconditionFailed extends ErrorCategory { public name = \"PreconditionFailed\"; public code = 412; }\n export class ExpectationFailed extends ErrorCategory { public name = \"ExpectationFailed\"; public code = 417; }\n export class MisdirectedRequest extends ErrorCategory { public name = \"MisdirectedRequest\"; public code = 421; }\n export class UnprocessableEntity extends ErrorCategory { public name = \"UnprocessableEntity\"; public code = 422; }\n export class UpgradeRequired extends ErrorCategory { public name = \"UpgradeRequired\"; public code = 426; }\n export class PreconditionRequired extends ErrorCategory { public name = \"PreconditionRequired\"; public code = 428; }\n export class TooManyRequests extends ErrorCategory { public name = \"TooManyRequests\"; public code = 429; }\n\n export class InternalServerError extends ErrorCategory { public name = \"InternalServerError\"; public code = 500; }\n export class NotImplemented extends ErrorCategory { public name = \"NotImplemented\"; public code = 501; }\n}\n\nclass Success extends HTTP.OK { }\n\nclass Pending extends HTTP.Accepted { }\n\nclass NoContent extends HTTP.NoContent { }\nclass NothingToDo extends HTTP.NoContent { }\n\nclass BadRequest extends HTTP.BadRequest { }\n\nclass Forbidden extends HTTP.Forbidden { }\nclass PermissionsViolation extends HTTP.Forbidden { }\nclass ReadOnly extends HTTP.Forbidden { }\n\nclass NotFound extends HTTP.NotFound { }\n\nclass NotEnabled extends HTTP.UnprocessableEntity { }\nclass NotSupported extends HTTP.UnprocessableEntity { }\n\nclass ValidationError extends HTTP.BadRequest { }\n\nclass Timeout extends HTTP.RequestTimeout { }\n\nclass Conflict extends HTTP.Conflict { }\n\nclass Cancelled extends HTTP.Gone { }\n\nclass ConstraintViolation extends HTTP.Forbidden { }\nclass VersioningViolation extends HTTP.Forbidden { }\n\nclass Corruption extends HTTP.InternalServerError { }\nclass InvalidData extends HTTP.InternalServerError { }\nclass OperationFailed extends HTTP.InternalServerError { }\nclass StateViolation extends HTTP.InternalServerError { }\n\nclass Locked extends HTTP.Conflict { }\n\nclass NetworkError extends HTTP.InternalServerError { }\n\nclass Throttled extends HTTP.TooManyRequests { }\n\nclass FileSystemError extends HTTP.InternalServerError { }\nclass InternalError extends HTTP.InternalServerError { }\nclass UnknownError extends HTTP.InternalServerError { }\n\nclass NotImplemented extends HTTP.NotImplemented { }\n\nclass Aborted extends HTTP.BadRequest { }\n\nfunction lookupHttpStatusCategory(statusCode: number): StatusCategory {\n switch (statusCode) {\n case BentleyStatus.SUCCESS: return new Success();\n case BentleyStatus.ERROR: return new UnknownError();\n\n case IModelStatus.Success: return new Success();\n case IModelStatus.AlreadyLoaded: return new StateViolation();\n case IModelStatus.AlreadyOpen: return new StateViolation();\n case IModelStatus.BadArg: return new ValidationError();\n case IModelStatus.BadElement: return new ValidationError();\n case IModelStatus.BadModel: return new ValidationError();\n case IModelStatus.BadRequest: return new BadRequest();\n case IModelStatus.BadSchema: return new ValidationError();\n case IModelStatus.CannotUndo: return new OperationFailed();\n case IModelStatus.CodeNotReserved: return new StateViolation();\n case IModelStatus.DeletionProhibited: return new Forbidden();\n case IModelStatus.DuplicateCode: return new Conflict();\n case IModelStatus.DuplicateName: return new Conflict();\n case IModelStatus.ElementBlockedChange: return new ConstraintViolation();\n case IModelStatus.FileAlreadyExists: return new Conflict();\n case IModelStatus.FileNotFound: return new NotFound();\n case IModelStatus.FileNotLoaded: return new FileSystemError();\n case IModelStatus.ForeignKeyConstraint: return new ConstraintViolation();\n case IModelStatus.IdExists: return new Conflict();\n case IModelStatus.InDynamicTransaction: return new StateViolation();\n case IModelStatus.InvalidCategory: return new ValidationError();\n case IModelStatus.InvalidCode: return new ValidationError();\n case IModelStatus.InvalidCodeSpec: return new ValidationError();\n case IModelStatus.InvalidId: return new ValidationError();\n case IModelStatus.InvalidName: return new ValidationError();\n case IModelStatus.InvalidParent: return new Conflict();\n case IModelStatus.InvalidProfileVersion: return new InvalidData();\n case IModelStatus.IsCreatingChangeSet: return new StateViolation();\n case IModelStatus.LockNotHeld: return new Forbidden();\n case IModelStatus.Mismatch2d3d: return new ValidationError();\n case IModelStatus.MismatchGcs: return new ValidationError();\n case IModelStatus.MissingDomain: return new ValidationError();\n case IModelStatus.MissingHandler: return new ValidationError();\n case IModelStatus.MissingId: return new ValidationError();\n case IModelStatus.NoGeometry: return new NoContent();\n case IModelStatus.NoMultiTxnOperation: return new StateViolation();\n case IModelStatus.NotEnabled: return new NotEnabled();\n case IModelStatus.NotFound: return new NotFound();\n case IModelStatus.NotOpen: return new StateViolation();\n case IModelStatus.NotOpenForWrite: return new Forbidden();\n case IModelStatus.NotSameUnitBase: return new ValidationError();\n case IModelStatus.NothingToRedo: return new NothingToDo();\n case IModelStatus.NothingToUndo: return new NothingToDo();\n case IModelStatus.ParentBlockedChange: return new Forbidden();\n case IModelStatus.ReadError: return new FileSystemError();\n case IModelStatus.ReadOnly: return new ReadOnly();\n case IModelStatus.ReadOnlyDomain: return new ReadOnly();\n case IModelStatus.RepositoryManagerError: return new NetworkError();\n case IModelStatus.SQLiteError: return new InternalError();\n case IModelStatus.TransactionActive: return new StateViolation();\n case IModelStatus.UnitsMissing: return new ValidationError();\n case IModelStatus.UnknownFormat: return new InvalidData();\n case IModelStatus.UpgradeFailed: return new OperationFailed();\n case IModelStatus.ValidationFailed: return new ValidationError();\n case IModelStatus.VersionTooNew: return new VersioningViolation();\n case IModelStatus.VersionTooOld: return new VersioningViolation();\n case IModelStatus.ViewNotFound: return new NotFound();\n case IModelStatus.WriteError: return new FileSystemError();\n case IModelStatus.WrongClass: return new ValidationError();\n case IModelStatus.WrongIModel: return new ValidationError();\n case IModelStatus.WrongDomain: return new ValidationError();\n case IModelStatus.WrongElement: return new ValidationError();\n case IModelStatus.WrongHandler: return new ValidationError();\n case IModelStatus.WrongModel: return new ValidationError();\n case IModelStatus.ConstraintNotUnique: return new ConstraintViolation();\n case IModelStatus.NoGeoLocation: return new ValidationError();\n case IModelStatus.ServerTimeout: return new Timeout();\n case IModelStatus.NoContent: return new NoContent();\n case IModelStatus.NotRegistered: return new NotImplemented();\n case IModelStatus.FunctionNotFound: return new NotImplemented();\n case IModelStatus.NoActiveCommand: return new StateViolation();\n case IModelStatus.Aborted: return new Aborted();\n\n case BriefcaseStatus.CannotAcquire: return new OperationFailed();\n case BriefcaseStatus.CannotDownload: return new OperationFailed();\n case BriefcaseStatus.CannotUpload: return new OperationFailed();\n case BriefcaseStatus.CannotCopy: return new OperationFailed();\n case BriefcaseStatus.CannotDelete: return new OperationFailed();\n case BriefcaseStatus.VersionNotFound: return new NotFound();\n case BriefcaseStatus.CannotApplyChanges: return new OperationFailed();\n case BriefcaseStatus.DownloadCancelled: return new Cancelled();\n case BriefcaseStatus.ContainsDeletedChangeSets: return new ValidationError();\n\n case RpcInterfaceStatus.Success: return new Success();\n case RpcInterfaceStatus.IncompatibleVersion: return new VersioningViolation();\n\n case ChangeSetStatus.Success: return new Success();\n case ChangeSetStatus.ApplyError: return new OperationFailed();\n case ChangeSetStatus.ChangeTrackingNotEnabled: return new NotEnabled();\n case ChangeSetStatus.CorruptedChangeStream: return new Corruption();\n case ChangeSetStatus.FileNotFound: return new NotFound();\n case ChangeSetStatus.FileWriteError: return new FileSystemError();\n case ChangeSetStatus.HasLocalChanges: return new StateViolation();\n case ChangeSetStatus.HasUncommittedChanges: return new StateViolation();\n case ChangeSetStatus.InvalidId: return new Corruption();\n case ChangeSetStatus.InvalidVersion: return new Corruption();\n case ChangeSetStatus.InDynamicTransaction: return new StateViolation();\n case ChangeSetStatus.IsCreatingChangeSet: return new StateViolation();\n case ChangeSetStatus.IsNotCreatingChangeSet: return new StateViolation();\n case ChangeSetStatus.MergePropagationError: return new OperationFailed();\n case ChangeSetStatus.NothingToMerge: return new NothingToDo();\n case ChangeSetStatus.NoTransactions: return new OperationFailed();\n case ChangeSetStatus.ParentMismatch: return new ValidationError();\n case ChangeSetStatus.SQLiteError: return new InternalError();\n case ChangeSetStatus.WrongDgnDb: return new ValidationError();\n case ChangeSetStatus.CouldNotOpenDgnDb: return new OperationFailed();\n case ChangeSetStatus.MergeSchemaChangesOnOpen: return new BadRequest();\n case ChangeSetStatus.ReverseOrReinstateSchemaChanges: return new Conflict();\n case ChangeSetStatus.ProcessSchemaChangesOnOpen: return new BadRequest();\n case ChangeSetStatus.CannotMergeIntoReadonly: return new ValidationError();\n case ChangeSetStatus.CannotMergeIntoMaster: return new ValidationError();\n case ChangeSetStatus.CannotMergeIntoReversed: return new ValidationError();\n\n case RepositoryStatus.Success: return new Success();\n case RepositoryStatus.ServerUnavailable: return new NetworkError();\n case RepositoryStatus.LockAlreadyHeld: return new Conflict();\n case RepositoryStatus.SyncError: return new NetworkError();\n case RepositoryStatus.InvalidResponse: return new NetworkError();\n case RepositoryStatus.PendingTransactions: return new StateViolation();\n case RepositoryStatus.LockUsed: return new StateViolation();\n case RepositoryStatus.CannotCreateChangeSet: return new InternalError();\n case RepositoryStatus.InvalidRequest: return new NetworkError();\n case RepositoryStatus.ChangeSetRequired: return new StateViolation();\n case RepositoryStatus.CodeUnavailable: return new Conflict();\n case RepositoryStatus.CodeNotReserved: return new StateViolation();\n case RepositoryStatus.CodeUsed: return new StateViolation();\n case RepositoryStatus.LockNotHeld: return new Forbidden();\n case RepositoryStatus.RepositoryIsLocked: return new Locked();\n case RepositoryStatus.ChannelConstraintViolation: return new ConstraintViolation();\n\n case HttpStatus.Success: return new Success();\n\n case IModelHubStatus.Success: return new Success();\n case IModelHubStatus.Unknown: return new UnknownError();\n case IModelHubStatus.MissingRequiredProperties: return new ValidationError();\n case IModelHubStatus.InvalidPropertiesValues: return new ValidationError();\n case IModelHubStatus.UserDoesNotHavePermission: return new PermissionsViolation();\n case IModelHubStatus.UserDoesNotHaveAccess: return new PermissionsViolation();\n case IModelHubStatus.InvalidBriefcase: return new ValidationError();\n case IModelHubStatus.BriefcaseDoesNotExist: return new NotFound();\n case IModelHubStatus.BriefcaseDoesNotBelongToUser: return new PermissionsViolation();\n case IModelHubStatus.AnotherUserPushing: return new StateViolation();\n case IModelHubStatus.ChangeSetAlreadyExists: return new Conflict();\n case IModelHubStatus.ChangeSetDoesNotExist: return new NotFound();\n case IModelHubStatus.FileIsNotUploaded: return new StateViolation();\n case IModelHubStatus.iModelIsNotInitialized: return new StateViolation();\n case IModelHubStatus.ChangeSetPointsToBadSeed: return new InvalidData();\n case IModelHubStatus.OperationFailed: return new OperationFailed();\n case IModelHubStatus.PullIsRequired: return new StateViolation();\n case IModelHubStatus.MaximumNumberOfBriefcasesPerUser: return new Throttled();\n case IModelHubStatus.MaximumNumberOfBriefcasesPerUserPerMinute: return new Throttled();\n case IModelHubStatus.DatabaseTemporarilyLocked: return new Locked();\n case IModelHubStatus.iModelIsLocked: return new Locked();\n case IModelHubStatus.CodesExist: return new Conflict();\n case IModelHubStatus.LocksExist: return new Conflict();\n case IModelHubStatus.iModelAlreadyExists: return new Conflict();\n case IModelHubStatus.iModelDoesNotExist: return new NotFound();\n case IModelHubStatus.FileDoesNotExist: return new NotFound();\n case IModelHubStatus.FileAlreadyExists: return new Conflict();\n case IModelHubStatus.LockDoesNotExist: return new NotFound();\n case IModelHubStatus.LockOwnedByAnotherBriefcase: return new Conflict();\n case IModelHubStatus.CodeStateInvalid: return new StateViolation();\n case IModelHubStatus.CodeReservedByAnotherBriefcase: return new Conflict();\n case IModelHubStatus.CodeDoesNotExist: return new NotFound();\n case IModelHubStatus.EventTypeDoesNotExist: return new NotFound();\n case IModelHubStatus.EventSubscriptionDoesNotExist: return new NotFound();\n case IModelHubStatus.EventSubscriptionAlreadyExists: return new StateViolation();\n case IModelHubStatus.ITwinIdIsNotSpecified: return new ValidationError();\n case IModelHubStatus.FailedToGetITwinPermissions: return new OperationFailed();\n case IModelHubStatus.FailedToGetITwinMembers: return new OperationFailed();\n case IModelHubStatus.ChangeSetAlreadyHasVersion: return new Conflict();\n case IModelHubStatus.VersionAlreadyExists: return new Conflict();\n case IModelHubStatus.JobSchedulingFailed: return new InternalError();\n case IModelHubStatus.ConflictsAggregate: return new Conflict();\n case IModelHubStatus.FailedToGetITwinById: return new OperationFailed();\n case IModelHubStatus.DatabaseOperationFailed: return new OperationFailed();\n case IModelHubStatus.SeedFileInitializationFailed: return new OperationFailed();\n case IModelHubStatus.FailedToGetAssetPermissions: return new OperationFailed();\n case IModelHubStatus.FailedToGetAssetMembers: return new OperationFailed();\n case IModelHubStatus.ITwinDoesNotExist: return new NotFound();\n case IModelHubStatus.LockChunkDoesNotExist: return new NotFound();\n case IModelHubStatus.CheckpointAlreadyExists: return new Conflict();\n case IModelHubStatus.CheckpointDoesNotExist: return new NotFound();\n case IModelHubStatus.UndefinedArgumentError: return new ValidationError();\n case IModelHubStatus.InvalidArgumentError: return new ValidationError();\n case IModelHubStatus.MissingDownloadUrlError: return new ValidationError();\n case IModelHubStatus.NotSupportedInBrowser: return new NotSupported();\n case IModelHubStatus.FileHandlerNotSet: return new NotImplemented();\n case IModelHubStatus.FileNotFound: return new NotFound();\n case IModelHubStatus.InitializationTimeout: return new Timeout();\n\n case GeoServiceStatus.Success: return new Success();\n case GeoServiceStatus.NoGeoLocation: return new ValidationError();\n case GeoServiceStatus.OutOfUsefulRange: return new ValidationError();\n case GeoServiceStatus.OutOfMathematicalDomain: return new ValidationError();\n case GeoServiceStatus.NoDatumConverter: return new OperationFailed();\n case GeoServiceStatus.VerticalDatumConvertError: return new OperationFailed();\n case GeoServiceStatus.CSMapError: return new InternalError();\n case GeoServiceStatus.Pending: return new Pending(); // eslint-disable-line @typescript-eslint/no-deprecated\n\n case RealityDataStatus.Success: return new Success();\n case RealityDataStatus.InvalidData: return new InvalidData();\n\n default: return new UnknownError();\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"StringUtils.js","sourceRoot":"","sources":["../../src/StringUtils.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;AASH,oCAGC;AAQD,4DAEC;AApBD;;;;;;GAMG;AACH,SAAgB,YAAY,CAAC,IAAgB;IAC3C,MAAM,OAAO,GAAG,IAAI,WAAW,CAAC,OAAO,CAAC,CAAC;IACzC,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;AAC9B,CAAC;AAED;;;;;GAKG;AACH,SAAgB,wBAAwB,CAAC,MAAc;IACrD,OAAO,IAAI,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC5E,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 Utils\r\n */\r\n\r\n/** Given an array of bytes containing a utf-8 string, convert to a string.\r\n * @param utf8: An array of utf-8 characters as a byte array\r\n * @returns An equivalent string, or undefined if the array does not contain a valid utf-8 string.\r\n * @note This function uses Javascript's TextDecoder if supported by the browser; otherwise, it\r\n * falls back to a less efficient polyfill.\r\n * @public\r\n */\r\nexport function utf8ToString(utf8: Uint8Array): string | undefined {\r\n const decoder = new TextDecoder(\"utf-8\");\r\n return decoder.decode(utf8);\r\n}\r\n\r\n/** Given a base-64-encoded string, decode it into an array of bytes.\r\n * @param base64 The base-64-encoded string.\r\n * @returns the decoded byte array.\r\n * @throws DOMException if the length of the input string is not a multiple of 4.\r\n * @public\r\n */\r\nexport function base64StringToUint8Array(base64: string): Uint8Array {\r\n return new Uint8Array(atob(base64).split(\"\").map((c) => c.charCodeAt(0)));\r\n}\r\n"]}
1
+ {"version":3,"file":"StringUtils.js","sourceRoot":"","sources":["../../src/StringUtils.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;AASH,oCAGC;AAQD,4DAEC;AApBD;;;;;;GAMG;AACH,SAAgB,YAAY,CAAC,IAAgB;IAC3C,MAAM,OAAO,GAAG,IAAI,WAAW,CAAC,OAAO,CAAC,CAAC;IACzC,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;AAC9B,CAAC;AAED;;;;;GAKG;AACH,SAAgB,wBAAwB,CAAC,MAAc;IACrD,OAAO,IAAI,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC5E,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 Utils\n */\n\n/** Given an array of bytes containing a utf-8 string, convert to a string.\n * @param utf8: An array of utf-8 characters as a byte array\n * @returns An equivalent string, or undefined if the array does not contain a valid utf-8 string.\n * @note This function uses Javascript's TextDecoder if supported by the browser; otherwise, it\n * falls back to a less efficient polyfill.\n * @public\n */\nexport function utf8ToString(utf8: Uint8Array): string | undefined {\n const decoder = new TextDecoder(\"utf-8\");\n return decoder.decode(utf8);\n}\n\n/** Given a base-64-encoded string, decode it into an array of bytes.\n * @param base64 The base-64-encoded string.\n * @returns the decoded byte array.\n * @throws DOMException if the length of the input string is not a multiple of 4.\n * @public\n */\nexport function base64StringToUint8Array(base64: string): Uint8Array {\n return new Uint8Array(atob(base64).split(\"\").map((c) => c.charCodeAt(0)));\n}\n"]}
package/lib/cjs/Time.js CHANGED
@@ -13,6 +13,7 @@ exports.StopWatch = exports.BeTimePoint = exports.BeDuration = void 0;
13
13
  * @public
14
14
  */
15
15
  class BeDuration {
16
+ _milliseconds;
16
17
  constructor(milliseconds = 0) { this._milliseconds = milliseconds; }
17
18
  /** The duration in milliseconds */
18
19
  get milliseconds() { return this._milliseconds; }
@@ -80,6 +81,7 @@ exports.BeDuration = BeDuration;
80
81
  * @public
81
82
  */
82
83
  class BeTimePoint {
84
+ _milliseconds;
83
85
  /** the time in milliseconds, of this BeTimePoint (relative to January 1, 1970 00:00:00 UTC.) */
84
86
  get milliseconds() { return this._milliseconds; }
85
87
  constructor(milliseconds) { this._milliseconds = milliseconds; }
@@ -119,6 +121,9 @@ exports.BeTimePoint = BeTimePoint;
119
121
  * @public
120
122
  */
121
123
  class StopWatch {
124
+ description;
125
+ _start;
126
+ _stop;
122
127
  /** Get the elapsed time since start() on a running timer. */
123
128
  get current() { return BeDuration.fromMilliseconds(BeTimePoint.now().milliseconds - (!!this._start ? this._start.milliseconds : 0)); }
124
129
  /** Get the elapsed time, in seconds, since start() on a running timer. */