diff --git a/api-generator/components/column.js b/api-generator/components/column.js
index 380fbc8ec..243428103 100644
--- a/api-generator/components/column.js
+++ b/api-generator/components/column.js
@@ -289,6 +289,50 @@ const ColumnSlots = [
{
name: 'filterapply',
description: "Custom content for the filter menu's apply section"
+ },
+ {
+ name: 'rowtogglericon',
+ description: 'Custom row toggler icon template.'
+ },
+ {
+ name: 'roweditoriniticon',
+ description: 'Custom row editor init icon template.'
+ },
+ {
+ name: 'roweditorsaveicon',
+ description: 'Custom row editor save icon template.'
+ },
+ {
+ name: 'roweditorcancelicon',
+ description: 'Custom row editor cancel icon template.'
+ },
+ {
+ name: 'filtericon',
+ description: 'Custom filter icon template.'
+ },
+ {
+ name: 'filterclearicon',
+ description: 'Custom filter clear icon template.'
+ },
+ {
+ name: 'filterremoveicon',
+ description: 'Custom filter remove icon template.'
+ },
+ {
+ name: 'filteraddicon',
+ description: 'Custom filter add icon template.'
+ },
+ {
+ name: 'sorticon',
+ description: 'Custom sort icon template.'
+ },
+ {
+ name: 'headercheckboxicon',
+ description: 'Custom header checkbox icon template.'
+ },
+ {
+ name: 'rowcheckboxicon',
+ description: 'Custom row checkbox icon template.'
}
];
diff --git a/api-generator/components/datatable.js b/api-generator/components/datatable.js
index a2e48a9e2..f57aa6f32 100644
--- a/api-generator/components/datatable.js
+++ b/api-generator/components/datatable.js
@@ -1120,31 +1120,43 @@ const DataTableEvents = [
const DataTableSlots = [
{
name: 'header',
- description: "Custom content for the component's header"
+ description: "Custom content for the component's header."
},
{
name: 'paginatorstart',
- description: "Custom content for the component paginator's left side"
+ description: "Custom content for the component paginator's left side."
},
{
name: 'paginatorend',
- description: "Custom content for the component paginator's right side"
+ description: "Custom content for the component paginator's right side."
},
{
name: 'footer',
- description: "Custom content for the component's footer"
+ description: "Custom content for the component's footer."
},
{
name: 'groupheader',
- description: "Custom content for the component's subgroup header"
+ description: "Custom content for the component's subgroup header."
},
{
name: 'groupfooter',
- description: "Custom content for the component's subgroup footer"
+ description: "Custom content for the component's subgroup footer."
},
{
- name: 'expansion',
- description: "Custom content for the component's expanded content"
+ name: 'loadingicon',
+ description: 'Custom loading icon template.'
+ },
+ {
+ name: 'reorderindicatorupicon',
+ description: 'Custom reorder indicator up icon template.'
+ },
+ {
+ name: 'reorderindicatordownicon',
+ description: 'Custom reorder indicator down icon template.'
+ },
+ {
+ name: 'rowgrouptogglericon',
+ description: 'Custom rowgroup toggler icon template.'
}
];
diff --git a/components/lib/column/Column.d.ts b/components/lib/column/Column.d.ts
index 7bd646f7d..4a5804eab 100755
--- a/components/lib/column/Column.d.ts
+++ b/components/lib/column/Column.d.ts
@@ -486,6 +486,78 @@ export interface ColumnSlots {
*/
loadingOptions: ColumnLoadingOptions;
}): VNode[];
+ /**
+ * Custom row toggler icon template.
+ * @param {Object} scope - row toggler icon slot's params.
+ */
+ rowtogglericon(scope: {
+ /**
+ * Current row expanded state.
+ */
+ rowExpanded: boolean;
+ }): VNode[];
+ /**
+ * Custom row checkbox icon template.
+ * @param {Object} scope - header row icon slot's params.
+ */
+ rowcheckboxicon(scope: {
+ /**
+ * Current check state.
+ */
+ checked: boolean;
+ }): VNode[];
+ /**
+ * Custom row editor init icon template.
+ */
+ roweditoriniticon(): VNode[];
+ /**
+ * Custom row editor save icon template.
+ */
+ roweditorsaveicon(): VNode[];
+ /**
+ * Custom row editor cancel icon template.
+ */
+ roweditorcancelicon(): VNode[];
+ /**
+ * Custom filter icon template.
+ */
+ filtericon(): VNode[];
+ /**
+ * Custom filter clear icon template.
+ */
+ filterclearicon(): VNode[];
+ /**
+ * Custom filter remove icon template.
+ */
+ filterremoveicon(): VNode[];
+ /**
+ * Custom filter add icon template.
+ */
+ filteraddicon(): VNode[];
+ /**
+ * Custom sort icon template.
+ * @param {Object} scope - sort icon slot's params.
+ */
+ sorticon(scope: {
+ /**
+ * Current sort state.
+ */
+ sorted: boolean;
+ /**
+ * Current sort order state.
+ */
+ sortOrder: boolean;
+ }): VNode[];
+ /**
+ * Custom header checkbox icon template.
+ * @param {Object} scope - header checkbox icon slot's params.
+ */
+ headercheckboxicon(scope: {
+ /**
+ * Current check state.
+ */
+ checked: boolean;
+ }): VNode[];
}
export interface ColumnEmits {}
diff --git a/components/lib/datatable/BodyCell.vue b/components/lib/datatable/BodyCell.vue
index f06159d31..9263f7ff6 100755
--- a/components/lib/datatable/BodyCell.vue
+++ b/components/lib/datatable/BodyCell.vue
@@ -19,25 +19,34 @@