From a82c2dd1d33eb5f6a3bb64dbd958c40edf1f8486 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Michael=20Lun=C3=B8e?= <michael.lunoe@gmail.com> Date: Thu, 17 Jun 2021 23:54:07 +0000 Subject: [PATCH] Refactor(createFlash): use non-deprecated function --- app/assets/javascripts/api/user_api.js | 8 ++++-- app/assets/javascripts/awards_handler.js | 8 ++++-- .../stores/modules/batch_comments/actions.js | 28 +++++++++++++++---- .../behaviors/markdown/render_mermaid.js | 10 +++++-- .../javascripts/behaviors/preview_markdown.js | 8 ++++-- .../javascripts/blob/balsamiq_viewer.js | 6 ++-- .../blob/file_template_mediator.js | 8 ++++-- app/assets/javascripts/blob/openapi/index.js | 6 ++-- app/assets/javascripts/blob/viewer/index.js | 12 ++++++-- .../boards/components/new_list_dropdown.js | 6 ++-- app/assets/javascripts/boards/models/list.js | 14 ++++++++-- .../javascripts/clusters/clusters_bundle.js | 12 ++++++-- .../clusters_list/store/actions.js | 6 ++-- .../contributors/stores/actions.js | 8 ++++-- .../create_cluster/gke_cluster/index.js | 6 ++-- .../deploy_keys/components/app.vue | 18 +++++++++--- app/assets/javascripts/diff.js | 8 ++++-- .../components/environments_app.vue | 6 ++-- .../environments/mixins/environments_mixin.js | 14 +++++++--- .../feature_highlight_helper.js | 8 +++--- .../filtered_search/visual_token_value.js | 14 ++++++++-- app/assets/javascripts/group.js | 10 +++++-- .../javascripts/group_label_subscription.js | 14 ++++++++-- .../ide/components/repo_editor.vue | 18 ++++++------ .../clusters_list/store/actions_spec.js | 6 ++-- .../contributors/store/actions_spec.js | 6 ++-- .../feature_highlight_helper_spec.js | 9 +++--- 27 files changed, 197 insertions(+), 80 deletions(-) diff --git a/app/assets/javascripts/api/user_api.js b/app/assets/javascripts/api/user_api.js index 27901120c5322..fba47119a0819 100644 --- a/app/assets/javascripts/api/user_api.js +++ b/app/assets/javascripts/api/user_api.js @@ -1,4 +1,4 @@ -import { deprecatedCreateFlash as flash } from '~/flash'; +import createFlash from '~/flash'; import { __ } from '~/locale'; import axios from '../lib/utils/axios_utils'; import { buildApiUrl } from './api_utils'; @@ -52,7 +52,11 @@ export function getUserProjects(userId, query, options, callback) { params: { ...defaults, ...options }, }) .then(({ data }) => callback(data)) - .catch(() => flash(__('Something went wrong while fetching projects'))); + .catch(() => + createFlash({ + message: __('Something went wrong while fetching projects'), + }), + ); } export function updateUserStatus({ emoji, message, availability, clearStatusAfter }) { diff --git a/app/assets/javascripts/awards_handler.js b/app/assets/javascripts/awards_handler.js index 43f44370af8b8..43ca5b5cf895e 100644 --- a/app/assets/javascripts/awards_handler.js +++ b/app/assets/javascripts/awards_handler.js @@ -7,7 +7,7 @@ import { uniq } from 'lodash'; import * as Emoji from '~/emoji'; import { scrollToElement } from '~/lib/utils/common_utils'; import { dispose, fixTitle } from '~/tooltips'; -import { deprecatedCreateFlash as flash } from './flash'; +import createFlash from './flash'; import axios from './lib/utils/axios_utils'; import { isInVueNoteablePage } from './lib/utils/dom_utils'; import { __ } from './locale'; @@ -488,7 +488,11 @@ export class AwardsHandler { callback(); } }) - .catch(() => flash(__('Something went wrong on our end.'))); + .catch(() => + createFlash({ + message: __('Something went wrong on our end.'), + }), + ); } findEmojiIcon(votesBlock, emoji) { diff --git a/app/assets/javascripts/batch_comments/stores/modules/batch_comments/actions.js b/app/assets/javascripts/batch_comments/stores/modules/batch_comments/actions.js index a8c0b064595b0..4ee22918463cc 100644 --- a/app/assets/javascripts/batch_comments/stores/modules/batch_comments/actions.js +++ b/app/assets/javascripts/batch_comments/stores/modules/batch_comments/actions.js @@ -1,5 +1,5 @@ import { isEmpty } from 'lodash'; -import { deprecatedCreateFlash as flash } from '~/flash'; +import createFlash from '~/flash'; import { scrollToElement } from '~/lib/utils/common_utils'; import { __ } from '~/locale'; import { CHANGES_TAB, DISCUSSION_TAB, SHOW_TAB } from '../../../constants'; @@ -18,7 +18,9 @@ export const addDraftToDiscussion = ({ commit }, { endpoint, data }) => return res; }) .catch(() => { - flash(__('An error occurred adding a draft to the thread.')); + createFlash({ + message: __('An error occurred adding a draft to the thread.'), + }); }); export const createNewDraft = ({ commit }, { endpoint, data }) => @@ -30,7 +32,9 @@ export const createNewDraft = ({ commit }, { endpoint, data }) => return res; }) .catch(() => { - flash(__('An error occurred adding a new draft.')); + createFlash({ + message: __('An error occurred adding a new draft.'), + }); }); export const deleteDraft = ({ commit, getters }, draft) => @@ -39,7 +43,11 @@ export const deleteDraft = ({ commit, getters }, draft) => .then(() => { commit(types.DELETE_DRAFT, draft.id); }) - .catch(() => flash(__('An error occurred while deleting the comment'))); + .catch(() => + createFlash({ + message: __('An error occurred while deleting the comment'), + }), + ); export const fetchDrafts = ({ commit, getters, state, dispatch }) => service @@ -53,7 +61,11 @@ export const fetchDrafts = ({ commit, getters, state, dispatch }) => } }); }) - .catch(() => flash(__('An error occurred while fetching pending comments'))); + .catch(() => + createFlash({ + message: __('An error occurred while fetching pending comments'), + }), + ); export const publishSingleDraft = ({ commit, dispatch, getters }, draftId) => { commit(types.REQUEST_PUBLISH_DRAFT, draftId); @@ -111,7 +123,11 @@ export const updateDraft = ( .then((res) => res.data) .then((data) => commit(types.RECEIVE_DRAFT_UPDATE_SUCCESS, data)) .then(callback) - .catch(() => flash(__('An error occurred while updating the comment'))); + .catch(() => + createFlash({ + message: __('An error occurred while updating the comment'), + }), + ); }; export const scrollToDraft = ({ dispatch, rootGetters }, draft) => { diff --git a/app/assets/javascripts/behaviors/markdown/render_mermaid.js b/app/assets/javascripts/behaviors/markdown/render_mermaid.js index 5fecadf279402..293fe9f41337b 100644 --- a/app/assets/javascripts/behaviors/markdown/render_mermaid.js +++ b/app/assets/javascripts/behaviors/markdown/render_mermaid.js @@ -1,6 +1,6 @@ import $ from 'jquery'; import { once, countBy } from 'lodash'; -import { deprecatedCreateFlash as flash } from '~/flash'; +import createFlash from '~/flash'; import { darkModeEnabled } from '~/lib/utils/color_utils'; import { __, sprintf } from '~/locale'; @@ -78,7 +78,9 @@ function importMermaidModule() { mermaidModule = initMermaid(mermaid); }) .catch((err) => { - flash(sprintf(__("Can't load mermaid module: %{err}"), { err })); + createFlash({ + message: sprintf(__("Can't load mermaid module: %{err}"), { err }), + }); // eslint-disable-next-line no-console console.error(err); }); @@ -205,7 +207,9 @@ function renderMermaids($els) { }); }) .catch((err) => { - flash(sprintf(__('Encountered an error while rendering: %{err}'), { err })); + createFlash({ + message: sprintf(__('Encountered an error while rendering: %{err}'), { err }), + }); // eslint-disable-next-line no-console console.error(err); }); diff --git a/app/assets/javascripts/behaviors/preview_markdown.js b/app/assets/javascripts/behaviors/preview_markdown.js index 5405819cfe0c8..a1911585f8074 100644 --- a/app/assets/javascripts/behaviors/preview_markdown.js +++ b/app/assets/javascripts/behaviors/preview_markdown.js @@ -1,7 +1,7 @@ /* eslint-disable func-names */ import $ from 'jquery'; -import { deprecatedCreateFlash as flash } from '~/flash'; +import createFlash from '~/flash'; import axios from '~/lib/utils/axios_utils'; import { __ } from '~/locale'; @@ -79,7 +79,11 @@ MarkdownPreview.prototype.fetchMarkdownPreview = function (text, url, success) { }; success(data); }) - .catch(() => flash(__('An error occurred while fetching markdown preview'))); + .catch(() => + createFlash({ + message: __('An error occurred while fetching markdown preview'), + }), + ); }; MarkdownPreview.prototype.hideReferencedUsers = function ($form) { diff --git a/app/assets/javascripts/blob/balsamiq_viewer.js b/app/assets/javascripts/blob/balsamiq_viewer.js index c9152db509a4f..01ed2d0f27a57 100644 --- a/app/assets/javascripts/blob/balsamiq_viewer.js +++ b/app/assets/javascripts/blob/balsamiq_viewer.js @@ -1,9 +1,11 @@ import { __ } from '~/locale'; -import { deprecatedCreateFlash as Flash } from '../flash'; +import createFlash from '../flash'; import BalsamiqViewer from './balsamiq/balsamiq_viewer'; function onError() { - const flash = new Flash(__('Balsamiq file could not be loaded.')); + const flash = createFlash({ + message: __('Balsamiq file could not be loaded.'), + }); return flash; } diff --git a/app/assets/javascripts/blob/file_template_mediator.js b/app/assets/javascripts/blob/file_template_mediator.js index 59ab84bf20818..5e68787dffcef 100644 --- a/app/assets/javascripts/blob/file_template_mediator.js +++ b/app/assets/javascripts/blob/file_template_mediator.js @@ -5,7 +5,7 @@ import initPopover from '~/blob/suggest_gitlab_ci_yml'; import { __ } from '~/locale'; import toast from '~/vue_shared/plugins/global_toast'; -import { deprecatedCreateFlash as Flash } from '../flash'; +import createFlash from '../flash'; import BlobCiYamlSelector from './template_selectors/ci_yaml_selector'; import DockerfileSelector from './template_selectors/dockerfile_selector'; @@ -155,7 +155,11 @@ export default class FileTemplateMediator { initPopover(suggestCommitChanges); } }) - .catch((err) => new Flash(`An error occurred while fetching the template: ${err}`)); + .catch((err) => + createFlash({ + message: __(`An error occurred while fetching the template: ${err}`), + }), + ); } displayMatchedTemplateSelector() { diff --git a/app/assets/javascripts/blob/openapi/index.js b/app/assets/javascripts/blob/openapi/index.js index e6dc463f7643d..cb251274b1872 100644 --- a/app/assets/javascripts/blob/openapi/index.js +++ b/app/assets/javascripts/blob/openapi/index.js @@ -1,5 +1,5 @@ import { SwaggerUIBundle } from 'swagger-ui-dist'; -import { deprecatedCreateFlash as flash } from '~/flash'; +import createFlash from '~/flash'; import { __ } from '~/locale'; export default () => { @@ -13,7 +13,9 @@ export default () => { }); }) .catch((error) => { - flash(__('Something went wrong while initializing the OpenAPI viewer')); + createFlash({ + message: __('Something went wrong while initializing the OpenAPI viewer'), + }); throw error; }); }; diff --git a/app/assets/javascripts/blob/viewer/index.js b/app/assets/javascripts/blob/viewer/index.js index 22c6b31143f7e..fd0c102667fca 100644 --- a/app/assets/javascripts/blob/viewer/index.js +++ b/app/assets/javascripts/blob/viewer/index.js @@ -8,7 +8,7 @@ import { } from '~/performance/constants'; import { performanceMarkAndMeasure } from '~/performance/utils'; import { fixTitle } from '~/tooltips'; -import { deprecatedCreateFlash as Flash } from '../../flash'; +import createFlash from '../../flash'; import axios from '../../lib/utils/axios_utils'; import { handleLocationHash } from '../../lib/utils/common_utils'; import eventHub from '../../notes/event_hub'; @@ -38,7 +38,9 @@ export const handleBlobRichViewer = (viewer, type) => { loadRichBlobViewer(type) .then((module) => module?.default(viewer)) .catch((error) => { - Flash(__('Error loading file viewer.')); + createFlash({ + message: __('Error loading file viewer.'), + }); throw error; }); }; @@ -182,7 +184,11 @@ export default class BlobViewer { ], }); }) - .catch(() => new Flash(__('Error loading viewer'))); + .catch(() => + createFlash({ + message: __('Error loading viewer'), + }), + ); } static loadViewer(viewerParam) { diff --git a/app/assets/javascripts/boards/components/new_list_dropdown.js b/app/assets/javascripts/boards/components/new_list_dropdown.js index 2fd16f0645515..6eb1dbfb46ae5 100644 --- a/app/assets/javascripts/boards/components/new_list_dropdown.js +++ b/app/assets/javascripts/boards/components/new_list_dropdown.js @@ -3,7 +3,7 @@ import $ from 'jquery'; import store from '~/boards/stores'; import initDeprecatedJQueryDropdown from '~/deprecated_jquery_dropdown'; -import { deprecatedCreateFlash as flash } from '~/flash'; +import createFlash from '~/flash'; import { getIdFromGraphQLId } from '~/graphql_shared/utils'; import axios from '~/lib/utils/axios_utils'; import { __ } from '~/locale'; @@ -53,7 +53,9 @@ export default function initNewListDropdown() { data(term, callback) { const reqFailed = () => { $dropdownToggle.data('bs.dropdown').hide(); - flash(__('Error fetching labels.')); + createFlash({ + message: __('Error fetching labels.'), + }); }; if (store.getters.shouldUseGraphQL) { diff --git a/app/assets/javascripts/boards/models/list.js b/app/assets/javascripts/boards/models/list.js index 6c6e2522d9283..ab24532d87f2f 100644 --- a/app/assets/javascripts/boards/models/list.js +++ b/app/assets/javascripts/boards/models/list.js @@ -1,5 +1,5 @@ /* eslint-disable class-methods-use-this */ -import { deprecatedCreateFlash as flash } from '~/flash'; +import createFlash from '~/flash'; import { __ } from '~/locale'; import boardsStore from '../stores/boards_store'; import ListAssignee from './assignee'; @@ -127,7 +127,11 @@ class List { moveBeforeId, moveAfterId, }) - .catch(() => flash(__('Something went wrong while moving issues.'))); + .catch(() => + createFlash({ + message: __('Something went wrong while moving issues.'), + }), + ); } updateIssueLabel(issue, listFrom, moveBeforeId, moveAfterId) { @@ -145,7 +149,11 @@ class List { moveBeforeId, moveAfterId, }) - .catch(() => flash(__('Something went wrong while moving issues.'))); + .catch(() => + createFlash({ + message: __('Something went wrong while moving issues.'), + }), + ); } findIssue(id) { diff --git a/app/assets/javascripts/clusters/clusters_bundle.js b/app/assets/javascripts/clusters/clusters_bundle.js index 2a2f3ff2dc105..a8d6795f13cc3 100644 --- a/app/assets/javascripts/clusters/clusters_bundle.js +++ b/app/assets/javascripts/clusters/clusters_bundle.js @@ -4,7 +4,7 @@ import Vue from 'vue'; import AccessorUtilities from '~/lib/utils/accessor'; import initProjectSelectDropdown from '~/project_select'; import initServerlessSurveyBanner from '~/serverless/survey_banner'; -import { deprecatedCreateFlash as Flash } from '../flash'; +import createFlash from '../flash'; import Poll from '../lib/utils/poll'; import { s__, sprintf } from '../locale'; import PersistentUserCallout from '../persistent_user_callout'; @@ -303,7 +303,9 @@ export default class Clusters { } static handleError() { - Flash(s__('ClusterIntegration|Something went wrong on our end.')); + createFlash({ + message: s__('ClusterIntegration|Something went wrong on our end.'), + }); } handleClusterStatusSuccess(data) { @@ -345,7 +347,11 @@ export default class Clusters { appList: appTitles.join(', '), }, ); - Flash(text, 'notice', this.successApplicationContainer); + createFlash({ + message: text, + type: 'notice', + parent: this.successApplicationContainer, + }); } } diff --git a/app/assets/javascripts/clusters_list/store/actions.js b/app/assets/javascripts/clusters_list/store/actions.js index 40a86a1e58cc8..5f35a0b26f303 100644 --- a/app/assets/javascripts/clusters_list/store/actions.js +++ b/app/assets/javascripts/clusters_list/store/actions.js @@ -1,5 +1,5 @@ import * as Sentry from '@sentry/browser'; -import { deprecatedCreateFlash as flash } from '~/flash'; +import createFlash from '~/flash'; import axios from '~/lib/utils/axios_utils'; import { parseIntPagination, normalizeHeaders } from '~/lib/utils/common_utils'; import Poll from '~/lib/utils/poll'; @@ -64,7 +64,9 @@ export const fetchClusters = ({ state, commit, dispatch }) => { commit(types.SET_LOADING_CLUSTERS, false); commit(types.SET_LOADING_NODES, false); - flash(__('Clusters|An error occurred while loading clusters')); + createFlash({ + message: __('Clusters|An error occurred while loading clusters'), + }); dispatch('reportSentryError', { error: response, tag: 'fetchClustersErrorCallback' }); }, diff --git a/app/assets/javascripts/contributors/stores/actions.js b/app/assets/javascripts/contributors/stores/actions.js index 72aae3af692c3..4cc0a6a6509c6 100644 --- a/app/assets/javascripts/contributors/stores/actions.js +++ b/app/assets/javascripts/contributors/stores/actions.js @@ -1,4 +1,4 @@ -import { deprecatedCreateFlash as flash } from '~/flash'; +import createFlash from '~/flash'; import { __ } from '~/locale'; import service from '../services/contributors_service'; import * as types from './mutation_types'; @@ -13,5 +13,9 @@ export const fetchChartData = ({ commit }, endpoint) => { commit(types.SET_CHART_DATA, data); commit(types.SET_LOADING_STATE, false); }) - .catch(() => flash(__('An error occurred while loading chart data'))); + .catch(() => + createFlash({ + message: __('An error occurred while loading chart data'), + }), + ); }; diff --git a/app/assets/javascripts/create_cluster/gke_cluster/index.js b/app/assets/javascripts/create_cluster/gke_cluster/index.js index 4eafbdb7265a1..3a42b460e1c61 100644 --- a/app/assets/javascripts/create_cluster/gke_cluster/index.js +++ b/app/assets/javascripts/create_cluster/gke_cluster/index.js @@ -1,5 +1,5 @@ import Vue from 'vue'; -import { deprecatedCreateFlash as Flash } from '~/flash'; +import createFlash from '~/flash'; import GkeMachineTypeDropdown from './components/gke_machine_type_dropdown.vue'; import GkeProjectIdDropdown from './components/gke_project_id_dropdown.vue'; import GkeSubmitButton from './components/gke_submit_button.vue'; @@ -59,7 +59,9 @@ const mountGkeSubmitButton = () => { }; const gkeDropdownErrorHandler = () => { - Flash(CONSTANTS.GCP_API_ERROR); + createFlash({ + message: CONSTANTS.GCP_API_ERROR, + }); }; const initializeGapiClient = (gapi) => () => { diff --git a/app/assets/javascripts/deploy_keys/components/app.vue b/app/assets/javascripts/deploy_keys/components/app.vue index 02c57164f47be..36d54f586f15e 100644 --- a/app/assets/javascripts/deploy_keys/components/app.vue +++ b/app/assets/javascripts/deploy_keys/components/app.vue @@ -1,6 +1,6 @@ <script> import { GlLoadingIcon, GlIcon } from '@gitlab/ui'; -import { deprecatedCreateFlash as Flash } from '~/flash'; +import createFlash from '~/flash'; import { s__ } from '~/locale'; import NavigationTabs from '~/vue_shared/components/navigation_tabs.vue'; import eventHub from '../eventhub'; @@ -93,14 +93,20 @@ export default { .catch(() => { this.isLoading = false; this.store.keys = {}; - return new Flash(s__('DeployKeys|Error getting deploy keys')); + return createFlash({ + message: s__('DeployKeys|Error getting deploy keys'), + }); }); }, enableKey(deployKey) { this.service .enableKey(deployKey.id) .then(this.fetchKeys) - .catch(() => new Flash(s__('DeployKeys|Error enabling deploy key'))); + .catch(() => + createFlash({ + message: s__('DeployKeys|Error enabling deploy key'), + }), + ); }, confirmRemoveKey(deployKey, callback) { const hideModal = () => { @@ -112,7 +118,11 @@ export default { .disableKey(deployKey.id) .then(this.fetchKeys) .then(hideModal) - .catch(() => new Flash(s__('DeployKeys|Error removing deploy key'))); + .catch(() => + createFlash({ + message: s__('DeployKeys|Error removing deploy key'), + }), + ); }; this.cancel = hideModal; this.confirmModalVisible = true; diff --git a/app/assets/javascripts/diff.js b/app/assets/javascripts/diff.js index 7200e6c2e3a07..14d6e2db09d65 100644 --- a/app/assets/javascripts/diff.js +++ b/app/assets/javascripts/diff.js @@ -1,5 +1,5 @@ import $ from 'jquery'; -import { deprecatedCreateFlash as flash } from '~/flash'; +import createFlash from '~/flash'; import axios from '~/lib/utils/axios_utils'; import { __ } from '~/locale'; import FilesCommentButton from './files_comment_button'; @@ -77,7 +77,11 @@ export default class Diff { axios .get(link, { params }) .then(({ data }) => $target.parent().replaceWith(data)) - .catch(() => flash(__('An error occurred while loading diff'))); + .catch(() => + createFlash({ + message: __('An error occurred while loading diff'), + }), + ); } openAnchoredDiff(cb) { diff --git a/app/assets/javascripts/environments/components/environments_app.vue b/app/assets/javascripts/environments/components/environments_app.vue index 602639f09a66f..a43e8223b1e19 100644 --- a/app/assets/javascripts/environments/components/environments_app.vue +++ b/app/assets/javascripts/environments/components/environments_app.vue @@ -1,6 +1,6 @@ <script> import { GlBadge, GlButton, GlModalDirective, GlTab, GlTabs } from '@gitlab/ui'; -import { deprecatedCreateFlash as Flash } from '~/flash'; +import createFlash from '~/flash'; import { s__ } from '~/locale'; import eventHub from '../event_hub'; import environmentsMixin from '../mixins/environments_mixin'; @@ -89,7 +89,9 @@ export default { .then((response) => this.store.setfolderContent(folder, response.data.environments)) .then(() => this.store.updateEnvironmentProp(folder, 'isLoadingFolderContent', false)) .catch(() => { - Flash(s__('Environments|An error occurred while fetching the environments.')); + createFlash({ + message: s__('Environments|An error occurred while fetching the environments.'), + }); this.store.updateEnvironmentProp(folder, 'isLoadingFolderContent', false); }); }, diff --git a/app/assets/javascripts/environments/mixins/environments_mixin.js b/app/assets/javascripts/environments/mixins/environments_mixin.js index d5caff1660a4e..280f579950353 100644 --- a/app/assets/javascripts/environments/mixins/environments_mixin.js +++ b/app/assets/javascripts/environments/mixins/environments_mixin.js @@ -3,7 +3,7 @@ */ import { isEqual, isFunction, omitBy } from 'lodash'; import Visibility from 'visibilityjs'; -import { deprecatedCreateFlash as Flash } from '../../flash'; +import createFlash from '../../flash'; import { getParameterByName } from '../../lib/utils/common_utils'; import Poll from '../../lib/utils/poll'; import { s__ } from '../../locale'; @@ -94,7 +94,9 @@ export default { errorCallback() { this.isLoading = false; - Flash(s__('Environments|An error occurred while fetching the environments.')); + createFlash({ + message: s__('Environments|An error occurred while fetching the environments.'), + }); }, postAction({ @@ -109,7 +111,9 @@ export default { .then(() => this.fetchEnvironments()) .catch((err) => { this.isLoading = false; - Flash(isFunction(errorMessage) ? errorMessage(err.response.data) : errorMessage); + createFlash({ + message: isFunction(errorMessage) ? errorMessage(err.response.data) : errorMessage, + }); }); } }, @@ -163,7 +167,9 @@ export default { window.location.href = url.join('/'); }) .catch(() => { - Flash(errorMessage); + createFlash({ + message: errorMessage, + }); }); }, diff --git a/app/assets/javascripts/feature_highlight/feature_highlight_helper.js b/app/assets/javascripts/feature_highlight/feature_highlight_helper.js index 7b4bed69fb8bf..747f368b67143 100644 --- a/app/assets/javascripts/feature_highlight/feature_highlight_helper.js +++ b/app/assets/javascripts/feature_highlight/feature_highlight_helper.js @@ -1,4 +1,4 @@ -import { deprecatedCreateFlash as Flash } from '~/flash'; +import createFlash from '~/flash'; import axios from '../lib/utils/axios_utils'; import { __ } from '../locale'; @@ -10,10 +10,10 @@ export function dismiss(endpoint, highlightId) { feature_name: highlightId, }) .catch(() => - Flash( - __( + createFlash({ + message: __( 'An error occurred while dismissing the feature highlight. Refresh the page and try dismissing again.', ), - ), + }), ); } diff --git a/app/assets/javascripts/filtered_search/visual_token_value.js b/app/assets/javascripts/filtered_search/visual_token_value.js index 7f4445ad4c775..707add10009a3 100644 --- a/app/assets/javascripts/filtered_search/visual_token_value.js +++ b/app/assets/javascripts/filtered_search/visual_token_value.js @@ -4,7 +4,7 @@ import * as Emoji from '~/emoji'; import FilteredSearchContainer from '~/filtered_search/container'; import DropdownUtils from '~/filtered_search/dropdown_utils'; import FilteredSearchVisualTokens from '~/filtered_search/filtered_search_visual_tokens'; -import { deprecatedCreateFlash as Flash } from '~/flash'; +import createFlash from '~/flash'; import AjaxCache from '~/lib/utils/ajax_cache'; import UsersCache from '~/lib/utils/users_cache'; import { __ } from '~/locale'; @@ -83,7 +83,11 @@ export default class VisualTokenValue { matchingLabel.text_color, ); }) - .catch(() => new Flash(__('An error occurred while fetching label colors.'))); + .catch(() => + createFlash({ + message: __('An error occurred while fetching label colors.'), + }), + ); } updateEpicLabel(tokenValueContainer) { @@ -105,7 +109,11 @@ export default class VisualTokenValue { VisualTokenValue.replaceEpicTitle(tokenValueContainer, matchingEpic.title, matchingEpic.id); }) - .catch(() => new Flash(__('An error occurred while adding formatted title for epic'))); + .catch(() => + createFlash({ + message: __('An error occurred while adding formatted title for epic'), + }), + ); } static replaceEpicTitle(tokenValueContainer, epicTitle, epicId) { diff --git a/app/assets/javascripts/group.js b/app/assets/javascripts/group.js index c1fc75fbea6d0..1323d8924276b 100644 --- a/app/assets/javascripts/group.js +++ b/app/assets/javascripts/group.js @@ -1,4 +1,4 @@ -import { deprecatedCreateFlash as flash } from '~/flash'; +import createFlash from '~/flash'; import { __ } from '~/locale'; import fetchGroupPathAvailability from '~/pages/groups/new/fetch_group_path_availability'; import { slugify } from './lib/utils/text_utility'; @@ -61,11 +61,15 @@ export default class Group { element.value = suggestedSlug; }); } else if (exists && !suggests.length) { - flash(__('Unable to suggest a path. Please refresh and try again.')); + createFlash({ + message: __('Unable to suggest a path. Please refresh and try again.'), + }); } }) .catch(() => - flash(__('An error occurred while checking group path. Please refresh and try again.')), + createFlash({ + message: __('An error occurred while checking group path. Please refresh and try again.'), + }), ); } } diff --git a/app/assets/javascripts/group_label_subscription.js b/app/assets/javascripts/group_label_subscription.js index 257f5ac965813..378259eb9c8a2 100644 --- a/app/assets/javascripts/group_label_subscription.js +++ b/app/assets/javascripts/group_label_subscription.js @@ -1,7 +1,7 @@ import $ from 'jquery'; import { __ } from '~/locale'; import { fixTitle, hide } from '~/tooltips'; -import { deprecatedCreateFlash as flash } from './flash'; +import createFlash from './flash'; import axios from './lib/utils/axios_utils'; const tooltipTitles = { @@ -30,7 +30,11 @@ export default class GroupLabelSubscription { this.toggleSubscriptionButtons(); this.$unsubscribeButtons.removeAttr('data-url'); }) - .catch(() => flash(__('There was an error when unsubscribing from this label.'))); + .catch(() => + createFlash({ + message: __('There was an error when unsubscribing from this label.'), + }), + ); } subscribe(event) { @@ -45,7 +49,11 @@ export default class GroupLabelSubscription { .post(url) .then(() => GroupLabelSubscription.setNewTooltip($btn)) .then(() => this.toggleSubscriptionButtons()) - .catch(() => flash(__('There was an error when subscribing to this label.'))); + .catch(() => + createFlash({ + message: __('There was an error when subscribing to this label.'), + }), + ); } toggleSubscriptionButtons() { diff --git a/app/assets/javascripts/ide/components/repo_editor.vue b/app/assets/javascripts/ide/components/repo_editor.vue index bf2af9ffd49ae..ee5f281223764 100644 --- a/app/assets/javascripts/ide/components/repo_editor.vue +++ b/app/assets/javascripts/ide/components/repo_editor.vue @@ -8,7 +8,7 @@ import { } from '~/editor/constants'; import EditorLite from '~/editor/editor_lite'; import { EditorWebIdeExtension } from '~/editor/extensions/editor_lite_webide_ext'; -import { deprecatedCreateFlash as flash } from '~/flash'; +import createFlash from '~/flash'; import ModelManager from '~/ide/lib/common/model_manager'; import { defaultDiffEditorOptions, defaultEditorOptions } from '~/ide/lib/editor_options'; import { __ } from '~/locale'; @@ -250,14 +250,14 @@ export default { this.createEditorInstance(); }) .catch((err) => { - flash( - __('Error setting up editor. Please try again.'), - 'alert', - document, - null, - false, - true, - ); + createFlash({ + message: __('Error setting up editor. Please try again.'), + type: 'alert', + parent: document, + actionConfig: null, + fadeTransition: false, + addBodyClass: true, + }); throw err; }); }, diff --git a/spec/frontend/clusters_list/store/actions_spec.js b/spec/frontend/clusters_list/store/actions_spec.js index b2ef3c2138a16..f4b69053e1429 100644 --- a/spec/frontend/clusters_list/store/actions_spec.js +++ b/spec/frontend/clusters_list/store/actions_spec.js @@ -5,7 +5,7 @@ import waitForPromises from 'helpers/wait_for_promises'; import { MAX_REQUESTS } from '~/clusters_list/constants'; import * as actions from '~/clusters_list/store/actions'; import * as types from '~/clusters_list/store/mutation_types'; -import { deprecatedCreateFlash as flashError } from '~/flash'; +import createFlash from '~/flash'; import axios from '~/lib/utils/axios_utils'; import Poll from '~/lib/utils/poll'; import { apiData } from '../mock_data'; @@ -101,7 +101,9 @@ describe('Clusters store actions', () => { }, ], () => { - expect(flashError).toHaveBeenCalledWith(expect.stringMatching('error')); + expect(createFlash).toHaveBeenCalledWith({ + message: expect.stringMatching('error'), + }); done(); }, ); diff --git a/spec/frontend/contributors/store/actions_spec.js b/spec/frontend/contributors/store/actions_spec.js index 82b6492b77928..a4054ab1fc8f8 100644 --- a/spec/frontend/contributors/store/actions_spec.js +++ b/spec/frontend/contributors/store/actions_spec.js @@ -2,7 +2,7 @@ import MockAdapter from 'axios-mock-adapter'; import testAction from 'helpers/vuex_action_helper'; import * as actions from '~/contributors/stores/actions'; import * as types from '~/contributors/stores/mutation_types'; -import { deprecatedCreateFlash as flashError } from '~/flash'; +import createFlash from '~/flash'; import axios from '~/lib/utils/axios_utils'; jest.mock('~/flash.js'); @@ -47,7 +47,9 @@ describe('Contributors store actions', () => { [{ type: types.SET_LOADING_STATE, payload: true }], [], () => { - expect(flashError).toHaveBeenCalledWith(expect.stringMatching('error')); + expect(createFlash).toHaveBeenCalledWith({ + message: expect.stringMatching('error'), + }); mock.restore(); done(); }, diff --git a/spec/frontend/feature_highlight/feature_highlight_helper_spec.js b/spec/frontend/feature_highlight/feature_highlight_helper_spec.js index 1b5bffc1f9bf7..b87571830ca1c 100644 --- a/spec/frontend/feature_highlight/feature_highlight_helper_spec.js +++ b/spec/frontend/feature_highlight/feature_highlight_helper_spec.js @@ -1,6 +1,6 @@ import MockAdapter from 'axios-mock-adapter'; import { dismiss } from '~/feature_highlight/feature_highlight_helper'; -import { deprecatedCreateFlash as Flash } from '~/flash'; +import createFlash from '~/flash'; import axios from '~/lib/utils/axios_utils'; import httpStatusCodes from '~/lib/utils/http_status'; @@ -32,9 +32,10 @@ describe('feature highlight helper', () => { await dismiss(endpoint, highlightId); - expect(Flash).toHaveBeenCalledWith( - 'An error occurred while dismissing the feature highlight. Refresh the page and try dismissing again.', - ); + expect(createFlash).toHaveBeenCalledWith({ + message: + 'An error occurred while dismissing the feature highlight. Refresh the page and try dismissing again.', + }); }); }); }); -- GitLab