Add latest changes from gitlab-org/gitlab@master
This commit is contained in:
parent
aa10b541b6
commit
93c6764dac
|
|
@ -1,6 +1,6 @@
|
|||
<script>
|
||||
import Icon from '~/vue_shared/components/icon.vue';
|
||||
import { GlLoadingIcon, GlTooltipDirective } from '@gitlab/ui';
|
||||
import Icon from '~/vue_shared/components/icon.vue';
|
||||
|
||||
export default {
|
||||
// name: 'Badge' is a false positive: https://gitlab.com/gitlab-org/frontend/eslint-plugin-i18n/issues/25
|
||||
|
|
|
|||
|
|
@ -1,10 +1,10 @@
|
|||
<script>
|
||||
import _ from 'underscore';
|
||||
import { mapActions, mapState } from 'vuex';
|
||||
import { GlLoadingIcon, GlFormInput, GlFormGroup } from '@gitlab/ui';
|
||||
import createFlash from '~/flash';
|
||||
import { s__, sprintf } from '~/locale';
|
||||
import LoadingButton from '~/vue_shared/components/loading_button.vue';
|
||||
import { GlLoadingIcon, GlFormInput, GlFormGroup } from '@gitlab/ui';
|
||||
import createEmptyBadge from '../empty_badge';
|
||||
import Badge from './badge.vue';
|
||||
|
||||
|
|
|
|||
|
|
@ -1,8 +1,8 @@
|
|||
<script>
|
||||
import { mapActions, mapState } from 'vuex';
|
||||
import { GlLoadingIcon } from '@gitlab/ui';
|
||||
import { s__ } from '~/locale';
|
||||
import Icon from '~/vue_shared/components/icon.vue';
|
||||
import { GlLoadingIcon } from '@gitlab/ui';
|
||||
import { PROJECT_BADGE } from '../constants';
|
||||
import Badge from './badge.vue';
|
||||
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
import $ from 'jquery';
|
||||
import { parseBoolean } from '~/lib/utils/common_utils';
|
||||
import GfmAutoComplete from 'ee_else_ce/gfm_auto_complete';
|
||||
import { parseBoolean } from '~/lib/utils/common_utils';
|
||||
|
||||
export default function initGFMInput() {
|
||||
$('.js-gfm-input:not(.js-vue-textarea)').each((i, el) => {
|
||||
|
|
|
|||
|
|
@ -1,8 +1,8 @@
|
|||
/* eslint-disable class-methods-use-this */
|
||||
|
||||
import { Image as BaseImage } from 'tiptap-extensions';
|
||||
import { placeholderImage } from '~/lazy_loader';
|
||||
import { defaultMarkdownSerializer } from 'prosemirror-markdown';
|
||||
import { placeholderImage } from '~/lazy_loader';
|
||||
|
||||
export default class Image extends BaseImage {
|
||||
get schema() {
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
import $ from 'jquery';
|
||||
import Api from '~/api';
|
||||
|
||||
import $ from 'jquery';
|
||||
import Flash from '../flash';
|
||||
import FileTemplateTypeSelector from './template_selectors/type_selector';
|
||||
import BlobCiYamlSelector from './template_selectors/ci_yaml_selector';
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@ import $ from 'jquery';
|
|||
import Sortable from 'sortablejs';
|
||||
import Vue from 'vue';
|
||||
import { GlButtonGroup, GlButton, GlTooltip } from '@gitlab/ui';
|
||||
import isWipLimitsOn from 'ee_else_ce/boards/mixins/is_wip_limits';
|
||||
import { n__, s__ } from '~/locale';
|
||||
import Icon from '~/vue_shared/components/icon.vue';
|
||||
import Tooltip from '~/vue_shared/directives/tooltip';
|
||||
import isWipLimitsOn from 'ee_else_ce/boards/mixins/is_wip_limits';
|
||||
import AccessorUtilities from '../../lib/utils/accessor';
|
||||
import BoardBlankState from './board_blank_state.vue';
|
||||
import BoardDelete from './board_delete';
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
<script>
|
||||
import Cookies from 'js-cookie';
|
||||
import { __ } from '~/locale';
|
||||
import ListLabel from '~/boards/models/label';
|
||||
import Cookies from 'js-cookie';
|
||||
import boardsStore from '../stores/boards_store';
|
||||
|
||||
export default {
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
import _ from 'underscore';
|
||||
import { mapState } from 'vuex';
|
||||
import { GlTooltipDirective } from '@gitlab/ui';
|
||||
import issueCardInner from 'ee_else_ce/boards/mixins/issue_card_inner';
|
||||
import { sprintf, __ } from '~/locale';
|
||||
import Icon from '~/vue_shared/components/icon.vue';
|
||||
import TooltipOnTruncate from '~/vue_shared/components/tooltip_on_truncate.vue';
|
||||
import issueCardInner from 'ee_else_ce/boards/mixins/issue_card_inner';
|
||||
import UserAvatarLink from '../../vue_shared/components/user_avatar/user_avatar_link.vue';
|
||||
import IssueDueDate from './issue_due_date.vue';
|
||||
import IssueTimeEstimate from './issue_time_estimate.vue';
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
<script>
|
||||
/* global ListIssue */
|
||||
import { GlLoadingIcon } from '@gitlab/ui';
|
||||
import { urlParamsToObject } from '~/lib/utils/common_utils';
|
||||
import boardsStore from '~/boards/stores/boards_store';
|
||||
import ModalHeader from './header.vue';
|
||||
|
|
@ -7,7 +8,6 @@ import ModalList from './list.vue';
|
|||
import ModalFooter from './footer.vue';
|
||||
import EmptyState from './empty_state.vue';
|
||||
import ModalStore from '../../stores/modal_store';
|
||||
import { GlLoadingIcon } from '@gitlab/ui';
|
||||
|
||||
export default {
|
||||
components: {
|
||||
|
|
|
|||
|
|
@ -1,9 +1,9 @@
|
|||
<script>
|
||||
import { __ } from '~/locale';
|
||||
import $ from 'jquery';
|
||||
import _ from 'underscore';
|
||||
import Icon from '~/vue_shared/components/icon.vue';
|
||||
import { GlLoadingIcon } from '@gitlab/ui';
|
||||
import Icon from '~/vue_shared/components/icon.vue';
|
||||
import { __ } from '~/locale';
|
||||
import eventHub from '../eventhub';
|
||||
import Api from '../../api';
|
||||
import { featureAccessLevel } from '~/pages/projects/shared/permissions/constants';
|
||||
|
|
|
|||
|
|
@ -1,32 +1,11 @@
|
|||
import $ from 'jquery';
|
||||
import Vue from 'vue';
|
||||
|
||||
import Flash from '~/flash';
|
||||
import { __ } from '~/locale';
|
||||
import './models/label';
|
||||
import './models/assignee';
|
||||
|
||||
import FilteredSearchBoards from '~/boards/filtered_search_boards';
|
||||
import eventHub from '~/boards/eventhub';
|
||||
import sidebarEventHub from '~/sidebar/event_hub';
|
||||
import 'ee_else_ce/boards/models/issue';
|
||||
import 'ee_else_ce/boards/models/list';
|
||||
import '~/boards/models/milestone';
|
||||
import '~/boards/models/project';
|
||||
import store from '~/boards/stores';
|
||||
import boardsStore from '~/boards/stores/boards_store';
|
||||
import ModalStore from '~/boards/stores/modal_store';
|
||||
import modalMixin from '~/boards/mixins/modal_mixins';
|
||||
import '~/boards/filters/due_date_filters';
|
||||
import Board from 'ee_else_ce/boards/components/board';
|
||||
import BoardSidebar from 'ee_else_ce/boards/components/board_sidebar';
|
||||
import initNewListDropdown from 'ee_else_ce/boards/components/new_list_dropdown';
|
||||
import BoardAddIssuesModal from '~/boards/components/modal/index.vue';
|
||||
import {
|
||||
NavigationType,
|
||||
convertObjectPropsToCamelCase,
|
||||
parseBoolean,
|
||||
} from '~/lib/utils/common_utils';
|
||||
import boardConfigToggle from 'ee_else_ce/boards/config_toggle';
|
||||
import toggleFocusMode from 'ee_else_ce/boards/toggle_focus';
|
||||
import toggleLabels from 'ee_else_ce/boards/toggle_labels';
|
||||
|
|
@ -37,6 +16,28 @@ import {
|
|||
getMilestoneTitle,
|
||||
getBoardsModalData,
|
||||
} from 'ee_else_ce/boards/ee_functions';
|
||||
|
||||
import Flash from '~/flash';
|
||||
import { __ } from '~/locale';
|
||||
import './models/label';
|
||||
import './models/assignee';
|
||||
|
||||
import FilteredSearchBoards from '~/boards/filtered_search_boards';
|
||||
import eventHub from '~/boards/eventhub';
|
||||
import sidebarEventHub from '~/sidebar/event_hub';
|
||||
import '~/boards/models/milestone';
|
||||
import '~/boards/models/project';
|
||||
import store from '~/boards/stores';
|
||||
import boardsStore from '~/boards/stores/boards_store';
|
||||
import ModalStore from '~/boards/stores/modal_store';
|
||||
import modalMixin from '~/boards/mixins/modal_mixins';
|
||||
import '~/boards/filters/due_date_filters';
|
||||
import BoardAddIssuesModal from '~/boards/components/modal/index.vue';
|
||||
import {
|
||||
NavigationType,
|
||||
convertObjectPropsToCamelCase,
|
||||
parseBoolean,
|
||||
} from '~/lib/utils/common_utils';
|
||||
import mountMultipleBoardsSwitcher from './mount_multiple_boards_switcher';
|
||||
|
||||
let issueBoardsApp;
|
||||
|
|
|
|||
|
|
@ -1,9 +1,9 @@
|
|||
/* eslint-disable no-underscore-dangle, class-methods-use-this, consistent-return, no-shadow */
|
||||
|
||||
import ListIssue from 'ee_else_ce/boards/models/issue';
|
||||
import { __ } from '~/locale';
|
||||
import ListLabel from './label';
|
||||
import ListAssignee from './assignee';
|
||||
import ListIssue from 'ee_else_ce/boards/models/issue';
|
||||
import { urlParamsToObject } from '~/lib/utils/common_utils';
|
||||
import flash from '~/flash';
|
||||
import boardsStore from '../stores/boards_store';
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
import Visibility from 'visibilityjs';
|
||||
import Vue from 'vue';
|
||||
import AccessorUtilities from '~/lib/utils/accessor';
|
||||
import { GlToast } from '@gitlab/ui';
|
||||
import AccessorUtilities from '~/lib/utils/accessor';
|
||||
import PersistentUserCallout from '../persistent_user_callout';
|
||||
import { s__, sprintf } from '../locale';
|
||||
import Flash from '../flash';
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
<script>
|
||||
import { GlLoadingIcon } from '@gitlab/ui';
|
||||
import LoadingButton from '~/vue_shared/components/loading_button.vue';
|
||||
import ClipboardButton from '../../vue_shared/components/clipboard_button.vue';
|
||||
import { GlLoadingIcon } from '@gitlab/ui';
|
||||
import { __, s__ } from '~/locale';
|
||||
|
||||
import { APPLICATION_STATUS } from '~/clusters/constants';
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
<script>
|
||||
import { GlModal } from '@gitlab/ui';
|
||||
import { sprintf, s__ } from '~/locale';
|
||||
import trackUninstallButtonClickMixin from 'ee_else_ce/clusters/mixins/track_uninstall_button_click';
|
||||
import { sprintf, s__ } from '~/locale';
|
||||
import {
|
||||
HELM,
|
||||
INGRESS,
|
||||
|
|
|
|||
|
|
@ -1,9 +1,9 @@
|
|||
<script>
|
||||
import { __ } from '~/locale';
|
||||
import _ from 'underscore';
|
||||
import { mapActions, mapState, mapGetters } from 'vuex';
|
||||
import { GlLoadingIcon } from '@gitlab/ui';
|
||||
import { GlAreaChart } from '@gitlab/ui/dist/charts';
|
||||
import { __ } from '~/locale';
|
||||
import { getSvgIconPathContent } from '~/lib/utils/icon_utils';
|
||||
import { getDatesInRange } from '~/lib/utils/datetime_utility';
|
||||
import { xAxisLabelFormatter, dateFormatter } from '../utils';
|
||||
|
|
|
|||
|
|
@ -1,8 +1,8 @@
|
|||
<script>
|
||||
import { GlIcon } from '@gitlab/ui';
|
||||
import DropdownSearchInput from '~/vue_shared/components/dropdown/dropdown_search_input.vue';
|
||||
import DropdownHiddenInput from '~/vue_shared/components/dropdown/dropdown_hidden_input.vue';
|
||||
import DropdownButton from '~/vue_shared/components/dropdown/dropdown_button.vue';
|
||||
import { GlIcon } from '@gitlab/ui';
|
||||
|
||||
const toArray = value => [].concat(value);
|
||||
const itemsProp = (items, prop) => items.map(item => item[prop]);
|
||||
|
|
|
|||
|
|
@ -1,8 +1,8 @@
|
|||
<script>
|
||||
import { createNamespacedHelpers, mapState, mapActions } from 'vuex';
|
||||
import { sprintf, s__ } from '~/locale';
|
||||
import _ from 'underscore';
|
||||
import { GlFormInput, GlFormCheckbox } from '@gitlab/ui';
|
||||
import { sprintf, s__ } from '~/locale';
|
||||
import ClusterFormDropdown from './cluster_form_dropdown.vue';
|
||||
import { KUBERNETES_VERSIONS } from '../constants';
|
||||
import LoadingButton from '~/vue_shared/components/loading_button.vue';
|
||||
|
|
|
|||
|
|
@ -1,8 +1,8 @@
|
|||
<script>
|
||||
import { GlFormInput } from '@gitlab/ui';
|
||||
import { sprintf, s__, __ } from '~/locale';
|
||||
import _ from 'underscore';
|
||||
import { mapState, mapActions } from 'vuex';
|
||||
import { sprintf, s__, __ } from '~/locale';
|
||||
import ClipboardButton from '~/vue_shared/components/clipboard_button.vue';
|
||||
import LoadingButton from '~/vue_shared/components/loading_button.vue';
|
||||
|
||||
|
|
|
|||
|
|
@ -1,8 +1,8 @@
|
|||
import _ from 'underscore';
|
||||
import { GlLoadingIcon } from '@gitlab/ui';
|
||||
import DropdownSearchInput from '~/vue_shared/components/dropdown/dropdown_search_input.vue';
|
||||
import DropdownHiddenInput from '~/vue_shared/components/dropdown/dropdown_hidden_input.vue';
|
||||
import DropdownButton from '~/vue_shared/components/dropdown/dropdown_button.vue';
|
||||
import { GlLoadingIcon } from '@gitlab/ui';
|
||||
|
||||
import store from '../store';
|
||||
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
<script>
|
||||
import { sprintf, s__ } from '~/locale';
|
||||
import { mapState, mapGetters, mapActions } from 'vuex';
|
||||
import { sprintf, s__ } from '~/locale';
|
||||
|
||||
import gkeDropdownMixin from './gke_dropdown_mixin';
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
<script>
|
||||
import _ from 'underscore';
|
||||
import { s__, sprintf } from '~/locale';
|
||||
import { mapState, mapGetters, mapActions } from 'vuex';
|
||||
import { s__, sprintf } from '~/locale';
|
||||
|
||||
import gkeDropdownMixin from './gke_dropdown_mixin';
|
||||
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
<script>
|
||||
import { sprintf, s__ } from '~/locale';
|
||||
import { mapState, mapActions } from 'vuex';
|
||||
import { sprintf, s__ } from '~/locale';
|
||||
|
||||
import gkeDropdownMixin from './gke_dropdown_mixin';
|
||||
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
<script>
|
||||
import Icon from '~/vue_shared/components/icon.vue';
|
||||
import iconCycleAnalyticsSplash from 'icons/_icon_cycle_analytics_splash.svg';
|
||||
import Icon from '~/vue_shared/components/icon.vue';
|
||||
|
||||
export default {
|
||||
components: {
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
<script>
|
||||
import { GlLoadingIcon } from '@gitlab/ui';
|
||||
import { s__ } from '~/locale';
|
||||
import Flash from '~/flash';
|
||||
import NavigationTabs from '~/vue_shared/components/navigation_tabs.vue';
|
||||
|
|
@ -6,7 +7,6 @@ import eventHub from '../eventhub';
|
|||
import DeployKeysService from '../service';
|
||||
import DeployKeysStore from '../store';
|
||||
import KeysPanel from './keys_panel.vue';
|
||||
import { GlLoadingIcon } from '@gitlab/ui';
|
||||
|
||||
export default {
|
||||
components: {
|
||||
|
|
|
|||
|
|
@ -1,12 +1,12 @@
|
|||
<script>
|
||||
import { mapState, mapGetters, mapActions } from 'vuex';
|
||||
import glFeatureFlagsMixin from '~/vue_shared/mixins/gl_feature_flags_mixin';
|
||||
import { GlLoadingIcon } from '@gitlab/ui';
|
||||
import Mousetrap from 'mousetrap';
|
||||
import Icon from '~/vue_shared/components/icon.vue';
|
||||
import { __ } from '~/locale';
|
||||
import createFlash from '~/flash';
|
||||
import { GlLoadingIcon } from '@gitlab/ui';
|
||||
import PanelResizer from '~/vue_shared/components/panel_resizer.vue';
|
||||
import Mousetrap from 'mousetrap';
|
||||
import glFeatureFlagsMixin from '~/vue_shared/mixins/gl_feature_flags_mixin';
|
||||
import eventHub from '../../notes/event_hub';
|
||||
import CompareVersions from './compare_versions.vue';
|
||||
import DiffFile from './diff_file.vue';
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
<script>
|
||||
import { mapState, mapActions } from 'vuex';
|
||||
import createFlash from '~/flash';
|
||||
import { s__ } from '~/locale';
|
||||
import { mapState, mapActions } from 'vuex';
|
||||
import Icon from '~/vue_shared/components/icon.vue';
|
||||
import { UNFOLD_COUNT } from '../constants';
|
||||
import * as utils from '../store/utils';
|
||||
|
|
|
|||
|
|
@ -1,9 +1,9 @@
|
|||
<script>
|
||||
import { mapActions, mapGetters, mapState } from 'vuex';
|
||||
import _ from 'underscore';
|
||||
import { GlLoadingIcon } from '@gitlab/ui';
|
||||
import { __, sprintf } from '~/locale';
|
||||
import createFlash from '~/flash';
|
||||
import { GlLoadingIcon } from '@gitlab/ui';
|
||||
import eventHub from '../../notes/event_hub';
|
||||
import DiffFileHeader from './diff_file_header.vue';
|
||||
import DiffContent from './diff_content.vue';
|
||||
|
|
|
|||
|
|
@ -1,11 +1,11 @@
|
|||
<script>
|
||||
import _ from 'underscore';
|
||||
import { mapActions, mapGetters } from 'vuex';
|
||||
import { GlButton, GlTooltipDirective, GlTooltip, GlLoadingIcon } from '@gitlab/ui';
|
||||
import { polyfillSticky, stickyMonitor } from '~/lib/utils/sticky';
|
||||
import ClipboardButton from '~/vue_shared/components/clipboard_button.vue';
|
||||
import Icon from '~/vue_shared/components/icon.vue';
|
||||
import FileIcon from '~/vue_shared/components/file_icon.vue';
|
||||
import { GlButton, GlTooltipDirective, GlTooltip, GlLoadingIcon } from '@gitlab/ui';
|
||||
import { truncateSha } from '~/lib/utils/text_utility';
|
||||
import { __, s__, sprintf } from '~/locale';
|
||||
import { diffViewerModes } from '~/ide/constants';
|
||||
|
|
|
|||
|
|
@ -1,9 +1,9 @@
|
|||
<script>
|
||||
import { GlTooltipDirective } from '@gitlab/ui';
|
||||
import { n__ } from '~/locale';
|
||||
import Icon from '~/vue_shared/components/icon.vue';
|
||||
import { truncate } from '~/lib/utils/text_utility';
|
||||
import UserAvatarImage from '~/vue_shared/components/user_avatar/user_avatar_image.vue';
|
||||
import { GlTooltipDirective } from '@gitlab/ui';
|
||||
import { COUNT_OF_AVATARS_IN_GUTTER, LENGTH_OF_AVATAR_TOOLTIP } from '../constants';
|
||||
|
||||
export default {
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
<script>
|
||||
import { mapState, mapGetters, mapActions } from 'vuex';
|
||||
import { s__ } from '~/locale';
|
||||
import diffLineNoteFormMixin from 'ee_else_ce/notes/mixins/diff_line_note_form';
|
||||
import { s__ } from '~/locale';
|
||||
import noteForm from '../../notes/components/note_form.vue';
|
||||
import autosave from '../../notes/mixins/autosave';
|
||||
import userAvatarLink from '../../vue_shared/components/user_avatar/user_avatar_link.vue';
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
import Vue from 'vue';
|
||||
import axios from '~/lib/utils/axios_utils';
|
||||
import Cookies from 'js-cookie';
|
||||
import axios from '~/lib/utils/axios_utils';
|
||||
import createFlash from '~/flash';
|
||||
import { s__ } from '~/locale';
|
||||
import { handleLocationHash, historyPushState, scrollToElement } from '~/lib/utils/common_utils';
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
import { __ } from '~/locale';
|
||||
import emojiRegex from 'emoji-regex';
|
||||
import { __ } from '~/locale';
|
||||
import InputValidator from '../validators/input_validator';
|
||||
|
||||
export default class NoEmojiValidator extends InputValidator {
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
<script>
|
||||
import { GlLoadingIcon } from '@gitlab/ui';
|
||||
import TablePagination from '~/vue_shared/components/pagination/table_pagination.vue';
|
||||
import containerMixin from 'ee_else_ce/environments/mixins/container_mixin';
|
||||
import TablePagination from '~/vue_shared/components/pagination/table_pagination.vue';
|
||||
import EnvironmentTable from '../components/environments_table.vue';
|
||||
|
||||
export default {
|
||||
|
|
|
|||
|
|
@ -1,10 +1,10 @@
|
|||
<script>
|
||||
import { GlLoadingIcon } from '@gitlab/ui';
|
||||
import { __, s__, sprintf } from '~/locale';
|
||||
import { formatTime } from '~/lib/utils/datetime_utility';
|
||||
import Icon from '~/vue_shared/components/icon.vue';
|
||||
import eventHub from '../event_hub';
|
||||
import tooltip from '../../vue_shared/directives/tooltip';
|
||||
import { GlLoadingIcon } from '@gitlab/ui';
|
||||
|
||||
export default {
|
||||
directives: {
|
||||
|
|
|
|||
|
|
@ -1,13 +1,13 @@
|
|||
<script>
|
||||
/* eslint-disable @gitlab/vue-i18n/no-bare-strings */
|
||||
import { __, sprintf } from '~/locale';
|
||||
import { format } from 'timeago.js';
|
||||
import _ from 'underscore';
|
||||
import { GlTooltipDirective } from '@gitlab/ui';
|
||||
import environmentItemMixin from 'ee_else_ce/environments/mixins/environment_item_mixin';
|
||||
import UserAvatarLink from '~/vue_shared/components/user_avatar/user_avatar_link.vue';
|
||||
import Icon from '~/vue_shared/components/icon.vue';
|
||||
import TooltipOnTruncate from '~/vue_shared/components/tooltip_on_truncate.vue';
|
||||
import environmentItemMixin from 'ee_else_ce/environments/mixins/environment_item_mixin';
|
||||
import { __, sprintf } from '~/locale';
|
||||
import ActionsComponent from './environment_actions.vue';
|
||||
import ExternalUrlComponent from './environment_external_url.vue';
|
||||
import StopComponent from './environment_stop.vue';
|
||||
|
|
|
|||
|
|
@ -1,9 +1,9 @@
|
|||
<script>
|
||||
import { GlButton, GlTooltipDirective } from '@gitlab/ui';
|
||||
import { __ } from '~/locale';
|
||||
/**
|
||||
* Renders the Monitoring (Metrics) link in environments table.
|
||||
*/
|
||||
import { GlButton, GlTooltipDirective } from '@gitlab/ui';
|
||||
import Icon from '~/vue_shared/components/icon.vue';
|
||||
|
||||
export default {
|
||||
|
|
|
|||
|
|
@ -4,8 +4,8 @@
|
|||
*/
|
||||
import { GlLoadingIcon } from '@gitlab/ui';
|
||||
import _ from 'underscore';
|
||||
import { s__ } from '~/locale';
|
||||
import environmentTableMixin from 'ee_else_ce/environments/mixins/environments_table_mixin';
|
||||
import { s__ } from '~/locale';
|
||||
import EnvironmentItem from './environment_item.vue';
|
||||
|
||||
export default {
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
import { parseIntPagination, normalizeHeaders } from '~/lib/utils/common_utils';
|
||||
import { setDeployBoard } from 'ee_else_ce/environments/stores/helpers';
|
||||
import { parseIntPagination, normalizeHeaders } from '~/lib/utils/common_utils';
|
||||
|
||||
/**
|
||||
* Environments Store.
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
<script>
|
||||
import { __, sprintf } from '~/locale';
|
||||
import { GlTooltip } from '@gitlab/ui';
|
||||
import { __, sprintf } from '~/locale';
|
||||
import ClipboardButton from '~/vue_shared/components/clipboard_button.vue';
|
||||
import FileIcon from '~/vue_shared/components/file_icon.vue';
|
||||
import Icon from '~/vue_shared/components/icon.vue';
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
import _ from 'underscore';
|
||||
import recentSearchesStorageKeys from 'ee_else_ce/filtered_search/recent_searches_storage_keys';
|
||||
import { getParameterByName, getUrlParamsArray } from '~/lib/utils/common_utils';
|
||||
import IssuableFilteredSearchTokenKeys from '~/filtered_search/issuable_filtered_search_token_keys';
|
||||
import recentSearchesStorageKeys from 'ee_else_ce/filtered_search/recent_searches_storage_keys';
|
||||
import { visitUrl } from '../lib/utils/url_utility';
|
||||
import Flash from '../flash';
|
||||
import FilteredSearchContainer from './container';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import _ from 'underscore';
|
||||
import { USER_TOKEN_TYPES } from 'ee_else_ce/filtered_search/constants';
|
||||
import FilteredSearchContainer from '~/filtered_search/container';
|
||||
import FilteredSearchVisualTokens from '~/filtered_search/filtered_search_visual_tokens';
|
||||
import AjaxCache from '~/lib/utils/ajax_cache';
|
||||
|
|
@ -6,7 +7,6 @@ import DropdownUtils from '~/filtered_search/dropdown_utils';
|
|||
import Flash from '~/flash';
|
||||
import UsersCache from '~/lib/utils/users_cache';
|
||||
import { __ } from '~/locale';
|
||||
import { USER_TOKEN_TYPES } from 'ee_else_ce/filtered_search/constants';
|
||||
|
||||
export default class VisualTokenValue {
|
||||
constructor(tokenValue, tokenType) {
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
<script>
|
||||
import { mapState, mapActions, mapGetters } from 'vuex';
|
||||
import AccessorUtilities from '~/lib/utils/accessor';
|
||||
import { GlLoadingIcon } from '@gitlab/ui';
|
||||
import AccessorUtilities from '~/lib/utils/accessor';
|
||||
import eventHub from '../event_hub';
|
||||
import store from '../store/';
|
||||
import { FREQUENT_ITEMS, STORAGE_KEY } from '../constants';
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
<script>
|
||||
import { GlButton, GlFormGroup, GlFormInput, GlFormCheckbox, GlLink } from '@gitlab/ui';
|
||||
import Icon from '~/vue_shared/components/icon.vue';
|
||||
import { mapState, mapActions } from 'vuex';
|
||||
import Icon from '~/vue_shared/components/icon.vue';
|
||||
|
||||
export default {
|
||||
components: {
|
||||
|
|
|
|||
|
|
@ -2,13 +2,13 @@
|
|||
/* global Flash */
|
||||
|
||||
import $ from 'jquery';
|
||||
import { GlLoadingIcon } from '@gitlab/ui';
|
||||
import { s__, sprintf } from '~/locale';
|
||||
import DeprecatedModal from '~/vue_shared/components/deprecated_modal.vue';
|
||||
import { HIDDEN_CLASS } from '~/lib/utils/constants';
|
||||
import { getParameterByName } from '~/lib/utils/common_utils';
|
||||
import { mergeUrlParams } from '~/lib/utils/url_utility';
|
||||
|
||||
import { GlLoadingIcon } from '@gitlab/ui';
|
||||
import eventHub from '../event_hub';
|
||||
import { COMMON_STR, CONTENT_LIST_CLASS } from '../constants';
|
||||
import groupsComponent from './groups.vue';
|
||||
|
|
|
|||
|
|
@ -17,12 +17,6 @@
|
|||
display: inline-block;
|
||||
}
|
||||
|
||||
.account-btn-link,
|
||||
.profile-settings-sidebar a,
|
||||
.settings-sidebar a {
|
||||
color: $blue-600;
|
||||
}
|
||||
|
||||
.private-tokens-reset div.reset-action:not(:first-child) {
|
||||
padding-top: 15px;
|
||||
}
|
||||
|
|
@ -122,24 +116,12 @@
|
|||
float: left;
|
||||
}
|
||||
}
|
||||
|
||||
.description {
|
||||
white-space: nowrap;
|
||||
text-overflow: ellipsis;
|
||||
overflow: hidden;
|
||||
}
|
||||
}
|
||||
|
||||
.key-created-at {
|
||||
line-height: 42px;
|
||||
}
|
||||
|
||||
.profile-settings-content {
|
||||
a {
|
||||
color: $blue-600;
|
||||
}
|
||||
}
|
||||
|
||||
.provider-btn-group {
|
||||
display: inline-block;
|
||||
margin-right: 10px;
|
||||
|
|
@ -169,10 +151,6 @@
|
|||
margin-left: -3px;
|
||||
line-height: 22px;
|
||||
background-color: $gray-light;
|
||||
|
||||
&.not-active {
|
||||
color: $blue-500;
|
||||
}
|
||||
}
|
||||
|
||||
.oauth-applications {
|
||||
|
|
@ -292,10 +270,6 @@ table.u2f-registrations {
|
|||
}
|
||||
|
||||
.oauth-application-show {
|
||||
.scope-name {
|
||||
font-weight: $gl-font-weight-bold;
|
||||
}
|
||||
|
||||
.scopes-list {
|
||||
padding-left: 18px;
|
||||
}
|
||||
|
|
@ -317,52 +291,52 @@ table.u2f-registrations {
|
|||
|
||||
.landing {
|
||||
padding: 32px;
|
||||
}
|
||||
|
||||
.close {
|
||||
position: absolute;
|
||||
top: 20px;
|
||||
right: 20px;
|
||||
opacity: 1;
|
||||
.close {
|
||||
position: absolute;
|
||||
top: 20px;
|
||||
right: 20px;
|
||||
opacity: 1;
|
||||
|
||||
.dismiss-icon {
|
||||
float: right;
|
||||
cursor: pointer;
|
||||
color: $blue-300;
|
||||
}
|
||||
|
||||
&:hover {
|
||||
background-color: transparent;
|
||||
border: 0;
|
||||
|
||||
.dismiss-icon {
|
||||
float: right;
|
||||
cursor: pointer;
|
||||
color: $blue-300;
|
||||
}
|
||||
|
||||
&:hover {
|
||||
background-color: transparent;
|
||||
border: 0;
|
||||
|
||||
.dismiss-icon {
|
||||
color: $blue-400;
|
||||
}
|
||||
color: $blue-400;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.svg-container {
|
||||
margin-right: 30px;
|
||||
display: inline-block;
|
||||
.svg-container {
|
||||
margin-right: 30px;
|
||||
display: inline-block;
|
||||
|
||||
svg {
|
||||
height: 110px;
|
||||
vertical-align: top;
|
||||
}
|
||||
|
||||
&.convdev {
|
||||
margin: 0 0 0 30px;
|
||||
|
||||
svg {
|
||||
height: 110px;
|
||||
vertical-align: top;
|
||||
}
|
||||
|
||||
&.devops {
|
||||
margin: 0 0 0 30px;
|
||||
|
||||
svg {
|
||||
height: 127px;
|
||||
}
|
||||
height: 127px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.user-callout-copy {
|
||||
display: inline-block;
|
||||
vertical-align: top;
|
||||
max-width: 570px;
|
||||
}
|
||||
.user-callout-copy {
|
||||
display: inline-block;
|
||||
vertical-align: top;
|
||||
max-width: 570px;
|
||||
}
|
||||
|
||||
@include media-breakpoint-down(xs) {
|
||||
|
|
@ -372,43 +346,26 @@ table.u2f-registrations {
|
|||
display: block;
|
||||
}
|
||||
|
||||
.landing {
|
||||
.svg-container,
|
||||
.user-callout-copy {
|
||||
margin: 0 auto;
|
||||
display: block;
|
||||
.svg-container,
|
||||
.user-callout-copy {
|
||||
margin: 0 auto;
|
||||
display: block;
|
||||
|
||||
svg {
|
||||
height: 75px;
|
||||
}
|
||||
|
||||
&.convdev {
|
||||
margin: $gl-padding auto 0;
|
||||
|
||||
svg {
|
||||
height: 75px;
|
||||
}
|
||||
|
||||
&.devops {
|
||||
margin: $gl-padding auto 0;
|
||||
|
||||
svg {
|
||||
height: 120px;
|
||||
}
|
||||
height: 120px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.nav-wip {
|
||||
border: 1px solid $blue-500;
|
||||
background: $blue-50;
|
||||
padding: $gl-padding;
|
||||
margin-bottom: $gl-padding;
|
||||
|
||||
a {
|
||||
color: $blue-500;
|
||||
}
|
||||
|
||||
p:last-child {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
}
|
||||
|
||||
.email-badge {
|
||||
display: inline;
|
||||
margin-right: $gl-padding / 2;
|
||||
|
|
@ -433,10 +390,8 @@ table.u2f-registrations {
|
|||
}
|
||||
|
||||
.edit-user {
|
||||
.clear-user-status {
|
||||
svg {
|
||||
fill: $gl-text-color-secondary;
|
||||
}
|
||||
svg {
|
||||
fill: $gl-text-color-secondary;
|
||||
}
|
||||
|
||||
.form-group > label {
|
||||
|
|
@ -453,10 +408,6 @@ table.u2f-registrations {
|
|||
|
||||
.no-emoji-placeholder {
|
||||
position: relative;
|
||||
|
||||
svg {
|
||||
fill: $gl-text-color-secondary;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -31,3 +31,4 @@
|
|||
|
||||
.gl-w-64 { width: px-to-rem($grid-size * 8); }
|
||||
.gl-h-64 { height: px-to-rem($grid-size * 8); }
|
||||
.gl-bg-blue-500 { @include gl-bg-blue-500; }
|
||||
|
|
|
|||
|
|
@ -16,6 +16,6 @@
|
|||
%a.provider-btn
|
||||
= s_('Profiles|Active')
|
||||
- elsif link_allowed
|
||||
= link_to omniauth_authorize_path(:user, provider), method: :post, class: 'provider-btn not-active' do
|
||||
= link_to omniauth_authorize_path(:user, provider), method: :post, class: 'provider-btn gl-bg-blue-500' do
|
||||
= s_('Profiles|Connect')
|
||||
= render_if_exists 'profiles/accounts/group_saml_unlink_buttons', group_saml_identities: group_saml_identities
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@
|
|||
- key.emails_with_verified_status.map do |email, verified|
|
||||
= render partial: 'shared/email_with_badge', locals: { email: email, verified: verified }
|
||||
|
||||
.description
|
||||
%span.text-truncate
|
||||
%code= key.fingerprint
|
||||
- if key.subkeys.present?
|
||||
.subkeys
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@
|
|||
.key-list-item-info
|
||||
= link_to path_to_key(key, is_admin), class: "title" do
|
||||
= key.title
|
||||
.description
|
||||
%span.text-truncate
|
||||
= key.fingerprint
|
||||
.last-used-at
|
||||
last used:
|
||||
|
|
|
|||
|
|
@ -32,4 +32,4 @@
|
|||
.prepend-top-default.append-bottom-default
|
||||
= f.submit _('Save password'), class: "btn btn-success append-right-10", data: { qa_selector: 'save_password_button' }
|
||||
- unless @user.password_automatically_set?
|
||||
= link_to _('I forgot my password'), reset_profile_password_path, method: :put, class: "account-btn-link"
|
||||
= link_to _('I forgot my password'), reset_profile_password_path, method: :put
|
||||
|
|
|
|||
|
|
@ -9,5 +9,5 @@
|
|||
%ul.scopes-list.append-bottom-0
|
||||
- token.scopes.each do |scope|
|
||||
%li
|
||||
%span.scope-name= scope
|
||||
%span.bold= scope
|
||||
= "(#{t(scope, scope: [:doorkeeper, :scopes])})"
|
||||
|
|
|
|||
|
|
@ -0,0 +1,5 @@
|
|||
---
|
||||
title: Added rules configuration for Ci::Bridge
|
||||
merge_request: 19605
|
||||
author:
|
||||
type: added
|
||||
|
|
@ -10,6 +10,7 @@ class Feature
|
|||
inforef_uploadpack_cache
|
||||
get_all_lfs_pointers_go
|
||||
get_tag_messages_go
|
||||
filter_shas_with_signatures_go
|
||||
].freeze
|
||||
|
||||
DEFAULT_ON_FLAGS = Set.new([]).freeze
|
||||
|
|
|
|||
|
|
@ -173,7 +173,7 @@ module Gitlab
|
|||
@entries.delete(:type)
|
||||
|
||||
# This is something of a hack, see issue for details:
|
||||
# https://gitlab.com/gitlab-org/gitlab-foss/issues/67150
|
||||
# https://gitlab.com/gitlab-org/gitlab/issues/31685
|
||||
if !only_defined? && has_rules?
|
||||
@entries.delete(:only)
|
||||
@entries.delete(:except)
|
||||
|
|
|
|||
|
|
@ -54,6 +54,15 @@ module Gitlab
|
|||
|
||||
private
|
||||
|
||||
# We create a Gitlab::Diff::DeprecatedHighlightCache here in order to
|
||||
# expire deprecated cache entries while we make the transition. This can
|
||||
# be removed when :hset_redis_diff_caching is fully launched.
|
||||
# See https://gitlab.com/gitlab-org/gitlab/issues/38008
|
||||
#
|
||||
def deprecated_cache
|
||||
@deprecated_cache ||= Gitlab::Diff::DeprecatedHighlightCache.new(@diff_collection)
|
||||
end
|
||||
|
||||
def uncached_files
|
||||
diff_files = @diff_collection.diff_files
|
||||
|
||||
|
|
@ -85,6 +94,10 @@ module Gitlab
|
|||
redis.expire(key, EXPIRATION)
|
||||
end
|
||||
end
|
||||
|
||||
# Clean up any deprecated hash entries
|
||||
#
|
||||
deprecated_cache.clear
|
||||
end
|
||||
|
||||
def file_paths
|
||||
|
|
|
|||
|
|
@ -1,9 +1,9 @@
|
|||
import { shallowMount } from '@vue/test-utils';
|
||||
import { setTestTimeout } from 'helpers/timeout';
|
||||
import { createStore } from '~/monitoring/stores';
|
||||
import { GlLink } from '@gitlab/ui';
|
||||
import { GlAreaChart, GlLineChart, GlChartSeriesLabel } from '@gitlab/ui/dist/charts';
|
||||
import { shallowWrapperContainsSlotText } from 'helpers/vue_test_utils_helper';
|
||||
import { createStore } from '~/monitoring/stores';
|
||||
import TimeSeries from '~/monitoring/components/charts/time_series.vue';
|
||||
import * as types from '~/monitoring/stores/mutation_types';
|
||||
import {
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
import { shallowMount } from '@vue/test-utils';
|
||||
import { TEST_HOST } from 'helpers/test_constants';
|
||||
import Anomaly from '~/monitoring/components/charts/anomaly.vue';
|
||||
|
||||
import { shallowMount } from '@vue/test-utils';
|
||||
import { colorValues } from '~/monitoring/constants';
|
||||
import {
|
||||
anomalyDeploymentData,
|
||||
|
|
@ -8,7 +9,6 @@ import {
|
|||
anomalyMockGraphData,
|
||||
anomalyMockResultValues,
|
||||
} from '../../mock_data';
|
||||
import { TEST_HOST } from 'helpers/test_constants';
|
||||
import MonitorTimeSeriesChart from '~/monitoring/components/charts/time_series.vue';
|
||||
|
||||
const mockWidgets = 'mockWidgets';
|
||||
|
|
|
|||
|
|
@ -1,8 +1,8 @@
|
|||
import { createLocalVue, shallowMount } from '@vue/test-utils';
|
||||
import Vuex from 'vuex';
|
||||
import Embed from '~/monitoring/components/embed.vue';
|
||||
import PanelType from 'ee_else_ce/monitoring/components/panel_type.vue';
|
||||
import { TEST_HOST } from 'helpers/test_constants';
|
||||
import Embed from '~/monitoring/components/embed.vue';
|
||||
import { groups, initialState, metricsData, metricsWithData } from './mock_data';
|
||||
|
||||
const localVue = createLocalVue();
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
import MockAdapter from 'axios-mock-adapter';
|
||||
import Tracking from '~/tracking';
|
||||
import testAction from 'helpers/vuex_action_helper';
|
||||
import Tracking from '~/tracking';
|
||||
import axios from '~/lib/utils/axios_utils';
|
||||
import statusCodes from '~/lib/utils/http_status';
|
||||
import { backOff } from '~/lib/utils/common_utils';
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
import MRPopover from '~/mr_popover/components/mr_popover';
|
||||
import { shallowMount } from '@vue/test-utils';
|
||||
import MRPopover from '~/mr_popover/components/mr_popover';
|
||||
|
||||
describe('MR Popover', () => {
|
||||
let wrapper;
|
||||
|
|
|
|||
|
|
@ -2,12 +2,12 @@ import $ from 'jquery';
|
|||
import { mount } from '@vue/test-utils';
|
||||
import MockAdapter from 'axios-mock-adapter';
|
||||
import Autosize from 'autosize';
|
||||
import { trimText } from 'helpers/text_helper';
|
||||
import axios from '~/lib/utils/axios_utils';
|
||||
import createStore from '~/notes/stores';
|
||||
import CommentForm from '~/notes/components/comment_form.vue';
|
||||
import * as constants from '~/notes/constants';
|
||||
import { refreshUserMergeRequestCounts } from '~/commons/nav/user_merge_requests';
|
||||
import { trimText } from 'helpers/text_helper';
|
||||
import { keyboardDownEvent } from '../../issue_show/helpers';
|
||||
import {
|
||||
loggedOutnoteableData,
|
||||
|
|
|
|||
|
|
@ -1,4 +1,3 @@
|
|||
import createStore from '~/notes/stores';
|
||||
import { shallowMount, mount, createLocalVue } from '@vue/test-utils';
|
||||
import { discussionMock } from '../../notes/mock_data';
|
||||
import DiscussionActions from '~/notes/components/discussion_actions.vue';
|
||||
|
|
@ -6,6 +5,7 @@ import ReplyPlaceholder from '~/notes/components/discussion_reply_placeholder.vu
|
|||
import ResolveDiscussionButton from '~/notes/components/discussion_resolve_button.vue';
|
||||
import ResolveWithIssueButton from '~/notes/components/discussion_resolve_with_issue_button.vue';
|
||||
import JumpToNextDiscussionButton from '~/notes/components/discussion_jump_to_next_button.vue';
|
||||
import createStore from '~/notes/stores';
|
||||
|
||||
// NOTE: clone mock_data so that it is not accidentally mutated
|
||||
const createDiscussionMock = (props = {}) =>
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
import JumpToNextDiscussionButton from '~/notes/components/discussion_jump_to_next_button.vue';
|
||||
import { shallowMount } from '@vue/test-utils';
|
||||
import JumpToNextDiscussionButton from '~/notes/components/discussion_jump_to_next_button.vue';
|
||||
|
||||
describe('JumpToNextDiscussionButton', () => {
|
||||
let wrapper;
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
import ReplyPlaceholder from '~/notes/components/discussion_reply_placeholder.vue';
|
||||
import { shallowMount, createLocalVue } from '@vue/test-utils';
|
||||
import ReplyPlaceholder from '~/notes/components/discussion_reply_placeholder.vue';
|
||||
|
||||
const localVue = createLocalVue();
|
||||
const buttonText = 'Test Button Text';
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
import resolveDiscussionButton from '~/notes/components/discussion_resolve_button.vue';
|
||||
import { createLocalVue, shallowMount } from '@vue/test-utils';
|
||||
import resolveDiscussionButton from '~/notes/components/discussion_resolve_button.vue';
|
||||
|
||||
const buttonTitle = 'Resolve discussion';
|
||||
|
||||
|
|
|
|||
|
|
@ -3,12 +3,12 @@
|
|||
import $ from 'jquery';
|
||||
import _ from 'underscore';
|
||||
import MockAdapter from 'axios-mock-adapter';
|
||||
import axios from '~/lib/utils/axios_utils';
|
||||
import * as urlUtility from '~/lib/utils/url_utility';
|
||||
import '~/behaviors/markdown/render_gfm';
|
||||
import { createSpyObj } from 'helpers/jest_helpers';
|
||||
import { setTestTimeoutOnce } from 'helpers/timeout';
|
||||
import { TEST_HOST } from 'helpers/test_constants';
|
||||
import * as urlUtility from '~/lib/utils/url_utility';
|
||||
import axios from '~/lib/utils/axios_utils';
|
||||
|
||||
// These must be imported synchronously because they pull dependencies
|
||||
// from the DOM.
|
||||
|
|
|
|||
|
|
@ -1,11 +1,11 @@
|
|||
import { mount, shallowMount, createLocalVue } from '@vue/test-utils';
|
||||
import { GlButton, GlLink, GlFormGroup, GlFormInput } from '@gitlab/ui';
|
||||
import { TEST_HOST } from 'helpers/test_constants';
|
||||
import ExternalDashboard from '~/operation_settings/components/external_dashboard.vue';
|
||||
import store from '~/operation_settings/store';
|
||||
import axios from '~/lib/utils/axios_utils';
|
||||
import { refreshCurrentPage } from '~/lib/utils/url_utility';
|
||||
import createFlash from '~/flash';
|
||||
import { TEST_HOST } from 'helpers/test_constants';
|
||||
|
||||
jest.mock('~/lib/utils/url_utility');
|
||||
jest.mock('~/flash');
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
import $ from 'jquery';
|
||||
import { TEST_HOST } from 'helpers/test_constants';
|
||||
import axios from '~/lib/utils/axios_utils';
|
||||
import EmojiMenu from '~/pages/profiles/show/emoji_menu';
|
||||
import { TEST_HOST } from 'helpers/test_constants';
|
||||
|
||||
describe('EmojiMenu', () => {
|
||||
const dummyEmojiTag = '<dummy></tag>';
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
import AddRequest from '~/performance_bar/components/add_request.vue';
|
||||
import { shallowMount } from '@vue/test-utils';
|
||||
import AddRequest from '~/performance_bar/components/add_request.vue';
|
||||
|
||||
describe('add request form', () => {
|
||||
let wrapper;
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
import { shallowMount } from '@vue/test-utils';
|
||||
import DetailedMetric from '~/performance_bar/components/detailed_metric.vue';
|
||||
import RequestWarning from '~/performance_bar/components/request_warning.vue';
|
||||
import { shallowMount } from '@vue/test-utils';
|
||||
|
||||
describe('detailedMetric', () => {
|
||||
const createComponent = props =>
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
import { shallowMount } from '@vue/test-utils';
|
||||
import PerformanceBarApp from '~/performance_bar/components/performance_bar_app.vue';
|
||||
import PerformanceBarStore from '~/performance_bar/stores/performance_bar_store';
|
||||
import { shallowMount } from '@vue/test-utils';
|
||||
|
||||
describe('performance bar app', () => {
|
||||
const store = new PerformanceBarStore();
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
import RequestSelector from '~/performance_bar/components/request_selector.vue';
|
||||
import { shallowMount } from '@vue/test-utils';
|
||||
import RequestSelector from '~/performance_bar/components/request_selector.vue';
|
||||
|
||||
describe('request selector', () => {
|
||||
const requests = [
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
import RequestWarning from '~/performance_bar/components/request_warning.vue';
|
||||
import { shallowMount } from '@vue/test-utils';
|
||||
import RequestWarning from '~/performance_bar/components/request_warning.vue';
|
||||
|
||||
describe('request warning', () => {
|
||||
const htmlId = 'request-123';
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
import { trimText } from 'helpers/text_helper';
|
||||
import { mount } from '@vue/test-utils';
|
||||
import { trimText } from 'helpers/text_helper';
|
||||
import JobItem from '~/pipelines/components/graph/job_item.vue';
|
||||
|
||||
describe('pipeline graph job item', () => {
|
||||
|
|
|
|||
|
|
@ -1,8 +1,8 @@
|
|||
import MockAdapter from 'axios-mock-adapter';
|
||||
import { getJSONFixture } from 'helpers/fixtures';
|
||||
import axios from '~/lib/utils/axios_utils';
|
||||
import * as actions from '~/pipelines/stores/test_reports/actions';
|
||||
import * as types from '~/pipelines/stores/test_reports/mutation_types';
|
||||
import { getJSONFixture } from 'helpers/fixtures';
|
||||
import { TEST_HOST } from '../../../helpers/test_constants';
|
||||
import testAction from '../../../helpers/vuex_action_helper';
|
||||
import createFlash from '~/flash';
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
import { getJSONFixture } from 'helpers/fixtures';
|
||||
import * as getters from '~/pipelines/stores/test_reports/getters';
|
||||
import { iconForTestStatus } from '~/pipelines/stores/test_reports/utils';
|
||||
import { getJSONFixture } from 'helpers/fixtures';
|
||||
|
||||
describe('Getters TestReports Store', () => {
|
||||
let state;
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
import { getJSONFixture } from 'helpers/fixtures';
|
||||
import * as types from '~/pipelines/stores/test_reports/mutation_types';
|
||||
import mutations from '~/pipelines/stores/test_reports/mutations';
|
||||
import { getJSONFixture } from 'helpers/fixtures';
|
||||
|
||||
describe('Mutations TestReports Store', () => {
|
||||
let mockState;
|
||||
|
|
|
|||
|
|
@ -1,8 +1,8 @@
|
|||
import Vuex from 'vuex';
|
||||
import TestReports from '~/pipelines/components/test_reports/test_reports.vue';
|
||||
import { shallowMount } from '@vue/test-utils';
|
||||
import * as actions from '~/pipelines/stores/test_reports/actions';
|
||||
import { getJSONFixture } from 'helpers/fixtures';
|
||||
import TestReports from '~/pipelines/components/test_reports/test_reports.vue';
|
||||
import * as actions from '~/pipelines/stores/test_reports/actions';
|
||||
|
||||
describe('Test reports app', () => {
|
||||
let wrapper;
|
||||
|
|
|
|||
|
|
@ -1,9 +1,9 @@
|
|||
import Vuex from 'vuex';
|
||||
import { shallowMount } from '@vue/test-utils';
|
||||
import { getJSONFixture } from 'helpers/fixtures';
|
||||
import SuiteTable from '~/pipelines/components/test_reports/test_suite_table.vue';
|
||||
import * as getters from '~/pipelines/stores/test_reports/getters';
|
||||
import { TestStatus } from '~/pipelines/constants';
|
||||
import { shallowMount } from '@vue/test-utils';
|
||||
import { getJSONFixture } from 'helpers/fixtures';
|
||||
import skippedTestCases from './mock_data';
|
||||
|
||||
describe('Test reports suite table', () => {
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
import Summary from '~/pipelines/components/test_reports/test_summary.vue';
|
||||
import { mount } from '@vue/test-utils';
|
||||
import { getJSONFixture } from 'helpers/fixtures';
|
||||
import Summary from '~/pipelines/components/test_reports/test_summary.vue';
|
||||
|
||||
describe('Test reports summary', () => {
|
||||
let wrapper;
|
||||
|
|
|
|||
|
|
@ -1,8 +1,8 @@
|
|||
import Vuex from 'vuex';
|
||||
import SummaryTable from '~/pipelines/components/test_reports/test_summary_table.vue';
|
||||
import * as getters from '~/pipelines/stores/test_reports/getters';
|
||||
import { mount, createLocalVue } from '@vue/test-utils';
|
||||
import { getJSONFixture } from 'helpers/fixtures';
|
||||
import SummaryTable from '~/pipelines/components/test_reports/test_summary_table.vue';
|
||||
import * as getters from '~/pipelines/stores/test_reports/getters';
|
||||
|
||||
const localVue = createLocalVue();
|
||||
localVue.use(Vuex);
|
||||
|
|
|
|||
|
|
@ -1,9 +1,9 @@
|
|||
import MockAdapter from 'axios-mock-adapter';
|
||||
import $ from 'jquery';
|
||||
import ProjectFindFile from '~/project_find_file';
|
||||
import axios from '~/lib/utils/axios_utils';
|
||||
import { TEST_HOST } from 'helpers/test_constants';
|
||||
import sanitize from 'sanitize-html';
|
||||
import ProjectFindFile from '~/project_find_file';
|
||||
import axios from '~/lib/utils/axios_utils';
|
||||
|
||||
jest.mock('sanitize-html', () => jest.fn(val => val));
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
import Vue from 'vue';
|
||||
import { mount } from '@vue/test-utils';
|
||||
import registry from '~/registry/list/components/app.vue';
|
||||
import { TEST_HOST } from 'helpers/test_constants';
|
||||
import registry from '~/registry/list/components/app.vue';
|
||||
import { reposServerResponse, parsedReposServerResponse } from '../mock_data';
|
||||
|
||||
describe('Registry List', () => {
|
||||
|
|
|
|||
|
|
@ -1,9 +1,9 @@
|
|||
import MockAdapter from 'axios-mock-adapter';
|
||||
import { TEST_HOST } from 'helpers/test_constants';
|
||||
import testAction from 'helpers/vuex_action_helper';
|
||||
import axios from '~/lib/utils/axios_utils';
|
||||
import * as actions from '~/registry/list/stores/actions';
|
||||
import * as types from '~/registry/list/stores/mutation_types';
|
||||
import { TEST_HOST } from 'helpers/test_constants';
|
||||
import testAction from 'helpers/vuex_action_helper';
|
||||
import createFlash from '~/flash';
|
||||
|
||||
import {
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
import testAction from 'helpers/vuex_action_helper';
|
||||
import * as actions from '~/registry/settings/stores/actions';
|
||||
import * as types from '~/registry/settings/stores/mutation_types';
|
||||
import testAction from 'helpers/vuex_action_helper';
|
||||
|
||||
jest.mock('~/flash.js');
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
import axios from 'axios';
|
||||
import MockAdapter from 'axios-mock-adapter';
|
||||
import * as actions from '~/releases/detail/store/actions';
|
||||
import testAction from 'helpers/vuex_action_helper';
|
||||
import * as actions from '~/releases/detail/store/actions';
|
||||
import * as types from '~/releases/detail/store/mutation_types';
|
||||
import { release } from '../../mock_data';
|
||||
import state from '~/releases/detail/store/state';
|
||||
|
|
|
|||
|
|
@ -1,8 +1,8 @@
|
|||
import { mount } from '@vue/test-utils';
|
||||
import ReleaseBlockFooter from '~/releases/list/components/release_block_footer.vue';
|
||||
import Icon from '~/vue_shared/components/icon.vue';
|
||||
import { GlLink } from '@gitlab/ui';
|
||||
import { trimText } from 'helpers/text_helper';
|
||||
import ReleaseBlockFooter from '~/releases/list/components/release_block_footer.vue';
|
||||
import Icon from '~/vue_shared/components/icon.vue';
|
||||
import { release } from '../../mock_data';
|
||||
import { convertObjectPropsToCamelCase } from '~/lib/utils/common_utils';
|
||||
|
||||
|
|
|
|||
|
|
@ -1,8 +1,8 @@
|
|||
import { mount } from '@vue/test-utils';
|
||||
import { GlProgressBar, GlLink, GlBadge, GlButton } from '@gitlab/ui';
|
||||
import { trimText } from 'helpers/text_helper';
|
||||
import ReleaseBlockMilestoneInfo from '~/releases/list/components/release_block_milestone_info.vue';
|
||||
import { milestones } from '../../mock_data';
|
||||
import { trimText } from 'helpers/text_helper';
|
||||
import { MAX_MILESTONES_TO_DISPLAY } from '~/releases/list/constants';
|
||||
|
||||
describe('Release block milestone info', () => {
|
||||
|
|
|
|||
|
|
@ -1,9 +1,9 @@
|
|||
import { mount } from '@vue/test-utils';
|
||||
import { first } from 'underscore';
|
||||
import EvidenceBlock from '~/releases/list/components/evidence_block.vue';
|
||||
import ReleaseBlock from '~/releases/list/components/release_block.vue';
|
||||
import ReleaseBlockFooter from '~/releases/list/components/release_block_footer.vue';
|
||||
import timeagoMixin from '~/vue_shared/mixins/timeago';
|
||||
import { first } from 'underscore';
|
||||
import { release } from '../../mock_data';
|
||||
import Icon from '~/vue_shared/components/icon.vue';
|
||||
import { scrollToElement } from '~/lib/utils/common_utils';
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
import Vue from 'vue';
|
||||
import reportSection from '~/reports/components/report_section.vue';
|
||||
import mountComponent, { mountComponentWithSlots } from 'helpers/vue_mount_component_helper';
|
||||
import reportSection from '~/reports/components/report_section.vue';
|
||||
|
||||
describe('Report section', () => {
|
||||
let vm;
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
import environmentRowComponent from '~/serverless/components/environment_row.vue';
|
||||
import { createLocalVue, shallowMount } from '@vue/test-utils';
|
||||
import environmentRowComponent from '~/serverless/components/environment_row.vue';
|
||||
|
||||
import { mockServerlessFunctions, mockServerlessFunctionsDiffEnv } from '../mock_data';
|
||||
import { translate } from '~/serverless/utils';
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
import Vuex from 'vuex';
|
||||
|
||||
import functionDetailsComponent from '~/serverless/components/function_details.vue';
|
||||
import { createLocalVue, shallowMount } from '@vue/test-utils';
|
||||
import functionDetailsComponent from '~/serverless/components/function_details.vue';
|
||||
import { createStore } from '~/serverless/store';
|
||||
|
||||
describe('functionDetailsComponent', () => {
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
import functionRowComponent from '~/serverless/components/function_row.vue';
|
||||
import { shallowMount } from '@vue/test-utils';
|
||||
import functionRowComponent from '~/serverless/components/function_row.vue';
|
||||
import Timeago from '~/vue_shared/components/time_ago_tooltip.vue';
|
||||
|
||||
import { mockServerlessFunction } from '../mock_data';
|
||||
|
|
|
|||
|
|
@ -1,13 +1,13 @@
|
|||
import Vuex from 'vuex';
|
||||
import { GlLoadingIcon } from '@gitlab/ui';
|
||||
import AxiosMockAdapter from 'axios-mock-adapter';
|
||||
import { createLocalVue, shallowMount } from '@vue/test-utils';
|
||||
import { TEST_HOST } from 'helpers/test_constants';
|
||||
import axios from '~/lib/utils/axios_utils';
|
||||
import functionsComponent from '~/serverless/components/functions.vue';
|
||||
import { createLocalVue, shallowMount } from '@vue/test-utils';
|
||||
import { createStore } from '~/serverless/store';
|
||||
import EmptyState from '~/serverless/components/empty_state.vue';
|
||||
import EnvironmentRow from '~/serverless/components/environment_row.vue';
|
||||
import { TEST_HOST } from 'helpers/test_constants';
|
||||
import { mockServerlessFunctions } from '../mock_data';
|
||||
|
||||
describe('functionsComponent', () => {
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
import { GlButton } from '@gitlab/ui';
|
||||
import missingPrometheusComponent from '~/serverless/components/missing_prometheus.vue';
|
||||
import { shallowMount } from '@vue/test-utils';
|
||||
import missingPrometheusComponent from '~/serverless/components/missing_prometheus.vue';
|
||||
|
||||
const createComponent = missingData =>
|
||||
shallowMount(missingPrometheusComponent, {
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
import podBoxComponent from '~/serverless/components/pod_box.vue';
|
||||
import { shallowMount } from '@vue/test-utils';
|
||||
import podBoxComponent from '~/serverless/components/pod_box.vue';
|
||||
|
||||
const createComponent = count =>
|
||||
shallowMount(podBoxComponent, {
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
import Vue from 'vue';
|
||||
import urlComponent from '~/serverless/components/url.vue';
|
||||
import { shallowMount } from '@vue/test-utils';
|
||||
import urlComponent from '~/serverless/components/url.vue';
|
||||
import ClipboardButton from '~/vue_shared/components/clipboard_button.vue';
|
||||
|
||||
const createComponent = uri =>
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
import { shallowMount } from '@vue/test-utils';
|
||||
import { joinPaths } from '~/lib/utils/url_utility';
|
||||
import { TEST_HOST } from 'helpers/test_constants';
|
||||
import { joinPaths } from '~/lib/utils/url_utility';
|
||||
import AssigneeAvatarLink from '~/sidebar/components/assignees/assignee_avatar_link.vue';
|
||||
import AssigneeAvatar from '~/sidebar/components/assignees/assignee_avatar.vue';
|
||||
import userDataMock from '../../user_data_mock';
|
||||
|
|
|
|||
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue