diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2021-09-29 18:11:47 +0300 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2021-09-29 18:11:47 +0300 |
commit | cee701c9641a4dfa508f9a1d913863a52ae67167 (patch) | |
tree | 64ae2ab0eebdd56b8656ddc577c1bdee367bcbfe /app/assets | |
parent | 5f8d4d631d241c993c2cac54db3494f474b21dc1 (diff) |
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'app/assets')
7 files changed, 24 insertions, 196 deletions
diff --git a/app/assets/javascripts/packages/details/constants.js b/app/assets/javascripts/packages/details/constants.js index cd34b1ad45a..a1981797c0c 100644 --- a/app/assets/javascripts/packages/details/constants.js +++ b/app/assets/javascripts/packages/details/constants.js @@ -1,53 +1,5 @@ import { s__ } from '~/locale'; -export const TrackingLabels = { - CODE_INSTRUCTION: 'code_instruction', - CONAN_INSTALLATION: 'conan_installation', - MAVEN_INSTALLATION: 'maven_installation', - NPM_INSTALLATION: 'npm_installation', - NUGET_INSTALLATION: 'nuget_installation', - PYPI_INSTALLATION: 'pypi_installation', - COMPOSER_INSTALLATION: 'composer_installation', -}; - -export const TrackingActions = { - INSTALLATION: 'installation', - REGISTRY_SETUP: 'registry_setup', - - COPY_CONAN_COMMAND: 'copy_conan_command', - COPY_CONAN_SETUP_COMMAND: 'copy_conan_setup_command', - - COPY_MAVEN_XML: 'copy_maven_xml', - COPY_MAVEN_COMMAND: 'copy_maven_command', - COPY_MAVEN_SETUP: 'copy_maven_setup_xml', - - COPY_NPM_INSTALL_COMMAND: 'copy_npm_install_command', - COPY_NPM_SETUP_COMMAND: 'copy_npm_setup_command', - - COPY_YARN_INSTALL_COMMAND: 'copy_yarn_install_command', - COPY_YARN_SETUP_COMMAND: 'copy_yarn_setup_command', - - COPY_NUGET_INSTALL_COMMAND: 'copy_nuget_install_command', - COPY_NUGET_SETUP_COMMAND: 'copy_nuget_setup_command', - - COPY_PIP_INSTALL_COMMAND: 'copy_pip_install_command', - COPY_PYPI_SETUP_COMMAND: 'copy_pypi_setup_command', - - COPY_COMPOSER_REGISTRY_INCLUDE_COMMAND: 'copy_composer_registry_include_command', - COPY_COMPOSER_PACKAGE_INCLUDE_COMMAND: 'copy_composer_package_include_command', - - COPY_GRADLE_INSTALL_COMMAND: 'copy_gradle_install_command', - COPY_GRADLE_ADD_TO_SOURCE_COMMAND: 'copy_gradle_add_to_source_command', - - COPY_KOTLIN_INSTALL_COMMAND: 'copy_kotlin_install_command', - COPY_KOTLIN_ADD_TO_SOURCE_COMMAND: 'copy_kotlin_add_to_source_command', -}; - -export const NpmManager = { - NPM: 'npm', - YARN: 'yarn', -}; - export const FETCH_PACKAGE_VERSIONS_ERROR = s__( 'PackageRegistry|Unable to fetch package version information.', ); diff --git a/app/assets/javascripts/packages/details/store/getters.js b/app/assets/javascripts/packages/details/store/getters.js index ae273e26d6a..6a17e7aa6d6 100644 --- a/app/assets/javascripts/packages/details/store/getters.js +++ b/app/assets/javascripts/packages/details/store/getters.js @@ -1,140 +1,3 @@ -import { PackageType } from '../../shared/constants'; -import { getPackageTypeLabel } from '../../shared/utils'; -import { NpmManager } from '../constants'; - export const packagePipeline = ({ packageEntity }) => { return packageEntity?.pipeline || null; }; - -export const packageTypeDisplay = ({ packageEntity }) => { - return getPackageTypeLabel(packageEntity.package_type); -}; - -export const packageIcon = ({ packageEntity }) => { - if (packageEntity.package_type === PackageType.NUGET) { - return packageEntity.nuget_metadatum?.icon_url || null; - } - - return null; -}; - -export const conanInstallationCommand = ({ packageEntity }) => { - // eslint-disable-next-line @gitlab/require-i18n-strings - return `conan install ${packageEntity.name} --remote=gitlab`; -}; - -export const conanSetupCommand = ({ conanPath }) => - // eslint-disable-next-line @gitlab/require-i18n-strings - `conan remote add gitlab ${conanPath}`; - -export const mavenInstallationXml = ({ packageEntity = {} }) => { - const { - app_group: appGroup = '', - app_name: appName = '', - app_version: appVersion = '', - } = packageEntity.maven_metadatum; - - return `<dependency> - <groupId>${appGroup}</groupId> - <artifactId>${appName}</artifactId> - <version>${appVersion}</version> -</dependency>`; -}; - -export const mavenInstallationCommand = ({ packageEntity = {} }) => { - const { - app_group: group = '', - app_name: name = '', - app_version: version = '', - } = packageEntity.maven_metadatum; - - return `mvn dependency:get -Dartifact=${group}:${name}:${version}`; -}; - -export const mavenSetupXml = ({ mavenPath }) => `<repositories> - <repository> - <id>gitlab-maven</id> - <url>${mavenPath}</url> - </repository> -</repositories> - -<distributionManagement> - <repository> - <id>gitlab-maven</id> - <url>${mavenPath}</url> - </repository> - - <snapshotRepository> - <id>gitlab-maven</id> - <url>${mavenPath}</url> - </snapshotRepository> -</distributionManagement>`; - -export const npmInstallationCommand = ({ packageEntity }) => (type = NpmManager.NPM) => { - // eslint-disable-next-line @gitlab/require-i18n-strings - const instruction = type === NpmManager.NPM ? 'npm i' : 'yarn add'; - - return `${instruction} ${packageEntity.name}`; -}; - -export const npmSetupCommand = ({ packageEntity, npmPath }) => (type = NpmManager.NPM) => { - const scope = packageEntity.name.substring(0, packageEntity.name.indexOf('/')); - - if (type === NpmManager.NPM) { - return `echo ${scope}:registry=${npmPath}/ >> .npmrc`; - } - - return `echo \\"${scope}:registry\\" \\"${npmPath}/\\" >> .yarnrc`; -}; - -export const nugetInstallationCommand = ({ packageEntity }) => - `nuget install ${packageEntity.name} -Source "GitLab"`; - -export const nugetSetupCommand = ({ nugetPath }) => - `nuget source Add -Name "GitLab" -Source "${nugetPath}" -UserName <your_username> -Password <your_token>`; - -export const pypiPipCommand = ({ pypiPath, packageEntity }) => - // eslint-disable-next-line @gitlab/require-i18n-strings - `pip install ${packageEntity.name} --extra-index-url ${pypiPath}`; - -export const pypiSetupCommand = ({ pypiSetupPath }) => `[gitlab] -repository = ${pypiSetupPath} -username = __token__ -password = <your personal access token>`; - -export const composerRegistryInclude = ({ composerPath, composerConfigRepositoryName }) => - // eslint-disable-next-line @gitlab/require-i18n-strings - `composer config repositories.${composerConfigRepositoryName} '{"type": "composer", "url": "${composerPath}"}'`; - -export const composerPackageInclude = ({ packageEntity }) => - // eslint-disable-next-line @gitlab/require-i18n-strings - `composer req ${[packageEntity.name]}:${packageEntity.version}`; - -export const gradleGroovyInstalCommand = ({ packageEntity }) => { - const { - app_group: group = '', - app_name: name = '', - app_version: version = '', - } = packageEntity.maven_metadatum; - // eslint-disable-next-line @gitlab/require-i18n-strings - return `implementation '${group}:${name}:${version}'`; -}; - -export const gradleGroovyAddSourceCommand = ({ mavenPath }) => - // eslint-disable-next-line @gitlab/require-i18n-strings - `maven { - url '${mavenPath}' -}`; - -export const gradleKotlinInstalCommand = ({ packageEntity }) => { - const { - app_group: group = '', - app_name: name = '', - app_version: version = '', - } = packageEntity.maven_metadatum; - return `implementation("${group}:${name}:${version}")`; -}; - -export const gradleKotlinAddSourceCommand = ({ mavenPath }) => `maven("${mavenPath}")`; - -export const groupExists = ({ groupListUrl }) => groupListUrl.length > 0; diff --git a/app/assets/javascripts/packages/details/utils.js b/app/assets/javascripts/packages/details/utils.js deleted file mode 100644 index 27cc95566d3..00000000000 --- a/app/assets/javascripts/packages/details/utils.js +++ /dev/null @@ -1,10 +0,0 @@ -import { TrackingActions } from './constants'; - -export const trackInstallationTabChange = { - methods: { - trackInstallationTabChange(tabIndex) { - const action = tabIndex === 0 ? TrackingActions.INSTALLATION : TrackingActions.REGISTRY_SETUP; - this.track(action, { label: this.trackingLabel }); - }, - }, -}; diff --git a/app/assets/javascripts/repository/components/blob_viewers/index.js b/app/assets/javascripts/repository/components/blob_viewers/index.js index f6c34fbb58b..c5209d97abb 100644 --- a/app/assets/javascripts/repository/components/blob_viewers/index.js +++ b/app/assets/javascripts/repository/components/blob_viewers/index.js @@ -10,6 +10,8 @@ export const loadViewer = (type) => { return () => import(/* webpackChunkName: 'blob_download_viewer' */ './download_viewer.vue'); case 'image': return () => import(/* webpackChunkName: 'blob_image_viewer' */ './image_viewer.vue'); + case 'video': + return () => import(/* webpackChunkName: 'blob_video_viewer' */ './video_viewer.vue'); default: return null; } @@ -31,5 +33,8 @@ export const viewerProps = (type, blob) => { url: blob.rawPath, alt: blob.name, }, + video: { + url: blob.rawPath, + }, }[type]; }; diff --git a/app/assets/javascripts/repository/components/blob_viewers/video_viewer.vue b/app/assets/javascripts/repository/components/blob_viewers/video_viewer.vue new file mode 100644 index 00000000000..dec0c4802ca --- /dev/null +++ b/app/assets/javascripts/repository/components/blob_viewers/video_viewer.vue @@ -0,0 +1,15 @@ +<script> +export default { + props: { + url: { + type: String, + required: true, + }, + }, +}; +</script> +<template> + <div class="gl-text-center gl-p-7 gl-bg-gray-50"> + <video :src="url" controls data-testid="video" class="gl-max-w-full"></video> + </div> +</template> diff --git a/app/assets/javascripts/vue_merge_request_widget/components/extensions/base.vue b/app/assets/javascripts/vue_merge_request_widget/components/extensions/base.vue index 08f4837a5cf..bd531f0cc84 100644 --- a/app/assets/javascripts/vue_merge_request_widget/components/extensions/base.vue +++ b/app/assets/javascripts/vue_merge_request_widget/components/extensions/base.vue @@ -46,6 +46,8 @@ export default { return true; }, statusIconName() { + if (this.isLoadingSummary) return null; + return this.statusIcon(this.collapsedData); }, }, diff --git a/app/assets/javascripts/vue_merge_request_widget/components/extensions/status_icon.vue b/app/assets/javascripts/vue_merge_request_widget/components/extensions/status_icon.vue index ed6aa8be1d5..5b41decc190 100644 --- a/app/assets/javascripts/vue_merge_request_widget/components/extensions/status_icon.vue +++ b/app/assets/javascripts/vue_merge_request_widget/components/extensions/status_icon.vue @@ -19,7 +19,8 @@ export default { }, iconName: { type: String, - required: true, + required: false, + default: null, }, }, computed: { |