@itwin/core-react 4.0.0-dev.12 → 4.0.0-dev.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +116 -1
- package/ContributeGuidelines.md +17 -14
- package/README.md +2 -2
- package/lib/cjs/core-react/UiCore.d.ts +40 -40
- package/lib/cjs/core-react/UiCore.js +85 -85
- package/lib/cjs/core-react/UiCore.js.map +1 -1
- package/lib/cjs/core-react/autosuggest/AutoSuggest.d.ts +96 -96
- package/lib/cjs/core-react/autosuggest/AutoSuggest.d.ts.map +1 -1
- package/lib/cjs/core-react/autosuggest/AutoSuggest.js +174 -174
- package/lib/cjs/core-react/autosuggest/AutoSuggest.scss +1 -2
- package/lib/cjs/core-react/badge/Badge.d.ts +18 -18
- package/lib/cjs/core-react/badge/Badge.js +26 -26
- package/lib/cjs/core-react/badge/BadgeUtilities.d.ts +12 -12
- package/lib/cjs/core-react/badge/BadgeUtilities.js +38 -38
- package/lib/cjs/core-react/badge/BetaBadge.d.ts +9 -9
- package/lib/cjs/core-react/badge/BetaBadge.js +22 -22
- package/lib/cjs/core-react/badge/NewBadge.d.ts +10 -10
- package/lib/cjs/core-react/badge/NewBadge.js +23 -23
- package/lib/cjs/core-react/base/Centered.d.ts +10 -10
- package/lib/cjs/core-react/base/Centered.js +20 -20
- package/lib/cjs/core-react/base/Div.d.ts +16 -16
- package/lib/cjs/core-react/base/Div.js +20 -20
- package/lib/cjs/core-react/base/DivWithOutsideClick.d.ts +79 -79
- package/lib/cjs/core-react/base/DivWithOutsideClick.js +16 -16
- package/lib/cjs/core-react/base/FillCentered.d.ts +10 -10
- package/lib/cjs/core-react/base/FillCentered.js +20 -20
- package/lib/cjs/core-react/base/FlexWrapContainer.d.ts +11 -11
- package/lib/cjs/core-react/base/FlexWrapContainer.js +21 -21
- package/lib/cjs/core-react/base/Gap.d.ts +15 -15
- package/lib/cjs/core-react/base/Gap.js +20 -20
- package/lib/cjs/core-react/base/Gap.js.map +1 -1
- package/lib/cjs/core-react/base/PointerEvents.d.ts +7 -7
- package/lib/cjs/core-react/base/PointerEvents.js +17 -17
- package/lib/cjs/core-react/base/ScrollView.d.ts +11 -11
- package/lib/cjs/core-react/base/ScrollView.js +21 -21
- package/lib/cjs/core-react/button/UnderlinedButton.d.ts +24 -24
- package/lib/cjs/core-react/button/UnderlinedButton.js +35 -35
- package/lib/cjs/core-react/checklistbox/CheckListBox.d.ts +40 -40
- package/lib/cjs/core-react/checklistbox/CheckListBox.js +42 -42
- package/lib/cjs/core-react/checklistbox/CheckListBox.scss +0 -1
- package/lib/cjs/core-react/classes.scss +0 -2
- package/lib/cjs/core-react/contextmenu/ContextMenu.d.ts +93 -93
- package/lib/cjs/core-react/contextmenu/ContextMenu.d.ts.map +1 -1
- package/lib/cjs/core-react/contextmenu/ContextMenu.js +363 -364
- package/lib/cjs/core-react/contextmenu/ContextMenu.js.map +1 -1
- package/lib/cjs/core-react/contextmenu/ContextMenuDirection.d.ts +18 -18
- package/lib/cjs/core-react/contextmenu/ContextMenuDirection.js +26 -26
- package/lib/cjs/core-react/contextmenu/ContextMenuDivider.d.ts +12 -12
- package/lib/cjs/core-react/contextmenu/ContextMenuDivider.js +23 -23
- package/lib/cjs/core-react/contextmenu/ContextMenuItem.d.ts +61 -61
- package/lib/cjs/core-react/contextmenu/ContextMenuItem.js +108 -108
- package/lib/cjs/core-react/contextmenu/ContextMenuItem.js.map +1 -1
- package/lib/cjs/core-react/contextmenu/ContextSubMenu.d.ts +51 -51
- package/lib/cjs/core-react/contextmenu/ContextSubMenu.d.ts.map +1 -1
- package/lib/cjs/core-react/contextmenu/ContextSubMenu.js +162 -162
- package/lib/cjs/core-react/contextmenu/ContextSubMenu.js.map +1 -1
- package/lib/cjs/core-react/contextmenu/GlobalContextMenu.d.ts +34 -34
- package/lib/cjs/core-react/contextmenu/GlobalContextMenu.js +61 -63
- package/lib/cjs/core-react/contextmenu/GlobalContextMenu.js.map +1 -1
- package/lib/cjs/core-react/contextmenu/PopupContextMenu.d.ts +53 -53
- package/lib/cjs/core-react/contextmenu/PopupContextMenu.js +55 -55
- package/lib/cjs/core-react/contextmenu/TildeFinder.d.ts +18 -18
- package/lib/cjs/core-react/contextmenu/TildeFinder.js +70 -70
- package/lib/cjs/core-react/contextmenu/TildeFinder.js.map +1 -1
- package/lib/cjs/core-react/dialog/Dialog.d.ts +132 -132
- package/lib/cjs/core-react/dialog/Dialog.js +374 -375
- package/lib/cjs/core-react/dialog/Dialog.js.map +1 -1
- package/lib/cjs/core-react/dialog/GlobalDialog.d.ts +28 -28
- package/lib/cjs/core-react/dialog/GlobalDialog.js +52 -53
- package/lib/cjs/core-react/dialog/GlobalDialog.js.map +1 -1
- package/lib/cjs/core-react/elementseparator/ElementSeparator.d.ts +41 -41
- package/lib/cjs/core-react/elementseparator/ElementSeparator.js +163 -163
- package/lib/cjs/core-react/elementseparator/ElementSeparator.js.map +1 -1
- package/lib/cjs/core-react/enums/Alignment.d.ts +22 -22
- package/lib/cjs/core-react/enums/Alignment.js +31 -31
- package/lib/cjs/core-react/enums/CheckBoxState.d.ts +20 -20
- package/lib/cjs/core-react/enums/CheckBoxState.js +19 -19
- package/lib/cjs/core-react/enums/Orientation.d.ts +11 -11
- package/lib/cjs/core-react/enums/Orientation.js +19 -19
- package/lib/cjs/core-react/enums/SortDirection.d.ts +12 -12
- package/lib/cjs/core-react/enums/SortDirection.js +20 -20
- package/lib/cjs/core-react/enums/TimeFormat.d.ts +14 -14
- package/lib/cjs/core-react/enums/TimeFormat.js +22 -22
- package/lib/cjs/core-react/expandable/ExpandableList.d.ts +37 -37
- package/lib/cjs/core-react/expandable/ExpandableList.js +57 -57
- package/lib/cjs/core-react/expandable/ExpandableList.js.map +1 -1
- package/lib/cjs/core-react/focus/ItemKeyboardNavigator.d.ts +53 -53
- package/lib/cjs/core-react/focus/ItemKeyboardNavigator.d.ts.map +1 -1
- package/lib/cjs/core-react/focus/ItemKeyboardNavigator.js +150 -150
- package/lib/cjs/core-react/focustrap/FocusTrap.d.ts +28 -28
- package/lib/cjs/core-react/focustrap/FocusTrap.js +196 -196
- package/lib/cjs/core-react/hocs/withIsPressed.d.ts +77 -77
- package/lib/cjs/core-react/hocs/withIsPressed.js +46 -46
- package/lib/cjs/core-react/hocs/withOnOutsideClick.d.ts +103 -103
- package/lib/cjs/core-react/hocs/withOnOutsideClick.js +114 -115
- package/lib/cjs/core-react/hocs/withOnOutsideClick.js.map +1 -1
- package/lib/cjs/core-react/hocs/withTimeout.d.ts +74 -74
- package/lib/cjs/core-react/hocs/withTimeout.js +46 -46
- package/lib/cjs/core-react/icons/ConditionalIconItem.d.ts +26 -26
- package/lib/cjs/core-react/icons/ConditionalIconItem.js +64 -64
- package/lib/cjs/core-react/icons/IconComponent.d.ts +25 -25
- package/lib/cjs/core-react/icons/IconComponent.d.ts.map +1 -1
- package/lib/cjs/core-react/icons/IconComponent.js +48 -48
- package/lib/cjs/core-react/icons/IconComponent.js.map +1 -1
- package/lib/cjs/core-react/icons/SvgPath.d.ts +23 -23
- package/lib/cjs/core-react/icons/SvgPath.js +27 -27
- package/lib/cjs/core-react/icons/WebFontIcon.d.ts +25 -25
- package/lib/cjs/core-react/icons/WebFontIcon.js +21 -21
- package/lib/cjs/core-react/imagecheckbox/ImageCheckBox.d.ts +42 -42
- package/lib/cjs/core-react/imagecheckbox/ImageCheckBox.js +56 -56
- package/lib/cjs/core-react/index.scss +0 -2
- package/lib/cjs/core-react/inputs/Input.d.ts +20 -20
- package/lib/cjs/core-react/inputs/Input.js +45 -45
- package/lib/cjs/core-react/inputs/InputLabel.d.ts +20 -20
- package/lib/cjs/core-react/inputs/InputLabel.js +41 -41
- package/lib/cjs/core-react/inputs/InputStatus.d.ts +11 -11
- package/lib/cjs/core-react/inputs/InputStatus.js +19 -19
- package/lib/cjs/core-react/inputs/LabeledComponentProps.d.ts +33 -33
- package/lib/cjs/core-react/inputs/LabeledComponentProps.js +9 -9
- package/lib/cjs/core-react/inputs/iconinput/IconInput.d.ts +23 -23
- package/lib/cjs/core-react/inputs/iconinput/IconInput.js +29 -29
- package/lib/cjs/core-react/inputs/numberinput/NumberInput.d.ts +50 -50
- package/lib/cjs/core-react/inputs/numberinput/NumberInput.d.ts.map +1 -1
- package/lib/cjs/core-react/inputs/numberinput/NumberInput.js +153 -153
- package/lib/cjs/core-react/listbox/Listbox.d.ts +55 -55
- package/lib/cjs/core-react/listbox/Listbox.d.ts.map +1 -1
- package/lib/cjs/core-react/listbox/Listbox.js +221 -222
- package/lib/cjs/core-react/listbox/Listbox.js.map +1 -1
- package/lib/cjs/core-react/loading/LoadingBar.d.ts +29 -29
- package/lib/cjs/core-react/loading/LoadingBar.js +40 -40
- package/lib/cjs/core-react/loading/LoadingBar.js.map +1 -1
- package/lib/cjs/core-react/loading/LoadingPrompt.d.ts +39 -39
- package/lib/cjs/core-react/loading/LoadingPrompt.js +44 -44
- package/lib/cjs/core-react/loading/LoadingPrompt.js.map +1 -1
- package/lib/cjs/core-react/loading/LoadingSpinner.d.ts +32 -32
- package/lib/cjs/core-react/loading/LoadingSpinner.d.ts.map +1 -1
- package/lib/cjs/core-react/loading/LoadingSpinner.js +30 -30
- package/lib/cjs/core-react/loading/LoadingSpinner.js.map +1 -1
- package/lib/cjs/core-react/loading/LoadingStatus.d.ts +24 -24
- package/lib/cjs/core-react/loading/LoadingStatus.js +37 -37
- package/lib/cjs/core-react/loading/LoadingStatus.js.map +1 -1
- package/lib/cjs/core-react/messagebox/MessageBox.d.ts +80 -80
- package/lib/cjs/core-react/messagebox/MessageBox.js +114 -114
- package/lib/cjs/core-react/messagebox/MessageBox.js.map +1 -1
- package/lib/cjs/core-react/notification/MessageRenderer.d.ts +19 -19
- package/lib/cjs/core-react/notification/MessageRenderer.js +81 -81
- package/lib/cjs/core-react/notification/MessageRenderer.js.map +1 -1
- package/lib/cjs/core-react/notification/MessageType.d.ts +22 -22
- package/lib/cjs/core-react/notification/MessageType.d.ts.map +1 -1
- package/lib/cjs/core-react/notification/MessageType.js +24 -24
- package/lib/cjs/core-react/popup/Popup.d.ts +111 -111
- package/lib/cjs/core-react/popup/Popup.js +418 -422
- package/lib/cjs/core-react/popup/Popup.js.map +1 -1
- package/lib/cjs/core-react/radialmenu/Annulus.d.ts +54 -54
- package/lib/cjs/core-react/radialmenu/Annulus.js +82 -82
- package/lib/cjs/core-react/radialmenu/RadialMenu.d.ts +97 -97
- package/lib/cjs/core-react/radialmenu/RadialMenu.js +179 -179
- package/lib/cjs/core-react/radialmenu/RadialMenu.js.map +1 -1
- package/lib/cjs/core-react/searchbox/SearchBox.d.ts +52 -52
- package/lib/cjs/core-react/searchbox/SearchBox.js +111 -111
- package/lib/cjs/core-react/searchbox/SearchBox.scss +2 -3
- package/lib/cjs/core-react/settings/SettingsContainer.d.ts +30 -30
- package/lib/cjs/core-react/settings/SettingsContainer.js +121 -121
- package/lib/cjs/core-react/settings/SettingsManager.d.ts +132 -132
- package/lib/cjs/core-react/settings/SettingsManager.js +122 -122
- package/lib/cjs/core-react/style/index.scss +0 -7
- package/lib/cjs/core-react/tabs/Tabs.d.ts +71 -71
- package/lib/cjs/core-react/tabs/Tabs.js +125 -125
- package/lib/cjs/core-react/tabs/VerticalTabs.d.ts +9 -9
- package/lib/cjs/core-react/tabs/VerticalTabs.js +20 -20
- package/lib/cjs/core-react/text/BlockText.d.ts +9 -9
- package/lib/cjs/core-react/text/BlockText.js +20 -20
- package/lib/cjs/core-react/text/BodyText.d.ts +10 -10
- package/lib/cjs/core-react/text/BodyText.js +21 -21
- package/lib/cjs/core-react/text/BodyText.js.map +1 -1
- package/lib/cjs/core-react/text/DisabledText.d.ts +6 -6
- package/lib/cjs/core-react/text/DisabledText.js +20 -20
- package/lib/cjs/core-react/text/FilteredText.d.ts +24 -24
- package/lib/cjs/core-react/text/FilteredText.js +40 -40
- package/lib/cjs/core-react/text/FilteredText.js.map +1 -1
- package/lib/cjs/core-react/text/MutedText.d.ts +10 -10
- package/lib/cjs/core-react/text/MutedText.js +21 -21
- package/lib/cjs/core-react/text/MutedText.js.map +1 -1
- package/lib/cjs/core-react/text/StyledText.d.ts +17 -17
- package/lib/cjs/core-react/text/StyledText.js +21 -21
- package/lib/cjs/core-react/text/StyledText.js.map +1 -1
- package/lib/cjs/core-react/text/TextProps.d.ts +10 -10
- package/lib/cjs/core-react/text/TextProps.js +9 -9
- package/lib/cjs/core-react/tree/Branch.d.ts +19 -19
- package/lib/cjs/core-react/tree/Branch.js +23 -23
- package/lib/cjs/core-react/tree/ExpansionToggle.d.ts +20 -20
- package/lib/cjs/core-react/tree/ExpansionToggle.js +30 -30
- package/lib/cjs/core-react/tree/Node.d.ts +79 -79
- package/lib/cjs/core-react/tree/Node.d.ts.map +1 -1
- package/lib/cjs/core-react/tree/Node.js +87 -88
- package/lib/cjs/core-react/tree/Node.js.map +1 -1
- package/lib/cjs/core-react/tree/Node.scss +0 -15
- package/lib/cjs/core-react/tree/Placeholder.d.ts +22 -22
- package/lib/cjs/core-react/tree/Placeholder.js +31 -31
- package/lib/cjs/core-react/tree/Tree.d.ts +28 -28
- package/lib/cjs/core-react/tree/Tree.js +100 -100
- package/lib/cjs/core-react/uistate/LocalStateStorage.d.ts +16 -16
- package/lib/cjs/core-react/uistate/LocalStateStorage.js +49 -49
- package/lib/cjs/core-react/uistate/UiStateEntry.d.ts +30 -30
- package/lib/cjs/core-react/uistate/UiStateEntry.js +59 -59
- package/lib/cjs/core-react/uistate/UiStateStorage.d.ts +28 -28
- package/lib/cjs/core-react/uistate/UiStateStorage.js +21 -21
- package/lib/cjs/core-react/utils/IconHelper.d.ts +23 -23
- package/lib/cjs/core-react/utils/IconHelper.js +62 -62
- package/lib/cjs/core-react/utils/IconWebComponent.d.ts +10 -10
- package/lib/cjs/core-react/utils/IconWebComponent.js +72 -72
- package/lib/cjs/core-react/utils/IconWebComponent.js.map +1 -1
- package/lib/cjs/core-react/utils/Point.d.ts +37 -37
- package/lib/cjs/core-react/utils/Point.js +73 -73
- package/lib/cjs/core-react/utils/Point.js.map +1 -1
- package/lib/cjs/core-react/utils/Props.d.ts +38 -38
- package/lib/cjs/core-react/utils/Props.d.ts.map +1 -1
- package/lib/cjs/core-react/utils/Props.js +9 -9
- package/lib/cjs/core-react/utils/Rectangle.d.ts +144 -144
- package/lib/cjs/core-react/utils/Rectangle.js +270 -270
- package/lib/cjs/core-react/utils/Rectangle.js.map +1 -1
- package/lib/cjs/core-react/utils/ScrollPositionMaintainer.d.ts +23 -23
- package/lib/cjs/core-react/utils/ScrollPositionMaintainer.js +36 -36
- package/lib/cjs/core-react/utils/Size.d.ts +23 -23
- package/lib/cjs/core-react/utils/Size.js +32 -32
- package/lib/cjs/core-react/utils/Size.js.map +1 -1
- package/lib/cjs/core-react/utils/Timer.d.ts +35 -35
- package/lib/cjs/core-react/utils/Timer.d.ts.map +1 -1
- package/lib/cjs/core-react/utils/Timer.js +64 -64
- package/lib/cjs/core-react/utils/UiGeometry.d.ts +20 -20
- package/lib/cjs/core-react/utils/UiGeometry.js +28 -28
- package/lib/cjs/core-react/utils/flattenChildren.d.ts +8 -8
- package/lib/cjs/core-react/utils/flattenChildren.js +27 -27
- package/lib/cjs/core-react/utils/getBestBWContrastColor.d.ts +7 -7
- package/lib/cjs/core-react/utils/getBestBWContrastColor.js +22 -22
- package/lib/cjs/core-react/utils/getBestBWContrastColor.js.map +1 -1
- package/lib/cjs/core-react/utils/getCssVariable.d.ts +11 -11
- package/lib/cjs/core-react/utils/getCssVariable.js +31 -31
- package/lib/cjs/core-react/utils/getCssVariable.js.map +1 -1
- package/lib/cjs/core-react/utils/getDisplayName.d.ts +8 -8
- package/lib/cjs/core-react/utils/getDisplayName.js +21 -21
- package/lib/cjs/core-react/utils/getUserColor.d.ts +7 -7
- package/lib/cjs/core-react/utils/getUserColor.js +38 -38
- package/lib/cjs/core-react/utils/hooks/ResizeObserverPolyfill.d.ts +4 -4
- package/lib/cjs/core-react/utils/hooks/ResizeObserverPolyfill.d.ts.map +1 -1
- package/lib/cjs/core-react/utils/hooks/ResizeObserverPolyfill.js +19 -19
- package/lib/cjs/core-react/utils/hooks/useCrossOriginPopup.d.ts +7 -7
- package/lib/cjs/core-react/utils/hooks/useCrossOriginPopup.js +88 -89
- package/lib/cjs/core-react/utils/hooks/useCrossOriginPopup.js.map +1 -1
- package/lib/cjs/core-react/utils/hooks/useDisposable.d.ts +17 -17
- package/lib/cjs/core-react/utils/hooks/useDisposable.js +38 -38
- package/lib/cjs/core-react/utils/hooks/useEffectSkipFirst.d.ts +8 -8
- package/lib/cjs/core-react/utils/hooks/useEffectSkipFirst.js +26 -26
- package/lib/cjs/core-react/utils/hooks/useEventListener.d.ts +11 -11
- package/lib/cjs/core-react/utils/hooks/useEventListener.js +43 -43
- package/lib/cjs/core-react/utils/hooks/useInterval.d.ts +5 -5
- package/lib/cjs/core-react/utils/hooks/useInterval.js +36 -36
- package/lib/cjs/core-react/utils/hooks/useLifecycleLogging.d.ts +5 -5
- package/lib/cjs/core-react/utils/hooks/useLifecycleLogging.js +64 -64
- package/lib/cjs/core-react/utils/hooks/useOnOutsideClick.d.ts +12 -12
- package/lib/cjs/core-react/utils/hooks/useOnOutsideClick.d.ts.map +1 -1
- package/lib/cjs/core-react/utils/hooks/useOnOutsideClick.js +92 -92
- package/lib/cjs/core-react/utils/hooks/useProximityToMouse.d.ts +55 -55
- package/lib/cjs/core-react/utils/hooks/useProximityToMouse.js +114 -114
- package/lib/cjs/core-react/utils/hooks/useRefEffect.d.ts +7 -7
- package/lib/cjs/core-react/utils/hooks/useRefEffect.js +23 -23
- package/lib/cjs/core-react/utils/hooks/useRefState.d.ts +21 -21
- package/lib/cjs/core-react/utils/hooks/useRefState.js +35 -35
- package/lib/cjs/core-react/utils/hooks/useRefs.d.ts +12 -12
- package/lib/cjs/core-react/utils/hooks/useRefs.js +53 -53
- package/lib/cjs/core-react/utils/hooks/useResizeObserver.d.ts +39 -39
- package/lib/cjs/core-react/utils/hooks/useResizeObserver.js +203 -208
- package/lib/cjs/core-react/utils/hooks/useResizeObserver.js.map +1 -1
- package/lib/cjs/core-react/utils/hooks/useTargeted.d.ts +8 -8
- package/lib/cjs/core-react/utils/hooks/useTargeted.js +28 -28
- package/lib/cjs/core-react/utils/hooks/useThrottledFn.d.ts +15 -15
- package/lib/cjs/core-react/utils/hooks/useThrottledFn.js +25 -25
- package/lib/cjs/core-react/utils/hooks/useWidgetOpacityContext.d.ts +20 -20
- package/lib/cjs/core-react/utils/hooks/useWidgetOpacityContext.js +27 -27
- package/lib/cjs/core-react/utils/isPromiseLike.d.ts +7 -7
- package/lib/cjs/core-react/utils/isPromiseLike.js +17 -17
- package/lib/cjs/core-react/utils/shallowDiffers.d.ts +11 -11
- package/lib/cjs/core-react/utils/shallowDiffers.js +29 -29
- package/lib/cjs/core-react/utils/typeUtils.d.ts +7 -7
- package/lib/cjs/core-react/utils/typeUtils.d.ts.map +1 -1
- package/lib/cjs/core-react/utils/typeUtils.js +9 -9
- package/lib/cjs/core-react.d.ts +236 -236
- package/lib/cjs/core-react.js +263 -259
- package/lib/cjs/core-react.js.map +1 -1
- package/lib/esm/core-react/UiCore.d.ts +40 -40
- package/lib/esm/core-react/UiCore.js +82 -81
- package/lib/esm/core-react/UiCore.js.map +1 -1
- package/lib/esm/core-react/autosuggest/AutoSuggest.d.ts +96 -96
- package/lib/esm/core-react/autosuggest/AutoSuggest.d.ts.map +1 -1
- package/lib/esm/core-react/autosuggest/AutoSuggest.js +170 -170
- package/lib/esm/core-react/autosuggest/AutoSuggest.scss +1 -2
- package/lib/esm/core-react/badge/Badge.d.ts +18 -18
- package/lib/esm/core-react/badge/Badge.js +22 -22
- package/lib/esm/core-react/badge/BadgeUtilities.d.ts +12 -12
- package/lib/esm/core-react/badge/BadgeUtilities.js +34 -34
- package/lib/esm/core-react/badge/BetaBadge.d.ts +9 -9
- package/lib/esm/core-react/badge/BetaBadge.js +18 -18
- package/lib/esm/core-react/badge/NewBadge.d.ts +10 -10
- package/lib/esm/core-react/badge/NewBadge.js +19 -19
- package/lib/esm/core-react/base/Centered.d.ts +10 -10
- package/lib/esm/core-react/base/Centered.js +16 -16
- package/lib/esm/core-react/base/Div.d.ts +16 -16
- package/lib/esm/core-react/base/Div.js +16 -16
- package/lib/esm/core-react/base/DivWithOutsideClick.d.ts +79 -79
- package/lib/esm/core-react/base/DivWithOutsideClick.js +13 -13
- package/lib/esm/core-react/base/FillCentered.d.ts +10 -10
- package/lib/esm/core-react/base/FillCentered.js +16 -16
- package/lib/esm/core-react/base/FlexWrapContainer.d.ts +11 -11
- package/lib/esm/core-react/base/FlexWrapContainer.js +17 -17
- package/lib/esm/core-react/base/Gap.d.ts +15 -15
- package/lib/esm/core-react/base/Gap.js +16 -16
- package/lib/esm/core-react/base/Gap.js.map +1 -1
- package/lib/esm/core-react/base/PointerEvents.d.ts +7 -7
- package/lib/esm/core-react/base/PointerEvents.js +13 -13
- package/lib/esm/core-react/base/ScrollView.d.ts +11 -11
- package/lib/esm/core-react/base/ScrollView.js +17 -17
- package/lib/esm/core-react/button/UnderlinedButton.d.ts +24 -24
- package/lib/esm/core-react/button/UnderlinedButton.js +31 -31
- package/lib/esm/core-react/checklistbox/CheckListBox.d.ts +40 -40
- package/lib/esm/core-react/checklistbox/CheckListBox.js +36 -36
- package/lib/esm/core-react/checklistbox/CheckListBox.scss +0 -1
- package/lib/esm/core-react/classes.scss +0 -2
- package/lib/esm/core-react/contextmenu/ContextMenu.d.ts +93 -93
- package/lib/esm/core-react/contextmenu/ContextMenu.d.ts.map +1 -1
- package/lib/esm/core-react/contextmenu/ContextMenu.js +360 -360
- package/lib/esm/core-react/contextmenu/ContextMenu.js.map +1 -1
- package/lib/esm/core-react/contextmenu/ContextMenuDirection.d.ts +18 -18
- package/lib/esm/core-react/contextmenu/ContextMenuDirection.js +23 -23
- package/lib/esm/core-react/contextmenu/ContextMenuDivider.d.ts +12 -12
- package/lib/esm/core-react/contextmenu/ContextMenuDivider.js +19 -19
- package/lib/esm/core-react/contextmenu/ContextMenuItem.d.ts +61 -61
- package/lib/esm/core-react/contextmenu/ContextMenuItem.js +105 -104
- package/lib/esm/core-react/contextmenu/ContextMenuItem.js.map +1 -1
- package/lib/esm/core-react/contextmenu/ContextSubMenu.d.ts +51 -51
- package/lib/esm/core-react/contextmenu/ContextSubMenu.d.ts.map +1 -1
- package/lib/esm/core-react/contextmenu/ContextSubMenu.js +159 -158
- package/lib/esm/core-react/contextmenu/ContextSubMenu.js.map +1 -1
- package/lib/esm/core-react/contextmenu/GlobalContextMenu.d.ts +34 -34
- package/lib/esm/core-react/contextmenu/GlobalContextMenu.js +57 -59
- package/lib/esm/core-react/contextmenu/GlobalContextMenu.js.map +1 -1
- package/lib/esm/core-react/contextmenu/PopupContextMenu.d.ts +53 -53
- package/lib/esm/core-react/contextmenu/PopupContextMenu.js +51 -51
- package/lib/esm/core-react/contextmenu/TildeFinder.d.ts +18 -18
- package/lib/esm/core-react/contextmenu/TildeFinder.js +67 -66
- package/lib/esm/core-react/contextmenu/TildeFinder.js.map +1 -1
- package/lib/esm/core-react/dialog/Dialog.d.ts +132 -132
- package/lib/esm/core-react/dialog/Dialog.js +371 -371
- package/lib/esm/core-react/dialog/Dialog.js.map +1 -1
- package/lib/esm/core-react/dialog/GlobalDialog.d.ts +28 -28
- package/lib/esm/core-react/dialog/GlobalDialog.js +48 -49
- package/lib/esm/core-react/dialog/GlobalDialog.js.map +1 -1
- package/lib/esm/core-react/elementseparator/ElementSeparator.d.ts +41 -41
- package/lib/esm/core-react/elementseparator/ElementSeparator.js +159 -159
- package/lib/esm/core-react/elementseparator/ElementSeparator.js.map +1 -1
- package/lib/esm/core-react/enums/Alignment.d.ts +22 -22
- package/lib/esm/core-react/enums/Alignment.js +28 -28
- package/lib/esm/core-react/enums/CheckBoxState.d.ts +20 -20
- package/lib/esm/core-react/enums/CheckBoxState.js +16 -16
- package/lib/esm/core-react/enums/Orientation.d.ts +11 -11
- package/lib/esm/core-react/enums/Orientation.js +16 -16
- package/lib/esm/core-react/enums/SortDirection.d.ts +12 -12
- package/lib/esm/core-react/enums/SortDirection.js +17 -17
- package/lib/esm/core-react/enums/TimeFormat.d.ts +14 -14
- package/lib/esm/core-react/enums/TimeFormat.js +19 -19
- package/lib/esm/core-react/expandable/ExpandableList.d.ts +37 -37
- package/lib/esm/core-react/expandable/ExpandableList.js +54 -53
- package/lib/esm/core-react/expandable/ExpandableList.js.map +1 -1
- package/lib/esm/core-react/focus/ItemKeyboardNavigator.d.ts +53 -53
- package/lib/esm/core-react/focus/ItemKeyboardNavigator.d.ts.map +1 -1
- package/lib/esm/core-react/focus/ItemKeyboardNavigator.js +145 -145
- package/lib/esm/core-react/focustrap/FocusTrap.d.ts +28 -28
- package/lib/esm/core-react/focustrap/FocusTrap.js +191 -191
- package/lib/esm/core-react/hocs/withIsPressed.d.ts +77 -77
- package/lib/esm/core-react/hocs/withIsPressed.js +42 -42
- package/lib/esm/core-react/hocs/withOnOutsideClick.d.ts +103 -103
- package/lib/esm/core-react/hocs/withOnOutsideClick.js +110 -111
- package/lib/esm/core-react/hocs/withOnOutsideClick.js.map +1 -1
- package/lib/esm/core-react/hocs/withTimeout.d.ts +74 -74
- package/lib/esm/core-react/hocs/withTimeout.js +42 -42
- package/lib/esm/core-react/icons/ConditionalIconItem.d.ts +26 -26
- package/lib/esm/core-react/icons/ConditionalIconItem.js +60 -60
- package/lib/esm/core-react/icons/IconComponent.d.ts +25 -25
- package/lib/esm/core-react/icons/IconComponent.d.ts.map +1 -1
- package/lib/esm/core-react/icons/IconComponent.js +44 -44
- package/lib/esm/core-react/icons/IconComponent.js.map +1 -1
- package/lib/esm/core-react/icons/SvgPath.d.ts +23 -23
- package/lib/esm/core-react/icons/SvgPath.js +23 -23
- package/lib/esm/core-react/icons/WebFontIcon.d.ts +25 -25
- package/lib/esm/core-react/icons/WebFontIcon.js +17 -17
- package/lib/esm/core-react/imagecheckbox/ImageCheckBox.d.ts +42 -42
- package/lib/esm/core-react/imagecheckbox/ImageCheckBox.js +52 -52
- package/lib/esm/core-react/index.scss +0 -2
- package/lib/esm/core-react/inputs/Input.d.ts +20 -20
- package/lib/esm/core-react/inputs/Input.js +42 -42
- package/lib/esm/core-react/inputs/InputLabel.d.ts +20 -20
- package/lib/esm/core-react/inputs/InputLabel.js +37 -37
- package/lib/esm/core-react/inputs/InputStatus.d.ts +11 -11
- package/lib/esm/core-react/inputs/InputStatus.js +16 -16
- package/lib/esm/core-react/inputs/LabeledComponentProps.d.ts +33 -33
- package/lib/esm/core-react/inputs/LabeledComponentProps.js +8 -8
- package/lib/esm/core-react/inputs/iconinput/IconInput.d.ts +23 -23
- package/lib/esm/core-react/inputs/iconinput/IconInput.js +26 -26
- package/lib/esm/core-react/inputs/numberinput/NumberInput.d.ts +50 -50
- package/lib/esm/core-react/inputs/numberinput/NumberInput.d.ts.map +1 -1
- package/lib/esm/core-react/inputs/numberinput/NumberInput.js +150 -150
- package/lib/esm/core-react/listbox/Listbox.d.ts +55 -55
- package/lib/esm/core-react/listbox/Listbox.d.ts.map +1 -1
- package/lib/esm/core-react/listbox/Listbox.js +216 -217
- package/lib/esm/core-react/listbox/Listbox.js.map +1 -1
- package/lib/esm/core-react/loading/LoadingBar.d.ts +29 -29
- package/lib/esm/core-react/loading/LoadingBar.js +36 -35
- package/lib/esm/core-react/loading/LoadingBar.js.map +1 -1
- package/lib/esm/core-react/loading/LoadingPrompt.d.ts +39 -39
- package/lib/esm/core-react/loading/LoadingPrompt.js +41 -40
- package/lib/esm/core-react/loading/LoadingPrompt.js.map +1 -1
- package/lib/esm/core-react/loading/LoadingSpinner.d.ts +32 -32
- package/lib/esm/core-react/loading/LoadingSpinner.d.ts.map +1 -1
- package/lib/esm/core-react/loading/LoadingSpinner.js +27 -26
- package/lib/esm/core-react/loading/LoadingSpinner.js.map +1 -1
- package/lib/esm/core-react/loading/LoadingStatus.d.ts +24 -24
- package/lib/esm/core-react/loading/LoadingStatus.js +34 -33
- package/lib/esm/core-react/loading/LoadingStatus.js.map +1 -1
- package/lib/esm/core-react/messagebox/MessageBox.d.ts +80 -80
- package/lib/esm/core-react/messagebox/MessageBox.js +110 -109
- package/lib/esm/core-react/messagebox/MessageBox.js.map +1 -1
- package/lib/esm/core-react/notification/MessageRenderer.d.ts +19 -19
- package/lib/esm/core-react/notification/MessageRenderer.js +77 -77
- package/lib/esm/core-react/notification/MessageRenderer.js.map +1 -1
- package/lib/esm/core-react/notification/MessageType.d.ts +22 -22
- package/lib/esm/core-react/notification/MessageType.d.ts.map +1 -1
- package/lib/esm/core-react/notification/MessageType.js +19 -19
- package/lib/esm/core-react/popup/Popup.d.ts +111 -111
- package/lib/esm/core-react/popup/Popup.js +415 -418
- package/lib/esm/core-react/popup/Popup.js.map +1 -1
- package/lib/esm/core-react/radialmenu/Annulus.d.ts +54 -54
- package/lib/esm/core-react/radialmenu/Annulus.js +75 -75
- package/lib/esm/core-react/radialmenu/RadialMenu.d.ts +97 -97
- package/lib/esm/core-react/radialmenu/RadialMenu.js +175 -174
- package/lib/esm/core-react/radialmenu/RadialMenu.js.map +1 -1
- package/lib/esm/core-react/searchbox/SearchBox.d.ts +52 -52
- package/lib/esm/core-react/searchbox/SearchBox.js +107 -107
- package/lib/esm/core-react/searchbox/SearchBox.scss +2 -3
- package/lib/esm/core-react/settings/SettingsContainer.d.ts +30 -30
- package/lib/esm/core-react/settings/SettingsContainer.js +115 -115
- package/lib/esm/core-react/settings/SettingsManager.d.ts +132 -132
- package/lib/esm/core-react/settings/SettingsManager.js +113 -113
- package/lib/esm/core-react/style/index.scss +0 -7
- package/lib/esm/core-react/tabs/Tabs.d.ts +71 -71
- package/lib/esm/core-react/tabs/Tabs.js +121 -121
- package/lib/esm/core-react/tabs/VerticalTabs.d.ts +9 -9
- package/lib/esm/core-react/tabs/VerticalTabs.js +16 -16
- package/lib/esm/core-react/text/BlockText.d.ts +9 -9
- package/lib/esm/core-react/text/BlockText.js +16 -16
- package/lib/esm/core-react/text/BodyText.d.ts +10 -10
- package/lib/esm/core-react/text/BodyText.js +17 -17
- package/lib/esm/core-react/text/BodyText.js.map +1 -1
- package/lib/esm/core-react/text/DisabledText.d.ts +6 -6
- package/lib/esm/core-react/text/DisabledText.js +16 -16
- package/lib/esm/core-react/text/FilteredText.d.ts +24 -24
- package/lib/esm/core-react/text/FilteredText.js +36 -36
- package/lib/esm/core-react/text/FilteredText.js.map +1 -1
- package/lib/esm/core-react/text/MutedText.d.ts +10 -10
- package/lib/esm/core-react/text/MutedText.js +17 -17
- package/lib/esm/core-react/text/MutedText.js.map +1 -1
- package/lib/esm/core-react/text/StyledText.d.ts +17 -17
- package/lib/esm/core-react/text/StyledText.js +17 -17
- package/lib/esm/core-react/text/StyledText.js.map +1 -1
- package/lib/esm/core-react/text/TextProps.d.ts +10 -10
- package/lib/esm/core-react/text/TextProps.js +8 -8
- package/lib/esm/core-react/tree/Branch.d.ts +19 -19
- package/lib/esm/core-react/tree/Branch.js +19 -19
- package/lib/esm/core-react/tree/ExpansionToggle.d.ts +20 -20
- package/lib/esm/core-react/tree/ExpansionToggle.js +26 -26
- package/lib/esm/core-react/tree/Node.d.ts +79 -79
- package/lib/esm/core-react/tree/Node.d.ts.map +1 -1
- package/lib/esm/core-react/tree/Node.js +83 -84
- package/lib/esm/core-react/tree/Node.js.map +1 -1
- package/lib/esm/core-react/tree/Node.scss +0 -15
- package/lib/esm/core-react/tree/Placeholder.d.ts +22 -22
- package/lib/esm/core-react/tree/Placeholder.js +27 -27
- package/lib/esm/core-react/tree/Tree.d.ts +28 -28
- package/lib/esm/core-react/tree/Tree.js +96 -96
- package/lib/esm/core-react/uistate/LocalStateStorage.d.ts +16 -16
- package/lib/esm/core-react/uistate/LocalStateStorage.js +45 -45
- package/lib/esm/core-react/uistate/UiStateEntry.d.ts +30 -30
- package/lib/esm/core-react/uistate/UiStateEntry.js +55 -55
- package/lib/esm/core-react/uistate/UiStateStorage.d.ts +28 -28
- package/lib/esm/core-react/uistate/UiStateStorage.js +18 -18
- package/lib/esm/core-react/utils/IconHelper.d.ts +23 -23
- package/lib/esm/core-react/utils/IconHelper.js +58 -58
- package/lib/esm/core-react/utils/IconWebComponent.d.ts +10 -10
- package/lib/esm/core-react/utils/IconWebComponent.js +68 -68
- package/lib/esm/core-react/utils/IconWebComponent.js.map +1 -1
- package/lib/esm/core-react/utils/Point.d.ts +37 -37
- package/lib/esm/core-react/utils/Point.js +69 -69
- package/lib/esm/core-react/utils/Point.js.map +1 -1
- package/lib/esm/core-react/utils/Props.d.ts +38 -38
- package/lib/esm/core-react/utils/Props.d.ts.map +1 -1
- package/lib/esm/core-react/utils/Props.js +8 -8
- package/lib/esm/core-react/utils/Rectangle.d.ts +144 -144
- package/lib/esm/core-react/utils/Rectangle.js +266 -266
- package/lib/esm/core-react/utils/Rectangle.js.map +1 -1
- package/lib/esm/core-react/utils/ScrollPositionMaintainer.d.ts +23 -23
- package/lib/esm/core-react/utils/ScrollPositionMaintainer.js +32 -32
- package/lib/esm/core-react/utils/Size.d.ts +23 -23
- package/lib/esm/core-react/utils/Size.js +28 -28
- package/lib/esm/core-react/utils/Size.js.map +1 -1
- package/lib/esm/core-react/utils/Timer.d.ts +35 -35
- package/lib/esm/core-react/utils/Timer.d.ts.map +1 -1
- package/lib/esm/core-react/utils/Timer.js +60 -60
- package/lib/esm/core-react/utils/UiGeometry.d.ts +20 -20
- package/lib/esm/core-react/utils/UiGeometry.js +24 -24
- package/lib/esm/core-react/utils/flattenChildren.d.ts +8 -8
- package/lib/esm/core-react/utils/flattenChildren.js +23 -23
- package/lib/esm/core-react/utils/getBestBWContrastColor.d.ts +7 -7
- package/lib/esm/core-react/utils/getBestBWContrastColor.js +18 -18
- package/lib/esm/core-react/utils/getBestBWContrastColor.js.map +1 -1
- package/lib/esm/core-react/utils/getCssVariable.d.ts +11 -11
- package/lib/esm/core-react/utils/getCssVariable.js +26 -26
- package/lib/esm/core-react/utils/getCssVariable.js.map +1 -1
- package/lib/esm/core-react/utils/getDisplayName.d.ts +8 -8
- package/lib/esm/core-react/utils/getDisplayName.js +17 -17
- package/lib/esm/core-react/utils/getUserColor.d.ts +7 -7
- package/lib/esm/core-react/utils/getUserColor.js +34 -34
- package/lib/esm/core-react/utils/hooks/ResizeObserverPolyfill.d.ts +4 -4
- package/lib/esm/core-react/utils/hooks/ResizeObserverPolyfill.d.ts.map +1 -1
- package/lib/esm/core-react/utils/hooks/ResizeObserverPolyfill.js +16 -16
- package/lib/esm/core-react/utils/hooks/useCrossOriginPopup.d.ts +7 -7
- package/lib/esm/core-react/utils/hooks/useCrossOriginPopup.js +84 -85
- package/lib/esm/core-react/utils/hooks/useCrossOriginPopup.js.map +1 -1
- package/lib/esm/core-react/utils/hooks/useDisposable.d.ts +17 -17
- package/lib/esm/core-react/utils/hooks/useDisposable.js +33 -33
- package/lib/esm/core-react/utils/hooks/useEffectSkipFirst.d.ts +8 -8
- package/lib/esm/core-react/utils/hooks/useEffectSkipFirst.js +22 -22
- package/lib/esm/core-react/utils/hooks/useEventListener.d.ts +11 -11
- package/lib/esm/core-react/utils/hooks/useEventListener.js +39 -39
- package/lib/esm/core-react/utils/hooks/useInterval.d.ts +5 -5
- package/lib/esm/core-react/utils/hooks/useInterval.js +32 -32
- package/lib/esm/core-react/utils/hooks/useLifecycleLogging.d.ts +5 -5
- package/lib/esm/core-react/utils/hooks/useLifecycleLogging.js +60 -60
- package/lib/esm/core-react/utils/hooks/useOnOutsideClick.d.ts +12 -12
- package/lib/esm/core-react/utils/hooks/useOnOutsideClick.d.ts.map +1 -1
- package/lib/esm/core-react/utils/hooks/useOnOutsideClick.js +88 -88
- package/lib/esm/core-react/utils/hooks/useProximityToMouse.d.ts +55 -55
- package/lib/esm/core-react/utils/hooks/useProximityToMouse.js +102 -102
- package/lib/esm/core-react/utils/hooks/useRefEffect.d.ts +7 -7
- package/lib/esm/core-react/utils/hooks/useRefEffect.js +19 -19
- package/lib/esm/core-react/utils/hooks/useRefState.d.ts +21 -21
- package/lib/esm/core-react/utils/hooks/useRefState.js +31 -31
- package/lib/esm/core-react/utils/hooks/useRefs.d.ts +12 -12
- package/lib/esm/core-react/utils/hooks/useRefs.js +48 -48
- package/lib/esm/core-react/utils/hooks/useResizeObserver.d.ts +39 -39
- package/lib/esm/core-react/utils/hooks/useResizeObserver.js +196 -201
- package/lib/esm/core-react/utils/hooks/useResizeObserver.js.map +1 -1
- package/lib/esm/core-react/utils/hooks/useTargeted.d.ts +8 -8
- package/lib/esm/core-react/utils/hooks/useTargeted.js +24 -24
- package/lib/esm/core-react/utils/hooks/useThrottledFn.d.ts +15 -15
- package/lib/esm/core-react/utils/hooks/useThrottledFn.js +21 -21
- package/lib/esm/core-react/utils/hooks/useWidgetOpacityContext.d.ts +20 -20
- package/lib/esm/core-react/utils/hooks/useWidgetOpacityContext.js +23 -23
- package/lib/esm/core-react/utils/isPromiseLike.d.ts +7 -7
- package/lib/esm/core-react/utils/isPromiseLike.js +13 -13
- package/lib/esm/core-react/utils/shallowDiffers.d.ts +11 -11
- package/lib/esm/core-react/utils/shallowDiffers.js +25 -25
- package/lib/esm/core-react/utils/typeUtils.d.ts +7 -7
- package/lib/esm/core-react/utils/typeUtils.d.ts.map +1 -1
- package/lib/esm/core-react/utils/typeUtils.js +8 -8
- package/lib/esm/core-react.d.ts +236 -236
- package/lib/esm/core-react.js +241 -241
- package/package.json +15 -13
- package/ThirdPartyNotices.md +0 -28
- package/lib/cjs/core-react/button/blue-large.scss +0 -12
- package/lib/cjs/core-react/button/blue.scss +0 -17
- package/lib/cjs/core-react/button/button.scss +0 -70
- package/lib/cjs/core-react/button/classes.scss +0 -14
- package/lib/cjs/core-react/button/disabled-large.scss +0 -12
- package/lib/cjs/core-react/button/disabled.scss +0 -17
- package/lib/cjs/core-react/button/hollow-large.scss +0 -13
- package/lib/cjs/core-react/button/hollow.scss +0 -30
- package/lib/cjs/core-react/button/index.scss +0 -14
- package/lib/cjs/core-react/button/primary-large.scss +0 -12
- package/lib/cjs/core-react/button/primary.scss +0 -17
- package/lib/cjs/core-react/button/variables.scss +0 -22
- package/lib/cjs/core-react/checkbox/checkbox.scss +0 -124
- package/lib/cjs/core-react/checkbox/classes.scss +0 -8
- package/lib/cjs/core-react/checkbox/index.scss +0 -8
- package/lib/cjs/core-react/style/data-viz.scss +0 -20
- package/lib/cjs/core-react/style/space.scss +0 -13
- package/lib/cjs/core-react/style/speed.scss +0 -9
- package/lib/cjs/core-react/style/typography.scss +0 -39
- package/lib/cjs/core-react/style/variables.scss +0 -9
- package/lib/esm/core-react/button/blue-large.scss +0 -12
- package/lib/esm/core-react/button/blue.scss +0 -17
- package/lib/esm/core-react/button/button.scss +0 -70
- package/lib/esm/core-react/button/classes.scss +0 -14
- package/lib/esm/core-react/button/disabled-large.scss +0 -12
- package/lib/esm/core-react/button/disabled.scss +0 -17
- package/lib/esm/core-react/button/hollow-large.scss +0 -13
- package/lib/esm/core-react/button/hollow.scss +0 -30
- package/lib/esm/core-react/button/index.scss +0 -14
- package/lib/esm/core-react/button/primary-large.scss +0 -12
- package/lib/esm/core-react/button/primary.scss +0 -17
- package/lib/esm/core-react/button/variables.scss +0 -22
- package/lib/esm/core-react/checkbox/checkbox.scss +0 -124
- package/lib/esm/core-react/checkbox/classes.scss +0 -8
- package/lib/esm/core-react/checkbox/index.scss +0 -8
- package/lib/esm/core-react/style/data-viz.scss +0 -20
- package/lib/esm/core-react/style/space.scss +0 -13
- package/lib/esm/core-react/style/speed.scss +0 -9
- package/lib/esm/core-react/style/typography.scss +0 -39
- package/lib/esm/core-react/style/variables.scss +0 -9
|
@@ -1,133 +1,133 @@
|
|
|
1
|
-
/** @packageDocumentation
|
|
2
|
-
* @module Settings
|
|
3
|
-
*/
|
|
4
|
-
/// <reference types="react" />
|
|
5
|
-
import { BeUiEvent } from "@itwin/core-bentley";
|
|
6
|
-
import { ConditionalBooleanValue } from "@itwin/appui-abstract";
|
|
7
|
-
/** Interface used to populate a tab entry in the SettingContainer control
|
|
8
|
-
* @public
|
|
9
|
-
*/
|
|
10
|
-
export interface SettingsTabEntry {
|
|
11
|
-
/** unique id for entry */
|
|
12
|
-
readonly tabId: string;
|
|
13
|
-
/** localized display label */
|
|
14
|
-
readonly label: string;
|
|
15
|
-
/** Setting page content to display when tab item is selected. */
|
|
16
|
-
readonly page: JSX.Element;
|
|
17
|
-
/** Setting to true if page will register to watch for stage closing event so it can save any dirty settings. Page component should register and handle the events:
|
|
18
|
-
* `settingsManager.onProcessSettingsTabActivation` and `settingsManager.onProcessSettingsContainerClose` */
|
|
19
|
-
readonly pageWillHandleCloseRequest?: boolean;
|
|
20
|
-
/** used to determine position in tablist */
|
|
21
|
-
readonly itemPriority: number;
|
|
22
|
-
/** Optional Subtitle to show below label. */
|
|
23
|
-
readonly subLabel?: string;
|
|
24
|
-
/** Icon specification */
|
|
25
|
-
readonly icon?: string | JSX.Element;
|
|
26
|
-
/** Tooltip. Allows JSX|Element to support react-tooltip component */
|
|
27
|
-
readonly tooltip?: string | JSX.Element;
|
|
28
|
-
/** Allows Settings entry to be disabled */
|
|
29
|
-
readonly isDisabled?: boolean | ConditionalBooleanValue;
|
|
30
|
-
}
|
|
31
|
-
/** Event class for [[this.onSettingsProvidersChanged]] which is emitted when a new SettingsTabsProvider is added or removed.
|
|
32
|
-
* @public
|
|
33
|
-
*/
|
|
34
|
-
export declare class SettingsProvidersChangedEvent extends BeUiEvent<SettingsProvidersChangedEventArgs> {
|
|
35
|
-
}
|
|
36
|
-
/** Arguments of [[this.onSettingsProvidersChanged]] event.
|
|
37
|
-
* @public
|
|
38
|
-
*/
|
|
39
|
-
export interface SettingsProvidersChangedEventArgs {
|
|
40
|
-
readonly providers: ReadonlyArray<SettingsTabsProvider>;
|
|
41
|
-
}
|
|
42
|
-
/** Event class for [[this.onProcessSettingsTabActivation]] which is emitted when a new Tab needs to be activated. This allows the current
|
|
43
|
-
* settings page to save its settings before activating the new SettingTab.
|
|
44
|
-
* @public
|
|
45
|
-
*/
|
|
46
|
-
export declare class ProcessSettingsTabActivationEvent extends BeUiEvent<ProcessSettingsTabActivationEventArgs> {
|
|
47
|
-
}
|
|
48
|
-
/** Arguments of [[this.onProcessSettingsTabActivation]] event.
|
|
49
|
-
* @public
|
|
50
|
-
*/
|
|
51
|
-
export interface ProcessSettingsTabActivationEventArgs {
|
|
52
|
-
readonly tabSelectionFunc: (tabId: string) => void;
|
|
53
|
-
readonly requestedSettingsTabId: string;
|
|
54
|
-
}
|
|
55
|
-
/** Event class for [[this.onProcessSettingsContainerClose]] which is emitted when the settings container will be closed. This allows the current
|
|
56
|
-
* settings page to save its settings before calling the function to close the container.
|
|
57
|
-
* @public
|
|
58
|
-
*/
|
|
59
|
-
export declare class ProcessSettingsContainerCloseEvent extends BeUiEvent<ProcessSettingsContainerCloseEventArgs> {
|
|
60
|
-
}
|
|
61
|
-
/** Event class for [[this.onCloseSettingsContainer]] which is monitored by the settings container and indicates that some out process want to close the settings container.
|
|
62
|
-
* @internal
|
|
63
|
-
*/
|
|
64
|
-
export declare class CloseSettingsContainerEvent extends BeUiEvent<ProcessSettingsContainerCloseEventArgs> {
|
|
65
|
-
}
|
|
66
|
-
/** Arguments of [[this.onProcessSettingsContainerClose]] event.
|
|
67
|
-
* @public
|
|
68
|
-
*/
|
|
69
|
-
export interface ProcessSettingsContainerCloseEventArgs {
|
|
70
|
-
readonly closeFunc: (args: any) => void;
|
|
71
|
-
readonly closeFuncArgs?: any;
|
|
72
|
-
}
|
|
73
|
-
/** Event class for [[this.onActivateSettingsTab]] which is emitted when API call needs to set the active settings tab (ie via Tool key-in).
|
|
74
|
-
* @public
|
|
75
|
-
*/
|
|
76
|
-
export declare class ActivateSettingsTabEvent extends BeUiEvent<ActivateSettingsTabEventArgs> {
|
|
77
|
-
}
|
|
78
|
-
/** Arguments of [[this.onActivateSettingsTab]] event.
|
|
79
|
-
* @public
|
|
80
|
-
*/
|
|
81
|
-
export interface ActivateSettingsTabEventArgs {
|
|
82
|
-
readonly settingsTabId: string;
|
|
83
|
-
}
|
|
84
|
-
/** Setting Provider interface. Implemented by classes that want to supply settings pages for display in the SettingContainer. The
|
|
85
|
-
* classes that implement this interface need to be registered with the [[SettingsManager]].
|
|
86
|
-
* @public
|
|
87
|
-
*/
|
|
88
|
-
export interface SettingsTabsProvider {
|
|
89
|
-
/** Id of provider, used to remove registration. */
|
|
90
|
-
readonly id: string;
|
|
91
|
-
getSettingEntries(stageId: string, stageUsage: string): ReadonlyArray<SettingsTabEntry> | undefined;
|
|
92
|
-
}
|
|
93
|
-
/** Settings Manager class. Hold registration of settings providers and supplies events for the provided settings pages to listen.
|
|
94
|
-
* @public
|
|
95
|
-
*/
|
|
96
|
-
export declare class SettingsManager {
|
|
97
|
-
private _providers;
|
|
98
|
-
/** Event raised when SettingsProviders are changed.
|
|
99
|
-
*/
|
|
100
|
-
readonly onSettingsProvidersChanged: SettingsProvidersChangedEvent;
|
|
101
|
-
/** Event raised solely for a settings page to monitor so it can save its settings before continuing tab activation.
|
|
102
|
-
* See React hook function `useSaveBeforeActivatingNewSettingsTab`.
|
|
103
|
-
*/
|
|
104
|
-
readonly onProcessSettingsTabActivation: ProcessSettingsTabActivationEvent;
|
|
105
|
-
/** Event raised when the settings container will be closed. Any setting page component that is 'modal' should register to
|
|
106
|
-
* listen to this event so that it can save its state before closing. See React hook function `useSaveBeforeClosingSettingsContainer`.
|
|
107
|
-
*/
|
|
108
|
-
readonly onProcessSettingsContainerClose: ProcessSettingsContainerCloseEvent;
|
|
109
|
-
/** Event raised to change the active settings tab shown in UI. Monitored by the SettingsContainer.
|
|
110
|
-
* @internal
|
|
111
|
-
*/
|
|
112
|
-
readonly onActivateSettingsTab: ActivateSettingsTabEvent;
|
|
113
|
-
/** Event monitored by SettingsContainer to process request to close the settings container.
|
|
114
|
-
* @internal
|
|
115
|
-
*/
|
|
116
|
-
readonly onCloseSettingsContainer: CloseSettingsContainerEvent;
|
|
117
|
-
/** @public */
|
|
118
|
-
get providers(): ReadonlyArray<SettingsTabsProvider>;
|
|
119
|
-
set providers(p: ReadonlyArray<SettingsTabsProvider>);
|
|
120
|
-
/** Called by application when an tool, keyin, or other process want to change the active settings tab/page giving the current tab/page and opportunity
|
|
121
|
-
* to save its state.
|
|
122
|
-
*/
|
|
123
|
-
activateSettingsTab(settingsTabId: string): void;
|
|
124
|
-
/** Called by application when the Settings Container is to be closed. The function to invoke to actually close the Settings Container is
|
|
125
|
-
* passed in and executed once the active settings tab/page has a chance to save its settings.
|
|
126
|
-
*/
|
|
127
|
-
closeSettingsContainer(closeFunc: (args: any) => void, closeFuncArgs?: any): void;
|
|
128
|
-
addSettingsProvider(settingsProvider: SettingsTabsProvider): void;
|
|
129
|
-
removeSettingsProvider(providerId: string): boolean;
|
|
130
|
-
/** Get an array of SettingsTabEntry objects to populate the settings container. */
|
|
131
|
-
getSettingEntries(stageId: string, stageUsage: string): Array<SettingsTabEntry>;
|
|
132
|
-
}
|
|
1
|
+
/** @packageDocumentation
|
|
2
|
+
* @module Settings
|
|
3
|
+
*/
|
|
4
|
+
/// <reference types="react" />
|
|
5
|
+
import { BeUiEvent } from "@itwin/core-bentley";
|
|
6
|
+
import { ConditionalBooleanValue } from "@itwin/appui-abstract";
|
|
7
|
+
/** Interface used to populate a tab entry in the SettingContainer control
|
|
8
|
+
* @public
|
|
9
|
+
*/
|
|
10
|
+
export interface SettingsTabEntry {
|
|
11
|
+
/** unique id for entry */
|
|
12
|
+
readonly tabId: string;
|
|
13
|
+
/** localized display label */
|
|
14
|
+
readonly label: string;
|
|
15
|
+
/** Setting page content to display when tab item is selected. */
|
|
16
|
+
readonly page: JSX.Element;
|
|
17
|
+
/** Setting to true if page will register to watch for stage closing event so it can save any dirty settings. Page component should register and handle the events:
|
|
18
|
+
* `settingsManager.onProcessSettingsTabActivation` and `settingsManager.onProcessSettingsContainerClose` */
|
|
19
|
+
readonly pageWillHandleCloseRequest?: boolean;
|
|
20
|
+
/** used to determine position in tablist */
|
|
21
|
+
readonly itemPriority: number;
|
|
22
|
+
/** Optional Subtitle to show below label. */
|
|
23
|
+
readonly subLabel?: string;
|
|
24
|
+
/** Icon specification */
|
|
25
|
+
readonly icon?: string | JSX.Element;
|
|
26
|
+
/** Tooltip. Allows JSX|Element to support react-tooltip component */
|
|
27
|
+
readonly tooltip?: string | JSX.Element;
|
|
28
|
+
/** Allows Settings entry to be disabled */
|
|
29
|
+
readonly isDisabled?: boolean | ConditionalBooleanValue;
|
|
30
|
+
}
|
|
31
|
+
/** Event class for [[this.onSettingsProvidersChanged]] which is emitted when a new SettingsTabsProvider is added or removed.
|
|
32
|
+
* @public
|
|
33
|
+
*/
|
|
34
|
+
export declare class SettingsProvidersChangedEvent extends BeUiEvent<SettingsProvidersChangedEventArgs> {
|
|
35
|
+
}
|
|
36
|
+
/** Arguments of [[this.onSettingsProvidersChanged]] event.
|
|
37
|
+
* @public
|
|
38
|
+
*/
|
|
39
|
+
export interface SettingsProvidersChangedEventArgs {
|
|
40
|
+
readonly providers: ReadonlyArray<SettingsTabsProvider>;
|
|
41
|
+
}
|
|
42
|
+
/** Event class for [[this.onProcessSettingsTabActivation]] which is emitted when a new Tab needs to be activated. This allows the current
|
|
43
|
+
* settings page to save its settings before activating the new SettingTab.
|
|
44
|
+
* @public
|
|
45
|
+
*/
|
|
46
|
+
export declare class ProcessSettingsTabActivationEvent extends BeUiEvent<ProcessSettingsTabActivationEventArgs> {
|
|
47
|
+
}
|
|
48
|
+
/** Arguments of [[this.onProcessSettingsTabActivation]] event.
|
|
49
|
+
* @public
|
|
50
|
+
*/
|
|
51
|
+
export interface ProcessSettingsTabActivationEventArgs {
|
|
52
|
+
readonly tabSelectionFunc: (tabId: string) => void;
|
|
53
|
+
readonly requestedSettingsTabId: string;
|
|
54
|
+
}
|
|
55
|
+
/** Event class for [[this.onProcessSettingsContainerClose]] which is emitted when the settings container will be closed. This allows the current
|
|
56
|
+
* settings page to save its settings before calling the function to close the container.
|
|
57
|
+
* @public
|
|
58
|
+
*/
|
|
59
|
+
export declare class ProcessSettingsContainerCloseEvent extends BeUiEvent<ProcessSettingsContainerCloseEventArgs> {
|
|
60
|
+
}
|
|
61
|
+
/** Event class for [[this.onCloseSettingsContainer]] which is monitored by the settings container and indicates that some out process want to close the settings container.
|
|
62
|
+
* @internal
|
|
63
|
+
*/
|
|
64
|
+
export declare class CloseSettingsContainerEvent extends BeUiEvent<ProcessSettingsContainerCloseEventArgs> {
|
|
65
|
+
}
|
|
66
|
+
/** Arguments of [[this.onProcessSettingsContainerClose]] event.
|
|
67
|
+
* @public
|
|
68
|
+
*/
|
|
69
|
+
export interface ProcessSettingsContainerCloseEventArgs {
|
|
70
|
+
readonly closeFunc: (args: any) => void;
|
|
71
|
+
readonly closeFuncArgs?: any;
|
|
72
|
+
}
|
|
73
|
+
/** Event class for [[this.onActivateSettingsTab]] which is emitted when API call needs to set the active settings tab (ie via Tool key-in).
|
|
74
|
+
* @public
|
|
75
|
+
*/
|
|
76
|
+
export declare class ActivateSettingsTabEvent extends BeUiEvent<ActivateSettingsTabEventArgs> {
|
|
77
|
+
}
|
|
78
|
+
/** Arguments of [[this.onActivateSettingsTab]] event.
|
|
79
|
+
* @public
|
|
80
|
+
*/
|
|
81
|
+
export interface ActivateSettingsTabEventArgs {
|
|
82
|
+
readonly settingsTabId: string;
|
|
83
|
+
}
|
|
84
|
+
/** Setting Provider interface. Implemented by classes that want to supply settings pages for display in the SettingContainer. The
|
|
85
|
+
* classes that implement this interface need to be registered with the [[SettingsManager]].
|
|
86
|
+
* @public
|
|
87
|
+
*/
|
|
88
|
+
export interface SettingsTabsProvider {
|
|
89
|
+
/** Id of provider, used to remove registration. */
|
|
90
|
+
readonly id: string;
|
|
91
|
+
getSettingEntries(stageId: string, stageUsage: string): ReadonlyArray<SettingsTabEntry> | undefined;
|
|
92
|
+
}
|
|
93
|
+
/** Settings Manager class. Hold registration of settings providers and supplies events for the provided settings pages to listen.
|
|
94
|
+
* @public
|
|
95
|
+
*/
|
|
96
|
+
export declare class SettingsManager {
|
|
97
|
+
private _providers;
|
|
98
|
+
/** Event raised when SettingsProviders are changed.
|
|
99
|
+
*/
|
|
100
|
+
readonly onSettingsProvidersChanged: SettingsProvidersChangedEvent;
|
|
101
|
+
/** Event raised solely for a settings page to monitor so it can save its settings before continuing tab activation.
|
|
102
|
+
* See React hook function `useSaveBeforeActivatingNewSettingsTab`.
|
|
103
|
+
*/
|
|
104
|
+
readonly onProcessSettingsTabActivation: ProcessSettingsTabActivationEvent;
|
|
105
|
+
/** Event raised when the settings container will be closed. Any setting page component that is 'modal' should register to
|
|
106
|
+
* listen to this event so that it can save its state before closing. See React hook function `useSaveBeforeClosingSettingsContainer`.
|
|
107
|
+
*/
|
|
108
|
+
readonly onProcessSettingsContainerClose: ProcessSettingsContainerCloseEvent;
|
|
109
|
+
/** Event raised to change the active settings tab shown in UI. Monitored by the SettingsContainer.
|
|
110
|
+
* @internal
|
|
111
|
+
*/
|
|
112
|
+
readonly onActivateSettingsTab: ActivateSettingsTabEvent;
|
|
113
|
+
/** Event monitored by SettingsContainer to process request to close the settings container.
|
|
114
|
+
* @internal
|
|
115
|
+
*/
|
|
116
|
+
readonly onCloseSettingsContainer: CloseSettingsContainerEvent;
|
|
117
|
+
/** @public */
|
|
118
|
+
get providers(): ReadonlyArray<SettingsTabsProvider>;
|
|
119
|
+
set providers(p: ReadonlyArray<SettingsTabsProvider>);
|
|
120
|
+
/** Called by application when an tool, keyin, or other process want to change the active settings tab/page giving the current tab/page and opportunity
|
|
121
|
+
* to save its state.
|
|
122
|
+
*/
|
|
123
|
+
activateSettingsTab(settingsTabId: string): void;
|
|
124
|
+
/** Called by application when the Settings Container is to be closed. The function to invoke to actually close the Settings Container is
|
|
125
|
+
* passed in and executed once the active settings tab/page has a chance to save its settings.
|
|
126
|
+
*/
|
|
127
|
+
closeSettingsContainer(closeFunc: (args: any) => void, closeFuncArgs?: any): void;
|
|
128
|
+
addSettingsProvider(settingsProvider: SettingsTabsProvider): void;
|
|
129
|
+
removeSettingsProvider(providerId: string): boolean;
|
|
130
|
+
/** Get an array of SettingsTabEntry objects to populate the settings container. */
|
|
131
|
+
getSettingEntries(stageId: string, stageUsage: string): Array<SettingsTabEntry>;
|
|
132
|
+
}
|
|
133
133
|
//# sourceMappingURL=SettingsManager.d.ts.map
|
|
@@ -1,114 +1,114 @@
|
|
|
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 Settings
|
|
7
|
-
*/
|
|
8
|
-
import { BeUiEvent, Logger } from "@itwin/core-bentley";
|
|
9
|
-
import { UiCore } from "../UiCore";
|
|
10
|
-
/** Event class for [[this.onSettingsProvidersChanged]] which is emitted when a new SettingsTabsProvider is added or removed.
|
|
11
|
-
* @public
|
|
12
|
-
*/
|
|
13
|
-
export class SettingsProvidersChangedEvent extends BeUiEvent {
|
|
14
|
-
}
|
|
15
|
-
/** Event class for [[this.onProcessSettingsTabActivation]] which is emitted when a new Tab needs to be activated. This allows the current
|
|
16
|
-
* settings page to save its settings before activating the new SettingTab.
|
|
17
|
-
* @public
|
|
18
|
-
*/
|
|
19
|
-
export class ProcessSettingsTabActivationEvent extends BeUiEvent {
|
|
20
|
-
}
|
|
21
|
-
/** Event class for [[this.onProcessSettingsContainerClose]] which is emitted when the settings container will be closed. This allows the current
|
|
22
|
-
* settings page to save its settings before calling the function to close the container.
|
|
23
|
-
* @public
|
|
24
|
-
*/
|
|
25
|
-
export class ProcessSettingsContainerCloseEvent extends BeUiEvent {
|
|
26
|
-
}
|
|
27
|
-
/** Event class for [[this.onCloseSettingsContainer]] which is monitored by the settings container and indicates that some out process want to close the settings container.
|
|
28
|
-
* @internal
|
|
29
|
-
*/
|
|
30
|
-
export class CloseSettingsContainerEvent extends BeUiEvent {
|
|
31
|
-
}
|
|
32
|
-
/** Event class for [[this.onActivateSettingsTab]] which is emitted when API call needs to set the active settings tab (ie via Tool key-in).
|
|
33
|
-
* @public
|
|
34
|
-
*/
|
|
35
|
-
export class ActivateSettingsTabEvent extends BeUiEvent {
|
|
36
|
-
}
|
|
37
|
-
/** Settings Manager class. Hold registration of settings providers and supplies events for the provided settings pages to listen.
|
|
38
|
-
* @public
|
|
39
|
-
*/
|
|
40
|
-
export class SettingsManager {
|
|
41
|
-
constructor() {
|
|
42
|
-
this._providers = [];
|
|
43
|
-
/** Event raised when SettingsProviders are changed.
|
|
44
|
-
*/
|
|
45
|
-
this.onSettingsProvidersChanged = new SettingsProvidersChangedEvent();
|
|
46
|
-
/** Event raised solely for a settings page to monitor so it can save its settings before continuing tab activation.
|
|
47
|
-
* See React hook function `useSaveBeforeActivatingNewSettingsTab`.
|
|
48
|
-
*/
|
|
49
|
-
this.onProcessSettingsTabActivation = new ProcessSettingsTabActivationEvent();
|
|
50
|
-
/** Event raised when the settings container will be closed. Any setting page component that is 'modal' should register to
|
|
51
|
-
* listen to this event so that it can save its state before closing. See React hook function `useSaveBeforeClosingSettingsContainer`.
|
|
52
|
-
*/
|
|
53
|
-
this.onProcessSettingsContainerClose = new ProcessSettingsContainerCloseEvent();
|
|
54
|
-
/** Event raised to change the active settings tab shown in UI. Monitored by the SettingsContainer.
|
|
55
|
-
* @internal
|
|
56
|
-
*/
|
|
57
|
-
this.onActivateSettingsTab = new ActivateSettingsTabEvent();
|
|
58
|
-
/** Event monitored by SettingsContainer to process request to close the settings container.
|
|
59
|
-
* @internal
|
|
60
|
-
*/
|
|
61
|
-
this.onCloseSettingsContainer = new CloseSettingsContainerEvent();
|
|
62
|
-
}
|
|
63
|
-
/** @public */
|
|
64
|
-
get providers() { return this._providers; }
|
|
65
|
-
set providers(p) {
|
|
66
|
-
this._providers = p;
|
|
67
|
-
this.onSettingsProvidersChanged.emit({ providers: p });
|
|
68
|
-
}
|
|
69
|
-
/** Called by application when an tool, keyin, or other process want to change the active settings tab/page giving the current tab/page and opportunity
|
|
70
|
-
* to save its state.
|
|
71
|
-
*/
|
|
72
|
-
activateSettingsTab(settingsTabId) {
|
|
73
|
-
this.onActivateSettingsTab.emit({ settingsTabId });
|
|
74
|
-
}
|
|
75
|
-
/** Called by application when the Settings Container is to be closed. The function to invoke to actually close the Settings Container is
|
|
76
|
-
* passed in and executed once the active settings tab/page has a chance to save its settings.
|
|
77
|
-
*/
|
|
78
|
-
closeSettingsContainer(closeFunc, closeFuncArgs) {
|
|
79
|
-
this.onCloseSettingsContainer.emit({ closeFunc, closeFuncArgs });
|
|
80
|
-
}
|
|
81
|
-
addSettingsProvider(settingsProvider) {
|
|
82
|
-
const foundProvider = this._providers.find((p) => p.id === settingsProvider.id);
|
|
83
|
-
if (!foundProvider) {
|
|
84
|
-
const updatedProviders = [
|
|
85
|
-
...this.providers,
|
|
86
|
-
settingsProvider,
|
|
87
|
-
];
|
|
88
|
-
this.providers = updatedProviders;
|
|
89
|
-
}
|
|
90
|
-
else {
|
|
91
|
-
Logger.logInfo(UiCore.loggerCategory(this), `Settings Provider with id of ${settingsProvider.id} has already been registered`);
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
removeSettingsProvider(providerId) {
|
|
95
|
-
let result = false;
|
|
96
|
-
const updatedProviders = this._providers.filter((p) => p.id !== providerId);
|
|
97
|
-
if (updatedProviders.length !== this._providers.length) {
|
|
98
|
-
this.providers = updatedProviders;
|
|
99
|
-
result = true;
|
|
100
|
-
}
|
|
101
|
-
return result;
|
|
102
|
-
}
|
|
103
|
-
/** Get an array of SettingsTabEntry objects to populate the settings container. */
|
|
104
|
-
getSettingEntries(stageId, stageUsage) {
|
|
105
|
-
const allSettingEntries = [];
|
|
106
|
-
// Consult the registered SettingsProviders
|
|
107
|
-
this._providers.forEach((p) => {
|
|
108
|
-
const entries = p.getSettingEntries(stageId, stageUsage);
|
|
109
|
-
entries && allSettingEntries.push(...entries);
|
|
110
|
-
});
|
|
111
|
-
return allSettingEntries;
|
|
112
|
-
}
|
|
113
|
-
}
|
|
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 Settings
|
|
7
|
+
*/
|
|
8
|
+
import { BeUiEvent, Logger } from "@itwin/core-bentley";
|
|
9
|
+
import { UiCore } from "../UiCore";
|
|
10
|
+
/** Event class for [[this.onSettingsProvidersChanged]] which is emitted when a new SettingsTabsProvider is added or removed.
|
|
11
|
+
* @public
|
|
12
|
+
*/
|
|
13
|
+
export class SettingsProvidersChangedEvent extends BeUiEvent {
|
|
14
|
+
}
|
|
15
|
+
/** Event class for [[this.onProcessSettingsTabActivation]] which is emitted when a new Tab needs to be activated. This allows the current
|
|
16
|
+
* settings page to save its settings before activating the new SettingTab.
|
|
17
|
+
* @public
|
|
18
|
+
*/
|
|
19
|
+
export class ProcessSettingsTabActivationEvent extends BeUiEvent {
|
|
20
|
+
}
|
|
21
|
+
/** Event class for [[this.onProcessSettingsContainerClose]] which is emitted when the settings container will be closed. This allows the current
|
|
22
|
+
* settings page to save its settings before calling the function to close the container.
|
|
23
|
+
* @public
|
|
24
|
+
*/
|
|
25
|
+
export class ProcessSettingsContainerCloseEvent extends BeUiEvent {
|
|
26
|
+
}
|
|
27
|
+
/** Event class for [[this.onCloseSettingsContainer]] which is monitored by the settings container and indicates that some out process want to close the settings container.
|
|
28
|
+
* @internal
|
|
29
|
+
*/
|
|
30
|
+
export class CloseSettingsContainerEvent extends BeUiEvent {
|
|
31
|
+
}
|
|
32
|
+
/** Event class for [[this.onActivateSettingsTab]] which is emitted when API call needs to set the active settings tab (ie via Tool key-in).
|
|
33
|
+
* @public
|
|
34
|
+
*/
|
|
35
|
+
export class ActivateSettingsTabEvent extends BeUiEvent {
|
|
36
|
+
}
|
|
37
|
+
/** Settings Manager class. Hold registration of settings providers and supplies events for the provided settings pages to listen.
|
|
38
|
+
* @public
|
|
39
|
+
*/
|
|
40
|
+
export class SettingsManager {
|
|
41
|
+
constructor() {
|
|
42
|
+
this._providers = [];
|
|
43
|
+
/** Event raised when SettingsProviders are changed.
|
|
44
|
+
*/
|
|
45
|
+
this.onSettingsProvidersChanged = new SettingsProvidersChangedEvent();
|
|
46
|
+
/** Event raised solely for a settings page to monitor so it can save its settings before continuing tab activation.
|
|
47
|
+
* See React hook function `useSaveBeforeActivatingNewSettingsTab`.
|
|
48
|
+
*/
|
|
49
|
+
this.onProcessSettingsTabActivation = new ProcessSettingsTabActivationEvent();
|
|
50
|
+
/** Event raised when the settings container will be closed. Any setting page component that is 'modal' should register to
|
|
51
|
+
* listen to this event so that it can save its state before closing. See React hook function `useSaveBeforeClosingSettingsContainer`.
|
|
52
|
+
*/
|
|
53
|
+
this.onProcessSettingsContainerClose = new ProcessSettingsContainerCloseEvent();
|
|
54
|
+
/** Event raised to change the active settings tab shown in UI. Monitored by the SettingsContainer.
|
|
55
|
+
* @internal
|
|
56
|
+
*/
|
|
57
|
+
this.onActivateSettingsTab = new ActivateSettingsTabEvent();
|
|
58
|
+
/** Event monitored by SettingsContainer to process request to close the settings container.
|
|
59
|
+
* @internal
|
|
60
|
+
*/
|
|
61
|
+
this.onCloseSettingsContainer = new CloseSettingsContainerEvent();
|
|
62
|
+
}
|
|
63
|
+
/** @public */
|
|
64
|
+
get providers() { return this._providers; }
|
|
65
|
+
set providers(p) {
|
|
66
|
+
this._providers = p;
|
|
67
|
+
this.onSettingsProvidersChanged.emit({ providers: p });
|
|
68
|
+
}
|
|
69
|
+
/** Called by application when an tool, keyin, or other process want to change the active settings tab/page giving the current tab/page and opportunity
|
|
70
|
+
* to save its state.
|
|
71
|
+
*/
|
|
72
|
+
activateSettingsTab(settingsTabId) {
|
|
73
|
+
this.onActivateSettingsTab.emit({ settingsTabId });
|
|
74
|
+
}
|
|
75
|
+
/** Called by application when the Settings Container is to be closed. The function to invoke to actually close the Settings Container is
|
|
76
|
+
* passed in and executed once the active settings tab/page has a chance to save its settings.
|
|
77
|
+
*/
|
|
78
|
+
closeSettingsContainer(closeFunc, closeFuncArgs) {
|
|
79
|
+
this.onCloseSettingsContainer.emit({ closeFunc, closeFuncArgs });
|
|
80
|
+
}
|
|
81
|
+
addSettingsProvider(settingsProvider) {
|
|
82
|
+
const foundProvider = this._providers.find((p) => p.id === settingsProvider.id);
|
|
83
|
+
if (!foundProvider) {
|
|
84
|
+
const updatedProviders = [
|
|
85
|
+
...this.providers,
|
|
86
|
+
settingsProvider,
|
|
87
|
+
];
|
|
88
|
+
this.providers = updatedProviders;
|
|
89
|
+
}
|
|
90
|
+
else {
|
|
91
|
+
Logger.logInfo(UiCore.loggerCategory(this), `Settings Provider with id of ${settingsProvider.id} has already been registered`);
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
removeSettingsProvider(providerId) {
|
|
95
|
+
let result = false;
|
|
96
|
+
const updatedProviders = this._providers.filter((p) => p.id !== providerId);
|
|
97
|
+
if (updatedProviders.length !== this._providers.length) {
|
|
98
|
+
this.providers = updatedProviders;
|
|
99
|
+
result = true;
|
|
100
|
+
}
|
|
101
|
+
return result;
|
|
102
|
+
}
|
|
103
|
+
/** Get an array of SettingsTabEntry objects to populate the settings container. */
|
|
104
|
+
getSettingEntries(stageId, stageUsage) {
|
|
105
|
+
const allSettingEntries = [];
|
|
106
|
+
// Consult the registered SettingsProviders
|
|
107
|
+
this._providers.forEach((p) => {
|
|
108
|
+
const entries = p.getSettingEntries(stageId, stageUsage);
|
|
109
|
+
entries && allSettingEntries.push(...entries);
|
|
110
|
+
});
|
|
111
|
+
return allSettingEntries;
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
114
|
//# sourceMappingURL=SettingsManager.js.map
|
|
@@ -1,72 +1,72 @@
|
|
|
1
|
-
/** @packageDocumentation
|
|
2
|
-
* @module Tabs
|
|
3
|
-
*/
|
|
4
|
-
import * as React from "react";
|
|
5
|
-
import { CommonProps } from "../utils/Props";
|
|
6
|
-
import { Orientation } from "../enums/Orientation";
|
|
7
|
-
/** TabLabel provides ability to define label, icon, and tooltip for a tab entry. The tooltip can be defined as JSX|Element
|
|
8
|
-
* to support react-tooltip component or a string that will be use to set the title property.
|
|
9
|
-
* @public
|
|
10
|
-
*/
|
|
11
|
-
export interface TabLabel {
|
|
12
|
-
label: string;
|
|
13
|
-
subLabel?: string;
|
|
14
|
-
icon?: string | JSX.Element;
|
|
15
|
-
tabId: string;
|
|
16
|
-
/** tooltip allows JSX.Element to support styled tooltips like react-tooltip. */
|
|
17
|
-
tooltip?: string | JSX.Element;
|
|
18
|
-
disabled?: boolean;
|
|
19
|
-
}
|
|
20
|
-
/** Properties for the [[VerticalTabs]] component
|
|
21
|
-
* @public
|
|
22
|
-
*/
|
|
23
|
-
export interface TabsProps extends React.AllHTMLAttributes<HTMLUListElement>, CommonProps {
|
|
24
|
-
/** Text shown for each tab
|
|
25
|
-
* @public */
|
|
26
|
-
labels: Array<string | TabLabel>;
|
|
27
|
-
/** Handler for activating a tab */
|
|
28
|
-
onActivateTab?: (index: number) => any;
|
|
29
|
-
/** Index of the initial active tab */
|
|
30
|
-
activeIndex?: number;
|
|
31
|
-
/** Indicates whether the bar on the active tab is green instead of the default blue */
|
|
32
|
-
green?: boolean;
|
|
33
|
-
}
|
|
34
|
-
/** State for [[Tabs]] component
|
|
35
|
-
* @internal
|
|
36
|
-
*/
|
|
37
|
-
interface TabsState {
|
|
38
|
-
activeIndex: number;
|
|
39
|
-
}
|
|
40
|
-
/** Properties for the base [[Tabs]] component
|
|
41
|
-
* @public
|
|
42
|
-
*/
|
|
43
|
-
export interface MainTabsProps extends TabsProps {
|
|
44
|
-
/** Main CSS class name */
|
|
45
|
-
mainClassName: string;
|
|
46
|
-
/** Orientation of the Tabs list */
|
|
47
|
-
orientation: Orientation;
|
|
48
|
-
}
|
|
49
|
-
/** Tabs meant to represent the current position in a page/section
|
|
50
|
-
* @public
|
|
51
|
-
*/
|
|
52
|
-
export declare class Tabs extends React.PureComponent<MainTabsProps, TabsState> {
|
|
53
|
-
private _anchorRefs;
|
|
54
|
-
private _itemKeyboardNavigator;
|
|
55
|
-
constructor(props: MainTabsProps);
|
|
56
|
-
private validateActiveIndex;
|
|
57
|
-
/** @internal */
|
|
58
|
-
componentDidMount(): void;
|
|
59
|
-
/** @internal */
|
|
60
|
-
componentDidUpdate(prevProps: MainTabsProps): void;
|
|
61
|
-
private _handleFocusItem;
|
|
62
|
-
private _handleTabClick;
|
|
63
|
-
/** Handle keydown on tabs */
|
|
64
|
-
private _handleKeyDownEvent;
|
|
65
|
-
/** Handle keyup on tabs */
|
|
66
|
-
private _handleKeyUpEvent;
|
|
67
|
-
private _activateTab;
|
|
68
|
-
/** @internal */
|
|
69
|
-
render(): JSX.Element;
|
|
70
|
-
}
|
|
71
|
-
export {};
|
|
1
|
+
/** @packageDocumentation
|
|
2
|
+
* @module Tabs
|
|
3
|
+
*/
|
|
4
|
+
import * as React from "react";
|
|
5
|
+
import { CommonProps } from "../utils/Props";
|
|
6
|
+
import { Orientation } from "../enums/Orientation";
|
|
7
|
+
/** TabLabel provides ability to define label, icon, and tooltip for a tab entry. The tooltip can be defined as JSX|Element
|
|
8
|
+
* to support react-tooltip component or a string that will be use to set the title property.
|
|
9
|
+
* @public
|
|
10
|
+
*/
|
|
11
|
+
export interface TabLabel {
|
|
12
|
+
label: string;
|
|
13
|
+
subLabel?: string;
|
|
14
|
+
icon?: string | JSX.Element;
|
|
15
|
+
tabId: string;
|
|
16
|
+
/** tooltip allows JSX.Element to support styled tooltips like react-tooltip. */
|
|
17
|
+
tooltip?: string | JSX.Element;
|
|
18
|
+
disabled?: boolean;
|
|
19
|
+
}
|
|
20
|
+
/** Properties for the [[VerticalTabs]] component
|
|
21
|
+
* @public
|
|
22
|
+
*/
|
|
23
|
+
export interface TabsProps extends React.AllHTMLAttributes<HTMLUListElement>, CommonProps {
|
|
24
|
+
/** Text shown for each tab
|
|
25
|
+
* @public */
|
|
26
|
+
labels: Array<string | TabLabel>;
|
|
27
|
+
/** Handler for activating a tab */
|
|
28
|
+
onActivateTab?: (index: number) => any;
|
|
29
|
+
/** Index of the initial active tab */
|
|
30
|
+
activeIndex?: number;
|
|
31
|
+
/** Indicates whether the bar on the active tab is green instead of the default blue */
|
|
32
|
+
green?: boolean;
|
|
33
|
+
}
|
|
34
|
+
/** State for [[Tabs]] component
|
|
35
|
+
* @internal
|
|
36
|
+
*/
|
|
37
|
+
interface TabsState {
|
|
38
|
+
activeIndex: number;
|
|
39
|
+
}
|
|
40
|
+
/** Properties for the base [[Tabs]] component
|
|
41
|
+
* @public
|
|
42
|
+
*/
|
|
43
|
+
export interface MainTabsProps extends TabsProps {
|
|
44
|
+
/** Main CSS class name */
|
|
45
|
+
mainClassName: string;
|
|
46
|
+
/** Orientation of the Tabs list */
|
|
47
|
+
orientation: Orientation;
|
|
48
|
+
}
|
|
49
|
+
/** Tabs meant to represent the current position in a page/section
|
|
50
|
+
* @public
|
|
51
|
+
*/
|
|
52
|
+
export declare class Tabs extends React.PureComponent<MainTabsProps, TabsState> {
|
|
53
|
+
private _anchorRefs;
|
|
54
|
+
private _itemKeyboardNavigator;
|
|
55
|
+
constructor(props: MainTabsProps);
|
|
56
|
+
private validateActiveIndex;
|
|
57
|
+
/** @internal */
|
|
58
|
+
componentDidMount(): void;
|
|
59
|
+
/** @internal */
|
|
60
|
+
componentDidUpdate(prevProps: MainTabsProps): void;
|
|
61
|
+
private _handleFocusItem;
|
|
62
|
+
private _handleTabClick;
|
|
63
|
+
/** Handle keydown on tabs */
|
|
64
|
+
private _handleKeyDownEvent;
|
|
65
|
+
/** Handle keyup on tabs */
|
|
66
|
+
private _handleKeyUpEvent;
|
|
67
|
+
private _activateTab;
|
|
68
|
+
/** @internal */
|
|
69
|
+
render(): JSX.Element;
|
|
70
|
+
}
|
|
71
|
+
export {};
|
|
72
72
|
//# sourceMappingURL=Tabs.d.ts.map
|