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-10-17 12:12:03 +0300
committerGitLab Bot <gitlab-bot@gitlab.com>2023-10-17 12:12:03 +0300
commit550096a3bf94b5d8e2b74dc8f94fbb0c579a7313 (patch)
treeca0d548e9a1c369df1a07a60ef0a26503653e00e /app/presenters/vs_code
parent600cd0747bbb2c1f089785572a159cce6c4ce806 (diff)
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'app/presenters/vs_code')
-rw-r--r--app/presenters/vs_code/settings/vs_code_manifest_presenter.rb31
-rw-r--r--app/presenters/vs_code/settings/vs_code_setting_presenter.rb29
2 files changed, 60 insertions, 0 deletions
diff --git a/app/presenters/vs_code/settings/vs_code_manifest_presenter.rb b/app/presenters/vs_code/settings/vs_code_manifest_presenter.rb
new file mode 100644
index 00000000000..a8cb5de10a2
--- /dev/null
+++ b/app/presenters/vs_code/settings/vs_code_manifest_presenter.rb
@@ -0,0 +1,31 @@
+# frozen_string_literal: true
+
+module VsCode
+ module Settings
+ class VsCodeManifestPresenter < Gitlab::View::Presenter::Simple
+ attr_reader :settings
+
+ def initialize(settings)
+ @settings = settings
+ end
+
+ def latest
+ latest_settings_map = {}
+ # There is a default machine stored
+ latest_settings_map['machines'] = DEFAULT_MACHINE[:uuid]
+
+ return latest_settings_map if settings.empty?
+
+ persisted_settings = settings.each_with_object({}) do |setting, hash|
+ hash[setting.setting_type] = setting.uuid
+ end
+
+ latest_settings_map.merge(persisted_settings)
+ end
+
+ def session
+ DEFAULT_SESSION
+ end
+ end
+ end
+end
diff --git a/app/presenters/vs_code/settings/vs_code_setting_presenter.rb b/app/presenters/vs_code/settings/vs_code_setting_presenter.rb
new file mode 100644
index 00000000000..246bebf6099
--- /dev/null
+++ b/app/presenters/vs_code/settings/vs_code_setting_presenter.rb
@@ -0,0 +1,29 @@
+# frozen_string_literal: true
+
+module VsCode
+ module Settings
+ class VsCodeSettingPresenter < Gitlab::View::Presenter::Simple
+ attr_reader :setting
+
+ def initialize(setting)
+ @setting = setting
+ end
+
+ def content
+ @setting[:setting_type] == 'machines' ? nil : @setting.content
+ end
+
+ def machines
+ @setting[:setting_type] == 'machines' ? @setting[:machines] : nil
+ end
+
+ def version
+ @setting[:version]
+ end
+
+ def machine_id
+ DEFAULT_MACHINE[:uuid] if @setting[:setting_type] != 'machines'
+ end
+ end
+ end
+end