chore(project): refactor types dir

This commit is contained in:
vben 2024-05-21 22:14:25 +08:00
parent c31d21be50
commit f6087ce4e8
37 changed files with 141 additions and 65 deletions

View File

@ -26,7 +26,6 @@
"dependencies": {
"@vben-core/design": "workspace:*",
"@vben-core/design-tokens": "workspace:*",
"@vben-core/typings": "workspace:*",
"@vben/common-ui": "workspace:*",
"@vben/constants": "workspace:*",
"@vben/hooks": "workspace:*",
@ -35,6 +34,7 @@
"@vben/locales": "workspace:*",
"@vben/preference": "workspace:*",
"@vben/stores": "workspace:*",
"@vben/types": "workspace:*",
"@vben/utils": "workspace:*",
"ant-design-vue": "^4.2.1",
"axios": "^1.7.1",

View File

@ -1,4 +1,4 @@
import type { Preference } from '@vben-core/typings';
import type { Preference } from '@vben/types';
/**
* @description

View File

@ -1,4 +1,4 @@
import type { ExRouteRecordRaw, MenuRecordRaw } from '@vben-core/typings';
import type { ExRouteRecordRaw, MenuRecordRaw } from '@vben/types';
import type { RouteRecordRaw, Router } from 'vue-router';

View File

@ -29,9 +29,11 @@ export const vbenRoutes: RouteRecordRaw[] = [
{
name: 'AboutDocument',
path: 'document',
component: () => import('@/views/about/index.vue'),
component: IFrameView,
meta: {
icon: 'mdi:flame-circle',
iframeSrc: 'https://doc.vvbin.cn/',
keepAlive: true,
title: $t('page.document'),
},
},

View File

@ -1,4 +1,4 @@
import type { UserInfo } from '@vben-core/typings';
import type { UserInfo } from '@vben/types';
import { request } from '@/services/request';

View File

@ -49,7 +49,7 @@
"eslint-plugin-no-only-tests": "^3.1.0",
"eslint-plugin-perfectionist": "^2.10.0",
"eslint-plugin-prettier": "^5.1.3",
"eslint-plugin-regexp": "^2.5.0",
"eslint-plugin-regexp": "^2.6.0",
"eslint-plugin-unicorn": "^53.0.0",
"eslint-plugin-unused-imports": "^3.2.0",
"eslint-plugin-vitest": "^0.5.4",

View File

@ -21,7 +21,7 @@
"web.json"
],
"dependencies": {
"@vben-core/typings": "workspace:*",
"@vben/types": "workspace:*",
"vite": "^5.2.11"
}
}

View File

@ -3,6 +3,6 @@
"display": "Web Application",
"extends": "./web.json",
"compilerOptions": {
"types": ["vite/client", "@vben-core/typings/global"]
"types": ["vite/client", "@vben/types/global"]
}
}

View File

@ -30,9 +30,6 @@
"types": "./src/index.ts",
"development": "./src/index.ts",
"default": "./dist/index.mjs"
},
"./global": {
"types": "./global.d.ts"
}
},
"publishConfig": {

View File

@ -1,6 +1,5 @@
export * from './access';
export * from './menu-record';
export * from './preference';
export * from './tabs';
export * from './tools';
export * from './ui';
export type * from './access';
export type * from './menu-record';
export type * from './preference';
export type * from './tabs';
export type * from './tools';

View File

@ -50,7 +50,7 @@
"@vueuse/core": "^10.9.0",
"class-variance-authority": "^0.7.0",
"clsx": "2.1.1",
"radix-vue": "^1.8.0",
"radix-vue": "^1.8.1",
"tailwind-merge": "^2.3.0",
"vue": "^3.4.27",
"vue-sonner": "^1.1.2"

View File

@ -1,5 +1,5 @@
<script lang="ts" setup>
import { VbenIcon } from '@vben-core/shadcn-ui';
import { VbenIcon } from '../icon';
import type { IBreadcrumb } from './interface';

View File

@ -1,6 +1,5 @@
<script lang="ts" setup>
import { IcRoundKeyboardArrowDown } from '@vben-core/iconify';
import { VbenIcon } from '@vben-core/shadcn-ui';
import {
Breadcrumb,
@ -17,6 +16,8 @@ import {
DropdownMenuTrigger,
} from '#/components/ui/dropdown-menu';
import { VbenIcon } from '../';
import type { IBreadcrumb } from './interface';
interface Props {

View File

@ -57,6 +57,6 @@
},
"devDependencies": {
"@types/qrcode": "^1.5.5",
"@vben-core/typings": "workspace:*"
"@vben/types": "workspace:*"
}
}

View File

@ -1,6 +1,6 @@
<script setup lang="ts">
import type { AuthPageLayout } from '@vben/types';
import type { VbenDropdownMenuItem } from '@vben-core/shadcn-ui';
import type { AuthPageLayout } from '@vben-core/typings';
import { MdiDockBottom, MdiDockLeft, MdiDockRight } from '@vben-core/iconify';
import { VbenDropdownRadioMenu, VbenIconButton } from '@vben-core/shadcn-ui';

View File

@ -1,5 +1,5 @@
<script setup lang="ts">
import type { MenuRecordRaw } from '@vben-core/typings';
import type { MenuRecordRaw } from '@vben/types';
import {
IcRoundArrowDownward,

View File

@ -1,5 +1,5 @@
<script setup lang="ts">
import type { MenuRecordRaw } from '@vben-core/typings';
import type { MenuRecordRaw } from '@vben/types';
import { IcRoundClose, IcRoundSearchOff } from '@vben-core/iconify';
import { ScrollArea, VbenIcon } from '@vben-core/shadcn-ui';

View File

@ -1,5 +1,5 @@
<script setup lang="ts">
import type { SupportLocale } from '@vben-core/typings';
import type { SupportLocale } from '@vben/types';
import { IcBaselineLanguage } from '@vben-core/iconify';
import { VbenDropdownRadioMenu, VbenIconButton } from '@vben-core/shadcn-ui';

View File

@ -1,5 +1,5 @@
<script setup lang="ts">
import type { SelectListItem } from '@vben-core/typings';
import type { SelectListItem } from '@vben/types';
import { $t } from '@vben/locales';
import { staticPreference } from '@vben/preference';

View File

@ -1,5 +1,5 @@
<script setup lang="ts">
import type { SelectListItem } from '@vben-core/typings';
import type { SelectListItem } from '@vben/types';
import { $t } from '@vben/locales';

View File

@ -1,5 +1,5 @@
<script setup lang="ts">
import type { SelectListItem } from '@vben-core/typings';
import type { SelectListItem } from '@vben/types';
import { $t } from '@vben/locales';

View File

@ -1,5 +1,5 @@
<script setup lang="ts">
import type { LayoutHeaderMode, SelectListItem } from '@vben-core/typings';
import type { LayoutHeaderMode, SelectListItem } from '@vben/types';
import { $t } from '@vben/locales';

View File

@ -1,5 +1,5 @@
<script setup lang="ts">
import type { LayoutType } from '@vben-core/typings';
import type { LayoutType } from '@vben/types';
import { MdiQuestionMarkCircleOutline } from '@vben-core/iconify';
import { VbenTooltip } from '@vben-core/shadcn-ui';

View File

@ -1,5 +1,5 @@
<script setup lang="ts">
import type { SelectListItem } from '@vben-core/typings';
import type { SelectListItem } from '@vben/types';
import { MdiQuestionMarkCircleOutline } from '@vben-core/iconify';
import {

View File

@ -1,5 +1,5 @@
<script setup lang="ts">
import type { SelectListItem } from '@vben-core/typings';
import type { SelectListItem } from '@vben/types';
import { ToggleGroup, ToggleGroupItem } from '@vben-core/shadcn-ui';

View File

@ -1,5 +1,5 @@
<script lang="ts" setup>
import type { PreferenceKeys, SupportLocale } from '@vben-core/typings';
import type { PreferenceKeys, SupportLocale } from '@vben/types';
import { loadLocaleMessages } from '@vben/locales';
import {

View File

@ -1,6 +1,6 @@
<script setup lang="ts">
import type { LayoutHeaderMode, LayoutType } from '@vben/types';
import type { SegmentedItem } from '@vben-core/shadcn-ui';
import type { LayoutHeaderMode, LayoutType } from '@vben-core/typings';
import { IcRoundFolderCopy, IcRoundRestartAlt } from '@vben-core/iconify';
import {

View File

@ -12,11 +12,11 @@ import {
VbenAvatar,
VbenIcon,
} from '@vben-core/shadcn-ui';
import { AnyFunction } from '@vben-core/typings';
import type { Component } from 'vue';
import { $t } from '@vben/locales';
import { AnyFunction } from '@vben/types';
import { ref } from 'vue';
interface Props {

View File

@ -26,7 +26,6 @@
}
},
"dependencies": {
"@vben-core/iconify": "workspace:*",
"vue": "^3.4.27"
"@vben-core/iconify": "workspace:*"
}
}

View File

@ -0,0 +1,7 @@
import { defineBuildConfig } from 'unbuild';
export default defineBuildConfig({
clean: true,
declaration: true,
entries: ['src/index'],
});

View File

@ -0,0 +1,51 @@
{
"name": "@vben/types",
"version": "1.0.0",
"type": "module",
"license": "MIT",
"homepage": "https://github.com/vbenjs/vue-vben-admin",
"repository": {
"type": "git",
"url": "git+https://github.com/vbenjs/vue-vben-admin.git",
"directory": "packages/types"
},
"bugs": {
"url": "https://github.com/vbenjs/vue-vben-admin/issues"
},
"scripts": {
"build": "pnpm unbuild",
"stub": "pnpm build --stub"
},
"files": [
"dist"
],
"main": "./dist/index.mjs",
"module": "./dist/index.mjs",
"types": "./dist/index.d.ts",
"imports": {
"#*": "./src/*"
},
"exports": {
".": {
"types": "./src/index.ts",
"development": "./src/index.ts",
"default": "./dist/index.mjs"
},
"./global": {
"types": "./global.d.ts"
}
},
"publishConfig": {
"exports": {
".": {
"types": "./dist/index.d.ts",
"default": "./dist/index.mjs"
}
}
},
"dependencies": {
"@vben-core/typings": "workspace:*",
"vue": "^3.4.27",
"vue-router": "^4.3.2"
}
}

View File

@ -0,0 +1,2 @@
export type * from './ui';
export type * from '@vben-core/typings';

View File

@ -0,0 +1,5 @@
{
"$schema": "https://json.schemastore.org/tsconfig",
"extends": "@vben/tsconfig/library.json",
"include": ["src"]
}

View File

@ -99,9 +99,6 @@ importers:
'@vben-core/design-tokens':
specifier: workspace:*
version: link:../../packages/@vben-core/shared/design-tokens
'@vben-core/typings':
specifier: workspace:*
version: link:../../packages/@vben-core/shared/typings
'@vben/common-ui':
specifier: workspace:*
version: link:../../packages/business/common-ui
@ -126,6 +123,9 @@ importers:
'@vben/stores':
specifier: workspace:*
version: link:../../packages/stores
'@vben/types':
specifier: workspace:*
version: link:../../packages/types
'@vben/utils':
specifier: workspace:*
version: link:../../packages/utils
@ -216,8 +216,8 @@ importers:
specifier: ^5.1.3
version: 5.1.3(@types/eslint@8.56.10)(eslint-config-prettier@9.1.0(eslint@8.57.0))(eslint@8.57.0)(prettier@3.2.5)
eslint-plugin-regexp:
specifier: ^2.5.0
version: 2.5.0(eslint@8.57.0)
specifier: ^2.6.0
version: 2.6.0(eslint@8.57.0)
eslint-plugin-unicorn:
specifier: ^53.0.0
version: 53.0.0(eslint@8.57.0)
@ -367,9 +367,9 @@ importers:
internal/tsconfig:
dependencies:
'@vben-core/typings':
'@vben/types':
specifier: workspace:*
version: link:../../packages/@vben-core/shared/typings
version: link:../../packages/types
vite:
specifier: ^5.2.11
version: 5.2.11(@types/node@20.12.12)(sass@1.77.2)(terser@5.31.0)
@ -561,8 +561,8 @@ importers:
specifier: 2.1.1
version: 2.1.1
radix-vue:
specifier: ^1.8.0
version: 1.8.0(vue@3.4.27(typescript@5.4.5))
specifier: ^1.8.1
version: 1.8.1(vue@3.4.27(typescript@5.4.5))
tailwind-merge:
specifier: ^2.3.0
version: 2.3.0
@ -633,9 +633,9 @@ importers:
'@types/qrcode':
specifier: ^1.5.5
version: 1.5.5
'@vben-core/typings':
'@vben/types':
specifier: workspace:*
version: link:../../@vben-core/shared/typings
version: link:../../types
packages/business/layouts:
dependencies:
@ -696,9 +696,6 @@ importers:
'@vben-core/iconify':
specifier: workspace:*
version: link:../@vben-core/shared/iconify
vue:
specifier: ^3.4.27
version: 3.4.27(typescript@5.4.5)
packages/locales:
dependencies:
@ -751,6 +748,18 @@ importers:
specifier: ^4.3.2
version: 4.3.2(vue@3.4.27(typescript@5.4.5))
packages/types:
dependencies:
'@vben-core/typings':
specifier: workspace:*
version: link:../@vben-core/shared/typings
vue:
specifier: ^3.4.27
version: 3.4.27(typescript@5.4.5)
vue-router:
specifier: ^4.3.2
version: 4.3.2(vue@3.4.27(typescript@5.4.5))
packages/utils:
dependencies:
'@vben-core/toolkit':
@ -1811,11 +1820,11 @@ packages:
peerDependencies:
vue: '>=3'
'@internationalized/date@3.5.3':
resolution: {integrity: sha512-X9bi8NAEHAjD8yzmPYT2pdJsbe+tYSEBAfowtlxJVJdZR3aK8Vg7ZUT1Fm5M47KLzp/M1p1VwAaeSma3RT7biw==}
'@internationalized/date@3.5.4':
resolution: {integrity: sha512-qoVJVro+O0rBaw+8HPjUB1iH8Ihf8oziEnqMnvhJUSuVIrHOuZ6eNLHNvzXJKUvAtaDiqMnRlg8Z2mgh09BlUw==}
'@internationalized/number@3.5.2':
resolution: {integrity: sha512-4FGHTi0rOEX1giSkt5MH4/te0eHBq3cvAYsfLlpguV6pzJAReXymiYpE5wPCqKqjkUO3PIsyvk+tBiIV1pZtbA==}
'@internationalized/number@3.5.3':
resolution: {integrity: sha512-rd1wA3ebzlp0Mehj5YTuTI50AQEx80gWFyHcQu+u91/5NgdwBecO8BH6ipPfE+lmQ9d63vpB3H9SHoIUiupllw==}
'@intlify/bundle-utils@8.0.0':
resolution: {integrity: sha512-1B++zykRnMwQ+20SpsZI1JCnV/YJt9Oq7AGlEurzkWJOFtFAVqaGc/oV36PBRYeiKnTbY9VYfjBimr2Vt42wLQ==}
@ -3679,8 +3688,8 @@ packages:
eslint-config-prettier:
optional: true
eslint-plugin-regexp@2.5.0:
resolution: {integrity: sha512-I7vKcP0o75WS5SHiVNXN+Eshq49sbrweMQIuqSL3AId9AwDe9Dhbfug65vw64LxmOd4v+yf5l5Xt41y9puiq0g==}
eslint-plugin-regexp@2.6.0:
resolution: {integrity: sha512-FCL851+kislsTEQEMioAlpDuK5+E5vs0hi1bF8cFlPlHcEjeRhuAzEsGikXRreE+0j4WhW2uO54MqTjXtYOi3A==}
engines: {node: ^18 || >=20}
peerDependencies:
eslint: '>=8.44.0'
@ -5864,8 +5873,8 @@ packages:
resolution: {integrity: sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==}
engines: {node: '>=10'}
radix-vue@1.8.0:
resolution: {integrity: sha512-RT98WcrsHMG4P4DuN4G4EeHnSV2Lk+J2k2LWr/UF/7oF2STxUFEjg2Zg0uxFG8B/evutOmp9S5kqujJVmp3sgQ==}
radix-vue@1.8.1:
resolution: {integrity: sha512-DFyUt2vc/89tpSHiJvv7Qb/Qs8zVxq2g7q4kuuDV46fmDmSC3mnV3hdSAYruU7k/KvoDpS3sd99kLGRtuG63Rw==}
peerDependencies:
vue: '>= 3.2.0'
@ -8278,11 +8287,11 @@ snapshots:
'@iconify/types': 2.0.0
vue: 3.4.27(typescript@5.4.5)
'@internationalized/date@3.5.3':
'@internationalized/date@3.5.4':
dependencies:
'@swc/helpers': 0.5.11
'@internationalized/number@3.5.2':
'@internationalized/number@3.5.3':
dependencies:
'@swc/helpers': 0.5.11
@ -10434,7 +10443,7 @@ snapshots:
'@types/eslint': 8.56.10
eslint-config-prettier: 9.1.0(eslint@8.57.0)
eslint-plugin-regexp@2.5.0(eslint@8.57.0):
eslint-plugin-regexp@2.6.0(eslint@8.57.0):
dependencies:
'@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0)
'@eslint-community/regexpp': 4.10.0
@ -12633,12 +12642,12 @@ snapshots:
quick-lru@5.1.1: {}
radix-vue@1.8.0(vue@3.4.27(typescript@5.4.5)):
radix-vue@1.8.1(vue@3.4.27(typescript@5.4.5)):
dependencies:
'@floating-ui/dom': 1.6.5
'@floating-ui/vue': 1.0.6(vue@3.4.27(typescript@5.4.5))
'@internationalized/date': 3.5.3
'@internationalized/number': 3.5.2
'@internationalized/date': 3.5.4
'@internationalized/number': 3.5.3
'@tanstack/vue-virtual': 3.5.0(vue@3.4.27(typescript@5.4.5))
'@vueuse/core': 10.9.0(vue@3.4.27(typescript@5.4.5))
'@vueuse/shared': 10.9.0(vue@3.4.27(typescript@5.4.5))

View File

@ -108,6 +108,10 @@
"name": "@vben/stores",
"path": "packages/stores",
},
{
"name": "@vben/types",
"path": "packages/types",
},
{
"name": "@vben/utils",
"path": "packages/utils",