2017-01-31 10:53:20 +00:00
|
|
|
/* global Vue */
|
2017-02-01 15:52:12 +00:00
|
|
|
//= require_tree ./filters
|
2017-01-31 10:53:20 +00:00
|
|
|
(() => {
|
|
|
|
const ModalStore = gl.issueBoards.ModalStore;
|
|
|
|
|
|
|
|
gl.issueBoards.ModalFilters = Vue.extend({
|
2017-02-01 17:02:17 +00:00
|
|
|
props: {
|
|
|
|
projectId: {
|
|
|
|
type: Number,
|
|
|
|
required: true,
|
|
|
|
},
|
2017-02-01 17:26:03 +00:00
|
|
|
milestonePath: {
|
|
|
|
type: String,
|
|
|
|
required: true,
|
|
|
|
},
|
|
|
|
labelPath: {
|
|
|
|
type: String,
|
|
|
|
required: true,
|
|
|
|
},
|
2017-01-31 11:48:43 +00:00
|
|
|
},
|
2017-02-02 14:34:28 +00:00
|
|
|
destroyed() {
|
|
|
|
ModalStore.setDefaultFilter();
|
|
|
|
},
|
2017-02-01 15:52:12 +00:00
|
|
|
components: {
|
|
|
|
'user-filter': gl.issueBoards.ModalFilterUser,
|
2017-02-01 17:02:17 +00:00
|
|
|
'milestone-filter': gl.issueBoards.ModalFilterMilestone,
|
|
|
|
'label-filter': gl.issueBoards.ModalLabelFilter,
|
2017-02-01 15:52:12 +00:00
|
|
|
},
|
2017-01-31 10:53:20 +00:00
|
|
|
template: `
|
|
|
|
<div class="modal-filters">
|
2017-02-01 15:52:12 +00:00
|
|
|
<user-filter
|
|
|
|
dropdown-class-name="dropdown-menu-author"
|
|
|
|
toggle-class-name="js-user-search js-author-search"
|
|
|
|
toggle-label="Author"
|
2017-02-01 17:02:17 +00:00
|
|
|
field-name="author_id"
|
|
|
|
:project-id="projectId"></user-filter>
|
2017-02-01 15:52:12 +00:00
|
|
|
<user-filter
|
|
|
|
dropdown-class-name="dropdown-menu-author"
|
|
|
|
toggle-class-name="js-assignee-search"
|
|
|
|
toggle-label="Assignee"
|
|
|
|
field-name="assignee_id"
|
2017-02-01 17:02:17 +00:00
|
|
|
:null-user="true"
|
|
|
|
:project-id="projectId"></user-filter>
|
2017-02-01 17:26:03 +00:00
|
|
|
<milestone-filter :milestone-path="milestonePath"></milestone-filter>
|
|
|
|
<label-filter :label-path="labelPath"></label-filter>
|
2017-01-31 10:53:20 +00:00
|
|
|
</div>
|
|
|
|
`,
|
|
|
|
});
|
|
|
|
})();
|