diff options
Diffstat (limited to 'app/assets/javascripts/pages/groups')
16 files changed, 60 insertions, 48 deletions
diff --git a/app/assets/javascripts/pages/groups/boards/index.js b/app/assets/javascripts/pages/groups/boards/index.js index 922f39627c9..bde0007ec6a 100644 --- a/app/assets/javascripts/pages/groups/boards/index.js +++ b/app/assets/javascripts/pages/groups/boards/index.js @@ -1,6 +1,6 @@ -import UsersSelect from '~/users_select'; import ShortcutsNavigation from '~/behaviors/shortcuts/shortcuts_navigation'; import initBoards from '~/boards'; +import UsersSelect from '~/users_select'; new UsersSelect(); // eslint-disable-line no-new new ShortcutsNavigation(); // eslint-disable-line no-new diff --git a/app/assets/javascripts/pages/groups/clusters/index.js b/app/assets/javascripts/pages/groups/clusters/index.js index 9f466e0d60a..d5ce5d076a2 100644 --- a/app/assets/javascripts/pages/groups/clusters/index.js +++ b/app/assets/javascripts/pages/groups/clusters/index.js @@ -1,5 +1,5 @@ -import initCreateCluster from '~/create_cluster/init_create_cluster'; import initIntegrationForm from '~/clusters/forms/show/index'; +import initCreateCluster from '~/create_cluster/init_create_cluster'; document.addEventListener('DOMContentLoaded', () => { initCreateCluster(document, gon); diff --git a/app/assets/javascripts/pages/groups/clusters/index/index.js b/app/assets/javascripts/pages/groups/clusters/index/index.js index 744be65bfbe..a99e0dfa4f0 100644 --- a/app/assets/javascripts/pages/groups/clusters/index/index.js +++ b/app/assets/javascripts/pages/groups/clusters/index/index.js @@ -1,5 +1,5 @@ -import PersistentUserCallout from '~/persistent_user_callout'; import initClustersListApp from '~/clusters_list'; +import PersistentUserCallout from '~/persistent_user_callout'; document.addEventListener('DOMContentLoaded', () => { const callout = document.querySelector('.gcp-signup-offer'); diff --git a/app/assets/javascripts/pages/groups/edit/index.js b/app/assets/javascripts/pages/groups/edit/index.js index 33e552cd1ba..95ee512b71a 100644 --- a/app/assets/javascripts/pages/groups/edit/index.js +++ b/app/assets/javascripts/pages/groups/edit/index.js @@ -1,13 +1,13 @@ -import initFilePickers from '~/file_pickers'; -import TransferDropdown from '~/groups/transfer_dropdown'; +import { GROUP_BADGE } from '~/badges/constants'; import initConfirmDangerModal from '~/confirm_danger_modal'; -import initSettingsPanels from '~/settings_panels'; -import setupTransferEdit from '~/transfer_edit'; import dirtySubmitFactory from '~/dirty_submit/dirty_submit_factory'; -import mountBadgeSettings from '~/pages/shared/mount_badge_settings'; -import { GROUP_BADGE } from '~/badges/constants'; +import initFilePickers from '~/file_pickers'; +import TransferDropdown from '~/groups/transfer_dropdown'; import groupsSelect from '~/groups_select'; +import mountBadgeSettings from '~/pages/shared/mount_badge_settings'; import projectSelect from '~/project_select'; +import initSettingsPanels from '~/settings_panels'; +import setupTransferEdit from '~/transfer_edit'; document.addEventListener('DOMContentLoaded', () => { initFilePickers(); diff --git a/app/assets/javascripts/pages/groups/group_members/index.js b/app/assets/javascripts/pages/groups/group_members/index.js index 5346e3720e8..3496f699b06 100644 --- a/app/assets/javascripts/pages/groups/group_members/index.js +++ b/app/assets/javascripts/pages/groups/group_members/index.js @@ -1,13 +1,14 @@ import Vue from 'vue'; -import memberExpirationDate from '~/member_expiration_date'; -import UsersSelect from '~/users_select'; +import { groupMemberRequestFormatter } from '~/groups/members/utils'; import groupsSelect from '~/groups_select'; -import RemoveMemberModal from '~/vue_shared/components/remove_member_modal.vue'; -import { initGroupMembersApp } from '~/groups/members'; import initInviteMembersModal from '~/invite_members/init_invite_members_modal'; import initInviteMembersTrigger from '~/invite_members/init_invite_members_trigger'; -import { memberRequestFormatter, groupLinkRequestFormatter } from '~/groups/members/utils'; import { s__ } from '~/locale'; +import memberExpirationDate from '~/member_expiration_date'; +import { initMembersApp } from '~/members/index'; +import { groupLinkRequestFormatter } from '~/members/utils'; +import UsersSelect from '~/users_select'; +import RemoveMemberModal from '~/vue_shared/components/remove_member_modal.vue'; function mountRemoveMemberModal() { const el = document.querySelector('.js-remove-member-modal'); @@ -25,11 +26,11 @@ function mountRemoveMemberModal() { const SHARED_FIELDS = ['account', 'expires', 'maxRole', 'expiration', 'actions']; -initGroupMembersApp(document.querySelector('.js-group-members-list'), { +initMembersApp(document.querySelector('.js-group-members-list'), { tableFields: SHARED_FIELDS.concat(['source', 'granted']), tableAttrs: { tr: { 'data-qa-selector': 'member_row' } }, tableSortableFields: ['account', 'granted', 'maxRole', 'lastSignIn'], - requestFormatter: memberRequestFormatter, + requestFormatter: groupMemberRequestFormatter, filteredSearchBar: { show: true, tokens: ['two_factor', 'with_inherited_permissions'], @@ -38,7 +39,8 @@ initGroupMembersApp(document.querySelector('.js-group-members-list'), { recentSearchesStorageKey: 'group_members', }, }); -initGroupMembersApp(document.querySelector('.js-group-linked-list'), { + +initMembersApp(document.querySelector('.js-group-group-links-list'), { tableFields: SHARED_FIELDS.concat('granted'), tableAttrs: { table: { 'data-qa-selector': 'groups_list' }, @@ -46,9 +48,9 @@ initGroupMembersApp(document.querySelector('.js-group-linked-list'), { }, requestFormatter: groupLinkRequestFormatter, }); -initGroupMembersApp(document.querySelector('.js-group-invited-members-list'), { +initMembersApp(document.querySelector('.js-group-invited-members-list'), { tableFields: SHARED_FIELDS.concat('invited'), - requestFormatter: memberRequestFormatter, + requestFormatter: groupMemberRequestFormatter, filteredSearchBar: { show: true, tokens: [], @@ -57,9 +59,9 @@ initGroupMembersApp(document.querySelector('.js-group-invited-members-list'), { recentSearchesStorageKey: 'group_invited_members', }, }); -initGroupMembersApp(document.querySelector('.js-group-access-requests-list'), { +initMembersApp(document.querySelector('.js-group-access-requests-list'), { tableFields: SHARED_FIELDS.concat('requested'), - requestFormatter: memberRequestFormatter, + requestFormatter: groupMemberRequestFormatter, }); groupsSelect(); diff --git a/app/assets/javascripts/pages/groups/issues/index.js b/app/assets/javascripts/pages/groups/issues/index.js index 5cb21ca61ab..b60607e8857 100644 --- a/app/assets/javascripts/pages/groups/issues/index.js +++ b/app/assets/javascripts/pages/groups/issues/index.js @@ -1,10 +1,10 @@ import IssuableFilteredSearchTokenKeys from 'ee_else_ce/filtered_search/issuable_filtered_search_token_keys'; -import initIssuablesList from '~/issues_list'; -import projectSelect from '~/project_select'; -import initFilteredSearch from '~/pages/search/init_filtered_search'; import issuableInitBulkUpdateSidebar from '~/issuable_init_bulk_update_sidebar'; -import { FILTERED_SEARCH } from '~/pages/constants'; +import initIssuablesList from '~/issues_list'; import initManualOrdering from '~/manual_ordering'; +import { FILTERED_SEARCH } from '~/pages/constants'; +import initFilteredSearch from '~/pages/search/init_filtered_search'; +import projectSelect from '~/project_select'; const ISSUE_BULK_UPDATE_PREFIX = 'issue_'; diff --git a/app/assets/javascripts/pages/groups/merge_requests/index.js b/app/assets/javascripts/pages/groups/merge_requests/index.js index 2832cbed5ac..2f6f9bb16e1 100644 --- a/app/assets/javascripts/pages/groups/merge_requests/index.js +++ b/app/assets/javascripts/pages/groups/merge_requests/index.js @@ -1,9 +1,9 @@ import addExtraTokensForMergeRequests from 'ee_else_ce/filtered_search/add_extra_tokens_for_merge_requests'; -import projectSelect from '~/project_select'; -import initFilteredSearch from '~/pages/search/init_filtered_search'; -import issuableInitBulkUpdateSidebar from '~/issuable_init_bulk_update_sidebar'; import IssuableFilteredSearchTokenKeys from '~/filtered_search/issuable_filtered_search_token_keys'; +import issuableInitBulkUpdateSidebar from '~/issuable_init_bulk_update_sidebar'; import { FILTERED_SEARCH } from '~/pages/constants'; +import initFilteredSearch from '~/pages/search/init_filtered_search'; +import projectSelect from '~/project_select'; const ISSUABLE_BULK_UPDATE_PREFIX = 'merge_request_'; diff --git a/app/assets/javascripts/pages/groups/milestones/show/index.js b/app/assets/javascripts/pages/groups/milestones/show/index.js index ebaea5ef3dc..3094fe5cd21 100644 --- a/app/assets/javascripts/pages/groups/milestones/show/index.js +++ b/app/assets/javascripts/pages/groups/milestones/show/index.js @@ -1,7 +1,6 @@ -import initMilestonesShow from '~/pages/milestones/shared/init_milestones_show'; -import initDeleteMilestoneModal from '~/pages/milestones/shared/delete_milestone_modal_init'; - import Milestone from '~/milestone'; +import initDeleteMilestoneModal from '~/pages/milestones/shared/delete_milestone_modal_init'; +import initMilestonesShow from '~/pages/milestones/shared/init_milestones_show'; document.addEventListener('DOMContentLoaded', () => { initMilestonesShow(); diff --git a/app/assets/javascripts/pages/groups/new/group_path_validator.js b/app/assets/javascripts/pages/groups/new/group_path_validator.js index 97f3d8cf7f5..89dccea2812 100644 --- a/app/assets/javascripts/pages/groups/new/group_path_validator.js +++ b/app/assets/javascripts/pages/groups/new/group_path_validator.js @@ -1,9 +1,9 @@ import { debounce } from 'lodash'; -import InputValidator from '~/validators/input_validator'; -import fetchGroupPathAvailability from './fetch_group_path_availability'; import { deprecatedCreateFlash as flash } from '~/flash'; import { __ } from '~/locale'; +import InputValidator from '~/validators/input_validator'; +import fetchGroupPathAvailability from './fetch_group_path_availability'; const debounceTimeoutDuration = 1000; const invalidInputClass = 'gl-field-error-outline'; diff --git a/app/assets/javascripts/pages/groups/new/index.js b/app/assets/javascripts/pages/groups/new/index.js index 7021473b380..63515abe698 100644 --- a/app/assets/javascripts/pages/groups/new/index.js +++ b/app/assets/javascripts/pages/groups/new/index.js @@ -1,8 +1,8 @@ import $ from 'jquery'; import BindInOut from '~/behaviors/bind_in_out'; +import initFilePickers from '~/file_pickers'; import Group from '~/group'; import GroupPathValidator from './group_path_validator'; -import initFilePickers from '~/file_pickers'; const parentId = $('#group_parent_id'); if (!parentId.val()) { diff --git a/app/assets/javascripts/pages/groups/settings/badges/index.js b/app/assets/javascripts/pages/groups/settings/badges/index.js index 74e96ee4a8f..3f48e4f281e 100644 --- a/app/assets/javascripts/pages/groups/settings/badges/index.js +++ b/app/assets/javascripts/pages/groups/settings/badges/index.js @@ -1,7 +1,7 @@ import Vue from 'vue'; -import Translate from '~/vue_shared/translate'; import { GROUP_BADGE } from '~/badges/constants'; import mountBadgeSettings from '~/pages/shared/mount_badge_settings'; +import Translate from '~/vue_shared/translate'; Vue.use(Translate); diff --git a/app/assets/javascripts/pages/groups/settings/ci_cd/show/index.js b/app/assets/javascripts/pages/groups/settings/ci_cd/show/index.js index e8d8c985ade..378b8663777 100644 --- a/app/assets/javascripts/pages/groups/settings/ci_cd/show/index.js +++ b/app/assets/javascripts/pages/groups/settings/ci_cd/show/index.js @@ -1,9 +1,10 @@ -import initSettingsPanels from '~/settings_panels'; import initVariableList from '~/ci_variable_list'; -import initFilteredSearch from '~/pages/search/init_filtered_search'; import GroupRunnersFilteredSearchTokenKeys from '~/filtered_search/group_runners_filtered_search_token_keys'; -import { FILTERED_SEARCH } from '~/pages/constants'; import initSharedRunnersForm from '~/group_settings/mount_shared_runners'; +import { FILTERED_SEARCH } from '~/pages/constants'; +import initFilteredSearch from '~/pages/search/init_filtered_search'; +import { initInstallRunner } from '~/pages/shared/mount_runner_instructions'; +import initSettingsPanels from '~/settings_panels'; document.addEventListener('DOMContentLoaded', () => { // Initialize expandable settings panels @@ -18,4 +19,6 @@ document.addEventListener('DOMContentLoaded', () => { initSharedRunnersForm(); initVariableList(); + + initInstallRunner(); }); diff --git a/app/assets/javascripts/pages/groups/settings/integrations/edit/index.js b/app/assets/javascripts/pages/groups/settings/integrations/edit/index.js index 2d77f2686f7..ba4b271f09e 100644 --- a/app/assets/javascripts/pages/groups/settings/integrations/edit/index.js +++ b/app/assets/javascripts/pages/groups/settings/integrations/edit/index.js @@ -1,6 +1,5 @@ import IntegrationSettingsForm from '~/integrations/integration_settings_form'; import PrometheusMetrics from '~/prometheus_metrics/prometheus_metrics'; -import initAlertsSettings from '~/alerts_service_settings'; document.addEventListener('DOMContentLoaded', () => { const prometheusSettingsWrapper = document.querySelector('.js-prometheus-metrics-monitoring'); @@ -11,6 +10,4 @@ document.addEventListener('DOMContentLoaded', () => { const prometheusMetrics = new PrometheusMetrics('.js-prometheus-metrics-monitoring'); prometheusMetrics.loadActiveMetrics(); } - - initAlertsSettings(document.querySelector('.js-alerts-service-settings')); }); diff --git a/app/assets/javascripts/pages/groups/settings/repository/show/index.js b/app/assets/javascripts/pages/groups/settings/repository/show/index.js index f4b26ba81fe..a1bcf6dbf57 100644 --- a/app/assets/javascripts/pages/groups/settings/repository/show/index.js +++ b/app/assets/javascripts/pages/groups/settings/repository/show/index.js @@ -1,5 +1,5 @@ -import initSettingsPanels from '~/settings_panels'; import DueDateSelectors from '~/due_date_select'; +import initSettingsPanels from '~/settings_panels'; document.addEventListener('DOMContentLoaded', () => { // Initialize expandable settings panels diff --git a/app/assets/javascripts/pages/groups/shared/group_details.js b/app/assets/javascripts/pages/groups/shared/group_details.js index 8d956c694c0..8c272e561db 100644 --- a/app/assets/javascripts/pages/groups/shared/group_details.js +++ b/app/assets/javascripts/pages/groups/shared/group_details.js @@ -1,13 +1,16 @@ /* eslint-disable no-new */ -import { getPagePath, getDashPath } from '~/lib/utils/common_utils'; +import ShortcutsNavigation from '~/behaviors/shortcuts/shortcuts_navigation'; import { ACTIVE_TAB_SHARED, ACTIVE_TAB_ARCHIVED } from '~/groups/constants'; +import initInviteMembersBanner from '~/groups/init_invite_members_banner'; +import initInviteMembersModal from '~/invite_members/init_invite_members_modal'; +import initInviteMembersTrigger from '~/invite_members/init_invite_members_trigger'; +import { getPagePath, getDashPath } from '~/lib/utils/common_utils'; +import initNotificationsDropdown from '~/notifications'; import notificationsDropdown from '~/notifications_dropdown'; import NotificationsForm from '~/notifications_form'; import ProjectsList from '~/projects_list'; -import ShortcutsNavigation from '~/behaviors/shortcuts/shortcuts_navigation'; import GroupTabs from './group_tabs'; -import initInviteMembersBanner from '~/groups/init_invite_members_banner'; export default function initGroupDetails(actionName = 'show') { const loadableActions = [ACTIVE_TAB_SHARED, ACTIVE_TAB_ARCHIVED]; @@ -20,8 +23,16 @@ export default function initGroupDetails(actionName = 'show') { new GroupTabs({ parentEl: '.groups-listing', action }); new ShortcutsNavigation(); new NotificationsForm(); - notificationsDropdown(); + + if (gon.features?.vueNotificationDropdown) { + initNotificationsDropdown(); + } else { + notificationsDropdown(); + } + new ProjectsList(); initInviteMembersBanner(); + initInviteMembersModal(); + initInviteMembersTrigger(); } diff --git a/app/assets/javascripts/pages/groups/shared/group_tabs.js b/app/assets/javascripts/pages/groups/shared/group_tabs.js index 033843d8504..73d810007dc 100644 --- a/app/assets/javascripts/pages/groups/shared/group_tabs.js +++ b/app/assets/javascripts/pages/groups/shared/group_tabs.js @@ -1,5 +1,4 @@ import $ from 'jquery'; -import { removeParams } from '~/lib/utils/url_utility'; import createGroupTree from '~/groups'; import { ACTIVE_TAB_SUBGROUPS_AND_PROJECTS, @@ -9,8 +8,9 @@ import { GROUPS_LIST_HOLDER_CLASS, GROUPS_FILTER_FORM_CLASS, } from '~/groups/constants'; -import UserTabs from '~/pages/users/user_tabs'; import GroupFilterableList from '~/groups/groups_filterable_list'; +import { removeParams } from '~/lib/utils/url_utility'; +import UserTabs from '~/pages/users/user_tabs'; export default class GroupTabs extends UserTabs { constructor({ defaultAction = 'subgroups_and_projects', action, parentEl }) { |