fix: 不能打包

This commit is contained in:
xingyu4j
2025-10-28 11:42:56 +08:00
parent b5c8197f20
commit fbbcca20e7
29 changed files with 98 additions and 129 deletions

View File

@@ -1,5 +1,4 @@
<script setup lang="ts">
import { Page } from '@vben/common-ui';
</script>
<template><Page>待完成</Page></template>

View File

@@ -1,3 +1,4 @@
<script setup lang="ts">
import { Page } from '@vben/common-ui';
</script>
<template><Page>待完成</Page></template>

View File

@@ -5,8 +5,6 @@ import type { MallCouponTemplateApi } from '#/api/mall/promotion/coupon/couponTe
import { onMounted, ref, watch } from 'vue';
import {
CouponDiscount,
CouponDiscountDesc,
@@ -23,9 +21,7 @@ watch(
() => props.property.couponIds,
async () => {
if (props.property.couponIds?.length > 0) {
couponList.value = await getCouponTemplateList(
props.property.couponIds,
);
couponList.value = await getCouponTemplateList(props.property.couponIds);
}
},
{

View File

@@ -1,5 +1,4 @@
<script setup lang="ts">
import { Page } from '@vben/common-ui';
</script>
<template><Page>待完成</Page></template>

View File

@@ -1,3 +1,4 @@
<script setup lang="ts">
import { Page } from '@vben/common-ui';
</script>
<template><Page>待完成</Page></template>

View File

@@ -1,8 +1,4 @@
<script setup lang="ts">
import { Page } from '@vben/common-ui';
</script>
<template><Page>待完成</Page></template>

View File

@@ -1,6 +1,4 @@
<script setup lang="ts">
import { Page } from '@vben/common-ui';
</script>
<template><Page>待完成</Page></template>

View File

@@ -1,4 +1,4 @@
<script setup lang="ts">
import { Page } from '@vben/common-ui';
</script>
<template><Page>待完成</Page></template>

View File

@@ -122,8 +122,8 @@ watch(
button {
width: 6px;
height: 6px;
border-radius: 6px;
background: #ff6000;
border-radius: 6px;
}
}

View File

@@ -1,5 +1,4 @@
<script setup lang="ts">
import { Page } from '@vben/common-ui';
</script>
<template><Page>待完成</Page></template>

View File

@@ -6,13 +6,7 @@ import type { Rect } from '#/views/mall/promotion/components/magic-cube-editor/u
import { computed, ref } from 'vue';
import { useVModel } from '@vueuse/core';
import {
FormItem,
Input,
Radio,
RadioGroup,
Slider,
} from 'ant-design-vue';
import { FormItem, Input, Radio, RadioGroup, Slider } from 'ant-design-vue';
import appNavBarMp from '#/assets/imgs/diy/app-nav-bar-mp.png';
import UploadImg from '#/components/upload/image-upload.vue';
@@ -86,7 +80,7 @@ const handleHotAreaSelected = (
</div>
<template v-for="(cell, cellIndex) in cellList" :key="cellIndex">
<template v-if="selectedHotAreaIndex === Number(cellIndex)">
<FormItem :label="`类型`">
<FormItem label="类型">
<RadioGroup v-model:value="cell.type">
<Radio value="text">文字</Radio>
<Radio value="image">图片</Radio>
@@ -95,19 +89,19 @@ const handleHotAreaSelected = (
</FormItem>
<!-- 1. 文字 -->
<template v-if="cell.type === 'text'">
<FormItem :label="`内容`">
<FormItem label="内容">
<Input v-model:value="cell!.text" :maxlength="10" show-count />
</FormItem>
<FormItem :label="`颜色`">
<FormItem label="颜色">
<ColorInput v-model="cell!.textColor" />
</FormItem>
<FormItem :label="`链接`">
<FormItem label="链接">
<AppLinkInput v-model="cell.url" />
</FormItem>
</template>
<!-- 2. 图片 -->
<template v-else-if="cell.type === 'image'">
<FormItem :label="`图片`">
<FormItem label="图片">
<UploadImg
v-model="cell.imgUrl"
:limit="1"
@@ -118,21 +112,17 @@ const handleHotAreaSelected = (
<template #tip>建议尺寸 56*56</template>
</UploadImg>
</FormItem>
<FormItem :label="`链接`">
<FormItem label="链接">
<AppLinkInput v-model="cell.url" />
</FormItem>
</template>
<!-- 3. 搜索框 -->
<template v-else>
<FormItem :label="`提示文字`">
<FormItem label="提示文字">
<Input v-model:value="cell.placeholder" :maxlength="10" show-count />
</FormItem>
<FormItem :label="`圆角`">
<Slider
v-model:value="cell.borderRadius"
:max="100"
:min="0"
/>
<FormItem label="圆角">
<Slider v-model:value="cell.borderRadius" :max="100" :min="0" />
</FormItem>
</template>
</template>
@@ -140,8 +130,3 @@ const handleHotAreaSelected = (
</template>
<style lang="scss" scoped></style>

View File

@@ -24,7 +24,7 @@ const props = defineProps<{ modelValue: NavigationBarProperty }>();
const emit = defineEmits(['update:modelValue']);
// 表单校验
const rules = {
const rules: Record<string, any> = {
name: [{ required: true, message: '请输入页面名称', trigger: 'blur' }],
};

View File

@@ -1,4 +1,4 @@
<script setup lang="ts">
import { Page } from '@vben/common-ui';
</script>
<template><Page>待完成</Page></template>

View File

@@ -2,7 +2,6 @@
import type { PageConfigProperty } from './config';
import { useVModel } from '@vueuse/core';
import { Form, FormItem, Textarea } from 'ant-design-vue';
import UploadImg from '#/components/upload/image-upload.vue';

View File

@@ -1,5 +1,4 @@
<script setup lang="ts">
import { Page } from '@vben/common-ui';
</script>
<template><Page>待完成</Page></template>

View File

@@ -4,7 +4,6 @@ import type { ProductListProperty } from './config';
import { IconifyIcon } from '@vben/icons';
import { useVModel } from '@vueuse/core';
import {
Card,
Checkbox,
@@ -34,7 +33,11 @@ const formData = useVModel(props, 'modelValue', emit);
<template>
<ComponentContainerProperty v-model="formData.style">
<Form :label-col="{ span: 6 }" :wrapper-col="{ span: 18 }" :model="formData">
<Form
:label-col="{ span: 6 }"
:wrapper-col="{ span: 18 }"
:model="formData"
>
<Card title="商品列表" class="property-group" :bordered="false">
<!-- <SpuShowcase v-model="formData.spuIds" /> -->
</Card>
@@ -102,11 +105,7 @@ const formData = useVModel(props, 'modelValue', emit);
/>
</FormItem>
<FormItem label="间隔" prop="space">
<Slider
v-model:value="formData.space"
:max="100"
:min="0"
/>
<Slider v-model:value="formData.space" :max="100" :min="0" />
</FormItem>
</Card>
</Form>

View File

@@ -5,7 +5,7 @@ import type { MallArticleApi } from '#/api/mall/promotion/article';
import { ref, watch } from 'vue';
import { getArticle } from '#/api/mall/promotion/article';
/** 营销文章 */
defineOptions({ name: 'PromotionArticle' });

View File

@@ -6,10 +6,9 @@ import type { MallArticleApi } from '#/api/mall/promotion/article';
import { onMounted, ref } from 'vue';
import { useVModel } from '@vueuse/core';
import { Form, FormItem, Select } from 'ant-design-vue';
import { getArticlePage } from '#/api/mall/promotion/article';
import ComponentContainerProperty from '../../component-container-property.vue';
@@ -44,7 +43,11 @@ onMounted(() => {
<template>
<ComponentContainerProperty v-model="formData.style">
<Form :label-col="{ span: 6 }" :wrapper-col="{ span: 18 }" :model="formData">
<Form
:label-col="{ span: 6 }"
:wrapper-col="{ span: 18 }"
:model="formData"
>
<FormItem label="文章" prop="id">
<Select
v-model:value="formData.id"
@@ -52,7 +55,9 @@ onMounted(() => {
class="w-full"
filterable
:loading="loading"
:options="articles.map((item) => ({ label: item.title, value: item.id }))"
:options="
articles.map((item) => ({ label: item.title, value: item.id }))
"
@search="queryArticleList"
/>
</FormItem>

View File

@@ -11,7 +11,7 @@ import { fenToYuan } from '@vben/utils';
import { Image } from 'ant-design-vue';
import { getSpuDetailList } from '#/api/mall/product/spu';
import { getCombinationActivityListByIds, getCombinationActivityPage } from '#/api/mall/promotion/combination/combinationActivity';
import { getCombinationActivityListByIds } from '#/api/mall/promotion/combination/combinationActivity';
/** 拼团卡片 */
defineOptions({ name: 'PromotionCombination' });
@@ -34,9 +34,7 @@ watch(
if (Array.isArray(activityIds) && activityIds.length > 0) {
// 获取拼团活动详情列表
combinationActivityList.value =
await getCombinationActivityListByIds(
activityIds,
);
await getCombinationActivityListByIds(activityIds);
// 获取拼团活动的 SPU 详情列表
spuList.value = [];

View File

@@ -9,14 +9,12 @@ import { CommonStatusEnum } from '@vben/constants';
import { IconifyIcon } from '@vben/icons';
import { useVModel } from '@vueuse/core';
import {
Card,
Checkbox,
Form,
FormItem,
Input,
Radio,
RadioButton,
RadioGroup,
Slider,
@@ -24,9 +22,9 @@ import {
Tooltip,
} from 'ant-design-vue';
import { getCombinationActivityListByIds, getCombinationActivityPage } from '#/api/mall/promotion/combination/combinationActivity';
import { getCombinationActivityPage } from '#/api/mall/promotion/combination/combinationActivity';
import UploadImg from '#/components/upload/image-upload.vue';
import CombinationShowcase from '#/views/mall/promotion/combination/components/combination-showcase.vue';
// import CombinationShowcase from '#/views/mall/promotion/combination/components/combination-showcase.vue';
import { ColorInput } from '#/views/mall/promotion/components';
// 拼团属性面板
@@ -49,7 +47,11 @@ onMounted(async () => {
<template>
<ComponentContainerProperty v-model="formData.style">
<Form :label-col="{ span: 6 }" :wrapper-col="{ span: 18 }" :model="formData">
<Form
:label-col="{ span: 6 }"
:wrapper-col="{ span: 18 }"
:model="formData"
>
<Card title="拼团活动" class="property-group" :bordered="false">
<CombinationShowcase v-model="formData.activityIds" />
</Card>
@@ -167,11 +169,7 @@ onMounted(async () => {
/>
</FormItem>
<FormItem label="间隔" prop="space">
<Slider
v-model:value="formData.space"
:max="100"
:min="0"
/>
<Slider v-model:value="formData.space" :max="100" :min="0" />
</FormItem>
</Card>
</Form>

View File

@@ -10,7 +10,7 @@ import { fenToYuan } from '@vben/utils';
import { Image } from 'ant-design-vue';
import { getSpuDetailList } from '#/api/mall/product/spu';
import { getPointActivityListByIds } from '#/api/mall/promotion/point';
/** 积分商城卡片 */
defineOptions({ name: 'PromotionPoint' });
@@ -30,8 +30,7 @@ watch(
// 检查活动ID的有效性
if (Array.isArray(activityIds) && activityIds.length > 0) {
// 获取积分商城活动详情列表
pointActivityList.value =
await getPointActivityListByIds(activityIds);
pointActivityList.value = await getPointActivityListByIds(activityIds);
// 获取积分商城活动的 SPU 详情列表
spuList.value = [];

View File

@@ -1,5 +1,4 @@
<script lang="ts" setup>
<script setup lang="ts">
import { Page } from '@vben/common-ui';
</script>
<template><Page>待完成</Page></template>

View File

@@ -1,8 +1,4 @@
<script setup lang="ts">
import { Page } from '@vben/common-ui';
</script>
<template><Page>待完成</Page></template>

View File

@@ -1,6 +1,4 @@
<script setup lang="ts">
import { Page } from '@vben/common-ui';
</script>
<template><Page>待完成</Page></template>

View File

@@ -4,7 +4,6 @@ import type { TabBarProperty } from './config';
import { IconifyIcon } from '@vben/icons';
import { useVModel } from '@vueuse/core';
import {
Form,
FormItem,
@@ -45,7 +44,11 @@ const handleThemeChange = () => {
<template>
<div class="tab-bar">
<!-- 表单 -->
<Form :model="formData" :label-col="{ span: 6 }" :wrapper-col="{ span: 18 }">
<Form
:model="formData"
:label-col="{ span: 6 }"
:wrapper-col="{ span: 18 }"
>
<FormItem label="主题" name="theme">
<Select v-model:value="formData!.theme" @change="handleThemeChange">
<SelectOption

View File

@@ -1,5 +1,4 @@
<script setup lang="ts">
import { Page } from '@vben/common-ui';
</script>
<template><Page>待完成</Page></template>

View File

@@ -2,7 +2,6 @@
import type { VideoPlayerProperty } from './config';
import { useVModel } from '@vueuse/core';
import { Form, FormItem, Slider, Switch } from 'ant-design-vue';
import UploadFile from '#/components/upload/file-upload.vue';
@@ -25,7 +24,11 @@ const formData = useVModel(props, 'modelValue', emit);
<Slider v-model:value="formData.style.height" :max="500" :min="100" />
</FormItem>
</template>
<Form :model="formData" :label-col="{ span: 6 }" :wrapper-col="{ span: 18 }">
<Form
:model="formData"
:label-col="{ span: 6 }"
:wrapper-col="{ span: 18 }"
>
<FormItem label="上传视频" name="videoUrl">
<UploadFile
v-model="formData.videoUrl"

View File

@@ -608,12 +608,12 @@ $phone-width: 375px;
flex-direction: column;
:deep(.ant-tag) {
border: none;
box-shadow: 0 2px 8px 0 rgb(0 0 0 / 10%);
display: flex;
align-items: center;
justify-content: flex-start;
width: 100%;
border: none;
box-shadow: 0 2px 8px 0 rgb(0 0 0 / 10%);
.anticon {
margin-right: 4px;

View File

@@ -93,7 +93,7 @@ defineExpose({ setRuleCoupon });
</div>
<Form :model="rule">
<FormItem label="优惠门槛:" label-col="{ span: 4 }">
<FormItem label="优惠门槛:" :label-col="{ span: 4 }">
<div class="flex items-center gap-2">
<span></span>
<InputNumber
@@ -118,7 +118,7 @@ defineExpose({ setRuleCoupon });
</div>
</FormItem>
<FormItem label="优惠内容:" label-col="{ span: 4 }">
<FormItem label="优惠内容:" :label-col="{ span: 4 }">
<div class="flex flex-col gap-4">
<!-- 订单金额优惠 -->
<div class="flex items-center gap-2">