diff options
Diffstat (limited to 'app/assets/javascripts/design_management')
19 files changed, 94 insertions, 80 deletions
diff --git a/app/assets/javascripts/design_management/components/design_notes/design_discussion.vue b/app/assets/javascripts/design_management/components/design_notes/design_discussion.vue index ea4d5d7b570..33f0aa00cad 100644 --- a/app/assets/javascripts/design_management/components/design_notes/design_discussion.vue +++ b/app/assets/javascripts/design_management/components/design_notes/design_discussion.vue @@ -1,20 +1,20 @@ <script> -import { ApolloMutation } from 'vue-apollo'; import { GlTooltipDirective, GlIcon, GlLoadingIcon, GlLink, GlBadge } from '@gitlab/ui'; -import { s__ } from '~/locale'; +import { ApolloMutation } from 'vue-apollo'; import createFlash from '~/flash'; +import { s__ } from '~/locale'; import ReplyPlaceholder from '~/notes/components/discussion_reply_placeholder.vue'; import TimeAgoTooltip from '~/vue_shared/components/time_ago_tooltip.vue'; -import allVersionsMixin from '../../mixins/all_versions'; +import { ACTIVE_DISCUSSION_SOURCE_TYPES } from '../../constants'; import createNoteMutation from '../../graphql/mutations/create_note.mutation.graphql'; import toggleResolveDiscussionMutation from '../../graphql/mutations/toggle_resolve_discussion.mutation.graphql'; import activeDiscussionQuery from '../../graphql/queries/active_discussion.query.graphql'; +import allVersionsMixin from '../../mixins/all_versions'; +import { hasErrors } from '../../utils/cache_update'; +import { ADD_DISCUSSION_COMMENT_ERROR } from '../../utils/error_messages'; import DesignNote from './design_note.vue'; import DesignReplyForm from './design_reply_form.vue'; -import { ACTIVE_DISCUSSION_SOURCE_TYPES } from '../../constants'; import ToggleRepliesWidget from './toggle_replies_widget.vue'; -import { hasErrors } from '../../utils/cache_update'; -import { ADD_DISCUSSION_COMMENT_ERROR } from '../../utils/error_messages'; export default { components: { diff --git a/app/assets/javascripts/design_management/components/design_notes/design_note.vue b/app/assets/javascripts/design_management/components/design_notes/design_note.vue index 421a4dc274a..2b867217327 100644 --- a/app/assets/javascripts/design_management/components/design_notes/design_note.vue +++ b/app/assets/javascripts/design_management/components/design_notes/design_note.vue @@ -1,13 +1,13 @@ <script> -import { ApolloMutation } from 'vue-apollo'; import { GlTooltipDirective, GlIcon, GlLink, GlSafeHtmlDirective } from '@gitlab/ui'; -import updateNoteMutation from '../../graphql/mutations/update_note.mutation.graphql'; -import UserAvatarLink from '~/vue_shared/components/user_avatar/user_avatar_link.vue'; +import { ApolloMutation } from 'vue-apollo'; import TimelineEntryItem from '~/vue_shared/components/notes/timeline_entry_item.vue'; import TimeAgoTooltip from '~/vue_shared/components/time_ago_tooltip.vue'; -import DesignReplyForm from './design_reply_form.vue'; -import { findNoteId, extractDesignNoteId } from '../../utils/design_management_utils'; +import UserAvatarLink from '~/vue_shared/components/user_avatar/user_avatar_link.vue'; +import updateNoteMutation from '../../graphql/mutations/update_note.mutation.graphql'; import { hasErrors } from '../../utils/cache_update'; +import { findNoteId, extractDesignNoteId } from '../../utils/design_management_utils'; +import DesignReplyForm from './design_reply_form.vue'; export default { components: { diff --git a/app/assets/javascripts/design_management/components/design_notes/design_reply_form.vue b/app/assets/javascripts/design_management/components/design_notes/design_reply_form.vue index 0cc89440754..fb25d3618ab 100644 --- a/app/assets/javascripts/design_management/components/design_notes/design_reply_form.vue +++ b/app/assets/javascripts/design_management/components/design_notes/design_reply_form.vue @@ -1,8 +1,8 @@ <script> import { GlButton, GlModal } from '@gitlab/ui'; -import MarkdownField from '~/vue_shared/components/markdown/field.vue'; -import { s__ } from '~/locale'; import { helpPagePath } from '~/helpers/help_page_helper'; +import { s__ } from '~/locale'; +import MarkdownField from '~/vue_shared/components/markdown/field.vue'; export default { name: 'DesignReplyForm', diff --git a/app/assets/javascripts/design_management/components/design_overlay.vue b/app/assets/javascripts/design_management/components/design_overlay.vue index 3c2ce693bc0..ecca8606f89 100644 --- a/app/assets/javascripts/design_management/components/design_overlay.vue +++ b/app/assets/javascripts/design_management/components/design_overlay.vue @@ -1,9 +1,9 @@ <script> import { __ } from '~/locale'; -import activeDiscussionQuery from '../graphql/queries/active_discussion.query.graphql'; +import { ACTIVE_DISCUSSION_SOURCE_TYPES } from '../constants'; import updateActiveDiscussionMutation from '../graphql/mutations/update_active_discussion.mutation.graphql'; +import activeDiscussionQuery from '../graphql/queries/active_discussion.query.graphql'; import DesignNotePin from './design_note_pin.vue'; -import { ACTIVE_DISCUSSION_SOURCE_TYPES } from '../constants'; export default { name: 'DesignOverlay', diff --git a/app/assets/javascripts/design_management/components/design_presentation.vue b/app/assets/javascripts/design_management/components/design_presentation.vue index a760adf8b14..11d2f3b2e37 100644 --- a/app/assets/javascripts/design_management/components/design_presentation.vue +++ b/app/assets/javascripts/design_management/components/design_presentation.vue @@ -1,7 +1,7 @@ <script> import { throttle } from 'lodash'; -import DesignImage from './image.vue'; import DesignOverlay from './design_overlay.vue'; +import DesignImage from './image.vue'; const CLICK_DRAG_BUFFER_PX = 2; diff --git a/app/assets/javascripts/design_management/components/design_sidebar.vue b/app/assets/javascripts/design_management/components/design_sidebar.vue index 50b12fd739b..efa1ef2107a 100644 --- a/app/assets/javascripts/design_management/components/design_sidebar.vue +++ b/app/assets/javascripts/design_management/components/design_sidebar.vue @@ -1,15 +1,15 @@ <script> -import Cookies from 'js-cookie'; import { GlCollapse, GlButton, GlPopover } from '@gitlab/ui'; -import { s__ } from '~/locale'; +import Cookies from 'js-cookie'; import { parseBoolean } from '~/lib/utils/common_utils'; +import { s__ } from '~/locale'; +import Participants from '~/sidebar/components/participants/participants.vue'; +import glFeatureFlagsMixin from '~/vue_shared/mixins/gl_feature_flags_mixin'; +import { ACTIVE_DISCUSSION_SOURCE_TYPES } from '../constants'; import updateActiveDiscussionMutation from '../graphql/mutations/update_active_discussion.mutation.graphql'; import { extractDiscussions, extractParticipants } from '../utils/design_management_utils'; -import { ACTIVE_DISCUSSION_SOURCE_TYPES } from '../constants'; import DesignDiscussion from './design_notes/design_discussion.vue'; -import Participants from '~/sidebar/components/participants/participants.vue'; import DesignTodoButton from './design_todo_button.vue'; -import glFeatureFlagsMixin from '~/vue_shared/mixins/gl_feature_flags_mixin'; export default { components: { diff --git a/app/assets/javascripts/design_management/components/design_todo_button.vue b/app/assets/javascripts/design_management/components/design_todo_button.vue index db14db79989..da492f03801 100644 --- a/app/assets/javascripts/design_management/components/design_todo_button.vue +++ b/app/assets/javascripts/design_management/components/design_todo_button.vue @@ -1,8 +1,8 @@ <script> import todoMarkDoneMutation from '~/graphql_shared/mutations/todo_mark_done.mutation.graphql'; -import getDesignQuery from '../graphql/queries/get_design.query.graphql'; -import createDesignTodoMutation from '../graphql/mutations/create_design_todo.mutation.graphql'; import TodoButton from '~/vue_shared/components/todo_button.vue'; +import createDesignTodoMutation from '../graphql/mutations/create_design_todo.mutation.graphql'; +import getDesignQuery from '../graphql/queries/get_design.query.graphql'; import allVersionsMixin from '../mixins/all_versions'; import { updateStoreAfterDeleteDesignTodo } from '../utils/cache_update'; import { findIssueId, findDesignId } from '../utils/design_management_utils'; diff --git a/app/assets/javascripts/design_management/components/image.vue b/app/assets/javascripts/design_management/components/image.vue index 53062e6ebb0..e64ee4a5a34 100644 --- a/app/assets/javascripts/design_management/components/image.vue +++ b/app/assets/javascripts/design_management/components/image.vue @@ -1,6 +1,6 @@ <script> -import { throttle } from 'lodash'; import { GlIcon } from '@gitlab/ui'; +import { throttle } from 'lodash'; export default { components: { diff --git a/app/assets/javascripts/design_management/components/list/item.vue b/app/assets/javascripts/design_management/components/list/item.vue index fa09c7c15cc..5eabe9ef1bc 100644 --- a/app/assets/javascripts/design_management/components/list/item.vue +++ b/app/assets/javascripts/design_management/components/list/item.vue @@ -1,7 +1,7 @@ <script> -import { GlLoadingIcon, GlIcon, GlIntersectionObserver } from '@gitlab/ui'; -import Timeago from '~/vue_shared/components/time_ago_tooltip.vue'; +import { GlLoadingIcon, GlIcon, GlIntersectionObserver, GlTooltipDirective } from '@gitlab/ui'; import { n__, __ } from '~/locale'; +import Timeago from '~/vue_shared/components/time_ago_tooltip.vue'; import { DESIGN_ROUTE_NAME } from '../../router/constants'; export default { @@ -11,6 +11,9 @@ export default { GlIcon, Timeago, }, + directives: { + GlTooltip: GlTooltipDirective, + }, props: { id: { type: [Number, String], @@ -130,7 +133,7 @@ export default { <div class="card-body gl-p-0 gl-display-flex gl-align-items-center gl-justify-content-center gl-overflow-hidden gl-relative" > - <div v-if="icon.name" data-testid="designEvent" class="design-event gl-absolute"> + <div v-if="icon.name" data-testid="design-event" class="gl-top-5 gl-right-5 gl-absolute"> <span :title="icon.tooltip" :aria-label="icon.tooltip"> <gl-icon :name="icon.name" @@ -153,9 +156,10 @@ export default { v-show="showImage" :src="imageLink" :alt="filename" - class="gl-display-block gl-mx-auto gl-max-w-full mh-100 design-img" + class="gl-display-block gl-mx-auto gl-max-w-full gl-max-h-full design-img" data-qa-selector="design_image" :data-qa-filename="filename" + :data-testid="`design-img-${id}`" @load="onImageLoad" @error="onImageError" /> @@ -163,9 +167,14 @@ export default { </div> <div class="card-footer gl-display-flex gl-w-full"> <div class="gl-display-flex gl-flex-direction-column str-truncated-100"> - <span class="gl-font-weight-bold str-truncated-100" data-qa-selector="design_file_name">{{ - filename - }}</span> + <span + v-gl-tooltip + class="gl-font-weight-bold str-truncated-100" + data-qa-selector="design_file_name" + :data-testid="`design-img-filename-${id}`" + :title="filename" + >{{ filename }}</span + > <span v-if="updatedAt" class="str-truncated-100"> {{ __('Updated') }} <timeago :time="updatedAt" tooltip-placement="bottom" /> </span> diff --git a/app/assets/javascripts/design_management/components/toolbar/index.vue b/app/assets/javascripts/design_management/components/toolbar/index.vue index 3509a701984..a3b0f06fb28 100644 --- a/app/assets/javascripts/design_management/components/toolbar/index.vue +++ b/app/assets/javascripts/design_management/components/toolbar/index.vue @@ -3,9 +3,9 @@ import { GlButton, GlIcon, GlTooltipDirective } from '@gitlab/ui'; import permissionsQuery from 'shared_queries/design_management/design_permissions.query.graphql'; import { __, sprintf } from '~/locale'; import timeagoMixin from '~/vue_shared/mixins/timeago'; -import DesignNavigation from './design_navigation.vue'; -import DeleteButton from '../delete_button.vue'; import { DESIGNS_ROUTE_NAME } from '../../router/constants'; +import DeleteButton from '../delete_button.vue'; +import DesignNavigation from './design_navigation.vue'; export default { components: { diff --git a/app/assets/javascripts/design_management/graphql.js b/app/assets/javascripts/design_management/graphql.js index b7aba315168..c6c3e66a01f 100644 --- a/app/assets/javascripts/design_management/graphql.js +++ b/app/assets/javascripts/design_management/graphql.js @@ -1,16 +1,16 @@ +import { defaultDataIdFromObject } from 'apollo-cache-inmemory'; +import produce from 'immer'; +import { uniqueId } from 'lodash'; import Vue from 'vue'; import VueApollo from 'vue-apollo'; -import { uniqueId } from 'lodash'; -import produce from 'immer'; -import { defaultDataIdFromObject } from 'apollo-cache-inmemory'; -import axios from '~/lib/utils/axios_utils'; import createDefaultClient from '~/lib/graphql'; +import axios from '~/lib/utils/axios_utils'; import activeDiscussionQuery from './graphql/queries/active_discussion.query.graphql'; import getDesignQuery from './graphql/queries/get_design.query.graphql'; import typeDefs from './graphql/typedefs.graphql'; +import { addPendingTodoToStore } from './utils/cache_update'; import { extractTodoIdFromDeletePath, createPendingTodo } from './utils/design_management_utils'; import { CREATE_DESIGN_TODO_EXISTS_ERROR } from './utils/error_messages'; -import { addPendingTodoToStore } from './utils/cache_update'; Vue.use(VueApollo); diff --git a/app/assets/javascripts/design_management/index.js b/app/assets/javascripts/design_management/index.js index 1a87dd38137..f0930ade1b5 100644 --- a/app/assets/javascripts/design_management/index.js +++ b/app/assets/javascripts/design_management/index.js @@ -1,7 +1,7 @@ import Vue from 'vue'; -import createRouter from './router'; import App from './components/app.vue'; import apolloProvider from './graphql'; +import createRouter from './router'; export default () => { const el = document.querySelector('.js-design-management'); diff --git a/app/assets/javascripts/design_management/mixins/all_designs.js b/app/assets/javascripts/design_management/mixins/all_designs.js index 4783382d563..e92f8006a0d 100644 --- a/app/assets/javascripts/design_management/mixins/all_designs.js +++ b/app/assets/javascripts/design_management/mixins/all_designs.js @@ -2,8 +2,8 @@ import { propertyOf } from 'lodash'; import getDesignListQuery from 'shared_queries/design_management/get_design_list.query.graphql'; import createFlash, { FLASH_TYPES } from '~/flash'; import { s__ } from '~/locale'; -import allVersionsMixin from './all_versions'; import { DESIGNS_ROUTE_NAME } from '../router/constants'; +import allVersionsMixin from './all_versions'; export default { mixins: [allVersionsMixin], diff --git a/app/assets/javascripts/design_management/pages/design/index.vue b/app/assets/javascripts/design_management/pages/design/index.vue index 492ed2e8719..8a11c25a795 100644 --- a/app/assets/javascripts/design_management/pages/design/index.vue +++ b/app/assets/javascripts/design_management/pages/design/index.vue @@ -1,21 +1,27 @@ <script> -import Mousetrap from 'mousetrap'; import { GlLoadingIcon, GlAlert } from '@gitlab/ui'; +import Mousetrap from 'mousetrap'; import { ApolloMutation } from 'vue-apollo'; import createFlash from '~/flash'; import { fetchPolicies } from '~/lib/graphql'; import glFeatureFlagsMixin from '~/vue_shared/mixins/gl_feature_flags_mixin'; -import allVersionsMixin from '../../mixins/all_versions'; -import Toolbar from '../../components/toolbar/index.vue'; import DesignDestroyer from '../../components/design_destroyer.vue'; -import DesignScaler from '../../components/design_scaler.vue'; -import DesignPresentation from '../../components/design_presentation.vue'; import DesignReplyForm from '../../components/design_notes/design_reply_form.vue'; +import DesignPresentation from '../../components/design_presentation.vue'; +import DesignScaler from '../../components/design_scaler.vue'; import DesignSidebar from '../../components/design_sidebar.vue'; -import getDesignQuery from '../../graphql/queries/get_design.query.graphql'; +import Toolbar from '../../components/toolbar/index.vue'; +import { ACTIVE_DISCUSSION_SOURCE_TYPES, DESIGN_DETAIL_LAYOUT_CLASSLIST } from '../../constants'; import createImageDiffNoteMutation from '../../graphql/mutations/create_image_diff_note.mutation.graphql'; import repositionImageDiffNoteMutation from '../../graphql/mutations/reposition_image_diff_note.mutation.graphql'; import updateActiveDiscussionMutation from '../../graphql/mutations/update_active_discussion.mutation.graphql'; +import getDesignQuery from '../../graphql/queries/get_design.query.graphql'; +import allVersionsMixin from '../../mixins/all_versions'; +import { DESIGNS_ROUTE_NAME } from '../../router/constants'; +import { + updateStoreAfterAddImageDiffNote, + updateStoreAfterRepositionImageDiffNote, +} from '../../utils/cache_update'; import { extractDiscussions, extractDesign, @@ -25,10 +31,6 @@ import { getPageLayoutElement, } from '../../utils/design_management_utils'; import { - updateStoreAfterAddImageDiffNote, - updateStoreAfterRepositionImageDiffNote, -} from '../../utils/cache_update'; -import { ADD_DISCUSSION_COMMENT_ERROR, ADD_IMAGE_DIFF_NOTE_ERROR, UPDATE_IMAGE_DIFF_NOTE_ERROR, @@ -39,8 +41,6 @@ import { designDeletionError, } from '../../utils/error_messages'; import { trackDesignDetailView, usagePingDesignDetailView } from '../../utils/tracking'; -import { DESIGNS_ROUTE_NAME } from '../../router/constants'; -import { ACTIVE_DISCUSSION_SOURCE_TYPES, DESIGN_DETAIL_LAYOUT_CLASSLIST } from '../../constants'; const DEFAULT_SCALE = 1; diff --git a/app/assets/javascripts/design_management/pages/index.vue b/app/assets/javascripts/design_management/pages/index.vue index 5c82a7331b6..c73c8fb6ca4 100644 --- a/app/assets/javascripts/design_management/pages/index.vue +++ b/app/assets/javascripts/design_management/pages/index.vue @@ -1,29 +1,22 @@ <script> import { GlLoadingIcon, GlButton, GlAlert, GlLink, GlSprintf } from '@gitlab/ui'; import VueDraggable from 'vuedraggable'; -import getDesignListQuery from 'shared_queries/design_management/get_design_list.query.graphql'; import permissionsQuery from 'shared_queries/design_management/design_permissions.query.graphql'; +import getDesignListQuery from 'shared_queries/design_management/get_design_list.query.graphql'; import createFlash, { FLASH_TYPES } from '~/flash'; -import { __, s__, sprintf } from '~/locale'; import { getFilename } from '~/lib/utils/file_upload'; -import UploadButton from '../components/upload/button.vue'; +import { __, s__, sprintf } from '~/locale'; +import DesignDropzone from '~/vue_shared/components/upload_dropzone/upload_dropzone.vue'; import DeleteButton from '../components/delete_button.vue'; -import Design from '../components/list/item.vue'; import DesignDestroyer from '../components/design_destroyer.vue'; +import Design from '../components/list/item.vue'; +import UploadButton from '../components/upload/button.vue'; import DesignVersionDropdown from '../components/upload/design_version_dropdown.vue'; -import DesignDropzone from '~/vue_shared/components/upload_dropzone/upload_dropzone.vue'; -import uploadDesignMutation from '../graphql/mutations/upload_design.mutation.graphql'; +import { VALID_DESIGN_FILE_MIMETYPE } from '../constants'; import moveDesignMutation from '../graphql/mutations/move_design.mutation.graphql'; +import uploadDesignMutation from '../graphql/mutations/upload_design.mutation.graphql'; import allDesignsMixin from '../mixins/all_designs'; -import { - UPLOAD_DESIGN_ERROR, - EXISTING_DESIGN_DROP_MANY_FILES_MESSAGE, - EXISTING_DESIGN_DROP_INVALID_FILENAME_MESSAGE, - MOVE_DESIGN_ERROR, - UPLOAD_DESIGN_INVALID_FILETYPE_ERROR, - designUploadSkippedWarning, - designDeletionError, -} from '../utils/error_messages'; +import { DESIGNS_ROUTE_NAME } from '../router/constants'; import { updateStoreAfterUploadDesign, updateDesignsOnStoreAfterReorder, @@ -33,9 +26,16 @@ import { isValidDesignFile, moveDesignOptimisticResponse, } from '../utils/design_management_utils'; +import { + UPLOAD_DESIGN_ERROR, + EXISTING_DESIGN_DROP_MANY_FILES_MESSAGE, + EXISTING_DESIGN_DROP_INVALID_FILENAME_MESSAGE, + MOVE_DESIGN_ERROR, + UPLOAD_DESIGN_INVALID_FILETYPE_ERROR, + designUploadSkippedWarning, + designDeletionError, +} from '../utils/error_messages'; import { trackDesignCreate, trackDesignUpdate } from '../utils/tracking'; -import { DESIGNS_ROUTE_NAME } from '../router/constants'; -import { VALID_DESIGN_FILE_MIMETYPE } from '../constants'; const MAXIMUM_FILE_UPLOAD_LIMIT = 10; @@ -347,15 +347,20 @@ export default { > <header v-if="showToolbar" - class="row-content-block gl-border-t-0 gl-p-3 gl-display-flex" + class="row-content-block gl-border-t-0 gl-py-3 gl-display-flex" data-testid="design-toolbar-wrapper" > - <div class="gl-display-flex gl-justify-content-space-between gl-align-items-center gl-w-full"> - <div> + <div + class="gl-display-flex gl-justify-content-space-between gl-align-items-center gl-w-full gl-flex-wrap" + > + <div class="gl-display-flex gl-align-items-center gl-my-2"> <span class="gl-font-weight-bold gl-mr-3">{{ s__('DesignManagement|Designs') }}</span> <design-version-dropdown /> </div> - <div v-show="hasDesigns" class="qa-selector-toolbar gl-display-flex gl-align-items-center"> + <div + v-show="hasDesigns" + class="qa-selector-toolbar gl-display-flex gl-align-items-center gl-my-2" + > <gl-button v-if="isLatestVersion" variant="link" diff --git a/app/assets/javascripts/design_management/router/routes.js b/app/assets/javascripts/design_management/router/routes.js index 1b07d8aeb76..fb1daecfc35 100644 --- a/app/assets/javascripts/design_management/router/routes.js +++ b/app/assets/javascripts/design_management/router/routes.js @@ -1,5 +1,5 @@ -import Home from '../pages/index.vue'; import DesignDetail from '../pages/design/index.vue'; +import Home from '../pages/index.vue'; import { DESIGNS_ROUTE_NAME, DESIGN_ROUTE_NAME } from './constants'; export default [ diff --git a/app/assets/javascripts/design_management/utils/cache_update.js b/app/assets/javascripts/design_management/utils/cache_update.js index 0c4ee0bf012..c561eda12ed 100644 --- a/app/assets/javascripts/design_management/utils/cache_update.js +++ b/app/assets/javascripts/design_management/utils/cache_update.js @@ -1,7 +1,7 @@ /* eslint-disable @gitlab/require-i18n-strings */ -import { differenceBy } from 'lodash'; import produce from 'immer'; +import { differenceBy } from 'lodash'; import createFlash from '~/flash'; import { extractCurrentDiscussion, extractDesign, extractDesigns } from './design_management_utils'; import { diff --git a/app/assets/javascripts/design_management/utils/error_messages.js b/app/assets/javascripts/design_management/utils/error_messages.js index cb4bb6e26a8..e7b2c814bb3 100644 --- a/app/assets/javascripts/design_management/utils/error_messages.js +++ b/app/assets/javascripts/design_management/utils/error_messages.js @@ -44,13 +44,13 @@ export const MOVE_DESIGN_ERROR = __( 'Something went wrong when reordering designs. Please try again', ); -export const CREATE_DESIGN_TODO_ERROR = __('Failed to create To-Do for the design.'); +export const CREATE_DESIGN_TODO_ERROR = __('Failed to create a to-do item for the design.'); -export const CREATE_DESIGN_TODO_EXISTS_ERROR = __('There is already a To-Do for this design.'); +export const CREATE_DESIGN_TODO_EXISTS_ERROR = __('There is already a to-do item for this design.'); -export const DELETE_DESIGN_TODO_ERROR = __('Failed to remove To-Do for the design.'); +export const DELETE_DESIGN_TODO_ERROR = __('Failed to remove a to-do item for the design.'); -export const TOGGLE_TODO_ERROR = __('Failed to toggle To-Do for the design.'); +export const TOGGLE_TODO_ERROR = __('Failed to toggle the to-do status for the design.'); const MAX_SKIPPED_FILES_LISTINGS = 5; diff --git a/app/assets/javascripts/design_management/utils/tracking.js b/app/assets/javascripts/design_management/utils/tracking.js index 37296f5b4ff..905134fa985 100644 --- a/app/assets/javascripts/design_management/utils/tracking.js +++ b/app/assets/javascripts/design_management/utils/tracking.js @@ -1,5 +1,5 @@ -import Tracking from '~/tracking'; import Api from '~/api'; +import Tracking from '~/tracking'; // Snowplow tracking constants const DESIGN_TRACKING_CONTEXT_SCHEMAS = { |