From aee0a117a889461ce8ced6fcf73207fe017f1d99 Mon Sep 17 00:00:00 2001 From: GitLab Bot Date: Mon, 20 Dec 2021 13:37:47 +0000 Subject: Add latest changes from gitlab-org/gitlab@14-6-stable-ee --- app/assets/images/logos/jira-gray.svg | 1 - app/assets/images/logos/shimo.svg | 1 + .../javascripts/access_tokens/components/token.vue | 55 ++ .../access_tokens/components/tokens_app.vue | 111 ++++ app/assets/javascripts/access_tokens/constants.js | 4 + app/assets/javascripts/access_tokens/index.js | 30 ++ .../admin/deploy_keys/components/table.vue | 213 +++++++- .../admin/users/components/actions/activate.vue | 21 +- .../admin/users/components/actions/approve.vue | 20 +- .../admin/users/components/actions/ban.vue | 19 +- .../admin/users/components/actions/block.vue | 19 +- .../admin/users/components/actions/deactivate.vue | 19 +- .../admin/users/components/actions/reject.vue | 19 +- .../admin/users/components/actions/unban.vue | 19 +- .../admin/users/components/actions/unblock.vue | 20 +- .../admin/users/components/actions/unlock.vue | 19 +- .../users/components/modals/delete_user_modal.vue | 13 +- .../admin/users/components/user_actions.vue | 2 +- .../queries/get_count_by_status.query.graphql | 1 + .../create_http_integration.mutation.graphql | 2 + .../destroy_http_integration.mutation.graphql | 2 + .../mutations/reset_http_token.mutation.graphql | 2 + .../update_http_integration.mutation.graphql | 2 + .../queries/get_http_integration.query.graphql | 1 + .../graphql/queries/get_integrations.query.graphql | 1 + .../queries/parse_sample_payload.query.graphql | 1 + .../devops_reports/components/devops_score.vue | 8 +- .../shared/graphql/projects.query.graphql | 1 + app/assets/javascripts/api.js | 7 + app/assets/javascripts/api/packages_api.js | 32 ++ ...p_latest_artifact_project_setting.query.graphql | 1 + .../batch_comments/components/draft_note.vue | 2 +- app/assets/javascripts/behaviors/copy_code.js | 66 +++ app/assets/javascripts/behaviors/gl_emoji.js | 2 +- app/assets/javascripts/behaviors/index.js | 1 - .../behaviors/shortcuts/shortcuts_issuable.js | 9 + .../javascripts/blob/components/blob_content.vue | 2 +- app/assets/javascripts/blob/pdf/pdf_viewer.vue | 8 +- .../blob/pipeline_tour_success_modal.vue | 2 +- app/assets/javascripts/blob_edit/edit_blob.js | 43 +- app/assets/javascripts/boards/boards_util.js | 12 +- .../boards/components/board_card_inner.vue | 2 +- .../boards/components/board_content_sidebar.vue | 4 - .../boards/components/board_filtered_search.vue | 103 +++- .../javascripts/boards/components/board_list.vue | 16 +- .../boards/components/board_list_header.vue | 39 +- .../boards/components/boards_selector.vue | 3 + .../components/issue_board_filtered_search.vue | 85 +-- .../sidebar/board_sidebar_labels_select.vue | 173 ------ .../sidebar/board_sidebar_subscription.vue | 75 --- app/assets/javascripts/boards/constants.js | 14 + .../boards/graphql/board_labels.query.graphql | 2 + .../graphql/board_list_create.mutation.graphql | 2 + .../graphql/board_list_shared.fragment.graphql | 1 - .../graphql/board_list_update.mutation.graphql | 2 + .../boards/graphql/board_lists.query.graphql | 8 + .../graphql/board_lists_deferred.query.graphql | 6 + .../boards/graphql/group_board.query.graphql | 1 + .../graphql/group_board_members.query.graphql | 1 + .../graphql/group_board_milestones.query.graphql | 1 + .../boards/graphql/group_boards.query.graphql | 1 + .../boards/graphql/group_projects.query.graphql | 1 + .../graphql/issue_set_labels.mutation.graphql | 11 +- .../issue_set_subscription.mutation.graphql | 1 + .../graphql/issue_set_title.mutation.graphql | 1 + .../boards/graphql/lists_issues.query.graphql | 6 +- .../boards/graphql/project_board.query.graphql | 1 + .../graphql/project_board_members.query.graphql | 1 + .../graphql/project_board_milestones.query.graphql | 1 + .../boards/graphql/project_boards.query.graphql | 1 + .../graphql/project_milestones.query.graphql | 1 + app/assets/javascripts/boards/index.js | 3 +- .../boards/mount_filtered_search_issue_boards.js | 3 +- app/assets/javascripts/boards/stores/actions.js | 133 +++-- .../javascripts/ci_lint/components/ci_lint.vue | 2 +- .../components/triggers_list.vue | 2 +- .../components/ci_variable_modal.vue | 42 +- .../components/ci_variable_table.vue | 48 +- .../javascripts/ci_variable_list/constants.js | 3 + .../agents/components/activity_events_list.vue | 176 +++++++ .../agents/components/activity_history_item.vue | 79 +++ .../clusters/agents/components/show.vue | 16 +- .../clusters/agents/components/token_table.vue | 13 +- .../javascripts/clusters/agents/constants.js | 37 ++ .../fragments/cluster_agent_token.fragment.graphql | 2 +- .../get_agent_activity_events.query.graphql | 25 + .../queries/get_cluster_agent.query.graphql | 2 + app/assets/javascripts/clusters/agents/index.js | 3 +- .../clusters_list/components/agent_empty_state.vue | 67 +-- .../clusters_list/components/agents.vue | 9 +- .../components/available_agents_dropdown.vue | 30 +- .../components/clusters_empty_state.vue | 89 ++-- .../components/clusters_main_view.vue | 19 +- .../clusters_list/components/clusters_view_all.vue | 33 +- .../components/install_agent_modal.vue | 325 ++++++++---- app/assets/javascripts/clusters_list/constants.js | 147 +++--- .../clusters_list/graphql/cache_update.js | 84 ++- .../fragments/cluster_agent.fragment.graphql | 1 + .../queries/agent_configurations.query.graphql | 2 + .../graphql/queries/get_agents.query.graphql | 2 + .../code_navigation/components/doc_line.vue | 1 + .../content_editor/extensions/attachment.js | 8 +- .../javascripts/content_editor/extensions/audio.js | 8 +- .../extensions/code_block_highlight.js | 4 +- .../content_editor/extensions/division.js | 14 + .../extensions/footnote_definition.js | 21 + .../extensions/footnote_reference.js | 37 ++ .../content_editor/extensions/footnotes_section.js | 19 + .../content_editor/extensions/html_marks.js | 9 +- .../javascripts/content_editor/extensions/image.js | 8 +- .../content_editor/extensions/inline_diff.js | 6 +- .../javascripts/content_editor/extensions/link.js | 9 +- .../content_editor/extensions/task_item.js | 8 +- .../javascripts/content_editor/extensions/video.js | 10 +- .../content_editor/extensions/word_break.js | 10 +- .../services/create_content_editor.js | 6 + .../content_editor/services/markdown_serializer.js | 23 +- app/assets/javascripts/create_label.js | 131 ----- .../javascripts/crm/components/contact_form.vue | 224 ++++++++ .../javascripts/crm/components/contacts_root.vue | 129 ++++- .../crm/components/new_organization_form.vue | 164 ++++++ .../crm/components/organizations_root.vue | 91 +++- .../queries/create_contact.mutation.graphql | 10 + .../queries/create_organization.mutation.graphql | 10 + .../queries/crm_contact_fields.fragment.graphql | 14 + .../crm_organization_fields.fragment.graphql | 7 + .../queries/get_group_contacts.query.graphql | 15 +- .../queries/get_group_organizations.query.graphql | 8 +- .../queries/update_contact.mutation.graphql | 10 + app/assets/javascripts/crm/constants.js | 3 + app/assets/javascripts/crm/contacts_bundle.js | 16 +- app/assets/javascripts/crm/organizations_bundle.js | 16 +- app/assets/javascripts/crm/routes.js | 16 + app/assets/javascripts/delete_label_modal.js | 16 - .../components/design_note_pin.vue | 53 -- .../components/design_notes/design_discussion.vue | 12 +- .../components/design_overlay.vue | 8 +- .../discussion_resolved_status.fragment.graphql | 2 + .../mutations/upload_design.mutation.graphql | 2 + .../graphql/queries/get_design.query.graphql | 2 + app/assets/javascripts/diffs/components/app.vue | 4 - .../javascripts/diffs/components/diff_file.vue | 2 +- .../javascripts/diffs/components/diff_row.vue | 10 +- .../javascripts/diffs/components/diff_view.vue | 3 +- .../javascripts/diffs/store/modules/diff_state.js | 1 + app/assets/javascripts/diffs/store/mutations.js | 2 +- app/assets/javascripts/diffs/utils/discussions.js | 76 --- app/assets/javascripts/dropzone_input.js | 8 +- app/assets/javascripts/editor/constants.js | 4 + .../extensions/example_source_editor_extension.js | 14 +- .../extensions/source_editor_ci_schema_ext.js | 47 +- .../extensions/source_editor_extension_base.js | 111 ++-- .../extensions/source_editor_file_template_ext.js | 16 +- .../extensions/source_editor_markdown_ext.js | 330 ++++-------- .../source_editor_markdown_livepreview_ext.js | 167 ++++++ .../editor/extensions/source_editor_webide_ext.js | 272 +++++----- .../editor/extensions/source_editor_yaml_ext.js | 279 +++++----- app/assets/javascripts/editor/source_editor.js | 179 ++----- .../javascripts/editor/source_editor_extension.js | 2 +- .../javascripts/editor/source_editor_instance.js | 76 +-- app/assets/javascripts/emoji/constants.js | 3 + app/assets/javascripts/emoji/index.js | 29 +- .../components/confirm_rollback_modal.vue | 41 +- .../components/delete_environment_modal.vue | 31 +- .../components/enable_review_app_modal.vue | 12 + .../environments/components/environment_delete.vue | 23 +- .../environments/components/environment_item.vue | 2 +- .../components/environment_rollback.vue | 34 +- .../components/new_environment_folder.vue | 27 +- .../components/new_environments_app.vue | 180 ++++++- .../javascripts/environments/graphql/client.js | 16 +- .../set_environment_to_delete.mutation.graphql | 3 + .../set_environment_to_rollback.mutation.graphql | 3 + .../graphql/queries/environmentApp.query.graphql | 8 - .../graphql/queries/environment_app.query.graphql | 9 + .../queries/environment_to_delete.query.graphql | 7 + .../queries/environment_to_rollback.query.graphql | 7 + .../graphql/queries/page_info.query.graphql | 8 + .../graphql/queries/poll_interval.query.graphql | 3 + .../javascripts/environments/graphql/resolvers.js | 123 ++++- .../environments/graphql/typedefs.graphql | 46 ++ .../error_tracking/components/error_details.vue | 2 +- .../error_tracking/queries/details.query.graphql | 1 + app/assets/javascripts/experimentation/utils.js | 27 +- .../javascripts/feature_flags/components/form.vue | 7 + .../filtered_search/available_dropdown_mappings.js | 2 +- .../javascripts/filtered_search/constants.js | 7 + app/assets/javascripts/flash.js | 8 +- .../javascripts/google_cloud/components/app.vue | 55 +- .../google_cloud/components/errors/gcp_error.vue | 29 + .../components/errors/no_gcp_projects.vue | 26 + .../javascripts/google_cloud/components/home.vue | 41 ++ .../google_cloud/components/service_accounts.vue | 65 --- .../components/service_accounts_form.vue | 70 +++ .../components/service_accounts_list.vue | 65 +++ app/assets/javascripts/google_cloud/index.js | 13 +- app/assets/javascripts/graphql_shared/constants.js | 6 +- .../fragments/alert.fragment.graphql | 1 + .../fragments/alert_detail_item.fragment.graphql | 1 + .../fragments/issuable_timelogs.fragment.graphql | 2 + .../fragments/user_availability.fragment.graphql | 1 + .../create_merge_request.mutation.graphql | 1 + .../queries/alert_details.query.graphql | 1 + .../queries/get_alerts.query.graphql | 1 + .../queries/group_users_search.query.graphql | 1 + .../project_user_members_search.query.graphql | 1 + .../queries/users_search.query.graphql | 2 + app/assets/javascripts/group_label_subscription.js | 76 --- .../javascripts/header_search/components/app.vue | 138 ++++- .../header_search_autocomplete_items.vue | 31 +- .../components/header_search_default_items.vue | 24 +- .../components/header_search_scoped_items.vue | 38 +- app/assets/javascripts/header_search/constants.js | 26 +- .../javascripts/header_search/store/actions.js | 4 + .../javascripts/header_search/store/getters.js | 107 ++-- .../header_search/store/mutation_types.js | 1 + .../javascripts/header_search/store/mutations.js | 7 +- .../javascripts/ide/components/activity_bar.vue | 2 +- .../javascripts/ide/components/ide_tree_list.vue | 14 +- .../ide/components/new_dropdown/index.vue | 2 +- .../ide/components/pipelines/empty_state.vue | 35 ++ .../javascripts/ide/components/pipelines/list.vue | 28 +- .../javascripts/ide/components/repo_editor.vue | 39 +- app/assets/javascripts/ide/constants.js | 6 +- app/assets/javascripts/ide/ide_router.js | 69 +-- app/assets/javascripts/ide/index.js | 11 +- app/assets/javascripts/ide/lib/themes/monokai.js | 2 +- app/assets/javascripts/ide/lib/themes/none.js | 1 + .../javascripts/ide/lib/themes/solarized_dark.js | 2 +- .../javascripts/ide/lib/themes/solarized_light.js | 2 +- app/assets/javascripts/ide/lib/themes/white.js | 1 + .../ide/queries/ide_project.fragment.graphql | 1 + app/assets/javascripts/ide/services/index.js | 34 +- .../javascripts/ide/stores/actions/project.js | 57 +- .../javascripts/ide/stores/mutation_types.js | 1 + .../javascripts/ide/stores/mutations/project.js | 12 + .../import_entities/components/pagination_bar.vue | 90 ---- .../components/import_actions_cell.vue | 2 +- .../import_groups/components/import_table.vue | 135 ++--- .../components/import_target_cell.vue | 126 +++-- .../import_entities/import_groups/constants.js | 4 + .../import_groups/graphql/client_factory.js | 31 +- ...k_import_source_group_progress.fragment.graphql | 1 + .../mutations/import_groups.mutation.graphql | 1 + .../bulk_import_source_groups.query.graphql | 9 + .../graphql/services/local_storage_cache.js | 9 +- .../import_groups/graphql/typedefs.graphql | 16 + .../fragments/incident_fields.fragment.graphql | 1 + .../queries/get_count_by_status.query.graphql | 1 + .../graphql/queries/get_incidents.query.graphql | 4 + app/assets/javascripts/init_confirm_danger.js | 2 + app/assets/javascripts/init_issuable_sidebar.js | 16 - app/assets/javascripts/init_labels.js | 19 - app/assets/javascripts/integrations/constants.js | 4 - app/assets/javascripts/integrations/edit/api.js | 9 + .../edit/components/active_checkbox.vue | 11 +- .../edit/components/confirmation_modal.vue | 9 +- .../edit/components/integration_form.vue | 129 +++-- .../edit/components/jira_issues_fields.vue | 17 +- .../edit/components/reset_confirmation_modal.vue | 8 +- app/assets/javascripts/integrations/edit/index.js | 22 +- .../javascripts/integrations/edit/store/actions.js | 29 +- .../javascripts/integrations/edit/store/getters.js | 2 - .../integrations/edit/store/mutation_types.js | 2 - .../integrations/edit/store/mutations.js | 6 - .../javascripts/integrations/edit/store/state.js | 1 - .../integrations/integration_settings_form.js | 151 ------ .../overrides/components/integration_overrides.vue | 40 +- .../components/invite_members_modal.vue | 69 +-- .../components/invite_members_trigger.vue | 15 - app/assets/javascripts/invite_members/constants.js | 12 +- .../invite_members/init_invite_members_modal.js | 2 - .../components/status_select.vue | 58 ++ .../issuable/bulk_update_sidebar/constants.js | 17 + .../init_issue_status_select.js | 17 + .../issuable_bulk_update_actions.js | 126 +++++ .../issuable_bulk_update_sidebar.js | 173 ++++++ .../issuable_init_bulk_update_sidebar.js | 19 + .../bulk_update_sidebar/subscription_select.js | 28 + .../issuable/components/issuable_by_email.vue | 3 +- .../components/issuable_header_warnings.vue | 61 +++ .../issuable/components/issue_assignees.vue | 107 ++++ .../issuable/components/issue_milestone.vue | 91 ++++ .../issuable/components/related_issuable_item.vue | 201 +++++++ app/assets/javascripts/issuable/constants.js | 5 + app/assets/javascripts/issuable/index.js | 116 ++++ .../issuable/init_csv_import_export_buttons.js | 48 -- .../javascripts/issuable/init_issuable_by_email.js | 35 -- .../javascripts/issuable/issuable_context.js | 69 +++ app/assets/javascripts/issuable/issuable_form.js | 219 ++++++++ .../issuable/issuable_template_selector.js | 111 ++++ .../issuable/issuable_template_selectors.js | 32 ++ .../issuable/mixins/related_issuable_mixin.js | 214 ++++++++ .../components/status_select.vue | 58 -- .../issuable_bulk_update_sidebar/constants.js | 17 - .../init_issue_status_select.js | 17 - .../issuable_bulk_update_actions.js | 126 ----- .../issuable_bulk_update_sidebar.js | 173 ------ .../issuable_init_bulk_update_sidebar.js | 19 - .../subscription_select.js | 28 - app/assets/javascripts/issuable_context.js | 69 --- .../components/issuable_create_root.vue | 44 -- .../issuable_create/components/issuable_form.vue | 128 ----- app/assets/javascripts/issuable_form.js | 219 -------- app/assets/javascripts/issuable_index.js | 7 - .../components/issuable_bulk_edit_sidebar.vue | 35 -- .../issuable_list/components/issuable_item.vue | 295 ----------- .../components/issuable_list_root.vue | 353 ------------- .../issuable_list/components/issuable_tabs.vue | 65 --- app/assets/javascripts/issuable_list/constants.js | 51 -- .../issuable_show/components/issuable_body.vue | 194 ------- .../components/issuable_description.vue | 52 -- .../components/issuable_discussion.vue | 15 - .../components/issuable_edit_form.vue | 167 ------ .../issuable_show/components/issuable_header.vue | 152 ------ .../components/issuable_show_root.vue | 162 ------ .../issuable_show/components/issuable_title.vue | 101 ---- app/assets/javascripts/issuable_show/constants.js | 5 - app/assets/javascripts/issuable_show/event_hub.js | 3 - .../components/issuable_sidebar_root.vue | 86 --- .../javascripts/issuable_sidebar/constants.js | 1 - .../issuable_suggestions/components/app.vue | 94 ---- .../issuable_suggestions/components/item.vue | 132 ----- .../javascripts/issuable_suggestions/index.js | 38 -- .../queries/issues.query.graphql | 26 - .../components/info_popover.vue | 41 -- .../javascripts/issuable_type_selector/index.js | 16 - app/assets/javascripts/issue.js | 113 ---- .../javascripts/issue_show/components/app.vue | 585 --------------------- .../issue_show/components/description.vue | 169 ------ .../issue_show/components/edit_actions.vue | 156 ------ .../javascripts/issue_show/components/edited.vue | 45 -- .../issue_show/components/fields/description.vue | 70 --- .../components/fields/description_template.vue | 111 ---- .../issue_show/components/fields/title.vue | 33 -- .../issue_show/components/fields/type.vue | 96 ---- .../javascripts/issue_show/components/form.vue | 222 -------- .../issue_show/components/header_actions.vue | 283 ---------- .../incidents/graphql/queries/get_alert.graphql | 22 - .../components/incidents/highlight_bar.vue | 63 --- .../components/incidents/incident_tabs.vue | 81 --- .../issue_show/components/locked_warning.vue | 33 -- .../issue_show/components/pinned_links.vue | 68 --- .../javascripts/issue_show/components/title.vue | 90 ---- app/assets/javascripts/issue_show/constants.js | 46 -- app/assets/javascripts/issue_show/event_hub.js | 3 - app/assets/javascripts/issue_show/graphql.js | 9 - app/assets/javascripts/issue_show/incident.js | 99 ---- app/assets/javascripts/issue_show/issue.js | 83 --- .../javascripts/issue_show/mixins/animate.js | 13 - app/assets/javascripts/issue_show/mixins/update.js | 10 - .../queries/get_issue_state.query.graphql | 3 - .../queries/promote_to_epic.mutation.graphql | 8 - .../queries/update_issue.mutation.graphql | 9 - .../queries/update_issue_state.mutation.graphql | 3 - .../javascripts/issue_show/services/index.js | 29 - app/assets/javascripts/issue_show/stores/index.js | 46 -- .../javascripts/issue_show/utils/parse_data.js | 23 - .../issue_show/utils/update_description.js | 36 -- app/assets/javascripts/issues/constants.js | 25 + .../issues/filtered_search_service_desk.js | 31 ++ app/assets/javascripts/issues/form.js | 24 + .../issues/init_filtered_search_service_desk.js | 11 + app/assets/javascripts/issues/issue.js | 113 ++++ app/assets/javascripts/issues/manual_ordering.js | 61 +++ .../issues/new/components/title_suggestions.vue | 94 ++++ .../new/components/title_suggestions_item.vue | 132 +++++ .../issues/new/components/type_popover.vue | 41 ++ app/assets/javascripts/issues/new/index.js | 56 ++ .../issues/new/queries/issues.query.graphql | 29 + .../components/related_merge_requests.vue | 120 +++++ .../issues/related_merge_requests/index.js | 24 + .../issues/related_merge_requests/store/actions.js | 36 ++ .../issues/related_merge_requests/store/index.js | 14 + .../related_merge_requests/store/mutation_types.js | 4 + .../related_merge_requests/store/mutations.js | 19 + .../issues/related_merge_requests/store/state.js | 7 + .../components/sentry_error_stack_trace.vue | 43 ++ .../issues/sentry_error_stack_trace/index.js | 22 + app/assets/javascripts/issues/show.js | 59 +++ .../javascripts/issues/show/components/app.vue | 558 ++++++++++++++++++++ .../issues/show/components/delete_issue_modal.vue | 71 +++ .../issues/show/components/description.vue | 169 ++++++ .../issues/show/components/edit_actions.vue | 141 +++++ .../javascripts/issues/show/components/edited.vue | 45 ++ .../issues/show/components/fields/description.vue | 70 +++ .../components/fields/description_template.vue | 111 ++++ .../issues/show/components/fields/title.vue | 33 ++ .../issues/show/components/fields/type.vue | 96 ++++ .../javascripts/issues/show/components/form.vue | 227 ++++++++ .../issues/show/components/header_actions.vue | 345 ++++++++++++ .../incidents/graphql/queries/get_alert.graphql | 23 + .../show/components/incidents/highlight_bar.vue | 63 +++ .../show/components/incidents/incident_tabs.vue | 81 +++ .../issues/show/components/locked_warning.vue | 33 ++ .../issues/show/components/pinned_links.vue | 68 +++ .../javascripts/issues/show/components/title.vue | 90 ++++ app/assets/javascripts/issues/show/constants.js | 22 + app/assets/javascripts/issues/show/event_hub.js | 3 + app/assets/javascripts/issues/show/graphql.js | 9 + app/assets/javascripts/issues/show/incident.js | 101 ++++ app/assets/javascripts/issues/show/issue.js | 86 +++ .../javascripts/issues/show/mixins/animate.js | 13 + .../javascripts/issues/show/mixins/update.js | 10 + .../show/queries/get_issue_state.query.graphql | 3 + .../show/queries/promote_to_epic.mutation.graphql | 9 + .../show/queries/update_issue.mutation.graphql | 9 + .../queries/update_issue_state.mutation.graphql | 3 + .../javascripts/issues/show/services/index.js | 29 + app/assets/javascripts/issues/show/stores/index.js | 46 ++ .../javascripts/issues/show/utils/parse_data.js | 23 + .../issues/show/utils/update_description.js | 36 ++ .../issues_list/components/issuable.vue | 2 +- .../issues_list/components/issuables_list_app.vue | 12 +- .../components/issue_card_time_info.vue | 18 +- .../issues_list/components/issues_list_app.vue | 171 +++--- app/assets/javascripts/issues_list/constants.js | 59 +-- app/assets/javascripts/issues_list/index.js | 6 +- .../issues_list/queries/get_issues.query.graphql | 2 + .../queries/get_issues_counts.query.graphql | 2 + .../queries/get_issues_list_details.query.graphql | 3 + .../issues_list/queries/issue.fragment.graphql | 1 + .../issues_list/queries/iteration.fragment.graphql | 10 - .../queries/search_iterations.query.graphql | 18 - .../queries/search_labels.query.graphql | 2 + .../queries/search_milestones.query.graphql | 2 + .../queries/search_projects.query.graphql | 1 + .../issues_list/queries/search_users.query.graphql | 4 + app/assets/javascripts/issues_list/utils.js | 3 +- .../graphql/queries/get_project.query.graphql | 1 + .../javascripts/jira_connect/branches/index.js | 2 +- .../jira_connect/subscriptions/components/app.vue | 4 + .../subscriptions/components/user_link.vue | 67 +++ .../jira_connect/subscriptions/index.js | 21 +- .../queries/get_jira_import_details.query.graphql | 1 + .../queries/jira_import.fragment.graphql | 1 + .../queries/search_project_members.query.graphql | 2 + app/assets/javascripts/jobs/bridge/app.vue | 20 + .../jobs/bridge/components/constants.js | 1 + .../jobs/bridge/components/empty_state.vue | 45 ++ .../javascripts/jobs/bridge/components/sidebar.vue | 98 ++++ .../jobs/components/job_log_controllers.vue | 2 +- app/assets/javascripts/jobs/components/sidebar.vue | 2 +- .../components/sidebar_job_details_container.vue | 5 +- .../jobs/components/table/cells/actions_cell.vue | 16 +- .../jobs/components/table/cells/pipeline_cell.vue | 10 +- .../javascripts/jobs/components/table/constants.js | 67 +++ .../table/graphql/queries/get_jobs.query.graphql | 7 + .../jobs/components/table/jobs_table.vue | 69 +-- app/assets/javascripts/jobs/index.js | 39 +- app/assets/javascripts/label_manager.js | 146 ----- app/assets/javascripts/labels.js | 37 -- .../labels/components/delete_label_modal.vue | 81 +++ .../labels/components/promote_label_modal.vue | 113 ++++ .../javascripts/labels/create_label_dropdown.js | 131 +++++ app/assets/javascripts/labels/event_hub.js | 3 + .../javascripts/labels/group_label_subscription.js | 76 +++ app/assets/javascripts/labels/index.js | 137 +++++ app/assets/javascripts/labels/label_manager.js | 146 +++++ app/assets/javascripts/labels/labels.js | 37 ++ app/assets/javascripts/labels/labels_select.js | 515 ++++++++++++++++++ .../labels/project_label_subscription.js | 77 +++ app/assets/javascripts/labels_select.js | 515 ------------------ app/assets/javascripts/lib/dompurify.js | 2 +- app/assets/javascripts/lib/utils/common_utils.js | 11 + app/assets/javascripts/lib/utils/constants.js | 1 + app/assets/javascripts/lib/utils/dom_utils.js | 14 + .../javascripts/lib/utils/intersection_observer.js | 28 + .../javascripts/lib/utils/navigation_utility.js | 39 ++ app/assets/javascripts/lib/utils/url_utility.js | 2 +- app/assets/javascripts/main.js | 40 +- app/assets/javascripts/manual_ordering.js | 61 --- .../access_request_action_buttons.vue | 1 + .../action_buttons/invite_action_buttons.vue | 2 + .../action_buttons/remove_member_button.vue | 16 +- .../action_buttons/user_action_buttons.vue | 18 +- .../components/table/member_action_buttons.vue | 5 + .../members/components/table/members_table.vue | 5 + .../merge_conflicts/merge_conflicts_bundle.js | 2 +- app/assets/javascripts/milestone.js | 49 -- app/assets/javascripts/milestone_select.js | 273 ---------- .../components/delete_milestone_modal.vue | 137 +++++ .../components/promote_milestone_modal.vue | 104 ++++ app/assets/javascripts/milestones/event_hub.js | 3 + app/assets/javascripts/milestones/index.js | 123 +++++ app/assets/javascripts/milestones/milestone.js | 49 ++ .../javascripts/milestones/milestone_select.js | 273 ++++++++++ .../javascripts/milestones/milestone_utils.js | 32 -- app/assets/javascripts/milestones/utils.js | 32 ++ .../getDashboardValidationWarnings.query.graphql | 1 + .../mr_popover/components/mr_popover.vue | 11 +- .../mr_popover/queries/merge_request.query.graphql | 5 + app/assets/javascripts/network/branch_graph.js | 10 +- .../javascripts/notes/components/comment_form.vue | 26 +- .../notes/components/diff_with_note.vue | 14 +- .../notes/components/discussion_filter.vue | 3 +- .../notes/components/discussion_locked_widget.vue | 12 +- .../notes/components/discussion_notes.vue | 90 +--- .../javascripts/notes/components/note_body.vue | 2 +- .../notes/components/noteable_discussion.vue | 18 +- .../javascripts/notes/components/noteable_note.vue | 15 +- .../javascripts/notes/components/notes_app.vue | 8 +- .../notes/components/sidebar_subscription.vue | 2 +- app/assets/javascripts/notes/i18n.js | 16 +- app/assets/javascripts/notes/stores/actions.js | 3 +- .../javascripts/notes/stores/mutation_types.js | 1 + app/assets/javascripts/notes/stores/mutations.js | 4 + .../packages/list/components/packages_list.vue | 129 ----- .../packages/list/components/packages_list_app.vue | 116 ---- app/assets/javascripts/packages/list/constants.js | 99 ---- .../packages/list/packages_list_app_bundle.js | 23 - .../javascripts/packages/list/stores/actions.js | 83 --- .../javascripts/packages/list/stores/getters.js | 5 - .../javascripts/packages/list/stores/index.js | 20 - .../packages/list/stores/mutation_types.js | 7 - .../javascripts/packages/list/stores/mutations.js | 33 -- .../javascripts/packages/list/stores/state.js | 54 -- app/assets/javascripts/packages/list/utils.js | 25 - .../shared/components/package_icon_and_name.vue | 17 - .../shared/components/package_list_row.vue | 174 ------ .../packages/shared/components/package_path.vue | 86 --- .../packages/shared/components/package_tags.vue | 110 ---- .../shared/components/packages_list_loader.vue | 60 --- .../packages/shared/components/publish_method.vue | 64 --- .../javascripts/packages/shared/constants.js | 49 -- app/assets/javascripts/packages/shared/utils.js | 43 -- .../components/details_page/delete_modal.vue | 1 + .../components/details_page/details_header.vue | 1 - .../explorer/components/details_page/tags_list.vue | 86 +-- ...et_container_repositories_details.query.graphql | 2 + .../get_container_repository_details.query.graphql | 1 + .../get_container_repository_tags.query.graphql | 1 + .../container_registry/explorer/pages/details.vue | 6 +- .../container_registry/explorer/pages/list.vue | 1 + .../dependency_proxy/app.vue | 17 +- .../get_dependency_proxy_details.query.graphql | 2 + .../components/infrastructure_icon_and_name.vue | 17 - .../components/infrastructure_search.vue | 45 -- .../components/infrastructure_title.vue | 53 -- .../details/components/app.vue | 23 +- .../details/store/actions.js | 2 +- .../list/components/infrastructure_search.vue | 45 ++ .../list/components/infrastructure_title.vue | 53 ++ .../list/components/packages_list.vue | 127 +++++ .../list/components/packages_list_app.vue | 119 +++++ .../infrastructure_registry/list/constants.js | 51 ++ .../infrastructure_registry/list/stores/actions.js | 83 +++ .../infrastructure_registry/list/stores/getters.js | 5 + .../infrastructure_registry/list/stores/index.js | 20 + .../list/stores/mutation_types.js | 7 + .../list/stores/mutations.js | 33 ++ .../infrastructure_registry/list/stores/state.js | 54 ++ .../infrastructure_registry/list/utils.js | 25 + .../infrastructure_registry/list_app_bundle.js | 7 +- .../infrastructure_registry/shared/constants.js | 1 + .../shared/infrastructure_icon_and_name.vue | 17 + .../shared/package_list_row.vue | 161 ++++++ .../package_registry/components/details/app.vue | 4 +- .../components/details/package_title.vue | 2 +- .../components/details/version_row.vue | 4 +- .../package_registry/components/list/app.vue | 198 ------- .../components/list/package_list_row.vue | 17 +- .../components/list/packages_list.vue | 3 +- .../package_registry/constants.js | 24 +- .../fragments/package_data.fragment.graphql | 6 +- .../queries/get_package_details.query.graphql | 7 + .../graphql/queries/get_packages.query.graphql | 2 + .../package_registry/index.js | 30 ++ .../package_registry/pages/index.vue | 5 + .../package_registry/pages/list.js | 24 - .../package_registry/pages/list.vue | 200 +++++++ .../package_registry/router.js | 21 + .../settings/group/bundle.js | 3 +- .../group/components/dependency_proxy_settings.vue | 123 ++++- .../group/components/group_settings_app.vue | 4 + .../settings/group/components/settings_titles.vue | 7 +- ...y_proxy_image_ttl_group_policy.mutation.graphql | 11 + .../get_group_packages_settings.query.graphql | 5 + .../settings/group/graphql/utils/cache_update.js | 5 + .../group/graphql/utils/optimistic_responses.js | 12 + .../queries/get_expiration_policy.query.graphql | 1 + .../shared/components/package_icon_and_name.vue | 17 + .../shared/components/package_path.vue | 86 +++ .../shared/components/package_tags.vue | 110 ++++ .../shared/components/packages_list_loader.vue | 60 +++ .../shared/components/publish_method.vue | 64 +++ .../shared/components/registry_list.vue | 124 +++++ .../packages_and_registries/shared/constants.js | 36 ++ .../packages_and_registries/shared/utils.js | 10 + .../pages/admin/integrations/edit/index.js | 18 +- .../javascripts/pages/admin/labels/edit/index.js | 2 +- .../javascripts/pages/admin/labels/index/index.js | 24 +- .../javascripts/pages/admin/labels/new/index.js | 2 +- .../javascripts/pages/admin/services/edit/index.js | 4 - .../pages/admin/services/index/index.js | 4 - app/assets/javascripts/pages/constants.js | 6 - .../javascripts/pages/dashboard/issues/index.js | 4 +- .../pages/dashboard/merge_requests/index.js | 2 +- .../pages/dashboard/milestones/show/index.js | 2 +- .../index/components/customize_homepage_banner.vue | 102 ---- .../pages/dashboard/projects/index/index.js | 2 - .../index/init_customize_homepage_banner.js | 16 - .../javascripts/pages/groups/issues/index.js | 6 +- .../javascripts/pages/groups/labels/edit/index.js | 2 +- .../javascripts/pages/groups/labels/index/index.js | 3 +- .../javascripts/pages/groups/labels/new/index.js | 2 +- .../pages/groups/merge_requests/index.js | 4 +- .../pages/groups/milestones/edit/index.js | 2 +- .../pages/groups/milestones/new/index.js | 2 +- .../pages/groups/milestones/show/index.js | 5 +- .../pages/groups/packages/index/index.js | 4 +- .../pages/groups/settings/ci_cd/show/index.js | 2 +- .../groups/settings/integrations/edit/index.js | 10 +- app/assets/javascripts/pages/help/ui/index.js | 3 - .../components/bulk_imports_history_app.vue | 3 +- .../shared/components/delete_milestone_modal.vue | 137 ----- .../shared/components/promote_milestone_modal.vue | 104 ---- .../shared/delete_milestone_modal_init.js | 75 --- .../pages/milestones/shared/event_hub.js | 3 - .../javascripts/pages/milestones/shared/index.js | 7 - .../milestones/shared/init_milestones_show.js | 11 - .../shared/promote_milestone_modal_init.js | 19 - .../pages/profiles/personal_access_tokens/index.js | 3 +- app/assets/javascripts/pages/projects/constants.js | 4 - .../javascripts/pages/projects/edit/index.js | 6 +- .../pages/projects/incidents/show/index.js | 2 +- .../pages/projects/issues/edit/index.js | 2 +- .../javascripts/pages/projects/issues/form.js | 25 - .../pages/projects/issues/index/index.js | 13 +- .../javascripts/pages/projects/issues/new/index.js | 2 +- .../issues/service_desk/filtered_search.js | 31 -- .../pages/projects/issues/service_desk/index.js | 11 +- .../javascripts/pages/projects/issues/show.js | 60 --- .../pages/projects/issues/show/index.js | 2 +- .../labels/components/promote_label_modal.vue | 113 ---- .../pages/projects/labels/edit/index.js | 2 +- .../javascripts/pages/projects/labels/event_hub.js | 3 - .../pages/projects/labels/index/index.js | 82 +-- .../javascripts/pages/projects/labels/new/index.js | 2 +- .../learn_gitlab/components/learn_gitlab.vue | 53 +- .../components/learn_gitlab_section_link.vue | 49 +- .../pages/projects/learn_gitlab/index/index.js | 5 +- .../pages/projects/merge_requests/index/index.js | 12 +- .../projects/merge_requests/init_merge_request.js | 8 +- .../merge_requests/init_merge_request_show.js | 2 +- .../merge_requests/queries/get_state.query.graphql | 2 + .../pages/projects/merge_requests/show/index.js | 4 +- .../pages/projects/milestones/edit/index.js | 2 +- .../pages/projects/milestones/index/index.js | 5 +- .../pages/projects/milestones/new/index.js | 2 +- .../pages/projects/milestones/show/index.js | 8 +- .../projects/packages/packages/index/index.js | 4 +- .../javascripts/pages/projects/path_locks/index.js | 3 - .../pages/projects/services/edit/index.js | 5 +- .../pages/projects/usage_quotas/index.js | 23 - .../pages/shared/wikis/components/wiki_form.vue | 70 ++- app/assets/javascripts/pdf/index.vue | 2 +- .../components/commit/commit_form.vue | 6 +- .../components/commit/commit_section.vue | 30 +- .../components/drawer/pipeline_editor_drawer.vue | 10 +- .../components/editor/text_editor.vue | 2 +- .../components/file_nav/branch_switcher.vue | 41 +- .../components/header/pipeline_status.vue | 28 +- .../components/header/validation_segment.vue | 7 +- .../components/lint/ci_lint_results.vue | 8 +- .../components/pipeline_editor_tabs.vue | 5 +- .../mutations/client/lint_ci.mutation.graphql | 22 + .../client/update_app_status.mutation.graphql | 3 + .../client/update_current_branch.mutation.graphql | 3 + .../update_last_commit_branch.mutation.graphql | 3 + .../client/update_pipeline_etag.mutation.graphql | 3 + .../mutations/commit_ci_file.mutation.graphql | 3 + .../graphql/mutations/lint_ci.mutation.graphql | 22 - .../mutations/update_app_status.mutation.graphql | 3 - .../update_current_branch.mutation.graphql | 3 - .../update_last_commit_branch.mutation.graphql | 3 - .../update_pipeline_etag.mutation.graphql | 3 - .../graphql/queries/available_branches.graphql | 12 - .../queries/available_branches.query.graphql | 13 + .../graphql/queries/blob_content.graphql | 11 - .../graphql/queries/blob_content.query.graphql | 13 + .../graphql/queries/ci_config.graphql | 12 - .../graphql/queries/ci_config.query.graphql | 12 + .../graphql/queries/client/app_status.graphql | 3 - .../queries/client/app_status.query.graphql | 5 + .../graphql/queries/client/current_branch.graphql | 3 - .../queries/client/current_branch.query.graphql | 7 + .../client/last_commit_branch.query.graphql | 6 +- .../graphql/queries/client/pipeline.graphql | 38 -- .../graphql/queries/client/pipeline_etag.graphql | 3 - .../queries/client/pipeline_etag.query.graphql | 5 + .../queries/get_starter_template.query.graphql | 1 + .../queries/latest_commit_sha.query.graphql | 2 + .../graphql/queries/pipeline.query.graphql | 41 ++ .../pipeline_editor/graphql/resolvers.js | 46 +- .../pipeline_editor/graphql/typedefs.graphql | 22 +- app/assets/javascripts/pipeline_editor/index.js | 38 +- .../pipeline_editor/pipeline_editor_app.vue | 67 ++- .../components/graph/graph_view_selector.vue | 39 +- .../components/graph/job_group_dropdown.vue | 2 +- .../pipelines/components/graph/job_item.vue | 8 +- .../pipelines/components/graph/linked_pipeline.vue | 8 +- .../pipelines/components/jobs/jobs_app.vue | 121 +++++ .../components/pipeline_graph/job_pill.vue | 2 +- .../components/pipeline_graph/pipeline_graph.vue | 2 +- .../components/pipeline_graph/stage_name.vue | 2 +- .../components/pipelines_list/pipeline_stage.vue | 8 +- .../graphql/queries/get_dag_vis_data.query.graphql | 5 + .../queries/get_pipeline_header_data.query.graphql | 2 + .../queries/get_pipeline_jobs.query.graphql | 70 +++ .../pipelines/pipeline_details_bundle.js | 12 + .../javascripts/pipelines/pipeline_details_jobs.js | 34 ++ .../javascripts/project_label_subscription.js | 77 --- .../javascripts/projects/commit/constants.js | 2 +- .../queries/get_linked_pipelines.query.graphql | 6 + .../new/components/new_project_url_select.vue | 34 +- ...es_where_user_can_create_projects.query.graphql | 1 + .../projects/pipelines/charts/components/app.vue | 25 +- .../charts/components/statistics_list.vue | 17 +- .../get_pipeline_count_by_status.query.graphql | 1 + .../get_project_pipeline_statistics.query.graphql | 1 + .../javascripts/projects/pipelines/charts/index.js | 5 +- .../settings/components/transfer_project_form.vue | 63 +++ .../settings/init_transfer_project_form.js | 53 ++ .../components/service_desk_setting.vue | 201 ++++--- .../projects/storage_counter/components/app.vue | 106 ---- .../storage_counter/components/storage_table.vue | 88 ---- .../components/storage_type_icon.vue | 35 -- .../projects/storage_counter/constants.js | 61 --- .../javascripts/projects/storage_counter/index.js | 51 -- .../queries/project_storage.query.graphql | 16 - .../javascripts/projects/storage_counter/utils.js | 36 -- .../related_issues/components/issue_token.vue | 2 +- .../components/related_issues_list.vue | 2 +- .../components/related_merge_requests.vue | 120 ----- .../javascripts/related_merge_requests/index.js | 24 - .../related_merge_requests/store/actions.js | 36 -- .../related_merge_requests/store/index.js | 14 - .../related_merge_requests/store/mutation_types.js | 4 - .../related_merge_requests/store/mutations.js | 19 - .../related_merge_requests/store/state.js | 7 - .../graphql/fragments/release.fragment.graphql | 3 + .../fragments/release_for_editing.fragment.graphql | 1 + .../graphql/queries/all_releases.query.graphql | 1 + .../graphql/queries/one_release.query.graphql | 1 + .../queries/one_release_for_editing.query.graphql | 1 + .../javascripts/repository/commits_service.js | 11 +- .../repository/components/blob_button_group.vue | 9 + .../repository/components/blob_content_viewer.vue | 15 +- .../repository/components/blob_viewers/index.js | 16 +- .../components/blob_viewers/pdf_viewer.vue | 50 ++ .../components/blob_viewers/text_viewer.vue | 25 - .../repository/components/delete_blob_modal.vue | 14 +- .../repository/components/last_commit.vue | 2 +- .../repository/components/table/row.vue | 16 +- .../repository/components/tree_content.vue | 21 +- .../repository/components/upload_blob_modal.vue | 4 +- app/assets/javascripts/repository/constants.js | 7 +- app/assets/javascripts/repository/index.js | 2 +- .../mutations/lock_path.mutation.graphql | 1 + app/assets/javascripts/repository/pages/tree.vue | 2 +- .../repository/queries/blob_info.query.graphql | 7 + app/assets/javascripts/right_sidebar.js | 9 - .../runner/admin_runners/admin_runners_app.vue | 18 +- .../components/cells/runner_actions_cell.vue | 83 +-- .../runner/components/cells/runner_status_cell.vue | 12 +- .../components/cells/runner_summary_cell.vue | 2 +- .../components/runner_contacted_state_badge.vue | 69 --- .../runner/components/runner_delete_modal.vue | 51 ++ .../components/runner_filtered_search_bar.vue | 32 +- .../javascripts/runner/components/runner_list.vue | 36 +- .../runner/components/runner_status_badge.vue | 80 +++ .../search_tokens/status_token_config.js | 2 + .../runner/components/search_tokens/tag_token.vue | 1 - .../runner/components/stat/runner_online_stat.vue | 17 + app/assets/javascripts/runner/constants.js | 17 +- .../runner/graphql/get_group_runners.query.graphql | 1 + .../runner/graphql/get_runner.query.graphql | 2 + .../runner/graphql/runner_node.fragment.graphql | 3 +- .../runner/graphql/runner_update.mutation.graphql | 2 + .../runner/group_runners/group_runners_app.vue | 10 +- .../security_configuration/components/app.vue | 17 + .../security_configuration/components/constants.js | 71 +-- .../components/training_provider_list.vue | 61 +++ .../security_training_providers.query.graphql | 9 + .../javascripts/security_configuration/index.js | 31 +- .../javascripts/security_configuration/utils.js | 11 + .../components/sentry_error_stack_trace.vue | 43 -- .../javascripts/sentry_error_stack_trace/index.js | 22 - .../set_status_modal/set_status_modal_wrapper.vue | 11 +- app/assets/javascripts/shared/milestones/form.js | 22 - .../components/assignees/assignees_realtime.vue | 2 +- .../assignees/collapsed_assignee_list.vue | 2 +- .../assignees/sidebar_assignees_widget.vue | 2 +- .../assignees/uncollapsed_assignee_list.vue | 2 +- .../components/attention_requested_toggle.vue | 2 +- .../confidential/sidebar_confidentiality_form.vue | 2 +- .../components/crm_contacts/crm_contacts.vue | 131 +++++ .../queries/get_issue_crm_contacts.query.graphql | 7 + .../queries/issue_crm_contacts.fragment.graphql | 17 + .../issue_crm_contacts.subscription.graphql | 9 + .../components/date/sidebar_date_widget.vue | 13 +- .../components/date/sidebar_inherit_date.vue | 4 +- .../sidebar/components/labels/sidebar_labels.vue | 192 ------- .../mutations/update_issue_lock.mutation.graphql | 1 + .../update_merge_request_lock.mutation.graphql | 1 + .../reviewers/collapsed_reviewer_list.vue | 2 +- .../update_issuable_severity.mutation.graphql | 1 + .../components/severity/sidebar_severity.vue | 14 +- .../sidebar/components/sidebar_dropdown_widget.vue | 71 +-- .../subscriptions/sidebar_subscriptions_widget.vue | 2 +- .../components/time_tracking/time_tracker.vue | 2 +- app/assets/javascripts/sidebar/constants.js | 35 +- app/assets/javascripts/sidebar/graphql.js | 2 +- .../javascripts/sidebar/mount_milestone_sidebar.js | 2 +- app/assets/javascripts/sidebar/mount_sidebar.js | 70 ++- .../queries/epic_confidential.query.graphql | 1 + .../sidebar/queries/epic_due_date.query.graphql | 1 + .../queries/epic_participants.query.graphql | 1 + .../sidebar/queries/epic_reference.query.graphql | 1 + .../sidebar/queries/epic_start_date.query.graphql | 1 + .../sidebar/queries/epic_subscribed.query.graphql | 1 + .../sidebar/queries/epic_todo.query.graphql | 1 + .../issuable_assignees.subscription.graphql | 1 + .../queries/issue_confidential.query.graphql | 1 + .../sidebar/queries/issue_due_date.query.graphql | 1 + .../sidebar/queries/issue_reference.query.graphql | 1 + .../sidebar/queries/issue_subscribed.query.graphql | 1 + .../queries/issue_time_tracking.query.graphql | 1 + .../sidebar/queries/issue_todo.query.graphql | 1 + .../queries/merge_request_milestone.query.graphql | 1 + .../queries/merge_request_reference.query.graphql | 1 + .../queries/merge_request_subscribed.query.graphql | 1 + .../merge_request_time_tracking.query.graphql | 1 + .../queries/merge_request_todo.query.graphql | 1 + .../queries/project_issue_milestone.query.graphql | 1 + .../queries/project_milestones.query.graphql | 1 + .../sidebar/queries/sidebarDetails.query.graphql | 2 + .../sidebar/queries/sidebarDetailsMR.query.graphql | 2 + .../queries/update_epic_title.mutation.graphql | 1 + .../update_merge_request_labels.mutation.graphql | 4 +- app/assets/javascripts/sidebar/sidebar_mediator.js | 14 + .../javascripts/snippets/components/edit.vue | 2 +- .../snippets/components/snippet_blob_view.vue | 4 +- .../snippets/components/snippet_header.vue | 2 +- .../snippets/fragments/project.fragment.graphql | 6 - .../mutations/createSnippet.mutation.graphql | 1 + .../mutations/updateSnippet.mutation.graphql | 1 + .../graphql/queries/source_content.query.graphql | 1 + app/assets/javascripts/tabs/constants.js | 20 + app/assets/javascripts/tabs/index.js | 239 +++++++++ .../templates/issuable_template_selector.js | 115 ---- .../templates/issuable_template_selectors.js | 31 -- .../fragments/state_version.fragment.graphql | 6 +- .../graphql/queries/get_states.query.graphql | 3 +- app/assets/javascripts/test_utils/simulate_drag.js | 42 +- .../queries/get_ci_job_token_scope.query.graphql | 1 + ..._projects_with_ci_job_token_scope.query.graphql | 2 + app/assets/javascripts/ui_development_kit.js | 28 - .../user_lists/components/add_user_modal.vue | 2 +- .../user_lists/components/user_list.vue | 2 +- app/assets/javascripts/vue_alerts.js | 28 +- .../components/deployment/deployment_info.vue | 2 +- .../components/extensions/base.vue | 171 ++++-- .../components/extensions/utils.js | 62 +++ .../components/mr_widget_header.vue | 2 +- .../components/mr_widget_pipeline.vue | 2 +- .../components/mr_widget_related_links.vue | 8 +- .../components/states/commit_edit.vue | 1 - .../components/states/merge_checks_failed.vue | 2 +- .../components/states/mr_widget_archived.vue | 2 +- .../components/states/mr_widget_conflicts.vue | 7 +- .../components/states/mr_widget_rebase.vue | 3 - .../components/states/ready_to_merge.vue | 87 +-- .../components/states/work_in_progress.vue | 9 +- .../components/terraform/terraform_plan.vue | 4 +- .../vue_merge_request_widget/constants.js | 15 + .../vue_merge_request_widget/extensions/issues.js | 18 +- .../extensions/issues.query.graphql | 1 + .../extensions/issues_collapsed.query.graphql | 1 + .../mixins/ready_to_merge.js | 4 +- .../queries/get_state.query.graphql | 2 + .../queries/permissions.query.graphql | 2 + .../states/auto_merge_enabled.fragment.graphql | 1 + .../states/auto_merge_enabled.query.graphql | 1 + .../queries/states/auto_merge_failed.query.graphql | 2 + .../queries/states/conflicts.query.graphql | 2 + .../queries/states/draft.query.graphql | 2 + .../queries/states/missing_branch.query.graphql | 2 + .../states/new_ready_to_merge.query.graphql | 2 + .../queries/states/ready_to_merge.fragment.graphql | 3 + .../queries/states/rebase.query.graphql | 2 + .../queries/toggle_draft.mutation.graphql | 1 + .../stores/mr_widget_store.js | 1 - .../components/sidebar/sidebar_assignees.vue | 9 +- .../components/sidebar/sidebar_status.vue | 3 +- .../mutations/alert_issue_create.mutation.graphql | 1 + .../queries/alert_sidebar_details.query.graphql | 1 + .../components/chronic_duration_input.vue | 133 +++++ .../vue_shared/components/clipboard_button.vue | 6 + .../javascripts/vue_shared/components/commit.vue | 2 +- .../components/confirm_danger/confirm_danger.vue | 7 +- .../confirm_danger/confirm_danger_modal.vue | 4 +- .../vue_shared/components/confirm_modal.vue | 72 ++- .../components/confirm_modal_eventhub.js | 5 + .../date_time_picker/date_time_picker.vue | 2 +- .../vue_shared/components/delete_label_modal.vue | 81 --- .../design_management/design_note_pin.vue | 67 +++ .../vue_shared/components/dismissible_alert.vue | 1 + .../vue_shared/components/dom_element_listener.vue | 28 + .../components/file_icon/file_icon_map.js | 113 ++-- .../javascripts/vue_shared/components/file_row.vue | 1 + .../components/filtered_search_bar/constants.js | 15 - .../queries/epic.fragment.graphql | 15 - .../queries/search_epics.query.graphql | 16 - .../filtered_search_bar/tokens/author_token.vue | 1 - .../filtered_search_bar/tokens/base_token.vue | 42 +- .../filtered_search_bar/tokens/epic_token.vue | 129 ----- .../filtered_search_bar/tokens/iteration_token.vue | 138 ----- .../filtered_search_bar/tokens/label_token.vue | 1 - .../filtered_search_bar/tokens/milestone_token.vue | 2 +- .../filtered_search_bar/tokens/weight_token.vue | 66 --- .../form/input_copy_toggle_visibility.stories.js | 27 + .../form/input_copy_toggle_visibility.vue | 127 +++++ .../vue_shared/components/header_ci_component.vue | 2 + .../issuable/init_issuable_header_warning.js | 22 - .../issuable/issuable_header_warnings.vue | 61 --- .../components/issue/issue_assignees.vue | 107 ---- .../components/issue/issue_milestone.vue | 91 ---- .../components/issue/related_issuable_item.vue | 201 ------- .../vue_shared/components/line_numbers.vue | 57 ++ .../vue_shared/components/markdown/suggestions.vue | 2 +- .../vue_shared/components/markdown/toolbar.vue | 18 - .../namespace_select/namespace_select.vue | 93 ++++ .../components/notes/placeholder_note.vue | 10 +- .../vue_shared/components/notes/system_note.vue | 2 + .../pagination_bar/pagination_bar.stories.js | 40 ++ .../components/pagination_bar/pagination_bar.vue | 103 ++++ .../vue_shared/components/registry/list_item.vue | 6 +- .../components/registry/metadata_item.vue | 2 +- .../sidebar/collapsed_grouped_date_picker.vue | 101 ---- .../labels_select_vue/labels_select_root.vue | 2 + .../labels_select_widget/dropdown_contents.vue | 12 +- .../labels_select_widget/dropdown_header.vue | 14 +- .../labels_select_widget/dropdown_value.vue | 45 +- .../dropdown_value_collapsed.vue | 55 -- .../graphql/epic_labels.query.graphql | 1 + .../graphql/epic_update_labels.mutation.graphql | 4 +- .../graphql/issue_labels.query.graphql | 1 + .../graphql/merge_request_labels.query.graphql | 1 + .../labels_select_widget/labels_select_root.vue | 21 +- .../queries/get_alert_assignees.query.graphql | 1 + .../queries/get_issue_assignees.query.graphql | 1 + .../queries/get_issue_participants.query.graphql | 1 + .../sidebar/queries/get_mr_assignees.query.graphql | 1 + .../queries/get_mr_participants.query.graphql | 1 + .../vue_shared/components/source_editor.vue | 1 + .../vue_shared/components/source_viewer.vue | 88 ++++ .../storage_counter/usage_graph.stories.js | 38 -- .../components/storage_counter/usage_graph.vue | 148 ------ .../vue_shared/components/tooltip_on_truncate.vue | 69 --- .../tooltip_on_truncate.stories.js | 88 ++++ .../tooltip_on_truncate/tooltip_on_truncate.vue | 85 +++ .../create/components/issuable_create_root.vue | 44 ++ .../issuable/create/components/issuable_form.vue | 128 +++++ .../list/components/issuable_bulk_edit_sidebar.vue | 35 ++ .../issuable/list/components/issuable_item.vue | 303 +++++++++++ .../list/components/issuable_list_root.vue | 363 +++++++++++++ .../issuable/list/components/issuable_tabs.vue | 67 +++ .../vue_shared/issuable/list/constants.js | 51 ++ .../issuable/show/components/issuable_body.vue | 194 +++++++ .../show/components/issuable_description.vue | 52 ++ .../show/components/issuable_discussion.vue | 15 + .../show/components/issuable_edit_form.vue | 167 ++++++ .../issuable/show/components/issuable_header.vue | 152 ++++++ .../show/components/issuable_show_root.vue | 162 ++++++ .../issuable/show/components/issuable_title.vue | 101 ++++ .../vue_shared/issuable/show/constants.js | 5 + .../vue_shared/issuable/show/event_hub.js | 3 + .../sidebar/components/issuable_sidebar_root.vue | 86 +++ .../vue_shared/issuable/sidebar/constants.js | 1 + .../javascripts/vue_shared/mixins/issuable.js | 14 - .../vue_shared/mixins/related_issuable_mixin.js | 214 -------- .../components/manage_via_mr.vue | 2 +- .../fragments/job_artifacts.fragment.graphql | 2 + ...port_merge_request_download_paths.query.graphql | 3 + ...ty_report_pipeline_download_paths.query.graphql | 2 +- .../work_items/components/item_title.vue | 71 +++ .../graphql/create_work_item.mutation.graphql | 18 + .../work_items/graphql/fragmentTypes.json | 2 +- .../javascripts/work_items/graphql/provider.js | 20 +- .../javascripts/work_items/graphql/resolvers.js | 58 ++ .../work_items/graphql/typedefs.graphql | 52 +- .../graphql/update_work_item.mutation.graphql | 18 + .../work_items/graphql/widget.fragment.graphql | 2 +- .../work_items/graphql/work_item.query.graphql | 2 +- .../work_items/pages/create_work_item.vue | 71 +++ .../work_items/pages/work_item_root.vue | 38 +- app/assets/javascripts/work_items/router/routes.js | 7 +- .../components/design_management/design.scss | 9 +- app/assets/stylesheets/framework/buttons.scss | 14 + app/assets/stylesheets/framework/common.scss | 7 + .../stylesheets/framework/contextual_sidebar.scss | 17 +- app/assets/stylesheets/framework/files.scss | 33 +- app/assets/stylesheets/framework/header.scss | 2 +- app/assets/stylesheets/framework/layout.scss | 27 + .../stylesheets/framework/markdown_area.scss | 4 + app/assets/stylesheets/framework/snippets.scss | 5 + app/assets/stylesheets/framework/typography.scss | 6 + app/assets/stylesheets/highlight/common.scss | 8 +- app/assets/stylesheets/highlight/themes/dark.scss | 13 +- .../stylesheets/highlight/themes/monokai.scss | 11 +- app/assets/stylesheets/highlight/themes/none.scss | 11 +- .../highlight/themes/solarized-dark.scss | 11 +- .../highlight/themes/solarized-light.scss | 11 +- app/assets/stylesheets/highlight/white_base.scss | 11 +- .../lazy_bundles/select2_overrides.scss | 4 - .../stylesheets/page_bundles/_pipeline_mixins.scss | 6 +- app/assets/stylesheets/page_bundles/ide.scss | 5 + app/assets/stylesheets/page_bundles/import.scss | 35 +- .../stylesheets/page_bundles/merge_requests.scss | 2 +- app/assets/stylesheets/page_bundles/pipeline.scss | 11 +- app/assets/stylesheets/pages/clusters.scss | 26 +- app/assets/stylesheets/pages/commits.scss | 1 - app/assets/stylesheets/pages/issuable.scss | 10 - app/assets/stylesheets/pages/merge_requests.scss | 13 - app/assets/stylesheets/pages/profile.scss | 10 - app/assets/stylesheets/pages/search.scss | 45 ++ app/assets/stylesheets/startup/startup-dark.scss | 71 ++- .../stylesheets/startup/startup-general.scss | 67 ++- .../stylesheets/themes/dark_mode_overrides.scss | 4 + app/assets/stylesheets/themes/theme_helper.scss | 1 + app/assets/stylesheets/utilities.scss | 18 +- 1033 files changed, 21880 insertions(+), 16850 deletions(-) delete mode 100644 app/assets/images/logos/jira-gray.svg create mode 100644 app/assets/images/logos/shimo.svg create mode 100644 app/assets/javascripts/access_tokens/components/token.vue create mode 100644 app/assets/javascripts/access_tokens/components/tokens_app.vue create mode 100644 app/assets/javascripts/access_tokens/constants.js create mode 100644 app/assets/javascripts/api/packages_api.js create mode 100644 app/assets/javascripts/behaviors/copy_code.js delete mode 100644 app/assets/javascripts/boards/components/sidebar/board_sidebar_labels_select.vue delete mode 100644 app/assets/javascripts/boards/components/sidebar/board_sidebar_subscription.vue create mode 100644 app/assets/javascripts/boards/graphql/board_lists_deferred.query.graphql create mode 100644 app/assets/javascripts/clusters/agents/components/activity_events_list.vue create mode 100644 app/assets/javascripts/clusters/agents/components/activity_history_item.vue create mode 100644 app/assets/javascripts/clusters/agents/graphql/queries/get_agent_activity_events.query.graphql create mode 100644 app/assets/javascripts/content_editor/extensions/footnote_definition.js create mode 100644 app/assets/javascripts/content_editor/extensions/footnote_reference.js create mode 100644 app/assets/javascripts/content_editor/extensions/footnotes_section.js delete mode 100644 app/assets/javascripts/create_label.js create mode 100644 app/assets/javascripts/crm/components/contact_form.vue create mode 100644 app/assets/javascripts/crm/components/new_organization_form.vue create mode 100644 app/assets/javascripts/crm/components/queries/create_contact.mutation.graphql create mode 100644 app/assets/javascripts/crm/components/queries/create_organization.mutation.graphql create mode 100644 app/assets/javascripts/crm/components/queries/crm_contact_fields.fragment.graphql create mode 100644 app/assets/javascripts/crm/components/queries/crm_organization_fields.fragment.graphql create mode 100644 app/assets/javascripts/crm/components/queries/update_contact.mutation.graphql create mode 100644 app/assets/javascripts/crm/constants.js create mode 100644 app/assets/javascripts/crm/routes.js delete mode 100644 app/assets/javascripts/delete_label_modal.js delete mode 100644 app/assets/javascripts/design_management/components/design_note_pin.vue delete mode 100644 app/assets/javascripts/diffs/utils/discussions.js create mode 100644 app/assets/javascripts/editor/extensions/source_editor_markdown_livepreview_ext.js create mode 100644 app/assets/javascripts/environments/graphql/mutations/set_environment_to_delete.mutation.graphql create mode 100644 app/assets/javascripts/environments/graphql/mutations/set_environment_to_rollback.mutation.graphql delete mode 100644 app/assets/javascripts/environments/graphql/queries/environmentApp.query.graphql create mode 100644 app/assets/javascripts/environments/graphql/queries/environment_app.query.graphql create mode 100644 app/assets/javascripts/environments/graphql/queries/environment_to_delete.query.graphql create mode 100644 app/assets/javascripts/environments/graphql/queries/environment_to_rollback.query.graphql create mode 100644 app/assets/javascripts/environments/graphql/queries/page_info.query.graphql create mode 100644 app/assets/javascripts/environments/graphql/queries/poll_interval.query.graphql create mode 100644 app/assets/javascripts/google_cloud/components/errors/gcp_error.vue create mode 100644 app/assets/javascripts/google_cloud/components/errors/no_gcp_projects.vue create mode 100644 app/assets/javascripts/google_cloud/components/home.vue delete mode 100644 app/assets/javascripts/google_cloud/components/service_accounts.vue create mode 100644 app/assets/javascripts/google_cloud/components/service_accounts_form.vue create mode 100644 app/assets/javascripts/google_cloud/components/service_accounts_list.vue delete mode 100644 app/assets/javascripts/group_label_subscription.js create mode 100644 app/assets/javascripts/ide/components/pipelines/empty_state.vue delete mode 100644 app/assets/javascripts/import_entities/components/pagination_bar.vue delete mode 100644 app/assets/javascripts/init_issuable_sidebar.js delete mode 100644 app/assets/javascripts/init_labels.js create mode 100644 app/assets/javascripts/integrations/edit/api.js delete mode 100644 app/assets/javascripts/integrations/integration_settings_form.js create mode 100644 app/assets/javascripts/issuable/bulk_update_sidebar/components/status_select.vue create mode 100644 app/assets/javascripts/issuable/bulk_update_sidebar/constants.js create mode 100644 app/assets/javascripts/issuable/bulk_update_sidebar/init_issue_status_select.js create mode 100644 app/assets/javascripts/issuable/bulk_update_sidebar/issuable_bulk_update_actions.js create mode 100644 app/assets/javascripts/issuable/bulk_update_sidebar/issuable_bulk_update_sidebar.js create mode 100644 app/assets/javascripts/issuable/bulk_update_sidebar/issuable_init_bulk_update_sidebar.js create mode 100644 app/assets/javascripts/issuable/bulk_update_sidebar/subscription_select.js create mode 100644 app/assets/javascripts/issuable/components/issuable_header_warnings.vue create mode 100644 app/assets/javascripts/issuable/components/issue_assignees.vue create mode 100644 app/assets/javascripts/issuable/components/issue_milestone.vue create mode 100644 app/assets/javascripts/issuable/components/related_issuable_item.vue create mode 100644 app/assets/javascripts/issuable/index.js delete mode 100644 app/assets/javascripts/issuable/init_csv_import_export_buttons.js delete mode 100644 app/assets/javascripts/issuable/init_issuable_by_email.js create mode 100644 app/assets/javascripts/issuable/issuable_context.js create mode 100644 app/assets/javascripts/issuable/issuable_form.js create mode 100644 app/assets/javascripts/issuable/issuable_template_selector.js create mode 100644 app/assets/javascripts/issuable/issuable_template_selectors.js create mode 100644 app/assets/javascripts/issuable/mixins/related_issuable_mixin.js delete mode 100644 app/assets/javascripts/issuable_bulk_update_sidebar/components/status_select.vue delete mode 100644 app/assets/javascripts/issuable_bulk_update_sidebar/constants.js delete mode 100644 app/assets/javascripts/issuable_bulk_update_sidebar/init_issue_status_select.js delete mode 100644 app/assets/javascripts/issuable_bulk_update_sidebar/issuable_bulk_update_actions.js delete mode 100644 app/assets/javascripts/issuable_bulk_update_sidebar/issuable_bulk_update_sidebar.js delete mode 100644 app/assets/javascripts/issuable_bulk_update_sidebar/issuable_init_bulk_update_sidebar.js delete mode 100644 app/assets/javascripts/issuable_bulk_update_sidebar/subscription_select.js delete mode 100644 app/assets/javascripts/issuable_context.js delete mode 100644 app/assets/javascripts/issuable_create/components/issuable_create_root.vue delete mode 100644 app/assets/javascripts/issuable_create/components/issuable_form.vue delete mode 100644 app/assets/javascripts/issuable_form.js delete mode 100644 app/assets/javascripts/issuable_index.js delete mode 100644 app/assets/javascripts/issuable_list/components/issuable_bulk_edit_sidebar.vue delete mode 100644 app/assets/javascripts/issuable_list/components/issuable_item.vue delete mode 100644 app/assets/javascripts/issuable_list/components/issuable_list_root.vue delete mode 100644 app/assets/javascripts/issuable_list/components/issuable_tabs.vue delete mode 100644 app/assets/javascripts/issuable_list/constants.js delete mode 100644 app/assets/javascripts/issuable_show/components/issuable_body.vue delete mode 100644 app/assets/javascripts/issuable_show/components/issuable_description.vue delete mode 100644 app/assets/javascripts/issuable_show/components/issuable_discussion.vue delete mode 100644 app/assets/javascripts/issuable_show/components/issuable_edit_form.vue delete mode 100644 app/assets/javascripts/issuable_show/components/issuable_header.vue delete mode 100644 app/assets/javascripts/issuable_show/components/issuable_show_root.vue delete mode 100644 app/assets/javascripts/issuable_show/components/issuable_title.vue delete mode 100644 app/assets/javascripts/issuable_show/constants.js delete mode 100644 app/assets/javascripts/issuable_show/event_hub.js delete mode 100644 app/assets/javascripts/issuable_sidebar/components/issuable_sidebar_root.vue delete mode 100644 app/assets/javascripts/issuable_sidebar/constants.js delete mode 100644 app/assets/javascripts/issuable_suggestions/components/app.vue delete mode 100644 app/assets/javascripts/issuable_suggestions/components/item.vue delete mode 100644 app/assets/javascripts/issuable_suggestions/index.js delete mode 100644 app/assets/javascripts/issuable_suggestions/queries/issues.query.graphql delete mode 100644 app/assets/javascripts/issuable_type_selector/components/info_popover.vue delete mode 100644 app/assets/javascripts/issuable_type_selector/index.js delete mode 100644 app/assets/javascripts/issue.js delete mode 100644 app/assets/javascripts/issue_show/components/app.vue delete mode 100644 app/assets/javascripts/issue_show/components/description.vue delete mode 100644 app/assets/javascripts/issue_show/components/edit_actions.vue delete mode 100644 app/assets/javascripts/issue_show/components/edited.vue delete mode 100644 app/assets/javascripts/issue_show/components/fields/description.vue delete mode 100644 app/assets/javascripts/issue_show/components/fields/description_template.vue delete mode 100644 app/assets/javascripts/issue_show/components/fields/title.vue delete mode 100644 app/assets/javascripts/issue_show/components/fields/type.vue delete mode 100644 app/assets/javascripts/issue_show/components/form.vue delete mode 100644 app/assets/javascripts/issue_show/components/header_actions.vue delete mode 100644 app/assets/javascripts/issue_show/components/incidents/graphql/queries/get_alert.graphql delete mode 100644 app/assets/javascripts/issue_show/components/incidents/highlight_bar.vue delete mode 100644 app/assets/javascripts/issue_show/components/incidents/incident_tabs.vue delete mode 100644 app/assets/javascripts/issue_show/components/locked_warning.vue delete mode 100644 app/assets/javascripts/issue_show/components/pinned_links.vue delete mode 100644 app/assets/javascripts/issue_show/components/title.vue delete mode 100644 app/assets/javascripts/issue_show/constants.js delete mode 100644 app/assets/javascripts/issue_show/event_hub.js delete mode 100644 app/assets/javascripts/issue_show/graphql.js delete mode 100644 app/assets/javascripts/issue_show/incident.js delete mode 100644 app/assets/javascripts/issue_show/issue.js delete mode 100644 app/assets/javascripts/issue_show/mixins/animate.js delete mode 100644 app/assets/javascripts/issue_show/mixins/update.js delete mode 100644 app/assets/javascripts/issue_show/queries/get_issue_state.query.graphql delete mode 100644 app/assets/javascripts/issue_show/queries/promote_to_epic.mutation.graphql delete mode 100644 app/assets/javascripts/issue_show/queries/update_issue.mutation.graphql delete mode 100644 app/assets/javascripts/issue_show/queries/update_issue_state.mutation.graphql delete mode 100644 app/assets/javascripts/issue_show/services/index.js delete mode 100644 app/assets/javascripts/issue_show/stores/index.js delete mode 100644 app/assets/javascripts/issue_show/utils/parse_data.js delete mode 100644 app/assets/javascripts/issue_show/utils/update_description.js create mode 100644 app/assets/javascripts/issues/constants.js create mode 100644 app/assets/javascripts/issues/filtered_search_service_desk.js create mode 100644 app/assets/javascripts/issues/form.js create mode 100644 app/assets/javascripts/issues/init_filtered_search_service_desk.js create mode 100644 app/assets/javascripts/issues/issue.js create mode 100644 app/assets/javascripts/issues/manual_ordering.js create mode 100644 app/assets/javascripts/issues/new/components/title_suggestions.vue create mode 100644 app/assets/javascripts/issues/new/components/title_suggestions_item.vue create mode 100644 app/assets/javascripts/issues/new/components/type_popover.vue create mode 100644 app/assets/javascripts/issues/new/index.js create mode 100644 app/assets/javascripts/issues/new/queries/issues.query.graphql create mode 100644 app/assets/javascripts/issues/related_merge_requests/components/related_merge_requests.vue create mode 100644 app/assets/javascripts/issues/related_merge_requests/index.js create mode 100644 app/assets/javascripts/issues/related_merge_requests/store/actions.js create mode 100644 app/assets/javascripts/issues/related_merge_requests/store/index.js create mode 100644 app/assets/javascripts/issues/related_merge_requests/store/mutation_types.js create mode 100644 app/assets/javascripts/issues/related_merge_requests/store/mutations.js create mode 100644 app/assets/javascripts/issues/related_merge_requests/store/state.js create mode 100644 app/assets/javascripts/issues/sentry_error_stack_trace/components/sentry_error_stack_trace.vue create mode 100644 app/assets/javascripts/issues/sentry_error_stack_trace/index.js create mode 100644 app/assets/javascripts/issues/show.js create mode 100644 app/assets/javascripts/issues/show/components/app.vue create mode 100644 app/assets/javascripts/issues/show/components/delete_issue_modal.vue create mode 100644 app/assets/javascripts/issues/show/components/description.vue create mode 100644 app/assets/javascripts/issues/show/components/edit_actions.vue create mode 100644 app/assets/javascripts/issues/show/components/edited.vue create mode 100644 app/assets/javascripts/issues/show/components/fields/description.vue create mode 100644 app/assets/javascripts/issues/show/components/fields/description_template.vue create mode 100644 app/assets/javascripts/issues/show/components/fields/title.vue create mode 100644 app/assets/javascripts/issues/show/components/fields/type.vue create mode 100644 app/assets/javascripts/issues/show/components/form.vue create mode 100644 app/assets/javascripts/issues/show/components/header_actions.vue create mode 100644 app/assets/javascripts/issues/show/components/incidents/graphql/queries/get_alert.graphql create mode 100644 app/assets/javascripts/issues/show/components/incidents/highlight_bar.vue create mode 100644 app/assets/javascripts/issues/show/components/incidents/incident_tabs.vue create mode 100644 app/assets/javascripts/issues/show/components/locked_warning.vue create mode 100644 app/assets/javascripts/issues/show/components/pinned_links.vue create mode 100644 app/assets/javascripts/issues/show/components/title.vue create mode 100644 app/assets/javascripts/issues/show/constants.js create mode 100644 app/assets/javascripts/issues/show/event_hub.js create mode 100644 app/assets/javascripts/issues/show/graphql.js create mode 100644 app/assets/javascripts/issues/show/incident.js create mode 100644 app/assets/javascripts/issues/show/issue.js create mode 100644 app/assets/javascripts/issues/show/mixins/animate.js create mode 100644 app/assets/javascripts/issues/show/mixins/update.js create mode 100644 app/assets/javascripts/issues/show/queries/get_issue_state.query.graphql create mode 100644 app/assets/javascripts/issues/show/queries/promote_to_epic.mutation.graphql create mode 100644 app/assets/javascripts/issues/show/queries/update_issue.mutation.graphql create mode 100644 app/assets/javascripts/issues/show/queries/update_issue_state.mutation.graphql create mode 100644 app/assets/javascripts/issues/show/services/index.js create mode 100644 app/assets/javascripts/issues/show/stores/index.js create mode 100644 app/assets/javascripts/issues/show/utils/parse_data.js create mode 100644 app/assets/javascripts/issues/show/utils/update_description.js delete mode 100644 app/assets/javascripts/issues_list/queries/iteration.fragment.graphql delete mode 100644 app/assets/javascripts/issues_list/queries/search_iterations.query.graphql create mode 100644 app/assets/javascripts/jira_connect/subscriptions/components/user_link.vue create mode 100644 app/assets/javascripts/jobs/bridge/app.vue create mode 100644 app/assets/javascripts/jobs/bridge/components/constants.js create mode 100644 app/assets/javascripts/jobs/bridge/components/empty_state.vue create mode 100644 app/assets/javascripts/jobs/bridge/components/sidebar.vue delete mode 100644 app/assets/javascripts/label_manager.js delete mode 100644 app/assets/javascripts/labels.js create mode 100644 app/assets/javascripts/labels/components/delete_label_modal.vue create mode 100644 app/assets/javascripts/labels/components/promote_label_modal.vue create mode 100644 app/assets/javascripts/labels/create_label_dropdown.js create mode 100644 app/assets/javascripts/labels/event_hub.js create mode 100644 app/assets/javascripts/labels/group_label_subscription.js create mode 100644 app/assets/javascripts/labels/index.js create mode 100644 app/assets/javascripts/labels/label_manager.js create mode 100644 app/assets/javascripts/labels/labels.js create mode 100644 app/assets/javascripts/labels/labels_select.js create mode 100644 app/assets/javascripts/labels/project_label_subscription.js delete mode 100644 app/assets/javascripts/labels_select.js create mode 100644 app/assets/javascripts/lib/utils/intersection_observer.js delete mode 100644 app/assets/javascripts/manual_ordering.js delete mode 100644 app/assets/javascripts/milestone.js delete mode 100644 app/assets/javascripts/milestone_select.js create mode 100644 app/assets/javascripts/milestones/components/delete_milestone_modal.vue create mode 100644 app/assets/javascripts/milestones/components/promote_milestone_modal.vue create mode 100644 app/assets/javascripts/milestones/event_hub.js create mode 100644 app/assets/javascripts/milestones/index.js create mode 100644 app/assets/javascripts/milestones/milestone.js create mode 100644 app/assets/javascripts/milestones/milestone_select.js delete mode 100644 app/assets/javascripts/milestones/milestone_utils.js create mode 100644 app/assets/javascripts/milestones/utils.js delete mode 100644 app/assets/javascripts/packages/list/components/packages_list.vue delete mode 100644 app/assets/javascripts/packages/list/components/packages_list_app.vue delete mode 100644 app/assets/javascripts/packages/list/constants.js delete mode 100644 app/assets/javascripts/packages/list/packages_list_app_bundle.js delete mode 100644 app/assets/javascripts/packages/list/stores/actions.js delete mode 100644 app/assets/javascripts/packages/list/stores/getters.js delete mode 100644 app/assets/javascripts/packages/list/stores/index.js delete mode 100644 app/assets/javascripts/packages/list/stores/mutation_types.js delete mode 100644 app/assets/javascripts/packages/list/stores/mutations.js delete mode 100644 app/assets/javascripts/packages/list/stores/state.js delete mode 100644 app/assets/javascripts/packages/list/utils.js delete mode 100644 app/assets/javascripts/packages/shared/components/package_icon_and_name.vue delete mode 100644 app/assets/javascripts/packages/shared/components/package_list_row.vue delete mode 100644 app/assets/javascripts/packages/shared/components/package_path.vue delete mode 100644 app/assets/javascripts/packages/shared/components/package_tags.vue delete mode 100644 app/assets/javascripts/packages/shared/components/packages_list_loader.vue delete mode 100644 app/assets/javascripts/packages/shared/components/publish_method.vue delete mode 100644 app/assets/javascripts/packages/shared/constants.js delete mode 100644 app/assets/javascripts/packages/shared/utils.js delete mode 100644 app/assets/javascripts/packages_and_registries/infrastructure_registry/components/infrastructure_icon_and_name.vue delete mode 100644 app/assets/javascripts/packages_and_registries/infrastructure_registry/components/infrastructure_search.vue delete mode 100644 app/assets/javascripts/packages_and_registries/infrastructure_registry/components/infrastructure_title.vue create mode 100644 app/assets/javascripts/packages_and_registries/infrastructure_registry/list/components/infrastructure_search.vue create mode 100644 app/assets/javascripts/packages_and_registries/infrastructure_registry/list/components/infrastructure_title.vue create mode 100644 app/assets/javascripts/packages_and_registries/infrastructure_registry/list/components/packages_list.vue create mode 100644 app/assets/javascripts/packages_and_registries/infrastructure_registry/list/components/packages_list_app.vue create mode 100644 app/assets/javascripts/packages_and_registries/infrastructure_registry/list/constants.js create mode 100644 app/assets/javascripts/packages_and_registries/infrastructure_registry/list/stores/actions.js create mode 100644 app/assets/javascripts/packages_and_registries/infrastructure_registry/list/stores/getters.js create mode 100644 app/assets/javascripts/packages_and_registries/infrastructure_registry/list/stores/index.js create mode 100644 app/assets/javascripts/packages_and_registries/infrastructure_registry/list/stores/mutation_types.js create mode 100644 app/assets/javascripts/packages_and_registries/infrastructure_registry/list/stores/mutations.js create mode 100644 app/assets/javascripts/packages_and_registries/infrastructure_registry/list/stores/state.js create mode 100644 app/assets/javascripts/packages_and_registries/infrastructure_registry/list/utils.js create mode 100644 app/assets/javascripts/packages_and_registries/infrastructure_registry/shared/constants.js create mode 100644 app/assets/javascripts/packages_and_registries/infrastructure_registry/shared/infrastructure_icon_and_name.vue create mode 100644 app/assets/javascripts/packages_and_registries/infrastructure_registry/shared/package_list_row.vue delete mode 100644 app/assets/javascripts/packages_and_registries/package_registry/components/list/app.vue create mode 100644 app/assets/javascripts/packages_and_registries/package_registry/index.js create mode 100644 app/assets/javascripts/packages_and_registries/package_registry/pages/index.vue delete mode 100644 app/assets/javascripts/packages_and_registries/package_registry/pages/list.js create mode 100644 app/assets/javascripts/packages_and_registries/package_registry/pages/list.vue create mode 100644 app/assets/javascripts/packages_and_registries/package_registry/router.js create mode 100644 app/assets/javascripts/packages_and_registries/settings/group/graphql/mutations/update_dependency_proxy_image_ttl_group_policy.mutation.graphql create mode 100644 app/assets/javascripts/packages_and_registries/shared/components/package_icon_and_name.vue create mode 100644 app/assets/javascripts/packages_and_registries/shared/components/package_path.vue create mode 100644 app/assets/javascripts/packages_and_registries/shared/components/package_tags.vue create mode 100644 app/assets/javascripts/packages_and_registries/shared/components/packages_list_loader.vue create mode 100644 app/assets/javascripts/packages_and_registries/shared/components/publish_method.vue create mode 100644 app/assets/javascripts/packages_and_registries/shared/components/registry_list.vue delete mode 100644 app/assets/javascripts/pages/admin/services/edit/index.js delete mode 100644 app/assets/javascripts/pages/admin/services/index/index.js delete mode 100644 app/assets/javascripts/pages/constants.js delete mode 100644 app/assets/javascripts/pages/dashboard/projects/index/components/customize_homepage_banner.vue delete mode 100644 app/assets/javascripts/pages/dashboard/projects/index/init_customize_homepage_banner.js delete mode 100644 app/assets/javascripts/pages/help/ui/index.js delete mode 100644 app/assets/javascripts/pages/milestones/shared/components/delete_milestone_modal.vue delete mode 100644 app/assets/javascripts/pages/milestones/shared/components/promote_milestone_modal.vue delete mode 100644 app/assets/javascripts/pages/milestones/shared/delete_milestone_modal_init.js delete mode 100644 app/assets/javascripts/pages/milestones/shared/event_hub.js delete mode 100644 app/assets/javascripts/pages/milestones/shared/index.js delete mode 100644 app/assets/javascripts/pages/milestones/shared/init_milestones_show.js delete mode 100644 app/assets/javascripts/pages/milestones/shared/promote_milestone_modal_init.js delete mode 100644 app/assets/javascripts/pages/projects/constants.js delete mode 100644 app/assets/javascripts/pages/projects/issues/form.js delete mode 100644 app/assets/javascripts/pages/projects/issues/service_desk/filtered_search.js delete mode 100644 app/assets/javascripts/pages/projects/issues/show.js delete mode 100644 app/assets/javascripts/pages/projects/labels/components/promote_label_modal.vue delete mode 100644 app/assets/javascripts/pages/projects/labels/event_hub.js delete mode 100644 app/assets/javascripts/pages/projects/path_locks/index.js delete mode 100644 app/assets/javascripts/pages/projects/usage_quotas/index.js create mode 100644 app/assets/javascripts/pipeline_editor/graphql/mutations/client/lint_ci.mutation.graphql create mode 100644 app/assets/javascripts/pipeline_editor/graphql/mutations/client/update_app_status.mutation.graphql create mode 100644 app/assets/javascripts/pipeline_editor/graphql/mutations/client/update_current_branch.mutation.graphql create mode 100644 app/assets/javascripts/pipeline_editor/graphql/mutations/client/update_last_commit_branch.mutation.graphql create mode 100644 app/assets/javascripts/pipeline_editor/graphql/mutations/client/update_pipeline_etag.mutation.graphql delete mode 100644 app/assets/javascripts/pipeline_editor/graphql/mutations/lint_ci.mutation.graphql delete mode 100644 app/assets/javascripts/pipeline_editor/graphql/mutations/update_app_status.mutation.graphql delete mode 100644 app/assets/javascripts/pipeline_editor/graphql/mutations/update_current_branch.mutation.graphql delete mode 100644 app/assets/javascripts/pipeline_editor/graphql/mutations/update_last_commit_branch.mutation.graphql delete mode 100644 app/assets/javascripts/pipeline_editor/graphql/mutations/update_pipeline_etag.mutation.graphql delete mode 100644 app/assets/javascripts/pipeline_editor/graphql/queries/available_branches.graphql create mode 100644 app/assets/javascripts/pipeline_editor/graphql/queries/available_branches.query.graphql delete mode 100644 app/assets/javascripts/pipeline_editor/graphql/queries/blob_content.graphql create mode 100644 app/assets/javascripts/pipeline_editor/graphql/queries/blob_content.query.graphql delete mode 100644 app/assets/javascripts/pipeline_editor/graphql/queries/ci_config.graphql create mode 100644 app/assets/javascripts/pipeline_editor/graphql/queries/ci_config.query.graphql delete mode 100644 app/assets/javascripts/pipeline_editor/graphql/queries/client/app_status.graphql create mode 100644 app/assets/javascripts/pipeline_editor/graphql/queries/client/app_status.query.graphql delete mode 100644 app/assets/javascripts/pipeline_editor/graphql/queries/client/current_branch.graphql create mode 100644 app/assets/javascripts/pipeline_editor/graphql/queries/client/current_branch.query.graphql delete mode 100644 app/assets/javascripts/pipeline_editor/graphql/queries/client/pipeline.graphql delete mode 100644 app/assets/javascripts/pipeline_editor/graphql/queries/client/pipeline_etag.graphql create mode 100644 app/assets/javascripts/pipeline_editor/graphql/queries/client/pipeline_etag.query.graphql create mode 100644 app/assets/javascripts/pipeline_editor/graphql/queries/pipeline.query.graphql create mode 100644 app/assets/javascripts/pipelines/components/jobs/jobs_app.vue create mode 100644 app/assets/javascripts/pipelines/graphql/queries/get_pipeline_jobs.query.graphql create mode 100644 app/assets/javascripts/pipelines/pipeline_details_jobs.js delete mode 100644 app/assets/javascripts/project_label_subscription.js create mode 100644 app/assets/javascripts/projects/settings/components/transfer_project_form.vue create mode 100644 app/assets/javascripts/projects/settings/init_transfer_project_form.js delete mode 100644 app/assets/javascripts/projects/storage_counter/components/app.vue delete mode 100644 app/assets/javascripts/projects/storage_counter/components/storage_table.vue delete mode 100644 app/assets/javascripts/projects/storage_counter/components/storage_type_icon.vue delete mode 100644 app/assets/javascripts/projects/storage_counter/constants.js delete mode 100644 app/assets/javascripts/projects/storage_counter/index.js delete mode 100644 app/assets/javascripts/projects/storage_counter/queries/project_storage.query.graphql delete mode 100644 app/assets/javascripts/projects/storage_counter/utils.js delete mode 100644 app/assets/javascripts/related_merge_requests/components/related_merge_requests.vue delete mode 100644 app/assets/javascripts/related_merge_requests/index.js delete mode 100644 app/assets/javascripts/related_merge_requests/store/actions.js delete mode 100644 app/assets/javascripts/related_merge_requests/store/index.js delete mode 100644 app/assets/javascripts/related_merge_requests/store/mutation_types.js delete mode 100644 app/assets/javascripts/related_merge_requests/store/mutations.js delete mode 100644 app/assets/javascripts/related_merge_requests/store/state.js create mode 100644 app/assets/javascripts/repository/components/blob_viewers/pdf_viewer.vue delete mode 100644 app/assets/javascripts/repository/components/blob_viewers/text_viewer.vue delete mode 100644 app/assets/javascripts/runner/components/runner_contacted_state_badge.vue create mode 100644 app/assets/javascripts/runner/components/runner_delete_modal.vue create mode 100644 app/assets/javascripts/runner/components/runner_status_badge.vue create mode 100644 app/assets/javascripts/runner/components/stat/runner_online_stat.vue create mode 100644 app/assets/javascripts/security_configuration/components/training_provider_list.vue create mode 100644 app/assets/javascripts/security_configuration/graphql/security_training_providers.query.graphql delete mode 100644 app/assets/javascripts/sentry_error_stack_trace/components/sentry_error_stack_trace.vue delete mode 100644 app/assets/javascripts/sentry_error_stack_trace/index.js delete mode 100644 app/assets/javascripts/shared/milestones/form.js create mode 100644 app/assets/javascripts/sidebar/components/crm_contacts/crm_contacts.vue create mode 100644 app/assets/javascripts/sidebar/components/crm_contacts/queries/get_issue_crm_contacts.query.graphql create mode 100644 app/assets/javascripts/sidebar/components/crm_contacts/queries/issue_crm_contacts.fragment.graphql create mode 100644 app/assets/javascripts/sidebar/components/crm_contacts/queries/issue_crm_contacts.subscription.graphql delete mode 100644 app/assets/javascripts/sidebar/components/labels/sidebar_labels.vue delete mode 100644 app/assets/javascripts/snippets/fragments/project.fragment.graphql create mode 100644 app/assets/javascripts/tabs/constants.js create mode 100644 app/assets/javascripts/tabs/index.js delete mode 100644 app/assets/javascripts/templates/issuable_template_selector.js delete mode 100644 app/assets/javascripts/templates/issuable_template_selectors.js delete mode 100644 app/assets/javascripts/ui_development_kit.js create mode 100644 app/assets/javascripts/vue_merge_request_widget/components/extensions/utils.js create mode 100644 app/assets/javascripts/vue_shared/components/chronic_duration_input.vue create mode 100644 app/assets/javascripts/vue_shared/components/confirm_modal_eventhub.js delete mode 100644 app/assets/javascripts/vue_shared/components/delete_label_modal.vue create mode 100644 app/assets/javascripts/vue_shared/components/design_management/design_note_pin.vue create mode 100644 app/assets/javascripts/vue_shared/components/dom_element_listener.vue delete mode 100644 app/assets/javascripts/vue_shared/components/filtered_search_bar/queries/epic.fragment.graphql delete mode 100644 app/assets/javascripts/vue_shared/components/filtered_search_bar/queries/search_epics.query.graphql delete mode 100644 app/assets/javascripts/vue_shared/components/filtered_search_bar/tokens/epic_token.vue delete mode 100644 app/assets/javascripts/vue_shared/components/filtered_search_bar/tokens/iteration_token.vue delete mode 100644 app/assets/javascripts/vue_shared/components/filtered_search_bar/tokens/weight_token.vue create mode 100644 app/assets/javascripts/vue_shared/components/form/input_copy_toggle_visibility.stories.js create mode 100644 app/assets/javascripts/vue_shared/components/form/input_copy_toggle_visibility.vue delete mode 100644 app/assets/javascripts/vue_shared/components/issuable/init_issuable_header_warning.js delete mode 100644 app/assets/javascripts/vue_shared/components/issuable/issuable_header_warnings.vue delete mode 100644 app/assets/javascripts/vue_shared/components/issue/issue_assignees.vue delete mode 100644 app/assets/javascripts/vue_shared/components/issue/issue_milestone.vue delete mode 100644 app/assets/javascripts/vue_shared/components/issue/related_issuable_item.vue create mode 100644 app/assets/javascripts/vue_shared/components/line_numbers.vue create mode 100644 app/assets/javascripts/vue_shared/components/namespace_select/namespace_select.vue create mode 100644 app/assets/javascripts/vue_shared/components/pagination_bar/pagination_bar.stories.js create mode 100644 app/assets/javascripts/vue_shared/components/pagination_bar/pagination_bar.vue delete mode 100644 app/assets/javascripts/vue_shared/components/sidebar/collapsed_grouped_date_picker.vue delete mode 100644 app/assets/javascripts/vue_shared/components/sidebar/labels_select_widget/dropdown_value_collapsed.vue create mode 100644 app/assets/javascripts/vue_shared/components/source_viewer.vue delete mode 100644 app/assets/javascripts/vue_shared/components/storage_counter/usage_graph.stories.js delete mode 100644 app/assets/javascripts/vue_shared/components/storage_counter/usage_graph.vue delete mode 100644 app/assets/javascripts/vue_shared/components/tooltip_on_truncate.vue create mode 100644 app/assets/javascripts/vue_shared/components/tooltip_on_truncate/tooltip_on_truncate.stories.js create mode 100644 app/assets/javascripts/vue_shared/components/tooltip_on_truncate/tooltip_on_truncate.vue create mode 100644 app/assets/javascripts/vue_shared/issuable/create/components/issuable_create_root.vue create mode 100644 app/assets/javascripts/vue_shared/issuable/create/components/issuable_form.vue create mode 100644 app/assets/javascripts/vue_shared/issuable/list/components/issuable_bulk_edit_sidebar.vue create mode 100644 app/assets/javascripts/vue_shared/issuable/list/components/issuable_item.vue create mode 100644 app/assets/javascripts/vue_shared/issuable/list/components/issuable_list_root.vue create mode 100644 app/assets/javascripts/vue_shared/issuable/list/components/issuable_tabs.vue create mode 100644 app/assets/javascripts/vue_shared/issuable/list/constants.js create mode 100644 app/assets/javascripts/vue_shared/issuable/show/components/issuable_body.vue create mode 100644 app/assets/javascripts/vue_shared/issuable/show/components/issuable_description.vue create mode 100644 app/assets/javascripts/vue_shared/issuable/show/components/issuable_discussion.vue create mode 100644 app/assets/javascripts/vue_shared/issuable/show/components/issuable_edit_form.vue create mode 100644 app/assets/javascripts/vue_shared/issuable/show/components/issuable_header.vue create mode 100644 app/assets/javascripts/vue_shared/issuable/show/components/issuable_show_root.vue create mode 100644 app/assets/javascripts/vue_shared/issuable/show/components/issuable_title.vue create mode 100644 app/assets/javascripts/vue_shared/issuable/show/constants.js create mode 100644 app/assets/javascripts/vue_shared/issuable/show/event_hub.js create mode 100644 app/assets/javascripts/vue_shared/issuable/sidebar/components/issuable_sidebar_root.vue create mode 100644 app/assets/javascripts/vue_shared/issuable/sidebar/constants.js delete mode 100644 app/assets/javascripts/vue_shared/mixins/issuable.js delete mode 100644 app/assets/javascripts/vue_shared/mixins/related_issuable_mixin.js create mode 100644 app/assets/javascripts/work_items/components/item_title.vue create mode 100644 app/assets/javascripts/work_items/graphql/create_work_item.mutation.graphql create mode 100644 app/assets/javascripts/work_items/graphql/update_work_item.mutation.graphql create mode 100644 app/assets/javascripts/work_items/pages/create_work_item.vue (limited to 'app/assets') diff --git a/app/assets/images/logos/jira-gray.svg b/app/assets/images/logos/jira-gray.svg deleted file mode 100644 index 0e7069f2bd2..00000000000 --- a/app/assets/images/logos/jira-gray.svg +++ /dev/null @@ -1 +0,0 @@ -jira software-icon-gradient-neutral diff --git a/app/assets/images/logos/shimo.svg b/app/assets/images/logos/shimo.svg new file mode 100644 index 00000000000..65bd1cc7167 --- /dev/null +++ b/app/assets/images/logos/shimo.svg @@ -0,0 +1 @@ + diff --git a/app/assets/javascripts/access_tokens/components/token.vue b/app/assets/javascripts/access_tokens/components/token.vue new file mode 100644 index 00000000000..3954e541fe0 --- /dev/null +++ b/app/assets/javascripts/access_tokens/components/token.vue @@ -0,0 +1,55 @@ + + + diff --git a/app/assets/javascripts/access_tokens/components/tokens_app.vue b/app/assets/javascripts/access_tokens/components/tokens_app.vue new file mode 100644 index 00000000000..755991f64e0 --- /dev/null +++ b/app/assets/javascripts/access_tokens/components/tokens_app.vue @@ -0,0 +1,111 @@ + + + diff --git a/app/assets/javascripts/access_tokens/constants.js b/app/assets/javascripts/access_tokens/constants.js new file mode 100644 index 00000000000..6188c6d1bb5 --- /dev/null +++ b/app/assets/javascripts/access_tokens/constants.js @@ -0,0 +1,4 @@ +// Token types +export const FEED_TOKEN = 'feedToken'; +export const INCOMING_EMAIL_TOKEN = 'incomingEmailToken'; +export const STATIC_OBJECT_TOKEN = 'staticObjectToken'; diff --git a/app/assets/javascripts/access_tokens/index.js b/app/assets/javascripts/access_tokens/index.js index 7f5f0403de6..9a1e7d877f8 100644 --- a/app/assets/javascripts/access_tokens/index.js +++ b/app/assets/javascripts/access_tokens/index.js @@ -1,9 +1,13 @@ import Vue from 'vue'; + import createFlash from '~/flash'; +import { convertObjectPropsToCamelCase } from '~/lib/utils/common_utils'; import { parseRailsFormFields } from '~/lib/utils/forms'; import { __ } from '~/locale'; import ExpiresAtField from './components/expires_at_field.vue'; +import TokensApp from './components/tokens_app.vue'; +import { FEED_TOKEN, INCOMING_EMAIL_TOKEN, STATIC_OBJECT_TOKEN } from './constants'; export const initExpiresAtField = () => { const el = document.querySelector('.js-access-tokens-expires-at'); @@ -81,3 +85,29 @@ export const initProjectsField = () => { return null; }; + +export const initTokensApp = () => { + const el = document.getElementById('js-tokens-app'); + + if (!el) return false; + + const tokensData = convertObjectPropsToCamelCase(JSON.parse(el.dataset.tokensData), { + deep: true, + }); + + const tokenTypes = { + [FEED_TOKEN]: tokensData[FEED_TOKEN], + [INCOMING_EMAIL_TOKEN]: tokensData[INCOMING_EMAIL_TOKEN], + [STATIC_OBJECT_TOKEN]: tokensData[STATIC_OBJECT_TOKEN], + }; + + return new Vue({ + el, + provide: { + tokenTypes, + }, + render(createElement) { + return createElement(TokensApp); + }, + }); +}; diff --git a/app/assets/javascripts/admin/deploy_keys/components/table.vue b/app/assets/javascripts/admin/deploy_keys/components/table.vue index 97a5a2f2f32..29e8b9a724e 100644 --- a/app/assets/javascripts/admin/deploy_keys/components/table.vue +++ b/app/assets/javascripts/admin/deploy_keys/components/table.vue @@ -1,13 +1,33 @@ @@ -45,10 +170,92 @@ export default {

{{ $options.i18n.pageTitle }}

- {{ + {{ $options.i18n.newDeployKeyButtonText }} - + + + +
+ + +
+ {{ $options.i18n.modal.body }} +
diff --git a/app/assets/javascripts/admin/users/components/actions/activate.vue b/app/assets/javascripts/admin/users/components/actions/activate.vue index 74e9c60a57b..3a54035c587 100644 --- a/app/assets/javascripts/admin/users/components/actions/activate.vue +++ b/app/assets/javascripts/admin/users/components/actions/activate.vue @@ -1,6 +1,7 @@ diff --git a/app/assets/javascripts/admin/users/components/actions/approve.vue b/app/assets/javascripts/admin/users/components/actions/approve.vue index 77a9be8eec2..5a8c675822d 100644 --- a/app/assets/javascripts/admin/users/components/actions/approve.vue +++ b/app/assets/javascripts/admin/users/components/actions/approve.vue @@ -1,6 +1,7 @@ diff --git a/app/assets/javascripts/admin/users/components/actions/ban.vue b/app/assets/javascripts/admin/users/components/actions/ban.vue index e5ab0f9123f..55938832dce 100644 --- a/app/assets/javascripts/admin/users/components/actions/ban.vue +++ b/app/assets/javascripts/admin/users/components/actions/ban.vue @@ -2,6 +2,7 @@ import { GlDropdownItem } from '@gitlab/ui'; import { helpPagePath } from '~/helpers/help_page_helper'; import { sprintf, s__, __ } from '~/locale'; +import eventHub, { EVENT_OPEN_CONFIRM_MODAL } from '~/vue_shared/components/confirm_modal_eventhub'; import { I18N_USER_ACTIONS } from '../../constants'; // TODO: To be replaced with