@h-ai/ui 0.1.0-alpha.25 → 0.1.0-alpha.27
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.
- package/README.md +28 -8
- package/auto-import.d.ts +5 -0
- package/auto-import.js +4 -0
- package/dist/components/compounds/Calendar.svelte +1 -1
- package/dist/components/compounds/DataTable.svelte +81 -4
- package/dist/components/compounds/DataTable.svelte.d.ts +7 -0
- package/dist/components/compounds/DatePicker.svelte +1 -1
- package/dist/components/compounds/Modal.svelte +44 -6
- package/dist/components/compounds/Pagination.svelte +72 -119
- package/dist/components/compounds/ToastContainer.svelte +159 -20
- package/dist/components/scenes/app/SettingsLayout.svelte +111 -0
- package/dist/components/scenes/app/SettingsLayout.svelte.d.ts +41 -0
- package/dist/components/scenes/app/ThemeColorPicker.svelte +41 -0
- package/dist/components/scenes/app/index.d.ts +1 -0
- package/dist/components/scenes/app/index.js +1 -0
- package/dist/components/scenes/crud/CrudFilterBar.svelte +173 -35
- package/dist/components/scenes/crud/CrudFilterBar.svelte.d.ts +7 -1
- package/dist/components/scenes/crud/CrudPage.svelte +19 -15
- package/dist/components/scenes/error/ErrorPage.svelte +125 -0
- package/dist/components/scenes/error/ErrorPage.svelte.d.ts +42 -0
- package/dist/components/scenes/error/error-presets.d.ts +24 -0
- package/dist/components/scenes/error/error-presets.js +31 -0
- package/dist/components/scenes/error/index.d.ts +8 -0
- package/dist/components/scenes/error/index.js +8 -0
- package/dist/components/scenes/iam/AuthShell.svelte +138 -0
- package/dist/components/scenes/iam/AuthShell.svelte.d.ts +45 -0
- package/dist/components/scenes/iam/index.d.ts +1 -0
- package/dist/components/scenes/iam/index.js +2 -1
- package/dist/components/scenes/index.d.ts +1 -0
- package/dist/components/scenes/index.js +2 -0
- package/dist/messages/en-US.json +20 -1
- package/dist/messages/zh-CN.json +20 -1
- package/dist/styles/global.css +4 -1
- package/dist/types.d.ts +6 -0
- package/package.json +9 -3
- package/vite.d.ts +13 -0
- package/vite.js +95 -0
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@h-ai/ui",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.1.0-alpha.
|
|
4
|
+
"version": "0.1.0-alpha.27",
|
|
5
5
|
"description": "Hai Framework UI component library for Svelte 5 Runes.",
|
|
6
6
|
"license": "Apache-2.0",
|
|
7
7
|
"svelte": "./dist/index.js",
|
|
@@ -15,6 +15,10 @@
|
|
|
15
15
|
"types": "./auto-import.d.ts",
|
|
16
16
|
"import": "./auto-import.js"
|
|
17
17
|
},
|
|
18
|
+
"./vite": {
|
|
19
|
+
"types": "./vite.d.ts",
|
|
20
|
+
"import": "./vite.js"
|
|
21
|
+
},
|
|
18
22
|
"./components/*": {
|
|
19
23
|
"types": "./dist/components/*.d.ts",
|
|
20
24
|
"svelte": "./dist/components/*.js",
|
|
@@ -27,7 +31,9 @@
|
|
|
27
31
|
"files": [
|
|
28
32
|
"auto-import.d.ts",
|
|
29
33
|
"auto-import.js",
|
|
30
|
-
"dist"
|
|
34
|
+
"dist",
|
|
35
|
+
"vite.d.ts",
|
|
36
|
+
"vite.js"
|
|
31
37
|
],
|
|
32
38
|
"publishConfig": {
|
|
33
39
|
"access": "public"
|
|
@@ -45,7 +51,7 @@
|
|
|
45
51
|
"mermaid": "^11.12.0",
|
|
46
52
|
"shiki": "^4.0.2",
|
|
47
53
|
"tailwind-merge": "^3.5.0",
|
|
48
|
-
"@h-ai/core": "0.1.0-alpha.
|
|
54
|
+
"@h-ai/core": "0.1.0-alpha.27"
|
|
49
55
|
},
|
|
50
56
|
"devDependencies": {
|
|
51
57
|
"@sveltejs/package": "^2.5.7",
|
package/vite.d.ts
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 类型声明:@h-ai/ui/vite 开发优化辅助。
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* hai 框架在开发态需要提前预打包的纯 JS 依赖清单。
|
|
7
|
+
*/
|
|
8
|
+
export declare const haiPrebundledDeps: readonly string[]
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* 需要从 Vite 依赖预打包中排除的依赖清单(bits-ui 及其 @internationalized/date 单实例)。
|
|
12
|
+
*/
|
|
13
|
+
export declare const haiOptimizeExclude: readonly string[]
|
package/vite.js
ADDED
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* =============================================================================
|
|
3
|
+
* @h-ai/ui - Vite 开发优化辅助
|
|
4
|
+
* =============================================================================
|
|
5
|
+
* 说明:
|
|
6
|
+
* @h-ai/ui 的 barrel 入口会静态引入语法高亮(shiki + 27 种语言定义)、
|
|
7
|
+
* Mermaid、Markdown、PDF 等较重的运行时依赖。这些依赖以纯 JS 形态存在,
|
|
8
|
+
* 若在首次进入相关路由时才被 Vite 依赖优化器发现,会触发一次
|
|
9
|
+
* "new dependencies optimized -> reloading" 的整页刷新(并伴随 daisyUI
|
|
10
|
+
* CSS 重新编译),表现为"点击后要等一会才刷新可用"。
|
|
11
|
+
*
|
|
12
|
+
* 将这些依赖加入各应用 `optimizeDeps.include`,让 Vite 在开发服务器启动时
|
|
13
|
+
* 一次性预打包,即可消除运行中途的再优化与整页刷新。
|
|
14
|
+
*
|
|
15
|
+
* 用法(应用 vite.config.ts):
|
|
16
|
+
* import { haiPrebundledDeps } from '@h-ai/ui/vite'
|
|
17
|
+
* optimizeDeps: {
|
|
18
|
+
* exclude: ['bits-ui'],
|
|
19
|
+
* include: [...haiPrebundledDeps],
|
|
20
|
+
* }
|
|
21
|
+
* =============================================================================
|
|
22
|
+
*/
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* hai 框架在开发态需要提前预打包的纯 JS 依赖清单。
|
|
26
|
+
*
|
|
27
|
+
* 这些依赖经由 @h-ai/ui 等框架包间接引入(如语法高亮、Mermaid、PDF、加密传输等),
|
|
28
|
+
* 若延迟到首次进入业务路由时才被 Vite 依赖优化器发现,会触发整页刷新。
|
|
29
|
+
* shiki 语言列表需与 `src/lib/components/scenes/ai/highlight.ts` 保持一致。
|
|
30
|
+
*
|
|
31
|
+
* @type {readonly string[]}
|
|
32
|
+
*/
|
|
33
|
+
export const haiPrebundledDeps = Object.freeze([
|
|
34
|
+
// ─── 语法高亮(shiki 核心 + 引擎 + 语言定义) ───
|
|
35
|
+
'shiki/core',
|
|
36
|
+
'shiki/engine/javascript',
|
|
37
|
+
'@shikijs/langs/bash',
|
|
38
|
+
'@shikijs/langs/c',
|
|
39
|
+
'@shikijs/langs/cpp',
|
|
40
|
+
'@shikijs/langs/csharp',
|
|
41
|
+
'@shikijs/langs/css',
|
|
42
|
+
'@shikijs/langs/diff',
|
|
43
|
+
'@shikijs/langs/go',
|
|
44
|
+
'@shikijs/langs/graphql',
|
|
45
|
+
'@shikijs/langs/html',
|
|
46
|
+
'@shikijs/langs/java',
|
|
47
|
+
'@shikijs/langs/javascript',
|
|
48
|
+
'@shikijs/langs/json',
|
|
49
|
+
'@shikijs/langs/kotlin',
|
|
50
|
+
'@shikijs/langs/lua',
|
|
51
|
+
'@shikijs/langs/markdown',
|
|
52
|
+
'@shikijs/langs/php',
|
|
53
|
+
'@shikijs/langs/python',
|
|
54
|
+
'@shikijs/langs/ruby',
|
|
55
|
+
'@shikijs/langs/rust',
|
|
56
|
+
'@shikijs/langs/scss',
|
|
57
|
+
'@shikijs/langs/shellscript',
|
|
58
|
+
'@shikijs/langs/sql',
|
|
59
|
+
'@shikijs/langs/swift',
|
|
60
|
+
'@shikijs/langs/toml',
|
|
61
|
+
'@shikijs/langs/typescript',
|
|
62
|
+
'@shikijs/langs/xml',
|
|
63
|
+
'@shikijs/langs/yaml',
|
|
64
|
+
// ─── 文档 / 图表 / 导出 ───
|
|
65
|
+
'marked',
|
|
66
|
+
'mermaid',
|
|
67
|
+
'jspdf',
|
|
68
|
+
'html2canvas',
|
|
69
|
+
// ─── 工具 ───
|
|
70
|
+
'tailwind-merge',
|
|
71
|
+
// ─── 框架运行时(@h-ai/core / @h-ai/crypto / @h-ai/kit 在登录等路径引入) ───
|
|
72
|
+
'nanoid',
|
|
73
|
+
'process',
|
|
74
|
+
'sm-crypto',
|
|
75
|
+
// ─── bits-ui 的纯 JS 传递依赖(bits-ui 自身因含 .svelte 仍需 exclude) ───
|
|
76
|
+
'bits-ui > @floating-ui/dom',
|
|
77
|
+
'bits-ui > @floating-ui/core',
|
|
78
|
+
'bits-ui > tabbable',
|
|
79
|
+
'bits-ui > esm-env',
|
|
80
|
+
])
|
|
81
|
+
|
|
82
|
+
/**
|
|
83
|
+
* 需要从 Vite 依赖预打包中排除的依赖清单。
|
|
84
|
+
*
|
|
85
|
+
* - bits-ui:自带 .svelte 源码,无法被 esbuild 预打包,须交给 vite-plugin-svelte。
|
|
86
|
+
* - @internationalized/date:bits-ui(被 exclude,按源码加载)内部用 `instanceof CalendarDate`
|
|
87
|
+
* 判别日期类型。若应用侧用「已优化」副本、bits-ui 用「原始」副本,会产生两个模块实例导致
|
|
88
|
+
* instanceof 失败并抛 "Unknown date type"。统一排除,使两侧都加载同一份原始 ESM,单实例。
|
|
89
|
+
*
|
|
90
|
+
* @type {readonly string[]}
|
|
91
|
+
*/
|
|
92
|
+
export const haiOptimizeExclude = Object.freeze([
|
|
93
|
+
'bits-ui',
|
|
94
|
+
'@internationalized/date',
|
|
95
|
+
])
|