@itwin/core-common 5.0.0-dev.66 → 5.0.0-dev.67
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/cjs/ChangesetProps.d.ts +1 -1
- package/lib/cjs/ChangesetProps.js.map +1 -1
- package/lib/cjs/Image.d.ts +15 -0
- package/lib/cjs/Image.d.ts.map +1 -1
- package/lib/cjs/Image.js +7 -0
- package/lib/cjs/Image.js.map +1 -1
- package/lib/esm/ChangesetProps.d.ts +1 -1
- package/lib/esm/ChangesetProps.js.map +1 -1
- package/lib/esm/Image.d.ts +15 -0
- package/lib/esm/Image.d.ts.map +1 -1
- package/lib/esm/Image.js +6 -0
- package/lib/esm/Image.js.map +1 -1
- package/package.json +6 -6
|
@@ -81,7 +81,7 @@ export interface ChangesetProps {
|
|
|
81
81
|
size: number;
|
|
82
82
|
}
|
|
83
83
|
/** Properties of a changeset file
|
|
84
|
-
* @
|
|
84
|
+
* @public
|
|
85
85
|
*/
|
|
86
86
|
export interface ChangesetFileProps extends ChangesetProps {
|
|
87
87
|
/** The full pathname of the local file holding this changeset. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChangesetProps.js","sourceRoot":"","sources":["../../src/ChangesetProps.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;;GAGG;;;AAuCH;;;GAGG;AACH,IAAY,aAOX;AAPD,WAAY,aAAa;IACvB,mDAAmD;IACnD,uDAAW,CAAA;IACX,+CAA+C;IAC/C,qDAAU,CAAA;IACV,gEAAgE;IAChE,8DAAwB,CAAA;AAC1B,CAAC,EAPW,aAAa,6BAAb,aAAa,QAOxB","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/**\n * @packageDocumentation\n * @module iModels\n */\n\n/** @public */\nexport type LocalFileName = string;\n/** @public */\nexport type LocalDirName = string;\n\n/** A string that identifies a changeset.\n * @note this string is *not* a Guid. It is generated internally based on the content of the changeset.\n * @public\n * @extensions\n */\nexport type ChangesetId = string;\n\n/** The index of a changeset, assigned by iModelHub.\n * @note 0 means \"before the first changeset.\" Values less than 0 are invalid.\n * @public\n * @extensions\n */\nexport type ChangesetIndex = number;\n\n/** Both the index and Id of a changeset\n * @public\n * @extensions\n */\nexport interface ChangesetIndexAndId { readonly index: ChangesetIndex, readonly id: ChangesetId }\n\n/** The Id and optionally the index of a changeset\n * @public\n * @extensions\n */\nexport interface ChangesetIdWithIndex { readonly index?: ChangesetIndex, readonly id: ChangesetId }\n\n/** either changeset index, id, or both\n* @public\n * @extensions\n*/\nexport type ChangesetIndexOrId = ChangesetIndexAndId | { readonly index: ChangesetIndex, readonly id?: never } | { readonly id: ChangesetId, readonly index?: never };\n\n/** Value to indicate whether a changeset contains schema changes or not\n * @public\n * @extensions\n */\nexport enum ChangesetType {\n /** changeset does *not* contain schema changes. */\n Regular = 0,\n /** changeset *does* contain schema changes. */\n Schema = 1,\n /** Schema changeset pushed by iModel with SchemaSync enabled */\n SchemaSync = Schema | 64,\n}\n\n/** Properties of a changeset\n * @public\n */\nexport interface ChangesetProps {\n /** The index (sequence number) from IModelHub for this changeset. Larger index values were pushed later. */\n index: ChangesetIndex;\n /** the ChangesetId */\n id: ChangesetId;\n /** the ChangeSetId of the parent changeset of this changeset */\n parentId: ChangesetId;\n /** The type of changeset */\n changesType: ChangesetType;\n /** The user-supplied description of the work this changeset holds */\n description: string;\n /** The BriefcaseId of the briefcase that created this changeset */\n briefcaseId: number;\n /** The date this changeset was uploaded to the hub */\n pushDate: string;\n /** The identity of the user that created this changeset */\n userCreated: string;\n /** The size, in bytes, of this changeset */\n size: number;\n}\n\n/** Properties of a changeset file\n * @
|
|
1
|
+
{"version":3,"file":"ChangesetProps.js","sourceRoot":"","sources":["../../src/ChangesetProps.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;;GAGG;;;AAuCH;;;GAGG;AACH,IAAY,aAOX;AAPD,WAAY,aAAa;IACvB,mDAAmD;IACnD,uDAAW,CAAA;IACX,+CAA+C;IAC/C,qDAAU,CAAA;IACV,gEAAgE;IAChE,8DAAwB,CAAA;AAC1B,CAAC,EAPW,aAAa,6BAAb,aAAa,QAOxB","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/**\n * @packageDocumentation\n * @module iModels\n */\n\n/** @public */\nexport type LocalFileName = string;\n/** @public */\nexport type LocalDirName = string;\n\n/** A string that identifies a changeset.\n * @note this string is *not* a Guid. It is generated internally based on the content of the changeset.\n * @public\n * @extensions\n */\nexport type ChangesetId = string;\n\n/** The index of a changeset, assigned by iModelHub.\n * @note 0 means \"before the first changeset.\" Values less than 0 are invalid.\n * @public\n * @extensions\n */\nexport type ChangesetIndex = number;\n\n/** Both the index and Id of a changeset\n * @public\n * @extensions\n */\nexport interface ChangesetIndexAndId { readonly index: ChangesetIndex, readonly id: ChangesetId }\n\n/** The Id and optionally the index of a changeset\n * @public\n * @extensions\n */\nexport interface ChangesetIdWithIndex { readonly index?: ChangesetIndex, readonly id: ChangesetId }\n\n/** either changeset index, id, or both\n* @public\n * @extensions\n*/\nexport type ChangesetIndexOrId = ChangesetIndexAndId | { readonly index: ChangesetIndex, readonly id?: never } | { readonly id: ChangesetId, readonly index?: never };\n\n/** Value to indicate whether a changeset contains schema changes or not\n * @public\n * @extensions\n */\nexport enum ChangesetType {\n /** changeset does *not* contain schema changes. */\n Regular = 0,\n /** changeset *does* contain schema changes. */\n Schema = 1,\n /** Schema changeset pushed by iModel with SchemaSync enabled */\n SchemaSync = Schema | 64,\n}\n\n/** Properties of a changeset\n * @public\n */\nexport interface ChangesetProps {\n /** The index (sequence number) from IModelHub for this changeset. Larger index values were pushed later. */\n index: ChangesetIndex;\n /** the ChangesetId */\n id: ChangesetId;\n /** the ChangeSetId of the parent changeset of this changeset */\n parentId: ChangesetId;\n /** The type of changeset */\n changesType: ChangesetType;\n /** The user-supplied description of the work this changeset holds */\n description: string;\n /** The BriefcaseId of the briefcase that created this changeset */\n briefcaseId: number;\n /** The date this changeset was uploaded to the hub */\n pushDate: string;\n /** The identity of the user that created this changeset */\n userCreated: string;\n /** The size, in bytes, of this changeset */\n size: number;\n}\n\n/** Properties of a changeset file\n * @public\n */\nexport interface ChangesetFileProps extends ChangesetProps {\n /** The full pathname of the local file holding this changeset. */\n pathname: LocalFileName;\n}\n\n/**\n * A range of changesets\n * @public\n * @extensions\n */\nexport interface ChangesetRange {\n /** index of the first changeset */\n first: ChangesetIndex;\n /** index of last changeset. If undefined, all changesets after first are returned. */\n end?: ChangesetIndex;\n}\n"]}
|
package/lib/cjs/Image.d.ts
CHANGED
|
@@ -83,4 +83,19 @@ export declare class ImageSource {
|
|
|
83
83
|
/** Construct a new ImageSource, which takes ownership of the Uint8Array. */
|
|
84
84
|
constructor(data: Uint8Array | string, format: ImageSourceFormat);
|
|
85
85
|
}
|
|
86
|
+
/** An [[ImageSource]] encoded in binary form as a Jpeg or Png, as opposed to one encoded
|
|
87
|
+
* in string format as an Svg.
|
|
88
|
+
* Only binary ImageSources can be used for [[Texture]]s stored in [[IModelDb]]s.
|
|
89
|
+
* @public
|
|
90
|
+
*/
|
|
91
|
+
export interface BinaryImageSource {
|
|
92
|
+
/** The format in which the [[data]] is encoded. */
|
|
93
|
+
readonly format: ImageSourceFormat.Jpeg | ImageSourceFormat.Png;
|
|
94
|
+
/** The image data encoded according to [[format]]. */
|
|
95
|
+
readonly data: Uint8Array;
|
|
96
|
+
}
|
|
97
|
+
/** Returns true if `source` is a [[BinaryImageSource]].
|
|
98
|
+
* @public
|
|
99
|
+
*/
|
|
100
|
+
export declare function isBinaryImageSource(source: ImageSource): source is BinaryImageSource;
|
|
86
101
|
//# sourceMappingURL=Image.d.ts.map
|
package/lib/cjs/Image.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Image.d.ts","sourceRoot":"","sources":["../../src/Image.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH;;;;;GAKG;AACH,oBAAY,iBAAiB;IAC3B,uCAAuC;IACvC,IAAI,IAAI;IACR,sCAAsC;IACtC,GAAG,IAAI;IACP,wBAAwB;IACxB,KAAK,IAAI;CACV;AAED;;GAEG;AACH,qBAAa,WAAW;IACtB,sGAAsG;IACtG,SAAgB,IAAI,EAAE,UAAU,CAAC;IACjC,wCAAwC;IACxC,SAAgB,MAAM,EAAE,iBAAiB,CAAC;IAC1C,+BAA+B;IAC/B,SAAgB,KAAK,EAAE,MAAM,CAAC;IAE9B,2DAA2D;IAC3D,IAAW,gBAAgB,IAAI,MAAM,CAAyD;IAE9F,0FAA0F;WAC5E,mBAAmB,CAAC,MAAM,EAAE,iBAAiB,GAAG,MAAM;IAQpE,8CAA8C;IAC9C,IAAW,MAAM,IAAI,MAAM,CAA0E;IAErG;;;;;;;OAOG;WACW,MAAM,CAAC,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,GAAG,WAAW;IAO7F,OAAO,CAAC,MAAM,CAAC,WAAW;IAK1B,OAAO,CAAC,MAAM,CAAC,aAAa;IAI5B,OAAO;CAKR;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAEjD;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAMzD;AAED;;;GAGG;AACH,oBAAY,iBAAiB;IAC3B,kDAAkD;IAClD,IAAI,IAAI;IACR,iDAAiD;IACjD,GAAG,IAAI;IACP;;OAEG;IACH,GAAG,IAAI;CACR;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,IAAI,iBAAiB,CASpF;AAED;;GAEG;AACH,qBAAa,WAAW;IACtB,2CAA2C;IAC3C,SAAgB,IAAI,EAAE,UAAU,GAAG,MAAM,CAAC;IAC1C,4BAA4B;IAC5B,SAAgB,MAAM,EAAE,iBAAiB,CAAC;IAE1C,4EAA4E;gBACzD,IAAI,EAAE,UAAU,GAAG,MAAM,EAAE,MAAM,EAAE,iBAAiB;CAIxE"}
|
|
1
|
+
{"version":3,"file":"Image.d.ts","sourceRoot":"","sources":["../../src/Image.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH;;;;;GAKG;AACH,oBAAY,iBAAiB;IAC3B,uCAAuC;IACvC,IAAI,IAAI;IACR,sCAAsC;IACtC,GAAG,IAAI;IACP,wBAAwB;IACxB,KAAK,IAAI;CACV;AAED;;GAEG;AACH,qBAAa,WAAW;IACtB,sGAAsG;IACtG,SAAgB,IAAI,EAAE,UAAU,CAAC;IACjC,wCAAwC;IACxC,SAAgB,MAAM,EAAE,iBAAiB,CAAC;IAC1C,+BAA+B;IAC/B,SAAgB,KAAK,EAAE,MAAM,CAAC;IAE9B,2DAA2D;IAC3D,IAAW,gBAAgB,IAAI,MAAM,CAAyD;IAE9F,0FAA0F;WAC5E,mBAAmB,CAAC,MAAM,EAAE,iBAAiB,GAAG,MAAM;IAQpE,8CAA8C;IAC9C,IAAW,MAAM,IAAI,MAAM,CAA0E;IAErG;;;;;;;OAOG;WACW,MAAM,CAAC,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,GAAG,WAAW;IAO7F,OAAO,CAAC,MAAM,CAAC,WAAW;IAK1B,OAAO,CAAC,MAAM,CAAC,aAAa;IAI5B,OAAO;CAKR;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAEjD;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAMzD;AAED;;;GAGG;AACH,oBAAY,iBAAiB;IAC3B,kDAAkD;IAClD,IAAI,IAAI;IACR,iDAAiD;IACjD,GAAG,IAAI;IACP;;OAEG;IACH,GAAG,IAAI;CACR;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,IAAI,iBAAiB,CASpF;AAED;;GAEG;AACH,qBAAa,WAAW;IACtB,2CAA2C;IAC3C,SAAgB,IAAI,EAAE,UAAU,GAAG,MAAM,CAAC;IAC1C,4BAA4B;IAC5B,SAAgB,MAAM,EAAE,iBAAiB,CAAC;IAE1C,4EAA4E;gBACzD,IAAI,EAAE,UAAU,GAAG,MAAM,EAAE,MAAM,EAAE,iBAAiB;CAIxE;AAED;;;;GAIG;AACH,MAAM,WAAW,iBAAiB;IAChC,mDAAmD;IACnD,QAAQ,CAAC,MAAM,EAAE,iBAAiB,CAAC,IAAI,GAAG,iBAAiB,CAAC,GAAG,CAAC;IAChE,sDAAsD;IACtD,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;CAC3B;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,IAAI,iBAAiB,CAEpF"}
|
package/lib/cjs/Image.js
CHANGED
|
@@ -11,6 +11,7 @@ exports.ImageSource = exports.ImageSourceFormat = exports.ImageBuffer = exports.
|
|
|
11
11
|
exports.isPowerOfTwo = isPowerOfTwo;
|
|
12
12
|
exports.nextHighestPowerOfTwo = nextHighestPowerOfTwo;
|
|
13
13
|
exports.isValidImageSourceFormat = isValidImageSourceFormat;
|
|
14
|
+
exports.isBinaryImageSource = isBinaryImageSource;
|
|
14
15
|
/** Format of an [[ImageBuffer]].
|
|
15
16
|
* The format determines how many bytes are allocated for each pixel in the buffer and the semantics of each byte.
|
|
16
17
|
* @see [[ImageBuffer.getNumBytesPerPixel]]
|
|
@@ -135,4 +136,10 @@ class ImageSource {
|
|
|
135
136
|
}
|
|
136
137
|
}
|
|
137
138
|
exports.ImageSource = ImageSource;
|
|
139
|
+
/** Returns true if `source` is a [[BinaryImageSource]].
|
|
140
|
+
* @public
|
|
141
|
+
*/
|
|
142
|
+
function isBinaryImageSource(source) {
|
|
143
|
+
return source.format !== ImageSourceFormat.Svg && source.data instanceof Uint8Array;
|
|
144
|
+
}
|
|
138
145
|
//# sourceMappingURL=Image.js.map
|
package/lib/cjs/Image.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Image.js","sourceRoot":"","sources":["../../src/Image.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AA8EH,oCAEC;AAMD,sDAMC;AAoBD,4DASC;
|
|
1
|
+
{"version":3,"file":"Image.js","sourceRoot":"","sources":["../../src/Image.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Rendering\n */\n\n/** Format of an [[ImageBuffer]].\n * The format determines how many bytes are allocated for each pixel in the buffer and the semantics of each byte.\n * @see [[ImageBuffer.getNumBytesPerPixel]]\n * @public\n * @extensions\n */\nexport enum ImageBufferFormat {\n /** RGBA format - 4 bytes per pixel. */\n Rgba = 0,\n /** RGB format - 3 bytes per pixel. */\n Rgb = 2,\n /** 1 byte per pixel. */\n Alpha = 5,\n}\n\n/** Uncompressed rectangular bitmap image data.\n * @public\n */\nexport class ImageBuffer {\n /** Image data in which each pixel occupies 1 or more bytes depending of the [[ImageBufferFormat]]. */\n public readonly data: Uint8Array;\n /** Format of the bytes in the image. */\n public readonly format: ImageBufferFormat;\n /** Width of image in pixels */\n public readonly width: number;\n\n /** Return the number of bytes allocated for each pixel. */\n public get numBytesPerPixel(): number { return ImageBuffer.getNumBytesPerPixel(this.format); }\n\n /** Determine the number of bytes allocated to a single pixel for the specified format. */\n public static getNumBytesPerPixel(format: ImageBufferFormat): number {\n switch (format) {\n case ImageBufferFormat.Alpha: return 1;\n case ImageBufferFormat.Rgb: return 3;\n default: return 4;\n }\n }\n\n /** Get the height of this image in pixels. */\n public get height(): number { return ImageBuffer.computeHeight(this.data, this.format, this.width); }\n\n /** Create a new ImageBuffer.\n * @note The ImageBuffer takes ownership of the input Uint8Array.\n * @param data The uncompressed image bytes. Must be a multiple of the width times the number of bytes per pixel specified by the format.\n * @param format The format of the image.\n * @param width The width of the image in pixels.\n * @returns A new ImageBuffer.\n * @throws Error if the length of the Uint8Array is not appropriate for the specified width and format.\n */\n public static create(data: Uint8Array, format: ImageBufferFormat, width: number): ImageBuffer {\n if (!this.isValidData(data, format, width))\n throw new Error(\"The number of bytes supplied for ImageBuffer do not match its width and format.\");\n\n return new ImageBuffer(data, format, width);\n }\n\n private static isValidData(data: Uint8Array, format: ImageBufferFormat, width: number): boolean {\n const height = this.computeHeight(data, format, width);\n return width > 0 && height > 0 && Math.floor(width) === width && Math.floor(height) === height;\n }\n\n private static computeHeight(data: Uint8Array, format: ImageBufferFormat, width: number): number {\n return data.length / (width * this.getNumBytesPerPixel(format));\n }\n\n private constructor(data: Uint8Array, format: ImageBufferFormat, width: number) {\n this.data = data;\n this.format = format;\n this.width = width;\n }\n}\n\n/** Returns whether the input is a power of two.\n * @note Floating point inputs are truncated.\n * @public\n */\nexport function isPowerOfTwo(num: number): boolean {\n return 0 === (num & (num - 1));\n}\n\n/** Returns the first power-of-two value greater than or equal to the input.\n * @note Floating point inputs are truncated.\n * @public\n */\nexport function nextHighestPowerOfTwo(num: number): number {\n --num;\n for (let i = 1; i < 32; i <<= 1)\n num = num | num >> i;\n\n return num + 1;\n}\n\n/** The format of an ImageSource.\n * @public\n * @extensions\n */\nexport enum ImageSourceFormat {\n /** Image data is stored with JPEG compression. */\n Jpeg = 0,\n /** Image data is stored with PNG compression. */\n Png = 2,\n /** Image is stored as an Svg stream.\n * @note SVG is only valid for ImageSources in JavaScript. It *may not* be used for persistent textures.\n */\n Svg = 3,\n}\n\n/** Returns true if the numeric `format` value is a valid member of the [[ImageSourceFormat]] enumeration.\n * @public\n */\nexport function isValidImageSourceFormat(format: number): format is ImageSourceFormat {\n switch (format) {\n case ImageSourceFormat.Jpeg:\n case ImageSourceFormat.Png:\n case ImageSourceFormat.Svg:\n return true;\n default:\n return false;\n }\n}\n\n/** Image data encoded and compressed in either Jpeg or Png format.\n * @public\n */\nexport class ImageSource {\n /** The content of the image, compressed */\n public readonly data: Uint8Array | string;\n /** The compression type. */\n public readonly format: ImageSourceFormat;\n\n /** Construct a new ImageSource, which takes ownership of the Uint8Array. */\n public constructor(data: Uint8Array | string, format: ImageSourceFormat) {\n this.data = data;\n this.format = format;\n }\n}\n\n/** An [[ImageSource]] encoded in binary form as a Jpeg or Png, as opposed to one encoded\n * in string format as an Svg.\n * Only binary ImageSources can be used for [[Texture]]s stored in [[IModelDb]]s.\n * @public\n */\nexport interface BinaryImageSource {\n /** The format in which the [[data]] is encoded. */\n readonly format: ImageSourceFormat.Jpeg | ImageSourceFormat.Png;\n /** The image data encoded according to [[format]]. */\n readonly data: Uint8Array;\n}\n\n/** Returns true if `source` is a [[BinaryImageSource]].\n * @public\n */\nexport function isBinaryImageSource(source: ImageSource): source is BinaryImageSource {\n return source.format !== ImageSourceFormat.Svg && source.data instanceof Uint8Array;\n}\n"]}
|
|
@@ -81,7 +81,7 @@ export interface ChangesetProps {
|
|
|
81
81
|
size: number;
|
|
82
82
|
}
|
|
83
83
|
/** Properties of a changeset file
|
|
84
|
-
* @
|
|
84
|
+
* @public
|
|
85
85
|
*/
|
|
86
86
|
export interface ChangesetFileProps extends ChangesetProps {
|
|
87
87
|
/** The full pathname of the local file holding this changeset. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChangesetProps.js","sourceRoot":"","sources":["../../src/ChangesetProps.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;;GAGG;AAuCH;;;GAGG;AACH,MAAM,CAAN,IAAY,aAOX;AAPD,WAAY,aAAa;IACvB,mDAAmD;IACnD,uDAAW,CAAA;IACX,+CAA+C;IAC/C,qDAAU,CAAA;IACV,gEAAgE;IAChE,8DAAwB,CAAA;AAC1B,CAAC,EAPW,aAAa,KAAb,aAAa,QAOxB","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/**\n * @packageDocumentation\n * @module iModels\n */\n\n/** @public */\nexport type LocalFileName = string;\n/** @public */\nexport type LocalDirName = string;\n\n/** A string that identifies a changeset.\n * @note this string is *not* a Guid. It is generated internally based on the content of the changeset.\n * @public\n * @extensions\n */\nexport type ChangesetId = string;\n\n/** The index of a changeset, assigned by iModelHub.\n * @note 0 means \"before the first changeset.\" Values less than 0 are invalid.\n * @public\n * @extensions\n */\nexport type ChangesetIndex = number;\n\n/** Both the index and Id of a changeset\n * @public\n * @extensions\n */\nexport interface ChangesetIndexAndId { readonly index: ChangesetIndex, readonly id: ChangesetId }\n\n/** The Id and optionally the index of a changeset\n * @public\n * @extensions\n */\nexport interface ChangesetIdWithIndex { readonly index?: ChangesetIndex, readonly id: ChangesetId }\n\n/** either changeset index, id, or both\n* @public\n * @extensions\n*/\nexport type ChangesetIndexOrId = ChangesetIndexAndId | { readonly index: ChangesetIndex, readonly id?: never } | { readonly id: ChangesetId, readonly index?: never };\n\n/** Value to indicate whether a changeset contains schema changes or not\n * @public\n * @extensions\n */\nexport enum ChangesetType {\n /** changeset does *not* contain schema changes. */\n Regular = 0,\n /** changeset *does* contain schema changes. */\n Schema = 1,\n /** Schema changeset pushed by iModel with SchemaSync enabled */\n SchemaSync = Schema | 64,\n}\n\n/** Properties of a changeset\n * @public\n */\nexport interface ChangesetProps {\n /** The index (sequence number) from IModelHub for this changeset. Larger index values were pushed later. */\n index: ChangesetIndex;\n /** the ChangesetId */\n id: ChangesetId;\n /** the ChangeSetId of the parent changeset of this changeset */\n parentId: ChangesetId;\n /** The type of changeset */\n changesType: ChangesetType;\n /** The user-supplied description of the work this changeset holds */\n description: string;\n /** The BriefcaseId of the briefcase that created this changeset */\n briefcaseId: number;\n /** The date this changeset was uploaded to the hub */\n pushDate: string;\n /** The identity of the user that created this changeset */\n userCreated: string;\n /** The size, in bytes, of this changeset */\n size: number;\n}\n\n/** Properties of a changeset file\n * @
|
|
1
|
+
{"version":3,"file":"ChangesetProps.js","sourceRoot":"","sources":["../../src/ChangesetProps.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;;GAGG;AAuCH;;;GAGG;AACH,MAAM,CAAN,IAAY,aAOX;AAPD,WAAY,aAAa;IACvB,mDAAmD;IACnD,uDAAW,CAAA;IACX,+CAA+C;IAC/C,qDAAU,CAAA;IACV,gEAAgE;IAChE,8DAAwB,CAAA;AAC1B,CAAC,EAPW,aAAa,KAAb,aAAa,QAOxB","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/**\n * @packageDocumentation\n * @module iModels\n */\n\n/** @public */\nexport type LocalFileName = string;\n/** @public */\nexport type LocalDirName = string;\n\n/** A string that identifies a changeset.\n * @note this string is *not* a Guid. It is generated internally based on the content of the changeset.\n * @public\n * @extensions\n */\nexport type ChangesetId = string;\n\n/** The index of a changeset, assigned by iModelHub.\n * @note 0 means \"before the first changeset.\" Values less than 0 are invalid.\n * @public\n * @extensions\n */\nexport type ChangesetIndex = number;\n\n/** Both the index and Id of a changeset\n * @public\n * @extensions\n */\nexport interface ChangesetIndexAndId { readonly index: ChangesetIndex, readonly id: ChangesetId }\n\n/** The Id and optionally the index of a changeset\n * @public\n * @extensions\n */\nexport interface ChangesetIdWithIndex { readonly index?: ChangesetIndex, readonly id: ChangesetId }\n\n/** either changeset index, id, or both\n* @public\n * @extensions\n*/\nexport type ChangesetIndexOrId = ChangesetIndexAndId | { readonly index: ChangesetIndex, readonly id?: never } | { readonly id: ChangesetId, readonly index?: never };\n\n/** Value to indicate whether a changeset contains schema changes or not\n * @public\n * @extensions\n */\nexport enum ChangesetType {\n /** changeset does *not* contain schema changes. */\n Regular = 0,\n /** changeset *does* contain schema changes. */\n Schema = 1,\n /** Schema changeset pushed by iModel with SchemaSync enabled */\n SchemaSync = Schema | 64,\n}\n\n/** Properties of a changeset\n * @public\n */\nexport interface ChangesetProps {\n /** The index (sequence number) from IModelHub for this changeset. Larger index values were pushed later. */\n index: ChangesetIndex;\n /** the ChangesetId */\n id: ChangesetId;\n /** the ChangeSetId of the parent changeset of this changeset */\n parentId: ChangesetId;\n /** The type of changeset */\n changesType: ChangesetType;\n /** The user-supplied description of the work this changeset holds */\n description: string;\n /** The BriefcaseId of the briefcase that created this changeset */\n briefcaseId: number;\n /** The date this changeset was uploaded to the hub */\n pushDate: string;\n /** The identity of the user that created this changeset */\n userCreated: string;\n /** The size, in bytes, of this changeset */\n size: number;\n}\n\n/** Properties of a changeset file\n * @public\n */\nexport interface ChangesetFileProps extends ChangesetProps {\n /** The full pathname of the local file holding this changeset. */\n pathname: LocalFileName;\n}\n\n/**\n * A range of changesets\n * @public\n * @extensions\n */\nexport interface ChangesetRange {\n /** index of the first changeset */\n first: ChangesetIndex;\n /** index of last changeset. If undefined, all changesets after first are returned. */\n end?: ChangesetIndex;\n}\n"]}
|
package/lib/esm/Image.d.ts
CHANGED
|
@@ -83,4 +83,19 @@ export declare class ImageSource {
|
|
|
83
83
|
/** Construct a new ImageSource, which takes ownership of the Uint8Array. */
|
|
84
84
|
constructor(data: Uint8Array | string, format: ImageSourceFormat);
|
|
85
85
|
}
|
|
86
|
+
/** An [[ImageSource]] encoded in binary form as a Jpeg or Png, as opposed to one encoded
|
|
87
|
+
* in string format as an Svg.
|
|
88
|
+
* Only binary ImageSources can be used for [[Texture]]s stored in [[IModelDb]]s.
|
|
89
|
+
* @public
|
|
90
|
+
*/
|
|
91
|
+
export interface BinaryImageSource {
|
|
92
|
+
/** The format in which the [[data]] is encoded. */
|
|
93
|
+
readonly format: ImageSourceFormat.Jpeg | ImageSourceFormat.Png;
|
|
94
|
+
/** The image data encoded according to [[format]]. */
|
|
95
|
+
readonly data: Uint8Array;
|
|
96
|
+
}
|
|
97
|
+
/** Returns true if `source` is a [[BinaryImageSource]].
|
|
98
|
+
* @public
|
|
99
|
+
*/
|
|
100
|
+
export declare function isBinaryImageSource(source: ImageSource): source is BinaryImageSource;
|
|
86
101
|
//# sourceMappingURL=Image.d.ts.map
|
package/lib/esm/Image.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Image.d.ts","sourceRoot":"","sources":["../../src/Image.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH;;;;;GAKG;AACH,oBAAY,iBAAiB;IAC3B,uCAAuC;IACvC,IAAI,IAAI;IACR,sCAAsC;IACtC,GAAG,IAAI;IACP,wBAAwB;IACxB,KAAK,IAAI;CACV;AAED;;GAEG;AACH,qBAAa,WAAW;IACtB,sGAAsG;IACtG,SAAgB,IAAI,EAAE,UAAU,CAAC;IACjC,wCAAwC;IACxC,SAAgB,MAAM,EAAE,iBAAiB,CAAC;IAC1C,+BAA+B;IAC/B,SAAgB,KAAK,EAAE,MAAM,CAAC;IAE9B,2DAA2D;IAC3D,IAAW,gBAAgB,IAAI,MAAM,CAAyD;IAE9F,0FAA0F;WAC5E,mBAAmB,CAAC,MAAM,EAAE,iBAAiB,GAAG,MAAM;IAQpE,8CAA8C;IAC9C,IAAW,MAAM,IAAI,MAAM,CAA0E;IAErG;;;;;;;OAOG;WACW,MAAM,CAAC,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,GAAG,WAAW;IAO7F,OAAO,CAAC,MAAM,CAAC,WAAW;IAK1B,OAAO,CAAC,MAAM,CAAC,aAAa;IAI5B,OAAO;CAKR;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAEjD;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAMzD;AAED;;;GAGG;AACH,oBAAY,iBAAiB;IAC3B,kDAAkD;IAClD,IAAI,IAAI;IACR,iDAAiD;IACjD,GAAG,IAAI;IACP;;OAEG;IACH,GAAG,IAAI;CACR;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,IAAI,iBAAiB,CASpF;AAED;;GAEG;AACH,qBAAa,WAAW;IACtB,2CAA2C;IAC3C,SAAgB,IAAI,EAAE,UAAU,GAAG,MAAM,CAAC;IAC1C,4BAA4B;IAC5B,SAAgB,MAAM,EAAE,iBAAiB,CAAC;IAE1C,4EAA4E;gBACzD,IAAI,EAAE,UAAU,GAAG,MAAM,EAAE,MAAM,EAAE,iBAAiB;CAIxE"}
|
|
1
|
+
{"version":3,"file":"Image.d.ts","sourceRoot":"","sources":["../../src/Image.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH;;;;;GAKG;AACH,oBAAY,iBAAiB;IAC3B,uCAAuC;IACvC,IAAI,IAAI;IACR,sCAAsC;IACtC,GAAG,IAAI;IACP,wBAAwB;IACxB,KAAK,IAAI;CACV;AAED;;GAEG;AACH,qBAAa,WAAW;IACtB,sGAAsG;IACtG,SAAgB,IAAI,EAAE,UAAU,CAAC;IACjC,wCAAwC;IACxC,SAAgB,MAAM,EAAE,iBAAiB,CAAC;IAC1C,+BAA+B;IAC/B,SAAgB,KAAK,EAAE,MAAM,CAAC;IAE9B,2DAA2D;IAC3D,IAAW,gBAAgB,IAAI,MAAM,CAAyD;IAE9F,0FAA0F;WAC5E,mBAAmB,CAAC,MAAM,EAAE,iBAAiB,GAAG,MAAM;IAQpE,8CAA8C;IAC9C,IAAW,MAAM,IAAI,MAAM,CAA0E;IAErG;;;;;;;OAOG;WACW,MAAM,CAAC,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,GAAG,WAAW;IAO7F,OAAO,CAAC,MAAM,CAAC,WAAW;IAK1B,OAAO,CAAC,MAAM,CAAC,aAAa;IAI5B,OAAO;CAKR;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAEjD;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAMzD;AAED;;;GAGG;AACH,oBAAY,iBAAiB;IAC3B,kDAAkD;IAClD,IAAI,IAAI;IACR,iDAAiD;IACjD,GAAG,IAAI;IACP;;OAEG;IACH,GAAG,IAAI;CACR;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,IAAI,iBAAiB,CASpF;AAED;;GAEG;AACH,qBAAa,WAAW;IACtB,2CAA2C;IAC3C,SAAgB,IAAI,EAAE,UAAU,GAAG,MAAM,CAAC;IAC1C,4BAA4B;IAC5B,SAAgB,MAAM,EAAE,iBAAiB,CAAC;IAE1C,4EAA4E;gBACzD,IAAI,EAAE,UAAU,GAAG,MAAM,EAAE,MAAM,EAAE,iBAAiB;CAIxE;AAED;;;;GAIG;AACH,MAAM,WAAW,iBAAiB;IAChC,mDAAmD;IACnD,QAAQ,CAAC,MAAM,EAAE,iBAAiB,CAAC,IAAI,GAAG,iBAAiB,CAAC,GAAG,CAAC;IAChE,sDAAsD;IACtD,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;CAC3B;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,IAAI,iBAAiB,CAEpF"}
|
package/lib/esm/Image.js
CHANGED
|
@@ -127,4 +127,10 @@ export class ImageSource {
|
|
|
127
127
|
this.format = format;
|
|
128
128
|
}
|
|
129
129
|
}
|
|
130
|
+
/** Returns true if `source` is a [[BinaryImageSource]].
|
|
131
|
+
* @public
|
|
132
|
+
*/
|
|
133
|
+
export function isBinaryImageSource(source) {
|
|
134
|
+
return source.format !== ImageSourceFormat.Svg && source.data instanceof Uint8Array;
|
|
135
|
+
}
|
|
130
136
|
//# sourceMappingURL=Image.js.map
|
package/lib/esm/Image.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Image.js","sourceRoot":"","sources":["../../src/Image.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Rendering\n */\n\n/** Format of an [[ImageBuffer]].\n * The format determines how many bytes are allocated for each pixel in the buffer and the semantics of each byte.\n * @see [[ImageBuffer.getNumBytesPerPixel]]\n * @public\n * @extensions\n */\nexport enum ImageBufferFormat {\n /** RGBA format - 4 bytes per pixel. */\n Rgba = 0,\n /** RGB format - 3 bytes per pixel. */\n Rgb = 2,\n /** 1 byte per pixel. */\n Alpha = 5,\n}\n\n/** Uncompressed rectangular bitmap image data.\n * @public\n */\nexport class ImageBuffer {\n /** Image data in which each pixel occupies 1 or more bytes depending of the [[ImageBufferFormat]]. */\n public readonly data: Uint8Array;\n /** Format of the bytes in the image. */\n public readonly format: ImageBufferFormat;\n /** Width of image in pixels */\n public readonly width: number;\n\n /** Return the number of bytes allocated for each pixel. */\n public get numBytesPerPixel(): number { return ImageBuffer.getNumBytesPerPixel(this.format); }\n\n /** Determine the number of bytes allocated to a single pixel for the specified format. */\n public static getNumBytesPerPixel(format: ImageBufferFormat): number {\n switch (format) {\n case ImageBufferFormat.Alpha: return 1;\n case ImageBufferFormat.Rgb: return 3;\n default: return 4;\n }\n }\n\n /** Get the height of this image in pixels. */\n public get height(): number { return ImageBuffer.computeHeight(this.data, this.format, this.width); }\n\n /** Create a new ImageBuffer.\n * @note The ImageBuffer takes ownership of the input Uint8Array.\n * @param data The uncompressed image bytes. Must be a multiple of the width times the number of bytes per pixel specified by the format.\n * @param format The format of the image.\n * @param width The width of the image in pixels.\n * @returns A new ImageBuffer.\n * @throws Error if the length of the Uint8Array is not appropriate for the specified width and format.\n */\n public static create(data: Uint8Array, format: ImageBufferFormat, width: number): ImageBuffer {\n if (!this.isValidData(data, format, width))\n throw new Error(\"The number of bytes supplied for ImageBuffer do not match its width and format.\");\n\n return new ImageBuffer(data, format, width);\n }\n\n private static isValidData(data: Uint8Array, format: ImageBufferFormat, width: number): boolean {\n const height = this.computeHeight(data, format, width);\n return width > 0 && height > 0 && Math.floor(width) === width && Math.floor(height) === height;\n }\n\n private static computeHeight(data: Uint8Array, format: ImageBufferFormat, width: number): number {\n return data.length / (width * this.getNumBytesPerPixel(format));\n }\n\n private constructor(data: Uint8Array, format: ImageBufferFormat, width: number) {\n this.data = data;\n this.format = format;\n this.width = width;\n }\n}\n\n/** Returns whether the input is a power of two.\n * @note Floating point inputs are truncated.\n * @public\n */\nexport function isPowerOfTwo(num: number): boolean {\n return 0 === (num & (num - 1));\n}\n\n/** Returns the first power-of-two value greater than or equal to the input.\n * @note Floating point inputs are truncated.\n * @public\n */\nexport function nextHighestPowerOfTwo(num: number): number {\n --num;\n for (let i = 1; i < 32; i <<= 1)\n num = num | num >> i;\n\n return num + 1;\n}\n\n/** The format of an ImageSource.\n * @public\n * @extensions\n */\nexport enum ImageSourceFormat {\n /** Image data is stored with JPEG compression. */\n Jpeg = 0,\n /** Image data is stored with PNG compression. */\n Png = 2,\n /** Image is stored as an Svg stream.\n * @note SVG is only valid for ImageSources in JavaScript. It *may not* be used for persistent textures.\n */\n Svg = 3,\n}\n\n/** Returns true if the numeric `format` value is a valid member of the [[ImageSourceFormat]] enumeration.\n * @public\n */\nexport function isValidImageSourceFormat(format: number): format is ImageSourceFormat {\n switch (format) {\n case ImageSourceFormat.Jpeg:\n case ImageSourceFormat.Png:\n case ImageSourceFormat.Svg:\n return true;\n default:\n return false;\n }\n}\n\n/** Image data encoded and compressed in either Jpeg or Png format.\n * @public\n */\nexport class ImageSource {\n /** The content of the image, compressed */\n public readonly data: Uint8Array | string;\n /** The compression type. */\n public readonly format: ImageSourceFormat;\n\n /** Construct a new ImageSource, which takes ownership of the Uint8Array. */\n public constructor(data: Uint8Array | string, format: ImageSourceFormat) {\n this.data = data;\n this.format = format;\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"Image.js","sourceRoot":"","sources":["../../src/Image.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Rendering\n */\n\n/** Format of an [[ImageBuffer]].\n * The format determines how many bytes are allocated for each pixel in the buffer and the semantics of each byte.\n * @see [[ImageBuffer.getNumBytesPerPixel]]\n * @public\n * @extensions\n */\nexport enum ImageBufferFormat {\n /** RGBA format - 4 bytes per pixel. */\n Rgba = 0,\n /** RGB format - 3 bytes per pixel. */\n Rgb = 2,\n /** 1 byte per pixel. */\n Alpha = 5,\n}\n\n/** Uncompressed rectangular bitmap image data.\n * @public\n */\nexport class ImageBuffer {\n /** Image data in which each pixel occupies 1 or more bytes depending of the [[ImageBufferFormat]]. */\n public readonly data: Uint8Array;\n /** Format of the bytes in the image. */\n public readonly format: ImageBufferFormat;\n /** Width of image in pixels */\n public readonly width: number;\n\n /** Return the number of bytes allocated for each pixel. */\n public get numBytesPerPixel(): number { return ImageBuffer.getNumBytesPerPixel(this.format); }\n\n /** Determine the number of bytes allocated to a single pixel for the specified format. */\n public static getNumBytesPerPixel(format: ImageBufferFormat): number {\n switch (format) {\n case ImageBufferFormat.Alpha: return 1;\n case ImageBufferFormat.Rgb: return 3;\n default: return 4;\n }\n }\n\n /** Get the height of this image in pixels. */\n public get height(): number { return ImageBuffer.computeHeight(this.data, this.format, this.width); }\n\n /** Create a new ImageBuffer.\n * @note The ImageBuffer takes ownership of the input Uint8Array.\n * @param data The uncompressed image bytes. Must be a multiple of the width times the number of bytes per pixel specified by the format.\n * @param format The format of the image.\n * @param width The width of the image in pixels.\n * @returns A new ImageBuffer.\n * @throws Error if the length of the Uint8Array is not appropriate for the specified width and format.\n */\n public static create(data: Uint8Array, format: ImageBufferFormat, width: number): ImageBuffer {\n if (!this.isValidData(data, format, width))\n throw new Error(\"The number of bytes supplied for ImageBuffer do not match its width and format.\");\n\n return new ImageBuffer(data, format, width);\n }\n\n private static isValidData(data: Uint8Array, format: ImageBufferFormat, width: number): boolean {\n const height = this.computeHeight(data, format, width);\n return width > 0 && height > 0 && Math.floor(width) === width && Math.floor(height) === height;\n }\n\n private static computeHeight(data: Uint8Array, format: ImageBufferFormat, width: number): number {\n return data.length / (width * this.getNumBytesPerPixel(format));\n }\n\n private constructor(data: Uint8Array, format: ImageBufferFormat, width: number) {\n this.data = data;\n this.format = format;\n this.width = width;\n }\n}\n\n/** Returns whether the input is a power of two.\n * @note Floating point inputs are truncated.\n * @public\n */\nexport function isPowerOfTwo(num: number): boolean {\n return 0 === (num & (num - 1));\n}\n\n/** Returns the first power-of-two value greater than or equal to the input.\n * @note Floating point inputs are truncated.\n * @public\n */\nexport function nextHighestPowerOfTwo(num: number): number {\n --num;\n for (let i = 1; i < 32; i <<= 1)\n num = num | num >> i;\n\n return num + 1;\n}\n\n/** The format of an ImageSource.\n * @public\n * @extensions\n */\nexport enum ImageSourceFormat {\n /** Image data is stored with JPEG compression. */\n Jpeg = 0,\n /** Image data is stored with PNG compression. */\n Png = 2,\n /** Image is stored as an Svg stream.\n * @note SVG is only valid for ImageSources in JavaScript. It *may not* be used for persistent textures.\n */\n Svg = 3,\n}\n\n/** Returns true if the numeric `format` value is a valid member of the [[ImageSourceFormat]] enumeration.\n * @public\n */\nexport function isValidImageSourceFormat(format: number): format is ImageSourceFormat {\n switch (format) {\n case ImageSourceFormat.Jpeg:\n case ImageSourceFormat.Png:\n case ImageSourceFormat.Svg:\n return true;\n default:\n return false;\n }\n}\n\n/** Image data encoded and compressed in either Jpeg or Png format.\n * @public\n */\nexport class ImageSource {\n /** The content of the image, compressed */\n public readonly data: Uint8Array | string;\n /** The compression type. */\n public readonly format: ImageSourceFormat;\n\n /** Construct a new ImageSource, which takes ownership of the Uint8Array. */\n public constructor(data: Uint8Array | string, format: ImageSourceFormat) {\n this.data = data;\n this.format = format;\n }\n}\n\n/** An [[ImageSource]] encoded in binary form as a Jpeg or Png, as opposed to one encoded\n * in string format as an Svg.\n * Only binary ImageSources can be used for [[Texture]]s stored in [[IModelDb]]s.\n * @public\n */\nexport interface BinaryImageSource {\n /** The format in which the [[data]] is encoded. */\n readonly format: ImageSourceFormat.Jpeg | ImageSourceFormat.Png;\n /** The image data encoded according to [[format]]. */\n readonly data: Uint8Array;\n}\n\n/** Returns true if `source` is a [[BinaryImageSource]].\n * @public\n */\nexport function isBinaryImageSource(source: ImageSource): source is BinaryImageSource {\n return source.format !== ImageSourceFormat.Svg && source.data instanceof Uint8Array;\n}\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@itwin/core-common",
|
|
3
|
-
"version": "5.0.0-dev.
|
|
3
|
+
"version": "5.0.0-dev.67",
|
|
4
4
|
"description": "iTwin.js components common to frontend and backend",
|
|
5
5
|
"main": "lib/cjs/core-common.js",
|
|
6
6
|
"module": "lib/esm/core-common.js",
|
|
@@ -27,8 +27,8 @@
|
|
|
27
27
|
"js-base64": "^3.6.1"
|
|
28
28
|
},
|
|
29
29
|
"peerDependencies": {
|
|
30
|
-
"@itwin/core-bentley": "5.0.0-dev.
|
|
31
|
-
"@itwin/core-geometry": "5.0.0-dev.
|
|
30
|
+
"@itwin/core-bentley": "5.0.0-dev.67",
|
|
31
|
+
"@itwin/core-geometry": "5.0.0-dev.67"
|
|
32
32
|
},
|
|
33
33
|
"devDependencies": {
|
|
34
34
|
"@itwin/eslint-plugin": "5.0.0-dev.1",
|
|
@@ -42,9 +42,9 @@
|
|
|
42
42
|
"rimraf": "^3.0.2",
|
|
43
43
|
"typescript": "~5.6.2",
|
|
44
44
|
"vitest": "^3.0.5",
|
|
45
|
-
"@itwin/build-tools": "5.0.0-dev.
|
|
46
|
-
"@itwin/core-
|
|
47
|
-
"@itwin/core-
|
|
45
|
+
"@itwin/build-tools": "5.0.0-dev.67",
|
|
46
|
+
"@itwin/core-bentley": "5.0.0-dev.67",
|
|
47
|
+
"@itwin/core-geometry": "5.0.0-dev.67"
|
|
48
48
|
},
|
|
49
49
|
"nyc": {
|
|
50
50
|
"extends": "./node_modules/@itwin/build-tools/.nycrc",
|