@itwin/core-bentley 3.0.0-dev.133 → 3.0.0-dev.138
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.
- package/lib/cjs/BentleyError.d.ts +0 -1
- package/lib/cjs/BentleyError.d.ts.map +1 -1
- package/lib/cjs/BentleyError.js +0 -2
- package/lib/cjs/BentleyError.js.map +1 -1
- package/lib/cjs/Compare.d.ts +1 -1
- package/lib/cjs/Compare.js.map +1 -1
- package/lib/cjs/Disposable.d.ts +1 -1
- package/lib/cjs/Disposable.js.map +1 -1
- package/lib/cjs/SortedArray.d.ts +1 -1
- package/lib/cjs/SortedArray.js.map +1 -1
- package/lib/cjs/core-bentley.d.ts +0 -7
- package/lib/cjs/core-bentley.d.ts.map +1 -1
- package/lib/cjs/core-bentley.js +0 -7
- package/lib/cjs/core-bentley.js.map +1 -1
- package/lib/esm/BentleyError.d.ts +0 -1
- package/lib/esm/BentleyError.d.ts.map +1 -1
- package/lib/esm/BentleyError.js +0 -2
- package/lib/esm/BentleyError.js.map +1 -1
- package/lib/esm/Compare.d.ts +1 -1
- package/lib/esm/Compare.js.map +1 -1
- package/lib/esm/Disposable.d.ts +1 -1
- package/lib/esm/Disposable.js.map +1 -1
- package/lib/esm/SortedArray.d.ts +1 -1
- package/lib/esm/SortedArray.js.map +1 -1
- package/lib/esm/core-bentley.d.ts +0 -7
- package/lib/esm/core-bentley.d.ts.map +1 -1
- package/lib/esm/core-bentley.js +0 -7
- package/lib/esm/core-bentley.js.map +1 -1
- package/package.json +3 -3
|
@@ -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 in the iModel.js library.\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) { return value; }\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 /**\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"]}
|
|
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) { return value; }\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 /**\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"]}
|
|
@@ -28,9 +28,6 @@ export * from "./StringUtils";
|
|
|
28
28
|
export * from "./Time";
|
|
29
29
|
export * from "./UnexpectedErrors";
|
|
30
30
|
export * from "./UtilityTypes";
|
|
31
|
-
/** @packageDocumentation
|
|
32
|
-
* @module Utils
|
|
33
|
-
*/
|
|
34
31
|
/** @docs-package-description
|
|
35
32
|
* The core-bentley package contains classes to solve problems that are common for both client and server use cases.
|
|
36
33
|
*/
|
|
@@ -38,10 +35,6 @@ export * from "./UtilityTypes";
|
|
|
38
35
|
* @docs-group-description BeSQLite
|
|
39
36
|
* Classes for working with SQLite databases. SQLite underlies IModelDb and ECDb - see [Executing ECSQL]($docs/learning/ECSQL.md)
|
|
40
37
|
*/
|
|
41
|
-
/**
|
|
42
|
-
* @docs-group-description Configuration
|
|
43
|
-
* Class for easily managing configuration variables for an iModel.js application.
|
|
44
|
-
*/
|
|
45
38
|
/**
|
|
46
39
|
* @docs-group-description Errors
|
|
47
40
|
* Classes for working with errors.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core-bentley.d.ts","sourceRoot":"","sources":["../../src/core-bentley.ts"],"names":[],"mappings":"AAIA,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,yBAAyB,CAAC;AACxC,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,qBAAqB,CAAC;AACpC,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,MAAM,CAAC;AACrB,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,QAAQ,CAAC;AACvB,cAAc,oBAAoB,CAAC;AACnC,cAAc,gBAAgB,CAAC;AAE/B;;GAEG;
|
|
1
|
+
{"version":3,"file":"core-bentley.d.ts","sourceRoot":"","sources":["../../src/core-bentley.ts"],"names":[],"mappings":"AAIA,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,yBAAyB,CAAC;AACxC,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,qBAAqB,CAAC;AACpC,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,MAAM,CAAC;AACrB,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,QAAQ,CAAC;AACvB,cAAc,oBAAoB,CAAC;AACnC,cAAc,gBAAgB,CAAC;AAE/B;;GAEG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG"}
|
package/lib/cjs/core-bentley.js
CHANGED
|
@@ -44,9 +44,6 @@ __exportStar(require("./StringUtils"), exports);
|
|
|
44
44
|
__exportStar(require("./Time"), exports);
|
|
45
45
|
__exportStar(require("./UnexpectedErrors"), exports);
|
|
46
46
|
__exportStar(require("./UtilityTypes"), exports);
|
|
47
|
-
/** @packageDocumentation
|
|
48
|
-
* @module Utils
|
|
49
|
-
*/
|
|
50
47
|
/** @docs-package-description
|
|
51
48
|
* The core-bentley package contains classes to solve problems that are common for both client and server use cases.
|
|
52
49
|
*/
|
|
@@ -54,10 +51,6 @@ __exportStar(require("./UtilityTypes"), exports);
|
|
|
54
51
|
* @docs-group-description BeSQLite
|
|
55
52
|
* Classes for working with SQLite databases. SQLite underlies IModelDb and ECDb - see [Executing ECSQL]($docs/learning/ECSQL.md)
|
|
56
53
|
*/
|
|
57
|
-
/**
|
|
58
|
-
* @docs-group-description Configuration
|
|
59
|
-
* Class for easily managing configuration variables for an iModel.js application.
|
|
60
|
-
*/
|
|
61
54
|
/**
|
|
62
55
|
* @docs-group-description Errors
|
|
63
56
|
* Classes for working with errors.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core-bentley.js","sourceRoot":"","sources":["../../src/core-bentley.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA;;;+FAG+F;AAC/F,gDAA8B;AAC9B,2CAAyB;AACzB,+CAA6B;AAC7B,4CAA0B;AAC1B,iDAA+B;AAC/B,0DAAwC;AACxC,6CAA2B;AAC3B,+CAA6B;AAC7B,4CAA0B;AAC1B,sDAAoC;AACpC,+CAA6B;AAC7B,+CAA6B;AAC7B,uCAAqB;AACrB,6CAA2B;AAC3B,+CAA6B;AAC7B,8CAA4B;AAC5B,2CAAyB;AACzB,2CAAyB;AACzB,kDAAgC;AAChC,qDAAmC;AACnC,wDAAsC;AACtC,+CAA6B;AAC7B,mDAAiC;AACjC,kDAAgC;AAChC,oDAAkC;AAClC,gDAA8B;AAC9B,gDAA8B;AAC9B,yCAAuB;AACvB,qDAAmC;AACnC,iDAA+B;AAE/B;;GAEG;
|
|
1
|
+
{"version":3,"file":"core-bentley.js","sourceRoot":"","sources":["../../src/core-bentley.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA;;;+FAG+F;AAC/F,gDAA8B;AAC9B,2CAAyB;AACzB,+CAA6B;AAC7B,4CAA0B;AAC1B,iDAA+B;AAC/B,0DAAwC;AACxC,6CAA2B;AAC3B,+CAA6B;AAC7B,4CAA0B;AAC1B,sDAAoC;AACpC,+CAA6B;AAC7B,+CAA6B;AAC7B,uCAAqB;AACrB,6CAA2B;AAC3B,+CAA6B;AAC7B,8CAA4B;AAC5B,2CAAyB;AACzB,2CAAyB;AACzB,kDAAgC;AAChC,qDAAmC;AACnC,wDAAsC;AACtC,+CAA6B;AAC7B,mDAAiC;AACjC,kDAAgC;AAChC,oDAAkC;AAClC,gDAA8B;AAC9B,gDAA8B;AAC9B,yCAAuB;AACvB,qDAAmC;AACnC,iDAA+B;AAE/B;;GAEG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\nexport * from \"./AccessToken\";\r\nexport * from \"./Assert\";\r\nexport * from \"./AsyncMutex\";\r\nexport * from \"./BeEvent\";\r\nexport * from \"./BentleyError\";\r\nexport * from \"./BentleyLoggerCategory\";\r\nexport * from \"./BeSQLite\";\r\nexport * from \"./ByteStream\";\r\nexport * from \"./Compare\";\r\nexport * from \"./CompressedId64Set\";\r\nexport * from \"./Dictionary\";\r\nexport * from \"./Disposable\";\r\nexport * from \"./Id\";\r\nexport * from \"./IndexMap\";\r\nexport * from \"./JsonSchema\";\r\nexport * from \"./JsonUtils\";\r\nexport * from \"./Logger\";\r\nexport * from \"./LRUMap\";\r\nexport * from \"./ObservableSet\";\r\nexport * from \"./OneAtATimeAction\";\r\nexport * from \"./OrderedId64Iterable\";\r\nexport * from \"./OrderedSet\";\r\nexport * from \"./partitionArray\";\r\nexport * from \"./PriorityQueue\";\r\nexport * from \"./ProcessDetector\";\r\nexport * from \"./SortedArray\";\r\nexport * from \"./StringUtils\";\r\nexport * from \"./Time\";\r\nexport * from \"./UnexpectedErrors\";\r\nexport * from \"./UtilityTypes\";\r\n\r\n/** @docs-package-description\r\n * The core-bentley package contains classes to solve problems that are common for both client and server use cases.\r\n */\r\n/**\r\n * @docs-group-description BeSQLite\r\n * Classes for working with SQLite databases. SQLite underlies IModelDb and ECDb - see [Executing ECSQL]($docs/learning/ECSQL.md)\r\n */\r\n/**\r\n * @docs-group-description Errors\r\n * Classes for working with errors.\r\n */\r\n/**\r\n * @docs-group-description Events\r\n * Classes for raising and handling events.\r\n */\r\n/**\r\n * @docs-group-description Ids\r\n * Classes for working with unique identifiers.\r\n */\r\n/**\r\n * @docs-group-description Logging\r\n * Classes for configuring and logging diagnostic messages - see [Learning about Logging]($docs/learning/common/Logging.md)\r\n */\r\n/**\r\n * @docs-group-description Collections\r\n * Specialized, customizable collection classes like priority queues.\r\n */\r\n/**\r\n * @docs-group-description Json\r\n * utilities for dealing with Json strings and files.\r\n */\r\n/**\r\n * @docs-group-description Utils\r\n * Miscellaneous utility classes.\r\n */\r\n/**\r\n * @docs-group-description ProcessDetector\r\n * Functions for determining the type of the current JavaScript process.\r\n */\r\n"]}
|
|
@@ -275,7 +275,6 @@ export declare enum IModelHubStatus {
|
|
|
275
275
|
FailedToGetAssetPermissions = 102445,
|
|
276
276
|
FailedToGetAssetMembers = 102446,
|
|
277
277
|
ITwinDoesNotExist = 102447,
|
|
278
|
-
FailedToGetProductSettings = 102448,
|
|
279
278
|
LockChunkDoesNotExist = 102449,
|
|
280
279
|
CheckpointAlreadyExists = 102450,
|
|
281
280
|
CheckpointDoesNotExist = 102451,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BentleyError.d.ts","sourceRoot":"","sources":["../../src/BentleyError.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"BentleyError.d.ts","sourceRoot":"","sources":["../../src/BentleyError.ts"],"names":[],"mappings":"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"}
|
package/lib/esm/BentleyError.js
CHANGED
|
@@ -288,7 +288,6 @@ export var IModelHubStatus;
|
|
|
288
288
|
IModelHubStatus[IModelHubStatus["FailedToGetAssetPermissions"] = 102445] = "FailedToGetAssetPermissions";
|
|
289
289
|
IModelHubStatus[IModelHubStatus["FailedToGetAssetMembers"] = 102446] = "FailedToGetAssetMembers";
|
|
290
290
|
IModelHubStatus[IModelHubStatus["ITwinDoesNotExist"] = 102447] = "ITwinDoesNotExist";
|
|
291
|
-
IModelHubStatus[IModelHubStatus["FailedToGetProductSettings"] = 102448] = "FailedToGetProductSettings";
|
|
292
291
|
IModelHubStatus[IModelHubStatus["LockChunkDoesNotExist"] = 102449] = "LockChunkDoesNotExist";
|
|
293
292
|
IModelHubStatus[IModelHubStatus["CheckpointAlreadyExists"] = 102450] = "CheckpointAlreadyExists";
|
|
294
293
|
IModelHubStatus[IModelHubStatus["CheckpointDoesNotExist"] = 102451] = "CheckpointDoesNotExist";
|
|
@@ -609,7 +608,6 @@ export class BentleyError extends Error {
|
|
|
609
608
|
case IModelHubStatus.JobSchedulingFailed: return "Failed to schedule a background job";
|
|
610
609
|
case IModelHubStatus.ConflictsAggregate: return "Codes or locks are owned by another briefcase";
|
|
611
610
|
case IModelHubStatus.FailedToGetITwinById: return "Failed to query iTwin by its id";
|
|
612
|
-
case IModelHubStatus.FailedToGetProductSettings: return "Failed to get product settings";
|
|
613
611
|
case IModelHubStatus.DatabaseOperationFailed: return "Database operation has failed";
|
|
614
612
|
case IModelHubStatus.ITwinDoesNotExist: return "ITwin does not exist";
|
|
615
613
|
case IModelHubStatus.UndefinedArgumentError: return "Undefined argument";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BentleyError.js","sourceRoot":"","sources":["../../src/BentleyError.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 { DbResult } from \"./BeSQLite\";\r\n\r\n/** Standard status code.\r\n * This status code should be rarely used.\r\n * Prefer to throw an exception to indicate an error, rather than returning a special status code.\r\n * If a status code is to be returned, prefer to return a more specific error status type such as IModelStatus or DbResult.\r\n * @public\r\n */\r\nexport enum BentleyStatus {\r\n SUCCESS = 0x0000,\r\n ERROR = 0x8000,\r\n}\r\n\r\n/** Status codes that are used in conjunction with [[BentleyError]].\r\n * Error status codes are divided into separate ranges for different kinds of errors. All known ranges at least should be defined here, to avoid collisions.\r\n * @public\r\n */\r\nexport enum IModelStatus {\r\n IMODEL_ERROR_BASE = 0x10000,\r\n Success = 0,\r\n AlreadyLoaded = IMODEL_ERROR_BASE + 1,\r\n AlreadyOpen = IMODEL_ERROR_BASE + 2,\r\n BadArg = IMODEL_ERROR_BASE + 3,\r\n BadElement = IMODEL_ERROR_BASE + 4,\r\n BadModel = IMODEL_ERROR_BASE + 5,\r\n BadRequest = IMODEL_ERROR_BASE + 6,\r\n BadSchema = IMODEL_ERROR_BASE + 7,\r\n CannotUndo = IMODEL_ERROR_BASE + 8,\r\n CodeNotReserved = IMODEL_ERROR_BASE + 9,\r\n DeletionProhibited = IMODEL_ERROR_BASE + 10,\r\n DuplicateCode = IMODEL_ERROR_BASE + 11,\r\n DuplicateName = IMODEL_ERROR_BASE + 12,\r\n ElementBlockedChange = IMODEL_ERROR_BASE + 13,\r\n FileAlreadyExists = IMODEL_ERROR_BASE + 14,\r\n FileNotFound = IMODEL_ERROR_BASE + 15,\r\n FileNotLoaded = IMODEL_ERROR_BASE + 16,\r\n ForeignKeyConstraint = IMODEL_ERROR_BASE + 17,\r\n IdExists = IMODEL_ERROR_BASE + 18,\r\n InDynamicTransaction = IMODEL_ERROR_BASE + 19,\r\n InvalidCategory = IMODEL_ERROR_BASE + 20,\r\n InvalidCode = IMODEL_ERROR_BASE + 21,\r\n InvalidCodeSpec = IMODEL_ERROR_BASE + 22,\r\n InvalidId = IMODEL_ERROR_BASE + 23,\r\n InvalidName = IMODEL_ERROR_BASE + 24,\r\n InvalidParent = IMODEL_ERROR_BASE + 25,\r\n InvalidProfileVersion = IMODEL_ERROR_BASE + 26,\r\n IsCreatingChangeSet = IMODEL_ERROR_BASE + 27,\r\n LockNotHeld = IMODEL_ERROR_BASE + 28,\r\n Mismatch2d3d = IMODEL_ERROR_BASE + 29,\r\n MismatchGcs = IMODEL_ERROR_BASE + 30,\r\n MissingDomain = IMODEL_ERROR_BASE + 31,\r\n MissingHandler = IMODEL_ERROR_BASE + 32,\r\n MissingId = IMODEL_ERROR_BASE + 33,\r\n NoGeometry = IMODEL_ERROR_BASE + 34,\r\n NoMultiTxnOperation = IMODEL_ERROR_BASE + 35,\r\n NotEnabled = IMODEL_ERROR_BASE + 37,\r\n NotFound = IMODEL_ERROR_BASE + 38,\r\n NotOpen = IMODEL_ERROR_BASE + 39,\r\n NotOpenForWrite = IMODEL_ERROR_BASE + 40,\r\n NotSameUnitBase = IMODEL_ERROR_BASE + 41,\r\n NothingToRedo = IMODEL_ERROR_BASE + 42,\r\n NothingToUndo = IMODEL_ERROR_BASE + 43,\r\n ParentBlockedChange = IMODEL_ERROR_BASE + 44,\r\n ReadError = IMODEL_ERROR_BASE + 45,\r\n ReadOnly = IMODEL_ERROR_BASE + 46,\r\n ReadOnlyDomain = IMODEL_ERROR_BASE + 47,\r\n RepositoryManagerError = IMODEL_ERROR_BASE + 48,\r\n SQLiteError = IMODEL_ERROR_BASE + 49,\r\n TransactionActive = IMODEL_ERROR_BASE + 50,\r\n UnitsMissing = IMODEL_ERROR_BASE + 51,\r\n UnknownFormat = IMODEL_ERROR_BASE + 52,\r\n UpgradeFailed = IMODEL_ERROR_BASE + 53,\r\n ValidationFailed = IMODEL_ERROR_BASE + 54,\r\n VersionTooNew = IMODEL_ERROR_BASE + 55,\r\n VersionTooOld = IMODEL_ERROR_BASE + 56,\r\n ViewNotFound = IMODEL_ERROR_BASE + 57,\r\n WriteError = IMODEL_ERROR_BASE + 58,\r\n WrongClass = IMODEL_ERROR_BASE + 59,\r\n WrongIModel = IMODEL_ERROR_BASE + 60,\r\n WrongDomain = IMODEL_ERROR_BASE + 61,\r\n WrongElement = IMODEL_ERROR_BASE + 62,\r\n WrongHandler = IMODEL_ERROR_BASE + 63,\r\n WrongModel = IMODEL_ERROR_BASE + 64,\r\n ConstraintNotUnique = IMODEL_ERROR_BASE + 65,\r\n NoGeoLocation = IMODEL_ERROR_BASE + 66,\r\n ServerTimeout = IMODEL_ERROR_BASE + 67,\r\n NoContent = IMODEL_ERROR_BASE + 68,\r\n NotRegistered = IMODEL_ERROR_BASE + 69,\r\n FunctionNotFound = IMODEL_ERROR_BASE + 70,\r\n NoActiveCommand = IMODEL_ERROR_BASE + 71,\r\n}\r\n\r\n/** Error status from various briefcase operations\r\n * @beta Should these be internal?\r\n */\r\nexport enum BriefcaseStatus {\r\n BRIEFCASE_STATUS_BASE = 0x20000,\r\n CannotAcquire = BRIEFCASE_STATUS_BASE,\r\n CannotDownload = BRIEFCASE_STATUS_BASE + 1,\r\n CannotUpload = BRIEFCASE_STATUS_BASE + 2,\r\n CannotCopy = BRIEFCASE_STATUS_BASE + 3,\r\n CannotDelete = BRIEFCASE_STATUS_BASE + 4,\r\n VersionNotFound = BRIEFCASE_STATUS_BASE + 5,\r\n CannotApplyChanges = BRIEFCASE_STATUS_BASE + 6,\r\n DownloadCancelled = BRIEFCASE_STATUS_BASE + 7,\r\n ContainsDeletedChangeSets = BRIEFCASE_STATUS_BASE + 8,\r\n}\r\n\r\n/** RpcInterface status codes\r\n * @beta Should these be internal?\r\n */\r\nexport enum RpcInterfaceStatus {\r\n Success = 0,\r\n RPC_INTERFACE_ERROR_BASE = 0x21000,\r\n /** The RpcInterface implemented by the server is incompatible with the interface requested by the client. */\r\n IncompatibleVersion = RPC_INTERFACE_ERROR_BASE,\r\n}\r\n\r\n/** Error status from various ChangeSet operations\r\n * @beta Should these be internal?\r\n */\r\nexport enum ChangeSetStatus { // Note: Values must be kept in sync with ChangeSetStatus in DgnPlatform\r\n Success = 0,\r\n CHANGESET_ERROR_BASE = 0x16000,\r\n /** Error applying a change set when reversing or reinstating it */\r\n ApplyError = CHANGESET_ERROR_BASE + 1,\r\n /** Change tracking has not been enabled. The ChangeSet API mandates this. */\r\n ChangeTrackingNotEnabled = CHANGESET_ERROR_BASE + 2,\r\n /** Contents of the change stream are corrupted and does not match the ChangeSet */\r\n CorruptedChangeStream = CHANGESET_ERROR_BASE + 3,\r\n /** File containing the changes to the change set is not found */\r\n FileNotFound = CHANGESET_ERROR_BASE + 4,\r\n /** Error writing the contents of the change set to the backing change stream file */\r\n FileWriteError = CHANGESET_ERROR_BASE + 5,\r\n /** Cannot perform the operation since the Db has local changes */\r\n HasLocalChanges = CHANGESET_ERROR_BASE + 6,\r\n /** Cannot perform the operation since current transaction has uncommitted changes */\r\n HasUncommittedChanges = CHANGESET_ERROR_BASE + 7,\r\n /** Invalid ChangeSet Id */\r\n InvalidId = CHANGESET_ERROR_BASE + 8,\r\n /** Invalid version of the change set */\r\n InvalidVersion = CHANGESET_ERROR_BASE + 9,\r\n /** Cannot perform the operation since system is in the middle of a dynamic transaction */\r\n InDynamicTransaction = CHANGESET_ERROR_BASE + 10,\r\n /** Cannot perform operation since system is in the middle of a creating a change set */\r\n IsCreatingChangeSet = CHANGESET_ERROR_BASE + 11,\r\n /** Cannot perform operation since the system is not creating a change set */\r\n IsNotCreatingChangeSet = CHANGESET_ERROR_BASE + 12,\r\n /** Error propagating the changes after the merge */\r\n MergePropagationError = CHANGESET_ERROR_BASE + 13,\r\n /** No change sets to merge */\r\n NothingToMerge = CHANGESET_ERROR_BASE + 14,\r\n /** No transactions are available to create a change set */\r\n NoTransactions = CHANGESET_ERROR_BASE + 15,\r\n /** Parent change set of the Db does not match the parent id of the change set */\r\n ParentMismatch = CHANGESET_ERROR_BASE + 16,\r\n /** Error performing a SQLite operation on the Db */\r\n SQLiteError = CHANGESET_ERROR_BASE + 17,\r\n /** ChangeSet originated in a different Db */\r\n WrongDgnDb = CHANGESET_ERROR_BASE + 18,\r\n /** Could not open the DgnDb to merge change set */\r\n CouldNotOpenDgnDb = CHANGESET_ERROR_BASE + 19,\r\n /** Cannot merge changes in in an open DgnDb. Close the DgnDb, and process the operation when it is opened. */\r\n MergeSchemaChangesOnOpen = CHANGESET_ERROR_BASE + 20,\r\n /** Cannot reverse or reinstate schema changes. */\r\n ReverseOrReinstateSchemaChanges = CHANGESET_ERROR_BASE + 21,\r\n /** Cannot process changes schema changes in an open DgnDb. Close the DgnDb, and process the operation when it is opened. */\r\n ProcessSchemaChangesOnOpen = CHANGESET_ERROR_BASE + 22,\r\n /** Cannot merge changes into a Readonly DgnDb. */\r\n CannotMergeIntoReadonly = CHANGESET_ERROR_BASE + 23,\r\n /** Cannot merge changes into a Master DgnDb. */\r\n CannotMergeIntoMaster = CHANGESET_ERROR_BASE + 24,\r\n /** Cannot merge changes into a DgnDb that has reversed change sets. */\r\n CannotMergeIntoReversed = CHANGESET_ERROR_BASE + 25,\r\n}\r\n\r\n/** Return codes for methods which perform repository management operations\r\n * @beta Should these be internal?\r\n */\r\nexport enum RepositoryStatus {\r\n Success = 0,\r\n /** The repository server did not respond to a request */\r\n ServerUnavailable = 0x15001,\r\n /** A requested lock was already held by another briefcase */\r\n LockAlreadyHeld = 0x15002,\r\n /** Failed to sync briefcase manager with server */\r\n SyncError = 0x15003,\r\n /** Response from server not understood */\r\n InvalidResponse = 0x15004,\r\n /** An operation requires local changes to be committed or abandoned */\r\n PendingTransactions = 0x15005,\r\n /** A lock cannot be relinquished because the associated object has been modified */\r\n LockUsed = 0x15006,\r\n /** An operation required creation of a ChangeSet, which failed */\r\n CannotCreateChangeSet = 0x15007,\r\n /** Request to server not understood */\r\n InvalidRequest = 0x15008,\r\n /** A change set committed to the server must be integrated into the briefcase before the operation can be completed */\r\n ChangeSetRequired = 0x15009,\r\n /** A requested DgnCode is reserved by another briefcase or in use */\r\n CodeUnavailable = 0x1500A,\r\n /** A DgnCode cannot be released because it has not been reserved by the requesting briefcase */\r\n CodeNotReserved = 0x1500B,\r\n /** A DgnCode cannot be relinquished because it has been used locally */\r\n CodeUsed = 0x1500C,\r\n /** A required lock is not held by this briefcase */\r\n LockNotHeld = 0x1500D,\r\n /** Repository is currently locked, no changes allowed */\r\n RepositoryIsLocked = 0x1500E,\r\n /** Channel write constraint violation, such as an attempt to write outside the designated channel. */\r\n ChannelConstraintViolation = 0x1500F,\r\n}\r\n\r\n/** Status from returned HTTP status code\r\n * @beta Should these be internal?\r\n */\r\nexport enum HttpStatus {\r\n /** 2xx Success */\r\n Success = 0,\r\n /** 1xx Informational responses */\r\n Info = 0x17001,\r\n /** 3xx Redirection */\r\n Redirection = 0x17002,\r\n /** 4xx Client errors */\r\n ClientError = 0x17003,\r\n /** 5xx Server errors */\r\n ServerError = 0x17004,\r\n}\r\n\r\n/** iModelHub Services Errors\r\n * @beta Right package?\r\n */\r\nexport enum IModelHubStatus {\r\n Success = 0,\r\n IMODELHUBERROR_BASE = 0x19000,\r\n IMODELHUBERROR_REQUESTERRORBASE = 0x19100,\r\n Unknown = IMODELHUBERROR_BASE + 1,\r\n MissingRequiredProperties = IMODELHUBERROR_BASE + 2,\r\n InvalidPropertiesValues = IMODELHUBERROR_BASE + 3,\r\n UserDoesNotHavePermission = IMODELHUBERROR_BASE + 4,\r\n UserDoesNotHaveAccess = IMODELHUBERROR_BASE + 5,\r\n InvalidBriefcase = IMODELHUBERROR_BASE + 6,\r\n BriefcaseDoesNotExist = IMODELHUBERROR_BASE + 7,\r\n BriefcaseDoesNotBelongToUser = IMODELHUBERROR_BASE + 8,\r\n AnotherUserPushing = IMODELHUBERROR_BASE + 9,\r\n ChangeSetAlreadyExists = IMODELHUBERROR_BASE + 10,\r\n ChangeSetDoesNotExist = IMODELHUBERROR_BASE + 11,\r\n FileIsNotUploaded = IMODELHUBERROR_BASE + 12,\r\n iModelIsNotInitialized = IMODELHUBERROR_BASE + 13,\r\n ChangeSetPointsToBadSeed = IMODELHUBERROR_BASE + 14,\r\n OperationFailed = IMODELHUBERROR_BASE + 15,\r\n PullIsRequired = IMODELHUBERROR_BASE + 16,\r\n MaximumNumberOfBriefcasesPerUser = IMODELHUBERROR_BASE + 17,\r\n MaximumNumberOfBriefcasesPerUserPerMinute = IMODELHUBERROR_BASE + 18,\r\n DatabaseTemporarilyLocked = IMODELHUBERROR_BASE + 19,\r\n iModelIsLocked = IMODELHUBERROR_BASE + 20,\r\n CodesExist = IMODELHUBERROR_BASE + 21,\r\n LocksExist = IMODELHUBERROR_BASE + 22,\r\n iModelAlreadyExists = IMODELHUBERROR_BASE + 23,\r\n iModelDoesNotExist = IMODELHUBERROR_BASE + 24,\r\n FileDoesNotExist = IMODELHUBERROR_BASE + 25,\r\n FileAlreadyExists = IMODELHUBERROR_BASE + 26,\r\n LockDoesNotExist = IMODELHUBERROR_BASE + 27,\r\n LockOwnedByAnotherBriefcase = IMODELHUBERROR_BASE + 28,\r\n CodeStateInvalid = IMODELHUBERROR_BASE + 29,\r\n CodeReservedByAnotherBriefcase = IMODELHUBERROR_BASE + 30,\r\n CodeDoesNotExist = IMODELHUBERROR_BASE + 31,\r\n EventTypeDoesNotExist = IMODELHUBERROR_BASE + 32,\r\n EventSubscriptionDoesNotExist = IMODELHUBERROR_BASE + 33,\r\n EventSubscriptionAlreadyExists = IMODELHUBERROR_BASE + 34,\r\n ITwinIdIsNotSpecified = IMODELHUBERROR_BASE + 35,\r\n FailedToGetITwinPermissions = IMODELHUBERROR_BASE + 36,\r\n FailedToGetITwinMembers = IMODELHUBERROR_BASE + 37,\r\n ChangeSetAlreadyHasVersion = IMODELHUBERROR_BASE + 38,\r\n VersionAlreadyExists = IMODELHUBERROR_BASE + 39,\r\n JobSchedulingFailed = IMODELHUBERROR_BASE + 40,\r\n ConflictsAggregate = IMODELHUBERROR_BASE + 41,\r\n FailedToGetITwinById = IMODELHUBERROR_BASE + 42,\r\n\r\n DatabaseOperationFailed = IMODELHUBERROR_BASE + 43,\r\n SeedFileInitializationFailed = IMODELHUBERROR_BASE + 44,\r\n\r\n FailedToGetAssetPermissions = IMODELHUBERROR_BASE + 45,\r\n FailedToGetAssetMembers = IMODELHUBERROR_BASE + 46,\r\n ITwinDoesNotExist = IMODELHUBERROR_BASE + 47,\r\n FailedToGetProductSettings = IMODELHUBERROR_BASE + 48,\r\n\r\n LockChunkDoesNotExist = IMODELHUBERROR_BASE + 49,\r\n\r\n CheckpointAlreadyExists = IMODELHUBERROR_BASE + 50,\r\n CheckpointDoesNotExist = IMODELHUBERROR_BASE + 51,\r\n\r\n // Errors that are returned for incorrect iModelHub request.\r\n UndefinedArgumentError = IMODELHUBERROR_REQUESTERRORBASE + 1,\r\n InvalidArgumentError = IMODELHUBERROR_REQUESTERRORBASE + 2,\r\n MissingDownloadUrlError = IMODELHUBERROR_REQUESTERRORBASE + 3,\r\n NotSupportedInBrowser = IMODELHUBERROR_REQUESTERRORBASE + 4,\r\n FileHandlerNotSet = IMODELHUBERROR_REQUESTERRORBASE + 5,\r\n FileNotFound = IMODELHUBERROR_REQUESTERRORBASE + 6,\r\n InitializationTimeout = IMODELHUBERROR_REQUESTERRORBASE + 7,\r\n}\r\n\r\n/** Authentication Errors\r\n * @beta Internal? Right package?\r\n */\r\nexport enum AuthStatus {\r\n Success = 0,\r\n AUTHSTATUS_BASE = 0x22000,\r\n Error = AUTHSTATUS_BASE,\r\n}\r\n\r\n/** GeoServiceStatus errors\r\n * @public\r\n */\r\nexport enum GeoServiceStatus {\r\n Success = 0,\r\n GEOSERVICESTATUS_BASE = 0x24000,\r\n // Error mapped from 'IModelStatus'\r\n NoGeoLocation = IModelStatus.NoGeoLocation,\r\n // Following errors are mapped from 'GeoCoordStatus'\r\n OutOfUsefulRange = GEOSERVICESTATUS_BASE + 1,\r\n OutOfMathematicalDomain = GEOSERVICESTATUS_BASE + 2,\r\n NoDatumConverter = GEOSERVICESTATUS_BASE + 3,\r\n VerticalDatumConvertError = GEOSERVICESTATUS_BASE + 4,\r\n CSMapError = GEOSERVICESTATUS_BASE + 5,\r\n Pending = GEOSERVICESTATUS_BASE + 6,\r\n}\r\n\r\n/** When you want to associate an explanatory message with an error status value.\r\n * @beta Internal?\r\n */\r\nexport interface StatusCodeWithMessage<ErrorCodeType> {\r\n status: ErrorCodeType;\r\n message: string;\r\n}\r\n\r\n/** A function that returns a metadata object for a [[BentleyError]].\r\n * This is generally used for logging. However not every exception is logged, so use this if the metadata for an exception is expensive to create.\r\n * @public\r\n */\r\nexport type GetMetaDataFunction = () => object | undefined;\r\n\r\n/** Optional metadata attached to a [[BentleyError]]. May either be an object or a function that returns an object.\r\n * If this exception is logged and metadata is present, the metaData object is attached to the log entry via `JSON.stringify`\r\n * @public\r\n */\r\nexport type LoggingMetaData = GetMetaDataFunction | object | undefined;\r\n\r\nfunction isObject(obj: unknown): obj is { [key: string]: unknown } {\r\n return typeof obj === \"object\" && obj !== null;\r\n}\r\n\r\ninterface ErrorProps {\r\n message: string;\r\n stack?: string;\r\n metadata?: object;\r\n}\r\n\r\n/** Base exception class for iTwin.js exceptions.\r\n * @public\r\n */\r\nexport class BentleyError extends Error {\r\n private readonly _metaData: LoggingMetaData;\r\n\r\n /**\r\n * @param errorNumber The a number that identifies of the problem.\r\n * @param message message that describes the problem (should not be localized).\r\n * @param metaData metaData about the exception.\r\n */\r\n public constructor(public errorNumber: number, message?: string, metaData?: LoggingMetaData) {\r\n super(message);\r\n this.errorNumber = errorNumber;\r\n this._metaData = metaData;\r\n this.name = this._initName();\r\n }\r\n\r\n /** Returns true if this BentleyError includes (optional) metadata. */\r\n public get hasMetaData(): boolean { return undefined !== this._metaData; }\r\n\r\n /** get the meta data associated with this BentleyError, if any. */\r\n public getMetaData(): object | undefined {\r\n return BentleyError.getMetaData(this._metaData);\r\n }\r\n\r\n /** get the metadata object associated with an ExceptionMetaData, if any. */\r\n public static getMetaData(metaData: LoggingMetaData): object | undefined {\r\n return (typeof metaData === \"function\") ? metaData() : metaData;\r\n }\r\n\r\n /** This function returns the name of each error status. Override this method to handle more error status codes. */\r\n protected _initName(): string {\r\n switch (this.errorNumber) {\r\n case IModelStatus.AlreadyLoaded: return \"Already Loaded\";\r\n case IModelStatus.AlreadyOpen: return \"Already Open\";\r\n case IModelStatus.BadArg: return \"Bad Arg\";\r\n case IModelStatus.BadElement: return \"Bad Element\";\r\n case IModelStatus.BadModel: return \"Bad Model\";\r\n case IModelStatus.BadRequest: return \"Bad Request\";\r\n case IModelStatus.BadSchema: return \"Bad Schema\";\r\n case IModelStatus.CannotUndo: return \"Can not Undo\";\r\n case IModelStatus.CodeNotReserved: return \"Code Not Reserved\";\r\n case IModelStatus.DeletionProhibited: return \"Deletion Prohibited\";\r\n case IModelStatus.DuplicateCode: return \"Duplicate Code\";\r\n case IModelStatus.DuplicateName: return \"Duplicate Name\";\r\n case IModelStatus.ElementBlockedChange: return \"Element Blocked Change\";\r\n case IModelStatus.FileAlreadyExists: return \"File Already Exists\";\r\n case IModelStatus.FileNotFound: return \"File Not Found\";\r\n case IModelStatus.FileNotLoaded: return \"File Not Loaded\";\r\n case IModelStatus.ForeignKeyConstraint: return \"ForeignKey Constraint\";\r\n case IModelStatus.IdExists: return \"Id Exists\";\r\n case IModelStatus.InDynamicTransaction: return \"InDynamicTransaction\";\r\n case IModelStatus.InvalidCategory: return \"Invalid Category\";\r\n case IModelStatus.InvalidCode: return \"Invalid Code\";\r\n case IModelStatus.InvalidCodeSpec: return \"Invalid CodeSpec\";\r\n case IModelStatus.InvalidId: return \"Invalid Id\";\r\n case IModelStatus.InvalidName: return \"Invalid Name\";\r\n case IModelStatus.InvalidParent: return \"Invalid Parent\";\r\n case IModelStatus.InvalidProfileVersion: return \"Invalid Profile Version\";\r\n case IModelStatus.IsCreatingChangeSet: return \"IsCreatingChangeSet\";\r\n case IModelStatus.LockNotHeld: return \"Lock Not Held\";\r\n case IModelStatus.Mismatch2d3d: return \"Mismatch 2d3d\";\r\n case IModelStatus.MismatchGcs: return \"Mismatch Gcs\";\r\n case IModelStatus.MissingDomain: return \"Missing Domain\";\r\n case IModelStatus.MissingHandler: return \"Missing Handler\";\r\n case IModelStatus.MissingId: return \"Missing Id\";\r\n case IModelStatus.NoGeometry: return \"No Geometry\";\r\n case IModelStatus.NoMultiTxnOperation: return \"NoMultiTxnOperation\";\r\n case IModelStatus.NotEnabled: return \"Not Enabled\";\r\n case IModelStatus.NotFound: return \"Not Found\";\r\n case IModelStatus.NotOpen: return \"Not Open\";\r\n case IModelStatus.NotOpenForWrite: return \"Not Open For Write\";\r\n case IModelStatus.NotSameUnitBase: return \"Not Same Unit Base\";\r\n case IModelStatus.NothingToRedo: return \"Nothing To Redo\";\r\n case IModelStatus.NothingToUndo: return \"Nothing To Undo\";\r\n case IModelStatus.ParentBlockedChange: return \"Parent Blocked Change\";\r\n case IModelStatus.ReadError: return \"Read Error\";\r\n case IModelStatus.ReadOnly: return \"ReadOnly\";\r\n case IModelStatus.ReadOnlyDomain: return \"ReadOnlyDomain\";\r\n case IModelStatus.RepositoryManagerError: return \"RepositoryManagerError\";\r\n case IModelStatus.SQLiteError: return \"SQLiteError\";\r\n case IModelStatus.TransactionActive: return \"Transaction Active\";\r\n case IModelStatus.UnitsMissing: return \"Units Missing\";\r\n case IModelStatus.UnknownFormat: return \"Unknown Format\";\r\n case IModelStatus.UpgradeFailed: return \"Upgrade Failed\";\r\n case IModelStatus.ValidationFailed: return \"Validation Failed\";\r\n case IModelStatus.VersionTooNew: return \"Version Too New\";\r\n case IModelStatus.VersionTooOld: return \"Version Too Old\";\r\n case IModelStatus.ViewNotFound: return \"View Not Found\";\r\n case IModelStatus.WriteError: return \"Write Error\";\r\n case IModelStatus.WrongClass: return \"Wrong Class\";\r\n case IModelStatus.WrongIModel: return \"Wrong IModel\";\r\n case IModelStatus.WrongDomain: return \"Wrong Domain\";\r\n case IModelStatus.WrongElement: return \"Wrong Element\";\r\n case IModelStatus.WrongHandler: return \"Wrong Handler\";\r\n case IModelStatus.WrongModel: return \"Wrong Model\";\r\n case DbResult.BE_SQLITE_ERROR: return \"BE_SQLITE_ERROR\";\r\n case DbResult.BE_SQLITE_INTERNAL: return \"BE_SQLITE_INTERNAL\";\r\n case DbResult.BE_SQLITE_PERM: return \"BE_SQLITE_PERM\";\r\n case DbResult.BE_SQLITE_ABORT: return \"BE_SQLITE_ABORT\";\r\n case DbResult.BE_SQLITE_BUSY: return \"Db is busy\";\r\n case DbResult.BE_SQLITE_LOCKED: return \"Db is Locked\";\r\n case DbResult.BE_SQLITE_NOMEM: return \"BE_SQLITE_NOMEM\";\r\n case DbResult.BE_SQLITE_READONLY: return \"Readonly\";\r\n case DbResult.BE_SQLITE_INTERRUPT: return \"BE_SQLITE_INTERRUPT\";\r\n case DbResult.BE_SQLITE_IOERR: return \"BE_SQLITE_IOERR\";\r\n case DbResult.BE_SQLITE_CORRUPT: return \"BE_SQLITE_CORRUPT\";\r\n case DbResult.BE_SQLITE_NOTFOUND: return \"Not Found\";\r\n case DbResult.BE_SQLITE_FULL: return \"BE_SQLITE_FULL\";\r\n case DbResult.BE_SQLITE_CANTOPEN: return \"Can't open\";\r\n case DbResult.BE_SQLITE_PROTOCOL: return \"BE_SQLITE_PROTOCOL\";\r\n case DbResult.BE_SQLITE_EMPTY: return \"BE_SQLITE_EMPTY\";\r\n case DbResult.BE_SQLITE_SCHEMA: return \"BE_SQLITE_SCHEMA\";\r\n case DbResult.BE_SQLITE_TOOBIG: return \"BE_SQLITE_TOOBIG\";\r\n case DbResult.BE_SQLITE_MISMATCH: return \"BE_SQLITE_MISMATCH\";\r\n case DbResult.BE_SQLITE_MISUSE: return \"BE_SQLITE_MISUSE\";\r\n case DbResult.BE_SQLITE_NOLFS: return \"BE_SQLITE_NOLFS\";\r\n case DbResult.BE_SQLITE_AUTH: return \"BE_SQLITE_AUTH\";\r\n case DbResult.BE_SQLITE_FORMAT: return \"BE_SQLITE_FORMAT\";\r\n case DbResult.BE_SQLITE_RANGE: return \"BE_SQLITE_RANGE\";\r\n case DbResult.BE_SQLITE_NOTADB: return \"Not a Database\";\r\n case DbResult.BE_SQLITE_IOERR_READ: return \"BE_SQLITE_IOERR_READ\";\r\n case DbResult.BE_SQLITE_IOERR_SHORT_READ: return \"BE_SQLITE_IOERR_SHORT_READ\";\r\n case DbResult.BE_SQLITE_IOERR_WRITE: return \"BE_SQLITE_IOERR_WRITE\";\r\n case DbResult.BE_SQLITE_IOERR_FSYNC: return \"BE_SQLITE_IOERR_FSYNC\";\r\n case DbResult.BE_SQLITE_IOERR_DIR_FSYNC: return \"BE_SQLITE_IOERR_DIR_FSYNC\";\r\n case DbResult.BE_SQLITE_IOERR_TRUNCATE: return \"BE_SQLITE_IOERR_TRUNCATE\";\r\n case DbResult.BE_SQLITE_IOERR_FSTAT: return \"BE_SQLITE_IOERR_FSTAT\";\r\n case DbResult.BE_SQLITE_IOERR_UNLOCK: return \"BE_SQLITE_IOERR_UNLOCK\";\r\n case DbResult.BE_SQLITE_IOERR_RDLOCK: return \"BE_SQLITE_IOERR_RDLOCK\";\r\n case DbResult.BE_SQLITE_IOERR_DELETE: return \"BE_SQLITE_IOERR_DELETE\";\r\n case DbResult.BE_SQLITE_IOERR_BLOCKED: return \"BE_SQLITE_IOERR_BLOCKED\";\r\n case DbResult.BE_SQLITE_IOERR_NOMEM: return \"BE_SQLITE_IOERR_NOMEM\";\r\n case DbResult.BE_SQLITE_IOERR_ACCESS: return \"BE_SQLITE_IOERR_ACCESS\";\r\n case DbResult.BE_SQLITE_IOERR_CHECKRESERVEDLOCK: return \"BE_SQLITE_IOERR_CHECKRESERVEDLOCK\";\r\n case DbResult.BE_SQLITE_IOERR_LOCK: return \"BE_SQLITE_IOERR_LOCK\";\r\n case DbResult.BE_SQLITE_IOERR_CLOSE: return \"BE_SQLITE_IOERR_CLOSE\";\r\n case DbResult.BE_SQLITE_IOERR_DIR_CLOSE: return \"BE_SQLITE_IOERR_DIR_CLOSE\";\r\n case DbResult.BE_SQLITE_IOERR_SHMOPEN: return \"BE_SQLITE_IOERR_SHMOPEN\";\r\n case DbResult.BE_SQLITE_IOERR_SHMSIZE: return \"BE_SQLITE_IOERR_SHMSIZE\";\r\n case DbResult.BE_SQLITE_IOERR_SHMLOCK: return \"BE_SQLITE_IOERR_SHMLOCK\";\r\n case DbResult.BE_SQLITE_IOERR_SHMMAP: return \"BE_SQLITE_IOERR_SHMMAP\";\r\n case DbResult.BE_SQLITE_IOERR_SEEK: return \"BE_SQLITE_IOERR_SEEK\";\r\n case DbResult.BE_SQLITE_IOERR_DELETE_NOENT: return \"BE_SQLITE_IOERR_DELETE_NOENT\";\r\n case DbResult.BE_SQLITE_ERROR_FileExists: return \"File Exists\";\r\n case DbResult.BE_SQLITE_ERROR_AlreadyOpen: return \"Already Open\";\r\n case DbResult.BE_SQLITE_ERROR_NoPropertyTable: return \"No Property Table\";\r\n case DbResult.BE_SQLITE_ERROR_FileNotFound: return \"File Not Found\";\r\n case DbResult.BE_SQLITE_ERROR_NoTxnActive: return \"No Txn Active\";\r\n case DbResult.BE_SQLITE_ERROR_BadDbProfile: return \"Bad Db Profile\";\r\n case DbResult.BE_SQLITE_ERROR_InvalidProfileVersion: return \"Invalid Profile Version\";\r\n case DbResult.BE_SQLITE_ERROR_ProfileUpgradeFailed: return \"Profile Upgrade Failed\";\r\n case DbResult.BE_SQLITE_ERROR_ProfileTooOldForReadWrite: return \"Profile Too Old For ReadWrite\";\r\n case DbResult.BE_SQLITE_ERROR_ProfileTooOld: return \"Profile Too Old\";\r\n case DbResult.BE_SQLITE_ERROR_ProfileTooNewForReadWrite: return \"Profile Too New For ReadWrite\";\r\n case DbResult.BE_SQLITE_ERROR_ProfileTooNew: return \"Profile Too New\";\r\n case DbResult.BE_SQLITE_ERROR_ChangeTrackError: return \"ChangeTrack Error\";\r\n case DbResult.BE_SQLITE_ERROR_InvalidChangeSetVersion: return \"Invalid ChangeSet Version\";\r\n case DbResult.BE_SQLITE_ERROR_SchemaUpgradeRequired: return \"Schema Upgrade Required\";\r\n case DbResult.BE_SQLITE_ERROR_SchemaTooNew: return \"Schema Too New\";\r\n case DbResult.BE_SQLITE_ERROR_SchemaTooOld: return \"Schema Too Old\";\r\n case DbResult.BE_SQLITE_ERROR_SchemaLockFailed: return \"Schema Lock Failed\";\r\n case DbResult.BE_SQLITE_ERROR_SchemaUpgradeFailed: return \"Schema Upgrade Failed\";\r\n case DbResult.BE_SQLITE_ERROR_SchemaImportFailed: return \"Schema Import Failed\";\r\n case DbResult.BE_SQLITE_ERROR_CouldNotAcquireLocksOrCodes: return \"Could Not Acquire Locks Or Codes\";\r\n case DbResult.BE_SQLITE_ERROR_SchemaUpgradeRecommended: return \"Recommended that the schemas found in the database be upgraded\";\r\n case DbResult.BE_SQLITE_LOCKED_SHAREDCACHE: return \"BE_SQLITE_LOCKED_SHAREDCACHE\";\r\n case DbResult.BE_SQLITE_BUSY_RECOVERY: return \"BE_SQLITE_BUSY_RECOVERY\";\r\n case DbResult.BE_SQLITE_CANTOPEN_NOTEMPDIR: return \"SQLite No Temp Dir\";\r\n case DbResult.BE_SQLITE_CANTOPEN_ISDIR: return \"BE_SQLITE_CANTOPEN_ISDIR\";\r\n case DbResult.BE_SQLITE_CANTOPEN_FULLPATH: return \"BE_SQLITE_CANTOPEN_FULLPATH\";\r\n case DbResult.BE_SQLITE_CORRUPT_VTAB: return \"BE_SQLITE_CORRUPT_VTAB\";\r\n case DbResult.BE_SQLITE_READONLY_RECOVERY: return \"BE_SQLITE_READONLY_RECOVERY\";\r\n case DbResult.BE_SQLITE_READONLY_CANTLOCK: return \"BE_SQLITE_READONLY_CANTLOCK\";\r\n case DbResult.BE_SQLITE_READONLY_ROLLBACK: return \"BE_SQLITE_READONLY_ROLLBACK\";\r\n case DbResult.BE_SQLITE_ABORT_ROLLBACK: return \"BE_SQLITE_ABORT_ROLLBACK\";\r\n case DbResult.BE_SQLITE_CONSTRAINT_CHECK: return \"BE_SQLITE_CONSTRAINT_CHECK\";\r\n case DbResult.BE_SQLITE_CONSTRAINT_COMMITHOOK: return \"CommitHook Constraint Error\";\r\n case DbResult.BE_SQLITE_CONSTRAINT_FOREIGNKEY: return \"Foreign Key Constraint Error\";\r\n case DbResult.BE_SQLITE_CONSTRAINT_FUNCTION: return \"Function Constraint Error\";\r\n case DbResult.BE_SQLITE_CONSTRAINT_NOTNULL: return \"NotNull Constraint Error\";\r\n case DbResult.BE_SQLITE_CONSTRAINT_PRIMARYKEY: return \"Primary Key Constraint Error\";\r\n case DbResult.BE_SQLITE_CONSTRAINT_TRIGGER: return \"Trigger Constraint Error\";\r\n case DbResult.BE_SQLITE_CONSTRAINT_UNIQUE: return \"Unique Constraint Error\";\r\n case DbResult.BE_SQLITE_CONSTRAINT_VTAB: return \"VTable Constraint Error\";\r\n case BentleyStatus.ERROR: return \"Error\";\r\n case BriefcaseStatus.CannotAcquire: return \"CannotAcquire\";\r\n case BriefcaseStatus.CannotDownload: return \"CannotDownload\";\r\n case BriefcaseStatus.CannotCopy: return \"CannotCopy\";\r\n case BriefcaseStatus.CannotDelete: return \"CannotDelete\";\r\n case BriefcaseStatus.VersionNotFound: return \"VersionNotFound\";\r\n case BriefcaseStatus.DownloadCancelled: return \"DownloadCancelled\";\r\n case BriefcaseStatus.ContainsDeletedChangeSets: return \"ContainsDeletedChangeSets\";\r\n case RpcInterfaceStatus.IncompatibleVersion: return \"RpcInterfaceStatus.IncompatibleVersion\";\r\n case ChangeSetStatus.ApplyError: return \"Error applying a change set\";\r\n case ChangeSetStatus.ChangeTrackingNotEnabled: return \"Change tracking has not been enabled. The ChangeSet API mandates this\";\r\n case ChangeSetStatus.CorruptedChangeStream: return \"Contents of the change stream are corrupted and does not match the ChangeSet\";\r\n case ChangeSetStatus.FileNotFound: return \"File containing the changes was not found\";\r\n case ChangeSetStatus.FileWriteError: return \"Error writing the contents of the change set to the backing change stream file\";\r\n case ChangeSetStatus.HasLocalChanges: return \"Cannot perform the operation since the Db has local changes\";\r\n case ChangeSetStatus.HasUncommittedChanges: return \"Cannot perform the operation since current transaction has uncommitted changes\";\r\n case ChangeSetStatus.InvalidId: return \"Invalid ChangeSet Id\";\r\n case ChangeSetStatus.InvalidVersion: return \"Invalid version of the change set\";\r\n case ChangeSetStatus.InDynamicTransaction: return \"Cannot perform the operation since system is in the middle of a dynamic transaction\";\r\n case ChangeSetStatus.IsCreatingChangeSet: return \"Cannot perform operation since system is in the middle of a creating a change set\";\r\n case ChangeSetStatus.IsNotCreatingChangeSet: return \"Cannot perform operation since the system is not creating a change set\";\r\n case ChangeSetStatus.MergePropagationError: return \"Error propagating the changes after the merge\";\r\n case ChangeSetStatus.NothingToMerge: return \"No change sets to merge\";\r\n case ChangeSetStatus.NoTransactions: return \"No transactions are available to create a change set\";\r\n case ChangeSetStatus.ParentMismatch: return \"Parent change set of the Db does not match the parent id of the change set\";\r\n case ChangeSetStatus.SQLiteError: return \"Error performing a SQLite operation on the Db\";\r\n case ChangeSetStatus.WrongDgnDb: return \"ChangeSet originated in a different Db\";\r\n case ChangeSetStatus.CouldNotOpenDgnDb: return \"Could not open the DgnDb to merge change set\";\r\n case ChangeSetStatus.MergeSchemaChangesOnOpen: return \"Cannot merge changes in in an open DgnDb. Close the DgnDb, and process the operation when it is opened\";\r\n case ChangeSetStatus.ReverseOrReinstateSchemaChanges: return \"Cannot reverse or reinstate schema changes.\";\r\n case ChangeSetStatus.ProcessSchemaChangesOnOpen: return \"Cannot process changes schema changes in an open DgnDb. Close the DgnDb, and process the operation when it is opened\";\r\n case ChangeSetStatus.CannotMergeIntoReadonly: return \"Cannot merge changes into a Readonly DgnDb\";\r\n case ChangeSetStatus.CannotMergeIntoMaster: return \"Cannot merge changes into a Master DgnDb\";\r\n case ChangeSetStatus.CannotMergeIntoReversed: return \"Cannot merge changes into a DgnDb that has reversed change sets\";\r\n case RepositoryStatus.ServerUnavailable: return \"ServerUnavailable\";\r\n case RepositoryStatus.LockAlreadyHeld: return \"LockAlreadyHeld\";\r\n case RepositoryStatus.SyncError: return \"SyncError\";\r\n case RepositoryStatus.InvalidResponse: return \"InvalidResponse\";\r\n case RepositoryStatus.PendingTransactions: return \"PendingTransactions\";\r\n case RepositoryStatus.LockUsed: return \"LockUsed\";\r\n case RepositoryStatus.CannotCreateChangeSet: return \"CannotCreateChangeSet\";\r\n case RepositoryStatus.InvalidRequest: return \"InvalidRequest\";\r\n case RepositoryStatus.ChangeSetRequired: return \"ChangeSetRequired\";\r\n case RepositoryStatus.CodeUnavailable: return \"CodeUnavailable\";\r\n case RepositoryStatus.CodeNotReserved: return \"CodeNotReserved\";\r\n case RepositoryStatus.CodeUsed: return \"CodeUsed\";\r\n case RepositoryStatus.LockNotHeld: return \"LockNotHeld\";\r\n case RepositoryStatus.RepositoryIsLocked: return \"RepositoryIsLocked\";\r\n case RepositoryStatus.ChannelConstraintViolation: return \"ChannelConstraintViolation\";\r\n case HttpStatus.Info: return \"HTTP Info\";\r\n case HttpStatus.Redirection: return \"HTTP Redirection\";\r\n case HttpStatus.ClientError: return \"HTTP Client error\";\r\n case HttpStatus.ServerError: return \"HTTP Server error\";\r\n case IModelHubStatus.Unknown: return \"Unknown error\";\r\n case IModelHubStatus.MissingRequiredProperties: return \"Missing required properties\";\r\n case IModelHubStatus.InvalidPropertiesValues: return \"Invalid properties values\";\r\n case IModelHubStatus.UserDoesNotHavePermission: return \"User does not have permission\";\r\n case IModelHubStatus.UserDoesNotHaveAccess: return \"User does not have access\";\r\n case IModelHubStatus.InvalidBriefcase: return \"Invalid briefcase\";\r\n case IModelHubStatus.BriefcaseDoesNotExist: return \"Briefcase does not exist\";\r\n case IModelHubStatus.BriefcaseDoesNotBelongToUser: return \"Briefcase does not belong to user\";\r\n case IModelHubStatus.AnotherUserPushing: return \"Another user pushing\";\r\n case IModelHubStatus.ChangeSetAlreadyExists: return \"ChangeSet already exists\";\r\n case IModelHubStatus.ChangeSetDoesNotExist: return \"ChangeSet does not exist\";\r\n case IModelHubStatus.FileIsNotUploaded: return \"File is not uploaded\";\r\n case IModelHubStatus.iModelIsNotInitialized: return \"iModel is not initialized\";\r\n case IModelHubStatus.ChangeSetPointsToBadSeed: return \"ChangeSet points to a bad seed file\";\r\n case IModelHubStatus.OperationFailed: return \"iModelHub operation has failed\";\r\n case IModelHubStatus.PullIsRequired: return \"Pull is required\";\r\n case IModelHubStatus.MaximumNumberOfBriefcasesPerUser: return \"Limit of briefcases per user was reached\";\r\n case IModelHubStatus.MaximumNumberOfBriefcasesPerUserPerMinute: return \"Limit of briefcases per user per minute was reached\";\r\n case IModelHubStatus.DatabaseTemporarilyLocked: return \"Database is temporarily locked\";\r\n case IModelHubStatus.iModelIsLocked: return \"iModel is locked\";\r\n case IModelHubStatus.CodesExist: return \"Code already exists\";\r\n case IModelHubStatus.LocksExist: return \"Lock already exists\";\r\n case IModelHubStatus.iModelAlreadyExists: return \"iModel already exists\";\r\n case IModelHubStatus.iModelDoesNotExist: return \"iModel does not exist\";\r\n case IModelHubStatus.LockDoesNotExist: return \"Lock does not exist\";\r\n case IModelHubStatus.LockChunkDoesNotExist: return \"Lock chunk does not exist\";\r\n case IModelHubStatus.LockOwnedByAnotherBriefcase: return \"Lock is owned by another briefcase\";\r\n case IModelHubStatus.CodeStateInvalid: return \"Code state is invalid\";\r\n case IModelHubStatus.CodeReservedByAnotherBriefcase: return \"Code is reserved by another briefcase\";\r\n case IModelHubStatus.CodeDoesNotExist: return \"Code does not exist\";\r\n case IModelHubStatus.FileDoesNotExist: return \"File does not exist\";\r\n case IModelHubStatus.FileAlreadyExists: return \"File already exists\";\r\n case IModelHubStatus.EventTypeDoesNotExist: return \"Event type does not exist\";\r\n case IModelHubStatus.EventSubscriptionDoesNotExist: return \"Event subscription does not exist\";\r\n case IModelHubStatus.EventSubscriptionAlreadyExists: return \"Event subscription already exists\";\r\n case IModelHubStatus.ITwinIdIsNotSpecified: return \"ITwin Id is not specified\";\r\n case IModelHubStatus.FailedToGetITwinPermissions: return \"Failed to get iTwin permissions\";\r\n case IModelHubStatus.FailedToGetITwinMembers: return \"Failed to get iTwin members\";\r\n case IModelHubStatus.FailedToGetAssetPermissions: return \"Failed to get asset permissions\";\r\n case IModelHubStatus.FailedToGetAssetMembers: return \"Failed to get asset members\";\r\n case IModelHubStatus.ChangeSetAlreadyHasVersion: return \"ChangeSet already has version\";\r\n case IModelHubStatus.VersionAlreadyExists: return \"Version already exists\";\r\n case IModelHubStatus.JobSchedulingFailed: return \"Failed to schedule a background job\";\r\n case IModelHubStatus.ConflictsAggregate: return \"Codes or locks are owned by another briefcase\";\r\n case IModelHubStatus.FailedToGetITwinById: return \"Failed to query iTwin by its id\";\r\n case IModelHubStatus.FailedToGetProductSettings: return \"Failed to get product settings\";\r\n case IModelHubStatus.DatabaseOperationFailed: return \"Database operation has failed\";\r\n case IModelHubStatus.ITwinDoesNotExist: return \"ITwin does not exist\";\r\n case IModelHubStatus.UndefinedArgumentError: return \"Undefined argument\";\r\n case IModelHubStatus.InvalidArgumentError: return \"Invalid argument\";\r\n case IModelHubStatus.MissingDownloadUrlError: return \"Missing download url\";\r\n case IModelHubStatus.NotSupportedInBrowser: return \"Not supported in browser\";\r\n case IModelHubStatus.FileHandlerNotSet: return \"File handler is not set\";\r\n case IModelHubStatus.FileNotFound: return \"File not found\";\r\n case AuthStatus.Error: return \"Authorization error\";\r\n case GeoServiceStatus.NoGeoLocation: return \"No GeoLocation\";\r\n case GeoServiceStatus.OutOfUsefulRange: return \"Out of useful range\";\r\n case GeoServiceStatus.OutOfMathematicalDomain: return \"Out of mathematical domain\";\r\n case GeoServiceStatus.NoDatumConverter: return \"No datum converter\";\r\n case GeoServiceStatus.VerticalDatumConvertError: return \"Vertical datum convert error\";\r\n case GeoServiceStatus.CSMapError: return \"CSMap error\";\r\n case GeoServiceStatus.Pending: return \"Pending\";\r\n case IModelStatus.Success:\r\n case DbResult.BE_SQLITE_OK:\r\n case DbResult.BE_SQLITE_ROW:\r\n case DbResult.BE_SQLITE_DONE:\r\n case BentleyStatus.SUCCESS:\r\n return \"Success\";\r\n\r\n default:\r\n return `Error (${this.errorNumber})`;\r\n }\r\n }\r\n\r\n /** Use run-time type checking to safely get a useful string summary of an unknown error value, or `\"\"` if none exists.\r\n * @note It's recommended to use this function in `catch` clauses, where a caught value cannot be assumed to be `instanceof Error`\r\n * @public\r\n */\r\n public static getErrorMessage(error: unknown): string {\r\n if (typeof error === \"string\")\r\n return error;\r\n\r\n if (error instanceof Error)\r\n return error.toString();\r\n\r\n if (isObject(error)) {\r\n if (typeof error.message === \"string\")\r\n return error.message;\r\n\r\n if (typeof error.msg === \"string\")\r\n return error.msg;\r\n\r\n if (error.toString() !== \"[object Object]\")\r\n return error.toString();\r\n }\r\n\r\n return \"\";\r\n }\r\n\r\n /** Use run-time type checking to safely get the call stack of an unknown error value, if possible.\r\n * @note It's recommended to use this function in `catch` clauses, where a caught value cannot be assumed to be `instanceof Error`\r\n * @public\r\n */\r\n public static getErrorStack(error: unknown): string | undefined {\r\n if (isObject(error) && typeof error.stack === \"string\")\r\n return error.stack;\r\n\r\n return undefined;\r\n }\r\n\r\n /** Use run-time type checking to safely get the metadata with an unknown error value, if possible.\r\n * @note It's recommended to use this function in `catch` clauses, where a caught value cannot be assumed to be `instanceof BentleyError`\r\n * @see [[BentleyError.getMetaData]]\r\n * @public\r\n */\r\n public static getErrorMetadata(error: unknown): object | undefined {\r\n if (isObject(error) && typeof error.getMetaData === \"function\") {\r\n const metadata = error.getMetaData();\r\n if (typeof metadata === \"object\" && metadata !== null)\r\n return metadata;\r\n }\r\n\r\n return undefined;\r\n }\r\n\r\n /** Returns a new `ErrorProps` object representing an unknown error value. Useful for logging or wrapping/re-throwing caught errors.\r\n * @note Unlike `Error` objects (which lose messages and call stacks when serialized to JSON), objects\r\n * returned by this are plain old JavaScript objects, and can be easily logged/serialized to JSON.\r\n * @public\r\n */\r\n public static getErrorProps(error: unknown): ErrorProps {\r\n const serialized: ErrorProps = {\r\n message: BentleyError.getErrorMessage(error),\r\n };\r\n\r\n const stack = BentleyError.getErrorStack(error);\r\n if (stack)\r\n serialized.stack = stack;\r\n\r\n const metadata = BentleyError.getErrorMetadata(error);\r\n if (metadata)\r\n serialized.metadata = metadata;\r\n\r\n return serialized;\r\n }\r\n}\r\n\r\n"]}
|
|
1
|
+
{"version":3,"file":"BentleyError.js","sourceRoot":"","sources":["../../src/BentleyError.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 { DbResult } from \"./BeSQLite\";\r\n\r\n/** Standard status code.\r\n * This status code should be rarely used.\r\n * Prefer to throw an exception to indicate an error, rather than returning a special status code.\r\n * If a status code is to be returned, prefer to return a more specific error status type such as IModelStatus or DbResult.\r\n * @public\r\n */\r\nexport enum BentleyStatus {\r\n SUCCESS = 0x0000,\r\n ERROR = 0x8000,\r\n}\r\n\r\n/** Status codes that are used in conjunction with [[BentleyError]].\r\n * Error status codes are divided into separate ranges for different kinds of errors. All known ranges at least should be defined here, to avoid collisions.\r\n * @public\r\n */\r\nexport enum IModelStatus {\r\n IMODEL_ERROR_BASE = 0x10000,\r\n Success = 0,\r\n AlreadyLoaded = IMODEL_ERROR_BASE + 1,\r\n AlreadyOpen = IMODEL_ERROR_BASE + 2,\r\n BadArg = IMODEL_ERROR_BASE + 3,\r\n BadElement = IMODEL_ERROR_BASE + 4,\r\n BadModel = IMODEL_ERROR_BASE + 5,\r\n BadRequest = IMODEL_ERROR_BASE + 6,\r\n BadSchema = IMODEL_ERROR_BASE + 7,\r\n CannotUndo = IMODEL_ERROR_BASE + 8,\r\n CodeNotReserved = IMODEL_ERROR_BASE + 9,\r\n DeletionProhibited = IMODEL_ERROR_BASE + 10,\r\n DuplicateCode = IMODEL_ERROR_BASE + 11,\r\n DuplicateName = IMODEL_ERROR_BASE + 12,\r\n ElementBlockedChange = IMODEL_ERROR_BASE + 13,\r\n FileAlreadyExists = IMODEL_ERROR_BASE + 14,\r\n FileNotFound = IMODEL_ERROR_BASE + 15,\r\n FileNotLoaded = IMODEL_ERROR_BASE + 16,\r\n ForeignKeyConstraint = IMODEL_ERROR_BASE + 17,\r\n IdExists = IMODEL_ERROR_BASE + 18,\r\n InDynamicTransaction = IMODEL_ERROR_BASE + 19,\r\n InvalidCategory = IMODEL_ERROR_BASE + 20,\r\n InvalidCode = IMODEL_ERROR_BASE + 21,\r\n InvalidCodeSpec = IMODEL_ERROR_BASE + 22,\r\n InvalidId = IMODEL_ERROR_BASE + 23,\r\n InvalidName = IMODEL_ERROR_BASE + 24,\r\n InvalidParent = IMODEL_ERROR_BASE + 25,\r\n InvalidProfileVersion = IMODEL_ERROR_BASE + 26,\r\n IsCreatingChangeSet = IMODEL_ERROR_BASE + 27,\r\n LockNotHeld = IMODEL_ERROR_BASE + 28,\r\n Mismatch2d3d = IMODEL_ERROR_BASE + 29,\r\n MismatchGcs = IMODEL_ERROR_BASE + 30,\r\n MissingDomain = IMODEL_ERROR_BASE + 31,\r\n MissingHandler = IMODEL_ERROR_BASE + 32,\r\n MissingId = IMODEL_ERROR_BASE + 33,\r\n NoGeometry = IMODEL_ERROR_BASE + 34,\r\n NoMultiTxnOperation = IMODEL_ERROR_BASE + 35,\r\n NotEnabled = IMODEL_ERROR_BASE + 37,\r\n NotFound = IMODEL_ERROR_BASE + 38,\r\n NotOpen = IMODEL_ERROR_BASE + 39,\r\n NotOpenForWrite = IMODEL_ERROR_BASE + 40,\r\n NotSameUnitBase = IMODEL_ERROR_BASE + 41,\r\n NothingToRedo = IMODEL_ERROR_BASE + 42,\r\n NothingToUndo = IMODEL_ERROR_BASE + 43,\r\n ParentBlockedChange = IMODEL_ERROR_BASE + 44,\r\n ReadError = IMODEL_ERROR_BASE + 45,\r\n ReadOnly = IMODEL_ERROR_BASE + 46,\r\n ReadOnlyDomain = IMODEL_ERROR_BASE + 47,\r\n RepositoryManagerError = IMODEL_ERROR_BASE + 48,\r\n SQLiteError = IMODEL_ERROR_BASE + 49,\r\n TransactionActive = IMODEL_ERROR_BASE + 50,\r\n UnitsMissing = IMODEL_ERROR_BASE + 51,\r\n UnknownFormat = IMODEL_ERROR_BASE + 52,\r\n UpgradeFailed = IMODEL_ERROR_BASE + 53,\r\n ValidationFailed = IMODEL_ERROR_BASE + 54,\r\n VersionTooNew = IMODEL_ERROR_BASE + 55,\r\n VersionTooOld = IMODEL_ERROR_BASE + 56,\r\n ViewNotFound = IMODEL_ERROR_BASE + 57,\r\n WriteError = IMODEL_ERROR_BASE + 58,\r\n WrongClass = IMODEL_ERROR_BASE + 59,\r\n WrongIModel = IMODEL_ERROR_BASE + 60,\r\n WrongDomain = IMODEL_ERROR_BASE + 61,\r\n WrongElement = IMODEL_ERROR_BASE + 62,\r\n WrongHandler = IMODEL_ERROR_BASE + 63,\r\n WrongModel = IMODEL_ERROR_BASE + 64,\r\n ConstraintNotUnique = IMODEL_ERROR_BASE + 65,\r\n NoGeoLocation = IMODEL_ERROR_BASE + 66,\r\n ServerTimeout = IMODEL_ERROR_BASE + 67,\r\n NoContent = IMODEL_ERROR_BASE + 68,\r\n NotRegistered = IMODEL_ERROR_BASE + 69,\r\n FunctionNotFound = IMODEL_ERROR_BASE + 70,\r\n NoActiveCommand = IMODEL_ERROR_BASE + 71,\r\n}\r\n\r\n/** Error status from various briefcase operations\r\n * @beta Should these be internal?\r\n */\r\nexport enum BriefcaseStatus {\r\n BRIEFCASE_STATUS_BASE = 0x20000,\r\n CannotAcquire = BRIEFCASE_STATUS_BASE,\r\n CannotDownload = BRIEFCASE_STATUS_BASE + 1,\r\n CannotUpload = BRIEFCASE_STATUS_BASE + 2,\r\n CannotCopy = BRIEFCASE_STATUS_BASE + 3,\r\n CannotDelete = BRIEFCASE_STATUS_BASE + 4,\r\n VersionNotFound = BRIEFCASE_STATUS_BASE + 5,\r\n CannotApplyChanges = BRIEFCASE_STATUS_BASE + 6,\r\n DownloadCancelled = BRIEFCASE_STATUS_BASE + 7,\r\n ContainsDeletedChangeSets = BRIEFCASE_STATUS_BASE + 8,\r\n}\r\n\r\n/** RpcInterface status codes\r\n * @beta Should these be internal?\r\n */\r\nexport enum RpcInterfaceStatus {\r\n Success = 0,\r\n RPC_INTERFACE_ERROR_BASE = 0x21000,\r\n /** The RpcInterface implemented by the server is incompatible with the interface requested by the client. */\r\n IncompatibleVersion = RPC_INTERFACE_ERROR_BASE,\r\n}\r\n\r\n/** Error status from various ChangeSet operations\r\n * @beta Should these be internal?\r\n */\r\nexport enum ChangeSetStatus { // Note: Values must be kept in sync with ChangeSetStatus in DgnPlatform\r\n Success = 0,\r\n CHANGESET_ERROR_BASE = 0x16000,\r\n /** Error applying a change set when reversing or reinstating it */\r\n ApplyError = CHANGESET_ERROR_BASE + 1,\r\n /** Change tracking has not been enabled. The ChangeSet API mandates this. */\r\n ChangeTrackingNotEnabled = CHANGESET_ERROR_BASE + 2,\r\n /** Contents of the change stream are corrupted and does not match the ChangeSet */\r\n CorruptedChangeStream = CHANGESET_ERROR_BASE + 3,\r\n /** File containing the changes to the change set is not found */\r\n FileNotFound = CHANGESET_ERROR_BASE + 4,\r\n /** Error writing the contents of the change set to the backing change stream file */\r\n FileWriteError = CHANGESET_ERROR_BASE + 5,\r\n /** Cannot perform the operation since the Db has local changes */\r\n HasLocalChanges = CHANGESET_ERROR_BASE + 6,\r\n /** Cannot perform the operation since current transaction has uncommitted changes */\r\n HasUncommittedChanges = CHANGESET_ERROR_BASE + 7,\r\n /** Invalid ChangeSet Id */\r\n InvalidId = CHANGESET_ERROR_BASE + 8,\r\n /** Invalid version of the change set */\r\n InvalidVersion = CHANGESET_ERROR_BASE + 9,\r\n /** Cannot perform the operation since system is in the middle of a dynamic transaction */\r\n InDynamicTransaction = CHANGESET_ERROR_BASE + 10,\r\n /** Cannot perform operation since system is in the middle of a creating a change set */\r\n IsCreatingChangeSet = CHANGESET_ERROR_BASE + 11,\r\n /** Cannot perform operation since the system is not creating a change set */\r\n IsNotCreatingChangeSet = CHANGESET_ERROR_BASE + 12,\r\n /** Error propagating the changes after the merge */\r\n MergePropagationError = CHANGESET_ERROR_BASE + 13,\r\n /** No change sets to merge */\r\n NothingToMerge = CHANGESET_ERROR_BASE + 14,\r\n /** No transactions are available to create a change set */\r\n NoTransactions = CHANGESET_ERROR_BASE + 15,\r\n /** Parent change set of the Db does not match the parent id of the change set */\r\n ParentMismatch = CHANGESET_ERROR_BASE + 16,\r\n /** Error performing a SQLite operation on the Db */\r\n SQLiteError = CHANGESET_ERROR_BASE + 17,\r\n /** ChangeSet originated in a different Db */\r\n WrongDgnDb = CHANGESET_ERROR_BASE + 18,\r\n /** Could not open the DgnDb to merge change set */\r\n CouldNotOpenDgnDb = CHANGESET_ERROR_BASE + 19,\r\n /** Cannot merge changes in in an open DgnDb. Close the DgnDb, and process the operation when it is opened. */\r\n MergeSchemaChangesOnOpen = CHANGESET_ERROR_BASE + 20,\r\n /** Cannot reverse or reinstate schema changes. */\r\n ReverseOrReinstateSchemaChanges = CHANGESET_ERROR_BASE + 21,\r\n /** Cannot process changes schema changes in an open DgnDb. Close the DgnDb, and process the operation when it is opened. */\r\n ProcessSchemaChangesOnOpen = CHANGESET_ERROR_BASE + 22,\r\n /** Cannot merge changes into a Readonly DgnDb. */\r\n CannotMergeIntoReadonly = CHANGESET_ERROR_BASE + 23,\r\n /** Cannot merge changes into a Master DgnDb. */\r\n CannotMergeIntoMaster = CHANGESET_ERROR_BASE + 24,\r\n /** Cannot merge changes into a DgnDb that has reversed change sets. */\r\n CannotMergeIntoReversed = CHANGESET_ERROR_BASE + 25,\r\n}\r\n\r\n/** Return codes for methods which perform repository management operations\r\n * @beta Should these be internal?\r\n */\r\nexport enum RepositoryStatus {\r\n Success = 0,\r\n /** The repository server did not respond to a request */\r\n ServerUnavailable = 0x15001,\r\n /** A requested lock was already held by another briefcase */\r\n LockAlreadyHeld = 0x15002,\r\n /** Failed to sync briefcase manager with server */\r\n SyncError = 0x15003,\r\n /** Response from server not understood */\r\n InvalidResponse = 0x15004,\r\n /** An operation requires local changes to be committed or abandoned */\r\n PendingTransactions = 0x15005,\r\n /** A lock cannot be relinquished because the associated object has been modified */\r\n LockUsed = 0x15006,\r\n /** An operation required creation of a ChangeSet, which failed */\r\n CannotCreateChangeSet = 0x15007,\r\n /** Request to server not understood */\r\n InvalidRequest = 0x15008,\r\n /** A change set committed to the server must be integrated into the briefcase before the operation can be completed */\r\n ChangeSetRequired = 0x15009,\r\n /** A requested DgnCode is reserved by another briefcase or in use */\r\n CodeUnavailable = 0x1500A,\r\n /** A DgnCode cannot be released because it has not been reserved by the requesting briefcase */\r\n CodeNotReserved = 0x1500B,\r\n /** A DgnCode cannot be relinquished because it has been used locally */\r\n CodeUsed = 0x1500C,\r\n /** A required lock is not held by this briefcase */\r\n LockNotHeld = 0x1500D,\r\n /** Repository is currently locked, no changes allowed */\r\n RepositoryIsLocked = 0x1500E,\r\n /** Channel write constraint violation, such as an attempt to write outside the designated channel. */\r\n ChannelConstraintViolation = 0x1500F,\r\n}\r\n\r\n/** Status from returned HTTP status code\r\n * @beta Should these be internal?\r\n */\r\nexport enum HttpStatus {\r\n /** 2xx Success */\r\n Success = 0,\r\n /** 1xx Informational responses */\r\n Info = 0x17001,\r\n /** 3xx Redirection */\r\n Redirection = 0x17002,\r\n /** 4xx Client errors */\r\n ClientError = 0x17003,\r\n /** 5xx Server errors */\r\n ServerError = 0x17004,\r\n}\r\n\r\n/** iModelHub Services Errors\r\n * @beta Right package?\r\n */\r\nexport enum IModelHubStatus {\r\n Success = 0,\r\n IMODELHUBERROR_BASE = 0x19000,\r\n IMODELHUBERROR_REQUESTERRORBASE = 0x19100,\r\n Unknown = IMODELHUBERROR_BASE + 1,\r\n MissingRequiredProperties = IMODELHUBERROR_BASE + 2,\r\n InvalidPropertiesValues = IMODELHUBERROR_BASE + 3,\r\n UserDoesNotHavePermission = IMODELHUBERROR_BASE + 4,\r\n UserDoesNotHaveAccess = IMODELHUBERROR_BASE + 5,\r\n InvalidBriefcase = IMODELHUBERROR_BASE + 6,\r\n BriefcaseDoesNotExist = IMODELHUBERROR_BASE + 7,\r\n BriefcaseDoesNotBelongToUser = IMODELHUBERROR_BASE + 8,\r\n AnotherUserPushing = IMODELHUBERROR_BASE + 9,\r\n ChangeSetAlreadyExists = IMODELHUBERROR_BASE + 10,\r\n ChangeSetDoesNotExist = IMODELHUBERROR_BASE + 11,\r\n FileIsNotUploaded = IMODELHUBERROR_BASE + 12,\r\n iModelIsNotInitialized = IMODELHUBERROR_BASE + 13,\r\n ChangeSetPointsToBadSeed = IMODELHUBERROR_BASE + 14,\r\n OperationFailed = IMODELHUBERROR_BASE + 15,\r\n PullIsRequired = IMODELHUBERROR_BASE + 16,\r\n MaximumNumberOfBriefcasesPerUser = IMODELHUBERROR_BASE + 17,\r\n MaximumNumberOfBriefcasesPerUserPerMinute = IMODELHUBERROR_BASE + 18,\r\n DatabaseTemporarilyLocked = IMODELHUBERROR_BASE + 19,\r\n iModelIsLocked = IMODELHUBERROR_BASE + 20,\r\n CodesExist = IMODELHUBERROR_BASE + 21,\r\n LocksExist = IMODELHUBERROR_BASE + 22,\r\n iModelAlreadyExists = IMODELHUBERROR_BASE + 23,\r\n iModelDoesNotExist = IMODELHUBERROR_BASE + 24,\r\n FileDoesNotExist = IMODELHUBERROR_BASE + 25,\r\n FileAlreadyExists = IMODELHUBERROR_BASE + 26,\r\n LockDoesNotExist = IMODELHUBERROR_BASE + 27,\r\n LockOwnedByAnotherBriefcase = IMODELHUBERROR_BASE + 28,\r\n CodeStateInvalid = IMODELHUBERROR_BASE + 29,\r\n CodeReservedByAnotherBriefcase = IMODELHUBERROR_BASE + 30,\r\n CodeDoesNotExist = IMODELHUBERROR_BASE + 31,\r\n EventTypeDoesNotExist = IMODELHUBERROR_BASE + 32,\r\n EventSubscriptionDoesNotExist = IMODELHUBERROR_BASE + 33,\r\n EventSubscriptionAlreadyExists = IMODELHUBERROR_BASE + 34,\r\n ITwinIdIsNotSpecified = IMODELHUBERROR_BASE + 35,\r\n FailedToGetITwinPermissions = IMODELHUBERROR_BASE + 36,\r\n FailedToGetITwinMembers = IMODELHUBERROR_BASE + 37,\r\n ChangeSetAlreadyHasVersion = IMODELHUBERROR_BASE + 38,\r\n VersionAlreadyExists = IMODELHUBERROR_BASE + 39,\r\n JobSchedulingFailed = IMODELHUBERROR_BASE + 40,\r\n ConflictsAggregate = IMODELHUBERROR_BASE + 41,\r\n FailedToGetITwinById = IMODELHUBERROR_BASE + 42,\r\n\r\n DatabaseOperationFailed = IMODELHUBERROR_BASE + 43,\r\n SeedFileInitializationFailed = IMODELHUBERROR_BASE + 44,\r\n\r\n FailedToGetAssetPermissions = IMODELHUBERROR_BASE + 45,\r\n FailedToGetAssetMembers = IMODELHUBERROR_BASE + 46,\r\n ITwinDoesNotExist = IMODELHUBERROR_BASE + 47,\r\n\r\n LockChunkDoesNotExist = IMODELHUBERROR_BASE + 49,\r\n\r\n CheckpointAlreadyExists = IMODELHUBERROR_BASE + 50,\r\n CheckpointDoesNotExist = IMODELHUBERROR_BASE + 51,\r\n\r\n // Errors that are returned for incorrect iModelHub request.\r\n UndefinedArgumentError = IMODELHUBERROR_REQUESTERRORBASE + 1,\r\n InvalidArgumentError = IMODELHUBERROR_REQUESTERRORBASE + 2,\r\n MissingDownloadUrlError = IMODELHUBERROR_REQUESTERRORBASE + 3,\r\n NotSupportedInBrowser = IMODELHUBERROR_REQUESTERRORBASE + 4,\r\n FileHandlerNotSet = IMODELHUBERROR_REQUESTERRORBASE + 5,\r\n FileNotFound = IMODELHUBERROR_REQUESTERRORBASE + 6,\r\n InitializationTimeout = IMODELHUBERROR_REQUESTERRORBASE + 7,\r\n}\r\n\r\n/** Authentication Errors\r\n * @beta Internal? Right package?\r\n */\r\nexport enum AuthStatus {\r\n Success = 0,\r\n AUTHSTATUS_BASE = 0x22000,\r\n Error = AUTHSTATUS_BASE,\r\n}\r\n\r\n/** GeoServiceStatus errors\r\n * @public\r\n */\r\nexport enum GeoServiceStatus {\r\n Success = 0,\r\n GEOSERVICESTATUS_BASE = 0x24000,\r\n // Error mapped from 'IModelStatus'\r\n NoGeoLocation = IModelStatus.NoGeoLocation,\r\n // Following errors are mapped from 'GeoCoordStatus'\r\n OutOfUsefulRange = GEOSERVICESTATUS_BASE + 1,\r\n OutOfMathematicalDomain = GEOSERVICESTATUS_BASE + 2,\r\n NoDatumConverter = GEOSERVICESTATUS_BASE + 3,\r\n VerticalDatumConvertError = GEOSERVICESTATUS_BASE + 4,\r\n CSMapError = GEOSERVICESTATUS_BASE + 5,\r\n Pending = GEOSERVICESTATUS_BASE + 6,\r\n}\r\n\r\n/** When you want to associate an explanatory message with an error status value.\r\n * @beta Internal?\r\n */\r\nexport interface StatusCodeWithMessage<ErrorCodeType> {\r\n status: ErrorCodeType;\r\n message: string;\r\n}\r\n\r\n/** A function that returns a metadata object for a [[BentleyError]].\r\n * This is generally used for logging. However not every exception is logged, so use this if the metadata for an exception is expensive to create.\r\n * @public\r\n */\r\nexport type GetMetaDataFunction = () => object | undefined;\r\n\r\n/** Optional metadata attached to a [[BentleyError]]. May either be an object or a function that returns an object.\r\n * If this exception is logged and metadata is present, the metaData object is attached to the log entry via `JSON.stringify`\r\n * @public\r\n */\r\nexport type LoggingMetaData = GetMetaDataFunction | object | undefined;\r\n\r\nfunction isObject(obj: unknown): obj is { [key: string]: unknown } {\r\n return typeof obj === \"object\" && obj !== null;\r\n}\r\n\r\ninterface ErrorProps {\r\n message: string;\r\n stack?: string;\r\n metadata?: object;\r\n}\r\n\r\n/** Base exception class for iTwin.js exceptions.\r\n * @public\r\n */\r\nexport class BentleyError extends Error {\r\n private readonly _metaData: LoggingMetaData;\r\n\r\n /**\r\n * @param errorNumber The a number that identifies of the problem.\r\n * @param message message that describes the problem (should not be localized).\r\n * @param metaData metaData about the exception.\r\n */\r\n public constructor(public errorNumber: number, message?: string, metaData?: LoggingMetaData) {\r\n super(message);\r\n this.errorNumber = errorNumber;\r\n this._metaData = metaData;\r\n this.name = this._initName();\r\n }\r\n\r\n /** Returns true if this BentleyError includes (optional) metadata. */\r\n public get hasMetaData(): boolean { return undefined !== this._metaData; }\r\n\r\n /** get the meta data associated with this BentleyError, if any. */\r\n public getMetaData(): object | undefined {\r\n return BentleyError.getMetaData(this._metaData);\r\n }\r\n\r\n /** get the metadata object associated with an ExceptionMetaData, if any. */\r\n public static getMetaData(metaData: LoggingMetaData): object | undefined {\r\n return (typeof metaData === \"function\") ? metaData() : metaData;\r\n }\r\n\r\n /** This function returns the name of each error status. Override this method to handle more error status codes. */\r\n protected _initName(): string {\r\n switch (this.errorNumber) {\r\n case IModelStatus.AlreadyLoaded: return \"Already Loaded\";\r\n case IModelStatus.AlreadyOpen: return \"Already Open\";\r\n case IModelStatus.BadArg: return \"Bad Arg\";\r\n case IModelStatus.BadElement: return \"Bad Element\";\r\n case IModelStatus.BadModel: return \"Bad Model\";\r\n case IModelStatus.BadRequest: return \"Bad Request\";\r\n case IModelStatus.BadSchema: return \"Bad Schema\";\r\n case IModelStatus.CannotUndo: return \"Can not Undo\";\r\n case IModelStatus.CodeNotReserved: return \"Code Not Reserved\";\r\n case IModelStatus.DeletionProhibited: return \"Deletion Prohibited\";\r\n case IModelStatus.DuplicateCode: return \"Duplicate Code\";\r\n case IModelStatus.DuplicateName: return \"Duplicate Name\";\r\n case IModelStatus.ElementBlockedChange: return \"Element Blocked Change\";\r\n case IModelStatus.FileAlreadyExists: return \"File Already Exists\";\r\n case IModelStatus.FileNotFound: return \"File Not Found\";\r\n case IModelStatus.FileNotLoaded: return \"File Not Loaded\";\r\n case IModelStatus.ForeignKeyConstraint: return \"ForeignKey Constraint\";\r\n case IModelStatus.IdExists: return \"Id Exists\";\r\n case IModelStatus.InDynamicTransaction: return \"InDynamicTransaction\";\r\n case IModelStatus.InvalidCategory: return \"Invalid Category\";\r\n case IModelStatus.InvalidCode: return \"Invalid Code\";\r\n case IModelStatus.InvalidCodeSpec: return \"Invalid CodeSpec\";\r\n case IModelStatus.InvalidId: return \"Invalid Id\";\r\n case IModelStatus.InvalidName: return \"Invalid Name\";\r\n case IModelStatus.InvalidParent: return \"Invalid Parent\";\r\n case IModelStatus.InvalidProfileVersion: return \"Invalid Profile Version\";\r\n case IModelStatus.IsCreatingChangeSet: return \"IsCreatingChangeSet\";\r\n case IModelStatus.LockNotHeld: return \"Lock Not Held\";\r\n case IModelStatus.Mismatch2d3d: return \"Mismatch 2d3d\";\r\n case IModelStatus.MismatchGcs: return \"Mismatch Gcs\";\r\n case IModelStatus.MissingDomain: return \"Missing Domain\";\r\n case IModelStatus.MissingHandler: return \"Missing Handler\";\r\n case IModelStatus.MissingId: return \"Missing Id\";\r\n case IModelStatus.NoGeometry: return \"No Geometry\";\r\n case IModelStatus.NoMultiTxnOperation: return \"NoMultiTxnOperation\";\r\n case IModelStatus.NotEnabled: return \"Not Enabled\";\r\n case IModelStatus.NotFound: return \"Not Found\";\r\n case IModelStatus.NotOpen: return \"Not Open\";\r\n case IModelStatus.NotOpenForWrite: return \"Not Open For Write\";\r\n case IModelStatus.NotSameUnitBase: return \"Not Same Unit Base\";\r\n case IModelStatus.NothingToRedo: return \"Nothing To Redo\";\r\n case IModelStatus.NothingToUndo: return \"Nothing To Undo\";\r\n case IModelStatus.ParentBlockedChange: return \"Parent Blocked Change\";\r\n case IModelStatus.ReadError: return \"Read Error\";\r\n case IModelStatus.ReadOnly: return \"ReadOnly\";\r\n case IModelStatus.ReadOnlyDomain: return \"ReadOnlyDomain\";\r\n case IModelStatus.RepositoryManagerError: return \"RepositoryManagerError\";\r\n case IModelStatus.SQLiteError: return \"SQLiteError\";\r\n case IModelStatus.TransactionActive: return \"Transaction Active\";\r\n case IModelStatus.UnitsMissing: return \"Units Missing\";\r\n case IModelStatus.UnknownFormat: return \"Unknown Format\";\r\n case IModelStatus.UpgradeFailed: return \"Upgrade Failed\";\r\n case IModelStatus.ValidationFailed: return \"Validation Failed\";\r\n case IModelStatus.VersionTooNew: return \"Version Too New\";\r\n case IModelStatus.VersionTooOld: return \"Version Too Old\";\r\n case IModelStatus.ViewNotFound: return \"View Not Found\";\r\n case IModelStatus.WriteError: return \"Write Error\";\r\n case IModelStatus.WrongClass: return \"Wrong Class\";\r\n case IModelStatus.WrongIModel: return \"Wrong IModel\";\r\n case IModelStatus.WrongDomain: return \"Wrong Domain\";\r\n case IModelStatus.WrongElement: return \"Wrong Element\";\r\n case IModelStatus.WrongHandler: return \"Wrong Handler\";\r\n case IModelStatus.WrongModel: return \"Wrong Model\";\r\n case DbResult.BE_SQLITE_ERROR: return \"BE_SQLITE_ERROR\";\r\n case DbResult.BE_SQLITE_INTERNAL: return \"BE_SQLITE_INTERNAL\";\r\n case DbResult.BE_SQLITE_PERM: return \"BE_SQLITE_PERM\";\r\n case DbResult.BE_SQLITE_ABORT: return \"BE_SQLITE_ABORT\";\r\n case DbResult.BE_SQLITE_BUSY: return \"Db is busy\";\r\n case DbResult.BE_SQLITE_LOCKED: return \"Db is Locked\";\r\n case DbResult.BE_SQLITE_NOMEM: return \"BE_SQLITE_NOMEM\";\r\n case DbResult.BE_SQLITE_READONLY: return \"Readonly\";\r\n case DbResult.BE_SQLITE_INTERRUPT: return \"BE_SQLITE_INTERRUPT\";\r\n case DbResult.BE_SQLITE_IOERR: return \"BE_SQLITE_IOERR\";\r\n case DbResult.BE_SQLITE_CORRUPT: return \"BE_SQLITE_CORRUPT\";\r\n case DbResult.BE_SQLITE_NOTFOUND: return \"Not Found\";\r\n case DbResult.BE_SQLITE_FULL: return \"BE_SQLITE_FULL\";\r\n case DbResult.BE_SQLITE_CANTOPEN: return \"Can't open\";\r\n case DbResult.BE_SQLITE_PROTOCOL: return \"BE_SQLITE_PROTOCOL\";\r\n case DbResult.BE_SQLITE_EMPTY: return \"BE_SQLITE_EMPTY\";\r\n case DbResult.BE_SQLITE_SCHEMA: return \"BE_SQLITE_SCHEMA\";\r\n case DbResult.BE_SQLITE_TOOBIG: return \"BE_SQLITE_TOOBIG\";\r\n case DbResult.BE_SQLITE_MISMATCH: return \"BE_SQLITE_MISMATCH\";\r\n case DbResult.BE_SQLITE_MISUSE: return \"BE_SQLITE_MISUSE\";\r\n case DbResult.BE_SQLITE_NOLFS: return \"BE_SQLITE_NOLFS\";\r\n case DbResult.BE_SQLITE_AUTH: return \"BE_SQLITE_AUTH\";\r\n case DbResult.BE_SQLITE_FORMAT: return \"BE_SQLITE_FORMAT\";\r\n case DbResult.BE_SQLITE_RANGE: return \"BE_SQLITE_RANGE\";\r\n case DbResult.BE_SQLITE_NOTADB: return \"Not a Database\";\r\n case DbResult.BE_SQLITE_IOERR_READ: return \"BE_SQLITE_IOERR_READ\";\r\n case DbResult.BE_SQLITE_IOERR_SHORT_READ: return \"BE_SQLITE_IOERR_SHORT_READ\";\r\n case DbResult.BE_SQLITE_IOERR_WRITE: return \"BE_SQLITE_IOERR_WRITE\";\r\n case DbResult.BE_SQLITE_IOERR_FSYNC: return \"BE_SQLITE_IOERR_FSYNC\";\r\n case DbResult.BE_SQLITE_IOERR_DIR_FSYNC: return \"BE_SQLITE_IOERR_DIR_FSYNC\";\r\n case DbResult.BE_SQLITE_IOERR_TRUNCATE: return \"BE_SQLITE_IOERR_TRUNCATE\";\r\n case DbResult.BE_SQLITE_IOERR_FSTAT: return \"BE_SQLITE_IOERR_FSTAT\";\r\n case DbResult.BE_SQLITE_IOERR_UNLOCK: return \"BE_SQLITE_IOERR_UNLOCK\";\r\n case DbResult.BE_SQLITE_IOERR_RDLOCK: return \"BE_SQLITE_IOERR_RDLOCK\";\r\n case DbResult.BE_SQLITE_IOERR_DELETE: return \"BE_SQLITE_IOERR_DELETE\";\r\n case DbResult.BE_SQLITE_IOERR_BLOCKED: return \"BE_SQLITE_IOERR_BLOCKED\";\r\n case DbResult.BE_SQLITE_IOERR_NOMEM: return \"BE_SQLITE_IOERR_NOMEM\";\r\n case DbResult.BE_SQLITE_IOERR_ACCESS: return \"BE_SQLITE_IOERR_ACCESS\";\r\n case DbResult.BE_SQLITE_IOERR_CHECKRESERVEDLOCK: return \"BE_SQLITE_IOERR_CHECKRESERVEDLOCK\";\r\n case DbResult.BE_SQLITE_IOERR_LOCK: return \"BE_SQLITE_IOERR_LOCK\";\r\n case DbResult.BE_SQLITE_IOERR_CLOSE: return \"BE_SQLITE_IOERR_CLOSE\";\r\n case DbResult.BE_SQLITE_IOERR_DIR_CLOSE: return \"BE_SQLITE_IOERR_DIR_CLOSE\";\r\n case DbResult.BE_SQLITE_IOERR_SHMOPEN: return \"BE_SQLITE_IOERR_SHMOPEN\";\r\n case DbResult.BE_SQLITE_IOERR_SHMSIZE: return \"BE_SQLITE_IOERR_SHMSIZE\";\r\n case DbResult.BE_SQLITE_IOERR_SHMLOCK: return \"BE_SQLITE_IOERR_SHMLOCK\";\r\n case DbResult.BE_SQLITE_IOERR_SHMMAP: return \"BE_SQLITE_IOERR_SHMMAP\";\r\n case DbResult.BE_SQLITE_IOERR_SEEK: return \"BE_SQLITE_IOERR_SEEK\";\r\n case DbResult.BE_SQLITE_IOERR_DELETE_NOENT: return \"BE_SQLITE_IOERR_DELETE_NOENT\";\r\n case DbResult.BE_SQLITE_ERROR_FileExists: return \"File Exists\";\r\n case DbResult.BE_SQLITE_ERROR_AlreadyOpen: return \"Already Open\";\r\n case DbResult.BE_SQLITE_ERROR_NoPropertyTable: return \"No Property Table\";\r\n case DbResult.BE_SQLITE_ERROR_FileNotFound: return \"File Not Found\";\r\n case DbResult.BE_SQLITE_ERROR_NoTxnActive: return \"No Txn Active\";\r\n case DbResult.BE_SQLITE_ERROR_BadDbProfile: return \"Bad Db Profile\";\r\n case DbResult.BE_SQLITE_ERROR_InvalidProfileVersion: return \"Invalid Profile Version\";\r\n case DbResult.BE_SQLITE_ERROR_ProfileUpgradeFailed: return \"Profile Upgrade Failed\";\r\n case DbResult.BE_SQLITE_ERROR_ProfileTooOldForReadWrite: return \"Profile Too Old For ReadWrite\";\r\n case DbResult.BE_SQLITE_ERROR_ProfileTooOld: return \"Profile Too Old\";\r\n case DbResult.BE_SQLITE_ERROR_ProfileTooNewForReadWrite: return \"Profile Too New For ReadWrite\";\r\n case DbResult.BE_SQLITE_ERROR_ProfileTooNew: return \"Profile Too New\";\r\n case DbResult.BE_SQLITE_ERROR_ChangeTrackError: return \"ChangeTrack Error\";\r\n case DbResult.BE_SQLITE_ERROR_InvalidChangeSetVersion: return \"Invalid ChangeSet Version\";\r\n case DbResult.BE_SQLITE_ERROR_SchemaUpgradeRequired: return \"Schema Upgrade Required\";\r\n case DbResult.BE_SQLITE_ERROR_SchemaTooNew: return \"Schema Too New\";\r\n case DbResult.BE_SQLITE_ERROR_SchemaTooOld: return \"Schema Too Old\";\r\n case DbResult.BE_SQLITE_ERROR_SchemaLockFailed: return \"Schema Lock Failed\";\r\n case DbResult.BE_SQLITE_ERROR_SchemaUpgradeFailed: return \"Schema Upgrade Failed\";\r\n case DbResult.BE_SQLITE_ERROR_SchemaImportFailed: return \"Schema Import Failed\";\r\n case DbResult.BE_SQLITE_ERROR_CouldNotAcquireLocksOrCodes: return \"Could Not Acquire Locks Or Codes\";\r\n case DbResult.BE_SQLITE_ERROR_SchemaUpgradeRecommended: return \"Recommended that the schemas found in the database be upgraded\";\r\n case DbResult.BE_SQLITE_LOCKED_SHAREDCACHE: return \"BE_SQLITE_LOCKED_SHAREDCACHE\";\r\n case DbResult.BE_SQLITE_BUSY_RECOVERY: return \"BE_SQLITE_BUSY_RECOVERY\";\r\n case DbResult.BE_SQLITE_CANTOPEN_NOTEMPDIR: return \"SQLite No Temp Dir\";\r\n case DbResult.BE_SQLITE_CANTOPEN_ISDIR: return \"BE_SQLITE_CANTOPEN_ISDIR\";\r\n case DbResult.BE_SQLITE_CANTOPEN_FULLPATH: return \"BE_SQLITE_CANTOPEN_FULLPATH\";\r\n case DbResult.BE_SQLITE_CORRUPT_VTAB: return \"BE_SQLITE_CORRUPT_VTAB\";\r\n case DbResult.BE_SQLITE_READONLY_RECOVERY: return \"BE_SQLITE_READONLY_RECOVERY\";\r\n case DbResult.BE_SQLITE_READONLY_CANTLOCK: return \"BE_SQLITE_READONLY_CANTLOCK\";\r\n case DbResult.BE_SQLITE_READONLY_ROLLBACK: return \"BE_SQLITE_READONLY_ROLLBACK\";\r\n case DbResult.BE_SQLITE_ABORT_ROLLBACK: return \"BE_SQLITE_ABORT_ROLLBACK\";\r\n case DbResult.BE_SQLITE_CONSTRAINT_CHECK: return \"BE_SQLITE_CONSTRAINT_CHECK\";\r\n case DbResult.BE_SQLITE_CONSTRAINT_COMMITHOOK: return \"CommitHook Constraint Error\";\r\n case DbResult.BE_SQLITE_CONSTRAINT_FOREIGNKEY: return \"Foreign Key Constraint Error\";\r\n case DbResult.BE_SQLITE_CONSTRAINT_FUNCTION: return \"Function Constraint Error\";\r\n case DbResult.BE_SQLITE_CONSTRAINT_NOTNULL: return \"NotNull Constraint Error\";\r\n case DbResult.BE_SQLITE_CONSTRAINT_PRIMARYKEY: return \"Primary Key Constraint Error\";\r\n case DbResult.BE_SQLITE_CONSTRAINT_TRIGGER: return \"Trigger Constraint Error\";\r\n case DbResult.BE_SQLITE_CONSTRAINT_UNIQUE: return \"Unique Constraint Error\";\r\n case DbResult.BE_SQLITE_CONSTRAINT_VTAB: return \"VTable Constraint Error\";\r\n case BentleyStatus.ERROR: return \"Error\";\r\n case BriefcaseStatus.CannotAcquire: return \"CannotAcquire\";\r\n case BriefcaseStatus.CannotDownload: return \"CannotDownload\";\r\n case BriefcaseStatus.CannotCopy: return \"CannotCopy\";\r\n case BriefcaseStatus.CannotDelete: return \"CannotDelete\";\r\n case BriefcaseStatus.VersionNotFound: return \"VersionNotFound\";\r\n case BriefcaseStatus.DownloadCancelled: return \"DownloadCancelled\";\r\n case BriefcaseStatus.ContainsDeletedChangeSets: return \"ContainsDeletedChangeSets\";\r\n case RpcInterfaceStatus.IncompatibleVersion: return \"RpcInterfaceStatus.IncompatibleVersion\";\r\n case ChangeSetStatus.ApplyError: return \"Error applying a change set\";\r\n case ChangeSetStatus.ChangeTrackingNotEnabled: return \"Change tracking has not been enabled. The ChangeSet API mandates this\";\r\n case ChangeSetStatus.CorruptedChangeStream: return \"Contents of the change stream are corrupted and does not match the ChangeSet\";\r\n case ChangeSetStatus.FileNotFound: return \"File containing the changes was not found\";\r\n case ChangeSetStatus.FileWriteError: return \"Error writing the contents of the change set to the backing change stream file\";\r\n case ChangeSetStatus.HasLocalChanges: return \"Cannot perform the operation since the Db has local changes\";\r\n case ChangeSetStatus.HasUncommittedChanges: return \"Cannot perform the operation since current transaction has uncommitted changes\";\r\n case ChangeSetStatus.InvalidId: return \"Invalid ChangeSet Id\";\r\n case ChangeSetStatus.InvalidVersion: return \"Invalid version of the change set\";\r\n case ChangeSetStatus.InDynamicTransaction: return \"Cannot perform the operation since system is in the middle of a dynamic transaction\";\r\n case ChangeSetStatus.IsCreatingChangeSet: return \"Cannot perform operation since system is in the middle of a creating a change set\";\r\n case ChangeSetStatus.IsNotCreatingChangeSet: return \"Cannot perform operation since the system is not creating a change set\";\r\n case ChangeSetStatus.MergePropagationError: return \"Error propagating the changes after the merge\";\r\n case ChangeSetStatus.NothingToMerge: return \"No change sets to merge\";\r\n case ChangeSetStatus.NoTransactions: return \"No transactions are available to create a change set\";\r\n case ChangeSetStatus.ParentMismatch: return \"Parent change set of the Db does not match the parent id of the change set\";\r\n case ChangeSetStatus.SQLiteError: return \"Error performing a SQLite operation on the Db\";\r\n case ChangeSetStatus.WrongDgnDb: return \"ChangeSet originated in a different Db\";\r\n case ChangeSetStatus.CouldNotOpenDgnDb: return \"Could not open the DgnDb to merge change set\";\r\n case ChangeSetStatus.MergeSchemaChangesOnOpen: return \"Cannot merge changes in in an open DgnDb. Close the DgnDb, and process the operation when it is opened\";\r\n case ChangeSetStatus.ReverseOrReinstateSchemaChanges: return \"Cannot reverse or reinstate schema changes.\";\r\n case ChangeSetStatus.ProcessSchemaChangesOnOpen: return \"Cannot process changes schema changes in an open DgnDb. Close the DgnDb, and process the operation when it is opened\";\r\n case ChangeSetStatus.CannotMergeIntoReadonly: return \"Cannot merge changes into a Readonly DgnDb\";\r\n case ChangeSetStatus.CannotMergeIntoMaster: return \"Cannot merge changes into a Master DgnDb\";\r\n case ChangeSetStatus.CannotMergeIntoReversed: return \"Cannot merge changes into a DgnDb that has reversed change sets\";\r\n case RepositoryStatus.ServerUnavailable: return \"ServerUnavailable\";\r\n case RepositoryStatus.LockAlreadyHeld: return \"LockAlreadyHeld\";\r\n case RepositoryStatus.SyncError: return \"SyncError\";\r\n case RepositoryStatus.InvalidResponse: return \"InvalidResponse\";\r\n case RepositoryStatus.PendingTransactions: return \"PendingTransactions\";\r\n case RepositoryStatus.LockUsed: return \"LockUsed\";\r\n case RepositoryStatus.CannotCreateChangeSet: return \"CannotCreateChangeSet\";\r\n case RepositoryStatus.InvalidRequest: return \"InvalidRequest\";\r\n case RepositoryStatus.ChangeSetRequired: return \"ChangeSetRequired\";\r\n case RepositoryStatus.CodeUnavailable: return \"CodeUnavailable\";\r\n case RepositoryStatus.CodeNotReserved: return \"CodeNotReserved\";\r\n case RepositoryStatus.CodeUsed: return \"CodeUsed\";\r\n case RepositoryStatus.LockNotHeld: return \"LockNotHeld\";\r\n case RepositoryStatus.RepositoryIsLocked: return \"RepositoryIsLocked\";\r\n case RepositoryStatus.ChannelConstraintViolation: return \"ChannelConstraintViolation\";\r\n case HttpStatus.Info: return \"HTTP Info\";\r\n case HttpStatus.Redirection: return \"HTTP Redirection\";\r\n case HttpStatus.ClientError: return \"HTTP Client error\";\r\n case HttpStatus.ServerError: return \"HTTP Server error\";\r\n case IModelHubStatus.Unknown: return \"Unknown error\";\r\n case IModelHubStatus.MissingRequiredProperties: return \"Missing required properties\";\r\n case IModelHubStatus.InvalidPropertiesValues: return \"Invalid properties values\";\r\n case IModelHubStatus.UserDoesNotHavePermission: return \"User does not have permission\";\r\n case IModelHubStatus.UserDoesNotHaveAccess: return \"User does not have access\";\r\n case IModelHubStatus.InvalidBriefcase: return \"Invalid briefcase\";\r\n case IModelHubStatus.BriefcaseDoesNotExist: return \"Briefcase does not exist\";\r\n case IModelHubStatus.BriefcaseDoesNotBelongToUser: return \"Briefcase does not belong to user\";\r\n case IModelHubStatus.AnotherUserPushing: return \"Another user pushing\";\r\n case IModelHubStatus.ChangeSetAlreadyExists: return \"ChangeSet already exists\";\r\n case IModelHubStatus.ChangeSetDoesNotExist: return \"ChangeSet does not exist\";\r\n case IModelHubStatus.FileIsNotUploaded: return \"File is not uploaded\";\r\n case IModelHubStatus.iModelIsNotInitialized: return \"iModel is not initialized\";\r\n case IModelHubStatus.ChangeSetPointsToBadSeed: return \"ChangeSet points to a bad seed file\";\r\n case IModelHubStatus.OperationFailed: return \"iModelHub operation has failed\";\r\n case IModelHubStatus.PullIsRequired: return \"Pull is required\";\r\n case IModelHubStatus.MaximumNumberOfBriefcasesPerUser: return \"Limit of briefcases per user was reached\";\r\n case IModelHubStatus.MaximumNumberOfBriefcasesPerUserPerMinute: return \"Limit of briefcases per user per minute was reached\";\r\n case IModelHubStatus.DatabaseTemporarilyLocked: return \"Database is temporarily locked\";\r\n case IModelHubStatus.iModelIsLocked: return \"iModel is locked\";\r\n case IModelHubStatus.CodesExist: return \"Code already exists\";\r\n case IModelHubStatus.LocksExist: return \"Lock already exists\";\r\n case IModelHubStatus.iModelAlreadyExists: return \"iModel already exists\";\r\n case IModelHubStatus.iModelDoesNotExist: return \"iModel does not exist\";\r\n case IModelHubStatus.LockDoesNotExist: return \"Lock does not exist\";\r\n case IModelHubStatus.LockChunkDoesNotExist: return \"Lock chunk does not exist\";\r\n case IModelHubStatus.LockOwnedByAnotherBriefcase: return \"Lock is owned by another briefcase\";\r\n case IModelHubStatus.CodeStateInvalid: return \"Code state is invalid\";\r\n case IModelHubStatus.CodeReservedByAnotherBriefcase: return \"Code is reserved by another briefcase\";\r\n case IModelHubStatus.CodeDoesNotExist: return \"Code does not exist\";\r\n case IModelHubStatus.FileDoesNotExist: return \"File does not exist\";\r\n case IModelHubStatus.FileAlreadyExists: return \"File already exists\";\r\n case IModelHubStatus.EventTypeDoesNotExist: return \"Event type does not exist\";\r\n case IModelHubStatus.EventSubscriptionDoesNotExist: return \"Event subscription does not exist\";\r\n case IModelHubStatus.EventSubscriptionAlreadyExists: return \"Event subscription already exists\";\r\n case IModelHubStatus.ITwinIdIsNotSpecified: return \"ITwin Id is not specified\";\r\n case IModelHubStatus.FailedToGetITwinPermissions: return \"Failed to get iTwin permissions\";\r\n case IModelHubStatus.FailedToGetITwinMembers: return \"Failed to get iTwin members\";\r\n case IModelHubStatus.FailedToGetAssetPermissions: return \"Failed to get asset permissions\";\r\n case IModelHubStatus.FailedToGetAssetMembers: return \"Failed to get asset members\";\r\n case IModelHubStatus.ChangeSetAlreadyHasVersion: return \"ChangeSet already has version\";\r\n case IModelHubStatus.VersionAlreadyExists: return \"Version already exists\";\r\n case IModelHubStatus.JobSchedulingFailed: return \"Failed to schedule a background job\";\r\n case IModelHubStatus.ConflictsAggregate: return \"Codes or locks are owned by another briefcase\";\r\n case IModelHubStatus.FailedToGetITwinById: return \"Failed to query iTwin by its id\";\r\n case IModelHubStatus.DatabaseOperationFailed: return \"Database operation has failed\";\r\n case IModelHubStatus.ITwinDoesNotExist: return \"ITwin does not exist\";\r\n case IModelHubStatus.UndefinedArgumentError: return \"Undefined argument\";\r\n case IModelHubStatus.InvalidArgumentError: return \"Invalid argument\";\r\n case IModelHubStatus.MissingDownloadUrlError: return \"Missing download url\";\r\n case IModelHubStatus.NotSupportedInBrowser: return \"Not supported in browser\";\r\n case IModelHubStatus.FileHandlerNotSet: return \"File handler is not set\";\r\n case IModelHubStatus.FileNotFound: return \"File not found\";\r\n case AuthStatus.Error: return \"Authorization error\";\r\n case GeoServiceStatus.NoGeoLocation: return \"No GeoLocation\";\r\n case GeoServiceStatus.OutOfUsefulRange: return \"Out of useful range\";\r\n case GeoServiceStatus.OutOfMathematicalDomain: return \"Out of mathematical domain\";\r\n case GeoServiceStatus.NoDatumConverter: return \"No datum converter\";\r\n case GeoServiceStatus.VerticalDatumConvertError: return \"Vertical datum convert error\";\r\n case GeoServiceStatus.CSMapError: return \"CSMap error\";\r\n case GeoServiceStatus.Pending: return \"Pending\";\r\n case IModelStatus.Success:\r\n case DbResult.BE_SQLITE_OK:\r\n case DbResult.BE_SQLITE_ROW:\r\n case DbResult.BE_SQLITE_DONE:\r\n case BentleyStatus.SUCCESS:\r\n return \"Success\";\r\n\r\n default:\r\n return `Error (${this.errorNumber})`;\r\n }\r\n }\r\n\r\n /** Use run-time type checking to safely get a useful string summary of an unknown error value, or `\"\"` if none exists.\r\n * @note It's recommended to use this function in `catch` clauses, where a caught value cannot be assumed to be `instanceof Error`\r\n * @public\r\n */\r\n public static getErrorMessage(error: unknown): string {\r\n if (typeof error === \"string\")\r\n return error;\r\n\r\n if (error instanceof Error)\r\n return error.toString();\r\n\r\n if (isObject(error)) {\r\n if (typeof error.message === \"string\")\r\n return error.message;\r\n\r\n if (typeof error.msg === \"string\")\r\n return error.msg;\r\n\r\n if (error.toString() !== \"[object Object]\")\r\n return error.toString();\r\n }\r\n\r\n return \"\";\r\n }\r\n\r\n /** Use run-time type checking to safely get the call stack of an unknown error value, if possible.\r\n * @note It's recommended to use this function in `catch` clauses, where a caught value cannot be assumed to be `instanceof Error`\r\n * @public\r\n */\r\n public static getErrorStack(error: unknown): string | undefined {\r\n if (isObject(error) && typeof error.stack === \"string\")\r\n return error.stack;\r\n\r\n return undefined;\r\n }\r\n\r\n /** Use run-time type checking to safely get the metadata with an unknown error value, if possible.\r\n * @note It's recommended to use this function in `catch` clauses, where a caught value cannot be assumed to be `instanceof BentleyError`\r\n * @see [[BentleyError.getMetaData]]\r\n * @public\r\n */\r\n public static getErrorMetadata(error: unknown): object | undefined {\r\n if (isObject(error) && typeof error.getMetaData === \"function\") {\r\n const metadata = error.getMetaData();\r\n if (typeof metadata === \"object\" && metadata !== null)\r\n return metadata;\r\n }\r\n\r\n return undefined;\r\n }\r\n\r\n /** Returns a new `ErrorProps` object representing an unknown error value. Useful for logging or wrapping/re-throwing caught errors.\r\n * @note Unlike `Error` objects (which lose messages and call stacks when serialized to JSON), objects\r\n * returned by this are plain old JavaScript objects, and can be easily logged/serialized to JSON.\r\n * @public\r\n */\r\n public static getErrorProps(error: unknown): ErrorProps {\r\n const serialized: ErrorProps = {\r\n message: BentleyError.getErrorMessage(error),\r\n };\r\n\r\n const stack = BentleyError.getErrorStack(error);\r\n if (stack)\r\n serialized.stack = stack;\r\n\r\n const metadata = BentleyError.getErrorMetadata(error);\r\n if (metadata)\r\n serialized.metadata = metadata;\r\n\r\n return serialized;\r\n }\r\n}\r\n\r\n"]}
|
package/lib/esm/Compare.d.ts
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*/
|
|
4
4
|
/**
|
|
5
5
|
* A function that returns a numerical value indicating how two objects are ordered in relation to one another.
|
|
6
|
-
* Such functions are used by various collection classes
|
|
6
|
+
* Such functions are used by various collection classes throughout the library.
|
|
7
7
|
* Given values `lhs` and `rhs`, the function returns:
|
|
8
8
|
* - Zero if lhs == rhs
|
|
9
9
|
* - A negative number if lhs < rhs
|