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:
authorFilipa Lacerda <filipa@gitlab.com>2017-03-27 19:37:26 +0300
committerFilipa Lacerda <filipa@gitlab.com>2017-03-28 16:10:31 +0300
commitadec9194ef9b825a3a79dc262975987012639f23 (patch)
tree5f6fdbb87e3baadeff1b24931dcfcbae69402569 /app/assets/javascripts/environments/stores
parentf6f56dddfcfed352dfba8dc32dad554096552a7d (diff)
Adds expandable folder back.
Makes request to get environments
Diffstat (limited to 'app/assets/javascripts/environments/stores')
-rw-r--r--app/assets/javascripts/environments/stores/environments_store.js38
1 files changed, 36 insertions, 2 deletions
diff --git a/app/assets/javascripts/environments/stores/environments_store.js b/app/assets/javascripts/environments/stores/environments_store.js
index f05fe6e60ae..a1c0988f1f5 100644
--- a/app/assets/javascripts/environments/stores/environments_store.js
+++ b/app/assets/javascripts/environments/stores/environments_store.js
@@ -38,7 +38,12 @@ export default class EnvironmentsStore {
let filtered = {};
if (env.size > 1) {
- filtered = Object.assign({}, env, { isFolder: true, folderName: env.name });
+ filtered = Object.assign({}, env, {
+ isFolder: true,
+ folderName: env.name,
+ isOpen: false,
+ children: [],
+ });
}
if (env.latest) {
@@ -86,7 +91,36 @@ export default class EnvironmentsStore {
return count;
}
- toggleRow(name) {
+ /**
+ * Toggles folder open property given the given folder.
+ *
+ * @param {String} envType
+ * @return {Array}
+ */
+ toggleFolder(folder) {
+ return this.updateFolder(folder, 'isOpen', !folder.isOpen);
+ }
+ folderContent(folder, environments) {
+ debugger;
+ return this.updateFolder(folder, 'children', environments);
}
+
+ updateFolder(folder, prop, newValue) {
+ const environments = this.state.environments;
+ debugger;
+ const updatedEnvironments = environments.map((env) => {
+ const updateEnv = Object.assign({}, env);
+ if (env.isFolder && env.id === folder.id) {
+ updateEnv[prop] = newValue;
+ }
+
+ return updateEnv;
+ });
+ debugger;
+
+ console.log(updatedEnvironments);
+ this.state.environments = updatedEnvironments;
+ }
+
}