dev
This commit is contained in:
@@ -27,7 +27,12 @@
|
||||
"Bash(curl -X POST http://localhost:3000/api/orders/1/pay -H \"Content-Type: application/json\" -H \"Authorization: Bearer test\" -d '{\"paymentMethod\":\"wechat\"}' -v)",
|
||||
"Bash(curl -X POST http://localhost:3000/api/orders/1/pay -v)",
|
||||
"Bash(xargs grep -l \"jwt\\\\|JWT\")",
|
||||
"Bash(xargs grep -l \"invite\")"
|
||||
"Bash(xargs grep -l \"invite\")",
|
||||
"Bash(curl -s -X POST http://localhost:3000/api/auth/login/phone -H \"Content-Type: application/json\" -d '{\"phone\":\"13800138000\",\"code\":\"123456\"}')",
|
||||
"Bash(python3 -c \"import sys, json; data=json.load\\(sys.stdin\\); token=data['data']['accessToken']; import jwt; decoded=jwt.decode\\(token, options={'verify_signature': False}\\); print\\(f\\\\\"iat: {decoded['iat']}, exp: {decoded['exp']}, duration: {decoded['exp']-decoded['iat']} seconds \\({\\(decoded['exp']-decoded['iat']\\)/3600} hours\\)\\\\\"\\)\")",
|
||||
"Bash(curl -s -X GET http://localhost:3000/api/orders -H \"Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxIiwicGhvbmUiOiIxMzgwMDEzODAwMCIsImlhdCI6MTc3ODM4MTc2NywiZXhwIjoxNzc4Mzg4OTY3fQ.-jcY69afC6O6CtKtOj6tRaoiknypwDfvpXYhpz95rVE\")",
|
||||
"Bash(pnpm install *)",
|
||||
"Bash(pnpm dev:mp-weixin)"
|
||||
]
|
||||
}
|
||||
}
|
||||
|
||||
@@ -42,7 +42,8 @@
|
||||
"@dcloudio/vite-plugin-uni": "3.0.0-5000720260410001",
|
||||
"@types/node": "^22.0.0",
|
||||
"@vue/runtime-core": "^3.4.21",
|
||||
"sass": "^1.77.0",
|
||||
"sass": "^1.83.0",
|
||||
"sass-embedded": "^1.83.0",
|
||||
"typescript": "^5.5.0",
|
||||
"vite": "^5.2.8"
|
||||
}
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -455,7 +455,7 @@ async function handleCheckout() {
|
||||
border: none;
|
||||
|
||||
&:active {
|
||||
background: darken($success-color, 5%);
|
||||
background: $success-dark;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -470,7 +470,7 @@ async function handleCheckout() {
|
||||
border: none;
|
||||
|
||||
&:active {
|
||||
background: darken($info-color, 5%);
|
||||
background: $info-dark;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -485,7 +485,7 @@ async function handleCheckout() {
|
||||
border: none;
|
||||
|
||||
&:active {
|
||||
background: darken($success-color, 5%);
|
||||
background: $success-dark;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -580,7 +580,7 @@ async function handleCheckout() {
|
||||
color: #fff;
|
||||
|
||||
&:active {
|
||||
background: darken($error-color, 5%);
|
||||
background: $error-dark;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,6 +1,9 @@
|
||||
<template>
|
||||
<view class="page-shop-edit">
|
||||
<!-- 基本信息 -->
|
||||
<view class="form-section">
|
||||
<view class="section-title">基本信息</view>
|
||||
|
||||
<!-- 店铺名称 -->
|
||||
<view class="form-item">
|
||||
<text class="label required">店铺名称</text>
|
||||
@@ -48,45 +51,6 @@
|
||||
/>
|
||||
</view>
|
||||
|
||||
<!-- 营业执照图片 -->
|
||||
<view class="form-item">
|
||||
<text class="label required">营业执照</text>
|
||||
<view class="upload-section">
|
||||
<view v-if="form.businessLicense" class="image-preview">
|
||||
<image class="preview-img" :src="form.businessLicense" mode="aspectFit" />
|
||||
<view class="delete-btn" @tap="deleteLicense">×</view>
|
||||
</view>
|
||||
<view v-else class="upload-btn" @tap="uploadLicense">
|
||||
<text class="upload-icon">+</text>
|
||||
<text class="upload-text">上传营业执照</text>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<!-- 营业执照编号 -->
|
||||
<view class="form-item">
|
||||
<text class="label">营业执照编号</text>
|
||||
<input
|
||||
class="input"
|
||||
type="text"
|
||||
v-model="form.licenseNo"
|
||||
placeholder="请输入营业执照编号"
|
||||
maxlength="50"
|
||||
/>
|
||||
</view>
|
||||
|
||||
<!-- 法人姓名 -->
|
||||
<view class="form-item">
|
||||
<text class="label">法人姓名</text>
|
||||
<input
|
||||
class="input"
|
||||
type="text"
|
||||
v-model="form.legalPerson"
|
||||
placeholder="请输入法人姓名"
|
||||
maxlength="50"
|
||||
/>
|
||||
</view>
|
||||
|
||||
<!-- 店铺描述 -->
|
||||
<view class="form-item">
|
||||
<text class="label">店铺描述</text>
|
||||
@@ -97,6 +61,326 @@
|
||||
maxlength="500"
|
||||
/>
|
||||
</view>
|
||||
|
||||
<!-- 门店营业执照 -->
|
||||
<view class="form-item">
|
||||
<text class="label required">门店营业执照</text>
|
||||
<view class="upload-section">
|
||||
<view v-if="form.storeLicense" class="image-preview">
|
||||
<image class="preview-img" :src="form.storeLicense" mode="aspectFit" />
|
||||
<view class="delete-btn" @tap="form.storeLicense = ''">×</view>
|
||||
</view>
|
||||
<view v-else class="upload-btn" @tap="uploadStoreLicense">
|
||||
<text class="upload-icon">+</text>
|
||||
<text class="upload-text">上传门店营业执照</text>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<!-- 酒店照片 -->
|
||||
<view class="form-section">
|
||||
<view class="section-title">酒店照片</view>
|
||||
<view class="section-desc">用于店铺首页轮播图展示,最多上传9张</view>
|
||||
|
||||
<view class="form-item">
|
||||
<view class="upload-grid">
|
||||
<view
|
||||
v-for="(img, index) in form.hotelImages"
|
||||
:key="index"
|
||||
class="image-preview"
|
||||
>
|
||||
<image class="preview-img" :src="img" mode="aspectFill" />
|
||||
<view class="delete-btn" @tap="deleteHotelImage(index)">×</view>
|
||||
</view>
|
||||
<view
|
||||
v-if="form.hotelImages.length < 9"
|
||||
class="upload-btn"
|
||||
@tap="uploadHotelImages"
|
||||
>
|
||||
<text class="upload-icon">+</text>
|
||||
<text class="upload-text">上传照片</text>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<!-- 签约资料 -->
|
||||
<view class="form-section">
|
||||
<view class="section-title">签约资料</view>
|
||||
|
||||
<!-- 签约类型 -->
|
||||
<view class="form-item">
|
||||
<text class="label required">签约类型</text>
|
||||
<view class="radio-group">
|
||||
<view
|
||||
class="radio-item"
|
||||
:class="{ active: form.contractType === 'personal' }"
|
||||
@tap="form.contractType = 'personal'"
|
||||
>
|
||||
<view class="radio-icon">
|
||||
<view v-if="form.contractType === 'personal'" class="radio-dot"></view>
|
||||
</view>
|
||||
<text>个人签约</text>
|
||||
</view>
|
||||
<view
|
||||
class="radio-item"
|
||||
:class="{ active: form.contractType === 'company' }"
|
||||
@tap="form.contractType = 'company'"
|
||||
>
|
||||
<view class="radio-icon">
|
||||
<view v-if="form.contractType === 'company'" class="radio-dot"></view>
|
||||
</view>
|
||||
<text>公司/法人签约</text>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<!-- 个人签约 -->
|
||||
<template v-if="form.contractType === 'personal'">
|
||||
<view class="form-item">
|
||||
<text class="label required">身份证正面</text>
|
||||
<view class="upload-section">
|
||||
<view v-if="form.idCardFront" class="image-preview">
|
||||
<image class="preview-img" :src="form.idCardFront" mode="aspectFit" />
|
||||
<view class="delete-btn" @tap="form.idCardFront = ''">×</view>
|
||||
</view>
|
||||
<view v-else class="upload-btn" @tap="uploadIdCardFront">
|
||||
<text class="upload-icon">+</text>
|
||||
<text class="upload-text">上传身份证正面</text>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view class="form-item">
|
||||
<text class="label required">身份证反面</text>
|
||||
<view class="upload-section">
|
||||
<view v-if="form.idCardBack" class="image-preview">
|
||||
<image class="preview-img" :src="form.idCardBack" mode="aspectFit" />
|
||||
<view class="delete-btn" @tap="form.idCardBack = ''">×</view>
|
||||
</view>
|
||||
<view v-else class="upload-btn" @tap="uploadIdCardBack">
|
||||
<text class="upload-icon">+</text>
|
||||
<text class="upload-text">上传身份证反面</text>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<!-- 公司/法人签约 -->
|
||||
<template v-if="form.contractType === 'company'">
|
||||
<view class="form-item">
|
||||
<text class="label required">法人身份证正面</text>
|
||||
<view class="upload-section">
|
||||
<view v-if="form.legalIdCardFront" class="image-preview">
|
||||
<image class="preview-img" :src="form.legalIdCardFront" mode="aspectFit" />
|
||||
<view class="delete-btn" @tap="form.legalIdCardFront = ''">×</view>
|
||||
</view>
|
||||
<view v-else class="upload-btn" @tap="uploadLegalIdCardFront">
|
||||
<text class="upload-icon">+</text>
|
||||
<text class="upload-text">上传法人身份证正面</text>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view class="form-item">
|
||||
<text class="label required">法人身份证反面</text>
|
||||
<view class="upload-section">
|
||||
<view v-if="form.legalIdCardBack" class="image-preview">
|
||||
<image class="preview-img" :src="form.legalIdCardBack" mode="aspectFit" />
|
||||
<view class="delete-btn" @tap="form.legalIdCardBack = ''">×</view>
|
||||
</view>
|
||||
<view v-else class="upload-btn" @tap="uploadLegalIdCardBack">
|
||||
<text class="upload-icon">+</text>
|
||||
<text class="upload-text">上传法人身份证反面</text>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view class="form-item">
|
||||
<text class="label required">营业执照</text>
|
||||
<view class="upload-section">
|
||||
<view v-if="form.businessLicense" class="image-preview">
|
||||
<image class="preview-img" :src="form.businessLicense" mode="aspectFit" />
|
||||
<view class="delete-btn" @tap="form.businessLicense = ''">×</view>
|
||||
</view>
|
||||
<view v-else class="upload-btn" @tap="uploadLicense">
|
||||
<text class="upload-icon">+</text>
|
||||
<text class="upload-text">上传营业执照</text>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<!-- 营业执照编号 -->
|
||||
<view class="form-item">
|
||||
<text class="label">营业执照编号</text>
|
||||
<input
|
||||
class="input"
|
||||
type="text"
|
||||
v-model="form.licenseNo"
|
||||
placeholder="请输入营业执照编号"
|
||||
maxlength="50"
|
||||
/>
|
||||
</view>
|
||||
|
||||
<!-- 法人姓名 -->
|
||||
<view class="form-item">
|
||||
<text class="label">法人姓名</text>
|
||||
<input
|
||||
class="input"
|
||||
type="text"
|
||||
v-model="form.legalPerson"
|
||||
placeholder="请输入法人姓名"
|
||||
maxlength="50"
|
||||
/>
|
||||
</view>
|
||||
</template>
|
||||
</view>
|
||||
|
||||
<!-- 财务信息 -->
|
||||
<view class="form-section">
|
||||
<view class="section-title">财务信息</view>
|
||||
|
||||
<!-- 账户类型 -->
|
||||
<view class="form-item">
|
||||
<text class="label required">账户类型</text>
|
||||
<view class="radio-group">
|
||||
<view
|
||||
class="radio-item"
|
||||
:class="{ active: form.accountType === 'company' }"
|
||||
@tap="form.accountType = 'company'"
|
||||
>
|
||||
<view class="radio-icon">
|
||||
<view v-if="form.accountType === 'company'" class="radio-dot"></view>
|
||||
</view>
|
||||
<text>对公账户</text>
|
||||
</view>
|
||||
<view
|
||||
class="radio-item"
|
||||
:class="{ active: form.accountType === 'personal' }"
|
||||
@tap="form.accountType = 'personal'"
|
||||
>
|
||||
<view class="radio-icon">
|
||||
<view v-if="form.accountType === 'personal'" class="radio-dot"></view>
|
||||
</view>
|
||||
<text>对私账户</text>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<!-- 对公账户 -->
|
||||
<template v-if="form.accountType === 'company'">
|
||||
<view class="form-item">
|
||||
<text class="label required">收款银行</text>
|
||||
<input
|
||||
class="input"
|
||||
type="text"
|
||||
v-model="form.bankName"
|
||||
placeholder="请输入收款银行名称"
|
||||
maxlength="100"
|
||||
/>
|
||||
</view>
|
||||
|
||||
<view class="form-item">
|
||||
<text class="label required">银行账号</text>
|
||||
<input
|
||||
class="input"
|
||||
type="text"
|
||||
v-model="form.bankAccount"
|
||||
placeholder="请输入银行账号"
|
||||
maxlength="50"
|
||||
/>
|
||||
</view>
|
||||
|
||||
<view class="form-item">
|
||||
<text class="label required">开户营业执照</text>
|
||||
<view class="upload-section">
|
||||
<view v-if="form.bankLicense" class="image-preview">
|
||||
<image class="preview-img" :src="form.bankLicense" mode="aspectFit" />
|
||||
<view class="delete-btn" @tap="form.bankLicense = ''">×</view>
|
||||
</view>
|
||||
<view v-else class="upload-btn" @tap="uploadBankLicense">
|
||||
<text class="upload-icon">+</text>
|
||||
<text class="upload-text">上传开户营业执照</text>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<!-- 对私账户 -->
|
||||
<template v-if="form.accountType === 'personal'">
|
||||
<view class="form-item">
|
||||
<text class="label required">开户名</text>
|
||||
<input
|
||||
class="input"
|
||||
type="text"
|
||||
v-model="form.accountName"
|
||||
placeholder="请输入开户名"
|
||||
maxlength="50"
|
||||
/>
|
||||
</view>
|
||||
|
||||
<view class="form-item">
|
||||
<text class="label required">开户账号</text>
|
||||
<input
|
||||
class="input"
|
||||
type="text"
|
||||
v-model="form.bankAccount"
|
||||
placeholder="请输入开户账号"
|
||||
maxlength="50"
|
||||
/>
|
||||
</view>
|
||||
|
||||
<view class="form-item">
|
||||
<text class="label required">开户银行</text>
|
||||
<input
|
||||
class="input"
|
||||
type="text"
|
||||
v-model="form.bankName"
|
||||
placeholder="请输入开户银行"
|
||||
maxlength="100"
|
||||
/>
|
||||
</view>
|
||||
|
||||
<view class="form-item">
|
||||
<text class="label required">支行信息</text>
|
||||
<input
|
||||
class="input"
|
||||
type="text"
|
||||
v-model="form.bankBranch"
|
||||
placeholder="请输入支行名称"
|
||||
maxlength="100"
|
||||
/>
|
||||
</view>
|
||||
|
||||
<view class="form-item">
|
||||
<text class="label required">开户身份证正面</text>
|
||||
<view class="upload-section">
|
||||
<view v-if="form.accountIdCardFront" class="image-preview">
|
||||
<image class="preview-img" :src="form.accountIdCardFront" mode="aspectFit" />
|
||||
<view class="delete-btn" @tap="form.accountIdCardFront = ''">×</view>
|
||||
</view>
|
||||
<view v-else class="upload-btn" @tap="uploadAccountIdCardFront">
|
||||
<text class="upload-icon">+</text>
|
||||
<text class="upload-text">上传身份证正面</text>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view class="form-item">
|
||||
<text class="label required">开户身份证反面</text>
|
||||
<view class="upload-section">
|
||||
<view v-if="form.accountIdCardBack" class="image-preview">
|
||||
<image class="preview-img" :src="form.accountIdCardBack" mode="aspectFit" />
|
||||
<view class="delete-btn" @tap="form.accountIdCardBack = ''">×</view>
|
||||
</view>
|
||||
<view v-else class="upload-btn" @tap="uploadAccountIdCardBack">
|
||||
<text class="upload-icon">+</text>
|
||||
<text class="upload-text">上传身份证反面</text>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
</view>
|
||||
|
||||
<button class="submit-btn" :disabled="loading" @tap="handleSubmit">
|
||||
@@ -104,9 +388,10 @@
|
||||
</button>
|
||||
|
||||
<view class="tips">
|
||||
<text class="tips-title">温馨提示</text>
|
||||
<text class="tips-text">修改店铺信息后需要重新等待平台审核</text>
|
||||
<text class="tips-text">审核结果将通过消息通知您</text>
|
||||
<view class="tips-title">温馨提示</view>
|
||||
<text class="tips-text">1. 修改店铺信息后需要重新等待平台审核</text>
|
||||
<text class="tips-text">2. 所有证件照片需清晰可见,确保信息真实有效</text>
|
||||
<text class="tips-text">3. 审核通过后即可继续营业</text>
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
@@ -123,16 +408,38 @@ const sellerStore = useSellerStore();
|
||||
const loading = ref(false);
|
||||
|
||||
const form = ref({
|
||||
// 基本信息
|
||||
shopName: '',
|
||||
phone: '',
|
||||
province: '',
|
||||
city: '',
|
||||
district: '',
|
||||
address: '',
|
||||
businessLicense: '',
|
||||
description: '',
|
||||
storeLicense: '', // 门店营业执照
|
||||
|
||||
// 酒店照片
|
||||
hotelImages: [] as string[],
|
||||
|
||||
// 签约资料
|
||||
contractType: 'personal' as 'personal' | 'company',
|
||||
idCardFront: '', // 个人身份证正面
|
||||
idCardBack: '', // 个人身份证反面
|
||||
legalIdCardFront: '', // 法人身份证正面
|
||||
legalIdCardBack: '', // 法人身份证反面
|
||||
businessLicense: '', // 营业执照
|
||||
licenseNo: '',
|
||||
legalPerson: '',
|
||||
description: '',
|
||||
|
||||
// 财务信息
|
||||
accountType: 'company' as 'company' | 'personal',
|
||||
accountName: '', // 开户名(对私)
|
||||
bankAccount: '', // 银行账号
|
||||
bankName: '', // 银行名称
|
||||
bankBranch: '', // 支行信息(对私)
|
||||
bankLicense: '', // 开户营业执照(对公)
|
||||
accountIdCardFront: '', // 开户身份证正面(对私)
|
||||
accountIdCardBack: '', // 开户身份证反面(对私)
|
||||
});
|
||||
|
||||
onMounted(async () => {
|
||||
@@ -140,18 +447,39 @@ onMounted(async () => {
|
||||
const res = await getMyMerchant();
|
||||
const merchant = res.data;
|
||||
form.value = {
|
||||
// 基本信息
|
||||
shopName: merchant.shopName || '',
|
||||
phone: merchant.phone || '',
|
||||
province: merchant.province || '',
|
||||
city: merchant.city || '',
|
||||
district: merchant.district || '',
|
||||
address: merchant.address || '',
|
||||
description: merchant.description || '',
|
||||
storeLicense: merchant.storeLicense || '',
|
||||
|
||||
// 酒店照片
|
||||
hotelImages: merchant.hotelImages ? merchant.hotelImages.split(',').filter((img: string) => img) : [],
|
||||
|
||||
// 签约资料
|
||||
contractType: merchant.contractType || 'personal',
|
||||
idCardFront: merchant.idCardFront || '',
|
||||
idCardBack: merchant.idCardBack || '',
|
||||
legalIdCardFront: merchant.legalIdCardFront || '',
|
||||
legalIdCardBack: merchant.legalIdCardBack || '',
|
||||
businessLicense: merchant.businessLicense || '',
|
||||
licenseNo: merchant.licenseNo || '',
|
||||
legalPerson: merchant.legalPerson || '',
|
||||
description: merchant.description || '',
|
||||
|
||||
// 财务信息
|
||||
accountType: merchant.accountType || 'company',
|
||||
accountName: merchant.accountName || '',
|
||||
bankAccount: merchant.bankAccount || '',
|
||||
bankName: merchant.bankName || '',
|
||||
bankBranch: merchant.bankBranch || '',
|
||||
bankLicense: merchant.bankLicense || '',
|
||||
accountIdCardFront: merchant.accountIdCardFront || '',
|
||||
accountIdCardBack: merchant.accountIdCardBack || '',
|
||||
};
|
||||
// 地区信息已通过 RegionSelector 的 props 传入,无需额外处理
|
||||
} catch (error) {
|
||||
uni.showToast({ title: '获取店铺信息失败', icon: 'none' });
|
||||
}
|
||||
@@ -163,10 +491,96 @@ function onRegionChange(value: { province: string; city: string; district: strin
|
||||
form.value.district = value.district;
|
||||
}
|
||||
|
||||
function deleteLicense() {
|
||||
form.value.businessLicense = '';
|
||||
// 上传酒店照片
|
||||
async function uploadHotelImages() {
|
||||
try {
|
||||
uni.showLoading({ title: '上传中...' });
|
||||
const remainCount = 9 - form.value.hotelImages.length;
|
||||
const urls = await chooseAndUpload({ count: remainCount, useSellerToken: true });
|
||||
form.value.hotelImages.push(...urls);
|
||||
uni.showToast({ title: '上传成功', icon: 'success' });
|
||||
} catch (err: any) {
|
||||
uni.showToast({ title: err.message || '上传失败', icon: 'none' });
|
||||
} finally {
|
||||
uni.hideLoading();
|
||||
}
|
||||
}
|
||||
|
||||
function deleteHotelImage(index: number) {
|
||||
form.value.hotelImages.splice(index, 1);
|
||||
}
|
||||
|
||||
// 上传门店营业执照
|
||||
async function uploadStoreLicense() {
|
||||
try {
|
||||
uni.showLoading({ title: '上传中...' });
|
||||
const urls = await chooseAndUpload({ count: 1, useSellerToken: true });
|
||||
form.value.storeLicense = urls[0];
|
||||
uni.showToast({ title: '上传成功', icon: 'success' });
|
||||
} catch (err: any) {
|
||||
uni.showToast({ title: err.message || '上传失败', icon: 'none' });
|
||||
} finally {
|
||||
uni.hideLoading();
|
||||
}
|
||||
}
|
||||
|
||||
// 上传身份证正面(个人)
|
||||
async function uploadIdCardFront() {
|
||||
try {
|
||||
uni.showLoading({ title: '上传中...' });
|
||||
const urls = await chooseAndUpload({ count: 1, useSellerToken: true });
|
||||
form.value.idCardFront = urls[0];
|
||||
uni.showToast({ title: '上传成功', icon: 'success' });
|
||||
} catch (err: any) {
|
||||
uni.showToast({ title: err.message || '上传失败', icon: 'none' });
|
||||
} finally {
|
||||
uni.hideLoading();
|
||||
}
|
||||
}
|
||||
|
||||
// 上传身份证反面(个人)
|
||||
async function uploadIdCardBack() {
|
||||
try {
|
||||
uni.showLoading({ title: '上传中...' });
|
||||
const urls = await chooseAndUpload({ count: 1, useSellerToken: true });
|
||||
form.value.idCardBack = urls[0];
|
||||
uni.showToast({ title: '上传成功', icon: 'success' });
|
||||
} catch (err: any) {
|
||||
uni.showToast({ title: err.message || '上传失败', icon: 'none' });
|
||||
} finally {
|
||||
uni.hideLoading();
|
||||
}
|
||||
}
|
||||
|
||||
// 上传法人身份证正面
|
||||
async function uploadLegalIdCardFront() {
|
||||
try {
|
||||
uni.showLoading({ title: '上传中...' });
|
||||
const urls = await chooseAndUpload({ count: 1, useSellerToken: true });
|
||||
form.value.legalIdCardFront = urls[0];
|
||||
uni.showToast({ title: '上传成功', icon: 'success' });
|
||||
} catch (err: any) {
|
||||
uni.showToast({ title: err.message || '上传失败', icon: 'none' });
|
||||
} finally {
|
||||
uni.hideLoading();
|
||||
}
|
||||
}
|
||||
|
||||
// 上传法人身份证反面
|
||||
async function uploadLegalIdCardBack() {
|
||||
try {
|
||||
uni.showLoading({ title: '上传中...' });
|
||||
const urls = await chooseAndUpload({ count: 1, useSellerToken: true });
|
||||
form.value.legalIdCardBack = urls[0];
|
||||
uni.showToast({ title: '上传成功', icon: 'success' });
|
||||
} catch (err: any) {
|
||||
uni.showToast({ title: err.message || '上传失败', icon: 'none' });
|
||||
} finally {
|
||||
uni.hideLoading();
|
||||
}
|
||||
}
|
||||
|
||||
// 上传营业执照
|
||||
async function uploadLicense() {
|
||||
try {
|
||||
uni.showLoading({ title: '上传中...' });
|
||||
@@ -180,9 +594,52 @@ async function uploadLicense() {
|
||||
}
|
||||
}
|
||||
|
||||
function validateForm(): boolean {
|
||||
const { shopName, phone, businessLicense } = form.value;
|
||||
// 上传开户营业执照
|
||||
async function uploadBankLicense() {
|
||||
try {
|
||||
uni.showLoading({ title: '上传中...' });
|
||||
const urls = await chooseAndUpload({ count: 1, useSellerToken: true });
|
||||
form.value.bankLicense = urls[0];
|
||||
uni.showToast({ title: '上传成功', icon: 'success' });
|
||||
} catch (err: any) {
|
||||
uni.showToast({ title: err.message || '上传失败', icon: 'none' });
|
||||
} finally {
|
||||
uni.hideLoading();
|
||||
}
|
||||
}
|
||||
|
||||
// 上传开户身份证正面
|
||||
async function uploadAccountIdCardFront() {
|
||||
try {
|
||||
uni.showLoading({ title: '上传中...' });
|
||||
const urls = await chooseAndUpload({ count: 1, useSellerToken: true });
|
||||
form.value.accountIdCardFront = urls[0];
|
||||
uni.showToast({ title: '上传成功', icon: 'success' });
|
||||
} catch (err: any) {
|
||||
uni.showToast({ title: err.message || '上传失败', icon: 'none' });
|
||||
} finally {
|
||||
uni.hideLoading();
|
||||
}
|
||||
}
|
||||
|
||||
// 上传开户身份证反面
|
||||
async function uploadAccountIdCardBack() {
|
||||
try {
|
||||
uni.showLoading({ title: '上传中...' });
|
||||
const urls = await chooseAndUpload({ count: 1, useSellerToken: true });
|
||||
form.value.accountIdCardBack = urls[0];
|
||||
uni.showToast({ title: '上传成功', icon: 'success' });
|
||||
} catch (err: any) {
|
||||
uni.showToast({ title: err.message || '上传失败', icon: 'none' });
|
||||
} finally {
|
||||
uni.hideLoading();
|
||||
}
|
||||
}
|
||||
|
||||
function validateForm(): boolean {
|
||||
const { shopName, phone, contractType, accountType } = form.value;
|
||||
|
||||
// 基本信息验证
|
||||
if (!shopName || shopName.length < 2) {
|
||||
uni.showToast({ title: '店铺名称至少2个字', icon: 'none' });
|
||||
return false;
|
||||
@@ -193,11 +650,77 @@ function validateForm(): boolean {
|
||||
return false;
|
||||
}
|
||||
|
||||
if (!businessLicense) {
|
||||
uni.showToast({ title: '请上传营业执照', icon: 'none' });
|
||||
if (!form.value.storeLicense) {
|
||||
uni.showToast({ title: '请上传门店营业执照', icon: 'none' });
|
||||
return false;
|
||||
}
|
||||
|
||||
// 签约资料验证
|
||||
if (contractType === 'personal') {
|
||||
if (!form.value.idCardFront) {
|
||||
uni.showToast({ title: '请上传身份证正面', icon: 'none' });
|
||||
return false;
|
||||
}
|
||||
if (!form.value.idCardBack) {
|
||||
uni.showToast({ title: '请上传身份证反面', icon: 'none' });
|
||||
return false;
|
||||
}
|
||||
} else if (contractType === 'company') {
|
||||
if (!form.value.legalIdCardFront) {
|
||||
uni.showToast({ title: '请上传法人身份证正面', icon: 'none' });
|
||||
return false;
|
||||
}
|
||||
if (!form.value.legalIdCardBack) {
|
||||
uni.showToast({ title: '请上传法人身份证反面', icon: 'none' });
|
||||
return false;
|
||||
}
|
||||
if (!form.value.businessLicense) {
|
||||
uni.showToast({ title: '请上传营业执照', icon: 'none' });
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
// 财务信息验证
|
||||
if (accountType === 'company') {
|
||||
if (!form.value.bankName) {
|
||||
uni.showToast({ title: '请填写收款银行', icon: 'none' });
|
||||
return false;
|
||||
}
|
||||
if (!form.value.bankAccount) {
|
||||
uni.showToast({ title: '请填写银行账号', icon: 'none' });
|
||||
return false;
|
||||
}
|
||||
if (!form.value.bankLicense) {
|
||||
uni.showToast({ title: '请上传开户营业执照', icon: 'none' });
|
||||
return false;
|
||||
}
|
||||
} else if (accountType === 'personal') {
|
||||
if (!form.value.accountName) {
|
||||
uni.showToast({ title: '请填写开户名', icon: 'none' });
|
||||
return false;
|
||||
}
|
||||
if (!form.value.bankAccount) {
|
||||
uni.showToast({ title: '请填写开户账号', icon: 'none' });
|
||||
return false;
|
||||
}
|
||||
if (!form.value.bankName) {
|
||||
uni.showToast({ title: '请填写开户银行', icon: 'none' });
|
||||
return false;
|
||||
}
|
||||
if (!form.value.bankBranch) {
|
||||
uni.showToast({ title: '请填写支行信息', icon: 'none' });
|
||||
return false;
|
||||
}
|
||||
if (!form.value.accountIdCardFront) {
|
||||
uni.showToast({ title: '请上传开户身份证正面', icon: 'none' });
|
||||
return false;
|
||||
}
|
||||
if (!form.value.accountIdCardBack) {
|
||||
uni.showToast({ title: '请上传开户身份证反面', icon: 'none' });
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -208,16 +731,38 @@ async function handleSubmit() {
|
||||
|
||||
try {
|
||||
const res = await updateMerchant({
|
||||
// 基本信息
|
||||
shopName: form.value.shopName,
|
||||
phone: form.value.phone,
|
||||
province: form.value.province,
|
||||
city: form.value.city,
|
||||
district: form.value.district,
|
||||
address: form.value.address,
|
||||
description: form.value.description,
|
||||
storeLicense: form.value.storeLicense,
|
||||
|
||||
// 酒店照片
|
||||
hotelImages: form.value.hotelImages.join(','),
|
||||
|
||||
// 签约资料
|
||||
contractType: form.value.contractType,
|
||||
idCardFront: form.value.idCardFront,
|
||||
idCardBack: form.value.idCardBack,
|
||||
legalIdCardFront: form.value.legalIdCardFront,
|
||||
legalIdCardBack: form.value.legalIdCardBack,
|
||||
businessLicense: form.value.businessLicense,
|
||||
licenseNo: form.value.licenseNo,
|
||||
legalPerson: form.value.legalPerson,
|
||||
description: form.value.description,
|
||||
|
||||
// 财务信息
|
||||
accountType: form.value.accountType,
|
||||
accountName: form.value.accountName,
|
||||
bankAccount: form.value.bankAccount,
|
||||
bankName: form.value.bankName,
|
||||
bankBranch: form.value.bankBranch,
|
||||
bankLicense: form.value.bankLicense,
|
||||
accountIdCardFront: form.value.accountIdCardFront,
|
||||
accountIdCardBack: form.value.accountIdCardBack,
|
||||
});
|
||||
|
||||
uni.showToast({ title: '修改成功', icon: 'success' });
|
||||
@@ -246,17 +791,36 @@ async function handleSubmit() {
|
||||
min-height: 100vh;
|
||||
background: $bg-page;
|
||||
padding: $spacing-xl;
|
||||
padding-bottom: 200rpx;
|
||||
}
|
||||
|
||||
.form-section {
|
||||
background: $bg-card;
|
||||
border-radius: $radius-lg;
|
||||
padding: $spacing-xl;
|
||||
padding: $spacing-2xl;
|
||||
margin-bottom: $spacing-xl;
|
||||
border: 1rpx solid $border-light;
|
||||
}
|
||||
|
||||
.section-title {
|
||||
font-size: $font-lg;
|
||||
font-weight: $font-semibold;
|
||||
color: $text-primary;
|
||||
margin-bottom: $spacing-xs;
|
||||
}
|
||||
|
||||
.section-desc {
|
||||
font-size: $font-xs;
|
||||
color: $text-secondary;
|
||||
margin-bottom: $spacing-xl;
|
||||
}
|
||||
|
||||
.form-item {
|
||||
margin-bottom: $spacing-2xl;
|
||||
|
||||
&:last-child {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
}
|
||||
|
||||
.label {
|
||||
@@ -279,7 +843,9 @@ async function handleSubmit() {
|
||||
background: $bg-page;
|
||||
border-radius: $radius-base;
|
||||
padding: 0 $spacing-xl;
|
||||
font-size: $font-md;
|
||||
font-size: $font-base;
|
||||
color: $text-primary;
|
||||
box-sizing: border-box;
|
||||
border: 2rpx solid $border-light;
|
||||
transition: all 0.2s ease;
|
||||
|
||||
@@ -291,11 +857,13 @@ async function handleSubmit() {
|
||||
|
||||
.textarea {
|
||||
width: 100%;
|
||||
height: 160rpx;
|
||||
min-height: 160rpx;
|
||||
background: $bg-page;
|
||||
border-radius: $radius-base;
|
||||
padding: $spacing-xl;
|
||||
font-size: $font-md;
|
||||
font-size: $font-base;
|
||||
color: $text-primary;
|
||||
box-sizing: border-box;
|
||||
border: 2rpx solid $border-light;
|
||||
transition: all 0.2s ease;
|
||||
|
||||
@@ -305,25 +873,66 @@ async function handleSubmit() {
|
||||
}
|
||||
}
|
||||
|
||||
.picker-value {
|
||||
/* 单选组 */
|
||||
.radio-group {
|
||||
display: flex;
|
||||
gap: $spacing-xl;
|
||||
}
|
||||
|
||||
.radio-item {
|
||||
flex: 1;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
gap: $spacing-sm;
|
||||
height: 88rpx;
|
||||
background: $bg-page;
|
||||
border-radius: $radius-base;
|
||||
padding: 0 $spacing-xl;
|
||||
font-size: $font-md;
|
||||
font-size: $font-base;
|
||||
color: $text-secondary;
|
||||
border: 2rpx solid $border-light;
|
||||
transition: all 0.2s ease;
|
||||
|
||||
&.active {
|
||||
background: $primary-bg;
|
||||
color: $primary-color;
|
||||
border-color: $primary-color;
|
||||
}
|
||||
}
|
||||
|
||||
.radio-icon {
|
||||
width: 32rpx;
|
||||
height: 32rpx;
|
||||
border-radius: 50%;
|
||||
border: 2rpx solid $border-base;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
border: 2rpx solid $border-light;
|
||||
justify-content: center;
|
||||
transition: all 0.2s ease;
|
||||
|
||||
.radio-item.active & {
|
||||
border-color: $primary-color;
|
||||
}
|
||||
}
|
||||
|
||||
.placeholder {
|
||||
color: $text-placeholder;
|
||||
.radio-dot {
|
||||
width: 16rpx;
|
||||
height: 16rpx;
|
||||
border-radius: 50%;
|
||||
background: $primary-color;
|
||||
}
|
||||
|
||||
/* 上传区域 */
|
||||
.upload-section {
|
||||
display: flex;
|
||||
}
|
||||
|
||||
.upload-grid {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
gap: $spacing-md;
|
||||
}
|
||||
|
||||
.upload-btn {
|
||||
width: 200rpx;
|
||||
height: 200rpx;
|
||||
@@ -334,17 +943,22 @@ async function handleSubmit() {
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
border: 2rpx dashed $border-base;
|
||||
transition: all 0.2s ease;
|
||||
|
||||
&:active {
|
||||
background: $bg-hover;
|
||||
}
|
||||
}
|
||||
|
||||
.upload-icon {
|
||||
font-size: 48rpx;
|
||||
color: $text-tertiary;
|
||||
margin-bottom: $spacing-xs;
|
||||
}
|
||||
|
||||
.upload-text {
|
||||
font-size: $font-xs;
|
||||
color: $text-tertiary;
|
||||
margin-top: $spacing-xs;
|
||||
}
|
||||
|
||||
.image-preview {
|
||||
@@ -353,6 +967,7 @@ async function handleSubmit() {
|
||||
background: $bg-page;
|
||||
border-radius: $radius-base;
|
||||
position: relative;
|
||||
overflow: hidden;
|
||||
border: 1rpx solid $border-light;
|
||||
}
|
||||
|
||||
@@ -364,22 +979,24 @@ async function handleSubmit() {
|
||||
|
||||
.delete-btn {
|
||||
position: absolute;
|
||||
top: -16rpx;
|
||||
right: -16rpx;
|
||||
width: 40rpx;
|
||||
height: 40rpx;
|
||||
top: -12rpx;
|
||||
right: -12rpx;
|
||||
width: 48rpx;
|
||||
height: 48rpx;
|
||||
background: $error-color;
|
||||
border-radius: 50%;
|
||||
color: #fff;
|
||||
font-size: $font-base;
|
||||
font-size: 32rpx;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
z-index: 10;
|
||||
}
|
||||
|
||||
/* 提交按钮 */
|
||||
.submit-btn {
|
||||
width: 100%;
|
||||
height: 88rpx;
|
||||
height: 96rpx;
|
||||
background: $primary-color;
|
||||
color: #fff;
|
||||
font-size: $font-lg;
|
||||
@@ -389,6 +1006,10 @@ async function handleSubmit() {
|
||||
margin-top: $spacing-3xl;
|
||||
transition: all 0.2s ease;
|
||||
|
||||
&::after {
|
||||
border: none;
|
||||
}
|
||||
|
||||
&:active:not([disabled]) {
|
||||
background: $primary-dark;
|
||||
}
|
||||
@@ -399,11 +1020,12 @@ async function handleSubmit() {
|
||||
}
|
||||
}
|
||||
|
||||
/* 提示信息 */
|
||||
.tips {
|
||||
margin-top: $spacing-2xl;
|
||||
padding: $spacing-xl;
|
||||
padding: $spacing-2xl;
|
||||
background: $bg-card;
|
||||
border-radius: $radius-base;
|
||||
border-radius: $radius-lg;
|
||||
border: 2rpx solid $warning-color;
|
||||
}
|
||||
|
||||
@@ -412,13 +1034,30 @@ async function handleSubmit() {
|
||||
font-weight: $font-semibold;
|
||||
color: $warning-color;
|
||||
margin-bottom: $spacing-md;
|
||||
display: block;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: $spacing-xs;
|
||||
|
||||
&::before {
|
||||
content: '!';
|
||||
width: 32rpx;
|
||||
height: 32rpx;
|
||||
background: $warning-color;
|
||||
color: #fff;
|
||||
border-radius: 50%;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
font-size: $font-lg;
|
||||
font-weight: $font-bold;
|
||||
}
|
||||
}
|
||||
|
||||
.tips-text {
|
||||
font-size: $font-xs;
|
||||
font-size: $font-sm;
|
||||
color: $text-secondary;
|
||||
display: block;
|
||||
margin-top: $spacing-xs;
|
||||
margin-top: $spacing-sm;
|
||||
line-height: 1.6;
|
||||
}
|
||||
</style>
|
||||
Generated
+268
-30
@@ -47,13 +47,13 @@ importers:
|
||||
version: 18.3.7(@types/react@18.3.28)
|
||||
'@vitejs/plugin-react':
|
||||
specifier: ^4.3.0
|
||||
version: 4.7.0(vite@5.4.21(@types/node@24.12.2)(sass@1.99.0)(terser@5.46.2))
|
||||
version: 4.7.0(vite@5.4.21(@types/node@24.12.2)(sass-embedded@1.99.0)(sass@1.99.0)(terser@5.46.2))
|
||||
typescript:
|
||||
specifier: ^5.5.0
|
||||
version: 5.9.3
|
||||
vite:
|
||||
specifier: ^5.4.0
|
||||
version: 5.4.21(@types/node@24.12.2)(sass@1.99.0)(terser@5.46.2)
|
||||
version: 5.4.21(@types/node@24.12.2)(sass-embedded@1.99.0)(sass@1.99.0)(terser@5.46.2)
|
||||
|
||||
apps/miniapp:
|
||||
dependencies:
|
||||
@@ -62,10 +62,10 @@ importers:
|
||||
version: 3.0.0-5000720260410001(@dcloudio/types@3.4.31)(postcss@8.5.10)(rollup@4.60.2)(ts-node@10.9.2(@types/node@22.19.17)(typescript@5.9.3))(vue@3.5.33(typescript@5.9.3))
|
||||
'@dcloudio/uni-app-harmony':
|
||||
specifier: 3.0.0-5000720260410001
|
||||
version: 3.0.0-5000720260410001(postcss@8.5.10)(rollup@4.60.2)(ts-node@10.9.2(@types/node@22.19.17)(typescript@5.9.3))(vite@5.4.21(@types/node@22.19.17)(sass@1.99.0)(terser@5.46.2))(vue@3.5.33(typescript@5.9.3))
|
||||
version: 3.0.0-5000720260410001(postcss@8.5.10)(rollup@4.60.2)(ts-node@10.9.2(@types/node@22.19.17)(typescript@5.9.3))(vite@5.4.21(@types/node@22.19.17)(sass-embedded@1.99.0)(sass@1.99.0)(terser@5.46.2))(vue@3.5.33(typescript@5.9.3))
|
||||
'@dcloudio/uni-app-plus':
|
||||
specifier: 3.0.0-5000720260410001
|
||||
version: 3.0.0-5000720260410001(postcss@8.5.10)(rollup@4.60.2)(ts-node@10.9.2(@types/node@22.19.17)(typescript@5.9.3))(vite@5.4.21(@types/node@22.19.17)(sass@1.99.0)(terser@5.46.2))(vue@3.5.33(typescript@5.9.3))
|
||||
version: 3.0.0-5000720260410001(postcss@8.5.10)(rollup@4.60.2)(ts-node@10.9.2(@types/node@22.19.17)(typescript@5.9.3))(vite@5.4.21(@types/node@22.19.17)(sass-embedded@1.99.0)(sass@1.99.0)(terser@5.46.2))(vue@3.5.33(typescript@5.9.3))
|
||||
'@dcloudio/uni-components':
|
||||
specifier: 3.0.0-5000720260410001
|
||||
version: 3.0.0-5000720260410001(postcss@8.5.10)(rollup@4.60.2)(ts-node@10.9.2(@types/node@22.19.17)(typescript@5.9.3))(vue@3.5.33(typescript@5.9.3))
|
||||
@@ -132,7 +132,7 @@ importers:
|
||||
version: 3.0.0-5000720260410001
|
||||
'@dcloudio/vite-plugin-uni':
|
||||
specifier: 3.0.0-5000720260410001
|
||||
version: 3.0.0-5000720260410001(postcss@8.5.10)(rollup@4.60.2)(ts-node@10.9.2(@types/node@22.19.17)(typescript@5.9.3))(vite@5.4.21(@types/node@22.19.17)(sass@1.99.0)(terser@5.46.2))(vue@3.5.33(typescript@5.9.3))
|
||||
version: 3.0.0-5000720260410001(postcss@8.5.10)(rollup@4.60.2)(ts-node@10.9.2(@types/node@22.19.17)(typescript@5.9.3))(vite@5.4.21(@types/node@22.19.17)(sass-embedded@1.99.0)(sass@1.99.0)(terser@5.46.2))(vue@3.5.33(typescript@5.9.3))
|
||||
'@types/node':
|
||||
specifier: ^22.0.0
|
||||
version: 22.19.17
|
||||
@@ -140,14 +140,17 @@ importers:
|
||||
specifier: ^3.4.21
|
||||
version: 3.5.33
|
||||
sass:
|
||||
specifier: ^1.77.0
|
||||
specifier: ^1.83.0
|
||||
version: 1.99.0
|
||||
sass-embedded:
|
||||
specifier: ^1.83.0
|
||||
version: 1.99.0
|
||||
typescript:
|
||||
specifier: ^5.5.0
|
||||
version: 5.9.3
|
||||
vite:
|
||||
specifier: ^5.2.8
|
||||
version: 5.4.21(@types/node@22.19.17)(sass@1.99.0)(terser@5.46.2)
|
||||
version: 5.4.21(@types/node@22.19.17)(sass-embedded@1.99.0)(sass@1.99.0)(terser@5.46.2)
|
||||
|
||||
apps/platform-admin:
|
||||
dependencies:
|
||||
@@ -184,13 +187,13 @@ importers:
|
||||
version: 18.3.7(@types/react@18.3.28)
|
||||
'@vitejs/plugin-react':
|
||||
specifier: ^4.3.0
|
||||
version: 4.7.0(vite@5.4.21(@types/node@24.12.2)(sass@1.99.0)(terser@5.46.2))
|
||||
version: 4.7.0(vite@5.4.21(@types/node@24.12.2)(sass-embedded@1.99.0)(sass@1.99.0)(terser@5.46.2))
|
||||
typescript:
|
||||
specifier: ^5.5.0
|
||||
version: 5.9.3
|
||||
vite:
|
||||
specifier: ^5.4.0
|
||||
version: 5.4.21(@types/node@24.12.2)(sass@1.99.0)(terser@5.46.2)
|
||||
version: 5.4.21(@types/node@24.12.2)(sass-embedded@1.99.0)(sass@1.99.0)(terser@5.46.2)
|
||||
|
||||
apps/server:
|
||||
dependencies:
|
||||
@@ -1046,6 +1049,9 @@ packages:
|
||||
'@borewit/text-codec@0.2.2':
|
||||
resolution: {integrity: sha512-DDaRehssg1aNrH4+2hnj1B7vnUGEjU6OIlyRdkMd0aUdIUvKXrJfXsy8LVtXAy7DRvYVluWbMspsRhz2lcW0mQ==}
|
||||
|
||||
'@bufbuild/protobuf@2.12.0':
|
||||
resolution: {integrity: sha512-B/XlCaFIP8LOwzo+bz5uFzATYokcwCKQcghqnlfwSmM5eX/qTkvDBnDPs+gXtX/RyjxJ4DRikECcPJbyALA8FA==}
|
||||
|
||||
'@colors/colors@1.5.0':
|
||||
resolution: {integrity: sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==}
|
||||
engines: {node: '>=0.1.90'}
|
||||
@@ -3499,6 +3505,9 @@ packages:
|
||||
color-name@1.1.4:
|
||||
resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==}
|
||||
|
||||
colorjs.io@0.5.2:
|
||||
resolution: {integrity: sha512-twmVoizEW7ylZSN32OgKdXRmo1qg+wT5/6C3xu5b9QsWzSFAhHLn2xd8ro0diCsKfCj1RdaTP/nrcW+vAoQPIw==}
|
||||
|
||||
combined-stream@1.0.8:
|
||||
resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==}
|
||||
engines: {node: '>= 0.8'}
|
||||
@@ -5909,6 +5918,123 @@ packages:
|
||||
safer-buffer@2.1.2:
|
||||
resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==}
|
||||
|
||||
sass-embedded-all-unknown@1.99.0:
|
||||
resolution: {integrity: sha512-qPIRG8Uhjo6/OKyAKixTnwMliTz+t9K6Duk0mx5z+K7n0Ts38NSJz2sjDnc7cA/8V9Lb3q09H38dZ1CLwD+ssw==}
|
||||
cpu: ['!arm', '!arm64', '!riscv64', '!x64']
|
||||
|
||||
sass-embedded-android-arm64@1.99.0:
|
||||
resolution: {integrity: sha512-fNHhdnP23yqqieCbAdym4N47AleSwjbNt6OYIYx4DdACGdtERjQB4iOX/TaKsW034MupfF7SjnAAK8w7Ptldtg==}
|
||||
engines: {node: '>=14.0.0'}
|
||||
cpu: [arm64]
|
||||
os: [android]
|
||||
|
||||
sass-embedded-android-arm@1.99.0:
|
||||
resolution: {integrity: sha512-EHvJ0C7/VuP78Qr6f8gIUVUmCqIorEQpw2yp3cs3SMg02ZuumlhjXvkTcFBxHmFdFR23vTNk1WnhY6QSeV1nFQ==}
|
||||
engines: {node: '>=14.0.0'}
|
||||
cpu: [arm]
|
||||
os: [android]
|
||||
|
||||
sass-embedded-android-riscv64@1.99.0:
|
||||
resolution: {integrity: sha512-4zqDFRvgGDTL5vTHuIhRxUpXFoh0Cy7Gm5Ywk19ASd8Settmd14YdPRZPmMxfgS1GH292PofV1fq1ifiSEJWBw==}
|
||||
engines: {node: '>=14.0.0'}
|
||||
cpu: [riscv64]
|
||||
os: [android]
|
||||
|
||||
sass-embedded-android-x64@1.99.0:
|
||||
resolution: {integrity: sha512-Uk53k/dGYt04RjOL4gFjZ0Z9DH9DKh8IA8WsXUkNqsxerAygoy3zqRBS2zngfE9K2jiOM87q+1R1p87ory9oQQ==}
|
||||
engines: {node: '>=14.0.0'}
|
||||
cpu: [x64]
|
||||
os: [android]
|
||||
|
||||
sass-embedded-darwin-arm64@1.99.0:
|
||||
resolution: {integrity: sha512-u61/7U3IGLqoO6gL+AHeiAtlTPFwJK1+964U8gp45ZN0hzh1yrARf5O1mivXv8NnNgJvbG2wWJbiNZP0lG/lTg==}
|
||||
engines: {node: '>=14.0.0'}
|
||||
cpu: [arm64]
|
||||
os: [darwin]
|
||||
|
||||
sass-embedded-darwin-x64@1.99.0:
|
||||
resolution: {integrity: sha512-j/kkk/NcXdIameLezSfXjgCiBkVcA+G60AXrX768/3g0miK1g7M9dj7xOhCb1i7/wQeiEI3rw2LLuO63xRIn4A==}
|
||||
engines: {node: '>=14.0.0'}
|
||||
cpu: [x64]
|
||||
os: [darwin]
|
||||
|
||||
sass-embedded-linux-arm64@1.99.0:
|
||||
resolution: {integrity: sha512-btNcFpItcB56L40n8hDeL7sRSMLDXQ56nB5h2deddJx1n60rpKSElJmkaDGHtpkrY+CTtDRV0FZDjHeTJddYew==}
|
||||
engines: {node: '>=14.0.0'}
|
||||
cpu: [arm64]
|
||||
os: [linux]
|
||||
libc: glibc
|
||||
|
||||
sass-embedded-linux-arm@1.99.0:
|
||||
resolution: {integrity: sha512-d4IjJZrX2+AwB2YCy1JySwdptJECNP/WfAQLUl8txI3ka8/d3TUI155GtelnoZUkio211PwIeFvvAeZ9RXPQnw==}
|
||||
engines: {node: '>=14.0.0'}
|
||||
cpu: [arm]
|
||||
os: [linux]
|
||||
libc: glibc
|
||||
|
||||
sass-embedded-linux-musl-arm64@1.99.0:
|
||||
resolution: {integrity: sha512-Hi2bt/IrM5P4FBKz6EcHAlniwfpoz9mnTdvSd58y+avA3SANM76upIkAdSayA8ZGwyL3gZokru1AKDPF9lJDNw==}
|
||||
engines: {node: '>=14.0.0'}
|
||||
cpu: [arm64]
|
||||
os: [linux]
|
||||
libc: musl
|
||||
|
||||
sass-embedded-linux-musl-arm@1.99.0:
|
||||
resolution: {integrity: sha512-2gvHOupgIw3ytatXT4nFUow71LFbuOZPEwG+HUzcNQDH8ue4Ez8cr03vsv5MDv3lIjOKcXwDvWD980t18MwkoQ==}
|
||||
engines: {node: '>=14.0.0'}
|
||||
cpu: [arm]
|
||||
os: [linux]
|
||||
libc: musl
|
||||
|
||||
sass-embedded-linux-musl-riscv64@1.99.0:
|
||||
resolution: {integrity: sha512-mKqGvVaJ9rHMqyZsF0kikQe4NO0f4osb67+X6nLhBiVDKvyazQHJ3zJQreNefIE36yL2sjHIclSB//MprzaQDg==}
|
||||
engines: {node: '>=14.0.0'}
|
||||
cpu: [riscv64]
|
||||
os: [linux]
|
||||
libc: musl
|
||||
|
||||
sass-embedded-linux-musl-x64@1.99.0:
|
||||
resolution: {integrity: sha512-huhgOMmOc30r7CH7qbRbT9LerSEGSnWuS4CYNOskr9BvNeQp4dIneFufNRGZ7hkOAxUM8DglxIZJN/cyAT95Ew==}
|
||||
engines: {node: '>=14.0.0'}
|
||||
cpu: [x64]
|
||||
os: [linux]
|
||||
libc: musl
|
||||
|
||||
sass-embedded-linux-riscv64@1.99.0:
|
||||
resolution: {integrity: sha512-mevFPIFAVhrH90THifxLfOntFmHtcEKOcdWnep2gJ0X4DVva4AiVIRlQe/7w9JFx5+gnDRE1oaJJkzuFUuYZsA==}
|
||||
engines: {node: '>=14.0.0'}
|
||||
cpu: [riscv64]
|
||||
os: [linux]
|
||||
libc: glibc
|
||||
|
||||
sass-embedded-linux-x64@1.99.0:
|
||||
resolution: {integrity: sha512-9k7IkULqIZdCIVt4Mboryt6vN8Mjmm3EhI1P3mClU5y5i3wLK5ExC3cbVWk047KsID/fvB1RLslqghXJx5BoxA==}
|
||||
engines: {node: '>=14.0.0'}
|
||||
cpu: [x64]
|
||||
os: [linux]
|
||||
libc: glibc
|
||||
|
||||
sass-embedded-unknown-all@1.99.0:
|
||||
resolution: {integrity: sha512-P7MxiUtL/XzGo3PX0CaB8lNNEFLQWKikPA8pbKytx9ZCLZSDkt2NJcdAbblB/sqMs4AV3EK2NadV8rI/diq3xg==}
|
||||
os: ['!android', '!darwin', '!linux', '!win32']
|
||||
|
||||
sass-embedded-win32-arm64@1.99.0:
|
||||
resolution: {integrity: sha512-8whpsW7S+uO8QApKfQuc36m3P9EISzbVZOgC79goob4qGy09u8Gz/rYvw8h1prJDSjltpHGhOzBE6LDz7WvzVw==}
|
||||
engines: {node: '>=14.0.0'}
|
||||
cpu: [arm64]
|
||||
os: [win32]
|
||||
|
||||
sass-embedded-win32-x64@1.99.0:
|
||||
resolution: {integrity: sha512-ipuOv1R2K4MHeuCEAZGpuUbAgma4gb0sdacyrTjJtMOy/OY9UvWfVlwErdB09KIkp4fPDpQJDJfvYN6bC8jeNg==}
|
||||
engines: {node: '>=14.0.0'}
|
||||
cpu: [x64]
|
||||
os: [win32]
|
||||
|
||||
sass-embedded@1.99.0:
|
||||
resolution: {integrity: sha512-gF/juR1aX02lZHkvwxdF80SapkQeg2fetoDF6gIQkNbSw5YEUFspMkyGTjPjgZSgIHuZpy+Wz4PlebKnLXMjdg==}
|
||||
engines: {node: '>=16.0.0'}
|
||||
hasBin: true
|
||||
|
||||
sass@1.99.0:
|
||||
resolution: {integrity: sha512-kgW13M54DUB7IsIRM5LvJkNlpH+WhMpooUcaWGFARkF1Tc82v9mIWkCbCYf+MBvpIUBSeSOTilpZjEPr2VYE6Q==}
|
||||
engines: {node: '>=14.0.0'}
|
||||
@@ -6163,6 +6289,14 @@ packages:
|
||||
symbol-tree@3.2.4:
|
||||
resolution: {integrity: sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==}
|
||||
|
||||
sync-child-process@1.0.2:
|
||||
resolution: {integrity: sha512-8lD+t2KrrScJ/7KXCSyfhT3/hRq78rC0wBFqNJXv3mZyn6hW2ypM05JmlSvtqRbeq6jqA94oHbxAr2vYsJ8vDA==}
|
||||
engines: {node: '>=16.0.0'}
|
||||
|
||||
sync-message-port@1.2.0:
|
||||
resolution: {integrity: sha512-gAQ9qrUN/UCypHtGFbbe7Rc/f9bzO88IwrG8TDo/aMKAApKyD6E3W4Cm0EfhfBb6Z6SKt59tTCTfD+n1xmAvMg==}
|
||||
engines: {node: '>=16.0.0'}
|
||||
|
||||
synckit@0.11.12:
|
||||
resolution: {integrity: sha512-Bh7QjT8/SuKUIfObSXNHNSK6WHo6J1tHCqJsuaFDP7gP0fkzSfTxI8y85JrppZ0h8l0maIgc2tfuZQ6/t3GtnQ==}
|
||||
engines: {node: ^14.18.0 || >=16.0.0}
|
||||
@@ -6554,6 +6688,9 @@ packages:
|
||||
resolution: {integrity: sha512-TQ5pAGhd5whStmqWvYF4OjQROlmv9SMFVt37qoCBdqRffuuklWYQlCNnEs2ZaIBD1kZRNnikiZOS1eqgkar0iw==}
|
||||
engines: {node: '>= 0.10'}
|
||||
|
||||
varint@6.0.0:
|
||||
resolution: {integrity: sha512-cXEIW6cfr15lFv563k4GuVuW/fiwjknytD37jIOLSdSWuOI6WnO/oKwmP2FQTU2l01LP8/M5TSAJpzUaGe3uWg==}
|
||||
|
||||
vary@1.1.2:
|
||||
resolution: {integrity: sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==}
|
||||
engines: {node: '>= 0.8'}
|
||||
@@ -7754,6 +7891,8 @@ snapshots:
|
||||
|
||||
'@borewit/text-codec@0.2.2': {}
|
||||
|
||||
'@bufbuild/protobuf@2.12.0': {}
|
||||
|
||||
'@colors/colors@1.5.0':
|
||||
optional: true
|
||||
|
||||
@@ -7763,10 +7902,10 @@ snapshots:
|
||||
|
||||
'@dcloudio/types@3.4.31': {}
|
||||
|
||||
'@dcloudio/uni-app-harmony@3.0.0-5000720260410001(postcss@8.5.10)(rollup@4.60.2)(ts-node@10.9.2(@types/node@22.19.17)(typescript@5.9.3))(vite@5.4.21(@types/node@22.19.17)(sass@1.99.0)(terser@5.46.2))(vue@3.5.33(typescript@5.9.3))':
|
||||
'@dcloudio/uni-app-harmony@3.0.0-5000720260410001(postcss@8.5.10)(rollup@4.60.2)(ts-node@10.9.2(@types/node@22.19.17)(typescript@5.9.3))(vite@5.4.21(@types/node@22.19.17)(sass-embedded@1.99.0)(sass@1.99.0)(terser@5.46.2))(vue@3.5.33(typescript@5.9.3))':
|
||||
dependencies:
|
||||
'@dcloudio/uni-app-uts': 3.0.0-5000720260410001(postcss@8.5.10)(rollup@4.60.2)(ts-node@10.9.2(@types/node@22.19.17)(typescript@5.9.3))(vue@3.5.33(typescript@5.9.3))
|
||||
'@dcloudio/uni-app-vite': 3.0.0-5000720260410001(postcss@8.5.10)(rollup@4.60.2)(ts-node@10.9.2(@types/node@22.19.17)(typescript@5.9.3))(vite@5.4.21(@types/node@22.19.17)(sass@1.99.0)(terser@5.46.2))(vue@3.5.33(typescript@5.9.3))
|
||||
'@dcloudio/uni-app-vite': 3.0.0-5000720260410001(postcss@8.5.10)(rollup@4.60.2)(ts-node@10.9.2(@types/node@22.19.17)(typescript@5.9.3))(vite@5.4.21(@types/node@22.19.17)(sass-embedded@1.99.0)(sass@1.99.0)(terser@5.46.2))(vue@3.5.33(typescript@5.9.3))
|
||||
debug: 4.3.7
|
||||
fs-extra: 10.1.0
|
||||
licia: 1.41.1
|
||||
@@ -7781,10 +7920,10 @@ snapshots:
|
||||
- vite
|
||||
- vue
|
||||
|
||||
'@dcloudio/uni-app-plus@3.0.0-5000720260410001(postcss@8.5.10)(rollup@4.60.2)(ts-node@10.9.2(@types/node@22.19.17)(typescript@5.9.3))(vite@5.4.21(@types/node@22.19.17)(sass@1.99.0)(terser@5.46.2))(vue@3.5.33(typescript@5.9.3))':
|
||||
'@dcloudio/uni-app-plus@3.0.0-5000720260410001(postcss@8.5.10)(rollup@4.60.2)(ts-node@10.9.2(@types/node@22.19.17)(typescript@5.9.3))(vite@5.4.21(@types/node@22.19.17)(sass-embedded@1.99.0)(sass@1.99.0)(terser@5.46.2))(vue@3.5.33(typescript@5.9.3))':
|
||||
dependencies:
|
||||
'@dcloudio/uni-app-uts': 3.0.0-5000720260410001(postcss@8.5.10)(rollup@4.60.2)(ts-node@10.9.2(@types/node@22.19.17)(typescript@5.9.3))(vue@3.5.33(typescript@5.9.3))
|
||||
'@dcloudio/uni-app-vite': 3.0.0-5000720260410001(postcss@8.5.10)(rollup@4.60.2)(ts-node@10.9.2(@types/node@22.19.17)(typescript@5.9.3))(vite@5.4.21(@types/node@22.19.17)(sass@1.99.0)(terser@5.46.2))(vue@3.5.33(typescript@5.9.3))
|
||||
'@dcloudio/uni-app-vite': 3.0.0-5000720260410001(postcss@8.5.10)(rollup@4.60.2)(ts-node@10.9.2(@types/node@22.19.17)(typescript@5.9.3))(vite@5.4.21(@types/node@22.19.17)(sass-embedded@1.99.0)(sass@1.99.0)(terser@5.46.2))(vue@3.5.33(typescript@5.9.3))
|
||||
'@dcloudio/uni-app-vue': 3.0.0-5000720260410001
|
||||
debug: 4.3.7
|
||||
fs-extra: 10.1.0
|
||||
@@ -7835,14 +7974,14 @@ snapshots:
|
||||
- ts-node
|
||||
- vue
|
||||
|
||||
'@dcloudio/uni-app-vite@3.0.0-5000720260410001(postcss@8.5.10)(rollup@4.60.2)(ts-node@10.9.2(@types/node@22.19.17)(typescript@5.9.3))(vite@5.4.21(@types/node@22.19.17)(sass@1.99.0)(terser@5.46.2))(vue@3.5.33(typescript@5.9.3))':
|
||||
'@dcloudio/uni-app-vite@3.0.0-5000720260410001(postcss@8.5.10)(rollup@4.60.2)(ts-node@10.9.2(@types/node@22.19.17)(typescript@5.9.3))(vite@5.4.21(@types/node@22.19.17)(sass-embedded@1.99.0)(sass@1.99.0)(terser@5.46.2))(vue@3.5.33(typescript@5.9.3))':
|
||||
dependencies:
|
||||
'@dcloudio/uni-cli-shared': 3.0.0-5000720260410001(postcss@8.5.10)(rollup@4.60.2)(ts-node@10.9.2(@types/node@22.19.17)(typescript@5.9.3))(vue@3.5.33(typescript@5.9.3))
|
||||
'@dcloudio/uni-i18n': 3.0.0-5000720260410001
|
||||
'@dcloudio/uni-nvue-styler': 3.0.0-5000720260410001
|
||||
'@dcloudio/uni-shared': 3.0.0-5000720260410001
|
||||
'@rollup/pluginutils': 5.1.0(rollup@4.60.2)
|
||||
'@vitejs/plugin-vue': 5.2.4(vite@5.4.21(@types/node@22.19.17)(sass@1.99.0)(terser@5.46.2))(vue@3.5.33(typescript@5.9.3))
|
||||
'@vitejs/plugin-vue': 5.2.4(vite@5.4.21(@types/node@22.19.17)(sass-embedded@1.99.0)(sass@1.99.0)(terser@5.46.2))(vue@3.5.33(typescript@5.9.3))
|
||||
'@vue/compiler-dom': 3.4.21
|
||||
'@vue/compiler-sfc': 3.4.21
|
||||
debug: 4.3.7
|
||||
@@ -8367,7 +8506,7 @@ snapshots:
|
||||
- ts-node
|
||||
- vue
|
||||
|
||||
'@dcloudio/vite-plugin-uni@3.0.0-5000720260410001(postcss@8.5.10)(rollup@4.60.2)(ts-node@10.9.2(@types/node@22.19.17)(typescript@5.9.3))(vite@5.4.21(@types/node@22.19.17)(sass@1.99.0)(terser@5.46.2))(vue@3.5.33(typescript@5.9.3))':
|
||||
'@dcloudio/vite-plugin-uni@3.0.0-5000720260410001(postcss@8.5.10)(rollup@4.60.2)(ts-node@10.9.2(@types/node@22.19.17)(typescript@5.9.3))(vite@5.4.21(@types/node@22.19.17)(sass-embedded@1.99.0)(sass@1.99.0)(terser@5.46.2))(vue@3.5.33(typescript@5.9.3))':
|
||||
dependencies:
|
||||
'@babel/core': 7.25.2
|
||||
'@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.25.2)
|
||||
@@ -8376,9 +8515,9 @@ snapshots:
|
||||
'@dcloudio/uni-nvue-styler': 3.0.0-5000720260410001
|
||||
'@dcloudio/uni-shared': 3.0.0-5000720260410001
|
||||
'@rollup/pluginutils': 5.1.0(rollup@4.60.2)
|
||||
'@vitejs/plugin-legacy': 5.3.2(terser@5.46.2)(vite@5.4.21(@types/node@22.19.17)(sass@1.99.0)(terser@5.46.2))
|
||||
'@vitejs/plugin-vue': 5.2.4(vite@5.4.21(@types/node@22.19.17)(sass@1.99.0)(terser@5.46.2))(vue@3.5.33(typescript@5.9.3))
|
||||
'@vitejs/plugin-vue-jsx': 3.1.0(vite@5.4.21(@types/node@22.19.17)(sass@1.99.0)(terser@5.46.2))(vue@3.5.33(typescript@5.9.3))
|
||||
'@vitejs/plugin-legacy': 5.3.2(terser@5.46.2)(vite@5.4.21(@types/node@22.19.17)(sass-embedded@1.99.0)(sass@1.99.0)(terser@5.46.2))
|
||||
'@vitejs/plugin-vue': 5.2.4(vite@5.4.21(@types/node@22.19.17)(sass-embedded@1.99.0)(sass@1.99.0)(terser@5.46.2))(vue@3.5.33(typescript@5.9.3))
|
||||
'@vitejs/plugin-vue-jsx': 3.1.0(vite@5.4.21(@types/node@22.19.17)(sass-embedded@1.99.0)(sass@1.99.0)(terser@5.46.2))(vue@3.5.33(typescript@5.9.3))
|
||||
'@vue/compiler-core': 3.4.21
|
||||
'@vue/compiler-dom': 3.4.21
|
||||
'@vue/compiler-sfc': 3.4.21
|
||||
@@ -8395,7 +8534,7 @@ snapshots:
|
||||
picocolors: 1.1.0
|
||||
terser: 5.46.2
|
||||
unplugin-auto-import: 19.1.0
|
||||
vite: 5.4.21(@types/node@22.19.17)(sass@1.99.0)(terser@5.46.2)
|
||||
vite: 5.4.21(@types/node@22.19.17)(sass-embedded@1.99.0)(sass@1.99.0)(terser@5.46.2)
|
||||
transitivePeerDependencies:
|
||||
- '@nuxt/kit'
|
||||
- '@vueuse/core'
|
||||
@@ -10243,7 +10382,7 @@ snapshots:
|
||||
'@unrs/resolver-binding-win32-x64-msvc@1.11.1':
|
||||
optional: true
|
||||
|
||||
'@vitejs/plugin-legacy@5.3.2(terser@5.46.2)(vite@5.4.21(@types/node@22.19.17)(sass@1.99.0)(terser@5.46.2))':
|
||||
'@vitejs/plugin-legacy@5.3.2(terser@5.46.2)(vite@5.4.21(@types/node@22.19.17)(sass-embedded@1.99.0)(sass@1.99.0)(terser@5.46.2))':
|
||||
dependencies:
|
||||
'@babel/core': 7.25.2
|
||||
'@babel/preset-env': 7.29.2(@babel/core@7.25.2)
|
||||
@@ -10254,11 +10393,11 @@ snapshots:
|
||||
regenerator-runtime: 0.14.1
|
||||
systemjs: 6.15.1
|
||||
terser: 5.46.2
|
||||
vite: 5.4.21(@types/node@22.19.17)(sass@1.99.0)(terser@5.46.2)
|
||||
vite: 5.4.21(@types/node@22.19.17)(sass-embedded@1.99.0)(sass@1.99.0)(terser@5.46.2)
|
||||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
|
||||
'@vitejs/plugin-react@4.7.0(vite@5.4.21(@types/node@24.12.2)(sass@1.99.0)(terser@5.46.2))':
|
||||
'@vitejs/plugin-react@4.7.0(vite@5.4.21(@types/node@24.12.2)(sass-embedded@1.99.0)(sass@1.99.0)(terser@5.46.2))':
|
||||
dependencies:
|
||||
'@babel/core': 7.29.0
|
||||
'@babel/plugin-transform-react-jsx-self': 7.27.1(@babel/core@7.29.0)
|
||||
@@ -10266,23 +10405,23 @@ snapshots:
|
||||
'@rolldown/pluginutils': 1.0.0-beta.27
|
||||
'@types/babel__core': 7.20.5
|
||||
react-refresh: 0.17.0
|
||||
vite: 5.4.21(@types/node@24.12.2)(sass@1.99.0)(terser@5.46.2)
|
||||
vite: 5.4.21(@types/node@24.12.2)(sass-embedded@1.99.0)(sass@1.99.0)(terser@5.46.2)
|
||||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
|
||||
'@vitejs/plugin-vue-jsx@3.1.0(vite@5.4.21(@types/node@22.19.17)(sass@1.99.0)(terser@5.46.2))(vue@3.5.33(typescript@5.9.3))':
|
||||
'@vitejs/plugin-vue-jsx@3.1.0(vite@5.4.21(@types/node@22.19.17)(sass-embedded@1.99.0)(sass@1.99.0)(terser@5.46.2))(vue@3.5.33(typescript@5.9.3))':
|
||||
dependencies:
|
||||
'@babel/core': 7.25.2
|
||||
'@babel/plugin-transform-typescript': 7.28.6(@babel/core@7.25.2)
|
||||
'@vue/babel-plugin-jsx': 1.5.0(@babel/core@7.25.2)
|
||||
vite: 5.4.21(@types/node@22.19.17)(sass@1.99.0)(terser@5.46.2)
|
||||
vite: 5.4.21(@types/node@22.19.17)(sass-embedded@1.99.0)(sass@1.99.0)(terser@5.46.2)
|
||||
vue: 3.5.33(typescript@5.9.3)
|
||||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
|
||||
'@vitejs/plugin-vue@5.2.4(vite@5.4.21(@types/node@22.19.17)(sass@1.99.0)(terser@5.46.2))(vue@3.5.33(typescript@5.9.3))':
|
||||
'@vitejs/plugin-vue@5.2.4(vite@5.4.21(@types/node@22.19.17)(sass-embedded@1.99.0)(sass@1.99.0)(terser@5.46.2))(vue@3.5.33(typescript@5.9.3))':
|
||||
dependencies:
|
||||
vite: 5.4.21(@types/node@22.19.17)(sass@1.99.0)(terser@5.46.2)
|
||||
vite: 5.4.21(@types/node@22.19.17)(sass-embedded@1.99.0)(sass@1.99.0)(terser@5.46.2)
|
||||
vue: 3.5.33(typescript@5.9.3)
|
||||
|
||||
'@vue/babel-helper-vue-transform-on@1.5.0': {}
|
||||
@@ -11060,6 +11199,8 @@ snapshots:
|
||||
|
||||
color-name@1.1.4: {}
|
||||
|
||||
colorjs.io@0.5.2: {}
|
||||
|
||||
combined-stream@1.0.8:
|
||||
dependencies:
|
||||
delayed-stream: 1.0.0
|
||||
@@ -14005,6 +14146,93 @@ snapshots:
|
||||
|
||||
safer-buffer@2.1.2: {}
|
||||
|
||||
sass-embedded-all-unknown@1.99.0:
|
||||
dependencies:
|
||||
sass: 1.99.0
|
||||
optional: true
|
||||
|
||||
sass-embedded-android-arm64@1.99.0:
|
||||
optional: true
|
||||
|
||||
sass-embedded-android-arm@1.99.0:
|
||||
optional: true
|
||||
|
||||
sass-embedded-android-riscv64@1.99.0:
|
||||
optional: true
|
||||
|
||||
sass-embedded-android-x64@1.99.0:
|
||||
optional: true
|
||||
|
||||
sass-embedded-darwin-arm64@1.99.0:
|
||||
optional: true
|
||||
|
||||
sass-embedded-darwin-x64@1.99.0:
|
||||
optional: true
|
||||
|
||||
sass-embedded-linux-arm64@1.99.0:
|
||||
optional: true
|
||||
|
||||
sass-embedded-linux-arm@1.99.0:
|
||||
optional: true
|
||||
|
||||
sass-embedded-linux-musl-arm64@1.99.0:
|
||||
optional: true
|
||||
|
||||
sass-embedded-linux-musl-arm@1.99.0:
|
||||
optional: true
|
||||
|
||||
sass-embedded-linux-musl-riscv64@1.99.0:
|
||||
optional: true
|
||||
|
||||
sass-embedded-linux-musl-x64@1.99.0:
|
||||
optional: true
|
||||
|
||||
sass-embedded-linux-riscv64@1.99.0:
|
||||
optional: true
|
||||
|
||||
sass-embedded-linux-x64@1.99.0:
|
||||
optional: true
|
||||
|
||||
sass-embedded-unknown-all@1.99.0:
|
||||
dependencies:
|
||||
sass: 1.99.0
|
||||
optional: true
|
||||
|
||||
sass-embedded-win32-arm64@1.99.0:
|
||||
optional: true
|
||||
|
||||
sass-embedded-win32-x64@1.99.0:
|
||||
optional: true
|
||||
|
||||
sass-embedded@1.99.0:
|
||||
dependencies:
|
||||
'@bufbuild/protobuf': 2.12.0
|
||||
colorjs.io: 0.5.2
|
||||
immutable: 5.1.5
|
||||
rxjs: 7.8.2
|
||||
supports-color: 8.1.1
|
||||
sync-child-process: 1.0.2
|
||||
varint: 6.0.0
|
||||
optionalDependencies:
|
||||
sass-embedded-all-unknown: 1.99.0
|
||||
sass-embedded-android-arm: 1.99.0
|
||||
sass-embedded-android-arm64: 1.99.0
|
||||
sass-embedded-android-riscv64: 1.99.0
|
||||
sass-embedded-android-x64: 1.99.0
|
||||
sass-embedded-darwin-arm64: 1.99.0
|
||||
sass-embedded-darwin-x64: 1.99.0
|
||||
sass-embedded-linux-arm: 1.99.0
|
||||
sass-embedded-linux-arm64: 1.99.0
|
||||
sass-embedded-linux-musl-arm: 1.99.0
|
||||
sass-embedded-linux-musl-arm64: 1.99.0
|
||||
sass-embedded-linux-musl-riscv64: 1.99.0
|
||||
sass-embedded-linux-musl-x64: 1.99.0
|
||||
sass-embedded-linux-riscv64: 1.99.0
|
||||
sass-embedded-linux-x64: 1.99.0
|
||||
sass-embedded-unknown-all: 1.99.0
|
||||
sass-embedded-win32-arm64: 1.99.0
|
||||
sass-embedded-win32-x64: 1.99.0
|
||||
|
||||
sass@1.99.0:
|
||||
dependencies:
|
||||
chokidar: 4.0.3
|
||||
@@ -14311,6 +14539,12 @@ snapshots:
|
||||
|
||||
symbol-tree@3.2.4: {}
|
||||
|
||||
sync-child-process@1.0.2:
|
||||
dependencies:
|
||||
sync-message-port: 1.2.0
|
||||
|
||||
sync-message-port@1.2.0: {}
|
||||
|
||||
synckit@0.11.12:
|
||||
dependencies:
|
||||
'@pkgr/core': 0.2.9
|
||||
@@ -14695,9 +14929,11 @@ snapshots:
|
||||
|
||||
validator@13.15.35: {}
|
||||
|
||||
varint@6.0.0: {}
|
||||
|
||||
vary@1.1.2: {}
|
||||
|
||||
vite@5.4.21(@types/node@22.19.17)(sass@1.99.0)(terser@5.46.2):
|
||||
vite@5.4.21(@types/node@22.19.17)(sass-embedded@1.99.0)(sass@1.99.0)(terser@5.46.2):
|
||||
dependencies:
|
||||
esbuild: 0.21.5
|
||||
postcss: 8.5.10
|
||||
@@ -14706,9 +14942,10 @@ snapshots:
|
||||
'@types/node': 22.19.17
|
||||
fsevents: 2.3.3
|
||||
sass: 1.99.0
|
||||
sass-embedded: 1.99.0
|
||||
terser: 5.46.2
|
||||
|
||||
vite@5.4.21(@types/node@24.12.2)(sass@1.99.0)(terser@5.46.2):
|
||||
vite@5.4.21(@types/node@24.12.2)(sass-embedded@1.99.0)(sass@1.99.0)(terser@5.46.2):
|
||||
dependencies:
|
||||
esbuild: 0.21.5
|
||||
postcss: 8.5.10
|
||||
@@ -14717,6 +14954,7 @@ snapshots:
|
||||
'@types/node': 24.12.2
|
||||
fsevents: 2.3.3
|
||||
sass: 1.99.0
|
||||
sass-embedded: 1.99.0
|
||||
terser: 5.46.2
|
||||
|
||||
vue-demi@0.14.10(vue@3.5.33(typescript@5.9.3)):
|
||||
|
||||
Reference in New Issue
Block a user