@progress/kendo-vue-grid 3.3.3 → 3.3.5-dev.202206141337
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/dist/cdn/js/kendo-vue-grid.js +1 -1
- package/dist/es/Grid.d.ts +35 -2
- package/dist/es/Grid.js +41 -9
- package/dist/es/GridNav.d.ts +4 -1
- package/dist/es/GridNav.js +5 -1
- package/dist/es/GridNoRecords.d.ts +4 -1
- package/dist/es/GridNoRecords.js +30 -26
- package/dist/es/GridToolbar.d.ts +46 -4
- package/dist/es/GridToolbar.js +48 -6
- package/dist/es/additionalTypes.ts +11 -0
- package/dist/es/cells/GridCell.d.ts +4 -1
- package/dist/es/cells/GridCell.js +5 -1
- package/dist/es/cells/GridDetailCell.d.ts +4 -1
- package/dist/es/cells/GridDetailCell.js +5 -1
- package/dist/es/cells/GridDetailHierarchyCell.d.ts +4 -1
- package/dist/es/cells/GridDetailHierarchyCell.js +5 -1
- package/dist/es/cells/GridEditCell.d.ts +4 -1
- package/dist/es/cells/GridEditCell.js +5 -1
- package/dist/es/cells/GridFilterCell.d.ts +4 -1
- package/dist/es/cells/GridFilterCell.js +5 -1
- package/dist/es/cells/GridGroupCell.d.ts +4 -1
- package/dist/es/cells/GridGroupCell.js +5 -1
- package/dist/es/cells/GridHierarchyCell.d.ts +4 -1
- package/dist/es/cells/GridHierarchyCell.js +5 -1
- package/dist/es/cells/GridSelectionCell.d.ts +4 -1
- package/dist/es/cells/GridSelectionCell.js +5 -1
- package/dist/es/columnMenu/ColumnMenu.d.ts +4 -1
- package/dist/es/columnMenu/ColumnMenu.js +5 -1
- package/dist/es/columnMenu/ColumnMenuContent.d.ts +4 -1
- package/dist/es/columnMenu/ColumnMenuContent.js +5 -1
- package/dist/es/columnMenu/GridColumnMenuCheckboxFilter.d.ts +4 -1
- package/dist/es/columnMenu/GridColumnMenuCheckboxFilter.js +114 -79
- package/dist/es/columnMenu/GridColumnMenuFilter.d.ts +138 -2
- package/dist/es/columnMenu/GridColumnMenuFilter.js +139 -2
- package/dist/es/columnMenu/GridColumnMenuFilterCell.d.ts +4 -1
- package/dist/es/columnMenu/GridColumnMenuFilterCell.js +5 -1
- package/dist/es/columnMenu/GridColumnMenuFilterUI.d.ts +4 -1
- package/dist/es/columnMenu/GridColumnMenuFilterUI.js +5 -1
- package/dist/es/columnMenu/GridColumnMenuItem.d.ts +4 -1
- package/dist/es/columnMenu/GridColumnMenuItem.js +5 -1
- package/dist/es/columnMenu/GridColumnMenuItemContent.d.ts +4 -1
- package/dist/es/columnMenu/GridColumnMenuItemContent.js +5 -1
- package/dist/es/columnMenu/GridColumnMenuItemGroup.d.ts +4 -1
- package/dist/es/columnMenu/GridColumnMenuItemGroup.js +5 -1
- package/dist/es/columnMenu/GridColumnMenuSort.d.ts +135 -2
- package/dist/es/columnMenu/GridColumnMenuSort.js +136 -2
- package/dist/es/drag/ColumnDraggable.d.ts +4 -1
- package/dist/es/drag/ColumnDraggable.js +5 -1
- package/dist/es/drag/ColumnResizer.d.ts +4 -1
- package/dist/es/drag/ColumnResizer.js +5 -1
- package/dist/es/drag/DragClue.d.ts +4 -1
- package/dist/es/drag/DragClue.js +5 -1
- package/dist/es/drag/DropClue.d.ts +4 -1
- package/dist/es/drag/DropClue.js +5 -1
- package/dist/es/drag/GroupingIndicator.d.ts +4 -1
- package/dist/es/drag/GroupingIndicator.js +5 -1
- package/dist/es/footer/Footer.d.ts +6 -0
- package/dist/es/footer/Footer.js +8 -0
- package/dist/es/footer/FooterRow.d.ts +6 -0
- package/dist/es/footer/FooterRow.js +8 -0
- package/dist/es/header/FilterRow.d.ts +4 -1
- package/dist/es/header/FilterRow.js +5 -1
- package/dist/es/header/GridHeaderCell.d.ts +4 -1
- package/dist/es/header/GridHeaderCell.js +5 -1
- package/dist/es/header/GridHeaderSelectionCell.d.ts +4 -1
- package/dist/es/header/GridHeaderSelectionCell.js +5 -1
- package/dist/es/header/GroupPanel.d.ts +4 -1
- package/dist/es/header/GroupPanel.js +5 -1
- package/dist/es/header/Header.d.ts +4 -1
- package/dist/es/header/Header.js +5 -1
- package/dist/es/header/HeaderRow.d.ts +4 -1
- package/dist/es/header/HeaderRow.js +5 -1
- package/dist/es/interfaces/GridCellProps.d.ts +2 -2
- package/dist/es/interfaces/GridColumnMenuFilterBaseProps.d.ts +8 -0
- package/dist/es/interfaces/GridColumnProps.d.ts +2 -2
- package/dist/es/interfaces/GridDetailRowProps.d.ts +0 -4
- package/dist/es/interfaces/GridFilterCellProps.d.ts +1 -1
- package/dist/es/interfaces/GridGroupableSettings.d.ts +1 -1
- package/dist/es/interfaces/GridProps.d.ts +27 -27
- package/dist/es/package-metadata.js +1 -1
- package/dist/es/rows/GridDetailRow.d.ts +2 -5
- package/dist/es/rows/GridDetailRow.js +4 -7
- package/dist/es/rows/GridRow.d.ts +4 -1
- package/dist/es/rows/GridRow.js +5 -1
- package/dist/npm/Grid.d.ts +35 -2
- package/dist/npm/Grid.js +40 -8
- package/dist/npm/GridNav.d.ts +4 -1
- package/dist/npm/GridNav.js +5 -1
- package/dist/npm/GridNoRecords.d.ts +4 -1
- package/dist/npm/GridNoRecords.js +32 -28
- package/dist/npm/GridToolbar.d.ts +46 -4
- package/dist/npm/GridToolbar.js +48 -6
- package/dist/npm/additionalTypes.ts +11 -0
- package/dist/npm/cells/GridCell.d.ts +4 -1
- package/dist/npm/cells/GridCell.js +5 -1
- package/dist/npm/cells/GridDetailCell.d.ts +4 -1
- package/dist/npm/cells/GridDetailCell.js +5 -1
- package/dist/npm/cells/GridDetailHierarchyCell.d.ts +4 -1
- package/dist/npm/cells/GridDetailHierarchyCell.js +5 -1
- package/dist/npm/cells/GridEditCell.d.ts +4 -1
- package/dist/npm/cells/GridEditCell.js +5 -1
- package/dist/npm/cells/GridFilterCell.d.ts +4 -1
- package/dist/npm/cells/GridFilterCell.js +5 -1
- package/dist/npm/cells/GridGroupCell.d.ts +4 -1
- package/dist/npm/cells/GridGroupCell.js +5 -1
- package/dist/npm/cells/GridHierarchyCell.d.ts +4 -1
- package/dist/npm/cells/GridHierarchyCell.js +5 -1
- package/dist/npm/cells/GridSelectionCell.d.ts +4 -1
- package/dist/npm/cells/GridSelectionCell.js +5 -1
- package/dist/npm/columnMenu/ColumnMenu.d.ts +4 -1
- package/dist/npm/columnMenu/ColumnMenu.js +5 -1
- package/dist/npm/columnMenu/ColumnMenuContent.d.ts +4 -1
- package/dist/npm/columnMenu/ColumnMenuContent.js +5 -1
- package/dist/npm/columnMenu/GridColumnMenuCheckboxFilter.d.ts +4 -1
- package/dist/npm/columnMenu/GridColumnMenuCheckboxFilter.js +113 -78
- package/dist/npm/columnMenu/GridColumnMenuFilter.d.ts +138 -2
- package/dist/npm/columnMenu/GridColumnMenuFilter.js +139 -2
- package/dist/npm/columnMenu/GridColumnMenuFilterCell.d.ts +4 -1
- package/dist/npm/columnMenu/GridColumnMenuFilterCell.js +5 -1
- package/dist/npm/columnMenu/GridColumnMenuFilterUI.d.ts +4 -1
- package/dist/npm/columnMenu/GridColumnMenuFilterUI.js +5 -1
- package/dist/npm/columnMenu/GridColumnMenuItem.d.ts +4 -1
- package/dist/npm/columnMenu/GridColumnMenuItem.js +5 -1
- package/dist/npm/columnMenu/GridColumnMenuItemContent.d.ts +4 -1
- package/dist/npm/columnMenu/GridColumnMenuItemContent.js +5 -1
- package/dist/npm/columnMenu/GridColumnMenuItemGroup.d.ts +4 -1
- package/dist/npm/columnMenu/GridColumnMenuItemGroup.js +5 -1
- package/dist/npm/columnMenu/GridColumnMenuSort.d.ts +135 -2
- package/dist/npm/columnMenu/GridColumnMenuSort.js +136 -2
- package/dist/npm/drag/ColumnDraggable.d.ts +4 -1
- package/dist/npm/drag/ColumnDraggable.js +5 -1
- package/dist/npm/drag/ColumnResizer.d.ts +4 -1
- package/dist/npm/drag/ColumnResizer.js +5 -1
- package/dist/npm/drag/DragClue.d.ts +4 -1
- package/dist/npm/drag/DragClue.js +5 -1
- package/dist/npm/drag/DropClue.d.ts +4 -1
- package/dist/npm/drag/DropClue.js +5 -1
- package/dist/npm/drag/GroupingIndicator.d.ts +4 -1
- package/dist/npm/drag/GroupingIndicator.js +5 -1
- package/dist/npm/footer/Footer.d.ts +6 -0
- package/dist/npm/footer/Footer.js +8 -0
- package/dist/npm/footer/FooterRow.d.ts +6 -0
- package/dist/npm/footer/FooterRow.js +8 -0
- package/dist/npm/header/FilterRow.d.ts +4 -1
- package/dist/npm/header/FilterRow.js +5 -1
- package/dist/npm/header/GridHeaderCell.d.ts +4 -1
- package/dist/npm/header/GridHeaderCell.js +5 -1
- package/dist/npm/header/GridHeaderSelectionCell.d.ts +4 -1
- package/dist/npm/header/GridHeaderSelectionCell.js +5 -1
- package/dist/npm/header/GroupPanel.d.ts +4 -1
- package/dist/npm/header/GroupPanel.js +5 -1
- package/dist/npm/header/Header.d.ts +4 -1
- package/dist/npm/header/Header.js +5 -1
- package/dist/npm/header/HeaderRow.d.ts +4 -1
- package/dist/npm/header/HeaderRow.js +5 -1
- package/dist/npm/interfaces/GridCellProps.d.ts +2 -2
- package/dist/npm/interfaces/GridColumnMenuFilterBaseProps.d.ts +8 -0
- package/dist/npm/interfaces/GridColumnProps.d.ts +2 -2
- package/dist/npm/interfaces/GridDetailRowProps.d.ts +0 -4
- package/dist/npm/interfaces/GridFilterCellProps.d.ts +1 -1
- package/dist/npm/interfaces/GridGroupableSettings.d.ts +1 -1
- package/dist/npm/interfaces/GridProps.d.ts +27 -27
- package/dist/npm/package-metadata.js +1 -1
- package/dist/npm/rows/GridDetailRow.d.ts +2 -5
- package/dist/npm/rows/GridDetailRow.js +4 -7
- package/dist/npm/rows/GridRow.d.ts +4 -1
- package/dist/npm/rows/GridRow.js +5 -1
- package/package.json +14 -14
|
@@ -55,7 +55,7 @@ export var rootFilterOrDefault = function rootFilterOrDefault(rootFilter) {
|
|
|
55
55
|
}; // tslint:disable:max-line-length
|
|
56
56
|
|
|
57
57
|
/**
|
|
58
|
-
* Can be used to check if filtering is applied to a specific field ([see example]({% slug
|
|
58
|
+
* Can be used to check if filtering is applied to a specific field ([see example]({% slug column_menu_grid %}#toc-styling-the-column-menu-icon)). Useful for creating active filter indicators.
|
|
59
59
|
*/
|
|
60
60
|
// tslint:enable:max-line-length
|
|
61
61
|
|
|
@@ -73,7 +73,7 @@ export var filterGroupByField = function filterGroupByField(field, filter) {
|
|
|
73
73
|
return compositeFilters[0] || null;
|
|
74
74
|
};
|
|
75
75
|
/**
|
|
76
|
-
*
|
|
76
|
+
* @hidden
|
|
77
77
|
*/
|
|
78
78
|
|
|
79
79
|
var GridColumnMenuFilterVue2 = {
|
|
@@ -621,5 +621,142 @@ var GridColumnMenuFilterVue2 = {
|
|
|
621
621
|
);
|
|
622
622
|
}
|
|
623
623
|
};
|
|
624
|
+
/**
|
|
625
|
+
* Represents the GridColumnMenuFilter component.
|
|
626
|
+
*
|
|
627
|
+
* {% meta height:410 %}
|
|
628
|
+
* ```html-preview
|
|
629
|
+
* <div id="vueapp">
|
|
630
|
+
* <Grid :style="{height: '280px'}"
|
|
631
|
+
* :data-items="gridData"
|
|
632
|
+
* :sortable="true"
|
|
633
|
+
* :sort= "sort"
|
|
634
|
+
* :filter="filter"
|
|
635
|
+
* :expand-field="'Discontinued'"
|
|
636
|
+
* @datastatechange="dataStateChange"
|
|
637
|
+
* @expandchange="expandChange"
|
|
638
|
+
* :columns="columns">
|
|
639
|
+
* </Grid>
|
|
640
|
+
* </div>
|
|
641
|
+
* ```
|
|
642
|
+
* ```js
|
|
643
|
+
* import { Grid, GridColumnMenuFilter } from '@progress/kendo-vue-grid';
|
|
644
|
+
* import { process } from '@progress/kendo-data-query';
|
|
645
|
+
* const ColumnMenu = {
|
|
646
|
+
* props: {
|
|
647
|
+
* column: Object,
|
|
648
|
+
* sortable: [Boolean, Object],
|
|
649
|
+
* sort: {
|
|
650
|
+
* type: Array
|
|
651
|
+
* },
|
|
652
|
+
* filter: Object,
|
|
653
|
+
* filterable: Boolean
|
|
654
|
+
* },
|
|
655
|
+
* components: {
|
|
656
|
+
* GridColumnMenuFilter
|
|
657
|
+
* },
|
|
658
|
+
* template: `<div>
|
|
659
|
+
* <GridColumnMenuFilter
|
|
660
|
+
* :column="column"
|
|
661
|
+
* :filterable="filterable"
|
|
662
|
+
* :filter="filter"
|
|
663
|
+
* @closemenu ="closeMenu"
|
|
664
|
+
* @expandchange = "expandChange"
|
|
665
|
+
* @filterchange = "filterChange"
|
|
666
|
+
* />
|
|
667
|
+
* </div>`,
|
|
668
|
+
* methods: {
|
|
669
|
+
* expandChange () {
|
|
670
|
+
* this.$emit('expandchange');
|
|
671
|
+
* },
|
|
672
|
+
* closeMenu () {
|
|
673
|
+
* this.$emit('closemenu');
|
|
674
|
+
* },
|
|
675
|
+
* filterChange (newDescriptor, e) {
|
|
676
|
+
* this.$emit('filterchange', newDescriptor, e);
|
|
677
|
+
* }
|
|
678
|
+
* }
|
|
679
|
+
* };
|
|
680
|
+
*
|
|
681
|
+
* Vue.component('Grid', Grid);
|
|
682
|
+
* new Vue({
|
|
683
|
+
* el: '#vueapp',
|
|
684
|
+
* components: {
|
|
685
|
+
* Grid
|
|
686
|
+
* },
|
|
687
|
+
* created: function() {
|
|
688
|
+
* this.getData();
|
|
689
|
+
* },
|
|
690
|
+
* methods: {
|
|
691
|
+
* getData: function () {
|
|
692
|
+
* let dataState = {
|
|
693
|
+
* filter: this.filter,
|
|
694
|
+
* sort: this.sort
|
|
695
|
+
* };
|
|
696
|
+
* this.gridData = process([{
|
|
697
|
+
* "ProductID": 1,
|
|
698
|
+
* "ProductName": "Chai",
|
|
699
|
+
* "UnitsInStock": 39,
|
|
700
|
+
* "Discontinued": false,
|
|
701
|
+
* "FirstOrderedOn": new Date(1996, 8, 20)
|
|
702
|
+
* },{
|
|
703
|
+
* "ProductID": 2,
|
|
704
|
+
* "ProductName": "Chang",
|
|
705
|
+
* "UnitsInStock": 17,
|
|
706
|
+
* "Discontinued": false,
|
|
707
|
+
* "FirstOrderedOn": new Date(1996, 7, 12)
|
|
708
|
+
* },{
|
|
709
|
+
* "ProductID": 3,
|
|
710
|
+
* "ProductName": "Aniseed Syrup",
|
|
711
|
+
* "UnitsInStock": 13,
|
|
712
|
+
* "Discontinued": false,
|
|
713
|
+
* "FirstOrderedOn": new Date(1996, 8, 26)
|
|
714
|
+
* },{
|
|
715
|
+
* "ProductID": 4,
|
|
716
|
+
* "ProductName": "Chef Anton's Cajun Seasoning",
|
|
717
|
+
* "UnitsInStock": 53,
|
|
718
|
+
* "Discontinued": false,
|
|
719
|
+
* "FirstOrderedOn": new Date(1996, 9, 19)
|
|
720
|
+
* }], dataState);
|
|
721
|
+
* },
|
|
722
|
+
* createAppState: function(dataState) {
|
|
723
|
+
* this.sort = dataState.sort;
|
|
724
|
+
* this.filter = dataState.filter;
|
|
725
|
+
* this.getData();
|
|
726
|
+
* },
|
|
727
|
+
* dataStateChange: function (event) {
|
|
728
|
+
* this.createAppState(event.data);
|
|
729
|
+
* },
|
|
730
|
+
* expandChange: function (event) {
|
|
731
|
+
* event.dataItem[event.target.$props.expandField] = event.value;
|
|
732
|
+
* //
|
|
733
|
+
* // In Vue 2 context, instead of the above line, inside the expandChange method we should have the following:
|
|
734
|
+
* //
|
|
735
|
+
* // Vue.set(
|
|
736
|
+
* // event.dataItem,
|
|
737
|
+
* // event.target.$props.expandField,
|
|
738
|
+
* // event.dataItem.expanded === undefined ? false : !event.dataItem.expanded
|
|
739
|
+
* // );
|
|
740
|
+
* //
|
|
741
|
+
* }
|
|
742
|
+
* },
|
|
743
|
+
* data: function () {
|
|
744
|
+
* return {
|
|
745
|
+
* filter: null,
|
|
746
|
+
* sort: [],
|
|
747
|
+
* gridData: [],
|
|
748
|
+
* columns: [
|
|
749
|
+
* { field: 'ProductID'},
|
|
750
|
+
* { field: 'ProductName', title: 'Product Name' },
|
|
751
|
+
* { field: 'UnitsInStock', title: 'Units In Stock', columnMenu: ColumnMenu }
|
|
752
|
+
* ]
|
|
753
|
+
* };
|
|
754
|
+
* }
|
|
755
|
+
* } );
|
|
756
|
+
* ```
|
|
757
|
+
*
|
|
758
|
+
* ### props <span class='code'>[GridColumnMenuFilterProps]({% slug api_grid_columnmenufilterprops %})</span>
|
|
759
|
+
*/
|
|
760
|
+
|
|
624
761
|
var GridColumnMenuFilter = GridColumnMenuFilterVue2;
|
|
625
762
|
export { GridColumnMenuFilter, GridColumnMenuFilterVue2 };
|
|
@@ -35,8 +35,11 @@ export interface GridColumnMenuFilterCellMethods extends Vue2type {
|
|
|
35
35
|
boolDropdownChange: (value: any, e: any) => void;
|
|
36
36
|
}
|
|
37
37
|
/**
|
|
38
|
-
*
|
|
38
|
+
* @hidden
|
|
39
39
|
*/
|
|
40
40
|
declare let GridColumnMenuFilterCellVue2: ComponentOptions<Vue2type, DefaultData<{}>, DefaultMethods<GridColumnMenuFilterCellMethods>, {}, RecordPropsDefinition<ColumnMenuFilterCellProps>>;
|
|
41
|
+
/**
|
|
42
|
+
* @hidden
|
|
43
|
+
*/
|
|
41
44
|
declare const GridColumnMenuFilterCell: DefineComponent<ColumnMenuFilterCellProps, any, {}, {}, GridColumnMenuFilterCellMethods, {}, {}, {}, string, ColumnMenuFilterCellProps, ColumnMenuFilterCellProps, {}>;
|
|
42
45
|
export { GridColumnMenuFilterCell, GridColumnMenuFilterCellVue2 };
|
|
@@ -7,7 +7,7 @@ import { NumericTextBox } from '@progress/kendo-vue-inputs';
|
|
|
7
7
|
import { DatePicker } from '@progress/kendo-vue-dateinputs';
|
|
8
8
|
import { cellBoolDropdownChange, cellInputChange, cellOperatorChange } from '../filterCommon';
|
|
9
9
|
/**
|
|
10
|
-
*
|
|
10
|
+
* @hidden
|
|
11
11
|
*/
|
|
12
12
|
|
|
13
13
|
var GridColumnMenuFilterCellVue2 = {
|
|
@@ -166,5 +166,9 @@ var GridColumnMenuFilterCellVue2 = {
|
|
|
166
166
|
}), filterComponent.call(this, this.$props.filterType, this.$props.value, this.$props.booleanValues)]);
|
|
167
167
|
}
|
|
168
168
|
};
|
|
169
|
+
/**
|
|
170
|
+
* @hidden
|
|
171
|
+
*/
|
|
172
|
+
|
|
169
173
|
var GridColumnMenuFilterCell = GridColumnMenuFilterCellVue2;
|
|
170
174
|
export { GridColumnMenuFilterCell, GridColumnMenuFilterCellVue2 };
|
|
@@ -14,8 +14,11 @@ export interface GridColumnMenuFilterUIMethods extends Vue2type {
|
|
|
14
14
|
logicChange: (e: any) => void;
|
|
15
15
|
}
|
|
16
16
|
/**
|
|
17
|
-
*
|
|
17
|
+
* @hidden
|
|
18
18
|
*/
|
|
19
19
|
declare let GridColumnMenuFilterUIVue2: ComponentOptions<Vue2type, DefaultData<{}>, DefaultMethods<GridColumnMenuFilterUIMethods>, {}, RecordPropsDefinition<GridColumnMenuFilterUIProps>>;
|
|
20
|
+
/**
|
|
21
|
+
* @hidden
|
|
22
|
+
*/
|
|
20
23
|
declare const GridColumnMenuFilterUI: DefineComponent<GridColumnMenuFilterUIProps, any, {}, {}, GridColumnMenuFilterUIMethods, {}, {}, {}, string, GridColumnMenuFilterUIProps, GridColumnMenuFilterUIProps, {}>;
|
|
21
24
|
export { GridColumnMenuFilterUI, GridColumnMenuFilterUIVue2 };
|
|
@@ -6,7 +6,7 @@ import { GridColumnMenuFilterCell } from './GridColumnMenuFilterCell';
|
|
|
6
6
|
import { DropDownList } from '@progress/kendo-vue-dropdowns';
|
|
7
7
|
import { getTemplate } from '@progress/kendo-vue-common';
|
|
8
8
|
/**
|
|
9
|
-
*
|
|
9
|
+
* @hidden
|
|
10
10
|
*/
|
|
11
11
|
|
|
12
12
|
var GridColumnMenuFilterUIVue2 = {
|
|
@@ -146,5 +146,9 @@ var GridColumnMenuFilterUIVue2 = {
|
|
|
146
146
|
});
|
|
147
147
|
}
|
|
148
148
|
};
|
|
149
|
+
/**
|
|
150
|
+
* @hidden
|
|
151
|
+
*/
|
|
152
|
+
|
|
149
153
|
var GridColumnMenuFilterUI = GridColumnMenuFilterUIVue2;
|
|
150
154
|
export { GridColumnMenuFilterUI, GridColumnMenuFilterUIVue2 };
|
|
@@ -32,8 +32,11 @@ export interface GridColumnMenuItemMethods extends Vue2type {
|
|
|
32
32
|
onKeyDown: () => void;
|
|
33
33
|
}
|
|
34
34
|
/**
|
|
35
|
-
*
|
|
35
|
+
* @hidden
|
|
36
36
|
*/
|
|
37
37
|
declare let GridColumnMenuItemVue2: ComponentOptions<Vue2type, DefaultData<{}>, DefaultMethods<GridColumnMenuItemMethods>, {}, RecordPropsDefinition<GridColumnMenuItemProps>>;
|
|
38
|
+
/**
|
|
39
|
+
* @hidden
|
|
40
|
+
*/
|
|
38
41
|
declare const GridColumnMenuItem: DefineComponent<GridColumnMenuItemProps, any, {}, {}, GridColumnMenuItemMethods, {}, {}, {}, string, GridColumnMenuItemProps, GridColumnMenuItemProps, {}>;
|
|
39
42
|
export { GridColumnMenuItem, GridColumnMenuItemVue2 };
|
|
@@ -4,7 +4,7 @@ var allVue = Vue;
|
|
|
4
4
|
var gh = allVue.h;
|
|
5
5
|
import { Keys } from '@progress/kendo-vue-common';
|
|
6
6
|
/**
|
|
7
|
-
*
|
|
7
|
+
* @hidden
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
var GridColumnMenuItemVue2 = {
|
|
@@ -54,5 +54,9 @@ var GridColumnMenuItemVue2 = {
|
|
|
54
54
|
}), title]);
|
|
55
55
|
}
|
|
56
56
|
};
|
|
57
|
+
/**
|
|
58
|
+
* @hidden
|
|
59
|
+
*/
|
|
60
|
+
|
|
57
61
|
var GridColumnMenuItem = GridColumnMenuItemVue2;
|
|
58
62
|
export { GridColumnMenuItem, GridColumnMenuItemVue2 };
|
|
@@ -24,8 +24,11 @@ export interface GridColumnMenuItemContentMethods extends Vue2type {
|
|
|
24
24
|
triggerRemove: (dataItem: any) => void;
|
|
25
25
|
}
|
|
26
26
|
/**
|
|
27
|
-
*
|
|
27
|
+
* @hidden
|
|
28
28
|
*/
|
|
29
29
|
declare let GridColumnMenuItemContentVue2: ComponentOptions<Vue2type, DefaultData<{}>, DefaultMethods<GridColumnMenuItemContentMethods>, {}, RecordPropsDefinition<GridColumnMenuItemContentProps>>;
|
|
30
|
+
/**
|
|
31
|
+
* @hidden
|
|
32
|
+
*/
|
|
30
33
|
declare const GridColumnMenuItemContent: DefineComponent<GridColumnMenuItemContentProps, any, {}, {}, GridColumnMenuItemContentMethods, {}, {}, {}, string, GridColumnMenuItemContentProps, GridColumnMenuItemContentProps, {}>;
|
|
31
34
|
export { GridColumnMenuItemContent, GridColumnMenuItemContentVue2 };
|
|
@@ -5,7 +5,7 @@ var gh = allVue.h;
|
|
|
5
5
|
import { getDefaultSlots } from '@progress/kendo-vue-common';
|
|
6
6
|
import { Reveal } from '@progress/kendo-vue-animation';
|
|
7
7
|
/**
|
|
8
|
-
*
|
|
8
|
+
* @hidden
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
11
|
var GridColumnMenuItemContentVue2 = {
|
|
@@ -42,5 +42,9 @@ var GridColumnMenuItemContentVue2 = {
|
|
|
42
42
|
} : [_this.$props.show ? defaultSlot : null])]);
|
|
43
43
|
}
|
|
44
44
|
};
|
|
45
|
+
/**
|
|
46
|
+
* @hidden
|
|
47
|
+
*/
|
|
48
|
+
|
|
45
49
|
var GridColumnMenuItemContent = GridColumnMenuItemContentVue2;
|
|
46
50
|
export { GridColumnMenuItemContent, GridColumnMenuItemContentVue2 };
|
|
@@ -9,8 +9,11 @@ declare type DefaultMethods<V> = {
|
|
|
9
9
|
export interface GridColumnMenuItemGroupProps {
|
|
10
10
|
}
|
|
11
11
|
/**
|
|
12
|
-
*
|
|
12
|
+
* @hidden
|
|
13
13
|
*/
|
|
14
14
|
declare let GridColumnMenuItemGroupVue2: ComponentOptions<Vue2type, DefaultData<{}>, DefaultMethods<{}>, {}, RecordPropsDefinition<GridColumnMenuItemGroupProps>>;
|
|
15
|
+
/**
|
|
16
|
+
* @hidden
|
|
17
|
+
*/
|
|
15
18
|
declare const GridColumnMenuItemGroup: DefineComponent<GridColumnMenuItemGroupProps, any, {}, {}, {}, {}, {}, {}, string, GridColumnMenuItemGroupProps, GridColumnMenuItemGroupProps, {}>;
|
|
16
19
|
export { GridColumnMenuItemGroup, GridColumnMenuItemGroupVue2 };
|
|
@@ -4,7 +4,7 @@ var allVue = Vue;
|
|
|
4
4
|
var gh = allVue.h;
|
|
5
5
|
import { getDefaultSlots } from '@progress/kendo-vue-common';
|
|
6
6
|
/**
|
|
7
|
-
*
|
|
7
|
+
* @hidden
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
var GridColumnMenuItemGroupVue2 = {
|
|
@@ -24,5 +24,9 @@ var GridColumnMenuItemGroupVue2 = {
|
|
|
24
24
|
}, [defaultSlot]);
|
|
25
25
|
}
|
|
26
26
|
};
|
|
27
|
+
/**
|
|
28
|
+
* @hidden
|
|
29
|
+
*/
|
|
30
|
+
|
|
27
31
|
var GridColumnMenuItemGroup = GridColumnMenuItemGroupVue2;
|
|
28
32
|
export { GridColumnMenuItemGroup, GridColumnMenuItemGroupVue2 };
|
|
@@ -6,7 +6,7 @@ declare type DefaultMethods<V> = {
|
|
|
6
6
|
import { SortDescriptor } from '@progress/kendo-data-query';
|
|
7
7
|
import { GridColumnMenuSortBaseProps } from '../interfaces/GridColumnMenuSortBaseProps';
|
|
8
8
|
/**
|
|
9
|
-
* Can be used to check if sorting is applied to a specific field ([see example]({% slug
|
|
9
|
+
* Can be used to check if sorting is applied to a specific field ([see example]({% slug column_menu_grid %}#toc-styling-the-column-menu-icon)). Useful for creating active sort indicators.
|
|
10
10
|
*/
|
|
11
11
|
export declare const sortGroupByField: (field: string, sort?: SortDescriptor[]) => boolean;
|
|
12
12
|
/**
|
|
@@ -143,8 +143,141 @@ export interface GridColumnMenuSortMethods extends Vue2type {
|
|
|
143
143
|
onSort: (e: any, selectedDir: 'asc' | 'desc') => void;
|
|
144
144
|
}
|
|
145
145
|
/**
|
|
146
|
-
*
|
|
146
|
+
* @hidden
|
|
147
147
|
*/
|
|
148
148
|
declare let GridColumnMenuSortVue2: ComponentOptions<Vue2type, DefaultData<{}>, DefaultMethods<GridColumnMenuSortMethods>, {}, RecordPropsDefinition<GridColumnMenuSortProps>>;
|
|
149
|
+
/**
|
|
150
|
+
*
|
|
151
|
+
*
|
|
152
|
+
* {% meta height:410 %}
|
|
153
|
+
* ```html-preview
|
|
154
|
+
* <div id="vueapp">
|
|
155
|
+
* <Grid :style="{height: '280px'}"
|
|
156
|
+
* :data-items="gridData"
|
|
157
|
+
* :sortable="true"
|
|
158
|
+
* :sort= "sort"
|
|
159
|
+
* :filter="filter"
|
|
160
|
+
* :expand-field="'Discontinued'"
|
|
161
|
+
* @datastatechange="dataStateChange"
|
|
162
|
+
* @expandchange="expandChange"
|
|
163
|
+
* :columns="columns">
|
|
164
|
+
* </Grid>
|
|
165
|
+
* </div>
|
|
166
|
+
* ```
|
|
167
|
+
* ```js
|
|
168
|
+
* import { Grid, GridColumnMenuSort } from '@progress/kendo-vue-grid';
|
|
169
|
+
* import { process } from '@progress/kendo-data-query';
|
|
170
|
+
* const ColumnMenu = {
|
|
171
|
+
* props: {
|
|
172
|
+
* column: Object,
|
|
173
|
+
* sortable: [Boolean, Object],
|
|
174
|
+
* sort: {
|
|
175
|
+
* type: Array
|
|
176
|
+
* },
|
|
177
|
+
* filter: Object,
|
|
178
|
+
* filterable: Boolean
|
|
179
|
+
* },
|
|
180
|
+
* components: {
|
|
181
|
+
* GridColumnMenuSort
|
|
182
|
+
* },
|
|
183
|
+
* template: `<div>
|
|
184
|
+
* <GridColumnMenuSort
|
|
185
|
+
* :column="column"
|
|
186
|
+
* :filterable="filterable"
|
|
187
|
+
* :filter="filter"
|
|
188
|
+
* @closemenu ="closeMenu"
|
|
189
|
+
* @sortchange = "sortChange"
|
|
190
|
+
* />
|
|
191
|
+
* </div>`,
|
|
192
|
+
* methods: {
|
|
193
|
+
* closeMenu () {
|
|
194
|
+
* this.$emit('closemenu');
|
|
195
|
+
* },
|
|
196
|
+
* sortChange (newDescriptor, e) {
|
|
197
|
+
* this.$emit('filterchange', newDescriptor, e);
|
|
198
|
+
* }
|
|
199
|
+
* }
|
|
200
|
+
* };
|
|
201
|
+
*
|
|
202
|
+
* Vue.component('Grid', Grid);
|
|
203
|
+
* new Vue({
|
|
204
|
+
* el: '#vueapp',
|
|
205
|
+
* components: {
|
|
206
|
+
* Grid
|
|
207
|
+
* },
|
|
208
|
+
* created: function() {
|
|
209
|
+
* this.getData();
|
|
210
|
+
* },
|
|
211
|
+
* methods: {
|
|
212
|
+
* getData: function () {
|
|
213
|
+
* let dataState = {
|
|
214
|
+
* filter: this.filter,
|
|
215
|
+
* sort: this.sort
|
|
216
|
+
* };
|
|
217
|
+
* this.gridData = process([{
|
|
218
|
+
* "ProductID": 1,
|
|
219
|
+
* "ProductName": "Chai",
|
|
220
|
+
* "UnitsInStock": 39,
|
|
221
|
+
* "Discontinued": false,
|
|
222
|
+
* "FirstOrderedOn": new Date(1996, 8, 20)
|
|
223
|
+
* },{
|
|
224
|
+
* "ProductID": 2,
|
|
225
|
+
* "ProductName": "Chang",
|
|
226
|
+
* "UnitsInStock": 17,
|
|
227
|
+
* "Discontinued": false,
|
|
228
|
+
* "FirstOrderedOn": new Date(1996, 7, 12)
|
|
229
|
+
* },{
|
|
230
|
+
* "ProductID": 3,
|
|
231
|
+
* "ProductName": "Aniseed Syrup",
|
|
232
|
+
* "UnitsInStock": 13,
|
|
233
|
+
* "Discontinued": false,
|
|
234
|
+
* "FirstOrderedOn": new Date(1996, 8, 26)
|
|
235
|
+
* },{
|
|
236
|
+
* "ProductID": 4,
|
|
237
|
+
* "ProductName": "Chef Anton's Cajun Seasoning",
|
|
238
|
+
* "UnitsInStock": 53,
|
|
239
|
+
* "Discontinued": false,
|
|
240
|
+
* "FirstOrderedOn": new Date(1996, 9, 19)
|
|
241
|
+
* }], dataState);
|
|
242
|
+
* },
|
|
243
|
+
* createAppState: function(dataState) {
|
|
244
|
+
* this.sort = dataState.sort;
|
|
245
|
+
* this.filter = dataState.filter;
|
|
246
|
+
* this.getData();
|
|
247
|
+
* },
|
|
248
|
+
* dataStateChange: function (event) {
|
|
249
|
+
* this.createAppState(event.data);
|
|
250
|
+
* },
|
|
251
|
+
* expandChange: function (event) {
|
|
252
|
+
* event.dataItem[event.target.$props.expandField] = event.value;
|
|
253
|
+
* //
|
|
254
|
+
* // In Vue 2 context, instead of the above line, inside the expandChange method we should have the following:
|
|
255
|
+
* //
|
|
256
|
+
* // Vue.set(
|
|
257
|
+
* // event.dataItem,
|
|
258
|
+
* // event.target.$props.expandField,
|
|
259
|
+
* // event.dataItem.expanded === undefined ? false : !event.dataItem.expanded
|
|
260
|
+
* // );
|
|
261
|
+
* //
|
|
262
|
+
* }
|
|
263
|
+
* },
|
|
264
|
+
* data: function () {
|
|
265
|
+
* return {
|
|
266
|
+
* filter: null,
|
|
267
|
+
* sort: [],
|
|
268
|
+
* gridData: [],
|
|
269
|
+
* columns: [
|
|
270
|
+
* { field: 'ProductID'},
|
|
271
|
+
* { field: 'ProductName', title: 'Product Name' },
|
|
272
|
+
* { field: 'UnitsInStock', title: 'Units In Stock', columnMenu: ColumnMenu }
|
|
273
|
+
* ]
|
|
274
|
+
* };
|
|
275
|
+
* }
|
|
276
|
+
* } );
|
|
277
|
+
* ```
|
|
278
|
+
*
|
|
279
|
+
*
|
|
280
|
+
* ### props <span class='code'>[GridColumnMenuSortProps]({% slug api_grid_columnmenusortprops %})</span>
|
|
281
|
+
*/
|
|
149
282
|
declare const GridColumnMenuSort: DefineComponent<GridColumnMenuSortProps, any, {}, {}, GridColumnMenuSortMethods, {}, {}, {}, string, GridColumnMenuSortProps, GridColumnMenuSortProps, {}>;
|
|
150
283
|
export { GridColumnMenuSort, GridColumnMenuSortVue2 };
|
|
@@ -84,7 +84,7 @@ var sortedDesc = function sortedDesc(sortedIndex, sort) {
|
|
|
84
84
|
}; // tslint:disable:max-line-length
|
|
85
85
|
|
|
86
86
|
/**
|
|
87
|
-
* Can be used to check if sorting is applied to a specific field ([see example]({% slug
|
|
87
|
+
* Can be used to check if sorting is applied to a specific field ([see example]({% slug column_menu_grid %}#toc-styling-the-column-menu-icon)). Useful for creating active sort indicators.
|
|
88
88
|
*/
|
|
89
89
|
// tslint:enable:max-line-length
|
|
90
90
|
|
|
@@ -94,7 +94,7 @@ export var sortGroupByField = function sortGroupByField(field, sort) {
|
|
|
94
94
|
return sortedDesc(currentSortIndex, sort) || sortedAsc(currentSortIndex, sort);
|
|
95
95
|
};
|
|
96
96
|
/**
|
|
97
|
-
*
|
|
97
|
+
* @hidden
|
|
98
98
|
*/
|
|
99
99
|
|
|
100
100
|
var GridColumnMenuSortVue2 = {
|
|
@@ -236,5 +236,139 @@ var GridColumnMenuSortVue2 = {
|
|
|
236
236
|
);
|
|
237
237
|
}
|
|
238
238
|
};
|
|
239
|
+
/**
|
|
240
|
+
*
|
|
241
|
+
*
|
|
242
|
+
* {% meta height:410 %}
|
|
243
|
+
* ```html-preview
|
|
244
|
+
* <div id="vueapp">
|
|
245
|
+
* <Grid :style="{height: '280px'}"
|
|
246
|
+
* :data-items="gridData"
|
|
247
|
+
* :sortable="true"
|
|
248
|
+
* :sort= "sort"
|
|
249
|
+
* :filter="filter"
|
|
250
|
+
* :expand-field="'Discontinued'"
|
|
251
|
+
* @datastatechange="dataStateChange"
|
|
252
|
+
* @expandchange="expandChange"
|
|
253
|
+
* :columns="columns">
|
|
254
|
+
* </Grid>
|
|
255
|
+
* </div>
|
|
256
|
+
* ```
|
|
257
|
+
* ```js
|
|
258
|
+
* import { Grid, GridColumnMenuSort } from '@progress/kendo-vue-grid';
|
|
259
|
+
* import { process } from '@progress/kendo-data-query';
|
|
260
|
+
* const ColumnMenu = {
|
|
261
|
+
* props: {
|
|
262
|
+
* column: Object,
|
|
263
|
+
* sortable: [Boolean, Object],
|
|
264
|
+
* sort: {
|
|
265
|
+
* type: Array
|
|
266
|
+
* },
|
|
267
|
+
* filter: Object,
|
|
268
|
+
* filterable: Boolean
|
|
269
|
+
* },
|
|
270
|
+
* components: {
|
|
271
|
+
* GridColumnMenuSort
|
|
272
|
+
* },
|
|
273
|
+
* template: `<div>
|
|
274
|
+
* <GridColumnMenuSort
|
|
275
|
+
* :column="column"
|
|
276
|
+
* :filterable="filterable"
|
|
277
|
+
* :filter="filter"
|
|
278
|
+
* @closemenu ="closeMenu"
|
|
279
|
+
* @sortchange = "sortChange"
|
|
280
|
+
* />
|
|
281
|
+
* </div>`,
|
|
282
|
+
* methods: {
|
|
283
|
+
* closeMenu () {
|
|
284
|
+
* this.$emit('closemenu');
|
|
285
|
+
* },
|
|
286
|
+
* sortChange (newDescriptor, e) {
|
|
287
|
+
* this.$emit('filterchange', newDescriptor, e);
|
|
288
|
+
* }
|
|
289
|
+
* }
|
|
290
|
+
* };
|
|
291
|
+
*
|
|
292
|
+
* Vue.component('Grid', Grid);
|
|
293
|
+
* new Vue({
|
|
294
|
+
* el: '#vueapp',
|
|
295
|
+
* components: {
|
|
296
|
+
* Grid
|
|
297
|
+
* },
|
|
298
|
+
* created: function() {
|
|
299
|
+
* this.getData();
|
|
300
|
+
* },
|
|
301
|
+
* methods: {
|
|
302
|
+
* getData: function () {
|
|
303
|
+
* let dataState = {
|
|
304
|
+
* filter: this.filter,
|
|
305
|
+
* sort: this.sort
|
|
306
|
+
* };
|
|
307
|
+
* this.gridData = process([{
|
|
308
|
+
* "ProductID": 1,
|
|
309
|
+
* "ProductName": "Chai",
|
|
310
|
+
* "UnitsInStock": 39,
|
|
311
|
+
* "Discontinued": false,
|
|
312
|
+
* "FirstOrderedOn": new Date(1996, 8, 20)
|
|
313
|
+
* },{
|
|
314
|
+
* "ProductID": 2,
|
|
315
|
+
* "ProductName": "Chang",
|
|
316
|
+
* "UnitsInStock": 17,
|
|
317
|
+
* "Discontinued": false,
|
|
318
|
+
* "FirstOrderedOn": new Date(1996, 7, 12)
|
|
319
|
+
* },{
|
|
320
|
+
* "ProductID": 3,
|
|
321
|
+
* "ProductName": "Aniseed Syrup",
|
|
322
|
+
* "UnitsInStock": 13,
|
|
323
|
+
* "Discontinued": false,
|
|
324
|
+
* "FirstOrderedOn": new Date(1996, 8, 26)
|
|
325
|
+
* },{
|
|
326
|
+
* "ProductID": 4,
|
|
327
|
+
* "ProductName": "Chef Anton's Cajun Seasoning",
|
|
328
|
+
* "UnitsInStock": 53,
|
|
329
|
+
* "Discontinued": false,
|
|
330
|
+
* "FirstOrderedOn": new Date(1996, 9, 19)
|
|
331
|
+
* }], dataState);
|
|
332
|
+
* },
|
|
333
|
+
* createAppState: function(dataState) {
|
|
334
|
+
* this.sort = dataState.sort;
|
|
335
|
+
* this.filter = dataState.filter;
|
|
336
|
+
* this.getData();
|
|
337
|
+
* },
|
|
338
|
+
* dataStateChange: function (event) {
|
|
339
|
+
* this.createAppState(event.data);
|
|
340
|
+
* },
|
|
341
|
+
* expandChange: function (event) {
|
|
342
|
+
* event.dataItem[event.target.$props.expandField] = event.value;
|
|
343
|
+
* //
|
|
344
|
+
* // In Vue 2 context, instead of the above line, inside the expandChange method we should have the following:
|
|
345
|
+
* //
|
|
346
|
+
* // Vue.set(
|
|
347
|
+
* // event.dataItem,
|
|
348
|
+
* // event.target.$props.expandField,
|
|
349
|
+
* // event.dataItem.expanded === undefined ? false : !event.dataItem.expanded
|
|
350
|
+
* // );
|
|
351
|
+
* //
|
|
352
|
+
* }
|
|
353
|
+
* },
|
|
354
|
+
* data: function () {
|
|
355
|
+
* return {
|
|
356
|
+
* filter: null,
|
|
357
|
+
* sort: [],
|
|
358
|
+
* gridData: [],
|
|
359
|
+
* columns: [
|
|
360
|
+
* { field: 'ProductID'},
|
|
361
|
+
* { field: 'ProductName', title: 'Product Name' },
|
|
362
|
+
* { field: 'UnitsInStock', title: 'Units In Stock', columnMenu: ColumnMenu }
|
|
363
|
+
* ]
|
|
364
|
+
* };
|
|
365
|
+
* }
|
|
366
|
+
* } );
|
|
367
|
+
* ```
|
|
368
|
+
*
|
|
369
|
+
*
|
|
370
|
+
* ### props <span class='code'>[GridColumnMenuSortProps]({% slug api_grid_columnmenusortprops %})</span>
|
|
371
|
+
*/
|
|
372
|
+
|
|
239
373
|
var GridColumnMenuSort = GridColumnMenuSortVue2;
|
|
240
374
|
export { GridColumnMenuSort, GridColumnMenuSortVue2 };
|
|
@@ -33,8 +33,11 @@ export interface ColumnDraggableState {
|
|
|
33
33
|
export interface ColumnDraggableAll extends ColumnDraggableMethods, ColumnDraggableState {
|
|
34
34
|
}
|
|
35
35
|
/**
|
|
36
|
-
*
|
|
36
|
+
* @hidden
|
|
37
37
|
*/
|
|
38
38
|
declare let ColumnDraggableVue2: ComponentOptions<Vue2type, DefaultData<{}>, DefaultMethods<ColumnDraggableAll>, {}, RecordPropsDefinition<ColumnDraggableProps>>;
|
|
39
|
+
/**
|
|
40
|
+
* @hidden
|
|
41
|
+
*/
|
|
39
42
|
declare const ColumnDraggable: DefineComponent<ColumnDraggableProps, any, {}, {}, ColumnDraggableMethods, {}, {}, {}, string, ColumnDraggableProps, ColumnDraggableProps, {}>;
|
|
40
43
|
export { ColumnDraggable, ColumnDraggableVue2 };
|
|
@@ -4,7 +4,7 @@ var allVue = Vue;
|
|
|
4
4
|
var gh = allVue.h;
|
|
5
5
|
import { getDefaultSlots, Draggable } from '@progress/kendo-vue-common';
|
|
6
6
|
/**
|
|
7
|
-
*
|
|
7
|
+
* @hidden
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
var ColumnDraggableVue2 = {
|
|
@@ -64,5 +64,9 @@ var ColumnDraggableVue2 = {
|
|
|
64
64
|
);
|
|
65
65
|
}
|
|
66
66
|
};
|
|
67
|
+
/**
|
|
68
|
+
* @hidden
|
|
69
|
+
*/
|
|
70
|
+
|
|
67
71
|
var ColumnDraggable = ColumnDraggableVue2;
|
|
68
72
|
export { ColumnDraggable, ColumnDraggableVue2 };
|