From 8b573c94895dc0ac0e1d9d59cf3e8745e8b539ca Mon Sep 17 00:00:00 2001 From: GitLab Bot Date: Thu, 17 Dec 2020 11:59:07 +0000 Subject: Add latest changes from gitlab-org/gitlab@13-7-stable-ee --- .../javascripts/admin/users/components/app.vue | 26 + .../admin/users/components/users_table.vue | 63 ++ app/assets/javascripts/admin/users/index.js | 22 + .../components/sidebar/sidebar_assignee.vue | 19 +- .../components/sidebar/sidebar_assignees.vue | 146 ++--- .../components/alerts_integrations_list.vue | 4 +- .../components/alerts_settings_form.vue | 684 +++++++++++++++++++++ .../components/alerts_settings_form_new.vue | 661 -------------------- .../components/alerts_settings_form_old.vue | 494 --------------- .../components/alerts_settings_wrapper.vue | 82 ++- .../javascripts/alerts_settings/services/index.js | 21 - .../graphql/queries/count.fragment.graphql | 4 - app/assets/javascripts/api.js | 19 +- app/assets/javascripts/authentication/mount_2fa.js | 10 +- .../two_factor_auth/components/recovery_codes.vue | 174 ++++++ .../authentication/two_factor_auth/constants.js | 11 + .../authentication/two_factor_auth/index.js | 46 ++ app/assets/javascripts/autosave.js | 1 + app/assets/javascripts/awards_handler.js | 1 + app/assets/javascripts/badges/components/badge.vue | 2 +- app/assets/javascripts/behaviors/select2.js | 33 +- .../javascripts/behaviors/shortcuts/shortcuts.js | 1 + .../components/blob_header_viewer_switcher.vue | 2 - .../javascripts/blob/file_template_mediator.js | 7 - .../javascripts/blob/file_template_selector.js | 15 +- .../suggest_gitlab_ci_yml/components/popover.vue | 2 +- app/assets/javascripts/blob/template_selector.js | 11 +- app/assets/javascripts/blob/viewer/index.js | 6 +- app/assets/javascripts/blob_edit/blob_bundle.js | 22 +- app/assets/javascripts/blob_edit/edit_blob.js | 13 +- app/assets/javascripts/boards/boards_util.js | 77 ++- .../boards/components/board_assignee_dropdown.vue | 106 ++-- .../javascripts/boards/components/board_column.vue | 17 +- .../boards/components/board_column_new.vue | 30 +- .../components/board_configuration_options.vue | 2 +- .../boards/components/board_content.vue | 66 +- .../javascripts/boards/components/board_form.vue | 228 ++++--- .../javascripts/boards/components/board_list.vue | 2 - .../boards/components/board_list_header.vue | 14 +- .../boards/components/board_list_header_new.vue | 109 ++-- .../boards/components/board_list_new.vue | 145 +++-- .../boards/components/board_promotion_state.js | 1 - .../boards/components/board_settings_sidebar.vue | 2 +- .../boards/components/boards_selector.vue | 83 +-- .../boards/components/issue_card_inner.vue | 25 +- .../boards/components/new_list_dropdown.js | 1 + .../boards/components/project_select.vue | 3 +- .../components/sidebar/board_editable_item.vue | 15 +- .../components/sidebar/board_sidebar_due_date.vue | 2 +- .../sidebar/board_sidebar_labels_select.vue | 3 +- .../sidebar/board_sidebar_milestone_select.vue | 161 +++++ app/assets/javascripts/boards/constants.js | 6 - app/assets/javascripts/boards/ee_functions.js | 2 - .../javascripts/boards/filtered_search_boards.js | 25 +- .../boards/graphql/board.fragment.graphql | 4 + .../boards/graphql/board.mutation.graphql | 11 + .../boards/graphql/board_labels.query.graphql | 23 + .../boards/graphql/board_list.fragment.graphql | 5 + .../graphql/board_list_create.mutation.graphql | 24 + .../graphql/board_list_destroy.mutation.graphql | 5 + .../graphql/board_list_shared.fragment.graphql | 16 + .../graphql/board_list_update.mutation.graphql | 10 + .../boards/graphql/board_lists.query.graphql | 28 + .../boards/graphql/group_boards.query.graphql | 13 + .../boards/graphql/group_milestones.query.graphql | 17 + .../boards/graphql/issue.fragment.graphql | 31 + .../boards/graphql/issue_create.mutation.graphql | 10 + .../graphql/issue_move_list.mutation.graphql | 28 + .../graphql/issue_set_due_date.mutation.graphql | 8 + .../graphql/issue_set_labels.mutation.graphql | 15 + .../graphql/issue_set_milestone.mutation.graphql | 12 + .../issue_set_subscription.mutation.graphql | 8 + .../boards/graphql/lists_issues.query.graphql | 55 ++ .../issue_set_subscription.mutation.graphql | 8 - .../boards/graphql/project_boards.query.graphql | 13 + .../boards/graphql/users_search.query.graphql | 11 + app/assets/javascripts/boards/index.js | 49 +- .../boards/mount_multiple_boards_switcher.js | 5 +- .../boards/queries/board.fragment.graphql | 4 - .../boards/queries/board.mutation.graphql | 11 - .../boards/queries/board_labels.query.graphql | 23 - .../boards/queries/board_list.fragment.graphql | 5 - .../queries/board_list_create.mutation.graphql | 24 - .../queries/board_list_destroy.mutation.graphql | 5 - .../queries/board_list_shared.fragment.graphql | 16 - .../queries/board_list_update.mutation.graphql | 10 - .../boards/queries/board_lists.query.graphql | 28 - .../boards/queries/group_boards.query.graphql | 13 - .../boards/queries/issue.fragment.graphql | 27 - .../boards/queries/issue_create.mutation.graphql | 10 - .../queries/issue_move_list.mutation.graphql | 28 - .../queries/issue_set_due_date.mutation.graphql | 8 - .../queries/issue_set_labels.mutation.graphql | 15 - .../boards/queries/lists_issues.query.graphql | 55 -- .../boards/queries/project_boards.query.graphql | 13 - .../boards/queries/users_search.query.graphql | 11 - app/assets/javascripts/boards/stores/actions.js | 126 ++-- .../javascripts/boards/stores/boards_store.js | 82 +-- app/assets/javascripts/boards/stores/getters.js | 9 +- .../javascripts/boards/stores/mutation_types.js | 1 + app/assets/javascripts/boards/stores/mutations.js | 12 +- app/assets/javascripts/boards/stores/state.js | 3 +- .../javascripts/ci_lint/components/ci_lint.vue | 7 +- .../ci_lint/components/ci_lint_results.vue | 143 ----- .../ci_lint/components/ci_lint_results_param.vue | 26 - .../ci_lint/components/ci_lint_results_value.vue | 81 --- .../ci_lint/components/ci_lint_warnings.vue | 69 --- .../graphql/mutations/lint_ci.mutation.graphql | 22 - .../javascripts/ci_lint/graphql/resolvers.js | 34 - app/assets/javascripts/ci_lint/index.js | 3 +- app/assets/javascripts/clone_panel.js | 42 ++ .../javascripts/close_reopen_report_toggle.js | 92 --- app/assets/javascripts/clusters/clusters_bundle.js | 15 +- .../clusters/components/applications.vue | 51 +- .../clusters/components/knative_domain_editor.vue | 9 +- .../uninstall_application_confirmation_modal.vue | 2 +- .../clusters/services/application_state_machine.js | 6 + .../javascripts/clusters/stores/clusters_store.js | 27 +- app/assets/javascripts/commit/image_file.js | 16 +- app/assets/javascripts/commits.js | 6 +- app/assets/javascripts/commons/bootstrap.js | 9 +- app/assets/javascripts/confirm_danger_modal.js | 2 + .../components/cluster_form_dropdown.vue | 1 + .../components/eks_cluster_configuration_form.vue | 24 +- .../create_cluster/eks_cluster/store/actions.js | 8 +- .../components/gke_project_id_dropdown.vue | 4 +- app/assets/javascripts/create_label.js | 6 + .../components/limit_warning_component.vue | 1 - .../cycle_analytics/cycle_analytics_bundle.js | 1 + .../deprecated_jquery_dropdown/gl_dropdown.js | 1 + .../design_management/pages/design/index.vue | 13 +- .../design_management/utils/tracking.js | 29 +- app/assets/javascripts/diffs/components/app.vue | 56 +- .../javascripts/diffs/components/commit_item.vue | 7 +- .../diffs/components/compare_dropdown_layout.vue | 85 +-- .../diffs/components/compare_versions.vue | 8 +- .../javascripts/diffs/components/diff_content.vue | 26 +- .../diffs/components/diff_expansion_cell.vue | 24 +- .../javascripts/diffs/components/diff_file.vue | 2 +- .../diffs/components/diff_file_header.vue | 3 +- .../javascripts/diffs/components/diff_file_row.vue | 4 - .../diffs/components/diff_line_note_form.vue | 12 +- .../javascripts/diffs/components/diff_row.vue | 28 +- .../diffs/components/image_diff_overlay.vue | 45 +- .../diffs/components/merge_conflict_warning.vue | 8 +- .../diffs/components/settings_dropdown.vue | 41 +- app/assets/javascripts/diffs/constants.js | 6 + app/assets/javascripts/diffs/diff_file.js | 61 -- app/assets/javascripts/diffs/i18n.js | 4 + app/assets/javascripts/diffs/index.js | 2 +- app/assets/javascripts/diffs/store/actions.js | 159 ++--- app/assets/javascripts/diffs/store/getters.js | 48 +- .../javascripts/diffs/store/modules/diff_state.js | 3 + .../javascripts/diffs/store/mutation_types.js | 6 +- app/assets/javascripts/diffs/store/mutations.js | 105 +--- app/assets/javascripts/diffs/store/utils.js | 196 +----- app/assets/javascripts/diffs/utils/diff_file.js | 75 +++ app/assets/javascripts/diffs/utils/preferences.js | 22 + app/assets/javascripts/due_date_select.js | 21 +- app/assets/javascripts/editor/constants.js | 4 + .../javascripts/editor/editor_file_template_ext.js | 7 +- app/assets/javascripts/editor/editor_lite.js | 34 +- .../editor/editor_lite_extension_base.js | 11 + .../javascripts/editor/editor_markdown_ext.js | 14 +- .../components/environment_actions.vue | 67 +- .../environments/components/environment_item.vue | 121 +++- .../environments/components/environments_app.vue | 31 +- .../environments/components/environments_table.vue | 31 +- .../error_tracking/components/stacktrace_entry.vue | 2 +- .../components/configure_feature_flags_modal.vue | 17 +- .../feature_flags/components/edit_feature_flag.vue | 19 +- .../feature_flags/components/feature_flags.vue | 18 +- .../feature_flags/components/feature_flags_tab.vue | 10 +- .../components/feature_flags_table.vue | 5 +- .../javascripts/feature_flags/components/form.vue | 3 +- .../feature_flags/components/new_feature_flag.vue | 28 +- .../feature_flags/components/strategy.vue | 4 +- app/assets/javascripts/feature_flags/constants.js | 4 - app/assets/javascripts/filterable_list.js | 6 +- .../add_extra_tokens_for_merge_requests.js | 14 +- .../filtered_search/available_dropdown_mappings.js | 5 + .../javascripts/filtered_search/constants.js | 2 +- .../issuable_filtered_search_token_keys.js | 10 + .../recent_searches_storage_keys.js | 2 + .../javascripts/frequent_items/components/app.vue | 2 - .../components/frequent_items_list_item.vue | 12 +- .../components/frequent_items_search_input.vue | 11 +- app/assets/javascripts/frequent_items/index.js | 5 + .../javascripts/frequent_items/store/index.js | 7 +- .../javascripts/frequent_items/store/state.js | 3 +- app/assets/javascripts/gfm_auto_complete.js | 1 + app/assets/javascripts/gl_field_error.js | 2 + app/assets/javascripts/gl_form.js | 4 + .../queries/users_search.query.graphql | 9 + app/assets/javascripts/graphql_shared/utils.js | 38 ++ .../javascripts/groups/components/group_folder.vue | 2 +- .../javascripts/groups/components/group_item.vue | 30 +- .../components/visibility_level_dropdown.vue | 48 ++ app/assets/javascripts/groups/index.js | 3 +- .../javascripts/groups/members/components/app.vue | 10 +- app/assets/javascripts/groups/members/index.js | 21 +- app/assets/javascripts/groups/members/utils.js | 5 +- .../javascripts/groups/store/groups_store.js | 5 +- app/assets/javascripts/groups/store/utils.js | 27 + app/assets/javascripts/groups/visibility_level.js | 24 + app/assets/javascripts/groups_select.js | 178 +++--- app/assets/javascripts/header.js | 2 - app/assets/javascripts/helpers/issuables_helper.js | 27 - app/assets/javascripts/how_to_merge.js | 15 - .../ide/components/commit_sidebar/form.vue | 21 +- .../components/commit_sidebar/message_field.vue | 4 - .../ide/components/editor_mode_dropdown.vue | 71 +-- .../ide/components/file_templates/dropdown.vue | 2 +- app/assets/javascripts/ide/components/ide.vue | 40 +- .../javascripts/ide/components/ide_side_bar.vue | 6 +- .../javascripts/ide/components/ide_tree_list.vue | 16 +- .../javascripts/ide/components/jobs/detail.vue | 2 +- .../javascripts/ide/components/nav_dropdown.vue | 3 +- .../ide/components/new_dropdown/modal.vue | 1 + .../javascripts/ide/components/pipelines/list.vue | 11 +- .../ide/components/preview/clientside.vue | 2 +- .../javascripts/ide/components/repo_editor.vue | 20 +- .../ide/components/terminal/session.vue | 18 +- .../javascripts/ide/components/terminal/view.vue | 3 +- app/assets/javascripts/ide/ide_router.js | 16 + app/assets/javascripts/ide/index.js | 5 + app/assets/javascripts/ide/lib/common/model.js | 3 +- app/assets/javascripts/ide/stores/actions.js | 21 +- app/assets/javascripts/ide/stores/actions/file.js | 23 + app/assets/javascripts/ide/stores/actions/tree.js | 21 +- app/assets/javascripts/ide/utils.js | 4 - .../import_entities/components/import_status.vue | 47 ++ .../javascripts/import_entities/constants.js | 48 ++ .../import_groups/components/import_table.vue | 78 +++ .../import_groups/components/import_table_row.vue | 106 ++++ .../import_groups/graphql/client_factory.js | 95 +++ .../bulk_import_source_group_item.fragment.graphql | 8 + .../mutations/import_group.mutation.graphql | 3 + .../mutations/set_new_name.mutation.graphql | 3 + .../set_target_namespace.mutation.graphql | 3 + .../queries/available_namespaces.query.graphql | 6 + .../bulk_import_source_groups.query.graphql | 7 + .../graphql/services/source_groups_manager.js | 45 ++ .../graphql/services/status_poller.js | 68 ++ .../import_entities/import_groups/index.js | 31 + .../components/bitbucket_status_table.vue | 75 +++ .../components/import_projects_table.vue | 187 ++++++ .../components/provider_repo_table_row.vue | 151 +++++ .../import_entities/import_projects/index.js | 60 ++ .../import_projects/store/actions.js | 201 ++++++ .../import_projects/store/getters.js | 30 + .../import_entities/import_projects/store/index.js | 16 + .../import_projects/store/mutation_types.js | 21 + .../import_projects/store/mutations.js | 149 +++++ .../import_entities/import_projects/store/state.js | 13 + .../import_entities/import_projects/utils.js | 13 + .../components/bitbucket_status_table.vue | 75 --- .../components/import_projects_table.vue | 191 ------ .../import_projects/components/import_status.vue | 47 -- .../components/provider_repo_table_row.vue | 151 ----- .../javascripts/import_projects/constants.js | 48 -- app/assets/javascripts/import_projects/index.js | 67 -- .../javascripts/import_projects/store/actions.js | 201 ------ .../javascripts/import_projects/store/getters.js | 30 - .../javascripts/import_projects/store/index.js | 16 - .../import_projects/store/mutation_types.js | 21 - .../javascripts/import_projects/store/mutations.js | 149 ----- .../javascripts/import_projects/store/state.js | 13 - app/assets/javascripts/import_projects/utils.js | 13 - app/assets/javascripts/importer_status.js | 149 ----- .../incidents_settings/components/alerts_form.vue | 4 +- .../components/pagerduty_form.vue | 31 +- .../javascripts/incidents_settings/constants.js | 16 +- .../edit/components/integration_form.vue | 30 +- .../javascripts/integrations/edit/store/actions.js | 21 + .../integrations/edit/store/mutation_types.js | 3 + .../integrations/edit/store/mutations.js | 6 + .../integrations/integration_settings_form.js | 6 +- .../issuable/auto_width_dropdown_select.js | 14 +- .../javascripts/issuable_bulk_update_actions.js | 1 + app/assets/javascripts/issuable_context.js | 14 +- .../components/issuable_create_root.vue | 2 +- app/assets/javascripts/issuable_form.js | 64 +- .../issuable_list/components/issuable_item.vue | 180 +++--- .../issuable_show/components/issuable_body.vue | 20 + .../components/issuable_edit_form.vue | 45 +- .../issuable_show/components/issuable_header.vue | 2 +- .../components/issuable_show_root.vue | 22 + app/assets/javascripts/issue.js | 137 +---- .../components/fields/description_template.vue | 10 +- .../issue_show/components/header_actions.vue | 55 +- .../javascripts/issue_show/utils/parse_data.js | 8 +- .../issues_list/components/issuable.vue | 13 +- .../issues_list/components/issuables_list_app.vue | 1 + app/assets/javascripts/jira_connect.js | 63 -- .../javascripts/jira_connect/components/app.vue | 13 +- app/assets/javascripts/jira_connect/index.js | 74 +++ app/assets/javascripts/jobs/components/job_app.vue | 15 +- .../javascripts/jobs/components/log/line.vue | 65 +- .../jobs/components/unmet_prerequisites_block.vue | 27 +- .../javascripts/jobs/mixins/delayed_job_mixin.js | 7 +- app/assets/javascripts/jobs/store/actions.js | 35 +- app/assets/javascripts/jobs/store/mutations.js | 1 + app/assets/javascripts/jobs/utils.js | 14 +- app/assets/javascripts/labels_select.js | 21 +- app/assets/javascripts/layout_nav.js | 29 +- app/assets/javascripts/lib/utils/common_utils.js | 53 +- app/assets/javascripts/lib/utils/dom_utils.js | 8 + app/assets/javascripts/lib/utils/keycodes.js | 1 + app/assets/javascripts/lib/utils/scroll_utils.js | 2 - app/assets/javascripts/lib/utils/text_markdown.js | 3 + app/assets/javascripts/lib/utils/text_utility.js | 10 + app/assets/javascripts/logs/utils.js | 2 - app/assets/javascripts/main.js | 9 +- .../maintenance_mode_settings/components/app.vue | 44 -- .../javascripts/maintenance_mode_settings/index.js | 20 - app/assets/javascripts/members.js | 2 + .../access_request_action_buttons.vue | 59 ++ .../action_buttons/action_button_group.vue | 11 + .../approve_access_request_button.vue | 42 ++ .../action_buttons/group_action_buttons.vue | 27 + .../action_buttons/invite_action_buttons.vue | 48 ++ .../components/action_buttons/leave_button.vue | 40 ++ .../action_buttons/remove_group_link_button.vue | 36 ++ .../action_buttons/remove_member_button.vue | 57 ++ .../action_buttons/resend_invite_button.vue | 41 ++ .../action_buttons/user_action_buttons.vue | 70 +++ .../members/components/avatars/group_avatar.vue | 34 + .../members/components/avatars/invite_avatar.vue | 32 + .../members/components/avatars/user_avatar.vue | 91 +++ .../filter_sort/filter_sort_container.vue | 26 + .../filter_sort/members_filtered_search_bar.vue | 132 ++++ .../components/filter_sort/sort_dropdown.vue | 77 +++ .../members/components/modals/leave_modal.vue | 70 +++ .../components/modals/remove_group_link_modal.vue | 69 +++ .../members/components/table/created_at.vue | 40 ++ .../components/table/expiration_datepicker.vue | 99 +++ .../members/components/table/expires_at.vue | 66 ++ .../components/table/member_action_buttons.vue | 57 ++ .../members/components/table/member_avatar.vue | 35 ++ .../members/components/table/member_source.vue | 27 + .../members/components/table/members_table.vue | 151 +++++ .../components/table/members_table_cell.vue | 72 +++ .../members/components/table/role_dropdown.vue | 94 +++ app/assets/javascripts/members/constants.js | 100 +++ app/assets/javascripts/members/store/actions.js | 44 ++ app/assets/javascripts/members/store/index.js | 9 + .../javascripts/members/store/mutation_types.js | 10 + app/assets/javascripts/members/store/mutations.js | 48 ++ app/assets/javascripts/members/store/state.js | 27 + app/assets/javascripts/members/store/utils.js | 1 + app/assets/javascripts/members/utils.js | 97 +++ .../merge_conflicts/merge_conflict_store.js | 1 - .../merge_conflicts/merge_conflicts_bundle.js | 2 + app/assets/javascripts/merge_request.js | 12 - app/assets/javascripts/merge_request_tabs.js | 3 + app/assets/javascripts/milestone_select.js | 21 +- app/assets/javascripts/mirrors/mirror_repos.js | 1 + app/assets/javascripts/mirrors/ssh_mirror.js | 5 + .../monitoring/components/alert_widget_form.vue | 2 +- .../monitoring/components/charts/time_series.vue | 1 + .../monitoring/components/dashboard_panel.vue | 4 +- .../monitoring/stores/variable_mapping.js | 2 - app/assets/javascripts/monitoring/utils.js | 2 - .../javascripts/notebook/cells/output/html.vue | 11 +- .../javascripts/notebook/cells/output/index.vue | 4 + app/assets/javascripts/notebook/lib/highlight.js | 19 +- app/assets/javascripts/notes.js | 1 + .../javascripts/notes/components/comment_form.vue | 137 +---- .../notes/components/diff_with_note.vue | 22 +- .../notes/components/multiline_comment_utils.js | 10 +- .../javascripts/notes/components/note_form.vue | 2 +- .../javascripts/notes/components/note_header.vue | 7 +- .../javascripts/notes/components/noteable_note.vue | 9 +- app/assets/javascripts/notes/constants.js | 15 + .../notes/mixins/discussion_navigation.js | 9 +- app/assets/javascripts/notes/stores/actions.js | 37 +- .../javascripts/notes/stores/collapse_utils.js | 3 - .../javascripts/notes/stores/modules/index.js | 2 +- .../javascripts/notes/stores/mutation_types.js | 2 +- app/assets/javascripts/notes/stores/mutations.js | 8 +- .../packages/details/components/app.vue | 79 +-- .../packages/details/components/package_files.vue | 107 ++++ .../details/components/package_history.vue | 121 +++- .../javascripts/packages/details/constants.js | 2 + app/assets/javascripts/packages/list/constants.js | 4 + .../javascripts/packages/shared/constants.js | 1 + app/assets/javascripts/packages/shared/utils.js | 3 +- app/assets/javascripts/pager.js | 1 + .../pages/admin/application_settings/index.js | 2 - .../admin/users/components/user_modal_manager.vue | 18 +- .../user_operation_confirmation_modal.vue | 71 --- app/assets/javascripts/pages/admin/users/index.js | 14 +- .../pages/groups/group_members/index.js | 62 +- .../pages/import/bitbucket/status/index.js | 4 +- .../components/bitbucket_server_status_table.vue | 2 +- .../pages/import/bitbucket_server/status/index.js | 2 +- .../javascripts/pages/import/bulk_imports/index.js | 4 + .../pages/import/fogbugz/status/index.js | 2 +- .../javascripts/pages/import/gitea/status/index.js | 2 +- .../pages/import/github/status/index.js | 2 +- .../pages/import/gitlab/status/index.js | 2 +- .../pages/import/manifest/status/index.js | 2 +- .../pages/profiles/accounts/show/index.js | 3 + .../pages/profiles/two_factor_auths/index.js | 5 +- .../javascripts/pages/projects/blob/show/index.js | 56 +- .../pages/projects/commit/pipelines/index.js | 7 +- .../pages/projects/commit/show/index.js | 52 +- .../pages/projects/commits/show/index.js | 11 +- .../forks/new/components/fork_groups_list.vue | 1 + .../javascripts/pages/projects/issues/show.js | 3 +- .../javascripts/pages/projects/jobs/index/index.js | 10 + .../merge_requests/init_merge_request_show.js | 2 - app/assets/javascripts/pages/projects/new/index.js | 52 +- .../pages/projects/pipelines/index/index.js | 61 +- app/assets/javascripts/pages/projects/project.js | 40 +- .../pages/projects/settings/access_tokens/index.js | 2 +- .../pages/projects/settings/ci_cd/show/index.js | 5 + .../repository/create_deploy_token/index.js | 2 +- .../components/project_feature_setting.vue | 6 +- .../permissions/components/settings_panel.vue | 42 +- .../javascripts/pages/projects/show/index.js | 4 +- app/assets/javascripts/pages/search/show/index.js | 4 +- app/assets/javascripts/pages/search/show/search.js | 65 +- app/assets/javascripts/performance/constants.js | 21 +- app/assets/javascripts/performance_bar/index.js | 19 +- app/assets/javascripts/persistent_user_callouts.js | 1 + .../components/commit/commit_form.vue | 139 +++++ .../components/lint/ci_lint_results.vue | 143 +++++ .../components/lint/ci_lint_results_param.vue | 26 + .../components/lint/ci_lint_results_value.vue | 81 +++ .../components/lint/ci_lint_warnings.vue | 69 +++ .../pipeline_editor/components/text_editor.vue | 14 +- .../javascripts/pipeline_editor/constants.js | 2 + .../mutations/commit_ci_file.mutation.graphql | 26 + .../graphql/mutations/lint_ci.mutation.graphql | 22 + .../graphql/queries/ci_config.graphql | 11 + .../pipeline_editor/graphql/resolvers.js | 31 +- app/assets/javascripts/pipeline_editor/index.js | 12 +- .../pipeline_editor/pipeline_editor_app.vue | 246 +++++++- .../pipeline_new/components/pipeline_new_form.vue | 164 +++-- app/assets/javascripts/pipeline_new/constants.js | 3 + app/assets/javascripts/pipeline_new/index.js | 12 +- .../javascripts/pipeline_new/utils/format_refs.js | 18 + .../pipelines/components/graph/accessors.js | 25 + .../components/graph/action_component.vue | 4 +- .../pipelines/components/graph/constants.js | 3 + .../pipelines/components/graph/graph_component.vue | 270 ++------ .../components/graph/graph_component_legacy.vue | 265 ++++++++ .../components/graph/graph_component_wrapper.vue | 106 ++++ .../components/graph/job_group_dropdown.vue | 19 +- .../pipelines/components/graph/job_item.vue | 32 +- .../components/graph/job_name_component.vue | 12 +- .../pipelines/components/graph/linked_pipeline.vue | 70 ++- .../components/graph/linked_pipelines_column.vue | 139 ++++- .../graph/linked_pipelines_column_legacy.vue | 87 +++ .../components/graph/stage_column_component.vue | 118 ++-- .../graph/stage_column_component_legacy.vue | 108 ++++ .../pipelines/components/graph/utils.js | 57 ++ .../graph_shared/linked_graph_wrapper.vue | 7 + .../components/graph_shared/main_graph_wrapper.vue | 32 + .../pipelines/components/header_component.vue | 1 + .../components/pipeline_graph/drawing_utils.js | 10 +- .../gitlab_ci_yaml_visualization.vue | 76 --- .../components/pipeline_graph/job_pill.vue | 8 +- .../components/pipeline_graph/pipeline_graph.vue | 109 ++-- .../components/pipelines_list/empty_state.vue | 13 +- .../components/pipelines_list/pipeline_url.vue | 43 +- .../components/pipelines_list/pipelines.vue | 4 +- .../pipelines_list/pipelines_actions.vue | 2 +- .../components/pipelines_list/time_ago.vue | 4 +- .../components/test_reports/test_suite_table.vue | 26 +- .../pipelines/components/unwrapping_utils.js | 53 ++ app/assets/javascripts/pipelines/constants.js | 2 + .../fragments/linked_pipelines.fragment.graphql | 17 + .../queries/get_pipeline_details.query.graphql | 65 ++ .../queries/get_pipeline_header_data.query.graphql | 1 + .../pipeline_stages_connection.fragment.graphql | 20 + .../pipelines/mixins/graph_width_mixin.js | 50 -- .../pipelines/pipeline_details_bundle.js | 10 +- .../pipelines/pipeline_details_graph.js | 38 +- .../javascripts/pipelines/pipelines_index.js | 75 +++ .../pipelines/stores/test_reports/actions.js | 1 + .../pipelines/stores/test_reports/getters.js | 7 +- .../stores/test_reports/mutation_types.js | 1 + .../pipelines/stores/test_reports/mutations.js | 8 + .../pipelines/stores/test_reports/state.js | 4 + app/assets/javascripts/pipelines/utils.js | 87 +-- app/assets/javascripts/project_find_file.js | 1 + app/assets/javascripts/project_select.js | 196 +++--- .../javascripts/project_select_combo_button.js | 12 +- .../projects/default_project_templates.js | 4 + .../projects/default_sample_data_templates.js | 12 - .../components/app.vue | 6 +- .../projects/pipelines/charts/components/app.vue | 234 +++++-- .../pipelines/charts/components/app_legacy.vue | 151 +++++ .../charts/components/statistics_list.vue | 7 +- .../projects/pipelines/charts/constants.js | 6 + .../get_pipeline_count_by_status.query.graphql | 14 + .../get_project_pipeline_statistics.query.graphql | 17 + .../javascripts/projects/pipelines/charts/index.js | 63 +- app/assets/javascripts/projects/project_new.js | 7 +- .../projects/settings/access_dropdown.js | 7 +- .../settings/components/shared_runners_toggle.vue | 79 +++ .../settings/mount_shared_runners_toggle.js | 21 + .../components/service_desk_root.vue | 5 + .../components/service_desk_setting.vue | 6 +- .../projects/settings_service_desk/index.js | 2 + .../components/details_page/details_header.vue | 36 +- .../explorer/components/details_page/tags_list.vue | 2 +- .../components/details_page/tags_list_row.vue | 14 +- .../explorer/components/list_page/cli_commands.vue | 5 +- .../components/list_page/group_empty_state.vue | 5 +- .../explorer/components/list_page/image_list.vue | 33 +- .../components/list_page/image_list_row.vue | 34 +- .../components/list_page/project_empty_state.vue | 6 +- .../explorer/components/registry_breadcrumb.vue | 21 +- .../registry/explorer/constants/details.js | 2 + .../registry/explorer/constants/list.js | 5 +- .../container_repository.fragment.graphql | 11 + .../javascripts/registry/explorer/graphql/index.js | 14 + .../delete_container_repository.mutation.graphql | 9 + ...lete_container_repository_tags.mutation.graphql | 5 + .../get_container_repository_details.query.graphql | 41 ++ .../get_group_container_repositories.query.graphql | 23 + ...et_project_container_repositories.query.graphql | 23 + app/assets/javascripts/registry/explorer/index.js | 37 +- .../registry/explorer/pages/details.vue | 177 ++++-- .../javascripts/registry/explorer/pages/index.vue | 4 - .../javascripts/registry/explorer/pages/list.vue | 133 +++- app/assets/javascripts/registry/explorer/router.js | 4 +- .../registry/explorer/stores/actions.js | 119 ---- .../registry/explorer/stores/getters.js | 18 - .../javascripts/registry/explorer/stores/index.js | 16 - .../registry/explorer/stores/mutation_types.js | 10 - .../registry/explorer/stores/mutations.js | 54 -- .../javascripts/registry/explorer/stores/state.js | 10 - app/assets/javascripts/registry/explorer/utils.js | 25 - .../settings/components/expiration_dropdown.vue | 50 ++ .../settings/components/expiration_input.vue | 110 ++++ .../settings/components/expiration_run_text.vue | 46 ++ .../settings/components/expiration_toggle.vue | 52 ++ .../settings/components/registry_settings_app.vue | 13 +- .../registry/settings/components/settings_form.vue | 237 +++++-- .../javascripts/registry/settings/constants.js | 81 ++- .../container_expiration_policy.fragment.graphql | 1 + .../update_container_expiration_policy.graphql | 10 - ...te_container_expiration_policy.mutation.graphql | 10 + .../graphql/queries/get_expiration_policy.graphql | 9 - .../queries/get_expiration_policy.query.graphql | 9 + .../settings/graphql/utils/cache_update.js | 2 +- .../registry/settings/registry_settings_bundle.js | 13 +- app/assets/javascripts/registry/settings/utils.js | 26 + .../shared/components/expiration_policy_fields.vue | 258 -------- .../javascripts/registry/shared/constants.js | 69 --- app/assets/javascripts/registry/shared/utils.js | 46 -- .../related_issues/components/issue_token.vue | 2 +- .../components/related_issuable_input.vue | 2 + .../components/related_issues_root.vue | 11 +- .../reports/components/report_section.vue | 8 +- .../reports/components/test_issue_body.vue | 30 +- app/assets/javascripts/reports/constants.js | 14 +- app/assets/javascripts/reports/store/utils.js | 13 +- .../repository/components/preview/index.vue | 2 +- app/assets/javascripts/right_sidebar.js | 3 + .../group_filter/components/group_filter.vue | 124 ---- .../javascripts/search/group_filter/constants.js | 10 - .../javascripts/search/group_filter/index.js | 28 - app/assets/javascripts/search/index.js | 4 +- .../javascripts/search/sidebar/components/app.vue | 2 +- app/assets/javascripts/search/store/actions.js | 22 + .../javascripts/search/store/mutation_types.js | 4 + app/assets/javascripts/search/store/mutations.js | 11 + app/assets/javascripts/search/store/state.js | 2 + .../search/topbar/components/group_filter.vue | 49 ++ .../search/topbar/components/project_filter.vue | 52 ++ .../topbar/components/searchable_dropdown.vue | 144 +++++ app/assets/javascripts/search/topbar/constants.js | 21 + app/assets/javascripts/search/topbar/index.js | 44 ++ app/assets/javascripts/search_autocomplete.js | 4 + .../set_status_modal/set_status_modal_wrapper.vue | 5 +- app/assets/javascripts/settings_panels.js | 1 + .../components/assignees/assignee_avatar.vue | 6 +- .../components/assignees/assignee_title.vue | 2 +- .../assignees/collapsed_assignee_list.vue | 7 +- .../components/assignees/issuable_assignees.vue | 14 +- .../confidential/confidential_issue_sidebar.vue | 11 +- .../sidebar/components/labels/sidebar_labels.vue | 2 +- .../reviewers/collapsed_reviewer_list.vue | 7 +- .../components/reviewers/reviewer_avatar.vue | 6 +- .../components/reviewers/reviewer_title.vue | 2 +- .../components/subscriptions/subscriptions.vue | 7 +- .../sidebar/components/todo_toggle/todo.vue | 14 +- app/assets/javascripts/single_file_diff.js | 18 +- app/assets/javascripts/smart_interval.js | 1 + app/assets/javascripts/sourcegraph/index.js | 2 +- .../static_site_editor/components/edit_area.vue | 6 + .../javascripts/static_site_editor/constants.js | 11 + .../graphql/resolvers/submit_content_changes.js | 13 +- .../javascripts/static_site_editor/pages/home.vue | 5 +- .../services/submit_content_changes.js | 43 +- app/assets/javascripts/terminal/terminal.js | 2 + .../terraform/components/states_table.vue | 122 +++- .../terraform/components/states_table_actions.vue | 192 ++++++ .../terraform/components/terraform_list.vue | 58 +- .../fragments/state_version.fragment.graphql | 17 + .../graphql/mutations/lock_state.mutation.graphql | 5 + .../mutations/remove_state.mutation.graphql | 5 + .../mutations/unlock_state.mutation.graphql | 5 + app/assets/javascripts/terraform/index.js | 1 + app/assets/javascripts/users_select/index.js | 238 ++++--- app/assets/javascripts/version_check_image.js | 1 + .../components/deployment/constants.js | 1 + .../components/deployment/deployment_info.vue | 11 +- .../components/mr_widget_header.vue | 20 +- .../components/mr_widget_how_to_merge_modal.vue | 172 ++++++ .../components/mr_widget_merge_help.vue | 18 +- .../components/mr_widget_pipeline_container.vue | 3 +- .../components/mr_widget_status_icon.vue | 19 +- .../components/states/mr_widget_conflicts.vue | 134 +++- .../components/states/mr_widget_missing_branch.vue | 30 +- .../components/states/squash_before_merge.vue | 28 +- .../vue_merge_request_widget/mr_widget_options.vue | 11 +- .../queries/permissions.query.graphql | 10 + .../queries/states/conflicts.query.graphql | 8 + .../queries/states/missing_branch.query.graphql | 7 + .../stores/mr_widget_store.js | 6 + .../vue_shared/components/awards_list.vue | 39 +- .../components/blob_viewers/constants.js | 2 - .../javascripts/vue_shared/components/callout.vue | 24 - .../vue_shared/components/ci_badge_link.vue | 1 + .../javascripts/vue_shared/components/ci_icon.vue | 4 +- .../vue_shared/components/clipboard_button.vue | 5 +- .../components/color_picker/color_picker.vue | 142 +++++ .../content_viewer/viewers/image_viewer.vue | 18 +- .../content_viewer/viewers/markdown_viewer.vue | 2 +- .../date_time_picker/date_time_picker.vue | 2 +- .../date_time_picker/date_time_picker_lib.js | 2 - .../components/diff_viewer/diff_viewer.vue | 8 +- .../viewers/image_diff/onion_skin_viewer.vue | 8 +- .../viewers/image_diff/swipe_viewer.vue | 8 +- .../viewers/image_diff/two_up_viewer.vue | 8 +- .../diff_viewer/viewers/image_diff_viewer.vue | 16 +- .../components/dismissible_container.vue | 2 +- .../components/dropdown/dropdown_search_input.vue | 2 +- .../vue_shared/components/file_finder/index.vue | 1 - .../javascripts/vue_shared/components/file_row.vue | 1 + .../filtered_search_bar_root.vue | 14 +- .../gfm_autocomplete/gfm_autocomplete.vue | 97 +++ .../components/gfm_autocomplete/utils.js | 142 +++++ .../vue_shared/components/gl_mentions.vue | 238 ------- .../vue_shared/components/help_popover.vue | 8 +- .../vue_shared/components/lib/utils/dom_utils.js | 2 - .../vue_shared/components/loading_button.vue | 61 -- .../components/markdown/apply_suggestion.vue | 59 ++ .../vue_shared/components/markdown/field.vue | 10 +- .../access_request_action_buttons.vue | 59 -- .../members/action_buttons/action_button_group.vue | 11 - .../approve_access_request_button.vue | 42 -- .../action_buttons/group_action_buttons.vue | 27 - .../action_buttons/invite_action_buttons.vue | 48 -- .../members/action_buttons/leave_button.vue | 40 -- .../action_buttons/remove_group_link_button.vue | 36 -- .../action_buttons/remove_member_button.vue | 57 -- .../action_buttons/resend_invite_button.vue | 41 -- .../members/action_buttons/user_action_buttons.vue | 70 --- .../components/members/avatars/group_avatar.vue | 34 - .../components/members/avatars/invite_avatar.vue | 32 - .../components/members/avatars/user_avatar.vue | 91 --- .../vue_shared/components/members/constants.js | 71 --- .../components/members/modals/leave_modal.vue | 70 --- .../members/modals/remove_group_link_modal.vue | 69 --- .../components/members/table/created_at.vue | 40 -- .../members/table/expiration_datepicker.vue | 99 --- .../components/members/table/expires_at.vue | 66 -- .../members/table/member_action_buttons.vue | 57 -- .../components/members/table/member_avatar.vue | 35 -- .../components/members/table/member_source.vue | 27 - .../components/members/table/members_table.vue | 158 ----- .../members/table/members_table_cell.vue | 65 -- .../components/members/table/role_dropdown.vue | 95 --- .../vue_shared/components/members/utils.js | 48 -- .../components/notes/noteable_warning.vue | 2 +- .../javascripts/vue_shared/components/pikaday.vue | 6 +- .../rich_content_editor/rich_content_editor.vue | 2 + .../vue_shared/components/select2_select.vue | 13 +- .../sidebar/labels_select/dropdown_header.vue | 2 +- .../labels_select_vue/labels_select_root.vue | 10 + .../vue_shared/components/tooltip_on_truncate.vue | 3 +- .../javascripts/vue_shared/directives/popover.js | 22 - .../security_reports/components/constants.js | 8 + .../security_reports/components/help_icon.vue | 58 ++ .../security_report_download_dropdown.vue | 48 ++ .../components/security_summary.vue | 59 ++ .../vue_shared/security_reports/constants.js | 29 + .../security_report_download_paths.query.graphql | 23 + .../security_reports/security_reports_app.vue | 275 +++++++-- .../vue_shared/security_reports/store/constants.js | 7 + .../vue_shared/security_reports/store/getters.js | 66 ++ .../vue_shared/security_reports/store/index.js | 16 + .../vue_shared/security_reports/store/messages.js | 4 + .../vue_shared/security_reports/store/state.js | 5 + .../vue_shared/security_reports/store/utils.js | 78 +++ .../vue_shared/security_reports/utils.js | 22 + .../vuex_shared/modules/members/actions.js | 44 -- .../vuex_shared/modules/members/index.js | 10 - .../vuex_shared/modules/members/mutation_types.js | 10 - .../vuex_shared/modules/members/mutations.js | 48 -- .../vuex_shared/modules/members/state.js | 21 - .../vuex_shared/modules/members/utils.js | 1 - .../javascripts/vulnerabilities/constants.js | 15 + .../javascripts/whats_new/components/app.vue | 130 ++-- .../javascripts/whats_new/components/feature.vue | 67 ++ app/assets/javascripts/whats_new/index.js | 20 +- app/assets/javascripts/whats_new/store/actions.js | 3 +- .../javascripts/whats_new/utils/notification.js | 17 + 716 files changed, 15585 insertions(+), 10669 deletions(-) create mode 100644 app/assets/javascripts/admin/users/components/app.vue create mode 100644 app/assets/javascripts/admin/users/components/users_table.vue create mode 100644 app/assets/javascripts/admin/users/index.js create mode 100644 app/assets/javascripts/alerts_settings/components/alerts_settings_form.vue delete mode 100644 app/assets/javascripts/alerts_settings/components/alerts_settings_form_new.vue delete mode 100644 app/assets/javascripts/alerts_settings/components/alerts_settings_form_old.vue delete mode 100644 app/assets/javascripts/analytics/instance_statistics/graphql/queries/count.fragment.graphql create mode 100644 app/assets/javascripts/authentication/two_factor_auth/components/recovery_codes.vue create mode 100644 app/assets/javascripts/authentication/two_factor_auth/constants.js create mode 100644 app/assets/javascripts/authentication/two_factor_auth/index.js delete mode 100644 app/assets/javascripts/boards/components/board_promotion_state.js create mode 100644 app/assets/javascripts/boards/components/sidebar/board_sidebar_milestone_select.vue create mode 100644 app/assets/javascripts/boards/graphql/board.fragment.graphql create mode 100644 app/assets/javascripts/boards/graphql/board.mutation.graphql create mode 100644 app/assets/javascripts/boards/graphql/board_labels.query.graphql create mode 100644 app/assets/javascripts/boards/graphql/board_list.fragment.graphql create mode 100644 app/assets/javascripts/boards/graphql/board_list_create.mutation.graphql create mode 100644 app/assets/javascripts/boards/graphql/board_list_destroy.mutation.graphql create mode 100644 app/assets/javascripts/boards/graphql/board_list_shared.fragment.graphql create mode 100644 app/assets/javascripts/boards/graphql/board_list_update.mutation.graphql create mode 100644 app/assets/javascripts/boards/graphql/board_lists.query.graphql create mode 100644 app/assets/javascripts/boards/graphql/group_boards.query.graphql create mode 100644 app/assets/javascripts/boards/graphql/group_milestones.query.graphql create mode 100644 app/assets/javascripts/boards/graphql/issue.fragment.graphql create mode 100644 app/assets/javascripts/boards/graphql/issue_create.mutation.graphql create mode 100644 app/assets/javascripts/boards/graphql/issue_move_list.mutation.graphql create mode 100644 app/assets/javascripts/boards/graphql/issue_set_due_date.mutation.graphql create mode 100644 app/assets/javascripts/boards/graphql/issue_set_labels.mutation.graphql create mode 100644 app/assets/javascripts/boards/graphql/issue_set_milestone.mutation.graphql create mode 100644 app/assets/javascripts/boards/graphql/issue_set_subscription.mutation.graphql create mode 100644 app/assets/javascripts/boards/graphql/lists_issues.query.graphql delete mode 100644 app/assets/javascripts/boards/graphql/mutations/issue_set_subscription.mutation.graphql create mode 100644 app/assets/javascripts/boards/graphql/project_boards.query.graphql create mode 100644 app/assets/javascripts/boards/graphql/users_search.query.graphql delete mode 100644 app/assets/javascripts/boards/queries/board.fragment.graphql delete mode 100644 app/assets/javascripts/boards/queries/board.mutation.graphql delete mode 100644 app/assets/javascripts/boards/queries/board_labels.query.graphql delete mode 100644 app/assets/javascripts/boards/queries/board_list.fragment.graphql delete mode 100644 app/assets/javascripts/boards/queries/board_list_create.mutation.graphql delete mode 100644 app/assets/javascripts/boards/queries/board_list_destroy.mutation.graphql delete mode 100644 app/assets/javascripts/boards/queries/board_list_shared.fragment.graphql delete mode 100644 app/assets/javascripts/boards/queries/board_list_update.mutation.graphql delete mode 100644 app/assets/javascripts/boards/queries/board_lists.query.graphql delete mode 100644 app/assets/javascripts/boards/queries/group_boards.query.graphql delete mode 100644 app/assets/javascripts/boards/queries/issue.fragment.graphql delete mode 100644 app/assets/javascripts/boards/queries/issue_create.mutation.graphql delete mode 100644 app/assets/javascripts/boards/queries/issue_move_list.mutation.graphql delete mode 100644 app/assets/javascripts/boards/queries/issue_set_due_date.mutation.graphql delete mode 100644 app/assets/javascripts/boards/queries/issue_set_labels.mutation.graphql delete mode 100644 app/assets/javascripts/boards/queries/lists_issues.query.graphql delete mode 100644 app/assets/javascripts/boards/queries/project_boards.query.graphql delete mode 100644 app/assets/javascripts/boards/queries/users_search.query.graphql delete mode 100644 app/assets/javascripts/ci_lint/components/ci_lint_results.vue delete mode 100644 app/assets/javascripts/ci_lint/components/ci_lint_results_param.vue delete mode 100644 app/assets/javascripts/ci_lint/components/ci_lint_results_value.vue delete mode 100644 app/assets/javascripts/ci_lint/components/ci_lint_warnings.vue delete mode 100644 app/assets/javascripts/ci_lint/graphql/mutations/lint_ci.mutation.graphql delete mode 100644 app/assets/javascripts/ci_lint/graphql/resolvers.js create mode 100644 app/assets/javascripts/clone_panel.js delete mode 100644 app/assets/javascripts/close_reopen_report_toggle.js delete mode 100644 app/assets/javascripts/diffs/diff_file.js create mode 100644 app/assets/javascripts/diffs/utils/diff_file.js create mode 100644 app/assets/javascripts/diffs/utils/preferences.js create mode 100644 app/assets/javascripts/editor/editor_lite_extension_base.js create mode 100644 app/assets/javascripts/graphql_shared/queries/users_search.query.graphql create mode 100644 app/assets/javascripts/groups/components/visibility_level_dropdown.vue create mode 100644 app/assets/javascripts/groups/store/utils.js create mode 100644 app/assets/javascripts/groups/visibility_level.js delete mode 100644 app/assets/javascripts/helpers/issuables_helper.js delete mode 100644 app/assets/javascripts/how_to_merge.js create mode 100644 app/assets/javascripts/import_entities/components/import_status.vue create mode 100644 app/assets/javascripts/import_entities/constants.js create mode 100644 app/assets/javascripts/import_entities/import_groups/components/import_table.vue create mode 100644 app/assets/javascripts/import_entities/import_groups/components/import_table_row.vue create mode 100644 app/assets/javascripts/import_entities/import_groups/graphql/client_factory.js create mode 100644 app/assets/javascripts/import_entities/import_groups/graphql/fragments/bulk_import_source_group_item.fragment.graphql create mode 100644 app/assets/javascripts/import_entities/import_groups/graphql/mutations/import_group.mutation.graphql create mode 100644 app/assets/javascripts/import_entities/import_groups/graphql/mutations/set_new_name.mutation.graphql create mode 100644 app/assets/javascripts/import_entities/import_groups/graphql/mutations/set_target_namespace.mutation.graphql create mode 100644 app/assets/javascripts/import_entities/import_groups/graphql/queries/available_namespaces.query.graphql create mode 100644 app/assets/javascripts/import_entities/import_groups/graphql/queries/bulk_import_source_groups.query.graphql create mode 100644 app/assets/javascripts/import_entities/import_groups/graphql/services/source_groups_manager.js create mode 100644 app/assets/javascripts/import_entities/import_groups/graphql/services/status_poller.js create mode 100644 app/assets/javascripts/import_entities/import_groups/index.js create mode 100644 app/assets/javascripts/import_entities/import_projects/components/bitbucket_status_table.vue create mode 100644 app/assets/javascripts/import_entities/import_projects/components/import_projects_table.vue create mode 100644 app/assets/javascripts/import_entities/import_projects/components/provider_repo_table_row.vue create mode 100644 app/assets/javascripts/import_entities/import_projects/index.js create mode 100644 app/assets/javascripts/import_entities/import_projects/store/actions.js create mode 100644 app/assets/javascripts/import_entities/import_projects/store/getters.js create mode 100644 app/assets/javascripts/import_entities/import_projects/store/index.js create mode 100644 app/assets/javascripts/import_entities/import_projects/store/mutation_types.js create mode 100644 app/assets/javascripts/import_entities/import_projects/store/mutations.js create mode 100644 app/assets/javascripts/import_entities/import_projects/store/state.js create mode 100644 app/assets/javascripts/import_entities/import_projects/utils.js delete mode 100644 app/assets/javascripts/import_projects/components/bitbucket_status_table.vue delete mode 100644 app/assets/javascripts/import_projects/components/import_projects_table.vue delete mode 100644 app/assets/javascripts/import_projects/components/import_status.vue delete mode 100644 app/assets/javascripts/import_projects/components/provider_repo_table_row.vue delete mode 100644 app/assets/javascripts/import_projects/constants.js delete mode 100644 app/assets/javascripts/import_projects/index.js delete mode 100644 app/assets/javascripts/import_projects/store/actions.js delete mode 100644 app/assets/javascripts/import_projects/store/getters.js delete mode 100644 app/assets/javascripts/import_projects/store/index.js delete mode 100644 app/assets/javascripts/import_projects/store/mutation_types.js delete mode 100644 app/assets/javascripts/import_projects/store/mutations.js delete mode 100644 app/assets/javascripts/import_projects/store/state.js delete mode 100644 app/assets/javascripts/import_projects/utils.js delete mode 100644 app/assets/javascripts/importer_status.js delete mode 100644 app/assets/javascripts/jira_connect.js delete mode 100644 app/assets/javascripts/maintenance_mode_settings/components/app.vue delete mode 100644 app/assets/javascripts/maintenance_mode_settings/index.js create mode 100644 app/assets/javascripts/members/components/action_buttons/access_request_action_buttons.vue create mode 100644 app/assets/javascripts/members/components/action_buttons/action_button_group.vue create mode 100644 app/assets/javascripts/members/components/action_buttons/approve_access_request_button.vue create mode 100644 app/assets/javascripts/members/components/action_buttons/group_action_buttons.vue create mode 100644 app/assets/javascripts/members/components/action_buttons/invite_action_buttons.vue create mode 100644 app/assets/javascripts/members/components/action_buttons/leave_button.vue create mode 100644 app/assets/javascripts/members/components/action_buttons/remove_group_link_button.vue create mode 100644 app/assets/javascripts/members/components/action_buttons/remove_member_button.vue create mode 100644 app/assets/javascripts/members/components/action_buttons/resend_invite_button.vue create mode 100644 app/assets/javascripts/members/components/action_buttons/user_action_buttons.vue create mode 100644 app/assets/javascripts/members/components/avatars/group_avatar.vue create mode 100644 app/assets/javascripts/members/components/avatars/invite_avatar.vue create mode 100644 app/assets/javascripts/members/components/avatars/user_avatar.vue create mode 100644 app/assets/javascripts/members/components/filter_sort/filter_sort_container.vue create mode 100644 app/assets/javascripts/members/components/filter_sort/members_filtered_search_bar.vue create mode 100644 app/assets/javascripts/members/components/filter_sort/sort_dropdown.vue create mode 100644 app/assets/javascripts/members/components/modals/leave_modal.vue create mode 100644 app/assets/javascripts/members/components/modals/remove_group_link_modal.vue create mode 100644 app/assets/javascripts/members/components/table/created_at.vue create mode 100644 app/assets/javascripts/members/components/table/expiration_datepicker.vue create mode 100644 app/assets/javascripts/members/components/table/expires_at.vue create mode 100644 app/assets/javascripts/members/components/table/member_action_buttons.vue create mode 100644 app/assets/javascripts/members/components/table/member_avatar.vue create mode 100644 app/assets/javascripts/members/components/table/member_source.vue create mode 100644 app/assets/javascripts/members/components/table/members_table.vue create mode 100644 app/assets/javascripts/members/components/table/members_table_cell.vue create mode 100644 app/assets/javascripts/members/components/table/role_dropdown.vue create mode 100644 app/assets/javascripts/members/constants.js create mode 100644 app/assets/javascripts/members/store/actions.js create mode 100644 app/assets/javascripts/members/store/index.js create mode 100644 app/assets/javascripts/members/store/mutation_types.js create mode 100644 app/assets/javascripts/members/store/mutations.js create mode 100644 app/assets/javascripts/members/store/state.js create mode 100644 app/assets/javascripts/members/store/utils.js create mode 100644 app/assets/javascripts/members/utils.js create mode 100644 app/assets/javascripts/packages/details/components/package_files.vue delete mode 100644 app/assets/javascripts/pages/admin/users/components/user_operation_confirmation_modal.vue create mode 100644 app/assets/javascripts/pages/import/bulk_imports/index.js create mode 100644 app/assets/javascripts/pipeline_editor/components/commit/commit_form.vue create mode 100644 app/assets/javascripts/pipeline_editor/components/lint/ci_lint_results.vue create mode 100644 app/assets/javascripts/pipeline_editor/components/lint/ci_lint_results_param.vue create mode 100644 app/assets/javascripts/pipeline_editor/components/lint/ci_lint_results_value.vue create mode 100644 app/assets/javascripts/pipeline_editor/components/lint/ci_lint_warnings.vue create mode 100644 app/assets/javascripts/pipeline_editor/constants.js create mode 100644 app/assets/javascripts/pipeline_editor/graphql/mutations/commit_ci_file.mutation.graphql create mode 100644 app/assets/javascripts/pipeline_editor/graphql/mutations/lint_ci.mutation.graphql create mode 100644 app/assets/javascripts/pipeline_editor/graphql/queries/ci_config.graphql create mode 100644 app/assets/javascripts/pipeline_new/utils/format_refs.js create mode 100644 app/assets/javascripts/pipelines/components/graph/accessors.js create mode 100644 app/assets/javascripts/pipelines/components/graph/graph_component_legacy.vue create mode 100644 app/assets/javascripts/pipelines/components/graph/graph_component_wrapper.vue create mode 100644 app/assets/javascripts/pipelines/components/graph/linked_pipelines_column_legacy.vue create mode 100644 app/assets/javascripts/pipelines/components/graph/stage_column_component_legacy.vue create mode 100644 app/assets/javascripts/pipelines/components/graph/utils.js create mode 100644 app/assets/javascripts/pipelines/components/graph_shared/linked_graph_wrapper.vue create mode 100644 app/assets/javascripts/pipelines/components/graph_shared/main_graph_wrapper.vue delete mode 100644 app/assets/javascripts/pipelines/components/pipeline_graph/gitlab_ci_yaml_visualization.vue create mode 100644 app/assets/javascripts/pipelines/components/unwrapping_utils.js create mode 100644 app/assets/javascripts/pipelines/graphql/fragments/linked_pipelines.fragment.graphql create mode 100644 app/assets/javascripts/pipelines/graphql/queries/get_pipeline_details.query.graphql create mode 100644 app/assets/javascripts/pipelines/graphql/queries/pipeline_stages_connection.fragment.graphql delete mode 100644 app/assets/javascripts/pipelines/mixins/graph_width_mixin.js create mode 100644 app/assets/javascripts/pipelines/pipelines_index.js delete mode 100644 app/assets/javascripts/projects/default_sample_data_templates.js create mode 100644 app/assets/javascripts/projects/pipelines/charts/components/app_legacy.vue create mode 100644 app/assets/javascripts/projects/pipelines/charts/graphql/queries/get_pipeline_count_by_status.query.graphql create mode 100644 app/assets/javascripts/projects/pipelines/charts/graphql/queries/get_project_pipeline_statistics.query.graphql create mode 100644 app/assets/javascripts/projects/settings/components/shared_runners_toggle.vue create mode 100644 app/assets/javascripts/projects/settings/mount_shared_runners_toggle.js create mode 100644 app/assets/javascripts/registry/explorer/graphql/fragments/container_repository.fragment.graphql create mode 100644 app/assets/javascripts/registry/explorer/graphql/index.js create mode 100644 app/assets/javascripts/registry/explorer/graphql/mutations/delete_container_repository.mutation.graphql create mode 100644 app/assets/javascripts/registry/explorer/graphql/mutations/delete_container_repository_tags.mutation.graphql create mode 100644 app/assets/javascripts/registry/explorer/graphql/queries/get_container_repository_details.query.graphql create mode 100644 app/assets/javascripts/registry/explorer/graphql/queries/get_group_container_repositories.query.graphql create mode 100644 app/assets/javascripts/registry/explorer/graphql/queries/get_project_container_repositories.query.graphql delete mode 100644 app/assets/javascripts/registry/explorer/stores/actions.js delete mode 100644 app/assets/javascripts/registry/explorer/stores/getters.js delete mode 100644 app/assets/javascripts/registry/explorer/stores/index.js delete mode 100644 app/assets/javascripts/registry/explorer/stores/mutation_types.js delete mode 100644 app/assets/javascripts/registry/explorer/stores/mutations.js delete mode 100644 app/assets/javascripts/registry/explorer/stores/state.js delete mode 100644 app/assets/javascripts/registry/explorer/utils.js create mode 100644 app/assets/javascripts/registry/settings/components/expiration_dropdown.vue create mode 100644 app/assets/javascripts/registry/settings/components/expiration_input.vue create mode 100644 app/assets/javascripts/registry/settings/components/expiration_run_text.vue create mode 100644 app/assets/javascripts/registry/settings/components/expiration_toggle.vue delete mode 100644 app/assets/javascripts/registry/settings/graphql/mutations/update_container_expiration_policy.graphql create mode 100644 app/assets/javascripts/registry/settings/graphql/mutations/update_container_expiration_policy.mutation.graphql delete mode 100644 app/assets/javascripts/registry/settings/graphql/queries/get_expiration_policy.graphql create mode 100644 app/assets/javascripts/registry/settings/graphql/queries/get_expiration_policy.query.graphql create mode 100644 app/assets/javascripts/registry/settings/utils.js delete mode 100644 app/assets/javascripts/registry/shared/components/expiration_policy_fields.vue delete mode 100644 app/assets/javascripts/registry/shared/constants.js delete mode 100644 app/assets/javascripts/registry/shared/utils.js delete mode 100644 app/assets/javascripts/search/group_filter/components/group_filter.vue delete mode 100644 app/assets/javascripts/search/group_filter/constants.js delete mode 100644 app/assets/javascripts/search/group_filter/index.js create mode 100644 app/assets/javascripts/search/topbar/components/group_filter.vue create mode 100644 app/assets/javascripts/search/topbar/components/project_filter.vue create mode 100644 app/assets/javascripts/search/topbar/components/searchable_dropdown.vue create mode 100644 app/assets/javascripts/search/topbar/constants.js create mode 100644 app/assets/javascripts/search/topbar/index.js create mode 100644 app/assets/javascripts/terraform/components/states_table_actions.vue create mode 100644 app/assets/javascripts/terraform/graphql/mutations/lock_state.mutation.graphql create mode 100644 app/assets/javascripts/terraform/graphql/mutations/remove_state.mutation.graphql create mode 100644 app/assets/javascripts/terraform/graphql/mutations/unlock_state.mutation.graphql create mode 100644 app/assets/javascripts/vue_merge_request_widget/components/mr_widget_how_to_merge_modal.vue create mode 100644 app/assets/javascripts/vue_merge_request_widget/queries/permissions.query.graphql create mode 100644 app/assets/javascripts/vue_merge_request_widget/queries/states/conflicts.query.graphql create mode 100644 app/assets/javascripts/vue_merge_request_widget/queries/states/missing_branch.query.graphql delete mode 100644 app/assets/javascripts/vue_shared/components/callout.vue create mode 100644 app/assets/javascripts/vue_shared/components/color_picker/color_picker.vue create mode 100644 app/assets/javascripts/vue_shared/components/gfm_autocomplete/gfm_autocomplete.vue create mode 100644 app/assets/javascripts/vue_shared/components/gfm_autocomplete/utils.js delete mode 100644 app/assets/javascripts/vue_shared/components/gl_mentions.vue delete mode 100644 app/assets/javascripts/vue_shared/components/loading_button.vue create mode 100644 app/assets/javascripts/vue_shared/components/markdown/apply_suggestion.vue delete mode 100644 app/assets/javascripts/vue_shared/components/members/action_buttons/access_request_action_buttons.vue delete mode 100644 app/assets/javascripts/vue_shared/components/members/action_buttons/action_button_group.vue delete mode 100644 app/assets/javascripts/vue_shared/components/members/action_buttons/approve_access_request_button.vue delete mode 100644 app/assets/javascripts/vue_shared/components/members/action_buttons/group_action_buttons.vue delete mode 100644 app/assets/javascripts/vue_shared/components/members/action_buttons/invite_action_buttons.vue delete mode 100644 app/assets/javascripts/vue_shared/components/members/action_buttons/leave_button.vue delete mode 100644 app/assets/javascripts/vue_shared/components/members/action_buttons/remove_group_link_button.vue delete mode 100644 app/assets/javascripts/vue_shared/components/members/action_buttons/remove_member_button.vue delete mode 100644 app/assets/javascripts/vue_shared/components/members/action_buttons/resend_invite_button.vue delete mode 100644 app/assets/javascripts/vue_shared/components/members/action_buttons/user_action_buttons.vue delete mode 100644 app/assets/javascripts/vue_shared/components/members/avatars/group_avatar.vue delete mode 100644 app/assets/javascripts/vue_shared/components/members/avatars/invite_avatar.vue delete mode 100644 app/assets/javascripts/vue_shared/components/members/avatars/user_avatar.vue delete mode 100644 app/assets/javascripts/vue_shared/components/members/constants.js delete mode 100644 app/assets/javascripts/vue_shared/components/members/modals/leave_modal.vue delete mode 100644 app/assets/javascripts/vue_shared/components/members/modals/remove_group_link_modal.vue delete mode 100644 app/assets/javascripts/vue_shared/components/members/table/created_at.vue delete mode 100644 app/assets/javascripts/vue_shared/components/members/table/expiration_datepicker.vue delete mode 100644 app/assets/javascripts/vue_shared/components/members/table/expires_at.vue delete mode 100644 app/assets/javascripts/vue_shared/components/members/table/member_action_buttons.vue delete mode 100644 app/assets/javascripts/vue_shared/components/members/table/member_avatar.vue delete mode 100644 app/assets/javascripts/vue_shared/components/members/table/member_source.vue delete mode 100644 app/assets/javascripts/vue_shared/components/members/table/members_table.vue delete mode 100644 app/assets/javascripts/vue_shared/components/members/table/members_table_cell.vue delete mode 100644 app/assets/javascripts/vue_shared/components/members/table/role_dropdown.vue delete mode 100644 app/assets/javascripts/vue_shared/components/members/utils.js delete mode 100644 app/assets/javascripts/vue_shared/directives/popover.js create mode 100644 app/assets/javascripts/vue_shared/security_reports/components/constants.js create mode 100644 app/assets/javascripts/vue_shared/security_reports/components/help_icon.vue create mode 100644 app/assets/javascripts/vue_shared/security_reports/components/security_report_download_dropdown.vue create mode 100644 app/assets/javascripts/vue_shared/security_reports/components/security_summary.vue create mode 100644 app/assets/javascripts/vue_shared/security_reports/queries/security_report_download_paths.query.graphql create mode 100644 app/assets/javascripts/vue_shared/security_reports/store/constants.js create mode 100644 app/assets/javascripts/vue_shared/security_reports/store/getters.js create mode 100644 app/assets/javascripts/vue_shared/security_reports/store/index.js create mode 100644 app/assets/javascripts/vue_shared/security_reports/store/messages.js create mode 100644 app/assets/javascripts/vue_shared/security_reports/store/state.js create mode 100644 app/assets/javascripts/vue_shared/security_reports/utils.js delete mode 100644 app/assets/javascripts/vuex_shared/modules/members/actions.js delete mode 100644 app/assets/javascripts/vuex_shared/modules/members/index.js delete mode 100644 app/assets/javascripts/vuex_shared/modules/members/mutation_types.js delete mode 100644 app/assets/javascripts/vuex_shared/modules/members/mutations.js delete mode 100644 app/assets/javascripts/vuex_shared/modules/members/state.js delete mode 100644 app/assets/javascripts/vuex_shared/modules/members/utils.js create mode 100644 app/assets/javascripts/vulnerabilities/constants.js create mode 100644 app/assets/javascripts/whats_new/components/feature.vue create mode 100644 app/assets/javascripts/whats_new/utils/notification.js (limited to 'app/assets/javascripts') diff --git a/app/assets/javascripts/admin/users/components/app.vue b/app/assets/javascripts/admin/users/components/app.vue new file mode 100644 index 00000000000..a3abd904a6b --- /dev/null +++ b/app/assets/javascripts/admin/users/components/app.vue @@ -0,0 +1,26 @@ + + + diff --git a/app/assets/javascripts/admin/users/components/users_table.vue b/app/assets/javascripts/admin/users/components/users_table.vue new file mode 100644 index 00000000000..a2d68972519 --- /dev/null +++ b/app/assets/javascripts/admin/users/components/users_table.vue @@ -0,0 +1,63 @@ + + + diff --git a/app/assets/javascripts/admin/users/index.js b/app/assets/javascripts/admin/users/index.js new file mode 100644 index 00000000000..21780ee9984 --- /dev/null +++ b/app/assets/javascripts/admin/users/index.js @@ -0,0 +1,22 @@ +import Vue from 'vue'; +import { convertObjectPropsToCamelCase } from '~/lib/utils/common_utils'; +import AdminUsersApp from './components/app.vue'; + +export default function(el = document.querySelector('#js-admin-users-app')) { + if (!el) { + return false; + } + + const { users, paths } = el.dataset; + + return new Vue({ + el, + render: createElement => + createElement(AdminUsersApp, { + props: { + users: convertObjectPropsToCamelCase(JSON.parse(users), { deep: true }), + paths: convertObjectPropsToCamelCase(JSON.parse(paths)), + }, + }), + }); +} diff --git a/app/assets/javascripts/alert_management/components/sidebar/sidebar_assignee.vue b/app/assets/javascripts/alert_management/components/sidebar/sidebar_assignee.vue index df07038151e..c39a72a45b9 100644 --- a/app/assets/javascripts/alert_management/components/sidebar/sidebar_assignee.vue +++ b/app/assets/javascripts/alert_management/components/sidebar/sidebar_assignee.vue @@ -27,25 +27,12 @@ export default { - - - - - - {{ user.name }} - - {{ user.username }} - + {{ user.name }} diff --git a/app/assets/javascripts/alert_management/components/sidebar/sidebar_assignees.vue b/app/assets/javascripts/alert_management/components/sidebar/sidebar_assignees.vue index 5e4fd56738b..3af68d42ddf 100644 --- a/app/assets/javascripts/alert_management/components/sidebar/sidebar_assignees.vue +++ b/app/assets/javascripts/alert_management/components/sidebar/sidebar_assignees.vue @@ -13,7 +13,7 @@ import { } from '@gitlab/ui'; import { debounce } from 'lodash'; import axios from '~/lib/utils/axios_utils'; -import { s__ } from '~/locale'; +import { s__, __ } from '~/locale'; import alertSetAssignees from '../../graphql/mutations/alert_set_assignees.mutation.graphql'; import SidebarAssignee from './sidebar_assignee.vue'; @@ -96,7 +96,10 @@ export default { .sort((a, b) => (a.active === b.active ? 0 : a.active ? -1 : 1)); // eslint-disable-line no-nested-ternary }, dropdownClass() { - return this.isDropdownShowing ? 'show' : 'gl-display-none'; + return this.isDropdownShowing ? 'dropdown-menu-selectable show' : 'gl-display-none'; + }, + dropDownTitle() { + return this.userName ?? __('Select assignee'); }, userListValid() { return !this.isDropdownSearching && this.users.length > 0; @@ -217,81 +220,80 @@ export default {

- + +

+ {{ __('Assign To') }} +

+ + - - {{ __('None') }} - - - {{ __('assign yourself') }} - +
+ + + +
+
+ + + + + + {{ userFullName }} + + @{{ userName }}
+ + {{ __('None') }} - + + {{ __('assign yourself') }} + +
diff --git a/app/assets/javascripts/alerts_settings/components/alerts_integrations_list.vue b/app/assets/javascripts/alerts_settings/components/alerts_integrations_list.vue index 12c0409629f..cf16750dbf8 100644 --- a/app/assets/javascripts/alerts_settings/components/alerts_integrations_list.vue +++ b/app/assets/javascripts/alerts_settings/components/alerts_integrations_list.vue @@ -11,7 +11,6 @@ import { GlSprintf, } from '@gitlab/ui'; import { s__, __ } from '~/locale'; -import glFeatureFlagsMixin from '~/vue_shared/mixins/gl_feature_flags_mixin'; import Tracking from '~/tracking'; import { trackAlertIntegrationsViewsOptions, @@ -54,7 +53,6 @@ export default { GlTooltip: GlTooltipDirective, GlModal: GlModalDirective, }, - mixins: [glFeatureFlagsMixin()], props: { integrations: { type: Array, @@ -170,7 +168,7 @@ export default { diff --git a/app/assets/javascripts/boards/components/board_column_new.vue b/app/assets/javascripts/boards/components/board_column_new.vue index 8a59355eb83..7839f45c48b 100644 --- a/app/assets/javascripts/boards/components/board_column_new.vue +++ b/app/assets/javascripts/boards/components/board_column_new.vue @@ -1,13 +1,11 @@ @@ -66,13 +58,12 @@ export default { diff --git a/app/assets/javascripts/boards/components/board_configuration_options.vue b/app/assets/javascripts/boards/components/board_configuration_options.vue index 754b00b54e0..99d1e4a2611 100644 --- a/app/assets/javascripts/boards/components/board_configuration_options.vue +++ b/app/assets/javascripts/boards/components/board_configuration_options.vue @@ -42,7 +42,7 @@ export default {