🚀 Socket Launch Week Day 5:Introducing Repository Access Permissions and Custom Roles.Learn more
Sign In

@itwin/appui-abstract

Package Overview
Dependencies
Maintainers
5
Versions
1377
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@itwin/appui-abstract - npm Package Compare versions

Comparing version
5.11.0-dev.21
to
5.11.0
+6
-1
CHANGELOG.md
# Change Log - @itwin/appui-abstract
This log was last generated on Tue, 16 Jun 2026 13:00:23 GMT and should not be manually modified.
This log was last generated on Fri, 03 Jul 2026 13:05:21 GMT and should not be manually modified.
## 5.11.0
Fri, 03 Jul 2026 13:05:21 GMT
_Version update only_
## 5.10.3

@@ -6,0 +11,0 @@ Tue, 16 Jun 2026 12:58:32 GMT

+3
-3

@@ -5,3 +5,3 @@ /** @packageDocumentation

/** Enumeration for Function Keys
* @public @deprecated in 4.3 - will not be removed until after 2026-06-13. Please use the `ts-key-enum` npm package or string literals.
* @public @deprecated in 4.3 - might be removed in next major version. Please use the `ts-key-enum` npm package or string literals.
*/

@@ -23,3 +23,3 @@ export declare enum FunctionKey {

/** Enumeration for Special Keys
* @public @deprecated in 4.3 - will not be removed until after 2026-06-13. Please use the `ts-key-enum` npm package or string literals.
* @public @deprecated in 4.3 - might be removed in next major version. Please use the `ts-key-enum` npm package or string literals.
*/

@@ -51,5 +51,5 @@ export declare enum SpecialKey {

/** Determines if a KeyboardEvent.key is an Arrow key
* @public @deprecated in 4.3 - will not be removed until after 2026-06-13. Please use a custom implementation moving forward.
* @public @deprecated in 4.3 - might be removed in next major version. Please use a custom implementation moving forward.
*/
export declare function isArrowKey(key: string): boolean;
//# sourceMappingURL=KeyboardKey.d.ts.map

@@ -13,3 +13,3 @@ "use strict";

/** Enumeration for Function Keys
* @public @deprecated in 4.3 - will not be removed until after 2026-06-13. Please use the `ts-key-enum` npm package or string literals.
* @public @deprecated in 4.3 - might be removed in next major version. Please use the `ts-key-enum` npm package or string literals.
*/

@@ -32,3 +32,3 @@ var FunctionKey;

/** Enumeration for Special Keys
* @public @deprecated in 4.3 - will not be removed until after 2026-06-13. Please use the `ts-key-enum` npm package or string literals.
* @public @deprecated in 4.3 - might be removed in next major version. Please use the `ts-key-enum` npm package or string literals.
*/

@@ -62,3 +62,3 @@ var SpecialKey;

/** Determines if a KeyboardEvent.key is an Arrow key
* @public @deprecated in 4.3 - will not be removed until after 2026-06-13. Please use a custom implementation moving forward.
* @public @deprecated in 4.3 - might be removed in next major version. Please use a custom implementation moving forward.
*/

@@ -65,0 +65,0 @@ function isArrowKey(key) {

@@ -1,1 +0,1 @@

{"version":3,"file":"KeyboardKey.js","sourceRoot":"","sources":["../../../../src/appui-abstract/common/KeyboardKey.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAoDH,gCAGC;AArDD;;GAEG;AACH,IAAY,WAaX;AAbD,WAAY,WAAW;IACrB,wBAAS,CAAA;IACT,wBAAS,CAAA;IACT,wBAAS,CAAA;IACT,wBAAS,CAAA;IACT,wBAAS,CAAA;IACT,wBAAS,CAAA;IACT,wBAAS,CAAA;IACT,wBAAS,CAAA;IACT,wBAAS,CAAA;IACT,0BAAW,CAAA;IACX,0BAAW,CAAA;IACX,0BAAW,CAAA;AACb,CAAC,EAbW,WAAW,2BAAX,WAAW,QAatB;AAED;;GAEG;AACH,IAAY,UAwBX;AAxBD,WAAY,UAAU;IACpB,2BAAa,CAAA;IACb,yBAAW,CAAA;IACX,+BAAiB,CAAA;IACjB,mCAAqB,CAAA;IACrB,+BAAiB,CAAA;IACjB,+BAAiB,CAAA;IACjB,+BAAiB,CAAA;IACjB,yBAAW,CAAA;IACX,qCAAuB,CAAA;IACvB,uCAAyB,CAAA;IACzB,iCAAmB,CAAA;IACnB,qCAAuB,CAAA;IACvB,6BAAe,CAAA;IACf,uEAAuE;IACvE,8BAAgB,CAAA;IAChB,yBAAW,CAAA;IACX,qCAAuB,CAAA;IACvB,6BAAe,CAAA;IACf,+BAAiB,CAAA;IACjB,mCAAqB,CAAA;IACrB,mCAAqB,CAAA;IACrB,yBAAW,CAAA;IACX,iCAAmB,CAAA;AACrB,CAAC,EAxBW,UAAU,0BAAV,UAAU,QAwBrB;AAED;;GAEG;AACH,SAAgB,UAAU,CAAC,GAAW;IACpC,4DAA4D;IAC5D,OAAO,CAAC,GAAG,KAAK,UAAU,CAAC,SAAS,IAAI,GAAG,KAAK,UAAU,CAAC,UAAU,IAAI,GAAG,KAAK,UAAU,CAAC,OAAO,IAAI,GAAG,KAAK,UAAU,CAAC,SAAS,CAAC,CAAC;AACvI,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Utilities\n */\n\n/** Enumeration for Function Keys\n * @public @deprecated in 4.3 - will not be removed until after 2026-06-13. Please use the `ts-key-enum` npm package or string literals.\n */\nexport enum FunctionKey {\n F1 = \"F1\",\n F2 = \"F2\",\n F3 = \"F3\",\n F4 = \"F4\",\n F5 = \"F5\",\n F6 = \"F6\",\n F7 = \"F7\",\n F8 = \"F8\",\n F9 = \"F9\",\n F10 = \"F10\",\n F11 = \"F11\",\n F12 = \"F12\",\n}\n\n/** Enumeration for Special Keys\n * @public @deprecated in 4.3 - will not be removed until after 2026-06-13. Please use the `ts-key-enum` npm package or string literals.\n */\nexport enum SpecialKey {\n Home = \"Home\",\n End = \"End\",\n PageUp = \"PageUp\",\n PageDown = \"PageDown\",\n Escape = \"Escape\",\n Delete = \"Delete\",\n Insert = \"Insert\",\n Tab = \"Tab\",\n ArrowLeft = \"ArrowLeft\",\n ArrowRight = \"ArrowRight\",\n ArrowUp = \"ArrowUp\",\n ArrowDown = \"ArrowDown\",\n Enter = \"Enter\",\n // eslint-disable-next-line @typescript-eslint/no-duplicate-enum-values\n Return = \"Enter\",\n Space = \" \",\n Backspace = \"Backspace\",\n Clear = \"Clear\",\n Divide = \"Divide\",\n Multiply = \"Multiply\",\n Subtract = \"Subtract\",\n Add = \"Add\",\n Decimal = \"Decimal\",\n}\n\n/** Determines if a KeyboardEvent.key is an Arrow key\n * @public @deprecated in 4.3 - will not be removed until after 2026-06-13. Please use a custom implementation moving forward.\n */\nexport function isArrowKey(key: string): boolean {\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n return (key === SpecialKey.ArrowLeft || key === SpecialKey.ArrowRight || key === SpecialKey.ArrowUp || key === SpecialKey.ArrowDown);\n}\n"]}
{"version":3,"file":"KeyboardKey.js","sourceRoot":"","sources":["../../../../src/appui-abstract/common/KeyboardKey.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAoDH,gCAGC;AArDD;;GAEG;AACH,IAAY,WAaX;AAbD,WAAY,WAAW;IACrB,wBAAS,CAAA;IACT,wBAAS,CAAA;IACT,wBAAS,CAAA;IACT,wBAAS,CAAA;IACT,wBAAS,CAAA;IACT,wBAAS,CAAA;IACT,wBAAS,CAAA;IACT,wBAAS,CAAA;IACT,wBAAS,CAAA;IACT,0BAAW,CAAA;IACX,0BAAW,CAAA;IACX,0BAAW,CAAA;AACb,CAAC,EAbW,WAAW,2BAAX,WAAW,QAatB;AAED;;GAEG;AACH,IAAY,UAwBX;AAxBD,WAAY,UAAU;IACpB,2BAAa,CAAA;IACb,yBAAW,CAAA;IACX,+BAAiB,CAAA;IACjB,mCAAqB,CAAA;IACrB,+BAAiB,CAAA;IACjB,+BAAiB,CAAA;IACjB,+BAAiB,CAAA;IACjB,yBAAW,CAAA;IACX,qCAAuB,CAAA;IACvB,uCAAyB,CAAA;IACzB,iCAAmB,CAAA;IACnB,qCAAuB,CAAA;IACvB,6BAAe,CAAA;IACf,uEAAuE;IACvE,8BAAgB,CAAA;IAChB,yBAAW,CAAA;IACX,qCAAuB,CAAA;IACvB,6BAAe,CAAA;IACf,+BAAiB,CAAA;IACjB,mCAAqB,CAAA;IACrB,mCAAqB,CAAA;IACrB,yBAAW,CAAA;IACX,iCAAmB,CAAA;AACrB,CAAC,EAxBW,UAAU,0BAAV,UAAU,QAwBrB;AAED;;GAEG;AACH,SAAgB,UAAU,CAAC,GAAW;IACpC,4DAA4D;IAC5D,OAAO,CAAC,GAAG,KAAK,UAAU,CAAC,SAAS,IAAI,GAAG,KAAK,UAAU,CAAC,UAAU,IAAI,GAAG,KAAK,UAAU,CAAC,OAAO,IAAI,GAAG,KAAK,UAAU,CAAC,SAAS,CAAC,CAAC;AACvI,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Utilities\n */\n\n/** Enumeration for Function Keys\n * @public @deprecated in 4.3 - might be removed in next major version. Please use the `ts-key-enum` npm package or string literals.\n */\nexport enum FunctionKey {\n F1 = \"F1\",\n F2 = \"F2\",\n F3 = \"F3\",\n F4 = \"F4\",\n F5 = \"F5\",\n F6 = \"F6\",\n F7 = \"F7\",\n F8 = \"F8\",\n F9 = \"F9\",\n F10 = \"F10\",\n F11 = \"F11\",\n F12 = \"F12\",\n}\n\n/** Enumeration for Special Keys\n * @public @deprecated in 4.3 - might be removed in next major version. Please use the `ts-key-enum` npm package or string literals.\n */\nexport enum SpecialKey {\n Home = \"Home\",\n End = \"End\",\n PageUp = \"PageUp\",\n PageDown = \"PageDown\",\n Escape = \"Escape\",\n Delete = \"Delete\",\n Insert = \"Insert\",\n Tab = \"Tab\",\n ArrowLeft = \"ArrowLeft\",\n ArrowRight = \"ArrowRight\",\n ArrowUp = \"ArrowUp\",\n ArrowDown = \"ArrowDown\",\n Enter = \"Enter\",\n // eslint-disable-next-line @typescript-eslint/no-duplicate-enum-values\n Return = \"Enter\",\n Space = \" \",\n Backspace = \"Backspace\",\n Clear = \"Clear\",\n Divide = \"Divide\",\n Multiply = \"Multiply\",\n Subtract = \"Subtract\",\n Add = \"Add\",\n Decimal = \"Decimal\",\n}\n\n/** Determines if a KeyboardEvent.key is an Arrow key\n * @public @deprecated in 4.3 - might be removed in next major version. Please use a custom implementation moving forward.\n */\nexport function isArrowKey(key: string): boolean {\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n return (key === SpecialKey.ArrowLeft || key === SpecialKey.ArrowRight || key === SpecialKey.ArrowUp || key === SpecialKey.ArrowDown);\n}\n"]}

@@ -6,3 +6,3 @@ /** @packageDocumentation

* @public
* @deprecated in 4.10.0 - will not be removed until after 2026-06-13. Use `LayoutSplitPropsBase` from `@itwin/appui-react`.
* @deprecated in 4.10.0 - might be removed in next major version. Use `LayoutSplitPropsBase` from `@itwin/appui-react`.
*/

@@ -19,3 +19,3 @@ export interface LayoutSplitPropsBase {

* @public
* @deprecated in 4.10.0 - will not be removed until after 2026-06-13. Use `LayoutFragmentProps` from `@itwin/appui-react`.
* @deprecated in 4.10.0 - might be removed in next major version. Use `LayoutFragmentProps` from `@itwin/appui-react`.
*/

@@ -32,3 +32,3 @@ export interface LayoutFragmentProps {

* @public
* @deprecated in 4.10.0 - will not be removed until after 2026-06-13. Use `LayoutVerticalSplitProps` from `@itwin/appui-react`.
* @deprecated in 4.10.0 - might be removed in next major version. Use `LayoutVerticalSplitProps` from `@itwin/appui-react`.
*/

@@ -49,3 +49,3 @@ export interface LayoutVerticalSplitProps extends LayoutSplitPropsBase {

* @public
* @deprecated in 4.10.0 - will not be removed until after 2026-06-13. Use `LayoutHorizontalSplitProps` from `@itwin/appui-react`.
* @deprecated in 4.10.0 - might be removed in next major version. Use `LayoutHorizontalSplitProps` from `@itwin/appui-react`.
*/

@@ -64,3 +64,3 @@ export interface LayoutHorizontalSplitProps extends LayoutSplitPropsBase {

* @public
* @deprecated in 4.10.0 - will not be removed until after 2026-06-13. Use `ContentLayoutProps` from `@itwin/appui-react`.
* @deprecated in 4.10.0 - might be removed in next major version. Use `ContentLayoutProps` from `@itwin/appui-react`.
*/

@@ -67,0 +67,0 @@ export interface ContentLayoutProps extends LayoutFragmentProps {

@@ -1,1 +0,1 @@

{"version":3,"file":"ContentLayoutProps.js","sourceRoot":"","sources":["../../../../src/appui-abstract/content/ContentLayoutProps.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG","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 ContentView\n */\n\n/* eslint-disable @typescript-eslint/no-deprecated */\n\n/** Base interface for layout split properties\n * @public\n * @deprecated in 4.10.0 - will not be removed until after 2026-06-13. Use `LayoutSplitPropsBase` from `@itwin/appui-react`.\n */\nexport interface LayoutSplitPropsBase {\n /** The id used to save the current state of the splitter */\n id: string;\n /** The percentage of this layout that should be occupied by the top/left fragment by default */\n percentage: number;\n /** Used to lock splitter into fixed position. Defaults to false. */\n lock?: boolean;\n}\n\n/** Properties for a layout fragment\n * @public\n * @deprecated in 4.10.0 - will not be removed until after 2026-06-13. Use `LayoutFragmentProps` from `@itwin/appui-react`.\n */\nexport interface LayoutFragmentProps {\n /** Vertical split layout properties */\n verticalSplit?: LayoutVerticalSplitProps;\n /** Horizontal split layout properties */\n horizontalSplit?: LayoutHorizontalSplitProps;\n}\n\n/** Properties for a vertical layout split.\n * When a member is a [[LayoutFragmentProps]], it creates a nested split pane.\n * When a number, it represents an index into a [[ContentGroup]].\n * @public\n * @deprecated in 4.10.0 - will not be removed until after 2026-06-13. Use `LayoutVerticalSplitProps` from `@itwin/appui-react`.\n */\nexport interface LayoutVerticalSplitProps extends LayoutSplitPropsBase {\n /** Left layout fragment properties. */\n left: LayoutFragmentProps | number;\n /** Right layout fragment properties. */\n right: LayoutFragmentProps | number;\n\n /** Minimum size of the left fragment. */\n minSizeLeft?: number;\n /** Minimum size of the right fragment. */\n minSizeRight?: number;\n}\n\n/** Properties for a horizontal layout split\n * When a member is a [[LayoutFragmentProps]], it creates a nested split pane.\n * When a number, it represents an index into a [[ContentGroup]].\n * @public\n * @deprecated in 4.10.0 - will not be removed until after 2026-06-13. Use `LayoutHorizontalSplitProps` from `@itwin/appui-react`.\n */\nexport interface LayoutHorizontalSplitProps extends LayoutSplitPropsBase {\n /** Top layout fragment properties. */\n top: LayoutFragmentProps | number;\n /** Bottom layout fragment properties. */\n bottom: LayoutFragmentProps | number;\n\n /** Minimum size of the top fragment. */\n minSizeTop?: number;\n /** Minimum size of the bottom fragment. */\n minSizeBottom?: number;\n}\n\n/** Properties for a [[ContentLayoutDef]]\n * @public\n * @deprecated in 4.10.0 - will not be removed until after 2026-06-13. Use `ContentLayoutProps` from `@itwin/appui-react`.\n */\nexport interface ContentLayoutProps extends LayoutFragmentProps {\n /** ID for this Content Layout */\n id: string;\n /** Description of the layout*/\n description?: string;\n}\n"]}
{"version":3,"file":"ContentLayoutProps.js","sourceRoot":"","sources":["../../../../src/appui-abstract/content/ContentLayoutProps.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG","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 ContentView\n */\n\n/* eslint-disable @typescript-eslint/no-deprecated */\n\n/** Base interface for layout split properties\n * @public\n * @deprecated in 4.10.0 - might be removed in next major version. Use `LayoutSplitPropsBase` from `@itwin/appui-react`.\n */\nexport interface LayoutSplitPropsBase {\n /** The id used to save the current state of the splitter */\n id: string;\n /** The percentage of this layout that should be occupied by the top/left fragment by default */\n percentage: number;\n /** Used to lock splitter into fixed position. Defaults to false. */\n lock?: boolean;\n}\n\n/** Properties for a layout fragment\n * @public\n * @deprecated in 4.10.0 - might be removed in next major version. Use `LayoutFragmentProps` from `@itwin/appui-react`.\n */\nexport interface LayoutFragmentProps {\n /** Vertical split layout properties */\n verticalSplit?: LayoutVerticalSplitProps;\n /** Horizontal split layout properties */\n horizontalSplit?: LayoutHorizontalSplitProps;\n}\n\n/** Properties for a vertical layout split.\n * When a member is a [[LayoutFragmentProps]], it creates a nested split pane.\n * When a number, it represents an index into a [[ContentGroup]].\n * @public\n * @deprecated in 4.10.0 - might be removed in next major version. Use `LayoutVerticalSplitProps` from `@itwin/appui-react`.\n */\nexport interface LayoutVerticalSplitProps extends LayoutSplitPropsBase {\n /** Left layout fragment properties. */\n left: LayoutFragmentProps | number;\n /** Right layout fragment properties. */\n right: LayoutFragmentProps | number;\n\n /** Minimum size of the left fragment. */\n minSizeLeft?: number;\n /** Minimum size of the right fragment. */\n minSizeRight?: number;\n}\n\n/** Properties for a horizontal layout split\n * When a member is a [[LayoutFragmentProps]], it creates a nested split pane.\n * When a number, it represents an index into a [[ContentGroup]].\n * @public\n * @deprecated in 4.10.0 - might be removed in next major version. Use `LayoutHorizontalSplitProps` from `@itwin/appui-react`.\n */\nexport interface LayoutHorizontalSplitProps extends LayoutSplitPropsBase {\n /** Top layout fragment properties. */\n top: LayoutFragmentProps | number;\n /** Bottom layout fragment properties. */\n bottom: LayoutFragmentProps | number;\n\n /** Minimum size of the top fragment. */\n minSizeTop?: number;\n /** Minimum size of the bottom fragment. */\n minSizeBottom?: number;\n}\n\n/** Properties for a [[ContentLayoutDef]]\n * @public\n * @deprecated in 4.10.0 - might be removed in next major version. Use `ContentLayoutProps` from `@itwin/appui-react`.\n */\nexport interface ContentLayoutProps extends LayoutFragmentProps {\n /** ID for this Content Layout */\n id: string;\n /** Description of the layout*/\n description?: string;\n}\n"]}

@@ -8,3 +8,3 @@ /** @packageDocumentation

* @public
* @deprecated in 4.10.0 - will not be removed until after 2026-06-13. Use `StandardContentLayouts` from `@itwin/appui-react`.
* @deprecated in 4.10.0 - might be removed in next major version. Use `StandardContentLayouts` from `@itwin/appui-react`.
*/

@@ -11,0 +11,0 @@ export declare class StandardContentLayouts {

@@ -15,3 +15,3 @@ "use strict";

* @public
* @deprecated in 4.10.0 - will not be removed until after 2026-06-13. Use `StandardContentLayouts` from `@itwin/appui-react`.
* @deprecated in 4.10.0 - might be removed in next major version. Use `StandardContentLayouts` from `@itwin/appui-react`.
*/

@@ -18,0 +18,0 @@ class StandardContentLayouts {

@@ -1,1 +0,1 @@

{"version":3,"file":"StandardContentLayouts.js","sourceRoot":"","sources":["../../../../src/appui-abstract/content/StandardContentLayouts.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 ContentView\n */\n\nimport { ContentLayoutProps } from \"./ContentLayoutProps\";\n\n/* eslint-disable @typescript-eslint/no-deprecated */\n\n/**\n * Class that define Standard Content Layouts that can be used to specify how the content is arranged in a frontstage.\n * @public\n * @deprecated in 4.10.0 - will not be removed until after 2026-06-13. Use `StandardContentLayouts` from `@itwin/appui-react`.\n */\nexport class StandardContentLayouts {\n public static readonly singleView: ContentLayoutProps = {\n id: \"uia:singleView\",\n description: \"Single Content View\",\n };\n\n public static readonly fourQuadrants: ContentLayoutProps = {\n id: \"uia:fourQuadrants\",\n description: \"Four Views, two stacked on the left, two stacked on the right\",\n verticalSplit: {\n id: \"uia:fourQuadrantVerticalSplit\",\n percentage: 0.50,\n lock: false,\n minSizeLeft: 100,\n minSizeRight: 100,\n left: { horizontalSplit: { id: \"uia:fourQuadrantsLeftHorizontal\", percentage: 0.50, top: 0, bottom: 1, lock: false, minSizeTop: 50, minSizeBottom: 50 } },\n right: { horizontalSplit: { id: \"uia:fourQuadrantsRightHorizontal\", percentage: 0.50, top: 2, bottom: 3, lock: false, minSizeTop: 50, minSizeBottom: 50 } },\n },\n };\n\n public static readonly twoVerticalSplit: ContentLayoutProps = {\n id: \"uia:twoVerticalSplit\",\n description: \"Two Views, side by side\",\n verticalSplit: {\n id: \"uia:twoViewsVerticalSplit\",\n percentage: 0.50,\n left: 0,\n right: 1,\n },\n };\n public static readonly twoHorizontalSplit: ContentLayoutProps = {\n id: \"uia:twoHorizontalSplit\",\n description: \"Two views, stack one on top of the other\",\n horizontalSplit: {\n id: \"uia:twoViewsHorizontalSplit\",\n percentage: 0.50,\n lock: false,\n top: 0,\n bottom: 1,\n },\n };\n\n public static readonly threeViewsTwoOnLeft: ContentLayoutProps = {\n id: \"uia:threeViewsTwoOnLeft\",\n description: \"Three views, one on the right with the two on the left stacked one of top of the other\",\n verticalSplit: {\n id: \"uia:twoViewsOnLeftSplit\",\n percentage: 0.50,\n left: { horizontalSplit: { id: \"uia:twoViewsOnLeftHorizontal\", percentage: 0.50, top: 0, bottom: 1, lock: false, minSizeTop: 50, minSizeBottom: 50 } },\n right: 2,\n },\n };\n\n public static readonly threeViewsTwoOnRight: ContentLayoutProps = {\n id: \"uia:threeViewsTwoOnRight\",\n description: \"Three views, one on the left with the two on the right stacked one of top of the other\",\n verticalSplit: {\n id: \"uia:twoViewsOnRightSplit\",\n percentage: 0.50,\n left: 0,\n right: { horizontalSplit: { id: \"uia:twoViewsOnRightHorizontal\", percentage: 0.50, top: 1, bottom: 2, lock: false, minSizeTop: 50, minSizeBottom: 50 } },\n },\n };\n\n public static readonly threeViewsTwoOnBottom: ContentLayoutProps = {\n id: \"uia:threeViewsTwoOnBottom\",\n description: \"Three Views, one on top and two side by side on the bottom\",\n horizontalSplit: {\n id: \"uia:threeViewsTwoOnBottomHorizontal\",\n percentage: 0.50,\n lock: false,\n top: 0,\n bottom: { verticalSplit: { id: \"uia:twoViewsOnBottomVertical\", percentage: 0.50, left: 1, right: 2, lock: false, minSizeLeft: 50, minSizeRight: 50 } },\n },\n };\n\n public static readonly threeViewsTwoOnTop: ContentLayoutProps = {\n id: \"uia:threeViewsTwoOnTop\",\n description: \"Three Views, two side by side on top and one on the bottom\",\n horizontalSplit: {\n id: \"uia:twoViewsOnTopHorizontal\",\n percentage: 0.50,\n lock: false,\n top: { verticalSplit: { id: \"uia:twoViewsOnTopVertical\", percentage: 0.50, left: 0, right: 1, lock: false, minSizeLeft: 50, minSizeRight: 50 } },\n bottom: 2,\n },\n };\n\n // provides and iterable list of standard content layouts\n public static readonly availableLayouts: ContentLayoutProps[] = [\n StandardContentLayouts.singleView,\n StandardContentLayouts.fourQuadrants,\n StandardContentLayouts.twoVerticalSplit,\n StandardContentLayouts.twoHorizontalSplit,\n StandardContentLayouts.threeViewsTwoOnLeft,\n StandardContentLayouts.threeViewsTwoOnRight,\n StandardContentLayouts.threeViewsTwoOnBottom,\n StandardContentLayouts.threeViewsTwoOnTop,\n ];\n\n}\n"]}
{"version":3,"file":"StandardContentLayouts.js","sourceRoot":"","sources":["../../../../src/appui-abstract/content/StandardContentLayouts.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAIH,qDAAqD;AAErD;;;;GAIG;AACH,MAAa,sBAAsB;IAC1B,MAAM,CAAU,UAAU,GAAuB;QACtD,EAAE,EAAE,gBAAgB;QACpB,WAAW,EAAE,qBAAqB;KACnC,CAAC;IAEK,MAAM,CAAU,aAAa,GAAuB;QACzD,EAAE,EAAE,mBAAmB;QACvB,WAAW,EAAE,+DAA+D;QAC5E,aAAa,EAAE;YACb,EAAE,EAAE,+BAA+B;YACnC,UAAU,EAAE,IAAI;YAChB,IAAI,EAAE,KAAK;YACX,WAAW,EAAE,GAAG;YAChB,YAAY,EAAE,GAAG;YACjB,IAAI,EAAE,EAAE,eAAe,EAAE,EAAE,EAAE,EAAE,iCAAiC,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE,EAAE;YACzJ,KAAK,EAAE,EAAE,eAAe,EAAE,EAAE,EAAE,EAAE,kCAAkC,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE,EAAE;SAC5J;KACF,CAAC;IAEK,MAAM,CAAU,gBAAgB,GAAuB;QAC5D,EAAE,EAAE,sBAAsB;QAC1B,WAAW,EAAE,yBAAyB;QACtC,aAAa,EAAE;YACb,EAAE,EAAE,2BAA2B;YAC/B,UAAU,EAAE,IAAI;YAChB,IAAI,EAAE,CAAC;YACP,KAAK,EAAE,CAAC;SACT;KACF,CAAC;IACK,MAAM,CAAU,kBAAkB,GAAuB;QAC9D,EAAE,EAAE,wBAAwB;QAC5B,WAAW,EAAE,0CAA0C;QACvD,eAAe,EAAE;YACf,EAAE,EAAE,6BAA6B;YACjC,UAAU,EAAE,IAAI;YAChB,IAAI,EAAE,KAAK;YACX,GAAG,EAAE,CAAC;YACN,MAAM,EAAE,CAAC;SACV;KACF,CAAC;IAEK,MAAM,CAAU,mBAAmB,GAAuB;QAC/D,EAAE,EAAE,yBAAyB;QAC7B,WAAW,EAAE,wFAAwF;QACrG,aAAa,EAAE;YACb,EAAE,EAAE,yBAAyB;YAC7B,UAAU,EAAE,IAAI;YAChB,IAAI,EAAE,EAAE,eAAe,EAAE,EAAE,EAAE,EAAE,8BAA8B,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE,EAAE;YACtJ,KAAK,EAAE,CAAC;SACT;KACF,CAAC;IAEK,MAAM,CAAU,oBAAoB,GAAuB;QAChE,EAAE,EAAE,0BAA0B;QAC9B,WAAW,EAAE,wFAAwF;QACrG,aAAa,EAAE;YACb,EAAE,EAAE,0BAA0B;YAC9B,UAAU,EAAE,IAAI;YAChB,IAAI,EAAE,CAAC;YACP,KAAK,EAAE,EAAE,eAAe,EAAE,EAAE,EAAE,EAAE,+BAA+B,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE,EAAE;SACzJ;KACF,CAAC;IAEK,MAAM,CAAU,qBAAqB,GAAuB;QACjE,EAAE,EAAE,2BAA2B;QAC/B,WAAW,EAAE,4DAA4D;QACzE,eAAe,EAAE;YACf,EAAE,EAAE,qCAAqC;YACzC,UAAU,EAAE,IAAI;YAChB,IAAI,EAAE,KAAK;YACX,GAAG,EAAE,CAAC;YACN,MAAM,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE,EAAE,8BAA8B,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,EAAE;SACvJ;KACF,CAAC;IAEK,MAAM,CAAU,kBAAkB,GAAuB;QAC9D,EAAE,EAAE,wBAAwB;QAC5B,WAAW,EAAE,4DAA4D;QACzE,eAAe,EAAE;YACf,EAAE,EAAE,6BAA6B;YACjC,UAAU,EAAE,IAAI;YAChB,IAAI,EAAE,KAAK;YACX,GAAG,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE,EAAE,2BAA2B,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,EAAE;YAChJ,MAAM,EAAE,CAAC;SACV;KACF,CAAC;IAEF,yDAAyD;IAClD,MAAM,CAAU,gBAAgB,GAAyB;QAC9D,sBAAsB,CAAC,UAAU;QACjC,sBAAsB,CAAC,aAAa;QACpC,sBAAsB,CAAC,gBAAgB;QACvC,sBAAsB,CAAC,kBAAkB;QACzC,sBAAsB,CAAC,mBAAmB;QAC1C,sBAAsB,CAAC,oBAAoB;QAC3C,sBAAsB,CAAC,qBAAqB;QAC5C,sBAAsB,CAAC,kBAAkB;KAC1C,CAAC;;AAlGJ,wDAoGC","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 ContentView\n */\n\nimport { ContentLayoutProps } from \"./ContentLayoutProps\";\n\n/* eslint-disable @typescript-eslint/no-deprecated */\n\n/**\n * Class that define Standard Content Layouts that can be used to specify how the content is arranged in a frontstage.\n * @public\n * @deprecated in 4.10.0 - might be removed in next major version. Use `StandardContentLayouts` from `@itwin/appui-react`.\n */\nexport class StandardContentLayouts {\n public static readonly singleView: ContentLayoutProps = {\n id: \"uia:singleView\",\n description: \"Single Content View\",\n };\n\n public static readonly fourQuadrants: ContentLayoutProps = {\n id: \"uia:fourQuadrants\",\n description: \"Four Views, two stacked on the left, two stacked on the right\",\n verticalSplit: {\n id: \"uia:fourQuadrantVerticalSplit\",\n percentage: 0.50,\n lock: false,\n minSizeLeft: 100,\n minSizeRight: 100,\n left: { horizontalSplit: { id: \"uia:fourQuadrantsLeftHorizontal\", percentage: 0.50, top: 0, bottom: 1, lock: false, minSizeTop: 50, minSizeBottom: 50 } },\n right: { horizontalSplit: { id: \"uia:fourQuadrantsRightHorizontal\", percentage: 0.50, top: 2, bottom: 3, lock: false, minSizeTop: 50, minSizeBottom: 50 } },\n },\n };\n\n public static readonly twoVerticalSplit: ContentLayoutProps = {\n id: \"uia:twoVerticalSplit\",\n description: \"Two Views, side by side\",\n verticalSplit: {\n id: \"uia:twoViewsVerticalSplit\",\n percentage: 0.50,\n left: 0,\n right: 1,\n },\n };\n public static readonly twoHorizontalSplit: ContentLayoutProps = {\n id: \"uia:twoHorizontalSplit\",\n description: \"Two views, stack one on top of the other\",\n horizontalSplit: {\n id: \"uia:twoViewsHorizontalSplit\",\n percentage: 0.50,\n lock: false,\n top: 0,\n bottom: 1,\n },\n };\n\n public static readonly threeViewsTwoOnLeft: ContentLayoutProps = {\n id: \"uia:threeViewsTwoOnLeft\",\n description: \"Three views, one on the right with the two on the left stacked one of top of the other\",\n verticalSplit: {\n id: \"uia:twoViewsOnLeftSplit\",\n percentage: 0.50,\n left: { horizontalSplit: { id: \"uia:twoViewsOnLeftHorizontal\", percentage: 0.50, top: 0, bottom: 1, lock: false, minSizeTop: 50, minSizeBottom: 50 } },\n right: 2,\n },\n };\n\n public static readonly threeViewsTwoOnRight: ContentLayoutProps = {\n id: \"uia:threeViewsTwoOnRight\",\n description: \"Three views, one on the left with the two on the right stacked one of top of the other\",\n verticalSplit: {\n id: \"uia:twoViewsOnRightSplit\",\n percentage: 0.50,\n left: 0,\n right: { horizontalSplit: { id: \"uia:twoViewsOnRightHorizontal\", percentage: 0.50, top: 1, bottom: 2, lock: false, minSizeTop: 50, minSizeBottom: 50 } },\n },\n };\n\n public static readonly threeViewsTwoOnBottom: ContentLayoutProps = {\n id: \"uia:threeViewsTwoOnBottom\",\n description: \"Three Views, one on top and two side by side on the bottom\",\n horizontalSplit: {\n id: \"uia:threeViewsTwoOnBottomHorizontal\",\n percentage: 0.50,\n lock: false,\n top: 0,\n bottom: { verticalSplit: { id: \"uia:twoViewsOnBottomVertical\", percentage: 0.50, left: 1, right: 2, lock: false, minSizeLeft: 50, minSizeRight: 50 } },\n },\n };\n\n public static readonly threeViewsTwoOnTop: ContentLayoutProps = {\n id: \"uia:threeViewsTwoOnTop\",\n description: \"Three Views, two side by side on top and one on the bottom\",\n horizontalSplit: {\n id: \"uia:twoViewsOnTopHorizontal\",\n percentage: 0.50,\n lock: false,\n top: { verticalSplit: { id: \"uia:twoViewsOnTopVertical\", percentage: 0.50, left: 0, right: 1, lock: false, minSizeLeft: 50, minSizeRight: 50 } },\n bottom: 2,\n },\n };\n\n // provides and iterable list of standard content layouts\n public static readonly availableLayouts: ContentLayoutProps[] = [\n StandardContentLayouts.singleView,\n StandardContentLayouts.fourQuadrants,\n StandardContentLayouts.twoVerticalSplit,\n StandardContentLayouts.twoHorizontalSplit,\n StandardContentLayouts.threeViewsTwoOnLeft,\n StandardContentLayouts.threeViewsTwoOnRight,\n StandardContentLayouts.threeViewsTwoOnBottom,\n StandardContentLayouts.threeViewsTwoOnTop,\n ];\n\n}\n"]}

@@ -73,3 +73,3 @@ /** @packageDocumentation

* @alpha
* @deprecated in 5.0 - will not be removed until after 2026-06-13. Use `kindOfQuantityName` instead.
* @deprecated in 5.0 - might be removed in next major version. Use `kindOfQuantityName` instead.
*/

@@ -76,0 +76,0 @@ quantityType?: string;

@@ -1,1 +0,1 @@

{"version":3,"file":"Description.js","sourceRoot":"","sources":["../../../../src/appui-abstract/properties/Description.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 Properties\n */\n\nimport {\n BasePropertyEditorParams, ColorEditorParams, ImageCheckBoxParams, PropertyEditorParams, PropertyEditorParamTypes, RangeEditorParams,\n SuppressLabelEditorParams,\n} from \"./EditorParams\";\nimport { StandardEditorNames } from \"./StandardEditorNames\";\nimport { StandardTypeNames } from \"./StandardTypeNames\";\n\n// cSpell:ignore Picklist\n\n/**\n * Information about an enumeration choice\n * @public\n */\nexport interface EnumerationChoice {\n label: string;\n value: string | number;\n}\n\n/**\n * Information about a set of enumeration choices\n * @public\n */\nexport interface EnumerationChoicesInfo {\n choices: Promise<EnumerationChoice[]> | EnumerationChoice[];\n isStrict?: boolean;\n maxDisplayedRows?: number;\n}\n\n/**\n * Property renderer identification and customization attributes\n * @public\n */\nexport interface PropertyRendererInfo {\n name: string;\n}\n\n/**\n * Information about a Property Editor\n * @public\n */\nexport interface PropertyEditorInfo {\n /** Editor name used in addition to the typename to find the registered property editor */\n name?: string;\n /** Editor params provided to the property editor */\n params?: PropertyEditorParams[];\n}\n\n/**\n * Information about a Property Converter\n * @public\n */\nexport interface PropertyConverterInfo {\n /** Converter name used in addition to the typename to find the registered property converter */\n name?: string;\n /** map of options for type converter */\n options?: { [key: string]: any };\n}\n\n/**\n * [[PropertyDescription]] contains metadata about a Property\n * @public\n */\nexport interface PropertyDescription {\n /** Name of the property description */\n name: string;\n /** Display label for the property description */\n displayLabel: string;\n /** Type name used to determine applicable Type Converter and Property Editor */\n typename: string;\n /** Additional information for enumerations */\n enum?: EnumerationChoicesInfo;\n /** Information for property renderer customization */\n renderer?: PropertyRendererInfo;\n /** Information for a property editor */\n editor?: PropertyEditorInfo;\n /** Information for a property converter */\n converter?: PropertyConverterInfo;\n /** Quantity type key used to look up formatting and parsing specs. This is typically either the name of a quantity type used by a tool\n * or the full name of a KOQ (schema:koq).\n * @alpha\n * @deprecated in 5.0 - will not be removed until after 2026-06-13. Use `kindOfQuantityName` instead.\n */\n quantityType?: string;\n /** [[KindOfQuantity]] full name used to look up [[FormatProps]]\n * @beta\n */\n kindOfQuantityName?: string;\n /** Get the custom DataController by this name and register it with the property editor */\n dataController?: string;\n /** Should property label for composite (struct & array) properties be rendered. */\n hideCompositePropertyLabel?: boolean;\n}\n\n/** Helper class that builds property descriptions for specific PropertyEditors and processes descriptions.\n * @public\n */\nexport class PropertyDescriptionHelper {\n /** Builds a number description with a \"weight-picker\" editor name\n * @public\n */\n public static buildWeightPickerDescription(name: string, label: string, additionalParams: BasePropertyEditorParams[] = []): PropertyDescription {\n return {\n name,\n displayLabel: label,\n typename: StandardTypeNames.Number,\n editor: {\n name: StandardEditorNames.WeightPicker,\n params: additionalParams,\n },\n };\n }\n\n /** Builds an editor that uses [NumberInput]($core-react) control\n * @public\n */\n public static buildNumberEditorDescription(name: string, label: string, overrideParams?: RangeEditorParams, additionalParams: BasePropertyEditorParams[] = []): PropertyDescription {\n const editorParams = [{\n type: PropertyEditorParamTypes.Range,\n step: 1,\n precision: 0,\n ...overrideParams,\n } as RangeEditorParams, ...additionalParams];\n\n const editor = {\n name: StandardEditorNames.NumericInput,\n params: editorParams,\n };\n\n return {\n name,\n displayLabel: label,\n typename: StandardTypeNames.Number,\n editor,\n };\n }\n\n /** Builds a string description\n * @public\n */\n public static buildTextEditorDescription(name: string, label: string, additionalParams: BasePropertyEditorParams[] = []): PropertyDescription {\n const editor = {\n params: additionalParams,\n };\n\n return {\n name,\n displayLabel: label,\n typename: StandardTypeNames.String,\n editor,\n };\n }\n\n /** Builds an enum description\n * @public\n */\n public static buildEnumPicklistEditorDescription(name: string, label: string,\n choices: Promise<EnumerationChoice[]> | EnumerationChoice[],\n additionalParams: BasePropertyEditorParams[] = []): PropertyDescription {\n const editor = additionalParams.length ? {\n params: additionalParams,\n } : undefined;\n\n return {\n name,\n displayLabel: label,\n typename: StandardTypeNames.Enum,\n editor,\n enum: {\n choices,\n },\n };\n }\n\n /** Builds a number description for a tool settings or dialog property that will display a \"color-picker\" control.\n * @public\n */\n public static buildColorPickerDescription(name: string, label: string, colorValues: number[], numColumns: number,\n additionalParams: BasePropertyEditorParams[] = []): PropertyDescription {\n const editorParams = [\n {\n type: PropertyEditorParamTypes.ColorData,\n colorValues,\n numColumns,\n } as ColorEditorParams,\n ...additionalParams,\n ];\n\n return {\n name,\n displayLabel: label,\n typename: StandardTypeNames.Number,\n editor: {\n name: StandardEditorNames.ColorPicker,\n params: editorParams,\n },\n };\n }\n\n /** Builds a boolean description for a tool settings or dialog property that will display a \"toggle\" control.\n * @public\n */\n public static buildToggleDescription(name: string, label: string, additionalParams: BasePropertyEditorParams[] = []): PropertyDescription {\n return {\n name,\n displayLabel: label,\n typename: StandardTypeNames.Boolean,\n editor: {\n name: StandardEditorNames.Toggle,\n params: additionalParams,\n },\n };\n }\n\n /** Builds a boolean description for a tool settings or dialog property that will display a \"image-check-box\" control.\n * @public\n */\n public static buildImageCheckBoxDescription(name: string, label: string, imageOff: string, imageOn: string, additionalParams: BasePropertyEditorParams[] = []): PropertyDescription {\n const editorParams = [{\n type: PropertyEditorParamTypes.CheckBoxImages,\n imageOff,\n imageOn,\n } as ImageCheckBoxParams, ...additionalParams];\n\n return {\n name,\n displayLabel: label,\n typename: StandardTypeNames.Boolean,\n editor: {\n name: StandardEditorNames.ImageCheckBox,\n params: editorParams,\n },\n };\n }\n\n /** Builds a boolean description for a tool settings or dialog property that will display a checkbox control.\n * @public\n */\n public static buildCheckboxDescription(name: string, label: string, additionalParams: BasePropertyEditorParams[] = []): PropertyDescription {\n const editor = {\n params: additionalParams,\n };\n\n return {\n name,\n displayLabel: label,\n typename: StandardTypeNames.Boolean,\n editor,\n };\n }\n\n /** Builds a property description for a tool settings or dialog `lock` property. This will create a checkbox control with no label.\n * @public\n */\n public static buildLockPropertyDescription(name: string, additionalParams: BasePropertyEditorParams[] = []): PropertyDescription {\n const defaultParams = {\n type: PropertyEditorParamTypes.SuppressEditorLabel,\n suppressLabelPlaceholder: true,\n } as SuppressLabelEditorParams;\n\n const editor = {\n params: [defaultParams, ...additionalParams],\n };\n\n return {\n name,\n displayLabel: \"\",\n typename: StandardTypeNames.Boolean,\n editor,\n };\n }\n\n /** Bumps an enum property description value\n * @public\n */\n public static async bumpEnumProperty(description: PropertyDescription, value: string | number): Promise<string | number> {\n let choices: EnumerationChoice[] | undefined;\n\n if (description.enum) {\n if (description.enum.choices instanceof Promise) {\n choices = await description.enum.choices;\n } else {\n choices = description.enum.choices;\n }\n }\n\n if (!choices || choices.length === 0)\n return value;\n\n let choiceIndex = choices.findIndex((choice) => choice.value === value);\n if (choiceIndex < 0)\n return value;\n\n choiceIndex++;\n if (choiceIndex >= choices.length)\n choiceIndex = 0;\n\n const newValue = choices[choiceIndex].value;\n return newValue;\n }\n}\n"]}
{"version":3,"file":"Description.js","sourceRoot":"","sources":["../../../../src/appui-abstract/properties/Description.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 Properties\n */\n\nimport {\n BasePropertyEditorParams, ColorEditorParams, ImageCheckBoxParams, PropertyEditorParams, PropertyEditorParamTypes, RangeEditorParams,\n SuppressLabelEditorParams,\n} from \"./EditorParams\";\nimport { StandardEditorNames } from \"./StandardEditorNames\";\nimport { StandardTypeNames } from \"./StandardTypeNames\";\n\n// cSpell:ignore Picklist\n\n/**\n * Information about an enumeration choice\n * @public\n */\nexport interface EnumerationChoice {\n label: string;\n value: string | number;\n}\n\n/**\n * Information about a set of enumeration choices\n * @public\n */\nexport interface EnumerationChoicesInfo {\n choices: Promise<EnumerationChoice[]> | EnumerationChoice[];\n isStrict?: boolean;\n maxDisplayedRows?: number;\n}\n\n/**\n * Property renderer identification and customization attributes\n * @public\n */\nexport interface PropertyRendererInfo {\n name: string;\n}\n\n/**\n * Information about a Property Editor\n * @public\n */\nexport interface PropertyEditorInfo {\n /** Editor name used in addition to the typename to find the registered property editor */\n name?: string;\n /** Editor params provided to the property editor */\n params?: PropertyEditorParams[];\n}\n\n/**\n * Information about a Property Converter\n * @public\n */\nexport interface PropertyConverterInfo {\n /** Converter name used in addition to the typename to find the registered property converter */\n name?: string;\n /** map of options for type converter */\n options?: { [key: string]: any };\n}\n\n/**\n * [[PropertyDescription]] contains metadata about a Property\n * @public\n */\nexport interface PropertyDescription {\n /** Name of the property description */\n name: string;\n /** Display label for the property description */\n displayLabel: string;\n /** Type name used to determine applicable Type Converter and Property Editor */\n typename: string;\n /** Additional information for enumerations */\n enum?: EnumerationChoicesInfo;\n /** Information for property renderer customization */\n renderer?: PropertyRendererInfo;\n /** Information for a property editor */\n editor?: PropertyEditorInfo;\n /** Information for a property converter */\n converter?: PropertyConverterInfo;\n /** Quantity type key used to look up formatting and parsing specs. This is typically either the name of a quantity type used by a tool\n * or the full name of a KOQ (schema:koq).\n * @alpha\n * @deprecated in 5.0 - might be removed in next major version. Use `kindOfQuantityName` instead.\n */\n quantityType?: string;\n /** [[KindOfQuantity]] full name used to look up [[FormatProps]]\n * @beta\n */\n kindOfQuantityName?: string;\n /** Get the custom DataController by this name and register it with the property editor */\n dataController?: string;\n /** Should property label for composite (struct & array) properties be rendered. */\n hideCompositePropertyLabel?: boolean;\n}\n\n/** Helper class that builds property descriptions for specific PropertyEditors and processes descriptions.\n * @public\n */\nexport class PropertyDescriptionHelper {\n /** Builds a number description with a \"weight-picker\" editor name\n * @public\n */\n public static buildWeightPickerDescription(name: string, label: string, additionalParams: BasePropertyEditorParams[] = []): PropertyDescription {\n return {\n name,\n displayLabel: label,\n typename: StandardTypeNames.Number,\n editor: {\n name: StandardEditorNames.WeightPicker,\n params: additionalParams,\n },\n };\n }\n\n /** Builds an editor that uses [NumberInput]($core-react) control\n * @public\n */\n public static buildNumberEditorDescription(name: string, label: string, overrideParams?: RangeEditorParams, additionalParams: BasePropertyEditorParams[] = []): PropertyDescription {\n const editorParams = [{\n type: PropertyEditorParamTypes.Range,\n step: 1,\n precision: 0,\n ...overrideParams,\n } as RangeEditorParams, ...additionalParams];\n\n const editor = {\n name: StandardEditorNames.NumericInput,\n params: editorParams,\n };\n\n return {\n name,\n displayLabel: label,\n typename: StandardTypeNames.Number,\n editor,\n };\n }\n\n /** Builds a string description\n * @public\n */\n public static buildTextEditorDescription(name: string, label: string, additionalParams: BasePropertyEditorParams[] = []): PropertyDescription {\n const editor = {\n params: additionalParams,\n };\n\n return {\n name,\n displayLabel: label,\n typename: StandardTypeNames.String,\n editor,\n };\n }\n\n /** Builds an enum description\n * @public\n */\n public static buildEnumPicklistEditorDescription(name: string, label: string,\n choices: Promise<EnumerationChoice[]> | EnumerationChoice[],\n additionalParams: BasePropertyEditorParams[] = []): PropertyDescription {\n const editor = additionalParams.length ? {\n params: additionalParams,\n } : undefined;\n\n return {\n name,\n displayLabel: label,\n typename: StandardTypeNames.Enum,\n editor,\n enum: {\n choices,\n },\n };\n }\n\n /** Builds a number description for a tool settings or dialog property that will display a \"color-picker\" control.\n * @public\n */\n public static buildColorPickerDescription(name: string, label: string, colorValues: number[], numColumns: number,\n additionalParams: BasePropertyEditorParams[] = []): PropertyDescription {\n const editorParams = [\n {\n type: PropertyEditorParamTypes.ColorData,\n colorValues,\n numColumns,\n } as ColorEditorParams,\n ...additionalParams,\n ];\n\n return {\n name,\n displayLabel: label,\n typename: StandardTypeNames.Number,\n editor: {\n name: StandardEditorNames.ColorPicker,\n params: editorParams,\n },\n };\n }\n\n /** Builds a boolean description for a tool settings or dialog property that will display a \"toggle\" control.\n * @public\n */\n public static buildToggleDescription(name: string, label: string, additionalParams: BasePropertyEditorParams[] = []): PropertyDescription {\n return {\n name,\n displayLabel: label,\n typename: StandardTypeNames.Boolean,\n editor: {\n name: StandardEditorNames.Toggle,\n params: additionalParams,\n },\n };\n }\n\n /** Builds a boolean description for a tool settings or dialog property that will display a \"image-check-box\" control.\n * @public\n */\n public static buildImageCheckBoxDescription(name: string, label: string, imageOff: string, imageOn: string, additionalParams: BasePropertyEditorParams[] = []): PropertyDescription {\n const editorParams = [{\n type: PropertyEditorParamTypes.CheckBoxImages,\n imageOff,\n imageOn,\n } as ImageCheckBoxParams, ...additionalParams];\n\n return {\n name,\n displayLabel: label,\n typename: StandardTypeNames.Boolean,\n editor: {\n name: StandardEditorNames.ImageCheckBox,\n params: editorParams,\n },\n };\n }\n\n /** Builds a boolean description for a tool settings or dialog property that will display a checkbox control.\n * @public\n */\n public static buildCheckboxDescription(name: string, label: string, additionalParams: BasePropertyEditorParams[] = []): PropertyDescription {\n const editor = {\n params: additionalParams,\n };\n\n return {\n name,\n displayLabel: label,\n typename: StandardTypeNames.Boolean,\n editor,\n };\n }\n\n /** Builds a property description for a tool settings or dialog `lock` property. This will create a checkbox control with no label.\n * @public\n */\n public static buildLockPropertyDescription(name: string, additionalParams: BasePropertyEditorParams[] = []): PropertyDescription {\n const defaultParams = {\n type: PropertyEditorParamTypes.SuppressEditorLabel,\n suppressLabelPlaceholder: true,\n } as SuppressLabelEditorParams;\n\n const editor = {\n params: [defaultParams, ...additionalParams],\n };\n\n return {\n name,\n displayLabel: \"\",\n typename: StandardTypeNames.Boolean,\n editor,\n };\n }\n\n /** Bumps an enum property description value\n * @public\n */\n public static async bumpEnumProperty(description: PropertyDescription, value: string | number): Promise<string | number> {\n let choices: EnumerationChoice[] | undefined;\n\n if (description.enum) {\n if (description.enum.choices instanceof Promise) {\n choices = await description.enum.choices;\n } else {\n choices = description.enum.choices;\n }\n }\n\n if (!choices || choices.length === 0)\n return value;\n\n let choiceIndex = choices.findIndex((choice) => choice.value === value);\n if (choiceIndex < 0)\n return value;\n\n choiceIndex++;\n if (choiceIndex >= choices.length)\n choiceIndex = 0;\n\n const newValue = choices[choiceIndex].value;\n return newValue;\n }\n}\n"]}

@@ -74,3 +74,3 @@ /** @packageDocumentation

/** Create a PointProps object.
* @deprecated in 4.2.0 - will not be removed until after 2026-06-13. Please use @core/geometry [[XAndY]] or a custom implementation.
* @deprecated in 4.2.0 - might be removed in next major version. Please use @core/geometry [[XAndY]] or a custom implementation.
*/

@@ -77,0 +77,0 @@ createXAndY(x: number, y: number): XAndY;

@@ -47,3 +47,3 @@ "use strict";

/** Create a PointProps object.
* @deprecated in 4.2.0 - will not be removed until after 2026-06-13. Please use @core/geometry [[XAndY]] or a custom implementation.
* @deprecated in 4.2.0 - might be removed in next major version. Please use @core/geometry [[XAndY]] or a custom implementation.
*/

@@ -50,0 +50,0 @@ createXAndY(x, y) { return { x, y }; }

@@ -1,1 +0,1 @@

{"version":3,"file":"UiAdmin.js","sourceRoot":"","sources":["../../../src/appui-abstract/UiAdmin.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 UiAdmin\n */\n\nimport { BentleyError, BentleyStatus, BeUiEvent } from \"@itwin/core-bentley\";\nimport { AbstractMenuItemProps } from \"./items/AbstractMenuItemProps\";\nimport { AbstractToolbarProps } from \"./items/AbstractToolbarProps\";\nimport { RelativePosition } from \"./items/RelativePosition\";\nimport { PropertyDescription } from \"./properties/Description\";\nimport { Primitives } from \"./properties/PrimitiveTypes\";\nimport { OnCancelFunc, OnItemExecutedFunc, OnNumberCommitFunc, OnValueCommitFunc } from \"./utils/callbacks\";\nimport { PropertyRecord } from \"./properties/Record\";\nimport { UiDataProvider } from \"./dialogs/UiDataProvider\";\nimport { DialogLayoutDataProvider } from \"./dialogs/UiLayoutDataProvider\";\nimport { MessagePresenter } from \"./notification/MessagePresenter\";\n\ninterface XAndY { readonly x: number, readonly y: number }\n\ninterface BentleyErrorWithCategory extends BentleyError {\n category: string;\n}\n\n/** The Generic UI Event args contains information useful for any UI message\n * @public\n */\nexport interface GenericUiEventArgs {\n uiComponentId: string;\n}\n\n/** Optional props to pass to the Dialog control that is generated.\n * @public\n */\nexport interface DialogProps {\n /** Indicates whether the user can resize dialog with cursor. */\n resizable?: boolean;\n /** Indicates whether the user can move dialog with cursor.*/\n movable?: boolean;\n /** Initial width of dialog. Displayed in px if value is a number; otherwise, displayed in specified CSS unit. */\n width?: string | number;\n /** Initial height of dialog. Displayed in px if value is a number; otherwise, displayed in specified CSS unit. */\n height?: string | number;\n /** Minimum width that the dialog may be resized to. Displayed in px if value is a number; otherwise, displayed in specified CSS unit. */\n minWidth?: string | number;\n /** Minimum height that the dialog may be resized to. Displayed in px if value is a number; otherwise, displayed in specified CSS unit. */\n minHeight?: string | number;\n /** Maximum width that the dialog may be resized to. Displayed in px if value is a number; otherwise, displayed in specified CSS unit. */\n maxWidth?: string | number;\n /** Maximum height that the dialog may be resized to. Displayed in px if value is a number; otherwise, displayed in specified CSS unit. */\n maxHeight?: string | number;\n}\n\n/** The GenericUiEvent is the base event class for UI events that target a specific component, as identified in uiComponentId.\n * @public\n */\nexport class GenericUiEvent extends BeUiEvent<GenericUiEventArgs> { }\n\n/** Flags that control enabling/disabling certain UI features\n * @public\n */\nexport interface UiFlags {\n /** if true then Ctrl+F2 will show popup key-in palette */\n allowKeyinPalette?: boolean;\n}\n\n/** The UiAdmin controls various UI components and is callable from IModelApp.uiAdmin in the core-frontend package.\n * @public\n */\nexport class UiAdmin {\n private _featureFlags: UiFlags = {};\n private static _messagePresenter?: MessagePresenter;\n\n /** The MessagePresenter used to display messages. */\n public static get messagePresenter(): MessagePresenter {\n if (!UiAdmin._messagePresenter) {\n const error = new BentleyError(BentleyStatus.ERROR, \"UiAdmin.messagePresenter not set\") as BentleyErrorWithCategory;\n error.category = \"messagePresenter\";\n throw error;\n }\n\n return UiAdmin._messagePresenter;\n }\n public static set messagePresenter(mp: MessagePresenter) {\n UiAdmin._messagePresenter = mp;\n }\n\n public get featureFlags(): UiFlags {\n return { ...this._featureFlags }; // return copy so no direct access to modify value\n }\n\n public updateFeatureFlags(uiFlags: UiFlags) {\n this._featureFlags = { ...this._featureFlags, ...uiFlags };\n }\n\n /** @internal */\n public onInitialized() { }\n\n /** Get the cursor X and Y position. */\n public get cursorPosition(): XAndY { return { x: 0, y: 0 }; }\n\n /** Create a PointProps object.\n * @deprecated in 4.2.0 - will not be removed until after 2026-06-13. Please use @core/geometry [[XAndY]] or a custom implementation.\n */\n public createXAndY(x: number, y: number): XAndY { return { x, y }; }\n\n /** Determines if focus is set to Home */\n public get isFocusOnHome(): boolean { return false; }\n\n /** Sets focus to Home */\n public setFocusToHome(): void { }\n\n /** Show a context menu at a particular location.\n * @param _menuItemsProps Properties of the menu items to display.\n * @param _location Location of the context menu, relative to the origin of htmlElement or the window.\n * @param _htmlElement The HTMLElement that anchors the context menu. If undefined, the location is relative to the overall window.\n * @return true if the menu was displayed, false if the menu could not be displayed.\n */\n public showContextMenu(_menuItemsProps: AbstractMenuItemProps[], _location: XAndY, _htmlElement?: HTMLElement): boolean {\n return false;\n }\n\n /** Show a Toolbar at a particular location.\n * @param _toolbarProps Properties of the Toolbar to display.\n * @param _location Location of the Toolbar, relative to the origin of htmlElement or the window.\n * @param _offset Offset of the Toolbar from the location.\n * @param _onItemExecuted Function invoked after a Toolbar item is executed\n * @param _onCancel Function invoked when the Escape key is pressed or a click occurs outside the Toolbar\n * @param _relativePosition Position relative to the given location. Defaults to TopRight.\n * @param _htmlElement The HTMLElement that anchors the Toolbar. If undefined, the location is relative to the overall window.\n * @return true if the Toolbar was displayed, false if the Toolbar could not be displayed.\n */\n public showToolbar(\n _toolbarProps: AbstractToolbarProps, _location: XAndY, _offset: XAndY, _onItemExecuted: OnItemExecutedFunc, _onCancel: OnCancelFunc,\n _relativePosition?: RelativePosition, _htmlElement?: HTMLElement): boolean {\n return false;\n }\n\n /** Hides the toolbar. */\n public hideToolbar(): boolean { return false; }\n\n /** Show a menu button at a particular location. A menu button opens a context menu.\n * @param _id Id of the menu button. Multiple menu buttons may be displayed.\n * @param _menuItemsProps Properties of the menu items to display.\n * @param _location Location of the context menu, relative to the origin of htmlElement or the window.\n * @param _htmlElement The HTMLElement that anchors the context menu. If undefined, the location is relative to the overall window.\n * @return true if the button was displayed, false if the button could not be displayed.\n */\n public showMenuButton(_id: string, _menuItemsProps: AbstractMenuItemProps[], _location: XAndY, _htmlElement?: HTMLElement): boolean {\n return false;\n }\n\n /** Hides a menu button.\n * @param _id Id of the menu button. Multiple menu buttons may be displayed.\n * @return true if the menu was hidden, false if the menu could not be hidden.\n */\n public hideMenuButton(_id: string): boolean { return false; }\n\n /** Show a calculator at a particular location.\n * @param _initialValue Value initially displayed in the calculator.\n * @param _resultIcon Icon displayed to the left of the value.\n * @param _location Location of the calculator, relative to the origin of htmlElement or the window.\n * @param _onCommit Function called when the OK button or the Enter key is pressed.\n * @param _onCancel Function called when the Cancel button or the Escape key is pressed.\n * @param _htmlElement The HTMLElement that anchors the context menu. If undefined, the location is relative to the overall window.\n * @return true if the calculator was displayed, false if the calculator could not be displayed.\n */\n public showCalculator(_initialValue: number, _resultIcon: string, _location: XAndY, _onCommit: OnNumberCommitFunc, _onCancel: OnCancelFunc, _htmlElement?: HTMLElement): boolean {\n return false;\n }\n\n /** Hides the calculator. */\n public hideCalculator(): boolean { return false; }\n\n /** Show an input editor for an angle value at a particular location.\n * @param _initialValue Value initially displayed in the editor.\n * @param _location Location of the editor, relative to the origin of htmlElement or the window.\n * @param _onCommit Function called when the OK button or the Enter key is pressed.\n * @param _onCancel Function called when the Cancel button or the Escape key is pressed.\n * @param _htmlElement The HTMLElement that anchors the context menu. If undefined, the location is relative to the overall window.\n * @return true if the editor was displayed, false if the editor could not be displayed.\n */\n public showAngleEditor(_initialValue: number, _location: XAndY, _onCommit: OnNumberCommitFunc, _onCancel: OnCancelFunc, _htmlElement?: HTMLElement): boolean {\n return false;\n }\n\n /** Show an input editor for a length value at a particular location.\n * @param _initialValue Value initially displayed in the editor.\n * @param _location Location of the editor, relative to the origin of htmlElement or the window.\n * @param _onCommit Function called when the OK button or the Enter key is pressed.\n * @param _onCancel Function called when the Cancel button or the Escape key is pressed.\n * @param _htmlElement The HTMLElement that anchors the context menu. If undefined, the location is relative to the overall window.\n * @return true if the editor was displayed, false if the editor could not be displayed.\n */\n public showLengthEditor(_initialValue: number, _location: XAndY, _onCommit: OnNumberCommitFunc, _onCancel: OnCancelFunc, _htmlElement?: HTMLElement): boolean {\n return false;\n }\n\n /** Show an input editor for a height value at a particular location.\n * @param _initialValue Value initially displayed in the editor.\n * @param _location Location of the editor, relative to the origin of htmlElement or the window.\n * @param _onCommit Function called when the OK button or the Enter key is pressed.\n * @param _onCancel Function called when the Cancel button or the Escape key is pressed.\n * @param _htmlElement The HTMLElement that anchors the context menu. If undefined, the location is relative to the overall window.\n * @return true if the editor was displayed, false if the editor could not be displayed.\n */\n public showHeightEditor(_initialValue: number, _location: XAndY, _onCommit: OnNumberCommitFunc, _onCancel: OnCancelFunc, _htmlElement?: HTMLElement): boolean {\n return false;\n }\n\n /** Show an input editor for a primitive value at a particular location.\n * @param _initialValue Value initially displayed in the editor.\n * @param _propertyDescription Description of the primitive value property.\n * @param _location Location of the editor, relative to the origin of htmlElement or the window.\n * @param _onCommit Function called when the OK button or the Enter key is pressed.\n * @param _onCancel Function called when the Cancel button or the Escape key is pressed.\n * @param _htmlElement The HTMLElement that anchors the context menu. If undefined, the location is relative to the overall window.\n * @return true if the editor was displayed, false if the editor could not be displayed.\n */\n public showInputEditor(_initialValue: Primitives.Value, _propertyDescription: PropertyDescription, _location: XAndY, _onCommit: OnValueCommitFunc, _onCancel: OnCancelFunc, _htmlElement?: HTMLElement): boolean {\n return false;\n }\n\n /** Hides the input editor. */\n public hideInputEditor(): boolean { return false; }\n\n /** Show an HTML element at a particular location.\n * @param _displayElement The HTMLElement to display\n * @param _location Location of the tool settings, relative to the origin of anchorElement or the window\n * @param _offset Offset of the display element from the location\n * @param _onCancel Function invoked when the Escape key is pressed or a click occurs outside the display element\n * @param _relativePosition Position relative to the given location. Defaults to TopRight.\n * @param _anchorElement The HTMLElement that anchors the display element. If undefined, the location is relative to the overall window.\n * @return true if the display element was displayed, false if the display element could not be displayed.\n */\n public showHTMLElement(\n _displayElement: HTMLElement, _location: XAndY, _offset: XAndY, _onCancel: OnCancelFunc,\n _relativePosition?: RelativePosition, _anchorElement?: HTMLElement): boolean {\n return false;\n }\n\n /** Hides the HTML Element. */\n public hideHTMLElement(): boolean { return false; }\n\n /** Show a Card containing content, a title and a toolbar at a particular location.\n * @param _content The HTMLElement of the content to display\n * @param _title Title to display at the top of the card.\n * @param _toolbarProps Properties of the Toolbar to display.\n * @param _location Location of the Card, relative to the origin of anchorElement or the window.\n * @param _offset Offset of the Card from the location.\n * @param _onItemExecuted Function invoked after a Toolbar item is executed\n * @param _onCancel Function invoked when the Escape key is pressed or a click occurs outside the Card\n * @param _relativePosition Position relative to the given location. Defaults to TopRight.\n * @param _anchorElement The HTMLElement that anchors the Card. If undefined, the location is relative to the overall window.\n * @return true if the Card was displayed, false if the Card could not be displayed.\n */\n public showCard(\n _content: HTMLElement, _title: string | PropertyRecord | undefined, _toolbarProps: AbstractToolbarProps | undefined,\n _location: XAndY, _offset: XAndY, _onItemExecuted: OnItemExecutedFunc, _onCancel: OnCancelFunc,\n _relativePosition?: RelativePosition, _anchorElement?: HTMLElement): boolean {\n return false;\n }\n\n /** Hides the Card. */\n public hideCard(): boolean { return false; }\n\n /** Opens a Tool Settings Ui popup at a particular location.\n * @param _dataProvider The UiDataProvider for the tool settings\n * @param _location Location of the tool settings, relative to the origin of anchorElement or the window\n * @param _offset Offset of the tool settings from the location\n * @param _onCancel Function invoked when the Escape key is pressed or a click occurs outside the tool settings\n * @param _relativePosition Position relative to the given location. Defaults to TopRight.\n * @param _anchorElement The HTMLElement that anchors the tool settings. If undefined, the location is relative to the overall window.\n * @return true if the tool settings were displayed, false if the tool settings could not be displayed.\n */\n public openToolSettingsPopup(\n _dataProvider: UiDataProvider, _location: XAndY, _offset: XAndY, _onCancel: OnCancelFunc,\n _relativePosition?: RelativePosition, _anchorElement?: HTMLElement): boolean {\n return false;\n }\n\n /** Closes the Tool Settings Ui popup. */\n public closeToolSettingsPopup(): boolean { return false; }\n\n /** Show the Keyin Palette to display all support Tool key-ins.\n * @param _htmlElement The HTMLElement that anchors the Keyin Palette. If undefined, the location is relative to the overall window.\n * @return true if the Keyin Palette was displayed, false if it could not be displayed.\n */\n public showKeyinPalette(_htmlElement?: HTMLElement): boolean { return false; }\n\n /** Hides the Keyin Palette. */\n public hideKeyinPalette(): boolean { return false; }\n\n /** Send a UI event */\n public static sendUiEvent(args: GenericUiEventArgs) {\n UiAdmin.onGenericUiEvent.emit(args);\n }\n /** GenericUiEvent */\n public static readonly onGenericUiEvent = new GenericUiEvent();\n\n /** Opens a Dialog and automatically populates it using the properties defined by the UiDataProvider.\n * @param _uiDataProvider The DialogLayoutDataProvider for the dialog\n * @param _title Specify title for dialog.\n * @param _isModal Specify if the dialog is opened as a modal or modeless.\n * @param _id Id of the dialog that is used to close it.\n * @param _optionalProps Optional props for Dialog construction.\n * @return true if the tool settings were displayed, false if the tool settings could not be displayed.\n */\n public openDialog(_uiDataProvider: DialogLayoutDataProvider, _title: string, _isModal: boolean, _id: string,\n _optionalProps?: DialogProps): boolean {\n return false;\n }\n\n /** Closes the Dialog with a given Id. */\n public closeDialog(_dialogId: string): boolean { return false; }\n}\n"]}
{"version":3,"file":"UiAdmin.js","sourceRoot":"","sources":["../../../src/appui-abstract/UiAdmin.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 UiAdmin\n */\n\nimport { BentleyError, BentleyStatus, BeUiEvent } from \"@itwin/core-bentley\";\nimport { AbstractMenuItemProps } from \"./items/AbstractMenuItemProps\";\nimport { AbstractToolbarProps } from \"./items/AbstractToolbarProps\";\nimport { RelativePosition } from \"./items/RelativePosition\";\nimport { PropertyDescription } from \"./properties/Description\";\nimport { Primitives } from \"./properties/PrimitiveTypes\";\nimport { OnCancelFunc, OnItemExecutedFunc, OnNumberCommitFunc, OnValueCommitFunc } from \"./utils/callbacks\";\nimport { PropertyRecord } from \"./properties/Record\";\nimport { UiDataProvider } from \"./dialogs/UiDataProvider\";\nimport { DialogLayoutDataProvider } from \"./dialogs/UiLayoutDataProvider\";\nimport { MessagePresenter } from \"./notification/MessagePresenter\";\n\ninterface XAndY { readonly x: number, readonly y: number }\n\ninterface BentleyErrorWithCategory extends BentleyError {\n category: string;\n}\n\n/** The Generic UI Event args contains information useful for any UI message\n * @public\n */\nexport interface GenericUiEventArgs {\n uiComponentId: string;\n}\n\n/** Optional props to pass to the Dialog control that is generated.\n * @public\n */\nexport interface DialogProps {\n /** Indicates whether the user can resize dialog with cursor. */\n resizable?: boolean;\n /** Indicates whether the user can move dialog with cursor.*/\n movable?: boolean;\n /** Initial width of dialog. Displayed in px if value is a number; otherwise, displayed in specified CSS unit. */\n width?: string | number;\n /** Initial height of dialog. Displayed in px if value is a number; otherwise, displayed in specified CSS unit. */\n height?: string | number;\n /** Minimum width that the dialog may be resized to. Displayed in px if value is a number; otherwise, displayed in specified CSS unit. */\n minWidth?: string | number;\n /** Minimum height that the dialog may be resized to. Displayed in px if value is a number; otherwise, displayed in specified CSS unit. */\n minHeight?: string | number;\n /** Maximum width that the dialog may be resized to. Displayed in px if value is a number; otherwise, displayed in specified CSS unit. */\n maxWidth?: string | number;\n /** Maximum height that the dialog may be resized to. Displayed in px if value is a number; otherwise, displayed in specified CSS unit. */\n maxHeight?: string | number;\n}\n\n/** The GenericUiEvent is the base event class for UI events that target a specific component, as identified in uiComponentId.\n * @public\n */\nexport class GenericUiEvent extends BeUiEvent<GenericUiEventArgs> { }\n\n/** Flags that control enabling/disabling certain UI features\n * @public\n */\nexport interface UiFlags {\n /** if true then Ctrl+F2 will show popup key-in palette */\n allowKeyinPalette?: boolean;\n}\n\n/** The UiAdmin controls various UI components and is callable from IModelApp.uiAdmin in the core-frontend package.\n * @public\n */\nexport class UiAdmin {\n private _featureFlags: UiFlags = {};\n private static _messagePresenter?: MessagePresenter;\n\n /** The MessagePresenter used to display messages. */\n public static get messagePresenter(): MessagePresenter {\n if (!UiAdmin._messagePresenter) {\n const error = new BentleyError(BentleyStatus.ERROR, \"UiAdmin.messagePresenter not set\") as BentleyErrorWithCategory;\n error.category = \"messagePresenter\";\n throw error;\n }\n\n return UiAdmin._messagePresenter;\n }\n public static set messagePresenter(mp: MessagePresenter) {\n UiAdmin._messagePresenter = mp;\n }\n\n public get featureFlags(): UiFlags {\n return { ...this._featureFlags }; // return copy so no direct access to modify value\n }\n\n public updateFeatureFlags(uiFlags: UiFlags) {\n this._featureFlags = { ...this._featureFlags, ...uiFlags };\n }\n\n /** @internal */\n public onInitialized() { }\n\n /** Get the cursor X and Y position. */\n public get cursorPosition(): XAndY { return { x: 0, y: 0 }; }\n\n /** Create a PointProps object.\n * @deprecated in 4.2.0 - might be removed in next major version. Please use @core/geometry [[XAndY]] or a custom implementation.\n */\n public createXAndY(x: number, y: number): XAndY { return { x, y }; }\n\n /** Determines if focus is set to Home */\n public get isFocusOnHome(): boolean { return false; }\n\n /** Sets focus to Home */\n public setFocusToHome(): void { }\n\n /** Show a context menu at a particular location.\n * @param _menuItemsProps Properties of the menu items to display.\n * @param _location Location of the context menu, relative to the origin of htmlElement or the window.\n * @param _htmlElement The HTMLElement that anchors the context menu. If undefined, the location is relative to the overall window.\n * @return true if the menu was displayed, false if the menu could not be displayed.\n */\n public showContextMenu(_menuItemsProps: AbstractMenuItemProps[], _location: XAndY, _htmlElement?: HTMLElement): boolean {\n return false;\n }\n\n /** Show a Toolbar at a particular location.\n * @param _toolbarProps Properties of the Toolbar to display.\n * @param _location Location of the Toolbar, relative to the origin of htmlElement or the window.\n * @param _offset Offset of the Toolbar from the location.\n * @param _onItemExecuted Function invoked after a Toolbar item is executed\n * @param _onCancel Function invoked when the Escape key is pressed or a click occurs outside the Toolbar\n * @param _relativePosition Position relative to the given location. Defaults to TopRight.\n * @param _htmlElement The HTMLElement that anchors the Toolbar. If undefined, the location is relative to the overall window.\n * @return true if the Toolbar was displayed, false if the Toolbar could not be displayed.\n */\n public showToolbar(\n _toolbarProps: AbstractToolbarProps, _location: XAndY, _offset: XAndY, _onItemExecuted: OnItemExecutedFunc, _onCancel: OnCancelFunc,\n _relativePosition?: RelativePosition, _htmlElement?: HTMLElement): boolean {\n return false;\n }\n\n /** Hides the toolbar. */\n public hideToolbar(): boolean { return false; }\n\n /** Show a menu button at a particular location. A menu button opens a context menu.\n * @param _id Id of the menu button. Multiple menu buttons may be displayed.\n * @param _menuItemsProps Properties of the menu items to display.\n * @param _location Location of the context menu, relative to the origin of htmlElement or the window.\n * @param _htmlElement The HTMLElement that anchors the context menu. If undefined, the location is relative to the overall window.\n * @return true if the button was displayed, false if the button could not be displayed.\n */\n public showMenuButton(_id: string, _menuItemsProps: AbstractMenuItemProps[], _location: XAndY, _htmlElement?: HTMLElement): boolean {\n return false;\n }\n\n /** Hides a menu button.\n * @param _id Id of the menu button. Multiple menu buttons may be displayed.\n * @return true if the menu was hidden, false if the menu could not be hidden.\n */\n public hideMenuButton(_id: string): boolean { return false; }\n\n /** Show a calculator at a particular location.\n * @param _initialValue Value initially displayed in the calculator.\n * @param _resultIcon Icon displayed to the left of the value.\n * @param _location Location of the calculator, relative to the origin of htmlElement or the window.\n * @param _onCommit Function called when the OK button or the Enter key is pressed.\n * @param _onCancel Function called when the Cancel button or the Escape key is pressed.\n * @param _htmlElement The HTMLElement that anchors the context menu. If undefined, the location is relative to the overall window.\n * @return true if the calculator was displayed, false if the calculator could not be displayed.\n */\n public showCalculator(_initialValue: number, _resultIcon: string, _location: XAndY, _onCommit: OnNumberCommitFunc, _onCancel: OnCancelFunc, _htmlElement?: HTMLElement): boolean {\n return false;\n }\n\n /** Hides the calculator. */\n public hideCalculator(): boolean { return false; }\n\n /** Show an input editor for an angle value at a particular location.\n * @param _initialValue Value initially displayed in the editor.\n * @param _location Location of the editor, relative to the origin of htmlElement or the window.\n * @param _onCommit Function called when the OK button or the Enter key is pressed.\n * @param _onCancel Function called when the Cancel button or the Escape key is pressed.\n * @param _htmlElement The HTMLElement that anchors the context menu. If undefined, the location is relative to the overall window.\n * @return true if the editor was displayed, false if the editor could not be displayed.\n */\n public showAngleEditor(_initialValue: number, _location: XAndY, _onCommit: OnNumberCommitFunc, _onCancel: OnCancelFunc, _htmlElement?: HTMLElement): boolean {\n return false;\n }\n\n /** Show an input editor for a length value at a particular location.\n * @param _initialValue Value initially displayed in the editor.\n * @param _location Location of the editor, relative to the origin of htmlElement or the window.\n * @param _onCommit Function called when the OK button or the Enter key is pressed.\n * @param _onCancel Function called when the Cancel button or the Escape key is pressed.\n * @param _htmlElement The HTMLElement that anchors the context menu. If undefined, the location is relative to the overall window.\n * @return true if the editor was displayed, false if the editor could not be displayed.\n */\n public showLengthEditor(_initialValue: number, _location: XAndY, _onCommit: OnNumberCommitFunc, _onCancel: OnCancelFunc, _htmlElement?: HTMLElement): boolean {\n return false;\n }\n\n /** Show an input editor for a height value at a particular location.\n * @param _initialValue Value initially displayed in the editor.\n * @param _location Location of the editor, relative to the origin of htmlElement or the window.\n * @param _onCommit Function called when the OK button or the Enter key is pressed.\n * @param _onCancel Function called when the Cancel button or the Escape key is pressed.\n * @param _htmlElement The HTMLElement that anchors the context menu. If undefined, the location is relative to the overall window.\n * @return true if the editor was displayed, false if the editor could not be displayed.\n */\n public showHeightEditor(_initialValue: number, _location: XAndY, _onCommit: OnNumberCommitFunc, _onCancel: OnCancelFunc, _htmlElement?: HTMLElement): boolean {\n return false;\n }\n\n /** Show an input editor for a primitive value at a particular location.\n * @param _initialValue Value initially displayed in the editor.\n * @param _propertyDescription Description of the primitive value property.\n * @param _location Location of the editor, relative to the origin of htmlElement or the window.\n * @param _onCommit Function called when the OK button or the Enter key is pressed.\n * @param _onCancel Function called when the Cancel button or the Escape key is pressed.\n * @param _htmlElement The HTMLElement that anchors the context menu. If undefined, the location is relative to the overall window.\n * @return true if the editor was displayed, false if the editor could not be displayed.\n */\n public showInputEditor(_initialValue: Primitives.Value, _propertyDescription: PropertyDescription, _location: XAndY, _onCommit: OnValueCommitFunc, _onCancel: OnCancelFunc, _htmlElement?: HTMLElement): boolean {\n return false;\n }\n\n /** Hides the input editor. */\n public hideInputEditor(): boolean { return false; }\n\n /** Show an HTML element at a particular location.\n * @param _displayElement The HTMLElement to display\n * @param _location Location of the tool settings, relative to the origin of anchorElement or the window\n * @param _offset Offset of the display element from the location\n * @param _onCancel Function invoked when the Escape key is pressed or a click occurs outside the display element\n * @param _relativePosition Position relative to the given location. Defaults to TopRight.\n * @param _anchorElement The HTMLElement that anchors the display element. If undefined, the location is relative to the overall window.\n * @return true if the display element was displayed, false if the display element could not be displayed.\n */\n public showHTMLElement(\n _displayElement: HTMLElement, _location: XAndY, _offset: XAndY, _onCancel: OnCancelFunc,\n _relativePosition?: RelativePosition, _anchorElement?: HTMLElement): boolean {\n return false;\n }\n\n /** Hides the HTML Element. */\n public hideHTMLElement(): boolean { return false; }\n\n /** Show a Card containing content, a title and a toolbar at a particular location.\n * @param _content The HTMLElement of the content to display\n * @param _title Title to display at the top of the card.\n * @param _toolbarProps Properties of the Toolbar to display.\n * @param _location Location of the Card, relative to the origin of anchorElement or the window.\n * @param _offset Offset of the Card from the location.\n * @param _onItemExecuted Function invoked after a Toolbar item is executed\n * @param _onCancel Function invoked when the Escape key is pressed or a click occurs outside the Card\n * @param _relativePosition Position relative to the given location. Defaults to TopRight.\n * @param _anchorElement The HTMLElement that anchors the Card. If undefined, the location is relative to the overall window.\n * @return true if the Card was displayed, false if the Card could not be displayed.\n */\n public showCard(\n _content: HTMLElement, _title: string | PropertyRecord | undefined, _toolbarProps: AbstractToolbarProps | undefined,\n _location: XAndY, _offset: XAndY, _onItemExecuted: OnItemExecutedFunc, _onCancel: OnCancelFunc,\n _relativePosition?: RelativePosition, _anchorElement?: HTMLElement): boolean {\n return false;\n }\n\n /** Hides the Card. */\n public hideCard(): boolean { return false; }\n\n /** Opens a Tool Settings Ui popup at a particular location.\n * @param _dataProvider The UiDataProvider for the tool settings\n * @param _location Location of the tool settings, relative to the origin of anchorElement or the window\n * @param _offset Offset of the tool settings from the location\n * @param _onCancel Function invoked when the Escape key is pressed or a click occurs outside the tool settings\n * @param _relativePosition Position relative to the given location. Defaults to TopRight.\n * @param _anchorElement The HTMLElement that anchors the tool settings. If undefined, the location is relative to the overall window.\n * @return true if the tool settings were displayed, false if the tool settings could not be displayed.\n */\n public openToolSettingsPopup(\n _dataProvider: UiDataProvider, _location: XAndY, _offset: XAndY, _onCancel: OnCancelFunc,\n _relativePosition?: RelativePosition, _anchorElement?: HTMLElement): boolean {\n return false;\n }\n\n /** Closes the Tool Settings Ui popup. */\n public closeToolSettingsPopup(): boolean { return false; }\n\n /** Show the Keyin Palette to display all support Tool key-ins.\n * @param _htmlElement The HTMLElement that anchors the Keyin Palette. If undefined, the location is relative to the overall window.\n * @return true if the Keyin Palette was displayed, false if it could not be displayed.\n */\n public showKeyinPalette(_htmlElement?: HTMLElement): boolean { return false; }\n\n /** Hides the Keyin Palette. */\n public hideKeyinPalette(): boolean { return false; }\n\n /** Send a UI event */\n public static sendUiEvent(args: GenericUiEventArgs) {\n UiAdmin.onGenericUiEvent.emit(args);\n }\n /** GenericUiEvent */\n public static readonly onGenericUiEvent = new GenericUiEvent();\n\n /** Opens a Dialog and automatically populates it using the properties defined by the UiDataProvider.\n * @param _uiDataProvider The DialogLayoutDataProvider for the dialog\n * @param _title Specify title for dialog.\n * @param _isModal Specify if the dialog is opened as a modal or modeless.\n * @param _id Id of the dialog that is used to close it.\n * @param _optionalProps Optional props for Dialog construction.\n * @return true if the tool settings were displayed, false if the tool settings could not be displayed.\n */\n public openDialog(_uiDataProvider: DialogLayoutDataProvider, _title: string, _isModal: boolean, _id: string,\n _optionalProps?: DialogProps): boolean {\n return false;\n }\n\n /** Closes the Dialog with a given Id. */\n public closeDialog(_dialogId: string): boolean { return false; }\n}\n"]}

@@ -5,3 +5,3 @@ /** @packageDocumentation

/** Interface that returns indices of matches
* @public @deprecated in 4.3.0 - will not be removed until after 2026-06-13. A rarely used interface. If needed, please add a custom implementation.
* @public @deprecated in 4.3.0 - might be removed in next major version. A rarely used interface. If needed, please add a custom implementation.
*/

@@ -19,5 +19,5 @@ export interface IMatch {

* Useful in cases where the target is words (e.g. command labels)
* @internal @deprecated in 4.3 - will not be removed until after 2026-06-13. Use `matchesWords` from @itwin/core-react instead. Though internal, this requires deprecation due to known public usage in @itwin/core-react.
* @internal @deprecated in 4.3 - might be removed in next major version. Use `matchesWords` from @itwin/core-react instead. Though internal, this requires deprecation due to known public usage in @itwin/core-react.
*/
export declare function matchesWords(word: string, target: string, contiguous?: boolean): IMatch[] | null;
//# sourceMappingURL=filters.d.ts.map

@@ -53,3 +53,3 @@ "use strict";

* Useful in cases where the target is words (e.g. command labels)
* @internal @deprecated in 4.3 - will not be removed until after 2026-06-13. Use `matchesWords` from @itwin/core-react instead. Though internal, this requires deprecation due to known public usage in @itwin/core-react.
* @internal @deprecated in 4.3 - might be removed in next major version. Use `matchesWords` from @itwin/core-react instead. Though internal, this requires deprecation due to known public usage in @itwin/core-react.
*/

@@ -56,0 +56,0 @@ function matchesWords(word, target, contiguous = false) {

@@ -1,1 +0,1 @@

{"version":3,"file":"filters.js","sourceRoot":"","sources":["../../../../../src/appui-abstract/utils/filter/filters.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 Utilities\n */\n\n// file copied from https://github.com/microsoft/vscode/blob/master/src/vs/base/common/filters.ts\n/* eslint-disable @typescript-eslint/no-deprecated */\n\n/** Interface that returns indices of matches\n * @public @deprecated in 4.3.0 - will not be removed until after 2026-06-13. A rarely used interface. If needed, please add a custom implementation.\n */\nexport interface IMatch {\n start: number;\n end: number;\n}\n\nenum CharCode {\n Space = 32,\n Tab = 9,\n LineFeed = 10,\n CarriageReturn = 13\n}\n\nfunction isWhitespace(code: number): boolean {\n return (\n code === CharCode.Space\n || code === CharCode.Tab\n || code === CharCode.LineFeed\n || code === CharCode.CarriageReturn\n );\n}\nconst wordSeparators = new Set<number>();\n'`~!@#$%^&*()-=+[{]}\\\\|;:\\'\",.<>/?'\n .split(\"\")\n .forEach((s) => wordSeparators.add(s.charCodeAt(0)));\n\nfunction isWordSeparator(code: number): boolean {\n return isWhitespace(code) || wordSeparators.has(code);\n}\n\nfunction charactersMatch(codeA: number, codeB: number): boolean {\n return (codeA === codeB) || (isWordSeparator(codeA) && isWordSeparator(codeB));\n}\n\nfunction join(head: IMatch, tail: IMatch[]): IMatch[] {\n if (tail.length === 0) {\n tail = [head];\n } else if (head.end === tail[0].start) {\n tail[0].start = head.start;\n } else {\n tail.unshift(head);\n }\n return tail;\n}\n\n/**\n * Matches beginning of words supporting non-ASCII languages.\n * @param word Filter string\n * @param target String being searched\n * @param contiguous - If true the filter string must be found \"contiguous\" in the searched string (E.g. \"pul\" will match \"Git: Pull\").\n * Otherwise also matches sub string of the word with beginnings of the words in the target (e.g. \"gp\" or \"g p\" will match \"Git: Pull\").\n * Useful in cases where the target is words (e.g. command labels)\n * @internal @deprecated in 4.3 - will not be removed until after 2026-06-13. Use `matchesWords` from @itwin/core-react instead. Though internal, this requires deprecation due to known public usage in @itwin/core-react.\n */\nexport function matchesWords(word: string, target: string, contiguous: boolean = false): IMatch[] | null {\n if (!target || target.length === 0) {\n return null;\n }\n\n let result: IMatch[] | null = null;\n let i = 0;\n\n word = word.toLowerCase();\n target = target.toLowerCase();\n while (i < target.length && (result = _matchesWords(word, target, 0, i, contiguous)) === null) {\n i = nextWord(target, i + 1);\n }\n\n return result;\n}\n\nfunction _matchesWords(word: string, target: string, i: number, j: number, contiguous: boolean): IMatch[] | null {\n if (i === word.length) {\n return [];\n } else if (j === target.length) {\n return null;\n } else if (!charactersMatch(word.charCodeAt(i), target.charCodeAt(j))) {\n return null;\n } else {\n let result: IMatch[] | null = null;\n let nextWordIndex = j + 1;\n result = _matchesWords(word, target, i + 1, j + 1, contiguous);\n // istanbul ignore else\n if (!contiguous) {\n while (!result && (nextWordIndex = nextWord(target, nextWordIndex)) < target.length) {\n result = _matchesWords(word, target, i + 1, nextWordIndex, contiguous);\n nextWordIndex++;\n }\n }\n return result === null ? null : join({ start: j, end: j + 1 }, result);\n }\n}\n\nfunction nextWord(word: string, start: number): number {\n for (let i = start; i < word.length; i++) {\n if (isWordSeparator(word.charCodeAt(i)) ||\n (i > 0 && isWordSeparator(word.charCodeAt(i - 1)))) {\n return i;\n }\n }\n return word.length;\n}\n"]}
{"version":3,"file":"filters.js","sourceRoot":"","sources":["../../../../../src/appui-abstract/utils/filter/filters.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 Utilities\n */\n\n// file copied from https://github.com/microsoft/vscode/blob/master/src/vs/base/common/filters.ts\n/* eslint-disable @typescript-eslint/no-deprecated */\n\n/** Interface that returns indices of matches\n * @public @deprecated in 4.3.0 - might be removed in next major version. A rarely used interface. If needed, please add a custom implementation.\n */\nexport interface IMatch {\n start: number;\n end: number;\n}\n\nenum CharCode {\n Space = 32,\n Tab = 9,\n LineFeed = 10,\n CarriageReturn = 13\n}\n\nfunction isWhitespace(code: number): boolean {\n return (\n code === CharCode.Space\n || code === CharCode.Tab\n || code === CharCode.LineFeed\n || code === CharCode.CarriageReturn\n );\n}\nconst wordSeparators = new Set<number>();\n'`~!@#$%^&*()-=+[{]}\\\\|;:\\'\",.<>/?'\n .split(\"\")\n .forEach((s) => wordSeparators.add(s.charCodeAt(0)));\n\nfunction isWordSeparator(code: number): boolean {\n return isWhitespace(code) || wordSeparators.has(code);\n}\n\nfunction charactersMatch(codeA: number, codeB: number): boolean {\n return (codeA === codeB) || (isWordSeparator(codeA) && isWordSeparator(codeB));\n}\n\nfunction join(head: IMatch, tail: IMatch[]): IMatch[] {\n if (tail.length === 0) {\n tail = [head];\n } else if (head.end === tail[0].start) {\n tail[0].start = head.start;\n } else {\n tail.unshift(head);\n }\n return tail;\n}\n\n/**\n * Matches beginning of words supporting non-ASCII languages.\n * @param word Filter string\n * @param target String being searched\n * @param contiguous - If true the filter string must be found \"contiguous\" in the searched string (E.g. \"pul\" will match \"Git: Pull\").\n * Otherwise also matches sub string of the word with beginnings of the words in the target (e.g. \"gp\" or \"g p\" will match \"Git: Pull\").\n * Useful in cases where the target is words (e.g. command labels)\n * @internal @deprecated in 4.3 - might be removed in next major version. Use `matchesWords` from @itwin/core-react instead. Though internal, this requires deprecation due to known public usage in @itwin/core-react.\n */\nexport function matchesWords(word: string, target: string, contiguous: boolean = false): IMatch[] | null {\n if (!target || target.length === 0) {\n return null;\n }\n\n let result: IMatch[] | null = null;\n let i = 0;\n\n word = word.toLowerCase();\n target = target.toLowerCase();\n while (i < target.length && (result = _matchesWords(word, target, 0, i, contiguous)) === null) {\n i = nextWord(target, i + 1);\n }\n\n return result;\n}\n\nfunction _matchesWords(word: string, target: string, i: number, j: number, contiguous: boolean): IMatch[] | null {\n if (i === word.length) {\n return [];\n } else if (j === target.length) {\n return null;\n } else if (!charactersMatch(word.charCodeAt(i), target.charCodeAt(j))) {\n return null;\n } else {\n let result: IMatch[] | null = null;\n let nextWordIndex = j + 1;\n result = _matchesWords(word, target, i + 1, j + 1, contiguous);\n // istanbul ignore else\n if (!contiguous) {\n while (!result && (nextWordIndex = nextWord(target, nextWordIndex)) < target.length) {\n result = _matchesWords(word, target, i + 1, nextWordIndex, contiguous);\n nextWordIndex++;\n }\n }\n return result === null ? null : join({ start: j, end: j + 1 }, result);\n }\n}\n\nfunction nextWord(word: string, start: number): number {\n for (let i = start; i < word.length; i++) {\n if (isWordSeparator(word.charCodeAt(i)) ||\n (i > 0 && isWordSeparator(word.charCodeAt(i - 1)))) {\n return i;\n }\n }\n return word.length;\n}\n"]}

@@ -5,3 +5,3 @@ /** @packageDocumentation

/** Creates an IconSpec with an SVG source and gets the SVG source from an IconSpec.
* @public @deprecated in 4.3 - will not be removed until after 2026-06-13. AppUI libraries >= 4.7.x support loading SVGs sources without prefixes, eliminating the need for these utilities.
* @public @deprecated in 4.3 - might be removed in next major version. AppUI libraries >= 4.7.x support loading SVGs sources without prefixes, eliminating the need for these utilities.
*/

@@ -13,7 +13,7 @@ export declare class IconSpecUtilities {

/** Create an IconSpec for an SVG loaded into web component with svg-loader
* @public @deprecated in 4.3 - will not be removed until after 2026-06-13. AppUI libraries > 4.7.x support loading SVGs sources without prefixes, eliminating the need for this utility.
* @public @deprecated in 4.3 - might be removed in next major version. AppUI libraries > 4.7.x support loading SVGs sources without prefixes, eliminating the need for this utility.
*/
static createWebComponentIconSpec(srcString: string): string;
/** Get the SVG Source from an svg-loader IconSpec
* @public @deprecated in 4.3 - will not be removed until after 2026-06-13. AppUI libraries > 4.7.x support loading SVGs sources without prefixes, eliminating the need for this utility.
* @public @deprecated in 4.3 - might be removed in next major version. AppUI libraries > 4.7.x support loading SVGs sources without prefixes, eliminating the need for this utility.
*/

@@ -20,0 +20,0 @@ static getWebComponentSource(iconSpec: string): string | undefined;

@@ -13,3 +13,3 @@ "use strict";

/** Creates an IconSpec with an SVG source and gets the SVG source from an IconSpec.
* @public @deprecated in 4.3 - will not be removed until after 2026-06-13. AppUI libraries >= 4.7.x support loading SVGs sources without prefixes, eliminating the need for these utilities.
* @public @deprecated in 4.3 - might be removed in next major version. AppUI libraries >= 4.7.x support loading SVGs sources without prefixes, eliminating the need for these utilities.
*/

@@ -21,3 +21,3 @@ class IconSpecUtilities {

/** Create an IconSpec for an SVG loaded into web component with svg-loader
* @public @deprecated in 4.3 - will not be removed until after 2026-06-13. AppUI libraries > 4.7.x support loading SVGs sources without prefixes, eliminating the need for this utility.
* @public @deprecated in 4.3 - might be removed in next major version. AppUI libraries > 4.7.x support loading SVGs sources without prefixes, eliminating the need for this utility.
*/

@@ -28,3 +28,3 @@ static createWebComponentIconSpec(srcString) {

/** Get the SVG Source from an svg-loader IconSpec
* @public @deprecated in 4.3 - will not be removed until after 2026-06-13. AppUI libraries > 4.7.x support loading SVGs sources without prefixes, eliminating the need for this utility.
* @public @deprecated in 4.3 - might be removed in next major version. AppUI libraries > 4.7.x support loading SVGs sources without prefixes, eliminating the need for this utility.
*/

@@ -31,0 +31,0 @@ static getWebComponentSource(iconSpec) {

@@ -1,1 +0,1 @@

{"version":3,"file":"IconSpecUtilities.js","sourceRoot":"","sources":["../../../../src/appui-abstract/utils/IconSpecUtilities.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,qDAAqD;AAErD;;GAEG;AACH,MAAa,iBAAiB;IAC5B,+DAA+D;IACxD,MAAM,CAAU,UAAU,GAAG,MAAM,CAAC;IACpC,MAAM,CAAU,oBAAoB,GAAG,SAAS,CAAC;IAExD;;MAEE;IACK,MAAM,CAAC,0BAA0B,CAAC,SAAiB;QACxD,OAAO,GAAG,iBAAiB,CAAC,oBAAoB,GAAG,SAAS,EAAE,CAAC;IACjE,CAAC;IAED;;MAEE;IAEK,MAAM,CAAC,qBAAqB,CAAC,QAAgB;QAClD,IAAI,QAAQ,CAAC,UAAU,CAAC,iBAAiB,CAAC,oBAAoB,CAAC,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvF,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC3B,CAAC;QAED,OAAO,SAAS,CAAC;IAEnB,CAAC;;AAvBH,8CAwBC","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 Utilities\n */\n\n/* eslint-disable @typescript-eslint/no-deprecated */\n\n/** Creates an IconSpec with an SVG source and gets the SVG source from an IconSpec.\n * @public @deprecated in 4.3 - will not be removed until after 2026-06-13. AppUI libraries >= 4.7.x support loading SVGs sources without prefixes, eliminating the need for these utilities.\n */\nexport class IconSpecUtilities {\n /** Prefix for an SVG IconSpec loaded with the Sprite loader */\n public static readonly SVG_PREFIX = \"svg:\";\n public static readonly WEB_COMPONENT_PREFIX = \"webSvg:\";\n\n /** Create an IconSpec for an SVG loaded into web component with svg-loader\n * @public @deprecated in 4.3 - will not be removed until after 2026-06-13. AppUI libraries > 4.7.x support loading SVGs sources without prefixes, eliminating the need for this utility.\n */\n public static createWebComponentIconSpec(srcString: string): string {\n return `${IconSpecUtilities.WEB_COMPONENT_PREFIX}${srcString}`;\n }\n\n /** Get the SVG Source from an svg-loader IconSpec\n * @public @deprecated in 4.3 - will not be removed until after 2026-06-13. AppUI libraries > 4.7.x support loading SVGs sources without prefixes, eliminating the need for this utility.\n */\n\n public static getWebComponentSource(iconSpec: string): string | undefined {\n if (iconSpec.startsWith(IconSpecUtilities.WEB_COMPONENT_PREFIX) && iconSpec.length > 7) {\n return iconSpec.slice(7);\n }\n\n return undefined;\n\n }\n}\n"]}
{"version":3,"file":"IconSpecUtilities.js","sourceRoot":"","sources":["../../../../src/appui-abstract/utils/IconSpecUtilities.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,qDAAqD;AAErD;;GAEG;AACH,MAAa,iBAAiB;IAC5B,+DAA+D;IACxD,MAAM,CAAU,UAAU,GAAG,MAAM,CAAC;IACpC,MAAM,CAAU,oBAAoB,GAAG,SAAS,CAAC;IAExD;;MAEE;IACK,MAAM,CAAC,0BAA0B,CAAC,SAAiB;QACxD,OAAO,GAAG,iBAAiB,CAAC,oBAAoB,GAAG,SAAS,EAAE,CAAC;IACjE,CAAC;IAED;;MAEE;IAEK,MAAM,CAAC,qBAAqB,CAAC,QAAgB;QAClD,IAAI,QAAQ,CAAC,UAAU,CAAC,iBAAiB,CAAC,oBAAoB,CAAC,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvF,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC3B,CAAC;QAED,OAAO,SAAS,CAAC;IAEnB,CAAC;;AAvBH,8CAwBC","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 Utilities\n */\n\n/* eslint-disable @typescript-eslint/no-deprecated */\n\n/** Creates an IconSpec with an SVG source and gets the SVG source from an IconSpec.\n * @public @deprecated in 4.3 - might be removed in next major version. AppUI libraries >= 4.7.x support loading SVGs sources without prefixes, eliminating the need for these utilities.\n */\nexport class IconSpecUtilities {\n /** Prefix for an SVG IconSpec loaded with the Sprite loader */\n public static readonly SVG_PREFIX = \"svg:\";\n public static readonly WEB_COMPONENT_PREFIX = \"webSvg:\";\n\n /** Create an IconSpec for an SVG loaded into web component with svg-loader\n * @public @deprecated in 4.3 - might be removed in next major version. AppUI libraries > 4.7.x support loading SVGs sources without prefixes, eliminating the need for this utility.\n */\n public static createWebComponentIconSpec(srcString: string): string {\n return `${IconSpecUtilities.WEB_COMPONENT_PREFIX}${srcString}`;\n }\n\n /** Get the SVG Source from an svg-loader IconSpec\n * @public @deprecated in 4.3 - might be removed in next major version. AppUI libraries > 4.7.x support loading SVGs sources without prefixes, eliminating the need for this utility.\n */\n\n public static getWebComponentSource(iconSpec: string): string | undefined {\n if (iconSpec.startsWith(IconSpecUtilities.WEB_COMPONENT_PREFIX) && iconSpec.length > 7) {\n return iconSpec.slice(7);\n }\n\n return undefined;\n\n }\n}\n"]}

@@ -6,5 +6,5 @@ /** @packageDocumentation

* @internal
* @deprecated in 4.3 - will not be removed until after 2026-06-13. Please use your own implementation in the future. Though internal, this requires deprecation due to known public usage in @itwin/core-react.
* @deprecated in 4.3 - might be removed in next major version. Please use your own implementation in the future. Though internal, this requires deprecation due to known public usage in @itwin/core-react.
*/
export declare const getClassName: (obj: any) => string;
//# sourceMappingURL=misc.d.ts.map

@@ -13,3 +13,3 @@ "use strict";

* @internal
* @deprecated in 4.3 - will not be removed until after 2026-06-13. Please use your own implementation in the future. Though internal, this requires deprecation due to known public usage in @itwin/core-react.
* @deprecated in 4.3 - might be removed in next major version. Please use your own implementation in the future. Though internal, this requires deprecation due to known public usage in @itwin/core-react.
*/

@@ -16,0 +16,0 @@ const getClassName = (obj) => {

@@ -1,1 +0,1 @@

{"version":3,"file":"misc.js","sourceRoot":"","sources":["../../../../src/appui-abstract/utils/misc.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH;;;GAGG;AACI,MAAM,YAAY,GAAG,CAAC,GAAQ,EAAU,EAAE;IAC/C,IAAI,SAAS,GAAG,EAAE,CAAC;IAEnB,IAAI,GAAG,EAAE,CAAC;QACR,IAAI,GAAG,CAAC,IAAI;YACV,SAAS,GAAG,GAAG,CAAC,IAAI,CAAC;aAClB,CAAC;YACJ,uBAAuB;YACvB,IAAI,GAAG,CAAC,WAAW,IAAI,GAAG,CAAC,WAAW,CAAC,IAAI;gBACzC,SAAS,GAAG,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC;QACrC,CAAC;IACH,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC;AAdW,QAAA,YAAY,gBAcvB","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 Utilities\n */\n\n/** Gets the class name for an object.\n * @internal\n * @deprecated in 4.3 - will not be removed until after 2026-06-13. Please use your own implementation in the future. Though internal, this requires deprecation due to known public usage in @itwin/core-react.\n */\nexport const getClassName = (obj: any): string => {\n let className = \"\";\n\n if (obj) {\n if (obj.name)\n className = obj.name;\n else {\n // istanbul ignore else\n if (obj.constructor && obj.constructor.name)\n className = obj.constructor.name;\n }\n }\n\n return className;\n};\n\n"]}
{"version":3,"file":"misc.js","sourceRoot":"","sources":["../../../../src/appui-abstract/utils/misc.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH;;;GAGG;AACI,MAAM,YAAY,GAAG,CAAC,GAAQ,EAAU,EAAE;IAC/C,IAAI,SAAS,GAAG,EAAE,CAAC;IAEnB,IAAI,GAAG,EAAE,CAAC;QACR,IAAI,GAAG,CAAC,IAAI;YACV,SAAS,GAAG,GAAG,CAAC,IAAI,CAAC;aAClB,CAAC;YACJ,uBAAuB;YACvB,IAAI,GAAG,CAAC,WAAW,IAAI,GAAG,CAAC,WAAW,CAAC,IAAI;gBACzC,SAAS,GAAG,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC;QACrC,CAAC;IACH,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC;AAdW,QAAA,YAAY,gBAcvB","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 Utilities\n */\n\n/** Gets the class name for an object.\n * @internal\n * @deprecated in 4.3 - might be removed in next major version. Please use your own implementation in the future. Though internal, this requires deprecation due to known public usage in @itwin/core-react.\n */\nexport const getClassName = (obj: any): string => {\n let className = \"\";\n\n if (obj) {\n if (obj.name)\n className = obj.name;\n else {\n // istanbul ignore else\n if (obj.constructor && obj.constructor.name)\n className = obj.constructor.name;\n }\n }\n\n return className;\n};\n\n"]}

@@ -5,3 +5,3 @@ /** @packageDocumentation

/** Describes 2d points.
* @public @deprecated in 4.2.0 - will not be removed until after 2026-06-13. Use @core/geometry [[Geometry.XAndY]] or your own custom type.
* @public @deprecated in 4.2.0 - might be removed in next major version. Use @core/geometry [[Geometry.XAndY]] or your own custom type.
*/

@@ -8,0 +8,0 @@ export interface PointProps {

@@ -1,1 +0,1 @@

{"version":3,"file":"PointProps.js","sourceRoot":"","sources":["../../../../src/appui-abstract/utils/PointProps.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG","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 Utilities\n */\n\n/** Describes 2d points.\n * @public @deprecated in 4.2.0 - will not be removed until after 2026-06-13. Use @core/geometry [[Geometry.XAndY]] or your own custom type.\n */\nexport interface PointProps {\n readonly x: number;\n readonly y: number;\n}\n"]}
{"version":3,"file":"PointProps.js","sourceRoot":"","sources":["../../../../src/appui-abstract/utils/PointProps.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG","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 Utilities\n */\n\n/** Describes 2d points.\n * @public @deprecated in 4.2.0 - might be removed in next major version. Use @core/geometry [[Geometry.XAndY]] or your own custom type.\n */\nexport interface PointProps {\n readonly x: number;\n readonly y: number;\n}\n"]}

@@ -6,3 +6,3 @@ /** @packageDocumentation

/** iTwin.js UI UiError class is a subclass of BentleyError. Errors are logged.
* @public @deprecated in 4.3 - will not be removed until after 2026-06-13. Use [[Bentley.BentleyError]] instead.
* @public @deprecated in 4.3 - might be removed in next major version. Use [[Bentley.BentleyError]] instead.
*/

@@ -9,0 +9,0 @@ export declare class UiError extends BentleyError {

@@ -13,3 +13,3 @@ "use strict";

/** iTwin.js UI UiError class is a subclass of BentleyError. Errors are logged.
* @public @deprecated in 4.3 - will not be removed until after 2026-06-13. Use [[Bentley.BentleyError]] instead.
* @public @deprecated in 4.3 - might be removed in next major version. Use [[Bentley.BentleyError]] instead.
*/

@@ -16,0 +16,0 @@ class UiError extends core_bentley_1.BentleyError {

@@ -1,1 +0,1 @@

{"version":3,"file":"UiError.js","sourceRoot":"","sources":["../../../../src/appui-abstract/utils/UiError.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,sDAAuF;AAEvF;;GAEG;AACH,MAAa,OAAQ,SAAQ,2BAAY;IAGb;IAD1B,6CAA6C;IAC7C,YAA0B,QAAgB,EAAE,OAAe,EAAE,cAAsB,4BAAa,CAAC,KAAK,EAAE,WAAiC;QACvI,KAAK,CAAC,WAAW,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;QADjB,aAAQ,GAAR,QAAQ,CAAQ;IAE1C,CAAC;CACF;AAND,0BAMC","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 Utilities\n */\n\nimport { BentleyError, BentleyStatus, GetMetaDataFunction } from \"@itwin/core-bentley\";\n\n/** iTwin.js UI UiError class is a subclass of BentleyError. Errors are logged.\n * @public @deprecated in 4.3 - will not be removed until after 2026-06-13. Use [[Bentley.BentleyError]] instead.\n */\nexport class UiError extends BentleyError {\n\n /** Constructs UiError using BentleyError. */\n public constructor(public category: string, message: string, errorNumber: number = BentleyStatus.ERROR, getMetaData?: GetMetaDataFunction) {\n super(errorNumber, message, getMetaData);\n }\n}\n"]}
{"version":3,"file":"UiError.js","sourceRoot":"","sources":["../../../../src/appui-abstract/utils/UiError.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,sDAAuF;AAEvF;;GAEG;AACH,MAAa,OAAQ,SAAQ,2BAAY;IAGb;IAD1B,6CAA6C;IAC7C,YAA0B,QAAgB,EAAE,OAAe,EAAE,cAAsB,4BAAa,CAAC,KAAK,EAAE,WAAiC;QACvI,KAAK,CAAC,WAAW,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;QADjB,aAAQ,GAAR,QAAQ,CAAQ;IAE1C,CAAC;CACF;AAND,0BAMC","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 Utilities\n */\n\nimport { BentleyError, BentleyStatus, GetMetaDataFunction } from \"@itwin/core-bentley\";\n\n/** iTwin.js UI UiError class is a subclass of BentleyError. Errors are logged.\n * @public @deprecated in 4.3 - might be removed in next major version. Use [[Bentley.BentleyError]] instead.\n */\nexport class UiError extends BentleyError {\n\n /** Constructs UiError using BentleyError. */\n public constructor(public category: string, message: string, errorNumber: number = BentleyStatus.ERROR, getMetaData?: GetMetaDataFunction) {\n super(errorNumber, message, getMetaData);\n }\n}\n"]}

@@ -7,3 +7,3 @@ /** @packageDocumentation

* @public
* @deprecated in 4.2 - will not be removed until after 2026-06-13. This type is a duplicate of [[BeUiEvent]], which should be used instead.
* @deprecated in 4.2 - might be removed in next major version. This type is a duplicate of [[BeUiEvent]], which should be used instead.
*/

@@ -10,0 +10,0 @@ export declare class UiEvent<TEventArgs> extends BeUiEvent<TEventArgs> {

@@ -14,3 +14,3 @@ "use strict";

* @public
* @deprecated in 4.2 - will not be removed until after 2026-06-13. This type is a duplicate of [[BeUiEvent]], which should be used instead.
* @deprecated in 4.2 - might be removed in next major version. This type is a duplicate of [[BeUiEvent]], which should be used instead.
*/

@@ -17,0 +17,0 @@ class UiEvent extends core_bentley_1.BeUiEvent {

@@ -1,1 +0,1 @@

{"version":3,"file":"UiEvent.js","sourceRoot":"","sources":["../../../../src/appui-abstract/utils/UiEvent.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,sDAAgD;AAEhD;;;GAGG;AACH,MAAa,OAAoB,SAAQ,wBAAqB;CAAI;AAAlE,0BAAkE","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 Utilities\n */\n\nimport { BeUiEvent } from \"@itwin/core-bentley\";\n\n/** iTwin.js UI UiEvent class is a subclass of BeEvent with argument type safety.\n * @public\n * @deprecated in 4.2 - will not be removed until after 2026-06-13. This type is a duplicate of [[BeUiEvent]], which should be used instead.\n */\nexport class UiEvent<TEventArgs> extends BeUiEvent<TEventArgs> { }\n"]}
{"version":3,"file":"UiEvent.js","sourceRoot":"","sources":["../../../../src/appui-abstract/utils/UiEvent.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,sDAAgD;AAEhD;;;GAGG;AACH,MAAa,OAAoB,SAAQ,wBAAqB;CAAI;AAAlE,0BAAkE","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 Utilities\n */\n\nimport { BeUiEvent } from \"@itwin/core-bentley\";\n\n/** iTwin.js UI UiEvent class is a subclass of BeEvent with argument type safety.\n * @public\n * @deprecated in 4.2 - might be removed in next major version. This type is a duplicate of [[BeUiEvent]], which should be used instead.\n */\nexport class UiEvent<TEventArgs> extends BeUiEvent<TEventArgs> { }\n"]}

@@ -7,3 +7,3 @@ /** @packageDocumentation

* @public
* @deprecated in 4.2.0 - will not be removed until after 2026-06-13. Please use [[UiSyncEventArgs]] in @itwin/appui-react
* @deprecated in 4.2.0 - might be removed in next major version. Please use [[UiSyncEventArgs]] in @itwin/appui-react
*/

@@ -15,3 +15,3 @@ export interface UiSyncEventArgs {

* @public
* @deprecated in 4.2.0 - will not be removed until after 2026-06-13. Use [[UiSyncEvent]] from @itwin/appui-react.
* @deprecated in 4.2.0 - might be removed in next major version. Use [[UiSyncEvent]] from @itwin/appui-react.
*/

@@ -23,3 +23,3 @@ export declare class UiSyncEvent extends BeUiEvent<UiSyncEventArgs> {

* @public
* @deprecated in 4.2.0 - will not be removed until after 2026-06-13. Use [[SyncUiEventDispatcher]] from @itwin/appui-react.
* @deprecated in 4.2.0 - might be removed in next major version. Use [[SyncUiEventDispatcher]] from @itwin/appui-react.
*/

@@ -26,0 +26,0 @@ export declare class UiEventDispatcher {

@@ -14,3 +14,3 @@ "use strict";

* @public
* @deprecated in 4.2.0 - will not be removed until after 2026-06-13. Use [[UiSyncEvent]] from @itwin/appui-react.
* @deprecated in 4.2.0 - might be removed in next major version. Use [[UiSyncEvent]] from @itwin/appui-react.
*/

@@ -24,3 +24,3 @@ // eslint-disable-next-line @typescript-eslint/no-deprecated

* @public
* @deprecated in 4.2.0 - will not be removed until after 2026-06-13. Use [[SyncUiEventDispatcher]] from @itwin/appui-react.
* @deprecated in 4.2.0 - might be removed in next major version. Use [[SyncUiEventDispatcher]] from @itwin/appui-react.
*/

@@ -27,0 +27,0 @@ class UiEventDispatcher {

@@ -1,1 +0,1 @@

{"version":3,"file":"UiEventDispatcher.js","sourceRoot":"","sources":["../../../../src/appui-abstract/utils/UiEventDispatcher.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 Utilities\n */\n\nimport { BeUiEvent } from \"@itwin/core-bentley\";\n\n/** UiSync Event arguments. Contains a set of lower case event Ids.\n * @public\n * @deprecated in 4.2.0 - will not be removed until after 2026-06-13. Please use [[UiSyncEventArgs]] in @itwin/appui-react\n */\nexport interface UiSyncEventArgs {\n eventIds: Set<string>;\n}\n\n/** UiSync Event class.\n * @public\n * @deprecated in 4.2.0 - will not be removed until after 2026-06-13. Use [[UiSyncEvent]] from @itwin/appui-react.\n */\n// eslint-disable-next-line @typescript-eslint/no-deprecated\nexport class UiSyncEvent extends BeUiEvent<UiSyncEventArgs> { }\n\n/** This class is used to send eventIds to interested UI components so the component can determine if it needs\n * to refresh its display by calling setState on itself.\n * @public\n * @deprecated in 4.2.0 - will not be removed until after 2026-06-13. Use [[SyncUiEventDispatcher]] from @itwin/appui-react.\n */\nexport class UiEventDispatcher {\n private _syncEventTimerId: number | undefined;\n private _eventIds: Set<string>;\n private _eventIdAdded;\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n private _uiSyncEvent: UiSyncEvent;\n private _timeoutPeriod;\n private _secondaryTimeoutPeriod;\n\n constructor() {\n this._eventIds = new Set<string>();\n this._eventIdAdded = false;\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n this._uiSyncEvent = new UiSyncEvent();\n this._timeoutPeriod = 100;\n this._secondaryTimeoutPeriod = this._timeoutPeriod / 2;\n }\n\n /** @internal - used for testing only */\n /* istanbul ignore next */\n public setTimeoutPeriod(period: number): void {\n this._timeoutPeriod = period;\n this._secondaryTimeoutPeriod = Math.floor(this._timeoutPeriod / 2);\n if (this._secondaryTimeoutPeriod < 1)\n this._secondaryTimeoutPeriod = 1;\n if (this._syncEventTimerId) {\n window.clearTimeout(this._syncEventTimerId);\n this._syncEventTimerId = undefined;\n }\n if (this._eventIds)\n this._eventIds.clear();\n\n this._eventIdAdded = false;\n }\n\n /** The current timeout period */\n public get timeoutPeriod(): number {\n return this._timeoutPeriod;\n }\n /** Return set of event ids that will be sent to listeners/. */\n public get syncEventIds(): Set<string> {\n return this._eventIds;\n }\n\n /** Return UiSyncEvent so callers can register an event callback. */\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n public get onSyncUiEvent(): UiSyncEvent {\n return this._uiSyncEvent;\n }\n\n /** Immediately trigger sync event processing. */\n public dispatchImmediateSyncUiEvent(eventId: string): void {\n const eventIds = new Set<string>();\n eventIds.add(eventId.toLowerCase());\n this.onSyncUiEvent.emit({ eventIds });\n }\n\n /** Save eventId in Set for processing. */\n public dispatchSyncUiEvent(eventId: string): void {\n // istanbul ignore if\n if (0 === this._timeoutPeriod) {\n return;\n }\n\n this.syncEventIds.add(eventId.toLowerCase());\n if (!this._syncEventTimerId) { // if there is not a timer active, create one\n this._syncEventTimerId = window.setTimeout(() => { this.checkForAdditionalIds(); }, this._timeoutPeriod);\n } else {\n this._eventIdAdded = true;\n }\n }\n\n /** Save multiple eventIds in Set for processing. */\n public dispatchSyncUiEvents(eventIds: string[]): void {\n // istanbul ignore if\n if (0 === this._timeoutPeriod) {\n return;\n }\n\n eventIds.forEach((id) => this.syncEventIds.add(id.toLowerCase()));\n // istanbul ignore else\n if (!this._syncEventTimerId) { // if there is not a timer active, create one\n this._syncEventTimerId = window.setTimeout(() => { this.checkForAdditionalIds(); }, this._timeoutPeriod);\n } else {\n this._eventIdAdded = true;\n }\n }\n\n /** Trigger registered event processing when timer has expired and no addition eventId are added. */\n public checkForAdditionalIds() {\n /* istanbul ignore else */\n if (!this._eventIdAdded) {\n // istanbul ignore else\n if (this._syncEventTimerId) {\n window.clearTimeout(this._syncEventTimerId);\n this._syncEventTimerId = undefined;\n }\n this._eventIdAdded = false;\n // istanbul ignore else\n if (this.syncEventIds.size > 0) {\n const eventIds = new Set<string>();\n this.syncEventIds.forEach((value) => eventIds.add(value));\n this._eventIds.clear();\n this.onSyncUiEvent.emit({ eventIds });\n }\n return;\n }\n\n // istanbul ignore next\n if (this._syncEventTimerId) {\n window.clearTimeout(this._syncEventTimerId);\n this._syncEventTimerId = undefined;\n }\n // istanbul ignore next\n this._eventIdAdded = false;\n // if events have been added before the initial timer expired wait half that time to see if events are still being added.\n // istanbul ignore next\n this._syncEventTimerId = window.setTimeout(() => { this.checkForAdditionalIds(); }, this._secondaryTimeoutPeriod);\n }\n\n /** Checks to see if an eventId of interest is contained in the set of eventIds */\n public hasEventOfInterest(eventIds: Set<string>, idsOfInterest: string[]) {\n /* istanbul ignore else */\n if ((idsOfInterest.length > 0) && idsOfInterest.some((value: string): boolean => eventIds.has(value.toLowerCase())))\n return true;\n return false;\n }\n}\n"]}
{"version":3,"file":"UiEventDispatcher.js","sourceRoot":"","sources":["../../../../src/appui-abstract/utils/UiEventDispatcher.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,sDAAgD;AAUhD;;;GAGG;AACH,4DAA4D;AAC5D,MAAa,WAAY,SAAQ,wBAA0B;CAAI;AAA/D,kCAA+D;AAE/D;;;;GAIG;AACH,MAAa,iBAAiB;IACpB,iBAAiB,CAAqB;IACtC,SAAS,CAAc;IACvB,aAAa,CAAC;IACtB,4DAA4D;IACpD,YAAY,CAAc;IAC1B,cAAc,CAAC;IACf,uBAAuB,CAAC;IAEhC;QACE,IAAI,CAAC,SAAS,GAAG,IAAI,GAAG,EAAU,CAAC;QACnC,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;QAC3B,4DAA4D;QAC5D,IAAI,CAAC,YAAY,GAAG,IAAI,WAAW,EAAE,CAAC;QACtC,IAAI,CAAC,cAAc,GAAG,GAAG,CAAC;QAC1B,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC;IACzD,CAAC;IAED,wCAAwC;IACxC,0BAA0B;IACnB,gBAAgB,CAAC,MAAc;QACpC,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC;QAC7B,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC,CAAC;QACnE,IAAI,IAAI,CAAC,uBAAuB,GAAG,CAAC;YAClC,IAAI,CAAC,uBAAuB,GAAG,CAAC,CAAC;QACnC,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC3B,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;YAC5C,IAAI,CAAC,iBAAiB,GAAG,SAAS,CAAC;QACrC,CAAC;QACD,IAAI,IAAI,CAAC,SAAS;YAChB,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;QAEzB,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;IAC7B,CAAC;IAED,iCAAiC;IACjC,IAAW,aAAa;QACtB,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IACD,+DAA+D;IAC/D,IAAW,YAAY;QACrB,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,oEAAoE;IACpE,4DAA4D;IAC5D,IAAW,aAAa;QACtB,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED,iDAAiD;IAC1C,4BAA4B,CAAC,OAAe;QACjD,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;QACnC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;QACpC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC;IACxC,CAAC;IAED,0CAA0C;IACnC,mBAAmB,CAAC,OAAe;QACxC,qBAAqB;QACrB,IAAI,CAAC,KAAK,IAAI,CAAC,cAAc,EAAE,CAAC;YAC9B,OAAO;QACT,CAAC;QAED,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;QAC7C,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAE,6CAA6C;YAC3E,IAAI,CAAC,iBAAiB,GAAG,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,qBAAqB,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;QAC3G,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC5B,CAAC;IACH,CAAC;IAED,oDAAoD;IAC7C,oBAAoB,CAAC,QAAkB;QAC5C,qBAAqB;QACrB,IAAI,CAAC,KAAK,IAAI,CAAC,cAAc,EAAE,CAAC;YAC9B,OAAO;QACT,CAAC;QAED,QAAQ,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;QAClE,uBAAuB;QACvB,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAE,6CAA6C;YAC3E,IAAI,CAAC,iBAAiB,GAAG,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,qBAAqB,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;QAC3G,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC5B,CAAC;IACH,CAAC;IAED,oGAAoG;IAC7F,qBAAqB;QAC1B,0BAA0B;QAC1B,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YACxB,uBAAuB;YACvB,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBAC3B,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;gBAC5C,IAAI,CAAC,iBAAiB,GAAG,SAAS,CAAC;YACrC,CAAC;YACD,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;YAC3B,uBAAuB;YACvB,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;gBAC/B,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;gBACnC,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;gBAC1D,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;gBACvB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC;YACxC,CAAC;YACD,OAAO;QACT,CAAC;QAED,uBAAuB;QACvB,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC3B,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;YAC5C,IAAI,CAAC,iBAAiB,GAAG,SAAS,CAAC;QACrC,CAAC;QACD,uBAAuB;QACvB,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;QAC3B,yHAAyH;QACzH,uBAAuB;QACvB,IAAI,CAAC,iBAAiB,GAAG,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,qBAAqB,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,uBAAuB,CAAC,CAAC;IACpH,CAAC;IAED,kFAAkF;IAC3E,kBAAkB,CAAC,QAAqB,EAAE,aAAuB;QACtE,0BAA0B;QAC1B,IAAI,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,aAAa,CAAC,IAAI,CAAC,CAAC,KAAa,EAAW,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;YACjH,OAAO,IAAI,CAAC;QACd,OAAO,KAAK,CAAC;IACf,CAAC;CACF;AA/HD,8CA+HC","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 Utilities\n */\n\nimport { BeUiEvent } from \"@itwin/core-bentley\";\n\n/** UiSync Event arguments. Contains a set of lower case event Ids.\n * @public\n * @deprecated in 4.2.0 - might be removed in next major version. Please use [[UiSyncEventArgs]] in @itwin/appui-react\n */\nexport interface UiSyncEventArgs {\n eventIds: Set<string>;\n}\n\n/** UiSync Event class.\n * @public\n * @deprecated in 4.2.0 - might be removed in next major version. Use [[UiSyncEvent]] from @itwin/appui-react.\n */\n// eslint-disable-next-line @typescript-eslint/no-deprecated\nexport class UiSyncEvent extends BeUiEvent<UiSyncEventArgs> { }\n\n/** This class is used to send eventIds to interested UI components so the component can determine if it needs\n * to refresh its display by calling setState on itself.\n * @public\n * @deprecated in 4.2.0 - might be removed in next major version. Use [[SyncUiEventDispatcher]] from @itwin/appui-react.\n */\nexport class UiEventDispatcher {\n private _syncEventTimerId: number | undefined;\n private _eventIds: Set<string>;\n private _eventIdAdded;\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n private _uiSyncEvent: UiSyncEvent;\n private _timeoutPeriod;\n private _secondaryTimeoutPeriod;\n\n constructor() {\n this._eventIds = new Set<string>();\n this._eventIdAdded = false;\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n this._uiSyncEvent = new UiSyncEvent();\n this._timeoutPeriod = 100;\n this._secondaryTimeoutPeriod = this._timeoutPeriod / 2;\n }\n\n /** @internal - used for testing only */\n /* istanbul ignore next */\n public setTimeoutPeriod(period: number): void {\n this._timeoutPeriod = period;\n this._secondaryTimeoutPeriod = Math.floor(this._timeoutPeriod / 2);\n if (this._secondaryTimeoutPeriod < 1)\n this._secondaryTimeoutPeriod = 1;\n if (this._syncEventTimerId) {\n window.clearTimeout(this._syncEventTimerId);\n this._syncEventTimerId = undefined;\n }\n if (this._eventIds)\n this._eventIds.clear();\n\n this._eventIdAdded = false;\n }\n\n /** The current timeout period */\n public get timeoutPeriod(): number {\n return this._timeoutPeriod;\n }\n /** Return set of event ids that will be sent to listeners/. */\n public get syncEventIds(): Set<string> {\n return this._eventIds;\n }\n\n /** Return UiSyncEvent so callers can register an event callback. */\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n public get onSyncUiEvent(): UiSyncEvent {\n return this._uiSyncEvent;\n }\n\n /** Immediately trigger sync event processing. */\n public dispatchImmediateSyncUiEvent(eventId: string): void {\n const eventIds = new Set<string>();\n eventIds.add(eventId.toLowerCase());\n this.onSyncUiEvent.emit({ eventIds });\n }\n\n /** Save eventId in Set for processing. */\n public dispatchSyncUiEvent(eventId: string): void {\n // istanbul ignore if\n if (0 === this._timeoutPeriod) {\n return;\n }\n\n this.syncEventIds.add(eventId.toLowerCase());\n if (!this._syncEventTimerId) { // if there is not a timer active, create one\n this._syncEventTimerId = window.setTimeout(() => { this.checkForAdditionalIds(); }, this._timeoutPeriod);\n } else {\n this._eventIdAdded = true;\n }\n }\n\n /** Save multiple eventIds in Set for processing. */\n public dispatchSyncUiEvents(eventIds: string[]): void {\n // istanbul ignore if\n if (0 === this._timeoutPeriod) {\n return;\n }\n\n eventIds.forEach((id) => this.syncEventIds.add(id.toLowerCase()));\n // istanbul ignore else\n if (!this._syncEventTimerId) { // if there is not a timer active, create one\n this._syncEventTimerId = window.setTimeout(() => { this.checkForAdditionalIds(); }, this._timeoutPeriod);\n } else {\n this._eventIdAdded = true;\n }\n }\n\n /** Trigger registered event processing when timer has expired and no addition eventId are added. */\n public checkForAdditionalIds() {\n /* istanbul ignore else */\n if (!this._eventIdAdded) {\n // istanbul ignore else\n if (this._syncEventTimerId) {\n window.clearTimeout(this._syncEventTimerId);\n this._syncEventTimerId = undefined;\n }\n this._eventIdAdded = false;\n // istanbul ignore else\n if (this.syncEventIds.size > 0) {\n const eventIds = new Set<string>();\n this.syncEventIds.forEach((value) => eventIds.add(value));\n this._eventIds.clear();\n this.onSyncUiEvent.emit({ eventIds });\n }\n return;\n }\n\n // istanbul ignore next\n if (this._syncEventTimerId) {\n window.clearTimeout(this._syncEventTimerId);\n this._syncEventTimerId = undefined;\n }\n // istanbul ignore next\n this._eventIdAdded = false;\n // if events have been added before the initial timer expired wait half that time to see if events are still being added.\n // istanbul ignore next\n this._syncEventTimerId = window.setTimeout(() => { this.checkForAdditionalIds(); }, this._secondaryTimeoutPeriod);\n }\n\n /** Checks to see if an eventId of interest is contained in the set of eventIds */\n public hasEventOfInterest(eventIds: Set<string>, idsOfInterest: string[]) {\n /* istanbul ignore else */\n if ((idsOfInterest.length > 0) && idsOfInterest.some((value: string): boolean => eventIds.has(value.toLowerCase())))\n return true;\n return false;\n }\n}\n"]}

@@ -5,3 +5,3 @@ /** @packageDocumentation

/** Enumeration for Function Keys
* @public @deprecated in 4.3 - will not be removed until after 2026-06-13. Please use the `ts-key-enum` npm package or string literals.
* @public @deprecated in 4.3 - might be removed in next major version. Please use the `ts-key-enum` npm package or string literals.
*/

@@ -23,3 +23,3 @@ export declare enum FunctionKey {

/** Enumeration for Special Keys
* @public @deprecated in 4.3 - will not be removed until after 2026-06-13. Please use the `ts-key-enum` npm package or string literals.
* @public @deprecated in 4.3 - might be removed in next major version. Please use the `ts-key-enum` npm package or string literals.
*/

@@ -51,5 +51,5 @@ export declare enum SpecialKey {

/** Determines if a KeyboardEvent.key is an Arrow key
* @public @deprecated in 4.3 - will not be removed until after 2026-06-13. Please use a custom implementation moving forward.
* @public @deprecated in 4.3 - might be removed in next major version. Please use a custom implementation moving forward.
*/
export declare function isArrowKey(key: string): boolean;
//# sourceMappingURL=KeyboardKey.d.ts.map

@@ -9,3 +9,3 @@ /*---------------------------------------------------------------------------------------------

/** Enumeration for Function Keys
* @public @deprecated in 4.3 - will not be removed until after 2026-06-13. Please use the `ts-key-enum` npm package or string literals.
* @public @deprecated in 4.3 - might be removed in next major version. Please use the `ts-key-enum` npm package or string literals.
*/

@@ -28,3 +28,3 @@ export var FunctionKey;

/** Enumeration for Special Keys
* @public @deprecated in 4.3 - will not be removed until after 2026-06-13. Please use the `ts-key-enum` npm package or string literals.
* @public @deprecated in 4.3 - might be removed in next major version. Please use the `ts-key-enum` npm package or string literals.
*/

@@ -58,3 +58,3 @@ export var SpecialKey;

/** Determines if a KeyboardEvent.key is an Arrow key
* @public @deprecated in 4.3 - will not be removed until after 2026-06-13. Please use a custom implementation moving forward.
* @public @deprecated in 4.3 - might be removed in next major version. Please use a custom implementation moving forward.
*/

@@ -61,0 +61,0 @@ export function isArrowKey(key) {

@@ -1,1 +0,1 @@

{"version":3,"file":"KeyboardKey.js","sourceRoot":"","sources":["../../../../src/appui-abstract/common/KeyboardKey.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH;;GAEG;AACH,MAAM,CAAN,IAAY,WAaX;AAbD,WAAY,WAAW;IACrB,wBAAS,CAAA;IACT,wBAAS,CAAA;IACT,wBAAS,CAAA;IACT,wBAAS,CAAA;IACT,wBAAS,CAAA;IACT,wBAAS,CAAA;IACT,wBAAS,CAAA;IACT,wBAAS,CAAA;IACT,wBAAS,CAAA;IACT,0BAAW,CAAA;IACX,0BAAW,CAAA;IACX,0BAAW,CAAA;AACb,CAAC,EAbW,WAAW,KAAX,WAAW,QAatB;AAED;;GAEG;AACH,MAAM,CAAN,IAAY,UAwBX;AAxBD,WAAY,UAAU;IACpB,2BAAa,CAAA;IACb,yBAAW,CAAA;IACX,+BAAiB,CAAA;IACjB,mCAAqB,CAAA;IACrB,+BAAiB,CAAA;IACjB,+BAAiB,CAAA;IACjB,+BAAiB,CAAA;IACjB,yBAAW,CAAA;IACX,qCAAuB,CAAA;IACvB,uCAAyB,CAAA;IACzB,iCAAmB,CAAA;IACnB,qCAAuB,CAAA;IACvB,6BAAe,CAAA;IACf,uEAAuE;IACvE,8BAAgB,CAAA;IAChB,yBAAW,CAAA;IACX,qCAAuB,CAAA;IACvB,6BAAe,CAAA;IACf,+BAAiB,CAAA;IACjB,mCAAqB,CAAA;IACrB,mCAAqB,CAAA;IACrB,yBAAW,CAAA;IACX,iCAAmB,CAAA;AACrB,CAAC,EAxBW,UAAU,KAAV,UAAU,QAwBrB;AAED;;GAEG;AACH,MAAM,UAAU,UAAU,CAAC,GAAW;IACpC,4DAA4D;IAC5D,OAAO,CAAC,GAAG,KAAK,UAAU,CAAC,SAAS,IAAI,GAAG,KAAK,UAAU,CAAC,UAAU,IAAI,GAAG,KAAK,UAAU,CAAC,OAAO,IAAI,GAAG,KAAK,UAAU,CAAC,SAAS,CAAC,CAAC;AACvI,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Utilities\n */\n\n/** Enumeration for Function Keys\n * @public @deprecated in 4.3 - will not be removed until after 2026-06-13. Please use the `ts-key-enum` npm package or string literals.\n */\nexport enum FunctionKey {\n F1 = \"F1\",\n F2 = \"F2\",\n F3 = \"F3\",\n F4 = \"F4\",\n F5 = \"F5\",\n F6 = \"F6\",\n F7 = \"F7\",\n F8 = \"F8\",\n F9 = \"F9\",\n F10 = \"F10\",\n F11 = \"F11\",\n F12 = \"F12\",\n}\n\n/** Enumeration for Special Keys\n * @public @deprecated in 4.3 - will not be removed until after 2026-06-13. Please use the `ts-key-enum` npm package or string literals.\n */\nexport enum SpecialKey {\n Home = \"Home\",\n End = \"End\",\n PageUp = \"PageUp\",\n PageDown = \"PageDown\",\n Escape = \"Escape\",\n Delete = \"Delete\",\n Insert = \"Insert\",\n Tab = \"Tab\",\n ArrowLeft = \"ArrowLeft\",\n ArrowRight = \"ArrowRight\",\n ArrowUp = \"ArrowUp\",\n ArrowDown = \"ArrowDown\",\n Enter = \"Enter\",\n // eslint-disable-next-line @typescript-eslint/no-duplicate-enum-values\n Return = \"Enter\",\n Space = \" \",\n Backspace = \"Backspace\",\n Clear = \"Clear\",\n Divide = \"Divide\",\n Multiply = \"Multiply\",\n Subtract = \"Subtract\",\n Add = \"Add\",\n Decimal = \"Decimal\",\n}\n\n/** Determines if a KeyboardEvent.key is an Arrow key\n * @public @deprecated in 4.3 - will not be removed until after 2026-06-13. Please use a custom implementation moving forward.\n */\nexport function isArrowKey(key: string): boolean {\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n return (key === SpecialKey.ArrowLeft || key === SpecialKey.ArrowRight || key === SpecialKey.ArrowUp || key === SpecialKey.ArrowDown);\n}\n"]}
{"version":3,"file":"KeyboardKey.js","sourceRoot":"","sources":["../../../../src/appui-abstract/common/KeyboardKey.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH;;GAEG;AACH,MAAM,CAAN,IAAY,WAaX;AAbD,WAAY,WAAW;IACrB,wBAAS,CAAA;IACT,wBAAS,CAAA;IACT,wBAAS,CAAA;IACT,wBAAS,CAAA;IACT,wBAAS,CAAA;IACT,wBAAS,CAAA;IACT,wBAAS,CAAA;IACT,wBAAS,CAAA;IACT,wBAAS,CAAA;IACT,0BAAW,CAAA;IACX,0BAAW,CAAA;IACX,0BAAW,CAAA;AACb,CAAC,EAbW,WAAW,KAAX,WAAW,QAatB;AAED;;GAEG;AACH,MAAM,CAAN,IAAY,UAwBX;AAxBD,WAAY,UAAU;IACpB,2BAAa,CAAA;IACb,yBAAW,CAAA;IACX,+BAAiB,CAAA;IACjB,mCAAqB,CAAA;IACrB,+BAAiB,CAAA;IACjB,+BAAiB,CAAA;IACjB,+BAAiB,CAAA;IACjB,yBAAW,CAAA;IACX,qCAAuB,CAAA;IACvB,uCAAyB,CAAA;IACzB,iCAAmB,CAAA;IACnB,qCAAuB,CAAA;IACvB,6BAAe,CAAA;IACf,uEAAuE;IACvE,8BAAgB,CAAA;IAChB,yBAAW,CAAA;IACX,qCAAuB,CAAA;IACvB,6BAAe,CAAA;IACf,+BAAiB,CAAA;IACjB,mCAAqB,CAAA;IACrB,mCAAqB,CAAA;IACrB,yBAAW,CAAA;IACX,iCAAmB,CAAA;AACrB,CAAC,EAxBW,UAAU,KAAV,UAAU,QAwBrB;AAED;;GAEG;AACH,MAAM,UAAU,UAAU,CAAC,GAAW;IACpC,4DAA4D;IAC5D,OAAO,CAAC,GAAG,KAAK,UAAU,CAAC,SAAS,IAAI,GAAG,KAAK,UAAU,CAAC,UAAU,IAAI,GAAG,KAAK,UAAU,CAAC,OAAO,IAAI,GAAG,KAAK,UAAU,CAAC,SAAS,CAAC,CAAC;AACvI,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Utilities\n */\n\n/** Enumeration for Function Keys\n * @public @deprecated in 4.3 - might be removed in next major version. Please use the `ts-key-enum` npm package or string literals.\n */\nexport enum FunctionKey {\n F1 = \"F1\",\n F2 = \"F2\",\n F3 = \"F3\",\n F4 = \"F4\",\n F5 = \"F5\",\n F6 = \"F6\",\n F7 = \"F7\",\n F8 = \"F8\",\n F9 = \"F9\",\n F10 = \"F10\",\n F11 = \"F11\",\n F12 = \"F12\",\n}\n\n/** Enumeration for Special Keys\n * @public @deprecated in 4.3 - might be removed in next major version. Please use the `ts-key-enum` npm package or string literals.\n */\nexport enum SpecialKey {\n Home = \"Home\",\n End = \"End\",\n PageUp = \"PageUp\",\n PageDown = \"PageDown\",\n Escape = \"Escape\",\n Delete = \"Delete\",\n Insert = \"Insert\",\n Tab = \"Tab\",\n ArrowLeft = \"ArrowLeft\",\n ArrowRight = \"ArrowRight\",\n ArrowUp = \"ArrowUp\",\n ArrowDown = \"ArrowDown\",\n Enter = \"Enter\",\n // eslint-disable-next-line @typescript-eslint/no-duplicate-enum-values\n Return = \"Enter\",\n Space = \" \",\n Backspace = \"Backspace\",\n Clear = \"Clear\",\n Divide = \"Divide\",\n Multiply = \"Multiply\",\n Subtract = \"Subtract\",\n Add = \"Add\",\n Decimal = \"Decimal\",\n}\n\n/** Determines if a KeyboardEvent.key is an Arrow key\n * @public @deprecated in 4.3 - might be removed in next major version. Please use a custom implementation moving forward.\n */\nexport function isArrowKey(key: string): boolean {\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n return (key === SpecialKey.ArrowLeft || key === SpecialKey.ArrowRight || key === SpecialKey.ArrowUp || key === SpecialKey.ArrowDown);\n}\n"]}

@@ -6,3 +6,3 @@ /** @packageDocumentation

* @public
* @deprecated in 4.10.0 - will not be removed until after 2026-06-13. Use `LayoutSplitPropsBase` from `@itwin/appui-react`.
* @deprecated in 4.10.0 - might be removed in next major version. Use `LayoutSplitPropsBase` from `@itwin/appui-react`.
*/

@@ -19,3 +19,3 @@ export interface LayoutSplitPropsBase {

* @public
* @deprecated in 4.10.0 - will not be removed until after 2026-06-13. Use `LayoutFragmentProps` from `@itwin/appui-react`.
* @deprecated in 4.10.0 - might be removed in next major version. Use `LayoutFragmentProps` from `@itwin/appui-react`.
*/

@@ -32,3 +32,3 @@ export interface LayoutFragmentProps {

* @public
* @deprecated in 4.10.0 - will not be removed until after 2026-06-13. Use `LayoutVerticalSplitProps` from `@itwin/appui-react`.
* @deprecated in 4.10.0 - might be removed in next major version. Use `LayoutVerticalSplitProps` from `@itwin/appui-react`.
*/

@@ -49,3 +49,3 @@ export interface LayoutVerticalSplitProps extends LayoutSplitPropsBase {

* @public
* @deprecated in 4.10.0 - will not be removed until after 2026-06-13. Use `LayoutHorizontalSplitProps` from `@itwin/appui-react`.
* @deprecated in 4.10.0 - might be removed in next major version. Use `LayoutHorizontalSplitProps` from `@itwin/appui-react`.
*/

@@ -64,3 +64,3 @@ export interface LayoutHorizontalSplitProps extends LayoutSplitPropsBase {

* @public
* @deprecated in 4.10.0 - will not be removed until after 2026-06-13. Use `ContentLayoutProps` from `@itwin/appui-react`.
* @deprecated in 4.10.0 - might be removed in next major version. Use `ContentLayoutProps` from `@itwin/appui-react`.
*/

@@ -67,0 +67,0 @@ export interface ContentLayoutProps extends LayoutFragmentProps {

@@ -1,1 +0,1 @@

{"version":3,"file":"ContentLayoutProps.js","sourceRoot":"","sources":["../../../../src/appui-abstract/content/ContentLayoutProps.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG","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 ContentView\n */\n\n/* eslint-disable @typescript-eslint/no-deprecated */\n\n/** Base interface for layout split properties\n * @public\n * @deprecated in 4.10.0 - will not be removed until after 2026-06-13. Use `LayoutSplitPropsBase` from `@itwin/appui-react`.\n */\nexport interface LayoutSplitPropsBase {\n /** The id used to save the current state of the splitter */\n id: string;\n /** The percentage of this layout that should be occupied by the top/left fragment by default */\n percentage: number;\n /** Used to lock splitter into fixed position. Defaults to false. */\n lock?: boolean;\n}\n\n/** Properties for a layout fragment\n * @public\n * @deprecated in 4.10.0 - will not be removed until after 2026-06-13. Use `LayoutFragmentProps` from `@itwin/appui-react`.\n */\nexport interface LayoutFragmentProps {\n /** Vertical split layout properties */\n verticalSplit?: LayoutVerticalSplitProps;\n /** Horizontal split layout properties */\n horizontalSplit?: LayoutHorizontalSplitProps;\n}\n\n/** Properties for a vertical layout split.\n * When a member is a [[LayoutFragmentProps]], it creates a nested split pane.\n * When a number, it represents an index into a [[ContentGroup]].\n * @public\n * @deprecated in 4.10.0 - will not be removed until after 2026-06-13. Use `LayoutVerticalSplitProps` from `@itwin/appui-react`.\n */\nexport interface LayoutVerticalSplitProps extends LayoutSplitPropsBase {\n /** Left layout fragment properties. */\n left: LayoutFragmentProps | number;\n /** Right layout fragment properties. */\n right: LayoutFragmentProps | number;\n\n /** Minimum size of the left fragment. */\n minSizeLeft?: number;\n /** Minimum size of the right fragment. */\n minSizeRight?: number;\n}\n\n/** Properties for a horizontal layout split\n * When a member is a [[LayoutFragmentProps]], it creates a nested split pane.\n * When a number, it represents an index into a [[ContentGroup]].\n * @public\n * @deprecated in 4.10.0 - will not be removed until after 2026-06-13. Use `LayoutHorizontalSplitProps` from `@itwin/appui-react`.\n */\nexport interface LayoutHorizontalSplitProps extends LayoutSplitPropsBase {\n /** Top layout fragment properties. */\n top: LayoutFragmentProps | number;\n /** Bottom layout fragment properties. */\n bottom: LayoutFragmentProps | number;\n\n /** Minimum size of the top fragment. */\n minSizeTop?: number;\n /** Minimum size of the bottom fragment. */\n minSizeBottom?: number;\n}\n\n/** Properties for a [[ContentLayoutDef]]\n * @public\n * @deprecated in 4.10.0 - will not be removed until after 2026-06-13. Use `ContentLayoutProps` from `@itwin/appui-react`.\n */\nexport interface ContentLayoutProps extends LayoutFragmentProps {\n /** ID for this Content Layout */\n id: string;\n /** Description of the layout*/\n description?: string;\n}\n"]}
{"version":3,"file":"ContentLayoutProps.js","sourceRoot":"","sources":["../../../../src/appui-abstract/content/ContentLayoutProps.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG","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 ContentView\n */\n\n/* eslint-disable @typescript-eslint/no-deprecated */\n\n/** Base interface for layout split properties\n * @public\n * @deprecated in 4.10.0 - might be removed in next major version. Use `LayoutSplitPropsBase` from `@itwin/appui-react`.\n */\nexport interface LayoutSplitPropsBase {\n /** The id used to save the current state of the splitter */\n id: string;\n /** The percentage of this layout that should be occupied by the top/left fragment by default */\n percentage: number;\n /** Used to lock splitter into fixed position. Defaults to false. */\n lock?: boolean;\n}\n\n/** Properties for a layout fragment\n * @public\n * @deprecated in 4.10.0 - might be removed in next major version. Use `LayoutFragmentProps` from `@itwin/appui-react`.\n */\nexport interface LayoutFragmentProps {\n /** Vertical split layout properties */\n verticalSplit?: LayoutVerticalSplitProps;\n /** Horizontal split layout properties */\n horizontalSplit?: LayoutHorizontalSplitProps;\n}\n\n/** Properties for a vertical layout split.\n * When a member is a [[LayoutFragmentProps]], it creates a nested split pane.\n * When a number, it represents an index into a [[ContentGroup]].\n * @public\n * @deprecated in 4.10.0 - might be removed in next major version. Use `LayoutVerticalSplitProps` from `@itwin/appui-react`.\n */\nexport interface LayoutVerticalSplitProps extends LayoutSplitPropsBase {\n /** Left layout fragment properties. */\n left: LayoutFragmentProps | number;\n /** Right layout fragment properties. */\n right: LayoutFragmentProps | number;\n\n /** Minimum size of the left fragment. */\n minSizeLeft?: number;\n /** Minimum size of the right fragment. */\n minSizeRight?: number;\n}\n\n/** Properties for a horizontal layout split\n * When a member is a [[LayoutFragmentProps]], it creates a nested split pane.\n * When a number, it represents an index into a [[ContentGroup]].\n * @public\n * @deprecated in 4.10.0 - might be removed in next major version. Use `LayoutHorizontalSplitProps` from `@itwin/appui-react`.\n */\nexport interface LayoutHorizontalSplitProps extends LayoutSplitPropsBase {\n /** Top layout fragment properties. */\n top: LayoutFragmentProps | number;\n /** Bottom layout fragment properties. */\n bottom: LayoutFragmentProps | number;\n\n /** Minimum size of the top fragment. */\n minSizeTop?: number;\n /** Minimum size of the bottom fragment. */\n minSizeBottom?: number;\n}\n\n/** Properties for a [[ContentLayoutDef]]\n * @public\n * @deprecated in 4.10.0 - might be removed in next major version. Use `ContentLayoutProps` from `@itwin/appui-react`.\n */\nexport interface ContentLayoutProps extends LayoutFragmentProps {\n /** ID for this Content Layout */\n id: string;\n /** Description of the layout*/\n description?: string;\n}\n"]}

@@ -8,3 +8,3 @@ /** @packageDocumentation

* @public
* @deprecated in 4.10.0 - will not be removed until after 2026-06-13. Use `StandardContentLayouts` from `@itwin/appui-react`.
* @deprecated in 4.10.0 - might be removed in next major version. Use `StandardContentLayouts` from `@itwin/appui-react`.
*/

@@ -11,0 +11,0 @@ export declare class StandardContentLayouts {

@@ -12,3 +12,3 @@ /*---------------------------------------------------------------------------------------------

* @public
* @deprecated in 4.10.0 - will not be removed until after 2026-06-13. Use `StandardContentLayouts` from `@itwin/appui-react`.
* @deprecated in 4.10.0 - might be removed in next major version. Use `StandardContentLayouts` from `@itwin/appui-react`.
*/

@@ -15,0 +15,0 @@ export class StandardContentLayouts {

@@ -1,1 +0,1 @@

{"version":3,"file":"StandardContentLayouts.js","sourceRoot":"","sources":["../../../../src/appui-abstract/content/StandardContentLayouts.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAIH,qDAAqD;AAErD;;;;GAIG;AACH,MAAM,OAAO,sBAAsB;IAC1B,MAAM,CAAU,UAAU,GAAuB;QACtD,EAAE,EAAE,gBAAgB;QACpB,WAAW,EAAE,qBAAqB;KACnC,CAAC;IAEK,MAAM,CAAU,aAAa,GAAuB;QACzD,EAAE,EAAE,mBAAmB;QACvB,WAAW,EAAE,+DAA+D;QAC5E,aAAa,EAAE;YACb,EAAE,EAAE,+BAA+B;YACnC,UAAU,EAAE,IAAI;YAChB,IAAI,EAAE,KAAK;YACX,WAAW,EAAE,GAAG;YAChB,YAAY,EAAE,GAAG;YACjB,IAAI,EAAE,EAAE,eAAe,EAAE,EAAE,EAAE,EAAE,iCAAiC,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE,EAAE;YACzJ,KAAK,EAAE,EAAE,eAAe,EAAE,EAAE,EAAE,EAAE,kCAAkC,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE,EAAE;SAC5J;KACF,CAAC;IAEK,MAAM,CAAU,gBAAgB,GAAuB;QAC5D,EAAE,EAAE,sBAAsB;QAC1B,WAAW,EAAE,yBAAyB;QACtC,aAAa,EAAE;YACb,EAAE,EAAE,2BAA2B;YAC/B,UAAU,EAAE,IAAI;YAChB,IAAI,EAAE,CAAC;YACP,KAAK,EAAE,CAAC;SACT;KACF,CAAC;IACK,MAAM,CAAU,kBAAkB,GAAuB;QAC9D,EAAE,EAAE,wBAAwB;QAC5B,WAAW,EAAE,0CAA0C;QACvD,eAAe,EAAE;YACf,EAAE,EAAE,6BAA6B;YACjC,UAAU,EAAE,IAAI;YAChB,IAAI,EAAE,KAAK;YACX,GAAG,EAAE,CAAC;YACN,MAAM,EAAE,CAAC;SACV;KACF,CAAC;IAEK,MAAM,CAAU,mBAAmB,GAAuB;QAC/D,EAAE,EAAE,yBAAyB;QAC7B,WAAW,EAAE,wFAAwF;QACrG,aAAa,EAAE;YACb,EAAE,EAAE,yBAAyB;YAC7B,UAAU,EAAE,IAAI;YAChB,IAAI,EAAE,EAAE,eAAe,EAAE,EAAE,EAAE,EAAE,8BAA8B,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE,EAAE;YACtJ,KAAK,EAAE,CAAC;SACT;KACF,CAAC;IAEK,MAAM,CAAU,oBAAoB,GAAuB;QAChE,EAAE,EAAE,0BAA0B;QAC9B,WAAW,EAAE,wFAAwF;QACrG,aAAa,EAAE;YACb,EAAE,EAAE,0BAA0B;YAC9B,UAAU,EAAE,IAAI;YAChB,IAAI,EAAE,CAAC;YACP,KAAK,EAAE,EAAE,eAAe,EAAE,EAAE,EAAE,EAAE,+BAA+B,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE,EAAE;SACzJ;KACF,CAAC;IAEK,MAAM,CAAU,qBAAqB,GAAuB;QACjE,EAAE,EAAE,2BAA2B;QAC/B,WAAW,EAAE,4DAA4D;QACzE,eAAe,EAAE;YACf,EAAE,EAAE,qCAAqC;YACzC,UAAU,EAAE,IAAI;YAChB,IAAI,EAAE,KAAK;YACX,GAAG,EAAE,CAAC;YACN,MAAM,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE,EAAE,8BAA8B,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,EAAE;SACvJ;KACF,CAAC;IAEK,MAAM,CAAU,kBAAkB,GAAuB;QAC9D,EAAE,EAAE,wBAAwB;QAC5B,WAAW,EAAE,4DAA4D;QACzE,eAAe,EAAE;YACf,EAAE,EAAE,6BAA6B;YACjC,UAAU,EAAE,IAAI;YAChB,IAAI,EAAE,KAAK;YACX,GAAG,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE,EAAE,2BAA2B,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,EAAE;YAChJ,MAAM,EAAE,CAAC;SACV;KACF,CAAC;IAEF,yDAAyD;IAClD,MAAM,CAAU,gBAAgB,GAAyB;QAC9D,sBAAsB,CAAC,UAAU;QACjC,sBAAsB,CAAC,aAAa;QACpC,sBAAsB,CAAC,gBAAgB;QACvC,sBAAsB,CAAC,kBAAkB;QACzC,sBAAsB,CAAC,mBAAmB;QAC1C,sBAAsB,CAAC,oBAAoB;QAC3C,sBAAsB,CAAC,qBAAqB;QAC5C,sBAAsB,CAAC,kBAAkB;KAC1C,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module ContentView\n */\n\nimport { ContentLayoutProps } from \"./ContentLayoutProps\";\n\n/* eslint-disable @typescript-eslint/no-deprecated */\n\n/**\n * Class that define Standard Content Layouts that can be used to specify how the content is arranged in a frontstage.\n * @public\n * @deprecated in 4.10.0 - will not be removed until after 2026-06-13. Use `StandardContentLayouts` from `@itwin/appui-react`.\n */\nexport class StandardContentLayouts {\n public static readonly singleView: ContentLayoutProps = {\n id: \"uia:singleView\",\n description: \"Single Content View\",\n };\n\n public static readonly fourQuadrants: ContentLayoutProps = {\n id: \"uia:fourQuadrants\",\n description: \"Four Views, two stacked on the left, two stacked on the right\",\n verticalSplit: {\n id: \"uia:fourQuadrantVerticalSplit\",\n percentage: 0.50,\n lock: false,\n minSizeLeft: 100,\n minSizeRight: 100,\n left: { horizontalSplit: { id: \"uia:fourQuadrantsLeftHorizontal\", percentage: 0.50, top: 0, bottom: 1, lock: false, minSizeTop: 50, minSizeBottom: 50 } },\n right: { horizontalSplit: { id: \"uia:fourQuadrantsRightHorizontal\", percentage: 0.50, top: 2, bottom: 3, lock: false, minSizeTop: 50, minSizeBottom: 50 } },\n },\n };\n\n public static readonly twoVerticalSplit: ContentLayoutProps = {\n id: \"uia:twoVerticalSplit\",\n description: \"Two Views, side by side\",\n verticalSplit: {\n id: \"uia:twoViewsVerticalSplit\",\n percentage: 0.50,\n left: 0,\n right: 1,\n },\n };\n public static readonly twoHorizontalSplit: ContentLayoutProps = {\n id: \"uia:twoHorizontalSplit\",\n description: \"Two views, stack one on top of the other\",\n horizontalSplit: {\n id: \"uia:twoViewsHorizontalSplit\",\n percentage: 0.50,\n lock: false,\n top: 0,\n bottom: 1,\n },\n };\n\n public static readonly threeViewsTwoOnLeft: ContentLayoutProps = {\n id: \"uia:threeViewsTwoOnLeft\",\n description: \"Three views, one on the right with the two on the left stacked one of top of the other\",\n verticalSplit: {\n id: \"uia:twoViewsOnLeftSplit\",\n percentage: 0.50,\n left: { horizontalSplit: { id: \"uia:twoViewsOnLeftHorizontal\", percentage: 0.50, top: 0, bottom: 1, lock: false, minSizeTop: 50, minSizeBottom: 50 } },\n right: 2,\n },\n };\n\n public static readonly threeViewsTwoOnRight: ContentLayoutProps = {\n id: \"uia:threeViewsTwoOnRight\",\n description: \"Three views, one on the left with the two on the right stacked one of top of the other\",\n verticalSplit: {\n id: \"uia:twoViewsOnRightSplit\",\n percentage: 0.50,\n left: 0,\n right: { horizontalSplit: { id: \"uia:twoViewsOnRightHorizontal\", percentage: 0.50, top: 1, bottom: 2, lock: false, minSizeTop: 50, minSizeBottom: 50 } },\n },\n };\n\n public static readonly threeViewsTwoOnBottom: ContentLayoutProps = {\n id: \"uia:threeViewsTwoOnBottom\",\n description: \"Three Views, one on top and two side by side on the bottom\",\n horizontalSplit: {\n id: \"uia:threeViewsTwoOnBottomHorizontal\",\n percentage: 0.50,\n lock: false,\n top: 0,\n bottom: { verticalSplit: { id: \"uia:twoViewsOnBottomVertical\", percentage: 0.50, left: 1, right: 2, lock: false, minSizeLeft: 50, minSizeRight: 50 } },\n },\n };\n\n public static readonly threeViewsTwoOnTop: ContentLayoutProps = {\n id: \"uia:threeViewsTwoOnTop\",\n description: \"Three Views, two side by side on top and one on the bottom\",\n horizontalSplit: {\n id: \"uia:twoViewsOnTopHorizontal\",\n percentage: 0.50,\n lock: false,\n top: { verticalSplit: { id: \"uia:twoViewsOnTopVertical\", percentage: 0.50, left: 0, right: 1, lock: false, minSizeLeft: 50, minSizeRight: 50 } },\n bottom: 2,\n },\n };\n\n // provides and iterable list of standard content layouts\n public static readonly availableLayouts: ContentLayoutProps[] = [\n StandardContentLayouts.singleView,\n StandardContentLayouts.fourQuadrants,\n StandardContentLayouts.twoVerticalSplit,\n StandardContentLayouts.twoHorizontalSplit,\n StandardContentLayouts.threeViewsTwoOnLeft,\n StandardContentLayouts.threeViewsTwoOnRight,\n StandardContentLayouts.threeViewsTwoOnBottom,\n StandardContentLayouts.threeViewsTwoOnTop,\n ];\n\n}\n"]}
{"version":3,"file":"StandardContentLayouts.js","sourceRoot":"","sources":["../../../../src/appui-abstract/content/StandardContentLayouts.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 ContentView\n */\n\nimport { ContentLayoutProps } from \"./ContentLayoutProps\";\n\n/* eslint-disable @typescript-eslint/no-deprecated */\n\n/**\n * Class that define Standard Content Layouts that can be used to specify how the content is arranged in a frontstage.\n * @public\n * @deprecated in 4.10.0 - might be removed in next major version. Use `StandardContentLayouts` from `@itwin/appui-react`.\n */\nexport class StandardContentLayouts {\n public static readonly singleView: ContentLayoutProps = {\n id: \"uia:singleView\",\n description: \"Single Content View\",\n };\n\n public static readonly fourQuadrants: ContentLayoutProps = {\n id: \"uia:fourQuadrants\",\n description: \"Four Views, two stacked on the left, two stacked on the right\",\n verticalSplit: {\n id: \"uia:fourQuadrantVerticalSplit\",\n percentage: 0.50,\n lock: false,\n minSizeLeft: 100,\n minSizeRight: 100,\n left: { horizontalSplit: { id: \"uia:fourQuadrantsLeftHorizontal\", percentage: 0.50, top: 0, bottom: 1, lock: false, minSizeTop: 50, minSizeBottom: 50 } },\n right: { horizontalSplit: { id: \"uia:fourQuadrantsRightHorizontal\", percentage: 0.50, top: 2, bottom: 3, lock: false, minSizeTop: 50, minSizeBottom: 50 } },\n },\n };\n\n public static readonly twoVerticalSplit: ContentLayoutProps = {\n id: \"uia:twoVerticalSplit\",\n description: \"Two Views, side by side\",\n verticalSplit: {\n id: \"uia:twoViewsVerticalSplit\",\n percentage: 0.50,\n left: 0,\n right: 1,\n },\n };\n public static readonly twoHorizontalSplit: ContentLayoutProps = {\n id: \"uia:twoHorizontalSplit\",\n description: \"Two views, stack one on top of the other\",\n horizontalSplit: {\n id: \"uia:twoViewsHorizontalSplit\",\n percentage: 0.50,\n lock: false,\n top: 0,\n bottom: 1,\n },\n };\n\n public static readonly threeViewsTwoOnLeft: ContentLayoutProps = {\n id: \"uia:threeViewsTwoOnLeft\",\n description: \"Three views, one on the right with the two on the left stacked one of top of the other\",\n verticalSplit: {\n id: \"uia:twoViewsOnLeftSplit\",\n percentage: 0.50,\n left: { horizontalSplit: { id: \"uia:twoViewsOnLeftHorizontal\", percentage: 0.50, top: 0, bottom: 1, lock: false, minSizeTop: 50, minSizeBottom: 50 } },\n right: 2,\n },\n };\n\n public static readonly threeViewsTwoOnRight: ContentLayoutProps = {\n id: \"uia:threeViewsTwoOnRight\",\n description: \"Three views, one on the left with the two on the right stacked one of top of the other\",\n verticalSplit: {\n id: \"uia:twoViewsOnRightSplit\",\n percentage: 0.50,\n left: 0,\n right: { horizontalSplit: { id: \"uia:twoViewsOnRightHorizontal\", percentage: 0.50, top: 1, bottom: 2, lock: false, minSizeTop: 50, minSizeBottom: 50 } },\n },\n };\n\n public static readonly threeViewsTwoOnBottom: ContentLayoutProps = {\n id: \"uia:threeViewsTwoOnBottom\",\n description: \"Three Views, one on top and two side by side on the bottom\",\n horizontalSplit: {\n id: \"uia:threeViewsTwoOnBottomHorizontal\",\n percentage: 0.50,\n lock: false,\n top: 0,\n bottom: { verticalSplit: { id: \"uia:twoViewsOnBottomVertical\", percentage: 0.50, left: 1, right: 2, lock: false, minSizeLeft: 50, minSizeRight: 50 } },\n },\n };\n\n public static readonly threeViewsTwoOnTop: ContentLayoutProps = {\n id: \"uia:threeViewsTwoOnTop\",\n description: \"Three Views, two side by side on top and one on the bottom\",\n horizontalSplit: {\n id: \"uia:twoViewsOnTopHorizontal\",\n percentage: 0.50,\n lock: false,\n top: { verticalSplit: { id: \"uia:twoViewsOnTopVertical\", percentage: 0.50, left: 0, right: 1, lock: false, minSizeLeft: 50, minSizeRight: 50 } },\n bottom: 2,\n },\n };\n\n // provides and iterable list of standard content layouts\n public static readonly availableLayouts: ContentLayoutProps[] = [\n StandardContentLayouts.singleView,\n StandardContentLayouts.fourQuadrants,\n StandardContentLayouts.twoVerticalSplit,\n StandardContentLayouts.twoHorizontalSplit,\n StandardContentLayouts.threeViewsTwoOnLeft,\n StandardContentLayouts.threeViewsTwoOnRight,\n StandardContentLayouts.threeViewsTwoOnBottom,\n StandardContentLayouts.threeViewsTwoOnTop,\n ];\n\n}\n"]}

@@ -73,3 +73,3 @@ /** @packageDocumentation

* @alpha
* @deprecated in 5.0 - will not be removed until after 2026-06-13. Use `kindOfQuantityName` instead.
* @deprecated in 5.0 - might be removed in next major version. Use `kindOfQuantityName` instead.
*/

@@ -76,0 +76,0 @@ quantityType?: string;

@@ -1,1 +0,1 @@

{"version":3,"file":"Description.js","sourceRoot":"","sources":["../../../../src/appui-abstract/properties/Description.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 Properties\n */\n\nimport {\n BasePropertyEditorParams, ColorEditorParams, ImageCheckBoxParams, PropertyEditorParams, PropertyEditorParamTypes, RangeEditorParams,\n SuppressLabelEditorParams,\n} from \"./EditorParams\";\nimport { StandardEditorNames } from \"./StandardEditorNames\";\nimport { StandardTypeNames } from \"./StandardTypeNames\";\n\n// cSpell:ignore Picklist\n\n/**\n * Information about an enumeration choice\n * @public\n */\nexport interface EnumerationChoice {\n label: string;\n value: string | number;\n}\n\n/**\n * Information about a set of enumeration choices\n * @public\n */\nexport interface EnumerationChoicesInfo {\n choices: Promise<EnumerationChoice[]> | EnumerationChoice[];\n isStrict?: boolean;\n maxDisplayedRows?: number;\n}\n\n/**\n * Property renderer identification and customization attributes\n * @public\n */\nexport interface PropertyRendererInfo {\n name: string;\n}\n\n/**\n * Information about a Property Editor\n * @public\n */\nexport interface PropertyEditorInfo {\n /** Editor name used in addition to the typename to find the registered property editor */\n name?: string;\n /** Editor params provided to the property editor */\n params?: PropertyEditorParams[];\n}\n\n/**\n * Information about a Property Converter\n * @public\n */\nexport interface PropertyConverterInfo {\n /** Converter name used in addition to the typename to find the registered property converter */\n name?: string;\n /** map of options for type converter */\n options?: { [key: string]: any };\n}\n\n/**\n * [[PropertyDescription]] contains metadata about a Property\n * @public\n */\nexport interface PropertyDescription {\n /** Name of the property description */\n name: string;\n /** Display label for the property description */\n displayLabel: string;\n /** Type name used to determine applicable Type Converter and Property Editor */\n typename: string;\n /** Additional information for enumerations */\n enum?: EnumerationChoicesInfo;\n /** Information for property renderer customization */\n renderer?: PropertyRendererInfo;\n /** Information for a property editor */\n editor?: PropertyEditorInfo;\n /** Information for a property converter */\n converter?: PropertyConverterInfo;\n /** Quantity type key used to look up formatting and parsing specs. This is typically either the name of a quantity type used by a tool\n * or the full name of a KOQ (schema:koq).\n * @alpha\n * @deprecated in 5.0 - will not be removed until after 2026-06-13. Use `kindOfQuantityName` instead.\n */\n quantityType?: string;\n /** [[KindOfQuantity]] full name used to look up [[FormatProps]]\n * @beta\n */\n kindOfQuantityName?: string;\n /** Get the custom DataController by this name and register it with the property editor */\n dataController?: string;\n /** Should property label for composite (struct & array) properties be rendered. */\n hideCompositePropertyLabel?: boolean;\n}\n\n/** Helper class that builds property descriptions for specific PropertyEditors and processes descriptions.\n * @public\n */\nexport class PropertyDescriptionHelper {\n /** Builds a number description with a \"weight-picker\" editor name\n * @public\n */\n public static buildWeightPickerDescription(name: string, label: string, additionalParams: BasePropertyEditorParams[] = []): PropertyDescription {\n return {\n name,\n displayLabel: label,\n typename: StandardTypeNames.Number,\n editor: {\n name: StandardEditorNames.WeightPicker,\n params: additionalParams,\n },\n };\n }\n\n /** Builds an editor that uses [NumberInput]($core-react) control\n * @public\n */\n public static buildNumberEditorDescription(name: string, label: string, overrideParams?: RangeEditorParams, additionalParams: BasePropertyEditorParams[] = []): PropertyDescription {\n const editorParams = [{\n type: PropertyEditorParamTypes.Range,\n step: 1,\n precision: 0,\n ...overrideParams,\n } as RangeEditorParams, ...additionalParams];\n\n const editor = {\n name: StandardEditorNames.NumericInput,\n params: editorParams,\n };\n\n return {\n name,\n displayLabel: label,\n typename: StandardTypeNames.Number,\n editor,\n };\n }\n\n /** Builds a string description\n * @public\n */\n public static buildTextEditorDescription(name: string, label: string, additionalParams: BasePropertyEditorParams[] = []): PropertyDescription {\n const editor = {\n params: additionalParams,\n };\n\n return {\n name,\n displayLabel: label,\n typename: StandardTypeNames.String,\n editor,\n };\n }\n\n /** Builds an enum description\n * @public\n */\n public static buildEnumPicklistEditorDescription(name: string, label: string,\n choices: Promise<EnumerationChoice[]> | EnumerationChoice[],\n additionalParams: BasePropertyEditorParams[] = []): PropertyDescription {\n const editor = additionalParams.length ? {\n params: additionalParams,\n } : undefined;\n\n return {\n name,\n displayLabel: label,\n typename: StandardTypeNames.Enum,\n editor,\n enum: {\n choices,\n },\n };\n }\n\n /** Builds a number description for a tool settings or dialog property that will display a \"color-picker\" control.\n * @public\n */\n public static buildColorPickerDescription(name: string, label: string, colorValues: number[], numColumns: number,\n additionalParams: BasePropertyEditorParams[] = []): PropertyDescription {\n const editorParams = [\n {\n type: PropertyEditorParamTypes.ColorData,\n colorValues,\n numColumns,\n } as ColorEditorParams,\n ...additionalParams,\n ];\n\n return {\n name,\n displayLabel: label,\n typename: StandardTypeNames.Number,\n editor: {\n name: StandardEditorNames.ColorPicker,\n params: editorParams,\n },\n };\n }\n\n /** Builds a boolean description for a tool settings or dialog property that will display a \"toggle\" control.\n * @public\n */\n public static buildToggleDescription(name: string, label: string, additionalParams: BasePropertyEditorParams[] = []): PropertyDescription {\n return {\n name,\n displayLabel: label,\n typename: StandardTypeNames.Boolean,\n editor: {\n name: StandardEditorNames.Toggle,\n params: additionalParams,\n },\n };\n }\n\n /** Builds a boolean description for a tool settings or dialog property that will display a \"image-check-box\" control.\n * @public\n */\n public static buildImageCheckBoxDescription(name: string, label: string, imageOff: string, imageOn: string, additionalParams: BasePropertyEditorParams[] = []): PropertyDescription {\n const editorParams = [{\n type: PropertyEditorParamTypes.CheckBoxImages,\n imageOff,\n imageOn,\n } as ImageCheckBoxParams, ...additionalParams];\n\n return {\n name,\n displayLabel: label,\n typename: StandardTypeNames.Boolean,\n editor: {\n name: StandardEditorNames.ImageCheckBox,\n params: editorParams,\n },\n };\n }\n\n /** Builds a boolean description for a tool settings or dialog property that will display a checkbox control.\n * @public\n */\n public static buildCheckboxDescription(name: string, label: string, additionalParams: BasePropertyEditorParams[] = []): PropertyDescription {\n const editor = {\n params: additionalParams,\n };\n\n return {\n name,\n displayLabel: label,\n typename: StandardTypeNames.Boolean,\n editor,\n };\n }\n\n /** Builds a property description for a tool settings or dialog `lock` property. This will create a checkbox control with no label.\n * @public\n */\n public static buildLockPropertyDescription(name: string, additionalParams: BasePropertyEditorParams[] = []): PropertyDescription {\n const defaultParams = {\n type: PropertyEditorParamTypes.SuppressEditorLabel,\n suppressLabelPlaceholder: true,\n } as SuppressLabelEditorParams;\n\n const editor = {\n params: [defaultParams, ...additionalParams],\n };\n\n return {\n name,\n displayLabel: \"\",\n typename: StandardTypeNames.Boolean,\n editor,\n };\n }\n\n /** Bumps an enum property description value\n * @public\n */\n public static async bumpEnumProperty(description: PropertyDescription, value: string | number): Promise<string | number> {\n let choices: EnumerationChoice[] | undefined;\n\n if (description.enum) {\n if (description.enum.choices instanceof Promise) {\n choices = await description.enum.choices;\n } else {\n choices = description.enum.choices;\n }\n }\n\n if (!choices || choices.length === 0)\n return value;\n\n let choiceIndex = choices.findIndex((choice) => choice.value === value);\n if (choiceIndex < 0)\n return value;\n\n choiceIndex++;\n if (choiceIndex >= choices.length)\n choiceIndex = 0;\n\n const newValue = choices[choiceIndex].value;\n return newValue;\n }\n}\n"]}
{"version":3,"file":"Description.js","sourceRoot":"","sources":["../../../../src/appui-abstract/properties/Description.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 Properties\n */\n\nimport {\n BasePropertyEditorParams, ColorEditorParams, ImageCheckBoxParams, PropertyEditorParams, PropertyEditorParamTypes, RangeEditorParams,\n SuppressLabelEditorParams,\n} from \"./EditorParams\";\nimport { StandardEditorNames } from \"./StandardEditorNames\";\nimport { StandardTypeNames } from \"./StandardTypeNames\";\n\n// cSpell:ignore Picklist\n\n/**\n * Information about an enumeration choice\n * @public\n */\nexport interface EnumerationChoice {\n label: string;\n value: string | number;\n}\n\n/**\n * Information about a set of enumeration choices\n * @public\n */\nexport interface EnumerationChoicesInfo {\n choices: Promise<EnumerationChoice[]> | EnumerationChoice[];\n isStrict?: boolean;\n maxDisplayedRows?: number;\n}\n\n/**\n * Property renderer identification and customization attributes\n * @public\n */\nexport interface PropertyRendererInfo {\n name: string;\n}\n\n/**\n * Information about a Property Editor\n * @public\n */\nexport interface PropertyEditorInfo {\n /** Editor name used in addition to the typename to find the registered property editor */\n name?: string;\n /** Editor params provided to the property editor */\n params?: PropertyEditorParams[];\n}\n\n/**\n * Information about a Property Converter\n * @public\n */\nexport interface PropertyConverterInfo {\n /** Converter name used in addition to the typename to find the registered property converter */\n name?: string;\n /** map of options for type converter */\n options?: { [key: string]: any };\n}\n\n/**\n * [[PropertyDescription]] contains metadata about a Property\n * @public\n */\nexport interface PropertyDescription {\n /** Name of the property description */\n name: string;\n /** Display label for the property description */\n displayLabel: string;\n /** Type name used to determine applicable Type Converter and Property Editor */\n typename: string;\n /** Additional information for enumerations */\n enum?: EnumerationChoicesInfo;\n /** Information for property renderer customization */\n renderer?: PropertyRendererInfo;\n /** Information for a property editor */\n editor?: PropertyEditorInfo;\n /** Information for a property converter */\n converter?: PropertyConverterInfo;\n /** Quantity type key used to look up formatting and parsing specs. This is typically either the name of a quantity type used by a tool\n * or the full name of a KOQ (schema:koq).\n * @alpha\n * @deprecated in 5.0 - might be removed in next major version. Use `kindOfQuantityName` instead.\n */\n quantityType?: string;\n /** [[KindOfQuantity]] full name used to look up [[FormatProps]]\n * @beta\n */\n kindOfQuantityName?: string;\n /** Get the custom DataController by this name and register it with the property editor */\n dataController?: string;\n /** Should property label for composite (struct & array) properties be rendered. */\n hideCompositePropertyLabel?: boolean;\n}\n\n/** Helper class that builds property descriptions for specific PropertyEditors and processes descriptions.\n * @public\n */\nexport class PropertyDescriptionHelper {\n /** Builds a number description with a \"weight-picker\" editor name\n * @public\n */\n public static buildWeightPickerDescription(name: string, label: string, additionalParams: BasePropertyEditorParams[] = []): PropertyDescription {\n return {\n name,\n displayLabel: label,\n typename: StandardTypeNames.Number,\n editor: {\n name: StandardEditorNames.WeightPicker,\n params: additionalParams,\n },\n };\n }\n\n /** Builds an editor that uses [NumberInput]($core-react) control\n * @public\n */\n public static buildNumberEditorDescription(name: string, label: string, overrideParams?: RangeEditorParams, additionalParams: BasePropertyEditorParams[] = []): PropertyDescription {\n const editorParams = [{\n type: PropertyEditorParamTypes.Range,\n step: 1,\n precision: 0,\n ...overrideParams,\n } as RangeEditorParams, ...additionalParams];\n\n const editor = {\n name: StandardEditorNames.NumericInput,\n params: editorParams,\n };\n\n return {\n name,\n displayLabel: label,\n typename: StandardTypeNames.Number,\n editor,\n };\n }\n\n /** Builds a string description\n * @public\n */\n public static buildTextEditorDescription(name: string, label: string, additionalParams: BasePropertyEditorParams[] = []): PropertyDescription {\n const editor = {\n params: additionalParams,\n };\n\n return {\n name,\n displayLabel: label,\n typename: StandardTypeNames.String,\n editor,\n };\n }\n\n /** Builds an enum description\n * @public\n */\n public static buildEnumPicklistEditorDescription(name: string, label: string,\n choices: Promise<EnumerationChoice[]> | EnumerationChoice[],\n additionalParams: BasePropertyEditorParams[] = []): PropertyDescription {\n const editor = additionalParams.length ? {\n params: additionalParams,\n } : undefined;\n\n return {\n name,\n displayLabel: label,\n typename: StandardTypeNames.Enum,\n editor,\n enum: {\n choices,\n },\n };\n }\n\n /** Builds a number description for a tool settings or dialog property that will display a \"color-picker\" control.\n * @public\n */\n public static buildColorPickerDescription(name: string, label: string, colorValues: number[], numColumns: number,\n additionalParams: BasePropertyEditorParams[] = []): PropertyDescription {\n const editorParams = [\n {\n type: PropertyEditorParamTypes.ColorData,\n colorValues,\n numColumns,\n } as ColorEditorParams,\n ...additionalParams,\n ];\n\n return {\n name,\n displayLabel: label,\n typename: StandardTypeNames.Number,\n editor: {\n name: StandardEditorNames.ColorPicker,\n params: editorParams,\n },\n };\n }\n\n /** Builds a boolean description for a tool settings or dialog property that will display a \"toggle\" control.\n * @public\n */\n public static buildToggleDescription(name: string, label: string, additionalParams: BasePropertyEditorParams[] = []): PropertyDescription {\n return {\n name,\n displayLabel: label,\n typename: StandardTypeNames.Boolean,\n editor: {\n name: StandardEditorNames.Toggle,\n params: additionalParams,\n },\n };\n }\n\n /** Builds a boolean description for a tool settings or dialog property that will display a \"image-check-box\" control.\n * @public\n */\n public static buildImageCheckBoxDescription(name: string, label: string, imageOff: string, imageOn: string, additionalParams: BasePropertyEditorParams[] = []): PropertyDescription {\n const editorParams = [{\n type: PropertyEditorParamTypes.CheckBoxImages,\n imageOff,\n imageOn,\n } as ImageCheckBoxParams, ...additionalParams];\n\n return {\n name,\n displayLabel: label,\n typename: StandardTypeNames.Boolean,\n editor: {\n name: StandardEditorNames.ImageCheckBox,\n params: editorParams,\n },\n };\n }\n\n /** Builds a boolean description for a tool settings or dialog property that will display a checkbox control.\n * @public\n */\n public static buildCheckboxDescription(name: string, label: string, additionalParams: BasePropertyEditorParams[] = []): PropertyDescription {\n const editor = {\n params: additionalParams,\n };\n\n return {\n name,\n displayLabel: label,\n typename: StandardTypeNames.Boolean,\n editor,\n };\n }\n\n /** Builds a property description for a tool settings or dialog `lock` property. This will create a checkbox control with no label.\n * @public\n */\n public static buildLockPropertyDescription(name: string, additionalParams: BasePropertyEditorParams[] = []): PropertyDescription {\n const defaultParams = {\n type: PropertyEditorParamTypes.SuppressEditorLabel,\n suppressLabelPlaceholder: true,\n } as SuppressLabelEditorParams;\n\n const editor = {\n params: [defaultParams, ...additionalParams],\n };\n\n return {\n name,\n displayLabel: \"\",\n typename: StandardTypeNames.Boolean,\n editor,\n };\n }\n\n /** Bumps an enum property description value\n * @public\n */\n public static async bumpEnumProperty(description: PropertyDescription, value: string | number): Promise<string | number> {\n let choices: EnumerationChoice[] | undefined;\n\n if (description.enum) {\n if (description.enum.choices instanceof Promise) {\n choices = await description.enum.choices;\n } else {\n choices = description.enum.choices;\n }\n }\n\n if (!choices || choices.length === 0)\n return value;\n\n let choiceIndex = choices.findIndex((choice) => choice.value === value);\n if (choiceIndex < 0)\n return value;\n\n choiceIndex++;\n if (choiceIndex >= choices.length)\n choiceIndex = 0;\n\n const newValue = choices[choiceIndex].value;\n return newValue;\n }\n}\n"]}

@@ -74,3 +74,3 @@ /** @packageDocumentation

/** Create a PointProps object.
* @deprecated in 4.2.0 - will not be removed until after 2026-06-13. Please use @core/geometry [[XAndY]] or a custom implementation.
* @deprecated in 4.2.0 - might be removed in next major version. Please use @core/geometry [[XAndY]] or a custom implementation.
*/

@@ -77,0 +77,0 @@ createXAndY(x: number, y: number): XAndY;

@@ -43,3 +43,3 @@ /*---------------------------------------------------------------------------------------------

/** Create a PointProps object.
* @deprecated in 4.2.0 - will not be removed until after 2026-06-13. Please use @core/geometry [[XAndY]] or a custom implementation.
* @deprecated in 4.2.0 - might be removed in next major version. Please use @core/geometry [[XAndY]] or a custom implementation.
*/

@@ -46,0 +46,0 @@ createXAndY(x, y) { return { x, y }; }

@@ -1,1 +0,1 @@

{"version":3,"file":"UiAdmin.js","sourceRoot":"","sources":["../../../src/appui-abstract/UiAdmin.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AA+C7E;;GAEG;AACH,MAAM,OAAO,cAAe,SAAQ,SAA6B;CAAI;AAUrE;;GAEG;AACH,MAAM,OAAO,OAAO;IACV,aAAa,GAAY,EAAE,CAAC;IAC5B,MAAM,CAAC,iBAAiB,CAAoB;IAEpD,qDAAqD;IAC9C,MAAM,KAAK,gBAAgB;QAChC,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC;YAC/B,MAAM,KAAK,GAAG,IAAI,YAAY,CAAC,aAAa,CAAC,KAAK,EAAE,kCAAkC,CAA6B,CAAC;YACpH,KAAK,CAAC,QAAQ,GAAG,kBAAkB,CAAC;YACpC,MAAM,KAAK,CAAC;QACd,CAAC;QAED,OAAO,OAAO,CAAC,iBAAiB,CAAC;IACnC,CAAC;IACM,MAAM,KAAK,gBAAgB,CAAC,EAAoB;QACrD,OAAO,CAAC,iBAAiB,GAAG,EAAE,CAAC;IACjC,CAAC;IAED,IAAW,YAAY;QACrB,OAAO,EAAE,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC,kDAAkD;IACtF,CAAC;IAEM,kBAAkB,CAAC,OAAgB;QACxC,IAAI,CAAC,aAAa,GAAG,EAAE,GAAG,IAAI,CAAC,aAAa,EAAE,GAAG,OAAO,EAAE,CAAC;IAC7D,CAAC;IAED,gBAAgB;IACT,aAAa,KAAK,CAAC;IAE1B,uCAAuC;IACvC,IAAW,cAAc,KAAY,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAE7D;;MAEE;IACK,WAAW,CAAC,CAAS,EAAE,CAAS,IAAW,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAEpE,yCAAyC;IACzC,IAAW,aAAa,KAAc,OAAO,KAAK,CAAC,CAAC,CAAC;IAErD,yBAAyB;IAClB,cAAc,KAAW,CAAC;IAEjC;;;;;OAKG;IACI,eAAe,CAAC,eAAwC,EAAE,SAAgB,EAAE,YAA0B;QAC3G,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;;;;;;OASG;IACI,WAAW,CAChB,aAAmC,EAAE,SAAgB,EAAE,OAAc,EAAE,eAAmC,EAAE,SAAuB,EACnI,iBAAoC,EAAE,YAA0B;QAChE,OAAO,KAAK,CAAC;IACf,CAAC;IAED,yBAAyB;IAClB,WAAW,KAAc,OAAO,KAAK,CAAC,CAAC,CAAC;IAE/C;;;;;;OAMG;IACI,cAAc,CAAC,GAAW,EAAE,eAAwC,EAAE,SAAgB,EAAE,YAA0B;QACvH,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;OAGG;IACI,cAAc,CAAC,GAAW,IAAa,OAAO,KAAK,CAAC,CAAC,CAAC;IAE7D;;;;;;;;OAQG;IACI,cAAc,CAAC,aAAqB,EAAE,WAAmB,EAAE,SAAgB,EAAE,SAA6B,EAAE,SAAuB,EAAE,YAA0B;QACpK,OAAO,KAAK,CAAC;IACf,CAAC;IAED,4BAA4B;IACrB,cAAc,KAAc,OAAO,KAAK,CAAC,CAAC,CAAC;IAElD;;;;;;;OAOG;IACI,eAAe,CAAC,aAAqB,EAAE,SAAgB,EAAE,SAA6B,EAAE,SAAuB,EAAE,YAA0B;QAChJ,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;;;;OAOG;IACI,gBAAgB,CAAC,aAAqB,EAAE,SAAgB,EAAE,SAA6B,EAAE,SAAuB,EAAE,YAA0B;QACjJ,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;;;;OAOG;IACI,gBAAgB,CAAC,aAAqB,EAAE,SAAgB,EAAE,SAA6B,EAAE,SAAuB,EAAE,YAA0B;QACjJ,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;;;;;OAQG;IACI,eAAe,CAAC,aAA+B,EAAE,oBAAyC,EAAE,SAAgB,EAAE,SAA4B,EAAE,SAAuB,EAAE,YAA0B;QACpM,OAAO,KAAK,CAAC;IACf,CAAC;IAED,8BAA8B;IACvB,eAAe,KAAc,OAAO,KAAK,CAAC,CAAC,CAAC;IAEnD;;;;;;;;OAQG;IACI,eAAe,CACpB,eAA4B,EAAE,SAAgB,EAAE,OAAc,EAAE,SAAuB,EACvF,iBAAoC,EAAE,cAA4B;QAClE,OAAO,KAAK,CAAC;IACf,CAAC;IAED,8BAA8B;IACvB,eAAe,KAAc,OAAO,KAAK,CAAC,CAAC,CAAC;IAEnD;;;;;;;;;;;OAWG;IACI,QAAQ,CACb,QAAqB,EAAE,MAA2C,EAAE,aAA+C,EACnH,SAAgB,EAAE,OAAc,EAAE,eAAmC,EAAE,SAAuB,EAC9F,iBAAoC,EAAE,cAA4B;QAClE,OAAO,KAAK,CAAC;IACf,CAAC;IAED,sBAAsB;IACf,QAAQ,KAAc,OAAO,KAAK,CAAC,CAAC,CAAC;IAE5C;;;;;;;;OAQG;IACI,qBAAqB,CAC1B,aAA6B,EAAE,SAAgB,EAAE,OAAc,EAAE,SAAuB,EACxF,iBAAoC,EAAE,cAA4B;QAClE,OAAO,KAAK,CAAC;IACf,CAAC;IAED,yCAAyC;IAClC,sBAAsB,KAAc,OAAO,KAAK,CAAC,CAAC,CAAC;IAE1D;;;OAGG;IACI,gBAAgB,CAAC,YAA0B,IAAa,OAAO,KAAK,CAAC,CAAC,CAAC;IAE9E,+BAA+B;IACxB,gBAAgB,KAAc,OAAO,KAAK,CAAC,CAAC,CAAC;IAEpD,sBAAsB;IACf,MAAM,CAAC,WAAW,CAAC,IAAwB;QAChD,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACtC,CAAC;IACD,sBAAsB;IACf,MAAM,CAAU,gBAAgB,GAAG,IAAI,cAAc,EAAE,CAAC;IAE/D;;;;;;;OAOG;IACI,UAAU,CAAC,eAAyC,EAAE,MAAc,EAAE,QAAiB,EAAE,GAAW,EACzG,cAA4B;QAC5B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,yCAAyC;IAClC,WAAW,CAAC,SAAiB,IAAa,OAAO,KAAK,CAAC,CAAC,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module UiAdmin\n */\n\nimport { BentleyError, BentleyStatus, BeUiEvent } from \"@itwin/core-bentley\";\nimport { AbstractMenuItemProps } from \"./items/AbstractMenuItemProps\";\nimport { AbstractToolbarProps } from \"./items/AbstractToolbarProps\";\nimport { RelativePosition } from \"./items/RelativePosition\";\nimport { PropertyDescription } from \"./properties/Description\";\nimport { Primitives } from \"./properties/PrimitiveTypes\";\nimport { OnCancelFunc, OnItemExecutedFunc, OnNumberCommitFunc, OnValueCommitFunc } from \"./utils/callbacks\";\nimport { PropertyRecord } from \"./properties/Record\";\nimport { UiDataProvider } from \"./dialogs/UiDataProvider\";\nimport { DialogLayoutDataProvider } from \"./dialogs/UiLayoutDataProvider\";\nimport { MessagePresenter } from \"./notification/MessagePresenter\";\n\ninterface XAndY { readonly x: number, readonly y: number }\n\ninterface BentleyErrorWithCategory extends BentleyError {\n category: string;\n}\n\n/** The Generic UI Event args contains information useful for any UI message\n * @public\n */\nexport interface GenericUiEventArgs {\n uiComponentId: string;\n}\n\n/** Optional props to pass to the Dialog control that is generated.\n * @public\n */\nexport interface DialogProps {\n /** Indicates whether the user can resize dialog with cursor. */\n resizable?: boolean;\n /** Indicates whether the user can move dialog with cursor.*/\n movable?: boolean;\n /** Initial width of dialog. Displayed in px if value is a number; otherwise, displayed in specified CSS unit. */\n width?: string | number;\n /** Initial height of dialog. Displayed in px if value is a number; otherwise, displayed in specified CSS unit. */\n height?: string | number;\n /** Minimum width that the dialog may be resized to. Displayed in px if value is a number; otherwise, displayed in specified CSS unit. */\n minWidth?: string | number;\n /** Minimum height that the dialog may be resized to. Displayed in px if value is a number; otherwise, displayed in specified CSS unit. */\n minHeight?: string | number;\n /** Maximum width that the dialog may be resized to. Displayed in px if value is a number; otherwise, displayed in specified CSS unit. */\n maxWidth?: string | number;\n /** Maximum height that the dialog may be resized to. Displayed in px if value is a number; otherwise, displayed in specified CSS unit. */\n maxHeight?: string | number;\n}\n\n/** The GenericUiEvent is the base event class for UI events that target a specific component, as identified in uiComponentId.\n * @public\n */\nexport class GenericUiEvent extends BeUiEvent<GenericUiEventArgs> { }\n\n/** Flags that control enabling/disabling certain UI features\n * @public\n */\nexport interface UiFlags {\n /** if true then Ctrl+F2 will show popup key-in palette */\n allowKeyinPalette?: boolean;\n}\n\n/** The UiAdmin controls various UI components and is callable from IModelApp.uiAdmin in the core-frontend package.\n * @public\n */\nexport class UiAdmin {\n private _featureFlags: UiFlags = {};\n private static _messagePresenter?: MessagePresenter;\n\n /** The MessagePresenter used to display messages. */\n public static get messagePresenter(): MessagePresenter {\n if (!UiAdmin._messagePresenter) {\n const error = new BentleyError(BentleyStatus.ERROR, \"UiAdmin.messagePresenter not set\") as BentleyErrorWithCategory;\n error.category = \"messagePresenter\";\n throw error;\n }\n\n return UiAdmin._messagePresenter;\n }\n public static set messagePresenter(mp: MessagePresenter) {\n UiAdmin._messagePresenter = mp;\n }\n\n public get featureFlags(): UiFlags {\n return { ...this._featureFlags }; // return copy so no direct access to modify value\n }\n\n public updateFeatureFlags(uiFlags: UiFlags) {\n this._featureFlags = { ...this._featureFlags, ...uiFlags };\n }\n\n /** @internal */\n public onInitialized() { }\n\n /** Get the cursor X and Y position. */\n public get cursorPosition(): XAndY { return { x: 0, y: 0 }; }\n\n /** Create a PointProps object.\n * @deprecated in 4.2.0 - will not be removed until after 2026-06-13. Please use @core/geometry [[XAndY]] or a custom implementation.\n */\n public createXAndY(x: number, y: number): XAndY { return { x, y }; }\n\n /** Determines if focus is set to Home */\n public get isFocusOnHome(): boolean { return false; }\n\n /** Sets focus to Home */\n public setFocusToHome(): void { }\n\n /** Show a context menu at a particular location.\n * @param _menuItemsProps Properties of the menu items to display.\n * @param _location Location of the context menu, relative to the origin of htmlElement or the window.\n * @param _htmlElement The HTMLElement that anchors the context menu. If undefined, the location is relative to the overall window.\n * @return true if the menu was displayed, false if the menu could not be displayed.\n */\n public showContextMenu(_menuItemsProps: AbstractMenuItemProps[], _location: XAndY, _htmlElement?: HTMLElement): boolean {\n return false;\n }\n\n /** Show a Toolbar at a particular location.\n * @param _toolbarProps Properties of the Toolbar to display.\n * @param _location Location of the Toolbar, relative to the origin of htmlElement or the window.\n * @param _offset Offset of the Toolbar from the location.\n * @param _onItemExecuted Function invoked after a Toolbar item is executed\n * @param _onCancel Function invoked when the Escape key is pressed or a click occurs outside the Toolbar\n * @param _relativePosition Position relative to the given location. Defaults to TopRight.\n * @param _htmlElement The HTMLElement that anchors the Toolbar. If undefined, the location is relative to the overall window.\n * @return true if the Toolbar was displayed, false if the Toolbar could not be displayed.\n */\n public showToolbar(\n _toolbarProps: AbstractToolbarProps, _location: XAndY, _offset: XAndY, _onItemExecuted: OnItemExecutedFunc, _onCancel: OnCancelFunc,\n _relativePosition?: RelativePosition, _htmlElement?: HTMLElement): boolean {\n return false;\n }\n\n /** Hides the toolbar. */\n public hideToolbar(): boolean { return false; }\n\n /** Show a menu button at a particular location. A menu button opens a context menu.\n * @param _id Id of the menu button. Multiple menu buttons may be displayed.\n * @param _menuItemsProps Properties of the menu items to display.\n * @param _location Location of the context menu, relative to the origin of htmlElement or the window.\n * @param _htmlElement The HTMLElement that anchors the context menu. If undefined, the location is relative to the overall window.\n * @return true if the button was displayed, false if the button could not be displayed.\n */\n public showMenuButton(_id: string, _menuItemsProps: AbstractMenuItemProps[], _location: XAndY, _htmlElement?: HTMLElement): boolean {\n return false;\n }\n\n /** Hides a menu button.\n * @param _id Id of the menu button. Multiple menu buttons may be displayed.\n * @return true if the menu was hidden, false if the menu could not be hidden.\n */\n public hideMenuButton(_id: string): boolean { return false; }\n\n /** Show a calculator at a particular location.\n * @param _initialValue Value initially displayed in the calculator.\n * @param _resultIcon Icon displayed to the left of the value.\n * @param _location Location of the calculator, relative to the origin of htmlElement or the window.\n * @param _onCommit Function called when the OK button or the Enter key is pressed.\n * @param _onCancel Function called when the Cancel button or the Escape key is pressed.\n * @param _htmlElement The HTMLElement that anchors the context menu. If undefined, the location is relative to the overall window.\n * @return true if the calculator was displayed, false if the calculator could not be displayed.\n */\n public showCalculator(_initialValue: number, _resultIcon: string, _location: XAndY, _onCommit: OnNumberCommitFunc, _onCancel: OnCancelFunc, _htmlElement?: HTMLElement): boolean {\n return false;\n }\n\n /** Hides the calculator. */\n public hideCalculator(): boolean { return false; }\n\n /** Show an input editor for an angle value at a particular location.\n * @param _initialValue Value initially displayed in the editor.\n * @param _location Location of the editor, relative to the origin of htmlElement or the window.\n * @param _onCommit Function called when the OK button or the Enter key is pressed.\n * @param _onCancel Function called when the Cancel button or the Escape key is pressed.\n * @param _htmlElement The HTMLElement that anchors the context menu. If undefined, the location is relative to the overall window.\n * @return true if the editor was displayed, false if the editor could not be displayed.\n */\n public showAngleEditor(_initialValue: number, _location: XAndY, _onCommit: OnNumberCommitFunc, _onCancel: OnCancelFunc, _htmlElement?: HTMLElement): boolean {\n return false;\n }\n\n /** Show an input editor for a length value at a particular location.\n * @param _initialValue Value initially displayed in the editor.\n * @param _location Location of the editor, relative to the origin of htmlElement or the window.\n * @param _onCommit Function called when the OK button or the Enter key is pressed.\n * @param _onCancel Function called when the Cancel button or the Escape key is pressed.\n * @param _htmlElement The HTMLElement that anchors the context menu. If undefined, the location is relative to the overall window.\n * @return true if the editor was displayed, false if the editor could not be displayed.\n */\n public showLengthEditor(_initialValue: number, _location: XAndY, _onCommit: OnNumberCommitFunc, _onCancel: OnCancelFunc, _htmlElement?: HTMLElement): boolean {\n return false;\n }\n\n /** Show an input editor for a height value at a particular location.\n * @param _initialValue Value initially displayed in the editor.\n * @param _location Location of the editor, relative to the origin of htmlElement or the window.\n * @param _onCommit Function called when the OK button or the Enter key is pressed.\n * @param _onCancel Function called when the Cancel button or the Escape key is pressed.\n * @param _htmlElement The HTMLElement that anchors the context menu. If undefined, the location is relative to the overall window.\n * @return true if the editor was displayed, false if the editor could not be displayed.\n */\n public showHeightEditor(_initialValue: number, _location: XAndY, _onCommit: OnNumberCommitFunc, _onCancel: OnCancelFunc, _htmlElement?: HTMLElement): boolean {\n return false;\n }\n\n /** Show an input editor for a primitive value at a particular location.\n * @param _initialValue Value initially displayed in the editor.\n * @param _propertyDescription Description of the primitive value property.\n * @param _location Location of the editor, relative to the origin of htmlElement or the window.\n * @param _onCommit Function called when the OK button or the Enter key is pressed.\n * @param _onCancel Function called when the Cancel button or the Escape key is pressed.\n * @param _htmlElement The HTMLElement that anchors the context menu. If undefined, the location is relative to the overall window.\n * @return true if the editor was displayed, false if the editor could not be displayed.\n */\n public showInputEditor(_initialValue: Primitives.Value, _propertyDescription: PropertyDescription, _location: XAndY, _onCommit: OnValueCommitFunc, _onCancel: OnCancelFunc, _htmlElement?: HTMLElement): boolean {\n return false;\n }\n\n /** Hides the input editor. */\n public hideInputEditor(): boolean { return false; }\n\n /** Show an HTML element at a particular location.\n * @param _displayElement The HTMLElement to display\n * @param _location Location of the tool settings, relative to the origin of anchorElement or the window\n * @param _offset Offset of the display element from the location\n * @param _onCancel Function invoked when the Escape key is pressed or a click occurs outside the display element\n * @param _relativePosition Position relative to the given location. Defaults to TopRight.\n * @param _anchorElement The HTMLElement that anchors the display element. If undefined, the location is relative to the overall window.\n * @return true if the display element was displayed, false if the display element could not be displayed.\n */\n public showHTMLElement(\n _displayElement: HTMLElement, _location: XAndY, _offset: XAndY, _onCancel: OnCancelFunc,\n _relativePosition?: RelativePosition, _anchorElement?: HTMLElement): boolean {\n return false;\n }\n\n /** Hides the HTML Element. */\n public hideHTMLElement(): boolean { return false; }\n\n /** Show a Card containing content, a title and a toolbar at a particular location.\n * @param _content The HTMLElement of the content to display\n * @param _title Title to display at the top of the card.\n * @param _toolbarProps Properties of the Toolbar to display.\n * @param _location Location of the Card, relative to the origin of anchorElement or the window.\n * @param _offset Offset of the Card from the location.\n * @param _onItemExecuted Function invoked after a Toolbar item is executed\n * @param _onCancel Function invoked when the Escape key is pressed or a click occurs outside the Card\n * @param _relativePosition Position relative to the given location. Defaults to TopRight.\n * @param _anchorElement The HTMLElement that anchors the Card. If undefined, the location is relative to the overall window.\n * @return true if the Card was displayed, false if the Card could not be displayed.\n */\n public showCard(\n _content: HTMLElement, _title: string | PropertyRecord | undefined, _toolbarProps: AbstractToolbarProps | undefined,\n _location: XAndY, _offset: XAndY, _onItemExecuted: OnItemExecutedFunc, _onCancel: OnCancelFunc,\n _relativePosition?: RelativePosition, _anchorElement?: HTMLElement): boolean {\n return false;\n }\n\n /** Hides the Card. */\n public hideCard(): boolean { return false; }\n\n /** Opens a Tool Settings Ui popup at a particular location.\n * @param _dataProvider The UiDataProvider for the tool settings\n * @param _location Location of the tool settings, relative to the origin of anchorElement or the window\n * @param _offset Offset of the tool settings from the location\n * @param _onCancel Function invoked when the Escape key is pressed or a click occurs outside the tool settings\n * @param _relativePosition Position relative to the given location. Defaults to TopRight.\n * @param _anchorElement The HTMLElement that anchors the tool settings. If undefined, the location is relative to the overall window.\n * @return true if the tool settings were displayed, false if the tool settings could not be displayed.\n */\n public openToolSettingsPopup(\n _dataProvider: UiDataProvider, _location: XAndY, _offset: XAndY, _onCancel: OnCancelFunc,\n _relativePosition?: RelativePosition, _anchorElement?: HTMLElement): boolean {\n return false;\n }\n\n /** Closes the Tool Settings Ui popup. */\n public closeToolSettingsPopup(): boolean { return false; }\n\n /** Show the Keyin Palette to display all support Tool key-ins.\n * @param _htmlElement The HTMLElement that anchors the Keyin Palette. If undefined, the location is relative to the overall window.\n * @return true if the Keyin Palette was displayed, false if it could not be displayed.\n */\n public showKeyinPalette(_htmlElement?: HTMLElement): boolean { return false; }\n\n /** Hides the Keyin Palette. */\n public hideKeyinPalette(): boolean { return false; }\n\n /** Send a UI event */\n public static sendUiEvent(args: GenericUiEventArgs) {\n UiAdmin.onGenericUiEvent.emit(args);\n }\n /** GenericUiEvent */\n public static readonly onGenericUiEvent = new GenericUiEvent();\n\n /** Opens a Dialog and automatically populates it using the properties defined by the UiDataProvider.\n * @param _uiDataProvider The DialogLayoutDataProvider for the dialog\n * @param _title Specify title for dialog.\n * @param _isModal Specify if the dialog is opened as a modal or modeless.\n * @param _id Id of the dialog that is used to close it.\n * @param _optionalProps Optional props for Dialog construction.\n * @return true if the tool settings were displayed, false if the tool settings could not be displayed.\n */\n public openDialog(_uiDataProvider: DialogLayoutDataProvider, _title: string, _isModal: boolean, _id: string,\n _optionalProps?: DialogProps): boolean {\n return false;\n }\n\n /** Closes the Dialog with a given Id. */\n public closeDialog(_dialogId: string): boolean { return false; }\n}\n"]}
{"version":3,"file":"UiAdmin.js","sourceRoot":"","sources":["../../../src/appui-abstract/UiAdmin.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 UiAdmin\n */\n\nimport { BentleyError, BentleyStatus, BeUiEvent } from \"@itwin/core-bentley\";\nimport { AbstractMenuItemProps } from \"./items/AbstractMenuItemProps\";\nimport { AbstractToolbarProps } from \"./items/AbstractToolbarProps\";\nimport { RelativePosition } from \"./items/RelativePosition\";\nimport { PropertyDescription } from \"./properties/Description\";\nimport { Primitives } from \"./properties/PrimitiveTypes\";\nimport { OnCancelFunc, OnItemExecutedFunc, OnNumberCommitFunc, OnValueCommitFunc } from \"./utils/callbacks\";\nimport { PropertyRecord } from \"./properties/Record\";\nimport { UiDataProvider } from \"./dialogs/UiDataProvider\";\nimport { DialogLayoutDataProvider } from \"./dialogs/UiLayoutDataProvider\";\nimport { MessagePresenter } from \"./notification/MessagePresenter\";\n\ninterface XAndY { readonly x: number, readonly y: number }\n\ninterface BentleyErrorWithCategory extends BentleyError {\n category: string;\n}\n\n/** The Generic UI Event args contains information useful for any UI message\n * @public\n */\nexport interface GenericUiEventArgs {\n uiComponentId: string;\n}\n\n/** Optional props to pass to the Dialog control that is generated.\n * @public\n */\nexport interface DialogProps {\n /** Indicates whether the user can resize dialog with cursor. */\n resizable?: boolean;\n /** Indicates whether the user can move dialog with cursor.*/\n movable?: boolean;\n /** Initial width of dialog. Displayed in px if value is a number; otherwise, displayed in specified CSS unit. */\n width?: string | number;\n /** Initial height of dialog. Displayed in px if value is a number; otherwise, displayed in specified CSS unit. */\n height?: string | number;\n /** Minimum width that the dialog may be resized to. Displayed in px if value is a number; otherwise, displayed in specified CSS unit. */\n minWidth?: string | number;\n /** Minimum height that the dialog may be resized to. Displayed in px if value is a number; otherwise, displayed in specified CSS unit. */\n minHeight?: string | number;\n /** Maximum width that the dialog may be resized to. Displayed in px if value is a number; otherwise, displayed in specified CSS unit. */\n maxWidth?: string | number;\n /** Maximum height that the dialog may be resized to. Displayed in px if value is a number; otherwise, displayed in specified CSS unit. */\n maxHeight?: string | number;\n}\n\n/** The GenericUiEvent is the base event class for UI events that target a specific component, as identified in uiComponentId.\n * @public\n */\nexport class GenericUiEvent extends BeUiEvent<GenericUiEventArgs> { }\n\n/** Flags that control enabling/disabling certain UI features\n * @public\n */\nexport interface UiFlags {\n /** if true then Ctrl+F2 will show popup key-in palette */\n allowKeyinPalette?: boolean;\n}\n\n/** The UiAdmin controls various UI components and is callable from IModelApp.uiAdmin in the core-frontend package.\n * @public\n */\nexport class UiAdmin {\n private _featureFlags: UiFlags = {};\n private static _messagePresenter?: MessagePresenter;\n\n /** The MessagePresenter used to display messages. */\n public static get messagePresenter(): MessagePresenter {\n if (!UiAdmin._messagePresenter) {\n const error = new BentleyError(BentleyStatus.ERROR, \"UiAdmin.messagePresenter not set\") as BentleyErrorWithCategory;\n error.category = \"messagePresenter\";\n throw error;\n }\n\n return UiAdmin._messagePresenter;\n }\n public static set messagePresenter(mp: MessagePresenter) {\n UiAdmin._messagePresenter = mp;\n }\n\n public get featureFlags(): UiFlags {\n return { ...this._featureFlags }; // return copy so no direct access to modify value\n }\n\n public updateFeatureFlags(uiFlags: UiFlags) {\n this._featureFlags = { ...this._featureFlags, ...uiFlags };\n }\n\n /** @internal */\n public onInitialized() { }\n\n /** Get the cursor X and Y position. */\n public get cursorPosition(): XAndY { return { x: 0, y: 0 }; }\n\n /** Create a PointProps object.\n * @deprecated in 4.2.0 - might be removed in next major version. Please use @core/geometry [[XAndY]] or a custom implementation.\n */\n public createXAndY(x: number, y: number): XAndY { return { x, y }; }\n\n /** Determines if focus is set to Home */\n public get isFocusOnHome(): boolean { return false; }\n\n /** Sets focus to Home */\n public setFocusToHome(): void { }\n\n /** Show a context menu at a particular location.\n * @param _menuItemsProps Properties of the menu items to display.\n * @param _location Location of the context menu, relative to the origin of htmlElement or the window.\n * @param _htmlElement The HTMLElement that anchors the context menu. If undefined, the location is relative to the overall window.\n * @return true if the menu was displayed, false if the menu could not be displayed.\n */\n public showContextMenu(_menuItemsProps: AbstractMenuItemProps[], _location: XAndY, _htmlElement?: HTMLElement): boolean {\n return false;\n }\n\n /** Show a Toolbar at a particular location.\n * @param _toolbarProps Properties of the Toolbar to display.\n * @param _location Location of the Toolbar, relative to the origin of htmlElement or the window.\n * @param _offset Offset of the Toolbar from the location.\n * @param _onItemExecuted Function invoked after a Toolbar item is executed\n * @param _onCancel Function invoked when the Escape key is pressed or a click occurs outside the Toolbar\n * @param _relativePosition Position relative to the given location. Defaults to TopRight.\n * @param _htmlElement The HTMLElement that anchors the Toolbar. If undefined, the location is relative to the overall window.\n * @return true if the Toolbar was displayed, false if the Toolbar could not be displayed.\n */\n public showToolbar(\n _toolbarProps: AbstractToolbarProps, _location: XAndY, _offset: XAndY, _onItemExecuted: OnItemExecutedFunc, _onCancel: OnCancelFunc,\n _relativePosition?: RelativePosition, _htmlElement?: HTMLElement): boolean {\n return false;\n }\n\n /** Hides the toolbar. */\n public hideToolbar(): boolean { return false; }\n\n /** Show a menu button at a particular location. A menu button opens a context menu.\n * @param _id Id of the menu button. Multiple menu buttons may be displayed.\n * @param _menuItemsProps Properties of the menu items to display.\n * @param _location Location of the context menu, relative to the origin of htmlElement or the window.\n * @param _htmlElement The HTMLElement that anchors the context menu. If undefined, the location is relative to the overall window.\n * @return true if the button was displayed, false if the button could not be displayed.\n */\n public showMenuButton(_id: string, _menuItemsProps: AbstractMenuItemProps[], _location: XAndY, _htmlElement?: HTMLElement): boolean {\n return false;\n }\n\n /** Hides a menu button.\n * @param _id Id of the menu button. Multiple menu buttons may be displayed.\n * @return true if the menu was hidden, false if the menu could not be hidden.\n */\n public hideMenuButton(_id: string): boolean { return false; }\n\n /** Show a calculator at a particular location.\n * @param _initialValue Value initially displayed in the calculator.\n * @param _resultIcon Icon displayed to the left of the value.\n * @param _location Location of the calculator, relative to the origin of htmlElement or the window.\n * @param _onCommit Function called when the OK button or the Enter key is pressed.\n * @param _onCancel Function called when the Cancel button or the Escape key is pressed.\n * @param _htmlElement The HTMLElement that anchors the context menu. If undefined, the location is relative to the overall window.\n * @return true if the calculator was displayed, false if the calculator could not be displayed.\n */\n public showCalculator(_initialValue: number, _resultIcon: string, _location: XAndY, _onCommit: OnNumberCommitFunc, _onCancel: OnCancelFunc, _htmlElement?: HTMLElement): boolean {\n return false;\n }\n\n /** Hides the calculator. */\n public hideCalculator(): boolean { return false; }\n\n /** Show an input editor for an angle value at a particular location.\n * @param _initialValue Value initially displayed in the editor.\n * @param _location Location of the editor, relative to the origin of htmlElement or the window.\n * @param _onCommit Function called when the OK button or the Enter key is pressed.\n * @param _onCancel Function called when the Cancel button or the Escape key is pressed.\n * @param _htmlElement The HTMLElement that anchors the context menu. If undefined, the location is relative to the overall window.\n * @return true if the editor was displayed, false if the editor could not be displayed.\n */\n public showAngleEditor(_initialValue: number, _location: XAndY, _onCommit: OnNumberCommitFunc, _onCancel: OnCancelFunc, _htmlElement?: HTMLElement): boolean {\n return false;\n }\n\n /** Show an input editor for a length value at a particular location.\n * @param _initialValue Value initially displayed in the editor.\n * @param _location Location of the editor, relative to the origin of htmlElement or the window.\n * @param _onCommit Function called when the OK button or the Enter key is pressed.\n * @param _onCancel Function called when the Cancel button or the Escape key is pressed.\n * @param _htmlElement The HTMLElement that anchors the context menu. If undefined, the location is relative to the overall window.\n * @return true if the editor was displayed, false if the editor could not be displayed.\n */\n public showLengthEditor(_initialValue: number, _location: XAndY, _onCommit: OnNumberCommitFunc, _onCancel: OnCancelFunc, _htmlElement?: HTMLElement): boolean {\n return false;\n }\n\n /** Show an input editor for a height value at a particular location.\n * @param _initialValue Value initially displayed in the editor.\n * @param _location Location of the editor, relative to the origin of htmlElement or the window.\n * @param _onCommit Function called when the OK button or the Enter key is pressed.\n * @param _onCancel Function called when the Cancel button or the Escape key is pressed.\n * @param _htmlElement The HTMLElement that anchors the context menu. If undefined, the location is relative to the overall window.\n * @return true if the editor was displayed, false if the editor could not be displayed.\n */\n public showHeightEditor(_initialValue: number, _location: XAndY, _onCommit: OnNumberCommitFunc, _onCancel: OnCancelFunc, _htmlElement?: HTMLElement): boolean {\n return false;\n }\n\n /** Show an input editor for a primitive value at a particular location.\n * @param _initialValue Value initially displayed in the editor.\n * @param _propertyDescription Description of the primitive value property.\n * @param _location Location of the editor, relative to the origin of htmlElement or the window.\n * @param _onCommit Function called when the OK button or the Enter key is pressed.\n * @param _onCancel Function called when the Cancel button or the Escape key is pressed.\n * @param _htmlElement The HTMLElement that anchors the context menu. If undefined, the location is relative to the overall window.\n * @return true if the editor was displayed, false if the editor could not be displayed.\n */\n public showInputEditor(_initialValue: Primitives.Value, _propertyDescription: PropertyDescription, _location: XAndY, _onCommit: OnValueCommitFunc, _onCancel: OnCancelFunc, _htmlElement?: HTMLElement): boolean {\n return false;\n }\n\n /** Hides the input editor. */\n public hideInputEditor(): boolean { return false; }\n\n /** Show an HTML element at a particular location.\n * @param _displayElement The HTMLElement to display\n * @param _location Location of the tool settings, relative to the origin of anchorElement or the window\n * @param _offset Offset of the display element from the location\n * @param _onCancel Function invoked when the Escape key is pressed or a click occurs outside the display element\n * @param _relativePosition Position relative to the given location. Defaults to TopRight.\n * @param _anchorElement The HTMLElement that anchors the display element. If undefined, the location is relative to the overall window.\n * @return true if the display element was displayed, false if the display element could not be displayed.\n */\n public showHTMLElement(\n _displayElement: HTMLElement, _location: XAndY, _offset: XAndY, _onCancel: OnCancelFunc,\n _relativePosition?: RelativePosition, _anchorElement?: HTMLElement): boolean {\n return false;\n }\n\n /** Hides the HTML Element. */\n public hideHTMLElement(): boolean { return false; }\n\n /** Show a Card containing content, a title and a toolbar at a particular location.\n * @param _content The HTMLElement of the content to display\n * @param _title Title to display at the top of the card.\n * @param _toolbarProps Properties of the Toolbar to display.\n * @param _location Location of the Card, relative to the origin of anchorElement or the window.\n * @param _offset Offset of the Card from the location.\n * @param _onItemExecuted Function invoked after a Toolbar item is executed\n * @param _onCancel Function invoked when the Escape key is pressed or a click occurs outside the Card\n * @param _relativePosition Position relative to the given location. Defaults to TopRight.\n * @param _anchorElement The HTMLElement that anchors the Card. If undefined, the location is relative to the overall window.\n * @return true if the Card was displayed, false if the Card could not be displayed.\n */\n public showCard(\n _content: HTMLElement, _title: string | PropertyRecord | undefined, _toolbarProps: AbstractToolbarProps | undefined,\n _location: XAndY, _offset: XAndY, _onItemExecuted: OnItemExecutedFunc, _onCancel: OnCancelFunc,\n _relativePosition?: RelativePosition, _anchorElement?: HTMLElement): boolean {\n return false;\n }\n\n /** Hides the Card. */\n public hideCard(): boolean { return false; }\n\n /** Opens a Tool Settings Ui popup at a particular location.\n * @param _dataProvider The UiDataProvider for the tool settings\n * @param _location Location of the tool settings, relative to the origin of anchorElement or the window\n * @param _offset Offset of the tool settings from the location\n * @param _onCancel Function invoked when the Escape key is pressed or a click occurs outside the tool settings\n * @param _relativePosition Position relative to the given location. Defaults to TopRight.\n * @param _anchorElement The HTMLElement that anchors the tool settings. If undefined, the location is relative to the overall window.\n * @return true if the tool settings were displayed, false if the tool settings could not be displayed.\n */\n public openToolSettingsPopup(\n _dataProvider: UiDataProvider, _location: XAndY, _offset: XAndY, _onCancel: OnCancelFunc,\n _relativePosition?: RelativePosition, _anchorElement?: HTMLElement): boolean {\n return false;\n }\n\n /** Closes the Tool Settings Ui popup. */\n public closeToolSettingsPopup(): boolean { return false; }\n\n /** Show the Keyin Palette to display all support Tool key-ins.\n * @param _htmlElement The HTMLElement that anchors the Keyin Palette. If undefined, the location is relative to the overall window.\n * @return true if the Keyin Palette was displayed, false if it could not be displayed.\n */\n public showKeyinPalette(_htmlElement?: HTMLElement): boolean { return false; }\n\n /** Hides the Keyin Palette. */\n public hideKeyinPalette(): boolean { return false; }\n\n /** Send a UI event */\n public static sendUiEvent(args: GenericUiEventArgs) {\n UiAdmin.onGenericUiEvent.emit(args);\n }\n /** GenericUiEvent */\n public static readonly onGenericUiEvent = new GenericUiEvent();\n\n /** Opens a Dialog and automatically populates it using the properties defined by the UiDataProvider.\n * @param _uiDataProvider The DialogLayoutDataProvider for the dialog\n * @param _title Specify title for dialog.\n * @param _isModal Specify if the dialog is opened as a modal or modeless.\n * @param _id Id of the dialog that is used to close it.\n * @param _optionalProps Optional props for Dialog construction.\n * @return true if the tool settings were displayed, false if the tool settings could not be displayed.\n */\n public openDialog(_uiDataProvider: DialogLayoutDataProvider, _title: string, _isModal: boolean, _id: string,\n _optionalProps?: DialogProps): boolean {\n return false;\n }\n\n /** Closes the Dialog with a given Id. */\n public closeDialog(_dialogId: string): boolean { return false; }\n}\n"]}

@@ -5,3 +5,3 @@ /** @packageDocumentation

/** Interface that returns indices of matches
* @public @deprecated in 4.3.0 - will not be removed until after 2026-06-13. A rarely used interface. If needed, please add a custom implementation.
* @public @deprecated in 4.3.0 - might be removed in next major version. A rarely used interface. If needed, please add a custom implementation.
*/

@@ -19,5 +19,5 @@ export interface IMatch {

* Useful in cases where the target is words (e.g. command labels)
* @internal @deprecated in 4.3 - will not be removed until after 2026-06-13. Use `matchesWords` from @itwin/core-react instead. Though internal, this requires deprecation due to known public usage in @itwin/core-react.
* @internal @deprecated in 4.3 - might be removed in next major version. Use `matchesWords` from @itwin/core-react instead. Though internal, this requires deprecation due to known public usage in @itwin/core-react.
*/
export declare function matchesWords(word: string, target: string, contiguous?: boolean): IMatch[] | null;
//# sourceMappingURL=filters.d.ts.map

@@ -50,3 +50,3 @@ /*---------------------------------------------------------------------------------------------

* Useful in cases where the target is words (e.g. command labels)
* @internal @deprecated in 4.3 - will not be removed until after 2026-06-13. Use `matchesWords` from @itwin/core-react instead. Though internal, this requires deprecation due to known public usage in @itwin/core-react.
* @internal @deprecated in 4.3 - might be removed in next major version. Use `matchesWords` from @itwin/core-react instead. Though internal, this requires deprecation due to known public usage in @itwin/core-react.
*/

@@ -53,0 +53,0 @@ export function matchesWords(word, target, contiguous = false) {

@@ -1,1 +0,1 @@

{"version":3,"file":"filters.js","sourceRoot":"","sources":["../../../../../src/appui-abstract/utils/filter/filters.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 Utilities\n */\n\n// file copied from https://github.com/microsoft/vscode/blob/master/src/vs/base/common/filters.ts\n/* eslint-disable @typescript-eslint/no-deprecated */\n\n/** Interface that returns indices of matches\n * @public @deprecated in 4.3.0 - will not be removed until after 2026-06-13. A rarely used interface. If needed, please add a custom implementation.\n */\nexport interface IMatch {\n start: number;\n end: number;\n}\n\nenum CharCode {\n Space = 32,\n Tab = 9,\n LineFeed = 10,\n CarriageReturn = 13\n}\n\nfunction isWhitespace(code: number): boolean {\n return (\n code === CharCode.Space\n || code === CharCode.Tab\n || code === CharCode.LineFeed\n || code === CharCode.CarriageReturn\n );\n}\nconst wordSeparators = new Set<number>();\n'`~!@#$%^&*()-=+[{]}\\\\|;:\\'\",.<>/?'\n .split(\"\")\n .forEach((s) => wordSeparators.add(s.charCodeAt(0)));\n\nfunction isWordSeparator(code: number): boolean {\n return isWhitespace(code) || wordSeparators.has(code);\n}\n\nfunction charactersMatch(codeA: number, codeB: number): boolean {\n return (codeA === codeB) || (isWordSeparator(codeA) && isWordSeparator(codeB));\n}\n\nfunction join(head: IMatch, tail: IMatch[]): IMatch[] {\n if (tail.length === 0) {\n tail = [head];\n } else if (head.end === tail[0].start) {\n tail[0].start = head.start;\n } else {\n tail.unshift(head);\n }\n return tail;\n}\n\n/**\n * Matches beginning of words supporting non-ASCII languages.\n * @param word Filter string\n * @param target String being searched\n * @param contiguous - If true the filter string must be found \"contiguous\" in the searched string (E.g. \"pul\" will match \"Git: Pull\").\n * Otherwise also matches sub string of the word with beginnings of the words in the target (e.g. \"gp\" or \"g p\" will match \"Git: Pull\").\n * Useful in cases where the target is words (e.g. command labels)\n * @internal @deprecated in 4.3 - will not be removed until after 2026-06-13. Use `matchesWords` from @itwin/core-react instead. Though internal, this requires deprecation due to known public usage in @itwin/core-react.\n */\nexport function matchesWords(word: string, target: string, contiguous: boolean = false): IMatch[] | null {\n if (!target || target.length === 0) {\n return null;\n }\n\n let result: IMatch[] | null = null;\n let i = 0;\n\n word = word.toLowerCase();\n target = target.toLowerCase();\n while (i < target.length && (result = _matchesWords(word, target, 0, i, contiguous)) === null) {\n i = nextWord(target, i + 1);\n }\n\n return result;\n}\n\nfunction _matchesWords(word: string, target: string, i: number, j: number, contiguous: boolean): IMatch[] | null {\n if (i === word.length) {\n return [];\n } else if (j === target.length) {\n return null;\n } else if (!charactersMatch(word.charCodeAt(i), target.charCodeAt(j))) {\n return null;\n } else {\n let result: IMatch[] | null = null;\n let nextWordIndex = j + 1;\n result = _matchesWords(word, target, i + 1, j + 1, contiguous);\n // istanbul ignore else\n if (!contiguous) {\n while (!result && (nextWordIndex = nextWord(target, nextWordIndex)) < target.length) {\n result = _matchesWords(word, target, i + 1, nextWordIndex, contiguous);\n nextWordIndex++;\n }\n }\n return result === null ? null : join({ start: j, end: j + 1 }, result);\n }\n}\n\nfunction nextWord(word: string, start: number): number {\n for (let i = start; i < word.length; i++) {\n if (isWordSeparator(word.charCodeAt(i)) ||\n (i > 0 && isWordSeparator(word.charCodeAt(i - 1)))) {\n return i;\n }\n }\n return word.length;\n}\n"]}
{"version":3,"file":"filters.js","sourceRoot":"","sources":["../../../../../src/appui-abstract/utils/filter/filters.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 Utilities\n */\n\n// file copied from https://github.com/microsoft/vscode/blob/master/src/vs/base/common/filters.ts\n/* eslint-disable @typescript-eslint/no-deprecated */\n\n/** Interface that returns indices of matches\n * @public @deprecated in 4.3.0 - might be removed in next major version. A rarely used interface. If needed, please add a custom implementation.\n */\nexport interface IMatch {\n start: number;\n end: number;\n}\n\nenum CharCode {\n Space = 32,\n Tab = 9,\n LineFeed = 10,\n CarriageReturn = 13\n}\n\nfunction isWhitespace(code: number): boolean {\n return (\n code === CharCode.Space\n || code === CharCode.Tab\n || code === CharCode.LineFeed\n || code === CharCode.CarriageReturn\n );\n}\nconst wordSeparators = new Set<number>();\n'`~!@#$%^&*()-=+[{]}\\\\|;:\\'\",.<>/?'\n .split(\"\")\n .forEach((s) => wordSeparators.add(s.charCodeAt(0)));\n\nfunction isWordSeparator(code: number): boolean {\n return isWhitespace(code) || wordSeparators.has(code);\n}\n\nfunction charactersMatch(codeA: number, codeB: number): boolean {\n return (codeA === codeB) || (isWordSeparator(codeA) && isWordSeparator(codeB));\n}\n\nfunction join(head: IMatch, tail: IMatch[]): IMatch[] {\n if (tail.length === 0) {\n tail = [head];\n } else if (head.end === tail[0].start) {\n tail[0].start = head.start;\n } else {\n tail.unshift(head);\n }\n return tail;\n}\n\n/**\n * Matches beginning of words supporting non-ASCII languages.\n * @param word Filter string\n * @param target String being searched\n * @param contiguous - If true the filter string must be found \"contiguous\" in the searched string (E.g. \"pul\" will match \"Git: Pull\").\n * Otherwise also matches sub string of the word with beginnings of the words in the target (e.g. \"gp\" or \"g p\" will match \"Git: Pull\").\n * Useful in cases where the target is words (e.g. command labels)\n * @internal @deprecated in 4.3 - might be removed in next major version. Use `matchesWords` from @itwin/core-react instead. Though internal, this requires deprecation due to known public usage in @itwin/core-react.\n */\nexport function matchesWords(word: string, target: string, contiguous: boolean = false): IMatch[] | null {\n if (!target || target.length === 0) {\n return null;\n }\n\n let result: IMatch[] | null = null;\n let i = 0;\n\n word = word.toLowerCase();\n target = target.toLowerCase();\n while (i < target.length && (result = _matchesWords(word, target, 0, i, contiguous)) === null) {\n i = nextWord(target, i + 1);\n }\n\n return result;\n}\n\nfunction _matchesWords(word: string, target: string, i: number, j: number, contiguous: boolean): IMatch[] | null {\n if (i === word.length) {\n return [];\n } else if (j === target.length) {\n return null;\n } else if (!charactersMatch(word.charCodeAt(i), target.charCodeAt(j))) {\n return null;\n } else {\n let result: IMatch[] | null = null;\n let nextWordIndex = j + 1;\n result = _matchesWords(word, target, i + 1, j + 1, contiguous);\n // istanbul ignore else\n if (!contiguous) {\n while (!result && (nextWordIndex = nextWord(target, nextWordIndex)) < target.length) {\n result = _matchesWords(word, target, i + 1, nextWordIndex, contiguous);\n nextWordIndex++;\n }\n }\n return result === null ? null : join({ start: j, end: j + 1 }, result);\n }\n}\n\nfunction nextWord(word: string, start: number): number {\n for (let i = start; i < word.length; i++) {\n if (isWordSeparator(word.charCodeAt(i)) ||\n (i > 0 && isWordSeparator(word.charCodeAt(i - 1)))) {\n return i;\n }\n }\n return word.length;\n}\n"]}

@@ -5,3 +5,3 @@ /** @packageDocumentation

/** Creates an IconSpec with an SVG source and gets the SVG source from an IconSpec.
* @public @deprecated in 4.3 - will not be removed until after 2026-06-13. AppUI libraries >= 4.7.x support loading SVGs sources without prefixes, eliminating the need for these utilities.
* @public @deprecated in 4.3 - might be removed in next major version. AppUI libraries >= 4.7.x support loading SVGs sources without prefixes, eliminating the need for these utilities.
*/

@@ -13,7 +13,7 @@ export declare class IconSpecUtilities {

/** Create an IconSpec for an SVG loaded into web component with svg-loader
* @public @deprecated in 4.3 - will not be removed until after 2026-06-13. AppUI libraries > 4.7.x support loading SVGs sources without prefixes, eliminating the need for this utility.
* @public @deprecated in 4.3 - might be removed in next major version. AppUI libraries > 4.7.x support loading SVGs sources without prefixes, eliminating the need for this utility.
*/
static createWebComponentIconSpec(srcString: string): string;
/** Get the SVG Source from an svg-loader IconSpec
* @public @deprecated in 4.3 - will not be removed until after 2026-06-13. AppUI libraries > 4.7.x support loading SVGs sources without prefixes, eliminating the need for this utility.
* @public @deprecated in 4.3 - might be removed in next major version. AppUI libraries > 4.7.x support loading SVGs sources without prefixes, eliminating the need for this utility.
*/

@@ -20,0 +20,0 @@ static getWebComponentSource(iconSpec: string): string | undefined;

@@ -10,3 +10,3 @@ /*---------------------------------------------------------------------------------------------

/** Creates an IconSpec with an SVG source and gets the SVG source from an IconSpec.
* @public @deprecated in 4.3 - will not be removed until after 2026-06-13. AppUI libraries >= 4.7.x support loading SVGs sources without prefixes, eliminating the need for these utilities.
* @public @deprecated in 4.3 - might be removed in next major version. AppUI libraries >= 4.7.x support loading SVGs sources without prefixes, eliminating the need for these utilities.
*/

@@ -18,3 +18,3 @@ export class IconSpecUtilities {

/** Create an IconSpec for an SVG loaded into web component with svg-loader
* @public @deprecated in 4.3 - will not be removed until after 2026-06-13. AppUI libraries > 4.7.x support loading SVGs sources without prefixes, eliminating the need for this utility.
* @public @deprecated in 4.3 - might be removed in next major version. AppUI libraries > 4.7.x support loading SVGs sources without prefixes, eliminating the need for this utility.
*/

@@ -25,3 +25,3 @@ static createWebComponentIconSpec(srcString) {

/** Get the SVG Source from an svg-loader IconSpec
* @public @deprecated in 4.3 - will not be removed until after 2026-06-13. AppUI libraries > 4.7.x support loading SVGs sources without prefixes, eliminating the need for this utility.
* @public @deprecated in 4.3 - might be removed in next major version. AppUI libraries > 4.7.x support loading SVGs sources without prefixes, eliminating the need for this utility.
*/

@@ -28,0 +28,0 @@ static getWebComponentSource(iconSpec) {

@@ -1,1 +0,1 @@

{"version":3,"file":"IconSpecUtilities.js","sourceRoot":"","sources":["../../../../src/appui-abstract/utils/IconSpecUtilities.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH,qDAAqD;AAErD;;GAEG;AACH,MAAM,OAAO,iBAAiB;IAC5B,+DAA+D;IACxD,MAAM,CAAU,UAAU,GAAG,MAAM,CAAC;IACpC,MAAM,CAAU,oBAAoB,GAAG,SAAS,CAAC;IAExD;;MAEE;IACK,MAAM,CAAC,0BAA0B,CAAC,SAAiB;QACxD,OAAO,GAAG,iBAAiB,CAAC,oBAAoB,GAAG,SAAS,EAAE,CAAC;IACjE,CAAC;IAED;;MAEE;IAEK,MAAM,CAAC,qBAAqB,CAAC,QAAgB;QAClD,IAAI,QAAQ,CAAC,UAAU,CAAC,iBAAiB,CAAC,oBAAoB,CAAC,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvF,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC3B,CAAC;QAED,OAAO,SAAS,CAAC;IAEnB,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Utilities\n */\n\n/* eslint-disable @typescript-eslint/no-deprecated */\n\n/** Creates an IconSpec with an SVG source and gets the SVG source from an IconSpec.\n * @public @deprecated in 4.3 - will not be removed until after 2026-06-13. AppUI libraries >= 4.7.x support loading SVGs sources without prefixes, eliminating the need for these utilities.\n */\nexport class IconSpecUtilities {\n /** Prefix for an SVG IconSpec loaded with the Sprite loader */\n public static readonly SVG_PREFIX = \"svg:\";\n public static readonly WEB_COMPONENT_PREFIX = \"webSvg:\";\n\n /** Create an IconSpec for an SVG loaded into web component with svg-loader\n * @public @deprecated in 4.3 - will not be removed until after 2026-06-13. AppUI libraries > 4.7.x support loading SVGs sources without prefixes, eliminating the need for this utility.\n */\n public static createWebComponentIconSpec(srcString: string): string {\n return `${IconSpecUtilities.WEB_COMPONENT_PREFIX}${srcString}`;\n }\n\n /** Get the SVG Source from an svg-loader IconSpec\n * @public @deprecated in 4.3 - will not be removed until after 2026-06-13. AppUI libraries > 4.7.x support loading SVGs sources without prefixes, eliminating the need for this utility.\n */\n\n public static getWebComponentSource(iconSpec: string): string | undefined {\n if (iconSpec.startsWith(IconSpecUtilities.WEB_COMPONENT_PREFIX) && iconSpec.length > 7) {\n return iconSpec.slice(7);\n }\n\n return undefined;\n\n }\n}\n"]}
{"version":3,"file":"IconSpecUtilities.js","sourceRoot":"","sources":["../../../../src/appui-abstract/utils/IconSpecUtilities.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH,qDAAqD;AAErD;;GAEG;AACH,MAAM,OAAO,iBAAiB;IAC5B,+DAA+D;IACxD,MAAM,CAAU,UAAU,GAAG,MAAM,CAAC;IACpC,MAAM,CAAU,oBAAoB,GAAG,SAAS,CAAC;IAExD;;MAEE;IACK,MAAM,CAAC,0BAA0B,CAAC,SAAiB;QACxD,OAAO,GAAG,iBAAiB,CAAC,oBAAoB,GAAG,SAAS,EAAE,CAAC;IACjE,CAAC;IAED;;MAEE;IAEK,MAAM,CAAC,qBAAqB,CAAC,QAAgB;QAClD,IAAI,QAAQ,CAAC,UAAU,CAAC,iBAAiB,CAAC,oBAAoB,CAAC,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvF,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC3B,CAAC;QAED,OAAO,SAAS,CAAC;IAEnB,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Utilities\n */\n\n/* eslint-disable @typescript-eslint/no-deprecated */\n\n/** Creates an IconSpec with an SVG source and gets the SVG source from an IconSpec.\n * @public @deprecated in 4.3 - might be removed in next major version. AppUI libraries >= 4.7.x support loading SVGs sources without prefixes, eliminating the need for these utilities.\n */\nexport class IconSpecUtilities {\n /** Prefix for an SVG IconSpec loaded with the Sprite loader */\n public static readonly SVG_PREFIX = \"svg:\";\n public static readonly WEB_COMPONENT_PREFIX = \"webSvg:\";\n\n /** Create an IconSpec for an SVG loaded into web component with svg-loader\n * @public @deprecated in 4.3 - might be removed in next major version. AppUI libraries > 4.7.x support loading SVGs sources without prefixes, eliminating the need for this utility.\n */\n public static createWebComponentIconSpec(srcString: string): string {\n return `${IconSpecUtilities.WEB_COMPONENT_PREFIX}${srcString}`;\n }\n\n /** Get the SVG Source from an svg-loader IconSpec\n * @public @deprecated in 4.3 - might be removed in next major version. AppUI libraries > 4.7.x support loading SVGs sources without prefixes, eliminating the need for this utility.\n */\n\n public static getWebComponentSource(iconSpec: string): string | undefined {\n if (iconSpec.startsWith(IconSpecUtilities.WEB_COMPONENT_PREFIX) && iconSpec.length > 7) {\n return iconSpec.slice(7);\n }\n\n return undefined;\n\n }\n}\n"]}

@@ -6,5 +6,5 @@ /** @packageDocumentation

* @internal
* @deprecated in 4.3 - will not be removed until after 2026-06-13. Please use your own implementation in the future. Though internal, this requires deprecation due to known public usage in @itwin/core-react.
* @deprecated in 4.3 - might be removed in next major version. Please use your own implementation in the future. Though internal, this requires deprecation due to known public usage in @itwin/core-react.
*/
export declare const getClassName: (obj: any) => string;
//# sourceMappingURL=misc.d.ts.map

@@ -10,3 +10,3 @@ /*---------------------------------------------------------------------------------------------

* @internal
* @deprecated in 4.3 - will not be removed until after 2026-06-13. Please use your own implementation in the future. Though internal, this requires deprecation due to known public usage in @itwin/core-react.
* @deprecated in 4.3 - might be removed in next major version. Please use your own implementation in the future. Though internal, this requires deprecation due to known public usage in @itwin/core-react.
*/

@@ -13,0 +13,0 @@ export const getClassName = (obj) => {

@@ -1,1 +0,1 @@

{"version":3,"file":"misc.js","sourceRoot":"","sources":["../../../../src/appui-abstract/utils/misc.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH;;;GAGG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,GAAQ,EAAU,EAAE;IAC/C,IAAI,SAAS,GAAG,EAAE,CAAC;IAEnB,IAAI,GAAG,EAAE,CAAC;QACR,IAAI,GAAG,CAAC,IAAI;YACV,SAAS,GAAG,GAAG,CAAC,IAAI,CAAC;aAClB,CAAC;YACJ,uBAAuB;YACvB,IAAI,GAAG,CAAC,WAAW,IAAI,GAAG,CAAC,WAAW,CAAC,IAAI;gBACzC,SAAS,GAAG,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC;QACrC,CAAC;IACH,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Utilities\n */\n\n/** Gets the class name for an object.\n * @internal\n * @deprecated in 4.3 - will not be removed until after 2026-06-13. Please use your own implementation in the future. Though internal, this requires deprecation due to known public usage in @itwin/core-react.\n */\nexport const getClassName = (obj: any): string => {\n let className = \"\";\n\n if (obj) {\n if (obj.name)\n className = obj.name;\n else {\n // istanbul ignore else\n if (obj.constructor && obj.constructor.name)\n className = obj.constructor.name;\n }\n }\n\n return className;\n};\n\n"]}
{"version":3,"file":"misc.js","sourceRoot":"","sources":["../../../../src/appui-abstract/utils/misc.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH;;;GAGG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,GAAQ,EAAU,EAAE;IAC/C,IAAI,SAAS,GAAG,EAAE,CAAC;IAEnB,IAAI,GAAG,EAAE,CAAC;QACR,IAAI,GAAG,CAAC,IAAI;YACV,SAAS,GAAG,GAAG,CAAC,IAAI,CAAC;aAClB,CAAC;YACJ,uBAAuB;YACvB,IAAI,GAAG,CAAC,WAAW,IAAI,GAAG,CAAC,WAAW,CAAC,IAAI;gBACzC,SAAS,GAAG,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC;QACrC,CAAC;IACH,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Utilities\n */\n\n/** Gets the class name for an object.\n * @internal\n * @deprecated in 4.3 - might be removed in next major version. Please use your own implementation in the future. Though internal, this requires deprecation due to known public usage in @itwin/core-react.\n */\nexport const getClassName = (obj: any): string => {\n let className = \"\";\n\n if (obj) {\n if (obj.name)\n className = obj.name;\n else {\n // istanbul ignore else\n if (obj.constructor && obj.constructor.name)\n className = obj.constructor.name;\n }\n }\n\n return className;\n};\n\n"]}

@@ -5,3 +5,3 @@ /** @packageDocumentation

/** Describes 2d points.
* @public @deprecated in 4.2.0 - will not be removed until after 2026-06-13. Use @core/geometry [[Geometry.XAndY]] or your own custom type.
* @public @deprecated in 4.2.0 - might be removed in next major version. Use @core/geometry [[Geometry.XAndY]] or your own custom type.
*/

@@ -8,0 +8,0 @@ export interface PointProps {

@@ -1,1 +0,1 @@

{"version":3,"file":"PointProps.js","sourceRoot":"","sources":["../../../../src/appui-abstract/utils/PointProps.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG","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 Utilities\n */\n\n/** Describes 2d points.\n * @public @deprecated in 4.2.0 - will not be removed until after 2026-06-13. Use @core/geometry [[Geometry.XAndY]] or your own custom type.\n */\nexport interface PointProps {\n readonly x: number;\n readonly y: number;\n}\n"]}
{"version":3,"file":"PointProps.js","sourceRoot":"","sources":["../../../../src/appui-abstract/utils/PointProps.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG","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 Utilities\n */\n\n/** Describes 2d points.\n * @public @deprecated in 4.2.0 - might be removed in next major version. Use @core/geometry [[Geometry.XAndY]] or your own custom type.\n */\nexport interface PointProps {\n readonly x: number;\n readonly y: number;\n}\n"]}

@@ -6,3 +6,3 @@ /** @packageDocumentation

/** iTwin.js UI UiError class is a subclass of BentleyError. Errors are logged.
* @public @deprecated in 4.3 - will not be removed until after 2026-06-13. Use [[Bentley.BentleyError]] instead.
* @public @deprecated in 4.3 - might be removed in next major version. Use [[Bentley.BentleyError]] instead.
*/

@@ -9,0 +9,0 @@ export declare class UiError extends BentleyError {

@@ -10,3 +10,3 @@ /*---------------------------------------------------------------------------------------------

/** iTwin.js UI UiError class is a subclass of BentleyError. Errors are logged.
* @public @deprecated in 4.3 - will not be removed until after 2026-06-13. Use [[Bentley.BentleyError]] instead.
* @public @deprecated in 4.3 - might be removed in next major version. Use [[Bentley.BentleyError]] instead.
*/

@@ -13,0 +13,0 @@ export class UiError extends BentleyError {

@@ -1,1 +0,1 @@

{"version":3,"file":"UiError.js","sourceRoot":"","sources":["../../../../src/appui-abstract/utils/UiError.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH,OAAO,EAAE,YAAY,EAAE,aAAa,EAAuB,MAAM,qBAAqB,CAAC;AAEvF;;GAEG;AACH,MAAM,OAAO,OAAQ,SAAQ,YAAY;IAGb;IAD1B,6CAA6C;IAC7C,YAA0B,QAAgB,EAAE,OAAe,EAAE,cAAsB,aAAa,CAAC,KAAK,EAAE,WAAiC;QACvI,KAAK,CAAC,WAAW,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;QADjB,aAAQ,GAAR,QAAQ,CAAQ;IAE1C,CAAC;CACF","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 Utilities\n */\n\nimport { BentleyError, BentleyStatus, GetMetaDataFunction } from \"@itwin/core-bentley\";\n\n/** iTwin.js UI UiError class is a subclass of BentleyError. Errors are logged.\n * @public @deprecated in 4.3 - will not be removed until after 2026-06-13. Use [[Bentley.BentleyError]] instead.\n */\nexport class UiError extends BentleyError {\n\n /** Constructs UiError using BentleyError. */\n public constructor(public category: string, message: string, errorNumber: number = BentleyStatus.ERROR, getMetaData?: GetMetaDataFunction) {\n super(errorNumber, message, getMetaData);\n }\n}\n"]}
{"version":3,"file":"UiError.js","sourceRoot":"","sources":["../../../../src/appui-abstract/utils/UiError.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH,OAAO,EAAE,YAAY,EAAE,aAAa,EAAuB,MAAM,qBAAqB,CAAC;AAEvF;;GAEG;AACH,MAAM,OAAO,OAAQ,SAAQ,YAAY;IAGb;IAD1B,6CAA6C;IAC7C,YAA0B,QAAgB,EAAE,OAAe,EAAE,cAAsB,aAAa,CAAC,KAAK,EAAE,WAAiC;QACvI,KAAK,CAAC,WAAW,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;QADjB,aAAQ,GAAR,QAAQ,CAAQ;IAE1C,CAAC;CACF","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 Utilities\n */\n\nimport { BentleyError, BentleyStatus, GetMetaDataFunction } from \"@itwin/core-bentley\";\n\n/** iTwin.js UI UiError class is a subclass of BentleyError. Errors are logged.\n * @public @deprecated in 4.3 - might be removed in next major version. Use [[Bentley.BentleyError]] instead.\n */\nexport class UiError extends BentleyError {\n\n /** Constructs UiError using BentleyError. */\n public constructor(public category: string, message: string, errorNumber: number = BentleyStatus.ERROR, getMetaData?: GetMetaDataFunction) {\n super(errorNumber, message, getMetaData);\n }\n}\n"]}

@@ -7,3 +7,3 @@ /** @packageDocumentation

* @public
* @deprecated in 4.2 - will not be removed until after 2026-06-13. This type is a duplicate of [[BeUiEvent]], which should be used instead.
* @deprecated in 4.2 - might be removed in next major version. This type is a duplicate of [[BeUiEvent]], which should be used instead.
*/

@@ -10,0 +10,0 @@ export declare class UiEvent<TEventArgs> extends BeUiEvent<TEventArgs> {

@@ -11,3 +11,3 @@ /*---------------------------------------------------------------------------------------------

* @public
* @deprecated in 4.2 - will not be removed until after 2026-06-13. This type is a duplicate of [[BeUiEvent]], which should be used instead.
* @deprecated in 4.2 - might be removed in next major version. This type is a duplicate of [[BeUiEvent]], which should be used instead.
*/

@@ -14,0 +14,0 @@ export class UiEvent extends BeUiEvent {

@@ -1,1 +0,1 @@

{"version":3,"file":"UiEvent.js","sourceRoot":"","sources":["../../../../src/appui-abstract/utils/UiEvent.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEhD;;;GAGG;AACH,MAAM,OAAO,OAAoB,SAAQ,SAAqB;CAAI","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 Utilities\n */\n\nimport { BeUiEvent } from \"@itwin/core-bentley\";\n\n/** iTwin.js UI UiEvent class is a subclass of BeEvent with argument type safety.\n * @public\n * @deprecated in 4.2 - will not be removed until after 2026-06-13. This type is a duplicate of [[BeUiEvent]], which should be used instead.\n */\nexport class UiEvent<TEventArgs> extends BeUiEvent<TEventArgs> { }\n"]}
{"version":3,"file":"UiEvent.js","sourceRoot":"","sources":["../../../../src/appui-abstract/utils/UiEvent.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEhD;;;GAGG;AACH,MAAM,OAAO,OAAoB,SAAQ,SAAqB;CAAI","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 Utilities\n */\n\nimport { BeUiEvent } from \"@itwin/core-bentley\";\n\n/** iTwin.js UI UiEvent class is a subclass of BeEvent with argument type safety.\n * @public\n * @deprecated in 4.2 - might be removed in next major version. This type is a duplicate of [[BeUiEvent]], which should be used instead.\n */\nexport class UiEvent<TEventArgs> extends BeUiEvent<TEventArgs> { }\n"]}

@@ -7,3 +7,3 @@ /** @packageDocumentation

* @public
* @deprecated in 4.2.0 - will not be removed until after 2026-06-13. Please use [[UiSyncEventArgs]] in @itwin/appui-react
* @deprecated in 4.2.0 - might be removed in next major version. Please use [[UiSyncEventArgs]] in @itwin/appui-react
*/

@@ -15,3 +15,3 @@ export interface UiSyncEventArgs {

* @public
* @deprecated in 4.2.0 - will not be removed until after 2026-06-13. Use [[UiSyncEvent]] from @itwin/appui-react.
* @deprecated in 4.2.0 - might be removed in next major version. Use [[UiSyncEvent]] from @itwin/appui-react.
*/

@@ -23,3 +23,3 @@ export declare class UiSyncEvent extends BeUiEvent<UiSyncEventArgs> {

* @public
* @deprecated in 4.2.0 - will not be removed until after 2026-06-13. Use [[SyncUiEventDispatcher]] from @itwin/appui-react.
* @deprecated in 4.2.0 - might be removed in next major version. Use [[SyncUiEventDispatcher]] from @itwin/appui-react.
*/

@@ -26,0 +26,0 @@ export declare class UiEventDispatcher {

@@ -11,3 +11,3 @@ /*---------------------------------------------------------------------------------------------

* @public
* @deprecated in 4.2.0 - will not be removed until after 2026-06-13. Use [[UiSyncEvent]] from @itwin/appui-react.
* @deprecated in 4.2.0 - might be removed in next major version. Use [[UiSyncEvent]] from @itwin/appui-react.
*/

@@ -20,3 +20,3 @@ // eslint-disable-next-line @typescript-eslint/no-deprecated

* @public
* @deprecated in 4.2.0 - will not be removed until after 2026-06-13. Use [[SyncUiEventDispatcher]] from @itwin/appui-react.
* @deprecated in 4.2.0 - might be removed in next major version. Use [[SyncUiEventDispatcher]] from @itwin/appui-react.
*/

@@ -23,0 +23,0 @@ export class UiEventDispatcher {

@@ -1,1 +0,1 @@

{"version":3,"file":"UiEventDispatcher.js","sourceRoot":"","sources":["../../../../src/appui-abstract/utils/UiEventDispatcher.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 Utilities\n */\n\nimport { BeUiEvent } from \"@itwin/core-bentley\";\n\n/** UiSync Event arguments. Contains a set of lower case event Ids.\n * @public\n * @deprecated in 4.2.0 - will not be removed until after 2026-06-13. Please use [[UiSyncEventArgs]] in @itwin/appui-react\n */\nexport interface UiSyncEventArgs {\n eventIds: Set<string>;\n}\n\n/** UiSync Event class.\n * @public\n * @deprecated in 4.2.0 - will not be removed until after 2026-06-13. Use [[UiSyncEvent]] from @itwin/appui-react.\n */\n// eslint-disable-next-line @typescript-eslint/no-deprecated\nexport class UiSyncEvent extends BeUiEvent<UiSyncEventArgs> { }\n\n/** This class is used to send eventIds to interested UI components so the component can determine if it needs\n * to refresh its display by calling setState on itself.\n * @public\n * @deprecated in 4.2.0 - will not be removed until after 2026-06-13. Use [[SyncUiEventDispatcher]] from @itwin/appui-react.\n */\nexport class UiEventDispatcher {\n private _syncEventTimerId: number | undefined;\n private _eventIds: Set<string>;\n private _eventIdAdded;\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n private _uiSyncEvent: UiSyncEvent;\n private _timeoutPeriod;\n private _secondaryTimeoutPeriod;\n\n constructor() {\n this._eventIds = new Set<string>();\n this._eventIdAdded = false;\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n this._uiSyncEvent = new UiSyncEvent();\n this._timeoutPeriod = 100;\n this._secondaryTimeoutPeriod = this._timeoutPeriod / 2;\n }\n\n /** @internal - used for testing only */\n /* istanbul ignore next */\n public setTimeoutPeriod(period: number): void {\n this._timeoutPeriod = period;\n this._secondaryTimeoutPeriod = Math.floor(this._timeoutPeriod / 2);\n if (this._secondaryTimeoutPeriod < 1)\n this._secondaryTimeoutPeriod = 1;\n if (this._syncEventTimerId) {\n window.clearTimeout(this._syncEventTimerId);\n this._syncEventTimerId = undefined;\n }\n if (this._eventIds)\n this._eventIds.clear();\n\n this._eventIdAdded = false;\n }\n\n /** The current timeout period */\n public get timeoutPeriod(): number {\n return this._timeoutPeriod;\n }\n /** Return set of event ids that will be sent to listeners/. */\n public get syncEventIds(): Set<string> {\n return this._eventIds;\n }\n\n /** Return UiSyncEvent so callers can register an event callback. */\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n public get onSyncUiEvent(): UiSyncEvent {\n return this._uiSyncEvent;\n }\n\n /** Immediately trigger sync event processing. */\n public dispatchImmediateSyncUiEvent(eventId: string): void {\n const eventIds = new Set<string>();\n eventIds.add(eventId.toLowerCase());\n this.onSyncUiEvent.emit({ eventIds });\n }\n\n /** Save eventId in Set for processing. */\n public dispatchSyncUiEvent(eventId: string): void {\n // istanbul ignore if\n if (0 === this._timeoutPeriod) {\n return;\n }\n\n this.syncEventIds.add(eventId.toLowerCase());\n if (!this._syncEventTimerId) { // if there is not a timer active, create one\n this._syncEventTimerId = window.setTimeout(() => { this.checkForAdditionalIds(); }, this._timeoutPeriod);\n } else {\n this._eventIdAdded = true;\n }\n }\n\n /** Save multiple eventIds in Set for processing. */\n public dispatchSyncUiEvents(eventIds: string[]): void {\n // istanbul ignore if\n if (0 === this._timeoutPeriod) {\n return;\n }\n\n eventIds.forEach((id) => this.syncEventIds.add(id.toLowerCase()));\n // istanbul ignore else\n if (!this._syncEventTimerId) { // if there is not a timer active, create one\n this._syncEventTimerId = window.setTimeout(() => { this.checkForAdditionalIds(); }, this._timeoutPeriod);\n } else {\n this._eventIdAdded = true;\n }\n }\n\n /** Trigger registered event processing when timer has expired and no addition eventId are added. */\n public checkForAdditionalIds() {\n /* istanbul ignore else */\n if (!this._eventIdAdded) {\n // istanbul ignore else\n if (this._syncEventTimerId) {\n window.clearTimeout(this._syncEventTimerId);\n this._syncEventTimerId = undefined;\n }\n this._eventIdAdded = false;\n // istanbul ignore else\n if (this.syncEventIds.size > 0) {\n const eventIds = new Set<string>();\n this.syncEventIds.forEach((value) => eventIds.add(value));\n this._eventIds.clear();\n this.onSyncUiEvent.emit({ eventIds });\n }\n return;\n }\n\n // istanbul ignore next\n if (this._syncEventTimerId) {\n window.clearTimeout(this._syncEventTimerId);\n this._syncEventTimerId = undefined;\n }\n // istanbul ignore next\n this._eventIdAdded = false;\n // if events have been added before the initial timer expired wait half that time to see if events are still being added.\n // istanbul ignore next\n this._syncEventTimerId = window.setTimeout(() => { this.checkForAdditionalIds(); }, this._secondaryTimeoutPeriod);\n }\n\n /** Checks to see if an eventId of interest is contained in the set of eventIds */\n public hasEventOfInterest(eventIds: Set<string>, idsOfInterest: string[]) {\n /* istanbul ignore else */\n if ((idsOfInterest.length > 0) && idsOfInterest.some((value: string): boolean => eventIds.has(value.toLowerCase())))\n return true;\n return false;\n }\n}\n"]}
{"version":3,"file":"UiEventDispatcher.js","sourceRoot":"","sources":["../../../../src/appui-abstract/utils/UiEventDispatcher.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 Utilities\n */\n\nimport { BeUiEvent } from \"@itwin/core-bentley\";\n\n/** UiSync Event arguments. Contains a set of lower case event Ids.\n * @public\n * @deprecated in 4.2.0 - might be removed in next major version. Please use [[UiSyncEventArgs]] in @itwin/appui-react\n */\nexport interface UiSyncEventArgs {\n eventIds: Set<string>;\n}\n\n/** UiSync Event class.\n * @public\n * @deprecated in 4.2.0 - might be removed in next major version. Use [[UiSyncEvent]] from @itwin/appui-react.\n */\n// eslint-disable-next-line @typescript-eslint/no-deprecated\nexport class UiSyncEvent extends BeUiEvent<UiSyncEventArgs> { }\n\n/** This class is used to send eventIds to interested UI components so the component can determine if it needs\n * to refresh its display by calling setState on itself.\n * @public\n * @deprecated in 4.2.0 - might be removed in next major version. Use [[SyncUiEventDispatcher]] from @itwin/appui-react.\n */\nexport class UiEventDispatcher {\n private _syncEventTimerId: number | undefined;\n private _eventIds: Set<string>;\n private _eventIdAdded;\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n private _uiSyncEvent: UiSyncEvent;\n private _timeoutPeriod;\n private _secondaryTimeoutPeriod;\n\n constructor() {\n this._eventIds = new Set<string>();\n this._eventIdAdded = false;\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n this._uiSyncEvent = new UiSyncEvent();\n this._timeoutPeriod = 100;\n this._secondaryTimeoutPeriod = this._timeoutPeriod / 2;\n }\n\n /** @internal - used for testing only */\n /* istanbul ignore next */\n public setTimeoutPeriod(period: number): void {\n this._timeoutPeriod = period;\n this._secondaryTimeoutPeriod = Math.floor(this._timeoutPeriod / 2);\n if (this._secondaryTimeoutPeriod < 1)\n this._secondaryTimeoutPeriod = 1;\n if (this._syncEventTimerId) {\n window.clearTimeout(this._syncEventTimerId);\n this._syncEventTimerId = undefined;\n }\n if (this._eventIds)\n this._eventIds.clear();\n\n this._eventIdAdded = false;\n }\n\n /** The current timeout period */\n public get timeoutPeriod(): number {\n return this._timeoutPeriod;\n }\n /** Return set of event ids that will be sent to listeners/. */\n public get syncEventIds(): Set<string> {\n return this._eventIds;\n }\n\n /** Return UiSyncEvent so callers can register an event callback. */\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n public get onSyncUiEvent(): UiSyncEvent {\n return this._uiSyncEvent;\n }\n\n /** Immediately trigger sync event processing. */\n public dispatchImmediateSyncUiEvent(eventId: string): void {\n const eventIds = new Set<string>();\n eventIds.add(eventId.toLowerCase());\n this.onSyncUiEvent.emit({ eventIds });\n }\n\n /** Save eventId in Set for processing. */\n public dispatchSyncUiEvent(eventId: string): void {\n // istanbul ignore if\n if (0 === this._timeoutPeriod) {\n return;\n }\n\n this.syncEventIds.add(eventId.toLowerCase());\n if (!this._syncEventTimerId) { // if there is not a timer active, create one\n this._syncEventTimerId = window.setTimeout(() => { this.checkForAdditionalIds(); }, this._timeoutPeriod);\n } else {\n this._eventIdAdded = true;\n }\n }\n\n /** Save multiple eventIds in Set for processing. */\n public dispatchSyncUiEvents(eventIds: string[]): void {\n // istanbul ignore if\n if (0 === this._timeoutPeriod) {\n return;\n }\n\n eventIds.forEach((id) => this.syncEventIds.add(id.toLowerCase()));\n // istanbul ignore else\n if (!this._syncEventTimerId) { // if there is not a timer active, create one\n this._syncEventTimerId = window.setTimeout(() => { this.checkForAdditionalIds(); }, this._timeoutPeriod);\n } else {\n this._eventIdAdded = true;\n }\n }\n\n /** Trigger registered event processing when timer has expired and no addition eventId are added. */\n public checkForAdditionalIds() {\n /* istanbul ignore else */\n if (!this._eventIdAdded) {\n // istanbul ignore else\n if (this._syncEventTimerId) {\n window.clearTimeout(this._syncEventTimerId);\n this._syncEventTimerId = undefined;\n }\n this._eventIdAdded = false;\n // istanbul ignore else\n if (this.syncEventIds.size > 0) {\n const eventIds = new Set<string>();\n this.syncEventIds.forEach((value) => eventIds.add(value));\n this._eventIds.clear();\n this.onSyncUiEvent.emit({ eventIds });\n }\n return;\n }\n\n // istanbul ignore next\n if (this._syncEventTimerId) {\n window.clearTimeout(this._syncEventTimerId);\n this._syncEventTimerId = undefined;\n }\n // istanbul ignore next\n this._eventIdAdded = false;\n // if events have been added before the initial timer expired wait half that time to see if events are still being added.\n // istanbul ignore next\n this._syncEventTimerId = window.setTimeout(() => { this.checkForAdditionalIds(); }, this._secondaryTimeoutPeriod);\n }\n\n /** Checks to see if an eventId of interest is contained in the set of eventIds */\n public hasEventOfInterest(eventIds: Set<string>, idsOfInterest: string[]) {\n /* istanbul ignore else */\n if ((idsOfInterest.length > 0) && idsOfInterest.some((value: string): boolean => eventIds.has(value.toLowerCase())))\n return true;\n return false;\n }\n}\n"]}
{
"name": "@itwin/appui-abstract",
"version": "5.11.0-dev.21",
"version": "5.11.0",
"description": "iTwin.js UI abstractions",

@@ -25,3 +25,3 @@ "main": "lib/cjs/appui-abstract.js",

"peerDependencies": {
"@itwin/core-bentley": "5.11.0-dev.21"
"@itwin/core-bentley": "5.11.0"
},

@@ -52,5 +52,5 @@ "//devDependencies": [

"webpack": "^5.97.1",
"@itwin/build-tools": "5.11.0-dev.21",
"@itwin/certa": "5.11.0-dev.21",
"@itwin/core-bentley": "5.11.0-dev.21"
"@itwin/build-tools": "5.11.0",
"@itwin/core-bentley": "5.11.0",
"@itwin/certa": "5.11.0"
},

@@ -57,0 +57,0 @@ "//dependencies": [