PicList/src/renderer/pages/picbeds/GitHub.vue

126 lines
3.6 KiB
Vue
Raw Normal View History

2018-04-06 10:01:30 -04:00
<template>
<div id="github-view">
<el-row :gutter="16">
<el-col :span="16" :offset="4">
<div class="view-title">
GitHub设置
</div>
2019-12-19 06:17:21 -05:00
<el-form
2018-04-06 10:01:30 -04:00
ref="github"
label-position="right"
label-width="120px"
:model="form"
size="mini">
<el-form-item
label="设定仓库名"
prop="repo"
:rules="{
required: true, message: '仓库名不能为空', trigger: 'blur'
}">
2018-05-08 21:12:27 -04:00
<el-input v-model="form.repo" @keyup.native.enter="confirm" placeholder="格式username/repo"></el-input>
2018-04-06 10:01:30 -04:00
</el-form-item>
<el-form-item
label="设定分支名"
prop="branch"
:rules="{
required: true, message: '分支名不能为空', trigger: 'blur'
}">
2021-01-13 07:28:03 -05:00
<el-input v-model="form.branch" @keyup.native.enter="confirm" placeholder="例如main"></el-input>
2018-04-06 10:01:30 -04:00
</el-form-item>
<el-form-item
label="设定Token"
prop="token"
:rules="{
required: true, message: 'Token不能为空', trigger: 'blur'
}">
<el-input v-model="form.token" @keyup.native.enter="confirm" placeholder="token" type="password"></el-input>
2018-04-06 10:01:30 -04:00
</el-form-item>
<el-form-item
label="指定存储路径"
>
<el-input v-model="form.path" @keyup.native.enter="confirm" placeholder="例如img/"></el-input>
</el-form-item>
2018-05-25 22:34:04 -04:00
<el-form-item
label="设定自定义域名"
>
<el-input v-model="form.customUrl" @keyup.native.enter="confirm" placeholder="例如https://xxxx.com"></el-input>
</el-form-item>
2018-04-06 10:01:30 -04:00
<el-form-item>
<el-button-group>
<el-button type="primary" @click="confirm" round>确定</el-button>
<el-button type="success" @click="setDefaultPicBed('github')" round :disabled="defaultPicBed === 'github'">设为默认图床</el-button>
</el-button-group>
</el-form-item>
</el-form>
</el-col>
</el-row>
</div>
</template>
<script lang="ts">
import { Component, Vue } from 'vue-property-decorator'
2018-12-18 05:58:31 -05:00
import mixin from '@/utils/ConfirmButtonMixin'
@Component({
2018-12-18 05:58:31 -05:00
name: 'github',
mixins: [mixin]
})
export default class extends Vue {
form: IGitHubConfig = {
repo: '',
token: '',
path: '',
customUrl: '',
branch: ''
}
async created () {
const config = await this.getConfig<IGitHubConfig>('picBed.github')
2018-04-06 10:01:30 -04:00
if (config) {
this.form = Object.assign({}, config)
2018-04-06 10:01:30 -04:00
}
}
confirm () {
// @ts-ignore
this.$refs.github.validate((valid) => {
if (valid) {
this.saveConfig({
'picBed.github': this.form
})
const successNotification = new Notification('设置结果', {
body: '设置成功'
})
successNotification.onclick = () => {
return true
2018-04-06 10:01:30 -04:00
}
} else {
return false
}
})
2018-04-06 10:01:30 -04:00
}
}
</script>
<style lang='stylus'>
#github-view
.el-form
2019-12-19 06:17:21 -05:00
label
2018-04-06 10:01:30 -04:00
line-height 22px
padding-bottom 0
color #eee
.el-input__inner
border-radius 19px
.el-radio-group
width 100%
label
2019-12-19 06:17:21 -05:00
width 25%
2018-04-06 10:01:30 -04:00
.el-radio-button__inner
width 100%
.el-radio-button:first-child
.el-radio-button__inner
border-left none
border-radius 14px 0 0 14px
.el-radio-button:last-child
.el-radio-button__inner
border-left none
border-radius 0 14px 14px 0
</style>