Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
李少辉-开发者
gitlab-foss
提交
70b46b28
G
gitlab-foss
项目概览
李少辉-开发者
/
gitlab-foss
通知
15
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
G
gitlab-foss
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
70b46b28
编写于
7月 01, 2016
作者:
P
Phil Hughes
提交者:
Douwe Maan
7月 24, 2016
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Resolve all comments button
Store that manages the state of each button
上级
af5fc6e2
变更
7
隐藏空白更改
内联
并排
Showing
7 changed file
with
71 addition
and
3 deletion
+71
-3
app/assets/javascripts/line_comments/application.js.coffee
app/assets/javascripts/line_comments/application.js.coffee
+4
-0
app/assets/javascripts/line_comments/components/resolve_all.js.coffee
...avascripts/line_comments/components/resolve_all.js.coffee
+19
-0
app/assets/javascripts/line_comments/components/resolve_btn.js.coffee
...avascripts/line_comments/components/resolve_btn.js.coffee
+24
-0
app/assets/javascripts/line_comments/stores/comments.js.coffee
...ssets/javascripts/line_comments/stores/comments.js.coffee
+9
-0
app/assets/stylesheets/behaviors.scss
app/assets/stylesheets/behaviors.scss
+4
-0
app/views/projects/merge_requests/_show.html.haml
app/views/projects/merge_requests/_show.html.haml
+9
-1
app/views/projects/notes/_note.html.haml
app/views/projects/notes/_note.html.haml
+2
-2
未找到文件。
app/assets/javascripts/line_comments/application.js.coffee
浏览文件 @
70b46b28
#= require vue
#= require_directory ./stores
#= require_directory ./components
$
->
new
Vue
el
:
'#notes'
new
Vue
el
:
'#resolve-all-app'
app/assets/javascripts/line_comments/components/resolve_all.js.coffee
0 → 100644
浏览文件 @
70b46b28
ResolveAll
=
Vue
.
extend
data
:
->
{
comments
:
CommentsStore
.
state
}
computed
:
resolved
:
->
resolvedCount
=
0
for
noteId
,
resolved
of
this
.
comments
resolvedCount
++
if
resolved
resolvedCount
commentsCount
:
->
Object
.
keys
(
this
.
comments
).
length
buttonText
:
->
if
this
.
resolved
is
this
.
commentsCount
then
'Un-resolve all'
else
'Resolve all'
methods
:
updateAll
:
->
resolveAll
=
!
(
this
.
resolved
is
this
.
commentsCount
)
CommentsStore
.
updateAll
(
resolveAll
)
Vue
.
component
'resolve-all'
,
ResolveAll
app/assets/javascripts/line_comments/components/
lin
e_btn.js.coffee
→
app/assets/javascripts/line_comments/components/
resolv
e_btn.js.coffee
浏览文件 @
70b46b28
Lin
eBtn
=
Vue
.
extend
Resolv
eBtn
=
Vue
.
extend
props
:
noteId
:
Number
resolved
:
Boolean
data
:
->
comments
:
CommentsStore
.
state
computed
:
buttonText
:
->
if
this
.
resolved
then
"Mark as un-resolved"
else
"Mark as resolved"
if
this
.
comments
[
this
.
noteId
]
then
"Mark as un-resolved"
else
"Mark as resolved"
isResolved
:
->
this
.
comments
[
this
.
noteId
]
methods
:
updateTooltip
:
->
$
(
this
.
$el
)
.
tooltip
(
'hide'
)
.
tooltip
(
'fixTitle'
)
resolve
:
->
this
.
$set
(
'resolved'
,
!
this
.
resolved
)
CommentsStore
.
update
(
this
.
noteId
,
!
this
.
comments
[
this
.
noteId
])
this
.
$nextTick
this
.
updateTooltip
compiled
:
->
$
(
this
.
$el
).
tooltip
()
created
:
->
CommentsStore
.
create
(
this
.
noteId
,
this
.
resolved
)
Vue
.
component
'
line-btn'
,
Lin
eBtn
Vue
.
component
'
resolve-btn'
,
Resolv
eBtn
app/assets/javascripts/line_comments/stores/comments.js.coffee
0 → 100644
浏览文件 @
70b46b28
@
CommentsStore
=
state
:
{}
create
:
(
id
,
resolved
)
->
Vue
.
set
(
this
.
state
,
id
,
resolved
)
update
:
(
id
,
resolved
)
->
this
.
state
[
id
]
=
resolved
updateAll
:
(
state
)
->
for
id
,
resolved
of
this
.
state
this
.
update
(
id
,
state
)
if
resolved
isnt
state
app/assets/stylesheets/behaviors.scss
浏览文件 @
70b46b28
...
...
@@ -20,3 +20,7 @@
.turn-off
{
display
:
block
;
}
}
}
[
v-cloak
=
"true"
]
{
display
:
none
;
}
app/views/projects/merge_requests/_show.html.haml
浏览文件 @
70b46b28
...
...
@@ -44,7 +44,15 @@
=
succeed
'.'
do
=
link_to
"command line"
,
"#modal_merge_info"
,
class:
"how_to_merge_link vlink"
,
title:
"How To Merge"
,
"data-toggle"
=>
"modal"
-
if
@commits_count
.
nonzero?
#resolve-all-app
{
"v-cloak"
=>
true
}
%resolve-all
{
"inline-template"
=>
true
}
.line-resolve-all
{
"v-show"
=>
"commentsCount > 0"
}
%button
.btn.btn-gray
{
type:
"button"
,
"aria-label"
=>
"Resolve all"
,
"v-on:click"
=>
"updateAll"
}
{{ buttonText }}
%span
.line-resolve-text
{{ resolved }}/{{ commentsCount }} comments resolved
-
if
@commits
.
nonzero?
%ul
.merge-request-tabs.nav-links.no-top.no-bottom
%li
.notes-tab
=
link_to
namespace_project_merge_request_path
(
@project
.
namespace
,
@project
,
@merge_request
),
data:
{
target:
'div#notes'
,
action:
'notes'
,
toggle:
'tab'
}
do
...
...
app/views/projects/notes/_note.html.haml
浏览文件 @
70b46b28
...
...
@@ -21,8 +21,8 @@
-
if
access
and
not
note
.
system
%span
.note-role.hidden-xs
=
access
-
unless
note
.
system
%
lin
e-btn
{
":note-id"
=>
note
.
id
,
":resolved"
=>
"false"
,
"inline-template"
=>
true
}
%button
.note-action-button.line-resolve-btn
{
type:
"button"
,
"v-bind:class"
=>
"{ 'is-active':
r
esolved }"
,
"v-bind:aria-label"
=>
"buttonText"
,
"v-on:click"
=>
"resolve"
,
"v-bind:title"
=>
"buttonText"
}
%
resolv
e-btn
{
":note-id"
=>
note
.
id
,
":resolved"
=>
"false"
,
"inline-template"
=>
true
}
%button
.note-action-button.line-resolve-btn
{
type:
"button"
,
"v-bind:class"
=>
"{ 'is-active':
isR
esolved }"
,
"v-bind:aria-label"
=>
"buttonText"
,
"v-on:click"
=>
"resolve"
,
"v-bind:title"
=>
"buttonText"
}
=
icon
(
"check"
)
-
if
current_user
and
not
note
.
system
=
link_to
'#'
,
title:
'Award Emoji'
,
class:
'note-action-button note-emoji-button js-add-award js-note-emoji'
,
data:
{
position:
'right'
}
do
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录