summaryrefslogtreecommitdiff
path: root/app/assets/javascripts/line_comments/components/all_lines.js.coffee
diff options
context:
space:
mode:
Diffstat (limited to 'app/assets/javascripts/line_comments/components/all_lines.js.coffee')
-rw-r--r--app/assets/javascripts/line_comments/components/all_lines.js.coffee28
1 files changed, 28 insertions, 0 deletions
diff --git a/app/assets/javascripts/line_comments/components/all_lines.js.coffee b/app/assets/javascripts/line_comments/components/all_lines.js.coffee
new file mode 100644
index 00000000000..bcdbae8e02e
--- /dev/null
+++ b/app/assets/javascripts/line_comments/components/all_lines.js.coffee
@@ -0,0 +1,28 @@
+@AllLines =
+ controller: (args) ->
+ @noteIds = m.prop(args.noteIds || [])
+ @resolvedCount = m.prop(args.resolvedNoteIds || [])
+ @resolvedtext = m.prop =>
+ "#{@resolvedCount().length}/#{@noteIds().length} comments resolved"
+ @resolveButtontext = m.prop =>
+ 'Resolve all line comments'
+
+ LinesObserver.register (resolved, noteId) =>
+ if resolved
+ @resolvedCount().push noteId
+ else
+ @resolvedCount().splice @resolvedCount().indexOf(noteId), 1
+ return
+ view: (ctrl) ->
+ m('div',
+ class: 'line-resolve-all'
+ ,[
+ m('button',
+ 'aria-label': ctrl.resolveButtontext()()
+ class: 'btn btn-gray'
+ type: 'button'
+ , ctrl.resolveButtontext()())
+ m('span',
+ class: 'line-resolve-text'
+ , ctrl.resolvedtext()())
+ ])