summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJacob Schatz <jschatz@gitlab.com>2018-01-22 18:20:13 +0000
committerJacob Schatz <jschatz@gitlab.com>2018-01-22 18:20:13 +0000
commit7312e8a78f7ef6ba407eda65f44c01bdd52ec929 (patch)
tree0791ee716b3034afea6a2cc6151fc144b561338f
parent00aaf50326c16835983d45015e6594fbabe013ef (diff)
parentc166960a6416901ee899c12025ff19736566e031 (diff)
downloadgitlab-ce-7312e8a78f7ef6ba407eda65f44c01bdd52ec929.tar.gz
Merge branch 'projects-r-s' into 'master'
refactor for projects-r*, s* See merge request gitlab-org/gitlab-ce!16351
-rw-r--r--app/assets/javascripts/dispatcher.js64
-rw-r--r--app/assets/javascripts/pages/projects/init_form.js7
-rw-r--r--app/assets/javascripts/pages/projects/releases/edit/index.js3
-rw-r--r--app/assets/javascripts/pages/projects/settings/ci_cd/show/index.js18
-rw-r--r--app/assets/javascripts/pages/projects/settings/repository/show/index.js3
-rw-r--r--app/assets/javascripts/pages/projects/show/index.js23
-rw-r--r--app/assets/javascripts/pages/projects/snippets/edit/index.js3
-rw-r--r--app/assets/javascripts/pages/projects/snippets/new/index.js3
-rw-r--r--app/assets/javascripts/pages/projects/snippets/show/index.js7
9 files changed, 93 insertions, 38 deletions
diff --git a/app/assets/javascripts/dispatcher.js b/app/assets/javascripts/dispatcher.js
index ed7010d6286..c390ed5ad93 100644
--- a/app/assets/javascripts/dispatcher.js
+++ b/app/assets/javascripts/dispatcher.js
@@ -1,31 +1,24 @@
/* eslint-disable func-names, space-before-function-paren, no-var, prefer-arrow-callback, wrap-iife, no-shadow, consistent-return, one-var, one-var-declaration-per-line, camelcase, default-case, no-new, quotes, no-duplicate-case, no-case-declarations, no-fallthrough, max-len */
import Milestone from './milestone';
-import NotificationsForm from './notifications_form';
import notificationsDropdown from './notifications_dropdown';
import LineHighlighter from './line_highlighter';
import MergeRequest from './merge_request';
import Sidebar from './right_sidebar';
import Flash from './flash';
-import SecretValues from './behaviors/secret_values';
import UserCallout from './user_callout';
import BlobViewer from './blob/viewer/index';
import GfmAutoComplete from './gfm_auto_complete';
import Star from './star';
-import TreeView from './tree';
import ZenMode from './zen_mode';
-import initSettingsPanels from './settings_panels';
import PerformanceBar from './performance_bar';
import initNotes from './init_notes';
import initIssuableSidebar from './init_issuable_sidebar';
-import { ajaxGet, convertPermissionToBoolean } from './lib/utils/common_utils';
+import { convertPermissionToBoolean } from './lib/utils/common_utils';
import GlFieldErrors from './gl_field_errors';
-import GLForm from './gl_form';
import Shortcuts from './shortcuts';
-import ShortcutsNavigation from './shortcuts_navigation';
import ShortcutsIssuable from './shortcuts_issuable';
import Diff from './diff';
import SearchAutocomplete from './search_autocomplete';
-import Activities from './activities';
(function() {
var Dispatcher;
@@ -233,15 +226,21 @@ import Activities from './activities';
.catch(fail);
break;
case 'projects:snippets:show':
- initNotes();
- new ZenMode();
+ import('./pages/projects/snippets/show')
+ .then(callDefault)
+ .catch(fail);
break;
case 'projects:snippets:new':
- case 'projects:snippets:edit':
case 'projects:snippets:create':
+ import('./pages/projects/snippets/new')
+ .then(callDefault)
+ .catch(fail);
+ break;
+ case 'projects:snippets:edit':
case 'projects:snippets:update':
- new GLForm($('.snippet-form'), true);
- new ZenMode();
+ import('./pages/projects/snippets/edit')
+ .then(callDefault)
+ .catch(fail);
break;
case 'snippets:new':
import('./pages/snippets/new')
@@ -264,8 +263,9 @@ import Activities from './activities';
.catch(fail);
break;
case 'projects:releases:edit':
- new ZenMode();
- new GLForm($('.release-form'), true);
+ import('./pages/projects/releases/edit')
+ .then(callDefault)
+ .catch(fail);
break;
case 'projects:merge_requests:show':
new Diff();
@@ -309,19 +309,10 @@ import Activities from './activities';
shortcut_handler = true;
break;
case 'projects:show':
- shortcut_handler = new ShortcutsNavigation();
- new NotificationsForm();
- new UserCallout({
- setCalloutPerProject: true,
- className: 'js-autodevops-banner',
- });
-
- if ($('#tree-slider').length) new TreeView();
- if ($('.blob-viewer').length) new BlobViewer();
- if ($('.project-show-activity').length) new Activities();
- $('#tree-slider').waitForImages(function() {
- ajaxGet(document.querySelector('.js-tree-content').dataset.logsPath);
- });
+ import('./pages/projects/show')
+ .then(callDefault)
+ .catch(fail);
+ shortcut_handler = true;
break;
case 'projects:edit':
import('./pages/projects/edit')
@@ -476,18 +467,15 @@ import Activities from './activities';
.catch(fail);
break;
case 'projects:settings:repository:show':
- // Initialize expandable settings panels
- initSettingsPanels();
+ import('./pages/projects/settings/repository/show')
+ .then(callDefault)
+ .catch(fail);
break;
case 'projects:settings:ci_cd:show':
- // Initialize expandable settings panels
- initSettingsPanels();
-
- const runnerToken = document.querySelector('.js-secret-runner-token');
- if (runnerToken) {
- const runnerTokenSecretValue = new SecretValues(runnerToken);
- runnerTokenSecretValue.init();
- }
+ import('./pages/projects/settings/ci_cd/show')
+ .then(callDefault)
+ .catch(fail);
+ break;
case 'groups:settings:ci_cd:show':
import('./pages/groups/settings/ci_cd/show')
.then(callDefault)
diff --git a/app/assets/javascripts/pages/projects/init_form.js b/app/assets/javascripts/pages/projects/init_form.js
new file mode 100644
index 00000000000..0b6c5c1d30b
--- /dev/null
+++ b/app/assets/javascripts/pages/projects/init_form.js
@@ -0,0 +1,7 @@
+import ZenMode from '~/zen_mode';
+import GLForm from '~/gl_form';
+
+export default function ($formEl) {
+ new ZenMode(); // eslint-disable-line no-new
+ new GLForm($formEl, true); // eslint-disable-line no-new
+}
diff --git a/app/assets/javascripts/pages/projects/releases/edit/index.js b/app/assets/javascripts/pages/projects/releases/edit/index.js
new file mode 100644
index 00000000000..3d997cdfff0
--- /dev/null
+++ b/app/assets/javascripts/pages/projects/releases/edit/index.js
@@ -0,0 +1,3 @@
+import initForm from '~/pages/projects/init_form';
+
+export default initForm($('.release-form'));
diff --git a/app/assets/javascripts/pages/projects/settings/ci_cd/show/index.js b/app/assets/javascripts/pages/projects/settings/ci_cd/show/index.js
new file mode 100644
index 00000000000..94b927a1548
--- /dev/null
+++ b/app/assets/javascripts/pages/projects/settings/ci_cd/show/index.js
@@ -0,0 +1,18 @@
+import initSettingsPanels from '~/settings_panels';
+import SecretValues from '~/behaviors/secret_values';
+
+export default function () {
+ // Initialize expandable settings panels
+ initSettingsPanels();
+ const runnerToken = document.querySelector('.js-secret-runner-token');
+ if (runnerToken) {
+ const runnerTokenSecretValue = new SecretValues(runnerToken);
+ runnerTokenSecretValue.init();
+ }
+
+ const secretVariableTable = document.querySelector('.js-secret-variable-table');
+ if (secretVariableTable) {
+ const secretVariableTableValues = new SecretValues(secretVariableTable);
+ secretVariableTableValues.init();
+ }
+}
diff --git a/app/assets/javascripts/pages/projects/settings/repository/show/index.js b/app/assets/javascripts/pages/projects/settings/repository/show/index.js
new file mode 100644
index 00000000000..83b5467fbc0
--- /dev/null
+++ b/app/assets/javascripts/pages/projects/settings/repository/show/index.js
@@ -0,0 +1,3 @@
+import initSettingsPanels from '~/settings_panels';
+
+export default initSettingsPanels;
diff --git a/app/assets/javascripts/pages/projects/show/index.js b/app/assets/javascripts/pages/projects/show/index.js
new file mode 100644
index 00000000000..92dc1e59651
--- /dev/null
+++ b/app/assets/javascripts/pages/projects/show/index.js
@@ -0,0 +1,23 @@
+import ShortcutsNavigation from '~/shortcuts_navigation';
+import NotificationsForm from '~/notifications_form';
+import UserCallout from '~/user_callout';
+import TreeView from '~/tree';
+import BlobViewer from '~/blob/viewer/index';
+import Activities from '~/activities';
+import { ajaxGet } from '~/lib/utils/common_utils';
+
+export default () => {
+ new ShortcutsNavigation(); // eslint-disable-line no-new
+ new NotificationsForm(); // eslint-disable-line no-new
+ new UserCallout({ // eslint-disable-line no-new
+ setCalloutPerProject: true,
+ className: 'js-autodevops-banner',
+ });
+
+ if ($('#tree-slider').length) new TreeView(); // eslint-disable-line no-new
+ if ($('.blob-viewer').length) new BlobViewer(); // eslint-disable-line no-new
+ if ($('.project-show-activity').length) new Activities(); // eslint-disable-line no-new
+ $('#tree-slider').waitForImages(() => {
+ ajaxGet(document.querySelector('.js-tree-content').dataset.logsPath);
+ });
+};
diff --git a/app/assets/javascripts/pages/projects/snippets/edit/index.js b/app/assets/javascripts/pages/projects/snippets/edit/index.js
new file mode 100644
index 00000000000..9edb16dc73b
--- /dev/null
+++ b/app/assets/javascripts/pages/projects/snippets/edit/index.js
@@ -0,0 +1,3 @@
+import initForm from '~/pages/projects/init_form';
+
+export default initForm($('.snippet-form'));
diff --git a/app/assets/javascripts/pages/projects/snippets/new/index.js b/app/assets/javascripts/pages/projects/snippets/new/index.js
new file mode 100644
index 00000000000..9edb16dc73b
--- /dev/null
+++ b/app/assets/javascripts/pages/projects/snippets/new/index.js
@@ -0,0 +1,3 @@
+import initForm from '~/pages/projects/init_form';
+
+export default initForm($('.snippet-form'));
diff --git a/app/assets/javascripts/pages/projects/snippets/show/index.js b/app/assets/javascripts/pages/projects/snippets/show/index.js
new file mode 100644
index 00000000000..d8cf5184f8f
--- /dev/null
+++ b/app/assets/javascripts/pages/projects/snippets/show/index.js
@@ -0,0 +1,7 @@
+import initNotes from '~/init_notes';
+import ZenMode from '~/zen_mode';
+
+export default function () {
+ initNotes();
+ new ZenMode(); // eslint-disable-line no-new
+}