Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2023-01-30 06:07:44 +0300
committerGitLab Bot <gitlab-bot@gitlab.com>2023-01-30 06:07:44 +0300
commita56c206075c757ef6ecd5a5a3803d5e03379d369 (patch)
tree94a04a25ce0875d5321b73a8f93e155921547b62 /app/models
parent54b6249f1725d3d36376977a18bdc509557309f3 (diff)
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'app/models')
-rw-r--r--app/models/work_item.rb10
-rw-r--r--app/models/work_items/widgets/assignees.rb8
-rw-r--r--app/models/work_items/widgets/base.rb4
-rw-r--r--app/models/work_items/widgets/labels.rb8
-rw-r--r--app/models/work_items/widgets/start_and_due_date.rb8
5 files changed, 38 insertions, 0 deletions
diff --git a/app/models/work_item.rb b/app/models/work_item.rb
index f94e831437a..be090b09425 100644
--- a/app/models/work_item.rb
+++ b/app/models/work_item.rb
@@ -3,6 +3,10 @@
class WorkItem < Issue
include Gitlab::Utils::StrongMemoize
+ COMMON_QUICK_ACTIONS_COMMANDS = [
+ :title, :reopen, :close, :cc, :tableflip, :shrug
+ ].freeze
+
self.table_name = 'issues'
self.inheritance_column = :_type_disabled
@@ -52,6 +56,12 @@ class WorkItem < Issue
hierarchy(same_type: true).max_descendants_depth.to_i
end
+ def supported_quick_action_commands
+ commands_for_widgets = widgets.map(&:class).flat_map(&:quick_action_commands).uniq
+
+ COMMON_QUICK_ACTIONS_COMMANDS + commands_for_widgets
+ end
+
private
override :parent_link_confidentiality
diff --git a/app/models/work_items/widgets/assignees.rb b/app/models/work_items/widgets/assignees.rb
index ecbbee1bcfb..0707b03e647 100644
--- a/app/models/work_items/widgets/assignees.rb
+++ b/app/models/work_items/widgets/assignees.rb
@@ -5,6 +5,14 @@ module WorkItems
class Assignees < Base
delegate :assignees, to: :work_item
delegate :allows_multiple_assignees?, to: :work_item
+
+ def self.quick_action_commands
+ [:assign, :unassign, :reassign]
+ end
+
+ def self.quick_action_params
+ [:assignee_ids]
+ end
end
end
end
diff --git a/app/models/work_items/widgets/base.rb b/app/models/work_items/widgets/base.rb
index e7075a7a0e8..3a5b03bd514 100644
--- a/app/models/work_items/widgets/base.rb
+++ b/app/models/work_items/widgets/base.rb
@@ -11,6 +11,10 @@ module WorkItems
"#{type}_widget".to_sym
end
+ def self.quick_action_commands
+ []
+ end
+
def type
self.class.type
end
diff --git a/app/models/work_items/widgets/labels.rb b/app/models/work_items/widgets/labels.rb
index 4ad8319ffac..e8b36156fec 100644
--- a/app/models/work_items/widgets/labels.rb
+++ b/app/models/work_items/widgets/labels.rb
@@ -5,6 +5,14 @@ module WorkItems
class Labels < Base
delegate :labels, to: :work_item
delegate :allows_scoped_labels?, to: :work_item
+
+ def self.quick_action_commands
+ [:label, :labels, :relabel, :remove_label, :unlabel]
+ end
+
+ def self.quick_action_params
+ [:add_label_ids, :remove_label_ids, :label_ids]
+ end
end
end
end
diff --git a/app/models/work_items/widgets/start_and_due_date.rb b/app/models/work_items/widgets/start_and_due_date.rb
index 0b828c5b5a9..22ef262534e 100644
--- a/app/models/work_items/widgets/start_and_due_date.rb
+++ b/app/models/work_items/widgets/start_and_due_date.rb
@@ -4,6 +4,14 @@ module WorkItems
module Widgets
class StartAndDueDate < Base
delegate :start_date, :due_date, to: :work_item
+
+ def self.quick_action_commands
+ [:due, :remove_due_date]
+ end
+
+ def self.quick_action_params
+ [:due_date]
+ end
end
end
end