Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
G
gitlab-ce
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Boxiang Sun
gitlab-ce
Commits
f1a70ce7
Commit
f1a70ce7
authored
Jun 22, 2018
by
Filipa Lacerda
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Moves list_dropdown and footer components to a .vue file
parent
510e45fd
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
88 additions
and
82 deletions
+88
-82
app/assets/javascripts/boards/components/modal/footer.vue
app/assets/javascripts/boards/components/modal/footer.vue
+30
-26
app/assets/javascripts/boards/components/modal/index.js
app/assets/javascripts/boards/components/modal/index.js
+2
-2
app/assets/javascripts/boards/components/modal/lists_dropdown.js
...ets/javascripts/boards/components/modal/lists_dropdown.js
+0
-54
app/assets/javascripts/boards/components/modal/lists_dropdown.vue
...ts/javascripts/boards/components/modal/lists_dropdown.vue
+56
-0
No files found.
app/assets/javascripts/boards/components/modal/footer.
js
→
app/assets/javascripts/boards/components/modal/footer.
vue
View file @
f1a70ce7
import
Vue
from
'
vue
'
;
<
script
>
import
Flash
from
'
../../../flash
'
;
import
Flash
from
'
../../../flash
'
;
import
{
__
}
from
'
../../../locale
'
;
import
{
__
}
from
'
../../../locale
'
;
import
'
./lists_dropdown
'
;
import
ListsDropdown
from
'
./lists_dropdown.vue
'
;
import
{
pluralize
}
from
'
../../../lib/utils/text_utility
'
;
import
{
pluralize
}
from
'
../../../lib/utils/text_utility
'
;
import
ModalStore
from
'
../../stores/modal_store
'
;
import
ModalStore
from
'
../../stores/modal_store
'
;
import
modalMixin
from
'
../../mixins/modal_mixins
'
;
import
modalMixin
from
'
../../mixins/modal_mixins
'
;
gl
.
issueBoards
.
ModalFooter
=
Vue
.
extend
(
{
export
default
{
components
:
{
components
:
{
'
lists-dropdown
'
:
gl
.
issueBoards
.
ModalFooter
ListsDropdown
,
ListsDropdown
,
},
},
mixins
:
[
modalMixin
],
mixins
:
[
modalMixin
],
data
()
{
data
()
{
...
@@ -55,28 +55,32 @@ gl.issueBoards.ModalFooter = Vue.extend({
...
@@ -55,28 +55,32 @@ gl.issueBoards.ModalFooter = Vue.extend({
this
.
toggleModal
(
false
);
this
.
toggleModal
(
false
);
},
},
},
},
template
:
`
};
<footer
</
script
>
class="form-actions add-issues-footer">
<
template
>
<div class="float-left">
<footer
<button
class=
"form-actions add-issues-footer"
class="btn btn-success"
>
type="button"
<div
class=
"float-left"
>
:disabled="submitDisabled"
@click="addIssues">
{{ submitText }}
</button>
<span class="inline add-issues-footer-to-list">
to list
</span>
<lists-dropdown></lists-dropdown>
</div>
<button
<button
class="btn btn-default float-right"
:disabled=
"submitDisabled"
class=
"btn btn-success"
type=
"button"
type=
"button"
@click="toggleModal(false)">
@
click=
"addIssues"
Cancel
>
{{
submitText
}}
</button>
</button>
</footer>
<span
class=
"inline add-issues-footer-to-list"
>
`
,
to list
});
</span>
<lists-dropdown/>
</div>
<button
class=
"btn btn-default float-right"
type=
"button"
@
click=
"toggleModal(false)"
>
Cancel
</button>
</footer>
</
template
>
app/assets/javascripts/boards/components/modal/index.js
View file @
f1a70ce7
...
@@ -5,7 +5,7 @@ import queryData from '~/boards/utils/query_data';
...
@@ -5,7 +5,7 @@ import queryData from '~/boards/utils/query_data';
import
loadingIcon
from
'
~/vue_shared/components/loading_icon.vue
'
;
import
loadingIcon
from
'
~/vue_shared/components/loading_icon.vue
'
;
import
'
./header
'
;
import
'
./header
'
;
import
'
./list
'
;
import
'
./list
'
;
import
'
./footer
'
;
import
ModalFooter
from
'
./footer.vue
'
;
import
EmptyState
from
'
./empty_state.vue
'
;
import
EmptyState
from
'
./empty_state.vue
'
;
import
ModalStore
from
'
../../stores/modal_store
'
;
import
ModalStore
from
'
../../stores/modal_store
'
;
...
@@ -14,7 +14,7 @@ gl.issueBoards.IssuesModal = Vue.extend({
...
@@ -14,7 +14,7 @@ gl.issueBoards.IssuesModal = Vue.extend({
EmptyState
,
EmptyState
,
'
modal-header
'
:
gl
.
issueBoards
.
ModalHeader
,
'
modal-header
'
:
gl
.
issueBoards
.
ModalHeader
,
'
modal-list
'
:
gl
.
issueBoards
.
ModalList
,
'
modal-list
'
:
gl
.
issueBoards
.
ModalList
,
'
modal-footer
'
:
gl
.
issueBoards
.
ModalFooter
,
ModalFooter
,
loadingIcon
,
loadingIcon
,
},
},
props
:
{
props
:
{
...
...
app/assets/javascripts/boards/components/modal/lists_dropdown.js
deleted
100644 → 0
View file @
510e45fd
import
Vue
from
'
vue
'
;
import
ModalStore
from
'
../../stores/modal_store
'
;
gl
.
issueBoards
.
ModalFooterListsDropdown
=
Vue
.
extend
({
data
()
{
return
{
modal
:
ModalStore
.
store
,
state
:
gl
.
issueBoards
.
BoardsStore
.
state
,
};
},
computed
:
{
selected
()
{
return
this
.
modal
.
selectedList
||
this
.
state
.
lists
[
1
];
},
},
destroyed
()
{
this
.
modal
.
selectedList
=
null
;
},
template
:
`
<div class="dropdown inline">
<button
class="dropdown-menu-toggle"
type="button"
data-toggle="dropdown"
aria-expanded="false">
<span
class="dropdown-label-box"
:style="{ backgroundColor: selected.label.color }">
</span>
{{ selected.title }}
<i class="fa fa-chevron-down"></i>
</button>
<div class="dropdown-menu dropdown-menu-selectable dropdown-menu-drop-up">
<ul>
<li
v-for="list in state.lists"
v-if="list.type == 'label'">
<a
href="#"
role="button"
:class="{ 'is-active': list.id == selected.id }"
@click.prevent="modal.selectedList = list">
<span
class="dropdown-label-box"
:style="{ backgroundColor: list.label.color }">
</span>
{{ list.title }}
</a>
</li>
</ul>
</div>
</div>
`
,
});
app/assets/javascripts/boards/components/modal/lists_dropdown.vue
0 → 100644
View file @
f1a70ce7
<
script
>
import
ModalStore
from
'
../../stores/modal_store
'
;
export
default
{
data
()
{
return
{
modal
:
ModalStore
.
store
,
state
:
gl
.
issueBoards
.
BoardsStore
.
state
,
};
},
computed
:
{
selected
()
{
return
this
.
modal
.
selectedList
||
this
.
state
.
lists
[
1
];
},
},
destroyed
()
{
this
.
modal
.
selectedList
=
null
;
},
};
</
script
>
<
template
>
<div
class=
"dropdown inline"
>
<button
class=
"dropdown-menu-toggle"
type=
"button"
data-toggle=
"dropdown"
aria-expanded=
"false"
>
<span
:style=
"
{ backgroundColor: selected.label.color }"
class="dropdown-label-box">
</span>
{{
selected
.
title
}}
<i
class=
"fa fa-chevron-down"
></i>
</button>
<div
class=
"dropdown-menu dropdown-menu-selectable dropdown-menu-drop-up"
>
<ul>
<li
v-for=
"(list, i) in state.lists"
v-if=
"list.type == 'label'"
:key=
"i"
>
<a
:class=
"
{ 'is-active': list.id == selected.id }"
href="#"
role="button"
@click.prevent="modal.selectedList = list">
<span
:style=
"
{ backgroundColor: list.label.color }"
class="dropdown-label-box">
</span>
{{
list
.
title
}}
</a>
</li>
</ul>
</div>
</div>
</
template
>
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment