Commit 3db44894 authored by yaoke.yk's avatar yaoke.yk

Merge remote-tracking branch 'origin/main'

parents cda0db1d 07a22029
......@@ -9,6 +9,7 @@
"version": "0.0.1",
"dependencies": {
"axios": "^1.5.0",
"echarts": "^6.1.0",
"element-plus": "^2.14.0",
"nprogress": "^0.2.0",
"vue": "^3.4.0",
......@@ -1240,6 +1241,16 @@
"node": ">= 0.4"
}
},
"node_modules/echarts": {
"version": "6.1.0",
"resolved": "https://registry.npmmirror.com/echarts/-/echarts-6.1.0.tgz",
"integrity": "sha512-q0yaFPggC9FUdsWH4blavRWFmxdrIodbkoKNAjJudAI6CA9gNPxHtV2RcZNEepZVlk4yvBYkOkbk6HIVpIyHZA==",
"license": "Apache-2.0",
"dependencies": {
"tslib": "2.3.0",
"zrender": "6.1.0"
}
},
"node_modules/element-plus": {
"version": "2.14.0",
"resolved": "https://registry.npmmirror.com/element-plus/-/element-plus-2.14.0.tgz",
......@@ -1849,6 +1860,12 @@
"node": ">=0.10.0"
}
},
"node_modules/tslib": {
"version": "2.3.0",
"resolved": "https://registry.npmmirror.com/tslib/-/tslib-2.3.0.tgz",
"integrity": "sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg==",
"license": "0BSD"
},
"node_modules/typescript": {
"version": "5.9.3",
"resolved": "https://registry.npmmirror.com/typescript/-/typescript-5.9.3.tgz",
......@@ -2008,6 +2025,15 @@
"peerDependencies": {
"vue": "^3.0.1"
}
},
"node_modules/zrender": {
"version": "6.1.0",
"resolved": "https://registry.npmmirror.com/zrender/-/zrender-6.1.0.tgz",
"integrity": "sha512-oEGMDB6pOP2S6OwRR4PdVv610zrjnA3Bh+JnSG12fYJlBKjtNAoEb5fSUoCOOINlH96I2fU38/A2UpRKs67xYQ==",
"license": "BSD-3-Clause",
"dependencies": {
"tslib": "2.3.0"
}
}
}
}
......@@ -11,6 +11,7 @@
},
"dependencies": {
"axios": "^1.5.0",
"echarts": "^6.1.0",
"element-plus": "^2.14.0",
"nprogress": "^0.2.0",
"vue": "^3.4.0",
......
This diff is collapsed.
......@@ -7,17 +7,26 @@
<img src="@/static/imgs/logo.png" class="w-130 h-26 mb-2 cursor-pointer" alt="Logo" @click="router.push('/')">
</div>
<div class="flex gap-26">
<el-input
v-model="search"
class="responsive-input"
placeholder="搜索产品和文档"
:prefix-icon="Search"
/>
<el-input v-model="searchVal" class="responsive-input" placeholder="搜索产品和文档" :prefix-icon="Search" />
<el-popover placement="bottom" :width="180" trigger="click" :show-arrow="false">
<template #reference>
<el-button type="primary" class="nav-button">
<span class="pt-2">企业</span><el-icon class="el-icon--right" size="12">
<ArrowDownBold />
</el-icon>
</el-button>
</template>
<div class="">
<div v-for="(item, index) in poverMenus" :key="index" class=" py-6 cursor-pointer mt-4 menuhover" @click="router.push(item.path)">{{ item.name }}</div>
</div>
</el-popover>
<!-- <el-button type="primary" class="nav-button">
<span class="pt-2">企业</span><el-icon class="el-icon--right" size="12">
<ArrowDownBold />
</el-icon>
</el-button> -->
<el-button type="primary" class="nav-button">
<span class="pt-2">工具</span><el-icon class="el-icon--right" size="12">
<ArrowDownBold />
......@@ -36,7 +45,9 @@
<el-button type="primary" class="nav-button pt-2">备案</el-button>
<el-button type="primary" class="nav-button pt-2">文档</el-button>
<el-badge :value="12" class="mt-6 cursor-pointer">
<el-icon size="18"><Bell /></el-icon>
<el-icon size="18">
<Bell />
</el-icon>
</el-badge>
<el-button type="primary" link class="nav-button fw-bold color">中文</el-button>
<div class="w-30 h-30 flex-center rounded-circle headimg fs-12 mt-2"></div>
......@@ -51,7 +62,34 @@ import { ArrowDownBold, Bell, Search } from '@element-plus/icons-vue'
import { useRouter } from 'vue-router';
const router = useRouter();
const search = ref('');
const searchVal = ref('');
const poverMenus = ref([
{
name: '企业组织',
path: '',
value: 1
},
{
name: '云身份中心',
path: '',
value: 2
},
{
name: '访问控制',
path: '',
value: 3
},
{
name: '资源管理',
path: '',
value: 4
},
{
name: '操作审计(云审计)',
path: '',
value: 5
}
])
</script>
<style scoped lang="scss">
......@@ -59,17 +97,20 @@ const search = ref('');
box-shadow: 0 3px 5px #eee;
z-index: 1;
}
.responsive-input {
width: 240px;
height: 36px;
border-radius: 8px !important;
border: 1px solid #E5E7EB;
overflow: hidden;
:deep(.el-input__wrapper) {
box-shadow: none !important;
background-color: #F9FAFB;
}
}
.headimg {
background-color: #EFF6FF;
border: 1px solid #DBEAFE;
......@@ -90,6 +131,7 @@ const search = ref('');
.pt-2 {
padding-top: 2px;
}
.color {
color: #155DFC;
}
......@@ -102,4 +144,17 @@ const search = ref('');
.active {
color: #409eff;
}
.menuhover {
&:hover {
background-color: #F0F2F5;
border-radius: 4px;
}
}
</style>
<style lang="scss">
.el-popover {
&.el-popper {
padding: 4px 10px !important;
}
}
</style>
<template>
<div>
<div>
</div>
<el-upload class="upload-demo" :multiple="multiple" :show-file-list="false" :limit="limit" :accept="accept"
:style="{
'border': borderColor ? `1px dashed ${borderColor}` : 'none',
<div class="upload-demo" :style="{
'border': `1px dashed ${borderColor}`,
'background-color': `${backgroundColor}`
}" drag action="https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15">
}">
<div class="h-200 flex-center flex-col" v-if="fileList.length > 0">
<div class="flex-align-center rounded-6 px-10 py-6 file">
<el-icon size="36" color="#3461f3"><Document /></el-icon>
<div class="ml-4">
<div>文件名文件名文件名</div>
<div class="text-999 fs-12 mt-6">pdf</div>
</div>
</div>
<el-button class="mt-20" round :icon="Upload" @click="fileList=[]">重新上传</el-button>
</div>
<el-upload v-else :show-file-list="false" :accept="accept" drag
action="https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15">
<slot />
</el-upload>
</div>
</template>
<script setup lang="ts">
import { ref } from 'vue';
import { Document, Upload } from '@element-plus/icons-vue'
const emit = defineEmits(['changeFiles'])
const props = defineProps({
borderColor: {
type: String,
......@@ -24,24 +33,18 @@ const props = defineProps({
type: String,
default: '#fff'
},
multiple: {
type: Boolean,
default: false
},
showFileList: {
type: Boolean,
default: false
},
limit: {
type: Number,
default: 1
},
accept: {
type: String,
default: 'img'
}
})
const fileList = ref([])
</script>
<style scoped lang="scss">
.upload-demo {
......@@ -49,7 +52,7 @@ const props = defineProps({
transition: all 0.2s;
&:hover {
border-color: #5337C7;
border-color: #5337C7 !important;
}
:deep(.el-upload-dragger) {
......@@ -60,5 +63,9 @@ const props = defineProps({
.el-upload__text {
color: #00000063;
}
.file {
border: 1px solid #eee;
background-color: #f9f9f9;
}
}
</style>
\ No newline at end of file
<template>
<div class="upload-demo" :style="{
'border': `1px dashed ${borderColor}`,
'background-color': `${backgroundColor}`
}">
<div class="flex-center flex-col relative" style="height: 270px;" v-if="fileList.length == 0">
<div class="h-b100 overflow-hidden">
<img src="https://res.volccdn.com/obj/volc-console-fe/dramart/static/image/PIC3.22e42366.png"
class="w-b100 h-b100 object-cover" />
</div>
<div class="absolute bottom-0 left-0 top-0 w-b100 flex-center rounded-14 bg-099">
<el-button class="mt-20" round :icon="Upload" @click="fileList=[]">重新上传</el-button>
</div>
</div>
<el-upload v-else :show-file-list="false" :accept="accept" drag
action="https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15">
<slot />
</el-upload>
</div>
</template>
<script setup lang="ts">
import { ref } from 'vue';
import { Upload } from '@element-plus/icons-vue'
const emit = defineEmits(['changeFiles'])
const props = defineProps({
borderColor: {
type: String,
default: '#ddd'
},
backgroundColor: {
type: String,
default: '#fff'
},
showFileList: {
type: Boolean,
default: false
},
accept: {
type: String,
default: 'img'
}
})
const fileList = ref([])
</script>
<style scoped lang="scss">
.upload-demo {
border-radius: 16px;
transition: all 0.2s;
:deep(.el-upload) {
border: 2px dashed #ddd;
width: 100%;
height: 240px;
border-radius: 6px;
cursor: pointer;
position: relative;
overflow: hidden;
transition: all 0.3s;
&:hover {
border-color: #c5c5c5;
}
}
:deep(.el-upload-dragger) {
background-color: transparent;
border: none;
}
.el-upload__text {
color: #00000063;
}
.bg-099 {
background-color: #00000020;
}
}
</style>
\ No newline at end of file
......@@ -9,7 +9,7 @@ const Login = () => import('@/views/Login.vue');
const NotFound = () => import('@/views/NotFound.vue');
const Projectlist = () => import('@/views/project/projectlist.vue');
const Asset = () => import('@/views/project/asset.vue');
const EnterpriseProject = () => import('@/views/enterprise/project.vue');
const EnterpriseTeam = () => import('@/views/enterprise/team.vue');
const EnterpriseUsage = () => import('@/views/enterprise/usage.vue');
const EnterpriseWatermark = () => import('@/views/enterprise/watermark.vue');
const Drama = () => import('@/views/project/drama.vue');
......@@ -44,9 +44,9 @@ const routes = [
meta: { authRequired: true }
},
{
path: '/enterprise/project',
name: 'EnterpriseProject',
component: EnterpriseProject,
path: '/enterprise/team',
name: 'EnterpriseTeam',
component: EnterpriseTeam,
meta: { authRequired: true }
},
{
......
......@@ -27,19 +27,12 @@
<div class="flex-center fs-40 pt-82">翻开剧本,创作<span class="c-5337C7">精品短剧</span></div>
<section class="card mt-44 bg-fff rounded-20 p-12">
<!-- <el-upload class="upload-demo" drag action="https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15"
:on-change="handleChange" :show-file-list="false" accept=".doc,.docx,.pdf,.txt,.md">
<UploadSingleFile backgroundColor="#F8F9FC" accept=".doc,.docx,.pdf,.txt,.md" @changeFiles="changeFiles">
<img src="@/static/imgs/fileupload.png" class="w-120" alt="">
<div class="el-upload__text mt-24">
点击或拖拽剧本文件到这里,支持 doc、docx、txt、pdf、md,大小不超过 20M;也可以先跳过,下一页手动输入刷本
</div>
</el-upload> -->
<UploadFile backgroundColor="#F8F9FC" accept=".doc,.docx,.pdf,.txt,.md">
<img src="@/static/imgs/fileupload.png" class="w-120" alt="">
<div class="el-upload__text mt-24">
点击或拖拽剧本文件到这里,支持 doc、docx、txt、pdf、md,大小不超过 20M;也可以先跳过,下一页手动输入刷本
</div>
</UploadFile>
</UploadSingleFile>
<section class="mt-12">
<el-dropdown>
......@@ -164,7 +157,7 @@ import { ref } from 'vue';
import { useRouter } from 'vue-router';
import { ElMessage } from 'element-plus'
import { ArrowDownBold, SwitchFilled } from '@element-plus/icons-vue'
import UploadFile from '@/components/UploadFile.vue'
import UploadSingleFile from '@/components/UploadSingleFile.vue'
const router = useRouter();
......@@ -184,6 +177,10 @@ const handleChange = (uploadFile: any, uploadFiles: any) => {
console.log(11, uploadFile, uploadFiles)
}
const changeFiles = (file: any) => {
}
</script>
<style scoped lang="scss">
......@@ -197,26 +194,6 @@ const handleChange = (uploadFile: any, uploadFiles: any) => {
.card {
width: 800px;
.upload-demo {
background-color: #F8F9FC;
border: 1px dashed #ddd;
border-radius: 16px;
transition: all 0.2s;
&:hover {
border-color: #5337C7;
}
:deep(.el-upload-dragger) {
background-color: transparent;
border: none;
}
.el-upload__text {
color: #00000063;
}
}
}
.btnjb {
......
<template>
<div></div>
</template>
<script setup lang="ts"></script>
<style lang="scss" scoped></style>
\ No newline at end of file
<template>
<section class="px-64 flex flex-col gap-20 h-b100">
<div>
<div class="flex gap-30 fs-18 pt-30 pb-10 bg-F8F9FA">
<a v-for="(item, index) in tabs" :key="index" class="cursor-pointer aa"
:class="indexTab === index ? 'active' : ''" @click="changeTab(index)">{{ item }}</a>
</div>
<div v-if="isShowtip" class="hint flex-between-center px-20 py-10 my-20">
<div class="flex-align-center">
<el-icon color="#5252ff" size="16">
<WarningFilled />
</el-icon>
<span class="ml-4">需要授权账号登录权限且将其加入到团队中,子账号才可以登陆到短剧平台。</span>
</div>
<div class="flex gap-20">
<div>已授权 <span class="fw-bold" style="color: darkgreen;">0</span></div>
<span style="color: #ccc;">|</span>
<div>未授权 <span>2</span></div>
</div>
</div>
<div class="flex-center gap-10 mt-10">
<el-input v-model="searchValue" placeholder="搜索" :prefix-icon="Search" />
<el-select v-model="selectValue" placeholder="Select" style="width: 240px">
<el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value" />
</el-select>
<el-button type="primary" :dark="true" :icon="Plus">
<span class="ml-4">新建子账号</span>
</el-button>
</div>
</div>
<el-table :data="tableData">
<el-table-column type="selection" :selectable="selectable" width="55" />
<el-table-column prop="name" label="用户名" width="180" />
<el-table-column prop="name" label="备注" width="180" />
<el-table-column prop="name" label="隶属团队" />
<el-table-column prop="name" label="授权登录状态" />
<el-table-column prop="name" label="操作" width="180">
<template #default="scope">
<el-button link type="primary" size="small">
编辑
</el-button>
<el-button link type="danger" size="small">
删除
</el-button>
</template>
</el-table-column>
</el-table>
</section>
</template>
<script setup lang="ts">
import { ref } from 'vue'
import { Search, Plus, WarningFilled } from '@element-plus/icons-vue'
const searchValue = ref('');
const isShowtip = ref(true)
const selectValue = ref(1);
const options = [
{
value: 1,
label: '所有授权',
},
{
value: 2,
label: '已授权',
},
{
value: 3,
label: '未授权',
},
]
const tabs = ref(['子账号管理', '团队管理'])
const indexTab = ref(0)
const changeTab = ref((index: number) => {
indexTab.value = index
})
// 表格
const tableData = [
{
date: '2016-05-03',
name: 'Tom',
address: 'No. 189, Grove St, Los Angeles',
},
{
date: '2016-05-02',
name: 'Tom',
address: 'No. 189, Grove St, Los Angeles',
},
{
date: '2016-05-04',
name: 'Tom',
address: 'No. 189, Grove St, Los Angeles',
},
{
date: '2016-05-01',
name: 'Tom',
address: 'No. 189, Grove St, Los Angeles',
},
]
const selectable = (row: any, index: number) => {
return row.name !== 'Tom'
}
</script>
<style lang="scss">
:root {
--el-color-primary: #5272ff;
/* 修改主色 */
}
</style>
<style lang="scss" scoped>
.hint {
border: 1px solid #e5e7eb;
background-color: #f5f7ff;
border-radius: 8px;
}
.bg-F8F9FA {
background-color: #f8f9fa;
.aa {
text-decoration: none;
color: #888;
outline: none;
&.active {
color: #333;
}
}
}
:deep(.el-table) {
border: 1px solid #eee;
border-radius: 8px;
border-bottom: none;
th{
padding-top: 10px;
padding-bottom: 10px;
background-color: rgba(28, 106, 224, 0.027);
}
}
</style>
\ No newline at end of file
This diff is collapsed.
<template>
<div></div>
<section class="px-64 h-b100 overflow-y-auto pb-20 min-w-800">
<section class="mt-36">
<div class="fs-18">去除水印管理</div>
<div v-if="isShowtip" class="hint flex-between-center px-16 py-16 mt-18">
<div class="flex gap-10">
<el-icon color="#5252ff" size="18" class="mt-2">
<WarningFilled />
</el-icon>
<span class="ml-4 line-h22"
style="font-size: 13px;">根据法律法规要求,火山剧创平台(“平台”)提供AI生成合成服务,可能导致公众混淆或者误认的,平台应当在AI生成合成内容上添加显式标识(即“AI生成”明水印),向公众进行提示。经过您的申请,平台可以向您提供未添加显式标识的AI生成合成内容。如您后续使用网络信息内容传播服务发布AI生成合成内容,请注意您还需主动声明并使用传播平台提供的标识功能进行标识。您理解并承诺,如您未按照法律法规要求在AI生成合成内容上添加显式标识,导致公众混淆或者误认,因此所发生的后果和责任均由您自行承担。</span>
</div>
</div>
<div class="card1 rounded-16 p-16 mt-16 bg-fff">
<div class="">子账号余量</div>
<div class="flex-between-center">
<div class="text-666 fs-12 mt-10">
<div>打开去除水印开关后,您使用火山剧创平台前述账号所创作、生成的AI生成合成内容将不再添加“Al生成”明水印。</div>
<div class="mt-2">打开开关,代表您已确认充分了解上述情况并同意</div>
</div>
<el-switch v-model="switchVal" class="ml-2" @change="change"
style="--el-switch-on-color: #5272ff; --el-switch-off-color: #ddd" />
</div>
</div>
</section>
</section>
</template>
<script setup lang="ts"></script>
<style lang="scss" scoped></style>
\ No newline at end of file
<script setup lang="ts">
import { ref } from 'vue'
import { WarningFilled } from '@element-plus/icons-vue'
import { ElMessage } from 'element-plus'
const isShowtip = ref(true)
const switchVal = ref(false)
const change = () => {
ElMessage.success('设置成功')
}
</script>
<style lang="scss" scoped>
.hint {
background-color: #edf1ff;
border-radius: 12px;
}
.card1 {
border: 1px solid #eaebee;
}
</style>
\ No newline at end of file
<template>
<div></div>
<section class="px-64 flex flex-col gap-20 h-b100">
<div>
<div class="h-36 flex gap-8 rounded-8 p-2 cursor-pointer mt-36" style="width: 260px;background-color: #f1f2f9;">
<div class="flex-1 flex-center" :class="typeVal === 1 ? 'active1' : ''" @click="typeVal = 1">个人资产</div>
<div class="flex-1 flex-center" :class="typeVal === 2 ? 'active1' : ''" @click="typeVal = 2">团队资产</div>
<div class="flex-1 flex-center" :class="typeVal === 3 ? 'active1' : ''" @click="typeVal = 3">写实人像库</div>
</div>
<div class="flex gap-30 fs-18 pt-30 pb-10 bg-F8F9FA">
<a v-for="(item, index) in tabs" :key="index" class="cursor-pointer aa"
:class="indexTab === index ? 'active' : ''" :href="'#' + item" @click="changeTab(index)">{{ item }}</a>
</div>
<div class="flex-center gap-10 mt-10">
<el-input v-model="searchValue" placeholder="搜索短剧项目名称" :prefix-icon="Search" />
<el-button type="primary" color="#785BE5" :dark="true" :icon="Plus">
<span class="ml-4">上传角色</span>
</el-button>
</div>
</div>
<section class="flex-1">
<div class="min-h-400">
<div class="h-400 flex-center flex-col">
<svg t="1779342435411" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"
p-id="25486" width="64" height="64">
<path
d="M625.777778 0l341.333333 307.2v648.931556c0 37.432889-33.792 67.868444-75.320889 67.868444H132.209778C90.680889 1024 56.888889 993.564444 56.888889 956.131556V67.868444C56.888889 30.435556 90.680889 0 132.209778 0H625.777778zM476.728889 747.52h-11.491556a52.337778 52.337778 0 0 0-51.768889 52.906667c0 29.240889 23.153778 52.906667 51.768889 52.906666h11.548445a52.337778 52.337778 0 0 0 51.768889-52.906666 52.337778 52.337778 0 0 0-51.768889-52.906667zM459.377778 341.333333c-30.151111 0-57.287111 4.892444-80.497778 14.620445a147.342222 147.342222 0 0 0-55.694222 39.879111c-45.795556 53.134222-38.684444 122.026667-37.717334 129.706667a47.616 47.616 0 0 0 53.020445 41.927111 48.241778 48.241778 0 0 0 41.073778-54.215111c0-0.284444-2.844444-32.881778 14.791111-53.361778 12.401778-14.392889 34.304-21.617778 65.024-21.617778 34.702222 0 57.059556 8.817778 66.503111 26.225778a44.600889 44.600889 0 0 1-3.982222 47.616l-93.184 125.383111a49.152 49.152 0 0 0 9.102222 67.868444 46.535111 46.535111 0 0 0 66.446222-9.272889l93.184-125.383111a143.246222 143.246222 0 0 0 11.377778-153.144889C590.051556 382.805333 548.807111 341.333333 459.377778 341.333333z"
fill="#e6e6e6" p-id="25487"></path>
<path
d="M941.852444 276.48L628.280889 0v217.941333c0 32.711111 29.354667 58.481778 62.236444 58.481778l251.335111 0.056889z"
fill="#e6e6e6" fill-opacity=".5" p-id="25488"></path>
</svg>
<div class="text-888 mt-10">暂无数据</div>
</div>
</div>
</section>
</section>
</template>
<script setup lang="ts"></script>
<style lang="scss" scoped></style>
\ No newline at end of file
<script setup lang="ts">
import { ref } from 'vue'
import { Search, Plus } from '@element-plus/icons-vue'
const typeVal = ref(1)
const searchValue = ref('');
const tabs = ref(['角色', '场景', '道具'])
const indexTab = ref(0)
const changeTab = ref((index: number) => {
indexTab.value = index
})
</script>
<style lang="scss" scoped>
.active1 {
background: #fff;
border-radius: 8px;
box-shadow: 0 0 3px #ddd;
}
.bg-F8F9FA {
background-color: #f8f9fa;
.aa {
text-decoration: none;
color: #888;
outline: none;
&.active {
color: #333;
}
}
}
</style>
\ No newline at end of file
......@@ -14,10 +14,8 @@
<el-button type="primary" @click="close">确定</el-button>
</div>
</template>
<el-upload class="avatar-uploader mt-20" action="https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15"
:show-file-list="false">
<img v-if="imageUrl" :src="imageUrl" class="avatar" />
<div v-else class="flex-center flex-col line-h24 fs-12">
<UploadSingleImg @changeFiles="changeFiles">
<div class="flex-center flex-col line-h24 fs-12">
<el-icon size="20">
<Plus />
</el-icon>
......@@ -25,7 +23,7 @@
<span>仅支持 JPG, PNG 格式</span>
<span>最大文件限制在 20MB 内</span>
</div>
</el-upload>
</UploadSingleImg>
<div class="text-center mt-20 mb-40">支持 JPG、PNG 格式,单个文件不超过 20MB</div>
</el-dialog>
</template>
......@@ -34,6 +32,7 @@
import { ref } from 'vue'
import { Plus } from '@element-plus/icons-vue'
import IconType from './IconType.vue';
import UploadSingleImg from '@/components/UploadSingleImg.vue';
const props = defineProps({
title: {
......@@ -53,6 +52,10 @@ const close = () => {
visible.value = false
}
defineExpose({ open })
const changeFiles = (val: any) => {
}
</script>
<style lang="scss" scoped>
.cirir {
......
......@@ -137,7 +137,7 @@ import { ref } from 'vue';
const list = ref([1]);
const tags = ref(['悬疑', '古装', '奇幻', '爱情', '都市']);
const colors = ['#5337C7', '#12d9d2', '#DD8330', '#C9397E', '#53B06C', '#155DFC']
const loading = ref(true)
const loading = ref(false)
// 根据colors数组长度生成随机颜色
const randomColor = (index: number) => {
return colors[index];
......
......@@ -299,7 +299,7 @@
</section>
</section>
<div class="fixed bottom-30 btnfooter w-140 h-54 flex-center rounded-200 text-fff cursor-pointer"
@click="$emit('next', 2)">
@click="emit('next', 2)">
<img src="@/static/imgs/icon1.png" alt="">
<span class="ml-10">进入下一步</span>
</div>
......@@ -312,13 +312,14 @@
</template>
<script setup lang="ts">
import { ref } from 'vue';
import { CloseBold, Plus, DocumentCopy, MagicStick, FolderAdd, Download, MoreFilled, Delete } from '@element-plus/icons-vue'
import { CloseBold, Plus, MagicStick, FolderAdd, Download, MoreFilled, Delete } from '@element-plus/icons-vue'
import EditModal from './EditModal.vue'; // 新增'角色', '场景', '道具'
import BatchModal from './BatchModal.vue'; // 批量生成
import DepotModal from './DepotModal.vue'; // 从库中选择
import LocalUploadModal from './LocalUploadModal.vue'; // 本地上传
import AiEditModal from './AiEditModal.vue';
const emit = defineEmits(['next'])
const isShowtip = ref(true)
const indexTab = ref(0)
......
......@@ -7,7 +7,7 @@
<el-select v-model="selectValue" placeholder="Select" style="width: 240px">
<el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value" />
</el-select>
<el-button type="primary" color="#785BE5" :dark="true">
<el-button type="primary" color="#785BE5" :dark="true" @click="router.push('/')">
<img src="@/static/imgs/icon1.png" alt="">
<span class="ml-4">创建项目</span>
</el-button>
......@@ -25,7 +25,7 @@
<div class="flex-between-center mt-14">
<div class="text-999 fs-12">2020-10-22 13:20:30 创建</div>
<el-dropdown>
<el-button text :icon="MoreFilled" class="morebtn" />
<el-button text :icon="MoreFilled" class="morebtn" @click.stop/>
<template #dropdown>
<el-dropdown-menu>
<el-dropdown-item @click="openModal(item, '1')">编辑名称</el-dropdown-item>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment