Browse Source

refactor(AdvancedTable): Draggable column property

Owen Diffey 3 years ago
parent
commit
6d887f64d6
2 changed files with 14 additions and 8 deletions
  1. 4 3
      frontend/src/components/AdvancedTable.vue
  2. 10 5
      frontend/src/pages/Admin/tabs/Test.vue

+ 4 - 3
frontend/src/components/AdvancedTable.vue

@@ -31,8 +31,7 @@
 								<th
 									:class="{
 										sortable: column.sortable,
-										'item-draggable':
-											column.name !== 'select'
+										'item-draggable': column.draggable
 									}"
 									v-if="
 										shownColumns.indexOf(column.name) !== -1
@@ -237,6 +236,7 @@ export default {
 		filterProperty: The property the backend will filter on, e.g. title
 		hidable: Boolean for whether a column can be hidden
 		defaultVisibility: Default visibility for a column, either "shown" or "hidden"
+		draggable: Boolean for whether a column can be dragged/reordered
 		*/
 		columns: { type: Array, default: null },
 		dataAction: { type: String, default: null }
@@ -299,7 +299,8 @@ export default {
 				properties: [],
 				sortable: false,
 				filterable: false,
-				hidable: false
+				hidable: false,
+				draggable: false
 			},
 			...this.columns
 		];

+ 10 - 5
frontend/src/pages/Admin/tabs/Test.vue

@@ -44,7 +44,8 @@ export default {
 					sortable: false,
 					filterable: false,
 					hidable: true,
-					defaultVisibility: "shown"
+					defaultVisibility: "shown",
+					draggable: true
 				},
 				{
 					name: "_id",
@@ -55,7 +56,8 @@ export default {
 					filterable: true,
 					filterProperty: "_id",
 					hidable: true,
-					defaultVisibility: "shown"
+					defaultVisibility: "shown",
+					draggable: true
 				},
 				{
 					name: "title",
@@ -66,7 +68,8 @@ export default {
 					filterable: true,
 					filterProperty: "title",
 					hidable: true,
-					defaultVisibility: "shown"
+					defaultVisibility: "shown",
+					draggable: true
 				},
 				{
 					name: "artists",
@@ -77,7 +80,8 @@ export default {
 					filterable: true,
 					filterProperty: "artists",
 					hidable: true,
-					defaultVisibility: "shown"
+					defaultVisibility: "shown",
+					draggable: true
 				},
 				{
 					name: "thumbnailUrl",
@@ -88,7 +92,8 @@ export default {
 					filterable: true,
 					filterProperty: "thumbnail",
 					hidable: true,
-					defaultVisibility: "hidden"
+					defaultVisibility: "hidden",
+					draggable: true
 				}
 			]
 		};