@itwin/appui-react 3.0.0 → 3.0.3
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 +27 -1
- package/lib/cjs/appui-react/accudraw/AccuDrawInputField.js +1 -1
- package/lib/cjs/appui-react/accudraw/AccuDrawInputField.js.map +1 -1
- package/lib/cjs/appui-react/content/IModelViewport.js +1 -1
- package/lib/cjs/appui-react/content/IModelViewport.js.map +1 -1
- package/lib/cjs/appui-react/frontstage/FrontstageComposer.d.ts.map +1 -1
- package/lib/cjs/appui-react/frontstage/FrontstageComposer.js +1 -0
- package/lib/cjs/appui-react/frontstage/FrontstageComposer.js.map +1 -1
- package/lib/cjs/appui-react/frontstage/FrontstageDef.d.ts +5 -0
- package/lib/cjs/appui-react/frontstage/FrontstageDef.d.ts.map +1 -1
- package/lib/cjs/appui-react/frontstage/FrontstageDef.js +26 -0
- package/lib/cjs/appui-react/frontstage/FrontstageDef.js.map +1 -1
- package/lib/cjs/appui-react/frontstage/FrontstageManager.d.ts +3 -0
- package/lib/cjs/appui-react/frontstage/FrontstageManager.d.ts.map +1 -1
- package/lib/cjs/appui-react/frontstage/FrontstageManager.js +9 -0
- package/lib/cjs/appui-react/frontstage/FrontstageManager.js.map +1 -1
- package/lib/cjs/appui-react/hooks/useUiVisibility.d.ts +6 -0
- package/lib/cjs/appui-react/hooks/useUiVisibility.d.ts.map +1 -0
- package/lib/cjs/appui-react/hooks/useUiVisibility.js +27 -0
- package/lib/cjs/appui-react/hooks/useUiVisibility.js.map +1 -0
- package/lib/cjs/appui-react/imodel-components/category-tree/CategoryVisibilityHandler.d.ts.map +1 -1
- package/lib/cjs/appui-react/imodel-components/category-tree/CategoryVisibilityHandler.js +2 -1
- package/lib/cjs/appui-react/imodel-components/category-tree/CategoryVisibilityHandler.js.map +1 -1
- package/lib/cjs/appui-react/imodel-components/models-tree/ModelsTreeSearch.json +3 -3
- package/lib/cjs/appui-react/stagepanels/StagePanelDef.d.ts +2 -3
- package/lib/cjs/appui-react/stagepanels/StagePanelDef.d.ts.map +1 -1
- package/lib/cjs/appui-react/stagepanels/StagePanelDef.js +2 -3
- package/lib/cjs/appui-react/stagepanels/StagePanelDef.js.map +1 -1
- package/lib/cjs/appui-react/uiprovider/DefaultDialogGridContainer.scss +3 -0
- package/lib/cjs/appui-react/uistate/UserSettingsStorage.d.ts.map +1 -1
- package/lib/cjs/appui-react/uistate/UserSettingsStorage.js +3 -0
- package/lib/cjs/appui-react/uistate/UserSettingsStorage.js.map +1 -1
- package/lib/cjs/appui-react/widget-panels/Frontstage.d.ts.map +1 -1
- package/lib/cjs/appui-react/widget-panels/Frontstage.js +22 -12
- package/lib/cjs/appui-react/widget-panels/Frontstage.js.map +1 -1
- package/lib/cjs/appui-react/widgets/BasicNavigationWidget.js +2 -2
- package/lib/cjs/appui-react/widgets/BasicNavigationWidget.js.map +1 -1
- package/lib/cjs/appui-react/widgets/BasicToolWidget.d.ts +0 -2
- package/lib/cjs/appui-react/widgets/BasicToolWidget.d.ts.map +1 -1
- package/lib/cjs/appui-react/widgets/BasicToolWidget.js +3 -17
- package/lib/cjs/appui-react/widgets/BasicToolWidget.js.map +1 -1
- package/lib/cjs/appui-react/widgets/ContentToolWidgetComposer.js +2 -2
- package/lib/cjs/appui-react/widgets/ContentToolWidgetComposer.js.map +1 -1
- package/lib/cjs/appui-react/widgets/ViewToolWidgetComposer.js +2 -2
- package/lib/cjs/appui-react/widgets/ViewToolWidgetComposer.js.map +1 -1
- package/lib/cjs/appui-react.d.ts +1 -0
- package/lib/cjs/appui-react.d.ts.map +1 -1
- package/lib/cjs/appui-react.js +1 -0
- package/lib/cjs/appui-react.js.map +1 -1
- package/lib/esm/appui-react/accudraw/AccuDrawInputField.js +1 -1
- package/lib/esm/appui-react/accudraw/AccuDrawInputField.js.map +1 -1
- package/lib/esm/appui-react/content/IModelViewport.js +1 -1
- package/lib/esm/appui-react/content/IModelViewport.js.map +1 -1
- package/lib/esm/appui-react/frontstage/FrontstageComposer.d.ts.map +1 -1
- package/lib/esm/appui-react/frontstage/FrontstageComposer.js +1 -0
- package/lib/esm/appui-react/frontstage/FrontstageComposer.js.map +1 -1
- package/lib/esm/appui-react/frontstage/FrontstageDef.d.ts +5 -0
- package/lib/esm/appui-react/frontstage/FrontstageDef.d.ts.map +1 -1
- package/lib/esm/appui-react/frontstage/FrontstageDef.js +27 -1
- package/lib/esm/appui-react/frontstage/FrontstageDef.js.map +1 -1
- package/lib/esm/appui-react/frontstage/FrontstageManager.d.ts +3 -0
- package/lib/esm/appui-react/frontstage/FrontstageManager.d.ts.map +1 -1
- package/lib/esm/appui-react/frontstage/FrontstageManager.js +9 -0
- package/lib/esm/appui-react/frontstage/FrontstageManager.js.map +1 -1
- package/lib/esm/appui-react/hooks/useUiVisibility.d.ts +6 -0
- package/lib/esm/appui-react/hooks/useUiVisibility.d.ts.map +1 -0
- package/lib/esm/appui-react/hooks/useUiVisibility.js +23 -0
- package/lib/esm/appui-react/hooks/useUiVisibility.js.map +1 -0
- package/lib/esm/appui-react/imodel-components/category-tree/CategoryVisibilityHandler.d.ts.map +1 -1
- package/lib/esm/appui-react/imodel-components/category-tree/CategoryVisibilityHandler.js +2 -1
- package/lib/esm/appui-react/imodel-components/category-tree/CategoryVisibilityHandler.js.map +1 -1
- package/lib/esm/appui-react/imodel-components/models-tree/ModelsTreeSearch.json +3 -3
- package/lib/esm/appui-react/stagepanels/StagePanelDef.d.ts +2 -3
- package/lib/esm/appui-react/stagepanels/StagePanelDef.d.ts.map +1 -1
- package/lib/esm/appui-react/stagepanels/StagePanelDef.js +1 -2
- package/lib/esm/appui-react/stagepanels/StagePanelDef.js.map +1 -1
- package/lib/esm/appui-react/uiprovider/DefaultDialogGridContainer.scss +3 -0
- package/lib/esm/appui-react/uistate/UserSettingsStorage.d.ts.map +1 -1
- package/lib/esm/appui-react/uistate/UserSettingsStorage.js +3 -0
- package/lib/esm/appui-react/uistate/UserSettingsStorage.js.map +1 -1
- package/lib/esm/appui-react/widget-panels/Frontstage.d.ts.map +1 -1
- package/lib/esm/appui-react/widget-panels/Frontstage.js +22 -12
- package/lib/esm/appui-react/widget-panels/Frontstage.js.map +1 -1
- package/lib/esm/appui-react/widgets/BasicNavigationWidget.js +1 -1
- package/lib/esm/appui-react/widgets/BasicNavigationWidget.js.map +1 -1
- package/lib/esm/appui-react/widgets/BasicToolWidget.d.ts +0 -2
- package/lib/esm/appui-react/widgets/BasicToolWidget.d.ts.map +1 -1
- package/lib/esm/appui-react/widgets/BasicToolWidget.js +1 -14
- package/lib/esm/appui-react/widgets/BasicToolWidget.js.map +1 -1
- package/lib/esm/appui-react/widgets/ContentToolWidgetComposer.js +1 -1
- package/lib/esm/appui-react/widgets/ContentToolWidgetComposer.js.map +1 -1
- package/lib/esm/appui-react/widgets/ViewToolWidgetComposer.js +1 -1
- package/lib/esm/appui-react/widgets/ViewToolWidgetComposer.js.map +1 -1
- package/lib/esm/appui-react.d.ts +1 -0
- package/lib/esm/appui-react.d.ts.map +1 -1
- package/lib/esm/appui-react.js +1 -0
- package/lib/esm/appui-react.js.map +1 -1
- package/package.json +32 -33
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BasicNavigationWidget.js","sourceRoot":"","sources":["../../../../src/appui-react/widgets/BasicNavigationWidget.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,2CAAoC;AACpC,+BAA+B;AAC/B,0DAA4F;AAC5F,sEAAyD;AACzD,gEAA6D;AAC7D,4DAAyD;AACzD,
|
|
1
|
+
{"version":3,"file":"BasicNavigationWidget.js","sourceRoot":"","sources":["../../../../src/appui-react/widgets/BasicNavigationWidget.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,2CAAoC;AACpC,+BAA+B;AAC/B,0DAA4F;AAC5F,sEAAyD;AACzD,gEAA6D;AAC7D,4DAAyD;AACzD,8DAA2D;AAC3D,yEAAsE;AAYtE;;;GAGG;AACH,SAAgB,qBAAqB,CAAC,KAAiC;IAErE,MAAM,yBAAyB,GAAG,KAAK,CAAC,WAAW,CACjD,GAAwB,EAAE;QACxB,MAAM,KAAK,GAAwB,6BAAa,CAAC,8BAA8B,CAAC;YAC9E,+BAAS,CAAC,iBAAiB;YAC3B,+BAAS,CAAC,cAAc;YACxB,+BAAS,CAAC,cAAc;YACxB,+BAAS,CAAC,iBAAiB;YAC3B,+BAAS,CAAC,eAAe;YACzB,+BAAS,CAAC,eAAe;SAC1B,CAAC,CAAC;QACH,IAAI,KAAK,CAAC,yBAAyB;YACjC,KAAK,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,yBAAyB,CAAC,CAAC;QACjD,OAAO,KAAK,CAAC;IACf,CAAC,EAAE,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC,CAAC;IAExC,MAAM,uBAAuB,GAAG,KAAK,CAAC,WAAW,CAC/C,GAAwB,EAAE;QACxB,MAAM,KAAK,GAAwB,EAAE,CAAC;QACtC,KAAK,CAAC,IAAI,CACR,6BAAa,CAAC,4BAA4B,CAAC,EAAE,EAAE,+BAAS,CAAC,eAAe,CAAC,EACzE,6BAAa,CAAC,4BAA4B,CAAC,EAAE,EAAE,+BAAS,CAAC,uBAAuB,CAAC,CAClF,CAAC;QACF,IAAI,KAAK,CAAC,uBAAuB;YAC/B,KAAK,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAC/C,OAAO,KAAK,CAAC;IACf,CAAC,EAAE,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC,CAAC;IAEtC,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,yBAAyB,EAAE,CAAC,CAAC;IAChG,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,uBAAuB,EAAE,CAAC,CAAC;IAE1F,MAAM,cAAc,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC1C,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,IAAI,cAAc,CAAC,OAAO;YACxB,cAAc,CAAC,OAAO,GAAG,KAAK,CAAC;aAC5B;YACH,kBAAkB,CAAC,yBAAyB,EAAE,CAAC,CAAC;YAChD,gBAAgB,CAAC,uBAAuB,EAAE,CAAC,CAAC;SAC7C;IACH,CAAC,EAAE,CAAC,KAAK,CAAC,yBAAyB,EAAE,KAAK,CAAC,uBAAuB,EAAE,yBAAyB,EAAE,uBAAuB,CAAC,CAAC,CAAC;IAEzH,MAAM,WAAW,GAAG,IAAA,iCAAe,GAAE,CAAC;IACtC,uBAAuB;IACvB,MAAM,SAAS,GAAG,IAAA,oBAAU,EAC1B,CAAC,WAAW,IAAI,WAAW,CAC5B,CAAC;IAEF,OAAO,CACL,oBAAC,mDAAwB,IAAC,SAAS,EAAE,SAAS,EAC5C,iBAAiB,EAAE,oBAAC,iCAAe,IAAC,KAAK,EAAE,eAAe,EAAE,KAAK,EAAE,6BAAY,CAAC,cAAc,EAAE,WAAW,EAAE,mCAAkB,CAAC,UAAU,GAAI,EAC9I,eAAe,EAAE,oBAAC,iCAAe,IAAC,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,6BAAY,CAAC,cAAc,EAAE,WAAW,EAAE,mCAAkB,CAAC,QAAQ,GAAI,GACxI,CACH,CAAC;AACJ,CAAC;AAtDD,sDAsDC","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 classnames from \"classnames\";\r\nimport * as React from \"react\";\r\nimport { CommonToolbarItem, ToolbarOrientation, ToolbarUsage } from \"@itwin/appui-abstract\";\r\nimport { CoreTools } from \"../tools/CoreToolDefinitions\";\r\nimport { ToolbarComposer } from \"../toolbar/ToolbarComposer\";\r\nimport { ToolbarHelper } from \"../toolbar/ToolbarHelper\";\r\nimport { useUiVisibility } from \"../hooks/useUiVisibility\";\r\nimport { NavigationWidgetComposer } from \"./NavigationWidgetComposer\";\r\n\r\n/** Properties that can be used to append items to the default set of toolbar items of [[DefaultNavigationWidget]].\r\n * @public\r\n */\r\nexport interface BasicNavigationWidgetProps {\r\n /** optional set of additional items to include in horizontal toolbar */\r\n additionalHorizontalItems?: CommonToolbarItem[];\r\n /** optional set of additional items to include in vertical toolbar */\r\n additionalVerticalItems?: CommonToolbarItem[];\r\n}\r\n\r\n/** Basic Navigation Widget that provides standard tools to manipulate views containing element data.\r\n * Supports the specification of additional horizontal and vertical toolbar items through props.\r\n * @public\r\n */\r\nexport function BasicNavigationWidget(props: BasicNavigationWidgetProps) {\r\n\r\n const getHorizontalToolbarItems = React.useCallback(\r\n (): CommonToolbarItem[] => {\r\n const items: CommonToolbarItem[] = ToolbarHelper.createToolbarItemsFromItemDefs([\r\n CoreTools.rotateViewCommand,\r\n CoreTools.panViewCommand,\r\n CoreTools.fitViewCommand,\r\n CoreTools.windowAreaCommand,\r\n CoreTools.viewUndoCommand,\r\n CoreTools.viewRedoCommand,\r\n ]);\r\n if (props.additionalHorizontalItems)\r\n items.push(...props.additionalHorizontalItems);\r\n return items;\r\n }, [props.additionalHorizontalItems]);\r\n\r\n const getVerticalToolbarItems = React.useCallback(\r\n (): CommonToolbarItem[] => {\r\n const items: CommonToolbarItem[] = [];\r\n items.push(\r\n ToolbarHelper.createToolbarItemFromItemDef(10, CoreTools.walkViewCommand),\r\n ToolbarHelper.createToolbarItemFromItemDef(20, CoreTools.toggleCameraViewCommand),\r\n );\r\n if (props.additionalVerticalItems)\r\n items.push(...props.additionalVerticalItems);\r\n return items;\r\n }, [props.additionalVerticalItems]);\r\n\r\n const [horizontalItems, setHorizontalItems] = React.useState(() => getHorizontalToolbarItems());\r\n const [verticalItems, setVerticalItems] = React.useState(() => getVerticalToolbarItems());\r\n\r\n const isInitialMount = React.useRef(true);\r\n React.useEffect(() => {\r\n if (isInitialMount.current)\r\n isInitialMount.current = false;\r\n else {\r\n setHorizontalItems(getHorizontalToolbarItems());\r\n setVerticalItems(getVerticalToolbarItems());\r\n }\r\n }, [props.additionalHorizontalItems, props.additionalVerticalItems, getHorizontalToolbarItems, getVerticalToolbarItems]);\r\n\r\n const uiIsVisible = useUiVisibility();\r\n // istanbul ignore next\r\n const className = classnames(\r\n !uiIsVisible && \"nz-hidden\",\r\n );\r\n\r\n return (\r\n <NavigationWidgetComposer className={className}\r\n horizontalToolbar={<ToolbarComposer items={horizontalItems} usage={ToolbarUsage.ViewNavigation} orientation={ToolbarOrientation.Horizontal} />}\r\n verticalToolbar={<ToolbarComposer items={verticalItems} usage={ToolbarUsage.ViewNavigation} orientation={ToolbarOrientation.Vertical} />}\r\n />\r\n );\r\n}\r\n"]}
|
|
@@ -16,8 +16,6 @@ export interface BasicToolWidgetProps {
|
|
|
16
16
|
/** optional set of additional items to include in vertical toolbar */
|
|
17
17
|
additionalVerticalItems?: CommonToolbarItem[];
|
|
18
18
|
}
|
|
19
|
-
/** @internal */
|
|
20
|
-
export declare function useUiVisibility(): boolean;
|
|
21
19
|
/** Default Tool Widget for standard "review" applications. Provides standard tools to review, and measure elements.
|
|
22
20
|
* This definition will also show a overflow button if there is not enough room to display all the toolbar buttons.
|
|
23
21
|
* @public
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BasicToolWidget.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/widgets/BasicToolWidget.tsx"],"names":[],"mappings":"AAIA;;GAEG;;AAIH,OAAO,EAAE,iBAAiB,EAAoC,MAAM,uBAAuB,CAAC;AAS5F;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,yDAAyD;IACzD,iCAAiC,CAAC,EAAE,OAAO,CAAC;IAC5C,0HAA0H;IAC1H,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,wEAAwE;IACxE,yBAAyB,CAAC,EAAE,iBAAiB,EAAE,CAAC;IAChD,sEAAsE;IACtE,uBAAuB,CAAC,EAAE,iBAAiB,EAAE,CAAC;CAC/C;AAED
|
|
1
|
+
{"version":3,"file":"BasicToolWidget.d.ts","sourceRoot":"","sources":["../../../../src/appui-react/widgets/BasicToolWidget.tsx"],"names":[],"mappings":"AAIA;;GAEG;;AAIH,OAAO,EAAE,iBAAiB,EAAoC,MAAM,uBAAuB,CAAC;AAS5F;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,yDAAyD;IACzD,iCAAiC,CAAC,EAAE,OAAO,CAAC;IAC5C,0HAA0H;IAC1H,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,wEAAwE;IACxE,yBAAyB,CAAC,EAAE,iBAAiB,EAAE,CAAC;IAChD,sEAAsE;IACtE,uBAAuB,CAAC,EAAE,iBAAiB,EAAE,CAAC;CAC/C;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,oBAAoB,eAgE1D"}
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
* @module Widget
|
|
8
8
|
*/
|
|
9
9
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
-
exports.BasicToolWidget =
|
|
10
|
+
exports.BasicToolWidget = void 0;
|
|
11
11
|
const classnames_1 = require("classnames");
|
|
12
12
|
const React = require("react");
|
|
13
13
|
const appui_abstract_1 = require("@itwin/appui-abstract");
|
|
@@ -15,23 +15,9 @@ const CoreToolDefinitions_1 = require("../tools/CoreToolDefinitions");
|
|
|
15
15
|
const SelectionContextItemDef_1 = require("../selection/SelectionContextItemDef");
|
|
16
16
|
const ToolbarComposer_1 = require("../toolbar/ToolbarComposer");
|
|
17
17
|
const ToolbarHelper_1 = require("../toolbar/ToolbarHelper");
|
|
18
|
-
const UiFramework_1 = require("../UiFramework");
|
|
19
18
|
const ToolWidgetComposer_1 = require("./ToolWidgetComposer");
|
|
20
19
|
const BackstageAppButton_1 = require("./BackstageAppButton");
|
|
21
|
-
|
|
22
|
-
// istanbul ignore next
|
|
23
|
-
function useUiVisibility() {
|
|
24
|
-
const [uiIsVisible, setUiIsVisible] = React.useState(UiFramework_1.UiFramework.getIsUiVisible());
|
|
25
|
-
React.useEffect(() => {
|
|
26
|
-
const handleUiVisibilityChanged = ((args) => setUiIsVisible(args.visible));
|
|
27
|
-
UiFramework_1.UiFramework.onUiVisibilityChanged.addListener(handleUiVisibilityChanged);
|
|
28
|
-
return () => {
|
|
29
|
-
UiFramework_1.UiFramework.onUiVisibilityChanged.removeListener(handleUiVisibilityChanged);
|
|
30
|
-
};
|
|
31
|
-
}, []);
|
|
32
|
-
return uiIsVisible;
|
|
33
|
-
}
|
|
34
|
-
exports.useUiVisibility = useUiVisibility;
|
|
20
|
+
const useUiVisibility_1 = require("../hooks/useUiVisibility");
|
|
35
21
|
/** Default Tool Widget for standard "review" applications. Provides standard tools to review, and measure elements.
|
|
36
22
|
* This definition will also show a overflow button if there is not enough room to display all the toolbar buttons.
|
|
37
23
|
* @public
|
|
@@ -67,7 +53,7 @@ function BasicToolWidget(props) {
|
|
|
67
53
|
setVerticalItems(getVerticalToolbarItems());
|
|
68
54
|
}
|
|
69
55
|
}, [props.showCategoryAndModelsContextTools, props.additionalHorizontalItems, props.additionalVerticalItems, getHorizontalToolbarItems, getVerticalToolbarItems]);
|
|
70
|
-
const uiIsVisible = useUiVisibility();
|
|
56
|
+
const uiIsVisible = (0, useUiVisibility_1.useUiVisibility)();
|
|
71
57
|
// istanbul ignore next
|
|
72
58
|
const className = (0, classnames_1.default)(!uiIsVisible && "nz-hidden");
|
|
73
59
|
return (React.createElement(ToolWidgetComposer_1.ToolWidgetComposer, { className: className, cornerItem: React.createElement(BackstageAppButton_1.BackstageAppButton, { icon: props.icon }), horizontalToolbar: React.createElement(ToolbarComposer_1.ToolbarComposer, { items: horizontalItems, usage: appui_abstract_1.ToolbarUsage.ContentManipulation, orientation: appui_abstract_1.ToolbarOrientation.Horizontal }), verticalToolbar: React.createElement(ToolbarComposer_1.ToolbarComposer, { items: verticalItems, usage: appui_abstract_1.ToolbarUsage.ContentManipulation, orientation: appui_abstract_1.ToolbarOrientation.Vertical }) }));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BasicToolWidget.js","sourceRoot":"","sources":["../../../../src/appui-react/widgets/BasicToolWidget.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,2CAAoC;AACpC,+BAA+B;AAC/B,0DAA4F;AAC5F,sEAAyD;AACzD,kFAAuF;AACvF,gEAA6D;AAC7D,4DAAyD;AACzD,
|
|
1
|
+
{"version":3,"file":"BasicToolWidget.js","sourceRoot":"","sources":["../../../../src/appui-react/widgets/BasicToolWidget.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 classnames from \"classnames\";\r\nimport * as React from \"react\";\r\nimport { CommonToolbarItem, ToolbarOrientation, ToolbarUsage } from \"@itwin/appui-abstract\";\r\nimport { CoreTools } from \"../tools/CoreToolDefinitions\";\r\nimport { SelectionContextToolDefinitions } from \"../selection/SelectionContextItemDef\";\r\nimport { ToolbarComposer } from \"../toolbar/ToolbarComposer\";\r\nimport { ToolbarHelper } from \"../toolbar/ToolbarHelper\";\r\nimport { ToolWidgetComposer } from \"./ToolWidgetComposer\";\r\nimport { BackstageAppButton } from \"./BackstageAppButton\";\r\nimport { useUiVisibility } from \"../hooks/useUiVisibility\";\r\n\r\n/** Properties that can be used to append items to the default set of toolbar items of [[ReviewToolWidget]].\r\n * @public\r\n */\r\nexport interface BasicToolWidgetProps {\r\n /** if true include hide/isolate Models and Categories */\r\n showCategoryAndModelsContextTools?: boolean;\r\n /** Name of icon WebFont entry or if specifying an SVG symbol added by plug on use \"svg:\" prefix to imported symbol Id. */\r\n icon?: string;\r\n /** optional set of additional items to include in horizontal toolbar */\r\n additionalHorizontalItems?: CommonToolbarItem[];\r\n /** optional set of additional items to include in vertical toolbar */\r\n additionalVerticalItems?: CommonToolbarItem[];\r\n}\r\n\r\n/** Default Tool Widget for standard \"review\" applications. Provides standard tools to review, and measure elements.\r\n * This definition will also show a overflow button if there is not enough room to display all the toolbar buttons.\r\n * @public\r\n */\r\nexport function BasicToolWidget(props: BasicToolWidgetProps) {\r\n const getHorizontalToolbarItems = React.useCallback(\r\n (useCategoryAndModelsContextTools: boolean): CommonToolbarItem[] => {\r\n const items: CommonToolbarItem[] = [];\r\n if (useCategoryAndModelsContextTools) {\r\n items.push(\r\n ToolbarHelper.createToolbarItemFromItemDef(10, CoreTools.clearSelectionItemDef),\r\n ToolbarHelper.createToolbarItemFromItemDef(20, SelectionContextToolDefinitions.clearHideIsolateEmphasizeElementsItemDef),\r\n ToolbarHelper.createToolbarItemFromItemDef(30, SelectionContextToolDefinitions.hideSectionToolGroup),\r\n ToolbarHelper.createToolbarItemFromItemDef(40, SelectionContextToolDefinitions.isolateSelectionToolGroup),\r\n ToolbarHelper.createToolbarItemFromItemDef(50, SelectionContextToolDefinitions.emphasizeElementsItemDef),\r\n );\r\n } else {\r\n items.push(\r\n ToolbarHelper.createToolbarItemFromItemDef(10, CoreTools.clearSelectionItemDef),\r\n ToolbarHelper.createToolbarItemFromItemDef(20, SelectionContextToolDefinitions.clearHideIsolateEmphasizeElementsItemDef),\r\n ToolbarHelper.createToolbarItemFromItemDef(30, SelectionContextToolDefinitions.hideElementsItemDef),\r\n ToolbarHelper.createToolbarItemFromItemDef(40, SelectionContextToolDefinitions.isolateElementsItemDef),\r\n ToolbarHelper.createToolbarItemFromItemDef(50, SelectionContextToolDefinitions.emphasizeElementsItemDef),\r\n );\r\n }\r\n if (props.additionalHorizontalItems)\r\n items.push(...props.additionalHorizontalItems);\r\n return items;\r\n }, [props.additionalHorizontalItems]);\r\n\r\n const getVerticalToolbarItems = React.useCallback(\r\n (): CommonToolbarItem[] => {\r\n const items: CommonToolbarItem[] = [];\r\n items.push(\r\n ToolbarHelper.createToolbarItemFromItemDef(10, CoreTools.selectElementCommand),\r\n ToolbarHelper.createToolbarItemFromItemDef(20, CoreTools.measureToolGroup),\r\n ToolbarHelper.createToolbarItemFromItemDef(30, CoreTools.sectionToolGroup),\r\n );\r\n if (props.additionalVerticalItems)\r\n items.push(...props.additionalVerticalItems);\r\n return items;\r\n }, [props.additionalVerticalItems]);\r\n\r\n const [horizontalItems, setHorizontalItems] = React.useState(() => getHorizontalToolbarItems(!!props.showCategoryAndModelsContextTools));\r\n const [verticalItems, setVerticalItems] = React.useState(() => getVerticalToolbarItems());\r\n\r\n const isInitialMount = React.useRef(true);\r\n React.useEffect(() => {\r\n if (isInitialMount.current)\r\n isInitialMount.current = false;\r\n else {\r\n setHorizontalItems(getHorizontalToolbarItems(!!props.showCategoryAndModelsContextTools));\r\n setVerticalItems(getVerticalToolbarItems());\r\n }\r\n }, [props.showCategoryAndModelsContextTools, props.additionalHorizontalItems, props.additionalVerticalItems, getHorizontalToolbarItems, getVerticalToolbarItems]);\r\n\r\n const uiIsVisible = useUiVisibility();\r\n // istanbul ignore next\r\n const className = classnames(\r\n !uiIsVisible && \"nz-hidden\",\r\n );\r\n return (\r\n <ToolWidgetComposer className={className}\r\n cornerItem={<BackstageAppButton icon={props.icon} />}\r\n horizontalToolbar={<ToolbarComposer items={horizontalItems} usage={ToolbarUsage.ContentManipulation} orientation={ToolbarOrientation.Horizontal} />}\r\n verticalToolbar={<ToolbarComposer items={verticalItems} usage={ToolbarUsage.ContentManipulation} orientation={ToolbarOrientation.Vertical} />}\r\n />\r\n );\r\n}\r\n"]}
|
|
@@ -13,7 +13,7 @@ const React = require("react");
|
|
|
13
13
|
const appui_abstract_1 = require("@itwin/appui-abstract");
|
|
14
14
|
const ToolbarComposer_1 = require("../toolbar/ToolbarComposer");
|
|
15
15
|
const ToolWidgetComposer_1 = require("./ToolWidgetComposer");
|
|
16
|
-
const
|
|
16
|
+
const useUiVisibility_1 = require("../hooks/useUiVisibility");
|
|
17
17
|
/**
|
|
18
18
|
* ContentToolWidgetComposer composes a Tool Widget with no tools defined by default. UiItemsProviders
|
|
19
19
|
* are used to populate the toolbars. See [[StandardContentToolsProvider]].
|
|
@@ -40,7 +40,7 @@ const BasicToolWidget_1 = require("./BasicToolWidget");
|
|
|
40
40
|
*/
|
|
41
41
|
function ContentToolWidgetComposer(props) {
|
|
42
42
|
const { cornerButton } = props;
|
|
43
|
-
const uiIsVisible = (0,
|
|
43
|
+
const uiIsVisible = (0, useUiVisibility_1.useUiVisibility)();
|
|
44
44
|
// istanbul ignore next
|
|
45
45
|
const className = (0, classnames_1.default)(!uiIsVisible && "nz-hidden");
|
|
46
46
|
return (React.createElement(ToolWidgetComposer_1.ToolWidgetComposer, { className: className, cornerItem: cornerButton, horizontalToolbar: React.createElement(ToolbarComposer_1.ToolbarComposer, { items: [], usage: appui_abstract_1.ToolbarUsage.ContentManipulation, orientation: appui_abstract_1.ToolbarOrientation.Horizontal }), verticalToolbar: React.createElement(ToolbarComposer_1.ToolbarComposer, { items: [], usage: appui_abstract_1.ToolbarUsage.ContentManipulation, orientation: appui_abstract_1.ToolbarOrientation.Vertical }) }));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ContentToolWidgetComposer.js","sourceRoot":"","sources":["../../../../src/appui-react/widgets/ContentToolWidgetComposer.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,2CAAoC;AACpC,+BAA+B;AAC/B,0DAAyE;AACzE,gEAA6D;AAC7D,6DAA0D;AAC1D,
|
|
1
|
+
{"version":3,"file":"ContentToolWidgetComposer.js","sourceRoot":"","sources":["../../../../src/appui-react/widgets/ContentToolWidgetComposer.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,2CAAoC;AACpC,+BAA+B;AAC/B,0DAAyE;AACzE,gEAA6D;AAC7D,6DAA0D;AAC1D,8DAA2D;AAW3D;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,SAAgB,yBAAyB,CAAC,KAAqC;IAC7E,MAAM,EAAE,YAAY,EAAE,GAAG,KAAK,CAAC;IAC/B,MAAM,WAAW,GAAG,IAAA,iCAAe,GAAE,CAAC;IACtC,uBAAuB;IACvB,MAAM,SAAS,GAAG,IAAA,oBAAU,EAC1B,CAAC,WAAW,IAAI,WAAW,CAC5B,CAAC;IACF,OAAO,CACL,oBAAC,uCAAkB,IAAC,SAAS,EAAE,SAAS,EACtC,UAAU,EAAE,YAAY,EACxB,iBAAiB,EAAE,oBAAC,iCAAe,IAAC,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,6BAAY,CAAC,mBAAmB,EAAE,WAAW,EAAE,mCAAkB,CAAC,UAAU,GAAI,EACtI,eAAe,EAAE,oBAAC,iCAAe,IAAC,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,6BAAY,CAAC,mBAAmB,EAAE,WAAW,EAAE,mCAAkB,CAAC,QAAQ,GAAI,GAClI,CACH,CAAC;AACJ,CAAC;AAdD,8DAcC","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 classnames from \"classnames\";\r\nimport * as React from \"react\";\r\nimport { ToolbarOrientation, ToolbarUsage } from \"@itwin/appui-abstract\";\r\nimport { ToolbarComposer } from \"../toolbar/ToolbarComposer\";\r\nimport { ToolWidgetComposer } from \"./ToolWidgetComposer\";\r\nimport { useUiVisibility } from \"../hooks/useUiVisibility\";\r\n\r\n/**\r\n * Props for [[ContentToolWidgetComposer]].\r\n * @public\r\n */\r\nexport interface ContentToolWidgetComposerProps {\r\n /** If default backstage button is desired use <BackstageAppButton />. */\r\n cornerButton?: React.ReactNode;\r\n}\r\n\r\n/**\r\n * ContentToolWidgetComposer composes a Tool Widget with no tools defined by default. UiItemsProviders\r\n * are used to populate the toolbars. See [[StandardContentToolsProvider]].\r\n * @example\r\n * ToolWidget with no corner button\r\n * ```\r\n * <ContentToolWidgetComposer />\r\n * ```\r\n * ToolWidget with corner button\r\n * ```\r\n * const cornerButton = <BackstageAppButton icon={\"icon-bentley-systems\"} />;\r\n * <ContentToolWidgetComposer cornerButton={cornerButton} />\r\n * ```\r\n * ToolWidget with custom corner button\r\n * ```\r\n * const cornerButton = <BackstageAppButton icon={\"icon-bentley-systems\"}\r\n * label=\"Toggle Backstage display\",\r\n * execute={() => BackstageManager.getBackstageToggleCommand().execute()} />;\r\n * <ContentToolWidgetComposer cornerButton={cornerButton} />\r\n * ```\r\n *\r\n * BackstageCornerButton,\r\n * @public\r\n */\r\nexport function ContentToolWidgetComposer(props: ContentToolWidgetComposerProps) {\r\n const { cornerButton } = props;\r\n const uiIsVisible = useUiVisibility();\r\n // istanbul ignore next\r\n const className = classnames(\r\n !uiIsVisible && \"nz-hidden\",\r\n );\r\n return (\r\n <ToolWidgetComposer className={className}\r\n cornerItem={cornerButton}\r\n horizontalToolbar={<ToolbarComposer items={[]} usage={ToolbarUsage.ContentManipulation} orientation={ToolbarOrientation.Horizontal} />}\r\n verticalToolbar={<ToolbarComposer items={[]} usage={ToolbarUsage.ContentManipulation} orientation={ToolbarOrientation.Vertical} />}\r\n />\r\n );\r\n}\r\n"]}
|
|
@@ -12,7 +12,7 @@ const classnames_1 = require("classnames");
|
|
|
12
12
|
const React = require("react");
|
|
13
13
|
const appui_abstract_1 = require("@itwin/appui-abstract");
|
|
14
14
|
const ToolbarComposer_1 = require("../toolbar/ToolbarComposer");
|
|
15
|
-
const
|
|
15
|
+
const useUiVisibility_1 = require("../hooks/useUiVisibility");
|
|
16
16
|
const NavigationWidgetComposer_1 = require("./NavigationWidgetComposer");
|
|
17
17
|
/**
|
|
18
18
|
* ViewToolWidgetComposer composes a Navigation Widget with no tools defined by default. UiItemsProviders
|
|
@@ -28,7 +28,7 @@ const NavigationWidgetComposer_1 = require("./NavigationWidgetComposer");
|
|
|
28
28
|
* @public
|
|
29
29
|
*/
|
|
30
30
|
function ViewToolWidgetComposer(props) {
|
|
31
|
-
const uiIsVisible = (0,
|
|
31
|
+
const uiIsVisible = (0, useUiVisibility_1.useUiVisibility)();
|
|
32
32
|
// istanbul ignore next
|
|
33
33
|
const className = (0, classnames_1.default)(!uiIsVisible && "nz-hidden");
|
|
34
34
|
return (React.createElement(NavigationWidgetComposer_1.NavigationWidgetComposer, { className: className, hideNavigationAid: props.hideNavigationAid, horizontalToolbar: React.createElement(ToolbarComposer_1.ToolbarComposer, { items: [], usage: appui_abstract_1.ToolbarUsage.ViewNavigation, orientation: appui_abstract_1.ToolbarOrientation.Horizontal }), verticalToolbar: React.createElement(ToolbarComposer_1.ToolbarComposer, { items: [], usage: appui_abstract_1.ToolbarUsage.ViewNavigation, orientation: appui_abstract_1.ToolbarOrientation.Vertical }) }));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ViewToolWidgetComposer.js","sourceRoot":"","sources":["../../../../src/appui-react/widgets/ViewToolWidgetComposer.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,2CAAoC;AACpC,+BAA+B;AAC/B,0DAAyE;AACzE,gEAA6D;AAC7D,
|
|
1
|
+
{"version":3,"file":"ViewToolWidgetComposer.js","sourceRoot":"","sources":["../../../../src/appui-react/widgets/ViewToolWidgetComposer.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,2CAAoC;AACpC,+BAA+B;AAC/B,0DAAyE;AACzE,gEAA6D;AAC7D,8DAA2D;AAC3D,yEAAsE;AAWtE;;;;;;;;;;;;GAYG;AACH,SAAgB,sBAAsB,CAAC,KAAkC;IACvE,MAAM,WAAW,GAAG,IAAA,iCAAe,GAAE,CAAC;IACtC,uBAAuB;IACvB,MAAM,SAAS,GAAG,IAAA,oBAAU,EAC1B,CAAC,WAAW,IAAI,WAAW,CAC5B,CAAC;IAEF,OAAO,CACL,oBAAC,mDAAwB,IAAC,SAAS,EAAE,SAAS,EAAE,iBAAiB,EAAE,KAAK,CAAC,iBAAiB,EACxF,iBAAiB,EAAE,oBAAC,iCAAe,IAAC,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,6BAAY,CAAC,cAAc,EAAE,WAAW,EAAE,mCAAkB,CAAC,UAAU,GAAI,EACjI,eAAe,EAAE,oBAAC,iCAAe,IAAC,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,6BAAY,CAAC,cAAc,EAAE,WAAW,EAAE,mCAAkB,CAAC,QAAQ,GAAI,GAC7H,CACH,CAAC;AACJ,CAAC;AAbD,wDAaC","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 classnames from \"classnames\";\r\nimport * as React from \"react\";\r\nimport { ToolbarOrientation, ToolbarUsage } from \"@itwin/appui-abstract\";\r\nimport { ToolbarComposer } from \"../toolbar/ToolbarComposer\";\r\nimport { useUiVisibility } from \"../hooks/useUiVisibility\";\r\nimport { NavigationWidgetComposer } from \"./NavigationWidgetComposer\";\r\n\r\n/**\r\n * Props for [[ViewToolWidgetComposer]].\r\n * @public\r\n */\r\nexport interface ViewToolWidgetComposerProps {\r\n /** If true no navigation aid will be shown. Defaults to false. */\r\n hideNavigationAid?: boolean;\r\n}\r\n\r\n/**\r\n * ViewToolWidgetComposer composes a Navigation Widget with no tools defined by default. UiItemsProviders\r\n * must be used to provide tools to populate the toolbars. See [[StandardNavigationToolsProvider]].\r\n * @example\r\n * ```\r\n * <ViewToolWidgetComposer />\r\n * ```\r\n * If no NavigationAid control is to be shown set hideNavigationAid.\r\n * * ```\r\n * <ViewToolWidgetComposer hideNavigationAid />\r\n * ```\r\n * @public\r\n */\r\nexport function ViewToolWidgetComposer(props: ViewToolWidgetComposerProps) {\r\n const uiIsVisible = useUiVisibility();\r\n // istanbul ignore next\r\n const className = classnames(\r\n !uiIsVisible && \"nz-hidden\",\r\n );\r\n\r\n return (\r\n <NavigationWidgetComposer className={className} hideNavigationAid={props.hideNavigationAid}\r\n horizontalToolbar={<ToolbarComposer items={[]} usage={ToolbarUsage.ViewNavigation} orientation={ToolbarOrientation.Horizontal} />}\r\n verticalToolbar={<ToolbarComposer items={[]} usage={ToolbarUsage.ViewNavigation} orientation={ToolbarOrientation.Vertical} />}\r\n />\r\n );\r\n}\r\n"]}
|
package/lib/cjs/appui-react.d.ts
CHANGED
|
@@ -68,6 +68,7 @@ export * from "./appui-react/hooks/useAnalysisAnimationDataProvider";
|
|
|
68
68
|
export * from "./appui-react/hooks/useFrameworkVersion";
|
|
69
69
|
export * from "./appui-react/hooks/useScheduleAnimationDataProvider";
|
|
70
70
|
export * from "./appui-react/hooks/useSolarDataProvider";
|
|
71
|
+
export * from "./appui-react/hooks/useUiVisibility";
|
|
71
72
|
export * from "./appui-react/imodel-components/spatial-tree/SpatialContainmentTree";
|
|
72
73
|
export * from "./appui-react/imodel-components/category-tree/CategoriesTree";
|
|
73
74
|
export * from "./appui-react/imodel-components/category-tree/CategoryVisibilityHandler";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"appui-react.d.ts","sourceRoot":"","sources":["../../src/appui-react.ts"],"names":[],"mappings":"AAOA,cAAc,2BAA2B,CAAC;AAE1C,cAAc,6CAA6C,CAAC;AAC5D,cAAc,uCAAuC,CAAC;AACtD,cAAc,kDAAkD,CAAC;AACjE,cAAc,6CAA6C,CAAC;AAC5D,cAAc,2CAA2C,CAAC;AAC1D,cAAc,uCAAuC,CAAC;AACtD,cAAc,mCAAmC,CAAC;AAClD,cAAc,yCAAyC,CAAC;AACxD,cAAc,wCAAwC,CAAC;AACvD,cAAc,0CAA0C,CAAC;AACzD,cAAc,mCAAmC,CAAC;AAClD,cAAc,wCAAwC,CAAC;AAEvD,cAAc,mCAAmC,CAAC;AAClD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,+CAA+C,CAAC;AAC9D,cAAc,4CAA4C,CAAC;AAC3D,cAAc,gDAAgD,CAAC;AAC/D,cAAc,0CAA0C,CAAC;AACzD,cAAc,uCAAuC,CAAC;AACtD,cAAc,0CAA0C,CAAC;AACzD,cAAc,mCAAmC,CAAC;AAClD,cAAc,kDAAkD,CAAC;AACjE,cAAc,oCAAoC,CAAC;AACnD,cAAc,0DAA0D,CAAC;AAEzE,cAAc,oDAAoD,CAAC;AACnE,cAAc,oDAAoD,CAAC;AACnE,cAAc,oDAAoD,CAAC;AACnE,cAAc,oCAAoC,CAAC;AAEnD,cAAc,sCAAsC,CAAC;AACrD,cAAc,oCAAoC,CAAC;AACnD,cAAc,qCAAqC,CAAC;AACpD,cAAc,4CAA4C,CAAC;AAC3D,cAAc,0CAA0C,CAAC;AACzD,cAAc,uCAAuC,CAAC;AACtD,cAAc,0CAA0C,CAAC;AACzD,cAAc,8CAA8C,CAAC;AAC7D,cAAc,sCAAsC,CAAC;AACrD,cAAc,0CAA0C,CAAC;AACzD,cAAc,4CAA4C,CAAC;AAE3D,cAAc,wCAAwC,CAAC;AACvD,cAAc,gDAAgD,CAAC;AAC/D,cAAc,8CAA8C,CAAC;AAC7D,cAAc,qDAAqD,CAAC;AACpE,cAAc,4CAA4C,CAAC;AAE3D,cAAc,wCAAwC,CAAC;AACvD,cAAc,yCAAyC,CAAC;AACxD,cAAc,qCAAqC,CAAC;AACpD,cAAc,4CAA4C,CAAC;AAC3D,cAAc,yCAAyC,CAAC;AACxD,cAAc,2CAA2C,CAAC;AAE1D,cAAc,0CAA0C,CAAC;AACzD,cAAc,uCAAuC,CAAC;AAEtD,cAAc,qCAAqC,CAAC;AACpD,cAAc,6CAA6C,CAAC;AAC5D,cAAc,wCAAwC,CAAC;AACvD,cAAc,4CAA4C,CAAC;AAC3D,cAAc,6CAA6C,CAAC;AAC5D,cAAc,2CAA2C,CAAC;AAC1D,cAAc,0CAA0C,CAAC;AACzD,cAAc,6CAA6C,CAAC;AAC5D,cAAc,qDAAqD,CAAC;AAEpE,cAAc,+CAA+C,CAAC;AAC9D,cAAc,sCAAsC,CAAC;AACrD,cAAc,uCAAuC,CAAC;AACtD,cAAc,kDAAkD,CAAC;AACjE,cAAc,sDAAsD,CAAC;AACrE,cAAc,yCAAyC,CAAC;AACxD,cAAc,sDAAsD,CAAC;AACrE,cAAc,0CAA0C,CAAC;
|
|
1
|
+
{"version":3,"file":"appui-react.d.ts","sourceRoot":"","sources":["../../src/appui-react.ts"],"names":[],"mappings":"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"}
|
package/lib/cjs/appui-react.js
CHANGED
|
@@ -85,6 +85,7 @@ __exportStar(require("./appui-react/hooks/useAnalysisAnimationDataProvider"), ex
|
|
|
85
85
|
__exportStar(require("./appui-react/hooks/useFrameworkVersion"), exports);
|
|
86
86
|
__exportStar(require("./appui-react/hooks/useScheduleAnimationDataProvider"), exports);
|
|
87
87
|
__exportStar(require("./appui-react/hooks/useSolarDataProvider"), exports);
|
|
88
|
+
__exportStar(require("./appui-react/hooks/useUiVisibility"), exports);
|
|
88
89
|
__exportStar(require("./appui-react/imodel-components/spatial-tree/SpatialContainmentTree"), exports);
|
|
89
90
|
__exportStar(require("./appui-react/imodel-components/category-tree/CategoriesTree"), exports);
|
|
90
91
|
__exportStar(require("./appui-react/imodel-components/category-tree/CategoryVisibilityHandler"), exports);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"appui-react.js","sourceRoot":"","sources":["../../src/appui-react.ts"],"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\r\n// cSpell:ignore safearea cursormenu clientservices oidc Textbox Modeless configurableui stagepanels dragdrop uiadmin itemsarbiter Popout\r\n\r\nexport * from \"./appui-react/UiFramework\"; // Please ensure that this line comes before all other exports.\r\n\r\nexport * from \"./appui-react/accudraw/AccuDrawCommandItems\";\r\nexport * from \"./appui-react/accudraw/AccuDrawDialog\";\r\nexport * from \"./appui-react/accudraw/AccuDrawKeyboardShortcuts\";\r\nexport * from \"./appui-react/accudraw/AccuDrawPopupManager\";\r\nexport * from \"./appui-react/accudraw/AccuDrawUiSettings\";\r\nexport * from \"./appui-react/accudraw/AccuDrawWidget\";\r\nexport * from \"./appui-react/accudraw/Calculator\";\r\nexport * from \"./appui-react/accudraw/CalculatorEngine\";\r\nexport * from \"./appui-react/accudraw/CalculatorPopup\";\r\nexport * from \"./appui-react/accudraw/FrameworkAccuDraw\";\r\nexport * from \"./appui-react/accudraw/MenuButton\";\r\nexport * from \"./appui-react/accudraw/MenuButtonPopup\";\r\n\r\nexport * from \"./appui-react/backstage/Backstage\";\r\nexport * from \"./appui-react/backstage/BackstageComposer\";\r\nexport * from \"./appui-react/backstage/BackstageComposerItem\";\r\nexport * from \"./appui-react/backstage/BackstageItemProps\";\r\nexport * from \"./appui-react/backstage/BackstageItemUtilities\";\r\nexport * from \"./appui-react/backstage/BackstageManager\";\r\nexport * from \"./appui-react/backstage/CommandLaunch\";\r\nexport * from \"./appui-react/backstage/FrontstageLaunch\";\r\nexport * from \"./appui-react/backstage/Separator\";\r\nexport * from \"./appui-react/backstage/useDefaultBackstageItems\";\r\nexport * from \"./appui-react/backstage/TaskLaunch\";\r\nexport * from \"./appui-react/backstage/useUiItemsProviderBackstageItems\";\r\n\r\nexport * from \"./appui-react/configurableui/ConfigurableUiContent\";\r\nexport * from \"./appui-react/configurableui/ConfigurableUiControl\";\r\nexport * from \"./appui-react/configurableui/ConfigurableUiManager\";\r\nexport * from \"./appui-react/configurableui/state\";\r\n\r\nexport * from \"./appui-react/content/ContentControl\";\r\nexport * from \"./appui-react/content/ContentGroup\";\r\nexport * from \"./appui-react/content/ContentLayout\";\r\nexport * from \"./appui-react/content/ContentLayoutManager\";\r\nexport * from \"./appui-react/content/ContentViewManager\";\r\nexport * from \"./appui-react/content/ViewStateHelper\";\r\nexport * from \"./appui-react/content/StageContentLayout\";\r\nexport * from \"./appui-react/content/ViewportContentControl\";\r\nexport * from \"./appui-react/content/IModelViewport\";\r\nexport * from \"./appui-react/content/DefaultViewOverlay\";\r\nexport * from \"./appui-react/content/split-pane/SplitPane\";\r\n\r\nexport * from \"./appui-react/cursor/CursorInformation\";\r\nexport * from \"./appui-react/cursor/cursorprompt/CursorPrompt\";\r\nexport * from \"./appui-react/cursor/cursorpopup/CursorPopup\";\r\nexport * from \"./appui-react/cursor/cursorpopup/CursorPopupManager\";\r\nexport * from \"./appui-react/cursor/cursormenu/CursorMenu\";\r\n\r\nexport * from \"./appui-react/dialog/DialogManagerBase\";\r\nexport * from \"./appui-react/dialog/ModalDialogManager\";\r\nexport * from \"./appui-react/dialog/ModelessDialog\";\r\nexport * from \"./appui-react/dialog/ModelessDialogManager\";\r\nexport * from \"./appui-react/dialog/StandardMessageBox\";\r\nexport * from \"./appui-react/dialog/UiDataProvidedDialog\";\r\n\r\nexport * from \"./appui-react/feedback/ValidationTextbox\";\r\nexport * from \"./appui-react/feedback/ElementTooltip\";\r\n\r\nexport * from \"./appui-react/frontstage/Frontstage\";\r\nexport * from \"./appui-react/frontstage/FrontstageComposer\";\r\nexport * from \"./appui-react/frontstage/FrontstageDef\";\r\nexport * from \"./appui-react/frontstage/FrontstageManager\";\r\nexport * from \"./appui-react/frontstage/FrontstageProvider\";\r\nexport * from \"./appui-react/frontstage/NestedFrontstage\";\r\nexport * from \"./appui-react/frontstage/ModalFrontstage\";\r\nexport * from \"./appui-react/frontstage/ModalSettingsStage\";\r\nexport * from \"./appui-react/frontstage/StandardFrontstageProvider\";\r\n\r\nexport * from \"./appui-react/hooks/useActiveIModelConnection\";\r\nexport * from \"./appui-react/hooks/useActiveStageId\";\r\nexport * from \"./appui-react/hooks/useActiveViewport\";\r\nexport * from \"./appui-react/hooks/useAvailableUiItemsProviders\";\r\nexport * from \"./appui-react/hooks/useAnalysisAnimationDataProvider\";\r\nexport * from \"./appui-react/hooks/useFrameworkVersion\";\r\nexport * from \"./appui-react/hooks/useScheduleAnimationDataProvider\";\r\nexport * from \"./appui-react/hooks/useSolarDataProvider\";\r\n\r\nexport * from \"./appui-react/imodel-components/spatial-tree/SpatialContainmentTree\";\r\nexport * from \"./appui-react/imodel-components/category-tree/CategoriesTree\";\r\nexport * from \"./appui-react/imodel-components/category-tree/CategoryVisibilityHandler\";\r\nexport * from \"./appui-react/imodel-components/models-tree/ModelsTree\";\r\nexport * from \"./appui-react/imodel-components/models-tree/ModelsVisibilityHandler\";\r\nexport * from \"./appui-react/imodel-components/Common\";\r\nexport * from \"./appui-react/imodel-components/VisibilityTreeEventHandler\";\r\nexport * from \"./appui-react/imodel-components/VisibilityTreeRenderer\";\r\n\r\nexport * from \"./appui-react/keyboardshortcut/KeyboardShortcut\";\r\nexport * from \"./appui-react/keyboardshortcut/KeyboardShortcutMenu\";\r\nexport * from \"./appui-react/keyinbrowser/KeyinBrowser\";\r\n\r\nexport * from \"./appui-react/messages/ActivityMessage\";\r\nexport * from \"./appui-react/messages/ActivityMessagePopup\";\r\nexport * from \"./appui-react/messages/AppNotificationManager\";\r\nexport * from \"./appui-react/messages/InputField\";\r\nexport * from \"./appui-react/messages/MessageManager\";\r\nexport * from \"./appui-react/messages/StatusMessageRenderer\";\r\nexport * from \"./appui-react/messages/Pointer\";\r\nexport * from \"./appui-react/messages/ReactNotifyMessageDetails\";\r\nexport * from \"./appui-react/messages/StickyMessage\";\r\nexport * from \"./appui-react/messages/ToastMessage\";\r\n\r\nexport * from \"./appui-react/navigationaids/CubeNavigationAidControl\";\r\nexport * from \"./appui-react/navigationaids/DrawingNavigationAidControl\";\r\nexport * from \"./appui-react/navigationaids/NavigationAidControl\";\r\nexport * from \"./appui-react/navigationaids/SheetNavigationAid\";\r\nexport * from \"./appui-react/navigationaids/SheetsModalFrontstage\";\r\nexport * from \"./appui-react/navigationaids/StandardRotationNavigationAid\";\r\n\r\nexport * from \"./appui-react/pickers/ListPicker\";\r\nexport * from \"./appui-react/pickers/ViewSelector\";\r\n\r\nexport * from \"./appui-react/childwindow/ChildWindowManager\";\r\n\r\nexport * from \"./appui-react/popup/KeyinPalettePanel\";\r\nexport * from \"./appui-react/popup/KeyinPalettePopup\";\r\nexport * from \"./appui-react/popup/HTMLElementPopup\";\r\nexport * from \"./appui-react/popup/InputEditorPopup\";\r\nexport * from \"./appui-react/popup/PopupManager\";\r\nexport * from \"./appui-react/popup/PositionPopup\";\r\nexport * from \"./appui-react/popup/ToolbarPopup\";\r\n\r\nexport * from \"./appui-react/redux/SessionState\";\r\nexport * from \"./appui-react/redux/StateManager\";\r\nexport * from \"./appui-react/redux/FrameworkState\";\r\nexport * from \"./appui-react/redux/connectIModel\";\r\nexport * from \"./appui-react/redux/ReducerRegistry\";\r\nexport * from \"./appui-react/redux/redux-ts\";\r\n\r\nexport * from \"./appui-react/safearea/SafeAreaContext\";\r\n\r\nexport * from \"./appui-react/selection/SelectionContextItemDef\";\r\nexport * from \"./appui-react/selection/HideIsolateEmphasizeManager\";\r\nexport * from \"./appui-react/selection/ClearEmphasisStatusField\";\r\n\r\nexport * from \"./appui-react/settings/ui/UiSettingsPage\";\r\nexport * from \"./appui-react/settings/quantityformatting/QuantityFormat\";\r\nexport * from \"./appui-react/settings/quantityformatting/UnitSystemSelector\";\r\n\r\nexport * from \"./appui-react/shared/ActionButtonItemDef\";\r\nexport * from \"./appui-react/shared/AnyItemDef\";\r\nexport * from \"./appui-react/shared/AnyToolbarItemDef\";\r\nexport * from \"./appui-react/shared/CommandItemDef\";\r\nexport * from \"./appui-react/shared/CustomItemDef\";\r\nexport * from \"./appui-react/shared/CustomItemProps\";\r\nexport * from \"./appui-react/shared/GroupItemProps\";\r\nexport * from \"./appui-react/shared/ItemDefBase\";\r\nexport * from \"./appui-react/shared/ItemMap\";\r\nexport * from \"./appui-react/shared/ItemProps\";\r\nexport * from \"./appui-react/shared/MenuItem\";\r\nexport * from \"./appui-react/shared/SelectionScope\";\r\nexport * from \"./appui-react/shared/ToolItemDef\";\r\n\r\nexport * from \"./appui-react/stagepanels/FrameworkStagePanel\";\r\nexport * from \"./appui-react/stagepanels/StagePanel\";\r\nexport * from \"./appui-react/stagepanels/StagePanelDef\";\r\nexport * from \"./appui-react/stagepanels/StagePanelHeader\";\r\n\r\nexport * from \"./appui-react/statusbar/StatusBar\";\r\nexport * from \"./appui-react/statusbar/StatusBarWidgetControl\";\r\nexport * from \"./appui-react/statusbar/StatusBarComposer\";\r\nexport * from \"./appui-react/statusbar/StatusBarItem\";\r\nexport * from \"./appui-react/statusbar/StatusBarItemsManager\";\r\nexport * from \"./appui-react/statusbar/StatusBarItemUtilities\";\r\nexport * from \"./appui-react/statusbar/StatusBarComposer\";\r\nexport * from \"./appui-react/statusbar/withMessageCenterFieldProps\";\r\nexport * from \"./appui-react/statusbar/useUiItemsProviderStatusBarItems\";\r\nexport * from \"./appui-react/statusbar/useDefaultStatusBarItems\";\r\nexport * from \"./appui-react/statusbar/withStatusFieldProps\";\r\n\r\nexport * from \"./appui-react/statusfields/tileloading/TileLoadingIndicator\";\r\nexport * from \"./appui-react/statusfields/ActivityCenter\";\r\nexport * from \"./appui-react/statusfields/ConditionalField\";\r\nexport * from \"./appui-react/statusfields/FooterModeField\";\r\nexport * from \"./appui-react/statusfields/Indicator\";\r\nexport * from \"./appui-react/statusfields/MessageCenter\";\r\nexport * from \"./appui-react/statusfields/PromptField\";\r\nexport * from \"./appui-react/statusfields/SectionsField\";\r\nexport * from \"./appui-react/statusfields/SelectionInfo\";\r\nexport * from \"./appui-react/statusfields/SelectionScope\";\r\nexport * from \"./appui-react/statusfields/SnapMode\";\r\nexport * from \"./appui-react/statusfields/StatusFieldProps\";\r\nexport * from \"./appui-react/statusfields/ViewAttributes\";\r\nexport * from \"./appui-react/statusfields/toolassistance/ToolAssistanceField\";\r\n\r\nexport * from \"./appui-react/syncui/SyncUiEventDispatcher\";\r\nexport * from \"./appui-react/syncui/BooleanListener\";\r\n\r\nexport * from \"./appui-react/theme/ThemeManager\";\r\n\r\nexport * from \"./appui-react/timeline/ScheduleAnimationProvider\";\r\nexport * from \"./appui-react/timeline/AnalysisAnimationProvider\";\r\nexport * from \"./appui-react/timeline/SolarTimelineDataProvider\";\r\n\r\nexport * from \"./appui-react/toolbar/ActionButtonItem\";\r\nexport * from \"./appui-react/toolbar/ActionItemButton\";\r\nexport * from \"./appui-react/toolbar/DragInteraction\";\r\nexport * from \"./appui-react/toolbar/ToolbarComposer\";\r\nexport * from \"./appui-react/toolbar/GroupButtonItem\";\r\nexport * from \"./appui-react/toolbar/GroupItem\";\r\nexport * from \"./appui-react/toolbar/PopupButton\";\r\nexport * from \"./appui-react/toolbar/Toolbar\";\r\nexport * from \"./appui-react/toolbar/ToolbarHelper\";\r\nexport * from \"./appui-react/toolbar/ToolButton\";\r\nexport * from \"./appui-react/toolbar/useUiItemsProviderToolbarItems\";\r\nexport * from \"./appui-react/toolbar/useDefaultToolbarItems\";\r\n\r\nexport * from \"./appui-react/tools/CoreToolDefinitions\";\r\nexport * from \"./appui-react/tools/FrameworkToolAdmin\";\r\nexport * from \"./appui-react/tools/MarkupToolDefinitions\";\r\nexport * from \"./appui-react/tools/RestoreLayoutTool\";\r\nexport * from \"./appui-react/tools/ToolSettingsTools\";\r\n\r\nexport * from \"./appui-react/uiadmin/FrameworkUiAdmin\";\r\n\r\nexport * from \"./appui-react/ui-items-provider/StandardContentToolsProvider\";\r\nexport * from \"./appui-react/ui-items-provider/StandardNavigationToolsProvider\";\r\nexport * from \"./appui-react/ui-items-provider/StandardStatusbarItemsProvider\";\r\nexport * from \"./appui-react/uiprovider/DefaultDialogGridContainer\";\r\n\r\nexport * from \"./appui-react/uistate/AppUiSettings\";\r\nexport * from \"./appui-react/uistate/UserSettingsStorage\";\r\nexport * from \"./appui-react/uistate/useUiStateStorage\";\r\n\r\nexport * from \"./appui-react/utils/ViewUtilities\";\r\nexport * from \"./appui-react/utils/PropsHelper\";\r\nexport * from \"./appui-react/utils/UiShowHideManager\";\r\nexport * from \"./appui-react/utils/ToolbarButtonHelper\";\r\n\r\nexport * from \"./appui-react/widget-panels/Content\";\r\nexport * from \"./appui-react/widget-panels/Frontstage\";\r\nexport * from \"./appui-react/widget-panels/FrontstageContent\";\r\nexport * from \"./appui-react/widget-panels/ModalFrontstageComposer\";\r\nexport * from \"./appui-react/widget-panels/StatusBar\";\r\nexport * from \"./appui-react/widget-panels/Tab\";\r\nexport * from \"./appui-react/widget-panels/Toolbars\";\r\nexport * from \"./appui-react/widget-panels/ToolSettings\";\r\nexport * from \"./appui-react/widget-panels/useWidgetDirection\";\r\n\r\nexport * from \"./appui-react/widgets/BackstageAppButton\";\r\nexport * from \"./appui-react/widgets/BasicNavigationWidget\";\r\nexport * from \"./appui-react/widgets/BasicToolWidget\";\r\nexport * from \"./appui-react/widgets/DefaultNavigationWidget\";\r\nexport * from \"./appui-react/widgets/NavigationWidget\";\r\nexport * from \"./appui-react/widgets/NavigationWidgetComposer\";\r\nexport * from \"./appui-react/widgets/ReviewToolWidget\";\r\nexport * from \"./appui-react/widgets/ViewToolWidgetComposer\";\r\nexport * from \"./appui-react/widgets/StatusBarWidgetComposerControl\";\r\nexport * from \"./appui-react/widgets/ContentToolWidgetComposer\";\r\nexport * from \"./appui-react/widgets/StableWidgetDef\";\r\nexport * from \"./appui-react/widgets/ToolbarWidgetBase\";\r\nexport * from \"./appui-react/widgets/ToolWidget\";\r\nexport * from \"./appui-react/widgets/ToolWidgetComposer\";\r\nexport * from \"./appui-react/widgets/Widget\";\r\nexport * from \"./appui-react/widgets/WidgetControl\";\r\nexport * from \"./appui-react/widgets/WidgetDef\";\r\nexport * from \"./appui-react/widgets/WidgetHost\";\r\nexport * from \"./appui-react/widgets/WidgetManager\";\r\nexport * from \"./appui-react/widgets/WidgetProps\";\r\nexport * from \"./appui-react/widgets/WidgetStack\";\r\n\r\nexport * from \"./appui-react/workflow/Task\";\r\nexport * from \"./appui-react/workflow/Workflow\";\r\n\r\nexport * from \"./appui-react/zones/FrameworkZone\";\r\nexport * from \"./appui-react/zones/StatusBarZone\";\r\nexport * from \"./appui-react/zones/toolsettings/ToolSettingsZone\";\r\nexport * from \"./appui-react/zones/toolsettings/ToolInformation\";\r\nexport * from \"./appui-react/zones/toolsettings/ToolSettingsManager\";\r\nexport * from \"./appui-react/zones/toolsettings/ToolUiProvider\";\r\nexport * from \"./appui-react/zones/toolsettings/DefaultToolSettingsProvider\";\r\nexport * from \"./appui-react/zones/Zone\";\r\nexport * from \"./appui-react/zones/ZoneDef\";\r\n\r\n/** @docs-package-description\r\n * The ui-framework package contains classes and components for specifying the application UI consisting of the\r\n * Backstage, Frontstages, Content Views, Tool Bars, Status Bars, Widgets and Panels.\r\n * For more information, see [learning about appui-react]($docs/learning/ui/appui-react/index.md).\r\n */\r\n/**\r\n * @docs-group-description AccuDraw\r\n * Classes and components providing a UI for AccuDraw, an aide for entering coordinate data.\r\n */\r\n/**\r\n * @docs-group-description Admin\r\n * APIs for various UI components, such as toolbars, buttons and menus.\r\n */\r\n/**\r\n * @docs-group-description Backstage\r\n * Classes for working with a Backstage\r\n */\r\n/**\r\n * @docs-group-description ConfigurableUi\r\n * Classes for working with the Application UI Configuration\r\n */\r\n/**\r\n * @docs-group-description ContentView\r\n * Classes for working with a Content View, Group, Layout or Control\r\n */\r\n/**\r\n * @docs-group-description Cursor\r\n * Cursor related information, components and events\r\n */\r\n/**\r\n * @docs-group-description Dialog\r\n * Classes for working with a dialog\r\n */\r\n/**\r\n * @docs-group-description Frontstage\r\n * Classes for working with a Frontstage\r\n */\r\n/**\r\n * @docs-group-description Hooks\r\n * Hook functions for use in Functional React Components.\r\n */\r\n/**\r\n * @docs-group-description IModelComponents\r\n * Classes for displaying information about an iModel\r\n */\r\n/**\r\n * @docs-group-description Item\r\n * Classes for working with an Item in a Tool Widget, Navigation Widget or Backstage\r\n */\r\n/**\r\n * @docs-group-description KeyboardShortcut\r\n * Classes for working with Keyboard Shortcuts\r\n */\r\n/**\r\n * @docs-group-description NavigationAids\r\n * Classes for working with Navigation Aids\r\n */\r\n/**\r\n * @docs-group-description Notification\r\n * Classes for working with a Notification or Message\r\n */\r\n/**\r\n * @docs-group-description ChildWindowManager\r\n * Classes for working with child windows.\r\n */\r\n/**\r\n * @docs-group-description Picker\r\n * Classes for working with various pickers\r\n */\r\n/**\r\n * @docs-group-description Popup\r\n * Classes for working with popup components\r\n */\r\n/**\r\n * @docs-group-description State\r\n * Classes for maintaining state\r\n */\r\n/**\r\n * @docs-group-description Settings\r\n * Classes and components used by settings pages displayed in the modal settings stage\r\n */\r\n/**\r\n * @docs-group-description StandardUiItemsProvider\r\n * Standard UiItemsProvider classes.\r\n */\r\n/**\r\n * @docs-group-description StatusBar\r\n * Classes for defining a StatusBar\r\n */\r\n/**\r\n * @docs-group-description SyncUi\r\n * Classes for informing UI components to sync/refresh their display\r\n */\r\n/**\r\n * @docs-group-description Timeline\r\n * Classes for working with a TimelineComponent\r\n */\r\n/**\r\n * @docs-group-description Toolbar\r\n * Classes used to construct a Toolbar\r\n */\r\n/**\r\n * @docs-group-description Tools\r\n * Core Tool definitions\r\n */\r\n/**\r\n * @docs-group-description ToolSettings\r\n * Classes for working Tool Settings. See learning documentation [Tool Settings]($docs/learning/ui/appui-react/toolsettings.md).\r\n */\r\n/**\r\n * @docs-group-description UiProvider\r\n * Interfaces and classes for specifying UI items to be inserted at runtime.\r\n */\r\n/**\r\n * @docs-group-description UiStateStorage\r\n * Interfaces and classes for persisting UI settings.\r\n */\r\n/**\r\n * @docs-group-description Utilities\r\n * Various utility classes for working with a UI and Redux.\r\n */\r\n/**\r\n * @docs-group-description Widget\r\n * Classes for working with a Widget\r\n */\r\n/**\r\n * @docs-group-description Zone\r\n * Classes for working with a Zone\r\n */\r\n"]}
|
|
1
|
+
{"version":3,"file":"appui-react.js","sourceRoot":"","sources":["../../src/appui-react.ts"],"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\r\n// cSpell:ignore safearea cursormenu clientservices oidc Textbox Modeless configurableui stagepanels dragdrop uiadmin itemsarbiter Popout\r\n\r\nexport * from \"./appui-react/UiFramework\"; // Please ensure that this line comes before all other exports.\r\n\r\nexport * from \"./appui-react/accudraw/AccuDrawCommandItems\";\r\nexport * from \"./appui-react/accudraw/AccuDrawDialog\";\r\nexport * from \"./appui-react/accudraw/AccuDrawKeyboardShortcuts\";\r\nexport * from \"./appui-react/accudraw/AccuDrawPopupManager\";\r\nexport * from \"./appui-react/accudraw/AccuDrawUiSettings\";\r\nexport * from \"./appui-react/accudraw/AccuDrawWidget\";\r\nexport * from \"./appui-react/accudraw/Calculator\";\r\nexport * from \"./appui-react/accudraw/CalculatorEngine\";\r\nexport * from \"./appui-react/accudraw/CalculatorPopup\";\r\nexport * from \"./appui-react/accudraw/FrameworkAccuDraw\";\r\nexport * from \"./appui-react/accudraw/MenuButton\";\r\nexport * from \"./appui-react/accudraw/MenuButtonPopup\";\r\n\r\nexport * from \"./appui-react/backstage/Backstage\";\r\nexport * from \"./appui-react/backstage/BackstageComposer\";\r\nexport * from \"./appui-react/backstage/BackstageComposerItem\";\r\nexport * from \"./appui-react/backstage/BackstageItemProps\";\r\nexport * from \"./appui-react/backstage/BackstageItemUtilities\";\r\nexport * from \"./appui-react/backstage/BackstageManager\";\r\nexport * from \"./appui-react/backstage/CommandLaunch\";\r\nexport * from \"./appui-react/backstage/FrontstageLaunch\";\r\nexport * from \"./appui-react/backstage/Separator\";\r\nexport * from \"./appui-react/backstage/useDefaultBackstageItems\";\r\nexport * from \"./appui-react/backstage/TaskLaunch\";\r\nexport * from \"./appui-react/backstage/useUiItemsProviderBackstageItems\";\r\n\r\nexport * from \"./appui-react/configurableui/ConfigurableUiContent\";\r\nexport * from \"./appui-react/configurableui/ConfigurableUiControl\";\r\nexport * from \"./appui-react/configurableui/ConfigurableUiManager\";\r\nexport * from \"./appui-react/configurableui/state\";\r\n\r\nexport * from \"./appui-react/content/ContentControl\";\r\nexport * from \"./appui-react/content/ContentGroup\";\r\nexport * from \"./appui-react/content/ContentLayout\";\r\nexport * from \"./appui-react/content/ContentLayoutManager\";\r\nexport * from \"./appui-react/content/ContentViewManager\";\r\nexport * from \"./appui-react/content/ViewStateHelper\";\r\nexport * from \"./appui-react/content/StageContentLayout\";\r\nexport * from \"./appui-react/content/ViewportContentControl\";\r\nexport * from \"./appui-react/content/IModelViewport\";\r\nexport * from \"./appui-react/content/DefaultViewOverlay\";\r\nexport * from \"./appui-react/content/split-pane/SplitPane\";\r\n\r\nexport * from \"./appui-react/cursor/CursorInformation\";\r\nexport * from \"./appui-react/cursor/cursorprompt/CursorPrompt\";\r\nexport * from \"./appui-react/cursor/cursorpopup/CursorPopup\";\r\nexport * from \"./appui-react/cursor/cursorpopup/CursorPopupManager\";\r\nexport * from \"./appui-react/cursor/cursormenu/CursorMenu\";\r\n\r\nexport * from \"./appui-react/dialog/DialogManagerBase\";\r\nexport * from \"./appui-react/dialog/ModalDialogManager\";\r\nexport * from \"./appui-react/dialog/ModelessDialog\";\r\nexport * from \"./appui-react/dialog/ModelessDialogManager\";\r\nexport * from \"./appui-react/dialog/StandardMessageBox\";\r\nexport * from \"./appui-react/dialog/UiDataProvidedDialog\";\r\n\r\nexport * from \"./appui-react/feedback/ValidationTextbox\";\r\nexport * from \"./appui-react/feedback/ElementTooltip\";\r\n\r\nexport * from \"./appui-react/frontstage/Frontstage\";\r\nexport * from \"./appui-react/frontstage/FrontstageComposer\";\r\nexport * from \"./appui-react/frontstage/FrontstageDef\";\r\nexport * from \"./appui-react/frontstage/FrontstageManager\";\r\nexport * from \"./appui-react/frontstage/FrontstageProvider\";\r\nexport * from \"./appui-react/frontstage/NestedFrontstage\";\r\nexport * from \"./appui-react/frontstage/ModalFrontstage\";\r\nexport * from \"./appui-react/frontstage/ModalSettingsStage\";\r\nexport * from \"./appui-react/frontstage/StandardFrontstageProvider\";\r\n\r\nexport * from \"./appui-react/hooks/useActiveIModelConnection\";\r\nexport * from \"./appui-react/hooks/useActiveStageId\";\r\nexport * from \"./appui-react/hooks/useActiveViewport\";\r\nexport * from \"./appui-react/hooks/useAvailableUiItemsProviders\";\r\nexport * from \"./appui-react/hooks/useAnalysisAnimationDataProvider\";\r\nexport * from \"./appui-react/hooks/useFrameworkVersion\";\r\nexport * from \"./appui-react/hooks/useScheduleAnimationDataProvider\";\r\nexport * from \"./appui-react/hooks/useSolarDataProvider\";\r\nexport * from \"./appui-react/hooks/useUiVisibility\";\r\n\r\nexport * from \"./appui-react/imodel-components/spatial-tree/SpatialContainmentTree\";\r\nexport * from \"./appui-react/imodel-components/category-tree/CategoriesTree\";\r\nexport * from \"./appui-react/imodel-components/category-tree/CategoryVisibilityHandler\";\r\nexport * from \"./appui-react/imodel-components/models-tree/ModelsTree\";\r\nexport * from \"./appui-react/imodel-components/models-tree/ModelsVisibilityHandler\";\r\nexport * from \"./appui-react/imodel-components/Common\";\r\nexport * from \"./appui-react/imodel-components/VisibilityTreeEventHandler\";\r\nexport * from \"./appui-react/imodel-components/VisibilityTreeRenderer\";\r\n\r\nexport * from \"./appui-react/keyboardshortcut/KeyboardShortcut\";\r\nexport * from \"./appui-react/keyboardshortcut/KeyboardShortcutMenu\";\r\nexport * from \"./appui-react/keyinbrowser/KeyinBrowser\";\r\n\r\nexport * from \"./appui-react/messages/ActivityMessage\";\r\nexport * from \"./appui-react/messages/ActivityMessagePopup\";\r\nexport * from \"./appui-react/messages/AppNotificationManager\";\r\nexport * from \"./appui-react/messages/InputField\";\r\nexport * from \"./appui-react/messages/MessageManager\";\r\nexport * from \"./appui-react/messages/StatusMessageRenderer\";\r\nexport * from \"./appui-react/messages/Pointer\";\r\nexport * from \"./appui-react/messages/ReactNotifyMessageDetails\";\r\nexport * from \"./appui-react/messages/StickyMessage\";\r\nexport * from \"./appui-react/messages/ToastMessage\";\r\n\r\nexport * from \"./appui-react/navigationaids/CubeNavigationAidControl\";\r\nexport * from \"./appui-react/navigationaids/DrawingNavigationAidControl\";\r\nexport * from \"./appui-react/navigationaids/NavigationAidControl\";\r\nexport * from \"./appui-react/navigationaids/SheetNavigationAid\";\r\nexport * from \"./appui-react/navigationaids/SheetsModalFrontstage\";\r\nexport * from \"./appui-react/navigationaids/StandardRotationNavigationAid\";\r\n\r\nexport * from \"./appui-react/pickers/ListPicker\";\r\nexport * from \"./appui-react/pickers/ViewSelector\";\r\n\r\nexport * from \"./appui-react/childwindow/ChildWindowManager\";\r\n\r\nexport * from \"./appui-react/popup/KeyinPalettePanel\";\r\nexport * from \"./appui-react/popup/KeyinPalettePopup\";\r\nexport * from \"./appui-react/popup/HTMLElementPopup\";\r\nexport * from \"./appui-react/popup/InputEditorPopup\";\r\nexport * from \"./appui-react/popup/PopupManager\";\r\nexport * from \"./appui-react/popup/PositionPopup\";\r\nexport * from \"./appui-react/popup/ToolbarPopup\";\r\n\r\nexport * from \"./appui-react/redux/SessionState\";\r\nexport * from \"./appui-react/redux/StateManager\";\r\nexport * from \"./appui-react/redux/FrameworkState\";\r\nexport * from \"./appui-react/redux/connectIModel\";\r\nexport * from \"./appui-react/redux/ReducerRegistry\";\r\nexport * from \"./appui-react/redux/redux-ts\";\r\n\r\nexport * from \"./appui-react/safearea/SafeAreaContext\";\r\n\r\nexport * from \"./appui-react/selection/SelectionContextItemDef\";\r\nexport * from \"./appui-react/selection/HideIsolateEmphasizeManager\";\r\nexport * from \"./appui-react/selection/ClearEmphasisStatusField\";\r\n\r\nexport * from \"./appui-react/settings/ui/UiSettingsPage\";\r\nexport * from \"./appui-react/settings/quantityformatting/QuantityFormat\";\r\nexport * from \"./appui-react/settings/quantityformatting/UnitSystemSelector\";\r\n\r\nexport * from \"./appui-react/shared/ActionButtonItemDef\";\r\nexport * from \"./appui-react/shared/AnyItemDef\";\r\nexport * from \"./appui-react/shared/AnyToolbarItemDef\";\r\nexport * from \"./appui-react/shared/CommandItemDef\";\r\nexport * from \"./appui-react/shared/CustomItemDef\";\r\nexport * from \"./appui-react/shared/CustomItemProps\";\r\nexport * from \"./appui-react/shared/GroupItemProps\";\r\nexport * from \"./appui-react/shared/ItemDefBase\";\r\nexport * from \"./appui-react/shared/ItemMap\";\r\nexport * from \"./appui-react/shared/ItemProps\";\r\nexport * from \"./appui-react/shared/MenuItem\";\r\nexport * from \"./appui-react/shared/SelectionScope\";\r\nexport * from \"./appui-react/shared/ToolItemDef\";\r\n\r\nexport * from \"./appui-react/stagepanels/FrameworkStagePanel\";\r\nexport * from \"./appui-react/stagepanels/StagePanel\";\r\nexport * from \"./appui-react/stagepanels/StagePanelDef\";\r\nexport * from \"./appui-react/stagepanels/StagePanelHeader\";\r\n\r\nexport * from \"./appui-react/statusbar/StatusBar\";\r\nexport * from \"./appui-react/statusbar/StatusBarWidgetControl\";\r\nexport * from \"./appui-react/statusbar/StatusBarComposer\";\r\nexport * from \"./appui-react/statusbar/StatusBarItem\";\r\nexport * from \"./appui-react/statusbar/StatusBarItemsManager\";\r\nexport * from \"./appui-react/statusbar/StatusBarItemUtilities\";\r\nexport * from \"./appui-react/statusbar/StatusBarComposer\";\r\nexport * from \"./appui-react/statusbar/withMessageCenterFieldProps\";\r\nexport * from \"./appui-react/statusbar/useUiItemsProviderStatusBarItems\";\r\nexport * from \"./appui-react/statusbar/useDefaultStatusBarItems\";\r\nexport * from \"./appui-react/statusbar/withStatusFieldProps\";\r\n\r\nexport * from \"./appui-react/statusfields/tileloading/TileLoadingIndicator\";\r\nexport * from \"./appui-react/statusfields/ActivityCenter\";\r\nexport * from \"./appui-react/statusfields/ConditionalField\";\r\nexport * from \"./appui-react/statusfields/FooterModeField\";\r\nexport * from \"./appui-react/statusfields/Indicator\";\r\nexport * from \"./appui-react/statusfields/MessageCenter\";\r\nexport * from \"./appui-react/statusfields/PromptField\";\r\nexport * from \"./appui-react/statusfields/SectionsField\";\r\nexport * from \"./appui-react/statusfields/SelectionInfo\";\r\nexport * from \"./appui-react/statusfields/SelectionScope\";\r\nexport * from \"./appui-react/statusfields/SnapMode\";\r\nexport * from \"./appui-react/statusfields/StatusFieldProps\";\r\nexport * from \"./appui-react/statusfields/ViewAttributes\";\r\nexport * from \"./appui-react/statusfields/toolassistance/ToolAssistanceField\";\r\n\r\nexport * from \"./appui-react/syncui/SyncUiEventDispatcher\";\r\nexport * from \"./appui-react/syncui/BooleanListener\";\r\n\r\nexport * from \"./appui-react/theme/ThemeManager\";\r\n\r\nexport * from \"./appui-react/timeline/ScheduleAnimationProvider\";\r\nexport * from \"./appui-react/timeline/AnalysisAnimationProvider\";\r\nexport * from \"./appui-react/timeline/SolarTimelineDataProvider\";\r\n\r\nexport * from \"./appui-react/toolbar/ActionButtonItem\";\r\nexport * from \"./appui-react/toolbar/ActionItemButton\";\r\nexport * from \"./appui-react/toolbar/DragInteraction\";\r\nexport * from \"./appui-react/toolbar/ToolbarComposer\";\r\nexport * from \"./appui-react/toolbar/GroupButtonItem\";\r\nexport * from \"./appui-react/toolbar/GroupItem\";\r\nexport * from \"./appui-react/toolbar/PopupButton\";\r\nexport * from \"./appui-react/toolbar/Toolbar\";\r\nexport * from \"./appui-react/toolbar/ToolbarHelper\";\r\nexport * from \"./appui-react/toolbar/ToolButton\";\r\nexport * from \"./appui-react/toolbar/useUiItemsProviderToolbarItems\";\r\nexport * from \"./appui-react/toolbar/useDefaultToolbarItems\";\r\n\r\nexport * from \"./appui-react/tools/CoreToolDefinitions\";\r\nexport * from \"./appui-react/tools/FrameworkToolAdmin\";\r\nexport * from \"./appui-react/tools/MarkupToolDefinitions\";\r\nexport * from \"./appui-react/tools/RestoreLayoutTool\";\r\nexport * from \"./appui-react/tools/ToolSettingsTools\";\r\n\r\nexport * from \"./appui-react/uiadmin/FrameworkUiAdmin\";\r\n\r\nexport * from \"./appui-react/ui-items-provider/StandardContentToolsProvider\";\r\nexport * from \"./appui-react/ui-items-provider/StandardNavigationToolsProvider\";\r\nexport * from \"./appui-react/ui-items-provider/StandardStatusbarItemsProvider\";\r\nexport * from \"./appui-react/uiprovider/DefaultDialogGridContainer\";\r\n\r\nexport * from \"./appui-react/uistate/AppUiSettings\";\r\nexport * from \"./appui-react/uistate/UserSettingsStorage\";\r\nexport * from \"./appui-react/uistate/useUiStateStorage\";\r\n\r\nexport * from \"./appui-react/utils/ViewUtilities\";\r\nexport * from \"./appui-react/utils/PropsHelper\";\r\nexport * from \"./appui-react/utils/UiShowHideManager\";\r\nexport * from \"./appui-react/utils/ToolbarButtonHelper\";\r\n\r\nexport * from \"./appui-react/widget-panels/Content\";\r\nexport * from \"./appui-react/widget-panels/Frontstage\";\r\nexport * from \"./appui-react/widget-panels/FrontstageContent\";\r\nexport * from \"./appui-react/widget-panels/ModalFrontstageComposer\";\r\nexport * from \"./appui-react/widget-panels/StatusBar\";\r\nexport * from \"./appui-react/widget-panels/Tab\";\r\nexport * from \"./appui-react/widget-panels/Toolbars\";\r\nexport * from \"./appui-react/widget-panels/ToolSettings\";\r\nexport * from \"./appui-react/widget-panels/useWidgetDirection\";\r\n\r\nexport * from \"./appui-react/widgets/BackstageAppButton\";\r\nexport * from \"./appui-react/widgets/BasicNavigationWidget\";\r\nexport * from \"./appui-react/widgets/BasicToolWidget\";\r\nexport * from \"./appui-react/widgets/DefaultNavigationWidget\";\r\nexport * from \"./appui-react/widgets/NavigationWidget\";\r\nexport * from \"./appui-react/widgets/NavigationWidgetComposer\";\r\nexport * from \"./appui-react/widgets/ReviewToolWidget\";\r\nexport * from \"./appui-react/widgets/ViewToolWidgetComposer\";\r\nexport * from \"./appui-react/widgets/StatusBarWidgetComposerControl\";\r\nexport * from \"./appui-react/widgets/ContentToolWidgetComposer\";\r\nexport * from \"./appui-react/widgets/StableWidgetDef\";\r\nexport * from \"./appui-react/widgets/ToolbarWidgetBase\";\r\nexport * from \"./appui-react/widgets/ToolWidget\";\r\nexport * from \"./appui-react/widgets/ToolWidgetComposer\";\r\nexport * from \"./appui-react/widgets/Widget\";\r\nexport * from \"./appui-react/widgets/WidgetControl\";\r\nexport * from \"./appui-react/widgets/WidgetDef\";\r\nexport * from \"./appui-react/widgets/WidgetHost\";\r\nexport * from \"./appui-react/widgets/WidgetManager\";\r\nexport * from \"./appui-react/widgets/WidgetProps\";\r\nexport * from \"./appui-react/widgets/WidgetStack\";\r\n\r\nexport * from \"./appui-react/workflow/Task\";\r\nexport * from \"./appui-react/workflow/Workflow\";\r\n\r\nexport * from \"./appui-react/zones/FrameworkZone\";\r\nexport * from \"./appui-react/zones/StatusBarZone\";\r\nexport * from \"./appui-react/zones/toolsettings/ToolSettingsZone\";\r\nexport * from \"./appui-react/zones/toolsettings/ToolInformation\";\r\nexport * from \"./appui-react/zones/toolsettings/ToolSettingsManager\";\r\nexport * from \"./appui-react/zones/toolsettings/ToolUiProvider\";\r\nexport * from \"./appui-react/zones/toolsettings/DefaultToolSettingsProvider\";\r\nexport * from \"./appui-react/zones/Zone\";\r\nexport * from \"./appui-react/zones/ZoneDef\";\r\n\r\n/** @docs-package-description\r\n * The ui-framework package contains classes and components for specifying the application UI consisting of the\r\n * Backstage, Frontstages, Content Views, Tool Bars, Status Bars, Widgets and Panels.\r\n * For more information, see [learning about appui-react]($docs/learning/ui/appui-react/index.md).\r\n */\r\n/**\r\n * @docs-group-description AccuDraw\r\n * Classes and components providing a UI for AccuDraw, an aide for entering coordinate data.\r\n */\r\n/**\r\n * @docs-group-description Admin\r\n * APIs for various UI components, such as toolbars, buttons and menus.\r\n */\r\n/**\r\n * @docs-group-description Backstage\r\n * Classes for working with a Backstage\r\n */\r\n/**\r\n * @docs-group-description ConfigurableUi\r\n * Classes for working with the Application UI Configuration\r\n */\r\n/**\r\n * @docs-group-description ContentView\r\n * Classes for working with a Content View, Group, Layout or Control\r\n */\r\n/**\r\n * @docs-group-description Cursor\r\n * Cursor related information, components and events\r\n */\r\n/**\r\n * @docs-group-description Dialog\r\n * Classes for working with a dialog\r\n */\r\n/**\r\n * @docs-group-description Frontstage\r\n * Classes for working with a Frontstage\r\n */\r\n/**\r\n * @docs-group-description Hooks\r\n * Hook functions for use in Functional React Components.\r\n */\r\n/**\r\n * @docs-group-description IModelComponents\r\n * Classes for displaying information about an iModel\r\n */\r\n/**\r\n * @docs-group-description Item\r\n * Classes for working with an Item in a Tool Widget, Navigation Widget or Backstage\r\n */\r\n/**\r\n * @docs-group-description KeyboardShortcut\r\n * Classes for working with Keyboard Shortcuts\r\n */\r\n/**\r\n * @docs-group-description NavigationAids\r\n * Classes for working with Navigation Aids\r\n */\r\n/**\r\n * @docs-group-description Notification\r\n * Classes for working with a Notification or Message\r\n */\r\n/**\r\n * @docs-group-description ChildWindowManager\r\n * Classes for working with child windows.\r\n */\r\n/**\r\n * @docs-group-description Picker\r\n * Classes for working with various pickers\r\n */\r\n/**\r\n * @docs-group-description Popup\r\n * Classes for working with popup components\r\n */\r\n/**\r\n * @docs-group-description State\r\n * Classes for maintaining state\r\n */\r\n/**\r\n * @docs-group-description Settings\r\n * Classes and components used by settings pages displayed in the modal settings stage\r\n */\r\n/**\r\n * @docs-group-description StandardUiItemsProvider\r\n * Standard UiItemsProvider classes.\r\n */\r\n/**\r\n * @docs-group-description StatusBar\r\n * Classes for defining a StatusBar\r\n */\r\n/**\r\n * @docs-group-description SyncUi\r\n * Classes for informing UI components to sync/refresh their display\r\n */\r\n/**\r\n * @docs-group-description Timeline\r\n * Classes for working with a TimelineComponent\r\n */\r\n/**\r\n * @docs-group-description Toolbar\r\n * Classes used to construct a Toolbar\r\n */\r\n/**\r\n * @docs-group-description Tools\r\n * Core Tool definitions\r\n */\r\n/**\r\n * @docs-group-description ToolSettings\r\n * Classes for working Tool Settings. See learning documentation [Tool Settings]($docs/learning/ui/appui-react/toolsettings.md).\r\n */\r\n/**\r\n * @docs-group-description UiProvider\r\n * Interfaces and classes for specifying UI items to be inserted at runtime.\r\n */\r\n/**\r\n * @docs-group-description UiStateStorage\r\n * Interfaces and classes for persisting UI settings.\r\n */\r\n/**\r\n * @docs-group-description Utilities\r\n * Various utility classes for working with a UI and Redux.\r\n */\r\n/**\r\n * @docs-group-description Widget\r\n * Classes for working with a Widget\r\n */\r\n/**\r\n * @docs-group-description Zone\r\n * Classes for working with a Zone\r\n */\r\n"]}
|
|
@@ -20,7 +20,7 @@ const ForwardRefAccuDrawInput = React.forwardRef(function ForwardRefAccuDrawInpu
|
|
|
20
20
|
const [needValueChanged, setNeedValueChanged] = React.useState(false);
|
|
21
21
|
const [needSelection, setNeedSelection] = React.useState(false);
|
|
22
22
|
const [isFocusField, setIsFocusField] = React.useState(false);
|
|
23
|
-
const inputElementRef = React.useRef();
|
|
23
|
+
const inputElementRef = React.useRef(null);
|
|
24
24
|
const refs = useRefs(inputElementRef, ref); // combine ref needed for target with the forwardRef needed by the Parent when parent is a Type Editor.
|
|
25
25
|
React.useEffect(() => {
|
|
26
26
|
const formattedValue = FrameworkAccuDraw.getFieldDisplayValue(field);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AccuDrawInputField.js","sourceRoot":"","sources":["../../../../src/appui-react/accudraw/AccuDrawInputField.tsx"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH,OAAO,2BAA2B,CAAC;AACnC,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAe,IAAI,EAAY,OAAO,EAAE,MAAM,mBAAmB,CAAC;AACzE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAC7C,OAAO,EAAE,uBAAuB,EAAE,MAAM,sCAAsC,CAAC;AAC/E,OAAO,EAAsE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAkC5H,MAAM,uBAAuB,GAAG,KAAK,CAAC,UAAU,CAC9C,SAAS,4BAA4B,CAAC,KAA8B,EAAE,GAAG;IACvE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,UAAU,EAAE,aAAa,EAAE,KAAK,EAAE,QAAQ,EACvG,cAAc,EAAE,iBAAiB,EAAE,cAAc,EAAE,YAAY,EAAE,GAAG,UAAU,EAAE,GAAG,KAAK,CAAC;IAC3F,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IACzD,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAClC,MAAM,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACtE,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAChE,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC9D,MAAM,eAAe,GAAG,KAAK,CAAC,MAAM,EAAoB,CAAC;IACzD,MAAM,IAAI,GAAG,OAAO,CAAC,eAAe,EAAE,GAAG,CAAC,CAAC,CAAE,uGAAuG;IAEpJ,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,MAAM,cAAc,GAAG,iBAAiB,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;QACrE,cAAc,CAAC,cAAc,CAAC,CAAC;IACjC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IAEZ,MAAM,YAAY,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,KAA0C,EAAQ,EAAE;QAC1F,MAAM,KAAK,GAAG,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC;QAExC,uBAAuB;QACvB,IAAI,KAAK,KAAK,SAAS;YACrB,OAAO;QAET,uBAAuB;QACvB,IAAI,WAAW,KAAK,KAAK,EAAE;YACzB,cAAc,CAAC,KAAK,CAAC,CAAC;YACtB,mBAAmB,CAAC,IAAI,CAAC,CAAC;SAC3B;IACH,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;IAElB,MAAM,YAAY,GAAG,GAAS,EAAE;QAC9B,uBAAuB;QACvB,IAAI,SAAS,EAAE;YACb,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;YACvC,SAAS,CAAC,OAAO,GAAG,CAAC,CAAC;SACvB;IACH,CAAC,CAAC;IAEF,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,mCAAmC;QACnC,uBAAuB;QACvB,IAAI,gBAAgB,EAAE;YACpB,IAAI,iBAAiB,EAAE;gBACrB,YAAY,EAAE,CAAC;gBACf,SAAS,CAAC,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE;oBACzC,cAAc,CAAC,WAAW,CAAC,CAAC;gBAC9B,CAAC,EAAE,iBAAiB,CAAC,CAAC;aACvB;iBAAM;gBACL,cAAc,CAAC,WAAW,CAAC,CAAC;aAC7B;YACD,mBAAmB,CAAC,KAAK,CAAC,CAAC;SAC5B;IACH,CAAC,EAAE,CAAC,cAAc,EAAE,iBAAiB,EAAE,WAAW,EAAE,gBAAgB,CAAC,CAAC,CAAC;IAEvE,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,aAAa;QACb,OAAO,GAAG,EAAE,CAAC,YAAY,EAAE,CAAC;IAC9B,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,aAAa,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,CAAsB,EAAE,EAAE;QACjE,QAAQ,CAAC,CAAC,GAAG,EAAE;YACb,KAAK,UAAU,CAAC,MAAM;gBACpB,YAAY,IAAI,YAAY,EAAE,CAAC;gBAC/B,OAAO;YACT,KAAK,UAAU,CAAC,KAAK;gBACnB,cAAc,IAAI,cAAc,EAAE,CAAC;gBACnC,OAAO;SACV;QAED,IAAI,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE;YACnB,CAAC,CAAC,cAAc,EAAE,CAAC;YACnB,uBAAuB,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;YAC1C,OAAO;SACR;IACH,CAAC,EAAE,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC,CAAC;IAEnC,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,MAAM,uBAAuB,GAAG,CAAC,IAAwC,EAAE,EAAE;YAC3E,IAAI,IAAI,CAAC,KAAK,KAAK,KAAK,IAAI,WAAW,KAAK,IAAI,CAAC,cAAc,EAAE;gBAC/D,cAAc,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;gBACpC,uBAAuB;gBACvB,IAAI,YAAY;oBACd,gBAAgB,CAAC,IAAI,CAAC,CAAC;aAC1B;QACH,CAAC,CAAC;QACF,OAAO,iBAAiB,CAAC,gCAAgC,CAAC,WAAW,CAAC,uBAAuB,CAAC,CAAC;IACjG,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,EAAE,WAAW,CAAC,CAAC,CAAC;IAEvC,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,IAAI,aAAa,EAAE;YACjB,uBAAuB;YACvB,IAAI,eAAe,CAAC,OAAO;gBACzB,eAAe,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YACnC,gBAAgB,CAAC,KAAK,CAAC,CAAC;SACzB;IACH,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC;IAEpB,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,MAAM,mBAAmB,GAAG,CAAC,IAAoC,EAAE,EAAE;YACnE,eAAe,CAAC,IAAI,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC;QACxC,CAAC,CAAC;QACF,OAAO,iBAAiB,CAAC,4BAA4B,CAAC,WAAW,CAAC,mBAAmB,CAAC,CAAC;IACzF,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IAEZ,MAAM,eAAe,GAAG,UAAU,CAAC,2BAA2B,EAAE,SAAS,CAAC,CAAC;IAC3E,MAAM,eAAe,GAAG,UAAU,CAAC,2BAA2B,EAC5D,aAAa,IAAI,qBAAqB,EACtC,cAAc,CACf,CAAC;IAEF,OAAO,CACL;QACE,+BAAO,OAAO,EAAE,EAAE,EAAE,SAAS,EAAE,eAAe,EAAE,KAAK,EAAE,UAAU;YAC9D,KAAK;YACL,QAAQ,IAAI,oBAAC,IAAI,IAAC,QAAQ,EAAE,QAAQ,GAAI,CACnC;QACR,oBAAC,KAAK,OAAK,UAAU,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,WAAW,EAC1D,SAAS,EAAE,eAAe,EAAE,KAAK,EAAE,KAAK,EAAE,YAAY,EAAC,KAAK,EAC5D,QAAQ,EAAE,YAAY,EAAE,SAAS,EAAE,aAAa,EAAE,IAAI,EAAC,OAAO,GAAG;QACnE,8BAAM,SAAS,EAAC,oBAAoB,IACjC,QAAQ,IAAI,oBAAC,IAAI,IAAC,QAAQ,EAAC,WAAW,GAAG,CACrC,CACN,CACJ,CAAC;AACJ,CAAC,CACF,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAA2D,uBAAuB,CAAC","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 AccuDraw\r\n */\r\n\r\nimport \"./AccuDrawInputField.scss\";\r\nimport classnames from \"classnames\";\r\nimport * as React from \"react\";\r\nimport { ItemField } from \"@itwin/core-frontend\";\r\nimport { CommonProps, Icon, IconSpec, useRefs } from \"@itwin/core-react\";\r\nimport { isLetter, SpecialKey } from \"@itwin/appui-abstract\";\r\nimport { Input } from \"@itwin/itwinui-react\";\r\nimport { KeyboardShortcutManager } from \"../keyboardshortcut/KeyboardShortcut\";\r\nimport { AccuDrawSetFieldFocusEventArgs, AccuDrawSetFieldValueToUiEventArgs, FrameworkAccuDraw } from \"./FrameworkAccuDraw\";\r\n\r\n/** Properties for [[AccuDrawInputField]] component\r\n * @beta\r\n */\r\nexport interface AccuDrawInputFieldProps extends CommonProps {\r\n /** Which AccuDraw field this represents */\r\n field: ItemField;\r\n /** id for the input element */\r\n id: string;\r\n /** Indicates whether field is locked */\r\n isLocked?: boolean;\r\n /** label for the input element */\r\n label?: string;\r\n /** icon for the input element */\r\n iconSpec?: IconSpec;\r\n /** Custom CSS class name for the label */\r\n labelClassName?: string;\r\n /** Custom CSS Style for the label */\r\n labelStyle?: React.CSSProperties;\r\n /** Center justified label */\r\n labelCentered?: boolean;\r\n /** Triggered when the content is changed */\r\n onValueChanged: (stringValue: string) => void;\r\n /** Frequency to poll for changes in value, in milliseconds */\r\n valueChangedDelay?: number;\r\n /** Listens for <Enter> keypress */\r\n onEnterPressed?: () => void;\r\n /** Listens for <Esc> keypress */\r\n onEscPressed?: () => void;\r\n /** Provides ability to return reference to HTMLInputElement */\r\n ref?: React.Ref<HTMLInputElement>;\r\n}\r\n\r\nconst ForwardRefAccuDrawInput = React.forwardRef<HTMLInputElement, AccuDrawInputFieldProps>(\r\n function ForwardRefAccuDrawInputField(props: AccuDrawInputFieldProps, ref) {\r\n const { className, style, id, label, iconSpec, labelClassName, labelStyle, labelCentered, field, isLocked,\r\n onValueChanged, valueChangedDelay, onEnterPressed, onEscPressed, ...inputProps } = props;\r\n const [stringValue, setStringValue] = React.useState(\"\");\r\n const timeoutId = React.useRef(0);\r\n const [needValueChanged, setNeedValueChanged] = React.useState(false);\r\n const [needSelection, setNeedSelection] = React.useState(false);\r\n const [isFocusField, setIsFocusField] = React.useState(false);\r\n const inputElementRef = React.useRef<HTMLInputElement>();\r\n const refs = useRefs(inputElementRef, ref); // combine ref needed for target with the forwardRef needed by the Parent when parent is a Type Editor.\r\n\r\n React.useEffect(() => {\r\n const formattedValue = FrameworkAccuDraw.getFieldDisplayValue(field);\r\n setStringValue(formattedValue);\r\n }, [field]);\r\n\r\n const handleChange = React.useCallback((event: React.ChangeEvent<HTMLInputElement>): void => {\r\n const value = event.currentTarget.value;\r\n\r\n // istanbul ignore next\r\n if (value === undefined)\r\n return;\r\n\r\n // istanbul ignore else\r\n if (stringValue !== value) {\r\n setStringValue(value);\r\n setNeedValueChanged(true);\r\n }\r\n }, [stringValue]);\r\n\r\n const unsetTimeout = (): void => {\r\n // istanbul ignore else\r\n if (timeoutId) {\r\n window.clearTimeout(timeoutId.current);\r\n timeoutId.current = 0;\r\n }\r\n };\r\n\r\n React.useEffect(() => {\r\n // After setStringValue & re-render\r\n // istanbul ignore else\r\n if (needValueChanged) {\r\n if (valueChangedDelay) {\r\n unsetTimeout();\r\n timeoutId.current = window.setTimeout(() => {\r\n onValueChanged(stringValue);\r\n }, valueChangedDelay);\r\n } else {\r\n onValueChanged(stringValue);\r\n }\r\n setNeedValueChanged(false);\r\n }\r\n }, [onValueChanged, valueChangedDelay, stringValue, needValueChanged]);\r\n\r\n React.useEffect(() => {\r\n // On unmount\r\n return () => unsetTimeout();\r\n }, []);\r\n\r\n const handleKeyDown = React.useCallback((e: React.KeyboardEvent) => {\r\n switch (e.key) {\r\n case SpecialKey.Escape:\r\n onEscPressed && onEscPressed();\r\n return;\r\n case SpecialKey.Enter:\r\n onEnterPressed && onEnterPressed();\r\n return;\r\n }\r\n\r\n if (isLetter(e.key)) {\r\n e.preventDefault();\r\n KeyboardShortcutManager.processKey(e.key);\r\n return;\r\n }\r\n }, [onEscPressed, onEnterPressed]);\r\n\r\n React.useEffect(() => {\r\n const handleSetFieldValueToUi = (args: AccuDrawSetFieldValueToUiEventArgs) => {\r\n if (args.field === field && stringValue !== args.formattedValue) {\r\n setStringValue(args.formattedValue);\r\n // istanbul ignore else\r\n if (isFocusField)\r\n setNeedSelection(true);\r\n }\r\n };\r\n return FrameworkAccuDraw.onAccuDrawSetFieldValueToUiEvent.addListener(handleSetFieldValueToUi);\r\n }, [field, isFocusField, stringValue]);\r\n\r\n React.useEffect(() => {\r\n if (needSelection) {\r\n // istanbul ignore else\r\n if (inputElementRef.current)\r\n inputElementRef.current.select();\r\n setNeedSelection(false);\r\n }\r\n }, [needSelection]);\r\n\r\n React.useEffect(() => {\r\n const handleSetFieldFocus = (args: AccuDrawSetFieldFocusEventArgs) => {\r\n setIsFocusField(args.field === field);\r\n };\r\n return FrameworkAccuDraw.onAccuDrawSetFieldFocusEvent.addListener(handleSetFieldFocus);\r\n }, [field]);\r\n\r\n const inputClassNames = classnames(\"uifw-accudraw-input-field\", className);\r\n const labelClassNames = classnames(\"uifw-accudraw-input-label\",\r\n labelCentered && \"uifw-label-centered\",\r\n labelClassName\r\n );\r\n\r\n return (\r\n <>\r\n <label htmlFor={id} className={labelClassNames} style={labelStyle}>\r\n {label}\r\n {iconSpec && <Icon iconSpec={iconSpec} />}\r\n </label>\r\n <Input {...inputProps} ref={refs} id={id} value={stringValue}\r\n className={inputClassNames} style={style} autoComplete=\"off\"\r\n onChange={handleChange} onKeyDown={handleKeyDown} size=\"small\" />\r\n <span className=\"uifw-accudraw-lock\" >\r\n {isLocked && <Icon iconSpec=\"icon-lock\" />}\r\n </span>\r\n </>\r\n );\r\n }\r\n);\r\n\r\n/** Input field for AccuDraw Ui\r\n * @beta\r\n */\r\nexport const AccuDrawInputField: (props: AccuDrawInputFieldProps) => JSX.Element | null = ForwardRefAccuDrawInput;\r\n"]}
|
|
1
|
+
{"version":3,"file":"AccuDrawInputField.js","sourceRoot":"","sources":["../../../../src/appui-react/accudraw/AccuDrawInputField.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 AccuDraw\r\n */\r\n\r\nimport \"./AccuDrawInputField.scss\";\r\nimport classnames from \"classnames\";\r\nimport * as React from \"react\";\r\nimport { ItemField } from \"@itwin/core-frontend\";\r\nimport { CommonProps, Icon, IconSpec, useRefs } from \"@itwin/core-react\";\r\nimport { isLetter, SpecialKey } from \"@itwin/appui-abstract\";\r\nimport { Input } from \"@itwin/itwinui-react\";\r\nimport { KeyboardShortcutManager } from \"../keyboardshortcut/KeyboardShortcut\";\r\nimport { AccuDrawSetFieldFocusEventArgs, AccuDrawSetFieldValueToUiEventArgs, FrameworkAccuDraw } from \"./FrameworkAccuDraw\";\r\n\r\n/** Properties for [[AccuDrawInputField]] component\r\n * @beta\r\n */\r\nexport interface AccuDrawInputFieldProps extends CommonProps {\r\n /** Which AccuDraw field this represents */\r\n field: ItemField;\r\n /** id for the input element */\r\n id: string;\r\n /** Indicates whether field is locked */\r\n isLocked?: boolean;\r\n /** label for the input element */\r\n label?: string;\r\n /** icon for the input element */\r\n iconSpec?: IconSpec;\r\n /** Custom CSS class name for the label */\r\n labelClassName?: string;\r\n /** Custom CSS Style for the label */\r\n labelStyle?: React.CSSProperties;\r\n /** Center justified label */\r\n labelCentered?: boolean;\r\n /** Triggered when the content is changed */\r\n onValueChanged: (stringValue: string) => void;\r\n /** Frequency to poll for changes in value, in milliseconds */\r\n valueChangedDelay?: number;\r\n /** Listens for <Enter> keypress */\r\n onEnterPressed?: () => void;\r\n /** Listens for <Esc> keypress */\r\n onEscPressed?: () => void;\r\n /** Provides ability to return reference to HTMLInputElement */\r\n ref?: React.Ref<HTMLInputElement>;\r\n}\r\n\r\nconst ForwardRefAccuDrawInput = React.forwardRef<HTMLInputElement, AccuDrawInputFieldProps>(\r\n function ForwardRefAccuDrawInputField(props: AccuDrawInputFieldProps, ref) {\r\n const { className, style, id, label, iconSpec, labelClassName, labelStyle, labelCentered, field, isLocked,\r\n onValueChanged, valueChangedDelay, onEnterPressed, onEscPressed, ...inputProps } = props;\r\n const [stringValue, setStringValue] = React.useState(\"\");\r\n const timeoutId = React.useRef(0);\r\n const [needValueChanged, setNeedValueChanged] = React.useState(false);\r\n const [needSelection, setNeedSelection] = React.useState(false);\r\n const [isFocusField, setIsFocusField] = React.useState(false);\r\n const inputElementRef = React.useRef<HTMLInputElement>(null);\r\n const refs = useRefs(inputElementRef, ref); // combine ref needed for target with the forwardRef needed by the Parent when parent is a Type Editor.\r\n\r\n React.useEffect(() => {\r\n const formattedValue = FrameworkAccuDraw.getFieldDisplayValue(field);\r\n setStringValue(formattedValue);\r\n }, [field]);\r\n\r\n const handleChange = React.useCallback((event: React.ChangeEvent<HTMLInputElement>): void => {\r\n const value = event.currentTarget.value;\r\n\r\n // istanbul ignore next\r\n if (value === undefined)\r\n return;\r\n\r\n // istanbul ignore else\r\n if (stringValue !== value) {\r\n setStringValue(value);\r\n setNeedValueChanged(true);\r\n }\r\n }, [stringValue]);\r\n\r\n const unsetTimeout = (): void => {\r\n // istanbul ignore else\r\n if (timeoutId) {\r\n window.clearTimeout(timeoutId.current);\r\n timeoutId.current = 0;\r\n }\r\n };\r\n\r\n React.useEffect(() => {\r\n // After setStringValue & re-render\r\n // istanbul ignore else\r\n if (needValueChanged) {\r\n if (valueChangedDelay) {\r\n unsetTimeout();\r\n timeoutId.current = window.setTimeout(() => {\r\n onValueChanged(stringValue);\r\n }, valueChangedDelay);\r\n } else {\r\n onValueChanged(stringValue);\r\n }\r\n setNeedValueChanged(false);\r\n }\r\n }, [onValueChanged, valueChangedDelay, stringValue, needValueChanged]);\r\n\r\n React.useEffect(() => {\r\n // On unmount\r\n return () => unsetTimeout();\r\n }, []);\r\n\r\n const handleKeyDown = React.useCallback((e: React.KeyboardEvent) => {\r\n switch (e.key) {\r\n case SpecialKey.Escape:\r\n onEscPressed && onEscPressed();\r\n return;\r\n case SpecialKey.Enter:\r\n onEnterPressed && onEnterPressed();\r\n return;\r\n }\r\n\r\n if (isLetter(e.key)) {\r\n e.preventDefault();\r\n KeyboardShortcutManager.processKey(e.key);\r\n return;\r\n }\r\n }, [onEscPressed, onEnterPressed]);\r\n\r\n React.useEffect(() => {\r\n const handleSetFieldValueToUi = (args: AccuDrawSetFieldValueToUiEventArgs) => {\r\n if (args.field === field && stringValue !== args.formattedValue) {\r\n setStringValue(args.formattedValue);\r\n // istanbul ignore else\r\n if (isFocusField)\r\n setNeedSelection(true);\r\n }\r\n };\r\n return FrameworkAccuDraw.onAccuDrawSetFieldValueToUiEvent.addListener(handleSetFieldValueToUi);\r\n }, [field, isFocusField, stringValue]);\r\n\r\n React.useEffect(() => {\r\n if (needSelection) {\r\n // istanbul ignore else\r\n if (inputElementRef.current)\r\n inputElementRef.current.select();\r\n setNeedSelection(false);\r\n }\r\n }, [needSelection]);\r\n\r\n React.useEffect(() => {\r\n const handleSetFieldFocus = (args: AccuDrawSetFieldFocusEventArgs) => {\r\n setIsFocusField(args.field === field);\r\n };\r\n return FrameworkAccuDraw.onAccuDrawSetFieldFocusEvent.addListener(handleSetFieldFocus);\r\n }, [field]);\r\n\r\n const inputClassNames = classnames(\"uifw-accudraw-input-field\", className);\r\n const labelClassNames = classnames(\"uifw-accudraw-input-label\",\r\n labelCentered && \"uifw-label-centered\",\r\n labelClassName\r\n );\r\n\r\n return (\r\n <>\r\n <label htmlFor={id} className={labelClassNames} style={labelStyle}>\r\n {label}\r\n {iconSpec && <Icon iconSpec={iconSpec} />}\r\n </label>\r\n <Input {...inputProps} ref={refs} id={id} value={stringValue}\r\n className={inputClassNames} style={style} autoComplete=\"off\"\r\n onChange={handleChange} onKeyDown={handleKeyDown} size=\"small\" />\r\n <span className=\"uifw-accudraw-lock\" >\r\n {isLocked && <Icon iconSpec=\"icon-lock\" />}\r\n </span>\r\n </>\r\n );\r\n }\r\n);\r\n\r\n/** Input field for AccuDraw Ui\r\n * @beta\r\n */\r\nexport const AccuDrawInputField: (props: AccuDrawInputFieldProps) => JSX.Element | null = ForwardRefAccuDrawInput;\r\n"]}
|
|
@@ -36,7 +36,7 @@ export function ViewOverlayHost({ viewport, featureOptions, userSuppliedOverlay
|
|
|
36
36
|
});
|
|
37
37
|
if (!displayViewOverlay)
|
|
38
38
|
return null;
|
|
39
|
-
return userSuppliedOverlay ? React.createElement(React.Fragment, null,
|
|
39
|
+
return userSuppliedOverlay ? React.createElement(React.Fragment, null, userSuppliedOverlay(viewport)) : React.createElement(DefaultViewOverlay, { viewport: viewport, featureOptions: featureOptions });
|
|
40
40
|
}
|
|
41
41
|
/** iModel Viewport Control
|
|
42
42
|
* @public
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IModelViewport.js","sourceRoot":"","sources":["../../../../src/appui-react/content/IModelViewport.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 ContentView\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { Id64String } from \"@itwin/core-bentley\";\r\nimport { IModelConnection, ScreenViewport, ViewState } from \"@itwin/core-frontend\";\r\nimport { viewWithUnifiedSelection } from \"@itwin/presentation-components\";\r\nimport { ViewportComponent, ViewStateProp } from \"@itwin/imodel-components-react\";\r\nimport { FillCentered } from \"@itwin/core-react\";\r\n\r\nimport { FrontstageManager } from \"../frontstage/FrontstageManager\";\r\nimport { ConfigurableCreateInfo } from \"../configurableui/ConfigurableUiControl\";\r\nimport { ConfigurableUiManager } from \"../configurableui/ConfigurableUiManager\";\r\nimport { connectIModelConnectionAndViewState } from \"../redux/connectIModel\";\r\nimport { UiFramework } from \"../UiFramework\";\r\nimport { DefaultViewOverlay } from \"./DefaultViewOverlay\";\r\nimport { ViewportContentControl } from \"./ViewportContentControl\";\r\nimport { StandardRotationNavigationAidControl } from \"../navigationaids/StandardRotationNavigationAid\";\r\nimport { UiError } from \"@itwin/appui-abstract\";\r\nimport { useSelector } from \"react-redux\";\r\nimport { FrameworkState } from \"../redux/FrameworkState\";\r\n\r\n// create a HOC viewport component that supports unified selection\r\n// eslint-disable-next-line @typescript-eslint/naming-convention\r\nconst UnifiedSelectionViewport = viewWithUnifiedSelection(ViewportComponent);\r\n\r\n/** Viewport that is connected to the IModelConnection property in the Redux store. The application must set up the Redux store and include the FrameworkReducer.\r\n * @public\r\n */\r\nexport const IModelConnectedViewport = connectIModelConnectionAndViewState(null, null)(UnifiedSelectionViewport); // eslint-disable-line @typescript-eslint/naming-convention\r\n\r\n/** [[IModelViewportControl]] options. These options are set in the applicationData property of the [[ContentProps]].\r\n * @public\r\n */\r\nexport interface IModelViewportControlOptions {\r\n /** ViewState or a function to return a ViewState */\r\n viewState?: ViewStateProp;\r\n /** IModelConnection of data in Viewport */\r\n iModelConnection?: IModelConnection | (() => IModelConnection);\r\n /** Map of options that can be used to enable/disable features within the view */\r\n featureOptions?: { [key: string]: any };\r\n /** Optional background color which may be used if viewState and iModelConnection are undefined */\r\n bgColor?: string;\r\n /** Optional property to always use the supplied `viewState` property instead of using viewport.view when set */\r\n alwaysUseSuppliedViewState?: boolean;\r\n /** Optional property to supply custom view overlay. Uses when caller want to supply custom overlay component. */\r\n supplyViewOverlay?: (_viewport: ScreenViewport) => React.ReactNode;\r\n /** Optional property to defer reactNode initialization until first reactNode property in needed. Useful when subclassing the `IModelViewportControl`. */\r\n deferNodeInitialization?: boolean;\r\n}\r\n\r\ninterface ViewOverlayHostProps {\r\n viewport: ScreenViewport;\r\n featureOptions?: { [key: string]: any };\r\n userSuppliedOverlay?: (_viewport: ScreenViewport) => React.ReactNode;\r\n}\r\n/** View Overlay component -- exported for testing\r\n * @internal\r\n */\r\n// istanbul ignore next\r\nexport function ViewOverlayHost({viewport, featureOptions, userSuppliedOverlay}: ViewOverlayHostProps) {\r\n const displayViewOverlay = useSelector((state: FrameworkState) => {\r\n const frameworkState = (state as any)[UiFramework.frameworkStateKey];\r\n return frameworkState ? frameworkState.configurableUiState.viewOverlayDisplay : true;\r\n });\r\n if (!displayViewOverlay)\r\n return null;\r\n return userSuppliedOverlay ? <React.Fragment>userSuppliedOverlay(viewport)</React.Fragment> : <DefaultViewOverlay viewport={viewport} featureOptions={featureOptions} />;\r\n}\r\n/** iModel Viewport Control\r\n * @public\r\n */\r\n// istanbul ignore next\r\nexport class IModelViewportControl extends ViewportContentControl {\r\n public static get id() {\r\n return \"UiFramework.IModelViewportControl\";\r\n }\r\n protected _featureOptions: { [key: string]: boolean | string } = {};\r\n protected _viewState: ViewStateProp | undefined;\r\n protected _iModelConnection: IModelConnection | undefined;\r\n protected _alwaysUseSuppliedViewState: boolean;\r\n private _userSuppliedViewOverlay?: (_viewport: ScreenViewport) => React.ReactNode;\r\n\r\n constructor(info: ConfigurableCreateInfo, protected _options: IModelViewportControlOptions) {\r\n super(info, _options);\r\n\r\n if (_options.featureOptions)\r\n this._featureOptions = _options.featureOptions;\r\n this._alwaysUseSuppliedViewState = _options.alwaysUseSuppliedViewState ?? false;\r\n this._userSuppliedViewOverlay = _options.supplyViewOverlay;\r\n\r\n if (!_options.deferNodeInitialization)\r\n this.initializeReactNode();\r\n }\r\n\r\n protected initializeReactNode() {\r\n const options = this._options;\r\n\r\n if (options.viewState)\r\n this._viewState = options.viewState;\r\n\r\n const iModelConnection = (typeof options.iModelConnection === \"function\") ? options.iModelConnection() : options.iModelConnection;\r\n\r\n if (this._viewState && iModelConnection) {\r\n /** Passing _determineViewState as a function reference; it is not called here. */\r\n this._reactNode = this.getImodelViewportReactElement(iModelConnection, this._determineViewState);\r\n } else {\r\n if (UiFramework.getIModelConnection() && UiFramework.getDefaultViewState()) {\r\n this._reactNode = this.getImodelConnectedViewportReactElement();\r\n } else {\r\n this._reactNode = this.getNoContentReactElement(options);\r\n this.setIsReady();\r\n }\r\n }\r\n }\r\n\r\n protected override getReactNode(): React.ReactNode {\r\n if (!React.isValidElement(this._reactNode) && this._options.deferNodeInitialization)\r\n this.initializeReactNode();\r\n\r\n return this.getKeyedReactNode();\r\n }\r\n\r\n /**\r\n * This is passed as a function to the ViewportComponent as the `viewState` prop in getImodelViewportReactElement().\r\n * It is called by ViewportComponent on a mount to resolve the viewState.\r\n */\r\n private _determineViewState = (): ViewState => {\r\n let viewState: ViewState;\r\n\r\n if (this.viewport && !this._alwaysUseSuppliedViewState)\r\n viewState = this.viewport.view;\r\n else if (this._viewState) {\r\n if (typeof this._viewState === \"function\")\r\n viewState = this._viewState();\r\n else\r\n viewState = this._viewState;\r\n } else\r\n throw new UiError(UiFramework.loggerCategory(this), \"No ViewState could be determined\");\r\n\r\n return viewState!;\r\n };\r\n\r\n /** Get the React component that will contain the Viewport */\r\n protected getImodelConnectedViewportReactElement(): React.ReactNode {\r\n return <IModelConnectedViewport\r\n viewportRef={(v: ScreenViewport) => {\r\n this.viewport = v;\r\n // for convenience, if window defined bind viewport to window\r\n if (undefined !== window)\r\n (window as any).viewport = v;\r\n if (!FrontstageManager.isLoading)\r\n FrontstageManager.activeFrontstageDef?.setActiveViewFromViewport(v);\r\n }}\r\n getViewOverlay={this._getViewOverlay}\r\n />;\r\n }\r\n\r\n /** Get the React component that will contain the Viewport */\r\n protected getImodelViewportReactElement(iModelConnection: IModelConnection, viewState: ViewStateProp): React.ReactNode {\r\n return <UnifiedSelectionViewport\r\n viewState={viewState}\r\n imodel={iModelConnection}\r\n controlId={this.controlId}\r\n viewportRef={(v: ScreenViewport) => {\r\n this.viewport = v;\r\n // for convenience, if window defined bind viewport to window\r\n if (undefined !== window)\r\n (window as any).viewport = v;\r\n if (!FrontstageManager.isLoading)\r\n FrontstageManager.activeFrontstageDef?.setActiveViewFromViewport(v);\r\n }}\r\n getViewOverlay={this._getViewOverlay}\r\n />;\r\n }\r\n\r\n /** Get the React component that will be shown when no iModel data is available */\r\n protected getNoContentReactElement(_options: IModelViewportControlOptions): React.ReactNode {\r\n const noContent = UiFramework.translate(\"general.no-content\");\r\n return <FillCentered> {noContent} </FillCentered>;\r\n }\r\n\r\n /** Get the React.Element for a ViewSelector change. */\r\n public override getReactElementForViewSelectorChange(iModelConnection: IModelConnection, _unusedViewDefinitionId: Id64String, viewState: ViewState, _name: string): React.ReactNode {\r\n return this.getImodelViewportReactElement(iModelConnection, viewState);\r\n }\r\n\r\n /** Get the default ViewOverlay unless parameter is set to not use it. May be override in an application specific sub-class */\r\n protected _getViewOverlay = (vp: ScreenViewport): React.ReactNode => {\r\n return <ViewOverlayHost viewport={vp} featureOptions={this._featureOptions} userSuppliedOverlay={this._userSuppliedViewOverlay} data-testid=\"ViewOverlay\"/>;\r\n };\r\n\r\n /** Get the NavigationAidControl associated with this ContentControl */\r\n public override get navigationAidControl(): string {\r\n if (this.viewport)\r\n return super.navigationAidControl;\r\n else\r\n return StandardRotationNavigationAidControl.navigationAidId;\r\n }\r\n}\r\n\r\nConfigurableUiManager.registerControl(IModelViewportControl.id, IModelViewportControl);\r\n"]}
|
|
1
|
+
{"version":3,"file":"IModelViewport.js","sourceRoot":"","sources":["../../../../src/appui-react/content/IModelViewport.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 ContentView\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { Id64String } from \"@itwin/core-bentley\";\r\nimport { IModelConnection, ScreenViewport, ViewState } from \"@itwin/core-frontend\";\r\nimport { viewWithUnifiedSelection } from \"@itwin/presentation-components\";\r\nimport { ViewportComponent, ViewStateProp } from \"@itwin/imodel-components-react\";\r\nimport { FillCentered } from \"@itwin/core-react\";\r\n\r\nimport { FrontstageManager } from \"../frontstage/FrontstageManager\";\r\nimport { ConfigurableCreateInfo } from \"../configurableui/ConfigurableUiControl\";\r\nimport { ConfigurableUiManager } from \"../configurableui/ConfigurableUiManager\";\r\nimport { connectIModelConnectionAndViewState } from \"../redux/connectIModel\";\r\nimport { UiFramework } from \"../UiFramework\";\r\nimport { DefaultViewOverlay } from \"./DefaultViewOverlay\";\r\nimport { ViewportContentControl } from \"./ViewportContentControl\";\r\nimport { StandardRotationNavigationAidControl } from \"../navigationaids/StandardRotationNavigationAid\";\r\nimport { UiError } from \"@itwin/appui-abstract\";\r\nimport { useSelector } from \"react-redux\";\r\nimport { FrameworkState } from \"../redux/FrameworkState\";\r\n\r\n// create a HOC viewport component that supports unified selection\r\n// eslint-disable-next-line @typescript-eslint/naming-convention\r\nconst UnifiedSelectionViewport = viewWithUnifiedSelection(ViewportComponent);\r\n\r\n/** Viewport that is connected to the IModelConnection property in the Redux store. The application must set up the Redux store and include the FrameworkReducer.\r\n * @public\r\n */\r\nexport const IModelConnectedViewport = connectIModelConnectionAndViewState(null, null)(UnifiedSelectionViewport); // eslint-disable-line @typescript-eslint/naming-convention\r\n\r\n/** [[IModelViewportControl]] options. These options are set in the applicationData property of the [[ContentProps]].\r\n * @public\r\n */\r\nexport interface IModelViewportControlOptions {\r\n /** ViewState or a function to return a ViewState */\r\n viewState?: ViewStateProp;\r\n /** IModelConnection of data in Viewport */\r\n iModelConnection?: IModelConnection | (() => IModelConnection);\r\n /** Map of options that can be used to enable/disable features within the view */\r\n featureOptions?: { [key: string]: any };\r\n /** Optional background color which may be used if viewState and iModelConnection are undefined */\r\n bgColor?: string;\r\n /** Optional property to always use the supplied `viewState` property instead of using viewport.view when set */\r\n alwaysUseSuppliedViewState?: boolean;\r\n /** Optional property to supply custom view overlay. Uses when caller want to supply custom overlay component. */\r\n supplyViewOverlay?: (_viewport: ScreenViewport) => React.ReactNode;\r\n /** Optional property to defer reactNode initialization until first reactNode property in needed. Useful when subclassing the `IModelViewportControl`. */\r\n deferNodeInitialization?: boolean;\r\n}\r\n\r\ninterface ViewOverlayHostProps {\r\n viewport: ScreenViewport;\r\n featureOptions?: { [key: string]: any };\r\n userSuppliedOverlay?: (_viewport: ScreenViewport) => React.ReactNode;\r\n}\r\n/** View Overlay component -- exported for testing\r\n * @internal\r\n */\r\n// istanbul ignore next\r\nexport function ViewOverlayHost({viewport, featureOptions, userSuppliedOverlay}: ViewOverlayHostProps) {\r\n const displayViewOverlay = useSelector((state: FrameworkState) => {\r\n const frameworkState = (state as any)[UiFramework.frameworkStateKey];\r\n return frameworkState ? frameworkState.configurableUiState.viewOverlayDisplay : true;\r\n });\r\n if (!displayViewOverlay)\r\n return null;\r\n return userSuppliedOverlay ? <React.Fragment>{userSuppliedOverlay(viewport)}</React.Fragment> : <DefaultViewOverlay viewport={viewport} featureOptions={featureOptions} />;\r\n}\r\n/** iModel Viewport Control\r\n * @public\r\n */\r\n// istanbul ignore next\r\nexport class IModelViewportControl extends ViewportContentControl {\r\n public static get id() {\r\n return \"UiFramework.IModelViewportControl\";\r\n }\r\n protected _featureOptions: { [key: string]: boolean | string } = {};\r\n protected _viewState: ViewStateProp | undefined;\r\n protected _iModelConnection: IModelConnection | undefined;\r\n protected _alwaysUseSuppliedViewState: boolean;\r\n private _userSuppliedViewOverlay?: (_viewport: ScreenViewport) => React.ReactNode;\r\n\r\n constructor(info: ConfigurableCreateInfo, protected _options: IModelViewportControlOptions) {\r\n super(info, _options);\r\n\r\n if (_options.featureOptions)\r\n this._featureOptions = _options.featureOptions;\r\n this._alwaysUseSuppliedViewState = _options.alwaysUseSuppliedViewState ?? false;\r\n this._userSuppliedViewOverlay = _options.supplyViewOverlay;\r\n\r\n if (!_options.deferNodeInitialization)\r\n this.initializeReactNode();\r\n }\r\n\r\n protected initializeReactNode() {\r\n const options = this._options;\r\n\r\n if (options.viewState)\r\n this._viewState = options.viewState;\r\n\r\n const iModelConnection = (typeof options.iModelConnection === \"function\") ? options.iModelConnection() : options.iModelConnection;\r\n\r\n if (this._viewState && iModelConnection) {\r\n /** Passing _determineViewState as a function reference; it is not called here. */\r\n this._reactNode = this.getImodelViewportReactElement(iModelConnection, this._determineViewState);\r\n } else {\r\n if (UiFramework.getIModelConnection() && UiFramework.getDefaultViewState()) {\r\n this._reactNode = this.getImodelConnectedViewportReactElement();\r\n } else {\r\n this._reactNode = this.getNoContentReactElement(options);\r\n this.setIsReady();\r\n }\r\n }\r\n }\r\n\r\n protected override getReactNode(): React.ReactNode {\r\n if (!React.isValidElement(this._reactNode) && this._options.deferNodeInitialization)\r\n this.initializeReactNode();\r\n\r\n return this.getKeyedReactNode();\r\n }\r\n\r\n /**\r\n * This is passed as a function to the ViewportComponent as the `viewState` prop in getImodelViewportReactElement().\r\n * It is called by ViewportComponent on a mount to resolve the viewState.\r\n */\r\n private _determineViewState = (): ViewState => {\r\n let viewState: ViewState;\r\n\r\n if (this.viewport && !this._alwaysUseSuppliedViewState)\r\n viewState = this.viewport.view;\r\n else if (this._viewState) {\r\n if (typeof this._viewState === \"function\")\r\n viewState = this._viewState();\r\n else\r\n viewState = this._viewState;\r\n } else\r\n throw new UiError(UiFramework.loggerCategory(this), \"No ViewState could be determined\");\r\n\r\n return viewState!;\r\n };\r\n\r\n /** Get the React component that will contain the Viewport */\r\n protected getImodelConnectedViewportReactElement(): React.ReactNode {\r\n return <IModelConnectedViewport\r\n viewportRef={(v: ScreenViewport) => {\r\n this.viewport = v;\r\n // for convenience, if window defined bind viewport to window\r\n if (undefined !== window)\r\n (window as any).viewport = v;\r\n if (!FrontstageManager.isLoading)\r\n FrontstageManager.activeFrontstageDef?.setActiveViewFromViewport(v);\r\n }}\r\n getViewOverlay={this._getViewOverlay}\r\n />;\r\n }\r\n\r\n /** Get the React component that will contain the Viewport */\r\n protected getImodelViewportReactElement(iModelConnection: IModelConnection, viewState: ViewStateProp): React.ReactNode {\r\n return <UnifiedSelectionViewport\r\n viewState={viewState}\r\n imodel={iModelConnection}\r\n controlId={this.controlId}\r\n viewportRef={(v: ScreenViewport) => {\r\n this.viewport = v;\r\n // for convenience, if window defined bind viewport to window\r\n if (undefined !== window)\r\n (window as any).viewport = v;\r\n if (!FrontstageManager.isLoading)\r\n FrontstageManager.activeFrontstageDef?.setActiveViewFromViewport(v);\r\n }}\r\n getViewOverlay={this._getViewOverlay}\r\n />;\r\n }\r\n\r\n /** Get the React component that will be shown when no iModel data is available */\r\n protected getNoContentReactElement(_options: IModelViewportControlOptions): React.ReactNode {\r\n const noContent = UiFramework.translate(\"general.no-content\");\r\n return <FillCentered> {noContent} </FillCentered>;\r\n }\r\n\r\n /** Get the React.Element for a ViewSelector change. */\r\n public override getReactElementForViewSelectorChange(iModelConnection: IModelConnection, _unusedViewDefinitionId: Id64String, viewState: ViewState, _name: string): React.ReactNode {\r\n return this.getImodelViewportReactElement(iModelConnection, viewState);\r\n }\r\n\r\n /** Get the default ViewOverlay unless parameter is set to not use it. May be override in an application specific sub-class */\r\n protected _getViewOverlay = (vp: ScreenViewport): React.ReactNode => {\r\n return <ViewOverlayHost viewport={vp} featureOptions={this._featureOptions} userSuppliedOverlay={this._userSuppliedViewOverlay} data-testid=\"ViewOverlay\"/>;\r\n };\r\n\r\n /** Get the NavigationAidControl associated with this ContentControl */\r\n public override get navigationAidControl(): string {\r\n if (this.viewport)\r\n return super.navigationAidControl;\r\n else\r\n return StandardRotationNavigationAidControl.navigationAidId;\r\n }\r\n}\r\n\r\nConfigurableUiManager.registerControl(IModelViewportControl.id, IModelViewportControl);\r\n"]}
|