gitlab-org--gitlab-foss/app/assets/javascripts/boards/components/modal/filters.js.es6

50 lines
1.4 KiB
JavaScript
Raw Normal View History

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-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>
`,
});
})();