| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394 |
- import { defineConfig, UserConfig, presetTypography, presetIcons, transformerDirectives } from 'unocss';
- import { FileSystemIconLoader } from '@iconify/utils/lib/loader/node-loaders';
- import { presetWind3 } from '@unocss/preset-wind3';
- export default defineConfig({
- inspector: false,
- content: {
- pipeline: {
- include: ['**/*.vue', '**/*.tsx', '**/*.ts', '**/*-lib/**/*.mjs'],
- exclude: ['.git', '.idea', '.turbo', 'node_modules', 'public'],
- },
- },
- /**
- * 图标白名单。
- *
- * Icon 组件是在运行时拼出 `i-<collection>:<name>` 类名的,而 UnoCSS 只对
- * `content.pipeline.include` 命中的文件做静态扫描 —— `src/core/store/modules/menu.json`
- * 不在扫描范围内,因此菜单里配置的图标不会被生成。
- * 这里把「菜单配置 + 运行时拼接」两类图标显式列入白名单,保证图标一定渲染。
- */
- safelist: [
- // 菜单图标(写在 menu.json 中,无法被静态扫描到)
- 'i-simple-line-icons:bubble',
- 'i-mdi:chart-box-outline',
- 'i-mdi:brain',
- 'i-mdi:history',
- // AI 模块组件内通过 Icon 组件动态拼接的图标
- 'i-mdi:refresh',
- 'i-mdi:plus',
- 'i-mdi:send',
- 'i-mdi:stop',
- 'i-mdi:magnify',
- 'i-mdi:pin',
- 'i-mdi:pin-outline',
- 'i-mdi:pencil-outline',
- 'i-mdi:trash-can-outline',
- 'i-mdi:fullscreen',
- 'i-mdi:fullscreen-exit',
- // 图谱详情面板的通话 / 交易明细入口
- 'i-mdi:phone-outline',
- 'i-mdi:bank-transfer',
- // 登录页页脚的联系方式(phone-outline 上面已有)
- 'i-mdi:email-outline',
- // 对话消息排版改造后新增:消息操作条、AI 头像、输入区、回到底部
- 'i-mdi:sparkles',
- 'i-mdi:content-copy',
- 'i-mdi:check',
- 'i-mdi:tray-arrow-down',
- 'i-mdi:star',
- 'i-mdi:star-outline',
- 'i-mdi:alert-circle-outline',
- 'i-mdi:chip',
- 'i-mdi:arrow-up',
- 'i-mdi:arrow-down',
- // 执行过程时间线(ProcessTimeline):折叠箭头、工具图标
- 'i-mdi:chevron-right',
- 'i-mdi:chevron-down',
- 'i-mdi:chevron-up',
- 'i-mdi:database-search-outline',
- 'i-mdi:format-list-bulleted',
- 'i-mdi:table-search',
- 'i-mdi:language-python',
- 'i-mdi:graph-outline',
- 'i-mdi:folder-search-outline',
- 'i-mdi:tools',
- // 对象关系分析 · AI 研判(抽屉 / 线索卡 / 报告)
- 'i-mdi:auto-fix',
- 'i-mdi:alert-decagram-outline',
- 'i-mdi:lightbulb-on-outline',
- 'i-mdi:arrow-right',
- 'i-mdi:clock-outline',
- 'i-mdi:map-marker-path',
- 'i-mdi:phone-in-talk-outline',
- 'i-mdi:close',
- 'i-mdi:account-outline',
- 'i-mdi:account-search-outline',
- 'i-mdi:account-multiple-outline',
- 'i-mdi:swap-horizontal',
- ],
- presets: [
- presetWind3(),
- presetTypography(),
- presetIcons({
- extraProperties: {
- display: 'inline-block',
- 'vertical-align': 'middle',
- },
- collections: {
- svg: FileSystemIconLoader(__dirname + '/src/assets/icons'),
- },
- }),
- ],
- transformers: [transformerDirectives()],
- } as UserConfig);
|