diff options
4 files changed, 41 insertions, 2 deletions
diff --git a/app/assets/javascripts/dispatcher.js b/app/assets/javascripts/dispatcher.js index e35f53081ec..0794edd5f69 100644 --- a/app/assets/javascripts/dispatcher.js +++ b/app/assets/javascripts/dispatcher.js @@ -483,11 +483,21 @@ import Activities from './activities'; case 'groups:labels:new': case 'groups:labels:edit': case 'projects:labels:new': + import('./pages/projects/labels/new') + .then(callDefault) + .catch(fail); + break; case 'projects:labels:edit': - new Labels(); + import('./pages/projects/labels/new') + .then(callDefault) + .catch(fail); break; - case 'groups:labels:index': case 'projects:labels:index': + import('./pages/projects/labels/index') + .then(callDefault) + .catch(fail); + break; + case 'groups:labels:index': if ($('.prioritized-labels').length) { new LabelManager(); } diff --git a/app/assets/javascripts/pages/projects/labels/edit/index.js b/app/assets/javascripts/pages/projects/labels/edit/index.js new file mode 100644 index 00000000000..75dc1ef1859 --- /dev/null +++ b/app/assets/javascripts/pages/projects/labels/edit/index.js @@ -0,0 +1,5 @@ +import Labels from '~/labels'; + +export default function () { + new Labels(); // eslint-disable-line no-new +} diff --git a/app/assets/javascripts/pages/projects/labels/index/index.js b/app/assets/javascripts/pages/projects/labels/index/index.js new file mode 100644 index 00000000000..c258be4f908 --- /dev/null +++ b/app/assets/javascripts/pages/projects/labels/index/index.js @@ -0,0 +1,19 @@ +/* eslint-disable no-new */ +import LabelManager from '~/label_manager'; +import GroupLabelSubscription from '~/group_label_subscription'; +import ProjectLabelSubscription from '~/project_label_subscription'; + +export default () => { + if ($('.prioritized-labels').length) { + new LabelManager(); + } + $('.label-subscription').each((i, el) => { + const $el = $(el); + + if ($el.find('.dropdown-group-label').length) { + new GroupLabelSubscription($el); + } else { + new ProjectLabelSubscription($el); + } + }); +}; diff --git a/app/assets/javascripts/pages/projects/labels/new/index.js b/app/assets/javascripts/pages/projects/labels/new/index.js new file mode 100644 index 00000000000..75dc1ef1859 --- /dev/null +++ b/app/assets/javascripts/pages/projects/labels/new/index.js @@ -0,0 +1,5 @@ +import Labels from '~/labels'; + +export default function () { + new Labels(); // eslint-disable-line no-new +} |