@itwin/components-react 3.5.0-dev.41 → 3.5.0-dev.43
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 +6 -1
- 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/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/package.json +11 -11
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FilterableColumnBase.js","sourceRoot":"","sources":["../../../../../src/components-react/table/columnfiltering/FilterableColumnBase.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAIH,+EAA4E;AAC5E,mEAAgE;
|
|
1
|
+
{"version":3,"file":"FilterableColumnBase.js","sourceRoot":"","sources":["../../../../../src/components-react/table/columnfiltering/FilterableColumnBase.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 Table\r\n */\r\n\r\nimport { ColumnDescription } from \"../TableDataProvider\";\r\nimport { ColumnFilterDescriptor, DistinctValueCollection, FilterableColumn, FilterableTable, FilterOperator } from \"./ColumnFiltering\";\r\nimport { TableColumnFilterDescriptor } from \"./TableColumnFilterDescriptor\";\r\nimport { TableFilterDescriptor } from \"./TableFilterDescriptor\";\r\n/* eslint-disable deprecation/deprecation */\r\n\r\n/** Filterable Column base class.\r\n * @internal\r\n */\r\nexport abstract class FilterableColumnBase implements FilterableColumn {\r\n private _columnDescription: ColumnDescription;\r\n\r\n private _filterable: boolean = false;\r\n private _showFieldFilters: boolean;\r\n private _showDistinctValueFilters: boolean;\r\n private _filterCaseSensitive: boolean;\r\n\r\n private _filterableTable: FilterableTable;\r\n\r\n constructor(filterableTable: FilterableTable, description: ColumnDescription) {\r\n this._filterableTable = filterableTable;\r\n this._columnDescription = description;\r\n\r\n this._filterable = (description.filterable === undefined) ? false : description.filterable;\r\n this._showFieldFilters = (description.showFieldFilters === undefined) ? true : description.showFieldFilters;\r\n this._showDistinctValueFilters = (description.showDistinctValueFilters === undefined) ? true : description.showDistinctValueFilters;\r\n this._filterCaseSensitive = (description.filterCaseSensitive === undefined) ? false : description.filterCaseSensitive;\r\n\r\n if (!this._columnDescription.propertyDescription) {\r\n this._columnDescription.propertyDescription = {\r\n name: \"\",\r\n displayLabel: \"\",\r\n typename: \"\",\r\n };\r\n }\r\n }\r\n\r\n /** Indicates whether column is filterable.\r\n */\r\n public get filterable(): boolean {\r\n return this._filterable;\r\n }\r\n\r\n /** Gets the owning filterable Table.\r\n */\r\n public get filterableTable(): FilterableTable {\r\n return this._filterableTable;\r\n }\r\n\r\n /** Gets the Column Description.\r\n */\r\n public get columnDescription(): ColumnDescription {\r\n return this._columnDescription;\r\n }\r\n\r\n /** Gets the column filter descriptor.\r\n * @return A class implementing IColumnFilterDescriptor.\r\n */\r\n public get columnFilterDescriptor(): ColumnFilterDescriptor {\r\n let columnFilterDescriptor = this._filterableTable.filterDescriptors.getColumnFilterDescriptor(this.filterMemberKey);\r\n\r\n if (undefined === columnFilterDescriptor) {\r\n columnFilterDescriptor = this.createColumnFilterDescriptor();\r\n this._filterableTable.filterDescriptors.add(columnFilterDescriptor);\r\n }\r\n\r\n return columnFilterDescriptor;\r\n }\r\n\r\n /** Creates the column filter descriptor.\r\n * @return A new class implementing ColumnFilterDescriptor.\r\n */\r\n protected createColumnFilterDescriptor(): ColumnFilterDescriptor {\r\n return new TableColumnFilterDescriptor(this, this.filterMemberKey, this.filterMemberType);\r\n }\r\n\r\n /** Creates a basic filter descriptor for use .\r\n * @return A new FilterDescriptor.\r\n */\r\n public createSimpleFilterDescriptor(value: any, filterOperator: FilterOperator): TableFilterDescriptor {\r\n return new TableFilterDescriptor(this._filterableTable, this.filterMemberKey, this.filterMemberType, filterOperator, value, this._filterCaseSensitive);\r\n }\r\n\r\n /** Gets the filter member key.\r\n */\r\n public get filterMemberKey(): string {\r\n return this._columnDescription.key;\r\n }\r\n\r\n /** Gets the filter member type.\r\n */\r\n public get filterMemberType(): string {\r\n let memberType = \"\";\r\n // istanbul ignore else\r\n if (this._columnDescription.propertyDescription)\r\n memberType = this._columnDescription.propertyDescription.typename;\r\n return memberType;\r\n }\r\n\r\n /** Determines if a filter is active. */\r\n public get isFilterActive(): boolean {\r\n return this._filterableTable.filterDescriptors.isColumnFilterActive(this.filterMemberKey);\r\n }\r\n\r\n /** Determines if the filter should show distinct values as a filter option */\r\n public get showDistinctValueFilters(): boolean {\r\n return this._showDistinctValueFilters;\r\n }\r\n\r\n /** Determines if the filter should show field filter options */\r\n public get showFieldFilters(): boolean {\r\n return this._showFieldFilters;\r\n }\r\n\r\n /** Determines if the filter is case-sensitive */\r\n public get filterCaseSensitive(): boolean {\r\n return this._filterCaseSensitive;\r\n }\r\n\r\n /** Gets the distinct values for a column.\r\n * @return The distinct values.\r\n */\r\n public abstract getDistinctValues(maximumValueCount: number): Promise<DistinctValueCollection>;\r\n\r\n}\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TableColumnFilterDescriptor.d.ts","sourceRoot":"","sources":["../../../../../src/components-react/table/columnfiltering/TableColumnFilterDescriptor.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EACL,sBAAsB,EAAsD,8BAA8B,EAAE,qBAAqB,EAAE,gBAAgB,EAGpJ,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"TableColumnFilterDescriptor.d.ts","sourceRoot":"","sources":["../../../../../src/components-react/table/columnfiltering/TableColumnFilterDescriptor.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EACL,sBAAsB,EAAsD,8BAA8B,EAAE,qBAAqB,EAAE,gBAAgB,EAGpJ,MAAM,mBAAmB,CAAC;AAG3B;;GAEG;AACH,qBAAa,2BAA4B,YAAW,sBAAsB;IACxE,OAAO,CAAC,OAAO,CAAmB;IAClC,OAAO,CAAC,gBAAgB,CAAgC;IACxD,OAAO,CAAC,eAAe,CAAqC;IAC5D,OAAO,CAAC,YAAY,CAAwB;IAC5C,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,WAAW,CAAS;IAE5B;;;;OAIG;gBACgB,MAAM,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM;IAclF;OACG;IACH,IAAW,cAAc,IAAI,8BAA8B,CAE1D;IAED;OACG;IACH,IAAW,WAAW,IAAI,qBAAqB,CAE9C;IAED;OACG;IACH,IAAW,QAAQ,IAAI,OAAO,CAE7B;IAED;OACG;IACH,IAAW,MAAM,IAAI,gBAAgB,CAEpC;IAED;OACG;IACI,KAAK,IAAI,IAAI;IAOpB;OACG;IACI,WAAW,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO;IAIzC;OACG;IACI,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAI7C,mBAAmB,IAAI,MAAM;IAIpC;OACG;IACH,IAAW,SAAS,IAAI,MAAM,CAE7B;IAED;OACG;IACH,IAAW,SAAS,CAAC,KAAK,EAAE,MAAM,EAOjC;IAED;OACG;IACH,IAAW,UAAU,IAAI,MAAM,CAE9B;IAED;OACG;IACH,IAAW,UAAU,CAAC,KAAK,EAAE,MAAM,EAOlC;CACF"}
|
|
@@ -9,6 +9,7 @@
|
|
|
9
9
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
10
|
exports.TableColumnFilterDescriptor = void 0;
|
|
11
11
|
const ColumnFiltering_1 = require("./ColumnFiltering");
|
|
12
|
+
/* eslint-disable deprecation/deprecation */
|
|
12
13
|
/** A ColumnFilterDescriptor for TableColumn.
|
|
13
14
|
* @internal
|
|
14
15
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TableColumnFilterDescriptor.js","sourceRoot":"","sources":["../../../../../src/components-react/table/columnfiltering/TableColumnFilterDescriptor.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 Table\r\n */\r\n\r\nimport { RowItem } from \"../TableDataProvider\";\r\nimport {\r\n ColumnFilterDescriptor, CompositeFilterDescriptor, DistinctValueCollection, DistinctValuesFilterDescriptor, FieldFilterDescriptor, FilterableColumn,\r\n FilterCompositionLogicalOperator, FilterDescriptorCollection, FilterOperator, OperatorValueFilterDescriptor,\r\n OperatorValueFilterDescriptorCollection,\r\n} from \"./ColumnFiltering\";\r\n\r\n/** A ColumnFilterDescriptor for TableColumn.\r\n * @internal\r\n */\r\nexport class TableColumnFilterDescriptor implements ColumnFilterDescriptor {\r\n private _column: FilterableColumn;\r\n private _compositeFilter: CompositeFilterDescriptorImpl;\r\n private _distinctFilter: DistinctValuesFilterDescriptorImpl;\r\n private _fieldFilter: FieldFilterDescriptor;\r\n private _memberKey: string;\r\n private _memberType: string;\r\n\r\n /** Initializes a new instance of the ColumnFilterDescriptor class.\r\n * @param column The column.\r\n * @param memberKey The member (key).\r\n * @param memberType The member type.\r\n */\r\n public constructor(column: FilterableColumn, memberKey: string, memberType: string) {\r\n this._column = column;\r\n this._memberKey = memberKey;\r\n this._memberType = memberType;\r\n\r\n this._distinctFilter = new DistinctValuesFilterDescriptorImpl(column);\r\n this._fieldFilter = new FieldFilterDescriptorImpl(column);\r\n\r\n this._compositeFilter = new CompositeFilterDescriptorImpl();\r\n this._compositeFilter.logicalOperator = FilterCompositionLogicalOperator.And;\r\n this._compositeFilter.filterDescriptorCollection.add(this._distinctFilter);\r\n this._compositeFilter.filterDescriptorCollection.add(this._fieldFilter);\r\n }\r\n\r\n /** Gets the distinct values filter descriptor.\r\n */\r\n public get distinctFilter(): DistinctValuesFilterDescriptor {\r\n return this._distinctFilter;\r\n }\r\n\r\n /** Gets the field filter descriptor.\r\n */\r\n public get fieldFilter(): FieldFilterDescriptor {\r\n return this._fieldFilter;\r\n }\r\n\r\n /** Determines if the filter descriptor is active.\r\n */\r\n public get isActive(): boolean {\r\n return this._compositeFilter.isActive;\r\n }\r\n\r\n /** Gets the column.\r\n */\r\n public get column(): FilterableColumn {\r\n return this._column;\r\n }\r\n\r\n /** Clears the filter descriptor.\r\n */\r\n public clear(): void {\r\n this._distinctFilter.clear();\r\n this._fieldFilter.clear();\r\n\r\n // Do NOT call this._compositeFilter.clear() here. That removes the filters from the composite.\r\n }\r\n\r\n /** Evaluates a row for filtering\r\n */\r\n public evaluateRow(row: RowItem): boolean {\r\n return this._compositeFilter.evaluateRow(row);\r\n }\r\n\r\n /** Determines if this filter is for a particular column.\r\n */\r\n public isFilterForColumn(columnKey: string): boolean {\r\n return (this.isActive && this._column.filterMemberKey === columnKey);\r\n }\r\n\r\n public getFilterExpression(): string {\r\n return this._compositeFilter.getFilterExpression();\r\n }\r\n\r\n /** Gets the member (key).\r\n */\r\n public get memberKey(): string {\r\n return this._memberKey;\r\n }\r\n\r\n /** Sets the member (key).\r\n */\r\n public set memberKey(value: string) {\r\n if (value !== this.memberKey) {\r\n this._memberKey = value;\r\n\r\n this.distinctFilter.filterDescriptorCollection.descriptors.forEach((fd: OperatorValueFilterDescriptor) => fd.memberKey = value);\r\n this.fieldFilter.filterDescriptorCollection.descriptors.forEach((fd: OperatorValueFilterDescriptor) => fd.memberKey = value);\r\n }\r\n }\r\n\r\n /** Gets the member type.\r\n */\r\n public get memberType(): string {\r\n return this._memberType;\r\n }\r\n\r\n /** Sets the member type.\r\n */\r\n public set memberType(value: string) {\r\n if (value !== this.memberType) {\r\n this._memberType = value;\r\n\r\n this.distinctFilter.filterDescriptorCollection.descriptors.forEach((fd: OperatorValueFilterDescriptor) => fd.memberType = value);\r\n this.fieldFilter.filterDescriptorCollection.descriptors.forEach((fd: OperatorValueFilterDescriptor) => fd.memberType = value);\r\n }\r\n }\r\n}\r\n\r\n/** Filtering descriptor which serves as a container for one or more child filtering descriptors.\r\n * @internal\r\n */\r\nclass CompositeFilterDescriptorImpl implements CompositeFilterDescriptor {\r\n private _filterDescriptors?: FilterDescriptorCollection;\r\n private _logicalOperator: FilterCompositionLogicalOperator = FilterCompositionLogicalOperator.And;\r\n\r\n /** Gets the logical operator.\r\n */\r\n public get logicalOperator(): FilterCompositionLogicalOperator { return this._logicalOperator; }\r\n\r\n /** Sets the logical operator.\r\n */\r\n public set logicalOperator(value: FilterCompositionLogicalOperator) {\r\n if (this._logicalOperator !== value) {\r\n this._logicalOperator = value;\r\n }\r\n }\r\n\r\n /** Gets the filter descriptors that will be used for composition.\r\n */\r\n public get filterDescriptorCollection(): FilterDescriptorCollection {\r\n if (!this._filterDescriptors) {\r\n this._filterDescriptors = new FilterDescriptorCollection();\r\n }\r\n return this._filterDescriptors;\r\n }\r\n\r\n /** Determines if the filter descriptor is active.\r\n */\r\n public get isActive(): boolean {\r\n let active = false;\r\n // istanbul ignore else\r\n if (this._filterDescriptors)\r\n active = this._filterDescriptors.isActive;\r\n return active;\r\n }\r\n\r\n /** Clears the filter descriptor.\r\n */\r\n /* istanbul ignore next */\r\n public clear(): void {\r\n if (this._filterDescriptors)\r\n this._filterDescriptors.clear();\r\n }\r\n\r\n /** Evaluates a row for filtering\r\n */\r\n public evaluateRow(row: RowItem): boolean {\r\n let passed: boolean = true;\r\n\r\n for (const fd of this.filterDescriptorCollection.descriptors) {\r\n /* istanbul ignore next */\r\n if (!fd.isActive)\r\n continue;\r\n\r\n passed = fd.evaluateRow(row);\r\n\r\n if (passed && FilterCompositionLogicalOperator.Or === this.logicalOperator)\r\n return true;\r\n else if (!passed && FilterCompositionLogicalOperator.And === this.logicalOperator)\r\n return false;\r\n }\r\n\r\n return passed;\r\n }\r\n\r\n /** Determines if this filter is for a particular column.\r\n */\r\n public isFilterForColumn(columnKey: string): boolean {\r\n for (const fd of this.filterDescriptorCollection.descriptors) {\r\n /* istanbul ignore next */\r\n if (!fd.isActive)\r\n continue;\r\n\r\n if (fd.isFilterForColumn(columnKey))\r\n return true;\r\n }\r\n\r\n return false;\r\n }\r\n\r\n /** Returns filter as ECExpression */\r\n public getFilterExpression(): string {\r\n let result: string = \"\";\r\n for (let i = 0; i < this.filterDescriptorCollection.descriptors.length; i++) {\r\n if (!this.filterDescriptorCollection.descriptors[i].isActive)\r\n continue;\r\n\r\n if (i > 0 && result !== \"\") {\r\n switch (this.logicalOperator) {\r\n case FilterCompositionLogicalOperator.And:\r\n result += (\" And \");\r\n break;\r\n case FilterCompositionLogicalOperator.Or:\r\n result += (\" Or \");\r\n break;\r\n }\r\n }\r\n result += (`(${this.filterDescriptorCollection.descriptors[i].getFilterExpression()})`);\r\n }\r\n return result;\r\n }\r\n}\r\n\r\n/** The default implementation of DistinctValuesFilterDescriptor.\r\n * @internal\r\n */\r\nclass DistinctValuesFilterDescriptorImpl implements DistinctValuesFilterDescriptor {\r\n private _column: FilterableColumn;\r\n private _compositeFilter: CompositeFilterDescriptorImpl;\r\n private _distinctValuesComparisonOperator: FilterOperator = FilterOperator.IsEqualTo;\r\n\r\n public constructor(column: FilterableColumn) {\r\n this._column = column;\r\n\r\n this._compositeFilter = new CompositeFilterDescriptorImpl();\r\n this._compositeFilter.logicalOperator = FilterCompositionLogicalOperator.Or;\r\n }\r\n\r\n /** Gets the distinct values from the collection as an Array.\r\n */\r\n public get distinctValues(): DistinctValueCollection {\r\n const distinctValues = new DistinctValueCollection();\r\n\r\n for (const fd of this.filterDescriptorCollection.descriptors) {\r\n distinctValues.values.push(fd.value);\r\n }\r\n\r\n return distinctValues;\r\n }\r\n\r\n /** Gets the collection of distinct values.\r\n */\r\n public get filterDescriptorCollection(): OperatorValueFilterDescriptorCollection {\r\n return this._compositeFilter.filterDescriptorCollection as OperatorValueFilterDescriptorCollection;\r\n }\r\n\r\n /** Determines if the filter descriptor is active.\r\n */\r\n public get isActive(): boolean {\r\n return this.filterDescriptorCollection.descriptors.some((fd: OperatorValueFilterDescriptor) => fd.isActive);\r\n }\r\n\r\n /** Tries to find a distinct value in the collection.\r\n */\r\n public tryFindDescriptor(distinctValue: any): OperatorValueFilterDescriptor | undefined {\r\n return this.filterDescriptorCollection.descriptors.find((fd: OperatorValueFilterDescriptor) => fd.value === distinctValue);\r\n }\r\n\r\n /** Adds a distinct value to the collection.\r\n */\r\n public addDistinctValue(distinctValue: any): void {\r\n const existing = this.tryFindDescriptor(distinctValue);\r\n\r\n if (existing) {\r\n return;\r\n }\r\n\r\n const newFilterDescriptor = this._column.createSimpleFilterDescriptor(distinctValue, this.distinctValuesComparisonOperator);\r\n newFilterDescriptor.isCaseSensitive = true;\r\n this.filterDescriptorCollection.add(newFilterDescriptor);\r\n }\r\n\r\n /** Removes a distinct value from the collection.\r\n */\r\n public removeDistinctValue(distinctValue: any): boolean {\r\n const existing = this.tryFindDescriptor(distinctValue);\r\n\r\n if (existing) {\r\n return this.filterDescriptorCollection.remove(existing);\r\n }\r\n\r\n return false;\r\n }\r\n\r\n /** Clears the filter descriptor.\r\n */\r\n public clear(): void {\r\n this.filterDescriptorCollection.clear();\r\n }\r\n\r\n /** Gets the distinct values comparison operator.\r\n */\r\n public get distinctValuesComparisonOperator(): FilterOperator { return this._distinctValuesComparisonOperator; }\r\n\r\n /** Sets the distinct values comparison operator.\r\n */\r\n public set distinctValuesComparisonOperator(value: FilterOperator) {\r\n // istanbul ignore else\r\n if (this._distinctValuesComparisonOperator !== value) {\r\n this._distinctValuesComparisonOperator = value;\r\n }\r\n }\r\n\r\n /** Evaluates a row for filtering\r\n */\r\n public evaluateRow(row: RowItem): boolean {\r\n return this._compositeFilter.evaluateRow(row);\r\n }\r\n\r\n /** Determines if this filter is for a particular column.\r\n */\r\n public isFilterForColumn(columnKey: string): boolean {\r\n return this._compositeFilter.isFilterForColumn(columnKey);\r\n }\r\n\r\n public getFilterExpression(): string {\r\n return this._compositeFilter.getFilterExpression();\r\n }\r\n}\r\n\r\n/** The default implementation of IFieldFilterDescriptor.\r\n * @internal\r\n */\r\nclass FieldFilterDescriptorImpl implements FieldFilterDescriptor {\r\n private _column: FilterableColumn;\r\n private _compositeFilter: CompositeFilterDescriptorImpl;\r\n\r\n public constructor(column: FilterableColumn) {\r\n this._column = column;\r\n\r\n this._compositeFilter = new CompositeFilterDescriptorImpl();\r\n this._compositeFilter.logicalOperator = FilterCompositionLogicalOperator.Or;\r\n }\r\n\r\n /** Gets the logical operator.\r\n */\r\n public get logicalOperator(): FilterCompositionLogicalOperator {\r\n return this._compositeFilter.logicalOperator;\r\n }\r\n\r\n /** Sets the logical operator.\r\n */\r\n public set logicalOperator(value: FilterCompositionLogicalOperator) {\r\n this._compositeFilter.logicalOperator = value;\r\n }\r\n\r\n /** Determines if the filter descriptor is active.\r\n */\r\n public get isActive(): boolean {\r\n return this.filterDescriptorCollection.descriptors.some((fd: OperatorValueFilterDescriptor) => fd.isActive);\r\n }\r\n\r\n /** Gets the collection of distinct values.\r\n */\r\n public get filterDescriptorCollection(): OperatorValueFilterDescriptorCollection {\r\n return this._compositeFilter.filterDescriptorCollection as OperatorValueFilterDescriptorCollection;\r\n }\r\n\r\n /** Tries to find a field value in the collection.\r\n */\r\n public tryFindDescriptor(fieldValue: any, operator: FilterOperator): OperatorValueFilterDescriptor | undefined {\r\n return this.filterDescriptorCollection.descriptors.find((fd: OperatorValueFilterDescriptor) => {\r\n return fd.value === fieldValue && fd.operator === operator;\r\n });\r\n }\r\n\r\n /** Adds a field value to the collection.\r\n */\r\n public addFieldValue(fieldValue: any, operator: FilterOperator, isCaseSensitive: boolean = false): void {\r\n const existing = this.tryFindDescriptor(fieldValue, operator);\r\n\r\n if (existing) {\r\n return;\r\n }\r\n\r\n const newFilterDescriptor = this._column.createSimpleFilterDescriptor(fieldValue, operator);\r\n newFilterDescriptor.isCaseSensitive = isCaseSensitive;\r\n this.filterDescriptorCollection.add(newFilterDescriptor);\r\n }\r\n\r\n /** Removes a distinct value from the collection.\r\n */\r\n public removeFieldValue(fieldValue: any, operator: FilterOperator): boolean {\r\n const existing = this.tryFindDescriptor(fieldValue, operator);\r\n\r\n if (existing) {\r\n return this.filterDescriptorCollection.remove(existing);\r\n }\r\n\r\n return false;\r\n }\r\n\r\n /** Clears the filter descriptor.\r\n */\r\n public clear(): void {\r\n this.logicalOperator = FilterCompositionLogicalOperator.And;\r\n\r\n this.filterDescriptorCollection.clear();\r\n }\r\n\r\n /** Evaluates a row for filtering\r\n */\r\n public evaluateRow(row: RowItem): boolean {\r\n let result = true;\r\n\r\n for (const fd of this.filterDescriptorCollection.descriptors) {\r\n /* istanbul ignore next */\r\n if (!fd.isActive)\r\n continue;\r\n\r\n result = fd.evaluateRow(row);\r\n if (result && this.logicalOperator === FilterCompositionLogicalOperator.Or)\r\n return true;\r\n else if (!result && this.logicalOperator === FilterCompositionLogicalOperator.And)\r\n return false;\r\n }\r\n\r\n return result;\r\n }\r\n\r\n /** Determines if this filter is for a particular column.\r\n */\r\n public isFilterForColumn(columnKey: string): boolean {\r\n return (this.isActive && this._column.filterMemberKey === columnKey);\r\n }\r\n\r\n public getFilterExpression(): string {\r\n return this._compositeFilter.getFilterExpression();\r\n }\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"file":"TableColumnFilterDescriptor.js","sourceRoot":"","sources":["../../../../../src/components-react/table/columnfiltering/TableColumnFilterDescriptor.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 Table\r\n */\r\n\r\nimport { RowItem } from \"../TableDataProvider\";\r\nimport {\r\n ColumnFilterDescriptor, CompositeFilterDescriptor, DistinctValueCollection, DistinctValuesFilterDescriptor, FieldFilterDescriptor, FilterableColumn,\r\n FilterCompositionLogicalOperator, FilterDescriptorCollection, FilterOperator, OperatorValueFilterDescriptor,\r\n OperatorValueFilterDescriptorCollection,\r\n} from \"./ColumnFiltering\";\r\n/* eslint-disable deprecation/deprecation */\r\n\r\n/** A ColumnFilterDescriptor for TableColumn.\r\n * @internal\r\n */\r\nexport class TableColumnFilterDescriptor implements ColumnFilterDescriptor {\r\n private _column: FilterableColumn;\r\n private _compositeFilter: CompositeFilterDescriptorImpl;\r\n private _distinctFilter: DistinctValuesFilterDescriptorImpl;\r\n private _fieldFilter: FieldFilterDescriptor;\r\n private _memberKey: string;\r\n private _memberType: string;\r\n\r\n /** Initializes a new instance of the ColumnFilterDescriptor class.\r\n * @param column The column.\r\n * @param memberKey The member (key).\r\n * @param memberType The member type.\r\n */\r\n public constructor(column: FilterableColumn, memberKey: string, memberType: string) {\r\n this._column = column;\r\n this._memberKey = memberKey;\r\n this._memberType = memberType;\r\n\r\n this._distinctFilter = new DistinctValuesFilterDescriptorImpl(column);\r\n this._fieldFilter = new FieldFilterDescriptorImpl(column);\r\n\r\n this._compositeFilter = new CompositeFilterDescriptorImpl();\r\n this._compositeFilter.logicalOperator = FilterCompositionLogicalOperator.And;\r\n this._compositeFilter.filterDescriptorCollection.add(this._distinctFilter);\r\n this._compositeFilter.filterDescriptorCollection.add(this._fieldFilter);\r\n }\r\n\r\n /** Gets the distinct values filter descriptor.\r\n */\r\n public get distinctFilter(): DistinctValuesFilterDescriptor {\r\n return this._distinctFilter;\r\n }\r\n\r\n /** Gets the field filter descriptor.\r\n */\r\n public get fieldFilter(): FieldFilterDescriptor {\r\n return this._fieldFilter;\r\n }\r\n\r\n /** Determines if the filter descriptor is active.\r\n */\r\n public get isActive(): boolean {\r\n return this._compositeFilter.isActive;\r\n }\r\n\r\n /** Gets the column.\r\n */\r\n public get column(): FilterableColumn {\r\n return this._column;\r\n }\r\n\r\n /** Clears the filter descriptor.\r\n */\r\n public clear(): void {\r\n this._distinctFilter.clear();\r\n this._fieldFilter.clear();\r\n\r\n // Do NOT call this._compositeFilter.clear() here. That removes the filters from the composite.\r\n }\r\n\r\n /** Evaluates a row for filtering\r\n */\r\n public evaluateRow(row: RowItem): boolean {\r\n return this._compositeFilter.evaluateRow(row);\r\n }\r\n\r\n /** Determines if this filter is for a particular column.\r\n */\r\n public isFilterForColumn(columnKey: string): boolean {\r\n return (this.isActive && this._column.filterMemberKey === columnKey);\r\n }\r\n\r\n public getFilterExpression(): string {\r\n return this._compositeFilter.getFilterExpression();\r\n }\r\n\r\n /** Gets the member (key).\r\n */\r\n public get memberKey(): string {\r\n return this._memberKey;\r\n }\r\n\r\n /** Sets the member (key).\r\n */\r\n public set memberKey(value: string) {\r\n if (value !== this.memberKey) {\r\n this._memberKey = value;\r\n\r\n this.distinctFilter.filterDescriptorCollection.descriptors.forEach((fd: OperatorValueFilterDescriptor) => fd.memberKey = value);\r\n this.fieldFilter.filterDescriptorCollection.descriptors.forEach((fd: OperatorValueFilterDescriptor) => fd.memberKey = value);\r\n }\r\n }\r\n\r\n /** Gets the member type.\r\n */\r\n public get memberType(): string {\r\n return this._memberType;\r\n }\r\n\r\n /** Sets the member type.\r\n */\r\n public set memberType(value: string) {\r\n if (value !== this.memberType) {\r\n this._memberType = value;\r\n\r\n this.distinctFilter.filterDescriptorCollection.descriptors.forEach((fd: OperatorValueFilterDescriptor) => fd.memberType = value);\r\n this.fieldFilter.filterDescriptorCollection.descriptors.forEach((fd: OperatorValueFilterDescriptor) => fd.memberType = value);\r\n }\r\n }\r\n}\r\n\r\n/** Filtering descriptor which serves as a container for one or more child filtering descriptors.\r\n * @internal\r\n */\r\nclass CompositeFilterDescriptorImpl implements CompositeFilterDescriptor {\r\n private _filterDescriptors?: FilterDescriptorCollection;\r\n private _logicalOperator: FilterCompositionLogicalOperator = FilterCompositionLogicalOperator.And;\r\n\r\n /** Gets the logical operator.\r\n */\r\n public get logicalOperator(): FilterCompositionLogicalOperator { return this._logicalOperator; }\r\n\r\n /** Sets the logical operator.\r\n */\r\n public set logicalOperator(value: FilterCompositionLogicalOperator) {\r\n if (this._logicalOperator !== value) {\r\n this._logicalOperator = value;\r\n }\r\n }\r\n\r\n /** Gets the filter descriptors that will be used for composition.\r\n */\r\n public get filterDescriptorCollection(): FilterDescriptorCollection {\r\n if (!this._filterDescriptors) {\r\n this._filterDescriptors = new FilterDescriptorCollection();\r\n }\r\n return this._filterDescriptors;\r\n }\r\n\r\n /** Determines if the filter descriptor is active.\r\n */\r\n public get isActive(): boolean {\r\n let active = false;\r\n // istanbul ignore else\r\n if (this._filterDescriptors)\r\n active = this._filterDescriptors.isActive;\r\n return active;\r\n }\r\n\r\n /** Clears the filter descriptor.\r\n */\r\n /* istanbul ignore next */\r\n public clear(): void {\r\n if (this._filterDescriptors)\r\n this._filterDescriptors.clear();\r\n }\r\n\r\n /** Evaluates a row for filtering\r\n */\r\n public evaluateRow(row: RowItem): boolean {\r\n let passed: boolean = true;\r\n\r\n for (const fd of this.filterDescriptorCollection.descriptors) {\r\n /* istanbul ignore next */\r\n if (!fd.isActive)\r\n continue;\r\n\r\n passed = fd.evaluateRow(row);\r\n\r\n if (passed && FilterCompositionLogicalOperator.Or === this.logicalOperator)\r\n return true;\r\n else if (!passed && FilterCompositionLogicalOperator.And === this.logicalOperator)\r\n return false;\r\n }\r\n\r\n return passed;\r\n }\r\n\r\n /** Determines if this filter is for a particular column.\r\n */\r\n public isFilterForColumn(columnKey: string): boolean {\r\n for (const fd of this.filterDescriptorCollection.descriptors) {\r\n /* istanbul ignore next */\r\n if (!fd.isActive)\r\n continue;\r\n\r\n if (fd.isFilterForColumn(columnKey))\r\n return true;\r\n }\r\n\r\n return false;\r\n }\r\n\r\n /** Returns filter as ECExpression */\r\n public getFilterExpression(): string {\r\n let result: string = \"\";\r\n for (let i = 0; i < this.filterDescriptorCollection.descriptors.length; i++) {\r\n if (!this.filterDescriptorCollection.descriptors[i].isActive)\r\n continue;\r\n\r\n if (i > 0 && result !== \"\") {\r\n switch (this.logicalOperator) {\r\n case FilterCompositionLogicalOperator.And:\r\n result += (\" And \");\r\n break;\r\n case FilterCompositionLogicalOperator.Or:\r\n result += (\" Or \");\r\n break;\r\n }\r\n }\r\n result += (`(${this.filterDescriptorCollection.descriptors[i].getFilterExpression()})`);\r\n }\r\n return result;\r\n }\r\n}\r\n\r\n/** The default implementation of DistinctValuesFilterDescriptor.\r\n * @internal\r\n */\r\nclass DistinctValuesFilterDescriptorImpl implements DistinctValuesFilterDescriptor {\r\n private _column: FilterableColumn;\r\n private _compositeFilter: CompositeFilterDescriptorImpl;\r\n private _distinctValuesComparisonOperator: FilterOperator = FilterOperator.IsEqualTo;\r\n\r\n public constructor(column: FilterableColumn) {\r\n this._column = column;\r\n\r\n this._compositeFilter = new CompositeFilterDescriptorImpl();\r\n this._compositeFilter.logicalOperator = FilterCompositionLogicalOperator.Or;\r\n }\r\n\r\n /** Gets the distinct values from the collection as an Array.\r\n */\r\n public get distinctValues(): DistinctValueCollection {\r\n const distinctValues = new DistinctValueCollection();\r\n\r\n for (const fd of this.filterDescriptorCollection.descriptors) {\r\n distinctValues.values.push(fd.value);\r\n }\r\n\r\n return distinctValues;\r\n }\r\n\r\n /** Gets the collection of distinct values.\r\n */\r\n public get filterDescriptorCollection(): OperatorValueFilterDescriptorCollection {\r\n return this._compositeFilter.filterDescriptorCollection as OperatorValueFilterDescriptorCollection;\r\n }\r\n\r\n /** Determines if the filter descriptor is active.\r\n */\r\n public get isActive(): boolean {\r\n return this.filterDescriptorCollection.descriptors.some((fd: OperatorValueFilterDescriptor) => fd.isActive);\r\n }\r\n\r\n /** Tries to find a distinct value in the collection.\r\n */\r\n public tryFindDescriptor(distinctValue: any): OperatorValueFilterDescriptor | undefined {\r\n return this.filterDescriptorCollection.descriptors.find((fd: OperatorValueFilterDescriptor) => fd.value === distinctValue);\r\n }\r\n\r\n /** Adds a distinct value to the collection.\r\n */\r\n public addDistinctValue(distinctValue: any): void {\r\n const existing = this.tryFindDescriptor(distinctValue);\r\n\r\n if (existing) {\r\n return;\r\n }\r\n\r\n const newFilterDescriptor = this._column.createSimpleFilterDescriptor(distinctValue, this.distinctValuesComparisonOperator);\r\n newFilterDescriptor.isCaseSensitive = true;\r\n this.filterDescriptorCollection.add(newFilterDescriptor);\r\n }\r\n\r\n /** Removes a distinct value from the collection.\r\n */\r\n public removeDistinctValue(distinctValue: any): boolean {\r\n const existing = this.tryFindDescriptor(distinctValue);\r\n\r\n if (existing) {\r\n return this.filterDescriptorCollection.remove(existing);\r\n }\r\n\r\n return false;\r\n }\r\n\r\n /** Clears the filter descriptor.\r\n */\r\n public clear(): void {\r\n this.filterDescriptorCollection.clear();\r\n }\r\n\r\n /** Gets the distinct values comparison operator.\r\n */\r\n public get distinctValuesComparisonOperator(): FilterOperator { return this._distinctValuesComparisonOperator; }\r\n\r\n /** Sets the distinct values comparison operator.\r\n */\r\n public set distinctValuesComparisonOperator(value: FilterOperator) {\r\n // istanbul ignore else\r\n if (this._distinctValuesComparisonOperator !== value) {\r\n this._distinctValuesComparisonOperator = value;\r\n }\r\n }\r\n\r\n /** Evaluates a row for filtering\r\n */\r\n public evaluateRow(row: RowItem): boolean {\r\n return this._compositeFilter.evaluateRow(row);\r\n }\r\n\r\n /** Determines if this filter is for a particular column.\r\n */\r\n public isFilterForColumn(columnKey: string): boolean {\r\n return this._compositeFilter.isFilterForColumn(columnKey);\r\n }\r\n\r\n public getFilterExpression(): string {\r\n return this._compositeFilter.getFilterExpression();\r\n }\r\n}\r\n\r\n/** The default implementation of IFieldFilterDescriptor.\r\n * @internal\r\n */\r\nclass FieldFilterDescriptorImpl implements FieldFilterDescriptor {\r\n private _column: FilterableColumn;\r\n private _compositeFilter: CompositeFilterDescriptorImpl;\r\n\r\n public constructor(column: FilterableColumn) {\r\n this._column = column;\r\n\r\n this._compositeFilter = new CompositeFilterDescriptorImpl();\r\n this._compositeFilter.logicalOperator = FilterCompositionLogicalOperator.Or;\r\n }\r\n\r\n /** Gets the logical operator.\r\n */\r\n public get logicalOperator(): FilterCompositionLogicalOperator {\r\n return this._compositeFilter.logicalOperator;\r\n }\r\n\r\n /** Sets the logical operator.\r\n */\r\n public set logicalOperator(value: FilterCompositionLogicalOperator) {\r\n this._compositeFilter.logicalOperator = value;\r\n }\r\n\r\n /** Determines if the filter descriptor is active.\r\n */\r\n public get isActive(): boolean {\r\n return this.filterDescriptorCollection.descriptors.some((fd: OperatorValueFilterDescriptor) => fd.isActive);\r\n }\r\n\r\n /** Gets the collection of distinct values.\r\n */\r\n public get filterDescriptorCollection(): OperatorValueFilterDescriptorCollection {\r\n return this._compositeFilter.filterDescriptorCollection as OperatorValueFilterDescriptorCollection;\r\n }\r\n\r\n /** Tries to find a field value in the collection.\r\n */\r\n public tryFindDescriptor(fieldValue: any, operator: FilterOperator): OperatorValueFilterDescriptor | undefined {\r\n return this.filterDescriptorCollection.descriptors.find((fd: OperatorValueFilterDescriptor) => {\r\n return fd.value === fieldValue && fd.operator === operator;\r\n });\r\n }\r\n\r\n /** Adds a field value to the collection.\r\n */\r\n public addFieldValue(fieldValue: any, operator: FilterOperator, isCaseSensitive: boolean = false): void {\r\n const existing = this.tryFindDescriptor(fieldValue, operator);\r\n\r\n if (existing) {\r\n return;\r\n }\r\n\r\n const newFilterDescriptor = this._column.createSimpleFilterDescriptor(fieldValue, operator);\r\n newFilterDescriptor.isCaseSensitive = isCaseSensitive;\r\n this.filterDescriptorCollection.add(newFilterDescriptor);\r\n }\r\n\r\n /** Removes a distinct value from the collection.\r\n */\r\n public removeFieldValue(fieldValue: any, operator: FilterOperator): boolean {\r\n const existing = this.tryFindDescriptor(fieldValue, operator);\r\n\r\n if (existing) {\r\n return this.filterDescriptorCollection.remove(existing);\r\n }\r\n\r\n return false;\r\n }\r\n\r\n /** Clears the filter descriptor.\r\n */\r\n public clear(): void {\r\n this.logicalOperator = FilterCompositionLogicalOperator.And;\r\n\r\n this.filterDescriptorCollection.clear();\r\n }\r\n\r\n /** Evaluates a row for filtering\r\n */\r\n public evaluateRow(row: RowItem): boolean {\r\n let result = true;\r\n\r\n for (const fd of this.filterDescriptorCollection.descriptors) {\r\n /* istanbul ignore next */\r\n if (!fd.isActive)\r\n continue;\r\n\r\n result = fd.evaluateRow(row);\r\n if (result && this.logicalOperator === FilterCompositionLogicalOperator.Or)\r\n return true;\r\n else if (!result && this.logicalOperator === FilterCompositionLogicalOperator.And)\r\n return false;\r\n }\r\n\r\n return result;\r\n }\r\n\r\n /** Determines if this filter is for a particular column.\r\n */\r\n public isFilterForColumn(columnKey: string): boolean {\r\n return (this.isActive && this._column.filterMemberKey === columnKey);\r\n }\r\n\r\n public getFilterExpression(): string {\r\n return this._compositeFilter.getFilterExpression();\r\n }\r\n}\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TableFilterDescriptor.d.ts","sourceRoot":"","sources":["../../../../../src/components-react/table/columnfiltering/TableFilterDescriptor.ts"],"names":[],"mappings":"AAIA;;GAEG;AASH,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,6BAA6B,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"TableFilterDescriptor.d.ts","sourceRoot":"","sources":["../../../../../src/components-react/table/columnfiltering/TableFilterDescriptor.ts"],"names":[],"mappings":"AAIA;;GAEG;AASH,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,6BAA6B,EAAE,MAAM,mBAAmB,CAAC;AAKnG;;GAEG;AACH,qBAAa,qBAAsB,YAAW,6BAA6B;IACzE,OAAO,CAAC,gBAAgB,CAAkB;IAC1C,OAAO,CAAC,UAAU,CAAc;IAChC,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,kBAAkB,CAAC,CAAS;IACpC,OAAO,CAAC,SAAS,CAA4C;IAC7D,OAAO,CAAC,MAAM,CAAM;IACpB,OAAO,CAAC,cAAc,CAAkB;IAExC,OAAc,UAAU,EAAE,MAAM,CAAW;IAE3C;;;;;;;;;OASG;gBACgB,eAAe,EAAE,eAAe,EACjD,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,EAClB,cAAc,GAAE,cAAyC,EACzD,WAAW,GAAE,GAAsC,EACnD,aAAa,GAAE,OAAe,EAC9B,iBAAiB,CAAC,EAAE,MAAM;IAW5B;OACG;IACH,IAAW,SAAS,IAAI,MAAM,CAE7B;IAED;OACG;IACH,IAAW,SAAS,CAAC,KAAK,EAAE,MAAM,EAEjC;IAED;OACG;IACH,IAAW,UAAU,IAAI,MAAM,CAE9B;IAED;OACG;IACH,IAAW,UAAU,CAAC,KAAK,EAAE,MAAM,EAElC;IAED;OACG;IACH,IAAW,iBAAiB,IAAI,MAAM,GAAG,SAAS,CAEjD;IAED;OACG;IACH,IAAW,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,EAErD;IAED;OACG;IACH,IAAW,QAAQ,IAAI,cAAc,CAEpC;IAED;OACG;IACH,IAAW,QAAQ,CAAC,QAAQ,EAAE,cAAc,EAE3C;IAED;OACG;IACH,IAAW,KAAK,IAAI,GAAG,CAEtB;IAED;OACG;IACH,IAAW,KAAK,CAAC,KAAK,EAAE,GAAG,EAE1B;IAED;OACG;IACH,IAAW,eAAe,IAAI,OAAO,CAEpC;IAED;OACG;IACH,IAAW,eAAe,CAAC,aAAa,EAAE,OAAO,EAEhD;IAED;OACG;IACI,KAAK,IAAI,IAAI;IAIpB;OACG;IACH,IAAW,QAAQ,IAAI,OAAO,CAU7B;IAED;OACG;IACI,WAAW,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO;IAezC;OACG;IACI,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAIpD,OAAO,CAAC,sBAAsB;IAgB9B,OAAO,CAAC,mCAAmC;IAS3C,OAAO,CAAC,wBAAwB;IAIhC,OAAO,CAAC,mBAAmB;IAwD3B,qCAAqC;IAC9B,mBAAmB,IAAI,MAAM;IAwCpC,OAAO,CAAC,eAAe;IAOvB,OAAO,CAAC,qBAAqB;CAoJ9B"}
|
|
@@ -15,6 +15,7 @@ const TypeConverterManager_1 = require("../../converters/TypeConverterManager");
|
|
|
15
15
|
const UiComponents_1 = require("../../UiComponents");
|
|
16
16
|
const ColumnFiltering_1 = require("./ColumnFiltering");
|
|
17
17
|
const ColumnFilteringUtilities_1 = require("./ColumnFilteringUtilities");
|
|
18
|
+
/* eslint-disable deprecation/deprecation */
|
|
18
19
|
/** Represents a filtering descriptor.
|
|
19
20
|
* @internal
|
|
20
21
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TableFilterDescriptor.js","sourceRoot":"","sources":["../../../../../src/components-react/table/columnfiltering/TableFilterDescriptor.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,sDAA6C;AAC7C,0DAA0D;AAE1D,gFAA6E;AAE7E,gFAA6E;AAC7E,qDAAkD;AAElD,uDAAmG;AACnG,yEAAsE;AAGtE;;GAEG;AACH,MAAa,qBAAqB;IAWhC;;;;;;;;;OASG;IACH,YAAmB,eAAgC,EACjD,SAAiB,EACjB,UAAkB,EAClB,iBAAiC,gCAAc,CAAC,SAAS,EACzD,cAAmB,qBAAqB,CAAC,UAAU,EACnD,gBAAyB,KAAK,EAC9B,iBAA0B;QAzBpB,eAAU,GAAW,EAAE,CAAC;QACxB,gBAAW,GAAW,EAAE,CAAC;QAEzB,cAAS,GAAmB,gCAAc,CAAC,SAAS,CAAC;QAErD,mBAAc,GAAY,KAAK,CAAC;QAsBtC,IAAI,CAAC,gBAAgB,GAAG,eAAe,CAAC;QACxC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,QAAQ,GAAG,cAAc,CAAC;QAC/B,IAAI,CAAC,KAAK,GAAG,WAAW,CAAC;QACzB,IAAI,CAAC,eAAe,GAAG,aAAa,CAAC;QACrC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,kBAAkB,GAAG,iBAAiB,CAAC;IAC9C,CAAC;IAED;OACG;IACH,IAAW,SAAS;QAClB,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAED;OACG;IACH,IAAW,SAAS,CAAC,KAAa;QAChC,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;IAC1B,CAAC;IAED;OACG;IACH,IAAW,UAAU;QACnB,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED;OACG;IACH,IAAW,UAAU,CAAC,KAAa;QACjC,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;IAC3B,CAAC;IAED;OACG;IACH,IAAW,iBAAiB;QAC1B,OAAO,IAAI,CAAC,kBAAkB,CAAC;IACjC,CAAC;IAED;OACG;IACH,IAAW,iBAAiB,CAAC,KAAyB;QACpD,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;IAClC,CAAC;IAED;OACG;IACH,IAAW,QAAQ;QACjB,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED;OACG;IACH,IAAW,QAAQ,CAAC,QAAwB;QAC1C,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;IAC5B,CAAC;IAED;OACG;IACH,IAAW,KAAK;QACd,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED;OACG;IACH,IAAW,KAAK,CAAC,KAAU;QACzB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;IACtB,CAAC;IAED;OACG;IACH,IAAW,eAAe;QACxB,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAED;OACG;IACH,IAAW,eAAe,CAAC,aAAsB;QAC/C,IAAI,CAAC,cAAc,GAAG,aAAa,CAAC;IACtC,CAAC;IAED;OACG;IACI,KAAK;QACV,IAAI,CAAC,KAAK,GAAG,qBAAqB,CAAC,UAAU,CAAC;IAChD,CAAC;IAED;OACG;IACH,IAAW,QAAQ;QACjB,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;YACpB,OAAO,KAAK,CAAC;SACd;QAED,IAAI,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;YACvC,OAAO,IAAI,CAAC;SACb;QAED,OAAO,IAAI,CAAC,KAAK,KAAK,qBAAqB,CAAC,UAAU,CAAC;IACzD,CAAC;IAED;OACG;IACI,WAAW,CAAC,GAAY;QAC7B,IAAI,IAAI,CAAC,UAAU,EAAE;YACnB,IAAI,SAAc,CAAC;YAEnB,IAAI,GAAG,CAAC,gBAAgB,KAAK,SAAS;gBACpC,SAAS,GAAG,GAAG,CAAC,gBAAgB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;;gBAElD,SAAS,GAAG,mDAAwB,CAAC,gBAAgB,CAAC,GAAG,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;YAE9E,OAAO,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAC;SAC9C;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED;OACG;IACI,iBAAiB,CAAC,SAAiB;QACxC,OAAO,IAAI,CAAC,UAAU,KAAK,SAAS,CAAC;IACvC,CAAC;IAEO,sBAAsB,CAAC,YAAqB;QAClD,uBAAuB;QACvB,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,KAAK,MAAM,EAAE;YAC3C,IAAI,CAAC,MAAM,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACpC,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;SAChC;QAED,yDAAyD;QACzD,MAAM,uBAAuB,GAAG,QAAQ,CAAC;QACzC,MAAM,iCAAiC,GAAG,SAAS,CAAC;QACpD,MAAM,kBAAkB,GAAG,IAAI,CAAC;QAChC,IAAI,YAAY;YACd,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC,CAAC;QACvD,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,GAAG,uBAAuB,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,GAAG,kBAAkB,CAAC,GAAG,iCAAiC,CAAC;IACxJ,CAAC;IAEO,mCAAmC,CAAC,cAAsB;QAChE,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI;YACrB,OAAO,EAAE,CAAC;QAEZ,IAAI,IAAI,CAAC,UAAU,KAAK,kCAAiB,CAAC,QAAQ;YAChD,OAAO,IAAI,IAAI,CAAC,SAAS,IAAI,cAAc,GAAG,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,GAAG,CAAC;QACtF,OAAO,GAAG,IAAI,CAAC,SAAS,IAAI,cAAc,KAAK,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,GAAG,CAAC;IAC3E,CAAC;IAEO,wBAAwB,CAAC,SAA2B;QAC1D,OAAO,IAAI,SAAS,CAAC,KAAK,CAAC,QAAQ,EAAE,OAAO,IAAI,CAAC,SAAS,UAAU,IAAI,CAAC,SAAS,OAAO,SAAS,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC;IACvH,CAAC;IAEO,mBAAmB,CAAC,OAAgB;QAC1C,IAAI,MAAM,GAAW,EAAE,CAAC;QACxB,IAAI,QAAQ,GAAW,KAAK,CAAC;QAC7B,IAAI,OAAO,EAAE;YACX,MAAM,GAAG,MAAM,CAAC;YAChB,QAAQ,GAAG,MAAM,CAAC;SACnB;QAED,QAAQ,IAAI,CAAC,UAAU,EAAE;YACvB,KAAK,kCAAiB,CAAC,QAAQ,CAAC,CAAC;gBAC/B,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI;oBACrB,OAAO,GAAG,IAAI,CAAC,SAAS,GAAG,QAAQ,OAAO,CAAC;gBAC7C,OAAO,GAAG,MAAM,IAAI,IAAI,CAAC,SAAS,OAAO,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,UAAU,IAAI,CAAC,SAAS,MAAM,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,GAAG,CAAC;aAC/I;YAED,KAAK,kCAAiB,CAAC,IAAI,CAAC;YAC5B,KAAK,kCAAiB,CAAC,OAAO;gBAC5B,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ;oBACjC,OAAO,IAAI,CAAC,SAAS,GAAG,QAAQ,GAAG,IAAI,2CAAoB,EAAE,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC;gBAC1G,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,SAAS;oBAClC,OAAO,IAAI,CAAC,SAAS,GAAG,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;gBAC5D,qBAAM,CAAC,QAAQ,CAAC,2BAAY,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,6CAA6C,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;gBACtH,MAAM;YAER,KAAK,kCAAiB,CAAC,OAAO,CAAC,CAAC;gBAC9B,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ;oBACjC,OAAO,GAAG,MAAM,2BAA2B,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC;gBACxG,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ;oBACjC,OAAO,GAAG,MAAM,GAAG,IAAI,CAAC,gBAAgB,CAAC,iCAAiC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,IAAI,CAAC,KAAK,GAAG,CAAC;gBACjH,qBAAM,CAAC,QAAQ,CAAC,2BAAY,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,6CAA6C,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;gBACtH,MAAM;aACP;YAED,KAAK,kCAAiB,CAAC,OAAO,CAAC,CAAC;gBAC9B,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ;oBACjC,OAAO,GAAG,MAAM,2BAA2B,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC;gBAC1H,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ;oBACjC,OAAO,GAAG,MAAM,GAAG,IAAI,CAAC,gBAAgB,CAAC,iCAAiC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,IAAI,CAAC,KAAK,GAAG,CAAC;gBACjH,qBAAM,CAAC,QAAQ,CAAC,2BAAY,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,6CAA6C,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;gBACtH,MAAM;aACP;YAED,KAAK,kCAAiB,CAAC,MAAM,CAAC;YAC9B,KAAK,kCAAiB,CAAC,KAAK,CAAC,CAAC;gBAC5B,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ;oBACjC,OAAO,GAAG,MAAM,4BAA4B,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC,MAAM,QAAQ,CAAC;gBACrF,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ;oBACjC,OAAO,GAAG,MAAM,GAAG,IAAI,CAAC,gBAAgB,CAAC,iCAAiC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,IAAI,CAAC,KAAK,GAAG,CAAC;gBACjH,qBAAM,CAAC,QAAQ,CAAC,2BAAY,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,6CAA6C,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;gBACtH,MAAM;aACP;SACF;QAED,OAAO,GAAG,IAAI,CAAC,SAAS,GAAG,QAAQ,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,GAAG,CAAC;IACnE,CAAC;IAED,qCAAqC;IAC9B,mBAAmB;QACxB,QAAQ,IAAI,CAAC,QAAQ,EAAE;YACrB,KAAK,gCAAc,CAAC,SAAS;gBAC3B,OAAO,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;YACzC,KAAK,gCAAc,CAAC,YAAY;gBAC9B,OAAO,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;YACxC,KAAK,gCAAc,CAAC,MAAM,CAAC;YAC3B,KAAK,gCAAc,CAAC,OAAO;gBACzB,OAAO,GAAG,IAAI,CAAC,SAAS,SAAS,CAAC;YACpC,KAAK,gCAAc,CAAC,SAAS,CAAC;YAC9B,KAAK,gCAAc,CAAC,UAAU;gBAC5B,OAAO,GAAG,IAAI,CAAC,SAAS,UAAU,CAAC;YACrC,KAAK,gCAAc,CAAC,UAAU;gBAC5B,OAAO,IAAI,CAAC,mCAAmC,CAAC,GAAG,CAAC,CAAC;YACvD,KAAK,gCAAc,CAAC,mBAAmB;gBACrC,OAAO,IAAI,CAAC,mCAAmC,CAAC,IAAI,CAAC,CAAC;YACxD,KAAK,gCAAc,CAAC,aAAa;gBAC/B,OAAO,IAAI,CAAC,mCAAmC,CAAC,GAAG,CAAC,CAAC;YACvD,KAAK,gCAAc,CAAC,sBAAsB;gBACxC,OAAO,IAAI,CAAC,mCAAmC,CAAC,IAAI,CAAC,CAAC;YACxD,KAAK,gCAAc,CAAC,KAAK;gBACvB,OAAO,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACpD,KAAK,gCAAc,CAAC,UAAU;gBAC5B,OAAO,GAAG,IAAI,CAAC,SAAS,MAAM,IAAI,KAAK,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC;YACjG,KAAK,gCAAc,CAAC,QAAQ;gBAC1B,OAAO,GAAG,IAAI,CAAC,SAAS,MAAM,IAAI,KAAK,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC;YACjG,KAAK,gCAAc,CAAC,QAAQ;gBAC1B,OAAO,GAAG,IAAI,CAAC,SAAS,MAAM,IAAI,KAAK,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC;YAClG,KAAK,gCAAc,CAAC,cAAc;gBAChC,OAAO,OAAO,IAAI,CAAC,SAAS,MAAM,IAAI,KAAK,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,GAAG,CAAC;YACvG,KAAK,gCAAc,CAAC,aAAa;gBAC/B,OAAO,GAAG,IAAI,KAAK,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,GAAG,YAAY,IAAI,CAAC,SAAS,SAAS,CAAC;YAC7G,KAAK,gCAAc,CAAC,gBAAgB;gBAClC,OAAO,OAAO,IAAI,KAAK,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,GAAG,YAAY,IAAI,CAAC,SAAS,UAAU,CAAC;SACnH;QAED,uBAAuB;QACvB,OAAO,EAAE,CAAC;IACZ,CAAC;IAEO,eAAe,CAAC,EAAkB;QACxC,OAAO,CAAC,EAAE,KAAK,gCAAc,CAAC,MAAM;YAClC,EAAE,KAAK,gCAAc,CAAC,SAAS;YAC/B,EAAE,KAAK,gCAAc,CAAC,OAAO;YAC7B,EAAE,KAAK,gCAAc,CAAC,UAAU,CAAC,CAAC;IACtC,CAAC;IAEO,qBAAqB,CAAC,SAAc;QAC1C,IAAI,MAAM,GAAY,KAAK,CAAC;QAC5B,MAAM,SAAS,GAAG,2CAAoB,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAE9F,QAAQ,IAAI,CAAC,QAAQ,EAAE;YACrB,KAAK,gCAAc,CAAC,SAAS,CAAC,CAAC;gBAC7B,MAAM,GAAG,SAAS,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;gBACpD,MAAM;aACP;YACD,KAAK,gCAAc,CAAC,YAAY,CAAC,CAAC;gBAChC,MAAM,GAAG,SAAS,CAAC,YAAY,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;gBACvD,MAAM;aACP;YAED,+DAA+D;YAC/D,KAAK,gCAAc,CAAC,UAAU,CAAC,CAAC;gBAC9B,uBAAuB;gBACvB,IAAI,SAAS,CAAC,iBAAiB,EAAE;oBAC/B,MAAM,WAAW,GAAiC,SAAgD,CAAC;oBACnG,MAAM,GAAG,WAAW,CAAC,UAAU,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;iBACxD;gBACD,MAAM;aACP;YACD,KAAK,gCAAc,CAAC,mBAAmB,CAAC,CAAC;gBACvC,uBAAuB;gBACvB,IAAI,SAAS,CAAC,iBAAiB,EAAE;oBAC/B,MAAM,WAAW,GAAiC,SAAgD,CAAC;oBACnG,MAAM,GAAG,WAAW,CAAC,mBAAmB,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;iBACjE;gBACD,MAAM;aACP;YACD,KAAK,gCAAc,CAAC,aAAa,CAAC,CAAC;gBACjC,uBAAuB;gBACvB,IAAI,SAAS,CAAC,iBAAiB,EAAE;oBAC/B,MAAM,WAAW,GAAiC,SAAgD,CAAC;oBACnG,MAAM,GAAG,WAAW,CAAC,aAAa,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;iBAC3D;gBACD,MAAM;aACP;YACD,KAAK,gCAAc,CAAC,sBAAsB,CAAC,CAAC;gBAC1C,uBAAuB;gBACvB,IAAI,SAAS,CAAC,iBAAiB,EAAE;oBAC/B,MAAM,WAAW,GAAiC,SAAgD,CAAC;oBACnG,MAAM,GAAG,WAAW,CAAC,sBAAsB,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;iBACpE;gBACD,MAAM;aACP;YACD,KAAK,gCAAc,CAAC,KAAK,CAAC,CAAC;gBACzB,uBAAuB;gBACvB,IAAI,SAAS,CAAC,iBAAiB,EAAE;oBAC/B,MAAM,WAAW,GAAiC,SAAgD,CAAC;oBACnG,MAAM,SAAS,GAAG,IAAI,CAAC,KAAoC,CAAC;oBAC5D,MAAM,MAAM,GAAG,WAAW,CAAC,sBAAsB,CAAC,SAAS,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC;oBAC9E,IAAI,CAAC,MAAM;wBACT,MAAM,GAAG,KAAK,CAAC;;wBAEf,MAAM,GAAG,WAAW,CAAC,mBAAmB,CAAC,SAAS,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC;iBACtE;gBACD,MAAM;aACP;YAED,UAAU;YACV,KAAK,gCAAc,CAAC,UAAU,CAAC,CAAC;gBAC9B,uBAAuB;gBACvB,IAAI,SAAS,CAAC,YAAY,EAAE;oBAC1B,MAAM,YAAY,GAA4B,SAA2C,CAAC;oBAC1F,MAAM,GAAG,YAAY,CAAC,UAAU,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;iBAC/E;gBACD,MAAM;aACP;YACD,KAAK,gCAAc,CAAC,QAAQ,CAAC,CAAC;gBAC5B,uBAAuB;gBACvB,IAAI,SAAS,CAAC,YAAY,EAAE;oBAC1B,MAAM,YAAY,GAA4B,SAA2C,CAAC;oBAC1F,MAAM,GAAG,YAAY,CAAC,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;iBAC7E;gBACD,MAAM;aACP;YACD,KAAK,gCAAc,CAAC,QAAQ,CAAC,CAAC;gBAC5B,uBAAuB;gBACvB,IAAI,SAAS,CAAC,YAAY,EAAE;oBAC1B,MAAM,YAAY,GAA4B,SAA2C,CAAC;oBAC1F,MAAM,GAAG,YAAY,CAAC,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;iBAC7E;gBACD,MAAM;aACP;YACD,KAAK,gCAAc,CAAC,cAAc,CAAC,CAAC;gBAClC,uBAAuB;gBACvB,IAAI,SAAS,CAAC,YAAY,EAAE;oBAC1B,MAAM,YAAY,GAA4B,SAA2C,CAAC;oBAC1F,MAAM,GAAG,YAAY,CAAC,cAAc,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;iBACnF;gBACD,MAAM;aACP;YACD,KAAK,gCAAc,CAAC,aAAa,CAAC,CAAC;gBACjC,uBAAuB;gBACvB,IAAI,SAAS,CAAC,YAAY,EAAE;oBAC1B,MAAM,YAAY,GAA4B,SAA2C,CAAC;oBAC1F,MAAM,GAAG,YAAY,CAAC,aAAa,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;iBAClF;gBACD,MAAM;aACP;YACD,KAAK,gCAAc,CAAC,gBAAgB,CAAC,CAAC;gBACpC,uBAAuB;gBACvB,IAAI,SAAS,CAAC,YAAY,EAAE;oBAC1B,MAAM,YAAY,GAA4B,SAA2C,CAAC;oBAC1F,MAAM,GAAG,YAAY,CAAC,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;iBACrF;gBACD,MAAM;aACP;YACD,KAAK,gCAAc,CAAC,OAAO,CAAC,CAAC;gBAC3B,uBAAuB;gBACvB,IAAI,SAAS,CAAC,YAAY,EAAE;oBAC1B,MAAM,YAAY,GAA4B,SAA2C,CAAC;oBAC1F,MAAM,GAAG,YAAY,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;iBAC1C;gBACD,MAAM;aACP;YACD,KAAK,gCAAc,CAAC,UAAU,CAAC,CAAC;gBAC9B,uBAAuB;gBACvB,IAAI,SAAS,CAAC,YAAY,EAAE;oBAC1B,MAAM,YAAY,GAA4B,SAA2C,CAAC;oBAC1F,MAAM,GAAG,YAAY,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;iBAC7C;gBACD,MAAM;aACP;YAED,iCAAiC;YACjC,KAAK,gCAAc,CAAC,MAAM,CAAC,CAAC;gBAC1B,uBAAuB;gBACvB,IAAI,SAAS,CAAC,cAAc,EAAE;oBAC5B,MAAM,aAAa,GAA8B,SAA6C,CAAC;oBAC/F,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;iBAC1C;gBACD,MAAM;aACP;YACD,KAAK,gCAAc,CAAC,SAAS,CAAC,CAAC;gBAC7B,uBAAuB;gBACvB,IAAI,SAAS,CAAC,cAAc,EAAE;oBAC5B,MAAM,aAAa,GAA8B,SAA6C,CAAC;oBAC/F,MAAM,GAAG,aAAa,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;iBAC7C;gBACD,MAAM;aACP;SACF;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;;AAjbH,sDAkbC;AAzae,gCAAU,GAAW,OAAO,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 Table\r\n */\r\n\r\nimport { Logger } from \"@itwin/core-bentley\";\r\nimport { StandardTypeNames } from \"@itwin/appui-abstract\";\r\nimport { StringOperatorProcessor } from \"../../converters/StringTypeConverter\";\r\nimport { BooleanTypeConverter } from \"../../converters/BooleanTypeConverter\";\r\nimport { LessGreaterOperatorProcessor, NullableOperatorProcessor } from \"../../converters/TypeConverter\";\r\nimport { TypeConverterManager } from \"../../converters/TypeConverterManager\";\r\nimport { UiComponents } from \"../../UiComponents\";\r\nimport { RowItem } from \"../TableDataProvider\";\r\nimport { FilterableTable, FilterOperator, OperatorValueFilterDescriptor } from \"./ColumnFiltering\";\r\nimport { ColumnFilteringUtilities } from \"./ColumnFilteringUtilities\";\r\nimport { NumericRangeData } from \"./DataGridFilterParser\";\r\n\r\n/** Represents a filtering descriptor.\r\n * @internal\r\n */\r\nexport class TableFilterDescriptor implements OperatorValueFilterDescriptor {\r\n private _filterableTable: FilterableTable;\r\n private _memberKey: string = \"\";\r\n private _memberType: string = \"\";\r\n private _typeConverterName?: string;\r\n private _operator: FilterOperator = FilterOperator.IsEqualTo;\r\n private _value: any;\r\n private _caseSensitive: boolean = false;\r\n\r\n public static unsetValue: string = \"UNSET\";\r\n\r\n /** Initializes a new instance of the FilterDescriptor class.\r\n * @param filterableTable The owning Table.\r\n * @param memberKey The member (key).\r\n * @param memberType The Type of the member.\r\n * @param filterOperator The filter operator.\r\n * @param filterValue The filter value.\r\n * @param caseSensitive Indicates that this filter descriptor will be case sensitive.\r\n * @param typeConverterName The Type of the member.\r\n *\r\n */\r\n public constructor(filterableTable: FilterableTable,\r\n memberKey: string,\r\n memberType: string,\r\n filterOperator: FilterOperator = FilterOperator.IsEqualTo,\r\n filterValue: any = TableFilterDescriptor.unsetValue,\r\n caseSensitive: boolean = false,\r\n typeConverterName?: string,\r\n ) {\r\n this._filterableTable = filterableTable;\r\n this.memberKey = memberKey;\r\n this.operator = filterOperator;\r\n this.value = filterValue;\r\n this.isCaseSensitive = caseSensitive;\r\n this.memberType = memberType;\r\n this._typeConverterName = typeConverterName;\r\n }\r\n\r\n /** Gets the member (key).\r\n */\r\n public get memberKey(): string {\r\n return this._memberKey;\r\n }\r\n\r\n /** Sets the member (key).\r\n */\r\n public set memberKey(value: string) {\r\n this._memberKey = value;\r\n }\r\n\r\n /** Gets the member type.\r\n */\r\n public get memberType(): string {\r\n return this._memberType;\r\n }\r\n\r\n /** Sets the member type.\r\n */\r\n public set memberType(value: string) {\r\n this._memberType = value;\r\n }\r\n\r\n /** Gets the type Converter Name.\r\n */\r\n public get typeConverterName(): string | undefined {\r\n return this._typeConverterName;\r\n }\r\n\r\n /** Sets the member type.\r\n */\r\n public set typeConverterName(value: string | undefined) {\r\n this._typeConverterName = value;\r\n }\r\n\r\n /** Gets the operator.\r\n */\r\n public get operator(): FilterOperator {\r\n return this._operator;\r\n }\r\n\r\n /** Sets the operator.\r\n */\r\n public set operator(operator: FilterOperator) {\r\n this._operator = operator;\r\n }\r\n\r\n /** Gets the value.\r\n */\r\n public get value(): any {\r\n return this._value;\r\n }\r\n\r\n /** Sets the value.\r\n */\r\n public set value(value: any) {\r\n this._value = value;\r\n }\r\n\r\n /** Gets whether the filter is case sensitive.\r\n */\r\n public get isCaseSensitive(): boolean {\r\n return this._caseSensitive;\r\n }\r\n\r\n /** Sets whether the filter is case sensitive.\r\n */\r\n public set isCaseSensitive(caseSensitive: boolean) {\r\n this._caseSensitive = caseSensitive;\r\n }\r\n\r\n /** Clears the filter descriptor.\r\n */\r\n public clear(): void {\r\n this.value = TableFilterDescriptor.unsetValue;\r\n }\r\n\r\n /** Determines if the filter descriptor is active.\r\n */\r\n public get isActive(): boolean {\r\n if (!this._memberKey) {\r\n return false;\r\n }\r\n\r\n if (this.isOperatorUnary(this.operator)) {\r\n return true;\r\n }\r\n\r\n return this.value !== TableFilterDescriptor.unsetValue;\r\n }\r\n\r\n /** Evaluates a row for filtering\r\n */\r\n public evaluateRow(row: RowItem): boolean {\r\n if (this._memberKey) {\r\n let cellValue: any;\r\n\r\n if (row.getValueFromCell !== undefined)\r\n cellValue = row.getValueFromCell(this._memberKey);\r\n else\r\n cellValue = ColumnFilteringUtilities.getValueFromCell(row, this._memberKey);\r\n\r\n return this.processFilterOperator(cellValue);\r\n }\r\n\r\n return true;\r\n }\r\n\r\n /** Determines if this filter is for a particular column.\r\n */\r\n public isFilterForColumn(columnKey: string): boolean {\r\n return this._memberKey === columnKey;\r\n }\r\n\r\n private getJulianDaysFromValue(isUpperBound: boolean): number {\r\n // istanbul ignore next\r\n if (this._value.constructor.name !== \"Date\") {\r\n this._value = new Date(this._value);\r\n this._value.setMilliseconds(0);\r\n }\r\n\r\n // Credits : https://stackoverflow.com/a/11760121/7797060\r\n const dayLengthInMilliseconds = 86400000;\r\n const daysCountFromJulianDayToUnixEpoch = 2440587.5;\r\n const dayLengthInMinutes = 1440;\r\n if (isUpperBound)\r\n this._value.setSeconds(this._value.getSeconds() + 1);\r\n return (this._value.getTime() / dayLengthInMilliseconds) - (this._value.getTimezoneOffset() / dayLengthInMinutes) + daysCountFromJulianDayToUnixEpoch;\r\n }\r\n\r\n private constructComparisonFilterExpression(filterOperator: string): string {\r\n if (this._value == null)\r\n return \"\";\r\n\r\n if (this.memberType === StandardTypeNames.DateTime)\r\n return `(${this.memberKey} ${filterOperator}${this.getJulianDaysFromValue(false)})`;\r\n return `${this.memberKey} ${filterOperator} \"${this._value.toString()}\"`;\r\n }\r\n\r\n private constructRangeExpression(rangeData: NumericRangeData): string {\r\n return `(${rangeData.begin.toString()} <= ${this.memberKey}) AND (${this.memberKey} <= ${rangeData.end.toString()})`;\r\n }\r\n\r\n private getEqualsExpression(inverse: boolean): string {\r\n let prefix: string = \"\";\r\n let operator: string = \" = \";\r\n if (inverse) {\r\n prefix = \"NOT \";\r\n operator = \" <> \";\r\n }\r\n\r\n switch (this.memberType) {\r\n case StandardTypeNames.DateTime: {\r\n if (this._value == null)\r\n return `${this.memberKey + operator} Null`;\r\n return `${prefix}(${this.memberKey} >= ${this.getJulianDaysFromValue(false)}) AND (${this.memberKey} < ${this.getJulianDaysFromValue(true)})`;\r\n }\r\n\r\n case StandardTypeNames.Bool:\r\n case StandardTypeNames.Boolean:\r\n if (typeof this._value === \"string\")\r\n return this.memberKey + operator + new BooleanTypeConverter().convertFromString(this._value).toString();\r\n if (typeof this._value === \"boolean\")\r\n return this.memberKey + operator + this._value.toString();\r\n Logger.logError(UiComponents.loggerCategory(this), `getEqualsExpression - invalid value type: ${typeof this._value}`);\r\n break;\r\n\r\n case StandardTypeNames.Point2d: {\r\n if (typeof this._value === \"object\")\r\n return `${prefix} (ArePointsEqualByValue(${this.memberKey}, ${this._value.x}, ${this._value.y}) = 1)`;\r\n if (typeof this._value === \"string\")\r\n return `${prefix + this._filterableTable.getPropertyDisplayValueExpression(this.memberKey)} = \"${this.value}\"`;\r\n Logger.logError(UiComponents.loggerCategory(this), `getEqualsExpression - invalid value type: ${typeof this._value}`);\r\n break;\r\n }\r\n\r\n case StandardTypeNames.Point3d: {\r\n if (typeof this._value === \"object\")\r\n return `${prefix} (ArePointsEqualByValue(${this.memberKey}, ${this._value.x}, ${this._value.y}, ${this._value.z}) = 1)`;\r\n if (typeof this._value === \"string\")\r\n return `${prefix + this._filterableTable.getPropertyDisplayValueExpression(this.memberKey)} = \"${this.value}\"`;\r\n Logger.logError(UiComponents.loggerCategory(this), `getEqualsExpression - invalid value type: ${typeof this._value}`);\r\n break;\r\n }\r\n\r\n case StandardTypeNames.Double:\r\n case StandardTypeNames.Float: {\r\n if (typeof this._value === \"number\")\r\n return `${prefix} (AreDoublesEqualByValue(${this.memberKey}, ${this._value}) = 1)`;\r\n if (typeof this._value === \"string\")\r\n return `${prefix + this._filterableTable.getPropertyDisplayValueExpression(this.memberKey)} = \"${this.value}\"`;\r\n Logger.logError(UiComponents.loggerCategory(this), `getEqualsExpression - invalid value type: ${typeof this._value}`);\r\n break;\r\n }\r\n }\r\n\r\n return `${this.memberKey + operator}\"${this._value.toString()}\"`;\r\n }\r\n\r\n /** Returns filter as ECExpression */\r\n public getFilterExpression(): string {\r\n switch (this.operator) {\r\n case FilterOperator.IsEqualTo:\r\n return this.getEqualsExpression(false);\r\n case FilterOperator.IsNotEqualTo:\r\n return this.getEqualsExpression(true);\r\n case FilterOperator.IsNull:\r\n case FilterOperator.IsEmpty:\r\n return `${this.memberKey} = Null`;\r\n case FilterOperator.IsNotNull:\r\n case FilterOperator.IsNotEmpty:\r\n return `${this.memberKey} <> Null`;\r\n case FilterOperator.IsLessThan:\r\n return this.constructComparisonFilterExpression(\"<\");\r\n case FilterOperator.IsLessThanOrEqualTo:\r\n return this.constructComparisonFilterExpression(\"<=\");\r\n case FilterOperator.IsGreaterThan:\r\n return this.constructComparisonFilterExpression(\">\");\r\n case FilterOperator.IsGreaterThanOrEqualTo:\r\n return this.constructComparisonFilterExpression(\">=\");\r\n case FilterOperator.Range:\r\n return this.constructRangeExpression(this._value);\r\n case FilterOperator.StartsWith:\r\n return `${this.memberKey} ~ ${null === this._value ? \"Null\" : `\"${this._value.toString()}%\"`}`;\r\n case FilterOperator.EndsWith:\r\n return `${this.memberKey} ~ ${null === this._value ? \"Null\" : `\"%${this._value.toString()}\"`}`;\r\n case FilterOperator.Contains:\r\n return `${this.memberKey} ~ ${null === this._value ? \"Null\" : `\"%${this._value.toString()}%\"`}`;\r\n case FilterOperator.DoesNotContain:\r\n return `NOT(${this.memberKey} ~ ${null === this._value ? \"Null\" : `\"%${this._value.toString()}%\"`})`;\r\n case FilterOperator.IsContainedIn:\r\n return `${null === this._value ? \"Null\" : `\"${this._value.toString()}\"`} ~ \"%\" & ${this.memberKey} & \"%\" `;\r\n case FilterOperator.IsNotContainedIn:\r\n return `NOT(${null === this._value ? \"Null\" : `\"${this._value.toString()}\"`} ~ \"%\" & ${this.memberKey} & \"%\" )`;\r\n }\r\n\r\n // istanbul ignore next\r\n return \"\";\r\n }\r\n\r\n private isOperatorUnary(op: FilterOperator): boolean {\r\n return (op === FilterOperator.IsNull ||\r\n op === FilterOperator.IsNotNull ||\r\n op === FilterOperator.IsEmpty ||\r\n op === FilterOperator.IsNotEmpty);\r\n }\r\n\r\n private processFilterOperator(cellValue: any): boolean {\r\n let result: boolean = false;\r\n const converter = TypeConverterManager.getConverter(this.memberType, this._typeConverterName);\r\n\r\n switch (this.operator) {\r\n case FilterOperator.IsEqualTo: {\r\n result = converter.isEqualTo(cellValue, this.value);\r\n break;\r\n }\r\n case FilterOperator.IsNotEqualTo: {\r\n result = converter.isNotEqualTo(cellValue, this.value);\r\n break;\r\n }\r\n\r\n // Numeric types, Dates, all types that implement these methods\r\n case FilterOperator.IsLessThan: {\r\n // istanbul ignore else\r\n if (converter.isLessGreaterType) {\r\n const lgConverter: LessGreaterOperatorProcessor = converter as any as LessGreaterOperatorProcessor;\r\n result = lgConverter.isLessThan(cellValue, this.value);\r\n }\r\n break;\r\n }\r\n case FilterOperator.IsLessThanOrEqualTo: {\r\n // istanbul ignore else\r\n if (converter.isLessGreaterType) {\r\n const lgConverter: LessGreaterOperatorProcessor = converter as any as LessGreaterOperatorProcessor;\r\n result = lgConverter.isLessThanOrEqualTo(cellValue, this.value);\r\n }\r\n break;\r\n }\r\n case FilterOperator.IsGreaterThan: {\r\n // istanbul ignore else\r\n if (converter.isLessGreaterType) {\r\n const lgConverter: LessGreaterOperatorProcessor = converter as any as LessGreaterOperatorProcessor;\r\n result = lgConverter.isGreaterThan(cellValue, this.value);\r\n }\r\n break;\r\n }\r\n case FilterOperator.IsGreaterThanOrEqualTo: {\r\n // istanbul ignore else\r\n if (converter.isLessGreaterType) {\r\n const lgConverter: LessGreaterOperatorProcessor = converter as any as LessGreaterOperatorProcessor;\r\n result = lgConverter.isGreaterThanOrEqualTo(cellValue, this.value);\r\n }\r\n break;\r\n }\r\n case FilterOperator.Range: {\r\n // istanbul ignore else\r\n if (converter.isLessGreaterType) {\r\n const lgConverter: LessGreaterOperatorProcessor = converter as any as LessGreaterOperatorProcessor;\r\n const rangeData = this.value as unknown as NumericRangeData;\r\n const passed = lgConverter.isGreaterThanOrEqualTo(cellValue, rangeData.begin);\r\n if (!passed)\r\n result = false;\r\n else\r\n result = lgConverter.isLessThanOrEqualTo(cellValue, rangeData.end);\r\n }\r\n break;\r\n }\r\n\r\n // Strings\r\n case FilterOperator.StartsWith: {\r\n // istanbul ignore else\r\n if (converter.isStringType) {\r\n const strConverter: StringOperatorProcessor = converter as any as StringOperatorProcessor;\r\n result = strConverter.startsWith(cellValue, this.value, this.isCaseSensitive);\r\n }\r\n break;\r\n }\r\n case FilterOperator.EndsWith: {\r\n // istanbul ignore else\r\n if (converter.isStringType) {\r\n const strConverter: StringOperatorProcessor = converter as any as StringOperatorProcessor;\r\n result = strConverter.endsWith(cellValue, this.value, this.isCaseSensitive);\r\n }\r\n break;\r\n }\r\n case FilterOperator.Contains: {\r\n // istanbul ignore else\r\n if (converter.isStringType) {\r\n const strConverter: StringOperatorProcessor = converter as any as StringOperatorProcessor;\r\n result = strConverter.contains(cellValue, this.value, this.isCaseSensitive);\r\n }\r\n break;\r\n }\r\n case FilterOperator.DoesNotContain: {\r\n // istanbul ignore else\r\n if (converter.isStringType) {\r\n const strConverter: StringOperatorProcessor = converter as any as StringOperatorProcessor;\r\n result = strConverter.doesNotContain(cellValue, this.value, this.isCaseSensitive);\r\n }\r\n break;\r\n }\r\n case FilterOperator.IsContainedIn: {\r\n // istanbul ignore else\r\n if (converter.isStringType) {\r\n const strConverter: StringOperatorProcessor = converter as any as StringOperatorProcessor;\r\n result = strConverter.isContainedIn(cellValue, this.value, this.isCaseSensitive);\r\n }\r\n break;\r\n }\r\n case FilterOperator.IsNotContainedIn: {\r\n // istanbul ignore else\r\n if (converter.isStringType) {\r\n const strConverter: StringOperatorProcessor = converter as any as StringOperatorProcessor;\r\n result = strConverter.isNotContainedIn(cellValue, this.value, this.isCaseSensitive);\r\n }\r\n break;\r\n }\r\n case FilterOperator.IsEmpty: {\r\n // istanbul ignore else\r\n if (converter.isStringType) {\r\n const strConverter: StringOperatorProcessor = converter as any as StringOperatorProcessor;\r\n result = strConverter.isEmpty(cellValue);\r\n }\r\n break;\r\n }\r\n case FilterOperator.IsNotEmpty: {\r\n // istanbul ignore else\r\n if (converter.isStringType) {\r\n const strConverter: StringOperatorProcessor = converter as any as StringOperatorProcessor;\r\n result = strConverter.isNotEmpty(cellValue);\r\n }\r\n break;\r\n }\r\n\r\n // All filterable null-able types\r\n case FilterOperator.IsNull: {\r\n // istanbul ignore else\r\n if (converter.isNullableType) {\r\n const nullConverter: NullableOperatorProcessor = converter as any as NullableOperatorProcessor;\r\n result = nullConverter.isNull(cellValue);\r\n }\r\n break;\r\n }\r\n case FilterOperator.IsNotNull: {\r\n // istanbul ignore else\r\n if (converter.isNullableType) {\r\n const nullConverter: NullableOperatorProcessor = converter as any as NullableOperatorProcessor;\r\n result = nullConverter.isNotNull(cellValue);\r\n }\r\n break;\r\n }\r\n }\r\n\r\n return result;\r\n }\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"file":"TableFilterDescriptor.js","sourceRoot":"","sources":["../../../../../src/components-react/table/columnfiltering/TableFilterDescriptor.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 Table\r\n */\r\n\r\nimport { Logger } from \"@itwin/core-bentley\";\r\nimport { StandardTypeNames } from \"@itwin/appui-abstract\";\r\nimport { StringOperatorProcessor } from \"../../converters/StringTypeConverter\";\r\nimport { BooleanTypeConverter } from \"../../converters/BooleanTypeConverter\";\r\nimport { LessGreaterOperatorProcessor, NullableOperatorProcessor } from \"../../converters/TypeConverter\";\r\nimport { TypeConverterManager } from \"../../converters/TypeConverterManager\";\r\nimport { UiComponents } from \"../../UiComponents\";\r\nimport { RowItem } from \"../TableDataProvider\";\r\nimport { FilterableTable, FilterOperator, OperatorValueFilterDescriptor } from \"./ColumnFiltering\";\r\nimport { ColumnFilteringUtilities } from \"./ColumnFilteringUtilities\";\r\nimport { NumericRangeData } from \"./DataGridFilterParser\";\r\n/* eslint-disable deprecation/deprecation */\r\n\r\n/** Represents a filtering descriptor.\r\n * @internal\r\n */\r\nexport class TableFilterDescriptor implements OperatorValueFilterDescriptor {\r\n private _filterableTable: FilterableTable;\r\n private _memberKey: string = \"\";\r\n private _memberType: string = \"\";\r\n private _typeConverterName?: string;\r\n private _operator: FilterOperator = FilterOperator.IsEqualTo;\r\n private _value: any;\r\n private _caseSensitive: boolean = false;\r\n\r\n public static unsetValue: string = \"UNSET\";\r\n\r\n /** Initializes a new instance of the FilterDescriptor class.\r\n * @param filterableTable The owning Table.\r\n * @param memberKey The member (key).\r\n * @param memberType The Type of the member.\r\n * @param filterOperator The filter operator.\r\n * @param filterValue The filter value.\r\n * @param caseSensitive Indicates that this filter descriptor will be case sensitive.\r\n * @param typeConverterName The Type of the member.\r\n *\r\n */\r\n public constructor(filterableTable: FilterableTable,\r\n memberKey: string,\r\n memberType: string,\r\n filterOperator: FilterOperator = FilterOperator.IsEqualTo,\r\n filterValue: any = TableFilterDescriptor.unsetValue,\r\n caseSensitive: boolean = false,\r\n typeConverterName?: string,\r\n ) {\r\n this._filterableTable = filterableTable;\r\n this.memberKey = memberKey;\r\n this.operator = filterOperator;\r\n this.value = filterValue;\r\n this.isCaseSensitive = caseSensitive;\r\n this.memberType = memberType;\r\n this._typeConverterName = typeConverterName;\r\n }\r\n\r\n /** Gets the member (key).\r\n */\r\n public get memberKey(): string {\r\n return this._memberKey;\r\n }\r\n\r\n /** Sets the member (key).\r\n */\r\n public set memberKey(value: string) {\r\n this._memberKey = value;\r\n }\r\n\r\n /** Gets the member type.\r\n */\r\n public get memberType(): string {\r\n return this._memberType;\r\n }\r\n\r\n /** Sets the member type.\r\n */\r\n public set memberType(value: string) {\r\n this._memberType = value;\r\n }\r\n\r\n /** Gets the type Converter Name.\r\n */\r\n public get typeConverterName(): string | undefined {\r\n return this._typeConverterName;\r\n }\r\n\r\n /** Sets the member type.\r\n */\r\n public set typeConverterName(value: string | undefined) {\r\n this._typeConverterName = value;\r\n }\r\n\r\n /** Gets the operator.\r\n */\r\n public get operator(): FilterOperator {\r\n return this._operator;\r\n }\r\n\r\n /** Sets the operator.\r\n */\r\n public set operator(operator: FilterOperator) {\r\n this._operator = operator;\r\n }\r\n\r\n /** Gets the value.\r\n */\r\n public get value(): any {\r\n return this._value;\r\n }\r\n\r\n /** Sets the value.\r\n */\r\n public set value(value: any) {\r\n this._value = value;\r\n }\r\n\r\n /** Gets whether the filter is case sensitive.\r\n */\r\n public get isCaseSensitive(): boolean {\r\n return this._caseSensitive;\r\n }\r\n\r\n /** Sets whether the filter is case sensitive.\r\n */\r\n public set isCaseSensitive(caseSensitive: boolean) {\r\n this._caseSensitive = caseSensitive;\r\n }\r\n\r\n /** Clears the filter descriptor.\r\n */\r\n public clear(): void {\r\n this.value = TableFilterDescriptor.unsetValue;\r\n }\r\n\r\n /** Determines if the filter descriptor is active.\r\n */\r\n public get isActive(): boolean {\r\n if (!this._memberKey) {\r\n return false;\r\n }\r\n\r\n if (this.isOperatorUnary(this.operator)) {\r\n return true;\r\n }\r\n\r\n return this.value !== TableFilterDescriptor.unsetValue;\r\n }\r\n\r\n /** Evaluates a row for filtering\r\n */\r\n public evaluateRow(row: RowItem): boolean {\r\n if (this._memberKey) {\r\n let cellValue: any;\r\n\r\n if (row.getValueFromCell !== undefined)\r\n cellValue = row.getValueFromCell(this._memberKey);\r\n else\r\n cellValue = ColumnFilteringUtilities.getValueFromCell(row, this._memberKey);\r\n\r\n return this.processFilterOperator(cellValue);\r\n }\r\n\r\n return true;\r\n }\r\n\r\n /** Determines if this filter is for a particular column.\r\n */\r\n public isFilterForColumn(columnKey: string): boolean {\r\n return this._memberKey === columnKey;\r\n }\r\n\r\n private getJulianDaysFromValue(isUpperBound: boolean): number {\r\n // istanbul ignore next\r\n if (this._value.constructor.name !== \"Date\") {\r\n this._value = new Date(this._value);\r\n this._value.setMilliseconds(0);\r\n }\r\n\r\n // Credits : https://stackoverflow.com/a/11760121/7797060\r\n const dayLengthInMilliseconds = 86400000;\r\n const daysCountFromJulianDayToUnixEpoch = 2440587.5;\r\n const dayLengthInMinutes = 1440;\r\n if (isUpperBound)\r\n this._value.setSeconds(this._value.getSeconds() + 1);\r\n return (this._value.getTime() / dayLengthInMilliseconds) - (this._value.getTimezoneOffset() / dayLengthInMinutes) + daysCountFromJulianDayToUnixEpoch;\r\n }\r\n\r\n private constructComparisonFilterExpression(filterOperator: string): string {\r\n if (this._value == null)\r\n return \"\";\r\n\r\n if (this.memberType === StandardTypeNames.DateTime)\r\n return `(${this.memberKey} ${filterOperator}${this.getJulianDaysFromValue(false)})`;\r\n return `${this.memberKey} ${filterOperator} \"${this._value.toString()}\"`;\r\n }\r\n\r\n private constructRangeExpression(rangeData: NumericRangeData): string {\r\n return `(${rangeData.begin.toString()} <= ${this.memberKey}) AND (${this.memberKey} <= ${rangeData.end.toString()})`;\r\n }\r\n\r\n private getEqualsExpression(inverse: boolean): string {\r\n let prefix: string = \"\";\r\n let operator: string = \" = \";\r\n if (inverse) {\r\n prefix = \"NOT \";\r\n operator = \" <> \";\r\n }\r\n\r\n switch (this.memberType) {\r\n case StandardTypeNames.DateTime: {\r\n if (this._value == null)\r\n return `${this.memberKey + operator} Null`;\r\n return `${prefix}(${this.memberKey} >= ${this.getJulianDaysFromValue(false)}) AND (${this.memberKey} < ${this.getJulianDaysFromValue(true)})`;\r\n }\r\n\r\n case StandardTypeNames.Bool:\r\n case StandardTypeNames.Boolean:\r\n if (typeof this._value === \"string\")\r\n return this.memberKey + operator + new BooleanTypeConverter().convertFromString(this._value).toString();\r\n if (typeof this._value === \"boolean\")\r\n return this.memberKey + operator + this._value.toString();\r\n Logger.logError(UiComponents.loggerCategory(this), `getEqualsExpression - invalid value type: ${typeof this._value}`);\r\n break;\r\n\r\n case StandardTypeNames.Point2d: {\r\n if (typeof this._value === \"object\")\r\n return `${prefix} (ArePointsEqualByValue(${this.memberKey}, ${this._value.x}, ${this._value.y}) = 1)`;\r\n if (typeof this._value === \"string\")\r\n return `${prefix + this._filterableTable.getPropertyDisplayValueExpression(this.memberKey)} = \"${this.value}\"`;\r\n Logger.logError(UiComponents.loggerCategory(this), `getEqualsExpression - invalid value type: ${typeof this._value}`);\r\n break;\r\n }\r\n\r\n case StandardTypeNames.Point3d: {\r\n if (typeof this._value === \"object\")\r\n return `${prefix} (ArePointsEqualByValue(${this.memberKey}, ${this._value.x}, ${this._value.y}, ${this._value.z}) = 1)`;\r\n if (typeof this._value === \"string\")\r\n return `${prefix + this._filterableTable.getPropertyDisplayValueExpression(this.memberKey)} = \"${this.value}\"`;\r\n Logger.logError(UiComponents.loggerCategory(this), `getEqualsExpression - invalid value type: ${typeof this._value}`);\r\n break;\r\n }\r\n\r\n case StandardTypeNames.Double:\r\n case StandardTypeNames.Float: {\r\n if (typeof this._value === \"number\")\r\n return `${prefix} (AreDoublesEqualByValue(${this.memberKey}, ${this._value}) = 1)`;\r\n if (typeof this._value === \"string\")\r\n return `${prefix + this._filterableTable.getPropertyDisplayValueExpression(this.memberKey)} = \"${this.value}\"`;\r\n Logger.logError(UiComponents.loggerCategory(this), `getEqualsExpression - invalid value type: ${typeof this._value}`);\r\n break;\r\n }\r\n }\r\n\r\n return `${this.memberKey + operator}\"${this._value.toString()}\"`;\r\n }\r\n\r\n /** Returns filter as ECExpression */\r\n public getFilterExpression(): string {\r\n switch (this.operator) {\r\n case FilterOperator.IsEqualTo:\r\n return this.getEqualsExpression(false);\r\n case FilterOperator.IsNotEqualTo:\r\n return this.getEqualsExpression(true);\r\n case FilterOperator.IsNull:\r\n case FilterOperator.IsEmpty:\r\n return `${this.memberKey} = Null`;\r\n case FilterOperator.IsNotNull:\r\n case FilterOperator.IsNotEmpty:\r\n return `${this.memberKey} <> Null`;\r\n case FilterOperator.IsLessThan:\r\n return this.constructComparisonFilterExpression(\"<\");\r\n case FilterOperator.IsLessThanOrEqualTo:\r\n return this.constructComparisonFilterExpression(\"<=\");\r\n case FilterOperator.IsGreaterThan:\r\n return this.constructComparisonFilterExpression(\">\");\r\n case FilterOperator.IsGreaterThanOrEqualTo:\r\n return this.constructComparisonFilterExpression(\">=\");\r\n case FilterOperator.Range:\r\n return this.constructRangeExpression(this._value);\r\n case FilterOperator.StartsWith:\r\n return `${this.memberKey} ~ ${null === this._value ? \"Null\" : `\"${this._value.toString()}%\"`}`;\r\n case FilterOperator.EndsWith:\r\n return `${this.memberKey} ~ ${null === this._value ? \"Null\" : `\"%${this._value.toString()}\"`}`;\r\n case FilterOperator.Contains:\r\n return `${this.memberKey} ~ ${null === this._value ? \"Null\" : `\"%${this._value.toString()}%\"`}`;\r\n case FilterOperator.DoesNotContain:\r\n return `NOT(${this.memberKey} ~ ${null === this._value ? \"Null\" : `\"%${this._value.toString()}%\"`})`;\r\n case FilterOperator.IsContainedIn:\r\n return `${null === this._value ? \"Null\" : `\"${this._value.toString()}\"`} ~ \"%\" & ${this.memberKey} & \"%\" `;\r\n case FilterOperator.IsNotContainedIn:\r\n return `NOT(${null === this._value ? \"Null\" : `\"${this._value.toString()}\"`} ~ \"%\" & ${this.memberKey} & \"%\" )`;\r\n }\r\n\r\n // istanbul ignore next\r\n return \"\";\r\n }\r\n\r\n private isOperatorUnary(op: FilterOperator): boolean {\r\n return (op === FilterOperator.IsNull ||\r\n op === FilterOperator.IsNotNull ||\r\n op === FilterOperator.IsEmpty ||\r\n op === FilterOperator.IsNotEmpty);\r\n }\r\n\r\n private processFilterOperator(cellValue: any): boolean {\r\n let result: boolean = false;\r\n const converter = TypeConverterManager.getConverter(this.memberType, this._typeConverterName);\r\n\r\n switch (this.operator) {\r\n case FilterOperator.IsEqualTo: {\r\n result = converter.isEqualTo(cellValue, this.value);\r\n break;\r\n }\r\n case FilterOperator.IsNotEqualTo: {\r\n result = converter.isNotEqualTo(cellValue, this.value);\r\n break;\r\n }\r\n\r\n // Numeric types, Dates, all types that implement these methods\r\n case FilterOperator.IsLessThan: {\r\n // istanbul ignore else\r\n if (converter.isLessGreaterType) {\r\n const lgConverter: LessGreaterOperatorProcessor = converter as any as LessGreaterOperatorProcessor;\r\n result = lgConverter.isLessThan(cellValue, this.value);\r\n }\r\n break;\r\n }\r\n case FilterOperator.IsLessThanOrEqualTo: {\r\n // istanbul ignore else\r\n if (converter.isLessGreaterType) {\r\n const lgConverter: LessGreaterOperatorProcessor = converter as any as LessGreaterOperatorProcessor;\r\n result = lgConverter.isLessThanOrEqualTo(cellValue, this.value);\r\n }\r\n break;\r\n }\r\n case FilterOperator.IsGreaterThan: {\r\n // istanbul ignore else\r\n if (converter.isLessGreaterType) {\r\n const lgConverter: LessGreaterOperatorProcessor = converter as any as LessGreaterOperatorProcessor;\r\n result = lgConverter.isGreaterThan(cellValue, this.value);\r\n }\r\n break;\r\n }\r\n case FilterOperator.IsGreaterThanOrEqualTo: {\r\n // istanbul ignore else\r\n if (converter.isLessGreaterType) {\r\n const lgConverter: LessGreaterOperatorProcessor = converter as any as LessGreaterOperatorProcessor;\r\n result = lgConverter.isGreaterThanOrEqualTo(cellValue, this.value);\r\n }\r\n break;\r\n }\r\n case FilterOperator.Range: {\r\n // istanbul ignore else\r\n if (converter.isLessGreaterType) {\r\n const lgConverter: LessGreaterOperatorProcessor = converter as any as LessGreaterOperatorProcessor;\r\n const rangeData = this.value as unknown as NumericRangeData;\r\n const passed = lgConverter.isGreaterThanOrEqualTo(cellValue, rangeData.begin);\r\n if (!passed)\r\n result = false;\r\n else\r\n result = lgConverter.isLessThanOrEqualTo(cellValue, rangeData.end);\r\n }\r\n break;\r\n }\r\n\r\n // Strings\r\n case FilterOperator.StartsWith: {\r\n // istanbul ignore else\r\n if (converter.isStringType) {\r\n const strConverter: StringOperatorProcessor = converter as any as StringOperatorProcessor;\r\n result = strConverter.startsWith(cellValue, this.value, this.isCaseSensitive);\r\n }\r\n break;\r\n }\r\n case FilterOperator.EndsWith: {\r\n // istanbul ignore else\r\n if (converter.isStringType) {\r\n const strConverter: StringOperatorProcessor = converter as any as StringOperatorProcessor;\r\n result = strConverter.endsWith(cellValue, this.value, this.isCaseSensitive);\r\n }\r\n break;\r\n }\r\n case FilterOperator.Contains: {\r\n // istanbul ignore else\r\n if (converter.isStringType) {\r\n const strConverter: StringOperatorProcessor = converter as any as StringOperatorProcessor;\r\n result = strConverter.contains(cellValue, this.value, this.isCaseSensitive);\r\n }\r\n break;\r\n }\r\n case FilterOperator.DoesNotContain: {\r\n // istanbul ignore else\r\n if (converter.isStringType) {\r\n const strConverter: StringOperatorProcessor = converter as any as StringOperatorProcessor;\r\n result = strConverter.doesNotContain(cellValue, this.value, this.isCaseSensitive);\r\n }\r\n break;\r\n }\r\n case FilterOperator.IsContainedIn: {\r\n // istanbul ignore else\r\n if (converter.isStringType) {\r\n const strConverter: StringOperatorProcessor = converter as any as StringOperatorProcessor;\r\n result = strConverter.isContainedIn(cellValue, this.value, this.isCaseSensitive);\r\n }\r\n break;\r\n }\r\n case FilterOperator.IsNotContainedIn: {\r\n // istanbul ignore else\r\n if (converter.isStringType) {\r\n const strConverter: StringOperatorProcessor = converter as any as StringOperatorProcessor;\r\n result = strConverter.isNotContainedIn(cellValue, this.value, this.isCaseSensitive);\r\n }\r\n break;\r\n }\r\n case FilterOperator.IsEmpty: {\r\n // istanbul ignore else\r\n if (converter.isStringType) {\r\n const strConverter: StringOperatorProcessor = converter as any as StringOperatorProcessor;\r\n result = strConverter.isEmpty(cellValue);\r\n }\r\n break;\r\n }\r\n case FilterOperator.IsNotEmpty: {\r\n // istanbul ignore else\r\n if (converter.isStringType) {\r\n const strConverter: StringOperatorProcessor = converter as any as StringOperatorProcessor;\r\n result = strConverter.isNotEmpty(cellValue);\r\n }\r\n break;\r\n }\r\n\r\n // All filterable null-able types\r\n case FilterOperator.IsNull: {\r\n // istanbul ignore else\r\n if (converter.isNullableType) {\r\n const nullConverter: NullableOperatorProcessor = converter as any as NullableOperatorProcessor;\r\n result = nullConverter.isNull(cellValue);\r\n }\r\n break;\r\n }\r\n case FilterOperator.IsNotNull: {\r\n // istanbul ignore else\r\n if (converter.isNullableType) {\r\n const nullConverter: NullableOperatorProcessor = converter as any as NullableOperatorProcessor;\r\n result = nullConverter.isNotNull(cellValue);\r\n }\r\n break;\r\n }\r\n }\r\n\r\n return result;\r\n }\r\n}\r\n"]}
|
package/lib/cjs/components-react/table/columnfiltering/TableFilterDescriptorCollection.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TableFilterDescriptorCollection.d.ts","sourceRoot":"","sources":["../../../../../src/components-react/table/columnfiltering/TableFilterDescriptorCollection.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EACL,sBAAsB,EAAE,mCAAmC,EAAE,gCAAgC,EAAE,0BAA0B,EAC1H,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"TableFilterDescriptorCollection.d.ts","sourceRoot":"","sources":["../../../../../src/components-react/table/columnfiltering/TableFilterDescriptorCollection.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EACL,sBAAsB,EAAE,mCAAmC,EAAE,gCAAgC,EAAE,0BAA0B,EAC1H,MAAM,mBAAmB,CAAC;AAG3B;;GAEG;AACH,qBAAa,+BAAgC,SAAQ,0BAA2B,YAAW,mCAAmC;IAC5H,OAAO,CAAC,gBAAgB,CAAwC;;IAMhE,sCAAsC;IACtC,IAAW,eAAe,IAAI,gCAAgC,CAE7D;IAED,IAAW,eAAe,CAAC,KAAK,EAAE,gCAAgC,EAIjE;IAED;OACG;IACH,IAAW,0BAA0B,IAAI,0BAA0B,CAElE;IAED;OACG;IACI,WAAW,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO;IAkBzC;OACG;IACI,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAKvD;OACG;IACI,yBAAyB,CAAC,SAAS,EAAE,MAAM,GAAG,sBAAsB,GAAG,SAAS;IAYhF,mBAAmB,IAAI,MAAM;CAoBrC"}
|
|
@@ -9,6 +9,7 @@
|
|
|
9
9
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
10
|
exports.TableFilterDescriptorCollection = void 0;
|
|
11
11
|
const ColumnFiltering_1 = require("./ColumnFiltering");
|
|
12
|
+
/* eslint-disable deprecation/deprecation */
|
|
12
13
|
/** Represents collection of FilterDescriptor objects composed together by a logical operator.
|
|
13
14
|
* @internal
|
|
14
15
|
*/
|
package/lib/cjs/components-react/table/columnfiltering/TableFilterDescriptorCollection.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TableFilterDescriptorCollection.js","sourceRoot":"","sources":["../../../../../src/components-react/table/columnfiltering/TableFilterDescriptorCollection.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAGH,uDAE2B;
|
|
1
|
+
{"version":3,"file":"TableFilterDescriptorCollection.js","sourceRoot":"","sources":["../../../../../src/components-react/table/columnfiltering/TableFilterDescriptorCollection.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAGH,uDAE2B;AAC3B,4CAA4C;AAE5C;;GAEG;AACH,MAAa,+BAAgC,SAAQ,4CAA0B;IAG7E;QACE,KAAK,EAAE,CAAC;QAHF,qBAAgB,GAAG,kDAAgC,CAAC,GAAG,CAAC;IAIhE,CAAC;IAED,sCAAsC;IACtC,IAAW,eAAe;QACxB,OAAO,IAAI,CAAC,gBAAgB,CAAC;IAC/B,CAAC;IAED,IAAW,eAAe,CAAC,KAAuC;QAChE,IAAI,IAAI,CAAC,gBAAgB,KAAK,KAAK,EAAE;YACnC,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;SAC/B;IACH,CAAC;IAED;OACG;IACH,IAAW,0BAA0B;QACnC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;OACG;IACI,WAAW,CAAC,GAAY;QAC7B,IAAI,MAAM,GAAY,IAAI,CAAC;QAE3B,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,0BAA0B,CAAC,WAAW,EAAE;YAC5D,IAAI,CAAC,EAAE,CAAC,QAAQ;gBACd,SAAS;YAEX,MAAM,GAAG,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;YAE7B,IAAI,MAAM,IAAI,kDAAgC,CAAC,EAAE,KAAK,IAAI,CAAC,eAAe;gBACxE,OAAO,IAAI,CAAC;iBACT,IAAI,CAAC,MAAM,IAAI,kDAAgC,CAAC,GAAG,KAAK,IAAI,CAAC,eAAe;gBAC/E,OAAO,KAAK,CAAC;SAChB;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;OACG;IACI,oBAAoB,CAAC,SAAiB;QAC3C,MAAM,sBAAsB,GAAG,IAAI,CAAC,yBAAyB,CAAC,SAAS,CAAC,CAAC;QACzE,OAAO,sBAAsB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;IAC/C,CAAC;IAED;OACG;IACI,yBAAyB,CAAC,SAAiB;QAChD,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,0BAA0B,CAAC,WAAW,EAAE;YAC5D,IAAI,CAAC,EAAE,CAAC,QAAQ;gBACd,SAAS;YAEX,IAAI,EAAE,CAAC,iBAAiB,CAAC,SAAS,CAAC;gBACjC,OAAO,EAAmC,CAAC;SAC9C;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAEM,mBAAmB;QACxB,IAAI,MAAM,GAAW,EAAE,CAAC;QACxB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,0BAA0B,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAC3E,IAAI,CAAC,IAAI,CAAC,0BAA0B,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ;gBAC1D,SAAS;YAEX,IAAI,CAAC,GAAG,CAAC,IAAI,MAAM,KAAK,EAAE,EAAE;gBAC1B,QAAQ,IAAI,CAAC,eAAe,EAAE;oBAC5B,KAAK,kDAAgC,CAAC,GAAG;wBACvC,MAAM,IAAI,CAAC,OAAO,CAAC,CAAC;wBACpB,MAAM;oBACR,KAAK,kDAAgC,CAAC,EAAE;wBACtC,MAAM,IAAI,CAAC,MAAM,CAAC,CAAC;wBACnB,MAAM;iBACT;aACF;YACD,MAAM,IAAI,CAAC,IAAI,IAAI,CAAC,0BAA0B,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,mBAAmB,EAAE,GAAG,CAAC,CAAC;SACzF;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;CACF;AArFD,0EAqFC","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 Table\r\n */\r\n\r\nimport { RowItem } from \"../TableDataProvider\";\r\nimport {\r\n ColumnFilterDescriptor, CompositeFilterDescriptorCollection, FilterCompositionLogicalOperator, FilterDescriptorCollection,\r\n} from \"./ColumnFiltering\";\r\n/* eslint-disable deprecation/deprecation */\r\n\r\n/** Represents collection of FilterDescriptor objects composed together by a logical operator.\r\n * @internal\r\n */\r\nexport class TableFilterDescriptorCollection extends FilterDescriptorCollection implements CompositeFilterDescriptorCollection {\r\n private _logicalOperator = FilterCompositionLogicalOperator.And;\r\n\r\n public constructor() {\r\n super();\r\n }\r\n\r\n /** Gets/Sets the logical operator. */\r\n public get logicalOperator(): FilterCompositionLogicalOperator {\r\n return this._logicalOperator;\r\n }\r\n\r\n public set logicalOperator(value: FilterCompositionLogicalOperator) {\r\n if (this._logicalOperator !== value) {\r\n this._logicalOperator = value;\r\n }\r\n }\r\n\r\n /** Gets filter descriptors that will be used for composition.\r\n */\r\n public get filterDescriptorCollection(): FilterDescriptorCollection {\r\n return this;\r\n }\r\n\r\n /** Evaluates a row for filtering\r\n */\r\n public evaluateRow(row: RowItem): boolean {\r\n let passed: boolean = true;\r\n\r\n for (const fd of this.filterDescriptorCollection.descriptors) {\r\n if (!fd.isActive)\r\n continue;\r\n\r\n passed = fd.evaluateRow(row);\r\n\r\n if (passed && FilterCompositionLogicalOperator.Or === this.logicalOperator)\r\n return true;\r\n else if (!passed && FilterCompositionLogicalOperator.And === this.logicalOperator)\r\n return false;\r\n }\r\n\r\n return passed;\r\n }\r\n\r\n /** Determines if a filter is active for a particular column\r\n */\r\n public isColumnFilterActive(columnKey: string): boolean {\r\n const columnFilterDescriptor = this.getColumnFilterDescriptor(columnKey);\r\n return columnFilterDescriptor ? true : false;\r\n }\r\n\r\n /** Gets the filter for a particular column\r\n */\r\n public getColumnFilterDescriptor(columnKey: string): ColumnFilterDescriptor | undefined {\r\n for (const fd of this.filterDescriptorCollection.descriptors) {\r\n if (!fd.isActive)\r\n continue;\r\n\r\n if (fd.isFilterForColumn(columnKey))\r\n return fd as any as ColumnFilterDescriptor;\r\n }\r\n\r\n return undefined;\r\n }\r\n\r\n public getFilterExpression(): string {\r\n let result: string = \"\";\r\n for (let i = 0; i < this.filterDescriptorCollection.descriptors.length; i++) {\r\n if (!this.filterDescriptorCollection.descriptors[i].isActive)\r\n continue;\r\n\r\n if (i > 0 && result !== \"\") {\r\n switch (this.logicalOperator) {\r\n case FilterCompositionLogicalOperator.And:\r\n result += (\" And \");\r\n break;\r\n case FilterCompositionLogicalOperator.Or:\r\n result += (\" Or \");\r\n break;\r\n }\r\n }\r\n result += (`(${this.filterDescriptorCollection.descriptors[i].getFilterExpression()})`);\r\n }\r\n return result;\r\n }\r\n}\r\n"]}
|
|
@@ -5,8 +5,8 @@ import * as React from "react";
|
|
|
5
5
|
import { DragLayerProps } from "./dragdrop/DragDropDef";
|
|
6
6
|
/**
|
|
7
7
|
* React component used to portray a column being dragged during Table column reordering.
|
|
8
|
+
* @deprecated Use the Table component in @itwin/itwinui-react instead, which does not use this class.
|
|
8
9
|
* @public
|
|
9
|
-
* @deprecated
|
|
10
10
|
*/
|
|
11
11
|
export declare class ColumnDragLayer extends React.Component<DragLayerProps> {
|
|
12
12
|
constructor(props: DragLayerProps);
|
|
@@ -34,8 +34,8 @@ const classnames_1 = __importDefault(require("classnames"));
|
|
|
34
34
|
const React = __importStar(require("react"));
|
|
35
35
|
/**
|
|
36
36
|
* React component used to portray a column being dragged during Table column reordering.
|
|
37
|
+
* @deprecated Use the Table component in @itwin/itwinui-react instead, which does not use this class.
|
|
37
38
|
* @public
|
|
38
|
-
* @deprecated
|
|
39
39
|
*/
|
|
40
40
|
class ColumnDragLayer extends React.Component {
|
|
41
41
|
constructor(props) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ColumnDragLayer.js","sourceRoot":"","sources":["../../../../../src/components-react/table/component/ColumnDragLayer.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,4DAAoC;AACpC,6CAA+B;AAG/B;;;;GAIG;AACH,MAAa,eAAgB,SAAQ,KAAK,CAAC,SAAyB;IAClE,YAAY,KAAqB;QAC/B,KAAK,CAAC,KAAK,CAAC,CAAC;IACf,CAAC;IAEe,MAAM;QACpB,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,SAAS;YAC/B,OAAO,IAAI,CAAC;QAEd,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;QAC7B,MAAM,IAAI,GAAG,IAAI,CAAC,kBAAkB,IAAI,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;QAC/D,MAAM,KAAK,GAAG,IAAI,CAAC,yBAAyB,IAAI,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;QAEvE,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,IAAI,0BAA0B,CAAC,EAAE,CAAC;QAC9D,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC;QACjC,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC;QAEjC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC;QAC3C,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;QAElB,MAAM,SAAS,GAAG,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC;QAE9C,MAAM,cAAc,GAAwB;YAC1C,SAAS,EAAE,SAAS;YACpB,eAAe,EAAE,SAAS;YAC1B,KAAK;YACL,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK;SACpB,CAAC;QACF,OAAO,CACL,6BAAK,SAAS,EAAE,IAAA,oBAAU,EAAC,8BAA8B,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,cAAc,IACpG,MAAM,CAAC,IAAI,CACR,CACP,CAAC;IACJ,CAAC;CACF;AAlCD,0CAkCC","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 Table\r\n */\r\n\r\nimport classnames from \"classnames\";\r\nimport * as React from \"react\";\r\nimport { DragLayerProps } from \"./dragdrop/DragDropDef\";\r\n\r\n/**\r\n * React component used to portray a column being dragged during Table column reordering.\r\n * @
|
|
1
|
+
{"version":3,"file":"ColumnDragLayer.js","sourceRoot":"","sources":["../../../../../src/components-react/table/component/ColumnDragLayer.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,4DAAoC;AACpC,6CAA+B;AAG/B;;;;GAIG;AACH,MAAa,eAAgB,SAAQ,KAAK,CAAC,SAAyB;IAClE,YAAY,KAAqB;QAC/B,KAAK,CAAC,KAAK,CAAC,CAAC;IACf,CAAC;IAEe,MAAM;QACpB,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,SAAS;YAC/B,OAAO,IAAI,CAAC;QAEd,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;QAC7B,MAAM,IAAI,GAAG,IAAI,CAAC,kBAAkB,IAAI,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;QAC/D,MAAM,KAAK,GAAG,IAAI,CAAC,yBAAyB,IAAI,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;QAEvE,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,IAAI,0BAA0B,CAAC,EAAE,CAAC;QAC9D,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC;QACjC,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC;QAEjC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC;QAC3C,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;QAElB,MAAM,SAAS,GAAG,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC;QAE9C,MAAM,cAAc,GAAwB;YAC1C,SAAS,EAAE,SAAS;YACpB,eAAe,EAAE,SAAS;YAC1B,KAAK;YACL,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK;SACpB,CAAC;QACF,OAAO,CACL,6BAAK,SAAS,EAAE,IAAA,oBAAU,EAAC,8BAA8B,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,cAAc,IACpG,MAAM,CAAC,IAAI,CACR,CACP,CAAC;IACJ,CAAC;CACF;AAlCD,0CAkCC","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 Table\r\n */\r\n\r\nimport classnames from \"classnames\";\r\nimport * as React from \"react\";\r\nimport { DragLayerProps } from \"./dragdrop/DragDropDef\";\r\n\r\n/**\r\n * React component used to portray a column being dragged during Table column reordering.\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 ColumnDragLayer extends React.Component<DragLayerProps> { // eslint-disable-line deprecation/deprecation\r\n constructor(props: DragLayerProps) { // eslint-disable-line deprecation/deprecation\r\n super(props);\r\n }\r\n\r\n public override render(): React.ReactNode {\r\n if (this.props.args === undefined)\r\n return null;\r\n\r\n const args = this.props.args;\r\n const spos = args.sourceClientOffset || { x: -1000, y: -1000 };\r\n const ispos = args.initialSourceClientOffset || { x: -1000, y: -1000 };\r\n\r\n const data = args.dataObject || /* istanbul ignore next */ {};\r\n const column = data.column || {};\r\n const width = column.width || {};\r\n\r\n const x = spos.x + (column && column.left);\r\n const y = ispos.y;\r\n\r\n const translate = `translate(${x}px, ${y}px)`;\r\n\r\n const dragLayerStyle: React.CSSProperties = {\r\n transform: translate,\r\n WebkitTransform: translate,\r\n width,\r\n ...this.props.style,\r\n };\r\n return (\r\n <div className={classnames(\"components-column-drag-layer\", this.props.className)} style={dragLayerStyle}>\r\n {column.name}\r\n </div>\r\n );\r\n }\r\n}\r\n"]}
|
|
@@ -13,14 +13,16 @@ import { CellItem, RowItem, TableDataProvider } from "../TableDataProvider";
|
|
|
13
13
|
import { TableColumn } from "./TableColumn";
|
|
14
14
|
/**
|
|
15
15
|
* Specifies table selection target.
|
|
16
|
-
* @
|
|
16
|
+
* @deprecated Use the Table component in @itwin/itwinui-react instead, which does not use this enum.
|
|
17
|
+
* @public
|
|
17
18
|
*/
|
|
18
19
|
export declare enum TableSelectionTarget {
|
|
19
20
|
Row = 0,
|
|
20
21
|
Cell = 1
|
|
21
22
|
}
|
|
22
23
|
/** Properties for the Table React component
|
|
23
|
-
* @
|
|
24
|
+
* @deprecated Use the Table component in @itwin/itwinui-react instead, which does not use this interface.
|
|
25
|
+
* @public
|
|
24
26
|
*/
|
|
25
27
|
export interface TableProps extends CommonProps {
|
|
26
28
|
/** Data provider for the Table */
|
|
@@ -85,7 +87,8 @@ export interface TableProps extends CommonProps {
|
|
|
85
87
|
maximumDistinctValues?: number;
|
|
86
88
|
}
|
|
87
89
|
/** Properties for a Table cell
|
|
88
|
-
* @
|
|
90
|
+
* @deprecated Use the Table component in @itwin/itwinui-react instead, which does not use this interface.
|
|
91
|
+
* @public
|
|
89
92
|
*/
|
|
90
93
|
export interface CellProps {
|
|
91
94
|
item: CellItem;
|
|
@@ -95,7 +98,8 @@ export interface CellProps {
|
|
|
95
98
|
}>;
|
|
96
99
|
}
|
|
97
100
|
/** Properties for a Table row
|
|
98
|
-
* @
|
|
101
|
+
* @deprecated Use the Table component in @itwin/itwinui-react instead, which does not use this interface.
|
|
102
|
+
* @public
|
|
99
103
|
*/
|
|
100
104
|
export interface RowProps {
|
|
101
105
|
index: number;
|
|
@@ -107,7 +111,8 @@ export interface RowProps {
|
|
|
107
111
|
style?: React.CSSProperties;
|
|
108
112
|
}
|
|
109
113
|
/** Cell/Property Editor state
|
|
110
|
-
* @
|
|
114
|
+
* @deprecated Use the Table component in @itwin/itwinui-react instead, which does not use this interface.
|
|
115
|
+
* @public
|
|
111
116
|
*/
|
|
112
117
|
export interface TableCellEditorState {
|
|
113
118
|
active: boolean;
|
|
@@ -116,7 +121,8 @@ export interface TableCellEditorState {
|
|
|
116
121
|
cellKey?: string;
|
|
117
122
|
}
|
|
118
123
|
/** Cell/Property Updated Args
|
|
119
|
-
* @
|
|
124
|
+
* @deprecated Use the Table component in @itwin/itwinui-react instead, which does not use this interface.
|
|
125
|
+
* @public
|
|
120
126
|
*/
|
|
121
127
|
export interface TableCellUpdatedArgs {
|
|
122
128
|
rowIndex: number;
|
|
@@ -124,7 +130,8 @@ export interface TableCellUpdatedArgs {
|
|
|
124
130
|
cellKey: string;
|
|
125
131
|
}
|
|
126
132
|
/** Arguments for `TableProps.onCellContextMenu` callback
|
|
127
|
-
* @
|
|
133
|
+
* @deprecated Use the Table component in @itwin/itwinui-react instead, which does not use this interface.
|
|
134
|
+
* @public
|
|
128
135
|
*/
|
|
129
136
|
export interface TableCellContextMenuArgs {
|
|
130
137
|
/** Index of the row clicked */
|
|
@@ -158,7 +165,8 @@ declare const enum UpdateStatus {
|
|
|
158
165
|
}
|
|
159
166
|
/**
|
|
160
167
|
* Table React component that displays rows and columns in a grid along with a header
|
|
161
|
-
* @
|
|
168
|
+
* @deprecated Use the Table component in @itwin/itwinui-react instead, which does not use this class.
|
|
169
|
+
* @public
|
|
162
170
|
*/
|
|
163
171
|
export declare class Table extends React.Component<TableProps, TableState> {
|
|
164
172
|
private _pageAmount;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Table.d.ts","sourceRoot":"","sources":["../../../../../src/components-react/table/component/Table.tsx"],"names":[],"mappings":"AAKA;;GAEG;AAEH,OAAO,cAAc,CAAC;AACtB,OAAO,yCAAyC,CAAC;AAIjD,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,OAAO,EACL,WAAW,EACX,cAAc,EACf,MAAM,mBAAmB,CAAC;AAI3B,OAAO,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAC;AAGtE,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAEpE,OAAO,EAAE,mBAAmB,EAAE,4BAA4B,EAAE,MAAM,uCAAuC,CAAC;AAC1G,OAAO,EAAE,mCAAmC,EAAoC,MAAM,oCAAoC,CAAC;AAO3H,OAAO,EAAE,QAAQ,EAAqC,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAG/G,OAAO,EAAuB,WAAW,EAAE,MAAM,eAAe,CAAC;AAOjE
|
|
1
|
+
{"version":3,"file":"Table.d.ts","sourceRoot":"","sources":["../../../../../src/components-react/table/component/Table.tsx"],"names":[],"mappings":"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"}
|
|
@@ -63,7 +63,8 @@ const TABLE_ROW_HEIGHT = 27;
|
|
|
63
63
|
const TABLE_FILTER_ROW_HEIGHT = 32;
|
|
64
64
|
/**
|
|
65
65
|
* Specifies table selection target.
|
|
66
|
-
* @
|
|
66
|
+
* @deprecated Use the Table component in @itwin/itwinui-react instead, which does not use this enum.
|
|
67
|
+
* @public
|
|
67
68
|
*/
|
|
68
69
|
var TableSelectionTarget;
|
|
69
70
|
(function (TableSelectionTarget) {
|
|
@@ -99,7 +100,8 @@ class TableRowRenderer extends React.Component {
|
|
|
99
100
|
}
|
|
100
101
|
/**
|
|
101
102
|
* Table React component that displays rows and columns in a grid along with a header
|
|
102
|
-
* @
|
|
103
|
+
* @deprecated Use the Table component in @itwin/itwinui-react instead, which does not use this class.
|
|
104
|
+
* @public
|
|
103
105
|
*/
|
|
104
106
|
class Table extends React.Component {
|
|
105
107
|
/** @internal */
|