Commit 4454e00a authored by Sarah Groff Hennigh-Palermo's avatar Sarah Groff Hennigh-Palermo

Merge branch 'leipert-icons-e-to-p' into 'master'

Utilize GitLab UI icon component: environments to performance_bar

See merge request gitlab-org/gitlab!40264
parents b3e178f3 6d80f571
<script> <script>
import { GlLoadingIcon } from '@gitlab/ui'; import { GlLoadingIcon, GlIcon } from '@gitlab/ui';
import { __, s__, sprintf } from '~/locale'; import { __, s__, sprintf } from '~/locale';
import { formatTime } from '~/lib/utils/datetime_utility'; import { formatTime } from '~/lib/utils/datetime_utility';
import Icon from '~/vue_shared/components/icon.vue';
import eventHub from '../event_hub'; import eventHub from '../event_hub';
import tooltip from '../../vue_shared/directives/tooltip'; import tooltip from '../../vue_shared/directives/tooltip';
...@@ -11,7 +10,7 @@ export default { ...@@ -11,7 +10,7 @@ export default {
tooltip, tooltip,
}, },
components: { components: {
Icon, GlIcon,
GlLoadingIcon, GlLoadingIcon,
}, },
props: { props: {
...@@ -80,8 +79,8 @@ export default { ...@@ -80,8 +79,8 @@ export default {
data-toggle="dropdown" data-toggle="dropdown"
> >
<span> <span>
<icon name="play" /> <gl-icon name="play" />
<icon name="chevron-down" /> <gl-icon name="chevron-down" />
<gl-loading-icon v-if="isLoading" /> <gl-loading-icon v-if="isLoading" />
</span> </span>
</button> </button>
...@@ -97,7 +96,7 @@ export default { ...@@ -97,7 +96,7 @@ export default {
> >
<span class="flex-fill">{{ action.name }}</span> <span class="flex-fill">{{ action.name }}</span>
<span v-if="action.scheduledAt" class="text-secondary"> <span v-if="action.scheduledAt" class="text-secondary">
<icon name="clock" /> <gl-icon name="clock" />
{{ remainingTime(action) }} {{ remainingTime(action) }}
</span> </span>
</button> </button>
......
...@@ -5,15 +5,14 @@ ...@@ -5,15 +5,14 @@
*/ */
import $ from 'jquery'; import $ from 'jquery';
import { GlTooltipDirective } from '@gitlab/ui'; import { GlTooltipDirective, GlIcon } from '@gitlab/ui';
import Icon from '~/vue_shared/components/icon.vue';
import { s__ } from '~/locale'; import { s__ } from '~/locale';
import eventHub from '../event_hub'; import eventHub from '../event_hub';
import LoadingButton from '../../vue_shared/components/loading_button.vue'; import LoadingButton from '../../vue_shared/components/loading_button.vue';
export default { export default {
components: { components: {
Icon, GlIcon,
LoadingButton, LoadingButton,
}, },
directives: { directives: {
...@@ -65,6 +64,6 @@ export default { ...@@ -65,6 +64,6 @@ export default {
data-target="#delete-environment-modal" data-target="#delete-environment-modal"
@click="onClick" @click="onClick"
> >
<icon name="remove" /> <gl-icon name="remove" />
</loading-button> </loading-button>
</template> </template>
<script> <script>
/* eslint-disable @gitlab/vue-require-i18n-strings */ /* eslint-disable @gitlab/vue-require-i18n-strings */
import { isEmpty } from 'lodash'; import { isEmpty } from 'lodash';
import { GlTooltipDirective } from '@gitlab/ui'; import { GlTooltipDirective, GlIcon } from '@gitlab/ui';
import { __, sprintf } from '~/locale'; import { __, sprintf } from '~/locale';
import { convertObjectPropsToCamelCase } from '~/lib/utils/common_utils'; import { convertObjectPropsToCamelCase } from '~/lib/utils/common_utils';
import timeagoMixin from '~/vue_shared/mixins/timeago'; import timeagoMixin from '~/vue_shared/mixins/timeago';
import UserAvatarLink from '~/vue_shared/components/user_avatar/user_avatar_link.vue'; import UserAvatarLink from '~/vue_shared/components/user_avatar/user_avatar_link.vue';
import CommitComponent from '~/vue_shared/components/commit.vue'; import CommitComponent from '~/vue_shared/components/commit.vue';
import Icon from '~/vue_shared/components/icon.vue';
import TooltipOnTruncate from '~/vue_shared/components/tooltip_on_truncate.vue'; import TooltipOnTruncate from '~/vue_shared/components/tooltip_on_truncate.vue';
import eventHub from '../event_hub'; import eventHub from '../event_hub';
import ActionsComponent from './environment_actions.vue'; import ActionsComponent from './environment_actions.vue';
...@@ -30,7 +29,7 @@ export default { ...@@ -30,7 +29,7 @@ export default {
ActionsComponent, ActionsComponent,
CommitComponent, CommitComponent,
ExternalUrlComponent, ExternalUrlComponent,
Icon, GlIcon,
MonitoringButtonComponent, MonitoringButtonComponent,
PinComponent, PinComponent,
DeleteComponent, DeleteComponent,
...@@ -535,7 +534,7 @@ export default { ...@@ -535,7 +534,7 @@ export default {
</div> </div>
<span v-if="shouldRenderDeployBoard" class="deploy-board-icon" @click="toggleDeployBoard"> <span v-if="shouldRenderDeployBoard" class="deploy-board-icon" @click="toggleDeployBoard">
<icon :name="deployIconName" /> <gl-icon :name="deployIconName" />
</span> </span>
<span <span
...@@ -560,9 +559,9 @@ export default { ...@@ -560,9 +559,9 @@ export default {
role="button" role="button"
@click="onClickFolder" @click="onClickFolder"
> >
<icon :name="folderIconName" class="folder-icon" /> <gl-icon :name="folderIconName" class="folder-icon" />
<icon name="folder" class="folder-icon" /> <gl-icon name="folder" class="folder-icon" />
<span> {{ model.folderName }} </span> <span> {{ model.folderName }} </span>
......
<script> <script>
import { GlDeprecatedButton, GlTooltipDirective } from '@gitlab/ui'; import { GlDeprecatedButton, GlTooltipDirective, GlIcon } from '@gitlab/ui';
import { __ } from '~/locale'; import { __ } from '~/locale';
/** /**
* Renders the Monitoring (Metrics) link in environments table. * Renders the Monitoring (Metrics) link in environments table.
*/ */
import Icon from '~/vue_shared/components/icon.vue';
export default { export default {
components: { components: {
Icon, GlIcon,
GlDeprecatedButton, GlDeprecatedButton,
}, },
directives: { directives: {
...@@ -37,6 +35,6 @@ export default { ...@@ -37,6 +35,6 @@ export default {
rel="noopener noreferrer nofollow" rel="noopener noreferrer nofollow"
variant="default" variant="default"
> >
<icon name="chart" /> <gl-icon name="chart" />
</gl-deprecated-button> </gl-deprecated-button>
</template> </template>
...@@ -3,14 +3,13 @@ ...@@ -3,14 +3,13 @@
* Renders a prevent auto-stop button. * Renders a prevent auto-stop button.
* Used in environments table. * Used in environments table.
*/ */
import { GlDeprecatedButton, GlTooltipDirective } from '@gitlab/ui'; import { GlDeprecatedButton, GlTooltipDirective, GlIcon } from '@gitlab/ui';
import Icon from '~/vue_shared/components/icon.vue';
import { __ } from '~/locale'; import { __ } from '~/locale';
import eventHub from '../event_hub'; import eventHub from '../event_hub';
export default { export default {
components: { components: {
Icon, GlIcon,
GlDeprecatedButton, GlDeprecatedButton,
}, },
directives: { directives: {
...@@ -37,6 +36,6 @@ export default { ...@@ -37,6 +36,6 @@ export default {
:aria-label="$options.title" :aria-label="$options.title"
@click="onPinClick" @click="onPinClick"
> >
<icon name="thumbtack" /> <gl-icon name="thumbtack" />
</gl-deprecated-button> </gl-deprecated-button>
</template> </template>
...@@ -10,14 +10,14 @@ import { ...@@ -10,14 +10,14 @@ import {
GlLoadingIcon, GlLoadingIcon,
GlModalDirective, GlModalDirective,
GlDeprecatedButton, GlDeprecatedButton,
GlIcon,
} from '@gitlab/ui'; } from '@gitlab/ui';
import { s__ } from '~/locale'; import { s__ } from '~/locale';
import Icon from '~/vue_shared/components/icon.vue';
import eventHub from '../event_hub'; import eventHub from '../event_hub';
export default { export default {
components: { components: {
Icon, GlIcon,
GlLoadingIcon, GlLoadingIcon,
GlDeprecatedButton, GlDeprecatedButton,
}, },
...@@ -81,7 +81,7 @@ export default { ...@@ -81,7 +81,7 @@ export default {
class="d-none d-md-block text-secondary" class="d-none d-md-block text-secondary"
@click="onClick" @click="onClick"
> >
<icon v-if="isLastDeployment" name="repeat" /> <icon v-else name="redo" /> <gl-icon v-if="isLastDeployment" name="repeat" /> <gl-icon v-else name="redo" />
<gl-loading-icon v-if="isLoading" /> <gl-loading-icon v-if="isLoading" />
</gl-deprecated-button> </gl-deprecated-button>
</template> </template>
...@@ -3,13 +3,12 @@ ...@@ -3,13 +3,12 @@
* Renders a terminal button to open a web terminal. * Renders a terminal button to open a web terminal.
* Used in environments table. * Used in environments table.
*/ */
import { GlTooltipDirective } from '@gitlab/ui'; import { GlTooltipDirective, GlIcon } from '@gitlab/ui';
import Icon from '~/vue_shared/components/icon.vue';
import { __ } from '~/locale'; import { __ } from '~/locale';
export default { export default {
components: { components: {
Icon, GlIcon,
}, },
directives: { directives: {
GlTooltip: GlTooltipDirective, GlTooltip: GlTooltipDirective,
...@@ -42,6 +41,6 @@ export default { ...@@ -42,6 +41,6 @@ export default {
:class="{ disabled: disabled }" :class="{ disabled: disabled }"
class="btn terminal-button d-none d-sm-none d-md-block text-secondary" class="btn terminal-button d-none d-sm-none d-md-block text-secondary"
> >
<icon name="terminal" /> <gl-icon name="terminal" />
</a> </a>
</template> </template>
...@@ -11,10 +11,10 @@ import { ...@@ -11,10 +11,10 @@ import {
GlDeprecatedDropdown, GlDeprecatedDropdown,
GlDeprecatedDropdownItem, GlDeprecatedDropdownItem,
GlDeprecatedDropdownDivider, GlDeprecatedDropdownDivider,
GlIcon,
} from '@gitlab/ui'; } from '@gitlab/ui';
import { deprecatedCreateFlash as createFlash } from '~/flash'; import { deprecatedCreateFlash as createFlash } from '~/flash';
import { __, sprintf, n__ } from '~/locale'; import { __, sprintf, n__ } from '~/locale';
import Icon from '~/vue_shared/components/icon.vue';
import TooltipOnTruncate from '~/vue_shared/components/tooltip_on_truncate.vue'; import TooltipOnTruncate from '~/vue_shared/components/tooltip_on_truncate.vue';
import Stacktrace from './stacktrace.vue'; import Stacktrace from './stacktrace.vue';
import TrackEventDirective from '~/vue_shared/directives/track_event'; import TrackEventDirective from '~/vue_shared/directives/track_event';
...@@ -38,7 +38,7 @@ export default { ...@@ -38,7 +38,7 @@ export default {
GlLink, GlLink,
GlLoadingIcon, GlLoadingIcon,
TooltipOnTruncate, TooltipOnTruncate,
Icon, GlIcon,
Stacktrace, Stacktrace,
GlBadge, GlBadge,
GlAlert, GlAlert,
...@@ -397,7 +397,7 @@ export default { ...@@ -397,7 +397,7 @@ export default {
data-testid="external-url-link" data-testid="external-url-link"
> >
<span class="text-truncate">{{ error.externalUrl }}</span> <span class="text-truncate">{{ error.externalUrl }}</span>
<icon name="external-link" class="ml-1 flex-shrink-0" /> <gl-icon name="external-link" class="ml-1 flex-shrink-0" />
</gl-link> </gl-link>
</li> </li>
<li v-if="error.firstReleaseVersion"> <li v-if="error.firstReleaseVersion">
......
<script> <script>
import { GlTooltip, GlSprintf } from '@gitlab/ui'; import { GlTooltip, GlSprintf, GlIcon } from '@gitlab/ui';
import ClipboardButton from '~/vue_shared/components/clipboard_button.vue'; import ClipboardButton from '~/vue_shared/components/clipboard_button.vue';
import FileIcon from '~/vue_shared/components/file_icon.vue'; import FileIcon from '~/vue_shared/components/file_icon.vue';
import Icon from '~/vue_shared/components/icon.vue';
export default { export default {
components: { components: {
ClipboardButton, ClipboardButton,
FileIcon, FileIcon,
Icon, GlIcon,
GlSprintf, GlSprintf,
}, },
directives: { directives: {
...@@ -80,7 +79,7 @@ export default { ...@@ -80,7 +79,7 @@ export default {
<div ref="header" class="file-title file-title-flex-parent"> <div ref="header" class="file-title file-title-flex-parent">
<div class="file-header-content d-flex align-content-center"> <div class="file-header-content d-flex align-content-center">
<div v-if="hasCode" class="d-inline-block cursor-pointer" @click="toggle()"> <div v-if="hasCode" class="d-inline-block cursor-pointer" @click="toggle()">
<icon :name="collapseIcon" :size="16" aria-hidden="true" class="gl-mr-2" /> <gl-icon :name="collapseIcon" :size="16" aria-hidden="true" class="gl-mr-2" />
</div> </div>
<file-icon :file-name="filePath" :size="18" aria-hidden="true" css-classes="gl-mr-2" /> <file-icon :file-name="filePath" :size="18" aria-hidden="true" css-classes="gl-mr-2" />
<strong <strong
......
<script> <script>
import { mapActions, mapState } from 'vuex'; import { mapActions, mapState } from 'vuex';
import { GlFormInput } from '@gitlab/ui'; import { GlFormInput, GlIcon } from '@gitlab/ui';
import Icon from '~/vue_shared/components/icon.vue';
import LoadingButton from '~/vue_shared/components/loading_button.vue'; import LoadingButton from '~/vue_shared/components/loading_button.vue';
export default { export default {
components: { GlFormInput, Icon, LoadingButton }, components: { GlFormInput, GlIcon, LoadingButton },
computed: { computed: {
...mapState(['apiHost', 'connectError', 'connectSuccessful', 'isLoadingProjects', 'token']), ...mapState(['apiHost', 'connectError', 'connectSuccessful', 'isLoadingProjects', 'token']),
tokenInputState() { tokenInputState() {
...@@ -64,7 +63,7 @@ export default { ...@@ -64,7 +63,7 @@ export default {
:loading="isLoadingProjects" :loading="isLoadingProjects"
@click="fetchProjects" @click="fetchProjects"
/> />
<icon <gl-icon
v-show="connectSuccessful" v-show="connectSuccessful"
class="js-error-tracking-connect-success gl-ml-2 text-success align-middle" class="js-error-tracking-connect-success gl-ml-2 text-success align-middle"
:aria-label="__('Projects Successfully Retrieved')" :aria-label="__('Projects Successfully Retrieved')"
......
<script> <script>
import { debounce } from 'lodash'; import { debounce } from 'lodash';
import { mapActions } from 'vuex'; import { mapActions } from 'vuex';
import Icon from '~/vue_shared/components/icon.vue'; import { GlIcon } from '@gitlab/ui';
import eventHub from '../event_hub'; import eventHub from '../event_hub';
import frequentItemsMixin from './frequent_items_mixin'; import frequentItemsMixin from './frequent_items_mixin';
export default { export default {
components: { components: {
Icon, GlIcon,
}, },
mixins: [frequentItemsMixin], mixins: [frequentItemsMixin],
data() { data() {
...@@ -49,6 +49,6 @@ export default { ...@@ -49,6 +49,6 @@ export default {
type="search" type="search"
class="form-control" class="form-control"
/> />
<icon v-if="!searchQuery" name="search" class="search-icon" /> <gl-icon v-if="!searchQuery" name="search" class="search-icon" />
</div> </div>
</template> </template>
<script> <script>
import { GlButton, GlFormGroup, GlFormInput, GlFormCheckbox } from '@gitlab/ui'; import { GlButton, GlFormGroup, GlFormInput, GlFormCheckbox, GlIcon } from '@gitlab/ui';
import { mapState, mapActions } from 'vuex'; import { mapState, mapActions } from 'vuex';
import Icon from '~/vue_shared/components/icon.vue';
export default { export default {
components: { components: {
...@@ -9,7 +8,7 @@ export default { ...@@ -9,7 +8,7 @@ export default {
GlFormCheckbox, GlFormCheckbox,
GlFormGroup, GlFormGroup,
GlFormInput, GlFormInput,
Icon, GlIcon,
}, },
data() { data() {
return { placeholderUrl: 'https://my-url.grafana.net/' }; return { placeholderUrl: 'https://my-url.grafana.net/' };
...@@ -89,7 +88,7 @@ export default { ...@@ -89,7 +88,7 @@ export default {
rel="noopener noreferrer" rel="noopener noreferrer"
> >
{{ __('More information') }} {{ __('More information') }}
<icon name="external-link" class="vertical-align-middle" /> <gl-icon name="external-link" class="vertical-align-middle" />
</a> </a>
</p> </p>
</gl-form-group> </gl-form-group>
......
<script> <script>
import { GlIcon } from '@gitlab/ui';
import tooltip from '~/vue_shared/directives/tooltip'; import tooltip from '~/vue_shared/directives/tooltip';
import icon from '~/vue_shared/components/icon.vue';
import eventHub from '../event_hub'; import eventHub from '../event_hub';
import { COMMON_STR } from '../constants'; import { COMMON_STR } from '../constants';
export default { export default {
components: { components: {
icon, GlIcon,
}, },
directives: { directives: {
tooltip, tooltip,
...@@ -56,7 +56,7 @@ export default { ...@@ -56,7 +56,7 @@ export default {
class="leave-group btn btn-xs no-expand gl-text-gray-500 gl-ml-5" class="leave-group btn btn-xs no-expand gl-text-gray-500 gl-ml-5"
@click.prevent="onLeaveGroup" @click.prevent="onLeaveGroup"
> >
<icon name="leave" class="position-top-0" /> <gl-icon name="leave" class="position-top-0" />
</a> </a>
<a <a
v-if="group.canEdit" v-if="group.canEdit"
...@@ -68,7 +68,7 @@ export default { ...@@ -68,7 +68,7 @@ export default {
data-placement="bottom" data-placement="bottom"
class="edit-group btn btn-xs no-expand gl-text-gray-500 gl-ml-5" class="edit-group btn btn-xs no-expand gl-text-gray-500 gl-ml-5"
> >
<icon name="settings" class="position-top-0 align-middle" /> <gl-icon name="settings" class="position-top-0 align-middle" />
</a> </a>
</div> </div>
</template> </template>
<script> <script>
import icon from '~/vue_shared/components/icon.vue'; import { GlIcon } from '@gitlab/ui';
export default { export default {
components: { components: {
icon, GlIcon,
}, },
props: { props: {
isGroupOpen: { isGroupOpen: {
...@@ -21,5 +21,5 @@ export default { ...@@ -21,5 +21,5 @@ export default {
</script> </script>
<template> <template>
<span class="folder-caret gl-mr-2"> <icon :size="10" :name="iconClass" /> </span> <span class="folder-caret gl-mr-2"> <gl-icon :size="10" :name="iconClass" /> </span>
</template> </template>
<script> <script>
import { GlIcon } from '@gitlab/ui';
import tooltip from '~/vue_shared/directives/tooltip'; import tooltip from '~/vue_shared/directives/tooltip';
import icon from '~/vue_shared/components/icon.vue';
export default { export default {
components: { components: {
icon, GlIcon,
}, },
directives: { directives: {
tooltip, tooltip,
...@@ -57,6 +57,6 @@ export default { ...@@ -57,6 +57,6 @@ export default {
:title="title" :title="title"
data-container="body" data-container="body"
> >
<icon :name="iconName" /> <span v-if="isValuePresent" class="stat-value"> {{ value }} </span> <gl-icon :name="iconName" /> <span v-if="isValuePresent" class="stat-value"> {{ value }} </span>
</span> </span>
</template> </template>
<script> <script>
import icon from '~/vue_shared/components/icon.vue'; import { GlIcon } from '@gitlab/ui';
import { ITEM_TYPE } from '../constants'; import { ITEM_TYPE } from '../constants';
export default { export default {
components: { components: {
icon, GlIcon,
}, },
props: { props: {
itemType: { itemType: {
...@@ -29,5 +29,5 @@ export default { ...@@ -29,5 +29,5 @@ export default {
</script> </script>
<template> <template>
<span class="item-type-icon"> <icon :name="iconClass" /> </span> <span class="item-type-icon"> <gl-icon :name="iconClass" /> </span>
</template> </template>
<script> <script>
import { GlTooltipDirective } from '@gitlab/ui'; import { GlTooltipDirective, GlIcon } from '@gitlab/ui';
import { __ } from '~/locale'; import { __ } from '~/locale';
import Icon from '~/vue_shared/components/icon.vue';
import Suggestion from './item.vue'; import Suggestion from './item.vue';
import query from '../queries/issues.query.graphql'; import query from '../queries/issues.query.graphql';
export default { export default {
components: { components: {
Suggestion, Suggestion,
Icon, GlIcon,
}, },
directives: { directives: {
GlTooltip: GlTooltipDirective, GlTooltip: GlTooltipDirective,
...@@ -70,7 +69,7 @@ export default { ...@@ -70,7 +69,7 @@ export default {
<div v-show="showSuggestions" class="form-group row issuable-suggestions"> <div v-show="showSuggestions" class="form-group row issuable-suggestions">
<div v-once class="col-form-label col-sm-2 pt-0"> <div v-once class="col-form-label col-sm-2 pt-0">
{{ __('Similar issues') }} {{ __('Similar issues') }}
<icon <gl-icon
v-gl-tooltip.bottom v-gl-tooltip.bottom
:title="$options.helpText" :title="$options.helpText"
:aria-label="$options.helpText" :aria-label="$options.helpText"
......
<script> <script>
/* eslint-disable @gitlab/vue-require-i18n-strings */ /* eslint-disable @gitlab/vue-require-i18n-strings */
import { uniqueId } from 'lodash'; import { uniqueId } from 'lodash';
import { GlLink, GlTooltip, GlTooltipDirective } from '@gitlab/ui'; import { GlLink, GlTooltip, GlTooltipDirective, GlIcon } from '@gitlab/ui';
import { __ } from '~/locale'; import { __ } from '~/locale';
import Icon from '~/vue_shared/components/icon.vue';
import UserAvatarImage from '~/vue_shared/components/user_avatar/user_avatar_image.vue'; import UserAvatarImage from '~/vue_shared/components/user_avatar/user_avatar_image.vue';
import TimeagoTooltip from '~/vue_shared/components/time_ago_tooltip.vue'; import TimeagoTooltip from '~/vue_shared/components/time_ago_tooltip.vue';
import timeago from '~/vue_shared/mixins/timeago'; import timeago from '~/vue_shared/mixins/timeago';
...@@ -12,7 +11,7 @@ export default { ...@@ -12,7 +11,7 @@ export default {
components: { components: {
GlTooltip, GlTooltip,
GlLink, GlLink,
Icon, GlIcon,
UserAvatarImage, UserAvatarImage,
TimeagoTooltip, TimeagoTooltip,
}, },
...@@ -68,7 +67,7 @@ export default { ...@@ -68,7 +67,7 @@ export default {
<template> <template>
<div class="suggestion-item"> <div class="suggestion-item">
<div class="d-flex align-items-center"> <div class="d-flex align-items-center">
<icon <gl-icon
v-if="suggestion.confidential" v-if="suggestion.confidential"
v-gl-tooltip.bottom v-gl-tooltip.bottom
:title="__('Confidential')" :title="__('Confidential')"
...@@ -84,7 +83,7 @@ export default { ...@@ -84,7 +83,7 @@ export default {
</gl-link> </gl-link>
</div> </div>
<div class="text-secondary suggestion-footer"> <div class="text-secondary suggestion-footer">
<icon <gl-icon
ref="state" ref="state"
:name="stateIcon" :name="stateIcon"
:class="{ :class="{
...@@ -134,7 +133,7 @@ export default { ...@@ -134,7 +133,7 @@ export default {
:title="tooltipTitle" :title="tooltipTitle"
class="suggestion-help-hover gl-ml-3 text-tertiary" class="suggestion-help-hover gl-ml-3 text-tertiary"
> >
<icon :name="icon" /> {{ count }} <gl-icon :name="icon" /> {{ count }}
</span> </span>
</span> </span>
</div> </div>
......
<script> <script>
import { throttle, isEmpty } from 'lodash'; import { throttle, isEmpty } from 'lodash';
import { mapGetters, mapState, mapActions } from 'vuex'; import { mapGetters, mapState, mapActions } from 'vuex';
import { GlLoadingIcon } from '@gitlab/ui'; import { GlLoadingIcon, GlIcon } from '@gitlab/ui';
import { GlBreakpointInstance as bp } from '@gitlab/ui/dist/utils'; import { GlBreakpointInstance as bp } from '@gitlab/ui/dist/utils';
import { isScrolledToBottom } from '~/lib/utils/scroll_utils'; import { isScrolledToBottom } from '~/lib/utils/scroll_utils';
import { polyfillSticky } from '~/lib/utils/sticky'; import { polyfillSticky } from '~/lib/utils/sticky';
import CiHeader from '~/vue_shared/components/header_ci_component.vue'; import CiHeader from '~/vue_shared/components/header_ci_component.vue';
import Callout from '~/vue_shared/components/callout.vue'; import Callout from '~/vue_shared/components/callout.vue';
import Icon from '~/vue_shared/components/icon.vue';
import EmptyState from './empty_state.vue'; import EmptyState from './empty_state.vue';
import EnvironmentsBlock from './environments_block.vue'; import EnvironmentsBlock from './environments_block.vue';
import ErasedBlock from './erased_block.vue'; import ErasedBlock from './erased_block.vue';
...@@ -27,7 +26,7 @@ export default { ...@@ -27,7 +26,7 @@ export default {
EmptyState, EmptyState,
EnvironmentsBlock, EnvironmentsBlock,
ErasedBlock, ErasedBlock,
Icon, GlIcon,
Log, Log,
LogTopBar, LogTopBar,
StuckBlock, StuckBlock,
...@@ -266,7 +265,7 @@ export default { ...@@ -266,7 +265,7 @@ export default {
:class="{ 'sticky-top border-bottom-0': hasTrace }" :class="{ 'sticky-top border-bottom-0': hasTrace }"
data-testid="archived-job" data-testid="archived-job"
> >
<icon name="lock" class="align-text-bottom" /> <gl-icon name="lock" class="align-text-bottom" />
{{ __('This job is archived. Only the complete pipeline can be retried.') }} {{ __('This job is archived. Only the complete pipeline can be retried.') }}
</div> </div>
<!-- job log --> <!-- job log -->
......
<script> <script>
import { GlLink } from '@gitlab/ui'; import { GlLink, GlIcon } from '@gitlab/ui';
import tooltip from '~/vue_shared/directives/tooltip'; import tooltip from '~/vue_shared/directives/tooltip';
import CiIcon from '~/vue_shared/components/ci_icon.vue'; import CiIcon from '~/vue_shared/components/ci_icon.vue';
import Icon from '~/vue_shared/components/icon.vue';
import delayedJobMixin from '~/jobs/mixins/delayed_job_mixin'; import delayedJobMixin from '~/jobs/mixins/delayed_job_mixin';
import { sprintf } from '~/locale'; import { sprintf } from '~/locale';
export default { export default {
components: { components: {
CiIcon, CiIcon,
Icon, GlIcon,
GlLink, GlLink,
}, },
directives: { directives: {
...@@ -56,7 +55,7 @@ export default { ...@@ -56,7 +55,7 @@ export default {
data-boundary="viewport" data-boundary="viewport"
class="js-job-link d-flex" class="js-job-link d-flex"
> >
<icon <gl-icon
v-if="isActive" v-if="isActive"
name="arrow-right" name="arrow-right"
class="js-arrow-right icon-arrow-right position-absolute d-block" class="js-arrow-right icon-arrow-right position-absolute d-block"
...@@ -66,7 +65,7 @@ export default { ...@@ -66,7 +65,7 @@ export default {
<span class="text-truncate w-100">{{ job.name ? job.name : job.id }}</span> <span class="text-truncate w-100">{{ job.name ? job.name : job.id }}</span>
<icon v-if="job.retried" name="retry" class="js-retry-icon" /> <gl-icon v-if="job.retried" name="retry" class="js-retry-icon" />
</gl-link> </gl-link>
</div> </div>
</template> </template>
<script> <script>
import { GlTooltipDirective, GlLink, GlDeprecatedButton } from '@gitlab/ui'; import { GlTooltipDirective, GlLink, GlDeprecatedButton, GlIcon } from '@gitlab/ui';
import { polyfillSticky } from '~/lib/utils/sticky'; import { polyfillSticky } from '~/lib/utils/sticky';
import Icon from '~/vue_shared/components/icon.vue';
import { numberToHumanSize } from '~/lib/utils/number_utils'; import { numberToHumanSize } from '~/lib/utils/number_utils';
import { __, sprintf } from '~/locale'; import { __, sprintf } from '~/locale';
import scrollDown from '../svg/scroll_down.svg'; import scrollDown from '../svg/scroll_down.svg';
export default { export default {
components: { components: {
Icon, GlIcon,
GlLink, GlLink,
GlDeprecatedButton, GlDeprecatedButton,
}, },
...@@ -95,7 +94,7 @@ export default { ...@@ -95,7 +94,7 @@ export default {
class="controllers-buttons" class="controllers-buttons"
data-testid="job-raw-link-controller" data-testid="job-raw-link-controller"
> >
<icon name="doc-text" /> <gl-icon name="doc-text" />
</gl-link> </gl-link>
<gl-link <gl-link
...@@ -108,7 +107,7 @@ export default { ...@@ -108,7 +107,7 @@ export default {
data-testid="job-log-erase-link" data-testid="job-log-erase-link"
data-method="post" data-method="post"
> >
<icon name="remove" /> <gl-icon name="remove" />
</gl-link> </gl-link>
<!-- eo links --> <!-- eo links -->
...@@ -121,7 +120,7 @@ export default { ...@@ -121,7 +120,7 @@ export default {
data-testid="job-controller-scroll-top" data-testid="job-controller-scroll-top"
@click="handleScrollToTop" @click="handleScrollToTop"
> >
<icon name="scroll_up" /> <gl-icon name="scroll_up" />
</gl-deprecated-button> </gl-deprecated-button>
</div> </div>
......
<script> <script>
import Icon from '~/vue_shared/components/icon.vue'; import { GlIcon } from '@gitlab/ui';
import LineNumber from './line_number.vue'; import LineNumber from './line_number.vue';
import DurationBadge from './duration_badge.vue'; import DurationBadge from './duration_badge.vue';
export default { export default {
components: { components: {
Icon, GlIcon,
LineNumber, LineNumber,
DurationBadge, DurationBadge,
}, },
...@@ -47,7 +47,7 @@ export default { ...@@ -47,7 +47,7 @@ export default {
role="button" role="button"
@click="handleOnClick" @click="handleOnClick"
> >
<icon :name="iconName" class="arrow position-absolute" /> <gl-icon :name="iconName" class="arrow position-absolute" />
<line-number :line-number="line.lineNumber" :path="path" /> <line-number :line-number="line.lineNumber" :path="path" />
<span <span
v-for="(content, i) in line.content" v-for="(content, i) in line.content"
......
<script> <script>
import { uniqueId } from 'lodash'; import { uniqueId } from 'lodash';
import { mapActions } from 'vuex'; import { mapActions } from 'vuex';
import { GlDeprecatedButton } from '@gitlab/ui'; import { GlDeprecatedButton, GlIcon } from '@gitlab/ui';
import { s__, sprintf } from '~/locale'; import { s__, sprintf } from '~/locale';
import Icon from '~/vue_shared/components/icon.vue';
export default { export default {
name: 'ManualVariablesForm', name: 'ManualVariablesForm',
components: { components: {
GlDeprecatedButton, GlDeprecatedButton,
Icon, GlIcon,
}, },
props: { props: {
action: { action: {
...@@ -141,7 +140,7 @@ export default { ...@@ -141,7 +140,7 @@ export default {
class="btn-transparent btn-blank w-25" class="btn-transparent btn-blank w-25"
@click="deleteVariable(variable.id)" @click="deleteVariable(variable.id)"
> >
<icon name="clear" /> <gl-icon name="clear" />
</gl-deprecated-button> </gl-deprecated-button>
</div> </div>
</div> </div>
......
<script> <script>
import { isEmpty } from 'lodash'; import { isEmpty } from 'lodash';
import { mapActions, mapState } from 'vuex'; import { mapActions, mapState } from 'vuex';
import { GlLink, GlDeprecatedButton } from '@gitlab/ui'; import { GlLink, GlDeprecatedButton, GlIcon } from '@gitlab/ui';
import { __, sprintf } from '~/locale'; import { __, sprintf } from '~/locale';
import timeagoMixin from '~/vue_shared/mixins/timeago'; import timeagoMixin from '~/vue_shared/mixins/timeago';
import { timeIntervalInWords } from '~/lib/utils/datetime_utility'; import { timeIntervalInWords } from '~/lib/utils/datetime_utility';
import Icon from '~/vue_shared/components/icon.vue';
import DetailRow from './sidebar_detail_row.vue'; import DetailRow from './sidebar_detail_row.vue';
import ArtifactsBlock from './artifacts_block.vue'; import ArtifactsBlock from './artifacts_block.vue';
import TriggerBlock from './trigger_block.vue'; import TriggerBlock from './trigger_block.vue';
...@@ -19,7 +18,7 @@ export default { ...@@ -19,7 +18,7 @@ export default {
ArtifactsBlock, ArtifactsBlock,
CommitBlock, CommitBlock,
DetailRow, DetailRow,
Icon, GlIcon,
TriggerBlock, TriggerBlock,
StagesDropdown, StagesDropdown,
JobsContainer, JobsContainer,
...@@ -157,7 +156,7 @@ export default { ...@@ -157,7 +156,7 @@ export default {
class="js-terminal-link btn btn-primary btn-inverted visible-md-block visible-lg-block float-left" class="js-terminal-link btn btn-primary btn-inverted visible-md-block visible-lg-block float-left"
target="_blank" target="_blank"
> >
{{ __('Debug') }} <icon name="external-link" :size="14" /> {{ __('Debug') }} <gl-icon name="external-link" :size="14" />
</gl-link> </gl-link>
</div> </div>
......
...@@ -11,12 +11,12 @@ import { ...@@ -11,12 +11,12 @@ import {
GlNewDropdownItem as GlDropdownItem, GlNewDropdownItem as GlDropdownItem,
GlModal, GlModal,
GlTooltipDirective, GlTooltipDirective,
GlIcon,
} from '@gitlab/ui'; } from '@gitlab/ui';
import { __, s__ } from '~/locale'; import { __, s__ } from '~/locale';
import Translate from '~/vue_shared/translate'; import Translate from '~/vue_shared/translate';
import TrackEventDirective from '~/vue_shared/directives/track_event'; import TrackEventDirective from '~/vue_shared/directives/track_event';
import glFeatureFlagsMixin from '~/vue_shared/mixins/gl_feature_flags_mixin'; import glFeatureFlagsMixin from '~/vue_shared/mixins/gl_feature_flags_mixin';
import Icon from '~/vue_shared/components/icon.vue';
import { alertsValidator, queriesValidator } from '../validators'; import { alertsValidator, queriesValidator } from '../validators';
import { OPERATORS } from '../constants'; import { OPERATORS } from '../constants';
...@@ -44,7 +44,7 @@ export default { ...@@ -44,7 +44,7 @@ export default {
GlDropdownItem, GlDropdownItem,
GlModal, GlModal,
GlLink, GlLink,
Icon, GlIcon,
}, },
directives: { directives: {
GlTooltip: GlTooltipDirective, GlTooltip: GlTooltipDirective,
...@@ -242,7 +242,7 @@ export default { ...@@ -242,7 +242,7 @@ export default {
<template #description> <template #description>
<div class="d-flex align-items-center"> <div class="d-flex align-items-center">
{{ __('Single or combined queries') }} {{ __('Single or combined queries') }}
<icon <gl-icon
v-gl-tooltip="$options.alertQueryText.descriptionTooltip" v-gl-tooltip="$options.alertQueryText.descriptionTooltip"
name="question" name="question"
class="gl-ml-2" class="gl-ml-2"
......
<script> <script>
import { isEmpty, omit, throttle } from 'lodash'; import { isEmpty, omit, throttle } from 'lodash';
import { GlLink, GlTooltip, GlResizeObserverDirective } from '@gitlab/ui'; import { GlLink, GlTooltip, GlResizeObserverDirective, GlIcon } from '@gitlab/ui';
import { GlAreaChart, GlLineChart, GlChartSeriesLabel } from '@gitlab/ui/dist/charts'; import { GlAreaChart, GlLineChart, GlChartSeriesLabel } from '@gitlab/ui/dist/charts';
import { s__ } from '~/locale'; import { s__ } from '~/locale';
import { getSvgIconPathContent } from '~/lib/utils/icon_utils'; import { getSvgIconPathContent } from '~/lib/utils/icon_utils';
import Icon from '~/vue_shared/components/icon.vue';
import { panelTypes, chartHeight, lineTypes, lineWidths, legendLayoutTypes } from '../../constants'; import { panelTypes, chartHeight, lineTypes, lineWidths, legendLayoutTypes } from '../../constants';
import { getYAxisOptions, getTimeAxisOptions, getChartGrid, getTooltipFormatter } from './options'; import { getYAxisOptions, getTimeAxisOptions, getChartGrid, getTooltipFormatter } from './options';
import { annotationsYAxis, generateAnnotationsSeries } from './annotations'; import { annotationsYAxis, generateAnnotationsSeries } from './annotations';
...@@ -27,7 +26,7 @@ export default { ...@@ -27,7 +26,7 @@ export default {
GlTooltip, GlTooltip,
GlChartSeriesLabel, GlChartSeriesLabel,
GlLink, GlLink,
Icon, GlIcon,
}, },
directives: { directives: {
GlResizeObserverDirective, GlResizeObserverDirective,
...@@ -407,7 +406,7 @@ export default { ...@@ -407,7 +406,7 @@ export default {
{{ __('Deployed') }} {{ __('Deployed') }}
</template> </template>
<div slot="tooltipContent" class="d-flex align-items-center"> <div slot="tooltipContent" class="d-flex align-items-center">
<icon name="commit" class="mr-2" /> <gl-icon name="commit" class="mr-2" />
<gl-link :href="tooltip.commitUrl">{{ tooltip.sha }}</gl-link> <gl-link :href="tooltip.commitUrl">{{ tooltip.sha }}</gl-link>
</div> </div>
</template> </template>
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
import { mapActions, mapState, mapGetters } from 'vuex'; import { mapActions, mapState, mapGetters } from 'vuex';
import VueDraggable from 'vuedraggable'; import VueDraggable from 'vuedraggable';
import Mousetrap from 'mousetrap'; import Mousetrap from 'mousetrap';
import { GlButton, GlModalDirective, GlTooltipDirective } from '@gitlab/ui'; import { GlButton, GlModalDirective, GlTooltipDirective, GlIcon } from '@gitlab/ui';
import DashboardHeader from './dashboard_header.vue'; import DashboardHeader from './dashboard_header.vue';
import DashboardPanel from './dashboard_panel.vue'; import DashboardPanel from './dashboard_panel.vue';
import { s__ } from '~/locale'; import { s__ } from '~/locale';
...@@ -10,7 +10,6 @@ import { deprecatedCreateFlash as createFlash } from '~/flash'; ...@@ -10,7 +10,6 @@ import { deprecatedCreateFlash as createFlash } from '~/flash';
import { ESC_KEY } from '~/lib/utils/keys'; import { ESC_KEY } from '~/lib/utils/keys';
import { mergeUrlParams, updateHistory } from '~/lib/utils/url_utility'; import { mergeUrlParams, updateHistory } from '~/lib/utils/url_utility';
import invalidUrl from '~/lib/utils/invalid_url'; import invalidUrl from '~/lib/utils/invalid_url';
import Icon from '~/vue_shared/components/icon.vue';
import GraphGroup from './graph_group.vue'; import GraphGroup from './graph_group.vue';
import EmptyState from './empty_state.vue'; import EmptyState from './empty_state.vue';
...@@ -33,7 +32,7 @@ export default { ...@@ -33,7 +32,7 @@ export default {
VueDraggable, VueDraggable,
DashboardHeader, DashboardHeader,
DashboardPanel, DashboardPanel,
Icon, GlIcon,
GlButton, GlButton,
GraphGroup, GraphGroup,
EmptyState, EmptyState,
...@@ -473,7 +472,7 @@ export default { ...@@ -473,7 +472,7 @@ export default {
@click="removePanel(groupData.key, groupData.panels, graphIndex)" @click="removePanel(groupData.key, groupData.panels, graphIndex)"
> >
<a class="mx-2 p-2 draggable-remove-link" :aria-label="__('Remove')"> <a class="mx-2 p-2 draggable-remove-link" :aria-label="__('Remove')">
<icon name="close" /> <gl-icon name="close" />
</a> </a>
</div> </div>
......
...@@ -10,10 +10,10 @@ import { ...@@ -10,10 +10,10 @@ import {
GlSearchBoxByType, GlSearchBoxByType,
GlModalDirective, GlModalDirective,
GlTooltipDirective, GlTooltipDirective,
GlIcon,
} from '@gitlab/ui'; } from '@gitlab/ui';
import { mergeUrlParams, redirectTo } from '~/lib/utils/url_utility'; import { mergeUrlParams, redirectTo } from '~/lib/utils/url_utility';
import invalidUrl from '~/lib/utils/invalid_url'; import invalidUrl from '~/lib/utils/invalid_url';
import Icon from '~/vue_shared/components/icon.vue';
import DateTimePicker from '~/vue_shared/components/date_time_picker/date_time_picker.vue'; import DateTimePicker from '~/vue_shared/components/date_time_picker/date_time_picker.vue';
import DashboardsDropdown from './dashboards_dropdown.vue'; import DashboardsDropdown from './dashboards_dropdown.vue';
...@@ -26,7 +26,7 @@ import { timezones } from '../format_date'; ...@@ -26,7 +26,7 @@ import { timezones } from '../format_date';
export default { export default {
components: { components: {
Icon, GlIcon,
GlButton, GlButton,
GlNewDropdown, GlNewDropdown,
GlLoadingIcon, GlLoadingIcon,
...@@ -260,7 +260,7 @@ export default { ...@@ -260,7 +260,7 @@ export default {
target="_blank" target="_blank"
rel="noopener noreferrer" rel="noopener noreferrer"
> >
{{ __('View full dashboard') }} <icon name="external-link" /> {{ __('View full dashboard') }} <gl-icon name="external-link" />
</gl-button> </gl-button>
</div> </div>
......
<script> <script>
import { mapGetters, mapActions } from 'vuex'; import { mapGetters, mapActions } from 'vuex';
import { GlTooltipDirective } from '@gitlab/ui'; import { GlTooltipDirective, GlIcon } from '@gitlab/ui';
import Icon from '~/vue_shared/components/icon.vue';
import discussionNavigation from '../mixins/discussion_navigation'; import discussionNavigation from '../mixins/discussion_navigation';
export default { export default {
...@@ -9,7 +8,7 @@ export default { ...@@ -9,7 +8,7 @@ export default {
GlTooltip: GlTooltipDirective, GlTooltip: GlTooltipDirective,
}, },
components: { components: {
Icon, GlIcon,
}, },
mixins: [discussionNavigation], mixins: [discussionNavigation],
computed: { computed: {
...@@ -60,7 +59,7 @@ export default { ...@@ -60,7 +59,7 @@ export default {
:class="{ 'line-resolve-btn is-active': allResolved, 'line-resolve-text': !allResolved }" :class="{ 'line-resolve-btn is-active': allResolved, 'line-resolve-text': !allResolved }"
> >
<template v-if="allResolved"> <template v-if="allResolved">
<icon name="check-circle-filled" /> <gl-icon name="check-circle-filled" />
{{ __('All threads resolved') }} {{ __('All threads resolved') }}
</template> </template>
<template v-else> <template v-else>
...@@ -79,7 +78,7 @@ export default { ...@@ -79,7 +78,7 @@ export default {
:title="s__('Resolve all threads in new issue')" :title="s__('Resolve all threads in new issue')"
class="new-issue-for-discussion btn btn-default discussion-create-issue-btn" class="new-issue-for-discussion btn btn-default discussion-create-issue-btn"
> >
<icon name="issue-new" /> <gl-icon name="issue-new" />
</a> </a>
</div> </div>
<div v-if="isLoggedIn && !allResolved" class="btn-group btn-group-sm" role="group"> <div v-if="isLoggedIn && !allResolved" class="btn-group btn-group-sm" role="group">
...@@ -92,7 +91,7 @@ export default { ...@@ -92,7 +91,7 @@ export default {
data-track-property="click_next_unresolved_thread_top" data-track-property="click_next_unresolved_thread_top"
@click="jumpToNextDiscussion" @click="jumpToNextDiscussion"
> >
<icon name="comment-next" /> <gl-icon name="comment-next" />
</button> </button>
</div> </div>
<div class="btn-group btn-group-sm" role="group"> <div class="btn-group btn-group-sm" role="group">
...@@ -102,7 +101,7 @@ export default { ...@@ -102,7 +101,7 @@ export default {
class="btn btn-default toggle-all-discussions-btn" class="btn btn-default toggle-all-discussions-btn"
@click="handleExpandDiscussions" @click="handleExpandDiscussions"
> >
<icon :name="allExpanded ? 'angle-up' : 'angle-down'" /> <gl-icon :name="allExpanded ? 'angle-up' : 'angle-down'" />
</button> </button>
</div> </div>
</div> </div>
......
<script> <script>
import $ from 'jquery'; import $ from 'jquery';
import { mapGetters, mapActions } from 'vuex'; import { mapGetters, mapActions } from 'vuex';
import { GlIcon } from '@gitlab/ui';
import { getLocationHash, doesHashExistInUrl } from '../../lib/utils/url_utility'; import { getLocationHash, doesHashExistInUrl } from '../../lib/utils/url_utility';
import Icon from '~/vue_shared/components/icon.vue';
import { import {
DISCUSSION_FILTERS_DEFAULT_VALUE, DISCUSSION_FILTERS_DEFAULT_VALUE,
HISTORY_ONLY_FILTER_VALUE, HISTORY_ONLY_FILTER_VALUE,
...@@ -14,7 +14,7 @@ import notesEventHub from '../event_hub'; ...@@ -14,7 +14,7 @@ import notesEventHub from '../event_hub';
export default { export default {
components: { components: {
Icon, GlIcon,
}, },
props: { props: {
filters: { filters: {
...@@ -120,7 +120,7 @@ export default { ...@@ -120,7 +120,7 @@ export default {
data-toggle="dropdown" data-toggle="dropdown"
aria-expanded="false" aria-expanded="false"
> >
{{ currentFilter.title }} <icon name="chevron-down" /> {{ currentFilter.title }} <gl-icon name="chevron-down" />
</button> </button>
<div <div
ref="dropdownMenu" ref="dropdownMenu"
......
<script> <script>
import { GlButton } from '@gitlab/ui'; import { GlButton, GlIcon } from '@gitlab/ui';
import Icon from '~/vue_shared/components/icon.vue';
import { __, sprintf } from '~/locale'; import { __, sprintf } from '~/locale';
import notesEventHub from '../event_hub'; import notesEventHub from '../event_hub';
...@@ -8,7 +7,7 @@ import notesEventHub from '../event_hub'; ...@@ -8,7 +7,7 @@ import notesEventHub from '../event_hub';
export default { export default {
components: { components: {
GlButton, GlButton,
Icon, GlIcon,
}, },
computed: { computed: {
timelineContent() { timelineContent() {
...@@ -35,7 +34,7 @@ export default { ...@@ -35,7 +34,7 @@ export default {
<template> <template>
<li class="timeline-entry note note-wrapper discussion-filter-note js-discussion-filter-note"> <li class="timeline-entry note note-wrapper discussion-filter-note js-discussion-filter-note">
<div class="timeline-icon d-none d-lg-flex"> <div class="timeline-icon d-none d-lg-flex">
<icon name="comment" /> <gl-icon name="comment" />
</div> </div>
<div class="timeline-content"> <div class="timeline-content">
<div ref="timelineContent" v-html="timelineContent"></div> <div ref="timelineContent" v-html="timelineContent"></div>
......
<script> <script>
import { GlTooltipDirective } from '@gitlab/ui'; import { GlTooltipDirective, GlIcon } from '@gitlab/ui';
import icon from '~/vue_shared/components/icon.vue';
import discussionNavigation from '../mixins/discussion_navigation'; import discussionNavigation from '../mixins/discussion_navigation';
export default { export default {
name: 'JumpToNextDiscussionButton', name: 'JumpToNextDiscussionButton',
components: { components: {
icon, GlIcon,
}, },
directives: { directives: {
GlTooltip: GlTooltipDirective, GlTooltip: GlTooltipDirective,
...@@ -33,7 +32,7 @@ export default { ...@@ -33,7 +32,7 @@ export default {
data-track-property="click_next_unresolved_thread" data-track-property="click_next_unresolved_thread"
@click="jumpToNextRelativeDiscussion(fromDiscussionId)" @click="jumpToNextRelativeDiscussion(fromDiscussionId)"
> >
<icon name="comment-next" /> <gl-icon name="comment-next" />
</button> </button>
</div> </div>
</template> </template>
<script> <script>
import { GlLink } from '@gitlab/ui'; import { GlLink, GlIcon } from '@gitlab/ui';
import Icon from '~/vue_shared/components/icon.vue';
import { __, sprintf } from '~/locale'; import { __, sprintf } from '~/locale';
import Issuable from '~/vue_shared/mixins/issuable'; import Issuable from '~/vue_shared/mixins/issuable';
import issuableStateMixin from '../mixins/issuable_state'; import issuableStateMixin from '../mixins/issuable_state';
export default { export default {
components: { components: {
Icon, GlIcon,
GlLink, GlLink,
}, },
mixins: [Issuable, issuableStateMixin], mixins: [Issuable, issuableStateMixin],
...@@ -28,7 +27,7 @@ export default { ...@@ -28,7 +27,7 @@ export default {
<template> <template>
<div class="disabled-comment text-center"> <div class="disabled-comment text-center">
<span class="issuable-note-warning inline"> <span class="issuable-note-warning inline">
<icon :size="16" name="lock" class="icon" /> <gl-icon :size="16" name="lock" class="icon" />
<span v-if="isProjectArchived"> <span v-if="isProjectArchived">
{{ projectArchivedWarning }} {{ projectArchivedWarning }}
<gl-link :href="archivedProjectDocsPath" target="_blank" class="learn-more"> <gl-link :href="archivedProjectDocsPath" target="_blank" class="learn-more">
......
<script> <script>
import { mapGetters } from 'vuex'; import { mapGetters } from 'vuex';
import { GlLoadingIcon, GlTooltipDirective } from '@gitlab/ui'; import { GlLoadingIcon, GlTooltipDirective, GlIcon } from '@gitlab/ui';
import { __ } from '~/locale'; import { __ } from '~/locale';
import resolvedStatusMixin from '~/batch_comments/mixins/resolved_status'; import resolvedStatusMixin from '~/batch_comments/mixins/resolved_status';
import Icon from '~/vue_shared/components/icon.vue';
import ReplyButton from './note_actions/reply_button.vue'; import ReplyButton from './note_actions/reply_button.vue';
import eventHub from '~/sidebar/event_hub'; import eventHub from '~/sidebar/event_hub';
import Api from '~/api'; import Api from '~/api';
...@@ -12,7 +11,7 @@ import { deprecatedCreateFlash as flash } from '~/flash'; ...@@ -12,7 +11,7 @@ import { deprecatedCreateFlash as flash } from '~/flash';
export default { export default {
name: 'NoteActions', name: 'NoteActions',
components: { components: {
Icon, GlIcon,
ReplyButton, ReplyButton,
GlLoadingIcon, GlLoadingIcon,
}, },
...@@ -189,7 +188,7 @@ export default { ...@@ -189,7 +188,7 @@ export default {
@click="onResolve" @click="onResolve"
> >
<template v-if="!isResolving"> <template v-if="!isResolving">
<icon :name="isResolved ? 'check-circle-filled' : 'check-circle'" /> <gl-icon :name="isResolved ? 'check-circle-filled' : 'check-circle'" />
</template> </template>
<gl-loading-icon v-else inline /> <gl-loading-icon v-else inline />
</button> </button>
...@@ -203,9 +202,9 @@ export default { ...@@ -203,9 +202,9 @@ export default {
title="Add reaction" title="Add reaction"
data-position="right" data-position="right"
> >
<icon class="link-highlight award-control-icon-neutral" name="slight-smile" /> <gl-icon class="link-highlight award-control-icon-neutral" name="slight-smile" />
<icon class="link-highlight award-control-icon-positive" name="smiley" /> <gl-icon class="link-highlight award-control-icon-positive" name="smiley" />
<icon class="link-highlight award-control-icon-super-positive" name="smiley" /> <gl-icon class="link-highlight award-control-icon-super-positive" name="smiley" />
</a> </a>
</div> </div>
<reply-button <reply-button
...@@ -222,7 +221,7 @@ export default { ...@@ -222,7 +221,7 @@ export default {
class="note-action-button js-note-edit btn btn-transparent qa-note-edit-button" class="note-action-button js-note-edit btn btn-transparent qa-note-edit-button"
@click="onEdit" @click="onEdit"
> >
<icon name="pencil" class="link-highlight" /> <gl-icon name="pencil" class="link-highlight" />
</button> </button>
</div> </div>
<div v-if="showDeleteAction" class="note-actions-item"> <div v-if="showDeleteAction" class="note-actions-item">
...@@ -233,7 +232,7 @@ export default { ...@@ -233,7 +232,7 @@ export default {
class="note-action-button js-note-delete btn btn-transparent" class="note-action-button js-note-delete btn btn-transparent"
@click="onDelete" @click="onDelete"
> >
<icon name="remove" class="link-highlight" /> <gl-icon name="remove" class="link-highlight" />
</button> </button>
</div> </div>
<div v-else-if="shouldShowActionsDropdown" class="dropdown more-actions note-actions-item"> <div v-else-if="shouldShowActionsDropdown" class="dropdown more-actions note-actions-item">
...@@ -245,7 +244,7 @@ export default { ...@@ -245,7 +244,7 @@ export default {
data-toggle="dropdown" data-toggle="dropdown"
@click="closeTooltip" @click="closeTooltip"
> >
<icon class="icon" name="ellipsis_v" /> <gl-icon class="icon" name="ellipsis_v" />
</button> </button>
<ul class="dropdown-menu more-actions-dropdown dropdown-open-left"> <ul class="dropdown-menu more-actions-dropdown dropdown-open-left">
<li v-if="canReportAsAbuse"> <li v-if="canReportAsAbuse">
......
<script> <script>
import { GlTooltipDirective, GlDeprecatedButton } from '@gitlab/ui'; import { GlTooltipDirective, GlDeprecatedButton, GlIcon } from '@gitlab/ui';
import Icon from '~/vue_shared/components/icon.vue';
export default { export default {
name: 'ReplyButton', name: 'ReplyButton',
components: { components: {
Icon, GlIcon,
GlDeprecatedButton, GlDeprecatedButton,
}, },
directives: { directives: {
...@@ -26,7 +25,7 @@ export default { ...@@ -26,7 +25,7 @@ export default {
:title="__('Reply to comment')" :title="__('Reply to comment')"
@click="$emit('startReplying')" @click="$emit('startReplying')"
> >
<icon name="comment" class="link-highlight" /> <gl-icon name="comment" class="link-highlight" />
</gl-deprecated-button> </gl-deprecated-button>
</div> </div>
</template> </template>
<script> <script>
import { mapActions, mapGetters } from 'vuex'; import { mapActions, mapGetters } from 'vuex';
import { GlTooltipDirective } from '@gitlab/ui'; import { GlTooltipDirective, GlIcon } from '@gitlab/ui';
import diffLineNoteFormMixin from '~/notes/mixins/diff_line_note_form'; import diffLineNoteFormMixin from '~/notes/mixins/diff_line_note_form';
import { s__, __ } from '~/locale'; import { s__, __ } from '~/locale';
import { clearDraft, getDiscussionReplyKey } from '~/lib/utils/autosave'; import { clearDraft, getDiscussionReplyKey } from '~/lib/utils/autosave';
import icon from '~/vue_shared/components/icon.vue';
import TimelineEntryItem from '~/vue_shared/components/notes/timeline_entry_item.vue'; import TimelineEntryItem from '~/vue_shared/components/notes/timeline_entry_item.vue';
import DraftNote from '~/batch_comments/components/draft_note.vue'; import DraftNote from '~/batch_comments/components/draft_note.vue';
import { deprecatedCreateFlash as Flash } from '../../flash'; import { deprecatedCreateFlash as Flash } from '../../flash';
...@@ -22,7 +21,7 @@ import DiscussionActions from './discussion_actions.vue'; ...@@ -22,7 +21,7 @@ import DiscussionActions from './discussion_actions.vue';
export default { export default {
name: 'NoteableDiscussion', name: 'NoteableDiscussion',
components: { components: {
icon, GlIcon,
userAvatarLink, userAvatarLink,
diffDiscussionHeader, diffDiscussionHeader,
noteSignedOutWidget, noteSignedOutWidget,
......
<script> <script>
import { uniqBy } from 'lodash'; import { uniqBy } from 'lodash';
import Icon from '~/vue_shared/components/icon.vue'; import { GlIcon } from '@gitlab/ui';
import UserAvatarLink from '~/vue_shared/components/user_avatar/user_avatar_link.vue'; import UserAvatarLink from '~/vue_shared/components/user_avatar/user_avatar_link.vue';
import TimeAgoTooltip from '~/vue_shared/components/time_ago_tooltip.vue'; import TimeAgoTooltip from '~/vue_shared/components/time_ago_tooltip.vue';
export default { export default {
components: { components: {
Icon, GlIcon,
UserAvatarLink, UserAvatarLink,
TimeAgoTooltip, TimeAgoTooltip,
}, },
...@@ -44,7 +44,7 @@ export default { ...@@ -44,7 +44,7 @@ export default {
<template> <template>
<li :class="className" class="replies-toggle js-toggle-replies"> <li :class="className" class="replies-toggle js-toggle-replies">
<template v-if="collapsed"> <template v-if="collapsed">
<icon name="chevron-right" @click.native="toggle" /> <gl-icon name="chevron-right" @click.native="toggle" />
<div> <div>
<user-avatar-link <user-avatar-link
v-for="author in uniqueAuthors" v-for="author in uniqueAuthors"
...@@ -71,7 +71,7 @@ export default { ...@@ -71,7 +71,7 @@ export default {
class="collapse-replies-btn js-collapse-replies qa-collapse-replies" class="collapse-replies-btn js-collapse-replies qa-collapse-replies"
@click="toggle" @click="toggle"
> >
<icon name="chevron-down" /> {{ s__('Notes|Collapse replies') }} <gl-icon name="chevron-down" /> {{ s__('Notes|Collapse replies') }}
</span> </span>
</li> </li>
</template> </template>
<script> <script>
import { GlIcon } from '@gitlab/ui';
import RequestWarning from './request_warning.vue'; import RequestWarning from './request_warning.vue';
import DeprecatedModal2 from '~/vue_shared/components/deprecated_modal_2.vue'; import DeprecatedModal2 from '~/vue_shared/components/deprecated_modal_2.vue';
import Icon from '~/vue_shared/components/icon.vue';
export default { export default {
components: { components: {
RequestWarning, RequestWarning,
GlModal: DeprecatedModal2, GlModal: DeprecatedModal2,
Icon, GlIcon,
}, },
props: { props: {
currentRequest: { currentRequest: {
...@@ -104,7 +104,7 @@ export default { ...@@ -104,7 +104,7 @@ export default {
type="button" type="button"
:aria-label="__('Toggle backtrace')" :aria-label="__('Toggle backtrace')"
> >
<icon :size="12" name="ellipsis_h" /> <gl-icon :size="12" name="ellipsis_h" />
</button> </button>
</div> </div>
<pre v-if="item.backtrace" class="backtrace-row js-toggle-content mt-2">{{ <pre v-if="item.backtrace" class="backtrace-row js-toggle-content mt-2">{{
......
<script> <script>
import { GlDeprecatedButton, GlLink } from '@gitlab/ui'; import { GlDeprecatedButton, GlLink, GlIcon } from '@gitlab/ui';
import Icon from '~/vue_shared/components/icon.vue';
import PersistentUserCallout from '~/persistent_user_callout'; import PersistentUserCallout from '~/persistent_user_callout';
export default { export default {
components: { components: {
GlDeprecatedButton, GlDeprecatedButton,
GlLink, GlLink,
Icon, GlIcon,
}, },
props: { props: {
canaryDeploymentFeatureId: { canaryDeploymentFeatureId: {
...@@ -65,6 +64,8 @@ export default { ...@@ -65,6 +64,8 @@ export default {
> >
</div> </div>
<div class="ml-auto pr-2 canary-deployment-callout-close js-close"><icon name="close" /></div> <div class="ml-auto pr-2 canary-deployment-callout-close js-close">
<gl-icon name="close" />
</div>
</div> </div>
</template> </template>
import { shallowMount } from '@vue/test-utils'; import { shallowMount } from '@vue/test-utils';
import { TEST_HOST } from 'helpers/test_constants'; import { TEST_HOST } from 'helpers/test_constants';
import { GlLoadingIcon } from '@gitlab/ui'; import { GlLoadingIcon, GlIcon } from '@gitlab/ui';
import eventHub from '~/environments/event_hub'; import eventHub from '~/environments/event_hub';
import EnvironmentActions from '~/environments/components/environment_actions.vue'; import EnvironmentActions from '~/environments/components/environment_actions.vue';
import Icon from '~/vue_shared/components/icon.vue';
describe('EnvironmentActions Component', () => { describe('EnvironmentActions Component', () => {
let vm; let vm;
...@@ -17,7 +16,7 @@ describe('EnvironmentActions Component', () => { ...@@ -17,7 +16,7 @@ describe('EnvironmentActions Component', () => {
}); });
it('should render a dropdown button with 2 icons', () => { it('should render a dropdown button with 2 icons', () => {
expect(vm.find('.dropdown-new').findAll(Icon).length).toBe(2); expect(vm.find('.dropdown-new').findAll(GlIcon).length).toBe(2);
}); });
it('should render a dropdown button with aria-label description', () => { it('should render a dropdown button with aria-label description', () => {
......
import { shallowMount } from '@vue/test-utils'; import { shallowMount } from '@vue/test-utils';
import { GlIcon } from '@gitlab/ui';
import MonitoringComponent from '~/environments/components/environment_monitoring.vue'; import MonitoringComponent from '~/environments/components/environment_monitoring.vue';
import Icon from '~/vue_shared/components/icon.vue';
describe('Monitoring Component', () => { describe('Monitoring Component', () => {
let wrapper; let wrapper;
...@@ -15,7 +15,7 @@ describe('Monitoring Component', () => { ...@@ -15,7 +15,7 @@ describe('Monitoring Component', () => {
}); });
}; };
const findIcons = () => wrapper.findAll(Icon); const findIcons = () => wrapper.findAll(GlIcon);
const findIconsByName = name => findIcons().filter(icon => icon.props('name') === name); const findIconsByName = name => findIcons().filter(icon => icon.props('name') === name);
beforeEach(() => { beforeEach(() => {
......
import { shallowMount } from '@vue/test-utils'; import { shallowMount } from '@vue/test-utils';
import { GlDeprecatedButton } from '@gitlab/ui'; import { GlDeprecatedButton, GlIcon } from '@gitlab/ui';
import Icon from '~/vue_shared/components/icon.vue';
import eventHub from '~/environments/event_hub'; import eventHub from '~/environments/event_hub';
import PinComponent from '~/environments/components/environment_pin.vue'; import PinComponent from '~/environments/components/environment_pin.vue';
...@@ -32,7 +31,7 @@ describe('Pin Component', () => { ...@@ -32,7 +31,7 @@ describe('Pin Component', () => {
}); });
it('should render the component with thumbtack icon', () => { it('should render the component with thumbtack icon', () => {
expect(wrapper.find(Icon).props('name')).toBe('thumbtack'); expect(wrapper.find(GlIcon).props('name')).toBe('thumbtack');
}); });
it('should emit onPinClick when clicked', () => { it('should emit onPinClick when clicked', () => {
......
import { shallowMount } from '@vue/test-utils'; import { shallowMount } from '@vue/test-utils';
import { GlSprintf } from '@gitlab/ui'; import { GlSprintf, GlIcon } from '@gitlab/ui';
import { trimText } from 'helpers/text_helper'; import { trimText } from 'helpers/text_helper';
import StackTraceEntry from '~/error_tracking/components/stacktrace_entry.vue'; import StackTraceEntry from '~/error_tracking/components/stacktrace_entry.vue';
import ClipboardButton from '~/vue_shared/components/clipboard_button.vue'; import ClipboardButton from '~/vue_shared/components/clipboard_button.vue';
import FileIcon from '~/vue_shared/components/file_icon.vue'; import FileIcon from '~/vue_shared/components/file_icon.vue';
import Icon from '~/vue_shared/components/icon.vue';
describe('Stacktrace Entry', () => { describe('Stacktrace Entry', () => {
let wrapper; let wrapper;
...@@ -39,7 +38,7 @@ describe('Stacktrace Entry', () => { ...@@ -39,7 +38,7 @@ describe('Stacktrace Entry', () => {
mountComponent({ lines }); mountComponent({ lines });
expect(wrapper.find(StackTraceEntry).exists()).toBe(true); expect(wrapper.find(StackTraceEntry).exists()).toBe(true);
expect(wrapper.find(ClipboardButton).exists()).toBe(true); expect(wrapper.find(ClipboardButton).exists()).toBe(true);
expect(wrapper.find(Icon).exists()).toBe(true); expect(wrapper.find(GlIcon).exists()).toBe(true);
expect(wrapper.find(FileIcon).exists()).toBe(true); expect(wrapper.find(FileIcon).exists()).toBe(true);
expect(wrapper.find('table').exists()).toBe(false); expect(wrapper.find('table').exists()).toBe(false);
}); });
...@@ -57,7 +56,7 @@ describe('Stacktrace Entry', () => { ...@@ -57,7 +56,7 @@ describe('Stacktrace Entry', () => {
it('should hide collapse icon and render error fn name and error line when there is no code block', () => { it('should hide collapse icon and render error fn name and error line when there is no code block', () => {
const extraInfo = { errorLine: 34, errorFn: 'errorFn', errorColumn: 77 }; const extraInfo = { errorLine: 34, errorFn: 'errorFn', errorColumn: 77 };
mountComponent({ expanded: false, lines: [], ...extraInfo }); mountComponent({ expanded: false, lines: [], ...extraInfo });
expect(wrapper.find(Icon).exists()).toBe(false); expect(wrapper.find(GlIcon).exists()).toBe(false);
expect(trimText(findFileHeaderContent())).toContain( expect(trimText(findFileHeaderContent())).toContain(
`in ${extraInfo.errorFn} at line ${extraInfo.errorLine}:${extraInfo.errorColumn}`, `in ${extraInfo.errorFn} at line ${extraInfo.errorLine}:${extraInfo.errorColumn}`,
); );
......
...@@ -83,7 +83,7 @@ exports[`grafana integration component default state to match the default snapsh ...@@ -83,7 +83,7 @@ exports[`grafana integration component default state to match the default snapsh
More information More information
<icon-stub <gl-icon-stub
class="vertical-align-middle" class="vertical-align-middle"
name="external-link" name="external-link"
size="16" size="16"
......
import { shallowMount } from '@vue/test-utils'; import { shallowMount } from '@vue/test-utils';
import { GlTooltip, GlLink } from '@gitlab/ui'; import { GlTooltip, GlLink, GlIcon } from '@gitlab/ui';
import { TEST_HOST } from 'jest/helpers/test_constants'; import { TEST_HOST } from 'jest/helpers/test_constants';
import Icon from '~/vue_shared/components/icon.vue';
import UserAvatarImage from '~/vue_shared/components/user_avatar/user_avatar_image.vue'; import UserAvatarImage from '~/vue_shared/components/user_avatar/user_avatar_image.vue';
import Suggestion from '~/issuable_suggestions/components/item.vue'; import Suggestion from '~/issuable_suggestions/components/item.vue';
import mockData from '../mock_data'; import mockData from '../mock_data';
...@@ -48,7 +47,7 @@ describe('Issuable suggestions suggestion component', () => { ...@@ -48,7 +47,7 @@ describe('Issuable suggestions suggestion component', () => {
it('renders icon', () => { it('renders icon', () => {
createComponent(); createComponent();
const icon = vm.find(Icon); const icon = vm.find(GlIcon);
expect(icon.props('name')).toBe('issue-open-m'); expect(icon.props('name')).toBe('issue-open-m');
}); });
...@@ -71,7 +70,7 @@ describe('Issuable suggestions suggestion component', () => { ...@@ -71,7 +70,7 @@ describe('Issuable suggestions suggestion component', () => {
state: 'closed', state: 'closed',
}); });
const icon = vm.find(Icon); const icon = vm.find(GlIcon);
expect(icon.props('name')).toBe('issue-close'); expect(icon.props('name')).toBe('issue-close');
}); });
...@@ -112,7 +111,7 @@ describe('Issuable suggestions suggestion component', () => { ...@@ -112,7 +111,7 @@ describe('Issuable suggestions suggestion component', () => {
const count = vm.findAll('.suggestion-counts span').at(0); const count = vm.findAll('.suggestion-counts span').at(0);
expect(count.text()).toContain('1'); expect(count.text()).toContain('1');
expect(count.find(Icon).props('name')).toBe('thumb-up'); expect(count.find(GlIcon).props('name')).toBe('thumb-up');
}); });
it('renders notes count', () => { it('renders notes count', () => {
...@@ -121,7 +120,7 @@ describe('Issuable suggestions suggestion component', () => { ...@@ -121,7 +120,7 @@ describe('Issuable suggestions suggestion component', () => {
const count = vm.findAll('.suggestion-counts span').at(1); const count = vm.findAll('.suggestion-counts span').at(1);
expect(count.text()).toContain('2'); expect(count.text()).toContain('2');
expect(count.find(Icon).props('name')).toBe('comment'); expect(count.find(GlIcon).props('name')).toBe('comment');
}); });
}); });
...@@ -131,7 +130,7 @@ describe('Issuable suggestions suggestion component', () => { ...@@ -131,7 +130,7 @@ describe('Issuable suggestions suggestion component', () => {
confidential: true, confidential: true,
}); });
const icon = vm.find(Icon); const icon = vm.find(GlIcon);
expect(icon.props('name')).toBe('eye-slash'); expect(icon.props('name')).toBe('eye-slash');
expect(icon.attributes('title')).toBe('Confidential'); expect(icon.attributes('title')).toBe('Confidential');
......
...@@ -12,7 +12,7 @@ exports[`JumpToNextDiscussionButton matches the snapshot 1`] = ` ...@@ -12,7 +12,7 @@ exports[`JumpToNextDiscussionButton matches the snapshot 1`] = `
data-track-property="click_next_unresolved_thread" data-track-property="click_next_unresolved_thread"
title="Jump to next unresolved thread" title="Jump to next unresolved thread"
> >
<icon-stub <gl-icon-stub
name="comment-next" name="comment-next"
size="16" size="16"
/> />
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment