feat: 删除无用组件,组件库替换

This commit is contained in:
rd
2025-09-04 16:10:44 +08:00
parent 23d614a07f
commit 15357b6bc8
71 changed files with 509 additions and 762 deletions

View File

@ -1,5 +1,6 @@
<script lang="jsx">
import { Button, Textarea } from 'ant-design-vue';
import { Button, Input } from 'ant-design-vue';
const { TextArea } = Input;
import { Image, Spin, Affix } from '@arco-design/web-vue';
import TextOverTips from '@/components/text-over-tips';
import SvgIcon from '@/components/svg-icon/index.vue';
@ -126,7 +127,7 @@ export default {
</div>
)}
<Textarea
<TextArea
ref={textAreaRef}
autoSize
class={`max-h-220px overflow-y-auto textarea-box ${isReplay.value ? 'pt-38px' : ''}`}

View File

@ -33,9 +33,9 @@
<template #title>
<div class="flex items-center">
<span class="cts mr-4px">{{ column.title }}</span>
<a-tooltip v-if="column.tooltip" :content="column.tooltip" position="top">
<Tooltip v-if="column.tooltip" :title="column.tooltip" placement="top">
<icon-question-circle class="tooltip-icon color-#737478" size="16" />
</a-tooltip>
</Tooltip>
</div>
</template>
@ -134,7 +134,7 @@
<script setup>
import { ref } from 'vue';
import { Button } from 'ant-design-vue';
import { Button, Tooltip } from 'ant-design-vue';
import { formatTableField, exactFormatTime } from '@/utils/tools';
import { EnumManuscriptType } from '@/views/material-center/components/finished-products/manuscript/list/constants';
import { patchWorkAuditsAudit } from '@/api/all/generationWorkshop';

View File

@ -14,10 +14,10 @@ export const TAB_LIST = [
label: '文本',
value: enumTab.TEXT,
},
// {
// label: '图片',
// value: enumTab.IMAGE,
// },
{
label: '图片',
value: enumTab.IMAGE,
},
];
export enum Enum_Level {

View File

@ -1,12 +1,14 @@
<script lang="jsx">
import axios from 'axios';
import { Swiper, SwiperSlide } from 'swiper/vue';
import { Button, Form, Input, FormItem } from 'ant-design-vue';
import { Button, Form, Input, FormItem, Tabs } from 'ant-design-vue';
import { IconLoading } from '@arco-design/web-vue/es/icon';
import { Image, Textarea, Tabs, Upload, TabPane, Spin, Message as AMessage } from '@arco-design/web-vue';
import { Image, Upload, Spin, Message as AMessage } from '@arco-design/web-vue';
import TextOverTips from '@/components/text-over-tips';
import HighlightTextarea from './highlight-textarea';
const { TabPane } = Tabs;
import 'swiper/css';
import 'swiper/css/navigation';
import { Navigation } from 'swiper/modules';
@ -421,22 +423,20 @@ export default {
<div class="h-full w-full px-24px pt-16px pb-24px content-wrap flex">
<div class="flex-2 left-box mr-24px flex flex-col">
<div class="flex-1 mb-12px rounded-8px border-1px pt-8px flex flex-col pb-16px bg-#F7F8FA border-#E6E6E8 border-solid">
<Tabs v-model={activeTab.value} onTabClick={handleTabClick} class="mb-16px">
<Tabs activeKey={activeTab.value} onChange={handleTabClick} class="mb-16px">
{TAB_LIST.map((item) => (
<TabPane
key={item.value}
v-slots={{
title: () => (
<div class="flex items-center relative">
<span>{item.label}</span>
{
// activeTab.value === item.value && aiReview.value?.violation_items.length > 0 && (
// <icon-exclamation-circle-fill size={14} class="color-#F64B31 absolute right--10px top-0" />
// )
}
</div>
),
}}
tab={
<div class="flex items-center relative">
<span>{item.label}</span>
{
// activeTab.value === item.value && aiReview.value?.violation_items.length > 0 && (
// <icon-exclamation-circle-fill size={14} class="color-#F64B31 absolute right--10px top-0" />
// )
}
</div>
}
/>
))}
</Tabs>

View File

@ -23,21 +23,6 @@
}
.left-box {
:deep(.arco-tabs) {
.arco-tabs-nav {
.arco-tabs-tab {
height: 40px;
// padding: 0 8px;
margin: 0 16px;
}
&::before {
display: none;
}
}
.arco-tabs-content {
display: none;
}
}
:deep(.ant-form) {
height: 100%;
display: flex;

View File

@ -1,7 +1,7 @@
<script lang="jsx">
import axios from 'axios';
import { Button, Form, FormItem, Input } from 'ant-design-vue';
import { Textarea, Upload, Message as AMessage } from '@arco-design/web-vue';
import { Upload, Message as AMessage } from '@arco-design/web-vue';
// import CommonSelect from '@/components/common-select';
// import { VueDraggable } from 'vue-draggable-plus';
import TextOverTips from '@/components/text-over-tips';
@ -12,6 +12,8 @@ import { formatFileSize, getVideoInfo, formatDuration, formatUploadSpeed } from
import { EnumManuscriptType } from '@/views/material-center/components/finished-products/manuscript/list/constants.ts';
import { getImagePreSignedUrl, getVideoPreSignedUrl } from '@/api/all/common';
const { TextArea } = Input;
// import icon1 from '@/assets/img/creative-generation-workshop/icon-close.png';
// 表单验证规则
@ -325,14 +327,14 @@ export default {
</FormItem>
<FormItem label="作品描述" name="content">
<Textarea
v-model={formData.value.content}
<TextArea
v-model:value={formData.value.content}
onInput={onChange}
placeholder="请输入作品描述"
size="large"
class="textarea-box !w-784px"
show-word-limit
max-length={1000}
showCount
maxlength={1000}
/>
</FormItem>
{isVideo.value ? (

View File

@ -31,8 +31,6 @@
}
}
.textarea-box {
:deep(.arco-textarea) {
height: 140px;
max-height: 298px;
}
height: 140px;
max-height: 298px;
}

View File

@ -1,6 +1,6 @@
<script lang="jsx">
import { Button, Modal } from 'ant-design-vue';
import { Table, TableColumn, Pagination, Tooltip, } from '@arco-design/web-vue';
import { Button, Modal, Tooltip } from 'ant-design-vue';
import { Table, TableColumn, Pagination } from '@arco-design/web-vue';
import CommonSelect from '@/components/common-select';
import TextOverTips from '@/components/text-over-tips';
import ShareModal from '@/views/material-center/components/finished-products/manuscript/components/share-manuscript-modal/share-modal';
@ -97,7 +97,7 @@ export default {
<div class="flex items-center">
<span class="cts mr-4px">{column.title}</span>
{column.tooltip && (
<Tooltip content={column.tooltip} position="top">
<Tooltip title={column.tooltip} placement="top">
<IconQuestionCircle class="tooltip-icon color-#737478" size={16} />
</Tooltip>
)}
@ -195,7 +195,7 @@ export default {
<div class="flex items-center">
<span class="cts mr-4px bold color-#211F24">{column.title}</span>
{column.tooltip && (
<Tooltip content={column.tooltip} position="top">
<Tooltip title={column.tooltip} placement="top">
<IconQuestionCircle class="tooltip-icon color-#737478" size={16} />
</Tooltip>
)}

View File

@ -1,5 +1,5 @@
<script lang="jsx">
import { Button, Modal, Form, FormItem, Input } from 'ant-design-vue';
import { Button, Modal, Form, FormItem, Input, Tooltip } from 'ant-design-vue';
import { Message as AMessage } from '@arco-design/web-vue';
import CommonSelect from '@/components/common-select';
@ -118,8 +118,8 @@ export default {
rules={rules}
model={formData.value}
labelAlign="right"
labelCol={{ span: 4 }}
wrapperCol={{ span: 20 }}
labelCol={{ span: 5 }}
wrapperCol={{ span: 19 }}
>
<FormItem label="有效期" name="days" row-class="!items-center">
<CommonSelect
@ -133,16 +133,15 @@ export default {
/>
</FormItem>
<FormItem
label="分享对象"
name="receiver"
row-class="!items-center"
v-slots={{
label: () => (
<div class="flex items-center">
<span>分享对象</span>
<a-tooltip content="可填写客户名称、昵称等,非必填" position="top">
<Tooltip title="可填写客户名称、昵称等,非必填" placement="top">
<icon-question-circle class="tooltip-icon color-#737478 ml-4px" size="14" />
</a-tooltip>
</Tooltip>
</div>
),
}}

View File

@ -1,6 +1,6 @@
<script lang="jsx">
import { Modal, Button, Form, FormItem, RadioGroup, Radio, Input } from 'ant-design-vue';
import { Upload, Message as AMessage, Textarea } from '@arco-design/web-vue';
import { Upload, Message as AMessage } from '@arco-design/web-vue';
import { useClipboard } from '@vueuse/core';
import { getWriterLinksGenerate, getTemplateUrl, postWorksByLink, postWorksByFile } from '@/api/all/generationWorkshop';
import { generateFullUrl } from '@/utils/tools';
@ -9,6 +9,8 @@ import { slsWithCatch } from '@/utils/stroage.ts';
import TextOverTips from '@/components/text-over-tips';
import icon1 from '@/assets/img/media-account/icon-feedback-fail.png';
const { TextArea } = Input;
// 状态枚举
const TASK_STATUS = {
DEFAULT: 1,
@ -211,8 +213,8 @@ export default {
// 渲染链接上传表单
const renderLinkForm = () => (
<FormItem label="链接地址" name="link" required>
<Textarea
v-model={form.value.link}
<TextArea
v-model:value={form.value.link}
size="large"
placeholder="请输入飞书链接地址"
autoSize={{ minRows: 5, maxRows: 8 }}

View File

@ -29,9 +29,9 @@
<template #title>
<div class="flex items-center">
<span class="cts mr-4px">{{ column.title }}</span>
<a-tooltip v-if="column.tooltip" :content="column.tooltip" position="top">
<Tooltip v-if="column.tooltip" :title="column.tooltip" placement="top">
<icon-question-circle class="tooltip-icon color-#737478" size="16" />
</a-tooltip>
</Tooltip>
</div>
</template>
@ -106,7 +106,7 @@
<script setup>
import { ref } from 'vue';
import { Button } from 'ant-design-vue';
import { Button, Tooltip } from 'ant-design-vue';
import { formatTableField, exactFormatTime } from '@/utils/tools';
import { TABLE_COLUMNS } from './constants';
import { CHECK_STATUS, EnumManuscriptType } from '@/views/material-center/components/finished-products/manuscript/list/constants';

View File

@ -33,9 +33,9 @@
<template #title>
<div class="flex items-center">
<span class="cts mr-4px">{{ column.title }}</span>
<a-tooltip v-if="column.tooltip" :content="column.tooltip" position="top">
<Tooltip v-if="column.tooltip" :title="column.tooltip" placement="top">
<icon-question-circle class="tooltip-icon color-#737478" size="16" />
</a-tooltip>
</Tooltip>
</div>
</template>
<template v-if="column.dataIndex === 'name'" #cell="{ record }">
@ -84,7 +84,7 @@
<script setup>
import { ref } from 'vue';
import { Button } from 'ant-design-vue';
import { Button, Tooltip } from 'ant-design-vue';
import { formatTableField, exactFormatTime, formatFileSize, downloadByUrl } from '@/utils/tools';
import { slsWithCatch } from '@/utils/stroage.ts';
import { TABS_LIST, ORIGIN_LIST } from '../../constants';