@itwin/core-common 3.0.0-dev.136 → 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.
Files changed (39) hide show
  1. package/lib/cjs/ConcurrentQuery.d.ts +2 -2
  2. package/lib/cjs/ConcurrentQuery.d.ts.map +1 -1
  3. package/lib/cjs/ConcurrentQuery.js +2 -2
  4. package/lib/cjs/ConcurrentQuery.js.map +1 -1
  5. package/lib/cjs/ECSqlTypes.d.ts +3 -3
  6. package/lib/cjs/ECSqlTypes.js +3 -3
  7. package/lib/cjs/ECSqlTypes.js.map +1 -1
  8. package/lib/cjs/core-common.d.ts +1 -0
  9. package/lib/cjs/core-common.d.ts.map +1 -1
  10. package/lib/cjs/core-common.js +1 -0
  11. package/lib/cjs/core-common.js.map +1 -1
  12. package/lib/cjs/ipc/IpcWebSocket.d.ts +12 -5
  13. package/lib/cjs/ipc/IpcWebSocket.d.ts.map +1 -1
  14. package/lib/cjs/ipc/IpcWebSocket.js +32 -8
  15. package/lib/cjs/ipc/IpcWebSocket.js.map +1 -1
  16. package/lib/cjs/ipc/IpcWebSocketTransport.d.ts +15 -0
  17. package/lib/cjs/ipc/IpcWebSocketTransport.d.ts.map +1 -0
  18. package/lib/cjs/ipc/IpcWebSocketTransport.js +136 -0
  19. package/lib/cjs/ipc/IpcWebSocketTransport.js.map +1 -0
  20. package/lib/esm/ConcurrentQuery.d.ts +2 -2
  21. package/lib/esm/ConcurrentQuery.d.ts.map +1 -1
  22. package/lib/esm/ConcurrentQuery.js +2 -2
  23. package/lib/esm/ConcurrentQuery.js.map +1 -1
  24. package/lib/esm/ECSqlTypes.d.ts +3 -3
  25. package/lib/esm/ECSqlTypes.js +3 -3
  26. package/lib/esm/ECSqlTypes.js.map +1 -1
  27. package/lib/esm/core-common.d.ts +1 -0
  28. package/lib/esm/core-common.d.ts.map +1 -1
  29. package/lib/esm/core-common.js +1 -0
  30. package/lib/esm/core-common.js.map +1 -1
  31. package/lib/esm/ipc/IpcWebSocket.d.ts +12 -5
  32. package/lib/esm/ipc/IpcWebSocket.d.ts.map +1 -1
  33. package/lib/esm/ipc/IpcWebSocket.js +31 -6
  34. package/lib/esm/ipc/IpcWebSocket.js.map +1 -1
  35. package/lib/esm/ipc/IpcWebSocketTransport.d.ts +15 -0
  36. package/lib/esm/ipc/IpcWebSocketTransport.d.ts.map +1 -0
  37. package/lib/esm/ipc/IpcWebSocketTransport.js +132 -0
  38. package/lib/esm/ipc/IpcWebSocketTransport.js.map +1 -0
  39. package/package.json +7 -7
@@ -8,7 +8,7 @@ import { Point2d, Point3d } from "@itwin/core-geometry";
8
8
  * [IModelConnection]($frontend), [IModelDb]($backend), and [ECDb]($backend).
9
9
  *
10
10
  * @public
11
- * */
11
+ */
12
12
  export declare enum QueryRowFormat {
13
13
  /** Each row is an object in which each non-null column value can be accessed by its name as defined in the ECSql.
14
14
  * Null values are omitted.
@@ -19,7 +19,7 @@ export declare enum QueryRowFormat {
19
19
  */
20
20
  UseECSqlPropertyIndexes = 1,
21
21
  /** Each row is an object in which each non-null column value can be accessed by a [remapped property name]($docs/learning/ECSqlRowFormat.md).
22
- * This format is backwards-compatible with the format produced by iModel.js version 2.x. Null values are omitted.
22
+ * This format is backwards-compatible with the format produced by iTwin.js 2.x. Null values are omitted.
23
23
  */
24
24
  UseJsPropertyNames = 2
25
25
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ConcurrentQuery.d.ts","sourceRoot":"","sources":["../../src/ConcurrentQuery.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ConcurrentQuery.d.ts","sourceRoot":"","sources":["../../src/ConcurrentQuery.ts"],"names":[],"mappings":"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"}
@@ -15,7 +15,7 @@ const core_geometry_1 = require("@itwin/core-geometry");
15
15
  * [IModelConnection]($frontend), [IModelDb]($backend), and [ECDb]($backend).
16
16
  *
17
17
  * @public
18
- * */
18
+ */
19
19
  var QueryRowFormat;
20
20
  (function (QueryRowFormat) {
21
21
  /** Each row is an object in which each non-null column value can be accessed by its name as defined in the ECSql.
@@ -27,7 +27,7 @@ var QueryRowFormat;
27
27
  */
28
28
  QueryRowFormat[QueryRowFormat["UseECSqlPropertyIndexes"] = 1] = "UseECSqlPropertyIndexes";
29
29
  /** Each row is an object in which each non-null column value can be accessed by a [remapped property name]($docs/learning/ECSqlRowFormat.md).
30
- * This format is backwards-compatible with the format produced by iModel.js version 2.x. Null values are omitted.
30
+ * This format is backwards-compatible with the format produced by iTwin.js 2.x. Null values are omitted.
31
31
  */
32
32
  QueryRowFormat[QueryRowFormat["UseJsPropertyNames"] = 2] = "UseJsPropertyNames";
33
33
  })(QueryRowFormat = exports.QueryRowFormat || (exports.QueryRowFormat = {}));
@@ -1 +1 @@
1
- {"version":3,"file":"ConcurrentQuery.js","sourceRoot":"","sources":["../../src/ConcurrentQuery.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 iModels\r\n */\r\nimport { BentleyError, CompressedId64Set, DbResult, Id64, Id64String, OrderedId64Iterable } from \"@itwin/core-bentley\";\r\nimport { Point2d, Point3d } from \"@itwin/core-geometry\";\r\n\r\n/**\r\n * Specifies the format of the rows returned by the `query` and `restartQuery` methods of\r\n * [IModelConnection]($frontend), [IModelDb]($backend), and [ECDb]($backend).\r\n *\r\n * @public\r\n * */\r\nexport enum QueryRowFormat {\r\n /** Each row is an object in which each non-null column value can be accessed by its name as defined in the ECSql.\r\n * Null values are omitted.\r\n */\r\n UseECSqlPropertyNames,\r\n /** Each row is an array of values accessed by an index corresponding to the property's position in the ECSql SELECT statement.\r\n * Null values are included if they are followed by a non-null column, but trailing null values at the end of the array are omitted.\r\n */\r\n UseECSqlPropertyIndexes,\r\n /** Each row is an object in which each non-null column value can be accessed by a [remapped property name]($docs/learning/ECSqlRowFormat.md).\r\n * This format is backwards-compatible with the format produced by iModel.js version 2.x. Null values are omitted.\r\n */\r\n UseJsPropertyNames,\r\n}\r\n/**\r\n * Specify limit or range of rows to return\r\n * @public\r\n * */\r\nexport interface QueryLimit {\r\n /** Number of rows to return */\r\n count?: number;\r\n /** Offset from which to return rows */\r\n offset?: number;\r\n}\r\n/** @beta */\r\nexport interface QueryPropertyMetaData {\r\n className: string;\r\n generated: boolean;\r\n index: number;\r\n jsonName: string;\r\n name: string;\r\n extendType: string;\r\n typeName: string;\r\n}\r\n/** @beta */\r\nexport interface DbRuntimeStats {\r\n cpuTime: number;\r\n totalTime: number;\r\n timeLimit: number;\r\n memLimit: number;\r\n memUsed: number;\r\n}\r\n/**\r\n * Quota hint for the query.\r\n * @public\r\n * */\r\nexport interface QueryQuota {\r\n /** Max time allowed in seconds. This is hint and may not be honoured but help in prioritize request */\r\n time?: number;\r\n /** Max memory allowed in bytes. This is hint and may not be honoured but help in prioritize request */\r\n memory?: number;\r\n}\r\n/**\r\n * Config for all request made to concurrent query engine.\r\n * @public\r\n * */\r\nexport interface BaseReaderOptions {\r\n /** Determine priority of this query default to 0, used as hint and can be overriden by backend. */\r\n priority?: number;\r\n /** If specified cancel last query (if any) with same restart token and queue the new query */\r\n restartToken?: string;\r\n /** For editing apps this can be set to true and all query will run on primary connection\r\n * his may cause slow queries execution but the most recent data changes will be visitable via query\r\n */\r\n usePrimaryConn?: boolean;\r\n /** Restrict time or memory for query but use as hint and may be changed base on backend settings */\r\n quota?: QueryQuota;\r\n}\r\n/**\r\n * ECSql query config\r\n * @public\r\n * */\r\nexport interface QueryOptions extends BaseReaderOptions {\r\n /**\r\n * default to false. It abbreviate blobs to single bytes. This help cases where wildcard is\r\n * used in select clause. Use BlobReader api to read individual blob specially if its of large size.\r\n * */\r\n abbreviateBlobs?: boolean;\r\n /**\r\n * default to false. It will suppress error and will not log it. Useful in cases where we expect query\r\n * can fail.\r\n */\r\n suppressLogErrors?: boolean;\r\n /** This is used internally. If true it query will return meta data about query. */\r\n includeMetaData?: boolean;\r\n /** Limit range of rows returned by query*/\r\n limit?: QueryLimit;\r\n /**\r\n * Convert ECClassId, SourceECClassId, TargetECClassId and RelClassId to respective name.\r\n * When true, XXXXClassId property will be returned as className.\r\n * */\r\n convertClassIdsToClassNames?: boolean;\r\n /**\r\n * Determine row format.\r\n */\r\n rowFormat?: QueryRowFormat;\r\n}\r\n/** @beta */\r\nexport type BlobRange = QueryLimit;\r\n\r\n/** @beta */\r\nexport interface BlobOptions extends BaseReaderOptions {\r\n range?: BlobRange;\r\n}\r\n\r\n/** @public */\r\nexport class QueryOptionsBuilder {\r\n public constructor(private _options: QueryOptions = {}) { }\r\n public getOptions(): QueryOptions { return this._options; }\r\n public setPriority(val: number) { this._options.priority = val; return this; }\r\n public setRestartToken(val: string) { this._options.restartToken = val; return this; }\r\n public setQuota(val: QueryQuota) { this._options.quota = val; return this; }\r\n public setUsePrimaryConnection(val: boolean) { this._options.usePrimaryConn = val; return this; }\r\n public setAbbreviateBlobs(val: boolean) { this._options.abbreviateBlobs = val; return this; }\r\n public setSuppressLogErrors(val: boolean) { this._options.suppressLogErrors = val; return this; }\r\n public setConvertClassIdsToNames(val: boolean) { this._options.convertClassIdsToClassNames = val; return this; }\r\n public setLimit(val: QueryLimit) { this._options.limit = val; return this; }\r\n public setRowFormat(val: QueryRowFormat){ this._options.rowFormat = val; return this; }\r\n}\r\n/** @beta */\r\nexport class BlobOptionsBuilder {\r\n public constructor(private _options: BlobOptions = {}) { }\r\n public getOptions(): BlobOptions { return this._options; }\r\n public setPriority(val: number) { this._options.priority = val; return this; }\r\n public setRestartToken(val: string) { this._options.restartToken = val; return this; }\r\n public setQuota(val: QueryQuota) { this._options.quota = val; return this; }\r\n public setUsePrimaryConnection(val: boolean) { this._options.usePrimaryConn = val; return this; }\r\n public setRange(val: BlobRange) { this._options.range = val; return this; }\r\n}\r\n/** @internal */\r\nenum QueryParamType {\r\n Boolean = 0,\r\n Double = 1,\r\n Id = 2,\r\n IdSet = 3,\r\n Integer = 4,\r\n Long = 5,\r\n Null = 6,\r\n // eslint-disable-next-line @typescript-eslint/no-shadow\r\n Point2d = 7,\r\n // eslint-disable-next-line @typescript-eslint/no-shadow\r\n Point3d = 8,\r\n String = 9,\r\n Blob = 10,\r\n Struct = 11,\r\n}\r\n/** @public */\r\nexport class QueryBinder {\r\n private _args = {};\r\n private verify(indexOrName: string | number) {\r\n if (typeof indexOrName === \"number\") {\r\n if (indexOrName < 1)\r\n throw new Error(\"expect index to be >= 1\");\r\n }\r\n if (typeof indexOrName === \"string\") {\r\n if (!/^[a-zA-Z_]+\\w*$/i.test(indexOrName)) {\r\n throw new Error(\"expect named parameter to meet identifier specification\");\r\n }\r\n }\r\n }\r\n public bindBoolean(indexOrName: string | number, val: boolean) {\r\n this.verify(indexOrName);\r\n const name = String(indexOrName);\r\n Object.defineProperty(this._args, name, {\r\n enumerable: true,\r\n value: {\r\n type: QueryParamType.Boolean,\r\n value: val,\r\n },\r\n });\r\n return this;\r\n }\r\n public bindBlob(indexOrName: string | number, val: Uint8Array) {\r\n this.verify(indexOrName);\r\n const name = String(indexOrName);\r\n const base64 = Buffer.from(val).toString(\"base64\");\r\n Object.defineProperty(this._args, name, {\r\n enumerable: true, value: {\r\n type: QueryParamType.Blob,\r\n value: base64,\r\n },\r\n });\r\n return this;\r\n }\r\n public bindDouble(indexOrName: string | number, val: number) {\r\n this.verify(indexOrName);\r\n const name = String(indexOrName);\r\n Object.defineProperty(this._args, name, {\r\n enumerable: true, value: {\r\n type: QueryParamType.Double,\r\n value: val,\r\n },\r\n });\r\n return this;\r\n }\r\n public bindId(indexOrName: string | number, val: Id64String) {\r\n this.verify(indexOrName);\r\n const name = String(indexOrName);\r\n Object.defineProperty(this._args, name, {\r\n enumerable: true, value: {\r\n type: QueryParamType.Id,\r\n value: val,\r\n },\r\n });\r\n return this;\r\n }\r\n public bindIdSet(indexOrName: string | number, val: OrderedId64Iterable) {\r\n this.verify(indexOrName);\r\n const name = String(indexOrName);\r\n OrderedId64Iterable.uniqueIterator(val);\r\n Object.defineProperty(this._args, name, {\r\n enumerable: true, value: {\r\n type: QueryParamType.IdSet,\r\n value: CompressedId64Set.sortAndCompress(OrderedId64Iterable.uniqueIterator(val)),\r\n },\r\n });\r\n return this;\r\n }\r\n public bindInt(indexOrName: string | number, val: number) {\r\n this.verify(indexOrName);\r\n const name = String(indexOrName);\r\n Object.defineProperty(this._args, name, {\r\n enumerable: true, value: {\r\n type: QueryParamType.Integer,\r\n value: val,\r\n },\r\n });\r\n return this;\r\n }\r\n public bindStruct(indexOrName: string | number, val: object) {\r\n this.verify(indexOrName);\r\n const name = String(indexOrName);\r\n Object.defineProperty(this._args, name, {\r\n enumerable: true, value: {\r\n type: QueryParamType.Struct,\r\n value: val,\r\n },\r\n });\r\n return this;\r\n }\r\n public bindLong(indexOrName: string | number, val: number) {\r\n this.verify(indexOrName);\r\n const name = String(indexOrName);\r\n Object.defineProperty(this._args, name, {\r\n enumerable: true, value: {\r\n type: QueryParamType.Long,\r\n value: val,\r\n },\r\n });\r\n return this;\r\n }\r\n public bindString(indexOrName: string | number, val: string) {\r\n this.verify(indexOrName);\r\n const name = String(indexOrName);\r\n Object.defineProperty(this._args, name, {\r\n enumerable: true, value: {\r\n type: QueryParamType.String,\r\n value: val,\r\n },\r\n });\r\n return this;\r\n }\r\n public bindNull(indexOrName: string | number) {\r\n this.verify(indexOrName);\r\n const name = String(indexOrName);\r\n Object.defineProperty(this._args, name, {\r\n enumerable: true, value: {\r\n type: QueryParamType.Null,\r\n value: null,\r\n },\r\n });\r\n return this;\r\n }\r\n public bindPoint2d(indexOrName: string | number, val: Point2d) {\r\n this.verify(indexOrName);\r\n const name = String(indexOrName);\r\n Object.defineProperty(this._args, name, {\r\n enumerable: true, value: {\r\n type: QueryParamType.Point2d,\r\n value: val,\r\n },\r\n });\r\n return this;\r\n }\r\n public bindPoint3d(indexOrName: string | number, val: Point3d) {\r\n this.verify(indexOrName);\r\n const name = String(indexOrName);\r\n Object.defineProperty(this._args, name, {\r\n enumerable: true, value: {\r\n type: QueryParamType.Point3d,\r\n value: val,\r\n },\r\n });\r\n return this;\r\n }\r\n private static bind(params: QueryBinder, nameOrId: string | number, val: any) {\r\n if (typeof val === \"boolean\") {\r\n params.bindBoolean(nameOrId, val);\r\n } else if (typeof val === \"number\") {\r\n params.bindDouble(nameOrId, val);\r\n } else if (typeof val === \"string\") {\r\n params.bindString(nameOrId, val);\r\n } else if (val instanceof Uint8Array) {\r\n params.bindBlob(nameOrId, val);\r\n } else if (val instanceof Point2d) {\r\n params.bindPoint2d(nameOrId, val);\r\n } else if (val instanceof Point3d) {\r\n params.bindPoint3d(nameOrId, val);\r\n } else if (val instanceof Array && val.length > 0 && typeof val[0] === \"string\" && Id64.isValidId64(val[0])) {\r\n params.bindIdSet(nameOrId, val);\r\n } else if (typeof val === \"object\" && !Array.isArray(val)) {\r\n params.bindStruct(nameOrId, val);\r\n } else if (typeof val === \"undefined\" || val === null) {\r\n params.bindNull(nameOrId);\r\n } else {\r\n throw new Error(\"unsupported type\");\r\n }\r\n }\r\n public static from(args: any[] | object | undefined): QueryBinder {\r\n const params = new QueryBinder();\r\n if (typeof args === \"undefined\")\r\n return params;\r\n\r\n if (Array.isArray(args)) {\r\n let i = 1;\r\n for (const val of args) {\r\n this.bind(params, i++, val);\r\n }\r\n } else {\r\n for (const prop of Object.getOwnPropertyNames(args)) {\r\n this.bind(params, prop, (args as any)[prop]);\r\n }\r\n }\r\n return params;\r\n }\r\n public serialize(): object { return this._args; }\r\n}\r\n\r\n/** @internal */\r\nexport enum DbRequestKind {\r\n BlobIO = 0,\r\n ECSql = 1\r\n}\r\n/** @internal */\r\nexport enum DbResponseKind {\r\n BlobIO = DbRequestKind.BlobIO,\r\n ECSql = DbRequestKind.ECSql,\r\n NoResult = 2\r\n}\r\n/** @internal */\r\nexport enum DbResponseStatus {\r\n Done = 1, /* query ran to completion. */\r\n Cancel = 2, /* Requested by user.*/\r\n Partial = 3, /* query was running but ran out of quota.*/\r\n Timeout = 4, /* query time quota expired while it was in queue.*/\r\n QueueFull = 5, /* could not submit the query as queue was full.*/\r\n Error = 100, /* generic error*/\r\n Error_ECSql_PreparedFailed = Error + 1, /* ecsql prepared failed*/\r\n Error_ECSql_StepFailed = Error + 2, /* ecsql step failed*/\r\n Error_ECSql_RowToJsonFailed = Error + 3, /* ecsql failed to serialized row to json.*/\r\n Error_ECSql_BindingFailed = Error + 4, /* ecsql binding failed.*/\r\n Error_BlobIO_OpenFailed = Error + 5, /* class or property or instance specified was not found or property as not of type blob.*/\r\n Error_BlobIO_OutOfRange = Error + 6, /* range specified is invalid based on size of blob.*/\r\n}\r\n/** @internal */\r\nexport enum DbValueFormat {\r\n ECSqlNames = 0,\r\n JsNames = 1\r\n}\r\n/** @internal */\r\nexport interface DbRequest extends BaseReaderOptions {\r\n kind?: DbRequestKind;\r\n}\r\n/** @internal */\r\nexport interface DbQueryRequest extends DbRequest, QueryOptions {\r\n valueFormat?: DbValueFormat;\r\n query: string;\r\n args?: object;\r\n}\r\n/** @internal */\r\nexport interface DbBlobRequest extends DbRequest, BlobOptions {\r\n className: string;\r\n accessString: string;\r\n instanceId: Id64String;\r\n}\r\n/** @internal */\r\nexport interface DbResponse {\r\n stats: DbRuntimeStats;\r\n status: DbResponseStatus;\r\n kind: DbResponseKind;\r\n error?: string;\r\n}\r\n/** @internal */\r\nexport interface DbQueryResponse extends DbResponse {\r\n meta: QueryPropertyMetaData[];\r\n data: any[];\r\n rowCount: number;\r\n}\r\n/** @internal */\r\nexport interface DbBlobResponse extends DbResponse {\r\n data?: Uint8Array;\r\n rawBlobSize: number;\r\n}\r\n/** @public */\r\nexport class DbQueryError extends BentleyError {\r\n public constructor(public readonly response: any, public readonly request?: any, rc?: DbResult) {\r\n super(rc ?? DbResult.BE_SQLITE_ERROR, response.error, { response, request });\r\n }\r\n public static throwIfError(response: any, request?: any) {\r\n if ((response.status as number) >= (DbResponseStatus.Error as number)) {\r\n throw new DbQueryError(response, request);\r\n }\r\n if (response.status === DbResponseStatus.Cancel) {\r\n throw new DbQueryError(response, request, DbResult.BE_SQLITE_INTERRUPT);\r\n }\r\n }\r\n}\r\n/** @internal */\r\nexport interface DbRequestExecutor<TRequest extends DbRequest, TResponse extends DbResponse> {\r\n execute(request: TRequest): Promise<TResponse>;\r\n}\r\n"]}
1
+ {"version":3,"file":"ConcurrentQuery.js","sourceRoot":"","sources":["../../src/ConcurrentQuery.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 iModels\r\n */\r\nimport { BentleyError, CompressedId64Set, DbResult, Id64, Id64String, OrderedId64Iterable } from \"@itwin/core-bentley\";\r\nimport { Point2d, Point3d } from \"@itwin/core-geometry\";\r\n\r\n/**\r\n * Specifies the format of the rows returned by the `query` and `restartQuery` methods of\r\n * [IModelConnection]($frontend), [IModelDb]($backend), and [ECDb]($backend).\r\n *\r\n * @public\r\n */\r\nexport enum QueryRowFormat {\r\n /** Each row is an object in which each non-null column value can be accessed by its name as defined in the ECSql.\r\n * Null values are omitted.\r\n */\r\n UseECSqlPropertyNames,\r\n /** Each row is an array of values accessed by an index corresponding to the property's position in the ECSql SELECT statement.\r\n * Null values are included if they are followed by a non-null column, but trailing null values at the end of the array are omitted.\r\n */\r\n UseECSqlPropertyIndexes,\r\n /** Each row is an object in which each non-null column value can be accessed by a [remapped property name]($docs/learning/ECSqlRowFormat.md).\r\n * This format is backwards-compatible with the format produced by iTwin.js 2.x. Null values are omitted.\r\n */\r\n UseJsPropertyNames,\r\n}\r\n/**\r\n * Specify limit or range of rows to return\r\n * @public\r\n * */\r\nexport interface QueryLimit {\r\n /** Number of rows to return */\r\n count?: number;\r\n /** Offset from which to return rows */\r\n offset?: number;\r\n}\r\n/** @beta */\r\nexport interface QueryPropertyMetaData {\r\n className: string;\r\n generated: boolean;\r\n index: number;\r\n jsonName: string;\r\n name: string;\r\n extendType: string;\r\n typeName: string;\r\n}\r\n/** @beta */\r\nexport interface DbRuntimeStats {\r\n cpuTime: number;\r\n totalTime: number;\r\n timeLimit: number;\r\n memLimit: number;\r\n memUsed: number;\r\n}\r\n/**\r\n * Quota hint for the query.\r\n * @public\r\n * */\r\nexport interface QueryQuota {\r\n /** Max time allowed in seconds. This is hint and may not be honoured but help in prioritize request */\r\n time?: number;\r\n /** Max memory allowed in bytes. This is hint and may not be honoured but help in prioritize request */\r\n memory?: number;\r\n}\r\n/**\r\n * Config for all request made to concurrent query engine.\r\n * @public\r\n * */\r\nexport interface BaseReaderOptions {\r\n /** Determine priority of this query default to 0, used as hint and can be overriden by backend. */\r\n priority?: number;\r\n /** If specified cancel last query (if any) with same restart token and queue the new query */\r\n restartToken?: string;\r\n /** For editing apps this can be set to true and all query will run on primary connection\r\n * his may cause slow queries execution but the most recent data changes will be visitable via query\r\n */\r\n usePrimaryConn?: boolean;\r\n /** Restrict time or memory for query but use as hint and may be changed base on backend settings */\r\n quota?: QueryQuota;\r\n}\r\n/**\r\n * ECSql query config\r\n * @public\r\n * */\r\nexport interface QueryOptions extends BaseReaderOptions {\r\n /**\r\n * default to false. It abbreviate blobs to single bytes. This help cases where wildcard is\r\n * used in select clause. Use BlobReader api to read individual blob specially if its of large size.\r\n * */\r\n abbreviateBlobs?: boolean;\r\n /**\r\n * default to false. It will suppress error and will not log it. Useful in cases where we expect query\r\n * can fail.\r\n */\r\n suppressLogErrors?: boolean;\r\n /** This is used internally. If true it query will return meta data about query. */\r\n includeMetaData?: boolean;\r\n /** Limit range of rows returned by query*/\r\n limit?: QueryLimit;\r\n /**\r\n * Convert ECClassId, SourceECClassId, TargetECClassId and RelClassId to respective name.\r\n * When true, XXXXClassId property will be returned as className.\r\n * */\r\n convertClassIdsToClassNames?: boolean;\r\n /**\r\n * Determine row format.\r\n */\r\n rowFormat?: QueryRowFormat;\r\n}\r\n/** @beta */\r\nexport type BlobRange = QueryLimit;\r\n\r\n/** @beta */\r\nexport interface BlobOptions extends BaseReaderOptions {\r\n range?: BlobRange;\r\n}\r\n\r\n/** @public */\r\nexport class QueryOptionsBuilder {\r\n public constructor(private _options: QueryOptions = {}) { }\r\n public getOptions(): QueryOptions { return this._options; }\r\n public setPriority(val: number) { this._options.priority = val; return this; }\r\n public setRestartToken(val: string) { this._options.restartToken = val; return this; }\r\n public setQuota(val: QueryQuota) { this._options.quota = val; return this; }\r\n public setUsePrimaryConnection(val: boolean) { this._options.usePrimaryConn = val; return this; }\r\n public setAbbreviateBlobs(val: boolean) { this._options.abbreviateBlobs = val; return this; }\r\n public setSuppressLogErrors(val: boolean) { this._options.suppressLogErrors = val; return this; }\r\n public setConvertClassIdsToNames(val: boolean) { this._options.convertClassIdsToClassNames = val; return this; }\r\n public setLimit(val: QueryLimit) { this._options.limit = val; return this; }\r\n public setRowFormat(val: QueryRowFormat){ this._options.rowFormat = val; return this; }\r\n}\r\n/** @beta */\r\nexport class BlobOptionsBuilder {\r\n public constructor(private _options: BlobOptions = {}) { }\r\n public getOptions(): BlobOptions { return this._options; }\r\n public setPriority(val: number) { this._options.priority = val; return this; }\r\n public setRestartToken(val: string) { this._options.restartToken = val; return this; }\r\n public setQuota(val: QueryQuota) { this._options.quota = val; return this; }\r\n public setUsePrimaryConnection(val: boolean) { this._options.usePrimaryConn = val; return this; }\r\n public setRange(val: BlobRange) { this._options.range = val; return this; }\r\n}\r\n/** @internal */\r\nenum QueryParamType {\r\n Boolean = 0,\r\n Double = 1,\r\n Id = 2,\r\n IdSet = 3,\r\n Integer = 4,\r\n Long = 5,\r\n Null = 6,\r\n // eslint-disable-next-line @typescript-eslint/no-shadow\r\n Point2d = 7,\r\n // eslint-disable-next-line @typescript-eslint/no-shadow\r\n Point3d = 8,\r\n String = 9,\r\n Blob = 10,\r\n Struct = 11,\r\n}\r\n/** @public */\r\nexport class QueryBinder {\r\n private _args = {};\r\n private verify(indexOrName: string | number) {\r\n if (typeof indexOrName === \"number\") {\r\n if (indexOrName < 1)\r\n throw new Error(\"expect index to be >= 1\");\r\n }\r\n if (typeof indexOrName === \"string\") {\r\n if (!/^[a-zA-Z_]+\\w*$/i.test(indexOrName)) {\r\n throw new Error(\"expect named parameter to meet identifier specification\");\r\n }\r\n }\r\n }\r\n public bindBoolean(indexOrName: string | number, val: boolean) {\r\n this.verify(indexOrName);\r\n const name = String(indexOrName);\r\n Object.defineProperty(this._args, name, {\r\n enumerable: true,\r\n value: {\r\n type: QueryParamType.Boolean,\r\n value: val,\r\n },\r\n });\r\n return this;\r\n }\r\n public bindBlob(indexOrName: string | number, val: Uint8Array) {\r\n this.verify(indexOrName);\r\n const name = String(indexOrName);\r\n const base64 = Buffer.from(val).toString(\"base64\");\r\n Object.defineProperty(this._args, name, {\r\n enumerable: true, value: {\r\n type: QueryParamType.Blob,\r\n value: base64,\r\n },\r\n });\r\n return this;\r\n }\r\n public bindDouble(indexOrName: string | number, val: number) {\r\n this.verify(indexOrName);\r\n const name = String(indexOrName);\r\n Object.defineProperty(this._args, name, {\r\n enumerable: true, value: {\r\n type: QueryParamType.Double,\r\n value: val,\r\n },\r\n });\r\n return this;\r\n }\r\n public bindId(indexOrName: string | number, val: Id64String) {\r\n this.verify(indexOrName);\r\n const name = String(indexOrName);\r\n Object.defineProperty(this._args, name, {\r\n enumerable: true, value: {\r\n type: QueryParamType.Id,\r\n value: val,\r\n },\r\n });\r\n return this;\r\n }\r\n public bindIdSet(indexOrName: string | number, val: OrderedId64Iterable) {\r\n this.verify(indexOrName);\r\n const name = String(indexOrName);\r\n OrderedId64Iterable.uniqueIterator(val);\r\n Object.defineProperty(this._args, name, {\r\n enumerable: true, value: {\r\n type: QueryParamType.IdSet,\r\n value: CompressedId64Set.sortAndCompress(OrderedId64Iterable.uniqueIterator(val)),\r\n },\r\n });\r\n return this;\r\n }\r\n public bindInt(indexOrName: string | number, val: number) {\r\n this.verify(indexOrName);\r\n const name = String(indexOrName);\r\n Object.defineProperty(this._args, name, {\r\n enumerable: true, value: {\r\n type: QueryParamType.Integer,\r\n value: val,\r\n },\r\n });\r\n return this;\r\n }\r\n public bindStruct(indexOrName: string | number, val: object) {\r\n this.verify(indexOrName);\r\n const name = String(indexOrName);\r\n Object.defineProperty(this._args, name, {\r\n enumerable: true, value: {\r\n type: QueryParamType.Struct,\r\n value: val,\r\n },\r\n });\r\n return this;\r\n }\r\n public bindLong(indexOrName: string | number, val: number) {\r\n this.verify(indexOrName);\r\n const name = String(indexOrName);\r\n Object.defineProperty(this._args, name, {\r\n enumerable: true, value: {\r\n type: QueryParamType.Long,\r\n value: val,\r\n },\r\n });\r\n return this;\r\n }\r\n public bindString(indexOrName: string | number, val: string) {\r\n this.verify(indexOrName);\r\n const name = String(indexOrName);\r\n Object.defineProperty(this._args, name, {\r\n enumerable: true, value: {\r\n type: QueryParamType.String,\r\n value: val,\r\n },\r\n });\r\n return this;\r\n }\r\n public bindNull(indexOrName: string | number) {\r\n this.verify(indexOrName);\r\n const name = String(indexOrName);\r\n Object.defineProperty(this._args, name, {\r\n enumerable: true, value: {\r\n type: QueryParamType.Null,\r\n value: null,\r\n },\r\n });\r\n return this;\r\n }\r\n public bindPoint2d(indexOrName: string | number, val: Point2d) {\r\n this.verify(indexOrName);\r\n const name = String(indexOrName);\r\n Object.defineProperty(this._args, name, {\r\n enumerable: true, value: {\r\n type: QueryParamType.Point2d,\r\n value: val,\r\n },\r\n });\r\n return this;\r\n }\r\n public bindPoint3d(indexOrName: string | number, val: Point3d) {\r\n this.verify(indexOrName);\r\n const name = String(indexOrName);\r\n Object.defineProperty(this._args, name, {\r\n enumerable: true, value: {\r\n type: QueryParamType.Point3d,\r\n value: val,\r\n },\r\n });\r\n return this;\r\n }\r\n private static bind(params: QueryBinder, nameOrId: string | number, val: any) {\r\n if (typeof val === \"boolean\") {\r\n params.bindBoolean(nameOrId, val);\r\n } else if (typeof val === \"number\") {\r\n params.bindDouble(nameOrId, val);\r\n } else if (typeof val === \"string\") {\r\n params.bindString(nameOrId, val);\r\n } else if (val instanceof Uint8Array) {\r\n params.bindBlob(nameOrId, val);\r\n } else if (val instanceof Point2d) {\r\n params.bindPoint2d(nameOrId, val);\r\n } else if (val instanceof Point3d) {\r\n params.bindPoint3d(nameOrId, val);\r\n } else if (val instanceof Array && val.length > 0 && typeof val[0] === \"string\" && Id64.isValidId64(val[0])) {\r\n params.bindIdSet(nameOrId, val);\r\n } else if (typeof val === \"object\" && !Array.isArray(val)) {\r\n params.bindStruct(nameOrId, val);\r\n } else if (typeof val === \"undefined\" || val === null) {\r\n params.bindNull(nameOrId);\r\n } else {\r\n throw new Error(\"unsupported type\");\r\n }\r\n }\r\n public static from(args: any[] | object | undefined): QueryBinder {\r\n const params = new QueryBinder();\r\n if (typeof args === \"undefined\")\r\n return params;\r\n\r\n if (Array.isArray(args)) {\r\n let i = 1;\r\n for (const val of args) {\r\n this.bind(params, i++, val);\r\n }\r\n } else {\r\n for (const prop of Object.getOwnPropertyNames(args)) {\r\n this.bind(params, prop, (args as any)[prop]);\r\n }\r\n }\r\n return params;\r\n }\r\n public serialize(): object { return this._args; }\r\n}\r\n\r\n/** @internal */\r\nexport enum DbRequestKind {\r\n BlobIO = 0,\r\n ECSql = 1\r\n}\r\n/** @internal */\r\nexport enum DbResponseKind {\r\n BlobIO = DbRequestKind.BlobIO,\r\n ECSql = DbRequestKind.ECSql,\r\n NoResult = 2\r\n}\r\n/** @internal */\r\nexport enum DbResponseStatus {\r\n Done = 1, /* query ran to completion. */\r\n Cancel = 2, /* Requested by user.*/\r\n Partial = 3, /* query was running but ran out of quota.*/\r\n Timeout = 4, /* query time quota expired while it was in queue.*/\r\n QueueFull = 5, /* could not submit the query as queue was full.*/\r\n Error = 100, /* generic error*/\r\n Error_ECSql_PreparedFailed = Error + 1, /* ecsql prepared failed*/\r\n Error_ECSql_StepFailed = Error + 2, /* ecsql step failed*/\r\n Error_ECSql_RowToJsonFailed = Error + 3, /* ecsql failed to serialized row to json.*/\r\n Error_ECSql_BindingFailed = Error + 4, /* ecsql binding failed.*/\r\n Error_BlobIO_OpenFailed = Error + 5, /* class or property or instance specified was not found or property as not of type blob.*/\r\n Error_BlobIO_OutOfRange = Error + 6, /* range specified is invalid based on size of blob.*/\r\n}\r\n/** @internal */\r\nexport enum DbValueFormat {\r\n ECSqlNames = 0,\r\n JsNames = 1\r\n}\r\n/** @internal */\r\nexport interface DbRequest extends BaseReaderOptions {\r\n kind?: DbRequestKind;\r\n}\r\n/** @internal */\r\nexport interface DbQueryRequest extends DbRequest, QueryOptions {\r\n valueFormat?: DbValueFormat;\r\n query: string;\r\n args?: object;\r\n}\r\n/** @internal */\r\nexport interface DbBlobRequest extends DbRequest, BlobOptions {\r\n className: string;\r\n accessString: string;\r\n instanceId: Id64String;\r\n}\r\n/** @internal */\r\nexport interface DbResponse {\r\n stats: DbRuntimeStats;\r\n status: DbResponseStatus;\r\n kind: DbResponseKind;\r\n error?: string;\r\n}\r\n/** @internal */\r\nexport interface DbQueryResponse extends DbResponse {\r\n meta: QueryPropertyMetaData[];\r\n data: any[];\r\n rowCount: number;\r\n}\r\n/** @internal */\r\nexport interface DbBlobResponse extends DbResponse {\r\n data?: Uint8Array;\r\n rawBlobSize: number;\r\n}\r\n/** @public */\r\nexport class DbQueryError extends BentleyError {\r\n public constructor(public readonly response: any, public readonly request?: any, rc?: DbResult) {\r\n super(rc ?? DbResult.BE_SQLITE_ERROR, response.error, { response, request });\r\n }\r\n public static throwIfError(response: any, request?: any) {\r\n if ((response.status as number) >= (DbResponseStatus.Error as number)) {\r\n throw new DbQueryError(response, request);\r\n }\r\n if (response.status === DbResponseStatus.Cancel) {\r\n throw new DbQueryError(response, request, DbResult.BE_SQLITE_INTERRUPT);\r\n }\r\n }\r\n}\r\n/** @internal */\r\nexport interface DbRequestExecutor<TRequest extends DbRequest, TResponse extends DbResponse> {\r\n execute(request: TRequest): Promise<TResponse>;\r\n}\r\n"]}
@@ -94,12 +94,12 @@ export declare enum ECSqlSystemProperty {
94
94
  PointY = 9,
95
95
  PointZ = 10
96
96
  }
97
- /** Utility to format ECProperty names according to the iModel.js formatting rules.
97
+ /** Utility to format ECProperty names according to the iTwin.js formatting rules.
98
98
  * See also [ECSQL Row Format]($docs/learning/ECSQLRowFormat).
99
99
  * @public
100
100
  */
101
101
  export declare class ECJsNames {
102
- /** Formats the specified ECProperty name according to the iModel.js formatting rules.
102
+ /** Formats the specified ECProperty name according to the iTwin.js formatting rules.
103
103
  *
104
104
  * See [ECSQL Row Format]($docs/learning/ECSQLRowFormat) which describes the formatting rules.
105
105
  *
@@ -112,7 +112,7 @@ export declare class ECJsNames {
112
112
  */
113
113
  static toJsName(propName: string, isSystemProperty?: boolean): string;
114
114
  /** Returns the name of the specified ECSQL system property according to the
115
- * iModel.js formatting rules.
115
+ * iTwin.js formatting rules.
116
116
  *
117
117
  * See [ECSQL Row Format]($docs/learning/ECSQLRowFormat) which describes the formatting rules.
118
118
  * @param systemPropertyType System property type
@@ -80,12 +80,12 @@ var ECSqlSystemProperty;
80
80
  ECSqlSystemProperty[ECSqlSystemProperty["PointY"] = 9] = "PointY";
81
81
  ECSqlSystemProperty[ECSqlSystemProperty["PointZ"] = 10] = "PointZ";
82
82
  })(ECSqlSystemProperty = exports.ECSqlSystemProperty || (exports.ECSqlSystemProperty = {}));
83
- /** Utility to format ECProperty names according to the iModel.js formatting rules.
83
+ /** Utility to format ECProperty names according to the iTwin.js formatting rules.
84
84
  * See also [ECSQL Row Format]($docs/learning/ECSQLRowFormat).
85
85
  * @public
86
86
  */
87
87
  class ECJsNames {
88
- /** Formats the specified ECProperty name according to the iModel.js formatting rules.
88
+ /** Formats the specified ECProperty name according to the iTwin.js formatting rules.
89
89
  *
90
90
  * See [ECSQL Row Format]($docs/learning/ECSQLRowFormat) which describes the formatting rules.
91
91
  *
@@ -148,7 +148,7 @@ class ECJsNames {
148
148
  return jsName;
149
149
  }
150
150
  /** Returns the name of the specified ECSQL system property according to the
151
- * iModel.js formatting rules.
151
+ * iTwin.js formatting rules.
152
152
  *
153
153
  * See [ECSQL Row Format]($docs/learning/ECSQLRowFormat) which describes the formatting rules.
154
154
  * @param systemPropertyType System property type
@@ -1 +1 @@
1
- {"version":3,"file":"ECSqlTypes.js","sourceRoot":"","sources":["../../src/ECSqlTypes.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 ECSQL\r\n */\r\n\r\nimport { assert, Id64String } from \"@itwin/core-bentley\";\r\n\r\n/** Describes the different data types an ECSQL value can be of.\r\n * See also [ECSQL]($docs/learning/ECSQL).\r\n * @public\r\n */\r\nexport enum ECSqlValueType {\r\n // do not change the values of the enum as it must match its counterpart in the addon\r\n Blob = 1,\r\n Boolean = 2,\r\n DateTime = 3,\r\n Double = 4,\r\n Geometry = 5,\r\n Id = 6,\r\n Int = 7,\r\n Int64 = 8,\r\n Point2d = 9,\r\n Point3d = 10,\r\n String = 11,\r\n Navigation = 12,\r\n Struct = 13,\r\n PrimitiveArray = 14,\r\n StructArray = 15,\r\n Guid = 16,\r\n}\r\n\r\n/** An ECSQL Navigation value.\r\n * It is returned from ECSQL SELECT statements for navigation properties.\r\n * See also [ECSQL]($docs/learning/ECSQL).\r\n * @public\r\n */\r\nexport interface NavigationValue {\r\n /** ECInstanceId of the related instance */\r\n id: Id64String;\r\n /** Fully qualified class name of the relationship backing the Navigation property */\r\n relClassName?: string;\r\n}\r\n\r\n/** An ECSQL Navigation value which can be bound to a navigation property ECSQL parameter\r\n * See also [ECSQL]($docs/learning/ECSQL).\r\n * @public\r\n */\r\nexport interface NavigationBindingValue {\r\n /** ECInstanceId of the related instance */\r\n id: Id64String;\r\n /** Fully qualified class name of the relationship backing the Navigation property */\r\n relClassName?: string;\r\n /** Table space where the relationship's schema is persisted. This is only required\r\n * if other ECDb files are attached to the primary one. In case a schema exists in more than one of the files,\r\n * pass the table space to disambiguate.\r\n */\r\n relClassTableSpace?: string;\r\n}\r\n\r\n/** Equivalent of the ECEnumeration OpCode in the **ECDbChange** ECSchema.\r\n * The enum can be used when programmatically binding values to the InstanceChange.OpCode property of\r\n * the ECDbChange ECSchema.\r\n *\r\n * See also\r\n * - [ChangeSummary Overview]($docs/learning/ChangeSummaries)\r\n * @public\r\n */\r\nexport enum ChangeOpCode {\r\n Insert = 1,\r\n Update = 2,\r\n Delete = 4,\r\n}\r\n\r\n/** The enum represents the values for the ChangedValueState argument of the ECSQL function **Changes**.\r\n * The enum can be used when programmatically binding values to the ChangedValueState argument\r\n * in an ECSQL using the **Changes** ECSQL function.\r\n *\r\n * See also\r\n * - [ChangeSummary Overview]($docs/learning/ChangeSummaries)\r\n * @public\r\n */\r\nexport enum ChangedValueState {\r\n AfterInsert = 1,\r\n BeforeUpdate = 2,\r\n AfterUpdate = 3,\r\n BeforeDelete = 4,\r\n}\r\n\r\n/** Defines the ECSQL system properties.\r\n * See also [ECSQL]($docs/learning/ECSQL).\r\n * @public\r\n */\r\nexport enum ECSqlSystemProperty {\r\n ECInstanceId,\r\n ECClassId,\r\n SourceECInstanceId,\r\n SourceECClassId,\r\n TargetECInstanceId,\r\n TargetECClassId,\r\n NavigationId,\r\n NavigationRelClassId,\r\n PointX,\r\n PointY,\r\n PointZ,\r\n}\r\n\r\n/** Utility to format ECProperty names according to the iModel.js formatting rules.\r\n * See also [ECSQL Row Format]($docs/learning/ECSQLRowFormat).\r\n * @public\r\n */\r\nexport class ECJsNames {\r\n\r\n /** Formats the specified ECProperty name according to the iModel.js formatting rules.\r\n *\r\n * See [ECSQL Row Format]($docs/learning/ECSQLRowFormat) which describes the formatting rules.\r\n *\r\n * @param ecProperty Property name as defined in the ECSchema for regular ECProperties\r\n * or the name of an ECSQL system properties\r\n * @param isSystemProperty if omitted, the method will try to find out whether the given property\r\n * is a system property or not. If true is specified, the method will throw if the property name\r\n * is not a known system property. If false is specified, the method will not attempt to recognize\r\n * the property name as system property.\r\n */\r\n public static toJsName(propName: string, isSystemProperty?: boolean) {\r\n assert(propName !== undefined, \"propName must not be undefined\");\r\n\r\n const propTypeUnknown: boolean = isSystemProperty === undefined || isSystemProperty === null;\r\n\r\n const accessStringTokens: string[] = propName.split(\".\");\r\n const tokenCount: number = accessStringTokens.length;\r\n assert(tokenCount > 0);\r\n\r\n if (tokenCount === 1) {\r\n if (propTypeUnknown || isSystemProperty!) {\r\n if (propName === \"ECInstanceId\")\r\n return ECJsNames.systemPropertyToJsName(ECSqlSystemProperty.ECInstanceId);\r\n\r\n if (propName === \"ECClassId\")\r\n return ECJsNames.systemPropertyToJsName(ECSqlSystemProperty.ECClassId);\r\n\r\n if (propName === \"SourceECInstanceId\")\r\n return ECJsNames.systemPropertyToJsName(ECSqlSystemProperty.SourceECInstanceId);\r\n\r\n if (propName === \"TargetECInstanceId\")\r\n return ECJsNames.systemPropertyToJsName(ECSqlSystemProperty.TargetECInstanceId);\r\n\r\n if (propName === \"SourceECClassId\")\r\n return ECJsNames.systemPropertyToJsName(ECSqlSystemProperty.SourceECClassId);\r\n\r\n if (propName === \"TargetECClassId\")\r\n return ECJsNames.systemPropertyToJsName(ECSqlSystemProperty.TargetECClassId);\r\n\r\n return ECJsNames.lowerFirstChar(propName);\r\n }\r\n\r\n return ECJsNames.lowerFirstChar(propName);\r\n }\r\n\r\n // parse access string and convert the leaf tokens if they are system props\r\n // The first char of the access string is lowered.\r\n let jsName: string = ECJsNames.lowerFirstChar(`${accessStringTokens[0]}.`);\r\n for (let j = 1; j < tokenCount - 1; j++) {\r\n jsName += `${accessStringTokens[j]}.`;\r\n }\r\n\r\n const leafToken: string = accessStringTokens[tokenCount - 1];\r\n\r\n if (propTypeUnknown || isSystemProperty!) {\r\n if (leafToken === \"Id\")\r\n jsName += ECJsNames.systemPropertyToJsName(ECSqlSystemProperty.NavigationId);\r\n else if (leafToken === \"RelECClassId\")\r\n jsName += ECJsNames.systemPropertyToJsName(ECSqlSystemProperty.NavigationRelClassId);\r\n else if (leafToken === \"X\")\r\n jsName += ECJsNames.systemPropertyToJsName(ECSqlSystemProperty.PointX);\r\n else if (leafToken === \"Y\")\r\n jsName += ECJsNames.systemPropertyToJsName(ECSqlSystemProperty.PointY);\r\n else if (leafToken === \"Z\")\r\n jsName += ECJsNames.systemPropertyToJsName(ECSqlSystemProperty.PointZ);\r\n else if (propTypeUnknown)\r\n jsName += ECJsNames.lowerFirstChar(leafToken);\r\n else\r\n throw new Error(`Property ${leafToken} of access string ${propName} is no ECSQL system property.`);\r\n } else\r\n jsName += leafToken;\r\n\r\n return jsName;\r\n }\r\n\r\n /** Returns the name of the specified ECSQL system property according to the\r\n * iModel.js formatting rules.\r\n *\r\n * See [ECSQL Row Format]($docs/learning/ECSQLRowFormat) which describes the formatting rules.\r\n * @param systemPropertyType System property type\r\n */\r\n public static systemPropertyToJsName(systemPropertyType: ECSqlSystemProperty): string {\r\n switch (systemPropertyType) {\r\n case ECSqlSystemProperty.ECInstanceId:\r\n case ECSqlSystemProperty.NavigationId:\r\n return \"id\";\r\n case ECSqlSystemProperty.ECClassId:\r\n return \"className\";\r\n case ECSqlSystemProperty.SourceECInstanceId:\r\n return \"sourceId\";\r\n case ECSqlSystemProperty.SourceECClassId:\r\n return \"sourceClassName\";\r\n case ECSqlSystemProperty.TargetECInstanceId:\r\n return \"targetId\";\r\n case ECSqlSystemProperty.TargetECClassId:\r\n return \"targetClassName\";\r\n case ECSqlSystemProperty.NavigationRelClassId:\r\n return \"relClassName\";\r\n case ECSqlSystemProperty.PointX:\r\n return \"x\";\r\n case ECSqlSystemProperty.PointY:\r\n return \"y\";\r\n case ECSqlSystemProperty.PointZ:\r\n return \"z\";\r\n default:\r\n throw new Error(`Unknown ECSqlSystemProperty enum value ${systemPropertyType}.`);\r\n }\r\n }\r\n\r\n private static lowerFirstChar(name: string): string { return name[0].toLowerCase() + name.substring(1); }\r\n}\r\n"]}
1
+ {"version":3,"file":"ECSqlTypes.js","sourceRoot":"","sources":["../../src/ECSqlTypes.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 ECSQL\r\n */\r\n\r\nimport { assert, Id64String } from \"@itwin/core-bentley\";\r\n\r\n/** Describes the different data types an ECSQL value can be of.\r\n * See also [ECSQL]($docs/learning/ECSQL).\r\n * @public\r\n */\r\nexport enum ECSqlValueType {\r\n // do not change the values of the enum as it must match its counterpart in the addon\r\n Blob = 1,\r\n Boolean = 2,\r\n DateTime = 3,\r\n Double = 4,\r\n Geometry = 5,\r\n Id = 6,\r\n Int = 7,\r\n Int64 = 8,\r\n Point2d = 9,\r\n Point3d = 10,\r\n String = 11,\r\n Navigation = 12,\r\n Struct = 13,\r\n PrimitiveArray = 14,\r\n StructArray = 15,\r\n Guid = 16,\r\n}\r\n\r\n/** An ECSQL Navigation value.\r\n * It is returned from ECSQL SELECT statements for navigation properties.\r\n * See also [ECSQL]($docs/learning/ECSQL).\r\n * @public\r\n */\r\nexport interface NavigationValue {\r\n /** ECInstanceId of the related instance */\r\n id: Id64String;\r\n /** Fully qualified class name of the relationship backing the Navigation property */\r\n relClassName?: string;\r\n}\r\n\r\n/** An ECSQL Navigation value which can be bound to a navigation property ECSQL parameter\r\n * See also [ECSQL]($docs/learning/ECSQL).\r\n * @public\r\n */\r\nexport interface NavigationBindingValue {\r\n /** ECInstanceId of the related instance */\r\n id: Id64String;\r\n /** Fully qualified class name of the relationship backing the Navigation property */\r\n relClassName?: string;\r\n /** Table space where the relationship's schema is persisted. This is only required\r\n * if other ECDb files are attached to the primary one. In case a schema exists in more than one of the files,\r\n * pass the table space to disambiguate.\r\n */\r\n relClassTableSpace?: string;\r\n}\r\n\r\n/** Equivalent of the ECEnumeration OpCode in the **ECDbChange** ECSchema.\r\n * The enum can be used when programmatically binding values to the InstanceChange.OpCode property of\r\n * the ECDbChange ECSchema.\r\n *\r\n * See also\r\n * - [ChangeSummary Overview]($docs/learning/ChangeSummaries)\r\n * @public\r\n */\r\nexport enum ChangeOpCode {\r\n Insert = 1,\r\n Update = 2,\r\n Delete = 4,\r\n}\r\n\r\n/** The enum represents the values for the ChangedValueState argument of the ECSQL function **Changes**.\r\n * The enum can be used when programmatically binding values to the ChangedValueState argument\r\n * in an ECSQL using the **Changes** ECSQL function.\r\n *\r\n * See also\r\n * - [ChangeSummary Overview]($docs/learning/ChangeSummaries)\r\n * @public\r\n */\r\nexport enum ChangedValueState {\r\n AfterInsert = 1,\r\n BeforeUpdate = 2,\r\n AfterUpdate = 3,\r\n BeforeDelete = 4,\r\n}\r\n\r\n/** Defines the ECSQL system properties.\r\n * See also [ECSQL]($docs/learning/ECSQL).\r\n * @public\r\n */\r\nexport enum ECSqlSystemProperty {\r\n ECInstanceId,\r\n ECClassId,\r\n SourceECInstanceId,\r\n SourceECClassId,\r\n TargetECInstanceId,\r\n TargetECClassId,\r\n NavigationId,\r\n NavigationRelClassId,\r\n PointX,\r\n PointY,\r\n PointZ,\r\n}\r\n\r\n/** Utility to format ECProperty names according to the iTwin.js formatting rules.\r\n * See also [ECSQL Row Format]($docs/learning/ECSQLRowFormat).\r\n * @public\r\n */\r\nexport class ECJsNames {\r\n\r\n /** Formats the specified ECProperty name according to the iTwin.js formatting rules.\r\n *\r\n * See [ECSQL Row Format]($docs/learning/ECSQLRowFormat) which describes the formatting rules.\r\n *\r\n * @param ecProperty Property name as defined in the ECSchema for regular ECProperties\r\n * or the name of an ECSQL system properties\r\n * @param isSystemProperty if omitted, the method will try to find out whether the given property\r\n * is a system property or not. If true is specified, the method will throw if the property name\r\n * is not a known system property. If false is specified, the method will not attempt to recognize\r\n * the property name as system property.\r\n */\r\n public static toJsName(propName: string, isSystemProperty?: boolean) {\r\n assert(propName !== undefined, \"propName must not be undefined\");\r\n\r\n const propTypeUnknown: boolean = isSystemProperty === undefined || isSystemProperty === null;\r\n\r\n const accessStringTokens: string[] = propName.split(\".\");\r\n const tokenCount: number = accessStringTokens.length;\r\n assert(tokenCount > 0);\r\n\r\n if (tokenCount === 1) {\r\n if (propTypeUnknown || isSystemProperty!) {\r\n if (propName === \"ECInstanceId\")\r\n return ECJsNames.systemPropertyToJsName(ECSqlSystemProperty.ECInstanceId);\r\n\r\n if (propName === \"ECClassId\")\r\n return ECJsNames.systemPropertyToJsName(ECSqlSystemProperty.ECClassId);\r\n\r\n if (propName === \"SourceECInstanceId\")\r\n return ECJsNames.systemPropertyToJsName(ECSqlSystemProperty.SourceECInstanceId);\r\n\r\n if (propName === \"TargetECInstanceId\")\r\n return ECJsNames.systemPropertyToJsName(ECSqlSystemProperty.TargetECInstanceId);\r\n\r\n if (propName === \"SourceECClassId\")\r\n return ECJsNames.systemPropertyToJsName(ECSqlSystemProperty.SourceECClassId);\r\n\r\n if (propName === \"TargetECClassId\")\r\n return ECJsNames.systemPropertyToJsName(ECSqlSystemProperty.TargetECClassId);\r\n\r\n return ECJsNames.lowerFirstChar(propName);\r\n }\r\n\r\n return ECJsNames.lowerFirstChar(propName);\r\n }\r\n\r\n // parse access string and convert the leaf tokens if they are system props\r\n // The first char of the access string is lowered.\r\n let jsName: string = ECJsNames.lowerFirstChar(`${accessStringTokens[0]}.`);\r\n for (let j = 1; j < tokenCount - 1; j++) {\r\n jsName += `${accessStringTokens[j]}.`;\r\n }\r\n\r\n const leafToken: string = accessStringTokens[tokenCount - 1];\r\n\r\n if (propTypeUnknown || isSystemProperty!) {\r\n if (leafToken === \"Id\")\r\n jsName += ECJsNames.systemPropertyToJsName(ECSqlSystemProperty.NavigationId);\r\n else if (leafToken === \"RelECClassId\")\r\n jsName += ECJsNames.systemPropertyToJsName(ECSqlSystemProperty.NavigationRelClassId);\r\n else if (leafToken === \"X\")\r\n jsName += ECJsNames.systemPropertyToJsName(ECSqlSystemProperty.PointX);\r\n else if (leafToken === \"Y\")\r\n jsName += ECJsNames.systemPropertyToJsName(ECSqlSystemProperty.PointY);\r\n else if (leafToken === \"Z\")\r\n jsName += ECJsNames.systemPropertyToJsName(ECSqlSystemProperty.PointZ);\r\n else if (propTypeUnknown)\r\n jsName += ECJsNames.lowerFirstChar(leafToken);\r\n else\r\n throw new Error(`Property ${leafToken} of access string ${propName} is no ECSQL system property.`);\r\n } else\r\n jsName += leafToken;\r\n\r\n return jsName;\r\n }\r\n\r\n /** Returns the name of the specified ECSQL system property according to the\r\n * iTwin.js formatting rules.\r\n *\r\n * See [ECSQL Row Format]($docs/learning/ECSQLRowFormat) which describes the formatting rules.\r\n * @param systemPropertyType System property type\r\n */\r\n public static systemPropertyToJsName(systemPropertyType: ECSqlSystemProperty): string {\r\n switch (systemPropertyType) {\r\n case ECSqlSystemProperty.ECInstanceId:\r\n case ECSqlSystemProperty.NavigationId:\r\n return \"id\";\r\n case ECSqlSystemProperty.ECClassId:\r\n return \"className\";\r\n case ECSqlSystemProperty.SourceECInstanceId:\r\n return \"sourceId\";\r\n case ECSqlSystemProperty.SourceECClassId:\r\n return \"sourceClassName\";\r\n case ECSqlSystemProperty.TargetECInstanceId:\r\n return \"targetId\";\r\n case ECSqlSystemProperty.TargetECClassId:\r\n return \"targetClassName\";\r\n case ECSqlSystemProperty.NavigationRelClassId:\r\n return \"relClassName\";\r\n case ECSqlSystemProperty.PointX:\r\n return \"x\";\r\n case ECSqlSystemProperty.PointY:\r\n return \"y\";\r\n case ECSqlSystemProperty.PointZ:\r\n return \"z\";\r\n default:\r\n throw new Error(`Unknown ECSqlSystemProperty enum value ${systemPropertyType}.`);\r\n }\r\n }\r\n\r\n private static lowerFirstChar(name: string): string { return name[0].toLowerCase() + name.substring(1); }\r\n}\r\n"]}
@@ -63,6 +63,7 @@ export * from "./IModelError";
63
63
  export * from "./IModelVersion";
64
64
  export * from "./ipc/IpcSocket";
65
65
  export * from "./ipc/IpcWebSocket";
66
+ export * from "./ipc/IpcWebSocketTransport";
66
67
  export * from "./IpcAppProps";
67
68
  export * from "./LightSettings";
68
69
  export * from "./LinePixels";
@@ -1 +1 @@
1
- {"version":3,"file":"core-common.d.ts","sourceRoot":"","sources":["../../src/core-common.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"core-common.d.ts","sourceRoot":"","sources":["../../src/core-common.ts"],"names":[],"mappings":"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"}
@@ -79,6 +79,7 @@ __exportStar(require("./IModelError"), exports);
79
79
  __exportStar(require("./IModelVersion"), exports);
80
80
  __exportStar(require("./ipc/IpcSocket"), exports);
81
81
  __exportStar(require("./ipc/IpcWebSocket"), exports);
82
+ __exportStar(require("./ipc/IpcWebSocketTransport"), exports);
82
83
  __exportStar(require("./IpcAppProps"), exports);
83
84
  __exportStar(require("./LightSettings"), exports);
84
85
  __exportStar(require("./LinePixels"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"core-common.js","sourceRoot":"","sources":["../../src/core-common.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\nexport * from \"./AmbientOcclusion\";\r\nexport * from \"./AnalysisStyle\";\r\nexport * from \"./AuthorizationClient\";\r\nexport * from \"./BackgroundMapProvider\";\r\nexport * from \"./BackgroundMapSettings\";\r\nexport * from \"./Base64EncodedString\";\r\nexport * from \"./BriefcaseTypes\";\r\nexport * from \"./Camera\";\r\nexport * from \"./ChangedElements\";\r\nexport * from \"./ChangedEntities\";\r\nexport * from \"./ChangesetProps\";\r\nexport * from \"./ClipStyle\";\r\nexport * from \"./CloudStorage\";\r\nexport * from \"./CloudStorageTileCache\";\r\nexport * from \"./Code\";\r\nexport * from \"./ColorByName\";\r\nexport * from \"./ColorDef\";\r\nexport * from \"./CommonLoggerCategory\";\r\nexport * from \"./ContextRealityModel\";\r\nexport * from \"./DisplayStyleSettings\";\r\nexport * from \"./domains/FunctionalElementProps\";\r\nexport * from \"./domains/GenericElementProps\";\r\nexport * from \"./ECSqlTypes\";\r\nexport * from \"./ElementProps\";\r\nexport * from \"./EmphasizeElementsProps\";\r\nexport * from \"./EntityProps\";\r\nexport * from \"./Environment\";\r\nexport * from \"./FeatureGates\";\r\nexport * from \"./FeatureIndex\";\r\nexport * from \"./FeatureSymbology\";\r\nexport * from \"./FeatureTable\";\r\nexport * from \"./Fonts\";\r\nexport * from \"./Frustum\";\r\nexport * from \"./GeoCoordinateServices\";\r\nexport * from \"./geometry/AdditionalTransform\";\r\nexport * from \"./geometry/AreaPattern\";\r\nexport * from \"./geometry/BoundingSphere\";\r\nexport * from \"./geometry/Cartographic\";\r\nexport * from \"./geometry/CoordinateReferenceSystem\";\r\nexport * from \"./geometry/ElementGeometry\";\r\nexport * from \"./geometry/FrustumPlanes\";\r\nexport * from \"./geometry/GeodeticDatum\";\r\nexport * from \"./geometry/GeodeticEllipsoid\";\r\nexport * from \"./geometry/GeometryStream\";\r\nexport * from \"./geometry/ImageGraphic\";\r\nexport * from \"./geometry/LineStyle\";\r\nexport * from \"./geometry/Placement\";\r\nexport * from \"./geometry/Projection\";\r\nexport * from \"./geometry/TextString\";\r\nexport * from \"./GeometryContainment\";\r\nexport * from \"./GeometryParams\";\r\nexport * from \"./GeometrySummary\";\r\nexport * from \"./Gradient\";\r\nexport * from \"./GraphicParams\";\r\nexport * from \"./GroundPlane\";\r\nexport * from \"./HiddenLine\";\r\nexport * from \"./Hilite\";\r\nexport * from \"./HSLColor\";\r\nexport * from \"./HSVColor\";\r\nexport * from \"./Image\";\r\nexport * from \"./IModel\";\r\nexport * from \"./IModelError\";\r\nexport * from \"./IModelVersion\";\r\nexport * from \"./ipc/IpcSocket\";\r\nexport * from \"./ipc/IpcWebSocket\";\r\nexport * from \"./IpcAppProps\";\r\nexport * from \"./LightSettings\";\r\nexport * from \"./LinePixels\";\r\nexport * from \"./Localization\";\r\nexport * from \"./MapImagerySettings\";\r\nexport * from \"./MapLayerSettings\";\r\nexport * from \"./MassProperties\";\r\nexport * from \"./MaterialProps\";\r\nexport * from \"./ModelClipGroup\";\r\nexport * from \"./ModelProps\";\r\nexport * from \"./NativeAppProps\";\r\nexport * from \"./OctEncodedNormal\";\r\nexport * from \"./ConcurrentQuery\";\r\nexport * from \"./ECSqlReader\";\r\nexport * from \"./PlanarClipMask\";\r\nexport * from \"./ModelGeometryChanges\";\r\nexport * from \"./PlanProjectionSettings\";\r\nexport * from \"./QPoint\";\r\nexport * from \"./RealityDataAccessProps\";\r\nexport * from \"./Render\";\r\nexport * from \"./RenderMaterial\";\r\nexport * from \"./RenderSchedule\";\r\nexport * from \"./RenderTexture\";\r\nexport * from \"./RgbColor\";\r\nexport * from \"./rpc/core/RpcConfiguration\";\r\nexport * from \"./rpc/DevToolsRpcInterface\";\r\nexport * from \"./rpc/IModelReadRpcInterface\";\r\nexport * from \"./rpc/IModelTileRpcInterface\";\r\nexport * from \"./rpc/SnapshotIModelRpcInterface\";\r\nexport * from \"./rpc/TestRpcManager\";\r\nexport * from \"./rpc/WipRpcInterface\";\r\nexport * from \"./RpcInterface\";\r\nexport * from \"./RpcManager\";\r\nexport * from \"./SessionProps\";\r\nexport * from \"./SkyBox\";\r\nexport * from \"./Snapping\";\r\nexport * from \"./SolarCalculate\";\r\nexport * from \"./SolarShadows\";\r\nexport * from \"./SpatialClassification\";\r\nexport * from \"./SubCategoryAppearance\";\r\nexport * from \"./SubCategoryOverride\";\r\nexport * from \"./TerrainSettings\";\r\nexport * from \"./TextureMapping\";\r\nexport * from \"./TextureProps\";\r\nexport * from \"./ThematicDisplay\";\r\nexport * from \"./Thumbnail\";\r\nexport * from \"./TileProps\";\r\nexport * from \"./Tween\";\r\nexport * from \"./TxnAction\";\r\nexport * from \"./ViewDetails\";\r\nexport * from \"./ViewFlags\";\r\nexport * from \"./ViewProps\";\r\nexport * from \"./rpc/core/RpcConstants\";\r\nexport * from \"./rpc/core/RpcControl\";\r\nexport * from \"./rpc/core/RpcInvocation\";\r\nexport * from \"./rpc/core/RpcMarshaling\";\r\nexport * from \"./rpc/core/RpcOperation\";\r\nexport * from \"./rpc/core/RpcPendingQueue\";\r\nexport * from \"./rpc/core/RpcProtocol\";\r\nexport * from \"./rpc/core/RpcRegistry\";\r\nexport * from \"./rpc/core/RpcRequest\";\r\nexport * from \"./rpc/core/RpcRequestContext\";\r\nexport * from \"./rpc/core/RpcRoutingToken\";\r\nexport * from \"./rpc/core/RpcPush\";\r\nexport * from \"./rpc/web/BentleyCloudRpcManager\";\r\nexport * from \"./rpc/web/BentleyCloudRpcProtocol\";\r\nexport * from \"./rpc/web/OpenAPI\";\r\nexport * from \"./rpc/web/RpcMultipart\";\r\nexport * from \"./rpc/web/WebAppRpcProtocol\";\r\nexport * from \"./rpc/web/WebAppRpcRequest\";\r\nexport * from \"./tile/B3dmTileIO\";\r\nexport * from \"./tile/CompositeTileIO\";\r\nexport * from \"./tile/ElementGraphics\";\r\nexport * from \"./tile/GltfTileIO\";\r\nexport * from \"./tile/I3dmTileIO\";\r\nexport * from \"./tile/IModelTileIO\";\r\nexport * from \"./tile/PntsTileIO\";\r\nexport * from \"./tile/TileIO\";\r\nexport * from \"./tile/TileMetadata\";\r\nexport * from \"./WhiteOnWhiteReversalSettings\";\r\n\r\n/** @docs-package-description\r\n * The core-common package contains classes for working with iModels that can be used in both [frontend]($docs/learning/frontend/index.md) and [backend]($docs/learning/backend/index.md).\r\n */\r\n/**\r\n * @docs-group-description Entities\r\n * Definitions of the \"props\" interfaces and types that define the [wire format]($docs/learning/wireformat.md) for communication between the frontend and backend about entities (models, elements, etc) contained in an iModel.\r\n */\r\n/**\r\n * @docs-group-description Codes\r\n * Types for working with [Codes]($docs/bis/intro/codes.md).\r\n */\r\n/**\r\n * @docs-group-description Geometry\r\n * Types for working with geometry.\r\n */\r\n/**\r\n * @docs-group-description Serialization\r\n * Types for serializing geometry\r\n */\r\n/**\r\n * @docs-group-description Views\r\n * Types for defining graphical views of the contents of an iModel.\r\n */\r\n/**\r\n * @docs-group-description DisplayStyles\r\n * Types for describing how the contents of Views should be rendered.\r\n */\r\n/**\r\n * @docs-group-description Rendering\r\n * Types describing geometry, views, and symbology for consumption by a display system.\r\n */\r\n/**\r\n * @docs-group-description Symbology\r\n * Types that define the appearance of geometry.\r\n */\r\n/**\r\n * @docs-group-description iModels\r\n * Types for working with [iModels]($docs/learning/IModels.md) in both the frontend and backend.\r\n */\r\n/**\r\n * @docs-group-description RpcInterface\r\n * Types for working with [RpcInterfaces]($docs/learning/RpcInterface.md).\r\n */\r\n/**\r\n * @docs-group-description IpcSocket\r\n * Types for working with [IpcInterfaces]($docs/learning/IpcInterface.md).\r\n */\r\n/**\r\n * @docs-group-description ECSQL\r\n * Types for working with [ECSQL]($docs/learning/ECSQL.md), [Spatial Queries]($docs/learning/SpatialQueries.md), and [ECSQL Geometry Functions]($docs/learning/GeometrySqlFuncs.md).\r\n */\r\n/**\r\n * @docs-group-description Logging\r\n * Logger categories used by this package.\r\n */\r\n/**\r\n * @docs-group-description CloudStorage\r\n * Types for working with Cloud Storage.\r\n */\r\n/**\r\n * @docs-group-description Tween\r\n * Tweening library adapted from tween.js.\r\n */\r\n/**\r\n * @docs-group-description Tile\r\n * Types for working with 3d tile formats.\r\n */\r\n/**\r\n * @docs-group-description Utils\r\n * Miscellaneous utility classes.\r\n */\r\n/**\r\n * @docs-group-description NativeApp\r\n * [Native applications]($docs/learning/NativeApps.md)\r\n */\r\n/**\r\n * @docs-group-description Localization\r\n * Classes for internationalization and localization of your app.\r\n */\r\n/**\r\n * @docs-group-description Authorization\r\n * Classes for managing AccessToken used for all requests in other classes.\r\n */\r\n/**\r\n * @docs-group-description RealityData\r\n * Types for working with the RealityData API.\r\n */\r\n"]}
1
+ {"version":3,"file":"core-common.js","sourceRoot":"","sources":["../../src/core-common.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\nexport * from \"./AmbientOcclusion\";\r\nexport * from \"./AnalysisStyle\";\r\nexport * from \"./AuthorizationClient\";\r\nexport * from \"./BackgroundMapProvider\";\r\nexport * from \"./BackgroundMapSettings\";\r\nexport * from \"./Base64EncodedString\";\r\nexport * from \"./BriefcaseTypes\";\r\nexport * from \"./Camera\";\r\nexport * from \"./ChangedElements\";\r\nexport * from \"./ChangedEntities\";\r\nexport * from \"./ChangesetProps\";\r\nexport * from \"./ClipStyle\";\r\nexport * from \"./CloudStorage\";\r\nexport * from \"./CloudStorageTileCache\";\r\nexport * from \"./Code\";\r\nexport * from \"./ColorByName\";\r\nexport * from \"./ColorDef\";\r\nexport * from \"./CommonLoggerCategory\";\r\nexport * from \"./ContextRealityModel\";\r\nexport * from \"./DisplayStyleSettings\";\r\nexport * from \"./domains/FunctionalElementProps\";\r\nexport * from \"./domains/GenericElementProps\";\r\nexport * from \"./ECSqlTypes\";\r\nexport * from \"./ElementProps\";\r\nexport * from \"./EmphasizeElementsProps\";\r\nexport * from \"./EntityProps\";\r\nexport * from \"./Environment\";\r\nexport * from \"./FeatureGates\";\r\nexport * from \"./FeatureIndex\";\r\nexport * from \"./FeatureSymbology\";\r\nexport * from \"./FeatureTable\";\r\nexport * from \"./Fonts\";\r\nexport * from \"./Frustum\";\r\nexport * from \"./GeoCoordinateServices\";\r\nexport * from \"./geometry/AdditionalTransform\";\r\nexport * from \"./geometry/AreaPattern\";\r\nexport * from \"./geometry/BoundingSphere\";\r\nexport * from \"./geometry/Cartographic\";\r\nexport * from \"./geometry/CoordinateReferenceSystem\";\r\nexport * from \"./geometry/ElementGeometry\";\r\nexport * from \"./geometry/FrustumPlanes\";\r\nexport * from \"./geometry/GeodeticDatum\";\r\nexport * from \"./geometry/GeodeticEllipsoid\";\r\nexport * from \"./geometry/GeometryStream\";\r\nexport * from \"./geometry/ImageGraphic\";\r\nexport * from \"./geometry/LineStyle\";\r\nexport * from \"./geometry/Placement\";\r\nexport * from \"./geometry/Projection\";\r\nexport * from \"./geometry/TextString\";\r\nexport * from \"./GeometryContainment\";\r\nexport * from \"./GeometryParams\";\r\nexport * from \"./GeometrySummary\";\r\nexport * from \"./Gradient\";\r\nexport * from \"./GraphicParams\";\r\nexport * from \"./GroundPlane\";\r\nexport * from \"./HiddenLine\";\r\nexport * from \"./Hilite\";\r\nexport * from \"./HSLColor\";\r\nexport * from \"./HSVColor\";\r\nexport * from \"./Image\";\r\nexport * from \"./IModel\";\r\nexport * from \"./IModelError\";\r\nexport * from \"./IModelVersion\";\r\nexport * from \"./ipc/IpcSocket\";\r\nexport * from \"./ipc/IpcWebSocket\";\r\nexport * from \"./ipc/IpcWebSocketTransport\";\r\nexport * from \"./IpcAppProps\";\r\nexport * from \"./LightSettings\";\r\nexport * from \"./LinePixels\";\r\nexport * from \"./Localization\";\r\nexport * from \"./MapImagerySettings\";\r\nexport * from \"./MapLayerSettings\";\r\nexport * from \"./MassProperties\";\r\nexport * from \"./MaterialProps\";\r\nexport * from \"./ModelClipGroup\";\r\nexport * from \"./ModelProps\";\r\nexport * from \"./NativeAppProps\";\r\nexport * from \"./OctEncodedNormal\";\r\nexport * from \"./ConcurrentQuery\";\r\nexport * from \"./ECSqlReader\";\r\nexport * from \"./PlanarClipMask\";\r\nexport * from \"./ModelGeometryChanges\";\r\nexport * from \"./PlanProjectionSettings\";\r\nexport * from \"./QPoint\";\r\nexport * from \"./RealityDataAccessProps\";\r\nexport * from \"./Render\";\r\nexport * from \"./RenderMaterial\";\r\nexport * from \"./RenderSchedule\";\r\nexport * from \"./RenderTexture\";\r\nexport * from \"./RgbColor\";\r\nexport * from \"./rpc/core/RpcConfiguration\";\r\nexport * from \"./rpc/DevToolsRpcInterface\";\r\nexport * from \"./rpc/IModelReadRpcInterface\";\r\nexport * from \"./rpc/IModelTileRpcInterface\";\r\nexport * from \"./rpc/SnapshotIModelRpcInterface\";\r\nexport * from \"./rpc/TestRpcManager\";\r\nexport * from \"./rpc/WipRpcInterface\";\r\nexport * from \"./RpcInterface\";\r\nexport * from \"./RpcManager\";\r\nexport * from \"./SessionProps\";\r\nexport * from \"./SkyBox\";\r\nexport * from \"./Snapping\";\r\nexport * from \"./SolarCalculate\";\r\nexport * from \"./SolarShadows\";\r\nexport * from \"./SpatialClassification\";\r\nexport * from \"./SubCategoryAppearance\";\r\nexport * from \"./SubCategoryOverride\";\r\nexport * from \"./TerrainSettings\";\r\nexport * from \"./TextureMapping\";\r\nexport * from \"./TextureProps\";\r\nexport * from \"./ThematicDisplay\";\r\nexport * from \"./Thumbnail\";\r\nexport * from \"./TileProps\";\r\nexport * from \"./Tween\";\r\nexport * from \"./TxnAction\";\r\nexport * from \"./ViewDetails\";\r\nexport * from \"./ViewFlags\";\r\nexport * from \"./ViewProps\";\r\nexport * from \"./rpc/core/RpcConstants\";\r\nexport * from \"./rpc/core/RpcControl\";\r\nexport * from \"./rpc/core/RpcInvocation\";\r\nexport * from \"./rpc/core/RpcMarshaling\";\r\nexport * from \"./rpc/core/RpcOperation\";\r\nexport * from \"./rpc/core/RpcPendingQueue\";\r\nexport * from \"./rpc/core/RpcProtocol\";\r\nexport * from \"./rpc/core/RpcRegistry\";\r\nexport * from \"./rpc/core/RpcRequest\";\r\nexport * from \"./rpc/core/RpcRequestContext\";\r\nexport * from \"./rpc/core/RpcRoutingToken\";\r\nexport * from \"./rpc/core/RpcPush\";\r\nexport * from \"./rpc/web/BentleyCloudRpcManager\";\r\nexport * from \"./rpc/web/BentleyCloudRpcProtocol\";\r\nexport * from \"./rpc/web/OpenAPI\";\r\nexport * from \"./rpc/web/RpcMultipart\";\r\nexport * from \"./rpc/web/WebAppRpcProtocol\";\r\nexport * from \"./rpc/web/WebAppRpcRequest\";\r\nexport * from \"./tile/B3dmTileIO\";\r\nexport * from \"./tile/CompositeTileIO\";\r\nexport * from \"./tile/ElementGraphics\";\r\nexport * from \"./tile/GltfTileIO\";\r\nexport * from \"./tile/I3dmTileIO\";\r\nexport * from \"./tile/IModelTileIO\";\r\nexport * from \"./tile/PntsTileIO\";\r\nexport * from \"./tile/TileIO\";\r\nexport * from \"./tile/TileMetadata\";\r\nexport * from \"./WhiteOnWhiteReversalSettings\";\r\n\r\n/** @docs-package-description\r\n * The core-common package contains classes for working with iModels that can be used in both [frontend]($docs/learning/frontend/index.md) and [backend]($docs/learning/backend/index.md).\r\n */\r\n/**\r\n * @docs-group-description Entities\r\n * Definitions of the \"props\" interfaces and types that define the [wire format]($docs/learning/wireformat.md) for communication between the frontend and backend about entities (models, elements, etc) contained in an iModel.\r\n */\r\n/**\r\n * @docs-group-description Codes\r\n * Types for working with [Codes]($docs/bis/intro/codes.md).\r\n */\r\n/**\r\n * @docs-group-description Geometry\r\n * Types for working with geometry.\r\n */\r\n/**\r\n * @docs-group-description Serialization\r\n * Types for serializing geometry\r\n */\r\n/**\r\n * @docs-group-description Views\r\n * Types for defining graphical views of the contents of an iModel.\r\n */\r\n/**\r\n * @docs-group-description DisplayStyles\r\n * Types for describing how the contents of Views should be rendered.\r\n */\r\n/**\r\n * @docs-group-description Rendering\r\n * Types describing geometry, views, and symbology for consumption by a display system.\r\n */\r\n/**\r\n * @docs-group-description Symbology\r\n * Types that define the appearance of geometry.\r\n */\r\n/**\r\n * @docs-group-description iModels\r\n * Types for working with [iModels]($docs/learning/IModels.md) in both the frontend and backend.\r\n */\r\n/**\r\n * @docs-group-description RpcInterface\r\n * Types for working with [RpcInterfaces]($docs/learning/RpcInterface.md).\r\n */\r\n/**\r\n * @docs-group-description IpcSocket\r\n * Types for working with [IpcInterfaces]($docs/learning/IpcInterface.md).\r\n */\r\n/**\r\n * @docs-group-description ECSQL\r\n * Types for working with [ECSQL]($docs/learning/ECSQL.md), [Spatial Queries]($docs/learning/SpatialQueries.md), and [ECSQL Geometry Functions]($docs/learning/GeometrySqlFuncs.md).\r\n */\r\n/**\r\n * @docs-group-description Logging\r\n * Logger categories used by this package.\r\n */\r\n/**\r\n * @docs-group-description CloudStorage\r\n * Types for working with Cloud Storage.\r\n */\r\n/**\r\n * @docs-group-description Tween\r\n * Tweening library adapted from tween.js.\r\n */\r\n/**\r\n * @docs-group-description Tile\r\n * Types for working with 3d tile formats.\r\n */\r\n/**\r\n * @docs-group-description Utils\r\n * Miscellaneous utility classes.\r\n */\r\n/**\r\n * @docs-group-description NativeApp\r\n * [Native applications]($docs/learning/NativeApps.md)\r\n */\r\n/**\r\n * @docs-group-description Localization\r\n * Classes for internationalization and localization of your app.\r\n */\r\n/**\r\n * @docs-group-description Authorization\r\n * Classes for managing AccessToken used for all requests in other classes.\r\n */\r\n/**\r\n * @docs-group-description RealityData\r\n * Types for working with the RealityData API.\r\n */\r\n"]}
@@ -2,16 +2,15 @@
2
2
  * @module IpcSocket
3
3
  */
4
4
  import { IpcListener, IpcSocket, IpcSocketBackend, IpcSocketFrontend, RemoveFunction } from "./IpcSocket";
5
- /** @internal */
6
- export declare abstract class IpcWebSocketTransport {
7
- abstract send(message: IpcWebSocketMessage): void;
8
- }
5
+ import { IpcWebSocketTransport } from "./IpcWebSocketTransport";
9
6
  /** @internal */
10
7
  export declare enum IpcWebSocketMessageType {
11
8
  Send = 0,
12
9
  Push = 1,
13
10
  Invoke = 2,
14
- Response = 3
11
+ Response = 3,
12
+ Internal = 4,
13
+ Duplicate = 5
15
14
  }
16
15
  /** @internal */
17
16
  export interface IpcWebSocketMessage {
@@ -21,6 +20,14 @@ export interface IpcWebSocketMessage {
21
20
  channel: string;
22
21
  method?: string;
23
22
  data?: any[];
23
+ sequence: number;
24
+ }
25
+ /** @internal */
26
+ export declare namespace IpcWebSocketMessage {
27
+ function next(): number;
28
+ function internal(): IpcWebSocketMessage;
29
+ function duplicate(): IpcWebSocketMessage;
30
+ function skip(message: IpcWebSocketMessage): boolean;
24
31
  }
25
32
  /** @internal */
26
33
  export declare abstract class IpcWebSocket implements IpcSocket {
@@ -1 +1 @@
1
- {"version":3,"file":"IpcWebSocket.d.ts","sourceRoot":"","sources":["../../../src/ipc/IpcWebSocket.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE1G,gBAAgB;AAChB,8BAAsB,qBAAqB;aACzB,IAAI,CAAC,OAAO,EAAE,mBAAmB,GAAG,IAAI;CACzD;AAED,gBAAgB;AAChB,oBAAY,uBAAuB;IACjC,IAAI,IAAA;IACJ,IAAI,IAAA;IACJ,MAAM,IAAA;IACN,QAAQ,IAAA;CACT;AAED,gBAAgB;AAChB,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,uBAAuB,CAAC;IAC9B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;CACd;AAED,gBAAgB;AAChB,8BAAsB,YAAa,YAAW,SAAS;IACrD,OAAc,SAAS,EAAE,qBAAqB,CAAC;IAC/C,OAAc,SAAS,EAAE,GAAG,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE,mBAAmB,KAAK,IAAI,CAAC,CAAa;IAE7F,SAAS,CAAC,SAAS,gCAAuC;;aAM1C,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI;IAEpD,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,GAAG,cAAc;IAanE,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW;YAI9C,SAAS;CAexB;AAED,gBAAgB;AAChB,qBAAa,oBAAqB,SAAQ,YAAa,YAAW,iBAAiB;IACjF,OAAO,CAAC,YAAY,CAAK;IACzB,OAAO,CAAC,gBAAgB,CAA8C;;IAO/D,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI;IAIrC,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC;YASxE,QAAQ;CAWvB;AAED,gBAAgB;AAChB,qBAAa,mBAAoB,SAAQ,YAAa,YAAW,gBAAgB;IAC/E,OAAO,CAAC,SAAS,CAAyF;;IAOnG,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI;IAI3C,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,OAAO,CAAC,GAAG,CAAC,GAAG,cAAc;YAS7G,QAAQ;CAqBvB"}
1
+ {"version":3,"file":"IpcWebSocket.d.ts","sourceRoot":"","sources":["../../../src/ipc/IpcWebSocket.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC1G,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,gBAAgB;AAChB,oBAAY,uBAAuB;IACjC,IAAI,IAAA;IACJ,IAAI,IAAA;IACJ,MAAM,IAAA;IACN,QAAQ,IAAA;IACR,QAAQ,IAAA;IACR,SAAS,IAAA;CACV;AAED,gBAAgB;AAChB,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,uBAAuB,CAAC;IAC9B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,gBAAgB;AAChB,yBAAiB,mBAAmB,CAAC;IAGnC,SAAgB,IAAI,IAAI,MAAM,CAE7B;IAED,SAAgB,QAAQ,IAAI,mBAAmB,CAE9C;IAED,SAAgB,SAAS,IAAI,mBAAmB,CAE/C;IAED,SAAgB,IAAI,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAE1D;CACF;AAED,gBAAgB;AAChB,8BAAsB,YAAa,YAAW,SAAS;IACrD,OAAc,SAAS,EAAE,qBAAqB,CAAC;IAC/C,OAAc,SAAS,EAAE,GAAG,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE,mBAAmB,KAAK,IAAI,CAAC,CAAa;IAE7F,SAAS,CAAC,SAAS,gCAAuC;;aAM1C,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI;IAEpD,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,GAAG,cAAc;IAanE,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW;YAI9C,SAAS;CAexB;AAED,gBAAgB;AAChB,qBAAa,oBAAqB,SAAQ,YAAa,YAAW,iBAAiB;IACjF,OAAO,CAAC,YAAY,CAAK;IACzB,OAAO,CAAC,gBAAgB,CAA8C;;IAO/D,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI;IAKrC,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC;YAUxE,QAAQ;CAWvB;AAED,gBAAgB;AAChB,qBAAa,mBAAoB,SAAQ,YAAa,YAAW,gBAAgB;IAC/E,OAAO,CAAC,SAAS,CAAyF;;IAOnG,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI;IAK3C,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,OAAO,CAAC,GAAG,CAAC,GAAG,cAAc;YAS7G,QAAQ;CAwBvB"}
@@ -7,11 +7,7 @@
7
7
  * @module IpcSocket
8
8
  */
9
9
  Object.defineProperty(exports, "__esModule", { value: true });
10
- exports.IpcWebSocketBackend = exports.IpcWebSocketFrontend = exports.IpcWebSocket = exports.IpcWebSocketMessageType = exports.IpcWebSocketTransport = void 0;
11
- /** @internal */
12
- class IpcWebSocketTransport {
13
- }
14
- exports.IpcWebSocketTransport = IpcWebSocketTransport;
10
+ exports.IpcWebSocketBackend = exports.IpcWebSocketFrontend = exports.IpcWebSocket = exports.IpcWebSocketMessage = exports.IpcWebSocketMessageType = void 0;
15
11
  /** @internal */
16
12
  var IpcWebSocketMessageType;
17
13
  (function (IpcWebSocketMessageType) {
@@ -19,8 +15,31 @@ var IpcWebSocketMessageType;
19
15
  IpcWebSocketMessageType[IpcWebSocketMessageType["Push"] = 1] = "Push";
20
16
  IpcWebSocketMessageType[IpcWebSocketMessageType["Invoke"] = 2] = "Invoke";
21
17
  IpcWebSocketMessageType[IpcWebSocketMessageType["Response"] = 3] = "Response";
18
+ IpcWebSocketMessageType[IpcWebSocketMessageType["Internal"] = 4] = "Internal";
19
+ IpcWebSocketMessageType[IpcWebSocketMessageType["Duplicate"] = 5] = "Duplicate";
22
20
  })(IpcWebSocketMessageType = exports.IpcWebSocketMessageType || (exports.IpcWebSocketMessageType = {}));
23
21
  /** @internal */
22
+ var IpcWebSocketMessage;
23
+ (function (IpcWebSocketMessage) {
24
+ let _next = -1;
25
+ function next() {
26
+ return ++_next;
27
+ }
28
+ IpcWebSocketMessage.next = next;
29
+ function internal() {
30
+ return { type: IpcWebSocketMessageType.Internal, channel: "", sequence: Number.MIN_SAFE_INTEGER };
31
+ }
32
+ IpcWebSocketMessage.internal = internal;
33
+ function duplicate() {
34
+ return { type: IpcWebSocketMessageType.Duplicate, channel: "", sequence: Number.MIN_SAFE_INTEGER };
35
+ }
36
+ IpcWebSocketMessage.duplicate = duplicate;
37
+ function skip(message) {
38
+ return message.type === IpcWebSocketMessageType.Internal || message.type === IpcWebSocketMessageType.Duplicate;
39
+ }
40
+ IpcWebSocketMessage.skip = skip;
41
+ })(IpcWebSocketMessage = exports.IpcWebSocketMessage || (exports.IpcWebSocketMessage = {}));
42
+ /** @internal */
24
43
  class IpcWebSocket {
25
44
  constructor() {
26
45
  this._channels = new Map();
@@ -64,11 +83,13 @@ class IpcWebSocketFrontend extends IpcWebSocket {
64
83
  IpcWebSocket.receivers.add(async (e, m) => this.dispatch(e, m));
65
84
  }
66
85
  send(channel, ...data) {
67
- IpcWebSocket.transport.send({ type: IpcWebSocketMessageType.Send, channel, data });
86
+ const sequence = IpcWebSocketMessage.next();
87
+ IpcWebSocket.transport.send({ type: IpcWebSocketMessageType.Send, channel, data, sequence });
68
88
  }
69
89
  async invoke(channel, methodName, ...args) {
70
90
  const requestId = ++this._nextRequest;
71
- IpcWebSocket.transport.send({ type: IpcWebSocketMessageType.Invoke, channel, method: methodName, data: args, request: requestId });
91
+ const sequence = IpcWebSocketMessage.next();
92
+ IpcWebSocket.transport.send({ type: IpcWebSocketMessageType.Invoke, channel, method: methodName, data: args, request: requestId, sequence });
72
93
  return new Promise((resolve) => {
73
94
  this._pendingRequests.set(requestId, resolve);
74
95
  });
@@ -92,7 +113,8 @@ class IpcWebSocketBackend extends IpcWebSocket {
92
113
  IpcWebSocket.receivers.add(async (e, m) => this.dispatch(e, m));
93
114
  }
94
115
  send(channel, ...data) {
95
- IpcWebSocket.transport.send({ type: IpcWebSocketMessageType.Push, channel, data });
116
+ const sequence = IpcWebSocketMessage.next();
117
+ IpcWebSocket.transport.send({ type: IpcWebSocketMessageType.Push, channel, data, sequence });
96
118
  }
97
119
  handle(channel, handler) {
98
120
  this._handlers.set(channel, handler);
@@ -111,11 +133,13 @@ class IpcWebSocketBackend extends IpcWebSocket {
111
133
  if (typeof (args) === "undefined")
112
134
  args = [];
113
135
  const response = await handler({}, message.method, ...args);
136
+ const sequence = IpcWebSocketMessage.next();
114
137
  IpcWebSocket.transport.send({
115
138
  type: IpcWebSocketMessageType.Response,
116
139
  channel: message.channel,
117
140
  response: message.request,
118
141
  data: response,
142
+ sequence,
119
143
  });
120
144
  }
121
145
  }
@@ -1 +1 @@
1
- {"version":3,"file":"IpcWebSocket.js","sourceRoot":"","sources":["../../../src/ipc/IpcWebSocket.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module IpcSocket\r\n */\r\n\r\nimport { IpcListener, IpcSocket, IpcSocketBackend, IpcSocketFrontend, RemoveFunction } from \"./IpcSocket\";\r\n\r\n/** @internal */\r\nexport abstract class IpcWebSocketTransport {\r\n public abstract send(message: IpcWebSocketMessage): void;\r\n}\r\n\r\n/** @internal */\r\nexport enum IpcWebSocketMessageType {\r\n Send,\r\n Push,\r\n Invoke,\r\n Response\r\n}\r\n\r\n/** @internal */\r\nexport interface IpcWebSocketMessage {\r\n type: IpcWebSocketMessageType;\r\n request?: number;\r\n response?: number;\r\n channel: string;\r\n method?: string;\r\n data?: any[];\r\n}\r\n\r\n/** @internal */\r\nexport abstract class IpcWebSocket implements IpcSocket {\r\n public static transport: IpcWebSocketTransport;\r\n public static receivers: Set<(evt: Event, message: IpcWebSocketMessage) => void> = new Set();\r\n\r\n protected _channels = new Map<string, Set<IpcListener>>();\r\n\r\n public constructor() {\r\n IpcWebSocket.receivers.add(async (e, m) => this.broadcast(e, m));\r\n }\r\n\r\n public abstract send(channel: string, ...data: any[]): void;\r\n\r\n public addListener(channel: string, listener: IpcListener): RemoveFunction {\r\n let listeners = this._channels.get(channel);\r\n if (!listeners) {\r\n listeners = new Set();\r\n this._channels.set(channel, listeners);\r\n }\r\n\r\n if (!listeners.has(listener))\r\n listeners.add(listener);\r\n\r\n return () => listeners!.delete(listener);\r\n }\r\n\r\n public removeListener(channel: string, listener: IpcListener) {\r\n this._channels.get(channel)?.delete(listener);\r\n }\r\n\r\n private async broadcast(evt: Event, message: IpcWebSocketMessage) {\r\n if (message.type !== IpcWebSocketMessageType.Send && message.type !== IpcWebSocketMessageType.Push)\r\n return;\r\n\r\n const handlers = this._channels.get(message.channel);\r\n if (!handlers)\r\n return;\r\n\r\n let arg = message.data;\r\n if (typeof (arg) === \"undefined\")\r\n arg = [];\r\n\r\n for (const handler of handlers)\r\n handler(evt, ...arg);\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport class IpcWebSocketFrontend extends IpcWebSocket implements IpcSocketFrontend {\r\n private _nextRequest = 0;\r\n private _pendingRequests = new Map<number, (response: any) => void>();\r\n\r\n public constructor() {\r\n super();\r\n IpcWebSocket.receivers.add(async (e, m) => this.dispatch(e, m));\r\n }\r\n\r\n public send(channel: string, ...data: any[]): void {\r\n IpcWebSocket.transport.send({ type: IpcWebSocketMessageType.Send, channel, data });\r\n }\r\n\r\n public async invoke(channel: string, methodName: string, ...args: any[]): Promise<any> {\r\n const requestId = ++this._nextRequest;\r\n IpcWebSocket.transport.send({ type: IpcWebSocketMessageType.Invoke, channel, method: methodName, data: args, request: requestId });\r\n\r\n return new Promise((resolve) => {\r\n this._pendingRequests.set(requestId, resolve);\r\n });\r\n }\r\n\r\n private async dispatch(_evt: Event, message: IpcWebSocketMessage) {\r\n if (message.type !== IpcWebSocketMessageType.Response || !message.response)\r\n return;\r\n\r\n const pendingHandler = this._pendingRequests.get(message.response);\r\n if (!pendingHandler)\r\n return;\r\n\r\n this._pendingRequests.delete(message.response);\r\n pendingHandler(message.data);\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport class IpcWebSocketBackend extends IpcWebSocket implements IpcSocketBackend {\r\n private _handlers = new Map<string, (event: Event, methodName: string, ...args: any[]) => Promise<any>>();\r\n\r\n public constructor() {\r\n super();\r\n IpcWebSocket.receivers.add(async (e, m) => this.dispatch(e, m));\r\n }\r\n\r\n public send(channel: string, ...data: any[]): void {\r\n IpcWebSocket.transport.send({ type: IpcWebSocketMessageType.Push, channel, data });\r\n }\r\n\r\n public handle(channel: string, handler: (event: Event, methodName: string, ...args: any[]) => Promise<any>): RemoveFunction {\r\n this._handlers.set(channel, handler);\r\n\r\n return () => {\r\n if (this._handlers.get(channel) === handler)\r\n this._handlers.delete(channel);\r\n };\r\n }\r\n\r\n private async dispatch(_evt: Event, message: IpcWebSocketMessage) {\r\n if (message.type !== IpcWebSocketMessageType.Invoke || !message.method)\r\n return;\r\n\r\n const handler = this._handlers.get(message.channel);\r\n if (!handler)\r\n return;\r\n\r\n let args = message.data;\r\n if (typeof (args) === \"undefined\")\r\n args = [];\r\n\r\n const response = await handler({} as any, message.method, ...args);\r\n\r\n IpcWebSocket.transport.send({\r\n type: IpcWebSocketMessageType.Response,\r\n channel: message.channel,\r\n response: message.request,\r\n data: response,\r\n });\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"IpcWebSocket.js","sourceRoot":"","sources":["../../../src/ipc/IpcWebSocket.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module IpcSocket\r\n */\r\n\r\nimport { IpcListener, IpcSocket, IpcSocketBackend, IpcSocketFrontend, RemoveFunction } from \"./IpcSocket\";\r\nimport { IpcWebSocketTransport } from \"./IpcWebSocketTransport\";\r\n\r\n/** @internal */\r\nexport enum IpcWebSocketMessageType {\r\n Send,\r\n Push,\r\n Invoke,\r\n Response,\r\n Internal,\r\n Duplicate\r\n}\r\n\r\n/** @internal */\r\nexport interface IpcWebSocketMessage {\r\n type: IpcWebSocketMessageType;\r\n request?: number;\r\n response?: number;\r\n channel: string;\r\n method?: string;\r\n data?: any[];\r\n sequence: number;\r\n}\r\n\r\n/** @internal */\r\nexport namespace IpcWebSocketMessage {\r\n let _next = -1;\r\n\r\n export function next(): number {\r\n return ++_next;\r\n }\r\n\r\n export function internal(): IpcWebSocketMessage {\r\n return { type: IpcWebSocketMessageType.Internal, channel: \"\", sequence: Number.MIN_SAFE_INTEGER };\r\n }\r\n\r\n export function duplicate(): IpcWebSocketMessage {\r\n return { type: IpcWebSocketMessageType.Duplicate, channel: \"\", sequence: Number.MIN_SAFE_INTEGER };\r\n }\r\n\r\n export function skip(message: IpcWebSocketMessage): boolean {\r\n return message.type === IpcWebSocketMessageType.Internal || message.type === IpcWebSocketMessageType.Duplicate;\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport abstract class IpcWebSocket implements IpcSocket {\r\n public static transport: IpcWebSocketTransport;\r\n public static receivers: Set<(evt: Event, message: IpcWebSocketMessage) => void> = new Set();\r\n\r\n protected _channels = new Map<string, Set<IpcListener>>();\r\n\r\n public constructor() {\r\n IpcWebSocket.receivers.add(async (e, m) => this.broadcast(e, m));\r\n }\r\n\r\n public abstract send(channel: string, ...data: any[]): void;\r\n\r\n public addListener(channel: string, listener: IpcListener): RemoveFunction {\r\n let listeners = this._channels.get(channel);\r\n if (!listeners) {\r\n listeners = new Set();\r\n this._channels.set(channel, listeners);\r\n }\r\n\r\n if (!listeners.has(listener))\r\n listeners.add(listener);\r\n\r\n return () => listeners!.delete(listener);\r\n }\r\n\r\n public removeListener(channel: string, listener: IpcListener) {\r\n this._channels.get(channel)?.delete(listener);\r\n }\r\n\r\n private async broadcast(evt: Event, message: IpcWebSocketMessage) {\r\n if (message.type !== IpcWebSocketMessageType.Send && message.type !== IpcWebSocketMessageType.Push)\r\n return;\r\n\r\n const handlers = this._channels.get(message.channel);\r\n if (!handlers)\r\n return;\r\n\r\n let arg = message.data;\r\n if (typeof (arg) === \"undefined\")\r\n arg = [];\r\n\r\n for (const handler of handlers)\r\n handler(evt, ...arg);\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport class IpcWebSocketFrontend extends IpcWebSocket implements IpcSocketFrontend {\r\n private _nextRequest = 0;\r\n private _pendingRequests = new Map<number, (response: any) => void>();\r\n\r\n public constructor() {\r\n super();\r\n IpcWebSocket.receivers.add(async (e, m) => this.dispatch(e, m));\r\n }\r\n\r\n public send(channel: string, ...data: any[]): void {\r\n const sequence = IpcWebSocketMessage.next();\r\n IpcWebSocket.transport.send({ type: IpcWebSocketMessageType.Send, channel, data, sequence });\r\n }\r\n\r\n public async invoke(channel: string, methodName: string, ...args: any[]): Promise<any> {\r\n const requestId = ++this._nextRequest;\r\n const sequence = IpcWebSocketMessage.next();\r\n IpcWebSocket.transport.send({ type: IpcWebSocketMessageType.Invoke, channel, method: methodName, data: args, request: requestId, sequence });\r\n\r\n return new Promise((resolve) => {\r\n this._pendingRequests.set(requestId, resolve);\r\n });\r\n }\r\n\r\n private async dispatch(_evt: Event, message: IpcWebSocketMessage) {\r\n if (message.type !== IpcWebSocketMessageType.Response || !message.response)\r\n return;\r\n\r\n const pendingHandler = this._pendingRequests.get(message.response);\r\n if (!pendingHandler)\r\n return;\r\n\r\n this._pendingRequests.delete(message.response);\r\n pendingHandler(message.data);\r\n }\r\n}\r\n\r\n/** @internal */\r\nexport class IpcWebSocketBackend extends IpcWebSocket implements IpcSocketBackend {\r\n private _handlers = new Map<string, (event: Event, methodName: string, ...args: any[]) => Promise<any>>();\r\n\r\n public constructor() {\r\n super();\r\n IpcWebSocket.receivers.add(async (e, m) => this.dispatch(e, m));\r\n }\r\n\r\n public send(channel: string, ...data: any[]): void {\r\n const sequence = IpcWebSocketMessage.next();\r\n IpcWebSocket.transport.send({ type: IpcWebSocketMessageType.Push, channel, data, sequence });\r\n }\r\n\r\n public handle(channel: string, handler: (event: Event, methodName: string, ...args: any[]) => Promise<any>): RemoveFunction {\r\n this._handlers.set(channel, handler);\r\n\r\n return () => {\r\n if (this._handlers.get(channel) === handler)\r\n this._handlers.delete(channel);\r\n };\r\n }\r\n\r\n private async dispatch(_evt: Event, message: IpcWebSocketMessage) {\r\n if (message.type !== IpcWebSocketMessageType.Invoke || !message.method)\r\n return;\r\n\r\n const handler = this._handlers.get(message.channel);\r\n if (!handler)\r\n return;\r\n\r\n let args = message.data;\r\n if (typeof (args) === \"undefined\")\r\n args = [];\r\n\r\n const response = await handler({} as any, message.method, ...args);\r\n\r\n const sequence = IpcWebSocketMessage.next();\r\n\r\n IpcWebSocket.transport.send({\r\n type: IpcWebSocketMessageType.Response,\r\n channel: message.channel,\r\n response: message.request,\r\n data: response,\r\n sequence,\r\n });\r\n }\r\n}\r\n"]}