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,6 +291,7 @@ table.u2f-registrations { | |||
| 
 | ||||
|   .landing { | ||||
|     padding: 32px; | ||||
|   } | ||||
| 
 | ||||
|   .close { | ||||
|     position: absolute; | ||||
|  | @ -349,7 +324,7 @@ table.u2f-registrations { | |||
|       vertical-align: top; | ||||
|     } | ||||
| 
 | ||||
|       &.devops { | ||||
|     &.convdev { | ||||
|       margin: 0 0 0 30px; | ||||
| 
 | ||||
|       svg { | ||||
|  | @ -363,7 +338,6 @@ table.u2f-registrations { | |||
|     vertical-align: top; | ||||
|     max-width: 570px; | ||||
|   } | ||||
|   } | ||||
| 
 | ||||
|   @include media-breakpoint-down(xs) { | ||||
|     text-align: center; | ||||
|  | @ -372,7 +346,6 @@ table.u2f-registrations { | |||
|       display: block; | ||||
|     } | ||||
| 
 | ||||
|     .landing { | ||||
|     .svg-container, | ||||
|     .user-callout-copy { | ||||
|       margin: 0 auto; | ||||
|  | @ -382,7 +355,7 @@ table.u2f-registrations { | |||
|         height: 75px; | ||||
|       } | ||||
| 
 | ||||
|         &.devops { | ||||
|       &.convdev { | ||||
|         margin: $gl-padding auto 0; | ||||
| 
 | ||||
|         svg { | ||||
|  | @ -392,22 +365,6 @@ table.u2f-registrations { | |||
|     } | ||||
|   } | ||||
| } | ||||
| } | ||||
| 
 | ||||
| .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; | ||||
|  | @ -433,11 +390,9 @@ table.u2f-registrations { | |||
| } | ||||
| 
 | ||||
| .edit-user { | ||||
|   .clear-user-status { | ||||
|   svg { | ||||
|     fill: $gl-text-color-secondary; | ||||
|   } | ||||
|   } | ||||
| 
 | ||||
|   .form-group > label { | ||||
|     font-weight: $gl-font-weight-bold; | ||||
|  | @ -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