feat: add license plugin
parent
24aab5b4bb
commit
16ed5a05ba
|
@ -0,0 +1,13 @@
|
||||||
|
titleAndCommits: true
|
||||||
|
types:
|
||||||
|
- feat
|
||||||
|
- fix
|
||||||
|
- docs
|
||||||
|
- chore
|
||||||
|
- style
|
||||||
|
- refactor
|
||||||
|
- perf
|
||||||
|
- test
|
||||||
|
- build
|
||||||
|
- ci
|
||||||
|
- revert
|
|
@ -31,6 +31,7 @@
|
||||||
"@changesets/git": "^3.0.0",
|
"@changesets/git": "^3.0.0",
|
||||||
"@manypkg/get-packages": "^2.2.1",
|
"@manypkg/get-packages": "^2.2.1",
|
||||||
"consola": "^3.2.3",
|
"consola": "^3.2.3",
|
||||||
|
"dayjs": "^1.11.11",
|
||||||
"find-up": "^7.0.0",
|
"find-up": "^7.0.0",
|
||||||
"nanoid": "^5.0.7",
|
"nanoid": "^5.0.7",
|
||||||
"pkg-types": "^1.1.1",
|
"pkg-types": "^1.1.1",
|
||||||
|
|
|
@ -0,0 +1,10 @@
|
||||||
|
import dayjs from 'dayjs';
|
||||||
|
import timezone from 'dayjs/plugin/timezone';
|
||||||
|
import utc from 'dayjs/plugin/utc';
|
||||||
|
|
||||||
|
dayjs.extend(utc);
|
||||||
|
dayjs.extend(timezone);
|
||||||
|
|
||||||
|
const dateUtil = dayjs().tz('Asia/Shanghai');
|
||||||
|
|
||||||
|
export { dateUtil };
|
|
@ -1,13 +1,9 @@
|
||||||
export { UNICODE } from './constants';
|
export * from './constants';
|
||||||
|
export * from './date';
|
||||||
export * from './git';
|
export * from './git';
|
||||||
export { add as gitAdd, getStagedFiles } from './git';
|
export { add as gitAdd, getStagedFiles } from './git';
|
||||||
export { generatorContentHash } from './hash';
|
export { generatorContentHash } from './hash';
|
||||||
export {
|
export * from './monorepo';
|
||||||
findMonorepoRoot,
|
|
||||||
getPackage,
|
|
||||||
getPackages,
|
|
||||||
getPackagesSync,
|
|
||||||
} from './monorepo';
|
|
||||||
export { toPosixPath } from './path';
|
export { toPosixPath } from './path';
|
||||||
export { prettierFormat } from './prettier';
|
export { prettierFormat } from './prettier';
|
||||||
export type { Package } from '@manypkg/get-packages';
|
export type { Package } from '@manypkg/get-packages';
|
||||||
|
|
|
@ -25,6 +25,7 @@ function defineApplicationConfig(options: DefineApplicationOptions = {}) {
|
||||||
i18n: true,
|
i18n: true,
|
||||||
injectAppLoading: true,
|
injectAppLoading: true,
|
||||||
isBuild,
|
isBuild,
|
||||||
|
license: true,
|
||||||
mock: true,
|
mock: true,
|
||||||
mode,
|
mode,
|
||||||
pwa: true,
|
pwa: true,
|
||||||
|
|
|
@ -1,11 +1,11 @@
|
||||||
|
import type { PluginOption } from 'vite';
|
||||||
|
|
||||||
import {
|
import {
|
||||||
colors,
|
colors,
|
||||||
generatorContentHash,
|
generatorContentHash,
|
||||||
readPackageJSON,
|
readPackageJSON,
|
||||||
} from '@vben/node-utils';
|
} from '@vben/node-utils';
|
||||||
|
|
||||||
import { type PluginOption } from 'vite';
|
|
||||||
|
|
||||||
import { getEnvConfig } from '../utils/env';
|
import { getEnvConfig } from '../utils/env';
|
||||||
|
|
||||||
interface PluginOptions {
|
interface PluginOptions {
|
||||||
|
|
|
@ -27,6 +27,7 @@ import viteVueDevTools from 'vite-plugin-vue-devtools';
|
||||||
import { viteExtraAppConfigPlugin } from './extra-app-config';
|
import { viteExtraAppConfigPlugin } from './extra-app-config';
|
||||||
import { viteImportMapPlugin } from './importmap';
|
import { viteImportMapPlugin } from './importmap';
|
||||||
import { viteInjectAppLoadingPlugin } from './inject-app-loading';
|
import { viteInjectAppLoadingPlugin } from './inject-app-loading';
|
||||||
|
import { viteLicensePlugin } from './license';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取条件成立的 vite 插件
|
* 获取条件成立的 vite 插件
|
||||||
|
@ -94,12 +95,12 @@ async function getApplicationConditionPlugins(
|
||||||
compress,
|
compress,
|
||||||
compressTypes,
|
compressTypes,
|
||||||
extraAppConfig,
|
extraAppConfig,
|
||||||
|
|
||||||
html,
|
html,
|
||||||
i18n,
|
i18n,
|
||||||
importmap,
|
importmap,
|
||||||
importmapOptions,
|
importmapOptions,
|
||||||
injectAppLoading,
|
injectAppLoading,
|
||||||
|
license,
|
||||||
mock,
|
mock,
|
||||||
pwa,
|
pwa,
|
||||||
pwaOptions,
|
pwaOptions,
|
||||||
|
@ -130,6 +131,10 @@ async function getApplicationConditionPlugins(
|
||||||
condition: injectAppLoading,
|
condition: injectAppLoading,
|
||||||
plugins: async () => [await viteInjectAppLoadingPlugin(!!isBuild, env)],
|
plugins: async () => [await viteInjectAppLoadingPlugin(!!isBuild, env)],
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
condition: license,
|
||||||
|
plugins: async () => [await viteLicensePlugin()],
|
||||||
|
},
|
||||||
{
|
{
|
||||||
condition: pwa,
|
condition: pwa,
|
||||||
plugins: () =>
|
plugins: () =>
|
||||||
|
|
|
@ -0,0 +1,76 @@
|
||||||
|
import type {
|
||||||
|
NormalizedOutputOptions,
|
||||||
|
OutputAsset,
|
||||||
|
OutputBundle,
|
||||||
|
OutputChunk,
|
||||||
|
} from 'rollup';
|
||||||
|
import type { PluginOption } from 'vite';
|
||||||
|
|
||||||
|
import { EOL } from 'node:os';
|
||||||
|
|
||||||
|
import { dateUtil, readPackageJSON } from '@vben/node-utils';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 用于将配置文件抽离出来并注入到项目中
|
||||||
|
* @returns
|
||||||
|
*/
|
||||||
|
|
||||||
|
async function viteLicensePlugin(
|
||||||
|
root = process.cwd(),
|
||||||
|
): Promise<PluginOption | undefined> {
|
||||||
|
const {
|
||||||
|
description = '',
|
||||||
|
homepage = '',
|
||||||
|
version = '',
|
||||||
|
} = await readPackageJSON(root);
|
||||||
|
|
||||||
|
return {
|
||||||
|
apply: 'build',
|
||||||
|
enforce: 'post',
|
||||||
|
generateBundle: {
|
||||||
|
handler: (_options: NormalizedOutputOptions, bundle: OutputBundle) => {
|
||||||
|
const date = dateUtil.format('YYYY-MM-DD ');
|
||||||
|
|
||||||
|
const copyrightText = `/*!
|
||||||
|
* Vben Admin Pro
|
||||||
|
* Version: ${version}
|
||||||
|
* Author: vben
|
||||||
|
* Copyright (C) 2024 Vben
|
||||||
|
* License: MIT License
|
||||||
|
* Description: ${description}
|
||||||
|
* Date Created: ${date}
|
||||||
|
* Homepage: ${homepage}
|
||||||
|
* Contact: ann.vben@gmail.com
|
||||||
|
*/
|
||||||
|
`.trim();
|
||||||
|
|
||||||
|
for (const [, fileContent] of Object.entries(bundle)) {
|
||||||
|
if (
|
||||||
|
fileContent.type === 'asset' ||
|
||||||
|
(fileContent.type === 'chunk' && fileContent.isEntry)
|
||||||
|
) {
|
||||||
|
const chunkContent = fileContent as OutputChunk;
|
||||||
|
const assetContent = fileContent as OutputAsset;
|
||||||
|
// 插入版权信息
|
||||||
|
const content =
|
||||||
|
typeof assetContent.source === 'string'
|
||||||
|
? assetContent.source
|
||||||
|
: chunkContent.code;
|
||||||
|
const updatedContent = `${copyrightText}${EOL}${content}`;
|
||||||
|
|
||||||
|
// 更新bundle
|
||||||
|
if (assetContent.source === undefined) {
|
||||||
|
(fileContent as OutputChunk).code = updatedContent;
|
||||||
|
} else {
|
||||||
|
(fileContent as OutputAsset).source = updatedContent;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
order: 'post',
|
||||||
|
},
|
||||||
|
name: 'vite:license',
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
export { viteLicensePlugin };
|
|
@ -67,6 +67,8 @@ interface ApplicationPluginOptions extends CommonPluginOptions {
|
||||||
importmapOptions?: ImportmapPluginOptions;
|
importmapOptions?: ImportmapPluginOptions;
|
||||||
/** 是否注入app loading */
|
/** 是否注入app loading */
|
||||||
injectAppLoading?: boolean;
|
injectAppLoading?: boolean;
|
||||||
|
/** 是否注入版权信息 */
|
||||||
|
license?: boolean;
|
||||||
/** mock 插件配置 */
|
/** mock 插件配置 */
|
||||||
mock?: boolean;
|
mock?: boolean;
|
||||||
/** 是否开启pwa */
|
/** 是否开启pwa */
|
||||||
|
|
|
@ -83,8 +83,9 @@
|
||||||
"packageManager": "pnpm@9.4.0",
|
"packageManager": "pnpm@9.4.0",
|
||||||
"pnpm": {
|
"pnpm": {
|
||||||
"overrides": {
|
"overrides": {
|
||||||
"@ctrl/tinycolor": "4.1.0",
|
"@ant-design/colors": "^7.0.2",
|
||||||
"clsx": "2.1.1",
|
"@ctrl/tinycolor": "^4.1.0",
|
||||||
|
"clsx": "^2.1.1",
|
||||||
"vue": "^3.4.30"
|
"vue": "^3.4.30"
|
||||||
},
|
},
|
||||||
"neverBuiltDependencies": [
|
"neverBuiltDependencies": [
|
||||||
|
|
|
@ -43,6 +43,7 @@ function handleMouseenter(menu: MenuRecordRaw) {
|
||||||
is(theme, true),
|
is(theme, true),
|
||||||
is('rounded', rounded),
|
is('rounded', rounded),
|
||||||
]"
|
]"
|
||||||
|
class="relative"
|
||||||
>
|
>
|
||||||
<template v-for="menu in menus" :key="menu.path">
|
<template v-for="menu in menus" :key="menu.path">
|
||||||
<li
|
<li
|
||||||
|
@ -66,9 +67,7 @@ function handleMouseenter(menu: MenuRecordRaw) {
|
||||||
--menu-item-padding-x: 0px;
|
--menu-item-padding-x: 0px;
|
||||||
--menu-item-radius: 0px;
|
--menu-item-radius: 0px;
|
||||||
--menu-dark-background: 0deg 0% 100% / 10%;
|
--menu-dark-background: 0deg 0% 100% / 10%;
|
||||||
// --menu-light-background: 240deg 5% 96%;
|
|
||||||
|
|
||||||
position: relative;
|
|
||||||
height: calc(100% - 4px);
|
height: calc(100% - 4px);
|
||||||
|
|
||||||
@include is('rounded') {
|
@include is('rounded') {
|
||||||
|
|
|
@ -8,27 +8,11 @@
|
||||||
--tabs-active-background: hsl(var(--primary) / 100%);
|
--tabs-active-background: hsl(var(--primary) / 100%);
|
||||||
--tabs-active: hsl(var(--primary-foreground));
|
--tabs-active: hsl(var(--primary-foreground));
|
||||||
|
|
||||||
position: relative;
|
|
||||||
width: 100%;
|
|
||||||
height: 100%;
|
|
||||||
padding-top: 4px;
|
|
||||||
background-color: var(--tabs-background);
|
background-color: var(--tabs-background);
|
||||||
|
|
||||||
@include e('content') {
|
|
||||||
position: relative;
|
|
||||||
height: 32px;
|
|
||||||
overflow: hidden;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@include b('chrome-tab') {
|
@include b('chrome-tab') {
|
||||||
position: absolute;
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
height: 100%;
|
|
||||||
color: hsl(var(--muted-foreground));
|
color: hsl(var(--muted-foreground));
|
||||||
cursor: pointer;
|
|
||||||
user-select: none;
|
|
||||||
|
|
||||||
@include is('active') {
|
@include is('active') {
|
||||||
z-index: 2;
|
z-index: 2;
|
||||||
|
@ -57,7 +41,6 @@
|
||||||
position: absolute;
|
position: absolute;
|
||||||
right: 0;
|
right: 0;
|
||||||
left: 0;
|
left: 0;
|
||||||
// z-index: 1;
|
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
|
@ -174,59 +157,37 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
@include b('chrome-tab-background') {
|
@include b('chrome-tab-background') {
|
||||||
position: absolute;
|
|
||||||
width: 100%;
|
|
||||||
height: 100%;
|
|
||||||
padding: 0 calc(var(--tabs-gap) + 0px);
|
padding: 0 calc(var(--tabs-gap) + 0px);
|
||||||
|
|
||||||
@include e('divider') {
|
@include e('divider') {
|
||||||
position: absolute;
|
|
||||||
left: 0;
|
|
||||||
width: calc(100% - 14px);
|
width: calc(100% - 14px);
|
||||||
height: 100%;
|
|
||||||
margin: 0 7px;
|
margin: 0 7px;
|
||||||
|
|
||||||
&::before {
|
&::before {
|
||||||
position: absolute;
|
|
||||||
top: 20%;
|
|
||||||
right: 100%;
|
|
||||||
width: 1px;
|
|
||||||
height: 60%;
|
|
||||||
content: '';
|
|
||||||
background-color: var(--tabs-divider);
|
background-color: var(--tabs-divider);
|
||||||
}
|
}
|
||||||
|
|
||||||
&::after {
|
&::after {
|
||||||
position: absolute;
|
|
||||||
top: 20%;
|
|
||||||
left: calc(100% - 1px);
|
left: calc(100% - 1px);
|
||||||
width: 1px;
|
|
||||||
height: 60%;
|
|
||||||
content: '';
|
|
||||||
background-color: var(--tabs-divider);
|
background-color: var(--tabs-divider);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@include e('content') {
|
@include e('content') {
|
||||||
height: 100%;
|
|
||||||
border-top-left-radius: 5px;
|
border-top-left-radius: 5px;
|
||||||
border-top-right-radius: 5px;
|
border-top-right-radius: 5px;
|
||||||
transition: background 0.15s ease;
|
transition: background 0.15s ease;
|
||||||
}
|
}
|
||||||
|
|
||||||
@include e('before') {
|
@include e('before') {
|
||||||
position: absolute;
|
|
||||||
bottom: -1px;
|
bottom: -1px;
|
||||||
left: -3px;
|
left: -3px;
|
||||||
fill: transparent;
|
|
||||||
transition: 0.15s;
|
transition: 0.15s;
|
||||||
}
|
}
|
||||||
|
|
||||||
@include e('after') {
|
@include e('after') {
|
||||||
position: absolute;
|
|
||||||
right: -3px;
|
right: -3px;
|
||||||
bottom: -1px;
|
bottom: -1px;
|
||||||
fill: transparent;
|
|
||||||
transition: 0.15s;
|
transition: 0.15s;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -9,13 +9,26 @@ const { b, e } = useNamespace('chrome-tab-background');
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
<div :class="b()">
|
<div :class="b()" class="absolute size-full">
|
||||||
<div :class="e('divider')"></div>
|
<div
|
||||||
<div :class="e('content')"></div>
|
:class="e('divider')"
|
||||||
<svg :class="e('before')" height="10" width="10">
|
class="absolute left-0 h-full before:absolute before:right-[100%] before:top-[15%] before:h-[60%] before:w-[1px] before:content-[''] after:absolute after:top-[15%] after:h-[60%] after:w-[1px] after:content-['']"
|
||||||
|
></div>
|
||||||
|
<div :class="e('content')" class="h-full"></div>
|
||||||
|
<svg
|
||||||
|
:class="e('before')"
|
||||||
|
class="absolute fill-transparent"
|
||||||
|
height="10"
|
||||||
|
width="10"
|
||||||
|
>
|
||||||
<path d="M 0 10 A 10 10 0 0 0 10 0 L 10 10 Z" />
|
<path d="M 0 10 A 10 10 0 0 0 10 0 L 10 10 Z" />
|
||||||
</svg>
|
</svg>
|
||||||
<svg :class="e('after')" height="10" width="10">
|
<svg
|
||||||
|
:class="e('after')"
|
||||||
|
class="absolute fill-transparent"
|
||||||
|
height="10"
|
||||||
|
width="10"
|
||||||
|
>
|
||||||
<path d="M 0 0 A 10 10 0 0 0 10 10 L 0 10 Z" />
|
<path d="M 0 0 A 10 10 0 0 0 10 10 L 0 10 Z" />
|
||||||
</svg>
|
</svg>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -38,7 +38,10 @@ function handleUnPushPin() {
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
<div :class="[b()]">
|
<div
|
||||||
|
:class="[b()]"
|
||||||
|
class="absolute flex h-full cursor-pointer select-none items-center"
|
||||||
|
>
|
||||||
<VbenContextMenu :handler-data="tab" :menus="menus" item-class="pr-4">
|
<VbenContextMenu :handler-data="tab" :menus="menus" item-class="pr-4">
|
||||||
<div class="h-full">
|
<div class="h-full">
|
||||||
<TabBackground />
|
<TabBackground />
|
||||||
|
|
|
@ -83,8 +83,12 @@ function handleUnPushPin(tab: TabItem) {
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
<div :class="b()">
|
<div :class="b()" class="relative size-full pt-1">
|
||||||
<div ref="contentRef" :class="e('content')">
|
<div
|
||||||
|
ref="contentRef"
|
||||||
|
:class="e('content')"
|
||||||
|
class="relative h-8 overflow-hidden"
|
||||||
|
>
|
||||||
<TransitionGroup name="slide-down">
|
<TransitionGroup name="slide-down">
|
||||||
<Tab
|
<Tab
|
||||||
v-for="(tab, i) in tabsView"
|
v-for="(tab, i) in tabsView"
|
||||||
|
|
|
@ -5,8 +5,9 @@ settings:
|
||||||
excludeLinksFromLockfile: false
|
excludeLinksFromLockfile: false
|
||||||
|
|
||||||
overrides:
|
overrides:
|
||||||
'@ctrl/tinycolor': 4.1.0
|
'@ant-design/colors': ^7.0.2
|
||||||
clsx: 2.1.1
|
'@ctrl/tinycolor': ^4.1.0
|
||||||
|
clsx: ^2.1.1
|
||||||
vue: ^3.4.30
|
vue: ^3.4.30
|
||||||
|
|
||||||
importers:
|
importers:
|
||||||
|
@ -328,6 +329,9 @@ importers:
|
||||||
consola:
|
consola:
|
||||||
specifier: ^3.2.3
|
specifier: ^3.2.3
|
||||||
version: 3.2.3
|
version: 3.2.3
|
||||||
|
dayjs:
|
||||||
|
specifier: ^1.11.11
|
||||||
|
version: 1.11.11
|
||||||
find-up:
|
find-up:
|
||||||
specifier: ^7.0.0
|
specifier: ^7.0.0
|
||||||
version: 7.0.0
|
version: 7.0.0
|
||||||
|
@ -556,7 +560,7 @@ importers:
|
||||||
specifier: ^7.0.2
|
specifier: ^7.0.2
|
||||||
version: 7.0.2
|
version: 7.0.2
|
||||||
'@ctrl/tinycolor':
|
'@ctrl/tinycolor':
|
||||||
specifier: 4.1.0
|
specifier: ^4.1.0
|
||||||
version: 4.1.0
|
version: 4.1.0
|
||||||
|
|
||||||
packages/@core/shared/design:
|
packages/@core/shared/design:
|
||||||
|
@ -582,7 +586,7 @@ importers:
|
||||||
specifier: ^3.4.30
|
specifier: ^3.4.30
|
||||||
version: 3.4.30
|
version: 3.4.30
|
||||||
clsx:
|
clsx:
|
||||||
specifier: 2.1.1
|
specifier: ^2.1.1
|
||||||
version: 2.1.1
|
version: 2.1.1
|
||||||
dayjs:
|
dayjs:
|
||||||
specifier: ^1.11.11
|
specifier: ^1.11.11
|
||||||
|
@ -978,9 +982,6 @@ packages:
|
||||||
resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==}
|
resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==}
|
||||||
engines: {node: '>=6.0.0'}
|
engines: {node: '>=6.0.0'}
|
||||||
|
|
||||||
'@ant-design/colors@6.0.0':
|
|
||||||
resolution: {integrity: sha512-qAZRvPzfdWHtfameEGP2Qvuf838NhergR35o+EuVyB5XvSA98xod5r4utvi4TJ3ywmevm290g9nsCG5MryrdWQ==}
|
|
||||||
|
|
||||||
'@ant-design/colors@7.0.2':
|
'@ant-design/colors@7.0.2':
|
||||||
resolution: {integrity: sha512-7KJkhTiPiLHSu+LmMJnehfJ6242OCxSlR3xHVBecYxnMW8MS/878NXct1GqYARyL59fyeFdKRxXTfvR9SnDgJg==}
|
resolution: {integrity: sha512-7KJkhTiPiLHSu+LmMJnehfJ6242OCxSlR3xHVBecYxnMW8MS/878NXct1GqYARyL59fyeFdKRxXTfvR9SnDgJg==}
|
||||||
|
|
||||||
|
@ -8928,10 +8929,6 @@ snapshots:
|
||||||
'@jridgewell/gen-mapping': 0.3.5
|
'@jridgewell/gen-mapping': 0.3.5
|
||||||
'@jridgewell/trace-mapping': 0.3.25
|
'@jridgewell/trace-mapping': 0.3.25
|
||||||
|
|
||||||
'@ant-design/colors@6.0.0':
|
|
||||||
dependencies:
|
|
||||||
'@ctrl/tinycolor': 4.1.0
|
|
||||||
|
|
||||||
'@ant-design/colors@7.0.2':
|
'@ant-design/colors@7.0.2':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@ctrl/tinycolor': 4.1.0
|
'@ctrl/tinycolor': 4.1.0
|
||||||
|
@ -8940,7 +8937,7 @@ snapshots:
|
||||||
|
|
||||||
'@ant-design/icons-vue@7.0.1(vue@3.4.30(typescript@5.5.2))':
|
'@ant-design/icons-vue@7.0.1(vue@3.4.30(typescript@5.5.2))':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@ant-design/colors': 6.0.0
|
'@ant-design/colors': 7.0.2
|
||||||
'@ant-design/icons-svg': 4.4.2
|
'@ant-design/icons-svg': 4.4.2
|
||||||
vue: 3.4.30(typescript@5.5.2)
|
vue: 3.4.30(typescript@5.5.2)
|
||||||
|
|
||||||
|
@ -12141,7 +12138,7 @@ snapshots:
|
||||||
|
|
||||||
ant-design-vue@4.2.3(vue@3.4.30(typescript@5.5.2)):
|
ant-design-vue@4.2.3(vue@3.4.30(typescript@5.5.2)):
|
||||||
dependencies:
|
dependencies:
|
||||||
'@ant-design/colors': 6.0.0
|
'@ant-design/colors': 7.0.2
|
||||||
'@ant-design/icons-vue': 7.0.1(vue@3.4.30(typescript@5.5.2))
|
'@ant-design/icons-vue': 7.0.1(vue@3.4.30(typescript@5.5.2))
|
||||||
'@babel/runtime': 7.24.7
|
'@babel/runtime': 7.24.7
|
||||||
'@ctrl/tinycolor': 4.1.0
|
'@ctrl/tinycolor': 4.1.0
|
||||||
|
|
Loading…
Reference in New Issue