Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
李少辉-开发者
gitlab-foss
提交
113f9f33
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,发现更多精彩内容 >>
提交
113f9f33
编写于
7月 31, 2018
作者:
A
André Luís
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Revert "Merge branch 'tz-mr-refactor-memory-reduction' into 'master'"
This reverts commit
2411ecb5
, reversing changes made to
58a0df7e
.
上级
32737672
变更
10
显示空白变更内容
内联
并排
Showing
10 changed file
with
94 addition
and
144 deletion
+94
-144
app/assets/javascripts/diffs/components/diff_line_gutter_content.vue
...javascripts/diffs/components/diff_line_gutter_content.vue
+10
-9
app/assets/javascripts/diffs/components/diff_table_cell.vue
app/assets/javascripts/diffs/components/diff_table_cell.vue
+0
-6
app/assets/javascripts/diffs/components/inline_diff_comment_row.vue
.../javascripts/diffs/components/inline_diff_comment_row.vue
+5
-6
app/assets/javascripts/diffs/components/inline_diff_table_row.vue
...ts/javascripts/diffs/components/inline_diff_table_row.vue
+0
-7
app/assets/javascripts/diffs/components/inline_diff_view.vue
app/assets/javascripts/diffs/components/inline_diff_view.vue
+14
-9
app/assets/javascripts/diffs/components/parallel_diff_comment_row.vue
...avascripts/diffs/components/parallel_diff_comment_row.vue
+26
-27
app/assets/javascripts/diffs/components/parallel_diff_table_row.vue
.../javascripts/diffs/components/parallel_diff_table_row.vue
+0
-12
app/assets/javascripts/diffs/components/parallel_diff_view.vue
...ssets/javascripts/diffs/components/parallel_diff_view.vue
+28
-10
app/assets/javascripts/diffs/store/getters.js
app/assets/javascripts/diffs/store/getters.js
+10
-53
spec/javascripts/diffs/components/diff_line_gutter_content_spec.js
...scripts/diffs/components/diff_line_gutter_content_spec.js
+1
-5
未找到文件。
app/assets/javascripts/diffs/components/diff_line_gutter_content.vue
浏览文件 @
113f9f33
...
...
@@ -71,11 +71,6 @@ export default {
required
:
false
,
default
:
false
,
},
discussions
:
{
type
:
Array
,
required
:
false
,
default
:
()
=>
[],
},
},
computed
:
{
...
mapState
({
...
...
@@ -83,6 +78,7 @@ export default {
diffFiles
:
state
=>
state
.
diffs
.
diffFiles
,
}),
...
mapGetters
([
'
isLoggedIn
'
]),
...
mapGetters
(
'
diffs
'
,
[
'
discussionsByLineCode
'
]),
lineHref
()
{
return
this
.
lineCode
?
`#
${
this
.
lineCode
}
`
:
'
#
'
;
},
...
...
@@ -92,19 +88,24 @@ export default {
this
.
showCommentButton
&&
!
this
.
isMatchLine
&&
!
this
.
isContextLine
&&
!
this
.
isMetaLine
&&
!
this
.
hasDiscussions
!
this
.
hasDiscussions
&&
!
this
.
isMetaLine
);
},
discussions
()
{
return
this
.
discussionsByLineCode
[
this
.
lineCode
]
||
[];
},
hasDiscussions
()
{
return
this
.
discussions
.
length
>
0
;
},
shouldShowAvatarsOnGutter
()
{
let
render
=
this
.
hasDiscussions
&&
this
.
showCommentButton
;
if
(
!
this
.
lineType
&&
this
.
linePosition
===
LINE_POSITION_RIGHT
)
{
re
turn
false
;
re
nder
=
false
;
}
return
this
.
hasDiscussions
&&
this
.
showCommentButton
;
return
render
;
},
},
methods
:
{
...
...
app/assets/javascripts/diffs/components/diff_table_cell.vue
浏览文件 @
113f9f33
...
...
@@ -67,11 +67,6 @@ export default {
required
:
false
,
default
:
false
,
},
discussions
:
{
type
:
Array
,
required
:
false
,
default
:
()
=>
[],
},
},
computed
:
{
...
mapGetters
([
'
isLoggedIn
'
]),
...
...
@@ -141,7 +136,6 @@ export default {
:is-match-line=
"isMatchLine"
:is-context-line=
"isContentLine"
:is-meta-line=
"isMetaLine"
:discussions=
"discussions"
/>
</td>
</
template
>
app/assets/javascripts/diffs/components/inline_diff_comment_row.vue
浏览文件 @
113f9f33
<
script
>
import
{
mapState
}
from
'
vuex
'
;
import
{
mapState
,
mapGetters
}
from
'
vuex
'
;
import
diffDiscussions
from
'
./diff_discussions.vue
'
;
import
diffLineNoteForm
from
'
./diff_line_note_form.vue
'
;
...
...
@@ -21,16 +21,15 @@ export default {
type
:
Number
,
required
:
true
,
},
discussions
:
{
type
:
Array
,
required
:
false
,
default
:
()
=>
[],
},
},
computed
:
{
...
mapState
({
diffLineCommentForms
:
state
=>
state
.
diffs
.
diffLineCommentForms
,
}),
...
mapGetters
(
'
diffs
'
,
[
'
discussionsByLineCode
'
]),
discussions
()
{
return
this
.
discussionsByLineCode
[
this
.
line
.
lineCode
]
||
[];
},
className
()
{
return
this
.
discussions
.
length
?
''
:
'
js-temp-notes-holder
'
;
},
...
...
app/assets/javascripts/diffs/components/inline_diff_table_row.vue
浏览文件 @
113f9f33
...
...
@@ -33,11 +33,6 @@ export default {
required
:
false
,
default
:
false
,
},
discussions
:
{
type
:
Array
,
required
:
false
,
default
:
()
=>
[],
},
},
data
()
{
return
{
...
...
@@ -94,7 +89,6 @@ export default {
:is-bottom=
"isBottom"
:is-hover=
"isHover"
:show-comment-button=
"true"
:discussions=
"discussions"
class=
"diff-line-num old_line"
/>
<diff-table-cell
...
...
@@ -104,7 +98,6 @@ export default {
:line-type=
"newLineType"
:is-bottom=
"isBottom"
:is-hover=
"isHover"
:discussions=
"discussions"
class=
"diff-line-num new_line"
/>
<td
...
...
app/assets/javascripts/diffs/components/inline_diff_view.vue
浏览文件 @
113f9f33
...
...
@@ -20,11 +20,7 @@ export default {
},
},
computed
:
{
...
mapGetters
(
'
diffs
'
,
[
'
commitId
'
,
'
shouldRenderInlineCommentRow
'
,
'
singleDiscussionByLineCode
'
,
]),
...
mapGetters
(
'
diffs
'
,
[
'
commitId
'
,
'
discussionsByLineCode
'
]),
...
mapState
({
diffLineCommentForms
:
state
=>
state
.
diffs
.
diffLineCommentForms
,
}),
...
...
@@ -38,7 +34,18 @@ export default {
return
window
.
gon
.
user_color_scheme
;
},
},
methods
:
{},
methods
:
{
shouldRenderCommentRow
(
line
)
{
if
(
this
.
diffLineCommentForms
[
line
.
lineCode
])
return
true
;
const
lineDiscussions
=
this
.
discussionsByLineCode
[
line
.
lineCode
];
if
(
lineDiscussions
===
undefined
)
{
return
false
;
}
return
lineDiscussions
.
every
(
discussion
=>
discussion
.
expanded
);
},
},
};
</
script
>
...
...
@@ -57,15 +64,13 @@ export default {
:line=
"line"
:is-bottom=
"index + 1 === diffLinesLength"
:key=
"line.lineCode"
:discussions=
"singleDiscussionByLineCode(line.lineCode)"
/>
<inline-diff-comment-row
v-if=
"shouldRender
Inline
CommentRow(line)"
v-if=
"shouldRenderCommentRow(line)"
:diff-file-hash=
"diffFile.fileHash"
:line=
"line"
:line-index=
"index"
:key=
"index"
:discussions=
"singleDiscussionByLineCode(line.lineCode)"
/>
</
template
>
</tbody>
...
...
app/assets/javascripts/diffs/components/parallel_diff_comment_row.vue
浏览文件 @
113f9f33
<
script
>
import
{
mapState
}
from
'
vuex
'
;
import
{
mapState
,
mapGetters
}
from
'
vuex
'
;
import
diffDiscussions
from
'
./diff_discussions.vue
'
;
import
diffLineNoteForm
from
'
./diff_line_note_form.vue
'
;
...
...
@@ -21,51 +21,48 @@ export default {
type
:
Number
,
required
:
true
,
},
leftDiscussions
:
{
type
:
Array
,
required
:
false
,
default
:
()
=>
[],
},
rightDiscussions
:
{
type
:
Array
,
required
:
false
,
default
:
()
=>
[],
},
},
computed
:
{
...
mapState
({
diffLineCommentForms
:
state
=>
state
.
diffs
.
diffLineCommentForms
,
}),
...
mapGetters
(
'
diffs
'
,
[
'
discussionsByLineCode
'
]),
leftLineCode
()
{
return
this
.
line
.
left
.
lineCode
;
},
rightLineCode
()
{
return
this
.
line
.
right
.
lineCode
;
},
hasDiscussion
()
{
const
discussions
=
this
.
discussionsByLineCode
;
return
discussions
[
this
.
leftLineCode
]
||
discussions
[
this
.
rightLineCode
];
},
hasExpandedDiscussionOnLeft
()
{
const
discussions
=
this
.
leftDiscussions
;
const
discussions
=
this
.
discussionsByLineCode
[
this
.
leftLineCode
];
return
discussions
?
discussions
.
every
(
discussion
=>
discussion
.
expanded
)
:
false
;
},
hasExpandedDiscussionOnRight
()
{
const
discussions
=
this
.
rightDiscussions
;
const
discussions
=
this
.
discussionsByLineCode
[
this
.
rightLineCode
];
return
discussions
?
discussions
.
every
(
discussion
=>
discussion
.
expanded
)
:
false
;
},
hasAnyExpandedDiscussion
()
{
return
this
.
hasExpandedDiscussionOnLeft
||
this
.
hasExpandedDiscussionOnRight
;
},
shouldRenderDiscussionsOnLeft
()
{
return
this
.
leftDiscussions
&&
this
.
hasExpandedDiscussionOnLeft
;
return
this
.
discussionsByLineCode
[
this
.
leftLineCode
]
&&
this
.
hasExpandedDiscussionOnLeft
;
},
shouldRenderDiscussionsOnRight
()
{
return
this
.
rightDiscussions
&&
this
.
hasExpandedDiscussionOnRight
&&
this
.
line
.
right
.
type
;
},
showRightSideCommentForm
()
{
return
this
.
line
.
right
.
type
&&
this
.
diffLineCommentForms
[
this
.
rightLineCode
];
return
(
this
.
discussionsByLineCode
[
this
.
rightLineCode
]
&&
this
.
hasExpandedDiscussionOnRight
&&
this
.
line
.
right
.
type
);
},
className
()
{
return
this
.
leftDiscussions
.
length
>
0
||
this
.
rightDiscussions
.
length
>
0
?
''
:
'
js-temp-notes-holder
'
;
return
this
.
hasDiscussion
?
''
:
'
js-temp-notes-holder
'
;
},
},
};
...
...
@@ -83,12 +80,13 @@ export default {
class=
"content"
>
<diff-discussions
v-if=
"
leftDiscussions
.length"
:discussions=
"
leftDiscussions
"
v-if=
"
discussionsByLineCode[leftLineCode]
.length"
:discussions=
"
discussionsByLineCode[leftLineCode]
"
/>
</div>
<diff-line-note-form
v-if=
"diffLineCommentForms[leftLineCode]"
v-if=
"diffLineCommentForms[leftLineCode] &&
diffLineCommentForms[leftLineCode]"
:diff-file-hash=
"diffFileHash"
:line=
"line.left"
:note-target-line=
"line.left"
...
...
@@ -102,12 +100,13 @@ export default {
class=
"content"
>
<diff-discussions
v-if=
"
rightDiscussions
.length"
:discussions=
"
rightDiscussions
"
v-if=
"
discussionsByLineCode[rightLineCode]
.length"
:discussions=
"
discussionsByLineCode[rightLineCode]
"
/>
</div>
<diff-line-note-form
v-if=
"showRightSideCommentForm"
v-if=
"diffLineCommentForms[rightLineCode] &&
diffLineCommentForms[rightLineCode] && line.right.type"
:diff-file-hash=
"diffFileHash"
:line=
"line.right"
:note-target-line=
"line.right"
...
...
app/assets/javascripts/diffs/components/parallel_diff_table_row.vue
浏览文件 @
113f9f33
...
...
@@ -36,16 +36,6 @@ export default {
required
:
false
,
default
:
false
,
},
leftDiscussions
:
{
type
:
Array
,
required
:
false
,
default
:
()
=>
[],
},
rightDiscussions
:
{
type
:
Array
,
required
:
false
,
default
:
()
=>
[],
},
},
data
()
{
return
{
...
...
@@ -126,7 +116,6 @@ export default {
:is-hover=
"isLeftHover"
:show-comment-button=
"true"
:diff-view-type=
"parallelDiffViewType"
:discussions=
"leftDiscussions"
class=
"diff-line-num old_line"
/>
<td
...
...
@@ -147,7 +136,6 @@ export default {
:is-hover=
"isRightHover"
:show-comment-button=
"true"
:diff-view-type=
"parallelDiffViewType"
:discussions=
"rightDiscussions"
class=
"diff-line-num new_line"
/>
<td
...
...
app/assets/javascripts/diffs/components/parallel_diff_view.vue
浏览文件 @
113f9f33
...
...
@@ -21,11 +21,7 @@ export default {
},
},
computed
:
{
...
mapGetters
(
'
diffs
'
,
[
'
commitId
'
,
'
singleDiscussionByLineCode
'
,
'
shouldRenderParallelCommentRow
'
,
]),
...
mapGetters
(
'
diffs
'
,
[
'
commitId
'
,
'
discussionsByLineCode
'
]),
...
mapState
({
diffLineCommentForms
:
state
=>
state
.
diffs
.
diffLineCommentForms
,
}),
...
...
@@ -55,6 +51,32 @@ export default {
return
window
.
gon
.
user_color_scheme
;
},
},
methods
:
{
shouldRenderCommentRow
(
line
)
{
const
leftLineCode
=
line
.
left
.
lineCode
;
const
rightLineCode
=
line
.
right
.
lineCode
;
const
discussions
=
this
.
discussionsByLineCode
;
const
leftDiscussions
=
discussions
[
leftLineCode
];
const
rightDiscussions
=
discussions
[
rightLineCode
];
const
hasDiscussion
=
leftDiscussions
||
rightDiscussions
;
const
hasExpandedDiscussionOnLeft
=
leftDiscussions
?
leftDiscussions
.
every
(
discussion
=>
discussion
.
expanded
)
:
false
;
const
hasExpandedDiscussionOnRight
=
rightDiscussions
?
rightDiscussions
.
every
(
discussion
=>
discussion
.
expanded
)
:
false
;
if
(
hasDiscussion
&&
(
hasExpandedDiscussionOnLeft
||
hasExpandedDiscussionOnRight
))
{
return
true
;
}
const
hasCommentFormOnLeft
=
this
.
diffLineCommentForms
[
leftLineCode
];
const
hasCommentFormOnRight
=
this
.
diffLineCommentForms
[
rightLineCode
];
return
hasCommentFormOnLeft
||
hasCommentFormOnRight
;
},
},
};
</
script
>
...
...
@@ -75,17 +97,13 @@ export default {
:line=
"line"
:is-bottom=
"index + 1 === diffLinesLength"
:key=
"index"
:left-discussions=
"singleDiscussionByLineCode(line.left.lineCode)"
:right-discussions=
"singleDiscussionByLineCode(line.right.lineCode)"
/>
<parallel-diff-comment-row
v-if=
"shouldRender
Parallel
CommentRow(line)"
v-if=
"shouldRenderCommentRow(line)"
:key=
"`dcr-$
{index}`"
:line="line"
:diff-file-hash="diffFile.fileHash"
:line-index="index"
:left-discussions="singleDiscussionByLineCode(line.left.lineCode)"
:right-discussions="singleDiscussionByLineCode(line.right.lineCode)"
/>
</
template
>
</tbody>
...
...
app/assets/javascripts/diffs/store/getters.js
浏览文件 @
113f9f33
...
...
@@ -75,10 +75,9 @@ export const discussionsByLineCode = (state, getters, rootState, rootGetters) =>
const
isDiffDiscussion
=
note
.
diff_discussion
;
const
hasLineCode
=
note
.
line_code
;
const
isResolvable
=
note
.
resolvable
;
if
(
isDiffDiscussion
&&
hasLineCode
&&
isResolvable
)
{
const
diffRefs
=
diffRefsByLineCode
[
note
.
line_code
];
if
(
diffRefs
)
{
if
(
isDiffDiscussion
&&
hasLineCode
&&
isResolvable
&&
diffRefs
)
{
const
refs
=
convertObjectPropsToCamelCase
(
note
.
position
.
formatter
);
const
originalRefs
=
convertObjectPropsToCamelCase
(
note
.
original_position
.
formatter
);
...
...
@@ -92,53 +91,11 @@ export const discussionsByLineCode = (state, getters, rootState, rootGetters) =>
}
}
}
}
return
acc
;
},
{});
};
export
const
singleDiscussionByLineCode
=
(
state
,
getters
)
=>
lineCode
=>
{
if
(
!
lineCode
)
return
[];
const
discussions
=
getters
.
discussionsByLineCode
;
return
discussions
[
lineCode
]
||
[];
};
export
const
shouldRenderParallelCommentRow
=
(
state
,
getters
)
=>
line
=>
{
const
leftLineCode
=
line
.
left
.
lineCode
;
const
rightLineCode
=
line
.
right
.
lineCode
;
const
leftDiscussions
=
getters
.
singleDiscussionByLineCode
(
leftLineCode
);
const
rightDiscussions
=
getters
.
singleDiscussionByLineCode
(
rightLineCode
);
const
hasDiscussion
=
leftDiscussions
.
length
||
rightDiscussions
.
length
;
const
hasExpandedDiscussionOnLeft
=
leftDiscussions
.
length
?
leftDiscussions
.
every
(
discussion
=>
discussion
.
expanded
)
:
false
;
const
hasExpandedDiscussionOnRight
=
rightDiscussions
.
length
?
rightDiscussions
.
every
(
discussion
=>
discussion
.
expanded
)
:
false
;
if
(
hasDiscussion
&&
(
hasExpandedDiscussionOnLeft
||
hasExpandedDiscussionOnRight
))
{
return
true
;
}
const
hasCommentFormOnLeft
=
state
.
diffLineCommentForms
[
leftLineCode
];
const
hasCommentFormOnRight
=
state
.
diffLineCommentForms
[
rightLineCode
];
return
hasCommentFormOnLeft
||
hasCommentFormOnRight
;
};
export
const
shouldRenderInlineCommentRow
=
(
state
,
getters
)
=>
line
=>
{
if
(
state
.
diffLineCommentForms
[
line
.
lineCode
])
return
true
;
const
lineDiscussions
=
getters
.
singleDiscussionByLineCode
(
line
.
lineCode
);
if
(
lineDiscussions
.
length
===
0
)
{
return
false
;
}
return
lineDiscussions
.
every
(
discussion
=>
discussion
.
expanded
);
};
// prevent babel-plugin-rewire from generating an invalid default during karma∂ tests
export
const
getDiffFileByHash
=
state
=>
fileHash
=>
state
.
diffFiles
.
find
(
file
=>
file
.
fileHash
===
fileHash
);
...
...
spec/javascripts/diffs/components/diff_line_gutter_content_spec.js
浏览文件 @
113f9f33
...
...
@@ -50,11 +50,7 @@ describe('DiffLineGutterContent', () => {
it
(
'
should return discussions for the given lineCode
'
,
()
=>
{
const
{
lineCode
}
=
getDiffFileMock
().
highlightedDiffLines
[
1
];
const
component
=
createComponent
({
lineCode
,
showCommentButton
:
true
,
discussions
:
getDiscussionsMockData
(),
});
const
component
=
createComponent
({
lineCode
,
showCommentButton
:
true
});
setDiscussions
(
component
);
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录