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>2020-02-06 15:10:29 +0300
committerGitLab Bot <gitlab-bot@gitlab.com>2020-02-06 15:10:29 +0300
commit5564275a0b378298dc6281599cbfe71a937109ff (patch)
treea468e1e60046356410219c35c23a8a428c5e2c5e /lib/gitlab/tab_width.rb
parentd87918510a866a5fcbbc2f899ad65c6938ebf5f5 (diff)
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'lib/gitlab/tab_width.rb')
-rw-r--r--lib/gitlab/tab_width.rb29
1 files changed, 29 insertions, 0 deletions
diff --git a/lib/gitlab/tab_width.rb b/lib/gitlab/tab_width.rb
new file mode 100644
index 00000000000..d33723a2106
--- /dev/null
+++ b/lib/gitlab/tab_width.rb
@@ -0,0 +1,29 @@
+# frozen_string_literal: true
+
+module Gitlab
+ module TabWidth
+ extend self
+
+ MIN = 1
+ MAX = 12
+ DEFAULT = 8
+
+ def css_class_for_user(user)
+ return css_class_for_value(DEFAULT) unless user
+
+ css_class_for_value(user.tab_width)
+ end
+
+ private
+
+ def css_class_for_value(value)
+ raise ArgumentError unless in_range?(value)
+
+ "tab-width-#{value}"
+ end
+
+ def in_range?(value)
+ (MIN..MAX).cover?(value)
+ end
+ end
+end