@itwin/core-bentley 4.8.0-dev.4 → 4.8.0-dev.41
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/CHANGELOG.md +46 -1
- package/ThirdPartyNotices.md +18 -4
- package/lib/cjs/BeEvent.d.ts +17 -0
- package/lib/cjs/BeEvent.d.ts.map +1 -1
- package/lib/cjs/BeEvent.js.map +1 -1
- package/lib/cjs/BeSQLite.d.ts +0 -38
- package/lib/cjs/BeSQLite.d.ts.map +1 -1
- package/lib/cjs/BeSQLite.js +1 -43
- package/lib/cjs/BeSQLite.js.map +1 -1
- package/lib/cjs/BentleyError.d.ts +0 -43
- package/lib/cjs/BentleyError.d.ts.map +1 -1
- package/lib/cjs/BentleyError.js +17 -53
- package/lib/cjs/BentleyError.js.map +1 -1
- package/lib/cjs/CompressedId64Set.d.ts +1 -1
- package/lib/cjs/CompressedId64Set.js +1 -1
- package/lib/cjs/CompressedId64Set.js.map +1 -1
- package/lib/cjs/Id.d.ts +46 -0
- package/lib/cjs/Id.d.ts.map +1 -1
- package/lib/cjs/Id.js +68 -2
- package/lib/cjs/Id.js.map +1 -1
- package/lib/cjs/Logger.d.ts +15 -12
- package/lib/cjs/Logger.d.ts.map +1 -1
- package/lib/cjs/Logger.js +27 -14
- package/lib/cjs/Logger.js.map +1 -1
- package/lib/cjs/ObservableSet.d.ts +6 -2
- package/lib/cjs/ObservableSet.d.ts.map +1 -1
- package/lib/cjs/ObservableSet.js +6 -2
- package/lib/cjs/ObservableSet.js.map +1 -1
- package/lib/cjs/StatusCategory.js +17 -16
- package/lib/cjs/StatusCategory.js.map +1 -1
- package/lib/cjs/StringUtils.d.ts +0 -4
- package/lib/cjs/StringUtils.d.ts.map +1 -1
- package/lib/cjs/StringUtils.js +3 -119
- package/lib/cjs/StringUtils.js.map +1 -1
- package/lib/cjs/Tracing.d.ts +0 -1
- package/lib/cjs/Tracing.d.ts.map +1 -1
- package/lib/cjs/Tracing.js +0 -1
- package/lib/cjs/Tracing.js.map +1 -1
- package/lib/cjs/YieldManager.d.ts +1 -2
- package/lib/cjs/YieldManager.d.ts.map +1 -1
- package/lib/cjs/YieldManager.js +0 -1
- package/lib/cjs/YieldManager.js.map +1 -1
- package/lib/cjs/core-bentley.d.ts +1 -0
- package/lib/cjs/core-bentley.d.ts.map +1 -1
- package/lib/cjs/core-bentley.js +2 -0
- package/lib/cjs/core-bentley.js.map +1 -1
- package/lib/cjs/internal/BeSQLiteInternal.d.ts +36 -0
- package/lib/cjs/internal/BeSQLiteInternal.d.ts.map +1 -0
- package/lib/cjs/internal/BeSQLiteInternal.js +47 -0
- package/lib/cjs/internal/BeSQLiteInternal.js.map +1 -0
- package/lib/cjs/internal/RepositoryStatus.d.ts +40 -0
- package/lib/cjs/internal/RepositoryStatus.d.ts.map +1 -0
- package/lib/cjs/internal/RepositoryStatus.js +48 -0
- package/lib/cjs/internal/RepositoryStatus.js.map +1 -0
- package/lib/cjs/internal/cross-package.d.ts +4 -0
- package/lib/cjs/internal/cross-package.d.ts.map +1 -0
- package/lib/cjs/internal/cross-package.js +17 -0
- package/lib/cjs/internal/cross-package.js.map +1 -0
- package/lib/cjs/internal/staticLoggerMetadata.d.ts +11 -0
- package/lib/cjs/internal/staticLoggerMetadata.d.ts.map +1 -0
- package/lib/cjs/internal/staticLoggerMetadata.js +17 -0
- package/lib/cjs/internal/staticLoggerMetadata.js.map +1 -0
- package/lib/esm/BeEvent.d.ts +17 -0
- package/lib/esm/BeEvent.d.ts.map +1 -1
- package/lib/esm/BeEvent.js.map +1 -1
- package/lib/esm/BeSQLite.d.ts +0 -38
- package/lib/esm/BeSQLite.d.ts.map +1 -1
- package/lib/esm/BeSQLite.js +0 -42
- package/lib/esm/BeSQLite.js.map +1 -1
- package/lib/esm/BentleyError.d.ts +0 -43
- package/lib/esm/BentleyError.d.ts.map +1 -1
- package/lib/esm/BentleyError.js +1 -37
- package/lib/esm/BentleyError.js.map +1 -1
- package/lib/esm/CompressedId64Set.d.ts +1 -1
- package/lib/esm/CompressedId64Set.js +1 -1
- package/lib/esm/CompressedId64Set.js.map +1 -1
- package/lib/esm/Id.d.ts +46 -0
- package/lib/esm/Id.d.ts.map +1 -1
- package/lib/esm/Id.js +68 -2
- package/lib/esm/Id.js.map +1 -1
- package/lib/esm/Logger.d.ts +15 -12
- package/lib/esm/Logger.d.ts.map +1 -1
- package/lib/esm/Logger.js +27 -14
- package/lib/esm/Logger.js.map +1 -1
- package/lib/esm/ObservableSet.d.ts +6 -2
- package/lib/esm/ObservableSet.d.ts.map +1 -1
- package/lib/esm/ObservableSet.js +6 -2
- package/lib/esm/ObservableSet.js.map +1 -1
- package/lib/esm/StatusCategory.js +2 -1
- package/lib/esm/StatusCategory.js.map +1 -1
- package/lib/esm/StringUtils.d.ts +0 -4
- package/lib/esm/StringUtils.d.ts.map +1 -1
- package/lib/esm/StringUtils.js +2 -117
- package/lib/esm/StringUtils.js.map +1 -1
- package/lib/esm/Tracing.d.ts +0 -1
- package/lib/esm/Tracing.d.ts.map +1 -1
- package/lib/esm/Tracing.js +0 -1
- package/lib/esm/Tracing.js.map +1 -1
- package/lib/esm/YieldManager.d.ts +1 -2
- package/lib/esm/YieldManager.d.ts.map +1 -1
- package/lib/esm/YieldManager.js +0 -1
- package/lib/esm/YieldManager.js.map +1 -1
- package/lib/esm/core-bentley.d.ts +1 -0
- package/lib/esm/core-bentley.d.ts.map +1 -1
- package/lib/esm/core-bentley.js +2 -0
- package/lib/esm/core-bentley.js.map +1 -1
- package/lib/esm/internal/BeSQLiteInternal.d.ts +36 -0
- package/lib/esm/internal/BeSQLiteInternal.d.ts.map +1 -0
- package/lib/esm/internal/BeSQLiteInternal.js +44 -0
- package/lib/esm/internal/BeSQLiteInternal.js.map +1 -0
- package/lib/esm/internal/RepositoryStatus.d.ts +40 -0
- package/lib/esm/internal/RepositoryStatus.d.ts.map +1 -0
- package/lib/esm/internal/RepositoryStatus.js +45 -0
- package/lib/esm/internal/RepositoryStatus.js.map +1 -0
- package/lib/esm/internal/cross-package.d.ts +4 -0
- package/lib/esm/internal/cross-package.d.ts.map +1 -0
- package/lib/esm/internal/cross-package.js +8 -0
- package/lib/esm/internal/cross-package.js.map +1 -0
- package/lib/esm/internal/staticLoggerMetadata.d.ts +11 -0
- package/lib/esm/internal/staticLoggerMetadata.d.ts.map +1 -0
- package/lib/esm/internal/staticLoggerMetadata.js +14 -0
- package/lib/esm/internal/staticLoggerMetadata.js.map +1 -0
- package/package.json +4 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ObservableSet.d.ts","sourceRoot":"","sources":["../../src/ObservableSet.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC;;GAEG;AACH,qBAAa,aAAa,CAAC,CAAC,CAAE,SAAQ,GAAG,CAAC,CAAC,CAAC;IAC1C,iDAAiD;IACjD,SAAgB,OAAO,iBAAsB,CAAC,KAAK,IAAI,EAAI;IAC3D,qDAAqD;IACrD,SAAgB,SAAS,iBAAsB,CAAC,KAAK,IAAI,EAAI;IAC7D,qDAAqD;IACrD,SAAgB,SAAS,gBAAqB,IAAI,EAAI;IAEtD;;OAEG;gBACgB,QAAQ,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,SAAS;IAcrD
|
|
1
|
+
{"version":3,"file":"ObservableSet.d.ts","sourceRoot":"","sources":["../../src/ObservableSet.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC;;GAEG;AACH,qBAAa,aAAa,CAAC,CAAC,CAAE,SAAQ,GAAG,CAAC,CAAC,CAAC;IAC1C,iDAAiD;IACjD,SAAgB,OAAO,iBAAsB,CAAC,KAAK,IAAI,EAAI;IAC3D,qDAAqD;IACrD,SAAgB,SAAS,iBAAsB,CAAC,KAAK,IAAI,EAAI;IAC7D,qDAAqD;IACrD,SAAgB,SAAS,gBAAqB,IAAI,EAAI;IAEtD;;OAEG;gBACgB,QAAQ,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,SAAS;IAcrD;;OAEG;IACa,MAAM,CAAC,IAAI,EAAE,CAAC,GAAG,OAAO;IAQxC;;OAEG;IACa,KAAK,IAAI,IAAI;CAM9B"}
|
package/lib/cjs/ObservableSet.js
CHANGED
|
@@ -33,14 +33,18 @@ class ObservableSet extends Set {
|
|
|
33
33
|
return ret;
|
|
34
34
|
};
|
|
35
35
|
}
|
|
36
|
-
/**
|
|
36
|
+
/** Invokes [Set.delete](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Set/delete), raising
|
|
37
|
+
* the [[onDeleted]] event if the item was removed from the set.
|
|
38
|
+
*/
|
|
37
39
|
delete(item) {
|
|
38
40
|
const ret = super.delete(item);
|
|
39
41
|
if (ret)
|
|
40
42
|
this.onDeleted.raiseEvent(item);
|
|
41
43
|
return ret;
|
|
42
44
|
}
|
|
43
|
-
/**
|
|
45
|
+
/** If this set is not already empty, invokes [Set.clear](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Set/clear)
|
|
46
|
+
* and raises the [[onCleared]] event.
|
|
47
|
+
*/
|
|
44
48
|
clear() {
|
|
45
49
|
if (0 !== this.size) {
|
|
46
50
|
super.clear();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ObservableSet.js","sourceRoot":"","sources":["../../src/ObservableSet.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,uCAAoC;AAEpC;;GAEG;AACH,MAAa,aAAiB,SAAQ,GAAM;IAQ1C;;OAEG;IACH,YAAmB,QAAkC;QACnD,4EAA4E;QAC5E,KAAK,CAAC,QAAQ,CAAC,CAAC;QAZlB,iDAAiD;QACjC,YAAO,GAAG,IAAI,iBAAO,EAAqB,CAAC;QAC3D,qDAAqD;QACrC,cAAS,GAAG,IAAI,iBAAO,EAAqB,CAAC;QAC7D,qDAAqD;QACrC,cAAS,GAAG,IAAI,iBAAO,EAAc,CAAC;QASpD,IAAI,CAAC,GAAG,GAAG,CAAC,IAAO,EAAE,EAAE;YACrB,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC;YAC3B,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAC5B,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ;gBACxB,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YAEhC,OAAO,GAAG,CAAC;QACb,CAAC,CAAC;IACJ,CAAC;IAED
|
|
1
|
+
{"version":3,"file":"ObservableSet.js","sourceRoot":"","sources":["../../src/ObservableSet.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,uCAAoC;AAEpC;;GAEG;AACH,MAAa,aAAiB,SAAQ,GAAM;IAQ1C;;OAEG;IACH,YAAmB,QAAkC;QACnD,4EAA4E;QAC5E,KAAK,CAAC,QAAQ,CAAC,CAAC;QAZlB,iDAAiD;QACjC,YAAO,GAAG,IAAI,iBAAO,EAAqB,CAAC;QAC3D,qDAAqD;QACrC,cAAS,GAAG,IAAI,iBAAO,EAAqB,CAAC;QAC7D,qDAAqD;QACrC,cAAS,GAAG,IAAI,iBAAO,EAAc,CAAC;QASpD,IAAI,CAAC,GAAG,GAAG,CAAC,IAAO,EAAE,EAAE;YACrB,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC;YAC3B,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAC5B,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ;gBACxB,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YAEhC,OAAO,GAAG,CAAC;QACb,CAAC,CAAC;IACJ,CAAC;IAED;;OAEG;IACa,MAAM,CAAC,IAAO;QAC5B,MAAM,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC/B,IAAI,GAAG;YACL,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAElC,OAAO,GAAG,CAAC;IACb,CAAC;IAED;;OAEG;IACa,KAAK;QACnB,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,EAAE,CAAC;YACpB,KAAK,CAAC,KAAK,EAAE,CAAC;YACd,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC;QAC9B,CAAC;IACH,CAAC;CACF;AA7CD,sCA6CC","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 { BeEvent } from \"./BeEvent\";\r\n\r\n/** A standard [Set<T>](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Set) that emits events when its contents change.\r\n * @public\r\n */\r\nexport class ObservableSet<T> extends Set<T> {\r\n /** Emitted after `item` is added to this set. */\r\n public readonly onAdded = new BeEvent<(item: T) => void>();\r\n /** Emitted after `item` is deleted from this set. */\r\n public readonly onDeleted = new BeEvent<(item: T) => void>();\r\n /** Emitted after this set's contents are cleared. */\r\n public readonly onCleared = new BeEvent<() => void>();\r\n\r\n /** Construct a new ObservableSet.\r\n * @param elements Optional elements with which to populate the new set.\r\n */\r\n public constructor(elements?: Iterable<T> | undefined) {\r\n // NB: Set constructor will invoke add(). Do not override until initialized.\r\n super(elements);\r\n\r\n this.add = (item: T) => { // eslint-disable-line @typescript-eslint/unbound-method\r\n const prevSize = this.size;\r\n const ret = super.add(item);\r\n if (this.size !== prevSize)\r\n this.onAdded.raiseEvent(item);\r\n\r\n return ret;\r\n };\r\n }\r\n\r\n /** Invokes [Set.delete](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Set/delete), raising\r\n * the [[onDeleted]] event if the item was removed from the set.\r\n */\r\n public override delete(item: T): boolean {\r\n const ret = super.delete(item);\r\n if (ret)\r\n this.onDeleted.raiseEvent(item);\r\n\r\n return ret;\r\n }\r\n\r\n /** If this set is not already empty, invokes [Set.clear](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Set/clear)\r\n * and raises the [[onCleared]] event.\r\n */\r\n public override clear(): void {\r\n if (0 !== this.size) {\r\n super.clear();\r\n this.onCleared.raiseEvent();\r\n }\r\n }\r\n}\r\n"]}
|
|
@@ -9,6 +9,7 @@
|
|
|
9
9
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
10
|
exports.ErrorCategory = exports.SuccessCategory = exports.StatusCategory = void 0;
|
|
11
11
|
const BentleyError_1 = require("./BentleyError");
|
|
12
|
+
const RepositoryStatus_1 = require("./internal/RepositoryStatus");
|
|
12
13
|
/** A group of related statuses for aggregate reporting purposes.
|
|
13
14
|
* @alpha
|
|
14
15
|
*/
|
|
@@ -376,22 +377,22 @@ function lookupHttpStatusCategory(statusCode) {
|
|
|
376
377
|
case BentleyError_1.ChangeSetStatus.CannotMergeIntoReadonly: return new ValidationError();
|
|
377
378
|
case BentleyError_1.ChangeSetStatus.CannotMergeIntoMaster: return new ValidationError();
|
|
378
379
|
case BentleyError_1.ChangeSetStatus.CannotMergeIntoReversed: return new ValidationError();
|
|
379
|
-
case
|
|
380
|
-
case
|
|
381
|
-
case
|
|
382
|
-
case
|
|
383
|
-
case
|
|
384
|
-
case
|
|
385
|
-
case
|
|
386
|
-
case
|
|
387
|
-
case
|
|
388
|
-
case
|
|
389
|
-
case
|
|
390
|
-
case
|
|
391
|
-
case
|
|
392
|
-
case
|
|
393
|
-
case
|
|
394
|
-
case
|
|
380
|
+
case RepositoryStatus_1.RepositoryStatus.Success: return new Success();
|
|
381
|
+
case RepositoryStatus_1.RepositoryStatus.ServerUnavailable: return new NetworkError();
|
|
382
|
+
case RepositoryStatus_1.RepositoryStatus.LockAlreadyHeld: return new Conflict();
|
|
383
|
+
case RepositoryStatus_1.RepositoryStatus.SyncError: return new NetworkError();
|
|
384
|
+
case RepositoryStatus_1.RepositoryStatus.InvalidResponse: return new NetworkError();
|
|
385
|
+
case RepositoryStatus_1.RepositoryStatus.PendingTransactions: return new StateViolation();
|
|
386
|
+
case RepositoryStatus_1.RepositoryStatus.LockUsed: return new StateViolation();
|
|
387
|
+
case RepositoryStatus_1.RepositoryStatus.CannotCreateChangeSet: return new InternalError();
|
|
388
|
+
case RepositoryStatus_1.RepositoryStatus.InvalidRequest: return new NetworkError();
|
|
389
|
+
case RepositoryStatus_1.RepositoryStatus.ChangeSetRequired: return new StateViolation();
|
|
390
|
+
case RepositoryStatus_1.RepositoryStatus.CodeUnavailable: return new Conflict();
|
|
391
|
+
case RepositoryStatus_1.RepositoryStatus.CodeNotReserved: return new StateViolation();
|
|
392
|
+
case RepositoryStatus_1.RepositoryStatus.CodeUsed: return new StateViolation();
|
|
393
|
+
case RepositoryStatus_1.RepositoryStatus.LockNotHeld: return new Forbidden();
|
|
394
|
+
case RepositoryStatus_1.RepositoryStatus.RepositoryIsLocked: return new Locked();
|
|
395
|
+
case RepositoryStatus_1.RepositoryStatus.ChannelConstraintViolation: return new ConstraintViolation();
|
|
395
396
|
case BentleyError_1.HttpStatus.Success: return new Success();
|
|
396
397
|
case BentleyError_1.IModelHubStatus.Success: return new Success();
|
|
397
398
|
case BentleyError_1.IModelHubStatus.Unknown: return new UnknownError();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StatusCategory.js","sourceRoot":"","sources":["../../src/StatusCategory.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Errors\r\n */\r\n\r\nimport {\r\n BentleyError,\r\n BentleyStatus,\r\n BriefcaseStatus,\r\n ChangeSetStatus,\r\n GeoServiceStatus,\r\n HttpStatus,\r\n IModelHubStatus,\r\n IModelStatus,\r\n RealityDataStatus,\r\n RepositoryStatus,\r\n RpcInterfaceStatus,\r\n} from \"./BentleyError\";\r\n\r\n/* eslint-disable @typescript-eslint/no-shadow */\r\n\r\n/** @alpha */\r\nexport type StatusCategoryHandler = (error: Error) => StatusCategory | undefined;\r\n\r\n/** A group of related statuses for aggregate reporting purposes.\r\n * @alpha\r\n */\r\nexport abstract class StatusCategory {\r\n public static handlers: Set<StatusCategoryHandler> = new Set();\r\n\r\n public static for(error: Error): StatusCategory {\r\n for (const handler of this.handlers) {\r\n const category = handler(error);\r\n if (category) {\r\n return category;\r\n }\r\n }\r\n\r\n const errorNumber = (error as BentleyError).errorNumber as unknown;\r\n if (typeof errorNumber === \"number\")\r\n return lookupHttpStatusCategory(errorNumber);\r\n\r\n return new UnknownError();\r\n }\r\n\r\n public abstract name: string;\r\n public abstract code: number;\r\n public abstract error: boolean;\r\n}\r\n\r\n/***\r\n * A success status.\r\n * @alpha\r\n */\r\nexport abstract class SuccessCategory extends StatusCategory {\r\n public error = false;\r\n}\r\n\r\n/**\r\n * An error status.\r\n * @alpha\r\n */\r\nexport abstract class ErrorCategory extends StatusCategory {\r\n public error = true;\r\n}\r\n\r\nnamespace HTTP {\r\n export class OK extends SuccessCategory { public name = \"OK\"; public code = 200; }\r\n export class Accepted extends SuccessCategory { public name = \"Accepted\"; public code = 202; }\r\n export class NoContent extends SuccessCategory { public name = \"NoContent\"; public code = 204; }\r\n\r\n export class BadRequest extends ErrorCategory { public name = \"BadRequest\"; public code = 400; }\r\n export class Unauthorized extends ErrorCategory { public name = \"Unauthorized\"; public code = 401; }\r\n export class Forbidden extends ErrorCategory { public name = \"Forbidden\"; public code = 403; }\r\n export class NotFound extends ErrorCategory { public name = \"NotFound\"; public code = 404; }\r\n export class RequestTimeout extends ErrorCategory { public name = \"RequestTimeout\"; public code = 408; }\r\n export class Conflict extends ErrorCategory { public name = \"Conflict\"; public code = 409; }\r\n export class Gone extends ErrorCategory { public name = \"Gone\"; public code = 410; }\r\n export class PreconditionFailed extends ErrorCategory { public name = \"PreconditionFailed\"; public code = 412; }\r\n export class ExpectationFailed extends ErrorCategory { public name = \"ExpectationFailed\"; public code = 417; }\r\n export class MisdirectedRequest extends ErrorCategory { public name = \"MisdirectedRequest\"; public code = 421; }\r\n export class UnprocessableEntity extends ErrorCategory { public name = \"UnprocessableEntity\"; public code = 422; }\r\n export class UpgradeRequired extends ErrorCategory { public name = \"UpgradeRequired\"; public code = 426; }\r\n export class PreconditionRequired extends ErrorCategory { public name = \"PreconditionRequired\"; public code = 428; }\r\n export class TooManyRequests extends ErrorCategory { public name = \"TooManyRequests\"; public code = 429; }\r\n\r\n export class InternalServerError extends ErrorCategory { public name = \"InternalServerError\"; public code = 500; }\r\n export class NotImplemented extends ErrorCategory { public name = \"NotImplemented\"; public code = 501; }\r\n}\r\n\r\nclass Success extends HTTP.OK { }\r\n\r\nclass Pending extends HTTP.Accepted { }\r\n\r\nclass NoContent extends HTTP.NoContent { }\r\nclass NothingToDo extends HTTP.NoContent { }\r\n\r\nclass BadRequest extends HTTP.BadRequest { }\r\n\r\nclass Forbidden extends HTTP.Forbidden { }\r\nclass PermissionsViolation extends HTTP.Forbidden { }\r\nclass ReadOnly extends HTTP.Forbidden { }\r\n\r\nclass NotFound extends HTTP.NotFound { }\r\n\r\nclass NotEnabled extends HTTP.UnprocessableEntity { }\r\nclass NotSupported extends HTTP.UnprocessableEntity { }\r\n\r\nclass ValidationError extends HTTP.BadRequest { }\r\n\r\nclass Timeout extends HTTP.RequestTimeout { }\r\n\r\nclass Conflict extends HTTP.Conflict { }\r\n\r\nclass Cancelled extends HTTP.Gone { }\r\n\r\nclass ConstraintViolation extends HTTP.Forbidden { }\r\nclass VersioningViolation extends HTTP.Forbidden { }\r\n\r\nclass Corruption extends HTTP.InternalServerError { }\r\nclass InvalidData extends HTTP.InternalServerError { }\r\nclass OperationFailed extends HTTP.InternalServerError { }\r\nclass StateViolation extends HTTP.InternalServerError { }\r\n\r\nclass Locked extends HTTP.Conflict { }\r\n\r\nclass NetworkError extends HTTP.InternalServerError { }\r\n\r\nclass Throttled extends HTTP.TooManyRequests { }\r\n\r\nclass FileSystemError extends HTTP.InternalServerError { }\r\nclass InternalError extends HTTP.InternalServerError { }\r\nclass UnknownError extends HTTP.InternalServerError { }\r\n\r\nclass NotImplemented extends HTTP.NotImplemented { }\r\n\r\nclass Aborted extends HTTP.BadRequest { }\r\n\r\nfunction lookupHttpStatusCategory(statusCode: number): StatusCategory {\r\n switch (statusCode) {\r\n case BentleyStatus.SUCCESS: return new Success();\r\n case BentleyStatus.ERROR: return new UnknownError();\r\n\r\n case IModelStatus.Success: return new Success();\r\n case IModelStatus.AlreadyLoaded: return new StateViolation();\r\n case IModelStatus.AlreadyOpen: return new StateViolation();\r\n case IModelStatus.BadArg: return new ValidationError();\r\n case IModelStatus.BadElement: return new ValidationError();\r\n case IModelStatus.BadModel: return new ValidationError();\r\n case IModelStatus.BadRequest: return new BadRequest();\r\n case IModelStatus.BadSchema: return new ValidationError();\r\n case IModelStatus.CannotUndo: return new OperationFailed();\r\n case IModelStatus.CodeNotReserved: return new StateViolation();\r\n case IModelStatus.DeletionProhibited: return new Forbidden();\r\n case IModelStatus.DuplicateCode: return new Conflict();\r\n case IModelStatus.DuplicateName: return new Conflict();\r\n case IModelStatus.ElementBlockedChange: return new ConstraintViolation();\r\n case IModelStatus.FileAlreadyExists: return new Conflict();\r\n case IModelStatus.FileNotFound: return new NotFound();\r\n case IModelStatus.FileNotLoaded: return new FileSystemError();\r\n case IModelStatus.ForeignKeyConstraint: return new ConstraintViolation();\r\n case IModelStatus.IdExists: return new Conflict();\r\n case IModelStatus.InDynamicTransaction: return new StateViolation();\r\n case IModelStatus.InvalidCategory: return new ValidationError();\r\n case IModelStatus.InvalidCode: return new ValidationError();\r\n case IModelStatus.InvalidCodeSpec: return new ValidationError();\r\n case IModelStatus.InvalidId: return new ValidationError();\r\n case IModelStatus.InvalidName: return new ValidationError();\r\n case IModelStatus.InvalidParent: return new Conflict();\r\n case IModelStatus.InvalidProfileVersion: return new InvalidData();\r\n case IModelStatus.IsCreatingChangeSet: return new StateViolation();\r\n case IModelStatus.LockNotHeld: return new Forbidden();\r\n case IModelStatus.Mismatch2d3d: return new ValidationError();\r\n case IModelStatus.MismatchGcs: return new ValidationError();\r\n case IModelStatus.MissingDomain: return new ValidationError();\r\n case IModelStatus.MissingHandler: return new ValidationError();\r\n case IModelStatus.MissingId: return new ValidationError();\r\n case IModelStatus.NoGeometry: return new NoContent();\r\n case IModelStatus.NoMultiTxnOperation: return new StateViolation();\r\n case IModelStatus.NotEnabled: return new NotEnabled();\r\n case IModelStatus.NotFound: return new NotFound();\r\n case IModelStatus.NotOpen: return new StateViolation();\r\n case IModelStatus.NotOpenForWrite: return new Forbidden();\r\n case IModelStatus.NotSameUnitBase: return new ValidationError();\r\n case IModelStatus.NothingToRedo: return new NothingToDo();\r\n case IModelStatus.NothingToUndo: return new NothingToDo();\r\n case IModelStatus.ParentBlockedChange: return new Forbidden();\r\n case IModelStatus.ReadError: return new FileSystemError();\r\n case IModelStatus.ReadOnly: return new ReadOnly();\r\n case IModelStatus.ReadOnlyDomain: return new ReadOnly();\r\n case IModelStatus.RepositoryManagerError: return new NetworkError();\r\n case IModelStatus.SQLiteError: return new InternalError();\r\n case IModelStatus.TransactionActive: return new StateViolation();\r\n case IModelStatus.UnitsMissing: return new ValidationError();\r\n case IModelStatus.UnknownFormat: return new InvalidData();\r\n case IModelStatus.UpgradeFailed: return new OperationFailed();\r\n case IModelStatus.ValidationFailed: return new ValidationError();\r\n case IModelStatus.VersionTooNew: return new VersioningViolation();\r\n case IModelStatus.VersionTooOld: return new VersioningViolation();\r\n case IModelStatus.ViewNotFound: return new NotFound();\r\n case IModelStatus.WriteError: return new FileSystemError();\r\n case IModelStatus.WrongClass: return new ValidationError();\r\n case IModelStatus.WrongIModel: return new ValidationError();\r\n case IModelStatus.WrongDomain: return new ValidationError();\r\n case IModelStatus.WrongElement: return new ValidationError();\r\n case IModelStatus.WrongHandler: return new ValidationError();\r\n case IModelStatus.WrongModel: return new ValidationError();\r\n case IModelStatus.ConstraintNotUnique: return new ConstraintViolation();\r\n case IModelStatus.NoGeoLocation: return new ValidationError();\r\n case IModelStatus.ServerTimeout: return new Timeout();\r\n case IModelStatus.NoContent: return new NoContent();\r\n case IModelStatus.NotRegistered: return new NotImplemented();\r\n case IModelStatus.FunctionNotFound: return new NotImplemented();\r\n case IModelStatus.NoActiveCommand: return new StateViolation();\r\n case IModelStatus.Aborted: return new Aborted();\r\n\r\n case BriefcaseStatus.CannotAcquire: return new OperationFailed();\r\n case BriefcaseStatus.CannotDownload: return new OperationFailed();\r\n case BriefcaseStatus.CannotUpload: return new OperationFailed();\r\n case BriefcaseStatus.CannotCopy: return new OperationFailed();\r\n case BriefcaseStatus.CannotDelete: return new OperationFailed();\r\n case BriefcaseStatus.VersionNotFound: return new NotFound();\r\n case BriefcaseStatus.CannotApplyChanges: return new OperationFailed();\r\n case BriefcaseStatus.DownloadCancelled: return new Cancelled();\r\n case BriefcaseStatus.ContainsDeletedChangeSets: return new ValidationError();\r\n\r\n case RpcInterfaceStatus.Success: return new Success();\r\n case RpcInterfaceStatus.IncompatibleVersion: return new VersioningViolation();\r\n\r\n case ChangeSetStatus.Success: return new Success();\r\n case ChangeSetStatus.ApplyError: return new OperationFailed();\r\n case ChangeSetStatus.ChangeTrackingNotEnabled: return new NotEnabled();\r\n case ChangeSetStatus.CorruptedChangeStream: return new Corruption();\r\n case ChangeSetStatus.FileNotFound: return new NotFound();\r\n case ChangeSetStatus.FileWriteError: return new FileSystemError();\r\n case ChangeSetStatus.HasLocalChanges: return new StateViolation();\r\n case ChangeSetStatus.HasUncommittedChanges: return new StateViolation();\r\n case ChangeSetStatus.InvalidId: return new Corruption();\r\n case ChangeSetStatus.InvalidVersion: return new Corruption();\r\n case ChangeSetStatus.InDynamicTransaction: return new StateViolation();\r\n case ChangeSetStatus.IsCreatingChangeSet: return new StateViolation();\r\n case ChangeSetStatus.IsNotCreatingChangeSet: return new StateViolation();\r\n case ChangeSetStatus.MergePropagationError: return new OperationFailed();\r\n case ChangeSetStatus.NothingToMerge: return new NothingToDo();\r\n case ChangeSetStatus.NoTransactions: return new OperationFailed();\r\n case ChangeSetStatus.ParentMismatch: return new ValidationError();\r\n case ChangeSetStatus.SQLiteError: return new InternalError();\r\n case ChangeSetStatus.WrongDgnDb: return new ValidationError();\r\n case ChangeSetStatus.CouldNotOpenDgnDb: return new OperationFailed();\r\n case ChangeSetStatus.MergeSchemaChangesOnOpen: return new BadRequest();\r\n case ChangeSetStatus.ReverseOrReinstateSchemaChanges: return new Conflict();\r\n case ChangeSetStatus.ProcessSchemaChangesOnOpen: return new BadRequest();\r\n case ChangeSetStatus.CannotMergeIntoReadonly: return new ValidationError();\r\n case ChangeSetStatus.CannotMergeIntoMaster: return new ValidationError();\r\n case ChangeSetStatus.CannotMergeIntoReversed: return new ValidationError();\r\n\r\n case RepositoryStatus.Success: return new Success();\r\n case RepositoryStatus.ServerUnavailable: return new NetworkError();\r\n case RepositoryStatus.LockAlreadyHeld: return new Conflict();\r\n case RepositoryStatus.SyncError: return new NetworkError();\r\n case RepositoryStatus.InvalidResponse: return new NetworkError();\r\n case RepositoryStatus.PendingTransactions: return new StateViolation();\r\n case RepositoryStatus.LockUsed: return new StateViolation();\r\n case RepositoryStatus.CannotCreateChangeSet: return new InternalError();\r\n case RepositoryStatus.InvalidRequest: return new NetworkError();\r\n case RepositoryStatus.ChangeSetRequired: return new StateViolation();\r\n case RepositoryStatus.CodeUnavailable: return new Conflict();\r\n case RepositoryStatus.CodeNotReserved: return new StateViolation();\r\n case RepositoryStatus.CodeUsed: return new StateViolation();\r\n case RepositoryStatus.LockNotHeld: return new Forbidden();\r\n case RepositoryStatus.RepositoryIsLocked: return new Locked();\r\n case RepositoryStatus.ChannelConstraintViolation: return new ConstraintViolation();\r\n\r\n case HttpStatus.Success: return new Success();\r\n\r\n case IModelHubStatus.Success: return new Success();\r\n case IModelHubStatus.Unknown: return new UnknownError();\r\n case IModelHubStatus.MissingRequiredProperties: return new ValidationError();\r\n case IModelHubStatus.InvalidPropertiesValues: return new ValidationError();\r\n case IModelHubStatus.UserDoesNotHavePermission: return new PermissionsViolation();\r\n case IModelHubStatus.UserDoesNotHaveAccess: return new PermissionsViolation();\r\n case IModelHubStatus.InvalidBriefcase: return new ValidationError();\r\n case IModelHubStatus.BriefcaseDoesNotExist: return new NotFound();\r\n case IModelHubStatus.BriefcaseDoesNotBelongToUser: return new PermissionsViolation();\r\n case IModelHubStatus.AnotherUserPushing: return new StateViolation();\r\n case IModelHubStatus.ChangeSetAlreadyExists: return new Conflict();\r\n case IModelHubStatus.ChangeSetDoesNotExist: return new NotFound();\r\n case IModelHubStatus.FileIsNotUploaded: return new StateViolation();\r\n case IModelHubStatus.iModelIsNotInitialized: return new StateViolation();\r\n case IModelHubStatus.ChangeSetPointsToBadSeed: return new InvalidData();\r\n case IModelHubStatus.OperationFailed: return new OperationFailed();\r\n case IModelHubStatus.PullIsRequired: return new StateViolation();\r\n case IModelHubStatus.MaximumNumberOfBriefcasesPerUser: return new Throttled();\r\n case IModelHubStatus.MaximumNumberOfBriefcasesPerUserPerMinute: return new Throttled();\r\n case IModelHubStatus.DatabaseTemporarilyLocked: return new Locked();\r\n case IModelHubStatus.iModelIsLocked: return new Locked();\r\n case IModelHubStatus.CodesExist: return new Conflict();\r\n case IModelHubStatus.LocksExist: return new Conflict();\r\n case IModelHubStatus.iModelAlreadyExists: return new Conflict();\r\n case IModelHubStatus.iModelDoesNotExist: return new NotFound();\r\n case IModelHubStatus.FileDoesNotExist: return new NotFound();\r\n case IModelHubStatus.FileAlreadyExists: return new Conflict();\r\n case IModelHubStatus.LockDoesNotExist: return new NotFound();\r\n case IModelHubStatus.LockOwnedByAnotherBriefcase: return new Conflict();\r\n case IModelHubStatus.CodeStateInvalid: return new StateViolation();\r\n case IModelHubStatus.CodeReservedByAnotherBriefcase: return new Conflict();\r\n case IModelHubStatus.CodeDoesNotExist: return new NotFound();\r\n case IModelHubStatus.EventTypeDoesNotExist: return new NotFound();\r\n case IModelHubStatus.EventSubscriptionDoesNotExist: return new NotFound();\r\n case IModelHubStatus.EventSubscriptionAlreadyExists: return new StateViolation();\r\n case IModelHubStatus.ITwinIdIsNotSpecified: return new ValidationError();\r\n case IModelHubStatus.FailedToGetITwinPermissions: return new OperationFailed();\r\n case IModelHubStatus.FailedToGetITwinMembers: return new OperationFailed();\r\n case IModelHubStatus.ChangeSetAlreadyHasVersion: return new Conflict();\r\n case IModelHubStatus.VersionAlreadyExists: return new Conflict();\r\n case IModelHubStatus.JobSchedulingFailed: return new InternalError();\r\n case IModelHubStatus.ConflictsAggregate: return new Conflict();\r\n case IModelHubStatus.FailedToGetITwinById: return new OperationFailed();\r\n case IModelHubStatus.DatabaseOperationFailed: return new OperationFailed();\r\n case IModelHubStatus.SeedFileInitializationFailed: return new OperationFailed();\r\n case IModelHubStatus.FailedToGetAssetPermissions: return new OperationFailed();\r\n case IModelHubStatus.FailedToGetAssetMembers: return new OperationFailed();\r\n case IModelHubStatus.ITwinDoesNotExist: return new NotFound();\r\n case IModelHubStatus.LockChunkDoesNotExist: return new NotFound();\r\n case IModelHubStatus.CheckpointAlreadyExists: return new Conflict();\r\n case IModelHubStatus.CheckpointDoesNotExist: return new NotFound();\r\n case IModelHubStatus.UndefinedArgumentError: return new ValidationError();\r\n case IModelHubStatus.InvalidArgumentError: return new ValidationError();\r\n case IModelHubStatus.MissingDownloadUrlError: return new ValidationError();\r\n case IModelHubStatus.NotSupportedInBrowser: return new NotSupported();\r\n case IModelHubStatus.FileHandlerNotSet: return new NotImplemented();\r\n case IModelHubStatus.FileNotFound: return new NotFound();\r\n case IModelHubStatus.InitializationTimeout: return new Timeout();\r\n\r\n case GeoServiceStatus.Success: return new Success();\r\n case GeoServiceStatus.NoGeoLocation: return new ValidationError();\r\n case GeoServiceStatus.OutOfUsefulRange: return new ValidationError();\r\n case GeoServiceStatus.OutOfMathematicalDomain: return new ValidationError();\r\n case GeoServiceStatus.NoDatumConverter: return new OperationFailed();\r\n case GeoServiceStatus.VerticalDatumConvertError: return new OperationFailed();\r\n case GeoServiceStatus.CSMapError: return new InternalError();\r\n case GeoServiceStatus.Pending: return new Pending();\r\n\r\n case RealityDataStatus.Success: return new Success();\r\n case RealityDataStatus.InvalidData: return new InvalidData();\r\n\r\n default: return new UnknownError();\r\n }\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"file":"StatusCategory.js","sourceRoot":"","sources":["../../src/StatusCategory.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Errors\r\n */\r\n\r\nimport {\r\n BentleyError,\r\n BentleyStatus,\r\n BriefcaseStatus,\r\n ChangeSetStatus,\r\n GeoServiceStatus,\r\n HttpStatus,\r\n IModelHubStatus,\r\n IModelStatus,\r\n RealityDataStatus,\r\n RpcInterfaceStatus,\r\n} from \"./BentleyError\";\r\nimport { RepositoryStatus } from \"./internal/RepositoryStatus\";\r\n\r\n/* eslint-disable @typescript-eslint/no-shadow */\r\n\r\n/** @alpha */\r\nexport type StatusCategoryHandler = (error: Error) => StatusCategory | undefined;\r\n\r\n/** A group of related statuses for aggregate reporting purposes.\r\n * @alpha\r\n */\r\nexport abstract class StatusCategory {\r\n public static handlers: Set<StatusCategoryHandler> = new Set();\r\n\r\n public static for(error: Error): StatusCategory {\r\n for (const handler of this.handlers) {\r\n const category = handler(error);\r\n if (category) {\r\n return category;\r\n }\r\n }\r\n\r\n const errorNumber = (error as BentleyError).errorNumber as unknown;\r\n if (typeof errorNumber === \"number\")\r\n return lookupHttpStatusCategory(errorNumber);\r\n\r\n return new UnknownError();\r\n }\r\n\r\n public abstract name: string;\r\n public abstract code: number;\r\n public abstract error: boolean;\r\n}\r\n\r\n/***\r\n * A success status.\r\n * @alpha\r\n */\r\nexport abstract class SuccessCategory extends StatusCategory {\r\n public error = false;\r\n}\r\n\r\n/**\r\n * An error status.\r\n * @alpha\r\n */\r\nexport abstract class ErrorCategory extends StatusCategory {\r\n public error = true;\r\n}\r\n\r\nnamespace HTTP {\r\n export class OK extends SuccessCategory { public name = \"OK\"; public code = 200; }\r\n export class Accepted extends SuccessCategory { public name = \"Accepted\"; public code = 202; }\r\n export class NoContent extends SuccessCategory { public name = \"NoContent\"; public code = 204; }\r\n\r\n export class BadRequest extends ErrorCategory { public name = \"BadRequest\"; public code = 400; }\r\n export class Unauthorized extends ErrorCategory { public name = \"Unauthorized\"; public code = 401; }\r\n export class Forbidden extends ErrorCategory { public name = \"Forbidden\"; public code = 403; }\r\n export class NotFound extends ErrorCategory { public name = \"NotFound\"; public code = 404; }\r\n export class RequestTimeout extends ErrorCategory { public name = \"RequestTimeout\"; public code = 408; }\r\n export class Conflict extends ErrorCategory { public name = \"Conflict\"; public code = 409; }\r\n export class Gone extends ErrorCategory { public name = \"Gone\"; public code = 410; }\r\n export class PreconditionFailed extends ErrorCategory { public name = \"PreconditionFailed\"; public code = 412; }\r\n export class ExpectationFailed extends ErrorCategory { public name = \"ExpectationFailed\"; public code = 417; }\r\n export class MisdirectedRequest extends ErrorCategory { public name = \"MisdirectedRequest\"; public code = 421; }\r\n export class UnprocessableEntity extends ErrorCategory { public name = \"UnprocessableEntity\"; public code = 422; }\r\n export class UpgradeRequired extends ErrorCategory { public name = \"UpgradeRequired\"; public code = 426; }\r\n export class PreconditionRequired extends ErrorCategory { public name = \"PreconditionRequired\"; public code = 428; }\r\n export class TooManyRequests extends ErrorCategory { public name = \"TooManyRequests\"; public code = 429; }\r\n\r\n export class InternalServerError extends ErrorCategory { public name = \"InternalServerError\"; public code = 500; }\r\n export class NotImplemented extends ErrorCategory { public name = \"NotImplemented\"; public code = 501; }\r\n}\r\n\r\nclass Success extends HTTP.OK { }\r\n\r\nclass Pending extends HTTP.Accepted { }\r\n\r\nclass NoContent extends HTTP.NoContent { }\r\nclass NothingToDo extends HTTP.NoContent { }\r\n\r\nclass BadRequest extends HTTP.BadRequest { }\r\n\r\nclass Forbidden extends HTTP.Forbidden { }\r\nclass PermissionsViolation extends HTTP.Forbidden { }\r\nclass ReadOnly extends HTTP.Forbidden { }\r\n\r\nclass NotFound extends HTTP.NotFound { }\r\n\r\nclass NotEnabled extends HTTP.UnprocessableEntity { }\r\nclass NotSupported extends HTTP.UnprocessableEntity { }\r\n\r\nclass ValidationError extends HTTP.BadRequest { }\r\n\r\nclass Timeout extends HTTP.RequestTimeout { }\r\n\r\nclass Conflict extends HTTP.Conflict { }\r\n\r\nclass Cancelled extends HTTP.Gone { }\r\n\r\nclass ConstraintViolation extends HTTP.Forbidden { }\r\nclass VersioningViolation extends HTTP.Forbidden { }\r\n\r\nclass Corruption extends HTTP.InternalServerError { }\r\nclass InvalidData extends HTTP.InternalServerError { }\r\nclass OperationFailed extends HTTP.InternalServerError { }\r\nclass StateViolation extends HTTP.InternalServerError { }\r\n\r\nclass Locked extends HTTP.Conflict { }\r\n\r\nclass NetworkError extends HTTP.InternalServerError { }\r\n\r\nclass Throttled extends HTTP.TooManyRequests { }\r\n\r\nclass FileSystemError extends HTTP.InternalServerError { }\r\nclass InternalError extends HTTP.InternalServerError { }\r\nclass UnknownError extends HTTP.InternalServerError { }\r\n\r\nclass NotImplemented extends HTTP.NotImplemented { }\r\n\r\nclass Aborted extends HTTP.BadRequest { }\r\n\r\nfunction lookupHttpStatusCategory(statusCode: number): StatusCategory {\r\n switch (statusCode) {\r\n case BentleyStatus.SUCCESS: return new Success();\r\n case BentleyStatus.ERROR: return new UnknownError();\r\n\r\n case IModelStatus.Success: return new Success();\r\n case IModelStatus.AlreadyLoaded: return new StateViolation();\r\n case IModelStatus.AlreadyOpen: return new StateViolation();\r\n case IModelStatus.BadArg: return new ValidationError();\r\n case IModelStatus.BadElement: return new ValidationError();\r\n case IModelStatus.BadModel: return new ValidationError();\r\n case IModelStatus.BadRequest: return new BadRequest();\r\n case IModelStatus.BadSchema: return new ValidationError();\r\n case IModelStatus.CannotUndo: return new OperationFailed();\r\n case IModelStatus.CodeNotReserved: return new StateViolation();\r\n case IModelStatus.DeletionProhibited: return new Forbidden();\r\n case IModelStatus.DuplicateCode: return new Conflict();\r\n case IModelStatus.DuplicateName: return new Conflict();\r\n case IModelStatus.ElementBlockedChange: return new ConstraintViolation();\r\n case IModelStatus.FileAlreadyExists: return new Conflict();\r\n case IModelStatus.FileNotFound: return new NotFound();\r\n case IModelStatus.FileNotLoaded: return new FileSystemError();\r\n case IModelStatus.ForeignKeyConstraint: return new ConstraintViolation();\r\n case IModelStatus.IdExists: return new Conflict();\r\n case IModelStatus.InDynamicTransaction: return new StateViolation();\r\n case IModelStatus.InvalidCategory: return new ValidationError();\r\n case IModelStatus.InvalidCode: return new ValidationError();\r\n case IModelStatus.InvalidCodeSpec: return new ValidationError();\r\n case IModelStatus.InvalidId: return new ValidationError();\r\n case IModelStatus.InvalidName: return new ValidationError();\r\n case IModelStatus.InvalidParent: return new Conflict();\r\n case IModelStatus.InvalidProfileVersion: return new InvalidData();\r\n case IModelStatus.IsCreatingChangeSet: return new StateViolation();\r\n case IModelStatus.LockNotHeld: return new Forbidden();\r\n case IModelStatus.Mismatch2d3d: return new ValidationError();\r\n case IModelStatus.MismatchGcs: return new ValidationError();\r\n case IModelStatus.MissingDomain: return new ValidationError();\r\n case IModelStatus.MissingHandler: return new ValidationError();\r\n case IModelStatus.MissingId: return new ValidationError();\r\n case IModelStatus.NoGeometry: return new NoContent();\r\n case IModelStatus.NoMultiTxnOperation: return new StateViolation();\r\n case IModelStatus.NotEnabled: return new NotEnabled();\r\n case IModelStatus.NotFound: return new NotFound();\r\n case IModelStatus.NotOpen: return new StateViolation();\r\n case IModelStatus.NotOpenForWrite: return new Forbidden();\r\n case IModelStatus.NotSameUnitBase: return new ValidationError();\r\n case IModelStatus.NothingToRedo: return new NothingToDo();\r\n case IModelStatus.NothingToUndo: return new NothingToDo();\r\n case IModelStatus.ParentBlockedChange: return new Forbidden();\r\n case IModelStatus.ReadError: return new FileSystemError();\r\n case IModelStatus.ReadOnly: return new ReadOnly();\r\n case IModelStatus.ReadOnlyDomain: return new ReadOnly();\r\n case IModelStatus.RepositoryManagerError: return new NetworkError();\r\n case IModelStatus.SQLiteError: return new InternalError();\r\n case IModelStatus.TransactionActive: return new StateViolation();\r\n case IModelStatus.UnitsMissing: return new ValidationError();\r\n case IModelStatus.UnknownFormat: return new InvalidData();\r\n case IModelStatus.UpgradeFailed: return new OperationFailed();\r\n case IModelStatus.ValidationFailed: return new ValidationError();\r\n case IModelStatus.VersionTooNew: return new VersioningViolation();\r\n case IModelStatus.VersionTooOld: return new VersioningViolation();\r\n case IModelStatus.ViewNotFound: return new NotFound();\r\n case IModelStatus.WriteError: return new FileSystemError();\r\n case IModelStatus.WrongClass: return new ValidationError();\r\n case IModelStatus.WrongIModel: return new ValidationError();\r\n case IModelStatus.WrongDomain: return new ValidationError();\r\n case IModelStatus.WrongElement: return new ValidationError();\r\n case IModelStatus.WrongHandler: return new ValidationError();\r\n case IModelStatus.WrongModel: return new ValidationError();\r\n case IModelStatus.ConstraintNotUnique: return new ConstraintViolation();\r\n case IModelStatus.NoGeoLocation: return new ValidationError();\r\n case IModelStatus.ServerTimeout: return new Timeout();\r\n case IModelStatus.NoContent: return new NoContent();\r\n case IModelStatus.NotRegistered: return new NotImplemented();\r\n case IModelStatus.FunctionNotFound: return new NotImplemented();\r\n case IModelStatus.NoActiveCommand: return new StateViolation();\r\n case IModelStatus.Aborted: return new Aborted();\r\n\r\n case BriefcaseStatus.CannotAcquire: return new OperationFailed();\r\n case BriefcaseStatus.CannotDownload: return new OperationFailed();\r\n case BriefcaseStatus.CannotUpload: return new OperationFailed();\r\n case BriefcaseStatus.CannotCopy: return new OperationFailed();\r\n case BriefcaseStatus.CannotDelete: return new OperationFailed();\r\n case BriefcaseStatus.VersionNotFound: return new NotFound();\r\n case BriefcaseStatus.CannotApplyChanges: return new OperationFailed();\r\n case BriefcaseStatus.DownloadCancelled: return new Cancelled();\r\n case BriefcaseStatus.ContainsDeletedChangeSets: return new ValidationError();\r\n\r\n case RpcInterfaceStatus.Success: return new Success();\r\n case RpcInterfaceStatus.IncompatibleVersion: return new VersioningViolation();\r\n\r\n case ChangeSetStatus.Success: return new Success();\r\n case ChangeSetStatus.ApplyError: return new OperationFailed();\r\n case ChangeSetStatus.ChangeTrackingNotEnabled: return new NotEnabled();\r\n case ChangeSetStatus.CorruptedChangeStream: return new Corruption();\r\n case ChangeSetStatus.FileNotFound: return new NotFound();\r\n case ChangeSetStatus.FileWriteError: return new FileSystemError();\r\n case ChangeSetStatus.HasLocalChanges: return new StateViolation();\r\n case ChangeSetStatus.HasUncommittedChanges: return new StateViolation();\r\n case ChangeSetStatus.InvalidId: return new Corruption();\r\n case ChangeSetStatus.InvalidVersion: return new Corruption();\r\n case ChangeSetStatus.InDynamicTransaction: return new StateViolation();\r\n case ChangeSetStatus.IsCreatingChangeSet: return new StateViolation();\r\n case ChangeSetStatus.IsNotCreatingChangeSet: return new StateViolation();\r\n case ChangeSetStatus.MergePropagationError: return new OperationFailed();\r\n case ChangeSetStatus.NothingToMerge: return new NothingToDo();\r\n case ChangeSetStatus.NoTransactions: return new OperationFailed();\r\n case ChangeSetStatus.ParentMismatch: return new ValidationError();\r\n case ChangeSetStatus.SQLiteError: return new InternalError();\r\n case ChangeSetStatus.WrongDgnDb: return new ValidationError();\r\n case ChangeSetStatus.CouldNotOpenDgnDb: return new OperationFailed();\r\n case ChangeSetStatus.MergeSchemaChangesOnOpen: return new BadRequest();\r\n case ChangeSetStatus.ReverseOrReinstateSchemaChanges: return new Conflict();\r\n case ChangeSetStatus.ProcessSchemaChangesOnOpen: return new BadRequest();\r\n case ChangeSetStatus.CannotMergeIntoReadonly: return new ValidationError();\r\n case ChangeSetStatus.CannotMergeIntoMaster: return new ValidationError();\r\n case ChangeSetStatus.CannotMergeIntoReversed: return new ValidationError();\r\n\r\n case RepositoryStatus.Success: return new Success();\r\n case RepositoryStatus.ServerUnavailable: return new NetworkError();\r\n case RepositoryStatus.LockAlreadyHeld: return new Conflict();\r\n case RepositoryStatus.SyncError: return new NetworkError();\r\n case RepositoryStatus.InvalidResponse: return new NetworkError();\r\n case RepositoryStatus.PendingTransactions: return new StateViolation();\r\n case RepositoryStatus.LockUsed: return new StateViolation();\r\n case RepositoryStatus.CannotCreateChangeSet: return new InternalError();\r\n case RepositoryStatus.InvalidRequest: return new NetworkError();\r\n case RepositoryStatus.ChangeSetRequired: return new StateViolation();\r\n case RepositoryStatus.CodeUnavailable: return new Conflict();\r\n case RepositoryStatus.CodeNotReserved: return new StateViolation();\r\n case RepositoryStatus.CodeUsed: return new StateViolation();\r\n case RepositoryStatus.LockNotHeld: return new Forbidden();\r\n case RepositoryStatus.RepositoryIsLocked: return new Locked();\r\n case RepositoryStatus.ChannelConstraintViolation: return new ConstraintViolation();\r\n\r\n case HttpStatus.Success: return new Success();\r\n\r\n case IModelHubStatus.Success: return new Success();\r\n case IModelHubStatus.Unknown: return new UnknownError();\r\n case IModelHubStatus.MissingRequiredProperties: return new ValidationError();\r\n case IModelHubStatus.InvalidPropertiesValues: return new ValidationError();\r\n case IModelHubStatus.UserDoesNotHavePermission: return new PermissionsViolation();\r\n case IModelHubStatus.UserDoesNotHaveAccess: return new PermissionsViolation();\r\n case IModelHubStatus.InvalidBriefcase: return new ValidationError();\r\n case IModelHubStatus.BriefcaseDoesNotExist: return new NotFound();\r\n case IModelHubStatus.BriefcaseDoesNotBelongToUser: return new PermissionsViolation();\r\n case IModelHubStatus.AnotherUserPushing: return new StateViolation();\r\n case IModelHubStatus.ChangeSetAlreadyExists: return new Conflict();\r\n case IModelHubStatus.ChangeSetDoesNotExist: return new NotFound();\r\n case IModelHubStatus.FileIsNotUploaded: return new StateViolation();\r\n case IModelHubStatus.iModelIsNotInitialized: return new StateViolation();\r\n case IModelHubStatus.ChangeSetPointsToBadSeed: return new InvalidData();\r\n case IModelHubStatus.OperationFailed: return new OperationFailed();\r\n case IModelHubStatus.PullIsRequired: return new StateViolation();\r\n case IModelHubStatus.MaximumNumberOfBriefcasesPerUser: return new Throttled();\r\n case IModelHubStatus.MaximumNumberOfBriefcasesPerUserPerMinute: return new Throttled();\r\n case IModelHubStatus.DatabaseTemporarilyLocked: return new Locked();\r\n case IModelHubStatus.iModelIsLocked: return new Locked();\r\n case IModelHubStatus.CodesExist: return new Conflict();\r\n case IModelHubStatus.LocksExist: return new Conflict();\r\n case IModelHubStatus.iModelAlreadyExists: return new Conflict();\r\n case IModelHubStatus.iModelDoesNotExist: return new NotFound();\r\n case IModelHubStatus.FileDoesNotExist: return new NotFound();\r\n case IModelHubStatus.FileAlreadyExists: return new Conflict();\r\n case IModelHubStatus.LockDoesNotExist: return new NotFound();\r\n case IModelHubStatus.LockOwnedByAnotherBriefcase: return new Conflict();\r\n case IModelHubStatus.CodeStateInvalid: return new StateViolation();\r\n case IModelHubStatus.CodeReservedByAnotherBriefcase: return new Conflict();\r\n case IModelHubStatus.CodeDoesNotExist: return new NotFound();\r\n case IModelHubStatus.EventTypeDoesNotExist: return new NotFound();\r\n case IModelHubStatus.EventSubscriptionDoesNotExist: return new NotFound();\r\n case IModelHubStatus.EventSubscriptionAlreadyExists: return new StateViolation();\r\n case IModelHubStatus.ITwinIdIsNotSpecified: return new ValidationError();\r\n case IModelHubStatus.FailedToGetITwinPermissions: return new OperationFailed();\r\n case IModelHubStatus.FailedToGetITwinMembers: return new OperationFailed();\r\n case IModelHubStatus.ChangeSetAlreadyHasVersion: return new Conflict();\r\n case IModelHubStatus.VersionAlreadyExists: return new Conflict();\r\n case IModelHubStatus.JobSchedulingFailed: return new InternalError();\r\n case IModelHubStatus.ConflictsAggregate: return new Conflict();\r\n case IModelHubStatus.FailedToGetITwinById: return new OperationFailed();\r\n case IModelHubStatus.DatabaseOperationFailed: return new OperationFailed();\r\n case IModelHubStatus.SeedFileInitializationFailed: return new OperationFailed();\r\n case IModelHubStatus.FailedToGetAssetPermissions: return new OperationFailed();\r\n case IModelHubStatus.FailedToGetAssetMembers: return new OperationFailed();\r\n case IModelHubStatus.ITwinDoesNotExist: return new NotFound();\r\n case IModelHubStatus.LockChunkDoesNotExist: return new NotFound();\r\n case IModelHubStatus.CheckpointAlreadyExists: return new Conflict();\r\n case IModelHubStatus.CheckpointDoesNotExist: return new NotFound();\r\n case IModelHubStatus.UndefinedArgumentError: return new ValidationError();\r\n case IModelHubStatus.InvalidArgumentError: return new ValidationError();\r\n case IModelHubStatus.MissingDownloadUrlError: return new ValidationError();\r\n case IModelHubStatus.NotSupportedInBrowser: return new NotSupported();\r\n case IModelHubStatus.FileHandlerNotSet: return new NotImplemented();\r\n case IModelHubStatus.FileNotFound: return new NotFound();\r\n case IModelHubStatus.InitializationTimeout: return new Timeout();\r\n\r\n case GeoServiceStatus.Success: return new Success();\r\n case GeoServiceStatus.NoGeoLocation: return new ValidationError();\r\n case GeoServiceStatus.OutOfUsefulRange: return new ValidationError();\r\n case GeoServiceStatus.OutOfMathematicalDomain: return new ValidationError();\r\n case GeoServiceStatus.NoDatumConverter: return new OperationFailed();\r\n case GeoServiceStatus.VerticalDatumConvertError: return new OperationFailed();\r\n case GeoServiceStatus.CSMapError: return new InternalError();\r\n case GeoServiceStatus.Pending: return new Pending();\r\n\r\n case RealityDataStatus.Success: return new Success();\r\n case RealityDataStatus.InvalidData: return new InvalidData();\r\n\r\n default: return new UnknownError();\r\n }\r\n}\r\n"]}
|
package/lib/cjs/StringUtils.d.ts
CHANGED
|
@@ -1,10 +1,6 @@
|
|
|
1
1
|
/** @packageDocumentation
|
|
2
2
|
* @module Utils
|
|
3
3
|
*/
|
|
4
|
-
/** Exposed only for testing the fall-back used when TextDecoder is unsupported.
|
|
5
|
-
* @internal
|
|
6
|
-
*/
|
|
7
|
-
export declare function utf8ToStringPolyfill(utf8: Uint8Array): string | undefined;
|
|
8
4
|
/** Given an array of bytes containing a utf-8 string, convert to a string.
|
|
9
5
|
* @param utf8: An array of utf-8 characters as a byte array
|
|
10
6
|
* @returns An equivalent string, or undefined if the array does not contain a valid utf-8 string.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StringUtils.d.ts","sourceRoot":"","sources":["../../src/StringUtils.ts"],"names":[],"mappings":"AAIA;;GAEG;
|
|
1
|
+
{"version":3,"file":"StringUtils.d.ts","sourceRoot":"","sources":["../../src/StringUtils.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,GAAG,SAAS,CAGjE;AAED;;;;;GAKG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,CAEnE"}
|
package/lib/cjs/StringUtils.js
CHANGED
|
@@ -7,112 +7,7 @@
|
|
|
7
7
|
* @module Utils
|
|
8
8
|
*/
|
|
9
9
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
-
exports.base64StringToUint8Array = exports.utf8ToString =
|
|
11
|
-
// TextDecoder is not supported on all platforms - this is an alternative for utf-8.
|
|
12
|
-
// From https://github.com/AnalyticalGraphicsInc/cesium/blob/master/Source/Core/getStringFromTypedArray.js
|
|
13
|
-
// which is itself inspired by https://github.com/inexorabletash/text-encoding
|
|
14
|
-
/** @internal */
|
|
15
|
-
var Utf8ToString;
|
|
16
|
-
(function (Utf8ToString) {
|
|
17
|
-
function inRange(a, min, max) {
|
|
18
|
-
return min <= a && a <= max;
|
|
19
|
-
}
|
|
20
|
-
function utf8Handler(bytes) {
|
|
21
|
-
let codePoint = 0;
|
|
22
|
-
let bytesSeen = 0;
|
|
23
|
-
let bytesNeeded = 0;
|
|
24
|
-
let lowerBoundary = 0x80;
|
|
25
|
-
let upperBoundary = 0xbf;
|
|
26
|
-
const codePoints = [];
|
|
27
|
-
const length = bytes.length;
|
|
28
|
-
for (let i = 0; i < length; i++) {
|
|
29
|
-
const currentByte = bytes[i];
|
|
30
|
-
// If bytesNeeded = 0, then we are starting a new character
|
|
31
|
-
if (0 === bytesNeeded) {
|
|
32
|
-
// 1 byte ascii character
|
|
33
|
-
if (inRange(currentByte, 0x00, 0x7f)) {
|
|
34
|
-
// return a code point whose value is byte.
|
|
35
|
-
codePoints.push(currentByte);
|
|
36
|
-
continue;
|
|
37
|
-
}
|
|
38
|
-
// 2 byte character
|
|
39
|
-
if (inRange(currentByte, 0xc2, 0xdf)) {
|
|
40
|
-
bytesNeeded = 1;
|
|
41
|
-
codePoint = currentByte & 0x1f;
|
|
42
|
-
continue;
|
|
43
|
-
}
|
|
44
|
-
// 3 byte character
|
|
45
|
-
if (inRange(currentByte, 0xe0, 0xef)) {
|
|
46
|
-
if (0xe0 === currentByte)
|
|
47
|
-
lowerBoundary = 0xa0;
|
|
48
|
-
else if (0xed === currentByte)
|
|
49
|
-
upperBoundary = 0x9f;
|
|
50
|
-
bytesNeeded = 2;
|
|
51
|
-
codePoint = currentByte & 0xf;
|
|
52
|
-
continue;
|
|
53
|
-
}
|
|
54
|
-
// 4 byte character
|
|
55
|
-
if (inRange(currentByte, 0xf0, 0xf4)) {
|
|
56
|
-
if (0xf0 === currentByte)
|
|
57
|
-
lowerBoundary = 0x90;
|
|
58
|
-
else if (0xf4 === currentByte)
|
|
59
|
-
upperBoundary = 0x8f;
|
|
60
|
-
bytesNeeded = 3;
|
|
61
|
-
codePoint = currentByte & 0x7;
|
|
62
|
-
continue;
|
|
63
|
-
}
|
|
64
|
-
// invalid utf-8
|
|
65
|
-
return undefined;
|
|
66
|
-
}
|
|
67
|
-
// out of range so ignore the first part(s) of the character and continue with this byte on its own
|
|
68
|
-
if (!inRange(currentByte, lowerBoundary, upperBoundary)) {
|
|
69
|
-
codePoint = bytesNeeded = bytesSeen = 0;
|
|
70
|
-
lowerBoundary = 0x80;
|
|
71
|
-
upperBoundary = 0xbf;
|
|
72
|
-
--i;
|
|
73
|
-
continue;
|
|
74
|
-
}
|
|
75
|
-
// set appropriate boundaries since we've now checked byte 2 of a potential longer character
|
|
76
|
-
lowerBoundary = 0x80;
|
|
77
|
-
upperBoundary = 0xbf;
|
|
78
|
-
// add byte to code point
|
|
79
|
-
codePoint = (codePoint << 6) | (currentByte & 0x3f);
|
|
80
|
-
// We have the correct number of bytes, so push and reset for next character
|
|
81
|
-
++bytesSeen;
|
|
82
|
-
if (bytesSeen === bytesNeeded) {
|
|
83
|
-
codePoints.push(codePoint);
|
|
84
|
-
codePoint = bytesNeeded = bytesSeen = 0;
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
return codePoints;
|
|
88
|
-
}
|
|
89
|
-
function decodeWithFromCharCode(view) {
|
|
90
|
-
let result = "";
|
|
91
|
-
const codePoints = utf8Handler(view);
|
|
92
|
-
if (undefined === codePoints)
|
|
93
|
-
return undefined;
|
|
94
|
-
for (let cp of codePoints) {
|
|
95
|
-
if (cp <= 0xffff) {
|
|
96
|
-
result += String.fromCharCode(cp);
|
|
97
|
-
}
|
|
98
|
-
else {
|
|
99
|
-
cp -= 0x10000;
|
|
100
|
-
result += String.fromCharCode((cp >> 10) + 0xd800, (cp & 0x3ff) + 0xdc00);
|
|
101
|
-
}
|
|
102
|
-
}
|
|
103
|
-
return result;
|
|
104
|
-
}
|
|
105
|
-
Utf8ToString.decodeWithFromCharCode = decodeWithFromCharCode;
|
|
106
|
-
})(Utf8ToString || (Utf8ToString = {}));
|
|
107
|
-
/** Exposed only for testing the fall-back used when TextDecoder is unsupported.
|
|
108
|
-
* @internal
|
|
109
|
-
*/
|
|
110
|
-
function utf8ToStringPolyfill(utf8) {
|
|
111
|
-
return Utf8ToString.decodeWithFromCharCode(utf8);
|
|
112
|
-
}
|
|
113
|
-
exports.utf8ToStringPolyfill = utf8ToStringPolyfill;
|
|
114
|
-
// TextDecoder unsupported in Edge at time of writing.
|
|
115
|
-
let textDecoderSupported = true;
|
|
10
|
+
exports.base64StringToUint8Array = exports.utf8ToString = void 0;
|
|
116
11
|
/** Given an array of bytes containing a utf-8 string, convert to a string.
|
|
117
12
|
* @param utf8: An array of utf-8 characters as a byte array
|
|
118
13
|
* @returns An equivalent string, or undefined if the array does not contain a valid utf-8 string.
|
|
@@ -121,19 +16,8 @@ let textDecoderSupported = true;
|
|
|
121
16
|
* @public
|
|
122
17
|
*/
|
|
123
18
|
function utf8ToString(utf8) {
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
try {
|
|
127
|
-
decoder = new TextDecoder("utf-8");
|
|
128
|
-
}
|
|
129
|
-
catch (_ex) {
|
|
130
|
-
textDecoderSupported = false;
|
|
131
|
-
}
|
|
132
|
-
}
|
|
133
|
-
if (undefined !== decoder)
|
|
134
|
-
return decoder.decode(utf8);
|
|
135
|
-
else
|
|
136
|
-
return utf8ToStringPolyfill(utf8);
|
|
19
|
+
const decoder = new TextDecoder("utf-8");
|
|
20
|
+
return decoder.decode(utf8);
|
|
137
21
|
}
|
|
138
22
|
exports.utf8ToString = utf8ToString;
|
|
139
23
|
/** Given a base-64-encoded string, decode it into an array of bytes.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StringUtils.js","sourceRoot":"","sources":["../../src/StringUtils.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH
|
|
1
|
+
{"version":3,"file":"StringUtils.js","sourceRoot":"","sources":["../../src/StringUtils.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH;;;;;;GAMG;AACH,SAAgB,YAAY,CAAC,IAAgB;IAC3C,MAAM,OAAO,GAAG,IAAI,WAAW,CAAC,OAAO,CAAC,CAAC;IACzC,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;AAC9B,CAAC;AAHD,oCAGC;AAED;;;;;GAKG;AACH,SAAgB,wBAAwB,CAAC,MAAc;IACrD,OAAO,IAAI,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,8CAA8C;AAC3H,CAAC;AAFD,4DAEC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Utils\r\n */\r\n\r\n/** Given an array of bytes containing a utf-8 string, convert to a string.\r\n * @param utf8: An array of utf-8 characters as a byte array\r\n * @returns An equivalent string, or undefined if the array does not contain a valid utf-8 string.\r\n * @note This function uses Javascript's TextDecoder if supported by the browser; otherwise, it\r\n * falls back to a less efficient polyfill.\r\n * @public\r\n */\r\nexport function utf8ToString(utf8: Uint8Array): string | undefined {\r\n const decoder = new TextDecoder(\"utf-8\");\r\n return decoder.decode(utf8);\r\n}\r\n\r\n/** Given a base-64-encoded string, decode it into an array of bytes.\r\n * @param base64 The base-64-encoded string.\r\n * @returns the decoded byte array.\r\n * @throws DOMException if the length of the input string is not a multiple of 4.\r\n * @public\r\n */\r\nexport function base64StringToUint8Array(base64: string): Uint8Array {\r\n return new Uint8Array(atob(base64).split(\"\").map((c) => c.charCodeAt(0))); // eslint-disable-line deprecation/deprecation\r\n}\r\n"]}
|
package/lib/cjs/Tracing.d.ts
CHANGED
package/lib/cjs/Tracing.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tracing.d.ts","sourceRoot":"","sources":["../../src/Tracing.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,EAAc,cAAc,EAAsB,WAAW,EAAE,WAAW,EAAY,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAIrI;;;;GAIG;AACH,oBAAY,QAAQ;IAClB,QAAQ,IAAI;IACZ,MAAM,IAAI;IACV,MAAM,IAAI;IACV,QAAQ,IAAI;IACZ,QAAQ,IAAI;CACb;AA6DD;;;;GAIG;AACH,qBAAa,OAAO;IAClB,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAS;IAChC,OAAO,CAAC,MAAM,CAAC,cAAc,CAAC,CAAoH;IAElJ;;;;;;;OAOG;WACiB,QAAQ,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,WAAW,EAAE,aAAa,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC;IA4BnI
|
|
1
|
+
{"version":3,"file":"Tracing.d.ts","sourceRoot":"","sources":["../../src/Tracing.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,EAAc,cAAc,EAAsB,WAAW,EAAE,WAAW,EAAY,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAIrI;;;;GAIG;AACH,oBAAY,QAAQ;IAClB,QAAQ,IAAI;IACZ,MAAM,IAAI;IACV,MAAM,IAAI;IACV,QAAQ,IAAI;IACZ,QAAQ,IAAI;CACb;AA6DD;;;;GAIG;AACH,qBAAa,OAAO;IAClB,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAS;IAChC,OAAO,CAAC,MAAM,CAAC,cAAc,CAAC,CAAoH;IAElJ;;;;;;;OAOG;WACiB,QAAQ,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,WAAW,EAAE,aAAa,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC;IA4BnI;;;OAGG;WACW,eAAe,CAAC,CAAC,EAAE,KAAK;IAItC;;;;OAIG;WACW,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,OAAO,CAAC,cAAc;IASpF,OAAO,CAAC,MAAM,CAAC,iBAAiB;IA+BhC;;OAEG;WACW,aAAa,CAAC,UAAU,EAAE,cAAc;CAGvD"}
|
package/lib/cjs/Tracing.js
CHANGED
|
@@ -108,7 +108,6 @@ class Tracing {
|
|
|
108
108
|
/**
|
|
109
109
|
* Adds a span event describing a runtime exception, as advised in OpenTelemetry documentation
|
|
110
110
|
* @param e error (exception) object
|
|
111
|
-
* @internal
|
|
112
111
|
*/
|
|
113
112
|
static recordException(e) {
|
|
114
113
|
Tracing._openTelemetry?.trace.getSpan(Tracing._openTelemetry.context.active())?.recordException(e);
|
package/lib/cjs/Tracing.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tracing.js","sourceRoot":"","sources":["../../src/Tracing.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 Logging\r\n */\r\n\r\nimport type { ContextAPI, SpanAttributes, SpanAttributeValue, SpanContext, SpanOptions, TraceAPI, Tracer } from \"@opentelemetry/api\";\r\nimport { LogFunction, Logger, LogLevel } from \"./Logger\";\r\n\r\n// re-export so that consumers can construct full SpanOptions object without external dependencies\r\n/**\r\n * Mirrors the SpanKind enum from [@opentelemetry/api](https://open-telemetry.github.io/opentelemetry-js/enums/_opentelemetry_api.SpanKind.html)\r\n * @public\r\n * @deprecated in 4.4 - OpenTelemetry Tracing helpers will become internal in a future release. Apps should use `@opentelemetry/api` directly.\r\n */\r\nexport enum SpanKind {\r\n INTERNAL = 0,\r\n SERVER = 1,\r\n CLIENT = 2,\r\n PRODUCER = 3,\r\n CONSUMER = 4\r\n}\r\n\r\nfunction isValidPrimitive(val: unknown): val is SpanAttributeValue {\r\n return typeof val === \"string\" || typeof val === \"number\" || typeof val === \"boolean\";\r\n}\r\n\r\n// Only _homogenous_ arrays of strings, numbers, or booleans are supported as OpenTelemetry Attribute values.\r\n// Per the spec (https://opentelemetry.io/docs/reference/specification/common/common/#attribute), empty arrays and null values are supported too.\r\nfunction isValidPrimitiveArray(val: unknown): val is SpanAttributeValue {\r\n if (!Array.isArray(val))\r\n return false;\r\n\r\n let itemType;\r\n for (const x of val) {\r\n if (x === undefined || x === null)\r\n continue;\r\n\r\n if (!itemType) {\r\n itemType = typeof x;\r\n if (!isValidPrimitive(x))\r\n return false;\r\n }\r\n\r\n if (typeof x !== itemType)\r\n return false;\r\n }\r\n return true;\r\n}\r\n\r\nfunction isPlainObject(obj: unknown): obj is object {\r\n return typeof obj === \"object\" && obj !== null && Object.getPrototypeOf(obj) === Object.prototype;\r\n}\r\n\r\nfunction* getFlatEntries(obj: unknown, path = \"\"): Iterable<[string, SpanAttributeValue]> {\r\n if (isValidPrimitiveArray(obj)) {\r\n yield [path, obj];\r\n return;\r\n }\r\n\r\n // Prefer JSON serialization over flattening for any non-POJO types.\r\n // There's just too many ways trying to flatten those can go wrong (Dates, Buffers, TypedArrays, etc.)\r\n if (!isPlainObject(obj) && !Array.isArray(obj)) {\r\n yield [path, isValidPrimitive(obj) ? obj : JSON.stringify(obj)];\r\n return;\r\n }\r\n\r\n // Always serialize empty objects/arrays as empty array values\r\n const entries = Object.entries(obj);\r\n if (entries.length === 0)\r\n yield [path, []];\r\n\r\n for (const [key, val] of entries)\r\n yield* getFlatEntries(val, (path === \"\") ? key : `${path}.${key}`);\r\n}\r\n\r\nfunction flattenObject(obj: object): SpanAttributes {\r\n return Object.fromEntries(getFlatEntries(obj));\r\n}\r\n\r\n/* eslint-disable deprecation/deprecation -- lots of self-references here... */\r\n\r\n/**\r\n * Enables OpenTelemetry tracing in addition to traditional logging.\r\n * @public\r\n * @deprecated in 4.4 - OpenTelemetry Tracing helpers will become internal in a future release. Apps should use `@opentelemetry/api` directly.\r\n */\r\nexport class Tracing {\r\n private static _tracer?: Tracer;\r\n private static _openTelemetry?: { trace: Pick<TraceAPI, \"setSpan\" | \"setSpanContext\" | \"getSpan\">, context: Pick<ContextAPI, \"active\" | \"with\"> };\r\n\r\n /**\r\n * If OpenTelemetry tracing is enabled, creates a new span and runs the provided function in it.\r\n * If OpenTelemetry tracing is _not_ enabled, runs the provided function.\r\n * @param name name of the new span\r\n * @param fn function to run inside the new span\r\n * @param options span options\r\n * @param parentContext optional context used to retrieve parent span id\r\n */\r\n public static async withSpan<T>(name: string, fn: () => Promise<T>, options?: SpanOptions, parentContext?: SpanContext): Promise<T> {\r\n if (Tracing._tracer === undefined || Tracing._openTelemetry === undefined)\r\n return fn();\r\n\r\n // this case is for context propagation - parentContext is typically constructed from HTTP headers\r\n const parent = parentContext === undefined\r\n ? Tracing._openTelemetry.context.active()\r\n : Tracing._openTelemetry.trace.setSpanContext(Tracing._openTelemetry.context.active(), parentContext);\r\n\r\n return Tracing._openTelemetry.context.with(\r\n Tracing._openTelemetry.trace.setSpan(\r\n parent,\r\n Tracing._tracer.startSpan(name, options, Tracing._openTelemetry.context.active()),\r\n ),\r\n async () => {\r\n try {\r\n return await fn();\r\n } catch (err) {\r\n if (err instanceof Error) // ignore non-Error throws, such as RpcControlResponse\r\n Tracing._openTelemetry?.trace.getSpan(Tracing._openTelemetry.context.active())?.setAttribute(\"error\", true);\r\n throw err;\r\n } finally {\r\n Tracing._openTelemetry?.trace.getSpan(Tracing._openTelemetry.context.active())?.end();\r\n }\r\n },\r\n );\r\n }\r\n\r\n /**\r\n * Adds a span event describing a runtime exception, as advised in OpenTelemetry documentation\r\n * @param e error (exception) object\r\n * @internal\r\n */\r\n public static recordException(e: Error) {\r\n Tracing._openTelemetry?.trace.getSpan(Tracing._openTelemetry.context.active())?.recordException(e);\r\n }\r\n\r\n /**\r\n * Enable logging to OpenTelemetry. [[Tracing.withSpan]] will be enabled, all log entries will be attached to active span as span events.\r\n * [IModelHost.startup]($backend) will call this automatically if the `enableOpenTelemetry` option is enabled and it succeeds in requiring `@opentelemetry/api`.\r\n * @note Node.js OpenTelemetry SDK should be initialized by the user.\r\n */\r\n public static enableOpenTelemetry(tracer: Tracer, api: typeof Tracing._openTelemetry) {\r\n Tracing._tracer = tracer;\r\n Tracing._openTelemetry = api;\r\n Logger.logTrace = Tracing.withOpenTelemetry(LogLevel.Trace, Logger.logTrace.bind(Logger)).bind(Logger);\r\n Logger.logInfo = Tracing.withOpenTelemetry(LogLevel.Info, Logger.logInfo.bind(Logger)).bind(Logger);\r\n Logger.logWarning = Tracing.withOpenTelemetry(LogLevel.Warning, Logger.logWarning.bind(Logger)).bind(Logger);\r\n Logger.logError = Tracing.withOpenTelemetry(LogLevel.Error, Logger.logError.bind(Logger)).bind(Logger);\r\n }\r\n\r\n private static withOpenTelemetry(level: LogLevel, base: LogFunction, isError: boolean = false): LogFunction {\r\n return (category, message, metaData) => {\r\n const oTelContext = Tracing._openTelemetry?.context.active();\r\n if(Tracing._openTelemetry === undefined || oTelContext === undefined)\r\n return base(category, message, metaData);\r\n\r\n const serializedMetadata = Logger.getMetaData(metaData);\r\n if(Logger.isEnabled(category, level)) {\r\n try {\r\n Tracing._openTelemetry?.trace\r\n .getSpan(Tracing._openTelemetry.context.active())\r\n ?.addEvent(message, {\r\n ...flattenObject(serializedMetadata),\r\n error: isError,\r\n loggerCategory: category,\r\n });\r\n } catch (_e) { } // avoid throwing random errors (with stack trace mangled by async hooks) when openTelemetry collector doesn't work\r\n\r\n const spanContext = Tracing._openTelemetry.trace.getSpan(oTelContext)?.spanContext();\r\n base(category, message, {\r\n ...serializedMetadata,\r\n /* eslint-disable @typescript-eslint/naming-convention */\r\n trace_id: spanContext?.traceId,\r\n span_id: spanContext?.spanId,\r\n trace_flags: spanContext?.traceFlags,\r\n /* eslint-enable @typescript-eslint/naming-convention */\r\n });\r\n }\r\n };\r\n }\r\n\r\n /** Set attributes on currently active openTelemetry span. Doesn't do anything if openTelemetry logging is not initialized.\r\n * @param attributes The attributes to set\r\n */\r\n public static setAttributes(attributes: SpanAttributes) {\r\n Tracing._openTelemetry?.trace.getSpan(Tracing._openTelemetry.context.active())?.setAttributes(attributes);\r\n }\r\n}\r\n\r\n/* eslint-enable deprecation/deprecation */\r\n"]}
|
|
1
|
+
{"version":3,"file":"Tracing.js","sourceRoot":"","sources":["../../src/Tracing.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 Logging\r\n */\r\n\r\nimport type { ContextAPI, SpanAttributes, SpanAttributeValue, SpanContext, SpanOptions, TraceAPI, Tracer } from \"@opentelemetry/api\";\r\nimport { LogFunction, Logger, LogLevel } from \"./Logger\";\r\n\r\n// re-export so that consumers can construct full SpanOptions object without external dependencies\r\n/**\r\n * Mirrors the SpanKind enum from [@opentelemetry/api](https://open-telemetry.github.io/opentelemetry-js/enums/_opentelemetry_api.SpanKind.html)\r\n * @public\r\n * @deprecated in 4.4 - OpenTelemetry Tracing helpers will become internal in a future release. Apps should use `@opentelemetry/api` directly.\r\n */\r\nexport enum SpanKind {\r\n INTERNAL = 0,\r\n SERVER = 1,\r\n CLIENT = 2,\r\n PRODUCER = 3,\r\n CONSUMER = 4\r\n}\r\n\r\nfunction isValidPrimitive(val: unknown): val is SpanAttributeValue {\r\n return typeof val === \"string\" || typeof val === \"number\" || typeof val === \"boolean\";\r\n}\r\n\r\n// Only _homogenous_ arrays of strings, numbers, or booleans are supported as OpenTelemetry Attribute values.\r\n// Per the spec (https://opentelemetry.io/docs/reference/specification/common/common/#attribute), empty arrays and null values are supported too.\r\nfunction isValidPrimitiveArray(val: unknown): val is SpanAttributeValue {\r\n if (!Array.isArray(val))\r\n return false;\r\n\r\n let itemType;\r\n for (const x of val) {\r\n if (x === undefined || x === null)\r\n continue;\r\n\r\n if (!itemType) {\r\n itemType = typeof x;\r\n if (!isValidPrimitive(x))\r\n return false;\r\n }\r\n\r\n if (typeof x !== itemType)\r\n return false;\r\n }\r\n return true;\r\n}\r\n\r\nfunction isPlainObject(obj: unknown): obj is object {\r\n return typeof obj === \"object\" && obj !== null && Object.getPrototypeOf(obj) === Object.prototype;\r\n}\r\n\r\nfunction* getFlatEntries(obj: unknown, path = \"\"): Iterable<[string, SpanAttributeValue]> {\r\n if (isValidPrimitiveArray(obj)) {\r\n yield [path, obj];\r\n return;\r\n }\r\n\r\n // Prefer JSON serialization over flattening for any non-POJO types.\r\n // There's just too many ways trying to flatten those can go wrong (Dates, Buffers, TypedArrays, etc.)\r\n if (!isPlainObject(obj) && !Array.isArray(obj)) {\r\n yield [path, isValidPrimitive(obj) ? obj : JSON.stringify(obj)];\r\n return;\r\n }\r\n\r\n // Always serialize empty objects/arrays as empty array values\r\n const entries = Object.entries(obj);\r\n if (entries.length === 0)\r\n yield [path, []];\r\n\r\n for (const [key, val] of entries)\r\n yield* getFlatEntries(val, (path === \"\") ? key : `${path}.${key}`);\r\n}\r\n\r\nfunction flattenObject(obj: object): SpanAttributes {\r\n return Object.fromEntries(getFlatEntries(obj));\r\n}\r\n\r\n/* eslint-disable deprecation/deprecation -- lots of self-references here... */\r\n\r\n/**\r\n * Enables OpenTelemetry tracing in addition to traditional logging.\r\n * @public\r\n * @deprecated in 4.4 - OpenTelemetry Tracing helpers will become internal in a future release. Apps should use `@opentelemetry/api` directly.\r\n */\r\nexport class Tracing {\r\n private static _tracer?: Tracer;\r\n private static _openTelemetry?: { trace: Pick<TraceAPI, \"setSpan\" | \"setSpanContext\" | \"getSpan\">, context: Pick<ContextAPI, \"active\" | \"with\"> };\r\n\r\n /**\r\n * If OpenTelemetry tracing is enabled, creates a new span and runs the provided function in it.\r\n * If OpenTelemetry tracing is _not_ enabled, runs the provided function.\r\n * @param name name of the new span\r\n * @param fn function to run inside the new span\r\n * @param options span options\r\n * @param parentContext optional context used to retrieve parent span id\r\n */\r\n public static async withSpan<T>(name: string, fn: () => Promise<T>, options?: SpanOptions, parentContext?: SpanContext): Promise<T> {\r\n if (Tracing._tracer === undefined || Tracing._openTelemetry === undefined)\r\n return fn();\r\n\r\n // this case is for context propagation - parentContext is typically constructed from HTTP headers\r\n const parent = parentContext === undefined\r\n ? Tracing._openTelemetry.context.active()\r\n : Tracing._openTelemetry.trace.setSpanContext(Tracing._openTelemetry.context.active(), parentContext);\r\n\r\n return Tracing._openTelemetry.context.with(\r\n Tracing._openTelemetry.trace.setSpan(\r\n parent,\r\n Tracing._tracer.startSpan(name, options, Tracing._openTelemetry.context.active()),\r\n ),\r\n async () => {\r\n try {\r\n return await fn();\r\n } catch (err) {\r\n if (err instanceof Error) // ignore non-Error throws, such as RpcControlResponse\r\n Tracing._openTelemetry?.trace.getSpan(Tracing._openTelemetry.context.active())?.setAttribute(\"error\", true);\r\n throw err;\r\n } finally {\r\n Tracing._openTelemetry?.trace.getSpan(Tracing._openTelemetry.context.active())?.end();\r\n }\r\n },\r\n );\r\n }\r\n\r\n /**\r\n * Adds a span event describing a runtime exception, as advised in OpenTelemetry documentation\r\n * @param e error (exception) object\r\n */\r\n public static recordException(e: Error) {\r\n Tracing._openTelemetry?.trace.getSpan(Tracing._openTelemetry.context.active())?.recordException(e);\r\n }\r\n\r\n /**\r\n * Enable logging to OpenTelemetry. [[Tracing.withSpan]] will be enabled, all log entries will be attached to active span as span events.\r\n * [IModelHost.startup]($backend) will call this automatically if the `enableOpenTelemetry` option is enabled and it succeeds in requiring `@opentelemetry/api`.\r\n * @note Node.js OpenTelemetry SDK should be initialized by the user.\r\n */\r\n public static enableOpenTelemetry(tracer: Tracer, api: typeof Tracing._openTelemetry) {\r\n Tracing._tracer = tracer;\r\n Tracing._openTelemetry = api;\r\n Logger.logTrace = Tracing.withOpenTelemetry(LogLevel.Trace, Logger.logTrace.bind(Logger)).bind(Logger);\r\n Logger.logInfo = Tracing.withOpenTelemetry(LogLevel.Info, Logger.logInfo.bind(Logger)).bind(Logger);\r\n Logger.logWarning = Tracing.withOpenTelemetry(LogLevel.Warning, Logger.logWarning.bind(Logger)).bind(Logger);\r\n Logger.logError = Tracing.withOpenTelemetry(LogLevel.Error, Logger.logError.bind(Logger)).bind(Logger);\r\n }\r\n\r\n private static withOpenTelemetry(level: LogLevel, base: LogFunction, isError: boolean = false): LogFunction {\r\n return (category, message, metaData) => {\r\n const oTelContext = Tracing._openTelemetry?.context.active();\r\n if(Tracing._openTelemetry === undefined || oTelContext === undefined)\r\n return base(category, message, metaData);\r\n\r\n const serializedMetadata = Logger.getMetaData(metaData);\r\n if(Logger.isEnabled(category, level)) {\r\n try {\r\n Tracing._openTelemetry?.trace\r\n .getSpan(Tracing._openTelemetry.context.active())\r\n ?.addEvent(message, {\r\n ...flattenObject(serializedMetadata),\r\n error: isError,\r\n loggerCategory: category,\r\n });\r\n } catch (_e) { } // avoid throwing random errors (with stack trace mangled by async hooks) when openTelemetry collector doesn't work\r\n\r\n const spanContext = Tracing._openTelemetry.trace.getSpan(oTelContext)?.spanContext();\r\n base(category, message, {\r\n ...serializedMetadata,\r\n /* eslint-disable @typescript-eslint/naming-convention */\r\n trace_id: spanContext?.traceId,\r\n span_id: spanContext?.spanId,\r\n trace_flags: spanContext?.traceFlags,\r\n /* eslint-enable @typescript-eslint/naming-convention */\r\n });\r\n }\r\n };\r\n }\r\n\r\n /** Set attributes on currently active openTelemetry span. Doesn't do anything if openTelemetry logging is not initialized.\r\n * @param attributes The attributes to set\r\n */\r\n public static setAttributes(attributes: SpanAttributes) {\r\n Tracing._openTelemetry?.trace.getSpan(Tracing._openTelemetry.context.active())?.setAttributes(attributes);\r\n }\r\n}\r\n\r\n/* eslint-enable deprecation/deprecation */\r\n"]}
|
|
@@ -28,7 +28,6 @@ export declare class YieldManager {
|
|
|
28
28
|
constructor(options?: YieldManagerOptions);
|
|
29
29
|
/** Increment the iteration counter, yielding control and resetting the counter if [[options.iterationsBeforeYield]] is exceeded. */
|
|
30
30
|
allowYield(): Promise<void>;
|
|
31
|
-
|
|
32
|
-
protected actualYield(): Promise<void>;
|
|
31
|
+
private actualYield;
|
|
33
32
|
}
|
|
34
33
|
//# sourceMappingURL=YieldManager.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"YieldManager.d.ts","sourceRoot":"","sources":["../../src/YieldManager.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC;;OAEG;IACH,qBAAqB,CAAC,EAAE,MAAM,CAAC;CAChC;AAMD;;;;;;;GAOG;AACH,qBAAa,YAAY;IACvB,8CAA8C;IAC9C,SAAgB,OAAO,EAAE,QAAQ,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC,CAAC;IACjE,OAAO,CAAC,QAAQ,CAAK;IAErB;;OAEG;gBACgB,OAAO,GAAE,mBAAwB;IAIpD,oIAAoI;IACvH,UAAU;
|
|
1
|
+
{"version":3,"file":"YieldManager.d.ts","sourceRoot":"","sources":["../../src/YieldManager.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC;;OAEG;IACH,qBAAqB,CAAC,EAAE,MAAM,CAAC;CAChC;AAMD;;;;;;;GAOG;AACH,qBAAa,YAAY;IACvB,8CAA8C;IAC9C,SAAgB,OAAO,EAAE,QAAQ,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC,CAAC;IACjE,OAAO,CAAC,QAAQ,CAAK;IAErB;;OAEG;gBACgB,OAAO,GAAE,mBAAwB;IAIpD,oIAAoI;IACvH,UAAU;YAOT,WAAW;CAG1B"}
|
package/lib/cjs/YieldManager.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"YieldManager.js","sourceRoot":"","sources":["../../src/YieldManager.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAYH,MAAM,0BAA0B,GAAkC;IAChE,qBAAqB,EAAE,IAAI;CAC5B,CAAC;AAEF;;;;;;;GAOG;AACH,MAAa,YAAY;IAKvB;;OAEG;IACH,YAAmB,UAA+B,EAAE;QAL5C,aAAQ,GAAG,CAAC,CAAC;QAMnB,IAAI,CAAC,OAAO,GAAG,EAAE,GAAG,0BAA0B,EAAE,GAAG,OAAO,EAAE,CAAC;IAC/D,CAAC;IAED,oIAAoI;IAC7H,KAAK,CAAC,UAAU;QACrB,IAAI,CAAC,QAAQ,GAAG,CAAC,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,qBAAqB,CAAC;QACzE,IAAI,IAAI,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;YACxB,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QAC3B,CAAC;IACH,CAAC;
|
|
1
|
+
{"version":3,"file":"YieldManager.js","sourceRoot":"","sources":["../../src/YieldManager.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAYH,MAAM,0BAA0B,GAAkC;IAChE,qBAAqB,EAAE,IAAI;CAC5B,CAAC;AAEF;;;;;;;GAOG;AACH,MAAa,YAAY;IAKvB;;OAEG;IACH,YAAmB,UAA+B,EAAE;QAL5C,aAAQ,GAAG,CAAC,CAAC;QAMnB,IAAI,CAAC,OAAO,GAAG,EAAE,GAAG,0BAA0B,EAAE,GAAG,OAAO,EAAE,CAAC;IAC/D,CAAC;IAED,oIAAoI;IAC7H,KAAK,CAAC,UAAU;QACrB,IAAI,CAAC,QAAQ,GAAG,CAAC,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,qBAAqB,CAAC;QACzE,IAAI,IAAI,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;YACxB,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QAC3B,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,WAAW;QACvB,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAC7C,CAAC;CACF;AAvBD,oCAuBC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Utils\r\n */\r\n\r\n/** Options supplied to a [[YieldManager]].\r\n * @public\r\n */\r\nexport interface YieldManagerOptions {\r\n /** The number of times [[YieldManager.allowYield]] must be called to trigger an actual yield.\r\n * Default: 1000.\r\n */\r\n iterationsBeforeYield?: number;\r\n}\r\n\r\nconst defaultYieldManagerOptions: Required<YieldManagerOptions> = {\r\n iterationsBeforeYield: 1000,\r\n};\r\n\r\n/** Provides a mechanism by which a loop can be made to periodically yield control back to the browser/node environment.\r\n * This can alleviate [performance and memory consumption issues](https://github.com/nodejs/node-addon-api/issues/1140).\r\n * It maintains a count of the number of iterations that have occurred since the last yield.\r\n * The constructor specifies how many iterations of the loop are permitted before yielding.\r\n * The loop should `await` [[allowYield]] on each iteration.\r\n * [[allowYield]] will yield (and reset the iteration counter) if the counter exceeds the specified maximum.\r\n * @public\r\n */\r\nexport class YieldManager {\r\n /** Options controlling the yield behavior. */\r\n public readonly options: Readonly<Required<YieldManagerOptions>>;\r\n private _counter = 0;\r\n\r\n /** Constructor.\r\n * @param options Options customizing the yield behavior. Omitted properties are assigned their default values.\r\n */\r\n public constructor(options: YieldManagerOptions = {}) {\r\n this.options = { ...defaultYieldManagerOptions, ...options };\r\n }\r\n\r\n /** Increment the iteration counter, yielding control and resetting the counter if [[options.iterationsBeforeYield]] is exceeded. */\r\n public async allowYield() {\r\n this._counter = (this._counter + 1) % this.options.iterationsBeforeYield;\r\n if (this._counter === 0) {\r\n await this.actualYield();\r\n }\r\n }\r\n\r\n private async actualYield() {\r\n await new Promise((r) => setTimeout(r, 0));\r\n }\r\n}\r\n"]}
|
|
@@ -33,6 +33,7 @@ export * from "./TypedArrayBuilder";
|
|
|
33
33
|
export * from "./UnexpectedErrors";
|
|
34
34
|
export * from "./UtilityTypes";
|
|
35
35
|
export * from "./YieldManager";
|
|
36
|
+
export * from "./internal/cross-package";
|
|
36
37
|
/** @docs-package-description
|
|
37
38
|
* The core-bentley package contains classes to solve problems that are common for both client and server use cases.
|
|
38
39
|
*/
|