@itwin/components-react 3.5.0-dev.5 → 3.5.0-dev.51
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 +47 -1
- package/lib/cjs/components-react/filter-builder/FilterBuilderRuleProperty.d.ts.map +1 -1
- package/lib/cjs/components-react/filter-builder/FilterBuilderRuleProperty.js +1 -1
- package/lib/cjs/components-react/filter-builder/FilterBuilderRuleProperty.js.map +1 -1
- package/lib/cjs/components-react/properties/renderers/PropertyView.scss +1 -3
- package/lib/cjs/components-react/table/SimpleTableDataProvider.d.ts +1 -0
- package/lib/cjs/components-react/table/SimpleTableDataProvider.d.ts.map +1 -1
- package/lib/cjs/components-react/table/SimpleTableDataProvider.js +2 -0
- package/lib/cjs/components-react/table/SimpleTableDataProvider.js.map +1 -1
- package/lib/cjs/components-react/table/TableDataProvider.d.ts +8 -0
- package/lib/cjs/components-react/table/TableDataProvider.d.ts.map +1 -1
- package/lib/cjs/components-react/table/TableDataProvider.js +3 -0
- package/lib/cjs/components-react/table/TableDataProvider.js.map +1 -1
- package/lib/cjs/components-react/table/columnfiltering/ColumnFiltering.d.ts +16 -0
- package/lib/cjs/components-react/table/columnfiltering/ColumnFiltering.d.ts.map +1 -1
- package/lib/cjs/components-react/table/columnfiltering/ColumnFiltering.js +7 -0
- package/lib/cjs/components-react/table/columnfiltering/ColumnFiltering.js.map +1 -1
- package/lib/cjs/components-react/table/columnfiltering/ColumnFilteringUtilities.d.ts.map +1 -1
- package/lib/cjs/components-react/table/columnfiltering/ColumnFilteringUtilities.js +1 -0
- package/lib/cjs/components-react/table/columnfiltering/ColumnFilteringUtilities.js.map +1 -1
- package/lib/cjs/components-react/table/columnfiltering/FilterableColumnBase.d.ts.map +1 -1
- package/lib/cjs/components-react/table/columnfiltering/FilterableColumnBase.js +1 -0
- package/lib/cjs/components-react/table/columnfiltering/FilterableColumnBase.js.map +1 -1
- package/lib/cjs/components-react/table/columnfiltering/TableColumnFilterDescriptor.d.ts.map +1 -1
- package/lib/cjs/components-react/table/columnfiltering/TableColumnFilterDescriptor.js +1 -0
- package/lib/cjs/components-react/table/columnfiltering/TableColumnFilterDescriptor.js.map +1 -1
- package/lib/cjs/components-react/table/columnfiltering/TableFilterDescriptor.d.ts.map +1 -1
- package/lib/cjs/components-react/table/columnfiltering/TableFilterDescriptor.js +1 -0
- package/lib/cjs/components-react/table/columnfiltering/TableFilterDescriptor.js.map +1 -1
- package/lib/cjs/components-react/table/columnfiltering/TableFilterDescriptorCollection.d.ts.map +1 -1
- package/lib/cjs/components-react/table/columnfiltering/TableFilterDescriptorCollection.js +1 -0
- package/lib/cjs/components-react/table/columnfiltering/TableFilterDescriptorCollection.js.map +1 -1
- package/lib/cjs/components-react/table/component/ColumnDragLayer.d.ts +1 -1
- package/lib/cjs/components-react/table/component/ColumnDragLayer.js +1 -1
- package/lib/cjs/components-react/table/component/ColumnDragLayer.js.map +1 -1
- package/lib/cjs/components-react/table/component/Table.d.ts +16 -8
- package/lib/cjs/components-react/table/component/Table.d.ts.map +1 -1
- package/lib/cjs/components-react/table/component/Table.js +4 -2
- package/lib/cjs/components-react/table/component/Table.js.map +1 -1
- package/lib/cjs/components-react/table/component/TableCell.d.ts +10 -4
- package/lib/cjs/components-react/table/component/TableCell.d.ts.map +1 -1
- package/lib/cjs/components-react/table/component/TableCell.js +5 -2
- package/lib/cjs/components-react/table/component/TableCell.js.map +1 -1
- package/lib/cjs/components-react/table/component/TableColumn.d.ts +2 -1
- package/lib/cjs/components-react/table/component/TableColumn.d.ts.map +1 -1
- package/lib/cjs/components-react/table/component/TableColumn.js.map +1 -1
- package/lib/cjs/components-react/tree/TreeDataProvider.d.ts +1 -0
- package/lib/cjs/components-react/tree/TreeDataProvider.d.ts.map +1 -1
- package/lib/cjs/components-react/tree/TreeDataProvider.js.map +1 -1
- package/lib/cjs/components-react/tree/controlled/TreeEventDispatcher.d.ts.map +1 -1
- package/lib/cjs/components-react/tree/controlled/TreeEventDispatcher.js +17 -16
- package/lib/cjs/components-react/tree/controlled/TreeEventDispatcher.js.map +1 -1
- package/lib/cjs/components-react/tree/controlled/TreeModel.d.ts +2 -0
- package/lib/cjs/components-react/tree/controlled/TreeModel.d.ts.map +1 -1
- package/lib/cjs/components-react/tree/controlled/TreeModel.js +1 -0
- package/lib/cjs/components-react/tree/controlled/TreeModel.js.map +1 -1
- package/lib/esm/components-react/filter-builder/FilterBuilderRuleProperty.d.ts.map +1 -1
- package/lib/esm/components-react/filter-builder/FilterBuilderRuleProperty.js +1 -1
- package/lib/esm/components-react/filter-builder/FilterBuilderRuleProperty.js.map +1 -1
- package/lib/esm/components-react/properties/renderers/PropertyView.scss +1 -3
- package/lib/esm/components-react/table/SimpleTableDataProvider.d.ts +1 -0
- package/lib/esm/components-react/table/SimpleTableDataProvider.d.ts.map +1 -1
- package/lib/esm/components-react/table/SimpleTableDataProvider.js +2 -0
- package/lib/esm/components-react/table/SimpleTableDataProvider.js.map +1 -1
- package/lib/esm/components-react/table/TableDataProvider.d.ts +8 -0
- package/lib/esm/components-react/table/TableDataProvider.d.ts.map +1 -1
- package/lib/esm/components-react/table/TableDataProvider.js +3 -0
- package/lib/esm/components-react/table/TableDataProvider.js.map +1 -1
- package/lib/esm/components-react/table/columnfiltering/ColumnFiltering.d.ts +16 -0
- package/lib/esm/components-react/table/columnfiltering/ColumnFiltering.d.ts.map +1 -1
- package/lib/esm/components-react/table/columnfiltering/ColumnFiltering.js +7 -0
- package/lib/esm/components-react/table/columnfiltering/ColumnFiltering.js.map +1 -1
- package/lib/esm/components-react/table/columnfiltering/ColumnFilteringUtilities.d.ts.map +1 -1
- package/lib/esm/components-react/table/columnfiltering/ColumnFilteringUtilities.js +1 -0
- package/lib/esm/components-react/table/columnfiltering/ColumnFilteringUtilities.js.map +1 -1
- package/lib/esm/components-react/table/columnfiltering/FilterableColumnBase.d.ts.map +1 -1
- package/lib/esm/components-react/table/columnfiltering/FilterableColumnBase.js +1 -0
- package/lib/esm/components-react/table/columnfiltering/FilterableColumnBase.js.map +1 -1
- package/lib/esm/components-react/table/columnfiltering/TableColumnFilterDescriptor.d.ts.map +1 -1
- package/lib/esm/components-react/table/columnfiltering/TableColumnFilterDescriptor.js +1 -0
- package/lib/esm/components-react/table/columnfiltering/TableColumnFilterDescriptor.js.map +1 -1
- package/lib/esm/components-react/table/columnfiltering/TableFilterDescriptor.d.ts.map +1 -1
- package/lib/esm/components-react/table/columnfiltering/TableFilterDescriptor.js +1 -0
- package/lib/esm/components-react/table/columnfiltering/TableFilterDescriptor.js.map +1 -1
- package/lib/esm/components-react/table/columnfiltering/TableFilterDescriptorCollection.d.ts.map +1 -1
- package/lib/esm/components-react/table/columnfiltering/TableFilterDescriptorCollection.js +1 -0
- package/lib/esm/components-react/table/columnfiltering/TableFilterDescriptorCollection.js.map +1 -1
- package/lib/esm/components-react/table/component/ColumnDragLayer.d.ts +1 -1
- package/lib/esm/components-react/table/component/ColumnDragLayer.js +1 -1
- package/lib/esm/components-react/table/component/ColumnDragLayer.js.map +1 -1
- package/lib/esm/components-react/table/component/Table.d.ts +16 -8
- package/lib/esm/components-react/table/component/Table.d.ts.map +1 -1
- package/lib/esm/components-react/table/component/Table.js +4 -2
- package/lib/esm/components-react/table/component/Table.js.map +1 -1
- package/lib/esm/components-react/table/component/TableCell.d.ts +10 -4
- package/lib/esm/components-react/table/component/TableCell.d.ts.map +1 -1
- package/lib/esm/components-react/table/component/TableCell.js +5 -2
- package/lib/esm/components-react/table/component/TableCell.js.map +1 -1
- package/lib/esm/components-react/table/component/TableColumn.d.ts +2 -1
- package/lib/esm/components-react/table/component/TableColumn.d.ts.map +1 -1
- package/lib/esm/components-react/table/component/TableColumn.js.map +1 -1
- package/lib/esm/components-react/tree/TreeDataProvider.d.ts +1 -0
- package/lib/esm/components-react/tree/TreeDataProvider.d.ts.map +1 -1
- package/lib/esm/components-react/tree/TreeDataProvider.js.map +1 -1
- package/lib/esm/components-react/tree/controlled/TreeEventDispatcher.d.ts.map +1 -1
- package/lib/esm/components-react/tree/controlled/TreeEventDispatcher.js +17 -16
- package/lib/esm/components-react/tree/controlled/TreeEventDispatcher.js.map +1 -1
- package/lib/esm/components-react/tree/controlled/TreeModel.d.ts +2 -0
- package/lib/esm/components-react/tree/controlled/TreeModel.d.ts.map +1 -1
- package/lib/esm/components-react/tree/controlled/TreeModel.js +1 -0
- package/lib/esm/components-react/tree/controlled/TreeModel.js.map +1 -1
- package/package.json +12 -12
|
@@ -9,7 +9,8 @@ import { PropertyDialogState, PropertyValueRendererManager } from "../../propert
|
|
|
9
9
|
import { CellItem } from "../TableDataProvider";
|
|
10
10
|
/**
|
|
11
11
|
* Properties of the [[TableCell]] React component
|
|
12
|
-
* @
|
|
12
|
+
* @deprecated Use the Table component in @itwin/itwinui-react instead, which does not use this interface.
|
|
13
|
+
* @public
|
|
13
14
|
*/
|
|
14
15
|
export interface TableCellProps extends CommonProps {
|
|
15
16
|
/** Additional class name for the cell container */
|
|
@@ -29,14 +30,16 @@ export interface TableCellProps extends CommonProps {
|
|
|
29
30
|
}
|
|
30
31
|
/**
|
|
31
32
|
* A React component that renders a table cell
|
|
32
|
-
* @
|
|
33
|
+
* @deprecated Use the Table component in @itwin/itwinui-react instead, which does not use this class.
|
|
34
|
+
* @public
|
|
33
35
|
*/
|
|
34
36
|
export declare class TableCell extends React.PureComponent<TableCellProps> {
|
|
35
37
|
/** @internal */
|
|
36
38
|
render(): JSX.Element;
|
|
37
39
|
}
|
|
38
40
|
/** Properties of the [[TableCellContent]] React component
|
|
39
|
-
* @
|
|
41
|
+
* @deprecated Use the Table component in @itwin/itwinui-react instead, which does not use this interface.
|
|
42
|
+
* @public
|
|
40
43
|
*/
|
|
41
44
|
export interface TableCellContentProps extends CommonProps {
|
|
42
45
|
/** Indicates, whether container cell is selected or not */
|
|
@@ -58,7 +61,8 @@ interface TableCellContentState {
|
|
|
58
61
|
content: React.ReactNode;
|
|
59
62
|
}
|
|
60
63
|
/** A React component that renders table cell content
|
|
61
|
-
* @
|
|
64
|
+
* @deprecated Use the Table component in @itwin/itwinui-react instead, which does not use this class.
|
|
65
|
+
* @public
|
|
62
66
|
*/
|
|
63
67
|
export declare class TableCellContent extends React.PureComponent<TableCellContentProps, TableCellContentState> {
|
|
64
68
|
/** @internal */
|
|
@@ -77,6 +81,7 @@ export declare class TableCellContent extends React.PureComponent<TableCellConte
|
|
|
77
81
|
render(): React.ReactNode;
|
|
78
82
|
}
|
|
79
83
|
/** Properties for the [[TableIconCellContent]] React component
|
|
84
|
+
* @deprecated Use the Table component in @itwin/itwinui-react instead, which does not use this interface.
|
|
80
85
|
* @public
|
|
81
86
|
*/
|
|
82
87
|
export interface TableIconCellContentProps {
|
|
@@ -85,6 +90,7 @@ export interface TableIconCellContentProps {
|
|
|
85
90
|
}
|
|
86
91
|
/**
|
|
87
92
|
* A React component that renders table cell content as a Bentley icon
|
|
93
|
+
* @deprecated Use the Table component in @itwin/itwinui-react instead, which does not use this interface.
|
|
88
94
|
* @public
|
|
89
95
|
*/
|
|
90
96
|
export declare class TableIconCellContent extends React.PureComponent<TableIconCellContentProps> {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TableCell.d.ts","sourceRoot":"","sources":["../../../../../src/components-react/table/component/TableCell.tsx"],"names":[],"mappings":"AAKA;;GAEG;AAEH,OAAO,kBAAkB,CAAC;AAE1B,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,WAAW,EAAQ,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAmB,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAEtF,OAAO,EACkB,mBAAmB,EAAgC,4BAA4B,EACvG,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAEhD
|
|
1
|
+
{"version":3,"file":"TableCell.d.ts","sourceRoot":"","sources":["../../../../../src/components-react/table/component/TableCell.tsx"],"names":[],"mappings":"AAKA;;GAEG;AAEH,OAAO,kBAAkB,CAAC;AAE1B,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,WAAW,EAAQ,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAmB,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAEtF,OAAO,EACkB,mBAAmB,EAAgC,4BAA4B,EACvG,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAEhD;;;;GAIG;AACH,MAAM,WAAW,cAAe,SAAQ,WAAW;IACjD,mDAAmD;IACnD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,kCAAkC;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,mBAAmB;IACnB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,2BAA2B;IAC3B,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,KAAK,IAAI,CAAC;IACxC,+BAA+B;IAC/B,WAAW,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,KAAK,IAAI,CAAC;IAC5C,+BAA+B;IAC/B,WAAW,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,KAAK,IAAI,CAAC;IAC5C,0GAA0G;IAC1G,gBAAgB,CAAC,EAAE,IAAI,CAAC,oBAAoB,EAAE,OAAO,CAAC,CAAC;CACxD;AAED;;;;GAIG;AACH,qBAAa,SAAU,SAAQ,KAAK,CAAC,aAAa,CAAC,cAAc,CAAC;IAChE,gBAAgB;IACA,MAAM;CA8BvB;AAED;;;GAGG;AACH,MAAM,WAAW,qBAAsB,SAAQ,WAAW;IACxD,2DAA2D;IAC3D,UAAU,EAAE,OAAO,CAAC;IACpB,+CAA+C;IAC/C,QAAQ,EAAE,QAAQ,CAAC;IACnB,8BAA8B;IAC9B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,mCAAmC;IACnC,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,mBAAmB,KAAK,IAAI,CAAC;IACpD,sCAAsC;IACtC,4BAA4B,EAAE,4BAA4B,CAAC;CAC5D;AAED;;GAEG;AACH,UAAU,qBAAqB;IAC7B,uBAAuB;IACvB,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC;CAC1B;AAED;;;GAGG;AACH,qBAAa,gBAAiB,SAAQ,KAAK,CAAC,aAAa,CAAC,qBAAqB,EAAE,qBAAqB,CAAC;IACrG,gBAAgB;IAChB,SAAyB,KAAK,EAAE,qBAAqB,CAEnD;IAEF,OAAO,CAAC,UAAU,CAAS;IAE3B,OAAO,CAAC,QAAQ;YAUF,aAAa;IAkB3B,OAAO,CAAC,aAAa;IAOrB,gBAAgB;IACM,iBAAiB;IASvC,gBAAgB;IACA,oBAAoB;IAIpC,gBAAgB;IACM,kBAAkB,CAAC,SAAS,EAAE,qBAAqB;IASzE,gBAAgB;IACA,MAAM;CAGvB;AAED;;;GAGG;AACH,MAAM,WAAW,yBAAyB;IACxC,gBAAgB;IAChB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;;;GAIG;AACH,qBAAa,oBAAqB,SAAQ,KAAK,CAAC,aAAa,CAAC,yBAAyB,CAAC;IACtF,gBAAgB;IACA,MAAM;CAGvB"}
|
|
@@ -15,7 +15,8 @@ import { ItemStyleProvider } from "../../properties/ItemStyle";
|
|
|
15
15
|
import { PropertyContainerType, } from "../../properties/ValueRendererManager";
|
|
16
16
|
/**
|
|
17
17
|
* A React component that renders a table cell
|
|
18
|
-
* @
|
|
18
|
+
* @deprecated Use the Table component in @itwin/itwinui-react instead, which does not use this class.
|
|
19
|
+
* @public
|
|
19
20
|
*/
|
|
20
21
|
export class TableCell extends React.PureComponent {
|
|
21
22
|
/** @internal */
|
|
@@ -28,7 +29,8 @@ export class TableCell extends React.PureComponent {
|
|
|
28
29
|
}
|
|
29
30
|
}
|
|
30
31
|
/** A React component that renders table cell content
|
|
31
|
-
* @
|
|
32
|
+
* @deprecated Use the Table component in @itwin/itwinui-react instead, which does not use this class.
|
|
33
|
+
* @public
|
|
32
34
|
*/
|
|
33
35
|
export class TableCellContent extends React.PureComponent {
|
|
34
36
|
constructor() {
|
|
@@ -95,6 +97,7 @@ export class TableCellContent extends React.PureComponent {
|
|
|
95
97
|
}
|
|
96
98
|
/**
|
|
97
99
|
* A React component that renders table cell content as a Bentley icon
|
|
100
|
+
* @deprecated Use the Table component in @itwin/itwinui-react instead, which does not use this interface.
|
|
98
101
|
* @public
|
|
99
102
|
*/
|
|
100
103
|
export class TableIconCellContent extends React.PureComponent {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TableCell.js","sourceRoot":"","sources":["../../../../../src/components-react/table/component/TableCell.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/* eslint-disable deprecation/deprecation */\r\n/** @packageDocumentation\r\n * @module Table\r\n */\r\n\r\nimport \"./TableCell.scss\";\r\nimport classnames from \"classnames\";\r\nimport * as React from \"react\";\r\nimport { CommonProps, Icon, Omit } from \"@itwin/core-react\";\r\nimport { EditorContainer, EditorContainerProps } from \"../../editors/EditorContainer\";\r\nimport { ItemStyleProvider } from \"../../properties/ItemStyle\";\r\nimport {\r\n PropertyContainerType, PropertyDialogState, PropertyValueRendererContext, PropertyValueRendererManager,\r\n} from \"../../properties/ValueRendererManager\";\r\nimport { CellItem } from \"../TableDataProvider\";\r\n\r\n/**\r\n * Properties of the [[TableCell]] React component\r\n * @public @deprecated\r\n */\r\nexport interface TableCellProps extends CommonProps {\r\n /** Additional class name for the cell container */\r\n className?: string;\r\n /** Title of the cell container */\r\n title: string;\r\n /** Cell content */\r\n children?: React.ReactNode;\r\n /** Click event callback */\r\n onClick?: (e: React.MouseEvent) => void;\r\n /** MouseMove event callback */\r\n onMouseMove?: (e: React.MouseEvent) => void;\r\n /** MouseDown event callback */\r\n onMouseDown?: (e: React.MouseEvent) => void;\r\n /** Properties for [[EditorContainer]]. Activates cell editing and provides properties to the container */\r\n cellEditingProps?: Omit<EditorContainerProps, \"title\">;\r\n}\r\n\r\n/**\r\n * A React component that renders a table cell\r\n * @public @deprecated\r\n */\r\nexport class TableCell extends React.PureComponent<TableCellProps> {\r\n /** @internal */\r\n public override render() {\r\n\r\n if (this.props.cellEditingProps) {\r\n return (\r\n <div\r\n className={classnames(\"components-table-cell\", this.props.className)}\r\n style={this.props.style}\r\n >\r\n <EditorContainer\r\n title={this.props.title}\r\n {...this.props.cellEditingProps}\r\n />\r\n </div>\r\n );\r\n }\r\n\r\n return (\r\n <div\r\n className={classnames(\"components-table-cell\", this.props.className)}\r\n style={this.props.style}\r\n title={this.props.title}\r\n onClick={this.props.onClick}\r\n onMouseMove={this.props.onMouseMove}\r\n onMouseDown={this.props.onMouseDown}\r\n role=\"presentation\"\r\n >\r\n {this.props.children}\r\n </div>\r\n );\r\n }\r\n}\r\n\r\n/** Properties of the [[TableCellContent]] React component\r\n * @public @deprecated\r\n */\r\nexport interface TableCellContentProps extends CommonProps {\r\n /** Indicates, whether container cell is selected or not */\r\n isSelected: boolean;\r\n /** Props for the item that will be rendered */\r\n cellItem: CellItem;\r\n /** Height of the component */\r\n height?: number;\r\n /** Callback to DialogOpen event */\r\n onDialogOpen?: (state: PropertyDialogState) => void;\r\n /** Property value renderer manager */\r\n propertyValueRendererManager: PropertyValueRendererManager;\r\n}\r\n\r\n/** State of the [[TableCellContent]] React component\r\n * @internal @deprecated\r\n */\r\ninterface TableCellContentState {\r\n /** Rendered content */\r\n content: React.ReactNode;\r\n}\r\n\r\n/** A React component that renders table cell content\r\n * @public @deprecated\r\n */\r\nexport class TableCellContent extends React.PureComponent<TableCellContentProps, TableCellContentState> {\r\n /** @internal */\r\n public override readonly state: TableCellContentState = {\r\n content: <div className={this.props.className} style={this.getStyle(this.props.cellItem, this.props.isSelected, this.props.height)} />,\r\n };\r\n\r\n private _isMounted = false;\r\n\r\n private getStyle(cellItem: CellItem, isSelected: boolean, height?: number): React.CSSProperties {\r\n return {\r\n ...ItemStyleProvider.createStyle(cellItem.style ? cellItem.style : {}, isSelected),\r\n textAlign: cellItem.alignment,\r\n height,\r\n lineHeight: `${height}px`, // Centers text vertically\r\n ...this.props.style,\r\n };\r\n }\r\n\r\n private async renderContent(props: TableCellContentProps) {\r\n const style = this.getStyle(props.cellItem, props.isSelected, props.height);\r\n\r\n if (!props.cellItem.record)\r\n return <div className={this.props.className} style={style} />;\r\n\r\n const rendererContext: PropertyValueRendererContext = {\r\n containerType: PropertyContainerType.Table,\r\n onDialogOpen: this.props.onDialogOpen,\r\n style,\r\n // TODO: Enable, when table gets refactored. Explanation in ./../table/NonPrimitiveValueRenderer\r\n // onPopupShow: this._onPopupShow,\r\n // onPopupHide: this._onPopupHide,\r\n };\r\n\r\n return this.props.propertyValueRendererManager.render(props.cellItem.record, rendererContext);\r\n }\r\n\r\n private doPropsDiffer(props1: TableCellContentProps, props2: TableCellContentProps) {\r\n return props1.cellItem !== props2.cellItem\r\n || props1.isSelected !== props2.isSelected\r\n || props1.onDialogOpen !== props2.onDialogOpen\r\n || props1.propertyValueRendererManager !== props2.propertyValueRendererManager;\r\n }\r\n\r\n /** @internal */\r\n public override async componentDidMount() {\r\n this._isMounted = true;\r\n const content = await this.renderContent(this.props);\r\n\r\n // istanbul ignore else\r\n if (this._isMounted)\r\n this.setState({ content });\r\n }\r\n\r\n /** @internal */\r\n public override componentWillUnmount() {\r\n this._isMounted = false;\r\n }\r\n\r\n /** @internal */\r\n public override async componentDidUpdate(prevProps: TableCellContentProps) {\r\n if (this.doPropsDiffer(prevProps, this.props)) {\r\n const content = await this.renderContent(this.props);\r\n\r\n if (this._isMounted)\r\n this.setState({ content });\r\n }\r\n }\r\n\r\n /** @internal */\r\n public override render() {\r\n return this.state.content;\r\n }\r\n}\r\n\r\n/** Properties for the [[TableIconCellContent]] React component\r\n * @public\r\n */\r\nexport interface TableIconCellContentProps {\r\n /** Icon name */\r\n iconName: string;\r\n}\r\n\r\n/**\r\n * A React component that renders table cell content as a Bentley icon\r\n * @public\r\n */\r\nexport class TableIconCellContent extends React.PureComponent<TableIconCellContentProps> {\r\n /** @internal */\r\n public override render() {\r\n return <Icon iconSpec={this.props.iconName} />;\r\n }\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"file":"TableCell.js","sourceRoot":"","sources":["../../../../../src/components-react/table/component/TableCell.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/* eslint-disable deprecation/deprecation */\r\n/** @packageDocumentation\r\n * @module Table\r\n */\r\n\r\nimport \"./TableCell.scss\";\r\nimport classnames from \"classnames\";\r\nimport * as React from \"react\";\r\nimport { CommonProps, Icon, Omit } from \"@itwin/core-react\";\r\nimport { EditorContainer, EditorContainerProps } from \"../../editors/EditorContainer\";\r\nimport { ItemStyleProvider } from \"../../properties/ItemStyle\";\r\nimport {\r\n PropertyContainerType, PropertyDialogState, PropertyValueRendererContext, PropertyValueRendererManager,\r\n} from \"../../properties/ValueRendererManager\";\r\nimport { CellItem } from \"../TableDataProvider\";\r\n\r\n/**\r\n * Properties of the [[TableCell]] React component\r\n * @deprecated Use the Table component in @itwin/itwinui-react instead, which does not use this interface.\r\n * @public\r\n */\r\nexport interface TableCellProps extends CommonProps {\r\n /** Additional class name for the cell container */\r\n className?: string;\r\n /** Title of the cell container */\r\n title: string;\r\n /** Cell content */\r\n children?: React.ReactNode;\r\n /** Click event callback */\r\n onClick?: (e: React.MouseEvent) => void;\r\n /** MouseMove event callback */\r\n onMouseMove?: (e: React.MouseEvent) => void;\r\n /** MouseDown event callback */\r\n onMouseDown?: (e: React.MouseEvent) => void;\r\n /** Properties for [[EditorContainer]]. Activates cell editing and provides properties to the container */\r\n cellEditingProps?: Omit<EditorContainerProps, \"title\">;\r\n}\r\n\r\n/**\r\n * A React component that renders a table cell\r\n * @deprecated Use the Table component in @itwin/itwinui-react instead, which does not use this class.\r\n * @public\r\n */\r\nexport class TableCell extends React.PureComponent<TableCellProps> {\r\n /** @internal */\r\n public override render() {\r\n\r\n if (this.props.cellEditingProps) {\r\n return (\r\n <div\r\n className={classnames(\"components-table-cell\", this.props.className)}\r\n style={this.props.style}\r\n >\r\n <EditorContainer\r\n title={this.props.title}\r\n {...this.props.cellEditingProps}\r\n />\r\n </div>\r\n );\r\n }\r\n\r\n return (\r\n <div\r\n className={classnames(\"components-table-cell\", this.props.className)}\r\n style={this.props.style}\r\n title={this.props.title}\r\n onClick={this.props.onClick}\r\n onMouseMove={this.props.onMouseMove}\r\n onMouseDown={this.props.onMouseDown}\r\n role=\"presentation\"\r\n >\r\n {this.props.children}\r\n </div>\r\n );\r\n }\r\n}\r\n\r\n/** Properties of the [[TableCellContent]] React component\r\n * @deprecated Use the Table component in @itwin/itwinui-react instead, which does not use this interface.\r\n * @public\r\n */\r\nexport interface TableCellContentProps extends CommonProps {\r\n /** Indicates, whether container cell is selected or not */\r\n isSelected: boolean;\r\n /** Props for the item that will be rendered */\r\n cellItem: CellItem;\r\n /** Height of the component */\r\n height?: number;\r\n /** Callback to DialogOpen event */\r\n onDialogOpen?: (state: PropertyDialogState) => void;\r\n /** Property value renderer manager */\r\n propertyValueRendererManager: PropertyValueRendererManager;\r\n}\r\n\r\n/** State of the [[TableCellContent]] React component\r\n * @internal @deprecated\r\n */\r\ninterface TableCellContentState {\r\n /** Rendered content */\r\n content: React.ReactNode;\r\n}\r\n\r\n/** A React component that renders table cell content\r\n * @deprecated Use the Table component in @itwin/itwinui-react instead, which does not use this class.\r\n * @public\r\n */\r\nexport class TableCellContent extends React.PureComponent<TableCellContentProps, TableCellContentState> {\r\n /** @internal */\r\n public override readonly state: TableCellContentState = {\r\n content: <div className={this.props.className} style={this.getStyle(this.props.cellItem, this.props.isSelected, this.props.height)} />,\r\n };\r\n\r\n private _isMounted = false;\r\n\r\n private getStyle(cellItem: CellItem, isSelected: boolean, height?: number): React.CSSProperties {\r\n return {\r\n ...ItemStyleProvider.createStyle(cellItem.style ? cellItem.style : {}, isSelected),\r\n textAlign: cellItem.alignment,\r\n height,\r\n lineHeight: `${height}px`, // Centers text vertically\r\n ...this.props.style,\r\n };\r\n }\r\n\r\n private async renderContent(props: TableCellContentProps) {\r\n const style = this.getStyle(props.cellItem, props.isSelected, props.height);\r\n\r\n if (!props.cellItem.record)\r\n return <div className={this.props.className} style={style} />;\r\n\r\n const rendererContext: PropertyValueRendererContext = {\r\n containerType: PropertyContainerType.Table,\r\n onDialogOpen: this.props.onDialogOpen,\r\n style,\r\n // TODO: Enable, when table gets refactored. Explanation in ./../table/NonPrimitiveValueRenderer\r\n // onPopupShow: this._onPopupShow,\r\n // onPopupHide: this._onPopupHide,\r\n };\r\n\r\n return this.props.propertyValueRendererManager.render(props.cellItem.record, rendererContext);\r\n }\r\n\r\n private doPropsDiffer(props1: TableCellContentProps, props2: TableCellContentProps) {\r\n return props1.cellItem !== props2.cellItem\r\n || props1.isSelected !== props2.isSelected\r\n || props1.onDialogOpen !== props2.onDialogOpen\r\n || props1.propertyValueRendererManager !== props2.propertyValueRendererManager;\r\n }\r\n\r\n /** @internal */\r\n public override async componentDidMount() {\r\n this._isMounted = true;\r\n const content = await this.renderContent(this.props);\r\n\r\n // istanbul ignore else\r\n if (this._isMounted)\r\n this.setState({ content });\r\n }\r\n\r\n /** @internal */\r\n public override componentWillUnmount() {\r\n this._isMounted = false;\r\n }\r\n\r\n /** @internal */\r\n public override async componentDidUpdate(prevProps: TableCellContentProps) {\r\n if (this.doPropsDiffer(prevProps, this.props)) {\r\n const content = await this.renderContent(this.props);\r\n\r\n if (this._isMounted)\r\n this.setState({ content });\r\n }\r\n }\r\n\r\n /** @internal */\r\n public override render() {\r\n return this.state.content;\r\n }\r\n}\r\n\r\n/** Properties for the [[TableIconCellContent]] React component\r\n * @deprecated Use the Table component in @itwin/itwinui-react instead, which does not use this interface.\r\n * @public\r\n */\r\nexport interface TableIconCellContentProps {\r\n /** Icon name */\r\n iconName: string;\r\n}\r\n\r\n/**\r\n * A React component that renders table cell content as a Bentley icon\r\n * @deprecated Use the Table component in @itwin/itwinui-react instead, which does not use this interface.\r\n * @public\r\n */\r\nexport class TableIconCellContent extends React.PureComponent<TableIconCellContentProps> {\r\n /** @internal */\r\n public override render() {\r\n return <Icon iconSpec={this.props.iconName} />;\r\n }\r\n}\r\n"]}
|
|
@@ -6,7 +6,8 @@ import { DistinctValueCollection, FilterableColumn, FilterableTable } from "../c
|
|
|
6
6
|
import { FilterableColumnBase } from "../columnfiltering/FilterableColumnBase";
|
|
7
7
|
import { ColumnDescription, TableDataProvider } from "../TableDataProvider";
|
|
8
8
|
/** ReactDataGrid.Column with additional properties
|
|
9
|
-
* @
|
|
9
|
+
* @deprecated Use the Table component in @itwin/itwinui-react instead, which does not use this interface.
|
|
10
|
+
* @public
|
|
10
11
|
*/
|
|
11
12
|
export interface ReactDataGridColumn extends ReactDataGrid.Column<any> {
|
|
12
13
|
/** Indicates whether the display value for the cell is treated as an icon spec. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TableColumn.d.ts","sourceRoot":"","sources":["../../../../../src/components-react/table/component/TableColumn.tsx"],"names":[],"mappings":"AAKA;;GAEG;AAEH,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,uBAAuB,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAChH,OAAO,EAAE,oBAAoB,EAAE,MAAM,yCAAyC,CAAC;AAC/E,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAI5E
|
|
1
|
+
{"version":3,"file":"TableColumn.d.ts","sourceRoot":"","sources":["../../../../../src/components-react/table/component/TableColumn.tsx"],"names":[],"mappings":"AAKA;;GAEG;AAEH,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,uBAAuB,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAChH,OAAO,EAAE,oBAAoB,EAAE,MAAM,yCAAyC,CAAC;AAC/E,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAI5E;;;GAGG;AACH,MAAM,WAAW,mBAAoB,SAAQ,aAAa,CAAC,MAAM,CAAC,GAAG,CAAC;IACpE,mFAAmF;IACnF,IAAI,CAAC,EAAE,OAAO,CAAC;IAEf,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;CACrC;AAED;;GAEG;AACH,qBAAa,WAAY,SAAQ,oBAAoB;aAEiD,mBAAmB,EAAE,mBAAmB;gBAAhI,eAAe,EAAE,eAAe,EAAE,iBAAiB,EAAE,iBAAiB,EAAkB,mBAAmB,EAAE,mBAAmB;IAI5I,IAAW,GAAG,IAAI,MAAM,CAAiC;IAElD,YAAY,CAAC,EAAE,iBAAiB,CAAC;IAEjC,uBAAuB,CAAC,EAAE,uBAAuB,CAAC;IAEzD;;OAEG;IACU,iBAAiB,CAAC,iBAAiB,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,uBAAuB,CAAC;CAK7F"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TableColumn.js","sourceRoot":"","sources":["../../../../../src/components-react/table/component/TableColumn.tsx"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F,4CAA4C;AAC5C;;GAEG;AAGH,OAAO,EAAE,uBAAuB,EAAqC,MAAM,oCAAoC,CAAC;AAChH,OAAO,EAAE,oBAAoB,EAAE,MAAM,yCAAyC,CAAC;
|
|
1
|
+
{"version":3,"file":"TableColumn.js","sourceRoot":"","sources":["../../../../../src/components-react/table/component/TableColumn.tsx"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F,4CAA4C;AAC5C;;GAEG;AAGH,OAAO,EAAE,uBAAuB,EAAqC,MAAM,oCAAoC,CAAC;AAChH,OAAO,EAAE,oBAAoB,EAAE,MAAM,yCAAyC,CAAC;AAgB/E;;GAEG;AACH,MAAM,OAAO,WAAY,SAAQ,oBAAoB;IAEnD,YAAY,eAAgC,EAAE,iBAAoC,EAAkB,mBAAwC;QAC1I,KAAK,CAAC,eAAe,EAAE,iBAAiB,CAAC,CAAC;QADwD,wBAAmB,GAAnB,mBAAmB,CAAqB;IAE5I,CAAC;IAED,IAAW,GAAG,KAAa,OAAO,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC;IAMzD;;OAEG;IACI,KAAK,CAAC,iBAAiB,CAAC,iBAA0B;QACvD,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,YAAY,CAAC,iBAAiB;YAC1D,OAAO,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,EAAE,iBAAiB,CAAC,CAAC;QAC1E,OAAO,IAAI,uBAAuB,EAAE,CAAC;IACvC,CAAC;CACF","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/* eslint-disable deprecation/deprecation */\r\n/** @packageDocumentation\r\n * @module Table\r\n */\r\n\r\nimport ReactDataGrid from \"react-data-grid\";\r\nimport { DistinctValueCollection, FilterableColumn, FilterableTable } from \"../columnfiltering/ColumnFiltering\";\r\nimport { FilterableColumnBase } from \"../columnfiltering/FilterableColumnBase\";\r\nimport { ColumnDescription, TableDataProvider } from \"../TableDataProvider\";\r\n\r\n// cSpell:ignore columnfiltering\r\n\r\n/** ReactDataGrid.Column with additional properties\r\n * @deprecated Use the Table component in @itwin/itwinui-react instead, which does not use this interface.\r\n * @public\r\n */\r\nexport interface ReactDataGridColumn extends ReactDataGrid.Column<any> {\r\n /** Indicates whether the display value for the cell is treated as an icon spec. */\r\n icon?: boolean;\r\n /* Table column filtering info */\r\n filterableColumn?: FilterableColumn;\r\n}\r\n\r\n/** Table Column used by the [[Table]] component\r\n * @internal\r\n */\r\nexport class TableColumn extends FilterableColumnBase {\r\n\r\n constructor(filterableTable: FilterableTable, columnDescription: ColumnDescription, public readonly reactDataGridColumn: ReactDataGridColumn) {\r\n super(filterableTable, columnDescription);\r\n }\r\n\r\n public get key(): string { return this.filterMemberKey; }\r\n\r\n public dataProvider?: TableDataProvider;\r\n\r\n public distinctValueCollection?: DistinctValueCollection;\r\n\r\n /** Gets the distinct values for a column.\r\n * @return The distinct values.\r\n */\r\n public async getDistinctValues(maximumValueCount?: number): Promise<DistinctValueCollection> {\r\n if (this.dataProvider && this.dataProvider.getDistinctValues)\r\n return this.dataProvider.getDistinctValues(this.key, maximumValueCount);\r\n return new DistinctValueCollection();\r\n }\r\n}\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TreeDataProvider.d.ts","sourceRoot":"","sources":["../../../../src/components-react/tree/TreeDataProvider.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"TreeDataProvider.d.ts","sourceRoot":"","sources":["../../../../src/components-react/tree/TreeDataProvider.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TreeDataProvider.js","sourceRoot":"","sources":["../../../../src/components-react/tree/TreeDataProvider.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;
|
|
1
|
+
{"version":3,"file":"TreeDataProvider.js","sourceRoot":"","sources":["../../../../src/components-react/tree/TreeDataProvider.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AA4EH;;GAEG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,QAA0B,EAAmC,EAAE;IACnG,OAAO,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;AACjC,CAAC,CAAC;AACF;;GAEG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,QAA0B,EAAuC,EAAE;IAC3G,OAAO,CAAC,SAAS,KAAM,QAAoC,CAAC,IAAI,CAAC,CAAC;AACpE,CAAC,CAAC;AACF;;GAEG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,QAA0B,EAAsC,EAAE;IACzG,OAAO,CAAC,OAAO,QAAQ,KAAK,UAAU,CAAC,CAAC;AAC1C,CAAC,CAAC;AACF;;GAEG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,QAA0B,EAAiC,EAAE;IACvG,MAAM,SAAS,GAAG,QAA6B,CAAC;IAChD,OAAO,SAAS,KAAK,SAAS,CAAC,QAAQ,IAAI,SAAS,KAAK,SAAS,CAAC,aAAa,CAAC;AACnF,CAAC,CAAC;AACF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,IAAkB,EAAE,EAAE;IAChD,MAAM,eAAe,GAAG,IAAqC,CAAC;IAC9D,IAAI,UAAU,IAAI,eAAe,IAAI,eAAe,CAAC,QAAQ,IAAI,eAAe,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC;QAClG,OAAO,IAAI,CAAC;IACd,MAAM,aAAa,GAAG,IAA+B,CAAC;IACtD,IAAI,aAAa,IAAI,aAAa,IAAI,aAAa,CAAC,WAAW;QAC7D,OAAO,IAAI,CAAC;IACd,OAAO,KAAK,CAAC;AACf,CAAC,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 Tree\r\n */\r\n\r\nimport { BeEvent } from \"@itwin/core-bentley\";\r\nimport { PropertyRecord } from \"@itwin/appui-abstract\";\r\nimport { CheckBoxState } from \"@itwin/core-react\";\r\nimport { PageOptions } from \"../common/PageOptions\";\r\nimport { ItemStyle } from \"../properties/ItemStyle\";\r\n\r\n/**\r\n * A node item which can be displayed in a tree.\r\n * @public\r\n */\r\nexport interface TreeNodeItem {\r\n id: string;\r\n parentId?: string;\r\n label: PropertyRecord;\r\n description?: string;\r\n autoExpand?: boolean;\r\n icon?: string;\r\n isSelectionDisabled?: boolean;\r\n isCheckboxVisible?: boolean;\r\n isCheckboxDisabled?: boolean;\r\n checkBoxState?: CheckBoxState;\r\n isEditable?: boolean;\r\n style?: ItemStyle;\r\n /**\r\n * A key-value pairs data structure that can be used by data provider\r\n * to store some custom data for this node item.\r\n */\r\n extendedData?: { [key: string]: any };\r\n}\r\n\r\n/** A [[TreeNodeItem]] for immediately loaded trees\r\n * @public\r\n */\r\nexport interface ImmediatelyLoadedTreeNodeItem extends TreeNodeItem {\r\n children?: TreeNodeItem[];\r\n}\r\n\r\n/** A [[TreeNodeItem]] for delay-loaded trees\r\n * @public\r\n */\r\nexport interface DelayLoadedTreeNodeItem extends TreeNodeItem {\r\n hasChildren?: boolean;\r\n}\r\n\r\n/** Array of tree node data elements\r\n * @public\r\n */\r\nexport type TreeDataProviderRaw = ImmediatelyLoadedTreeNodeItem[];\r\n\r\n/** A Promise for TreeDataProviderRaw\r\n * @public\r\n */\r\nexport type TreeDataProviderPromise = Promise<TreeDataProviderRaw>;\r\n\r\n/** Signature for a method that returns TreeDataProviderPromise for supplied parent node\r\n * @public\r\n */\r\nexport type TreeDataProviderMethod = (node?: TreeNodeItem) => Promise<DelayLoadedTreeNodeItem[]>;\r\n\r\n/** Interface for a tree data provider class\r\n * @public\r\n */\r\nexport interface ITreeDataProvider {\r\n /** @deprecated */\r\n onTreeNodeChanged?: BeEvent<TreeDataChangesListener>;\r\n getNodesCount(parent?: TreeNodeItem): Promise<number>;\r\n getNodes(parent?: TreeNodeItem, page?: PageOptions): Promise<DelayLoadedTreeNodeItem[]>;\r\n}\r\n\r\n/** Type definition for all BeInspireTree data providers\r\n * @public\r\n */\r\nexport type TreeDataProvider = TreeDataProviderRaw | TreeDataProviderPromise | TreeDataProviderMethod | ITreeDataProvider;\r\n\r\n/** Checks if [[TreeDataProvider]] is a [[TreeDataProviderRaw]]\r\n * @public\r\n */\r\nexport const isTreeDataProviderRaw = (provider: TreeDataProvider): provider is TreeDataProviderRaw => {\r\n return Array.isArray(provider);\r\n};\r\n/** Checks if [[TreeDataProvider]] is a [[TreeDataProviderPromise]]\r\n * @public\r\n */\r\nexport const isTreeDataProviderPromise = (provider: TreeDataProvider): provider is TreeDataProviderPromise => {\r\n return (undefined !== (provider as TreeDataProviderPromise).then);\r\n};\r\n/** Checks if [[TreeDataProvider]] is a [[TreeDataProviderMethod]]\r\n * @public\r\n */\r\nexport const isTreeDataProviderMethod = (provider: TreeDataProvider): provider is TreeDataProviderMethod => {\r\n return (typeof provider === \"function\");\r\n};\r\n/** Checks if [[TreeDataProvider]] is an [[ITreeDataProvider]]\r\n * @public\r\n */\r\nexport const isTreeDataProviderInterface = (provider: TreeDataProvider): provider is ITreeDataProvider => {\r\n const candidate = provider as ITreeDataProvider;\r\n return undefined !== candidate.getNodes && undefined !== candidate.getNodesCount;\r\n};\r\n/**\r\n * Determines whether node has children\r\n * @param node node to check\r\n * @returns whether node has children\r\n * @public\r\n */\r\nexport const hasChildren = (node: TreeNodeItem) => {\r\n const nodeAsImmediate = node as ImmediatelyLoadedTreeNodeItem;\r\n if (\"children\" in nodeAsImmediate && nodeAsImmediate.children && nodeAsImmediate.children.length > 0)\r\n return true;\r\n const nodeAsDelayed = node as DelayLoadedTreeNodeItem;\r\n if (\"hasChildren\" in nodeAsDelayed && nodeAsDelayed.hasChildren)\r\n return true;\r\n return false;\r\n};\r\n\r\n/**\r\n * An interface tree data change listeners.\r\n * Contains a list of nodes that changed or undefined if root level changed.\r\n * @public\r\n */\r\nexport type TreeDataChangesListener = (nodes: Array<TreeNodeItem | undefined>) => void;\r\n\r\n/**\r\n * EditableTreeDataProvider provides cell editing processing for the Tree.\r\n * @public\r\n */\r\nexport interface EditableTreeDataProvider extends ITreeDataProvider {\r\n updateLabel(nodeItem: TreeNodeItem, newLabel: string): void;\r\n}\r\n\r\n/**\r\n * MutableTreeDataProvider provides manipulation processing for the Tree.\r\n * Useful for Drag & Drop processing.\r\n * @beta @deprecated\r\n */\r\nexport interface MutableTreeDataProvider extends ITreeDataProvider {\r\n insertNode(parent: TreeNodeItem | undefined, child: TreeNodeItem, index?: number): void;\r\n removeNode(parent: TreeNodeItem | undefined, child: TreeNodeItem): void;\r\n moveNode(parent: TreeNodeItem | undefined, newParent: TreeNodeItem | undefined, child: TreeNodeItem, index?: number): void;\r\n\r\n isDescendent(parent: TreeNodeItem | undefined, nodeItem: TreeNodeItem): boolean;\r\n getNodeIndex(parent: TreeNodeItem | undefined, child: TreeNodeItem): number;\r\n}\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TreeEventDispatcher.d.ts","sourceRoot":"","sources":["../../../../../src/components-react/tree/controlled/TreeEventDispatcher.ts"],"names":[],"mappings":"AAIA;;GAEG;;
|
|
1
|
+
{"version":3,"file":"TreeEventDispatcher.d.ts","sourceRoot":"","sources":["../../../../../src/components-react/tree/controlled/TreeEventDispatcher.ts"],"names":[],"mappings":"AAIA;;GAEG;;AAwBH,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAC;AAGtE,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAA4D,gBAAgB,EAAE,MAAM,aAAa,CAAC;AACzG,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAEnD;;;;GAIG;AACH,qBAAa,mBAAoB,YAAW,WAAW;IACrD,OAAO,CAAC,WAAW,CAAa;IAChC,OAAO,CAAC,WAAW,CAAkB;IACrC,OAAO,CAAC,gBAAgB,CAAuC;IAE/D,OAAO,CAAC,iBAAiB,CAAuB;IAEhD,OAAO,CAAC,iBAAiB,CAAsG;gBAG7H,UAAU,EAAE,UAAU,EACtB,UAAU,EAAE,eAAe,EAC3B,aAAa,EAAE,aAAa,EAC5B,eAAe,CAAC,EAAE,MAAM,gBAAgB;IAuEnC,eAAe,CAAC,YAAY,EAAE,MAAM,gBAAgB;IAKpD,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,aAAa;IAoC7D,cAAc,CAAC,MAAM,EAAE,MAAM;IAM7B,eAAe,CAAC,MAAM,EAAE,MAAM;IAM9B,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC;IAW1E,eAAe,CAAC,MAAM,EAAE,MAAM;IAI9B,eAAe,CAAC,MAAM,EAAE,MAAM;IAI9B,qBAAqB,CAAC,MAAM,EAAE,MAAM;IAUpC,aAAa,CAAC,KAAK,EAAE,KAAK,CAAC,aAAa,GAAG,IAAI;IAI/C,WAAW,CAAC,KAAK,EAAE,KAAK,CAAC,aAAa,GAAG,IAAI;IAIpD,OAAO,CAAC,uBAAuB;IAiB/B,OAAO,CAAC,mBAAmB;IAgC3B,OAAO,CAAE,mBAAmB;IAgC5B,OAAO,CAAC,gBAAgB;IAgBxB,OAAO,CAAC,MAAM,CAAC,wBAAwB;CAexC"}
|
|
@@ -9,11 +9,15 @@ import { concat } from "rxjs/internal/observable/concat";
|
|
|
9
9
|
import { defer } from "rxjs/internal/observable/defer";
|
|
10
10
|
import { EMPTY } from "rxjs/internal/observable/empty";
|
|
11
11
|
import { from } from "rxjs/internal/observable/from";
|
|
12
|
+
import { generate } from "rxjs/internal/observable/generate";
|
|
12
13
|
import { merge } from "rxjs/internal/observable/merge";
|
|
13
14
|
import { of } from "rxjs/internal/observable/of";
|
|
15
|
+
import { zip } from "rxjs/internal/observable/zip";
|
|
14
16
|
import { concatAll } from "rxjs/internal/operators/concatAll";
|
|
15
17
|
import { concatMap } from "rxjs/internal/operators/concatMap";
|
|
18
|
+
import { defaultIfEmpty } from "rxjs/internal/operators/defaultIfEmpty";
|
|
16
19
|
import { distinctUntilChanged } from "rxjs/internal/operators/distinctUntilChanged";
|
|
20
|
+
import { filter } from "rxjs/internal/operators/filter";
|
|
17
21
|
import { finalize } from "rxjs/internal/operators/finalize";
|
|
18
22
|
import { map } from "rxjs/internal/operators/map";
|
|
19
23
|
import { mergeAll } from "rxjs/internal/operators/mergeAll";
|
|
@@ -137,15 +141,9 @@ export class TreeEventDispatcher {
|
|
|
137
141
|
collectSelectionChanges(selection, deselection) {
|
|
138
142
|
const deselectedItems = this.collectNodeItems(deselection);
|
|
139
143
|
if (isRangeSelection(selection)) {
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
if (firstEmission) {
|
|
144
|
-
firstEmission = false;
|
|
145
|
-
return { selectedNodeItems, deselectedNodeItems: deselectedItems };
|
|
146
|
-
}
|
|
147
|
-
return { selectedNodeItems, deselectedNodeItems: [] };
|
|
148
|
-
}));
|
|
144
|
+
return zip(this.collectNodesBetween(selection.from, selection.to).pipe(defaultIfEmpty([])),
|
|
145
|
+
// Without a scheduler `generate` would block the main thread indefinitely
|
|
146
|
+
generate({ initialState: deselectedItems, iterate: () => [], scheduler: asapScheduler })).pipe(map(([selectedNodeItems, deselectedNodeItems]) => ({ selectedNodeItems, deselectedNodeItems })));
|
|
149
147
|
}
|
|
150
148
|
const selectedItems = this.collectNodeItems(selection);
|
|
151
149
|
return of({ selectedNodeItems: selectedItems, deselectedNodeItems: deselectedItems });
|
|
@@ -153,7 +151,9 @@ export class TreeEventDispatcher {
|
|
|
153
151
|
collectNodesBetween(nodeId1, nodeId2) {
|
|
154
152
|
const [readyNodes, nodesToLoad] = TreeEventDispatcher.groupNodesByLoadingState(this.iterateNodesBetween(nodeId1, nodeId2));
|
|
155
153
|
const loadedSelectedNodes = from(nodesToLoad.map((node) => {
|
|
156
|
-
const parentNode = node.parentId
|
|
154
|
+
const parentNode = node.parentId
|
|
155
|
+
? this._getVisibleNodes().getModel().getNode(node.parentId)
|
|
156
|
+
: this._getVisibleNodes().getModel().getRootNode();
|
|
157
157
|
return parentNode ? this._nodeLoader.loadNode(parentNode, node.childIndex) : /* istanbul ignore next */ EMPTY;
|
|
158
158
|
}))
|
|
159
159
|
.pipe(
|
|
@@ -161,9 +161,8 @@ export class TreeEventDispatcher {
|
|
|
161
161
|
// When the page loads we only want to process the loaded nodes once.
|
|
162
162
|
// Making assumption that loaded nodes from the same page will be emitted without interruptions.
|
|
163
163
|
// Maybe we could simplify this to `this._nodeLoader.loadNodes(nodesToLoad)`?
|
|
164
|
-
mergeAll(), distinctUntilChanged()
|
|
165
|
-
return concat(of(readyNodes), loadedSelectedNodes)
|
|
166
|
-
.pipe(
|
|
164
|
+
mergeAll(), distinctUntilChanged());
|
|
165
|
+
return concat(of(readyNodes.filter((node) => !node.isSelectionDisabled).map((node) => node.item)), loadedSelectedNodes.pipe(map(({ loadedNodes }) => loadedNodes.filter((item) => !item.isSelectionDisabled)))).pipe(filter((nodeItems) => nodeItems.length > 0),
|
|
167
166
|
// Give enough time for multiple subscribers to subscribe before any emissions begin
|
|
168
167
|
subscribeOn(asapScheduler));
|
|
169
168
|
}
|
|
@@ -193,13 +192,15 @@ export class TreeEventDispatcher {
|
|
|
193
192
|
}
|
|
194
193
|
collectNodeItems(nodeIds) {
|
|
195
194
|
const items = [];
|
|
196
|
-
if (this._getVisibleNodes === undefined)
|
|
195
|
+
if (this._getVisibleNodes === undefined) {
|
|
197
196
|
return items;
|
|
197
|
+
}
|
|
198
198
|
for (const nodeId of nodeIds) {
|
|
199
199
|
const node = this._getVisibleNodes().getModel().getNode(nodeId);
|
|
200
200
|
// istanbul ignore else
|
|
201
|
-
if (node !== undefined)
|
|
201
|
+
if (node !== undefined && !node.isSelectionDisabled) {
|
|
202
202
|
items.push(node.item);
|
|
203
|
+
}
|
|
203
204
|
}
|
|
204
205
|
return items;
|
|
205
206
|
}
|
|
@@ -208,7 +209,7 @@ export class TreeEventDispatcher {
|
|
|
208
209
|
const nodesToLoad = [];
|
|
209
210
|
for (const node of nodes) {
|
|
210
211
|
if (isTreeModelNode(node)) {
|
|
211
|
-
loadedNodeItems.push(node
|
|
212
|
+
loadedNodeItems.push(node);
|
|
212
213
|
}
|
|
213
214
|
else {
|
|
214
215
|
nodesToLoad.push(node);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TreeEventDispatcher.js","sourceRoot":"","sources":["../../../../../src/components-react/tree/controlled/TreeEventDispatcher.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/** @packageDocumentation\r\n * @module Tree\r\n */\r\n\r\nimport { Observable } from \"rxjs/internal/Observable\";\r\nimport { concat } from \"rxjs/internal/observable/concat\";\r\nimport { defer } from \"rxjs/internal/observable/defer\";\r\nimport { EMPTY } from \"rxjs/internal/observable/empty\";\r\nimport { from } from \"rxjs/internal/observable/from\";\r\nimport { merge } from \"rxjs/internal/observable/merge\";\r\nimport { of } from \"rxjs/internal/observable/of\";\r\nimport { concatAll } from \"rxjs/internal/operators/concatAll\";\r\nimport { concatMap } from \"rxjs/internal/operators/concatMap\";\r\nimport { distinctUntilChanged } from \"rxjs/internal/operators/distinctUntilChanged\";\r\nimport { finalize } from \"rxjs/internal/operators/finalize\";\r\nimport { map } from \"rxjs/internal/operators/map\";\r\nimport { mergeAll } from \"rxjs/internal/operators/mergeAll\";\r\nimport { publishReplay } from \"rxjs/internal/operators/publishReplay\";\r\nimport { refCount } from \"rxjs/internal/operators/refCount\";\r\nimport { subscribeOn } from \"rxjs/internal/operators/subscribeOn\";\r\nimport { toArray } from \"rxjs/internal/operators/toArray\";\r\nimport { asapScheduler } from \"rxjs/internal/scheduler/asap\";\r\nimport { CheckBoxState } from \"@itwin/core-react\";\r\nimport { SelectionMode } from \"../../common/selection/SelectionModes\";\r\nimport { TreeNodeItem } from \"../TreeDataProvider\";\r\nimport { IndividualSelection, isRangeSelection, RangeSelection, TreeSelectionManager } from \"./internal/TreeSelectionManager\";\r\nimport { TreeActions } from \"./TreeActions\";\r\nimport { TreeEvents } from \"./TreeEvents\";\r\nimport { isTreeModelNode, TreeModelNode, TreeModelNodePlaceholder, VisibleTreeNodes } from \"./TreeModel\";\r\nimport { ITreeNodeLoader } from \"./TreeNodeLoader\";\r\n\r\n/**\r\n * Default event dispatcher that emits tree events according performed actions.\r\n * It converts low level tree events into TreeEvents.\r\n * @internal\r\n */\r\nexport class TreeEventDispatcher implements TreeActions {\r\n private _treeEvents: TreeEvents;\r\n private _nodeLoader: ITreeNodeLoader;\r\n private _getVisibleNodes: (() => VisibleTreeNodes) | undefined;\r\n\r\n private _selectionManager: TreeSelectionManager;\r\n\r\n private _activeSelections = new Set<Observable<{ selectedNodeItems: TreeNodeItem[], deselectedNodeItems?: TreeNodeItem[] }>>();\r\n\r\n constructor(\r\n treeEvents: TreeEvents,\r\n nodeLoader: ITreeNodeLoader,\r\n selectionMode: SelectionMode,\r\n getVisibleNodes?: () => VisibleTreeNodes,\r\n ) {\r\n this._treeEvents = treeEvents;\r\n this._nodeLoader = nodeLoader;\r\n this._getVisibleNodes = getVisibleNodes;\r\n\r\n this._selectionManager = new TreeSelectionManager(selectionMode, this._getVisibleNodes);\r\n\r\n this._selectionManager.onDragSelection.addListener(({ selectionChanges }) => {\r\n const modifications = from(selectionChanges)\r\n .pipe(\r\n map(({ selectedNodes, deselectedNodes }) => from(this.collectSelectionChanges(selectedNodes, []))\r\n .pipe(\r\n concatMap(({ selectedNodeItems }) => from(selectedNodeItems)),\r\n toArray(),\r\n map((collectedIds) => ({ selectedNodeItems: collectedIds, deselectedNodeItems: this.collectNodeItems(deselectedNodes) })),\r\n ),\r\n ),\r\n concatAll(),\r\n publishReplay(),\r\n refCount(),\r\n );\r\n\r\n /* istanbul ignore else */\r\n if (this._treeEvents.onSelectionModified !== undefined)\r\n this._treeEvents.onSelectionModified({ modifications });\r\n });\r\n\r\n this._selectionManager.onSelectionChanged.addListener(({ selectedNodes, deselectedNodes }) => {\r\n const modifications = merge(\r\n defer(() => {\r\n this._activeSelections.add(modifications);\r\n return EMPTY;\r\n }),\r\n this.collectSelectionChanges(selectedNodes, deselectedNodes),\r\n )\r\n .pipe(\r\n finalize(() => {\r\n this._activeSelections.delete(modifications);\r\n }),\r\n publishReplay(),\r\n refCount(),\r\n );\r\n\r\n /* istanbul ignore else */\r\n if (this._treeEvents.onSelectionModified !== undefined)\r\n this._treeEvents.onSelectionModified({ modifications });\r\n });\r\n\r\n this._selectionManager.onSelectionReplaced.addListener(({ selectedNodeIds }) => {\r\n const replacements = merge(\r\n defer(() => {\r\n this._activeSelections.add(replacements);\r\n return EMPTY;\r\n }),\r\n this.collectSelectionChanges(selectedNodeIds, []),\r\n )\r\n .pipe(\r\n finalize(() => {\r\n this._activeSelections.delete(replacements);\r\n }),\r\n publishReplay(),\r\n refCount(),\r\n );\r\n\r\n /* istanbul ignore else */\r\n if (this._treeEvents.onSelectionReplaced !== undefined)\r\n this._treeEvents.onSelectionReplaced({ replacements });\r\n });\r\n }\r\n\r\n public setVisibleNodes(visibleNodes: () => VisibleTreeNodes) {\r\n this._getVisibleNodes = visibleNodes;\r\n this._selectionManager.setVisibleNodes(visibleNodes);\r\n }\r\n\r\n public onNodeCheckboxClicked(nodeId: string, newState: CheckBoxState) {\r\n if (this._getVisibleNodes === undefined)\r\n return;\r\n\r\n const visibleNodes = this._getVisibleNodes();\r\n const clickedNode = visibleNodes.getModel().getNode(nodeId);\r\n if (clickedNode === undefined)\r\n return;\r\n\r\n const immediateStateChanges = [{ nodeItem: clickedNode.item, newState }];\r\n if (clickedNode.isSelected) {\r\n for (const node of visibleNodes) {\r\n if (isTreeModelNode(node) && node.id !== clickedNode.id && node.isSelected && node.checkbox.state !== newState) {\r\n immediateStateChanges.push({ nodeItem: node.item, newState });\r\n }\r\n }\r\n }\r\n\r\n const stateChanges = concat(\r\n of(immediateStateChanges),\r\n from(this._activeSelections)\r\n .pipe(\r\n mergeAll(),\r\n map(({ selectedNodeItems }) => selectedNodeItems.map((item) => ({ nodeItem: item, newState }))),\r\n ),\r\n )\r\n .pipe(\r\n publishReplay(),\r\n refCount(),\r\n );\r\n\r\n /* istanbul ignore else */\r\n if (this._treeEvents.onCheckboxStateChanged !== undefined)\r\n this._treeEvents.onCheckboxStateChanged({ stateChanges });\r\n }\r\n\r\n public onNodeExpanded(nodeId: string) {\r\n /* istanbul ignore else */\r\n if (this._treeEvents.onNodeExpanded !== undefined)\r\n this._treeEvents.onNodeExpanded({ nodeId });\r\n }\r\n\r\n public onNodeCollapsed(nodeId: string) {\r\n /* istanbul ignore else */\r\n if (this._treeEvents.onNodeCollapsed !== undefined)\r\n this._treeEvents.onNodeCollapsed({ nodeId });\r\n }\r\n\r\n public onNodeClicked(nodeId: string, event: React.MouseEvent<Element, MouseEvent>) {\r\n const node = this._getVisibleNodes ? this._getVisibleNodes().getModel().getNode(nodeId) : undefined;\r\n const isNodeSelected = node ? node.isSelected : false;\r\n this._selectionManager.onNodeClicked(nodeId, event);\r\n\r\n // if clicked node was already selected fire delayed click event\r\n if (isNodeSelected && this._treeEvents.onDelayedNodeClick !== undefined) {\r\n this._treeEvents.onDelayedNodeClick({ nodeId });\r\n }\r\n }\r\n\r\n public onNodeMouseDown(nodeId: string) {\r\n this._selectionManager.onNodeMouseDown(nodeId);\r\n }\r\n\r\n public onNodeMouseMove(nodeId: string) {\r\n this._selectionManager.onNodeMouseMove(nodeId);\r\n }\r\n\r\n public onNodeEditorActivated(nodeId: string) {\r\n const node = this._getVisibleNodes ? this._getVisibleNodes().getModel().getNode(nodeId) : /* istanbul ignore next */ undefined;\r\n const isNodeSelected = node ? node.isSelected : false;\r\n\r\n // if node was already selected, fire onNodeEditorActivated event\r\n if (isNodeSelected && this._treeEvents.onNodeEditorActivated !== undefined) {\r\n this._treeEvents.onNodeEditorActivated({ nodeId });\r\n }\r\n }\r\n\r\n public onTreeKeyDown(event: React.KeyboardEvent): void {\r\n this._selectionManager.onTreeKeyDown(event, this);\r\n }\r\n\r\n public onTreeKeyUp(event: React.KeyboardEvent): void {\r\n this._selectionManager.onTreeKeyUp(event, this);\r\n }\r\n\r\n private collectSelectionChanges(\r\n selection: IndividualSelection | RangeSelection,\r\n deselection: IndividualSelection,\r\n ): Observable<{ selectedNodeItems: TreeNodeItem[], deselectedNodeItems: TreeNodeItem[] }> {\r\n const deselectedItems = this.collectNodeItems(deselection);\r\n if (isRangeSelection(selection)) {\r\n let firstEmission = true;\r\n return this.collectNodesBetween(selection.from, selection.to)\r\n .pipe(\r\n map((selectedNodeItems) => {\r\n if (firstEmission) {\r\n firstEmission = false;\r\n return { selectedNodeItems, deselectedNodeItems: deselectedItems };\r\n }\r\n\r\n return { selectedNodeItems, deselectedNodeItems: [] };\r\n }),\r\n );\r\n }\r\n\r\n const selectedItems = this.collectNodeItems(selection);\r\n return of({ selectedNodeItems: selectedItems, deselectedNodeItems: deselectedItems });\r\n }\r\n\r\n private collectNodesBetween(nodeId1: string, nodeId2: string): Observable<TreeNodeItem[]> {\r\n const [readyNodes, nodesToLoad] = TreeEventDispatcher.groupNodesByLoadingState(\r\n this.iterateNodesBetween(nodeId1, nodeId2),\r\n );\r\n\r\n const loadedSelectedNodes = from(\r\n nodesToLoad.map((node) => {\r\n const parentNode = node.parentId ? this._getVisibleNodes!().getModel().getNode(node.parentId) : this._getVisibleNodes!().getModel().getRootNode();\r\n return parentNode ? this._nodeLoader.loadNode(parentNode, node.childIndex) : /* istanbul ignore next */ EMPTY;\r\n }),\r\n )\r\n .pipe(\r\n // We have requested multiple nodes that may belong to the same page.\r\n // When the page loads we only want to process the loaded nodes once.\r\n // Making assumption that loaded nodes from the same page will be emitted without interruptions.\r\n // Maybe we could simplify this to `this._nodeLoader.loadNodes(nodesToLoad)`?\r\n mergeAll(),\r\n distinctUntilChanged(),\r\n map((loadResult) => loadResult.loadedNodes),\r\n );\r\n\r\n return concat(of(readyNodes), loadedSelectedNodes)\r\n .pipe(\r\n // Give enough time for multiple subscribers to subscribe before any emissions begin\r\n subscribeOn(asapScheduler),\r\n );\r\n }\r\n\r\n private *iterateNodesBetween(\r\n nodeId1: string,\r\n nodeId2: string,\r\n ): Iterable<TreeModelNode | TreeModelNodePlaceholder> {\r\n let firstNodeFound = false;\r\n if (this._getVisibleNodes === undefined) {\r\n return;\r\n }\r\n\r\n for (const node of this._getVisibleNodes()) {\r\n if (firstNodeFound) {\r\n yield node;\r\n }\r\n\r\n if (isTreeModelNode(node)) {\r\n if (nodeId1 === nodeId2 && node.id === nodeId1) {\r\n yield node;\r\n return;\r\n }\r\n\r\n if (node.id === nodeId1 || node.id === nodeId2) {\r\n if (firstNodeFound) {\r\n return;\r\n }\r\n\r\n firstNodeFound = true;\r\n yield node;\r\n }\r\n }\r\n }\r\n }\r\n\r\n private collectNodeItems(nodeIds: string[]): TreeNodeItem[] {\r\n const items: TreeNodeItem[] = [];\r\n if (this._getVisibleNodes === undefined)\r\n return items;\r\n\r\n for (const nodeId of nodeIds) {\r\n const node = this._getVisibleNodes().getModel().getNode(nodeId);\r\n // istanbul ignore else\r\n if (node !== undefined)\r\n items.push(node.item);\r\n }\r\n return items;\r\n }\r\n\r\n private static groupNodesByLoadingState(\r\n nodes: Iterable<TreeModelNode | TreeModelNodePlaceholder>,\r\n ): [TreeNodeItem[], TreeModelNodePlaceholder[]] {\r\n const loadedNodeItems: TreeNodeItem[] = [];\r\n const nodesToLoad: TreeModelNodePlaceholder[] = [];\r\n for (const node of nodes) {\r\n if (isTreeModelNode(node)) {\r\n loadedNodeItems.push(node.item);\r\n } else {\r\n nodesToLoad.push(node);\r\n }\r\n }\r\n\r\n return [loadedNodeItems, nodesToLoad];\r\n }\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"file":"TreeEventDispatcher.js","sourceRoot":"","sources":["../../../../../src/components-react/tree/controlled/TreeEventDispatcher.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAGH,OAAO,EAAE,MAAM,EAAE,MAAM,iCAAiC,CAAC;AACzD,OAAO,EAAE,KAAK,EAAE,MAAM,gCAAgC,CAAC;AACvD,OAAO,EAAE,KAAK,EAAE,MAAM,gCAAgC,CAAC;AACvD,OAAO,EAAE,IAAI,EAAE,MAAM,+BAA+B,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,mCAAmC,CAAC;AAC7D,OAAO,EAAE,KAAK,EAAE,MAAM,gCAAgC,CAAC;AACvD,OAAO,EAAE,EAAE,EAAE,MAAM,6BAA6B,CAAC;AACjD,OAAO,EAAE,GAAG,EAAE,MAAM,8BAA8B,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,mCAAmC,CAAC;AAC9D,OAAO,EAAE,SAAS,EAAE,MAAM,mCAAmC,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAC;AACxE,OAAO,EAAE,oBAAoB,EAAE,MAAM,8CAA8C,CAAC;AACpF,OAAO,EAAE,MAAM,EAAE,MAAM,gCAAgC,CAAC;AACxD,OAAO,EAAE,QAAQ,EAAE,MAAM,kCAAkC,CAAC;AAC5D,OAAO,EAAE,GAAG,EAAE,MAAM,6BAA6B,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,kCAAkC,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAC;AACtE,OAAO,EAAE,QAAQ,EAAE,MAAM,kCAAkC,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,qCAAqC,CAAC;AAClE,OAAO,EAAE,OAAO,EAAE,MAAM,iCAAiC,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAI7D,OAAO,EAAuB,gBAAgB,EAAkB,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AAG9H,OAAO,EAAE,eAAe,EAA6D,MAAM,aAAa,CAAC;AAGzG;;;;GAIG;AACH,MAAM,OAAO,mBAAmB;IAS9B,YACE,UAAsB,EACtB,UAA2B,EAC3B,aAA4B,EAC5B,eAAwC;QANlC,sBAAiB,GAAG,IAAI,GAAG,EAA2F,CAAC;QAQ7H,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;QAC9B,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;QAC9B,IAAI,CAAC,gBAAgB,GAAG,eAAe,CAAC;QAExC,IAAI,CAAC,iBAAiB,GAAG,IAAI,oBAAoB,CAAC,aAAa,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAExF,IAAI,CAAC,iBAAiB,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC,EAAE,gBAAgB,EAAE,EAAE,EAAE;YAC1E,MAAM,aAAa,GAAG,IAAI,CAAC,gBAAgB,CAAC;iBACzC,IAAI,CACH,GAAG,CAAC,CAAC,EAAE,aAAa,EAAE,eAAe,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,uBAAuB,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;iBAC9F,IAAI,CACH,SAAS,CAAC,CAAC,EAAE,iBAAiB,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,EAC7D,OAAO,EAAE,EACT,GAAG,CAAC,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC,EAAE,iBAAiB,EAAE,YAAY,EAAE,mBAAmB,EAAE,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC,CAC1H,CACF,EACD,SAAS,EAAE,EACX,aAAa,EAAE,EACf,QAAQ,EAAE,CACX,CAAC;YAEJ,0BAA0B;YAC1B,IAAI,IAAI,CAAC,WAAW,CAAC,mBAAmB,KAAK,SAAS;gBACpD,IAAI,CAAC,WAAW,CAAC,mBAAmB,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC;QAC5D,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC,EAAE,aAAa,EAAE,eAAe,EAAE,EAAE,EAAE;YAC3F,MAAM,aAAa,GAAG,KAAK,CACzB,KAAK,CAAC,GAAG,EAAE;gBACT,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;gBAC1C,OAAO,KAAK,CAAC;YACf,CAAC,CAAC,EACF,IAAI,CAAC,uBAAuB,CAAC,aAAa,EAAE,eAAe,CAAC,CAC7D;iBACE,IAAI,CACH,QAAQ,CAAC,GAAG,EAAE;gBACZ,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;YAC/C,CAAC,CAAC,EACF,aAAa,EAAE,EACf,QAAQ,EAAE,CACX,CAAC;YAEJ,0BAA0B;YAC1B,IAAI,IAAI,CAAC,WAAW,CAAC,mBAAmB,KAAK,SAAS;gBACpD,IAAI,CAAC,WAAW,CAAC,mBAAmB,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC;QAC5D,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,iBAAiB,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAC,EAAE,eAAe,EAAE,EAAE,EAAE;YAC7E,MAAM,YAAY,GAAG,KAAK,CACxB,KAAK,CAAC,GAAG,EAAE;gBACT,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;gBACzC,OAAO,KAAK,CAAC;YACf,CAAC,CAAC,EACF,IAAI,CAAC,uBAAuB,CAAC,eAAe,EAAE,EAAE,CAAC,CAClD;iBACE,IAAI,CACH,QAAQ,CAAC,GAAG,EAAE;gBACZ,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;YAC9C,CAAC,CAAC,EACF,aAAa,EAAE,EACf,QAAQ,EAAE,CACX,CAAC;YAEJ,0BAA0B;YAC1B,IAAI,IAAI,CAAC,WAAW,CAAC,mBAAmB,KAAK,SAAS;gBACpD,IAAI,CAAC,WAAW,CAAC,mBAAmB,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC;QAC3D,CAAC,CAAC,CAAC;IACL,CAAC;IAEM,eAAe,CAAC,YAAoC;QACzD,IAAI,CAAC,gBAAgB,GAAG,YAAY,CAAC;QACrC,IAAI,CAAC,iBAAiB,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;IACvD,CAAC;IAEM,qBAAqB,CAAC,MAAc,EAAE,QAAuB;QAClE,IAAI,IAAI,CAAC,gBAAgB,KAAK,SAAS;YACrC,OAAO;QAET,MAAM,YAAY,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC7C,MAAM,WAAW,GAAG,YAAY,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAC5D,IAAI,WAAW,KAAK,SAAS;YAC3B,OAAO;QAET,MAAM,qBAAqB,GAAG,CAAC,EAAE,QAAQ,EAAE,WAAW,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;QACzE,IAAI,WAAW,CAAC,UAAU,EAAE;YAC1B,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE;gBAC/B,IAAI,eAAe,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,EAAE,KAAK,WAAW,CAAC,EAAE,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,KAAK,QAAQ,EAAE;oBAC9G,qBAAqB,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;iBAC/D;aACF;SACF;QAED,MAAM,YAAY,GAAG,MAAM,CACzB,EAAE,CAAC,qBAAqB,CAAC,EACzB,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC;aACzB,IAAI,CACH,QAAQ,EAAE,EACV,GAAG,CAAC,CAAC,EAAE,iBAAiB,EAAE,EAAE,EAAE,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,CAChG,CACJ;aACE,IAAI,CACH,aAAa,EAAE,EACf,QAAQ,EAAE,CACX,CAAC;QAEJ,0BAA0B;QAC1B,IAAI,IAAI,CAAC,WAAW,CAAC,sBAAsB,KAAK,SAAS;YACvD,IAAI,CAAC,WAAW,CAAC,sBAAsB,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC;IAC9D,CAAC;IAEM,cAAc,CAAC,MAAc;QAClC,0BAA0B;QAC1B,IAAI,IAAI,CAAC,WAAW,CAAC,cAAc,KAAK,SAAS;YAC/C,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;IAChD,CAAC;IAEM,eAAe,CAAC,MAAc;QACnC,0BAA0B;QAC1B,IAAI,IAAI,CAAC,WAAW,CAAC,eAAe,KAAK,SAAS;YAChD,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;IACjD,CAAC;IAEM,aAAa,CAAC,MAAc,EAAE,KAA4C;QAC/E,MAAM,IAAI,GAAG,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACpG,MAAM,cAAc,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC;QACtD,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAEpD,gEAAgE;QAChE,IAAI,cAAc,IAAI,IAAI,CAAC,WAAW,CAAC,kBAAkB,KAAK,SAAS,EAAE;YACvE,IAAI,CAAC,WAAW,CAAC,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;SACjD;IACH,CAAC;IAEM,eAAe,CAAC,MAAc;QACnC,IAAI,CAAC,iBAAiB,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;IACjD,CAAC;IAEM,eAAe,CAAC,MAAc;QACnC,IAAI,CAAC,iBAAiB,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;IACjD,CAAC;IAEM,qBAAqB,CAAC,MAAc;QACzC,MAAM,IAAI,GAAG,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,0BAA0B,CAAC,SAAS,CAAC;QAC/H,MAAM,cAAc,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC;QAEtD,iEAAiE;QACjE,IAAI,cAAc,IAAI,IAAI,CAAC,WAAW,CAAC,qBAAqB,KAAK,SAAS,EAAE;YAC1E,IAAI,CAAC,WAAW,CAAC,qBAAqB,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;SACpD;IACH,CAAC;IAEM,aAAa,CAAC,KAA0B;QAC7C,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IACpD,CAAC;IAEM,WAAW,CAAC,KAA0B;QAC3C,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IAClD,CAAC;IAEO,uBAAuB,CAC7B,SAA+C,EAC/C,WAAgC;QAEhC,MAAM,eAAe,GAAG,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC;QAC3D,IAAI,gBAAgB,CAAC,SAAS,CAAC,EAAE;YAC/B,OAAO,GAAG,CACR,IAAI,CAAC,mBAAmB,CAAC,SAAS,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,EAAoB,CAAC,CAAC;YACjG,0EAA0E;YAC1E,QAAQ,CAAC,EAAE,YAAY,EAAE,eAAe,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,SAAS,EAAE,aAAa,EAAE,CAAC,CACzF,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,iBAAiB,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,CAAC;SACzG;QAED,MAAM,aAAa,GAAG,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;QACvD,OAAO,EAAE,CAAC,EAAE,iBAAiB,EAAE,aAAa,EAAE,mBAAmB,EAAE,eAAe,EAAE,CAAC,CAAC;IACxF,CAAC;IAEO,mBAAmB,CAAC,OAAe,EAAE,OAAe;QAC1D,MAAM,CAAC,UAAU,EAAE,WAAW,CAAC,GAAG,mBAAmB,CAAC,wBAAwB,CAC5E,IAAI,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAC3C,CAAC;QAEF,MAAM,mBAAmB,GAAG,IAAI,CAC9B,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YACvB,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ;gBAC9B,CAAC,CAAC,IAAI,CAAC,gBAAiB,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC;gBAC5D,CAAC,CAAC,IAAI,CAAC,gBAAiB,EAAE,CAAC,QAAQ,EAAE,CAAC,WAAW,EAAE,CAAC;YACtD,OAAO,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,0BAA0B,CAAC,KAAK,CAAC;QAChH,CAAC,CAAC,CACH;aACE,IAAI;QACH,qEAAqE;QACrE,qEAAqE;QACrE,gGAAgG;QAChG,6EAA6E;QAC7E,QAAQ,EAAE,EACV,oBAAoB,EAAE,CACvB,CAAC;QAEJ,OAAO,MAAM,CACX,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EACnF,mBAAmB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAC5G,CAAC,IAAI,CACJ,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC;QAC3C,oFAAoF;QACpF,WAAW,CAAC,aAAa,CAAC,CAC3B,CAAC;IACJ,CAAC;IAEO,CAAC,mBAAmB,CAC1B,OAAe,EACf,OAAe;QAEf,IAAI,cAAc,GAAG,KAAK,CAAC;QAC3B,IAAI,IAAI,CAAC,gBAAgB,KAAK,SAAS,EAAE;YACvC,OAAO;SACR;QAED,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,gBAAgB,EAAE,EAAE;YAC1C,IAAI,cAAc,EAAE;gBAClB,MAAM,IAAI,CAAC;aACZ;YAED,IAAI,eAAe,CAAC,IAAI,CAAC,EAAE;gBACzB,IAAI,OAAO,KAAK,OAAO,IAAI,IAAI,CAAC,EAAE,KAAK,OAAO,EAAE;oBAC9C,MAAM,IAAI,CAAC;oBACX,OAAO;iBACR;gBAED,IAAI,IAAI,CAAC,EAAE,KAAK,OAAO,IAAI,IAAI,CAAC,EAAE,KAAK,OAAO,EAAE;oBAC9C,IAAI,cAAc,EAAE;wBAClB,OAAO;qBACR;oBAED,cAAc,GAAG,IAAI,CAAC;oBACtB,MAAM,IAAI,CAAC;iBACZ;aACF;SACF;IACH,CAAC;IAEO,gBAAgB,CAAC,OAAiB;QACxC,MAAM,KAAK,GAAmB,EAAE,CAAC;QACjC,IAAI,IAAI,CAAC,gBAAgB,KAAK,SAAS,EAAE;YACvC,OAAO,KAAK,CAAC;SACd;QAED,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;YAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YAChE,uBAAuB;YACvB,IAAI,IAAI,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE;gBACnD,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aACvB;SACF;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,MAAM,CAAC,wBAAwB,CACrC,KAAyD;QAEzD,MAAM,eAAe,GAAoB,EAAE,CAAC;QAC5C,MAAM,WAAW,GAA+B,EAAE,CAAC;QACnD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;YACxB,IAAI,eAAe,CAAC,IAAI,CAAC,EAAE;gBACzB,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAC5B;iBAAM;gBACL,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aACxB;SACF;QAED,OAAO,CAAC,eAAe,EAAE,WAAW,CAAC,CAAC;IACxC,CAAC;CACF","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Tree\r\n */\r\n\r\nimport { Observable } from \"rxjs/internal/Observable\";\r\nimport { concat } from \"rxjs/internal/observable/concat\";\r\nimport { defer } from \"rxjs/internal/observable/defer\";\r\nimport { EMPTY } from \"rxjs/internal/observable/empty\";\r\nimport { from } from \"rxjs/internal/observable/from\";\r\nimport { generate } from \"rxjs/internal/observable/generate\";\r\nimport { merge } from \"rxjs/internal/observable/merge\";\r\nimport { of } from \"rxjs/internal/observable/of\";\r\nimport { zip } from \"rxjs/internal/observable/zip\";\r\nimport { concatAll } from \"rxjs/internal/operators/concatAll\";\r\nimport { concatMap } from \"rxjs/internal/operators/concatMap\";\r\nimport { defaultIfEmpty } from \"rxjs/internal/operators/defaultIfEmpty\";\r\nimport { distinctUntilChanged } from \"rxjs/internal/operators/distinctUntilChanged\";\r\nimport { filter } from \"rxjs/internal/operators/filter\";\r\nimport { finalize } from \"rxjs/internal/operators/finalize\";\r\nimport { map } from \"rxjs/internal/operators/map\";\r\nimport { mergeAll } from \"rxjs/internal/operators/mergeAll\";\r\nimport { publishReplay } from \"rxjs/internal/operators/publishReplay\";\r\nimport { refCount } from \"rxjs/internal/operators/refCount\";\r\nimport { subscribeOn } from \"rxjs/internal/operators/subscribeOn\";\r\nimport { toArray } from \"rxjs/internal/operators/toArray\";\r\nimport { asapScheduler } from \"rxjs/internal/scheduler/asap\";\r\nimport { CheckBoxState } from \"@itwin/core-react\";\r\nimport { SelectionMode } from \"../../common/selection/SelectionModes\";\r\nimport { TreeNodeItem } from \"../TreeDataProvider\";\r\nimport { IndividualSelection, isRangeSelection, RangeSelection, TreeSelectionManager } from \"./internal/TreeSelectionManager\";\r\nimport { TreeActions } from \"./TreeActions\";\r\nimport { TreeEvents } from \"./TreeEvents\";\r\nimport { isTreeModelNode, TreeModelNode, TreeModelNodePlaceholder, VisibleTreeNodes } from \"./TreeModel\";\r\nimport { ITreeNodeLoader } from \"./TreeNodeLoader\";\r\n\r\n/**\r\n * Default event dispatcher that emits tree events according performed actions.\r\n * It converts low level tree events into TreeEvents.\r\n * @internal\r\n */\r\nexport class TreeEventDispatcher implements TreeActions {\r\n private _treeEvents: TreeEvents;\r\n private _nodeLoader: ITreeNodeLoader;\r\n private _getVisibleNodes: (() => VisibleTreeNodes) | undefined;\r\n\r\n private _selectionManager: TreeSelectionManager;\r\n\r\n private _activeSelections = new Set<Observable<{ selectedNodeItems: TreeNodeItem[], deselectedNodeItems?: TreeNodeItem[] }>>();\r\n\r\n constructor(\r\n treeEvents: TreeEvents,\r\n nodeLoader: ITreeNodeLoader,\r\n selectionMode: SelectionMode,\r\n getVisibleNodes?: () => VisibleTreeNodes,\r\n ) {\r\n this._treeEvents = treeEvents;\r\n this._nodeLoader = nodeLoader;\r\n this._getVisibleNodes = getVisibleNodes;\r\n\r\n this._selectionManager = new TreeSelectionManager(selectionMode, this._getVisibleNodes);\r\n\r\n this._selectionManager.onDragSelection.addListener(({ selectionChanges }) => {\r\n const modifications = from(selectionChanges)\r\n .pipe(\r\n map(({ selectedNodes, deselectedNodes }) => from(this.collectSelectionChanges(selectedNodes, []))\r\n .pipe(\r\n concatMap(({ selectedNodeItems }) => from(selectedNodeItems)),\r\n toArray(),\r\n map((collectedIds) => ({ selectedNodeItems: collectedIds, deselectedNodeItems: this.collectNodeItems(deselectedNodes) })),\r\n ),\r\n ),\r\n concatAll(),\r\n publishReplay(),\r\n refCount(),\r\n );\r\n\r\n /* istanbul ignore else */\r\n if (this._treeEvents.onSelectionModified !== undefined)\r\n this._treeEvents.onSelectionModified({ modifications });\r\n });\r\n\r\n this._selectionManager.onSelectionChanged.addListener(({ selectedNodes, deselectedNodes }) => {\r\n const modifications = merge(\r\n defer(() => {\r\n this._activeSelections.add(modifications);\r\n return EMPTY;\r\n }),\r\n this.collectSelectionChanges(selectedNodes, deselectedNodes),\r\n )\r\n .pipe(\r\n finalize(() => {\r\n this._activeSelections.delete(modifications);\r\n }),\r\n publishReplay(),\r\n refCount(),\r\n );\r\n\r\n /* istanbul ignore else */\r\n if (this._treeEvents.onSelectionModified !== undefined)\r\n this._treeEvents.onSelectionModified({ modifications });\r\n });\r\n\r\n this._selectionManager.onSelectionReplaced.addListener(({ selectedNodeIds }) => {\r\n const replacements = merge(\r\n defer(() => {\r\n this._activeSelections.add(replacements);\r\n return EMPTY;\r\n }),\r\n this.collectSelectionChanges(selectedNodeIds, []),\r\n )\r\n .pipe(\r\n finalize(() => {\r\n this._activeSelections.delete(replacements);\r\n }),\r\n publishReplay(),\r\n refCount(),\r\n );\r\n\r\n /* istanbul ignore else */\r\n if (this._treeEvents.onSelectionReplaced !== undefined)\r\n this._treeEvents.onSelectionReplaced({ replacements });\r\n });\r\n }\r\n\r\n public setVisibleNodes(visibleNodes: () => VisibleTreeNodes) {\r\n this._getVisibleNodes = visibleNodes;\r\n this._selectionManager.setVisibleNodes(visibleNodes);\r\n }\r\n\r\n public onNodeCheckboxClicked(nodeId: string, newState: CheckBoxState) {\r\n if (this._getVisibleNodes === undefined)\r\n return;\r\n\r\n const visibleNodes = this._getVisibleNodes();\r\n const clickedNode = visibleNodes.getModel().getNode(nodeId);\r\n if (clickedNode === undefined)\r\n return;\r\n\r\n const immediateStateChanges = [{ nodeItem: clickedNode.item, newState }];\r\n if (clickedNode.isSelected) {\r\n for (const node of visibleNodes) {\r\n if (isTreeModelNode(node) && node.id !== clickedNode.id && node.isSelected && node.checkbox.state !== newState) {\r\n immediateStateChanges.push({ nodeItem: node.item, newState });\r\n }\r\n }\r\n }\r\n\r\n const stateChanges = concat(\r\n of(immediateStateChanges),\r\n from(this._activeSelections)\r\n .pipe(\r\n mergeAll(),\r\n map(({ selectedNodeItems }) => selectedNodeItems.map((item) => ({ nodeItem: item, newState }))),\r\n ),\r\n )\r\n .pipe(\r\n publishReplay(),\r\n refCount(),\r\n );\r\n\r\n /* istanbul ignore else */\r\n if (this._treeEvents.onCheckboxStateChanged !== undefined)\r\n this._treeEvents.onCheckboxStateChanged({ stateChanges });\r\n }\r\n\r\n public onNodeExpanded(nodeId: string) {\r\n /* istanbul ignore else */\r\n if (this._treeEvents.onNodeExpanded !== undefined)\r\n this._treeEvents.onNodeExpanded({ nodeId });\r\n }\r\n\r\n public onNodeCollapsed(nodeId: string) {\r\n /* istanbul ignore else */\r\n if (this._treeEvents.onNodeCollapsed !== undefined)\r\n this._treeEvents.onNodeCollapsed({ nodeId });\r\n }\r\n\r\n public onNodeClicked(nodeId: string, event: React.MouseEvent<Element, MouseEvent>) {\r\n const node = this._getVisibleNodes ? this._getVisibleNodes().getModel().getNode(nodeId) : undefined;\r\n const isNodeSelected = node ? node.isSelected : false;\r\n this._selectionManager.onNodeClicked(nodeId, event);\r\n\r\n // if clicked node was already selected fire delayed click event\r\n if (isNodeSelected && this._treeEvents.onDelayedNodeClick !== undefined) {\r\n this._treeEvents.onDelayedNodeClick({ nodeId });\r\n }\r\n }\r\n\r\n public onNodeMouseDown(nodeId: string) {\r\n this._selectionManager.onNodeMouseDown(nodeId);\r\n }\r\n\r\n public onNodeMouseMove(nodeId: string) {\r\n this._selectionManager.onNodeMouseMove(nodeId);\r\n }\r\n\r\n public onNodeEditorActivated(nodeId: string) {\r\n const node = this._getVisibleNodes ? this._getVisibleNodes().getModel().getNode(nodeId) : /* istanbul ignore next */ undefined;\r\n const isNodeSelected = node ? node.isSelected : false;\r\n\r\n // if node was already selected, fire onNodeEditorActivated event\r\n if (isNodeSelected && this._treeEvents.onNodeEditorActivated !== undefined) {\r\n this._treeEvents.onNodeEditorActivated({ nodeId });\r\n }\r\n }\r\n\r\n public onTreeKeyDown(event: React.KeyboardEvent): void {\r\n this._selectionManager.onTreeKeyDown(event, this);\r\n }\r\n\r\n public onTreeKeyUp(event: React.KeyboardEvent): void {\r\n this._selectionManager.onTreeKeyUp(event, this);\r\n }\r\n\r\n private collectSelectionChanges(\r\n selection: IndividualSelection | RangeSelection,\r\n deselection: IndividualSelection,\r\n ): Observable<{ selectedNodeItems: TreeNodeItem[], deselectedNodeItems: TreeNodeItem[] }> {\r\n const deselectedItems = this.collectNodeItems(deselection);\r\n if (isRangeSelection(selection)) {\r\n return zip(\r\n this.collectNodesBetween(selection.from, selection.to).pipe(defaultIfEmpty([] as TreeNodeItem[])),\r\n // Without a scheduler `generate` would block the main thread indefinitely\r\n generate({ initialState: deselectedItems, iterate: () => [], scheduler: asapScheduler }),\r\n ).pipe(map(([selectedNodeItems, deselectedNodeItems]) => ({ selectedNodeItems, deselectedNodeItems })));\r\n }\r\n\r\n const selectedItems = this.collectNodeItems(selection);\r\n return of({ selectedNodeItems: selectedItems, deselectedNodeItems: deselectedItems });\r\n }\r\n\r\n private collectNodesBetween(nodeId1: string, nodeId2: string): Observable<TreeNodeItem[]> {\r\n const [readyNodes, nodesToLoad] = TreeEventDispatcher.groupNodesByLoadingState(\r\n this.iterateNodesBetween(nodeId1, nodeId2),\r\n );\r\n\r\n const loadedSelectedNodes = from(\r\n nodesToLoad.map((node) => {\r\n const parentNode = node.parentId\r\n ? this._getVisibleNodes!().getModel().getNode(node.parentId)\r\n : this._getVisibleNodes!().getModel().getRootNode();\r\n return parentNode ? this._nodeLoader.loadNode(parentNode, node.childIndex) : /* istanbul ignore next */ EMPTY;\r\n }),\r\n )\r\n .pipe(\r\n // We have requested multiple nodes that may belong to the same page.\r\n // When the page loads we only want to process the loaded nodes once.\r\n // Making assumption that loaded nodes from the same page will be emitted without interruptions.\r\n // Maybe we could simplify this to `this._nodeLoader.loadNodes(nodesToLoad)`?\r\n mergeAll(),\r\n distinctUntilChanged(),\r\n );\r\n\r\n return concat(\r\n of(readyNodes.filter((node) => !node.isSelectionDisabled).map((node) => node.item)),\r\n loadedSelectedNodes.pipe(map(({ loadedNodes }) => loadedNodes.filter((item) => !item.isSelectionDisabled))),\r\n ).pipe(\r\n filter((nodeItems) => nodeItems.length > 0),\r\n // Give enough time for multiple subscribers to subscribe before any emissions begin\r\n subscribeOn(asapScheduler),\r\n );\r\n }\r\n\r\n private *iterateNodesBetween(\r\n nodeId1: string,\r\n nodeId2: string,\r\n ): Iterable<TreeModelNode | TreeModelNodePlaceholder> {\r\n let firstNodeFound = false;\r\n if (this._getVisibleNodes === undefined) {\r\n return;\r\n }\r\n\r\n for (const node of this._getVisibleNodes()) {\r\n if (firstNodeFound) {\r\n yield node;\r\n }\r\n\r\n if (isTreeModelNode(node)) {\r\n if (nodeId1 === nodeId2 && node.id === nodeId1) {\r\n yield node;\r\n return;\r\n }\r\n\r\n if (node.id === nodeId1 || node.id === nodeId2) {\r\n if (firstNodeFound) {\r\n return;\r\n }\r\n\r\n firstNodeFound = true;\r\n yield node;\r\n }\r\n }\r\n }\r\n }\r\n\r\n private collectNodeItems(nodeIds: string[]): TreeNodeItem[] {\r\n const items: TreeNodeItem[] = [];\r\n if (this._getVisibleNodes === undefined) {\r\n return items;\r\n }\r\n\r\n for (const nodeId of nodeIds) {\r\n const node = this._getVisibleNodes().getModel().getNode(nodeId);\r\n // istanbul ignore else\r\n if (node !== undefined && !node.isSelectionDisabled) {\r\n items.push(node.item);\r\n }\r\n }\r\n return items;\r\n }\r\n\r\n private static groupNodesByLoadingState(\r\n nodes: Iterable<TreeModelNode | TreeModelNodePlaceholder>,\r\n ): [TreeModelNode[], TreeModelNodePlaceholder[]] {\r\n const loadedNodeItems: TreeModelNode[] = [];\r\n const nodesToLoad: TreeModelNodePlaceholder[] = [];\r\n for (const node of nodes) {\r\n if (isTreeModelNode(node)) {\r\n loadedNodeItems.push(node);\r\n } else {\r\n nodesToLoad.push(node);\r\n }\r\n }\r\n\r\n return [loadedNodeItems, nodesToLoad];\r\n }\r\n}\r\n"]}
|
|
@@ -20,6 +20,7 @@ export interface TreeModelNode {
|
|
|
20
20
|
readonly isExpanded: boolean;
|
|
21
21
|
readonly label: PropertyRecord;
|
|
22
22
|
readonly isSelected: boolean;
|
|
23
|
+
readonly isSelectionDisabled?: boolean;
|
|
23
24
|
/** Specifies that node is in editing mode. It holds callbacks that are used by node editor. */
|
|
24
25
|
readonly editingInfo?: TreeModelNodeEditingInfo;
|
|
25
26
|
readonly checkbox: CheckBoxInfo;
|
|
@@ -45,6 +46,7 @@ export interface MutableTreeModelNode extends TreeModelNode {
|
|
|
45
46
|
isExpanded: boolean;
|
|
46
47
|
label: PropertyRecord;
|
|
47
48
|
isSelected: boolean;
|
|
49
|
+
isSelectionDisabled?: boolean;
|
|
48
50
|
/** Specifies that node is in editing mode. It holds callbacks that are used by node editor. */
|
|
49
51
|
editingInfo?: TreeModelNodeEditingInfo;
|
|
50
52
|
checkbox: MutableCheckBoxInfo;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TreeModel.d.ts","sourceRoot":"","sources":["../../../../../src/components-react/tree/controlled/TreeModel.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAGlC,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,uBAAuB,EAAE,6BAA6B,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAC3G,OAAO,EAAE,WAAW,EAAc,MAAM,uBAAuB,CAAC;AAEhE;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;IACtC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAEvB,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC;IAEzC,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC;IACzC,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAC;IAC/B,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"TreeModel.d.ts","sourceRoot":"","sources":["../../../../../src/components-react/tree/controlled/TreeModel.ts"],"names":[],"mappings":"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"}
|
|
@@ -252,6 +252,7 @@ export class MutableTreeModel {
|
|
|
252
252
|
isExpanded: input.isExpanded,
|
|
253
253
|
label: input.label,
|
|
254
254
|
isSelected: input.isSelected,
|
|
255
|
+
isSelectionDisabled: input.item.isSelectionDisabled,
|
|
255
256
|
checkbox: {
|
|
256
257
|
state: input.item.checkBoxState || CheckBoxState.Off,
|
|
257
258
|
isDisabled: !!input.item.isCheckboxDisabled,
|