From a9deabea00a1fa34bfeb8b6c421a99aa7568a5c8 Mon Sep 17 00:00:00 2001 From: Phil Hughes Date: Fri, 10 Mar 2017 12:08:19 +0000 Subject: Added filter bar into add issues modal [ci skip] --- .../javascripts/boards/components/modal/filters.js | 48 ++--------- .../boards/components/modal/filters/label.js | 54 ------------ .../boards/components/modal/filters/milestone.js | 56 ------------- .../boards/components/modal/filters/user.js | 96 ---------------------- .../javascripts/boards/components/modal/header.js | 13 +-- .../javascripts/boards/filtered_search_boards.js | 4 +- 6 files changed, 10 insertions(+), 261 deletions(-) delete mode 100644 app/assets/javascripts/boards/components/modal/filters/label.js delete mode 100644 app/assets/javascripts/boards/components/modal/filters/milestone.js delete mode 100644 app/assets/javascripts/boards/components/modal/filters/user.js (limited to 'app/assets/javascripts/boards') diff --git a/app/assets/javascripts/boards/components/modal/filters.js b/app/assets/javascripts/boards/components/modal/filters.js index 6de06811d94..991b3c695dd 100644 --- a/app/assets/javascripts/boards/components/modal/filters.js +++ b/app/assets/javascripts/boards/components/modal/filters.js @@ -1,49 +1,13 @@ /* global Vue */ -const userFilter = require('./filters/user'); -const milestoneFilter = require('./filters/milestone'); -const labelFilter = require('./filters/label'); +import FilteredSearchBoards from '../../filtered_search_boards'; -module.exports = Vue.extend({ +export default { name: 'modal-filters', - props: { - projectId: { - type: Number, - required: true, - }, - milestonePath: { - type: String, - required: true, - }, - labelPath: { - type: String, - required: true, - }, + mounted() { + this.filteredSearch = new FilteredSearchBoards({path: ''}, false, this.$el); }, destroyed() { gl.issueBoards.ModalStore.setDefaultFilter(); }, - components: { - userFilter, - milestoneFilter, - labelFilter, - }, - template: ` - - `, -}); + template: '#js-board-modal-filter', +}; diff --git a/app/assets/javascripts/boards/components/modal/filters/label.js b/app/assets/javascripts/boards/components/modal/filters/label.js deleted file mode 100644 index 4fc8f72a145..00000000000 --- a/app/assets/javascripts/boards/components/modal/filters/label.js +++ /dev/null @@ -1,54 +0,0 @@ -/* eslint-disable no-new */ -/* global Vue */ -/* global LabelsSelect */ -module.exports = Vue.extend({ - name: 'filter-label', - props: { - labelPath: { - type: String, - required: true, - }, - }, - mounted() { - new LabelsSelect(this.$refs.dropdown); - }, - template: ` - - `, -}); diff --git a/app/assets/javascripts/boards/components/modal/filters/milestone.js b/app/assets/javascripts/boards/components/modal/filters/milestone.js deleted file mode 100644 index 436aa981c59..00000000000 --- a/app/assets/javascripts/boards/components/modal/filters/milestone.js +++ /dev/null @@ -1,56 +0,0 @@ -/* eslint-disable no-new */ -/* global Vue */ -/* global MilestoneSelect */ -module.exports = Vue.extend({ - name: 'filter-milestone', - props: { - milestonePath: { - type: String, - required: true, - }, - }, - mounted() { - new MilestoneSelect(null, this.$refs.dropdown); - }, - template: ` - - `, -}); diff --git a/app/assets/javascripts/boards/components/modal/filters/user.js b/app/assets/javascripts/boards/components/modal/filters/user.js deleted file mode 100644 index 8523028c29c..00000000000 --- a/app/assets/javascripts/boards/components/modal/filters/user.js +++ /dev/null @@ -1,96 +0,0 @@ -/* eslint-disable no-new */ -/* global Vue */ -/* global UsersSelect */ -module.exports = Vue.extend({ - name: 'filter-user', - props: { - toggleClassName: { - type: String, - required: true, - }, - dropdownClassName: { - type: String, - required: false, - default: '', - }, - toggleLabel: { - type: String, - required: true, - }, - fieldName: { - type: String, - required: true, - }, - nullUser: { - type: Boolean, - required: false, - default: false, - }, - projectId: { - type: Number, - required: true, - }, - }, - mounted() { - new UsersSelect(null, this.$refs.dropdown); - }, - computed: { - currentUsername() { - return gon.current_username; - }, - dropdownTitle() { - return `Filter by ${this.toggleLabel.toLowerCase()}`; - }, - inputPlaceholder() { - return `Search ${this.toggleLabel.toLowerCase()}`; - }, - }, - template: ` - - `, -}); diff --git a/app/assets/javascripts/boards/components/modal/header.js b/app/assets/javascripts/boards/components/modal/header.js index 70c088f9054..f4e68f8f93d 100644 --- a/app/assets/javascripts/boards/components/modal/header.js +++ b/app/assets/javascripts/boards/components/modal/header.js @@ -1,6 +1,6 @@ /* global Vue */ require('./tabs'); -const modalFilters = require('./filters'); +import modalFilters from './filters'; (() => { const ModalStore = gl.issueBoards.ModalStore; @@ -66,16 +66,7 @@ const modalFilters = require('./filters');