@itwin/appui-react 3.5.0-dev.57 → 3.5.0-dev.59
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/cjs/appui-react/configurableui/state.d.ts +1 -1
- package/lib/cjs/appui-react/configurableui/state.js +1 -1
- package/lib/cjs/appui-react/configurableui/state.js.map +1 -1
- package/lib/cjs/appui-react/content/ContentGroup.d.ts +8 -0
- package/lib/cjs/appui-react/content/ContentGroup.d.ts.map +1 -1
- package/lib/cjs/appui-react/content/ContentGroup.js.map +1 -1
- package/lib/cjs/appui-react/frontstage/Frontstage.d.ts +5 -1
- package/lib/cjs/appui-react/frontstage/Frontstage.d.ts.map +1 -1
- package/lib/cjs/appui-react/frontstage/Frontstage.js +1 -0
- package/lib/cjs/appui-react/frontstage/Frontstage.js.map +1 -1
- package/lib/cjs/appui-react/frontstage/FrontstageComposer.d.ts.map +1 -1
- package/lib/cjs/appui-react/frontstage/FrontstageComposer.js +5 -2
- package/lib/cjs/appui-react/frontstage/FrontstageComposer.js.map +1 -1
- package/lib/cjs/appui-react/frontstage/FrontstageConfig.d.ts +40 -0
- package/lib/cjs/appui-react/frontstage/FrontstageConfig.d.ts.map +1 -0
- package/lib/cjs/appui-react/frontstage/FrontstageConfig.js +10 -0
- package/lib/cjs/appui-react/frontstage/FrontstageConfig.js.map +1 -0
- package/lib/cjs/appui-react/frontstage/FrontstageDef.d.ts +8 -0
- package/lib/cjs/appui-react/frontstage/FrontstageDef.d.ts.map +1 -1
- package/lib/cjs/appui-react/frontstage/FrontstageDef.js +114 -6
- package/lib/cjs/appui-react/frontstage/FrontstageDef.js.map +1 -1
- package/lib/cjs/appui-react/frontstage/FrontstageManager.d.ts +0 -4
- package/lib/cjs/appui-react/frontstage/FrontstageManager.d.ts.map +1 -1
- package/lib/cjs/appui-react/frontstage/FrontstageManager.js +1 -8
- package/lib/cjs/appui-react/frontstage/FrontstageManager.js.map +1 -1
- package/lib/cjs/appui-react/frontstage/FrontstageProvider.d.ts +9 -1
- package/lib/cjs/appui-react/frontstage/FrontstageProvider.d.ts.map +1 -1
- package/lib/cjs/appui-react/frontstage/FrontstageProvider.js +1 -1
- package/lib/cjs/appui-react/frontstage/FrontstageProvider.js.map +1 -1
- package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.js +14 -5
- package/lib/cjs/appui-react/frontstage/StandardFrontstageProvider.js.map +1 -1
- package/lib/cjs/appui-react/settings/ui/UiSettingsPage.js +1 -1
- package/lib/cjs/appui-react/settings/ui/UiSettingsPage.js.map +1 -1
- package/lib/cjs/appui-react/shared/ActionButtonItemDef.d.ts.map +1 -1
- package/lib/cjs/appui-react/shared/ActionButtonItemDef.js +1 -1
- package/lib/cjs/appui-react/shared/ActionButtonItemDef.js.map +1 -1
- package/lib/cjs/appui-react/stagepanels/StagePanel.d.ts +3 -0
- package/lib/cjs/appui-react/stagepanels/StagePanel.d.ts.map +1 -1
- package/lib/cjs/appui-react/stagepanels/StagePanel.js +1 -0
- package/lib/cjs/appui-react/stagepanels/StagePanel.js.map +1 -1
- package/lib/cjs/appui-react/stagepanels/StagePanelConfig.d.ts +39 -0
- package/lib/cjs/appui-react/stagepanels/StagePanelConfig.d.ts.map +1 -0
- package/lib/cjs/appui-react/stagepanels/StagePanelConfig.js +11 -0
- package/lib/cjs/appui-react/stagepanels/StagePanelConfig.js.map +1 -0
- package/lib/cjs/appui-react/stagepanels/StagePanelDef.d.ts +6 -6
- package/lib/cjs/appui-react/stagepanels/StagePanelDef.d.ts.map +1 -1
- package/lib/cjs/appui-react/stagepanels/StagePanelDef.js +4 -7
- package/lib/cjs/appui-react/stagepanels/StagePanelDef.js.map +1 -1
- package/lib/cjs/appui-react/uistate/AppUiSettings.d.ts +2 -0
- package/lib/cjs/appui-react/uistate/AppUiSettings.d.ts.map +1 -1
- package/lib/cjs/appui-react/uistate/AppUiSettings.js +4 -0
- package/lib/cjs/appui-react/uistate/AppUiSettings.js.map +1 -1
- package/lib/cjs/appui-react/widget-panels/StatusBar.d.ts.map +1 -1
- package/lib/cjs/appui-react/widget-panels/StatusBar.js +5 -2
- package/lib/cjs/appui-react/widget-panels/StatusBar.js.map +1 -1
- package/lib/cjs/appui-react/widget-panels/Toolbars.d.ts.map +1 -1
- package/lib/cjs/appui-react/widget-panels/Toolbars.js +10 -3
- package/lib/cjs/appui-react/widget-panels/Toolbars.js.map +1 -1
- package/lib/cjs/appui-react/widgets/NavigationWidget.js.map +1 -1
- package/lib/cjs/appui-react/widgets/ToolWidget.js.map +1 -1
- package/lib/cjs/appui-react/widgets/ToolbarWidgetBase.js.map +1 -1
- package/lib/cjs/appui-react/widgets/Widget.d.ts +1 -0
- package/lib/cjs/appui-react/widgets/Widget.d.ts.map +1 -1
- package/lib/cjs/appui-react/widgets/Widget.js +1 -0
- package/lib/cjs/appui-react/widgets/Widget.js.map +1 -1
- package/lib/cjs/appui-react/widgets/WidgetConfig.d.ts +11 -0
- package/lib/cjs/appui-react/widgets/WidgetConfig.d.ts.map +1 -0
- package/lib/cjs/appui-react/widgets/WidgetConfig.js +10 -0
- package/lib/cjs/appui-react/widgets/WidgetConfig.js.map +1 -0
- package/lib/cjs/appui-react/widgets/WidgetDef.d.ts +10 -1
- package/lib/cjs/appui-react/widgets/WidgetDef.d.ts.map +1 -1
- package/lib/cjs/appui-react/widgets/WidgetDef.js +13 -10
- package/lib/cjs/appui-react/widgets/WidgetDef.js.map +1 -1
- package/lib/cjs/appui-react/widgets/WidgetProps.d.ts +1 -0
- package/lib/cjs/appui-react/widgets/WidgetProps.d.ts.map +1 -1
- package/lib/cjs/appui-react/widgets/WidgetProps.js.map +1 -1
- package/lib/cjs/appui-react/zones/Zone.d.ts +5 -1
- package/lib/cjs/appui-react/zones/Zone.d.ts.map +1 -1
- package/lib/cjs/appui-react/zones/Zone.js +1 -0
- package/lib/cjs/appui-react/zones/Zone.js.map +1 -1
- package/lib/cjs/appui-react/zones/ZoneDef.d.ts +1 -0
- package/lib/cjs/appui-react/zones/ZoneDef.d.ts.map +1 -1
- package/lib/cjs/appui-react/zones/ZoneDef.js +2 -2
- package/lib/cjs/appui-react/zones/ZoneDef.js.map +1 -1
- package/lib/cjs/appui-react.d.ts +3 -0
- package/lib/cjs/appui-react.d.ts.map +1 -1
- package/lib/cjs/appui-react.js +3 -0
- package/lib/cjs/appui-react.js.map +1 -1
- package/lib/esm/appui-react/configurableui/state.d.ts +1 -1
- package/lib/esm/appui-react/configurableui/state.js +1 -1
- package/lib/esm/appui-react/configurableui/state.js.map +1 -1
- package/lib/esm/appui-react/content/ContentGroup.d.ts +8 -0
- package/lib/esm/appui-react/content/ContentGroup.d.ts.map +1 -1
- package/lib/esm/appui-react/content/ContentGroup.js.map +1 -1
- package/lib/esm/appui-react/frontstage/Frontstage.d.ts +5 -1
- package/lib/esm/appui-react/frontstage/Frontstage.d.ts.map +1 -1
- package/lib/esm/appui-react/frontstage/Frontstage.js +1 -0
- package/lib/esm/appui-react/frontstage/Frontstage.js.map +1 -1
- package/lib/esm/appui-react/frontstage/FrontstageComposer.d.ts.map +1 -1
- package/lib/esm/appui-react/frontstage/FrontstageComposer.js +6 -3
- package/lib/esm/appui-react/frontstage/FrontstageComposer.js.map +1 -1
- package/lib/esm/appui-react/frontstage/FrontstageConfig.d.ts +40 -0
- package/lib/esm/appui-react/frontstage/FrontstageConfig.d.ts.map +1 -0
- package/lib/esm/appui-react/frontstage/FrontstageConfig.js +9 -0
- package/lib/esm/appui-react/frontstage/FrontstageConfig.js.map +1 -0
- package/lib/esm/appui-react/frontstage/FrontstageDef.d.ts +8 -0
- package/lib/esm/appui-react/frontstage/FrontstageDef.d.ts.map +1 -1
- package/lib/esm/appui-react/frontstage/FrontstageDef.js +115 -7
- package/lib/esm/appui-react/frontstage/FrontstageDef.js.map +1 -1
- package/lib/esm/appui-react/frontstage/FrontstageManager.d.ts +0 -4
- package/lib/esm/appui-react/frontstage/FrontstageManager.d.ts.map +1 -1
- package/lib/esm/appui-react/frontstage/FrontstageManager.js +1 -8
- package/lib/esm/appui-react/frontstage/FrontstageManager.js.map +1 -1
- package/lib/esm/appui-react/frontstage/FrontstageProvider.d.ts +9 -1
- package/lib/esm/appui-react/frontstage/FrontstageProvider.d.ts.map +1 -1
- package/lib/esm/appui-react/frontstage/FrontstageProvider.js +1 -1
- package/lib/esm/appui-react/frontstage/FrontstageProvider.js.map +1 -1
- package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.js +14 -5
- package/lib/esm/appui-react/frontstage/StandardFrontstageProvider.js.map +1 -1
- package/lib/esm/appui-react/settings/ui/UiSettingsPage.js +1 -1
- package/lib/esm/appui-react/settings/ui/UiSettingsPage.js.map +1 -1
- package/lib/esm/appui-react/shared/ActionButtonItemDef.d.ts.map +1 -1
- package/lib/esm/appui-react/shared/ActionButtonItemDef.js +1 -1
- package/lib/esm/appui-react/shared/ActionButtonItemDef.js.map +1 -1
- package/lib/esm/appui-react/stagepanels/StagePanel.d.ts +3 -0
- package/lib/esm/appui-react/stagepanels/StagePanel.d.ts.map +1 -1
- package/lib/esm/appui-react/stagepanels/StagePanel.js +1 -0
- package/lib/esm/appui-react/stagepanels/StagePanel.js.map +1 -1
- package/lib/esm/appui-react/stagepanels/StagePanelConfig.d.ts +39 -0
- package/lib/esm/appui-react/stagepanels/StagePanelConfig.d.ts.map +1 -0
- package/lib/esm/appui-react/stagepanels/StagePanelConfig.js +10 -0
- package/lib/esm/appui-react/stagepanels/StagePanelConfig.js.map +1 -0
- package/lib/esm/appui-react/stagepanels/StagePanelDef.d.ts +6 -6
- package/lib/esm/appui-react/stagepanels/StagePanelDef.d.ts.map +1 -1
- package/lib/esm/appui-react/stagepanels/StagePanelDef.js +4 -7
- package/lib/esm/appui-react/stagepanels/StagePanelDef.js.map +1 -1
- package/lib/esm/appui-react/uistate/AppUiSettings.d.ts +2 -0
- package/lib/esm/appui-react/uistate/AppUiSettings.d.ts.map +1 -1
- package/lib/esm/appui-react/uistate/AppUiSettings.js +4 -0
- package/lib/esm/appui-react/uistate/AppUiSettings.js.map +1 -1
- package/lib/esm/appui-react/widget-panels/StatusBar.d.ts.map +1 -1
- package/lib/esm/appui-react/widget-panels/StatusBar.js +5 -2
- package/lib/esm/appui-react/widget-panels/StatusBar.js.map +1 -1
- package/lib/esm/appui-react/widget-panels/Toolbars.d.ts.map +1 -1
- package/lib/esm/appui-react/widget-panels/Toolbars.js +10 -3
- package/lib/esm/appui-react/widget-panels/Toolbars.js.map +1 -1
- package/lib/esm/appui-react/widgets/NavigationWidget.js.map +1 -1
- package/lib/esm/appui-react/widgets/ToolWidget.js.map +1 -1
- package/lib/esm/appui-react/widgets/ToolbarWidgetBase.js.map +1 -1
- package/lib/esm/appui-react/widgets/Widget.d.ts +1 -0
- package/lib/esm/appui-react/widgets/Widget.d.ts.map +1 -1
- package/lib/esm/appui-react/widgets/Widget.js +1 -0
- package/lib/esm/appui-react/widgets/Widget.js.map +1 -1
- package/lib/esm/appui-react/widgets/WidgetConfig.d.ts +11 -0
- package/lib/esm/appui-react/widgets/WidgetConfig.d.ts.map +1 -0
- package/lib/esm/appui-react/widgets/WidgetConfig.js +9 -0
- package/lib/esm/appui-react/widgets/WidgetConfig.js.map +1 -0
- package/lib/esm/appui-react/widgets/WidgetDef.d.ts +10 -1
- package/lib/esm/appui-react/widgets/WidgetDef.d.ts.map +1 -1
- package/lib/esm/appui-react/widgets/WidgetDef.js +13 -10
- package/lib/esm/appui-react/widgets/WidgetDef.js.map +1 -1
- package/lib/esm/appui-react/widgets/WidgetProps.d.ts +1 -0
- package/lib/esm/appui-react/widgets/WidgetProps.d.ts.map +1 -1
- package/lib/esm/appui-react/widgets/WidgetProps.js.map +1 -1
- package/lib/esm/appui-react/zones/Zone.d.ts +5 -1
- package/lib/esm/appui-react/zones/Zone.d.ts.map +1 -1
- package/lib/esm/appui-react/zones/Zone.js +1 -0
- package/lib/esm/appui-react/zones/Zone.js.map +1 -1
- package/lib/esm/appui-react/zones/ZoneDef.d.ts +1 -0
- package/lib/esm/appui-react/zones/ZoneDef.d.ts.map +1 -1
- package/lib/esm/appui-react/zones/ZoneDef.js +2 -2
- package/lib/esm/appui-react/zones/ZoneDef.js.map +1 -1
- package/lib/esm/appui-react.d.ts +3 -0
- package/lib/esm/appui-react.d.ts.map +1 -1
- package/lib/esm/appui-react.js +3 -0
- package/lib/esm/appui-react.js.map +1 -1
- package/package.json +33 -33
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NavigationWidget.js","sourceRoot":"","sources":["../../../../src/appui-react/widgets/NavigationWidget.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Widget\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { IModelConnection } from \"@itwin/core-frontend\";\r\nimport { UiError } from \"@itwin/appui-abstract\";\r\nimport { ViewClassFullNameChangedEventArgs, ViewportComponentEvents } from \"@itwin/imodel-components-react\";\r\nimport { CommonProps } from \"@itwin/core-react\";\r\nimport { Direction, Tools as NZ_ToolsWidget, ToolbarPanelAlignment } from \"@itwin/appui-layout-react\";\r\nimport { ConfigurableUiControlType } from \"../configurableui/ConfigurableUiControl\";\r\nimport { ConfigurableUiManager } from \"../configurableui/ConfigurableUiManager\";\r\nimport { ContentControlActivatedEventArgs } from \"../content/ContentControl\";\r\nimport { ContentViewManager } from \"../content/ContentViewManager\";\r\nimport { FrontstageManager } from \"../frontstage/FrontstageManager\";\r\nimport { NavigationAidActivatedEventArgs, NavigationAidControl } from \"../navigationaids/NavigationAidControl\";\r\nimport { UiFramework } from \"../UiFramework\";\r\nimport { UiShowHideManager } from \"../utils/UiShowHideManager\";\r\nimport { ToolbarWidgetDefBase } from \"./ToolbarWidgetBase\";\r\nimport { NavigationWidgetProps, WidgetType } from \"./WidgetDef\";\r\n\r\n/** Definition of a Navigation Widget normally displayed in the top right zone in the 9-Zone Layout system.\r\n * @public\r\n * @deprecated use NavigationWidgetComposer instead\r\n */\r\nexport class NavigationWidgetDef extends ToolbarWidgetDefBase { // eslint-disable-line deprecation/deprecation\r\n private _navigationAidId: string;\r\n private _imodel: IModelConnection | undefined;\r\n private _navigationAidControl: NavigationAidControl | undefined;\r\n private _reactNode: React.ReactNode;\r\n\r\n constructor(props: NavigationWidgetProps) {\r\n super(props);\r\n\r\n this.widgetType = WidgetType.Navigation;\r\n // eslint-disable-next-line deprecation/deprecation\r\n this.verticalDirection = (props.verticalDirection !== undefined) ? props.verticalDirection : Direction.Left;\r\n this.horizontalPanelAlignment = ToolbarPanelAlignment.End; // eslint-disable-line deprecation/deprecation\r\n this._navigationAidId = (props.navigationAidId !== undefined) ? props.navigationAidId : \"\";\r\n\r\n const activeStageName = FrontstageManager.activeFrontstageDef ? FrontstageManager.activeFrontstageDef.id : /* istanbul ignore next */ \"\";\r\n this.widgetBaseName = `[${activeStageName}]NavigationWidget`;\r\n }\r\n\r\n public override get reactNode(): React.ReactNode {\r\n // istanbul ignore else\r\n if (!this._reactNode)\r\n this._reactNode = <NavigationWidgetWithDef navigationWidgetDef={this} />;\r\n\r\n return this._reactNode;\r\n }\r\n\r\n public renderCornerItem(): React.ReactNode {\r\n // istanbul ignore if\r\n if (FrontstageManager.isLoading)\r\n return null;\r\n\r\n // istanbul ignore else\r\n if (!this._navigationAidControl && this._navigationAidId) {\r\n const activeContentControl = ContentViewManager.getActiveContentControl();\r\n const viewport = activeContentControl ? activeContentControl.viewport : /* istanbul ignore next */ undefined;\r\n\r\n this._navigationAidControl = ConfigurableUiManager.createControl(this._navigationAidId, this._navigationAidId, { imodel: this._imodel, viewport }) as NavigationAidControl;\r\n if (this._navigationAidControl.getType() !== ConfigurableUiControlType.NavigationAid) {\r\n throw new UiError(UiFramework.loggerCategory(this), `renderCornerItem: navigationAidId '${this._navigationAidId}' is registered to a control that is NOT a NavigationAid`);\r\n }\r\n this._navigationAidControl.initialize();\r\n }\r\n\r\n // istanbul ignore else\r\n if (this._navigationAidControl) {\r\n const size = this._navigationAidControl.getSize() || \"64px\";\r\n const divStyle: React.CSSProperties = {\r\n width: size,\r\n height: size,\r\n };\r\n\r\n return (\r\n <div style={divStyle}>\r\n {this._navigationAidControl.reactNode}\r\n </div>\r\n );\r\n }\r\n\r\n // istanbul ignore next\r\n return null;\r\n }\r\n\r\n public updateNavigationAid(navigationAidId: string, imodel?: IModelConnection): void {\r\n this._navigationAidId = navigationAidId;\r\n this._imodel = imodel;\r\n this._navigationAidControl = undefined;\r\n }\r\n}\r\n\r\n/** Properties for the [[NavigationWidget]] React component.\r\n * @public\r\n * @deprecated use NavigationWidgetComposer instead\r\n */\r\nexport interface NavigationWidgetPropsEx extends NavigationWidgetProps, CommonProps {\r\n iModelConnection?: IModelConnection;\r\n horizontalToolbar?: React.ReactNode;\r\n verticalToolbar?: React.ReactNode;\r\n}\r\n\r\n/** State for the Navigation Widget React component.\r\n * @internal\r\n */\r\ninterface NavigationWidgetState {\r\n navigationWidgetDef: NavigationWidgetDef; // eslint-disable-line deprecation/deprecation\r\n}\r\n\r\n/** Navigation Widget React component.\r\n * @public\r\n * @deprecated use NavigationWidgetComposer instead\r\n */\r\nexport class NavigationWidget extends React.Component<NavigationWidgetPropsEx, NavigationWidgetState> { // eslint-disable-line deprecation/deprecation\r\n\r\n /** @internal */\r\n public override readonly state: Readonly<NavigationWidgetState>;\r\n\r\n constructor(props: NavigationWidgetPropsEx) { // eslint-disable-line deprecation/deprecation\r\n super(props);\r\n\r\n this.state = { navigationWidgetDef: new NavigationWidgetDef(props) }; // eslint-disable-line deprecation/deprecation\r\n }\r\n\r\n /** Adds listeners */\r\n public override componentDidMount() {\r\n FrontstageManager.onContentControlActivatedEvent.addListener(this._handleContentControlActivated);\r\n ViewportComponentEvents.onViewClassFullNameChangedEvent.addListener(this._handleViewClassFullNameChange);\r\n }\r\n\r\n /** Removes listeners */\r\n public override componentWillUnmount() {\r\n FrontstageManager.onContentControlActivatedEvent.removeListener(this._handleContentControlActivated);\r\n ViewportComponentEvents.onViewClassFullNameChangedEvent.removeListener(this._handleViewClassFullNameChange);\r\n }\r\n\r\n private _handleContentControlActivated = (args: ContentControlActivatedEventArgs): void => {\r\n const navigationAidId = args.activeContentControl.navigationAidControl;\r\n setTimeout(() => {\r\n FrontstageManager.setActiveNavigationAid(navigationAidId, this.props.iModelConnection!);\r\n });\r\n };\r\n\r\n private _handleViewClassFullNameChange = (args: ViewClassFullNameChangedEventArgs): void => {\r\n setTimeout(() => {\r\n const activeContentControl = ContentViewManager.getActiveContentControl();\r\n\r\n // istanbul ignore else\r\n if (activeContentControl && args.viewport === activeContentControl.viewport) {\r\n const navigationAidId = activeContentControl.navigationAidControl;\r\n FrontstageManager.setActiveNavigationAid(navigationAidId, this.props.iModelConnection!);\r\n }\r\n });\r\n };\r\n\r\n public override componentDidUpdate(prevProps: NavigationWidgetPropsEx, _prevState: NavigationWidgetState) { // eslint-disable-line deprecation/deprecation\r\n if (this.props !== prevProps) {\r\n this.setState((_, props) => ({ navigationWidgetDef: new NavigationWidgetDef(props) })); // eslint-disable-line deprecation/deprecation\r\n }\r\n }\r\n\r\n public override render(): React.ReactNode {\r\n return (\r\n <NavigationWidgetWithDef\r\n className={this.props.className}\r\n style={this.props.style}\r\n navigationWidgetDef={this.state.navigationWidgetDef}\r\n horizontalToolbar={this.props.horizontalToolbar}\r\n verticalToolbar={this.props.verticalToolbar}\r\n />\r\n );\r\n }\r\n}\r\n\r\n/** Properties for the [[NavigationWidgetWithDef]] component.\r\n */\r\ninterface Props extends CommonProps {\r\n navigationWidgetDef: NavigationWidgetDef; // eslint-disable-line deprecation/deprecation\r\n horizontalToolbar?: React.ReactNode;\r\n verticalToolbar?: React.ReactNode;\r\n}\r\n\r\ninterface NavigationWidgetWithDefState {\r\n horizontalToolbar: React.ReactNode;\r\n verticalToolbar: React.ReactNode;\r\n cornerItem: React.ReactNode;\r\n}\r\n\r\n/** Navigation Widget React component that's passed a NavigationWidgetDef.\r\n */\r\nclass NavigationWidgetWithDef extends React.Component<Props, NavigationWidgetWithDefState> {\r\n\r\n constructor(props: Props) {\r\n super(props);\r\n\r\n const horizontalToolbar = (this.props.horizontalToolbar) ? this.props.horizontalToolbar : this.props.navigationWidgetDef.renderHorizontalToolbar();\r\n const verticalToolbar = (this.props.verticalToolbar) ? this.props.verticalToolbar : this.props.navigationWidgetDef.renderVerticalToolbar();\r\n this.state = { horizontalToolbar, verticalToolbar, cornerItem: null };\r\n }\r\n\r\n private reloadToolbars() {\r\n const horizontalToolbar = (this.props.horizontalToolbar) ? this.props.horizontalToolbar : /* istanbul ignore next */ this.props.navigationWidgetDef.renderHorizontalToolbar();\r\n const verticalToolbar = (this.props.verticalToolbar) ? /* istanbul ignore next */ this.props.verticalToolbar : this.props.navigationWidgetDef.renderVerticalToolbar();\r\n this.setState({ horizontalToolbar, verticalToolbar });\r\n }\r\n\r\n private _handleNavigationAidActivatedEvent = (args: NavigationAidActivatedEventArgs): void => {\r\n this.props.navigationWidgetDef.updateNavigationAid(args.navigationAidId, args.iModelConnection);\r\n const navigationAid = this.props.navigationWidgetDef.renderCornerItem();\r\n this.setState({ cornerItem: navigationAid });\r\n };\r\n\r\n public override componentDidMount() {\r\n FrontstageManager.onNavigationAidActivatedEvent.addListener(this._handleNavigationAidActivatedEvent);\r\n }\r\n\r\n public override componentWillUnmount() {\r\n FrontstageManager.onNavigationAidActivatedEvent.removeListener(this._handleNavigationAidActivatedEvent);\r\n }\r\n\r\n public override componentDidUpdate(prevProps: Props) {\r\n if (this.props !== prevProps)\r\n this.reloadToolbars();\r\n }\r\n\r\n public override render(): React.ReactNode {\r\n return (\r\n <NZ_ToolsWidget isNavigation\r\n className={this.props.className}\r\n style={this.props.style}\r\n button={this.state.cornerItem}\r\n horizontalToolbar={this.state.horizontalToolbar}\r\n verticalToolbar={this.state.verticalToolbar}\r\n preserveSpace={true}\r\n onMouseEnter={UiShowHideManager.handleWidgetMouseEnter}\r\n />\r\n );\r\n }\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"file":"NavigationWidget.js","sourceRoot":"","sources":["../../../../src/appui-react/widgets/NavigationWidget.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Widget\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { IModelConnection } from \"@itwin/core-frontend\";\r\nimport { UiError } from \"@itwin/appui-abstract\";\r\nimport { ViewClassFullNameChangedEventArgs, ViewportComponentEvents } from \"@itwin/imodel-components-react\";\r\nimport { CommonProps } from \"@itwin/core-react\";\r\nimport { Direction, Tools as NZ_ToolsWidget, ToolbarPanelAlignment } from \"@itwin/appui-layout-react\";\r\nimport { ConfigurableUiControlType } from \"../configurableui/ConfigurableUiControl\";\r\nimport { ConfigurableUiManager } from \"../configurableui/ConfigurableUiManager\";\r\nimport { ContentControlActivatedEventArgs } from \"../content/ContentControl\";\r\nimport { ContentViewManager } from \"../content/ContentViewManager\";\r\nimport { FrontstageManager } from \"../frontstage/FrontstageManager\";\r\nimport { NavigationAidActivatedEventArgs, NavigationAidControl } from \"../navigationaids/NavigationAidControl\";\r\nimport { UiFramework } from \"../UiFramework\";\r\nimport { UiShowHideManager } from \"../utils/UiShowHideManager\";\r\nimport { ToolbarWidgetDefBase } from \"./ToolbarWidgetBase\";\r\nimport { NavigationWidgetProps, WidgetType } from \"./WidgetDef\";\r\n\r\n/** Definition of a Navigation Widget normally displayed in the top right zone in the 9-Zone Layout system.\r\n * @public\r\n * @deprecated use NavigationWidgetComposer instead\r\n */\r\nexport class NavigationWidgetDef extends ToolbarWidgetDefBase { // eslint-disable-line deprecation/deprecation\r\n private _navigationAidId: string;\r\n private _imodel: IModelConnection | undefined;\r\n private _navigationAidControl: NavigationAidControl | undefined;\r\n private _reactNode: React.ReactNode;\r\n\r\n constructor(props: NavigationWidgetProps) { // eslint-disable-line deprecation/deprecation\r\n super(props);\r\n\r\n this.widgetType = WidgetType.Navigation;\r\n // eslint-disable-next-line deprecation/deprecation\r\n this.verticalDirection = (props.verticalDirection !== undefined) ? props.verticalDirection : Direction.Left;\r\n this.horizontalPanelAlignment = ToolbarPanelAlignment.End; // eslint-disable-line deprecation/deprecation\r\n this._navigationAidId = (props.navigationAidId !== undefined) ? props.navigationAidId : \"\";\r\n\r\n const activeStageName = FrontstageManager.activeFrontstageDef ? FrontstageManager.activeFrontstageDef.id : /* istanbul ignore next */ \"\";\r\n this.widgetBaseName = `[${activeStageName}]NavigationWidget`;\r\n }\r\n\r\n public override get reactNode(): React.ReactNode {\r\n // istanbul ignore else\r\n if (!this._reactNode)\r\n this._reactNode = <NavigationWidgetWithDef navigationWidgetDef={this} />;\r\n\r\n return this._reactNode;\r\n }\r\n\r\n public renderCornerItem(): React.ReactNode {\r\n // istanbul ignore if\r\n if (FrontstageManager.isLoading)\r\n return null;\r\n\r\n // istanbul ignore else\r\n if (!this._navigationAidControl && this._navigationAidId) {\r\n const activeContentControl = ContentViewManager.getActiveContentControl();\r\n const viewport = activeContentControl ? activeContentControl.viewport : /* istanbul ignore next */ undefined;\r\n\r\n this._navigationAidControl = ConfigurableUiManager.createControl(this._navigationAidId, this._navigationAidId, { imodel: this._imodel, viewport }) as NavigationAidControl;\r\n if (this._navigationAidControl.getType() !== ConfigurableUiControlType.NavigationAid) {\r\n throw new UiError(UiFramework.loggerCategory(this), `renderCornerItem: navigationAidId '${this._navigationAidId}' is registered to a control that is NOT a NavigationAid`);\r\n }\r\n this._navigationAidControl.initialize();\r\n }\r\n\r\n // istanbul ignore else\r\n if (this._navigationAidControl) {\r\n const size = this._navigationAidControl.getSize() || \"64px\";\r\n const divStyle: React.CSSProperties = {\r\n width: size,\r\n height: size,\r\n };\r\n\r\n return (\r\n <div style={divStyle}>\r\n {this._navigationAidControl.reactNode}\r\n </div>\r\n );\r\n }\r\n\r\n // istanbul ignore next\r\n return null;\r\n }\r\n\r\n public updateNavigationAid(navigationAidId: string, imodel?: IModelConnection): void {\r\n this._navigationAidId = navigationAidId;\r\n this._imodel = imodel;\r\n this._navigationAidControl = undefined;\r\n }\r\n}\r\n\r\n/** Properties for the [[NavigationWidget]] React component.\r\n * @public\r\n * @deprecated use NavigationWidgetComposer instead\r\n */\r\nexport interface NavigationWidgetPropsEx extends NavigationWidgetProps, CommonProps { // eslint-disable-line deprecation/deprecation\r\n iModelConnection?: IModelConnection;\r\n horizontalToolbar?: React.ReactNode;\r\n verticalToolbar?: React.ReactNode;\r\n}\r\n\r\n/** State for the Navigation Widget React component.\r\n * @internal\r\n */\r\ninterface NavigationWidgetState {\r\n navigationWidgetDef: NavigationWidgetDef; // eslint-disable-line deprecation/deprecation\r\n}\r\n\r\n/** Navigation Widget React component.\r\n * @public\r\n * @deprecated use NavigationWidgetComposer instead\r\n */\r\nexport class NavigationWidget extends React.Component<NavigationWidgetPropsEx, NavigationWidgetState> { // eslint-disable-line deprecation/deprecation\r\n\r\n /** @internal */\r\n public override readonly state: Readonly<NavigationWidgetState>;\r\n\r\n constructor(props: NavigationWidgetPropsEx) { // eslint-disable-line deprecation/deprecation\r\n super(props);\r\n\r\n this.state = { navigationWidgetDef: new NavigationWidgetDef(props) }; // eslint-disable-line deprecation/deprecation\r\n }\r\n\r\n /** Adds listeners */\r\n public override componentDidMount() {\r\n FrontstageManager.onContentControlActivatedEvent.addListener(this._handleContentControlActivated);\r\n ViewportComponentEvents.onViewClassFullNameChangedEvent.addListener(this._handleViewClassFullNameChange);\r\n }\r\n\r\n /** Removes listeners */\r\n public override componentWillUnmount() {\r\n FrontstageManager.onContentControlActivatedEvent.removeListener(this._handleContentControlActivated);\r\n ViewportComponentEvents.onViewClassFullNameChangedEvent.removeListener(this._handleViewClassFullNameChange);\r\n }\r\n\r\n private _handleContentControlActivated = (args: ContentControlActivatedEventArgs): void => {\r\n const navigationAidId = args.activeContentControl.navigationAidControl;\r\n setTimeout(() => {\r\n FrontstageManager.setActiveNavigationAid(navigationAidId, this.props.iModelConnection!);\r\n });\r\n };\r\n\r\n private _handleViewClassFullNameChange = (args: ViewClassFullNameChangedEventArgs): void => {\r\n setTimeout(() => {\r\n const activeContentControl = ContentViewManager.getActiveContentControl();\r\n\r\n // istanbul ignore else\r\n if (activeContentControl && args.viewport === activeContentControl.viewport) {\r\n const navigationAidId = activeContentControl.navigationAidControl;\r\n FrontstageManager.setActiveNavigationAid(navigationAidId, this.props.iModelConnection!);\r\n }\r\n });\r\n };\r\n\r\n public override componentDidUpdate(prevProps: NavigationWidgetPropsEx, _prevState: NavigationWidgetState) { // eslint-disable-line deprecation/deprecation\r\n if (this.props !== prevProps) {\r\n this.setState((_, props) => ({ navigationWidgetDef: new NavigationWidgetDef(props) })); // eslint-disable-line deprecation/deprecation\r\n }\r\n }\r\n\r\n public override render(): React.ReactNode {\r\n return (\r\n <NavigationWidgetWithDef\r\n className={this.props.className}\r\n style={this.props.style}\r\n navigationWidgetDef={this.state.navigationWidgetDef}\r\n horizontalToolbar={this.props.horizontalToolbar}\r\n verticalToolbar={this.props.verticalToolbar}\r\n />\r\n );\r\n }\r\n}\r\n\r\n/** Properties for the [[NavigationWidgetWithDef]] component.\r\n */\r\ninterface Props extends CommonProps {\r\n navigationWidgetDef: NavigationWidgetDef; // eslint-disable-line deprecation/deprecation\r\n horizontalToolbar?: React.ReactNode;\r\n verticalToolbar?: React.ReactNode;\r\n}\r\n\r\ninterface NavigationWidgetWithDefState {\r\n horizontalToolbar: React.ReactNode;\r\n verticalToolbar: React.ReactNode;\r\n cornerItem: React.ReactNode;\r\n}\r\n\r\n/** Navigation Widget React component that's passed a NavigationWidgetDef.\r\n */\r\nclass NavigationWidgetWithDef extends React.Component<Props, NavigationWidgetWithDefState> {\r\n\r\n constructor(props: Props) {\r\n super(props);\r\n\r\n const horizontalToolbar = (this.props.horizontalToolbar) ? this.props.horizontalToolbar : this.props.navigationWidgetDef.renderHorizontalToolbar();\r\n const verticalToolbar = (this.props.verticalToolbar) ? this.props.verticalToolbar : this.props.navigationWidgetDef.renderVerticalToolbar();\r\n this.state = { horizontalToolbar, verticalToolbar, cornerItem: null };\r\n }\r\n\r\n private reloadToolbars() {\r\n const horizontalToolbar = (this.props.horizontalToolbar) ? this.props.horizontalToolbar : /* istanbul ignore next */ this.props.navigationWidgetDef.renderHorizontalToolbar();\r\n const verticalToolbar = (this.props.verticalToolbar) ? /* istanbul ignore next */ this.props.verticalToolbar : this.props.navigationWidgetDef.renderVerticalToolbar();\r\n this.setState({ horizontalToolbar, verticalToolbar });\r\n }\r\n\r\n private _handleNavigationAidActivatedEvent = (args: NavigationAidActivatedEventArgs): void => {\r\n this.props.navigationWidgetDef.updateNavigationAid(args.navigationAidId, args.iModelConnection);\r\n const navigationAid = this.props.navigationWidgetDef.renderCornerItem();\r\n this.setState({ cornerItem: navigationAid });\r\n };\r\n\r\n public override componentDidMount() {\r\n FrontstageManager.onNavigationAidActivatedEvent.addListener(this._handleNavigationAidActivatedEvent);\r\n }\r\n\r\n public override componentWillUnmount() {\r\n FrontstageManager.onNavigationAidActivatedEvent.removeListener(this._handleNavigationAidActivatedEvent);\r\n }\r\n\r\n public override componentDidUpdate(prevProps: Props) {\r\n if (this.props !== prevProps)\r\n this.reloadToolbars();\r\n }\r\n\r\n public override render(): React.ReactNode {\r\n return (\r\n <NZ_ToolsWidget isNavigation\r\n className={this.props.className}\r\n style={this.props.style}\r\n button={this.state.cornerItem}\r\n horizontalToolbar={this.state.horizontalToolbar}\r\n verticalToolbar={this.state.verticalToolbar}\r\n preserveSpace={true}\r\n onMouseEnter={UiShowHideManager.handleWidgetMouseEnter}\r\n />\r\n );\r\n }\r\n}\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToolWidget.js","sourceRoot":"","sources":["../../../../src/appui-react/widgets/ToolWidget.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Widget\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { CommonProps, Icon } from \"@itwin/core-react\";\r\nimport { AppButton, Direction, Tools as NZ_ToolsWidget } from \"@itwin/appui-layout-react\";\r\nimport { FrontstageManager } from \"../frontstage/FrontstageManager\";\r\nimport { CommandItemDef } from \"../shared/CommandItemDef\";\r\nimport { UiShowHideManager } from \"../utils/UiShowHideManager\";\r\nimport { ToolbarWidgetDefBase } from \"./ToolbarWidgetBase\";\r\nimport { ToolWidgetProps, WidgetType } from \"./WidgetDef\";\r\nimport { UiFramework } from \"../UiFramework\";\r\n\r\n/** Definition of a Tool Widget normally displayed in the top left zone in the 9-Zone Layout system.\r\n * @public\r\n * @deprecated use [ToolWidgetComposer]($appui-react) instead\r\n */\r\nexport class ToolWidgetDef extends ToolbarWidgetDefBase { // eslint-disable-line deprecation/deprecation\r\n private _appButton: CommandItemDef | undefined;\r\n private _reactNode: React.ReactNode;\r\n private _backstageLabel = UiFramework.translate(\"buttons.openBackstageMenu\");\r\n\r\n constructor(props: ToolWidgetProps) {\r\n super(props);\r\n\r\n this._appButton = props.appButton;\r\n\r\n this.widgetType = WidgetType.Tool;\r\n this.verticalDirection = (props.verticalDirection !== undefined) ? props.verticalDirection : Direction.Right; // eslint-disable-line deprecation/deprecation\r\n\r\n const activeStageName = FrontstageManager.activeFrontstageDef ? FrontstageManager.activeFrontstageDef.id : /* istanbul ignore next */\"\";\r\n this.widgetBaseName = `[${activeStageName}]ToolWidget`;\r\n }\r\n\r\n public override get reactNode(): React.ReactNode {\r\n // istanbul ignore else\r\n if (!this._reactNode)\r\n this._reactNode = <ToolWidgetWithDef toolWidgetDef={this} />;\r\n\r\n return this._reactNode;\r\n }\r\n\r\n public renderCornerItem(): React.ReactNode | undefined {\r\n if (this._appButton) {\r\n return (\r\n <AppButton // eslint-disable-line deprecation/deprecation\r\n onClick={this._appButton.execute}\r\n icon={\r\n <Icon iconSpec={this._appButton.iconSpec} />\r\n }\r\n title={this._appButton.tooltip || this._backstageLabel}\r\n />\r\n );\r\n }\r\n\r\n return undefined;\r\n }\r\n}\r\n\r\n/** Properties for the [[ToolWidget]] React component.\r\n * @public\r\n * @deprecated use [ToolWidgetComposer]($appui-react) instead\r\n */\r\nexport interface ToolWidgetPropsEx extends ToolWidgetProps, CommonProps {\r\n button?: React.ReactNode;\r\n horizontalToolbar?: React.ReactNode;\r\n verticalToolbar?: React.ReactNode;\r\n}\r\n\r\n/** State for the [[ToolWidget]] React component.\r\n * @internal\r\n */\r\ninterface ToolWidgetState {\r\n toolWidgetDef: ToolWidgetDef; // eslint-disable-line deprecation/deprecation\r\n}\r\n\r\n/** ToolWidget React component.\r\n * @public\r\n * @deprecated use [ToolWidgetComposer]($appui-react) instead\r\n */\r\nexport class ToolWidget extends React.Component<ToolWidgetPropsEx, ToolWidgetState> { // eslint-disable-line deprecation/deprecation\r\n\r\n /** @internal */\r\n public override readonly state: Readonly<ToolWidgetState>;\r\n\r\n constructor(props: ToolWidgetPropsEx) { // eslint-disable-line deprecation/deprecation\r\n super(props);\r\n\r\n this.state = { toolWidgetDef: new ToolWidgetDef(props) }; // eslint-disable-line deprecation/deprecation\r\n }\r\n\r\n public override componentDidUpdate(prevProps: ToolWidgetPropsEx, _prevState: ToolWidgetState) { // eslint-disable-line deprecation/deprecation\r\n if (this.props !== prevProps) {\r\n this.setState((_, props) => ({ toolWidgetDef: new ToolWidgetDef(props) })); // eslint-disable-line deprecation/deprecation\r\n }\r\n }\r\n\r\n public override render(): React.ReactNode {\r\n return (\r\n <ToolWidgetWithDef\r\n className={this.props.className}\r\n style={this.props.style}\r\n toolWidgetDef={this.state.toolWidgetDef}\r\n button={this.props.button}\r\n horizontalToolbar={this.props.horizontalToolbar}\r\n verticalToolbar={this.props.verticalToolbar}\r\n />\r\n );\r\n }\r\n}\r\n\r\n/** Properties for the Tool Widget React component.\r\n */\r\ninterface Props extends CommonProps {\r\n toolWidgetDef: ToolWidgetDef; // eslint-disable-line deprecation/deprecation\r\n button?: React.ReactNode;\r\n horizontalToolbar?: React.ReactNode;\r\n verticalToolbar?: React.ReactNode;\r\n}\r\n\r\ninterface ToolWidgetWithDefState {\r\n horizontalToolbar: React.ReactNode;\r\n verticalToolbar: React.ReactNode;\r\n cornerItem: React.ReactNode;\r\n}\r\n\r\n/** Tool Widget React component.\r\n */\r\nclass ToolWidgetWithDef extends React.Component<Props, ToolWidgetWithDefState> {\r\n constructor(props: Props) {\r\n super(props);\r\n\r\n const horizontalToolbar = (this.props.horizontalToolbar) ? this.props.horizontalToolbar : this.props.toolWidgetDef.renderHorizontalToolbar();\r\n const verticalToolbar = (this.props.verticalToolbar) ? this.props.verticalToolbar : this.props.toolWidgetDef.renderVerticalToolbar();\r\n const cornerItem = (this.props.button !== undefined) ? this.props.button : this.props.toolWidgetDef.renderCornerItem();\r\n this.state = { horizontalToolbar, verticalToolbar, cornerItem };\r\n }\r\n\r\n private reloadToolbars() {\r\n const horizontalToolbar = (this.props.horizontalToolbar) ? this.props.horizontalToolbar : /* istanbul ignore next */ this.props.toolWidgetDef.renderHorizontalToolbar();\r\n const verticalToolbar = (this.props.verticalToolbar) ? /* istanbul ignore next */ this.props.verticalToolbar : this.props.toolWidgetDef.renderVerticalToolbar();\r\n this.setState({ horizontalToolbar, verticalToolbar });\r\n }\r\n\r\n public override componentDidUpdate(prevProps: Props) {\r\n if (this.props !== prevProps)\r\n this.reloadToolbars();\r\n }\r\n\r\n public override render(): React.ReactNode {\r\n return (\r\n <NZ_ToolsWidget\r\n className={this.props.className}\r\n style={this.props.style}\r\n button={this.state.cornerItem}\r\n horizontalToolbar={this.state.horizontalToolbar}\r\n verticalToolbar={this.state.verticalToolbar}\r\n preserveSpace={true}\r\n onMouseEnter={UiShowHideManager.handleWidgetMouseEnter}\r\n />\r\n );\r\n }\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"file":"ToolWidget.js","sourceRoot":"","sources":["../../../../src/appui-react/widgets/ToolWidget.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Widget\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { CommonProps, Icon } from \"@itwin/core-react\";\r\nimport { AppButton, Direction, Tools as NZ_ToolsWidget } from \"@itwin/appui-layout-react\";\r\nimport { FrontstageManager } from \"../frontstage/FrontstageManager\";\r\nimport { CommandItemDef } from \"../shared/CommandItemDef\";\r\nimport { UiShowHideManager } from \"../utils/UiShowHideManager\";\r\nimport { ToolbarWidgetDefBase } from \"./ToolbarWidgetBase\";\r\nimport { ToolWidgetProps, WidgetType } from \"./WidgetDef\";\r\nimport { UiFramework } from \"../UiFramework\";\r\n\r\n/** Definition of a Tool Widget normally displayed in the top left zone in the 9-Zone Layout system.\r\n * @public\r\n * @deprecated use [ToolWidgetComposer]($appui-react) instead\r\n */\r\nexport class ToolWidgetDef extends ToolbarWidgetDefBase { // eslint-disable-line deprecation/deprecation\r\n private _appButton: CommandItemDef | undefined;\r\n private _reactNode: React.ReactNode;\r\n private _backstageLabel = UiFramework.translate(\"buttons.openBackstageMenu\");\r\n\r\n constructor(props: ToolWidgetProps) { // eslint-disable-line deprecation/deprecation\r\n super(props);\r\n\r\n this._appButton = props.appButton;\r\n\r\n this.widgetType = WidgetType.Tool;\r\n this.verticalDirection = (props.verticalDirection !== undefined) ? props.verticalDirection : Direction.Right; // eslint-disable-line deprecation/deprecation\r\n\r\n const activeStageName = FrontstageManager.activeFrontstageDef ? FrontstageManager.activeFrontstageDef.id : /* istanbul ignore next */\"\";\r\n this.widgetBaseName = `[${activeStageName}]ToolWidget`;\r\n }\r\n\r\n public override get reactNode(): React.ReactNode {\r\n // istanbul ignore else\r\n if (!this._reactNode)\r\n this._reactNode = <ToolWidgetWithDef toolWidgetDef={this} />;\r\n\r\n return this._reactNode;\r\n }\r\n\r\n public renderCornerItem(): React.ReactNode | undefined {\r\n if (this._appButton) {\r\n return (\r\n <AppButton // eslint-disable-line deprecation/deprecation\r\n onClick={this._appButton.execute}\r\n icon={\r\n <Icon iconSpec={this._appButton.iconSpec} />\r\n }\r\n title={this._appButton.tooltip || this._backstageLabel}\r\n />\r\n );\r\n }\r\n\r\n return undefined;\r\n }\r\n}\r\n\r\n/** Properties for the [[ToolWidget]] React component.\r\n * @public\r\n * @deprecated use [ToolWidgetComposer]($appui-react) instead\r\n */\r\nexport interface ToolWidgetPropsEx extends ToolWidgetProps, CommonProps { // eslint-disable-line deprecation/deprecation\r\n button?: React.ReactNode;\r\n horizontalToolbar?: React.ReactNode;\r\n verticalToolbar?: React.ReactNode;\r\n}\r\n\r\n/** State for the [[ToolWidget]] React component.\r\n * @internal\r\n */\r\ninterface ToolWidgetState {\r\n toolWidgetDef: ToolWidgetDef; // eslint-disable-line deprecation/deprecation\r\n}\r\n\r\n/** ToolWidget React component.\r\n * @public\r\n * @deprecated use [ToolWidgetComposer]($appui-react) instead\r\n */\r\nexport class ToolWidget extends React.Component<ToolWidgetPropsEx, ToolWidgetState> { // eslint-disable-line deprecation/deprecation\r\n\r\n /** @internal */\r\n public override readonly state: Readonly<ToolWidgetState>;\r\n\r\n constructor(props: ToolWidgetPropsEx) { // eslint-disable-line deprecation/deprecation\r\n super(props);\r\n\r\n this.state = { toolWidgetDef: new ToolWidgetDef(props) }; // eslint-disable-line deprecation/deprecation\r\n }\r\n\r\n public override componentDidUpdate(prevProps: ToolWidgetPropsEx, _prevState: ToolWidgetState) { // eslint-disable-line deprecation/deprecation\r\n if (this.props !== prevProps) {\r\n this.setState((_, props) => ({ toolWidgetDef: new ToolWidgetDef(props) })); // eslint-disable-line deprecation/deprecation\r\n }\r\n }\r\n\r\n public override render(): React.ReactNode {\r\n return (\r\n <ToolWidgetWithDef\r\n className={this.props.className}\r\n style={this.props.style}\r\n toolWidgetDef={this.state.toolWidgetDef}\r\n button={this.props.button}\r\n horizontalToolbar={this.props.horizontalToolbar}\r\n verticalToolbar={this.props.verticalToolbar}\r\n />\r\n );\r\n }\r\n}\r\n\r\n/** Properties for the Tool Widget React component.\r\n */\r\ninterface Props extends CommonProps {\r\n toolWidgetDef: ToolWidgetDef; // eslint-disable-line deprecation/deprecation\r\n button?: React.ReactNode;\r\n horizontalToolbar?: React.ReactNode;\r\n verticalToolbar?: React.ReactNode;\r\n}\r\n\r\ninterface ToolWidgetWithDefState {\r\n horizontalToolbar: React.ReactNode;\r\n verticalToolbar: React.ReactNode;\r\n cornerItem: React.ReactNode;\r\n}\r\n\r\n/** Tool Widget React component.\r\n */\r\nclass ToolWidgetWithDef extends React.Component<Props, ToolWidgetWithDefState> {\r\n constructor(props: Props) {\r\n super(props);\r\n\r\n const horizontalToolbar = (this.props.horizontalToolbar) ? this.props.horizontalToolbar : this.props.toolWidgetDef.renderHorizontalToolbar();\r\n const verticalToolbar = (this.props.verticalToolbar) ? this.props.verticalToolbar : this.props.toolWidgetDef.renderVerticalToolbar();\r\n const cornerItem = (this.props.button !== undefined) ? this.props.button : this.props.toolWidgetDef.renderCornerItem();\r\n this.state = { horizontalToolbar, verticalToolbar, cornerItem };\r\n }\r\n\r\n private reloadToolbars() {\r\n const horizontalToolbar = (this.props.horizontalToolbar) ? this.props.horizontalToolbar : /* istanbul ignore next */ this.props.toolWidgetDef.renderHorizontalToolbar();\r\n const verticalToolbar = (this.props.verticalToolbar) ? /* istanbul ignore next */ this.props.verticalToolbar : this.props.toolWidgetDef.renderVerticalToolbar();\r\n this.setState({ horizontalToolbar, verticalToolbar });\r\n }\r\n\r\n public override componentDidUpdate(prevProps: Props) {\r\n if (this.props !== prevProps)\r\n this.reloadToolbars();\r\n }\r\n\r\n public override render(): React.ReactNode {\r\n return (\r\n <NZ_ToolsWidget\r\n className={this.props.className}\r\n style={this.props.style}\r\n button={this.state.cornerItem}\r\n horizontalToolbar={this.state.horizontalToolbar}\r\n verticalToolbar={this.state.verticalToolbar}\r\n preserveSpace={true}\r\n onMouseEnter={UiShowHideManager.handleWidgetMouseEnter}\r\n />\r\n );\r\n }\r\n}\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToolbarWidgetBase.js","sourceRoot":"","sources":["../../../../src/appui-react/widgets/ToolbarWidgetBase.tsx"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAE7E,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAsB,SAAS,EAAE,MAAM,aAAa,CAAC;AAE5D;;;GAGG;AACH,MAAM,OAAO,oBAAqB,SAAQ,SAAS;IAWjD,YAAY,GAAuB;QACjC,KAAK,CAAC,GAAG,CAAC,CAAC;QAHL,qBAAgB,GAAG,EAAE,CAAC;QAK5B,mDAAmD;QACnD,IAAI,CAAC,mBAAmB,GAAG,CAAC,GAAG,CAAC,mBAAmB,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC;QAChH,mDAAmD;QACnD,IAAI,CAAC,iBAAiB,GAAG,CAAC,GAAG,CAAC,iBAAiB,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC;QAEzG,IAAI,CAAC,wBAAwB,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC,8CAA8C;QAC3G,IAAI,CAAC,sBAAsB,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC,8CAA8C;QAEzG,IAAI,CAAC,eAAe,GAAG,GAAG,CAAC,eAAe,CAAC;QAC3C,IAAI,CAAC,aAAa,GAAG,GAAG,CAAC,aAAa,CAAC;IACzC,CAAC;IAED,IAAW,cAAc,CAAC,QAAgB;QACxC,IAAI,CAAC,gBAAgB,GAAG,QAAQ,CAAC;IACnC,CAAC;IACD,IAAW,cAAc;QACvB,OAAO,IAAI,CAAC,gBAAgB,CAAC;IAC/B,CAAC;IAEM,uBAAuB;QAC5B,MAAM,YAAY,GAAG,IAAI,CAAC,eAAe,CAAC;QAC1C,IAAI,YAAY,IAAI,YAAY,CAAC,KAAK,CAAC,MAAM,EAAE;YAC7C,OAAO,CACL,oBAAC,OAAO,IACN,SAAS,EAAE,GAAG,IAAI,CAAC,cAAc,aAAa,EAC9C,WAAW,EAAE,WAAW,CAAC,UAAU,EACnC,SAAS,EAAE,IAAI,CAAC,mBAAmB,EACnC,cAAc,EAAE,IAAI,CAAC,wBAAwB,EAC7C,KAAK,EAAE,YAAY,GACnB,CACH,CAAC;SACH;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,qBAAqB;QAC1B,MAAM,YAAY,GAAG,IAAI,CAAC,aAAa,CAAC;QACxC,IAAI,YAAY,IAAI,YAAY,CAAC,KAAK,CAAC,MAAM,EAAE;YAC7C,OAAO,CACL,oBAAC,OAAO,IACN,SAAS,EAAE,GAAG,IAAI,CAAC,cAAc,WAAW,EAC5C,WAAW,EAAE,WAAW,CAAC,QAAQ,EACjC,SAAS,EAAE,IAAI,CAAC,iBAAiB,EACjC,cAAc,EAAE,IAAI,CAAC,sBAAsB,EAC3C,KAAK,EAAE,YAAY,GACnB,CACH,CAAC;SACH;QAED,OAAO,IAAI,CAAC;IACd,CAAC;CACF","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 Widget\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { Orientation } from \"@itwin/core-react\";\r\nimport { Direction, ToolbarPanelAlignment } from \"@itwin/appui-layout-react\";\r\nimport { ItemList } from \"../shared/ItemMap\";\r\nimport { Toolbar } from \"../toolbar/Toolbar\";\r\nimport { ToolbarWidgetProps, WidgetDef } from \"./WidgetDef\";\r\n\r\n/** A Toolbar Widget normally displayed in the top left & top right zones in the 9-Zone Layout system.\r\n * @deprecated\r\n * @public\r\n */\r\nexport class ToolbarWidgetDefBase extends WidgetDef {\r\n public horizontalDirection: Direction; // eslint-disable-line deprecation/deprecation\r\n public verticalDirection: Direction; // eslint-disable-line deprecation/deprecation\r\n\r\n public horizontalPanelAlignment: ToolbarPanelAlignment; // eslint-disable-line deprecation/deprecation\r\n public verticalPanelAlignment: ToolbarPanelAlignment; // eslint-disable-line deprecation/deprecation\r\n\r\n public horizontalItems?: ItemList;\r\n public verticalItems?: ItemList;\r\n private _toolbarBaseName = \"\";\r\n\r\n constructor(def: ToolbarWidgetProps) {\r\n super(def);\r\n\r\n // eslint-disable-next-line deprecation/deprecation\r\n this.horizontalDirection = (def.horizontalDirection !== undefined) ? def.horizontalDirection : Direction.Bottom;\r\n // eslint-disable-next-line deprecation/deprecation\r\n this.verticalDirection = (def.verticalDirection !== undefined) ? def.verticalDirection : Direction.Right;\r\n\r\n this.horizontalPanelAlignment = ToolbarPanelAlignment.Start; // eslint-disable-line deprecation/deprecation\r\n this.verticalPanelAlignment = ToolbarPanelAlignment.Start; // eslint-disable-line deprecation/deprecation\r\n\r\n this.horizontalItems = def.horizontalItems;\r\n this.verticalItems = def.verticalItems;\r\n }\r\n\r\n public set widgetBaseName(baseName: string) {\r\n this._toolbarBaseName = baseName;\r\n }\r\n public get widgetBaseName() {\r\n return this._toolbarBaseName;\r\n }\r\n\r\n public renderHorizontalToolbar(): React.ReactNode {\r\n const toolbarItems = this.horizontalItems;\r\n if (toolbarItems && toolbarItems.items.length) {\r\n return (\r\n <Toolbar\r\n toolbarId={`${this.widgetBaseName}-horizontal`}\r\n orientation={Orientation.Horizontal}\r\n expandsTo={this.horizontalDirection}\r\n panelAlignment={this.horizontalPanelAlignment}\r\n items={toolbarItems}\r\n />\r\n );\r\n }\r\n\r\n return null;\r\n }\r\n\r\n public renderVerticalToolbar(): React.ReactNode {\r\n const toolbarItems = this.verticalItems;\r\n if (toolbarItems && toolbarItems.items.length) {\r\n return (\r\n <Toolbar\r\n toolbarId={`${this.widgetBaseName}-vertical`}\r\n orientation={Orientation.Vertical}\r\n expandsTo={this.verticalDirection}\r\n panelAlignment={this.verticalPanelAlignment}\r\n items={toolbarItems}\r\n />\r\n );\r\n }\r\n\r\n return null;\r\n }\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"file":"ToolbarWidgetBase.js","sourceRoot":"","sources":["../../../../src/appui-react/widgets/ToolbarWidgetBase.tsx"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAE7E,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAsB,SAAS,EAAE,MAAM,aAAa,CAAC;AAE5D;;;GAGG;AACH,MAAM,OAAO,oBAAqB,SAAQ,SAAS;IAWjD,YAAY,GAAuB;QACjC,KAAK,CAAC,GAAG,CAAC,CAAC;QAHL,qBAAgB,GAAG,EAAE,CAAC;QAK5B,mDAAmD;QACnD,IAAI,CAAC,mBAAmB,GAAG,CAAC,GAAG,CAAC,mBAAmB,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC;QAChH,mDAAmD;QACnD,IAAI,CAAC,iBAAiB,GAAG,CAAC,GAAG,CAAC,iBAAiB,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC;QAEzG,IAAI,CAAC,wBAAwB,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC,8CAA8C;QAC3G,IAAI,CAAC,sBAAsB,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC,8CAA8C;QAEzG,IAAI,CAAC,eAAe,GAAG,GAAG,CAAC,eAAe,CAAC;QAC3C,IAAI,CAAC,aAAa,GAAG,GAAG,CAAC,aAAa,CAAC;IACzC,CAAC;IAED,IAAW,cAAc,CAAC,QAAgB;QACxC,IAAI,CAAC,gBAAgB,GAAG,QAAQ,CAAC;IACnC,CAAC;IACD,IAAW,cAAc;QACvB,OAAO,IAAI,CAAC,gBAAgB,CAAC;IAC/B,CAAC;IAEM,uBAAuB;QAC5B,MAAM,YAAY,GAAG,IAAI,CAAC,eAAe,CAAC;QAC1C,IAAI,YAAY,IAAI,YAAY,CAAC,KAAK,CAAC,MAAM,EAAE;YAC7C,OAAO,CACL,oBAAC,OAAO,IACN,SAAS,EAAE,GAAG,IAAI,CAAC,cAAc,aAAa,EAC9C,WAAW,EAAE,WAAW,CAAC,UAAU,EACnC,SAAS,EAAE,IAAI,CAAC,mBAAmB,EACnC,cAAc,EAAE,IAAI,CAAC,wBAAwB,EAC7C,KAAK,EAAE,YAAY,GACnB,CACH,CAAC;SACH;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,qBAAqB;QAC1B,MAAM,YAAY,GAAG,IAAI,CAAC,aAAa,CAAC;QACxC,IAAI,YAAY,IAAI,YAAY,CAAC,KAAK,CAAC,MAAM,EAAE;YAC7C,OAAO,CACL,oBAAC,OAAO,IACN,SAAS,EAAE,GAAG,IAAI,CAAC,cAAc,WAAW,EAC5C,WAAW,EAAE,WAAW,CAAC,QAAQ,EACjC,SAAS,EAAE,IAAI,CAAC,iBAAiB,EACjC,cAAc,EAAE,IAAI,CAAC,sBAAsB,EAC3C,KAAK,EAAE,YAAY,GACnB,CACH,CAAC;SACH;QAED,OAAO,IAAI,CAAC;IACd,CAAC;CACF","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 Widget\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { Orientation } from \"@itwin/core-react\";\r\nimport { Direction, ToolbarPanelAlignment } from \"@itwin/appui-layout-react\";\r\nimport { ItemList } from \"../shared/ItemMap\";\r\nimport { Toolbar } from \"../toolbar/Toolbar\";\r\nimport { ToolbarWidgetProps, WidgetDef } from \"./WidgetDef\";\r\n\r\n/** A Toolbar Widget normally displayed in the top left & top right zones in the 9-Zone Layout system.\r\n * @deprecated\r\n * @public\r\n */\r\nexport class ToolbarWidgetDefBase extends WidgetDef {\r\n public horizontalDirection: Direction; // eslint-disable-line deprecation/deprecation\r\n public verticalDirection: Direction; // eslint-disable-line deprecation/deprecation\r\n\r\n public horizontalPanelAlignment: ToolbarPanelAlignment; // eslint-disable-line deprecation/deprecation\r\n public verticalPanelAlignment: ToolbarPanelAlignment; // eslint-disable-line deprecation/deprecation\r\n\r\n public horizontalItems?: ItemList;\r\n public verticalItems?: ItemList;\r\n private _toolbarBaseName = \"\";\r\n\r\n constructor(def: ToolbarWidgetProps) { // eslint-disable-line deprecation/deprecation\r\n super(def);\r\n\r\n // eslint-disable-next-line deprecation/deprecation\r\n this.horizontalDirection = (def.horizontalDirection !== undefined) ? def.horizontalDirection : Direction.Bottom;\r\n // eslint-disable-next-line deprecation/deprecation\r\n this.verticalDirection = (def.verticalDirection !== undefined) ? def.verticalDirection : Direction.Right;\r\n\r\n this.horizontalPanelAlignment = ToolbarPanelAlignment.Start; // eslint-disable-line deprecation/deprecation\r\n this.verticalPanelAlignment = ToolbarPanelAlignment.Start; // eslint-disable-line deprecation/deprecation\r\n\r\n this.horizontalItems = def.horizontalItems;\r\n this.verticalItems = def.verticalItems;\r\n }\r\n\r\n public set widgetBaseName(baseName: string) {\r\n this._toolbarBaseName = baseName;\r\n }\r\n public get widgetBaseName() {\r\n return this._toolbarBaseName;\r\n }\r\n\r\n public renderHorizontalToolbar(): React.ReactNode {\r\n const toolbarItems = this.horizontalItems;\r\n if (toolbarItems && toolbarItems.items.length) {\r\n return (\r\n <Toolbar\r\n toolbarId={`${this.widgetBaseName}-horizontal`}\r\n orientation={Orientation.Horizontal}\r\n expandsTo={this.horizontalDirection}\r\n panelAlignment={this.horizontalPanelAlignment}\r\n items={toolbarItems}\r\n />\r\n );\r\n }\r\n\r\n return null;\r\n }\r\n\r\n public renderVerticalToolbar(): React.ReactNode {\r\n const toolbarItems = this.verticalItems;\r\n if (toolbarItems && toolbarItems.items.length) {\r\n return (\r\n <Toolbar\r\n toolbarId={`${this.widgetBaseName}-vertical`}\r\n orientation={Orientation.Vertical}\r\n expandsTo={this.verticalDirection}\r\n panelAlignment={this.verticalPanelAlignment}\r\n items={toolbarItems}\r\n />\r\n );\r\n }\r\n\r\n return null;\r\n }\r\n}\r\n"]}
|
|
@@ -5,6 +5,7 @@ import * as React from "react";
|
|
|
5
5
|
import { WidgetProps } from "./WidgetProps";
|
|
6
6
|
/** Widget React component.
|
|
7
7
|
* A Widget is a collection of UI components tied to a particular Zone that allows the user to view and/or modify data relevant to their current context.
|
|
8
|
+
* @deprecated Use [WidgetConfig] instead.
|
|
8
9
|
* @public
|
|
9
10
|
*/
|
|
10
11
|
export declare class Widget extends React.Component<WidgetProps> {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Widget.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/widgets/Widget.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C
|
|
1
|
+
{"version":3,"file":"Widget.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/widgets/Widget.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C;;;;GAIG;AACH,qBAAa,MAAO,SAAQ,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC;gBAE1C,KAAK,EAAE,WAAW;IAId,MAAM;CAIvB"}
|
|
@@ -8,6 +8,7 @@
|
|
|
8
8
|
import * as React from "react";
|
|
9
9
|
/** Widget React component.
|
|
10
10
|
* A Widget is a collection of UI components tied to a particular Zone that allows the user to view and/or modify data relevant to their current context.
|
|
11
|
+
* @deprecated Use [WidgetConfig] instead.
|
|
11
12
|
* @public
|
|
12
13
|
*/
|
|
13
14
|
export class Widget extends React.Component {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Widget.js","sourceRoot":"","sources":["../../../../src/appui-react/widgets/Widget.tsx"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B
|
|
1
|
+
{"version":3,"file":"Widget.js","sourceRoot":"","sources":["../../../../src/appui-react/widgets/Widget.tsx"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B;;;;GAIG;AACH,MAAM,OAAO,MAAO,SAAQ,KAAK,CAAC,SAAsB;IAEtD,YAAY,KAAkB;QAC5B,KAAK,CAAC,KAAK,CAAC,CAAC;IACf,CAAC;IAEe,MAAM;QACpB,OAAO,IAAI,CAAC;IACd,CAAC;CAEF","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 Widget\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { WidgetProps } from \"./WidgetProps\";\r\n\r\n/** Widget React component.\r\n * A Widget is a collection of UI components tied to a particular Zone that allows the user to view and/or modify data relevant to their current context.\r\n * @deprecated Use [WidgetConfig] instead.\r\n * @public\r\n */\r\nexport class Widget extends React.Component<WidgetProps> { // eslint-disable-line deprecation/deprecation\r\n\r\n constructor(props: WidgetProps) { // eslint-disable-line deprecation/deprecation\r\n super(props);\r\n }\r\n\r\n public override render() {\r\n return null;\r\n }\r\n\r\n}\r\n"]}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/** @packageDocumentation
|
|
2
|
+
* @module Widget
|
|
3
|
+
*/
|
|
4
|
+
import { WidgetProps } from "./WidgetProps";
|
|
5
|
+
/** Configuration from which a widget is created.
|
|
6
|
+
* @beta
|
|
7
|
+
*/
|
|
8
|
+
export declare type WidgetConfig = Readonly<Omit<WidgetProps, "id">> & {
|
|
9
|
+
readonly id: string;
|
|
10
|
+
};
|
|
11
|
+
//# sourceMappingURL=WidgetConfig.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WidgetConfig.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/widgets/WidgetConfig.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C;;GAEG;AACH,oBAAY,YAAY,GAAG,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,GAAG;IAAE,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;CAAE,CAAC"}
|
|
@@ -0,0 +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 Widget
|
|
7
|
+
*/
|
|
8
|
+
export {};
|
|
9
|
+
//# sourceMappingURL=WidgetConfig.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WidgetConfig.js","sourceRoot":"","sources":["../../../../src/appui-react/widgets/WidgetConfig.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG","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 Widget\r\n */\r\n\r\nimport { WidgetProps } from \"./WidgetProps\";\r\n\r\n/** Configuration from which a widget is created.\r\n * @beta\r\n */\r\nexport type WidgetConfig = Readonly<Omit<WidgetProps, \"id\">> & { readonly id: string }; // eslint-disable-line deprecation/deprecation\r\n"]}
|
|
@@ -42,6 +42,7 @@ export declare enum WidgetType {
|
|
|
42
42
|
StatusBar = 5
|
|
43
43
|
}
|
|
44
44
|
/** Properties for a Toolbar Widget.
|
|
45
|
+
* @deprecated
|
|
45
46
|
* @public
|
|
46
47
|
*/
|
|
47
48
|
export interface ToolbarWidgetProps extends WidgetProps {
|
|
@@ -51,18 +52,21 @@ export interface ToolbarWidgetProps extends WidgetProps {
|
|
|
51
52
|
verticalItems?: ItemList;
|
|
52
53
|
}
|
|
53
54
|
/** Properties for a Tool Widget.
|
|
55
|
+
* @deprecated
|
|
54
56
|
* @public
|
|
55
57
|
*/
|
|
56
58
|
export interface ToolWidgetProps extends ToolbarWidgetProps {
|
|
57
59
|
appButton?: CommandItemDef;
|
|
58
60
|
}
|
|
59
61
|
/** Properties for a Navigation Widget.
|
|
62
|
+
* @deprecated
|
|
60
63
|
* @public
|
|
61
64
|
*/
|
|
62
65
|
export interface NavigationWidgetProps extends ToolbarWidgetProps {
|
|
63
66
|
navigationAidId?: string;
|
|
64
67
|
}
|
|
65
68
|
/** Union of all Widget properties.
|
|
69
|
+
* @deprecated
|
|
66
70
|
* @public
|
|
67
71
|
*/
|
|
68
72
|
export declare type AnyWidgetProps = WidgetProps | ToolWidgetProps | NavigationWidgetProps;
|
|
@@ -158,9 +162,14 @@ export declare class WidgetDef {
|
|
|
158
162
|
/** @internal */
|
|
159
163
|
get popoutBounds(): Rectangle | undefined;
|
|
160
164
|
set popoutBounds(bounds: Rectangle | undefined);
|
|
161
|
-
constructor(
|
|
165
|
+
constructor();
|
|
166
|
+
/** @deprecated */
|
|
167
|
+
constructor(props: WidgetProps);
|
|
168
|
+
/** @deprecated */
|
|
162
169
|
static initializeFromWidgetProps(widgetProps: WidgetProps, me: WidgetDef): void;
|
|
170
|
+
/** @deprecated */
|
|
163
171
|
static createWidgetPropsFromAbstractProps(abstractWidgetProps: AbstractWidgetProps): WidgetProps;
|
|
172
|
+
/** @deprecated */
|
|
164
173
|
setUpSyncSupport(props: WidgetProps): void;
|
|
165
174
|
private _handleSyncUiEvent;
|
|
166
175
|
/** @alpha */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WidgetDef.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/widgets/WidgetDef.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,mBAAmB,EAAE,SAAS,EAAE,sBAAsB,EAAE,UAAU,EAAE,YAAY,EAAW,OAAO,EAAmB,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACzK,OAAO,EAAE,SAAS,EAAE,mBAAmB,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACtF,OAAO,EAA0B,gCAAgC,EAAE,yBAAyB,EAAE,MAAM,yCAAyC,CAAC;AAG9I,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAI7C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,OAAO,EAAc,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAU/E;;GAEG;AACH,MAAM,WAAW,2BAA2B;IAC1C,SAAS,EAAE,SAAS,CAAC;IACrB,WAAW,EAAE,WAAW,CAAC;CAC1B;AAED;;GAEG;AACH,qBAAa,uBAAwB,SAAQ,OAAO,CAAC,2BAA2B,CAAC;CAAI;AAErF,gBAAgB;AAChB,MAAM,WAAW,sBAAsB;IACrC,SAAS,EAAE,SAAS,CAAC;CACtB;AAED,gBAAgB;AAChB,MAAM,WAAW,eAAe;IAC9B,SAAS,EAAE,SAAS,CAAC;CACtB;AAED;;GAEG;AACH,oBAAY,UAAU;IACpB,IAAI,IAAA;IACJ,UAAU,IAAA;IACV,QAAQ,IAAA;IACR,WAAW,IAAA;IACX,YAAY,IAAA;IACZ,SAAS,IAAA;CACV;AAED
|
|
1
|
+
{"version":3,"file":"WidgetDef.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/widgets/WidgetDef.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,mBAAmB,EAAE,SAAS,EAAE,sBAAsB,EAAE,UAAU,EAAE,YAAY,EAAW,OAAO,EAAmB,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACzK,OAAO,EAAE,SAAS,EAAE,mBAAmB,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACtF,OAAO,EAA0B,gCAAgC,EAAE,yBAAyB,EAAE,MAAM,yCAAyC,CAAC;AAG9I,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAI7C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,OAAO,EAAc,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAU/E;;GAEG;AACH,MAAM,WAAW,2BAA2B;IAC1C,SAAS,EAAE,SAAS,CAAC;IACrB,WAAW,EAAE,WAAW,CAAC;CAC1B;AAED;;GAEG;AACH,qBAAa,uBAAwB,SAAQ,OAAO,CAAC,2BAA2B,CAAC;CAAI;AAErF,gBAAgB;AAChB,MAAM,WAAW,sBAAsB;IACrC,SAAS,EAAE,SAAS,CAAC;CACtB;AAED,gBAAgB;AAChB,MAAM,WAAW,eAAe;IAC9B,SAAS,EAAE,SAAS,CAAC;CACtB;AAED;;GAEG;AACH,oBAAY,UAAU;IACpB,IAAI,IAAA;IACJ,UAAU,IAAA;IACV,QAAQ,IAAA;IACR,WAAW,IAAA;IACX,YAAY,IAAA;IACZ,SAAS,IAAA;CACV;AAED;;;GAGG;AACH,MAAM,WAAW,kBAAmB,SAAQ,WAAW;IACrD,mBAAmB,CAAC,EAAE,SAAS,CAAC;IAChC,iBAAiB,CAAC,EAAE,SAAS,CAAC;IAE9B,eAAe,CAAC,EAAE,QAAQ,CAAC;IAC3B,aAAa,CAAC,EAAE,QAAQ,CAAC;CAC1B;AAED;;;GAGG;AACH,MAAM,WAAW,eAAgB,SAAQ,kBAAkB;IACzD,SAAS,CAAC,EAAE,cAAc,CAAC;CAC5B;AAED;;;GAGG;AACH,MAAM,WAAW,qBAAsB,SAAQ,kBAAkB;IAC/D,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED;;;GAGG;AACH,oBAAY,cAAc,GAAG,WAAW,GAAG,eAAe,GAAG,qBAAqB,CAAC;AAEnF;;;GAGG;AACH,oBAAY,eAAe,GAAG,CAAC,KAAK,EAAE,QAAQ,CAAC,WAAW,CAAC,KAAK,WAAW,CAAC;AAE5E,gBAAgB;AAChB,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,SAAS,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,mBAAmB,CAAC;CACtC;AAID;;GAEG;AACH,qBAAa,SAAS;IACpB,OAAO,CAAC,MAAM,CAAC,IAAI,CAAK;IACxB,OAAO,CAAC,MAAM,CAAsD;IACpE,OAAO,CAAC,QAAQ,CAAsD;IACtE,OAAO,CAAC,gBAAgB,CAAkB;IAC1C,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,aAAa,CAAqC;IAC1D,OAAO,CAAC,MAAM,CAAqC;IACnD,OAAO,CAAC,GAAG,CAAS;IACpB,OAAO,CAAC,QAAQ,CAAoE;IACpF,OAAO,CAAC,SAAS,CAAa;IAC9B,OAAO,CAAC,WAAW,CAAkB;IACrC,OAAO,CAAC,yBAAyB,CAAkB;IACnD,OAAO,CAAC,+BAA+B,CAAiB;IACxD,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,YAAY,CAAkB;IACtC,OAAO,CAAC,aAAa,CAAkB;IACvC,OAAO,CAAC,SAAS,CAAkB;IACnC,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,UAAU,CAAC,CAAkB;IACrC,OAAO,CAAC,WAAW,CAAsC;IACzD,OAAO,CAAC,gBAAgB,CAAC,CAAM;IAC/B,OAAO,CAAC,SAAS,CAAC,CAAoD;IACtE,OAAO,CAAC,aAAa,CAAC,CAAmB;IACzC,OAAO,CAAC,UAAU,CAAC,CAAY;IAC/B,OAAO,CAAC,qBAAqB,CAAC,CAAa;IAC3C,OAAO,CAAC,mBAAmB,CAAC,CAAa;IACzC,OAAO,CAAC,sBAAsB,CAAC,CAAgB;IAC/C,OAAO,CAAC,mBAAmB,CAA4B;IACvD,OAAO,CAAC,oBAAoB,CAAwB;IACpD,OAAO,CAAC,UAAU,CAAC,CAAU;IAC7B,OAAO,CAAC,oBAAoB,CAAC,CAAS;IACtC,OAAO,CAAC,wBAAwB,CAAyB;IAEzD,OAAO,CAAC,uBAAuB,CAAC,CAAU;IAC1C,OAAO,CAAC,oBAAoB,CAAC,CAA+C;IAC5E,OAAO,CAAC,aAAa,CAAC,CAAc;IAEpC,OAAO,CAAC,YAAY,CAAC,CAAc;IACnC,OAAO,CAAC,mBAAmB,CAKzB;IACF,OAAO,CAAC,aAAa,CAAC,CAAY;IAElC,IAAW,KAAK,IAAI,WAAW,CAY9B;IAED,IAAW,EAAE,IAAI,MAAM,CAAqB;IAC5C,IAAW,OAAO,IAAI,MAAM,GAAG,gCAAgC,GAAG,SAAS,CAA0B;IACrG,IAAW,QAAQ,IAAI,MAAM,CAA2B;IACxD,IAAW,UAAU,IAAI,OAAO,CAA6B;IAC7D,IAAW,wBAAwB,IAAI,OAAO,CAA2C;IACzF,IAAW,8BAA8B,IAAI,OAAO,CAAiD;IACrG,IAAW,cAAc,IAAI,OAAO,CAAiC;IACrE,IAAW,WAAW,IAAI,OAAO,CAA8B;IAC/D,IAAW,YAAY,IAAI,OAAO,CAA+B;IACjE,IAAW,QAAQ,IAAI,OAAO,CAA2B;IACzD,IAAW,YAAY,IAAI,MAAM,EAAE,CAA+B;IAClE,IAAW,SAAS,IAAI,eAAe,GAAG,SAAS,CAA4B;IAC/E,IAAW,eAAe,IAAI,GAAG,GAAG,SAAS,CAAkC;IAC/E,IAAW,UAAU,IAAI,OAAO,CAAgD;IAChF,IAAW,QAAQ,IAAI,QAAQ,CAA0I;IACzK,IAAW,QAAQ,CAAC,IAAI,EAAE,QAAQ,EAAoG;IACtI,IAAW,SAAS,IAAI,SAAS,GAAG,SAAS,CAA4B;IACzE,IAAW,YAAY,IAAI,WAAW,GAAG,SAAS,CAA+B;IAEjF,IAAW,UAAU,IAAI,UAAU,CAA6B;IAChE,IAAW,UAAU,CAAC,IAAI,EAAE,UAAU,EAA8B;IAEpE,gBAAgB;IAChB,IAAW,WAAW,IACc,WAAW,GAAG,SAAS,CADL;IACtD,IAAW,WAAW,CAAC,WAAW,EAAE,WAAW,GAAG,SAAS,EAAsC;IAEjG,gBAAgB;IAChB,IAAW,kBAAkB,gBAAuC;IAEpE,gBAAgB;IAChB,IAAW,uBAAuB,IACW,UAAU,GAAG,SAAS,CADW;IAC9E,IAAW,uBAAuB,CAAC,QAAQ,EAAE,UAAU,GAAG,SAAS,EAA+C;IAElH,gBAAgB;IAChB,IAAW,mBAAmB,IACO,SAAS,GAAG,SAAS,CADY;IACtE,IAAW,mBAAmB,CAAC,IAAI,EAAE,SAAS,GAAG,SAAS,EAAuC;IAEjG,gBAAgB;IAChB,IAAW,YAAY,gBAAiC;IAExD,gBAAgB;IAChB,IAAW,YAAY,IACS,SAAS,GAAG,SAAS,CADG;IACxD,IAAW,YAAY,CAAC,MAAM,EAAE,SAAS,GAAG,SAAS,EAAkC;;IAIvF,kBAAkB;gBACN,KAAK,EAAE,WAAW;IAW9B,kBAAkB;WACJ,yBAAyB,CAAC,WAAW,EAAE,WAAW,EAAE,EAAE,EAAE,SAAS;IAiF/E,kBAAkB;WACJ,kCAAkC,CAAC,mBAAmB,EAAE,mBAAmB,GAAG,WAAW;IAMvG,kBAAkB;IACX,gBAAgB,CAAC,KAAK,EAAE,WAAW;IAQ1C,OAAO,CAAC,kBAAkB,CASxB;IAEF,aAAa;IACb,IAAW,kBAAkB,8BAE5B;IAED,2BAA2B;IAC3B,IAAW,KAAK,IAAI,MAAM,CAEzB;IAED;;OAEG;IACI,QAAQ,CAAC,CAAC,EAAE,MAAM,GAAG,sBAAsB,GAAG,YAAY;IAOjE,6BAA6B;IAC7B,IAAW,OAAO,IAAI,MAAM,CAE3B;IAED;;OAEG;IACI,UAAU,CAAC,CAAC,EAAE,MAAM,GAAG,sBAAsB,GAAG,YAAY;IAInE,IAAW,aAAa,IAAI,aAAa,GAAG,SAAS,CAEpD;IAEM,gBAAgB,CAAC,IAAI,EAAE,yBAAyB,GAAG,aAAa,GAAG,SAAS;IAqCnF,IAAW,SAAS,IAAI,KAAK,CAAC,SAAS,CAUtC;IAED,IAAW,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,EAEzC;IAEM,cAAc,CAAC,QAAQ,EAAE,WAAW,GAAG,IAAI;IAU3C,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,SAAS;IAI9C,IAAW,SAAS,IAAI,OAAO,GAAG,SAAS,CAE1C;IAEM,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS;IAIvD,IAAW,mBAAmB,IAAI,MAAM,GAAG,SAAS,CAEnD;IAEM,OAAO,IAAI,OAAO;IAIzB,IAAW,SAAS,IAAI,OAAO,CAE9B;IAED,IAAW,WAAW,IAAI,WAAW,CAEpC;IAED,IAAW,QAAQ,IAAI,OAAO,CAE7B;IAED,IAAW,sBAAsB,CAAC,IAAI,EAAE,OAAO,GAAG,SAAS,EAE1D;IAED,IAAW,sBAAsB,IAAI,OAAO,CAE3C;IAED,IAAW,mBAAmB,IAAI,aAAa,CAAC,MAAM,GAAC,OAAO,GAAC,QAAQ,GAAC,KAAK,CAAC,GAAG,SAAS,CAEzF;IAED,IAAW,mBAAmB,CAAC,OAAO,EAAE,aAAa,CAAC,MAAM,GAAC,OAAO,GAAC,QAAQ,GAAC,KAAK,CAAC,GAAG,SAAS,EAG/F;IAEM,oBAAoB,IAAI,IAAI;IAQnC,kEAAkE;IAC3D,kBAAkB,IAAI,IAAI;IAKjC;;OAEG;IACI,qBAAqB,IAAI,OAAO;IAavC;;;OAGG;IACI,IAAI;IAIX;;OAEG;IACI,MAAM;CAGd"}
|
|
@@ -43,6 +43,7 @@ export var WidgetType;
|
|
|
43
43
|
* @public
|
|
44
44
|
*/
|
|
45
45
|
export class WidgetDef {
|
|
46
|
+
/** @internal */
|
|
46
47
|
constructor(widgetProps) {
|
|
47
48
|
this._label = "";
|
|
48
49
|
this._tooltip = "";
|
|
@@ -75,13 +76,10 @@ export class WidgetDef {
|
|
|
75
76
|
}
|
|
76
77
|
}
|
|
77
78
|
};
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
WidgetDef.
|
|
82
|
-
this._id = `Widget-${WidgetDef._sId}`;
|
|
83
|
-
}
|
|
84
|
-
WidgetDef.initializeFromWidgetProps(widgetProps, this);
|
|
79
|
+
WidgetDef._sId++;
|
|
80
|
+
this._id = `Widget-${WidgetDef._sId}`;
|
|
81
|
+
if (widgetProps)
|
|
82
|
+
WidgetDef.initializeFromWidgetProps(widgetProps, this); // eslint-disable-line deprecation/deprecation
|
|
85
83
|
}
|
|
86
84
|
get state() {
|
|
87
85
|
if ("1" === UiFramework.uiVersion)
|
|
@@ -112,7 +110,7 @@ export class WidgetDef {
|
|
|
112
110
|
get iconSpec() { return this._iconSpec === IconHelper.reactIconKey ? IconHelper.getIconReactNode(this._iconSpec, this._internalData) : this._iconSpec; }
|
|
113
111
|
set iconSpec(spec) { this._iconSpec = this._internalData ? IconHelper.getIconData(spec, this._internalData) : spec; }
|
|
114
112
|
get badgeType() { return this._badgeType; }
|
|
115
|
-
get initialProps() { return this._initialProps; }
|
|
113
|
+
get initialProps() { return this._initialProps; } // eslint-disable-line deprecation/deprecation
|
|
116
114
|
get widgetType() { return this._widgetType; }
|
|
117
115
|
set widgetType(type) { this._widgetType = type; }
|
|
118
116
|
/** @internal */
|
|
@@ -131,8 +129,11 @@ export class WidgetDef {
|
|
|
131
129
|
/** @internal */
|
|
132
130
|
get popoutBounds() { return this._popoutBounds; }
|
|
133
131
|
set popoutBounds(bounds) { this._popoutBounds = bounds; }
|
|
132
|
+
/** @deprecated */
|
|
134
133
|
static initializeFromWidgetProps(widgetProps, me) {
|
|
135
134
|
me._initialProps = widgetProps;
|
|
135
|
+
if (widgetProps.id !== undefined)
|
|
136
|
+
me._id = widgetProps.id;
|
|
136
137
|
if (widgetProps.label)
|
|
137
138
|
me.setLabel(widgetProps.label);
|
|
138
139
|
else if (widgetProps.labelKey)
|
|
@@ -190,13 +191,15 @@ export class WidgetDef {
|
|
|
190
191
|
me._onWidgetStateChanged = widgetProps.onWidgetStateChanged;
|
|
191
192
|
me._saveTransientState = widgetProps.saveTransientState;
|
|
192
193
|
me._restoreTransientState = widgetProps.restoreTransientState;
|
|
193
|
-
me.setUpSyncSupport(widgetProps);
|
|
194
|
+
me.setUpSyncSupport(widgetProps); // eslint-disable-line deprecation/deprecation
|
|
194
195
|
}
|
|
196
|
+
/** @deprecated */
|
|
195
197
|
static createWidgetPropsFromAbstractProps(abstractWidgetProps) {
|
|
196
|
-
const widgetProps = abstractWidgetProps;
|
|
198
|
+
const widgetProps = abstractWidgetProps; // eslint-disable-line deprecation/deprecation
|
|
197
199
|
widgetProps.element = abstractWidgetProps.getWidgetContent();
|
|
198
200
|
return widgetProps;
|
|
199
201
|
}
|
|
202
|
+
/** @deprecated */
|
|
200
203
|
setUpSyncSupport(props) {
|
|
201
204
|
if (props.stateFunc && props.syncEventIds && props.syncEventIds.length > 0) { // eslint-disable-line deprecation/deprecation
|
|
202
205
|
this._syncEventIds = props.syncEventIds;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WidgetDef.js","sourceRoot":"","sources":["../../../../src/appui-react/widgets/WidgetDef.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Widget\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { AbstractWidgetProps, BadgeType, ConditionalStringValue, PointProps, StringGetter, UiError, UiEvent, UiSyncEventArgs, WidgetState } from \"@itwin/appui-abstract\";\r\nimport { Direction, FloatingWidgetState, PanelSide } from \"@itwin/appui-layout-react\";\r\nimport { ConfigurableCreateInfo, ConfigurableUiControlConstructor, ConfigurableUiControlType } from \"../configurableui/ConfigurableUiControl\";\r\nimport { ConfigurableUiManager } from \"../configurableui/ConfigurableUiManager\";\r\nimport { FrontstageManager } from \"../frontstage/FrontstageManager\";\r\nimport { CommandItemDef } from \"../shared/CommandItemDef\";\r\nimport { ItemList } from \"../shared/ItemMap\";\r\nimport { SyncUiEventDispatcher } from \"../syncui/SyncUiEventDispatcher\";\r\nimport { UiFramework } from \"../UiFramework\";\r\nimport { PropsHelper } from \"../utils/PropsHelper\";\r\nimport { WidgetControl } from \"./WidgetControl\";\r\nimport { WidgetProps } from \"./WidgetProps\";\r\nimport { StatusBarWidgetComposerControl } from \"./StatusBarWidgetComposerControl\";\r\nimport { IconHelper, IconSpec, Rectangle, SizeProps } from \"@itwin/core-react\";\r\n\r\nconst widgetStateNameMap = new Map<WidgetState, string>([\r\n [WidgetState.Closed, \"Closed\"],\r\n [WidgetState.Floating, \"Floating\"],\r\n [WidgetState.Hidden, \"Hidden\"],\r\n [WidgetState.Open, \"Open\"],\r\n [WidgetState.Unloaded, \"Unloaded\"],\r\n]);\r\n\r\n/** Widget State Changed Event Args interface.\r\n * @public\r\n */\r\nexport interface WidgetStateChangedEventArgs {\r\n widgetDef: WidgetDef;\r\n widgetState: WidgetState;\r\n}\r\n\r\n/** Widget State Changed Event class.\r\n * @public\r\n */\r\nexport class WidgetStateChangedEvent extends UiEvent<WidgetStateChangedEventArgs> { }\r\n\r\n/** @internal */\r\nexport interface WidgetChangedEventArgs {\r\n widgetDef: WidgetDef;\r\n}\r\n\r\n/** @internal */\r\nexport interface WidgetEventArgs {\r\n widgetDef: WidgetDef;\r\n}\r\n\r\n/** Widget type enum.\r\n * @public\r\n */\r\nexport enum WidgetType {\r\n Tool,\r\n Navigation,\r\n FreeFrom,\r\n Rectangular,\r\n ToolSettings,\r\n StatusBar,\r\n}\r\n\r\n/** Properties for a Toolbar Widget.\r\n * @public\r\n */\r\nexport interface ToolbarWidgetProps extends WidgetProps {\r\n horizontalDirection?: Direction; // eslint-disable-line deprecation/deprecation\r\n verticalDirection?: Direction; // eslint-disable-line deprecation/deprecation\r\n\r\n horizontalItems?: ItemList;\r\n verticalItems?: ItemList;\r\n}\r\n\r\n/** Properties for a Tool Widget.\r\n * @public\r\n */\r\nexport interface ToolWidgetProps extends ToolbarWidgetProps {\r\n appButton?: CommandItemDef;\r\n}\r\n\r\n/** Properties for a Navigation Widget.\r\n * @public\r\n */\r\nexport interface NavigationWidgetProps extends ToolbarWidgetProps {\r\n navigationAidId?: string;\r\n}\r\n\r\n/** Union of all Widget properties.\r\n * @public\r\n */\r\nexport type AnyWidgetProps = WidgetProps | ToolWidgetProps | NavigationWidgetProps;\r\n\r\n/** Prototype for WidgetDef StateFunc (UI 1.0 only deprecate ???)\r\n * @deprecated Used in UI1.0 only.\r\n * @public\r\n */\r\nexport type WidgetStateFunc = (state: Readonly<WidgetState>) => WidgetState;\r\n\r\n/** @internal */\r\nexport interface TabLocation {\r\n widgetId: string;\r\n widgetIndex: number;\r\n side: PanelSide;\r\n tabIndex: number;\r\n floatingWidget?: FloatingWidgetState;\r\n}\r\n\r\n// -----------------------------------------------------------------------------\r\n\r\n/** A Widget Definition in the 9-Zone Layout system.\r\n * @public\r\n */\r\nexport class WidgetDef {\r\n private static _sId = 0;\r\n private _label: string | ConditionalStringValue | StringGetter = \"\";\r\n private _tooltip: string | ConditionalStringValue | StringGetter = \"\";\r\n private _widgetReactNode: React.ReactNode;\r\n private _widgetControl!: WidgetControl;\r\n private _defaultState: WidgetState = WidgetState.Unloaded;\r\n private _state: WidgetState = WidgetState.Unloaded;\r\n private _id: string;\r\n private _classId: string | ConfigurableUiControlConstructor | undefined = undefined;\r\n private _priority: number = 0;\r\n private _isFreeform: boolean = false;\r\n private _isFloatingStateSupported: boolean = false;\r\n private _isFloatingStateWindowResizable: boolean = true;\r\n private _isToolSettings: boolean = false;\r\n private _isStatusBar: boolean = false;\r\n private _stateChanged: boolean = false;\r\n private _fillZone: boolean = false;\r\n private _syncEventIds: string[] = [];\r\n private _stateFunc?: WidgetStateFunc; // eslint-disable-line deprecation/deprecation\r\n private _widgetType: WidgetType = WidgetType.Rectangular;\r\n private _applicationData?: any;\r\n private _iconSpec?: string | ConditionalStringValue | React.ReactNode;\r\n private _internalData?: Map<string, any>;\r\n private _badgeType?: BadgeType;\r\n private _onWidgetStateChanged?: () => void;\r\n private _saveTransientState?: () => void;\r\n private _restoreTransientState?: () => boolean;\r\n private _preferredPanelSize: \"fit-content\" | undefined;\r\n private _defaultFloatingSize: SizeProps | undefined;\r\n private _canPopout?: boolean;\r\n private _floatingContainerId?: string;\r\n private _defaultFloatingPosition: PointProps | undefined;\r\n\r\n private _hideWithUiWhenFloating?: boolean;\r\n private _allowedPanelTargets?: ReadonlyArray<\"left\"|\"right\"|\"bottom\"|\"top\">;\r\n private _initialProps?: WidgetProps;\r\n\r\n private _tabLocation?: TabLocation;\r\n private _defaultTabLocation: TabLocation = {\r\n side: \"left\",\r\n tabIndex: 0,\r\n widgetId: \"\",\r\n widgetIndex: 0,\r\n };\r\n private _popoutBounds?: Rectangle;\r\n\r\n public get state(): WidgetState {\r\n if (\"1\" === UiFramework.uiVersion)\r\n return this._state;\r\n\r\n const frontstageDef = FrontstageManager.activeFrontstageDef;\r\n if (frontstageDef && frontstageDef.findWidgetDef(this.id)) {\r\n const currentState = frontstageDef.getWidgetCurrentState(this);\r\n // istanbul ignore else\r\n if (undefined !== currentState)\r\n return currentState;\r\n }\r\n return this.defaultState;\r\n }\r\n\r\n public get id(): string { return this._id; }\r\n public get classId(): string | ConfigurableUiControlConstructor | undefined { return this._classId; }\r\n public get priority(): number { return this._priority; }\r\n public get isFreeform(): boolean { return this._isFreeform; }\r\n public get isFloatingStateSupported(): boolean { return this._isFloatingStateSupported; }\r\n public get isFloatingStateWindowResizable(): boolean { return this._isFloatingStateWindowResizable; }\r\n public get isToolSettings(): boolean { return this._isToolSettings; }\r\n public get isStatusBar(): boolean { return this._isStatusBar; }\r\n public get stateChanged(): boolean { return this._stateChanged; }\r\n public get fillZone(): boolean { return this._fillZone; }\r\n public get syncEventIds(): string[] { return this._syncEventIds; }\r\n public get stateFunc(): WidgetStateFunc | undefined { return this._stateFunc; } // eslint-disable-line deprecation/deprecation\r\n public get applicationData(): any | undefined { return this._applicationData; }\r\n public get isFloating(): boolean { return this.state === WidgetState.Floating; }\r\n public get iconSpec(): IconSpec { return this._iconSpec === IconHelper.reactIconKey ? IconHelper.getIconReactNode(this._iconSpec, this._internalData) : this._iconSpec; }\r\n public set iconSpec(spec: IconSpec) { this._iconSpec = this._internalData ? IconHelper.getIconData(spec, this._internalData) : spec; }\r\n public get badgeType(): BadgeType | undefined { return this._badgeType; }\r\n public get initialProps(): WidgetProps | undefined { return this._initialProps; }\r\n\r\n public get widgetType(): WidgetType { return this._widgetType; }\r\n public set widgetType(type: WidgetType) { this._widgetType = type; }\r\n\r\n /** @internal */\r\n public get tabLocation() { return this._tabLocation; }\r\n public set tabLocation(tabLocation: TabLocation | undefined) { this._tabLocation = tabLocation; }\r\n\r\n /** @internal */\r\n public get defaultTabLocation() { return this._defaultTabLocation; }\r\n\r\n /** @internal */\r\n public get defaultFloatingPosition() { return this._defaultFloatingPosition; }\r\n public set defaultFloatingPosition(position: PointProps | undefined) { this._defaultFloatingPosition = position; }\r\n\r\n /** @internal */\r\n public get defaultFloatingSize() { return this._defaultFloatingSize; }\r\n public set defaultFloatingSize(size: SizeProps | undefined) { this._defaultFloatingSize = size; }\r\n\r\n /** @internal */\r\n public get defaultState() { return this._defaultState; }\r\n\r\n /** @internal */\r\n public get popoutBounds() { return this._popoutBounds; }\r\n public set popoutBounds(bounds: Rectangle | undefined) { this._popoutBounds = bounds; }\r\n\r\n constructor(widgetProps: WidgetProps) {\r\n if (widgetProps.id !== undefined)\r\n this._id = widgetProps.id;\r\n else {\r\n WidgetDef._sId++;\r\n this._id = `Widget-${WidgetDef._sId}`;\r\n }\r\n\r\n WidgetDef.initializeFromWidgetProps(widgetProps, this);\r\n }\r\n\r\n public static initializeFromWidgetProps(widgetProps: WidgetProps, me: WidgetDef) {\r\n me._initialProps = widgetProps;\r\n if (widgetProps.label)\r\n me.setLabel(widgetProps.label);\r\n else if (widgetProps.labelKey)\r\n me._label = UiFramework.localization.getLocalizedString(widgetProps.labelKey);\r\n\r\n me.setCanPopout(widgetProps.canPopout);\r\n me.setFloatingContainerId(widgetProps.floatingContainerId);\r\n me.defaultFloatingPosition = widgetProps.defaultFloatingPosition ? widgetProps.defaultFloatingPosition as PointProps : undefined;\r\n\r\n me._hideWithUiWhenFloating = !!widgetProps.hideWithUiWhenFloating;\r\n\r\n me.allowedPanelTargets = widgetProps.allowedPanelTargets;\r\n\r\n if (widgetProps.priority !== undefined)\r\n me._priority = widgetProps.priority;\r\n\r\n if (widgetProps.tooltip)\r\n me.setTooltip(widgetProps.tooltip);\r\n else if (widgetProps.tooltipKey)\r\n me._tooltip = UiFramework.localization.getLocalizedString(widgetProps.tooltipKey);\r\n\r\n if (widgetProps.control !== undefined)\r\n me._classId = widgetProps.control;\r\n else if (widgetProps.classId !== undefined)\r\n me._classId = widgetProps.classId;\r\n\r\n if (widgetProps.defaultState !== undefined) {\r\n me._defaultState = widgetProps.defaultState;\r\n // istanbul ignore next\r\n if (\"1\" === UiFramework.uiVersion)\r\n me._state = widgetProps.defaultState === WidgetState.Floating ? WidgetState.Open : widgetProps.defaultState;\r\n }\r\n\r\n if (widgetProps.isFreeform !== undefined) {\r\n me._isFreeform = widgetProps.isFreeform;\r\n me._widgetType = me.isFreeform ? WidgetType.FreeFrom : WidgetType.Rectangular;\r\n }\r\n\r\n if (widgetProps.isFloatingStateSupported !== undefined)\r\n me._isFloatingStateSupported = widgetProps.isFloatingStateSupported;\r\n if (widgetProps.isFloatingStateWindowResizable !== undefined)\r\n me._isFloatingStateWindowResizable = widgetProps.isFloatingStateWindowResizable;\r\n if (widgetProps.isToolSettings !== undefined)\r\n me._isToolSettings = widgetProps.isToolSettings;\r\n if (widgetProps.isStatusBar !== undefined)\r\n me._isStatusBar = widgetProps.isStatusBar;\r\n if (widgetProps.fillZone !== undefined)\r\n me._fillZone = widgetProps.fillZone;\r\n\r\n if (widgetProps.applicationData !== undefined)\r\n me._applicationData = widgetProps.applicationData;\r\n\r\n if (widgetProps.element !== undefined)\r\n me._widgetReactNode = widgetProps.element;\r\n\r\n if (widgetProps.iconSpec !== undefined)\r\n me._iconSpec = widgetProps.iconSpec;\r\n if (widgetProps.internalData)\r\n me._internalData = widgetProps.internalData;\r\n // istanbul ignore next\r\n if (widgetProps.icon !== undefined && me._iconSpec === undefined)\r\n me._iconSpec = widgetProps.icon;\r\n\r\n if (widgetProps.badgeType !== undefined)\r\n me._badgeType = widgetProps.badgeType;\r\n\r\n me._preferredPanelSize = widgetProps.preferredPanelSize;\r\n me._defaultFloatingSize = widgetProps.defaultFloatingSize;\r\n me._onWidgetStateChanged = widgetProps.onWidgetStateChanged;\r\n me._saveTransientState = widgetProps.saveTransientState;\r\n me._restoreTransientState = widgetProps.restoreTransientState;\r\n\r\n me.setUpSyncSupport(widgetProps);\r\n }\r\n\r\n public static createWidgetPropsFromAbstractProps(abstractWidgetProps: AbstractWidgetProps): WidgetProps {\r\n const widgetProps: WidgetProps = abstractWidgetProps;\r\n widgetProps.element = abstractWidgetProps.getWidgetContent();\r\n return widgetProps;\r\n }\r\n\r\n public setUpSyncSupport(props: WidgetProps) {\r\n if (props.stateFunc && props.syncEventIds && props.syncEventIds.length > 0) { // eslint-disable-line deprecation/deprecation\r\n this._syncEventIds = props.syncEventIds;\r\n this._stateFunc = props.stateFunc; // eslint-disable-line deprecation/deprecation\r\n SyncUiEventDispatcher.onSyncUiEvent.addListener(this._handleSyncUiEvent);\r\n }\r\n }\r\n\r\n private _handleSyncUiEvent = (args: UiSyncEventArgs): void => {\r\n if ((this.syncEventIds.length > 0) && this.syncEventIds.some((value: string): boolean => args.eventIds.has(value.toLowerCase()))) {\r\n // istanbul ignore else\r\n if (this.stateFunc) {\r\n let newState = this.state;\r\n newState = this.stateFunc(newState);\r\n this.setWidgetState(newState);\r\n }\r\n }\r\n };\r\n\r\n /** @alpha */\r\n public get preferredPanelSize() {\r\n return this._preferredPanelSize;\r\n }\r\n\r\n /** Get the label string */\r\n public get label(): string {\r\n return PropsHelper.getStringFromSpec(this._label);\r\n }\r\n\r\n /** Set the label.\r\n * @param v A string or a function to get the string.\r\n */\r\n public setLabel(v: string | ConditionalStringValue | StringGetter) {\r\n if (this._label === v)\r\n return;\r\n this._label = v;\r\n FrontstageManager.onWidgetLabelChangedEvent.emit({ widgetDef: this });\r\n }\r\n\r\n /** Get the tooltip string */\r\n public get tooltip(): string {\r\n return PropsHelper.getStringFromSpec(this._tooltip);\r\n }\r\n\r\n /** Set the tooltip.\r\n * @param v A string or a function to get the string.\r\n */\r\n public setTooltip(v: string | ConditionalStringValue | StringGetter) {\r\n this._tooltip = v;\r\n }\r\n\r\n public get widgetControl(): WidgetControl | undefined {\r\n return this._widgetControl;\r\n }\r\n\r\n public getWidgetControl(type: ConfigurableUiControlType): WidgetControl | undefined {\r\n if (!this._widgetControl && this.classId) {\r\n let usedClassId: string = \"\";\r\n\r\n if (typeof this.classId === \"string\") {\r\n // istanbul ignore else\r\n if (this.classId)\r\n this._widgetControl = ConfigurableUiManager.createControl(this.classId, this.id, this.applicationData) as WidgetControl;\r\n usedClassId = this.classId;\r\n } else {\r\n const info = new ConfigurableCreateInfo(this.classId.name, this.id, this.id);\r\n usedClassId = this.classId.name;\r\n this._widgetControl = new this.classId(info, this.applicationData) as WidgetControl;\r\n }\r\n\r\n // istanbul ignore else\r\n if (this._widgetControl) {\r\n if (this._widgetControl.getType() !== type) {\r\n throw new UiError(UiFramework.loggerCategory(this), `getWidgetControl: '${usedClassId}' is NOT a ${type}; it is a ${this._widgetControl.getType()}`);\r\n }\r\n\r\n this._widgetControl.widgetDef = this;\r\n this._widgetControl.initialize();\r\n }\r\n }\r\n\r\n // istanbul ignore next - To avoid breaking API changes, if a WidgetControl is not specified for a status bar use Default one.\r\n if (!this._widgetControl && this.isStatusBar) {\r\n const info = new ConfigurableCreateInfo(\"StatusBarWidgetComposerControl\", StatusBarWidgetComposerControl.controlId, StatusBarWidgetComposerControl.controlId);\r\n this._widgetControl = new StatusBarWidgetComposerControl(info, undefined);\r\n this._widgetControl.widgetDef = this;\r\n this._widgetControl.initialize();\r\n }\r\n\r\n return this._widgetControl;\r\n }\r\n\r\n public get reactNode(): React.ReactNode {\r\n if (!this._widgetReactNode) {\r\n const widgetControl = this.getWidgetControl(ConfigurableUiControlType.Widget);\r\n\r\n // istanbul ignore else\r\n if (widgetControl && widgetControl.reactNode)\r\n this._widgetReactNode = widgetControl.reactNode;\r\n }\r\n\r\n return this._widgetReactNode;\r\n }\r\n\r\n public set reactNode(node: React.ReactNode) {\r\n this._widgetReactNode = node;\r\n }\r\n\r\n public setWidgetState(newState: WidgetState): void {\r\n if (this.state === newState)\r\n return;\r\n if (\"1\" === UiFramework.uiVersion)\r\n this._state = newState;\r\n this._stateChanged = true;\r\n FrontstageManager.onWidgetStateChangedEvent.emit({ widgetDef: this, widgetState: newState });\r\n this.onWidgetStateChanged();\r\n }\r\n\r\n public setCanPopout(value: boolean | undefined) {\r\n this._canPopout = value;\r\n }\r\n\r\n public get canPopout(): boolean | undefined {\r\n return (this._canPopout);\r\n }\r\n\r\n public setFloatingContainerId(value: string | undefined) {\r\n this._floatingContainerId = value;\r\n }\r\n\r\n public get floatingContainerId(): string | undefined {\r\n return (this._floatingContainerId);\r\n }\r\n\r\n public canOpen(): boolean {\r\n return (this.isFloating || this.isActive);\r\n }\r\n\r\n public get isVisible(): boolean {\r\n return WidgetState.Hidden !== this.state;\r\n }\r\n\r\n public get activeState(): WidgetState {\r\n return this.state;\r\n }\r\n\r\n public get isActive(): boolean {\r\n return WidgetState.Open === this.activeState;\r\n }\r\n\r\n public set hideWithUiWhenFloating(hide: boolean | undefined) {\r\n this._hideWithUiWhenFloating = !!hide;\r\n }\r\n\r\n public get hideWithUiWhenFloating(): boolean {\r\n return !!this._hideWithUiWhenFloating;\r\n }\r\n\r\n public get allowedPanelTargets(): ReadonlyArray<\"left\"|\"right\"|\"bottom\"|\"top\"> | undefined {\r\n return this._allowedPanelTargets;\r\n }\r\n\r\n public set allowedPanelTargets(targets: ReadonlyArray<\"left\"|\"right\"|\"bottom\"|\"top\"> | undefined) {\r\n\r\n this._allowedPanelTargets = (targets && targets?.length > 0) ? targets : undefined;\r\n }\r\n\r\n public onWidgetStateChanged(): void {\r\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\r\n this.widgetControl && UiFramework.postTelemetry(`Widget ${this.widgetControl.classId} state set to ${widgetStateNameMap.get(this.state)}`, \"35402486-9839-441E-A5C7-46D546142D11\");\r\n this.widgetControl && this.widgetControl.onWidgetStateChanged();\r\n // istanbul ignore next\r\n this._onWidgetStateChanged && this._onWidgetStateChanged();\r\n }\r\n\r\n /** Overwrite to save transient DOM state (i.e. scroll offset). */\r\n public saveTransientState(): void {\r\n this.widgetControl && this.widgetControl.saveTransientState();\r\n this._saveTransientState && this._saveTransientState();\r\n }\r\n\r\n /** Overwrite to restore transient DOM state.\r\n * @note Return true if the state is restored or the Widget will remount.\r\n */\r\n public restoreTransientState(): boolean {\r\n let result = true;\r\n if (this.widgetControl || this._restoreTransientState) {\r\n let result1 = false, result2 = false;\r\n if (this.widgetControl)\r\n result1 = this.widgetControl.restoreTransientState();\r\n if (this._restoreTransientState)\r\n result2 = this._restoreTransientState();\r\n result = !(result1 || result2);\r\n }\r\n return result;\r\n }\r\n\r\n /** Opens the widget and makes it visible to the user.\r\n * I.e. opens the stage panel or brings the floating widget to front of the screen.\r\n * @alpha\r\n */\r\n public show() {\r\n FrontstageManager.onWidgetShowEvent.emit({ widgetDef: this });\r\n }\r\n\r\n /** Opens the widget and expands it to fill full size of the stage panel.\r\n * @alpha\r\n */\r\n public expand() {\r\n FrontstageManager.onWidgetExpandEvent.emit({ widgetDef: this });\r\n }\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"file":"WidgetDef.js","sourceRoot":"","sources":["../../../../src/appui-react/widgets/WidgetDef.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Widget\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { AbstractWidgetProps, BadgeType, ConditionalStringValue, PointProps, StringGetter, UiError, UiEvent, UiSyncEventArgs, WidgetState } from \"@itwin/appui-abstract\";\r\nimport { Direction, FloatingWidgetState, PanelSide } from \"@itwin/appui-layout-react\";\r\nimport { ConfigurableCreateInfo, ConfigurableUiControlConstructor, ConfigurableUiControlType } from \"../configurableui/ConfigurableUiControl\";\r\nimport { ConfigurableUiManager } from \"../configurableui/ConfigurableUiManager\";\r\nimport { FrontstageManager } from \"../frontstage/FrontstageManager\";\r\nimport { CommandItemDef } from \"../shared/CommandItemDef\";\r\nimport { ItemList } from \"../shared/ItemMap\";\r\nimport { SyncUiEventDispatcher } from \"../syncui/SyncUiEventDispatcher\";\r\nimport { UiFramework } from \"../UiFramework\";\r\nimport { PropsHelper } from \"../utils/PropsHelper\";\r\nimport { WidgetControl } from \"./WidgetControl\";\r\nimport { WidgetProps } from \"./WidgetProps\";\r\nimport { StatusBarWidgetComposerControl } from \"./StatusBarWidgetComposerControl\";\r\nimport { IconHelper, IconSpec, Rectangle, SizeProps } from \"@itwin/core-react\";\r\n\r\nconst widgetStateNameMap = new Map<WidgetState, string>([\r\n [WidgetState.Closed, \"Closed\"],\r\n [WidgetState.Floating, \"Floating\"],\r\n [WidgetState.Hidden, \"Hidden\"],\r\n [WidgetState.Open, \"Open\"],\r\n [WidgetState.Unloaded, \"Unloaded\"],\r\n]);\r\n\r\n/** Widget State Changed Event Args interface.\r\n * @public\r\n */\r\nexport interface WidgetStateChangedEventArgs {\r\n widgetDef: WidgetDef;\r\n widgetState: WidgetState;\r\n}\r\n\r\n/** Widget State Changed Event class.\r\n * @public\r\n */\r\nexport class WidgetStateChangedEvent extends UiEvent<WidgetStateChangedEventArgs> { }\r\n\r\n/** @internal */\r\nexport interface WidgetChangedEventArgs {\r\n widgetDef: WidgetDef;\r\n}\r\n\r\n/** @internal */\r\nexport interface WidgetEventArgs {\r\n widgetDef: WidgetDef;\r\n}\r\n\r\n/** Widget type enum.\r\n * @public\r\n */\r\nexport enum WidgetType {\r\n Tool,\r\n Navigation,\r\n FreeFrom,\r\n Rectangular,\r\n ToolSettings,\r\n StatusBar,\r\n}\r\n\r\n/** Properties for a Toolbar Widget.\r\n * @deprecated\r\n * @public\r\n */\r\nexport interface ToolbarWidgetProps extends WidgetProps { // eslint-disable-line deprecation/deprecation\r\n horizontalDirection?: Direction; // eslint-disable-line deprecation/deprecation\r\n verticalDirection?: Direction; // eslint-disable-line deprecation/deprecation\r\n\r\n horizontalItems?: ItemList;\r\n verticalItems?: ItemList;\r\n}\r\n\r\n/** Properties for a Tool Widget.\r\n * @deprecated\r\n * @public\r\n */\r\nexport interface ToolWidgetProps extends ToolbarWidgetProps { // eslint-disable-line deprecation/deprecation\r\n appButton?: CommandItemDef;\r\n}\r\n\r\n/** Properties for a Navigation Widget.\r\n * @deprecated\r\n * @public\r\n */\r\nexport interface NavigationWidgetProps extends ToolbarWidgetProps { // eslint-disable-line deprecation/deprecation\r\n navigationAidId?: string;\r\n}\r\n\r\n/** Union of all Widget properties.\r\n * @deprecated\r\n * @public\r\n */\r\nexport type AnyWidgetProps = WidgetProps | ToolWidgetProps | NavigationWidgetProps; // eslint-disable-line deprecation/deprecation\r\n\r\n/** Prototype for WidgetDef StateFunc (UI 1.0 only deprecate ???)\r\n * @deprecated Used in UI1.0 only.\r\n * @public\r\n */\r\nexport type WidgetStateFunc = (state: Readonly<WidgetState>) => WidgetState;\r\n\r\n/** @internal */\r\nexport interface TabLocation {\r\n widgetId: string;\r\n widgetIndex: number;\r\n side: PanelSide;\r\n tabIndex: number;\r\n floatingWidget?: FloatingWidgetState;\r\n}\r\n\r\n// -----------------------------------------------------------------------------\r\n\r\n/** A Widget Definition in the 9-Zone Layout system.\r\n * @public\r\n */\r\nexport class WidgetDef {\r\n private static _sId = 0;\r\n private _label: string | ConditionalStringValue | StringGetter = \"\";\r\n private _tooltip: string | ConditionalStringValue | StringGetter = \"\";\r\n private _widgetReactNode: React.ReactNode;\r\n private _widgetControl!: WidgetControl;\r\n private _defaultState: WidgetState = WidgetState.Unloaded;\r\n private _state: WidgetState = WidgetState.Unloaded;\r\n private _id: string;\r\n private _classId: string | ConfigurableUiControlConstructor | undefined = undefined;\r\n private _priority: number = 0;\r\n private _isFreeform: boolean = false;\r\n private _isFloatingStateSupported: boolean = false;\r\n private _isFloatingStateWindowResizable: boolean = true;\r\n private _isToolSettings: boolean = false;\r\n private _isStatusBar: boolean = false;\r\n private _stateChanged: boolean = false;\r\n private _fillZone: boolean = false;\r\n private _syncEventIds: string[] = [];\r\n private _stateFunc?: WidgetStateFunc; // eslint-disable-line deprecation/deprecation\r\n private _widgetType: WidgetType = WidgetType.Rectangular;\r\n private _applicationData?: any;\r\n private _iconSpec?: string | ConditionalStringValue | React.ReactNode;\r\n private _internalData?: Map<string, any>;\r\n private _badgeType?: BadgeType;\r\n private _onWidgetStateChanged?: () => void;\r\n private _saveTransientState?: () => void;\r\n private _restoreTransientState?: () => boolean;\r\n private _preferredPanelSize: \"fit-content\" | undefined;\r\n private _defaultFloatingSize: SizeProps | undefined;\r\n private _canPopout?: boolean;\r\n private _floatingContainerId?: string;\r\n private _defaultFloatingPosition: PointProps | undefined;\r\n\r\n private _hideWithUiWhenFloating?: boolean;\r\n private _allowedPanelTargets?: ReadonlyArray<\"left\"|\"right\"|\"bottom\"|\"top\">;\r\n private _initialProps?: WidgetProps; // eslint-disable-line deprecation/deprecation\r\n\r\n private _tabLocation?: TabLocation;\r\n private _defaultTabLocation: TabLocation = {\r\n side: \"left\",\r\n tabIndex: 0,\r\n widgetId: \"\",\r\n widgetIndex: 0,\r\n };\r\n private _popoutBounds?: Rectangle;\r\n\r\n public get state(): WidgetState {\r\n if (\"1\" === UiFramework.uiVersion)\r\n return this._state;\r\n\r\n const frontstageDef = FrontstageManager.activeFrontstageDef;\r\n if (frontstageDef && frontstageDef.findWidgetDef(this.id)) {\r\n const currentState = frontstageDef.getWidgetCurrentState(this);\r\n // istanbul ignore else\r\n if (undefined !== currentState)\r\n return currentState;\r\n }\r\n return this.defaultState;\r\n }\r\n\r\n public get id(): string { return this._id; }\r\n public get classId(): string | ConfigurableUiControlConstructor | undefined { return this._classId; }\r\n public get priority(): number { return this._priority; }\r\n public get isFreeform(): boolean { return this._isFreeform; }\r\n public get isFloatingStateSupported(): boolean { return this._isFloatingStateSupported; }\r\n public get isFloatingStateWindowResizable(): boolean { return this._isFloatingStateWindowResizable; }\r\n public get isToolSettings(): boolean { return this._isToolSettings; }\r\n public get isStatusBar(): boolean { return this._isStatusBar; }\r\n public get stateChanged(): boolean { return this._stateChanged; }\r\n public get fillZone(): boolean { return this._fillZone; }\r\n public get syncEventIds(): string[] { return this._syncEventIds; }\r\n public get stateFunc(): WidgetStateFunc | undefined { return this._stateFunc; } // eslint-disable-line deprecation/deprecation\r\n public get applicationData(): any | undefined { return this._applicationData; }\r\n public get isFloating(): boolean { return this.state === WidgetState.Floating; }\r\n public get iconSpec(): IconSpec { return this._iconSpec === IconHelper.reactIconKey ? IconHelper.getIconReactNode(this._iconSpec, this._internalData) : this._iconSpec; }\r\n public set iconSpec(spec: IconSpec) { this._iconSpec = this._internalData ? IconHelper.getIconData(spec, this._internalData) : spec; }\r\n public get badgeType(): BadgeType | undefined { return this._badgeType; }\r\n public get initialProps(): WidgetProps | undefined { return this._initialProps; } // eslint-disable-line deprecation/deprecation\r\n\r\n public get widgetType(): WidgetType { return this._widgetType; }\r\n public set widgetType(type: WidgetType) { this._widgetType = type; }\r\n\r\n /** @internal */\r\n public get tabLocation() { return this._tabLocation; }\r\n public set tabLocation(tabLocation: TabLocation | undefined) { this._tabLocation = tabLocation; }\r\n\r\n /** @internal */\r\n public get defaultTabLocation() { return this._defaultTabLocation; }\r\n\r\n /** @internal */\r\n public get defaultFloatingPosition() { return this._defaultFloatingPosition; }\r\n public set defaultFloatingPosition(position: PointProps | undefined) { this._defaultFloatingPosition = position; }\r\n\r\n /** @internal */\r\n public get defaultFloatingSize() { return this._defaultFloatingSize; }\r\n public set defaultFloatingSize(size: SizeProps | undefined) { this._defaultFloatingSize = size; }\r\n\r\n /** @internal */\r\n public get defaultState() { return this._defaultState; }\r\n\r\n /** @internal */\r\n public get popoutBounds() { return this._popoutBounds; }\r\n public set popoutBounds(bounds: Rectangle | undefined) { this._popoutBounds = bounds; }\r\n\r\n constructor();\r\n\r\n /** @deprecated */\r\n constructor(props: WidgetProps); // eslint-disable-line @typescript-eslint/unified-signatures, deprecation/deprecation\r\n\r\n /** @internal */\r\n constructor(widgetProps?: WidgetProps) { // eslint-disable-line deprecation/deprecation\r\n WidgetDef._sId++;\r\n this._id = `Widget-${WidgetDef._sId}`;\r\n\r\n if (widgetProps)\r\n WidgetDef.initializeFromWidgetProps(widgetProps, this); // eslint-disable-line deprecation/deprecation\r\n }\r\n\r\n /** @deprecated */\r\n public static initializeFromWidgetProps(widgetProps: WidgetProps, me: WidgetDef) { // eslint-disable-line deprecation/deprecation\r\n me._initialProps = widgetProps;\r\n\r\n if (widgetProps.id !== undefined)\r\n me._id = widgetProps.id;\r\n\r\n if (widgetProps.label)\r\n me.setLabel(widgetProps.label);\r\n else if (widgetProps.labelKey)\r\n me._label = UiFramework.localization.getLocalizedString(widgetProps.labelKey);\r\n\r\n me.setCanPopout(widgetProps.canPopout);\r\n me.setFloatingContainerId(widgetProps.floatingContainerId);\r\n me.defaultFloatingPosition = widgetProps.defaultFloatingPosition ? widgetProps.defaultFloatingPosition as PointProps : undefined;\r\n\r\n me._hideWithUiWhenFloating = !!widgetProps.hideWithUiWhenFloating;\r\n\r\n me.allowedPanelTargets = widgetProps.allowedPanelTargets;\r\n\r\n if (widgetProps.priority !== undefined)\r\n me._priority = widgetProps.priority;\r\n\r\n if (widgetProps.tooltip)\r\n me.setTooltip(widgetProps.tooltip);\r\n else if (widgetProps.tooltipKey)\r\n me._tooltip = UiFramework.localization.getLocalizedString(widgetProps.tooltipKey);\r\n\r\n if (widgetProps.control !== undefined)\r\n me._classId = widgetProps.control;\r\n else if (widgetProps.classId !== undefined)\r\n me._classId = widgetProps.classId;\r\n\r\n if (widgetProps.defaultState !== undefined) {\r\n me._defaultState = widgetProps.defaultState;\r\n // istanbul ignore next\r\n if (\"1\" === UiFramework.uiVersion)\r\n me._state = widgetProps.defaultState === WidgetState.Floating ? WidgetState.Open : widgetProps.defaultState;\r\n }\r\n\r\n if (widgetProps.isFreeform !== undefined) {\r\n me._isFreeform = widgetProps.isFreeform;\r\n me._widgetType = me.isFreeform ? WidgetType.FreeFrom : WidgetType.Rectangular;\r\n }\r\n\r\n if (widgetProps.isFloatingStateSupported !== undefined)\r\n me._isFloatingStateSupported = widgetProps.isFloatingStateSupported;\r\n if (widgetProps.isFloatingStateWindowResizable !== undefined)\r\n me._isFloatingStateWindowResizable = widgetProps.isFloatingStateWindowResizable;\r\n if (widgetProps.isToolSettings !== undefined)\r\n me._isToolSettings = widgetProps.isToolSettings;\r\n if (widgetProps.isStatusBar !== undefined)\r\n me._isStatusBar = widgetProps.isStatusBar;\r\n if (widgetProps.fillZone !== undefined)\r\n me._fillZone = widgetProps.fillZone;\r\n\r\n if (widgetProps.applicationData !== undefined)\r\n me._applicationData = widgetProps.applicationData;\r\n\r\n if (widgetProps.element !== undefined)\r\n me._widgetReactNode = widgetProps.element;\r\n\r\n if (widgetProps.iconSpec !== undefined)\r\n me._iconSpec = widgetProps.iconSpec;\r\n if (widgetProps.internalData)\r\n me._internalData = widgetProps.internalData;\r\n // istanbul ignore next\r\n if (widgetProps.icon !== undefined && me._iconSpec === undefined)\r\n me._iconSpec = widgetProps.icon;\r\n\r\n if (widgetProps.badgeType !== undefined)\r\n me._badgeType = widgetProps.badgeType;\r\n\r\n me._preferredPanelSize = widgetProps.preferredPanelSize;\r\n me._defaultFloatingSize = widgetProps.defaultFloatingSize;\r\n me._onWidgetStateChanged = widgetProps.onWidgetStateChanged;\r\n me._saveTransientState = widgetProps.saveTransientState;\r\n me._restoreTransientState = widgetProps.restoreTransientState;\r\n\r\n me.setUpSyncSupport(widgetProps); // eslint-disable-line deprecation/deprecation\r\n }\r\n\r\n /** @deprecated */\r\n public static createWidgetPropsFromAbstractProps(abstractWidgetProps: AbstractWidgetProps): WidgetProps { // eslint-disable-line deprecation/deprecation\r\n const widgetProps: WidgetProps = abstractWidgetProps; // eslint-disable-line deprecation/deprecation\r\n widgetProps.element = abstractWidgetProps.getWidgetContent();\r\n return widgetProps;\r\n }\r\n\r\n /** @deprecated */\r\n public setUpSyncSupport(props: WidgetProps) { // eslint-disable-line deprecation/deprecation\r\n if (props.stateFunc && props.syncEventIds && props.syncEventIds.length > 0) { // eslint-disable-line deprecation/deprecation\r\n this._syncEventIds = props.syncEventIds;\r\n this._stateFunc = props.stateFunc; // eslint-disable-line deprecation/deprecation\r\n SyncUiEventDispatcher.onSyncUiEvent.addListener(this._handleSyncUiEvent);\r\n }\r\n }\r\n\r\n private _handleSyncUiEvent = (args: UiSyncEventArgs): void => {\r\n if ((this.syncEventIds.length > 0) && this.syncEventIds.some((value: string): boolean => args.eventIds.has(value.toLowerCase()))) {\r\n // istanbul ignore else\r\n if (this.stateFunc) {\r\n let newState = this.state;\r\n newState = this.stateFunc(newState);\r\n this.setWidgetState(newState);\r\n }\r\n }\r\n };\r\n\r\n /** @alpha */\r\n public get preferredPanelSize() {\r\n return this._preferredPanelSize;\r\n }\r\n\r\n /** Get the label string */\r\n public get label(): string {\r\n return PropsHelper.getStringFromSpec(this._label);\r\n }\r\n\r\n /** Set the label.\r\n * @param v A string or a function to get the string.\r\n */\r\n public setLabel(v: string | ConditionalStringValue | StringGetter) {\r\n if (this._label === v)\r\n return;\r\n this._label = v;\r\n FrontstageManager.onWidgetLabelChangedEvent.emit({ widgetDef: this });\r\n }\r\n\r\n /** Get the tooltip string */\r\n public get tooltip(): string {\r\n return PropsHelper.getStringFromSpec(this._tooltip);\r\n }\r\n\r\n /** Set the tooltip.\r\n * @param v A string or a function to get the string.\r\n */\r\n public setTooltip(v: string | ConditionalStringValue | StringGetter) {\r\n this._tooltip = v;\r\n }\r\n\r\n public get widgetControl(): WidgetControl | undefined {\r\n return this._widgetControl;\r\n }\r\n\r\n public getWidgetControl(type: ConfigurableUiControlType): WidgetControl | undefined {\r\n if (!this._widgetControl && this.classId) {\r\n let usedClassId: string = \"\";\r\n\r\n if (typeof this.classId === \"string\") {\r\n // istanbul ignore else\r\n if (this.classId)\r\n this._widgetControl = ConfigurableUiManager.createControl(this.classId, this.id, this.applicationData) as WidgetControl;\r\n usedClassId = this.classId;\r\n } else {\r\n const info = new ConfigurableCreateInfo(this.classId.name, this.id, this.id);\r\n usedClassId = this.classId.name;\r\n this._widgetControl = new this.classId(info, this.applicationData) as WidgetControl;\r\n }\r\n\r\n // istanbul ignore else\r\n if (this._widgetControl) {\r\n if (this._widgetControl.getType() !== type) {\r\n throw new UiError(UiFramework.loggerCategory(this), `getWidgetControl: '${usedClassId}' is NOT a ${type}; it is a ${this._widgetControl.getType()}`);\r\n }\r\n\r\n this._widgetControl.widgetDef = this;\r\n this._widgetControl.initialize();\r\n }\r\n }\r\n\r\n // istanbul ignore next - To avoid breaking API changes, if a WidgetControl is not specified for a status bar use Default one.\r\n if (!this._widgetControl && this.isStatusBar) {\r\n const info = new ConfigurableCreateInfo(\"StatusBarWidgetComposerControl\", StatusBarWidgetComposerControl.controlId, StatusBarWidgetComposerControl.controlId);\r\n this._widgetControl = new StatusBarWidgetComposerControl(info, undefined);\r\n this._widgetControl.widgetDef = this;\r\n this._widgetControl.initialize();\r\n }\r\n\r\n return this._widgetControl;\r\n }\r\n\r\n public get reactNode(): React.ReactNode {\r\n if (!this._widgetReactNode) {\r\n const widgetControl = this.getWidgetControl(ConfigurableUiControlType.Widget);\r\n\r\n // istanbul ignore else\r\n if (widgetControl && widgetControl.reactNode)\r\n this._widgetReactNode = widgetControl.reactNode;\r\n }\r\n\r\n return this._widgetReactNode;\r\n }\r\n\r\n public set reactNode(node: React.ReactNode) {\r\n this._widgetReactNode = node;\r\n }\r\n\r\n public setWidgetState(newState: WidgetState): void {\r\n if (this.state === newState)\r\n return;\r\n if (\"1\" === UiFramework.uiVersion)\r\n this._state = newState;\r\n this._stateChanged = true;\r\n FrontstageManager.onWidgetStateChangedEvent.emit({ widgetDef: this, widgetState: newState });\r\n this.onWidgetStateChanged();\r\n }\r\n\r\n public setCanPopout(value: boolean | undefined) {\r\n this._canPopout = value;\r\n }\r\n\r\n public get canPopout(): boolean | undefined {\r\n return (this._canPopout);\r\n }\r\n\r\n public setFloatingContainerId(value: string | undefined) {\r\n this._floatingContainerId = value;\r\n }\r\n\r\n public get floatingContainerId(): string | undefined {\r\n return (this._floatingContainerId);\r\n }\r\n\r\n public canOpen(): boolean {\r\n return (this.isFloating || this.isActive);\r\n }\r\n\r\n public get isVisible(): boolean {\r\n return WidgetState.Hidden !== this.state;\r\n }\r\n\r\n public get activeState(): WidgetState {\r\n return this.state;\r\n }\r\n\r\n public get isActive(): boolean {\r\n return WidgetState.Open === this.activeState;\r\n }\r\n\r\n public set hideWithUiWhenFloating(hide: boolean | undefined) {\r\n this._hideWithUiWhenFloating = !!hide;\r\n }\r\n\r\n public get hideWithUiWhenFloating(): boolean {\r\n return !!this._hideWithUiWhenFloating;\r\n }\r\n\r\n public get allowedPanelTargets(): ReadonlyArray<\"left\"|\"right\"|\"bottom\"|\"top\"> | undefined {\r\n return this._allowedPanelTargets;\r\n }\r\n\r\n public set allowedPanelTargets(targets: ReadonlyArray<\"left\"|\"right\"|\"bottom\"|\"top\"> | undefined) {\r\n\r\n this._allowedPanelTargets = (targets && targets?.length > 0) ? targets : undefined;\r\n }\r\n\r\n public onWidgetStateChanged(): void {\r\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\r\n this.widgetControl && UiFramework.postTelemetry(`Widget ${this.widgetControl.classId} state set to ${widgetStateNameMap.get(this.state)}`, \"35402486-9839-441E-A5C7-46D546142D11\");\r\n this.widgetControl && this.widgetControl.onWidgetStateChanged();\r\n // istanbul ignore next\r\n this._onWidgetStateChanged && this._onWidgetStateChanged();\r\n }\r\n\r\n /** Overwrite to save transient DOM state (i.e. scroll offset). */\r\n public saveTransientState(): void {\r\n this.widgetControl && this.widgetControl.saveTransientState();\r\n this._saveTransientState && this._saveTransientState();\r\n }\r\n\r\n /** Overwrite to restore transient DOM state.\r\n * @note Return true if the state is restored or the Widget will remount.\r\n */\r\n public restoreTransientState(): boolean {\r\n let result = true;\r\n if (this.widgetControl || this._restoreTransientState) {\r\n let result1 = false, result2 = false;\r\n if (this.widgetControl)\r\n result1 = this.widgetControl.restoreTransientState();\r\n if (this._restoreTransientState)\r\n result2 = this._restoreTransientState();\r\n result = !(result1 || result2);\r\n }\r\n return result;\r\n }\r\n\r\n /** Opens the widget and makes it visible to the user.\r\n * I.e. opens the stage panel or brings the floating widget to front of the screen.\r\n * @alpha\r\n */\r\n public show() {\r\n FrontstageManager.onWidgetShowEvent.emit({ widgetDef: this });\r\n }\r\n\r\n /** Opens the widget and expands it to fill full size of the stage panel.\r\n * @alpha\r\n */\r\n public expand() {\r\n FrontstageManager.onWidgetExpandEvent.emit({ widgetDef: this });\r\n }\r\n}\r\n"]}
|
|
@@ -6,6 +6,7 @@ import { AbstractWidgetProps } from "@itwin/appui-abstract";
|
|
|
6
6
|
import { IconProps } from "@itwin/core-react";
|
|
7
7
|
import { ConfigurableUiControlConstructor } from "../configurableui/ConfigurableUiControl";
|
|
8
8
|
/** Properties for a [Widget]($appui-react) component.
|
|
9
|
+
* @deprecated Props of a deprecated component.
|
|
9
10
|
* @public
|
|
10
11
|
*/
|
|
11
12
|
export interface WidgetProps extends Omit<AbstractWidgetProps, "getWidgetContent">, IconProps {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WidgetProps.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/widgets/WidgetProps.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,gCAAgC,EAAE,MAAM,yCAAyC,CAAC;AAE3F
|
|
1
|
+
{"version":3,"file":"WidgetProps.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/widgets/WidgetProps.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,gCAAgC,EAAE,MAAM,yCAAyC,CAAC;AAE3F;;;GAGG;AACH,MAAM,WAAW,WAAY,SAAQ,IAAI,CAAC,mBAAmB,EAAE,kBAAkB,CAAC,EAAE,SAAS;IAC3F,6IAA6I;IAC7I,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,+IAA+I;IAC/I,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,kEAAkE;IAClE,OAAO,CAAC,EAAE,gCAAgC,CAAC;IAC3C,wCAAwC;IACxC,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,yBAAyB;IACzB,OAAO,CAAC,EAAE,MAAM,GAAG,gCAAgC,CAAC;IACpD,aAAa;IACb,kBAAkB,CAAC,EAAE,aAAa,CAAC;CACpC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WidgetProps.js","sourceRoot":"","sources":["../../../../src/appui-react/widgets/WidgetProps.tsx"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG","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 Widget\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { AbstractWidgetProps } from \"@itwin/appui-abstract\";\r\nimport { IconProps } from \"@itwin/core-react\";\r\nimport { ConfigurableUiControlConstructor } from \"../configurableui/ConfigurableUiControl\";\r\n\r\n/** Properties for a [Widget]($appui-react) component.\r\n * @
|
|
1
|
+
{"version":3,"file":"WidgetProps.js","sourceRoot":"","sources":["../../../../src/appui-react/widgets/WidgetProps.tsx"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG","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 Widget\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { AbstractWidgetProps } from \"@itwin/appui-abstract\";\r\nimport { IconProps } from \"@itwin/core-react\";\r\nimport { ConfigurableUiControlConstructor } from \"../configurableui/ConfigurableUiControl\";\r\n\r\n/** Properties for a [Widget]($appui-react) component.\r\n * @deprecated Props of a deprecated component.\r\n * @public\r\n */\r\nexport interface WidgetProps extends Omit<AbstractWidgetProps, \"getWidgetContent\">, IconProps {\r\n /** if set, it is used to define a key that is used to look up a localized string. This value is used only if label is not explicitly set. */\r\n labelKey?: string;\r\n /** if set, it is used to define a key that is used to look up a localized string. This value is used only if tooltip is not explicitly set. */\r\n tooltipKey?: string;\r\n /** A [[WidgetControl]] providing information about the Widget. */\r\n control?: ConfigurableUiControlConstructor;\r\n /** A React component for the Widget. */\r\n element?: React.ReactNode;\r\n /** Control's class id */\r\n classId?: string | ConfigurableUiControlConstructor;\r\n /** @alpha */\r\n preferredPanelSize?: \"fit-content\";\r\n}\r\n"]}
|
|
@@ -22,6 +22,7 @@ export declare enum ZoneLocation {
|
|
|
22
22
|
BottomRight = 9
|
|
23
23
|
}
|
|
24
24
|
/** Properties of a [[Zone]] component
|
|
25
|
+
* @deprecated Props of a deprecated component.
|
|
25
26
|
* @public
|
|
26
27
|
*/
|
|
27
28
|
export interface ZoneProps extends CommonProps {
|
|
@@ -65,9 +66,12 @@ export interface ZoneRuntimeProps {
|
|
|
65
66
|
zone: ZoneManagerProps;
|
|
66
67
|
}
|
|
67
68
|
/** @internal */
|
|
68
|
-
export declare function getStableWidgetProps
|
|
69
|
+
export declare function getStableWidgetProps<T extends {
|
|
70
|
+
id?: string;
|
|
71
|
+
}>(widgetProps: T, stableId: string): T;
|
|
69
72
|
/** Zone React component.
|
|
70
73
|
* A Zone is a standard area on the screen for users to read and interact with data applicable to the current task. Each Zone has a defined purpose.
|
|
74
|
+
* @deprecated Use [WidgetConfig] or [StagePanelConfig] instead.
|
|
71
75
|
* @public
|
|
72
76
|
*/
|
|
73
77
|
export declare class Zone extends React.Component<ZoneProps> {
|