@itwin/appui-react 5.1.0 → 5.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +19 -1
- package/lib/appui-react/UiFramework.d.ts +2 -2
- package/lib/appui-react/UiFramework.d.ts.map +1 -1
- package/lib/appui-react/UiFramework.js +4 -2
- package/lib/appui-react/UiFramework.js.map +1 -1
- package/lib/appui-react/configurableui/ConfigurableUiContent.d.ts +16 -2
- package/lib/appui-react/configurableui/ConfigurableUiContent.d.ts.map +1 -1
- package/lib/appui-react/configurableui/ConfigurableUiContent.js +41 -23
- package/lib/appui-react/configurableui/ConfigurableUiContent.js.map +1 -1
- package/lib/appui-react/cursor/CursorInformation.d.ts +7 -0
- package/lib/appui-react/cursor/CursorInformation.d.ts.map +1 -1
- package/lib/appui-react/cursor/CursorInformation.js +13 -0
- package/lib/appui-react/cursor/CursorInformation.js.map +1 -1
- package/lib/appui-react/cursor/cursorpopup/CursorPopup.js +1 -1
- package/lib/appui-react/cursor/cursorpopup/CursorPopup.js.map +1 -1
- package/lib/appui-react/cursor/cursorpopup/CursorPopupManager.d.ts +3 -0
- package/lib/appui-react/cursor/cursorpopup/CursorPopupManager.d.ts.map +1 -1
- package/lib/appui-react/cursor/cursorpopup/CursorPopupManager.js +45 -30
- package/lib/appui-react/cursor/cursorpopup/CursorPopupManager.js.map +1 -1
- package/lib/appui-react/cursor/cursorprompt/CursorPrompt.d.ts +12 -15
- package/lib/appui-react/cursor/cursorprompt/CursorPrompt.d.ts.map +1 -1
- package/lib/appui-react/cursor/cursorprompt/CursorPrompt.js +47 -38
- package/lib/appui-react/cursor/cursorprompt/CursorPrompt.js.map +1 -1
- package/lib/appui-react/frontstage/FrontstageConfig.d.ts +6 -0
- package/lib/appui-react/frontstage/FrontstageConfig.d.ts.map +1 -1
- package/lib/appui-react/frontstage/FrontstageConfig.js.map +1 -1
- package/lib/appui-react/frontstage/FrontstageDef.d.ts +2 -0
- package/lib/appui-react/frontstage/FrontstageDef.d.ts.map +1 -1
- package/lib/appui-react/frontstage/FrontstageDef.js +4 -0
- package/lib/appui-react/frontstage/FrontstageDef.js.map +1 -1
- package/lib/appui-react/layout/StandardLayout.d.ts.map +1 -1
- package/lib/appui-react/layout/StandardLayout.js +5 -1
- package/lib/appui-react/layout/StandardLayout.js.map +1 -1
- package/lib/appui-react/layout/base/NineZone.d.ts +0 -5
- package/lib/appui-react/layout/base/NineZone.d.ts.map +1 -1
- package/lib/appui-react/layout/base/NineZone.js.map +1 -1
- package/lib/appui-react/layout/widget/Dock.d.ts.map +1 -1
- package/lib/appui-react/layout/widget/Dock.js +6 -4
- package/lib/appui-react/layout/widget/Dock.js.map +1 -1
- package/lib/appui-react/layout/widget/PinToggle.d.ts.map +1 -1
- package/lib/appui-react/layout/widget/PinToggle.js +7 -5
- package/lib/appui-react/layout/widget/PinToggle.js.map +1 -1
- package/lib/appui-react/layout/widget/PopoutToggle.d.ts.map +1 -1
- package/lib/appui-react/layout/widget/PopoutToggle.js +6 -4
- package/lib/appui-react/layout/widget/PopoutToggle.js.map +1 -1
- package/lib/appui-react/layout/widget/SendBack.d.ts.map +1 -1
- package/lib/appui-react/layout/widget/SendBack.js +6 -6
- package/lib/appui-react/layout/widget/SendBack.js.map +1 -1
- package/lib/appui-react/layout/widget/TabBar.d.ts.map +1 -1
- package/lib/appui-react/layout/widget/TabBar.js +4 -2
- package/lib/appui-react/layout/widget/TabBar.js.map +1 -1
- package/lib/appui-react/layout/widget/WidgetAction.d.ts +16 -0
- package/lib/appui-react/layout/widget/WidgetAction.d.ts.map +1 -0
- package/lib/appui-react/{preview/widget-action-dropdown/Button.js → layout/widget/WidgetAction.js} +13 -9
- package/lib/appui-react/layout/widget/WidgetAction.js.map +1 -0
- package/lib/appui-react/layout/widget/WidgetActions.d.ts +45 -0
- package/lib/appui-react/layout/widget/WidgetActions.d.ts.map +1 -0
- package/lib/appui-react/layout/widget/{Buttons.js → WidgetActions.js} +35 -29
- package/lib/appui-react/layout/widget/WidgetActions.js.map +1 -0
- package/lib/appui-react/layout/widget/{Buttons.scss → WidgetActions.scss} +1 -1
- package/lib/appui-react/layout/widget-panels/useAnimatePanel.d.ts +1 -1
- package/lib/appui-react/preview/control-widget-visibility/CloseWidgetButton.js +2 -2
- package/lib/appui-react/preview/control-widget-visibility/CloseWidgetButton.js.map +1 -1
- package/lib/appui-react/preview/enable-maximized-widget/MaximizeToggle.js +2 -2
- package/lib/appui-react/preview/enable-maximized-widget/MaximizeToggle.js.map +1 -1
- package/lib/appui-react/preview/widget-action-dropdown/MoreButton.d.ts +2 -2
- package/lib/appui-react/preview/widget-action-dropdown/MoreButton.d.ts.map +1 -1
- package/lib/appui-react/preview/widget-action-dropdown/MoreButton.js +4 -4
- package/lib/appui-react/preview/widget-action-dropdown/MoreButton.js.map +1 -1
- package/lib/appui-react/redux/FrameworkState.d.ts +1 -1
- package/lib/appui-react/redux/SessionState.d.ts +2 -2
- package/lib/appui-react/statusfields/toolassistance/ToolAssistanceField.d.ts +11 -7
- package/lib/appui-react/statusfields/toolassistance/ToolAssistanceField.d.ts.map +1 -1
- package/lib/appui-react/statusfields/toolassistance/ToolAssistanceField.js +22 -4
- package/lib/appui-react/statusfields/toolassistance/ToolAssistanceField.js.map +1 -1
- package/lib/appui-react/theme/ThemeManager.d.ts +1 -1
- package/lib/appui-react/theme/ThemeManager.js +1 -1
- package/lib/appui-react/theme/ThemeManager.js.map +1 -1
- package/lib/appui-react/toolbar/ToolbarItem.d.ts +4 -0
- package/lib/appui-react/toolbar/ToolbarItem.d.ts.map +1 -1
- package/lib/appui-react/toolbar/ToolbarItem.js.map +1 -1
- package/lib/appui-react/ui-items-provider/AbstractUiItemsManager.d.ts +1 -1
- package/lib/appui-react/ui-items-provider/AbstractUiItemsManager.d.ts.map +1 -1
- package/lib/appui-react/ui-items-provider/AbstractUiItemsManager.js.map +1 -1
- package/lib/appui-react/ui-items-provider/UiItemsManager.d.ts +25 -23
- package/lib/appui-react/ui-items-provider/UiItemsManager.d.ts.map +1 -1
- package/lib/appui-react/ui-items-provider/UiItemsManager.js +67 -40
- package/lib/appui-react/ui-items-provider/UiItemsManager.js.map +1 -1
- package/lib/appui-react/widget-panels/Frontstage.d.ts.map +1 -1
- package/lib/appui-react/widget-panels/Frontstage.js +2 -5
- package/lib/appui-react/widget-panels/Frontstage.js.map +1 -1
- package/lib/appui-react/widgets/Widget.d.ts +15 -2
- package/lib/appui-react/widgets/Widget.d.ts.map +1 -1
- package/lib/appui-react/widgets/Widget.js.map +1 -1
- package/lib/appui-react/widgets/useWidget.d.ts +1 -1
- package/lib/appui-react.d.ts +3 -1
- package/lib/appui-react.d.ts.map +1 -1
- package/lib/appui-react.js +3 -1
- package/lib/appui-react.js.map +1 -1
- package/lib/cjs/appui-react/layout/widget/{Buttons.scss → WidgetActions.scss} +1 -1
- package/lib/esm/appui-react/layout/widget/{Buttons.scss → WidgetActions.scss} +1 -1
- package/package.json +11 -12
- package/lib/appui-react/layout/widget/Buttons.d.ts +0 -12
- package/lib/appui-react/layout/widget/Buttons.d.ts.map +0 -1
- package/lib/appui-react/layout/widget/Buttons.js.map +0 -1
- package/lib/appui-react/preview/widget-action-dropdown/Button.d.ts +0 -17
- package/lib/appui-react/preview/widget-action-dropdown/Button.d.ts.map +0 -1
- package/lib/appui-react/preview/widget-action-dropdown/Button.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CursorPopupManager.js","sourceRoot":"","sources":["../../../../src/appui-react/cursor/cursorpopup/CursorPopupManager.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Cursor\n */\n\nimport * as React from \"react\";\nimport { BeUiEvent, Logger } from \"@itwin/core-bentley\";\nimport type { XAndY } from \"@itwin/core-geometry\";\nimport { RelativePosition } from \"@itwin/appui-abstract\";\nimport type { ListenerType } from \"@itwin/core-react/internal\";\nimport { Point } from \"@itwin/core-react/internal\";\nimport { UiFramework } from \"../../UiFramework.js\";\nimport { CursorPopup } from \"./CursorPopup.js\";\nimport type { SizeProps } from \"../../utils/SizeProps.js\";\nimport type { RectangleProps } from \"../../utils/RectangleProps.js\";\n\n/** Options for the [[CursorPopupManager]] open method\n * @public\n */\nexport interface CursorPopupOptions {\n /** Title of the popup */\n title?: string;\n /** Called on popup close */\n onClose?: () => void;\n /** Callback to apply changes */\n onApply?: () => void;\n /** Draw shadow */\n shadow?: boolean;\n}\n\n/** Information maintained by CursorPopupManager about a CursorPopup. */\ninterface CursorPopupInfo {\n id: string;\n content: React.ReactNode;\n relativePosition: RelativePosition;\n offset: Point;\n priority: number;\n options?: CursorPopupOptions;\n\n renderRelativePosition: RelativePosition;\n popupSize?: SizeProps;\n}\n\n/** CursorPopup component\n * @public\n */\nexport class CursorPopupManager {\n private static _popups: CursorPopupInfo[] = new Array<CursorPopupInfo>();\n\n /** @internal */\n public static readonly onCursorPopupUpdatePositionEvent = new BeUiEvent<{\n pt: XAndY;\n }>();\n /** @internal */\n public static readonly onCursorPopupFadeOutEvent = new BeUiEvent<{\n id: string;\n }>();\n /** @internal */\n public static readonly onCursorPopupsChangedEvent = new BeUiEvent<object>();\n /** @internal */\n public static clearPopups() {\n this._popups.length = 0;\n CursorPopupManager._emitPopupsChangedEvent();\n }\n\n public static get popups() {\n return this._popups;\n }\n\n public static get popupCount() {\n return this._popups.length;\n }\n\n private static _emitPopupsChangedEvent(): void {\n CursorPopupManager.onCursorPopupsChangedEvent.emit({});\n }\n\n private static pushPopup(popupInfo: CursorPopupInfo): void {\n CursorPopupManager._popups.push(popupInfo);\n CursorPopupManager._emitPopupsChangedEvent();\n }\n\n /** Called to open popup with a new set of properties\n */\n public static open(\n id: string,\n content: React.ReactNode,\n pt: XAndY,\n offset: XAndY,\n relativePosition: RelativePosition,\n priority: number = 0,\n options?: CursorPopupOptions\n ) {\n const popupInfo = CursorPopupManager._popups.find(\n (info: CursorPopupInfo) => id === info.id\n );\n if (popupInfo) {\n popupInfo.content = content;\n popupInfo.offset = Point.create(offset);\n popupInfo.relativePosition = relativePosition;\n popupInfo.renderRelativePosition = relativePosition;\n popupInfo.priority = priority;\n popupInfo.options = options;\n } else {\n const newPopupInfo: CursorPopupInfo = {\n id,\n content,\n offset: Point.create(offset),\n relativePosition,\n options,\n renderRelativePosition: relativePosition,\n priority,\n };\n CursorPopupManager.pushPopup(newPopupInfo);\n }\n\n CursorPopupManager.updatePosition(pt);\n }\n\n /** Called to update popup with a new set of properties\n */\n public static update(\n id: string,\n content: React.ReactNode,\n pt: XAndY,\n offset: XAndY,\n relativePosition: RelativePosition,\n priority: number = 0\n ) {\n const popupInfo = CursorPopupManager._popups.find(\n (info: CursorPopupInfo) => id === info.id\n );\n if (popupInfo) {\n popupInfo.content = content;\n popupInfo.offset = Point.create(offset);\n popupInfo.relativePosition = relativePosition;\n popupInfo.renderRelativePosition = relativePosition;\n popupInfo.priority = priority;\n } else {\n Logger.logError(\n UiFramework.loggerCategory(\"CursorPopupManager\"),\n `update: Could not find popup with id of '${id}'`\n );\n }\n\n CursorPopupManager.updatePosition(pt);\n }\n\n /** Called to move the open popup to new location\n */\n public static updatePosition(pt: XAndY) {\n CursorPopupManager.resetPopupsRenderRelativePosition(Point.create(pt));\n CursorPopupManager.onCursorPopupUpdatePositionEvent.emit({ pt });\n }\n\n /** Called when tool wants to close the popup\n */\n public static close(id: string, apply: boolean, fadeOut?: boolean) {\n const popupInfo = CursorPopupManager._popups.find(\n (info: CursorPopupInfo) => id === info.id\n );\n\n if (popupInfo) {\n if (popupInfo.options) {\n if (apply && popupInfo.options.onApply) popupInfo.options.onApply();\n\n if (popupInfo.options.onClose) popupInfo.options.onClose();\n }\n\n if (fadeOut) {\n CursorPopupManager.onCursorPopupFadeOutEvent.emit({ id });\n setTimeout(() => {\n CursorPopupManager.removePopup(id);\n }, CursorPopup.fadeOutTime);\n } else {\n CursorPopupManager.removePopup(id);\n }\n } else {\n Logger.logError(\n UiFramework.loggerCategory(\"CursorPopupManager\"),\n `close: Could not find popup with id of '${id}'`\n );\n }\n }\n\n private static removePopup(id: string): void {\n const index = CursorPopupManager._popups.findIndex(\n (popupInfo: CursorPopupInfo) => id === popupInfo.id\n );\n if (index >= 0) {\n CursorPopupManager._popups.splice(index, 1);\n CursorPopupManager._emitPopupsChangedEvent();\n }\n }\n\n private static resetPopupsRenderRelativePosition(pt: Point) {\n CursorPopupManager.popups.forEach((popupInfo: CursorPopupInfo) => {\n popupInfo.renderRelativePosition = popupInfo.relativePosition;\n\n const flipped = CursorPopupManager.validateRenderRelativePosition(\n pt,\n popupInfo\n );\n\n // If flipped, call again to validate again.\n if (flipped) {\n CursorPopupManager.validateRenderRelativePosition(pt, popupInfo);\n }\n });\n }\n\n private static validateRenderRelativePosition(\n pt: Point,\n popupInfo: CursorPopupInfo\n ): boolean {\n const popupRect = CursorPopup.getPopupRect(\n pt,\n Point.create(popupInfo.offset),\n popupInfo.popupSize,\n popupInfo.renderRelativePosition\n );\n const { outPos, flipped } = CursorPopupManager.autoFlip(\n popupInfo.renderRelativePosition,\n popupRect,\n window.innerWidth,\n window.innerHeight\n );\n\n if (flipped) popupInfo.renderRelativePosition = outPos;\n\n return flipped;\n }\n\n private static autoFlip(\n inPos: RelativePosition,\n rect: RectangleProps,\n windowWidth: number,\n windowHeight: number\n ): { outPos: RelativePosition; flipped: boolean } {\n let flipped = false;\n let outPos = inPos;\n\n if (rect.right > windowWidth) {\n flipped = true;\n switch (inPos) {\n case RelativePosition.Top:\n case RelativePosition.TopRight:\n outPos = RelativePosition.TopLeft;\n break;\n case RelativePosition.Right:\n outPos = RelativePosition.Left;\n break;\n case RelativePosition.Bottom:\n case RelativePosition.BottomRight:\n outPos = RelativePosition.BottomLeft;\n break;\n }\n }\n\n if (rect.left < 0) {\n flipped = true;\n switch (inPos) {\n case RelativePosition.Top:\n case RelativePosition.TopLeft:\n outPos = RelativePosition.TopRight;\n break;\n case RelativePosition.Left:\n outPos = RelativePosition.Right;\n break;\n case RelativePosition.Bottom:\n case RelativePosition.BottomLeft:\n outPos = RelativePosition.BottomRight;\n break;\n }\n }\n\n if (rect.bottom > windowHeight) {\n flipped = true;\n switch (inPos) {\n case RelativePosition.Left:\n case RelativePosition.BottomLeft:\n outPos = RelativePosition.TopLeft;\n break;\n case RelativePosition.Bottom:\n outPos = RelativePosition.Top;\n break;\n case RelativePosition.Right:\n case RelativePosition.BottomRight:\n outPos = RelativePosition.TopRight;\n break;\n }\n }\n\n if (rect.top < 0) {\n flipped = true;\n switch (inPos) {\n case RelativePosition.Left:\n case RelativePosition.TopLeft:\n outPos = RelativePosition.BottomLeft;\n break;\n case RelativePosition.Top:\n outPos = RelativePosition.Bottom;\n break;\n case RelativePosition.Right:\n case RelativePosition.TopRight:\n outPos = RelativePosition.BottomRight;\n break;\n }\n }\n\n return { outPos, flipped };\n }\n}\n\n/** State for the [[CursorPopupRenderer]] React component */\ninterface CursorPopupRendererState {\n pt: Point;\n}\n\n/** CursorPopupRenderer React component.\n * @public\n */\nexport class CursorPopupRenderer extends React.Component<\n any,\n CursorPopupRendererState\n> {\n constructor(props: any) {\n super(props);\n\n this.state = {\n pt: new Point(),\n };\n }\n\n public override render(): React.ReactNode {\n if (CursorPopupManager.popupCount <= 0) return null;\n\n return <>{this.renderPositions()}</>;\n }\n\n private _handleSizeKnown(popupInfo: CursorPopupInfo, size: SizeProps) {\n popupInfo.popupSize = size;\n }\n\n private renderPositions(): React.ReactNode[] {\n const positions = new Array<React.ReactNode>();\n let renderedPosition: React.ReactNode;\n const begin = RelativePosition.Left;\n const end = RelativePosition.BottomRight;\n\n for (let position = begin; position <= end; position++) {\n renderedPosition = this.renderRelativePosition(position);\n if (renderedPosition) positions.push(renderedPosition);\n }\n\n return positions;\n }\n\n private renderRelativePosition(\n relativePosition: RelativePosition\n ): React.ReactNode {\n const filteredInfo = CursorPopupManager.popups.filter(\n (popupInfo: CursorPopupInfo) =>\n popupInfo.renderRelativePosition === relativePosition\n );\n\n if (filteredInfo.length > 0) {\n let totalDimension = 0;\n const ascending =\n relativePosition === RelativePosition.Right ||\n relativePosition === RelativePosition.BottomRight ||\n relativePosition === RelativePosition.Bottom ||\n relativePosition === RelativePosition.BottomLeft;\n\n const positionPopups = filteredInfo\n .sort((a: CursorPopupInfo, b: CursorPopupInfo): number =>\n ascending ? a.priority - b.priority : b.priority - a.priority\n )\n .map((popupInfo: CursorPopupInfo, index: number) => {\n const title =\n popupInfo.options !== undefined ? popupInfo.options.title : \"\";\n const shadow =\n popupInfo.options !== undefined ? popupInfo.options.shadow : false;\n let offset = popupInfo.offset;\n\n if (index > 0)\n offset = this.adjustOffset(\n offset,\n popupInfo.renderRelativePosition,\n totalDimension\n );\n\n if (popupInfo.popupSize)\n totalDimension += this.getDimension(\n popupInfo.popupSize,\n relativePosition\n );\n\n return (\n <CursorPopup\n key={popupInfo.id}\n id={popupInfo.id}\n content={popupInfo.content}\n pt={this.state.pt}\n offset={offset}\n relativePosition={popupInfo.renderRelativePosition}\n title={title}\n shadow={shadow}\n onSizeKnown={(size: SizeProps) =>\n this._handleSizeKnown(popupInfo, size)\n }\n />\n );\n });\n\n return (\n <React.Fragment key={relativePosition.toString()}>\n {positionPopups}\n </React.Fragment>\n );\n }\n\n return null;\n }\n\n private getDimension(\n popupSize: SizeProps,\n relativePosition: RelativePosition\n ): number {\n let dimension = 0;\n\n switch (relativePosition) {\n case RelativePosition.Top:\n case RelativePosition.Bottom:\n case RelativePosition.TopLeft:\n case RelativePosition.TopRight:\n case RelativePosition.BottomLeft:\n case RelativePosition.BottomRight:\n dimension = popupSize.height;\n break;\n case RelativePosition.Left:\n case RelativePosition.Right:\n dimension = popupSize.width;\n break;\n }\n\n return dimension;\n }\n\n private adjustOffset(\n offset: Point,\n relativePosition: RelativePosition,\n dimension: number\n ): Point {\n let outOffset = Point.create(offset.toProps());\n\n switch (relativePosition) {\n case RelativePosition.Top:\n case RelativePosition.Bottom:\n case RelativePosition.TopLeft:\n case RelativePosition.TopRight:\n case RelativePosition.BottomLeft:\n case RelativePosition.BottomRight:\n outOffset = Point.create({ x: offset.x, y: offset.y + dimension });\n break;\n case RelativePosition.Left:\n case RelativePosition.Right:\n outOffset = Point.create({ x: offset.x + dimension, y: offset.y });\n break;\n }\n\n return outOffset;\n }\n\n public override componentDidMount(): void {\n CursorPopupManager.onCursorPopupsChangedEvent.addListener(\n this._handlePopupChangedEvent\n );\n CursorPopupManager.onCursorPopupUpdatePositionEvent.addListener(\n this._handleCursorPopupUpdatePositionEvent\n );\n }\n\n public override componentWillUnmount(): void {\n CursorPopupManager.onCursorPopupsChangedEvent.removeListener(\n this._handlePopupChangedEvent\n );\n CursorPopupManager.onCursorPopupUpdatePositionEvent.removeListener(\n this._handleCursorPopupUpdatePositionEvent\n );\n }\n\n private _handlePopupChangedEvent: ListenerType<\n typeof CursorPopupManager.onCursorPopupsChangedEvent\n > = () => {\n this.forceUpdate();\n };\n\n private _handleCursorPopupUpdatePositionEvent: ListenerType<\n typeof CursorPopupManager.onCursorPopupUpdatePositionEvent\n > = (args) => {\n this.setState({ pt: Point.create(args.pt) });\n };\n}\n"]}
|
|
1
|
+
{"version":3,"file":"CursorPopupManager.js","sourceRoot":"","sources":["../../../../src/appui-react/cursor/cursorpopup/CursorPopupManager.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Cursor\n */\n\nimport * as React from \"react\";\nimport { BeUiEvent, Logger } from \"@itwin/core-bentley\";\nimport type { XAndY } from \"@itwin/core-geometry\";\nimport { RelativePosition } from \"@itwin/appui-abstract\";\nimport type { ListenerType } from \"@itwin/core-react/internal\";\nimport { Point } from \"@itwin/core-react/internal\";\nimport { UiFramework } from \"../../UiFramework.js\";\nimport { CursorPopupShow } from \"./CursorPopup.js\";\nimport { CursorPopup } from \"./CursorPopup.js\";\nimport type { SizeProps } from \"../../utils/SizeProps.js\";\nimport type { RectangleProps } from \"../../utils/RectangleProps.js\";\n\n/** Options for the [[CursorPopupManager]] open method\n * @public\n */\nexport interface CursorPopupOptions {\n /** Title of the popup */\n title?: string;\n /** Called on popup close */\n onClose?: () => void;\n /** Callback to apply changes */\n onApply?: () => void;\n /** Draw shadow */\n shadow?: boolean;\n}\n\n/** Information maintained by CursorPopupManager about a CursorPopup. */\ninterface CursorPopupInfo {\n id: string;\n content: React.ReactNode;\n relativePosition: RelativePosition;\n offset: Point;\n priority: number;\n options?: CursorPopupOptions;\n\n renderRelativePosition: RelativePosition;\n popupSize?: SizeProps;\n\n cancelFadeOut?: () => void;\n}\n\n/** CursorPopup component\n * @public\n */\nexport class CursorPopupManager {\n private static _popups: CursorPopupInfo[] = new Array<CursorPopupInfo>();\n\n /** @internal */\n public static readonly onCursorPopupUpdatePositionEvent = new BeUiEvent<{\n pt: XAndY;\n }>();\n /** @internal */\n public static readonly onCursorPopupFadeOutEvent = new BeUiEvent<{\n id: string;\n show?: CursorPopupShow;\n }>();\n /** @internal */\n public static readonly onCursorPopupsChangedEvent = new BeUiEvent<object>();\n /** @internal */\n public static clearPopups() {\n this._popups.length = 0;\n CursorPopupManager._emitPopupsChangedEvent();\n }\n\n public static get popups() {\n return this._popups;\n }\n\n public static get popupCount() {\n return this._popups.length;\n }\n\n private static _emitPopupsChangedEvent(): void {\n CursorPopupManager.onCursorPopupsChangedEvent.emit({});\n }\n\n private static pushPopup(popupInfo: CursorPopupInfo): void {\n CursorPopupManager._popups.push(popupInfo);\n CursorPopupManager._emitPopupsChangedEvent();\n }\n\n /** Called to open popup with a new set of properties\n */\n public static open(\n id: string,\n content: React.ReactNode,\n pt: XAndY,\n offset: XAndY,\n relativePosition: RelativePosition,\n priority: number = 0,\n options?: CursorPopupOptions\n ) {\n const popupInfo = CursorPopupManager._popups.find(\n (info: CursorPopupInfo) => id === info.id\n );\n if (popupInfo) {\n CursorPopupManager.onCursorPopupFadeOutEvent.emit({\n id,\n show: CursorPopupShow.Open,\n });\n\n popupInfo.content = content;\n popupInfo.offset = Point.create(offset);\n popupInfo.relativePosition = relativePosition;\n popupInfo.renderRelativePosition = relativePosition;\n popupInfo.priority = priority;\n popupInfo.options = options;\n CursorPopupManager.updatePosition(pt);\n\n if (popupInfo.cancelFadeOut) {\n popupInfo.cancelFadeOut();\n popupInfo.cancelFadeOut = undefined;\n }\n return;\n }\n\n const newPopupInfo: CursorPopupInfo = {\n id,\n content,\n offset: Point.create(offset),\n relativePosition,\n options,\n renderRelativePosition: relativePosition,\n priority,\n };\n CursorPopupManager.pushPopup(newPopupInfo);\n CursorPopupManager.updatePosition(pt);\n }\n\n /** Called to update popup with a new set of properties\n */\n public static update(\n id: string,\n content: React.ReactNode,\n pt: XAndY,\n offset: XAndY,\n relativePosition: RelativePosition,\n priority: number = 0\n ) {\n const popupInfo = CursorPopupManager._popups.find(\n (info: CursorPopupInfo) => id === info.id\n );\n if (popupInfo) {\n popupInfo.content = content;\n popupInfo.offset = Point.create(offset);\n popupInfo.relativePosition = relativePosition;\n popupInfo.renderRelativePosition = relativePosition;\n popupInfo.priority = priority;\n } else {\n Logger.logError(\n UiFramework.loggerCategory(\"CursorPopupManager\"),\n `update: Could not find popup with id of '${id}'`\n );\n }\n\n CursorPopupManager.updatePosition(pt);\n }\n\n /** Called to move the open popup to new location\n */\n public static updatePosition(pt: XAndY) {\n CursorPopupManager.resetPopupsRenderRelativePosition(Point.create(pt));\n CursorPopupManager.onCursorPopupUpdatePositionEvent.emit({ pt });\n }\n\n /** Called when tool wants to close the popup\n */\n public static close(id: string, apply: boolean, fadeOut?: boolean) {\n const popupInfo = CursorPopupManager._popups.find(\n (info: CursorPopupInfo) => id === info.id\n );\n if (!popupInfo) {\n Logger.logError(\n UiFramework.loggerCategory(\"CursorPopupManager\"),\n `close: Could not find popup with id of '${id}'`\n );\n return;\n }\n\n if (apply) popupInfo.options?.onApply?.();\n popupInfo.options?.onClose?.();\n\n if (fadeOut) {\n // Already closing\n if (popupInfo.cancelFadeOut) return;\n\n let cancelled = false;\n popupInfo.cancelFadeOut = () => {\n cancelled = true;\n };\n CursorPopupManager.onCursorPopupFadeOutEvent.emit({ id });\n\n setTimeout(() => {\n if (cancelled) return;\n CursorPopupManager.removePopup(id);\n }, CursorPopup.fadeOutTime);\n return;\n }\n\n popupInfo.cancelFadeOut?.();\n popupInfo.cancelFadeOut = undefined;\n CursorPopupManager.removePopup(id);\n }\n\n private static removePopup(id: string): void {\n const index = CursorPopupManager._popups.findIndex(\n (popupInfo: CursorPopupInfo) => id === popupInfo.id\n );\n if (index >= 0) {\n CursorPopupManager._popups.splice(index, 1);\n CursorPopupManager._emitPopupsChangedEvent();\n }\n }\n\n private static resetPopupsRenderRelativePosition(pt: Point) {\n CursorPopupManager.popups.forEach((popupInfo: CursorPopupInfo) => {\n popupInfo.renderRelativePosition = popupInfo.relativePosition;\n\n const flipped = CursorPopupManager.validateRenderRelativePosition(\n pt,\n popupInfo\n );\n\n // If flipped, call again to validate again.\n if (flipped) {\n CursorPopupManager.validateRenderRelativePosition(pt, popupInfo);\n }\n });\n }\n\n private static validateRenderRelativePosition(\n pt: Point,\n popupInfo: CursorPopupInfo\n ): boolean {\n const popupRect = CursorPopup.getPopupRect(\n pt,\n Point.create(popupInfo.offset),\n popupInfo.popupSize,\n popupInfo.renderRelativePosition\n );\n const { outPos, flipped } = CursorPopupManager.autoFlip(\n popupInfo.renderRelativePosition,\n popupRect,\n window.innerWidth,\n window.innerHeight\n );\n\n if (flipped) popupInfo.renderRelativePosition = outPos;\n\n return flipped;\n }\n\n private static autoFlip(\n inPos: RelativePosition,\n rect: RectangleProps,\n windowWidth: number,\n windowHeight: number\n ): { outPos: RelativePosition; flipped: boolean } {\n let flipped = false;\n let outPos = inPos;\n\n if (rect.right > windowWidth) {\n flipped = true;\n switch (inPos) {\n case RelativePosition.Top:\n case RelativePosition.TopRight:\n outPos = RelativePosition.TopLeft;\n break;\n case RelativePosition.Right:\n outPos = RelativePosition.Left;\n break;\n case RelativePosition.Bottom:\n case RelativePosition.BottomRight:\n outPos = RelativePosition.BottomLeft;\n break;\n }\n }\n\n if (rect.left < 0) {\n flipped = true;\n switch (inPos) {\n case RelativePosition.Top:\n case RelativePosition.TopLeft:\n outPos = RelativePosition.TopRight;\n break;\n case RelativePosition.Left:\n outPos = RelativePosition.Right;\n break;\n case RelativePosition.Bottom:\n case RelativePosition.BottomLeft:\n outPos = RelativePosition.BottomRight;\n break;\n }\n }\n\n if (rect.bottom > windowHeight) {\n flipped = true;\n switch (inPos) {\n case RelativePosition.Left:\n case RelativePosition.BottomLeft:\n outPos = RelativePosition.TopLeft;\n break;\n case RelativePosition.Bottom:\n outPos = RelativePosition.Top;\n break;\n case RelativePosition.Right:\n case RelativePosition.BottomRight:\n outPos = RelativePosition.TopRight;\n break;\n }\n }\n\n if (rect.top < 0) {\n flipped = true;\n switch (inPos) {\n case RelativePosition.Left:\n case RelativePosition.TopLeft:\n outPos = RelativePosition.BottomLeft;\n break;\n case RelativePosition.Top:\n outPos = RelativePosition.Bottom;\n break;\n case RelativePosition.Right:\n case RelativePosition.TopRight:\n outPos = RelativePosition.BottomRight;\n break;\n }\n }\n\n return { outPos, flipped };\n }\n}\n\n/** State for the [[CursorPopupRenderer]] React component */\ninterface CursorPopupRendererState {\n pt: Point;\n}\n\n/** CursorPopupRenderer React component.\n * @public\n */\nexport class CursorPopupRenderer extends React.Component<\n any,\n CursorPopupRendererState\n> {\n constructor(props: any) {\n super(props);\n\n this.state = {\n pt: new Point(),\n };\n }\n\n public override render(): React.ReactNode {\n if (CursorPopupManager.popupCount <= 0) return null;\n\n return <>{this.renderPositions()}</>;\n }\n\n private _handleSizeKnown(popupInfo: CursorPopupInfo, size: SizeProps) {\n popupInfo.popupSize = size;\n }\n\n private renderPositions(): React.ReactNode[] {\n const positions = new Array<React.ReactNode>();\n let renderedPosition: React.ReactNode;\n const begin = RelativePosition.Left;\n const end = RelativePosition.BottomRight;\n\n for (let position = begin; position <= end; position++) {\n renderedPosition = this.renderRelativePosition(position);\n if (renderedPosition) positions.push(renderedPosition);\n }\n\n return positions;\n }\n\n private renderRelativePosition(\n relativePosition: RelativePosition\n ): React.ReactNode {\n const filteredInfo = CursorPopupManager.popups.filter(\n (popupInfo: CursorPopupInfo) =>\n popupInfo.renderRelativePosition === relativePosition\n );\n\n if (filteredInfo.length > 0) {\n let totalDimension = 0;\n const ascending =\n relativePosition === RelativePosition.Right ||\n relativePosition === RelativePosition.BottomRight ||\n relativePosition === RelativePosition.Bottom ||\n relativePosition === RelativePosition.BottomLeft;\n\n const positionPopups = filteredInfo\n .sort((a: CursorPopupInfo, b: CursorPopupInfo): number =>\n ascending ? a.priority - b.priority : b.priority - a.priority\n )\n .map((popupInfo: CursorPopupInfo, index: number) => {\n const title =\n popupInfo.options !== undefined ? popupInfo.options.title : \"\";\n const shadow =\n popupInfo.options !== undefined ? popupInfo.options.shadow : false;\n let offset = popupInfo.offset;\n\n if (index > 0)\n offset = this.adjustOffset(\n offset,\n popupInfo.renderRelativePosition,\n totalDimension\n );\n\n if (popupInfo.popupSize)\n totalDimension += this.getDimension(\n popupInfo.popupSize,\n relativePosition\n );\n\n return (\n <CursorPopup\n key={popupInfo.id}\n id={popupInfo.id}\n content={popupInfo.content}\n pt={this.state.pt}\n offset={offset}\n relativePosition={popupInfo.renderRelativePosition}\n title={title}\n shadow={shadow}\n onSizeKnown={(size: SizeProps) =>\n this._handleSizeKnown(popupInfo, size)\n }\n />\n );\n });\n\n return (\n <React.Fragment key={relativePosition.toString()}>\n {positionPopups}\n </React.Fragment>\n );\n }\n\n return null;\n }\n\n private getDimension(\n popupSize: SizeProps,\n relativePosition: RelativePosition\n ): number {\n let dimension = 0;\n\n switch (relativePosition) {\n case RelativePosition.Top:\n case RelativePosition.Bottom:\n case RelativePosition.TopLeft:\n case RelativePosition.TopRight:\n case RelativePosition.BottomLeft:\n case RelativePosition.BottomRight:\n dimension = popupSize.height;\n break;\n case RelativePosition.Left:\n case RelativePosition.Right:\n dimension = popupSize.width;\n break;\n }\n\n return dimension;\n }\n\n private adjustOffset(\n offset: Point,\n relativePosition: RelativePosition,\n dimension: number\n ): Point {\n let outOffset = Point.create(offset.toProps());\n\n switch (relativePosition) {\n case RelativePosition.Top:\n case RelativePosition.Bottom:\n case RelativePosition.TopLeft:\n case RelativePosition.TopRight:\n case RelativePosition.BottomLeft:\n case RelativePosition.BottomRight:\n outOffset = Point.create({ x: offset.x, y: offset.y + dimension });\n break;\n case RelativePosition.Left:\n case RelativePosition.Right:\n outOffset = Point.create({ x: offset.x + dimension, y: offset.y });\n break;\n }\n\n return outOffset;\n }\n\n public override componentDidMount(): void {\n CursorPopupManager.onCursorPopupsChangedEvent.addListener(\n this._handlePopupChangedEvent\n );\n CursorPopupManager.onCursorPopupUpdatePositionEvent.addListener(\n this._handleCursorPopupUpdatePositionEvent\n );\n }\n\n public override componentWillUnmount(): void {\n CursorPopupManager.onCursorPopupsChangedEvent.removeListener(\n this._handlePopupChangedEvent\n );\n CursorPopupManager.onCursorPopupUpdatePositionEvent.removeListener(\n this._handleCursorPopupUpdatePositionEvent\n );\n }\n\n private _handlePopupChangedEvent: ListenerType<\n typeof CursorPopupManager.onCursorPopupsChangedEvent\n > = () => {\n this.forceUpdate();\n };\n\n private _handleCursorPopupUpdatePositionEvent: ListenerType<\n typeof CursorPopupManager.onCursorPopupUpdatePositionEvent\n > = (args) => {\n this.setState({ pt: Point.create(args.pt) });\n };\n}\n"]}
|
|
@@ -2,23 +2,20 @@
|
|
|
2
2
|
* @module Notification
|
|
3
3
|
*/
|
|
4
4
|
import "./CursorPrompt.scss";
|
|
5
|
-
import type { ToolAssistanceInstruction } from "@itwin/core-frontend";
|
|
6
|
-
import type { XAndY } from "@itwin/core-geometry";
|
|
7
|
-
import { RelativePosition } from "@itwin/appui-abstract";
|
|
8
5
|
/** @internal */
|
|
9
6
|
export declare class CursorPrompt {
|
|
10
|
-
private _timeOut;
|
|
11
|
-
private _fadeOut;
|
|
12
|
-
private _timer;
|
|
13
|
-
private _relativePosition;
|
|
14
|
-
private _offset;
|
|
15
7
|
private _popupId;
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
8
|
+
private _timer;
|
|
9
|
+
private _removeListeners;
|
|
10
|
+
open({ timeout, fadeout, iconSpec, instruction, promptAtContent, }: {
|
|
11
|
+
timeout: number;
|
|
12
|
+
fadeout: boolean;
|
|
13
|
+
iconSpec: string;
|
|
14
|
+
instruction: string;
|
|
15
|
+
promptAtContent: boolean;
|
|
16
|
+
}): void;
|
|
17
|
+
close(fadeout: boolean): void;
|
|
18
|
+
private show;
|
|
19
|
+
private hide;
|
|
23
20
|
}
|
|
24
21
|
//# sourceMappingURL=CursorPrompt.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CursorPrompt.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/cursor/cursorprompt/CursorPrompt.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"CursorPrompt.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/cursor/cursorprompt/CursorPrompt.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,qBAAqB,CAAC;AAY7B,gBAAgB;AAChB,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAmB;IAEnC,OAAO,CAAC,MAAM,CAAoB;IAClC,OAAO,CAAC,gBAAgB,CAA2B;IAE5C,IAAI,CAAC,EACV,OAAO,EACP,OAAO,EACP,QAAQ,EACR,WAAW,EACX,eAAe,GAChB,EAAE;QACD,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,OAAO,CAAC;QACjB,QAAQ,EAAE,MAAM,CAAC;QACjB,WAAW,EAAE,MAAM,CAAC;QACpB,eAAe,EAAE,OAAO,CAAC;KAC1B;IAmCM,KAAK,CAAC,OAAO,EAAE,OAAO;IAS7B,OAAO,CAAC,IAAI;IAgCZ,OAAO,CAAC,IAAI;CAGb"}
|
|
@@ -11,52 +11,61 @@ import { RelativePosition } from "@itwin/appui-abstract";
|
|
|
11
11
|
import { Icon, Timer } from "@itwin/core-react";
|
|
12
12
|
import { Point } from "@itwin/core-react/internal";
|
|
13
13
|
import { Text } from "@itwin/itwinui-react";
|
|
14
|
-
import { CursorInformation } from "../CursorInformation.js";
|
|
14
|
+
import { CursorInformation, useCursorInformationStore, } from "../CursorInformation.js";
|
|
15
15
|
import { CursorPopupManager } from "../cursorpopup/CursorPopupManager.js";
|
|
16
16
|
/** @internal */
|
|
17
17
|
export class CursorPrompt {
|
|
18
|
-
constructor(
|
|
19
|
-
this._relativePosition = RelativePosition.BottomRight;
|
|
20
|
-
this._offset = new Point(20, 20);
|
|
18
|
+
constructor() {
|
|
21
19
|
this._popupId = "cursor-prompt";
|
|
22
|
-
this._startCursorPopup = (promptElement) => {
|
|
23
|
-
CursorPopupManager.open(this._popupId, promptElement, CursorInformation.cursorPosition, this._offset, this._relativePosition, 0, { shadow: true });
|
|
24
|
-
if (!CursorInformation.onCursorUpdatedEvent.has(this._handleCursorUpdated))
|
|
25
|
-
CursorInformation.onCursorUpdatedEvent.addListener(this._handleCursorUpdated);
|
|
26
|
-
};
|
|
27
|
-
this._endCursorPopup = (fadeOut) => {
|
|
28
|
-
CursorPopupManager.close(this._popupId, false, fadeOut);
|
|
29
|
-
CursorInformation.onCursorUpdatedEvent.removeListener(this._handleCursorUpdated);
|
|
30
|
-
};
|
|
31
|
-
this._handleCursorUpdated = (args) => {
|
|
32
|
-
CursorPopupManager.updatePosition(args.newPt);
|
|
33
|
-
};
|
|
34
|
-
this._timeOut = timeOut;
|
|
35
|
-
this._fadeOut = fadeOut;
|
|
36
|
-
// eslint-disable-next-line @typescript-eslint/no-deprecated
|
|
37
|
-
this._timer = new Timer(timeOut);
|
|
38
20
|
}
|
|
39
|
-
|
|
40
|
-
if (!
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
21
|
+
open({ timeout, fadeout, iconSpec, instruction, promptAtContent, }) {
|
|
22
|
+
if (!this._removeListeners) {
|
|
23
|
+
const listeners = [
|
|
24
|
+
CursorInformation.onCursorUpdatedEvent.addListener((args) => {
|
|
25
|
+
CursorPopupManager.updatePosition(args.newPt);
|
|
26
|
+
}),
|
|
27
|
+
useCursorInformationStore.subscribe((state) => {
|
|
28
|
+
if (!promptAtContent)
|
|
29
|
+
return;
|
|
30
|
+
if (state.contentHovered) {
|
|
31
|
+
this.show({
|
|
32
|
+
iconSpec,
|
|
33
|
+
instruction,
|
|
34
|
+
});
|
|
35
|
+
return;
|
|
36
|
+
}
|
|
37
|
+
this.hide(fadeout);
|
|
38
|
+
}),
|
|
39
|
+
];
|
|
40
|
+
this._removeListeners = () => {
|
|
41
|
+
listeners.forEach((remove) => remove());
|
|
42
|
+
};
|
|
44
43
|
}
|
|
45
|
-
this.
|
|
46
|
-
|
|
44
|
+
this.show({ iconSpec, instruction });
|
|
45
|
+
if (timeout === Number.POSITIVE_INFINITY)
|
|
46
|
+
return;
|
|
47
|
+
// eslint-disable-next-line @typescript-eslint/no-deprecated
|
|
48
|
+
const timer = new Timer(timeout);
|
|
49
|
+
timer.setOnExecute(() => this.close(fadeout));
|
|
50
|
+
timer.start();
|
|
51
|
+
this._timer = timer;
|
|
52
|
+
}
|
|
53
|
+
close(fadeout) {
|
|
54
|
+
this._timer?.stop();
|
|
55
|
+
this._timer = undefined;
|
|
56
|
+
this._removeListeners?.();
|
|
57
|
+
this._removeListeners = undefined;
|
|
58
|
+
this.hide(fadeout);
|
|
59
|
+
}
|
|
60
|
+
show({ iconSpec, instruction, }) {
|
|
47
61
|
const promptElement = (React.createElement("div", { className: "uifw-cursor-prompt" },
|
|
48
|
-
|
|
49
|
-
React.createElement(Icon, { iconSpec:
|
|
50
|
-
React.createElement(Text, { variant: "body", className: "uifw-cursor-prompt-text" }, instruction
|
|
51
|
-
this.
|
|
52
|
-
this._timer.setOnExecute(() => this._endCursorPopup(this._fadeOut));
|
|
53
|
-
this._timer.delay = this._timeOut;
|
|
54
|
-
this._timer.start();
|
|
62
|
+
iconSpec && (React.createElement("span", { className: "uifw-cursor-prompt-icon" },
|
|
63
|
+
React.createElement(Icon, { iconSpec: iconSpec }))),
|
|
64
|
+
React.createElement(Text, { variant: "body", className: "uifw-cursor-prompt-text" }, instruction)));
|
|
65
|
+
CursorPopupManager.open(this._popupId, promptElement, CursorInformation.cursorPosition, new Point(20, 20), RelativePosition.BottomRight, 0, { shadow: true });
|
|
55
66
|
}
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
this._timer.stop();
|
|
59
|
-
this._endCursorPopup(fadeOut);
|
|
67
|
+
hide(fadeout) {
|
|
68
|
+
CursorPopupManager.close(this._popupId, false, fadeout);
|
|
60
69
|
}
|
|
61
70
|
}
|
|
62
71
|
//# sourceMappingURL=CursorPrompt.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CursorPrompt.js","sourceRoot":"","sources":["../../../../src/appui-react/cursor/cursorprompt/CursorPrompt.tsx"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG;AAEH,OAAO,qBAAqB,CAAC;AAC7B,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"CursorPrompt.js","sourceRoot":"","sources":["../../../../src/appui-react/cursor/cursorprompt/CursorPrompt.tsx"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG;AAEH,OAAO,qBAAqB,CAAC;AAC7B,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAC5C,OAAO,EACL,iBAAiB,EACjB,yBAAyB,GAC1B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAE1E,gBAAgB;AAChB,MAAM,OAAO,YAAY;IAAzB;QACU,aAAQ,GAAG,eAAe,CAAC;IAgGrC,CAAC;IA3FQ,IAAI,CAAC,EACV,OAAO,EACP,OAAO,EACP,QAAQ,EACR,WAAW,EACX,eAAe,GAOhB;QACC,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC3B,MAAM,SAAS,GAAG;gBAChB,iBAAiB,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,EAAE;oBAC1D,kBAAkB,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAChD,CAAC,CAAC;gBACF,yBAAyB,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE;oBAC5C,IAAI,CAAC,eAAe;wBAAE,OAAO;oBAC7B,IAAI,KAAK,CAAC,cAAc,EAAE,CAAC;wBACzB,IAAI,CAAC,IAAI,CAAC;4BACR,QAAQ;4BACR,WAAW;yBACZ,CAAC,CAAC;wBACH,OAAO;oBACT,CAAC;oBAED,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACrB,CAAC,CAAC;aACH,CAAC;YACF,IAAI,CAAC,gBAAgB,GAAG,GAAG,EAAE;gBAC3B,SAAS,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC;YAC1C,CAAC,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC,CAAC;QAErC,IAAI,OAAO,KAAK,MAAM,CAAC,iBAAiB;YAAE,OAAO;QAEjD,4DAA4D;QAC5D,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC;QACjC,KAAK,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;QAC9C,KAAK,CAAC,KAAK,EAAE,CAAC;QACd,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;IACtB,CAAC;IAEM,KAAK,CAAC,OAAgB;QAC3B,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC;QACpB,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;QACxB,IAAI,CAAC,gBAAgB,EAAE,EAAE,CAAC;QAC1B,IAAI,CAAC,gBAAgB,GAAG,SAAS,CAAC;QAElC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACrB,CAAC;IAEO,IAAI,CAAC,EACX,QAAQ,EACR,WAAW,GAIZ;QACC,MAAM,aAAa,GAAG,CACpB,6BAAK,SAAS,EAAC,oBAAoB;YAChC,QAAQ,IAAI,CACX,8BAAM,SAAS,EAAC,yBAAyB;gBAEvC,oBAAC,IAAI,IAAC,QAAQ,EAAE,QAAQ,GAAI,CACvB,CACR;YACD,oBAAC,IAAI,IAAC,OAAO,EAAC,MAAM,EAAC,SAAS,EAAC,yBAAyB,IACrD,WAAW,CACP,CACH,CACP,CAAC;QAEF,kBAAkB,CAAC,IAAI,CACrB,IAAI,CAAC,QAAQ,EACb,aAAa,EACb,iBAAiB,CAAC,cAAc,EAChC,IAAI,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,EACjB,gBAAgB,CAAC,WAAW,EAC5B,CAAC,EACD,EAAE,MAAM,EAAE,IAAI,EAAE,CACjB,CAAC;IACJ,CAAC;IAEO,IAAI,CAAC,OAAgB;QAC3B,kBAAkB,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;IAC1D,CAAC;CACF","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Notification\n */\n\nimport \"./CursorPrompt.scss\";\nimport * as React from \"react\";\nimport { RelativePosition } from \"@itwin/appui-abstract\";\nimport { Icon, Timer } from \"@itwin/core-react\";\nimport { Point } from \"@itwin/core-react/internal\";\nimport { Text } from \"@itwin/itwinui-react\";\nimport {\n CursorInformation,\n useCursorInformationStore,\n} from \"../CursorInformation.js\";\nimport { CursorPopupManager } from \"../cursorpopup/CursorPopupManager.js\";\n\n/** @internal */\nexport class CursorPrompt {\n private _popupId = \"cursor-prompt\";\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n private _timer: Timer | undefined;\n private _removeListeners: (() => void) | undefined;\n\n public open({\n timeout,\n fadeout,\n iconSpec,\n instruction,\n promptAtContent,\n }: {\n timeout: number;\n fadeout: boolean;\n iconSpec: string;\n instruction: string;\n promptAtContent: boolean;\n }) {\n if (!this._removeListeners) {\n const listeners = [\n CursorInformation.onCursorUpdatedEvent.addListener((args) => {\n CursorPopupManager.updatePosition(args.newPt);\n }),\n useCursorInformationStore.subscribe((state) => {\n if (!promptAtContent) return;\n if (state.contentHovered) {\n this.show({\n iconSpec,\n instruction,\n });\n return;\n }\n\n this.hide(fadeout);\n }),\n ];\n this._removeListeners = () => {\n listeners.forEach((remove) => remove());\n };\n }\n\n this.show({ iconSpec, instruction });\n\n if (timeout === Number.POSITIVE_INFINITY) return;\n\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n const timer = new Timer(timeout);\n timer.setOnExecute(() => this.close(fadeout));\n timer.start();\n this._timer = timer;\n }\n\n public close(fadeout: boolean) {\n this._timer?.stop();\n this._timer = undefined;\n this._removeListeners?.();\n this._removeListeners = undefined;\n\n this.hide(fadeout);\n }\n\n private show({\n iconSpec,\n instruction,\n }: {\n iconSpec: string;\n instruction: string;\n }) {\n const promptElement = (\n <div className=\"uifw-cursor-prompt\">\n {iconSpec && (\n <span className=\"uifw-cursor-prompt-icon\">\n {/* eslint-disable-next-line @typescript-eslint/no-deprecated */}\n <Icon iconSpec={iconSpec} />\n </span>\n )}\n <Text variant=\"body\" className=\"uifw-cursor-prompt-text\">\n {instruction}\n </Text>\n </div>\n );\n\n CursorPopupManager.open(\n this._popupId,\n promptElement,\n CursorInformation.cursorPosition,\n new Point(20, 20),\n RelativePosition.BottomRight,\n 0,\n { shadow: true }\n );\n }\n\n private hide(fadeout: boolean) {\n CursorPopupManager.close(this._popupId, false, fadeout);\n }\n}\n"]}
|
|
@@ -45,5 +45,11 @@ export interface FrontstageConfig extends CommonProps {
|
|
|
45
45
|
readonly rightPanel?: StagePanelConfig;
|
|
46
46
|
/** Bottom panel of the application. */
|
|
47
47
|
readonly bottomPanel?: StagePanelConfig;
|
|
48
|
+
/**
|
|
49
|
+
* Specifies a custom layout component that overrides or customizes the standard widget based layout.
|
|
50
|
+
* Additionally, {@link StandardLayout} component can be used to wrap the standard layout with frontstage specific providers.
|
|
51
|
+
* @alpha
|
|
52
|
+
*/
|
|
53
|
+
readonly layout?: React.ReactNode;
|
|
48
54
|
}
|
|
49
55
|
//# sourceMappingURL=FrontstageConfig.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FrontstageConfig.d.ts","sourceRoot":"","sources":["../../../src/appui-react/frontstage/FrontstageConfig.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,KAAK,EACV,YAAY,EACZ,oBAAoB,EACrB,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAC3E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"FrontstageConfig.d.ts","sourceRoot":"","sources":["../../../src/appui-react/frontstage/FrontstageConfig.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,KAAK,EACV,YAAY,EACZ,oBAAoB,EACrB,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAC3E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAM/D;;;GAGG;AAEH,MAAM,WAAW,gBAAiB,SAAQ,WAAW;IACnD,2GAA2G;IAC3G,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,qGAAqG;IACrG,QAAQ,CAAC,YAAY,EAAE,YAAY,GAAG,oBAAoB,CAAC;IAC3D,yIAAyI;IACzI,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB;;;OAGG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB;;;OAGG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAE9B,uFAAuF;IACvF,QAAQ,CAAC,mBAAmB,CAAC,EAAE,YAAY,CAAC;IAC5C,uCAAuC;IACvC,QAAQ,CAAC,YAAY,CAAC,EAAE,YAAY,GAAG;QACrC,8DAA8D;QAC9D,mBAAmB,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;KACvC,CAAC;IACF,6DAA6D;IAC7D,QAAQ,CAAC,cAAc,CAAC,EAAE,YAAY,CAAC;IACvC,yCAAyC;IACzC,QAAQ,CAAC,SAAS,CAAC,EAAE,YAAY,CAAC;IAElC,oCAAoC;IACpC,QAAQ,CAAC,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IACrC,qCAAqC;IACrC,QAAQ,CAAC,SAAS,CAAC,EAAE,gBAAgB,CAAC;IACtC,sCAAsC;IACtC,QAAQ,CAAC,UAAU,CAAC,EAAE,gBAAgB,CAAC;IACvC,uCAAuC;IACvC,QAAQ,CAAC,WAAW,CAAC,EAAE,gBAAgB,CAAC;IAExC;;;;OAIG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CACnC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FrontstageConfig.js","sourceRoot":"","sources":["../../../src/appui-react/frontstage/FrontstageConfig.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Frontstage\n */\n\nimport type { CommonProps } from \"@itwin/core-react\";\nimport type {\n ContentGroup,\n ContentGroupProvider,\n} from \"../content/ContentGroup.js\";\nimport type { StagePanelConfig } from \"../stagepanels/StagePanelConfig.js\";\nimport type { WidgetConfig } from \"../widgets/WidgetConfig.js\";\nimport type { Frontstage } from \"./Frontstage.js\";\nimport type { UiItemsProvider } from \"../ui-items-provider/UiItemsProvider.js\";\nimport type { StageUsage } from \"./StageUsage.js\";\n\n/** Configuration from which a frontstage is created.\n * @public\n * @deprecated in 4.15.0. Use {@link Frontstage} instead.\n */\n// eslint-disable-next-line @typescript-eslint/no-deprecated\nexport interface FrontstageConfig extends CommonProps {\n /** Id of the frontstage. To ensure uniqueness it is common practice to format id like `appName:stageId` */\n readonly id: string;\n /** Content group of the frontstage that describes the content views. Or a content group provider. */\n readonly contentGroup: ContentGroup | ContentGroupProvider;\n /** Usage type for this Frontstage. To allow generic {@link UiItemsProvider} to populate this stage set to {@link StageUsage.General}. */\n readonly usage?: string;\n /** Frontstage version. Used to force saved layout reinitialization after changes to frontstage.\n * @note This value should be increased when changes are made to the Frontstage.\n * Increasing the value will make sure to reinitialize App layout instead of restoring to old layout.\n */\n readonly version: number;\n /** The defaultTool is started when then frontstage loads and whenever any other tools exit.\n * Most of the time, this is the Element Selection Tool (SelectionTool.toolId).\n * Your app can specify its own tool or another core tool as default with this property.\n */\n readonly defaultTool?: string;\n\n /** The top-left corner that shows tools typically used to query and modify content. */\n readonly contentManipulation?: WidgetConfig;\n /** The settings of the active tool. */\n readonly toolSettings?: WidgetConfig & {\n /** Custom node for active tool, when tool has no settings. */\n activeToolEmptyNode?: React.ReactNode;\n };\n /** The top-right corner that shows view navigation tools. */\n readonly viewNavigation?: WidgetConfig;\n /** The status bar of the application. */\n readonly statusBar?: WidgetConfig;\n\n /** Top panel of the application. */\n readonly topPanel?: StagePanelConfig;\n /** Left panel of the application. */\n readonly leftPanel?: StagePanelConfig;\n /** Right panel of the application. */\n readonly rightPanel?: StagePanelConfig;\n /** Bottom panel of the application. */\n readonly bottomPanel?: StagePanelConfig;\n}\n"]}
|
|
1
|
+
{"version":3,"file":"FrontstageConfig.js","sourceRoot":"","sources":["../../../src/appui-react/frontstage/FrontstageConfig.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Frontstage\n */\n\nimport type { CommonProps } from \"@itwin/core-react\";\nimport type {\n ContentGroup,\n ContentGroupProvider,\n} from \"../content/ContentGroup.js\";\nimport type { StagePanelConfig } from \"../stagepanels/StagePanelConfig.js\";\nimport type { WidgetConfig } from \"../widgets/WidgetConfig.js\";\nimport type { Frontstage } from \"./Frontstage.js\";\nimport type { UiItemsProvider } from \"../ui-items-provider/UiItemsProvider.js\";\nimport type { StageUsage } from \"./StageUsage.js\";\nimport type { StandardLayout } from \"../configurableui/ConfigurableUiContent.js\";\n\n/** Configuration from which a frontstage is created.\n * @public\n * @deprecated in 4.15.0. Use {@link Frontstage} instead.\n */\n// eslint-disable-next-line @typescript-eslint/no-deprecated\nexport interface FrontstageConfig extends CommonProps {\n /** Id of the frontstage. To ensure uniqueness it is common practice to format id like `appName:stageId` */\n readonly id: string;\n /** Content group of the frontstage that describes the content views. Or a content group provider. */\n readonly contentGroup: ContentGroup | ContentGroupProvider;\n /** Usage type for this Frontstage. To allow generic {@link UiItemsProvider} to populate this stage set to {@link StageUsage.General}. */\n readonly usage?: string;\n /** Frontstage version. Used to force saved layout reinitialization after changes to frontstage.\n * @note This value should be increased when changes are made to the Frontstage.\n * Increasing the value will make sure to reinitialize App layout instead of restoring to old layout.\n */\n readonly version: number;\n /** The defaultTool is started when then frontstage loads and whenever any other tools exit.\n * Most of the time, this is the Element Selection Tool (SelectionTool.toolId).\n * Your app can specify its own tool or another core tool as default with this property.\n */\n readonly defaultTool?: string;\n\n /** The top-left corner that shows tools typically used to query and modify content. */\n readonly contentManipulation?: WidgetConfig;\n /** The settings of the active tool. */\n readonly toolSettings?: WidgetConfig & {\n /** Custom node for active tool, when tool has no settings. */\n activeToolEmptyNode?: React.ReactNode;\n };\n /** The top-right corner that shows view navigation tools. */\n readonly viewNavigation?: WidgetConfig;\n /** The status bar of the application. */\n readonly statusBar?: WidgetConfig;\n\n /** Top panel of the application. */\n readonly topPanel?: StagePanelConfig;\n /** Left panel of the application. */\n readonly leftPanel?: StagePanelConfig;\n /** Right panel of the application. */\n readonly rightPanel?: StagePanelConfig;\n /** Bottom panel of the application. */\n readonly bottomPanel?: StagePanelConfig;\n\n /**\n * Specifies a custom layout component that overrides or customizes the standard widget based layout.\n * Additionally, {@link StandardLayout} component can be used to wrap the standard layout with frontstage specific providers.\n * @alpha\n */\n readonly layout?: React.ReactNode;\n}\n"]}
|
|
@@ -66,6 +66,8 @@ export declare class FrontstageDef {
|
|
|
66
66
|
get bottomPanel(): StagePanelDef | undefined;
|
|
67
67
|
get contentLayoutDef(): ContentLayoutDef | undefined;
|
|
68
68
|
get contentGroup(): ContentGroup | undefined;
|
|
69
|
+
/** @internal */
|
|
70
|
+
get initialConfig(): Frontstage | undefined;
|
|
69
71
|
private toStagePanelLocation;
|
|
70
72
|
private populateStateMaps;
|
|
71
73
|
private triggerStateChangeEvents;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FrontstageDef.d.ts","sourceRoot":"","sources":["../../../src/appui-react/frontstage/FrontstageDef.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"FrontstageDef.d.ts","sourceRoot":"","sources":["../../../src/appui-react/frontstage/FrontstageDef.tsx"],"names":[],"mappings":"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"}
|