mirror of
https://github.com/jumpserver/lina.git
synced 2025-09-14 06:09:10 +00:00
perf: 添加应用市场链接 (#3292)
* perf: 添加应用市场链接 * perf: 修改版本号 * perf: 修改高度 --------- Co-authored-by: ibuler <ibuler@qq.com>
This commit is contained in:
@@ -1,10 +1,10 @@
|
|||||||
<template>
|
<template>
|
||||||
<div ref="boxDom" class="tooltip">
|
<div ref="boxDom" class="tooltip">
|
||||||
<el-tooltip
|
<el-tooltip
|
||||||
:disabled="showTooltip"
|
|
||||||
:content="content"
|
:content="content"
|
||||||
:placement="placement"
|
:disabled="showTooltip"
|
||||||
:effect="effect"
|
:effect="effect"
|
||||||
|
:placement="placement"
|
||||||
>
|
>
|
||||||
<div class="multi-line-limit">{{ content }}</div>
|
<div class="multi-line-limit">{{ content }}</div>
|
||||||
</el-tooltip>
|
</el-tooltip>
|
||||||
@@ -56,12 +56,12 @@ export default {
|
|||||||
this.showTooltip = boxWidth * this.line > textWidth
|
this.showTooltip = boxWidth * this.line > textWidth
|
||||||
},
|
},
|
||||||
setUI() {
|
setUI() {
|
||||||
this.$refs.boxDom.style.setProperty('--line', `${this.line * 15}px`)
|
this.$refs.boxDom.style.setProperty('--line', `${this.line * 18}px`)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
<style scoped lang="less">
|
<style lang="less" scoped>
|
||||||
.tooltip {
|
.tooltip {
|
||||||
margin-bottom: 10px;
|
margin-bottom: 10px;
|
||||||
}
|
}
|
||||||
|
@@ -1405,6 +1405,7 @@
|
|||||||
"NoPermission": "No permission"
|
"NoPermission": "No permission"
|
||||||
},
|
},
|
||||||
"terminal": {
|
"terminal": {
|
||||||
|
"Marketplace": "Marketplace",
|
||||||
"Author": "Author",
|
"Author": "Author",
|
||||||
"Uploading": "File uploading",
|
"Uploading": "File uploading",
|
||||||
"UploadSucceed": "Upload succeed",
|
"UploadSucceed": "Upload succeed",
|
||||||
|
@@ -1400,6 +1400,7 @@
|
|||||||
"NoPermission": "権限なし"
|
"NoPermission": "権限なし"
|
||||||
},
|
},
|
||||||
"terminal": {
|
"terminal": {
|
||||||
|
"Marketplace": "マーケットプレイス",
|
||||||
"Author": "作者",
|
"Author": "作者",
|
||||||
"Uploading": "ファイルのアップロード",
|
"Uploading": "ファイルのアップロード",
|
||||||
"UploadSucceed": "アップロード成功",
|
"UploadSucceed": "アップロード成功",
|
||||||
|
@@ -1390,6 +1390,7 @@
|
|||||||
"NoPermission": "暂无权限"
|
"NoPermission": "暂无权限"
|
||||||
},
|
},
|
||||||
"terminal": {
|
"terminal": {
|
||||||
|
"Marketplace": "应用市场",
|
||||||
"Author": "作者",
|
"Author": "作者",
|
||||||
"BasePort": "监听端口",
|
"BasePort": "监听端口",
|
||||||
"DatabasePort": "数据库协议端口",
|
"DatabasePort": "数据库协议端口",
|
||||||
|
@@ -1,14 +1,14 @@
|
|||||||
<template>
|
<template>
|
||||||
<el-row :gutter="20">
|
<el-row :gutter="20">
|
||||||
<el-col :md="14" :sm="24">
|
<el-col :md="8" :sm="24">
|
||||||
|
<AutoDetailCard :fields="detailFields" :object="object" :url="url" />
|
||||||
|
</el-col>
|
||||||
|
<el-col :md="16" :sm="24">
|
||||||
<IBox title="README">
|
<IBox title="README">
|
||||||
<vue-markdown v-if="object.readme" :source="object.readme" />
|
<vue-markdown v-if="object.readme" :source="object.readme" />
|
||||||
<span v-else>{{ $tc('common.NoData') }}</span>
|
<span v-else>{{ $tc('common.NoData') }}</span>
|
||||||
</IBox>
|
</IBox>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :md="10" :sm="24">
|
|
||||||
<AutoDetailCard :fields="detailFields" :object="object" :url="url" />
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
</el-row>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
@@ -26,10 +26,20 @@ export default {
|
|||||||
onCreate: () => {
|
onCreate: () => {
|
||||||
this.uploadDialogVisible = true
|
this.uploadDialogVisible = true
|
||||||
},
|
},
|
||||||
|
createTitle: this.$t('common.Upload'),
|
||||||
searchConfig: {
|
searchConfig: {
|
||||||
getUrlQuery: false,
|
getUrlQuery: false,
|
||||||
exclude: ['version']
|
exclude: ['version']
|
||||||
},
|
},
|
||||||
|
extraActions: [
|
||||||
|
{
|
||||||
|
title: this.$t('terminal.Marketplace'),
|
||||||
|
icon: 'el-icon-shopping-bag-1',
|
||||||
|
callback: () => {
|
||||||
|
window.open('https://apps.fit2cloud.com/jumpserver')
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
detailRoute: 'AppletDetail',
|
detailRoute: 'AppletDetail',
|
||||||
hasExport: false,
|
hasExport: false,
|
||||||
hasImport: false,
|
hasImport: false,
|
||||||
|
@@ -20,10 +20,15 @@
|
|||||||
<img :src="d.icon" class="image">
|
<img :src="d.icon" class="image">
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="16" style="text-align: left; padding: 5px 0">
|
<el-col :span="16" style="text-align: left; padding: 5px 0">
|
||||||
<div class="one-line"><b>{{ d.display_name }}</b></div>
|
<div class="one-line">
|
||||||
|
<b>{{ d.display_name }}</b>
|
||||||
|
<el-tag size="mini" style="margin-left: 5px">{{ d.version }}</el-tag>
|
||||||
|
</div>
|
||||||
<el-divider class="my-divider" />
|
<el-divider class="my-divider" />
|
||||||
<Tooltip :content="d.comment" class="comment" />
|
<Tooltip :content="d.comment" class="comment" />
|
||||||
<el-tag v-for="tag of d.tags" :key="tag" size="mini"> {{ tag }}</el-tag>
|
<el-tag v-for="tag of d.tags" :key="tag" size="mini">
|
||||||
|
{{ capitalize(tag) }}
|
||||||
|
</el-tag>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
</el-card>
|
</el-card>
|
||||||
@@ -87,11 +92,13 @@ export default {
|
|||||||
return this.tableConfig.url || ''
|
return this.tableConfig.url || ''
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
watch: {},
|
|
||||||
mounted() {
|
mounted() {
|
||||||
this.getList()
|
this.getList()
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
capitalize(str) {
|
||||||
|
return str.charAt(0).toUpperCase() + str.slice(1)
|
||||||
|
},
|
||||||
getIcon(status) {
|
getIcon(status) {
|
||||||
let iconClass = 'fa-check-circle'
|
let iconClass = 'fa-check-circle'
|
||||||
if (status === false) {
|
if (status === false) {
|
||||||
|
Reference in New Issue
Block a user