Skip to content

Commit 6758a03

Browse files
author
ITExilion
committed
feat(columns): add duplicate column functionality
1 parent 42fb678 commit 6758a03

1 file changed

Lines changed: 13 additions & 0 deletions

File tree

src/shared/components/ncTable/partials/TableHeaderColumnOptions.vue

100644100755
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -108,6 +108,13 @@
108108
<PencilOutline :size="25" />
109109
</template>
110110
</NcActionButton>
111+
<NcActionButton v-if="showEditColumn"
112+
:aria-label="t('tables', 'Duplicate column')"
113+
@click="duplicateColumn()">
114+
<template #icon>
115+
<ContentCopy :size="25" />
116+
</template>
117+
</NcActionButton>
111118
<NcActionButton v-if="showDeleteColumn"
112119
:aria-label="t('tables', 'Delete column')"
113120
data-cy="deleteColumnActionBtn"
@@ -127,6 +134,7 @@ import generalHelper from '../../../mixins/generalHelper.js'
127134
import SortAsc from 'vue-material-design-icons/SortAscending.vue'
128135
import SortDesc from 'vue-material-design-icons/SortDescending.vue'
129136
import DeleteOutline from 'vue-material-design-icons/TrashCanOutline.vue'
137+
import ContentCopy from 'vue-material-design-icons/ContentCopy.vue'
130138
import PencilOutline from 'vue-material-design-icons/PencilOutline.vue'
131139
import EyeOffOutline from 'vue-material-design-icons/EyeOffOutline.vue'
132140
import ChevronLeft from 'vue-material-design-icons/ChevronLeft.vue'
@@ -149,6 +157,7 @@ export default {
149157
EyeOffOutline,
150158
DeleteOutline,
151159
PencilOutline,
160+
ContentCopy,
152161
ChevronLeft,
153162
FilterCogOutline,
154163
Magnify,
@@ -255,6 +264,10 @@ export default {
255264
showDeleteColumn() {
256265
return this.column.id >= 0 && this.config.canDeleteColumns
257266
},
267+
duplicateColumn() {
268+
this.close()
269+
this.$emit('duplicate-column', this.column)
270+
},
258271
selectedOperator: {
259272
get() {
260273
if (this.operator === null) {

0 commit comments

Comments
 (0)