@itwin/appui-abstract 4.0.0-dev.52 → 4.0.0-dev.55
Sign up to get free protection for your applications and to get access to all the features.
- package/lib/cjs/appui-abstract/BaseUiItemsProvider.d.ts +30 -30
- package/lib/cjs/appui-abstract/BaseUiItemsProvider.d.ts.map +1 -1
- package/lib/cjs/appui-abstract/BaseUiItemsProvider.js +79 -79
- package/lib/cjs/appui-abstract/UiAdmin.d.ts +221 -221
- package/lib/cjs/appui-abstract/UiAdmin.js +224 -224
- package/lib/cjs/appui-abstract/UiAdmin.js.map +1 -1
- package/lib/cjs/appui-abstract/UiItemsManager.d.ts +113 -113
- package/lib/cjs/appui-abstract/UiItemsManager.d.ts.map +1 -1
- package/lib/cjs/appui-abstract/UiItemsManager.js +193 -193
- package/lib/cjs/appui-abstract/UiItemsManager.js.map +1 -1
- package/lib/cjs/appui-abstract/UiItemsProvider.d.ts +29 -29
- package/lib/cjs/appui-abstract/UiItemsProvider.js +9 -9
- package/lib/cjs/appui-abstract/backstage/BackstageItem.d.ts +91 -91
- package/lib/cjs/appui-abstract/backstage/BackstageItem.d.ts.map +1 -1
- package/lib/cjs/appui-abstract/backstage/BackstageItem.js +70 -70
- package/lib/cjs/appui-abstract/backstage/BackstageItem.js.map +1 -1
- package/lib/cjs/appui-abstract/backstage/BackstageItemsManager.d.ts +38 -38
- package/lib/cjs/appui-abstract/backstage/BackstageItemsManager.js +133 -133
- package/lib/cjs/appui-abstract/backstage/BackstageItemsManager.js.map +1 -1
- package/lib/cjs/appui-abstract/common/KeyboardKey.d.ts +51 -51
- package/lib/cjs/appui-abstract/common/KeyboardKey.js +63 -63
- package/lib/cjs/appui-abstract/content/ContentLayoutProps.d.ts +62 -62
- package/lib/cjs/appui-abstract/content/ContentLayoutProps.js +9 -9
- package/lib/cjs/appui-abstract/content/StandardContentLayouts.d.ts +19 -19
- package/lib/cjs/appui-abstract/content/StandardContentLayouts.js +108 -108
- package/lib/cjs/appui-abstract/content/StandardContentLayouts.js.map +1 -1
- package/lib/cjs/appui-abstract/dialogs/DialogItem.d.ts +76 -76
- package/lib/cjs/appui-abstract/dialogs/DialogItem.js +67 -67
- package/lib/cjs/appui-abstract/dialogs/UiDataProvider.d.ts +55 -55
- package/lib/cjs/appui-abstract/dialogs/UiDataProvider.js +66 -66
- package/lib/cjs/appui-abstract/dialogs/UiLayoutDataProvider.d.ts +97 -97
- package/lib/cjs/appui-abstract/dialogs/UiLayoutDataProvider.js +175 -175
- package/lib/cjs/appui-abstract/dialogs/UiLayoutDataProvider.js.map +1 -1
- package/lib/cjs/appui-abstract/items/AbstractItemProps.d.ts +53 -53
- package/lib/cjs/appui-abstract/items/AbstractItemProps.d.ts.map +1 -1
- package/lib/cjs/appui-abstract/items/AbstractItemProps.js +9 -9
- package/lib/cjs/appui-abstract/items/AbstractMenuItemProps.d.ts +20 -20
- package/lib/cjs/appui-abstract/items/AbstractMenuItemProps.js +9 -9
- package/lib/cjs/appui-abstract/items/AbstractToolbarProps.d.ts +13 -13
- package/lib/cjs/appui-abstract/items/AbstractToolbarProps.js +9 -9
- package/lib/cjs/appui-abstract/items/BadgeType.d.ts +14 -14
- package/lib/cjs/appui-abstract/items/BadgeType.js +22 -22
- package/lib/cjs/appui-abstract/items/ConditionalBooleanValue.d.ts +27 -27
- package/lib/cjs/appui-abstract/items/ConditionalBooleanValue.js +60 -60
- package/lib/cjs/appui-abstract/items/ConditionalStringValue.d.ts +29 -29
- package/lib/cjs/appui-abstract/items/ConditionalStringValue.js +62 -62
- package/lib/cjs/appui-abstract/items/ProvidedItem.d.ts +11 -11
- package/lib/cjs/appui-abstract/items/ProvidedItem.js +9 -9
- package/lib/cjs/appui-abstract/items/RelativePosition.d.ts +18 -18
- package/lib/cjs/appui-abstract/items/RelativePosition.js +26 -26
- package/lib/cjs/appui-abstract/items/StageUsage.d.ts +16 -16
- package/lib/cjs/appui-abstract/items/StageUsage.js +24 -24
- package/lib/cjs/appui-abstract/notification/MessagePresenter.d.ts +42 -42
- package/lib/cjs/appui-abstract/notification/MessagePresenter.js +24 -24
- package/lib/cjs/appui-abstract/notification/MessageSeverity.d.ts +15 -15
- package/lib/cjs/appui-abstract/notification/MessageSeverity.js +23 -23
- package/lib/cjs/appui-abstract/properties/Description.d.ts +127 -127
- package/lib/cjs/appui-abstract/properties/Description.js +196 -196
- package/lib/cjs/appui-abstract/properties/EditorParams.d.ts +260 -260
- package/lib/cjs/appui-abstract/properties/EditorParams.d.ts.map +1 -1
- package/lib/cjs/appui-abstract/properties/EditorParams.js +106 -106
- package/lib/cjs/appui-abstract/properties/PrimitiveTypes.d.ts +60 -60
- package/lib/cjs/appui-abstract/properties/PrimitiveTypes.js +9 -9
- package/lib/cjs/appui-abstract/properties/Record.d.ts +57 -57
- package/lib/cjs/appui-abstract/properties/Record.js +78 -78
- package/lib/cjs/appui-abstract/properties/StandardEditorNames.d.ts +22 -22
- package/lib/cjs/appui-abstract/properties/StandardEditorNames.js +30 -30
- package/lib/cjs/appui-abstract/properties/StandardTypeNames.d.ts +30 -30
- package/lib/cjs/appui-abstract/properties/StandardTypeNames.js +39 -39
- package/lib/cjs/appui-abstract/properties/Value.d.ts +49 -49
- package/lib/cjs/appui-abstract/properties/Value.d.ts.map +1 -1
- package/lib/cjs/appui-abstract/properties/Value.js +20 -20
- package/lib/cjs/appui-abstract/quantity/BaseQuantityDescription.d.ts +22 -22
- package/lib/cjs/appui-abstract/quantity/BaseQuantityDescription.js +48 -48
- package/lib/cjs/appui-abstract/statusbar/StatusBarItem.d.ts +128 -128
- package/lib/cjs/appui-abstract/statusbar/StatusBarItem.d.ts.map +1 -1
- package/lib/cjs/appui-abstract/statusbar/StatusBarItem.js +87 -87
- package/lib/cjs/appui-abstract/statusbar/StatusBarItem.js.map +1 -1
- package/lib/cjs/appui-abstract/statusbar/StatusBarItemsManager.d.ts +39 -39
- package/lib/cjs/appui-abstract/statusbar/StatusBarItemsManager.js +135 -135
- package/lib/cjs/appui-abstract/statusbar/StatusBarItemsManager.js.map +1 -1
- package/lib/cjs/appui-abstract/toolbars/ToolbarItem.d.ts +121 -121
- package/lib/cjs/appui-abstract/toolbars/ToolbarItem.d.ts.map +1 -1
- package/lib/cjs/appui-abstract/toolbars/ToolbarItem.js +64 -64
- package/lib/cjs/appui-abstract/toolbars/ToolbarItem.js.map +1 -1
- package/lib/cjs/appui-abstract/toolbars/ToolbarItemsManager.d.ts +45 -45
- package/lib/cjs/appui-abstract/toolbars/ToolbarItemsManager.js +235 -235
- package/lib/cjs/appui-abstract/toolbars/ToolbarItemsManager.js.map +1 -1
- package/lib/cjs/appui-abstract/utils/IconSpecUtilities.d.ts +29 -29
- package/lib/cjs/appui-abstract/utils/IconSpecUtilities.js +51 -51
- package/lib/cjs/appui-abstract/utils/IconSpecUtilities.js.map +1 -1
- package/lib/cjs/appui-abstract/utils/PointProps.d.ts +10 -10
- package/lib/cjs/appui-abstract/utils/PointProps.js +9 -9
- package/lib/cjs/appui-abstract/utils/UiError.d.ts +12 -12
- package/lib/cjs/appui-abstract/utils/UiError.js +22 -22
- package/lib/cjs/appui-abstract/utils/UiEvent.d.ts +9 -9
- package/lib/cjs/appui-abstract/utils/UiEvent.js +17 -17
- package/lib/cjs/appui-abstract/utils/UiEventDispatcher.d.ts +46 -46
- package/lib/cjs/appui-abstract/utils/UiEventDispatcher.js +131 -131
- package/lib/cjs/appui-abstract/utils/callbacks.d.ts +20 -20
- package/lib/cjs/appui-abstract/utils/callbacks.d.ts.map +1 -1
- package/lib/cjs/appui-abstract/utils/callbacks.js +9 -9
- package/lib/cjs/appui-abstract/utils/filter/charCode.d.ts +416 -416
- package/lib/cjs/appui-abstract/utils/filter/charCode.js +6 -6
- package/lib/cjs/appui-abstract/utils/filter/filters.d.ts +98 -98
- package/lib/cjs/appui-abstract/utils/filter/filters.d.ts.map +1 -1
- package/lib/cjs/appui-abstract/utils/filter/filters.js +709 -709
- package/lib/cjs/appui-abstract/utils/filter/filters.js.map +1 -1
- package/lib/cjs/appui-abstract/utils/filter/map.d.ts +59 -59
- package/lib/cjs/appui-abstract/utils/filter/map.js +402 -402
- package/lib/cjs/appui-abstract/utils/filter/map.js.map +1 -1
- package/lib/cjs/appui-abstract/utils/filter/strings.d.ts +20 -20
- package/lib/cjs/appui-abstract/utils/filter/strings.js +78 -78
- package/lib/cjs/appui-abstract/utils/filter/strings.js.map +1 -1
- package/lib/cjs/appui-abstract/utils/isLetter.d.ts +9 -9
- package/lib/cjs/appui-abstract/utils/isLetter.js +19 -19
- package/lib/cjs/appui-abstract/utils/misc.d.ts +11 -11
- package/lib/cjs/appui-abstract/utils/misc.js +36 -36
- package/lib/cjs/appui-abstract/widget/AbstractWidgetProps.d.ts +86 -86
- package/lib/cjs/appui-abstract/widget/AbstractWidgetProps.js +9 -9
- package/lib/cjs/appui-abstract/widget/StagePanel.d.ts +36 -36
- package/lib/cjs/appui-abstract/widget/StagePanel.js +46 -46
- package/lib/cjs/appui-abstract/widget/WidgetState.d.ts +19 -19
- package/lib/cjs/appui-abstract/widget/WidgetState.js +27 -27
- package/lib/cjs/appui-abstract.d.ts +103 -103
- package/lib/cjs/appui-abstract.js +123 -119
- package/lib/cjs/appui-abstract.js.map +1 -1
- package/lib/esm/appui-abstract/BaseUiItemsProvider.d.ts +30 -30
- package/lib/esm/appui-abstract/BaseUiItemsProvider.d.ts.map +1 -1
- package/lib/esm/appui-abstract/BaseUiItemsProvider.js +75 -75
- package/lib/esm/appui-abstract/UiAdmin.d.ts +221 -221
- package/lib/esm/appui-abstract/UiAdmin.js +220 -219
- package/lib/esm/appui-abstract/UiAdmin.js.map +1 -1
- package/lib/esm/appui-abstract/UiItemsManager.d.ts +113 -113
- package/lib/esm/appui-abstract/UiItemsManager.d.ts.map +1 -1
- package/lib/esm/appui-abstract/UiItemsManager.js +190 -189
- package/lib/esm/appui-abstract/UiItemsManager.js.map +1 -1
- package/lib/esm/appui-abstract/UiItemsProvider.d.ts +29 -29
- package/lib/esm/appui-abstract/UiItemsProvider.js +8 -8
- package/lib/esm/appui-abstract/backstage/BackstageItem.d.ts +91 -91
- package/lib/esm/appui-abstract/backstage/BackstageItem.d.ts.map +1 -1
- package/lib/esm/appui-abstract/backstage/BackstageItem.js +65 -64
- package/lib/esm/appui-abstract/backstage/BackstageItem.js.map +1 -1
- package/lib/esm/appui-abstract/backstage/BackstageItemsManager.d.ts +38 -38
- package/lib/esm/appui-abstract/backstage/BackstageItemsManager.js +129 -129
- package/lib/esm/appui-abstract/backstage/BackstageItemsManager.js.map +1 -1
- package/lib/esm/appui-abstract/common/KeyboardKey.d.ts +51 -51
- package/lib/esm/appui-abstract/common/KeyboardKey.js +59 -59
- package/lib/esm/appui-abstract/content/ContentLayoutProps.d.ts +62 -62
- package/lib/esm/appui-abstract/content/ContentLayoutProps.js +8 -8
- package/lib/esm/appui-abstract/content/StandardContentLayouts.d.ts +19 -19
- package/lib/esm/appui-abstract/content/StandardContentLayouts.js +105 -104
- package/lib/esm/appui-abstract/content/StandardContentLayouts.js.map +1 -1
- package/lib/esm/appui-abstract/dialogs/DialogItem.d.ts +76 -76
- package/lib/esm/appui-abstract/dialogs/DialogItem.js +63 -63
- package/lib/esm/appui-abstract/dialogs/UiDataProvider.d.ts +55 -55
- package/lib/esm/appui-abstract/dialogs/UiDataProvider.js +61 -61
- package/lib/esm/appui-abstract/dialogs/UiLayoutDataProvider.d.ts +97 -97
- package/lib/esm/appui-abstract/dialogs/UiLayoutDataProvider.js +171 -170
- package/lib/esm/appui-abstract/dialogs/UiLayoutDataProvider.js.map +1 -1
- package/lib/esm/appui-abstract/items/AbstractItemProps.d.ts +53 -53
- package/lib/esm/appui-abstract/items/AbstractItemProps.d.ts.map +1 -1
- package/lib/esm/appui-abstract/items/AbstractItemProps.js +8 -8
- package/lib/esm/appui-abstract/items/AbstractMenuItemProps.d.ts +20 -20
- package/lib/esm/appui-abstract/items/AbstractMenuItemProps.js +8 -8
- package/lib/esm/appui-abstract/items/AbstractToolbarProps.d.ts +13 -13
- package/lib/esm/appui-abstract/items/AbstractToolbarProps.js +8 -8
- package/lib/esm/appui-abstract/items/BadgeType.d.ts +14 -14
- package/lib/esm/appui-abstract/items/BadgeType.js +19 -19
- package/lib/esm/appui-abstract/items/ConditionalBooleanValue.d.ts +27 -27
- package/lib/esm/appui-abstract/items/ConditionalBooleanValue.js +56 -56
- package/lib/esm/appui-abstract/items/ConditionalStringValue.d.ts +29 -29
- package/lib/esm/appui-abstract/items/ConditionalStringValue.js +58 -58
- package/lib/esm/appui-abstract/items/ProvidedItem.d.ts +11 -11
- package/lib/esm/appui-abstract/items/ProvidedItem.js +8 -8
- package/lib/esm/appui-abstract/items/RelativePosition.d.ts +18 -18
- package/lib/esm/appui-abstract/items/RelativePosition.js +23 -23
- package/lib/esm/appui-abstract/items/StageUsage.d.ts +16 -16
- package/lib/esm/appui-abstract/items/StageUsage.js +21 -21
- package/lib/esm/appui-abstract/notification/MessagePresenter.d.ts +42 -42
- package/lib/esm/appui-abstract/notification/MessagePresenter.js +21 -21
- package/lib/esm/appui-abstract/notification/MessageSeverity.d.ts +15 -15
- package/lib/esm/appui-abstract/notification/MessageSeverity.js +20 -20
- package/lib/esm/appui-abstract/properties/Description.d.ts +127 -127
- package/lib/esm/appui-abstract/properties/Description.js +192 -192
- package/lib/esm/appui-abstract/properties/EditorParams.d.ts +260 -260
- package/lib/esm/appui-abstract/properties/EditorParams.d.ts.map +1 -1
- package/lib/esm/appui-abstract/properties/EditorParams.js +97 -97
- package/lib/esm/appui-abstract/properties/PrimitiveTypes.d.ts +60 -60
- package/lib/esm/appui-abstract/properties/PrimitiveTypes.js +8 -8
- package/lib/esm/appui-abstract/properties/Record.d.ts +57 -57
- package/lib/esm/appui-abstract/properties/Record.js +74 -74
- package/lib/esm/appui-abstract/properties/StandardEditorNames.d.ts +22 -22
- package/lib/esm/appui-abstract/properties/StandardEditorNames.js +27 -27
- package/lib/esm/appui-abstract/properties/StandardTypeNames.d.ts +30 -30
- package/lib/esm/appui-abstract/properties/StandardTypeNames.js +36 -36
- package/lib/esm/appui-abstract/properties/Value.d.ts +49 -49
- package/lib/esm/appui-abstract/properties/Value.d.ts.map +1 -1
- package/lib/esm/appui-abstract/properties/Value.js +17 -17
- package/lib/esm/appui-abstract/quantity/BaseQuantityDescription.d.ts +22 -22
- package/lib/esm/appui-abstract/quantity/BaseQuantityDescription.js +44 -44
- package/lib/esm/appui-abstract/statusbar/StatusBarItem.d.ts +128 -128
- package/lib/esm/appui-abstract/statusbar/StatusBarItem.d.ts.map +1 -1
- package/lib/esm/appui-abstract/statusbar/StatusBarItem.js +81 -80
- package/lib/esm/appui-abstract/statusbar/StatusBarItem.js.map +1 -1
- package/lib/esm/appui-abstract/statusbar/StatusBarItemsManager.d.ts +39 -39
- package/lib/esm/appui-abstract/statusbar/StatusBarItemsManager.js +131 -131
- package/lib/esm/appui-abstract/statusbar/StatusBarItemsManager.js.map +1 -1
- package/lib/esm/appui-abstract/toolbars/ToolbarItem.d.ts +121 -121
- package/lib/esm/appui-abstract/toolbars/ToolbarItem.d.ts.map +1 -1
- package/lib/esm/appui-abstract/toolbars/ToolbarItem.js +61 -60
- package/lib/esm/appui-abstract/toolbars/ToolbarItem.js.map +1 -1
- package/lib/esm/appui-abstract/toolbars/ToolbarItemsManager.d.ts +45 -45
- package/lib/esm/appui-abstract/toolbars/ToolbarItemsManager.js +231 -231
- package/lib/esm/appui-abstract/toolbars/ToolbarItemsManager.js.map +1 -1
- package/lib/esm/appui-abstract/utils/IconSpecUtilities.d.ts +29 -29
- package/lib/esm/appui-abstract/utils/IconSpecUtilities.js +48 -47
- package/lib/esm/appui-abstract/utils/IconSpecUtilities.js.map +1 -1
- package/lib/esm/appui-abstract/utils/PointProps.d.ts +10 -10
- package/lib/esm/appui-abstract/utils/PointProps.js +8 -8
- package/lib/esm/appui-abstract/utils/UiError.d.ts +12 -12
- package/lib/esm/appui-abstract/utils/UiError.js +18 -18
- package/lib/esm/appui-abstract/utils/UiEvent.d.ts +9 -9
- package/lib/esm/appui-abstract/utils/UiEvent.js +13 -13
- package/lib/esm/appui-abstract/utils/UiEventDispatcher.d.ts +46 -46
- package/lib/esm/appui-abstract/utils/UiEventDispatcher.js +126 -126
- package/lib/esm/appui-abstract/utils/callbacks.d.ts +20 -20
- package/lib/esm/appui-abstract/utils/callbacks.d.ts.map +1 -1
- package/lib/esm/appui-abstract/utils/callbacks.js +8 -8
- package/lib/esm/appui-abstract/utils/filter/charCode.d.ts +416 -416
- package/lib/esm/appui-abstract/utils/filter/charCode.js +5 -5
- package/lib/esm/appui-abstract/utils/filter/filters.d.ts +98 -98
- package/lib/esm/appui-abstract/utils/filter/filters.d.ts.map +1 -1
- package/lib/esm/appui-abstract/utils/filter/filters.js +694 -694
- package/lib/esm/appui-abstract/utils/filter/filters.js.map +1 -1
- package/lib/esm/appui-abstract/utils/filter/map.d.ts +59 -59
- package/lib/esm/appui-abstract/utils/filter/map.js +397 -397
- package/lib/esm/appui-abstract/utils/filter/map.js.map +1 -1
- package/lib/esm/appui-abstract/utils/filter/strings.d.ts +20 -20
- package/lib/esm/appui-abstract/utils/filter/strings.js +70 -70
- package/lib/esm/appui-abstract/utils/filter/strings.js.map +1 -1
- package/lib/esm/appui-abstract/utils/isLetter.d.ts +9 -9
- package/lib/esm/appui-abstract/utils/isLetter.js +15 -15
- package/lib/esm/appui-abstract/utils/misc.d.ts +11 -11
- package/lib/esm/appui-abstract/utils/misc.js +31 -31
- package/lib/esm/appui-abstract/widget/AbstractWidgetProps.d.ts +86 -86
- package/lib/esm/appui-abstract/widget/AbstractWidgetProps.js +8 -8
- package/lib/esm/appui-abstract/widget/StagePanel.d.ts +36 -36
- package/lib/esm/appui-abstract/widget/StagePanel.js +43 -43
- package/lib/esm/appui-abstract/widget/WidgetState.d.ts +19 -19
- package/lib/esm/appui-abstract/widget/WidgetState.js +24 -24
- package/lib/esm/appui-abstract.d.ts +103 -103
- package/lib/esm/appui-abstract.js +107 -107
- package/package.json +6 -6
@@ -1,48 +1,49 @@
|
|
1
|
-
/*---------------------------------------------------------------------------------------------
|
2
|
-
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
3
|
-
* See LICENSE.md in the project root for license terms and full copyright notice.
|
4
|
-
*--------------------------------------------------------------------------------------------*/
|
5
|
-
/** @packageDocumentation
|
6
|
-
* @module Utilities
|
7
|
-
*/
|
8
|
-
/** Creates an IconSpec with an SVG source and gets the SVG source from an IconSpec.
|
9
|
-
* @public
|
10
|
-
*/
|
11
|
-
|
12
|
-
/** Create an IconSpec for an SVG loaded into web component with sprite loader
|
13
|
-
* This method is deprecated -- use createWebComponentIconSpec()
|
14
|
-
* @public @deprecated in 3.2. Please avoid using the Sprite loader and use IconSpecUtilities.createWebComponentIconSpec() instead.
|
15
|
-
*/
|
16
|
-
static createSvgIconSpec(svgSrc) {
|
17
|
-
return `${IconSpecUtilities.SVG_PREFIX}${svgSrc}`;
|
18
|
-
}
|
19
|
-
/** Create an IconSpec for an SVG loaded into web component with svg-loader
|
20
|
-
* @public
|
21
|
-
*/
|
22
|
-
static createWebComponentIconSpec(srcString) {
|
23
|
-
return `${IconSpecUtilities.WEB_COMPONENT_PREFIX}${srcString}`;
|
24
|
-
}
|
25
|
-
/** Get the SVG Source from an sprite IconSpec
|
26
|
-
* This method is deprecated -- use getWebComponentSource()
|
27
|
-
* @public @deprecated in 3.2. avoid using the Sprite loader and use IconSpecUtilities.getWebComponentSource() instead.
|
28
|
-
*/
|
29
|
-
static getSvgSource(iconSpec) {
|
30
|
-
if (iconSpec.startsWith(IconSpecUtilities.SVG_PREFIX) && iconSpec.length > 4) {
|
31
|
-
return iconSpec.slice(4);
|
32
|
-
}
|
33
|
-
return undefined;
|
34
|
-
}
|
35
|
-
/** Get the SVG Source from an svg-loader IconSpec
|
36
|
-
* @public
|
37
|
-
*/
|
38
|
-
static getWebComponentSource(iconSpec) {
|
39
|
-
if (iconSpec.startsWith(IconSpecUtilities.WEB_COMPONENT_PREFIX) && iconSpec.length > 7) {
|
40
|
-
return iconSpec.slice(7);
|
41
|
-
}
|
42
|
-
return undefined;
|
43
|
-
}
|
44
|
-
}
|
45
|
-
/** Prefix for an SVG IconSpec loaded with the Sprite loader */
|
46
|
-
IconSpecUtilities.SVG_PREFIX = "svg:";
|
47
|
-
IconSpecUtilities.WEB_COMPONENT_PREFIX = "webSvg:";
|
1
|
+
/*---------------------------------------------------------------------------------------------
|
2
|
+
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
3
|
+
* See LICENSE.md in the project root for license terms and full copyright notice.
|
4
|
+
*--------------------------------------------------------------------------------------------*/
|
5
|
+
/** @packageDocumentation
|
6
|
+
* @module Utilities
|
7
|
+
*/
|
8
|
+
/** Creates an IconSpec with an SVG source and gets the SVG source from an IconSpec.
|
9
|
+
* @public
|
10
|
+
*/
|
11
|
+
class IconSpecUtilities {
|
12
|
+
/** Create an IconSpec for an SVG loaded into web component with sprite loader
|
13
|
+
* This method is deprecated -- use createWebComponentIconSpec()
|
14
|
+
* @public @deprecated in 3.2. Please avoid using the Sprite loader and use IconSpecUtilities.createWebComponentIconSpec() instead.
|
15
|
+
*/
|
16
|
+
static createSvgIconSpec(svgSrc) {
|
17
|
+
return `${IconSpecUtilities.SVG_PREFIX}${svgSrc}`;
|
18
|
+
}
|
19
|
+
/** Create an IconSpec for an SVG loaded into web component with svg-loader
|
20
|
+
* @public
|
21
|
+
*/
|
22
|
+
static createWebComponentIconSpec(srcString) {
|
23
|
+
return `${IconSpecUtilities.WEB_COMPONENT_PREFIX}${srcString}`;
|
24
|
+
}
|
25
|
+
/** Get the SVG Source from an sprite IconSpec
|
26
|
+
* This method is deprecated -- use getWebComponentSource()
|
27
|
+
* @public @deprecated in 3.2. avoid using the Sprite loader and use IconSpecUtilities.getWebComponentSource() instead.
|
28
|
+
*/
|
29
|
+
static getSvgSource(iconSpec) {
|
30
|
+
if (iconSpec.startsWith(IconSpecUtilities.SVG_PREFIX) && iconSpec.length > 4) {
|
31
|
+
return iconSpec.slice(4);
|
32
|
+
}
|
33
|
+
return undefined;
|
34
|
+
}
|
35
|
+
/** Get the SVG Source from an svg-loader IconSpec
|
36
|
+
* @public
|
37
|
+
*/
|
38
|
+
static getWebComponentSource(iconSpec) {
|
39
|
+
if (iconSpec.startsWith(IconSpecUtilities.WEB_COMPONENT_PREFIX) && iconSpec.length > 7) {
|
40
|
+
return iconSpec.slice(7);
|
41
|
+
}
|
42
|
+
return undefined;
|
43
|
+
}
|
44
|
+
}
|
45
|
+
/** Prefix for an SVG IconSpec loaded with the Sprite loader */
|
46
|
+
IconSpecUtilities.SVG_PREFIX = "svg:";
|
47
|
+
IconSpecUtilities.WEB_COMPONENT_PREFIX = "webSvg:";
|
48
|
+
export { IconSpecUtilities };
|
48
49
|
//# sourceMappingURL=IconSpecUtilities.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"IconSpecUtilities.js","sourceRoot":"","sources":["../../../../src/appui-abstract/utils/IconSpecUtilities.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH;;GAEG;AACH,
|
1
|
+
{"version":3,"file":"IconSpecUtilities.js","sourceRoot":"","sources":["../../../../src/appui-abstract/utils/IconSpecUtilities.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH;;GAEG;AACH,MAAa,iBAAiB;IAK5B;;;MAGE;IACK,MAAM,CAAC,iBAAiB,CAAC,MAAc;QAC5C,OAAO,GAAG,iBAAiB,CAAC,UAAU,GAAG,MAAM,EAAE,CAAC;IACpD,CAAC;IACD;;MAEE;IACK,MAAM,CAAC,0BAA0B,CAAC,SAAiB;QACxD,OAAO,GAAG,iBAAiB,CAAC,oBAAoB,GAAG,SAAS,EAAE,CAAC;IACjE,CAAC;IAED;;;MAGE;IACK,MAAM,CAAC,YAAY,CAAC,QAAgB;QACzC,IAAI,QAAQ,CAAC,UAAU,CAAC,iBAAiB,CAAC,UAAU,CAAC,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;YAC5E,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;SAC1B;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IACD;;MAEE;IAEK,MAAM,CAAC,qBAAqB,CAAC,QAAgB;QAClD,IAAI,QAAQ,CAAC,UAAU,CAAC,iBAAiB,CAAC,oBAAoB,CAAC,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;YACtF,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;SAC1B;QAED,OAAO,SAAS,CAAC;IAEnB,CAAC;;AAxCD,+DAA+D;AACxC,4BAAU,GAAG,MAAM,CAAC;AACpB,sCAAoB,GAAG,SAAS,CAAC;SAH7C,iBAAiB","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Utilities\r\n */\r\n\r\n/** Creates an IconSpec with an SVG source and gets the SVG source from an IconSpec.\r\n * @public\r\n */\r\nexport class IconSpecUtilities {\r\n /** Prefix for an SVG IconSpec loaded with the Sprite loader */\r\n public static readonly SVG_PREFIX = \"svg:\";\r\n public static readonly WEB_COMPONENT_PREFIX = \"webSvg:\";\r\n\r\n /** Create an IconSpec for an SVG loaded into web component with sprite loader\r\n * This method is deprecated -- use createWebComponentIconSpec()\r\n * @public @deprecated in 3.2. Please avoid using the Sprite loader and use IconSpecUtilities.createWebComponentIconSpec() instead.\r\n */\r\n public static createSvgIconSpec(svgSrc: string): string {\r\n return `${IconSpecUtilities.SVG_PREFIX}${svgSrc}`;\r\n }\r\n /** Create an IconSpec for an SVG loaded into web component with svg-loader\r\n * @public\r\n */\r\n public static createWebComponentIconSpec(srcString: string): string {\r\n return `${IconSpecUtilities.WEB_COMPONENT_PREFIX}${srcString}`;\r\n }\r\n\r\n /** Get the SVG Source from an sprite IconSpec\r\n * This method is deprecated -- use getWebComponentSource()\r\n * @public @deprecated in 3.2. avoid using the Sprite loader and use IconSpecUtilities.getWebComponentSource() instead.\r\n */\r\n public static getSvgSource(iconSpec: string): string | undefined {\r\n if (iconSpec.startsWith(IconSpecUtilities.SVG_PREFIX) && iconSpec.length > 4) {\r\n return iconSpec.slice(4);\r\n }\r\n\r\n return undefined;\r\n }\r\n /** Get the SVG Source from an svg-loader IconSpec\r\n * @public\r\n */\r\n\r\n public static getWebComponentSource(iconSpec: string): string | undefined {\r\n if (iconSpec.startsWith(IconSpecUtilities.WEB_COMPONENT_PREFIX) && iconSpec.length > 7) {\r\n return iconSpec.slice(7);\r\n }\r\n\r\n return undefined;\r\n\r\n }\r\n}\r\n"]}
|
@@ -1,11 +1,11 @@
|
|
1
|
-
/** @packageDocumentation
|
2
|
-
* @module Utilities
|
3
|
-
*/
|
4
|
-
/** Describes 2d points.
|
5
|
-
* @public
|
6
|
-
*/
|
7
|
-
export interface PointProps {
|
8
|
-
readonly x: number;
|
9
|
-
readonly y: number;
|
10
|
-
}
|
1
|
+
/** @packageDocumentation
|
2
|
+
* @module Utilities
|
3
|
+
*/
|
4
|
+
/** Describes 2d points.
|
5
|
+
* @public
|
6
|
+
*/
|
7
|
+
export interface PointProps {
|
8
|
+
readonly x: number;
|
9
|
+
readonly y: number;
|
10
|
+
}
|
11
11
|
//# sourceMappingURL=PointProps.d.ts.map
|
@@ -1,9 +1,9 @@
|
|
1
|
-
/*---------------------------------------------------------------------------------------------
|
2
|
-
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
3
|
-
* See LICENSE.md in the project root for license terms and full copyright notice.
|
4
|
-
*--------------------------------------------------------------------------------------------*/
|
5
|
-
/** @packageDocumentation
|
6
|
-
* @module Utilities
|
7
|
-
*/
|
8
|
-
export {};
|
1
|
+
/*---------------------------------------------------------------------------------------------
|
2
|
+
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
3
|
+
* See LICENSE.md in the project root for license terms and full copyright notice.
|
4
|
+
*--------------------------------------------------------------------------------------------*/
|
5
|
+
/** @packageDocumentation
|
6
|
+
* @module Utilities
|
7
|
+
*/
|
8
|
+
export {};
|
9
9
|
//# sourceMappingURL=PointProps.js.map
|
@@ -1,13 +1,13 @@
|
|
1
|
-
/** @packageDocumentation
|
2
|
-
* @module Utilities
|
3
|
-
*/
|
4
|
-
import { BentleyError, GetMetaDataFunction } from "@itwin/core-bentley";
|
5
|
-
/** iTwin.js UI UiError class is a subclass of BentleyError. Errors are logged.
|
6
|
-
* @public
|
7
|
-
*/
|
8
|
-
export declare class UiError extends BentleyError {
|
9
|
-
category: string;
|
10
|
-
/** Constructs UiError using BentleyError. */
|
11
|
-
constructor(category: string, message: string, errorNumber?: number, getMetaData?: GetMetaDataFunction);
|
12
|
-
}
|
1
|
+
/** @packageDocumentation
|
2
|
+
* @module Utilities
|
3
|
+
*/
|
4
|
+
import { BentleyError, GetMetaDataFunction } from "@itwin/core-bentley";
|
5
|
+
/** iTwin.js UI UiError class is a subclass of BentleyError. Errors are logged.
|
6
|
+
* @public
|
7
|
+
*/
|
8
|
+
export declare class UiError extends BentleyError {
|
9
|
+
category: string;
|
10
|
+
/** Constructs UiError using BentleyError. */
|
11
|
+
constructor(category: string, message: string, errorNumber?: number, getMetaData?: GetMetaDataFunction);
|
12
|
+
}
|
13
13
|
//# sourceMappingURL=UiError.d.ts.map
|
@@ -1,19 +1,19 @@
|
|
1
|
-
/*---------------------------------------------------------------------------------------------
|
2
|
-
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
3
|
-
* See LICENSE.md in the project root for license terms and full copyright notice.
|
4
|
-
*--------------------------------------------------------------------------------------------*/
|
5
|
-
/** @packageDocumentation
|
6
|
-
* @module Utilities
|
7
|
-
*/
|
8
|
-
import { BentleyError, BentleyStatus } from "@itwin/core-bentley";
|
9
|
-
/** iTwin.js UI UiError class is a subclass of BentleyError. Errors are logged.
|
10
|
-
* @public
|
11
|
-
*/
|
12
|
-
export class UiError extends BentleyError {
|
13
|
-
/** Constructs UiError using BentleyError. */
|
14
|
-
constructor(category, message, errorNumber = BentleyStatus.ERROR, getMetaData) {
|
15
|
-
super(errorNumber, message, getMetaData);
|
16
|
-
this.category = category;
|
17
|
-
}
|
18
|
-
}
|
1
|
+
/*---------------------------------------------------------------------------------------------
|
2
|
+
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
3
|
+
* See LICENSE.md in the project root for license terms and full copyright notice.
|
4
|
+
*--------------------------------------------------------------------------------------------*/
|
5
|
+
/** @packageDocumentation
|
6
|
+
* @module Utilities
|
7
|
+
*/
|
8
|
+
import { BentleyError, BentleyStatus } from "@itwin/core-bentley";
|
9
|
+
/** iTwin.js UI UiError class is a subclass of BentleyError. Errors are logged.
|
10
|
+
* @public
|
11
|
+
*/
|
12
|
+
export class UiError extends BentleyError {
|
13
|
+
/** Constructs UiError using BentleyError. */
|
14
|
+
constructor(category, message, errorNumber = BentleyStatus.ERROR, getMetaData) {
|
15
|
+
super(errorNumber, message, getMetaData);
|
16
|
+
this.category = category;
|
17
|
+
}
|
18
|
+
}
|
19
19
|
//# sourceMappingURL=UiError.js.map
|
@@ -1,10 +1,10 @@
|
|
1
|
-
/** @packageDocumentation
|
2
|
-
* @module Utilities
|
3
|
-
*/
|
4
|
-
import { BeUiEvent } from "@itwin/core-bentley";
|
5
|
-
/** iTwin.js UI UiEvent class is a subclass of BeEvent with argument type safety.
|
6
|
-
* @public
|
7
|
-
*/
|
8
|
-
export declare class UiEvent<TEventArgs> extends BeUiEvent<TEventArgs> {
|
9
|
-
}
|
1
|
+
/** @packageDocumentation
|
2
|
+
* @module Utilities
|
3
|
+
*/
|
4
|
+
import { BeUiEvent } from "@itwin/core-bentley";
|
5
|
+
/** iTwin.js UI UiEvent class is a subclass of BeEvent with argument type safety.
|
6
|
+
* @public
|
7
|
+
*/
|
8
|
+
export declare class UiEvent<TEventArgs> extends BeUiEvent<TEventArgs> {
|
9
|
+
}
|
10
10
|
//# sourceMappingURL=UiEvent.d.ts.map
|
@@ -1,14 +1,14 @@
|
|
1
|
-
/*---------------------------------------------------------------------------------------------
|
2
|
-
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
3
|
-
* See LICENSE.md in the project root for license terms and full copyright notice.
|
4
|
-
*--------------------------------------------------------------------------------------------*/
|
5
|
-
/** @packageDocumentation
|
6
|
-
* @module Utilities
|
7
|
-
*/
|
8
|
-
import { BeUiEvent } from "@itwin/core-bentley";
|
9
|
-
/** iTwin.js UI UiEvent class is a subclass of BeEvent with argument type safety.
|
10
|
-
* @public
|
11
|
-
*/
|
12
|
-
export class UiEvent extends BeUiEvent {
|
13
|
-
}
|
1
|
+
/*---------------------------------------------------------------------------------------------
|
2
|
+
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
3
|
+
* See LICENSE.md in the project root for license terms and full copyright notice.
|
4
|
+
*--------------------------------------------------------------------------------------------*/
|
5
|
+
/** @packageDocumentation
|
6
|
+
* @module Utilities
|
7
|
+
*/
|
8
|
+
import { BeUiEvent } from "@itwin/core-bentley";
|
9
|
+
/** iTwin.js UI UiEvent class is a subclass of BeEvent with argument type safety.
|
10
|
+
* @public
|
11
|
+
*/
|
12
|
+
export class UiEvent extends BeUiEvent {
|
13
|
+
}
|
14
14
|
//# sourceMappingURL=UiEvent.js.map
|
@@ -1,47 +1,47 @@
|
|
1
|
-
/** @packageDocumentation
|
2
|
-
* @module Utilities
|
3
|
-
*/
|
4
|
-
import { UiEvent } from "./UiEvent";
|
5
|
-
/** UiSync Event arguments. Contains a set of lower case event Ids.
|
6
|
-
* @public
|
7
|
-
*/
|
8
|
-
export interface UiSyncEventArgs {
|
9
|
-
eventIds: Set<string>;
|
10
|
-
}
|
11
|
-
/** UiSync Event class.
|
12
|
-
* @public
|
13
|
-
*/
|
14
|
-
export declare class UiSyncEvent extends UiEvent<UiSyncEventArgs> {
|
15
|
-
}
|
16
|
-
/** This class is used to send eventIds to interested UI components so the component can determine if it needs
|
17
|
-
* to refresh its display by calling setState on itself.
|
18
|
-
* @public
|
19
|
-
*/
|
20
|
-
export declare class UiEventDispatcher {
|
21
|
-
private _syncEventTimerId;
|
22
|
-
private _eventIds;
|
23
|
-
private _eventIdAdded;
|
24
|
-
private _uiSyncEvent;
|
25
|
-
private _timeoutPeriod;
|
26
|
-
private _secondaryTimeoutPeriod;
|
27
|
-
constructor();
|
28
|
-
/** @internal - used for testing only */
|
29
|
-
setTimeoutPeriod(period: number): void;
|
30
|
-
/** The current timeout period */
|
31
|
-
get timeoutPeriod(): number;
|
32
|
-
/** Return set of event ids that will be sent to listeners/. */
|
33
|
-
get syncEventIds(): Set<string>;
|
34
|
-
/** Return UiSyncEvent so callers can register an event callback. */
|
35
|
-
get onSyncUiEvent(): UiSyncEvent;
|
36
|
-
/** Immediately trigger sync event processing. */
|
37
|
-
dispatchImmediateSyncUiEvent(eventId: string): void;
|
38
|
-
/** Save eventId in Set for processing. */
|
39
|
-
dispatchSyncUiEvent(eventId: string): void;
|
40
|
-
/** Save multiple eventIds in Set for processing. */
|
41
|
-
dispatchSyncUiEvents(eventIds: string[]): void;
|
42
|
-
/** Trigger registered event processing when timer has expired and no addition eventId are added. */
|
43
|
-
checkForAdditionalIds(): void;
|
44
|
-
/** Checks to see if an eventId of interest is contained in the set of eventIds */
|
45
|
-
hasEventOfInterest(eventIds: Set<string>, idsOfInterest: string[]): boolean;
|
46
|
-
}
|
1
|
+
/** @packageDocumentation
|
2
|
+
* @module Utilities
|
3
|
+
*/
|
4
|
+
import { UiEvent } from "./UiEvent";
|
5
|
+
/** UiSync Event arguments. Contains a set of lower case event Ids.
|
6
|
+
* @public
|
7
|
+
*/
|
8
|
+
export interface UiSyncEventArgs {
|
9
|
+
eventIds: Set<string>;
|
10
|
+
}
|
11
|
+
/** UiSync Event class.
|
12
|
+
* @public
|
13
|
+
*/
|
14
|
+
export declare class UiSyncEvent extends UiEvent<UiSyncEventArgs> {
|
15
|
+
}
|
16
|
+
/** This class is used to send eventIds to interested UI components so the component can determine if it needs
|
17
|
+
* to refresh its display by calling setState on itself.
|
18
|
+
* @public
|
19
|
+
*/
|
20
|
+
export declare class UiEventDispatcher {
|
21
|
+
private _syncEventTimerId;
|
22
|
+
private _eventIds;
|
23
|
+
private _eventIdAdded;
|
24
|
+
private _uiSyncEvent;
|
25
|
+
private _timeoutPeriod;
|
26
|
+
private _secondaryTimeoutPeriod;
|
27
|
+
constructor();
|
28
|
+
/** @internal - used for testing only */
|
29
|
+
setTimeoutPeriod(period: number): void;
|
30
|
+
/** The current timeout period */
|
31
|
+
get timeoutPeriod(): number;
|
32
|
+
/** Return set of event ids that will be sent to listeners/. */
|
33
|
+
get syncEventIds(): Set<string>;
|
34
|
+
/** Return UiSyncEvent so callers can register an event callback. */
|
35
|
+
get onSyncUiEvent(): UiSyncEvent;
|
36
|
+
/** Immediately trigger sync event processing. */
|
37
|
+
dispatchImmediateSyncUiEvent(eventId: string): void;
|
38
|
+
/** Save eventId in Set for processing. */
|
39
|
+
dispatchSyncUiEvent(eventId: string): void;
|
40
|
+
/** Save multiple eventIds in Set for processing. */
|
41
|
+
dispatchSyncUiEvents(eventIds: string[]): void;
|
42
|
+
/** Trigger registered event processing when timer has expired and no addition eventId are added. */
|
43
|
+
checkForAdditionalIds(): void;
|
44
|
+
/** Checks to see if an eventId of interest is contained in the set of eventIds */
|
45
|
+
hasEventOfInterest(eventIds: Set<string>, idsOfInterest: string[]): boolean;
|
46
|
+
}
|
47
47
|
//# sourceMappingURL=UiEventDispatcher.d.ts.map
|
@@ -1,127 +1,127 @@
|
|
1
|
-
/*---------------------------------------------------------------------------------------------
|
2
|
-
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
3
|
-
* See LICENSE.md in the project root for license terms and full copyright notice.
|
4
|
-
*--------------------------------------------------------------------------------------------*/
|
5
|
-
/** @packageDocumentation
|
6
|
-
* @module Utilities
|
7
|
-
*/
|
8
|
-
// cSpell:ignore configurableui
|
9
|
-
import { UiEvent } from "./UiEvent";
|
10
|
-
/** UiSync Event class.
|
11
|
-
* @public
|
12
|
-
*/
|
13
|
-
export class UiSyncEvent extends UiEvent {
|
14
|
-
}
|
15
|
-
/** This class is used to send eventIds to interested UI components so the component can determine if it needs
|
16
|
-
* to refresh its display by calling setState on itself.
|
17
|
-
* @public
|
18
|
-
*/
|
19
|
-
export class UiEventDispatcher {
|
20
|
-
constructor() {
|
21
|
-
this._eventIds = new Set();
|
22
|
-
this._eventIdAdded = false;
|
23
|
-
this._uiSyncEvent = new UiSyncEvent();
|
24
|
-
this._timeoutPeriod = 100;
|
25
|
-
this._secondaryTimeoutPeriod = this._timeoutPeriod / 2;
|
26
|
-
}
|
27
|
-
/** @internal - used for testing only */
|
28
|
-
/* istanbul ignore next */
|
29
|
-
setTimeoutPeriod(period) {
|
30
|
-
this._timeoutPeriod = period;
|
31
|
-
this._secondaryTimeoutPeriod = Math.floor(this._timeoutPeriod / 2);
|
32
|
-
if (this._secondaryTimeoutPeriod < 1)
|
33
|
-
this._secondaryTimeoutPeriod = 1;
|
34
|
-
if (this._syncEventTimerId) {
|
35
|
-
window.clearTimeout(this._syncEventTimerId);
|
36
|
-
this._syncEventTimerId = undefined;
|
37
|
-
}
|
38
|
-
if (this._eventIds)
|
39
|
-
this._eventIds.clear();
|
40
|
-
this._eventIdAdded = false;
|
41
|
-
}
|
42
|
-
/** The current timeout period */
|
43
|
-
get timeoutPeriod() {
|
44
|
-
return this._timeoutPeriod;
|
45
|
-
}
|
46
|
-
/** Return set of event ids that will be sent to listeners/. */
|
47
|
-
get syncEventIds() {
|
48
|
-
return this._eventIds;
|
49
|
-
}
|
50
|
-
/** Return UiSyncEvent so callers can register an event callback. */
|
51
|
-
get onSyncUiEvent() {
|
52
|
-
return this._uiSyncEvent;
|
53
|
-
}
|
54
|
-
/** Immediately trigger sync event processing. */
|
55
|
-
dispatchImmediateSyncUiEvent(eventId) {
|
56
|
-
const eventIds = new Set();
|
57
|
-
eventIds.add(eventId.toLowerCase());
|
58
|
-
this.onSyncUiEvent.emit({ eventIds });
|
59
|
-
}
|
60
|
-
/** Save eventId in Set for processing. */
|
61
|
-
dispatchSyncUiEvent(eventId) {
|
62
|
-
// istanbul ignore if
|
63
|
-
if (0 === this._timeoutPeriod) {
|
64
|
-
return;
|
65
|
-
}
|
66
|
-
this.syncEventIds.add(eventId.toLowerCase());
|
67
|
-
if (!this._syncEventTimerId) { // if there is not a timer active, create one
|
68
|
-
this._syncEventTimerId = window.setTimeout(() => { this.checkForAdditionalIds(); }, this._timeoutPeriod);
|
69
|
-
}
|
70
|
-
else {
|
71
|
-
this._eventIdAdded = true;
|
72
|
-
}
|
73
|
-
}
|
74
|
-
/** Save multiple eventIds in Set for processing. */
|
75
|
-
dispatchSyncUiEvents(eventIds) {
|
76
|
-
// istanbul ignore if
|
77
|
-
if (0 === this._timeoutPeriod) {
|
78
|
-
return;
|
79
|
-
}
|
80
|
-
eventIds.forEach((id) => this.syncEventIds.add(id.toLowerCase()));
|
81
|
-
// istanbul ignore else
|
82
|
-
if (!this._syncEventTimerId) { // if there is not a timer active, create one
|
83
|
-
this._syncEventTimerId = window.setTimeout(() => { this.checkForAdditionalIds(); }, this._timeoutPeriod);
|
84
|
-
}
|
85
|
-
else {
|
86
|
-
this._eventIdAdded = true;
|
87
|
-
}
|
88
|
-
}
|
89
|
-
/** Trigger registered event processing when timer has expired and no addition eventId are added. */
|
90
|
-
checkForAdditionalIds() {
|
91
|
-
/* istanbul ignore else */
|
92
|
-
if (!this._eventIdAdded) {
|
93
|
-
// istanbul ignore else
|
94
|
-
if (this._syncEventTimerId) {
|
95
|
-
window.clearTimeout(this._syncEventTimerId);
|
96
|
-
this._syncEventTimerId = undefined;
|
97
|
-
}
|
98
|
-
this._eventIdAdded = false;
|
99
|
-
// istanbul ignore else
|
100
|
-
if (this.syncEventIds.size > 0) {
|
101
|
-
const eventIds = new Set();
|
102
|
-
this.syncEventIds.forEach((value) => eventIds.add(value));
|
103
|
-
this._eventIds.clear();
|
104
|
-
this.onSyncUiEvent.emit({ eventIds });
|
105
|
-
}
|
106
|
-
return;
|
107
|
-
}
|
108
|
-
// istanbul ignore next
|
109
|
-
if (this._syncEventTimerId) {
|
110
|
-
window.clearTimeout(this._syncEventTimerId);
|
111
|
-
this._syncEventTimerId = undefined;
|
112
|
-
}
|
113
|
-
// istanbul ignore next
|
114
|
-
this._eventIdAdded = false;
|
115
|
-
// if events have been added before the initial timer expired wait half that time to see if events are still being added.
|
116
|
-
// istanbul ignore next
|
117
|
-
this._syncEventTimerId = window.setTimeout(() => { this.checkForAdditionalIds(); }, this._secondaryTimeoutPeriod);
|
118
|
-
}
|
119
|
-
/** Checks to see if an eventId of interest is contained in the set of eventIds */
|
120
|
-
hasEventOfInterest(eventIds, idsOfInterest) {
|
121
|
-
/* istanbul ignore else */
|
122
|
-
if ((idsOfInterest.length > 0) && idsOfInterest.some((value) => eventIds.has(value.toLowerCase())))
|
123
|
-
return true;
|
124
|
-
return false;
|
125
|
-
}
|
126
|
-
}
|
1
|
+
/*---------------------------------------------------------------------------------------------
|
2
|
+
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
3
|
+
* See LICENSE.md in the project root for license terms and full copyright notice.
|
4
|
+
*--------------------------------------------------------------------------------------------*/
|
5
|
+
/** @packageDocumentation
|
6
|
+
* @module Utilities
|
7
|
+
*/
|
8
|
+
// cSpell:ignore configurableui
|
9
|
+
import { UiEvent } from "./UiEvent";
|
10
|
+
/** UiSync Event class.
|
11
|
+
* @public
|
12
|
+
*/
|
13
|
+
export class UiSyncEvent extends UiEvent {
|
14
|
+
}
|
15
|
+
/** This class is used to send eventIds to interested UI components so the component can determine if it needs
|
16
|
+
* to refresh its display by calling setState on itself.
|
17
|
+
* @public
|
18
|
+
*/
|
19
|
+
export class UiEventDispatcher {
|
20
|
+
constructor() {
|
21
|
+
this._eventIds = new Set();
|
22
|
+
this._eventIdAdded = false;
|
23
|
+
this._uiSyncEvent = new UiSyncEvent();
|
24
|
+
this._timeoutPeriod = 100;
|
25
|
+
this._secondaryTimeoutPeriod = this._timeoutPeriod / 2;
|
26
|
+
}
|
27
|
+
/** @internal - used for testing only */
|
28
|
+
/* istanbul ignore next */
|
29
|
+
setTimeoutPeriod(period) {
|
30
|
+
this._timeoutPeriod = period;
|
31
|
+
this._secondaryTimeoutPeriod = Math.floor(this._timeoutPeriod / 2);
|
32
|
+
if (this._secondaryTimeoutPeriod < 1)
|
33
|
+
this._secondaryTimeoutPeriod = 1;
|
34
|
+
if (this._syncEventTimerId) {
|
35
|
+
window.clearTimeout(this._syncEventTimerId);
|
36
|
+
this._syncEventTimerId = undefined;
|
37
|
+
}
|
38
|
+
if (this._eventIds)
|
39
|
+
this._eventIds.clear();
|
40
|
+
this._eventIdAdded = false;
|
41
|
+
}
|
42
|
+
/** The current timeout period */
|
43
|
+
get timeoutPeriod() {
|
44
|
+
return this._timeoutPeriod;
|
45
|
+
}
|
46
|
+
/** Return set of event ids that will be sent to listeners/. */
|
47
|
+
get syncEventIds() {
|
48
|
+
return this._eventIds;
|
49
|
+
}
|
50
|
+
/** Return UiSyncEvent so callers can register an event callback. */
|
51
|
+
get onSyncUiEvent() {
|
52
|
+
return this._uiSyncEvent;
|
53
|
+
}
|
54
|
+
/** Immediately trigger sync event processing. */
|
55
|
+
dispatchImmediateSyncUiEvent(eventId) {
|
56
|
+
const eventIds = new Set();
|
57
|
+
eventIds.add(eventId.toLowerCase());
|
58
|
+
this.onSyncUiEvent.emit({ eventIds });
|
59
|
+
}
|
60
|
+
/** Save eventId in Set for processing. */
|
61
|
+
dispatchSyncUiEvent(eventId) {
|
62
|
+
// istanbul ignore if
|
63
|
+
if (0 === this._timeoutPeriod) {
|
64
|
+
return;
|
65
|
+
}
|
66
|
+
this.syncEventIds.add(eventId.toLowerCase());
|
67
|
+
if (!this._syncEventTimerId) { // if there is not a timer active, create one
|
68
|
+
this._syncEventTimerId = window.setTimeout(() => { this.checkForAdditionalIds(); }, this._timeoutPeriod);
|
69
|
+
}
|
70
|
+
else {
|
71
|
+
this._eventIdAdded = true;
|
72
|
+
}
|
73
|
+
}
|
74
|
+
/** Save multiple eventIds in Set for processing. */
|
75
|
+
dispatchSyncUiEvents(eventIds) {
|
76
|
+
// istanbul ignore if
|
77
|
+
if (0 === this._timeoutPeriod) {
|
78
|
+
return;
|
79
|
+
}
|
80
|
+
eventIds.forEach((id) => this.syncEventIds.add(id.toLowerCase()));
|
81
|
+
// istanbul ignore else
|
82
|
+
if (!this._syncEventTimerId) { // if there is not a timer active, create one
|
83
|
+
this._syncEventTimerId = window.setTimeout(() => { this.checkForAdditionalIds(); }, this._timeoutPeriod);
|
84
|
+
}
|
85
|
+
else {
|
86
|
+
this._eventIdAdded = true;
|
87
|
+
}
|
88
|
+
}
|
89
|
+
/** Trigger registered event processing when timer has expired and no addition eventId are added. */
|
90
|
+
checkForAdditionalIds() {
|
91
|
+
/* istanbul ignore else */
|
92
|
+
if (!this._eventIdAdded) {
|
93
|
+
// istanbul ignore else
|
94
|
+
if (this._syncEventTimerId) {
|
95
|
+
window.clearTimeout(this._syncEventTimerId);
|
96
|
+
this._syncEventTimerId = undefined;
|
97
|
+
}
|
98
|
+
this._eventIdAdded = false;
|
99
|
+
// istanbul ignore else
|
100
|
+
if (this.syncEventIds.size > 0) {
|
101
|
+
const eventIds = new Set();
|
102
|
+
this.syncEventIds.forEach((value) => eventIds.add(value));
|
103
|
+
this._eventIds.clear();
|
104
|
+
this.onSyncUiEvent.emit({ eventIds });
|
105
|
+
}
|
106
|
+
return;
|
107
|
+
}
|
108
|
+
// istanbul ignore next
|
109
|
+
if (this._syncEventTimerId) {
|
110
|
+
window.clearTimeout(this._syncEventTimerId);
|
111
|
+
this._syncEventTimerId = undefined;
|
112
|
+
}
|
113
|
+
// istanbul ignore next
|
114
|
+
this._eventIdAdded = false;
|
115
|
+
// if events have been added before the initial timer expired wait half that time to see if events are still being added.
|
116
|
+
// istanbul ignore next
|
117
|
+
this._syncEventTimerId = window.setTimeout(() => { this.checkForAdditionalIds(); }, this._secondaryTimeoutPeriod);
|
118
|
+
}
|
119
|
+
/** Checks to see if an eventId of interest is contained in the set of eventIds */
|
120
|
+
hasEventOfInterest(eventIds, idsOfInterest) {
|
121
|
+
/* istanbul ignore else */
|
122
|
+
if ((idsOfInterest.length > 0) && idsOfInterest.some((value) => eventIds.has(value.toLowerCase())))
|
123
|
+
return true;
|
124
|
+
return false;
|
125
|
+
}
|
126
|
+
}
|
127
127
|
//# sourceMappingURL=UiEventDispatcher.js.map
|