exploria-ui 2026.6.16 → 2026.7.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (126) hide show
  1. package/README.md +105 -108
  2. package/dist/components/advanced/EParallaxScrolling/EParallaxScrolling.vue.d.ts +9 -5
  3. package/dist/components/basic/EBadge/EBadge.vue.d.ts +1 -0
  4. package/dist/components/data/ECalendar.vue.d.ts +3 -1
  5. package/dist/components/data/ECarousel/ECarousel.vue.d.ts +4 -0
  6. package/dist/components/data/ESteps/EStepItem.vue.d.ts +40 -0
  7. package/dist/components/data/ESteps/ESteps.vue.d.ts +30 -0
  8. package/dist/components/data/EWaterfall/EWaterfall.vue.d.ts +33 -0
  9. package/dist/components/feedback/EDialog/EDialog.vue.d.ts +6 -5
  10. package/dist/components/feedback/EDrawer/EDrawer.vue.d.ts +2 -2
  11. package/dist/components/feedback/EMessage/EMessage.d.ts +6 -4
  12. package/dist/components/feedback/EMessageBox/EMessageBox.d.ts +16 -2
  13. package/dist/components/feedback/EMessageBox/EMessageBox.vue.d.ts +3 -2
  14. package/dist/components/feedback/ENotification/ENotification.d.ts +3 -4
  15. package/dist/components/feedback/ENotification/ENotification.vue.d.ts +1 -0
  16. package/dist/components/feedback/ETooltip.vue.d.ts +6 -1
  17. package/dist/components/form/EColorPicker.vue.d.ts +2 -0
  18. package/dist/components/form/EFileSelector.vue.d.ts +3 -4
  19. package/dist/components/geometry/ECube.vue.d.ts +4 -1
  20. package/dist/components/hooks/useLiquidGlass.d.ts +26 -0
  21. package/dist/components/hooks/useZIndex.d.ts +6 -0
  22. package/dist/components/index.d.ts +2 -1
  23. package/dist/components/index.js +52 -51
  24. package/dist/components/layout/EDivider.vue.d.ts +20 -1
  25. package/dist/directives/ESlideIn.d.ts +2 -1
  26. package/dist/index.css +1 -1
  27. package/dist/node_modules/.pnpm/@intlify_core-base@11.3.0/node_modules/@intlify/core-base/dist/core-base.js +831 -0
  28. package/dist/node_modules/.pnpm/@intlify_core-base@11.4.6/node_modules/@intlify/core-base/dist/core-base.js +835 -0
  29. package/dist/node_modules/.pnpm/@intlify_message-compiler@11.3.0/node_modules/@intlify/message-compiler/dist/message-compiler.js +771 -0
  30. package/dist/node_modules/.pnpm/@intlify_message-compiler@11.4.6/node_modules/@intlify/message-compiler/dist/message-compiler.js +771 -0
  31. package/dist/node_modules/.pnpm/@intlify_shared@11.3.0/node_modules/@intlify/shared/dist/shared.js +105 -0
  32. package/dist/node_modules/.pnpm/@intlify_shared@11.4.6/node_modules/@intlify/shared/dist/shared.js +130 -0
  33. package/dist/node_modules/.pnpm/sortablejs@1.15.7/node_modules/sortablejs/modular/sortable.esm.js +2 -1
  34. package/dist/node_modules/.pnpm/{three@0.180.0 → three@0.184.0}/node_modules/three/examples/jsm/controls/OrbitControls.js +26 -5
  35. package/dist/node_modules/.pnpm/{three@0.180.0 → three@0.184.0}/node_modules/three/examples/jsm/curves/NURBSCurve.js +1 -1
  36. package/dist/node_modules/.pnpm/{three@0.180.0 → three@0.184.0}/node_modules/three/examples/jsm/curves/NURBSUtils.js +1 -1
  37. package/dist/node_modules/.pnpm/{three@0.180.0 → three@0.184.0}/node_modules/three/examples/jsm/libs/fflate.module.js +1 -1
  38. package/dist/node_modules/.pnpm/{three@0.180.0 → three@0.184.0}/node_modules/three/examples/jsm/loaders/FBXLoader.js +173 -121
  39. package/dist/node_modules/.pnpm/{three@0.180.0 → three@0.184.0}/node_modules/three/examples/jsm/loaders/FontLoader.js +14 -13
  40. package/dist/node_modules/.pnpm/{three@0.180.0 → three@0.184.0}/node_modules/three/examples/jsm/loaders/GLTFLoader.js +306 -308
  41. package/dist/node_modules/.pnpm/{three@0.180.0 → three@0.184.0}/node_modules/three/examples/jsm/utils/BufferGeometryUtils.js +1 -1
  42. package/dist/node_modules/.pnpm/three@0.184.0/node_modules/three/examples/jsm/utils/SkeletonUtils.js +20 -0
  43. package/dist/node_modules/.pnpm/three@0.185.0/node_modules/three/examples/jsm/controls/OrbitControls.js +445 -0
  44. package/dist/node_modules/.pnpm/three@0.185.0/node_modules/three/examples/jsm/curves/NURBSCurve.js +31 -0
  45. package/dist/node_modules/.pnpm/three@0.185.0/node_modules/three/examples/jsm/curves/NURBSUtils.js +115 -0
  46. package/dist/node_modules/.pnpm/three@0.185.0/node_modules/three/examples/jsm/libs/fflate.module.js +250 -0
  47. package/dist/node_modules/.pnpm/three@0.185.0/node_modules/three/examples/jsm/loaders/FBXLoader.js +1437 -0
  48. package/dist/node_modules/.pnpm/three@0.185.0/node_modules/three/examples/jsm/loaders/FontLoader.js +70 -0
  49. package/dist/node_modules/.pnpm/three@0.185.0/node_modules/three/examples/jsm/loaders/GLTFLoader.js +1344 -0
  50. package/dist/node_modules/.pnpm/three@0.185.0/node_modules/three/examples/jsm/utils/BufferGeometryUtils.js +23 -0
  51. package/dist/node_modules/.pnpm/three@0.185.0/node_modules/three/examples/jsm/utils/SkeletonUtils.js +20 -0
  52. package/dist/node_modules/.pnpm/vue-i18n@11.3.0_vue@3.6.0-beta.9_typescript@5.9.3_/node_modules/vue-i18n/dist/vue-i18n.js +518 -0
  53. package/dist/node_modules/.pnpm/vue-i18n@11.4.6_vue@3.6.0-beta.17_typescript@5.9.3_/node_modules/vue-i18n/dist/vue-i18n.js +540 -0
  54. package/dist/packages/exploria-ui/src/components/advanced/EParallaxScrolling/EParallaxScrolling.vue.js +1 -1
  55. package/dist/packages/exploria-ui/src/components/advanced/EParallaxScrolling/EParallaxScrolling.vue_vue_type_script_setup_true_lang.js +78 -31
  56. package/dist/packages/exploria-ui/src/components/advanced/ERollingFollow/ERollingFollow.vue.js +3 -3
  57. package/dist/packages/exploria-ui/src/components/basic/EBadge/EBadge.vue.js +1 -1
  58. package/dist/packages/exploria-ui/src/components/basic/EBadge/EBadge.vue_vue_type_script_setup_true_lang.js +25 -17
  59. package/dist/packages/exploria-ui/src/components/basic/ECard/ECard.vue.js +1 -1
  60. package/dist/packages/exploria-ui/src/components/data/ECalendar.vue.js +1 -1
  61. package/dist/packages/exploria-ui/src/components/data/ECalendar.vue_vue_type_script_setup_true_lang.js +64 -34
  62. package/dist/packages/exploria-ui/src/components/data/ECarousel/ECarousel.vue.js +1 -1
  63. package/dist/packages/exploria-ui/src/components/data/ECarousel/ECarousel.vue_vue_type_script_setup_true_lang.js +125 -51
  64. package/dist/packages/exploria-ui/src/components/data/ECodeCollapse/ECodeCollapse.vue.js +1 -1
  65. package/dist/packages/exploria-ui/src/components/data/ECollapse/ECollapse.vue.js +1 -1
  66. package/dist/packages/exploria-ui/src/components/data/ECollapse/ECollapse.vue_vue_type_script_setup_true_lang.js +11 -12
  67. package/dist/packages/exploria-ui/src/components/data/EMediaViewer/EMediaViewer.js +47 -22
  68. package/dist/packages/exploria-ui/src/components/data/EMediaViewer/EMediaViewer.vue.js +1 -1
  69. package/dist/packages/exploria-ui/src/components/data/EMediaViewer/EMediaViewer.vue_vue_type_script_setup_true_lang.js +180 -39
  70. package/dist/packages/exploria-ui/src/components/data/EProgress.vue_vue_type_script_setup_true_lang.js +1 -1
  71. package/dist/packages/exploria-ui/src/components/data/ESteps/EStepItem.vue.js +7 -0
  72. package/dist/packages/exploria-ui/src/components/data/ESteps/EStepItem.vue_vue_type_script_setup_true_lang.js +144 -0
  73. package/dist/packages/exploria-ui/src/components/data/ESteps/ESteps.vue.js +7 -0
  74. package/dist/packages/exploria-ui/src/components/data/ESteps/ESteps.vue_vue_type_script_setup_true_lang.js +25 -0
  75. package/dist/packages/exploria-ui/src/components/data/ETable/ETable.vue.js +1 -1
  76. package/dist/packages/exploria-ui/src/components/data/EWaterfall/EWaterfall.vue.js +7 -0
  77. package/dist/packages/exploria-ui/src/components/data/EWaterfall/EWaterfall.vue_vue_type_script_setup_true_lang.js +68 -0
  78. package/dist/packages/exploria-ui/src/components/feedback/EDialog/EDialog.vue.js +1 -1
  79. package/dist/packages/exploria-ui/src/components/feedback/EDialog/EDialog.vue_vue_type_script_setup_true_lang.js +86 -48
  80. package/dist/packages/exploria-ui/src/components/feedback/EDrawer/EDrawer.vue.js +1 -1
  81. package/dist/packages/exploria-ui/src/components/feedback/EDrawer/EDrawer.vue_vue_type_script_setup_true_lang.js +47 -45
  82. package/dist/packages/exploria-ui/src/components/feedback/EMessage/EMessage.js +81 -32
  83. package/dist/packages/exploria-ui/src/components/feedback/EMessage/EMessage.vue.js +1 -1
  84. package/dist/packages/exploria-ui/src/components/feedback/EMessageBox/EMessageBox.js +96 -19
  85. package/dist/packages/exploria-ui/src/components/feedback/EMessageBox/EMessageBox.vue.js +1 -1
  86. package/dist/packages/exploria-ui/src/components/feedback/EMessageBox/EMessageBox.vue_vue_type_script_setup_true_lang.js +48 -25
  87. package/dist/packages/exploria-ui/src/components/feedback/ENotification/ENotification.js +99 -92
  88. package/dist/packages/exploria-ui/src/components/feedback/ENotification/ENotification.vue.js +1 -1
  89. package/dist/packages/exploria-ui/src/components/feedback/ENotification/ENotification.vue_vue_type_script_setup_true_lang.js +41 -31
  90. package/dist/packages/exploria-ui/src/components/feedback/EPopover.vue.js +1 -1
  91. package/dist/packages/exploria-ui/src/components/feedback/EPopover.vue_vue_type_script_setup_true_lang.js +48 -46
  92. package/dist/packages/exploria-ui/src/components/feedback/ETooltip.vue.js +1 -1
  93. package/dist/packages/exploria-ui/src/components/feedback/ETooltip.vue_vue_type_script_setup_true_lang.js +44 -36
  94. package/dist/packages/exploria-ui/src/components/form/EColorPicker.vue.js +1 -1
  95. package/dist/packages/exploria-ui/src/components/form/EColorPicker.vue_vue_type_script_setup_true_lang.js +209 -101
  96. package/dist/packages/exploria-ui/src/components/form/EConditionGroup/EConditionGroup.vue.js +1 -1
  97. package/dist/packages/exploria-ui/src/components/form/EConditionGroup/EConditionGroup.vue_vue_type_script_setup_true_lang.js +34 -32
  98. package/dist/packages/exploria-ui/src/components/form/EFileSelector.vue.js +1 -1
  99. package/dist/packages/exploria-ui/src/components/form/EFileSelector.vue_vue_type_script_setup_true_lang.js +43 -16
  100. package/dist/packages/exploria-ui/src/components/form/EFormItem.vue.js +1 -1
  101. package/dist/packages/exploria-ui/src/components/form/EInput/EInput.vue.js +1 -1
  102. package/dist/packages/exploria-ui/src/components/form/EInput/EInput.vue_vue_type_script_setup_true_lang.js +67 -79
  103. package/dist/packages/exploria-ui/src/components/form/ERadio.vue.js +1 -1
  104. package/dist/packages/exploria-ui/src/components/form/ESelect/ESelect.vue.js +1 -1
  105. package/dist/packages/exploria-ui/src/components/form/ESelect/ESelect.vue_vue_type_script_setup_true_lang.js +49 -47
  106. package/dist/packages/exploria-ui/src/components/geometry/ECube.vue.js +3 -7
  107. package/dist/packages/exploria-ui/src/components/geometry/ECube.vue_vue_type_script_setup_true_lang.js +11 -0
  108. package/dist/packages/exploria-ui/src/components/hooks/useLiquidGlass.js +63 -0
  109. package/dist/packages/exploria-ui/src/components/hooks/useZIndex.js +15 -0
  110. package/dist/packages/exploria-ui/src/components/layout/EDivider.vue.js +3 -5
  111. package/dist/packages/exploria-ui/src/components/layout/EDivider.vue_vue_type_script_setup_true_lang.js +33 -10
  112. package/dist/packages/exploria-ui/src/components/layout/EScrollbar.vue_vue_type_script_setup_true_lang.js +1 -1
  113. package/dist/packages/exploria-ui/src/components/navigation/EDropdown.vue.js +1 -1
  114. package/dist/packages/exploria-ui/src/components/navigation/EDropdown.vue_vue_type_script_setup_true_lang.js +53 -51
  115. package/dist/packages/exploria-ui/src/components/navigation/ETabs/ETabs.vue.js +1 -1
  116. package/dist/packages/exploria-ui/src/components/navigation/ETabs/ETabs.vue_vue_type_script_setup_true_lang.js +5 -5
  117. package/dist/packages/exploria-ui/src/utils/EDomUtil.js +11 -11
  118. package/dist/packages/exploria-ui/src/utils/EEventBus.js +16 -0
  119. package/dist/packages/exploria-ui/src/utils/EJSONUtil.js +12 -0
  120. package/dist/packages/exploria-ui/src/utils/EThreeUtil.js +4 -4
  121. package/dist/packages/exploria-ui/src/utils/ETimeUtil.js +21 -0
  122. package/dist/plugins/ESvgSpriteBuilder.d.ts +1 -1
  123. package/dist/plugins/index.js +44 -44
  124. package/dist/utils/index.d.ts +6 -0
  125. package/dist/utils/index.js +13 -7
  126. package/package.json +3 -3
package/README.md CHANGED
@@ -1,37 +1,28 @@
1
1
  # Exploria UI
2
2
 
3
- ## 项目简介
3
+ 下一代 Vue 3.6 + Vite UI 组件库,基于 OXC 工具链构建,采用 **Monorepo 架构**,提供丰富的组件、插件、工具和指令。
4
4
 
5
- 🚀 下一代 Vue 3.6 + Vite UI 组件库,基于 OXC 工具链构建,采用 **Monorepo 架构**,提供丰富的组件、插件、工具和指令,满足各类业务场景需求。
5
+ ## 核心特性
6
6
 
7
- ### 核心特性
8
-
9
- - **完整生态**:包含组件集、插件集、工具集和指令集四大核心模块
7
+ - **完整生态**:组件集、插件集、工具集和指令集四大核心模块
10
8
  - **组件丰富**:覆盖多种业务场景,提供高质量 UI 组件
11
9
  - **易用性强**:API 设计对齐 Element Plus,零学习成本
12
10
  - **类型安全**:TypeScript 全量类型支持
13
11
  - **性能优异**:基于 Vue 3.6 和 Vite 构建,加载速度快
14
- - **现代工具链**:集成 OXC 工具链,提供极速的代码检查和格式化
15
-
16
- ### 主要开发者
17
-
18
- **作者:liketype** - 本组件库的核心开发者,微信号:yywd479
12
+ - **现代工具链**:集成 OXC 工具链,极速代码检查和格式化
13
+ - **AI 集成**:内置 MCP Server,AI IDE 可直接读取组件源码
19
14
 
20
- ## 安装方式
15
+ ## 安装
21
16
 
22
17
  ```sh
23
18
  pnpm add exploria-ui
24
19
  ```
25
20
 
26
- ## 模块导入说明
21
+ ## 模块导入
27
22
 
28
- ### 支持的导入方式
23
+ Exploria UI 仅支持 **ES 模块(ESM)** 按需导入。
29
24
 
30
- Exploria UI 仅支持 **ES 模块(ESM)** 的按需导入方式,不支持 CommonJS、UMD 等其他模块类型。采用按需导入可以有效减小打包体积,提升应用性能。
31
-
32
- ### 导入示例
33
-
34
- #### 1. 组件导入
25
+ ### 组件
35
26
 
36
27
  ```javascript
37
28
  import { createApp } from 'vue';
@@ -45,7 +36,7 @@ app.use(EInput);
45
36
  app.mount('#app');
46
37
  ```
47
38
 
48
- #### 2. 插件导入
39
+ ### 插件
49
40
 
50
41
  ```javascript
51
42
  import { createApp } from 'vue';
@@ -54,21 +45,19 @@ import { ESvgSpriteBuilder } from 'exploria-ui/plugins';
54
45
 
55
46
  const app = createApp(App);
56
47
  app.use(ESvgSpriteBuilder, {
57
- // 配置选项
48
+ /* 配置选项 */
58
49
  });
59
50
  app.mount('#app');
60
51
  ```
61
52
 
62
- #### 3. 工具函数导入
53
+ ### 工具函数
63
54
 
64
55
  ```javascript
65
56
  import { EDomUtil } from 'exploria-ui/utils';
66
-
67
- // 使用 DOM 工具函数
68
57
  EDomUtil.addClass(element, 'active');
69
58
  ```
70
59
 
71
- #### 4. 指令导入
60
+ ### 指令
72
61
 
73
62
  ```javascript
74
63
  import { createApp } from 'vue';
@@ -82,106 +71,118 @@ app.mount('#app');
82
71
 
83
72
  ## 核心架构
84
73
 
85
- Exploria UI 组件库由四个核心部分构成,形成完整的 UI 解决方案:
74
+ | 模块 | 说明 | 示例 |
75
+ | ------ | ---------------------- | --------------------------------------- |
76
+ | 组件集 | UI 组件,按功能分 8 类 | EButton、EInput、ETable |
77
+ | 插件集 | 可扩展功能模块 | ESvgSpriteBuilder、EPreloadImageBuilder |
78
+ | 工具集 | 实用工具函数 | EDomUtil、EAnimateCSSUtil、EEventBus |
79
+ | 指令集 | Vue 自定义指令 | EDrag、ESizeOb、ESlideIn |
86
80
 
87
- ### 1. 组件集
81
+ ### 组件分类
88
82
 
89
- 组件集是 Exploria UI 的核心,包含丰富的 UI 组件,按功能划分为多个模块:
83
+ | 分类 | 说明 |
84
+ | ---------- | --------------------------------------- |
85
+ | basic | 基础组件:按钮、图标、下划线等 |
86
+ | form | 表单组件:输入框、选择器、复选框等 |
87
+ | data | 数据组件:表格、列表、轮播图等 |
88
+ | feedback | 反馈组件:对话框、消息提示、通知等 |
89
+ | layout | 布局组件:容器、分割线、滚动条等 |
90
+ | navigation | 导航组件:标签页、下拉菜单等 |
91
+ | advanced | 高级组件:虚拟列表、水印、滚动视差等 |
92
+ | geometry | 几何组件:立方体等 3D 可视化 |
93
+ | hooks | 组合式函数:useLiquidGlass、usePosition |
90
94
 
91
- - **基础组件**:按钮、图标、下划线等基础 UI 元素
92
- - **数据组件**:表格、列表、轮播图等数据展示组件
93
- - **表单组件**:输入框、选择器、复选框等表单控件
94
- - **反馈组件**:对话框、消息提示、通知等用户反馈组件
95
- - **布局组件**:容器、分割线、滚动条等布局元素
96
- - **导航组件**:标签页、下拉菜单等导航组件
97
- - **高级组件**:虚拟列表、水印、滚动视差等高级功能组件
98
- - **3D组件**:立方体等 3D 可视化组件
95
+ ## MCP Server 源码读取
99
96
 
100
- ### 2. 插件集
97
+ Exploria UI 内置 MCP Server(`exploria-ui-mcp-server`),AI IDE(如 Trae)可通过 Streamable HTTP 协议直接读取组件库源码,获取组件用法、API 和实现细节。
101
98
 
102
- 插件集提供可扩展的功能模块,用于增强组件库的能力:
99
+ ### 分环境读取机制
103
100
 
104
- - **SVG 精灵构建器**:自动构建 SVG 精灵图,优化图标加载
105
- - **图片预加载构建器**:预加载图片资源,提升用户体验
106
- - **SVG 兼容修复**:解决 SVG 在不同浏览器的兼容问题
101
+ MCP Server 根据运行环境自动选择源码读取路径:
107
102
 
108
- ### 3. 工具集
103
+ | 环境 | 源码目录 | 说明 |
104
+ | -------- | -------------------------- | ---------------------------------------- |
105
+ | 开发环境 | `packages/exploria-ui/src` | 直接读取 Monorepo 中的源码,修改即时生效 |
106
+ | 生产环境 | `mcp-server/code/` | 读取打包时复制的源码副本,独立部署 |
109
107
 
110
- 工具集包含各类实用工具函数,简化开发流程:
108
+ **判断逻辑**:若 `NODE_ENV=development` 或开发路径存在,则使用开发路径;否则回退到生产路径。
111
109
 
112
- - **DOM 操作工具**:便捷的 DOM 操作方法
113
- - **动画工具**:基于 Animate.css 的动画封装
114
- - **图表工具**:ECharts 图表的封装和扩展
115
- - **事件总线**:全局事件管理
116
- - **本地存储工具**:增强的 localStorage 操作
117
- - **时间工具**:日期时间格式化和计算
118
- - **UUID 工具**:生成唯一标识符
119
- - **图片工具**:图片处理和优化
120
- - **Three.js 工具**:3D 渲染相关工具
110
+ ### 开发环境
121
111
 
122
- ### 4. 指令集
112
+ ```sh
113
+ cd mcp-server
114
+ pnpm dev
115
+ ```
116
+
117
+ 启动后直接读取 `packages/exploria-ui/src` 目录,源码修改后热重载即时生效。
123
118
 
124
- 指令集提供实用的 Vue 自定义指令,扩展 Vue 的能力:
119
+ ### 生产环境(打包)
125
120
 
126
- - **拖拽指令**:实现元素拖拽功能
127
- - **尺寸观察指令**:监听元素尺寸变化
128
- - **滑入动画指令**:元素进入视口时的动画效果
121
+ ```sh
122
+ cd mcp-server
123
+ pnpm build
124
+ ```
129
125
 
130
- ## 目录说明
126
+ 打包流程:
131
127
 
132
- ### 发布包含的文件
128
+ 1. **复制源码**:自动将 `packages/exploria-ui/src` 复制到 `mcp-server/code/`
129
+ 2. **构建服务**:Vite 将 `src/index.ts` 编译为 `dist/index.js`
130
+ 3. **发布产物**:`dist/index.js` + `code/` + `package.json` + `README.md`
133
131
 
134
- 根据 `package.json` 中的 `files` 字段定义,Exploria UI 发布时包含以下文件:
132
+ 启动生产服务:
135
133
 
134
+ ```sh
135
+ pnpm start
136
136
  ```
137
- - dist/ # 构建输出目录
138
- - package.json # 项目配置文件
139
- - README.md # 项目文档
140
- ```
141
137
 
142
- ### 构建输出目录结构
138
+ ### MCP 工具
139
+
140
+ | 工具 | 说明 |
141
+ | ----------------- | ---------------------------------------- |
142
+ | `get_full_list` | 获取所有组件、指令、插件和工具的完整列表 |
143
+ | `get_source_code` | 获取指定项目的完整源码(包含本地依赖) |
144
+
145
+ ### 端点
143
146
 
144
- 以下是 Exploria UI 组件库的构建输出目录结构说明:
147
+ | 端点 | 方法 | 说明 |
148
+ | --------- | ---- | -------------------- |
149
+ | `/mcp` | POST | JSON-RPC 请求/响应 |
150
+ | `/mcp` | GET | SSE 流(服务端推送) |
151
+ | `/health` | GET | 健康检查 |
152
+
153
+ ## 目录结构
154
+
155
+ ### 源码目录 (`src/`)
145
156
 
146
157
  ```
147
- dist/
148
- ├── _virtual/ # 虚拟文件目录
149
- │ └── _plugin-vue_export-helper.js # Vue 插件导出辅助文件
150
- ├── components/ # 组件构建输出目录
151
- │ ├── advanced/ # 高级组件(虚拟列表、水印等)
152
- │ ├── basic/ # 基础组件(按钮、图标等)
153
- │ ├── data/ # 数据组件(表格、轮播图等)
154
- │ ├── feedback/ # 反馈组件(对话框、消息提示等)
155
- │ ├── form/ # 表单组件(输入框、选择器等)
156
- │ ├── geometry/ # 几何组件
157
- │ ├── hooks/ # 组件钩子函数
158
- │ ├── layout/ # 布局组件
159
- │ ├── navigation/ # 导航组件(标签页、下拉菜单等)
160
- │ ├── index.d.ts # 组件类型声明入口文件
161
- │ └── index.js # 组件入口文件
162
- ├── directives/ # 指令构建输出目录
163
- │ ├── *.d.ts # 各指令类型声明文件
164
- │ ├── index.d.ts # 指令类型声明入口文件
165
- │ └── index.js # 指令入口文件
166
- ├── plugins/ # 插件构建输出目录
167
- │ ├── *.d.ts # 各插件类型声明文件
168
- │ ├── index.d.ts # 插件类型声明入口文件
169
- │ └── index.js # 插件入口文件
170
- ├── utils/ # 工具函数构建输出目录
171
- │ ├── *.d.ts # 各工具类型声明文件
172
- │ ├── index.d.ts # 工具类型声明入口文件
173
- │ └── index.js # 工具入口文件
174
- └── index.css # 主样式文件
158
+ src/
159
+ ├── components/ # 组件集
160
+ │ ├── advanced/ # 高级组件
161
+ │ ├── basic/ # 基础组件
162
+ │ ├── data/ # 数据组件
163
+ │ ├── feedback/ # 反馈组件
164
+ │ ├── form/ # 表单组件
165
+ │ ├── geometry/ # 几何组件
166
+ │ ├── hooks/ # 组合式函数
167
+ │ ├── layout/ # 布局组件
168
+ │ ├── navigation/ # 导航组件
169
+ │ ├── style/ # 样式系统
170
+ │ └── types/ # 类型定义
171
+ ├── directives/ # 指令集
172
+ ├── plugins/ # 插件集
173
+ └── utils/ # 工具集
175
174
  ```
176
175
 
177
- ### 目录说明
176
+ ### 构建输出 (`dist/`)
178
177
 
179
- 1. **dist/components/** - 组件构建输出目录,包含所有组件的 ES 模块文件和类型声明
180
- 2. **dist/directives/** - 指令构建输出目录,包含所有自定义指令及其类型声明
181
- 3. **dist/plugins/** - 插件构建输出目录,包含所有插件模块及其类型声明
182
- 4. **dist/utils/** - 工具函数构建输出目录,包含所有工具函数及其类型声明
183
- 5. **dist/index.css** - 主样式文件,包含所有组件的样式定义
184
- 6. **dist/\_virtual/** - 虚拟文件目录,包含构建过程中生成的辅助文件
178
+ ```
179
+ dist/
180
+ ├── components/ # 组件 ES 模块 + 类型声明
181
+ ├── directives/ # 指令 ES 模块 + 类型声明
182
+ ├── plugins/ # 插件 ES 模块 + 类型声明
183
+ ├── utils/ # 工具 ES 模块 + 类型声明
184
+ └── index.css # 主样式文件
185
+ ```
185
186
 
186
187
  ## 技术栈
187
188
 
@@ -202,14 +203,10 @@ dist/
202
203
 
203
204
  ## 许可证
204
205
 
205
- 本项目基于 [MIT License](LICENSE) 开源。
206
+ [MIT License](LICENSE)
206
207
 
207
208
  ## 联系方式
208
209
 
209
- - **作者:liketype** - 微信号:yywd479
210
- - 组件库源码:<https://gitee.com/exploria-team/exploria-ui-document>
211
- - 组件库文档:<http://exploria-ui.zzrkyd.cn/>
212
-
213
- ---
214
-
215
- Built with ❤️ using Vue 3.6 + Vite + OXC
210
+ - **作者**:liketype - 微信号:yywd479
211
+ - **源码**:<https://gitee.com/exploria-team/exploria-ui-document>
212
+ - **文档**:<http://exploria-ui.zzrkyd.cn/>
@@ -1,10 +1,14 @@
1
1
  type __VLS_Props = {
2
- /** 图片地址列表,至少 1 张 */
3
2
  imgList: string[];
4
- /** 容器高度,默认 400px */
5
3
  height?: string;
4
+ duration?: string;
5
+ timing?: string;
6
+ autoplay?: boolean;
7
+ interval?: number;
6
8
  };
7
- declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {
8
- 'parallax-scrolling': HTMLDivElement;
9
- }, HTMLDivElement>;
9
+ declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
10
+ change: (index: number) => any;
11
+ }, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{
12
+ onChange?: ((index: number) => any) | undefined;
13
+ }>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
10
14
  export default _default;
@@ -6,6 +6,7 @@ type __VLS_Props = {
6
6
  size?: ESize;
7
7
  showZero?: boolean;
8
8
  dot?: boolean;
9
+ bookmark?: boolean;
9
10
  };
10
11
  declare function __VLS_template(): {
11
12
  attrs: Partial<{}>;
@@ -5,5 +5,7 @@ declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {
5
5
  "update:model-value": (value: Date) => any;
6
6
  }, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{
7
7
  "onUpdate:model-value"?: ((value: Date) => any) | undefined;
8
- }>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
8
+ }>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {
9
+ calendarRef: HTMLDivElement;
10
+ }, HTMLDivElement>;
9
11
  export default _default;
@@ -14,6 +14,8 @@ declare function __VLS_template(): {
14
14
  };
15
15
  refs: {
16
16
  carouselRef: HTMLDivElement;
17
+ arrowCanvas: HTMLCanvasElement;
18
+ indicatorCanvas: HTMLCanvasElement;
17
19
  };
18
20
  rootEl: HTMLDivElement;
19
21
  };
@@ -26,6 +28,8 @@ declare const __VLS_component: import('vue').DefineComponent<__VLS_Props, {}, {}
26
28
  "onUpdate:model-value"?: ((value: number) => any) | undefined;
27
29
  }>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {
28
30
  carouselRef: HTMLDivElement;
31
+ arrowCanvas: HTMLCanvasElement;
32
+ indicatorCanvas: HTMLCanvasElement;
29
33
  }, HTMLDivElement>;
30
34
  declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
31
35
  export default _default;
@@ -0,0 +1,40 @@
1
+ type __VLS_Props = {
2
+ title?: string;
3
+ description?: string;
4
+ loading?: boolean;
5
+ };
6
+ declare function __VLS_template(): {
7
+ attrs: Partial<{}>;
8
+ slots: Readonly<{
9
+ icon?: (props: {
10
+ index: number;
11
+ status: string;
12
+ }) => any;
13
+ default?: () => any;
14
+ }> & {
15
+ icon?: (props: {
16
+ index: number;
17
+ status: string;
18
+ }) => any;
19
+ default?: () => any;
20
+ };
21
+ refs: {
22
+ stepItemRef: HTMLDivElement;
23
+ };
24
+ rootEl: HTMLDivElement;
25
+ };
26
+ type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
27
+ declare const __VLS_component: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
28
+ title: string;
29
+ loading: boolean;
30
+ description: string;
31
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {
32
+ stepItemRef: HTMLDivElement;
33
+ }, HTMLDivElement>;
34
+ declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
35
+ export default _default;
36
+ type __VLS_WithTemplateSlots<T, S> = T & {
37
+ new (): {
38
+ $slots: S;
39
+ };
40
+ };
@@ -0,0 +1,30 @@
1
+ import { ESize } from '../../types/size';
2
+ type __VLS_Props = {
3
+ activeStep?: number;
4
+ direction?: 'horizontal' | 'vertical';
5
+ size?: ESize;
6
+ finishStatus?: 'primary' | 'success' | 'warning' | 'danger';
7
+ };
8
+ declare function __VLS_template(): {
9
+ attrs: Partial<{}>;
10
+ slots: {
11
+ default?(_: {}): any;
12
+ };
13
+ refs: {};
14
+ rootEl: HTMLDivElement;
15
+ };
16
+ type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
17
+ declare const __VLS_component: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
18
+ change: (value: number) => any;
19
+ "update:activeStep": (value: number) => any;
20
+ }, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{
21
+ onChange?: ((value: number) => any) | undefined;
22
+ "onUpdate:activeStep"?: ((value: number) => any) | undefined;
23
+ }>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
24
+ declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
25
+ export default _default;
26
+ type __VLS_WithTemplateSlots<T, S> = T & {
27
+ new (): {
28
+ $slots: S;
29
+ };
30
+ };
@@ -0,0 +1,33 @@
1
+ declare const _default: <T extends Record<string, any>>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_expose?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
2
+ props: __VLS_PrettifyLocal<Pick<Partial<{}> & Omit<{
3
+ readonly onScroll?: ((event: Event) => any) | undefined;
4
+ readonly "onLoad-more"?: (() => any) | undefined;
5
+ } & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps, never>, "onScroll" | "onLoad-more"> & {
6
+ columns?: number;
7
+ gap?: number;
8
+ data?: T[];
9
+ searchKey?: string;
10
+ searchFields?: (keyof T)[];
11
+ loading?: boolean;
12
+ } & Partial<{}>> & import('vue').PublicProps;
13
+ expose(exposed: import('vue').ShallowUnwrapRef<{
14
+ scrollTo: (options: ScrollToOptions | number) => void;
15
+ readonly el: HTMLElement | null;
16
+ }>): void;
17
+ attrs: any;
18
+ slots: {
19
+ default?(_: {
20
+ item: T;
21
+ index: number;
22
+ }): any;
23
+ loading?(_: {}): any;
24
+ empty?(_: {}): any;
25
+ };
26
+ emit: ((evt: "scroll", event: Event) => void) & ((evt: "load-more") => void);
27
+ }>) => import('vue').VNode & {
28
+ __ctx?: Awaited<typeof __VLS_setup>;
29
+ };
30
+ export default _default;
31
+ type __VLS_PrettifyLocal<T> = {
32
+ [K in keyof T]: T[K];
33
+ } & {};
@@ -6,7 +6,10 @@ interface ModalProps {
6
6
  okText?: string;
7
7
  cancelText?: string;
8
8
  size?: ESize;
9
- isWaitingOpen?: boolean;
9
+ showFooter?: boolean;
10
+ animationReferenceElement?: HTMLElement | {
11
+ $el: HTMLElement;
12
+ };
10
13
  }
11
14
  declare function __VLS_template(): {
12
15
  attrs: Partial<{}>;
@@ -22,15 +25,13 @@ type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
22
25
  declare const __VLS_component: import('vue').DefineComponent<ModalProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
23
26
  cancel: () => any;
24
27
  close: () => any;
25
- "update:open": (open: boolean) => any;
26
28
  ok: () => any;
27
- "update:isWaitingOpen": (open: boolean) => any;
29
+ "update:open": (open: boolean) => any;
28
30
  }, string, import('vue').PublicProps, Readonly<ModalProps> & Readonly<{
29
31
  onCancel?: (() => any) | undefined;
30
32
  onClose?: (() => any) | undefined;
31
- "onUpdate:open"?: ((open: boolean) => any) | undefined;
32
33
  onOk?: (() => any) | undefined;
33
- "onUpdate:isWaitingOpen"?: ((open: boolean) => any) | undefined;
34
+ "onUpdate:open"?: ((open: boolean) => any) | undefined;
34
35
  }>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {
35
36
  modal: HTMLDivElement;
36
37
  }, any>;
@@ -25,13 +25,13 @@ type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
25
25
  declare const __VLS_component: import('vue').DefineComponent<DrawerProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
26
26
  cancel: () => any;
27
27
  close: () => any;
28
- "update:open": (open: boolean) => any;
29
28
  ok: () => any;
29
+ "update:open": (open: boolean) => any;
30
30
  }, string, import('vue').PublicProps, Readonly<DrawerProps> & Readonly<{
31
31
  onCancel?: (() => any) | undefined;
32
32
  onClose?: (() => any) | undefined;
33
- "onUpdate:open"?: ((open: boolean) => any) | undefined;
34
33
  onOk?: (() => any) | undefined;
34
+ "onUpdate:open"?: ((open: boolean) => any) | undefined;
35
35
  }>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {
36
36
  eDrawerWrapperRef: HTMLDivElement;
37
37
  }, any>;
@@ -1,10 +1,12 @@
1
1
  import { default as Message } from './EMessage.vue';
2
2
  export default class EMessage {
3
3
  private static layout;
4
+ private static centerElement;
5
+ private static flipExisting;
4
6
  static show(str: string, type: InstanceType<typeof Message>['type'], duration?: number): () => void;
5
7
  static loading(str: string): () => void;
6
- static success(str: string, duration?: number): void;
7
- static error(str: string, duration?: number): void;
8
- static info(str: string, duration?: number): void;
9
- static warning(str: string, duration?: number): void;
8
+ static success(str: string, duration?: number): () => void;
9
+ static error(str: string, duration?: number): () => void;
10
+ static info(str: string, duration?: number): () => void;
11
+ static warning(str: string, duration?: number): () => void;
10
12
  }
@@ -1,5 +1,19 @@
1
+ interface MessageBoxOptions {
2
+ title?: string;
3
+ okText?: string;
4
+ cancelText?: string;
5
+ width?: string;
6
+ animationReferenceElement?: HTMLElement | {
7
+ $el: HTMLElement;
8
+ };
9
+ }
1
10
  export default class EMessageBox {
2
11
  private static show;
3
- static confirm(tips: string): Promise<boolean>;
4
- static prompt(tips: string): Promise<boolean>;
12
+ static confirm(tips: string, title?: string, options?: MessageBoxOptions): Promise<string | boolean>;
13
+ static prompt(tips: string, title?: string, options?: MessageBoxOptions): Promise<string | boolean>;
14
+ static warning(tips: string, title?: string, options?: MessageBoxOptions): Promise<string | boolean>;
15
+ static success(tips: string, title?: string, options?: MessageBoxOptions): Promise<string | boolean>;
16
+ static error(tips: string, title?: string, options?: MessageBoxOptions): Promise<string | boolean>;
17
+ static info(tips: string, title?: string, options?: MessageBoxOptions): Promise<string | boolean>;
5
18
  }
19
+ export {};
@@ -1,6 +1,7 @@
1
1
  type __VLS_Props = {
2
2
  type: 'prompt' | 'confirm' | 'info' | 'warning' | 'error' | 'success';
3
3
  title?: string;
4
+ message?: string;
4
5
  width?: string;
5
6
  okText?: string;
6
7
  cancelText?: string;
@@ -8,10 +9,10 @@ type __VLS_Props = {
8
9
  declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
9
10
  cancel: () => any;
10
11
  close: () => any;
11
- ok: () => any;
12
+ ok: (value: string) => any;
12
13
  }, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{
13
14
  onCancel?: (() => any) | undefined;
14
15
  onClose?: (() => any) | undefined;
15
- onOk?: (() => any) | undefined;
16
+ onOk?: ((value: string) => any) | undefined;
16
17
  }>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
17
18
  export default _default;
@@ -1,21 +1,20 @@
1
- import { EPlacement } from '../../types/placement.d.ts';
1
+ type NotificationPlacement = 'top-start' | 'top-end' | 'bottom-start' | 'bottom-end';
2
2
  interface NotificationOptions {
3
3
  title?: string;
4
4
  message: string;
5
5
  type?: 'success' | 'error' | 'warning' | 'info';
6
6
  duration?: number;
7
- placement?: EPlacement;
7
+ placement?: NotificationPlacement;
8
8
  showClose?: boolean;
9
9
  onClick?: () => void;
10
10
  }
11
11
  export default class ENotification {
12
12
  private static getContainerList;
13
13
  private static layout;
14
+ private static flipExisting;
14
15
  static show(options: string | NotificationOptions): {
15
16
  close: () => void;
16
17
  };
17
- private static getEnterTransform;
18
- private static getExitTransform;
19
18
  static success(options: string | NotificationOptions): {
20
19
  close: () => void;
21
20
  };
@@ -3,6 +3,7 @@ type __VLS_Props = {
3
3
  message: string;
4
4
  type?: 'success' | 'error' | 'warning' | 'info';
5
5
  showClose?: boolean;
6
+ duration?: number;
6
7
  };
7
8
  declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
8
9
  click: () => any;
@@ -1,15 +1,20 @@
1
1
  import { EPlacement } from '../types/placement';
2
2
  type __VLS_Props = {
3
- content: string;
3
+ content?: string;
4
4
  placement: EPlacement;
5
5
  open?: boolean;
6
6
  size?: any;
7
7
  showArrow?: boolean;
8
+ /**
9
+ * 是否禁用,禁用时鼠标悬浮不显示弹出层
10
+ */
11
+ disabled?: boolean;
8
12
  };
9
13
  declare function __VLS_template(): {
10
14
  attrs: Partial<{}>;
11
15
  slots: {
12
16
  default?(_: {}): any;
17
+ content?(_: {}): any;
13
18
  };
14
19
  refs: {
15
20
  eTooltipRef: HTMLDivElement;
@@ -1,8 +1,10 @@
1
+ import { EPlacement } from '../types/placement';
1
2
  import { ESize } from '../types/size';
2
3
  type __VLS_Props = {
3
4
  modelValue: string;
4
5
  size?: ESize;
5
6
  showArrow?: boolean;
7
+ placement?: EPlacement;
6
8
  };
7
9
  declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
8
10
  "update:modelValue": (...args: any[]) => void;