@ptengine/design-components 0.6.0 → 0.7.0

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 (75) hide show
  1. package/CHANGELOG.md +95 -0
  2. package/COMPONENTS-DESIGN-SYSTEM.md +14 -2
  3. package/README.md +32 -13
  4. package/dist/components/ui/alert-dialog.d.ts.map +1 -1
  5. package/dist/components/ui/dialog.d.ts.map +1 -1
  6. package/dist/components/ui/drawer.d.ts.map +1 -1
  7. package/dist/components/ui/input-otp.d.ts.map +1 -1
  8. package/dist/components/ui/prompt-picker.d.ts +2 -2
  9. package/dist/components/ui/search-input.d.ts +3 -3
  10. package/dist/components/ui/select.d.ts +2 -2
  11. package/dist/components/ui/select.d.ts.map +1 -1
  12. package/dist/components/ui/sheet.d.ts.map +1 -1
  13. package/dist/components/ui/skeleton.d.ts.map +1 -1
  14. package/dist/index.cjs +2 -2
  15. package/dist/index.js +472 -467
  16. package/dist/style.css +398 -0
  17. package/package.json +8 -4
  18. package/src/components/ui/accordion.tsx +6 -6
  19. package/src/components/ui/alert-dialog.tsx +9 -7
  20. package/src/components/ui/alert.tsx +5 -5
  21. package/src/components/ui/attachment.tsx +15 -15
  22. package/src/components/ui/avatar.tsx +6 -6
  23. package/src/components/ui/badge.tsx +8 -8
  24. package/src/components/ui/breadcrumb.tsx +8 -8
  25. package/src/components/ui/bubble.tsx +15 -15
  26. package/src/components/ui/button-group.tsx +5 -5
  27. package/src/components/ui/button.tsx +16 -16
  28. package/src/components/ui/calendar.tsx +23 -23
  29. package/src/components/ui/card.tsx +6 -6
  30. package/src/components/ui/carousel.tsx +16 -16
  31. package/src/components/ui/chart.tsx +21 -21
  32. package/src/components/ui/checkbox.tsx +3 -3
  33. package/src/components/ui/command.tsx +12 -12
  34. package/src/components/ui/context-menu.tsx +16 -16
  35. package/src/components/ui/dialog.tsx +12 -10
  36. package/src/components/ui/drawer.tsx +9 -7
  37. package/src/components/ui/dropdown-menu.tsx +17 -17
  38. package/src/components/ui/empty.tsx +7 -7
  39. package/src/components/ui/field.tsx +18 -18
  40. package/src/components/ui/hover-card.tsx +1 -1
  41. package/src/components/ui/input-group.tsx +11 -11
  42. package/src/components/ui/input-otp.tsx +9 -9
  43. package/src/components/ui/input.tsx +1 -1
  44. package/src/components/ui/item.tsx +18 -18
  45. package/src/components/ui/kbd.tsx +2 -2
  46. package/src/components/ui/label.tsx +1 -1
  47. package/src/components/ui/marker.tsx +5 -5
  48. package/src/components/ui/menubar.tsx +18 -18
  49. package/src/components/ui/message-scroller.tsx +6 -6
  50. package/src/components/ui/message.tsx +6 -6
  51. package/src/components/ui/native-select.tsx +3 -3
  52. package/src/components/ui/navigation-menu.tsx +9 -9
  53. package/src/components/ui/pagination.tsx +9 -9
  54. package/src/components/ui/popover.tsx +1 -1
  55. package/src/components/ui/progress.tsx +2 -2
  56. package/src/components/ui/prompt-picker.tsx +25 -25
  57. package/src/components/ui/radio-group.tsx +4 -4
  58. package/src/components/ui/resizable.tsx +4 -4
  59. package/src/components/ui/scroll-area.tsx +6 -6
  60. package/src/components/ui/search-input.tsx +12 -12
  61. package/src/components/ui/select.tsx +17 -17
  62. package/src/components/ui/separator.tsx +2 -2
  63. package/src/components/ui/sheet.tsx +15 -13
  64. package/src/components/ui/sidebar.tsx +70 -70
  65. package/src/components/ui/skeleton.tsx +12 -1
  66. package/src/components/ui/slider.tsx +4 -4
  67. package/src/components/ui/sonner.tsx +4 -4
  68. package/src/components/ui/spinner.tsx +1 -1
  69. package/src/components/ui/switch.tsx +2 -2
  70. package/src/components/ui/table.tsx +9 -9
  71. package/src/components/ui/tabs.tsx +16 -16
  72. package/src/components/ui/textarea.tsx +1 -1
  73. package/src/components/ui/toggle-group.tsx +1 -1
  74. package/src/components/ui/toggle.tsx +6 -6
  75. package/src/components/ui/tooltip.tsx +1 -1
package/CHANGELOG.md ADDED
@@ -0,0 +1,95 @@
1
+ # 变更记录
2
+
3
+ 本库遵循语义化版本。**破坏性变更会在这里给出迁移步骤**,消费方按步骤改即可。
4
+
5
+ ---
6
+
7
+ ## 0.7.0 — 库自带样式,不再受宿主配置影响
8
+
9
+ ### 破坏性变更:必须多引一行样式
10
+
11
+ ```diff
12
+ import '@ptengine/design-components/styles/tokens.css';
13
+ + import '@ptengine/design-components/style.css';
14
+ ```
15
+
16
+ **漏了这一行 = 所有组件完全没样式**(裸 DOM),而且不报错。
17
+
18
+ 同时建议删掉 tailwind 配置里扫本包源码的那一行(留着无害,只是白生成一批
19
+ 没人用的类名):
20
+
21
+ ```diff
22
+ content: [
23
+ './src/**/*.{ts,tsx}',
24
+ - './node_modules/@ptengine/design-components/src/**/*.{js,ts,jsx,tsx}'
25
+ ]
26
+ ```
27
+
28
+ `presets: [preset]` **要留着** —— 如果你自己的代码里用了 `bg-selected` /
29
+ `text-strong` / `border-neutral` 这些库定义的语义类。
30
+
31
+ ### 为什么要改
32
+
33
+ 0.6.0 及更早,库只发源码 + 变量表,**class 名到样式的翻译由宿主编译时完成**。
34
+ 于是「`text-xs` 是多少 px」由宿主的 tailwind 配置说了算,同名即覆盖。
35
+ 在 apps/x 上实测到两例静默失效:
36
+
37
+ - 宿主把 `xs` 覆盖成 12px → 库设计的 13px 在那里**从未生效**(库里 61 个组件
38
+ 有 21 个用 `text-xs`)
39
+ - 宿主把 `--popover-foreground` 覆盖成近黑 → 库的文字色阶同样没生效
40
+
41
+ 这类问题**不报错、极难察觉**:改了组件却看不到效果,而原因在另一个仓库的
42
+ 配置文件里。
43
+
44
+ ### 怎么做到的
45
+
46
+ 1. **类名加 `ptx-` 前缀**(2870 个 token,58 个文件)。与宿主的同名 utility
47
+ 物理隔离。
48
+ > 前缀不用 `pt-`:那是 Tailwind 自己的 padding-top(`pt-4`),库里正在用。
49
+ 2. **内部变量走私有 `--ptx-*` 命名空间**。加前缀只挡类名,挡不住变量 ——
50
+ 宿主定义同名 `--pt-*` 照样赢。
51
+ 3. **库自己编译并发布 `dist/style.css`**(约 90 KB,含浅色与暗色两套 token)。
52
+
53
+ 对外发布的 `tokens.css` 与 `tailwind.preset.js` **原样不动**,宿主自己的代码
54
+ 继续照用。
55
+
56
+ ### 宿主还能改什么
57
+
58
+ 只有三类,且都是**集成钩子**(宿主必须填或有权决定的),不是观感 token:
59
+
60
+ | 可覆盖 | 为什么 |
61
+ |---|---|
62
+ | `--pt-brand` | 唯一的主题化活口,派生色跟着变 |
63
+ | `--pt-z-overlay` / `-popup` / `-tooltip` | 层级取决于宿主自己的堆叠顺序 |
64
+ | `--pt-sidebar-width` / `-width-icon` | 布局尺寸由宿主定 |
65
+
66
+ 其余一切(字号、行高、圆角、颜色…)覆盖无效。观感不满足请到库里改
67
+ token / variant,全站生效。
68
+
69
+ ### 新增:浮层与骨架屏的稳定测试钩子
70
+
71
+ 消费方的测试若按 class 名查 DOM(如 `.animate-pulse`、`fixed inset-0`),
72
+ 加前缀后会**选不到元素**且不报错(断言变成假通过或假失败)。改查 `data-slot`:
73
+
74
+ ```diff
75
+ - document.querySelectorAll('.animate-pulse')
76
+ + document.querySelectorAll('[data-slot="skeleton"]')
77
+ ```
78
+
79
+ 本版新增 5 个:`skeleton` · `dialog-overlay` · `alert-dialog-overlay` ·
80
+ `sheet-overlay` · `drawer-overlay`(另有 8 个组件此前已有 `data-slot`)。
81
+
82
+ ### 新增:`pnpm check:css`
83
+
84
+ 两条不变量的自查,改组件类名 / 预设 / `tokens.css` 后跑一遍:
85
+
86
+ 1. 源码里不该再有未加前缀的 utility(漏一个,那个样式会静默失效)
87
+ 2. 产物里除上面三类外没有可被宿主覆盖的 `--pt-*`(双向检查)
88
+
89
+ ---
90
+
91
+ ## 0.6.0
92
+
93
+ - 组件字号改用字阶档位名,不再写死 px;11px 落回字阶
94
+ - 修打包:外部化清单改为自动读 `package.json`,此前 27 个 Radix 依赖里有 25 个
95
+ 被打进产物,消费方会出现两份 Radix 实例、弹窗混用即报错。产物 827 KB → 137 KB
@@ -282,8 +282,20 @@ xl 20/32 · 2xl 24/36 · 3xl 28/40 · 4xl 32/48 · 5xl 40/56 · 6xl 48/72 · 7xl
282
282
  观感不满足 → 到库里改 variant / token(全站生效),不在调用处打补丁。
283
283
  4. **不覆盖 CSS 变量**:业务侧不得重定义 `--pt-*` 或别名变量;`tokens.css`
284
284
  只在应用入口引一次,不复制、不改内容;主题切换只用 `.dark` 类。
285
- 唯一豁免:`--pt-z-overlay / --pt-z-popup / --pt-z-tooltip` 三个浮层
286
- z-index 集成钩子本就设计为由宿主赋值(见 [README](./README.md) 「接入」第 4 步)。
285
+
286
+ **0.7.0 起这条由构建强制**,不再只靠自觉:库自带样式内部读私有 `--ptx-*`,
287
+ 宿主重定义 `--pt-*` 对库组件无效。豁免只有三类,且都是**集成钩子**(宿主必须填
288
+ 或有权决定的东西),不是观感 token:
289
+
290
+ | 豁免 | 为什么 |
291
+ |---|---|
292
+ | `--pt-brand` | 唯一的主题化活口,覆盖它派生色一起变 |
293
+ | `--pt-z-overlay` / `-popup` / `-tooltip` | 层级取决于宿主自己的堆叠顺序,库无从得知(见 [README](./README.md) 「接入」第 5 步) |
294
+ | `--pt-sidebar-width` / `-width-icon` | 布局尺寸由宿主定 |
295
+
296
+ 判据是机械的、不靠人挑:**库读了、但既不在 `tokens.css` 里定义、也不由组件
297
+ 用任意属性设置的,就是宿主契约**,必须留在公共命名空间。`pnpm check:css`
298
+ 双向核对这份清单(既报「该私有的没私有」,也报「该留的被私有化了」)。
287
299
  5. **缺组件到库里加**:需要新组件时按 [README](./README.md) 的「加组件」流程落到本库
288
300
  (结构对齐 shadcn + 按交互状态规范适配),不在 app 内单独手写同类组件。
289
301
 
package/README.md CHANGED
@@ -32,22 +32,32 @@
32
32
  pnpm add @ptengine/design-components
33
33
  ```
34
34
 
35
- 1. **Tailwind preset + 扫描包源码** — `tailwind.config.js`
35
+ 1. **引库自带的样式**(0.7.0 起,**必需**)
36
+ ```ts
37
+ import '@ptengine/design-components/style.css';
38
+ ```
39
+ 这份 CSS 由库自己编译发布:类名带 `ptx-` 前缀、内部变量走私有
40
+ `--ptx-*` 命名空间,**宿主的 tailwind 配置与 CSS 变量影响不到它**。
41
+ > ⚠️ **漏了这一行 = 所有组件完全没样式**(裸 DOM),而且不报错。
42
+ > 0.6.0 及更早版本没有这个文件,观感依赖宿主编译,那也是本次改动要解决的问题:
43
+ > 宿主一旦覆盖了同名 utility 或同名变量,库的设计值就静默失效
44
+ > (实测两例:`text-xs` 被压成 12px、`--popover-foreground` 被改成近黑)。
45
+
46
+ 2. **Tailwind preset**(只在你自己的代码里要用库的语义类时才需要)— `tailwind.config.js`
36
47
  ```js
37
48
  import preset from '@ptengine/design-components/tailwind-preset';
38
49
  export default {
39
50
  presets: [preset],
40
- content: [
41
- './src/**/*.{ts,tsx}',
42
- './node_modules/@ptengine/design-components/src/**/*.{js,ts,jsx,tsx}'
43
- ]
51
+ content: ['./src/**/*.{ts,tsx}']
44
52
  };
45
53
  ```
46
- > `src` 而不是 `dist`:`dist` 是压缩后的产物,class 字符串可能被改写,
47
- > Tailwind 扫不全 —— 现象是组件渲染出来但部分样式缺失,且零报错。
48
- > `files` 里带 `src` 就是为了这个。
54
+ > **不要再扫本包的 `src`** —— 0.7.0 起库自带编译好的样式,扫它只会白生成
55
+ > 一批没人用的类名(库组件用的是带前缀的名字,你的配置生成不出来)。
56
+ >
57
+ > preset 的作用只剩一个:让**你自己的代码**能写 `bg-selected` /
58
+ > `text-strong` / `border-neutral` 这些库定义的语义类。不需要就不用配。
49
59
 
50
- 2. **入口引 token 并挂作用域类**
60
+ 3. **入口引 token 并挂作用域类**
51
61
  ```ts
52
62
  import '@ptengine/design-components/styles/tokens.css';
53
63
  document.documentElement.classList.add('pt-ui'); // 或 <html class="pt-ui">
@@ -57,12 +67,12 @@ pnpm add @ptengine/design-components
57
67
  portal 到 body 的浮层才能取到变量);只包子树亦可,但浮层需另行处理。
58
68
  暗色切换:在同一元素上加/去 `.dark` 类。
59
69
 
60
- 3. **组件从包根引**
70
+ 4. **组件从包根引**
61
71
  ```ts
62
72
  import { Button, Dialog, Tabs } from '@ptengine/design-components';
63
73
  ```
64
74
 
65
- 4. **浮层 z-index 对齐**(宿主已有全局层级体系时):库浮层不写死 `z-50`,
75
+ 5. **浮层 z-index 对齐**(宿主已有全局层级体系时):库浮层不写死 `z-50`,
66
76
  而是走三个可覆写变量——`--pt-z-overlay`(dialog / alert-dialog / sheet /
67
77
  drawer)< `--pt-z-popup`(popover / select / dropdown-menu / context-menu /
68
78
  menubar / hover-card)< `--pt-z-tooltip`(tooltip),未设置时回退 `50`。
@@ -71,9 +81,18 @@ pnpm add @ptengine/design-components
71
81
  这三个变量是 [组件设计规范](./COMPONENTS-DESIGN-SYSTEM.md) 「使用规约」第 4 条(不覆盖 CSS 变量)的**唯一豁免**——它们是布局
72
82
  集成钩子,不是观感 token,本就设计为由宿主赋值。
73
83
 
74
- > **包里没有编译好的 CSS**:观感全靠消费方自己的 Tailwind 编译 + `tokens.css` 变量。
75
- > 1、2 步少任何一步,组件都会渲染成无样式的裸 DOM——这不是 bug。
84
+ > **0.7.0 起包里自带编译好的 CSS**(`dist/style.css`,约 90 KB,含浅色与暗色两套
85
+ > token)。第 1、3 步少任何一步,组件都会渲染成无样式的裸 DOM——这不是 bug。
76
86
  > `react` / `react-dom`(≥18)是 peerDependency,需宿主自行安装。
87
+ >
88
+ > **宿主能改什么、不能改什么**(0.7.0 起由构建强制,不再靠自觉):
89
+ > - ✅ **品牌色**:定义 `--pt-brand`,所有派生色跟着变
90
+ > - ✅ **浮层层级**:`--pt-z-overlay` / `-popup` / `-tooltip`(见第 5 步)
91
+ > - ✅ **侧栏尺寸**:`--pt-sidebar-width` / `-width-icon`
92
+ > - ❌ 其余一切(字号、行高、圆角、颜色…):库内部走私有命名空间,覆盖无效
93
+ >
94
+ > 这不是限制而是修 bug:0.6.0 及更早,宿主**无意间**的同名覆盖会让库的设计值
95
+ > 静默失效,且无法察觉。观感不满足请到库里改 token / variant(全站生效)。
77
96
 
78
97
  ## 在 apps/x 里联调本组件库
79
98
 
@@ -1 +1 @@
1
- {"version":3,"file":"alert-dialog.d.ts","sourceRoot":"","sources":["../../../src/components/ui/alert-dialog.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,oBAAoB,MAAM,8BAA8B,CAAC;AAKrE,QAAA,MAAM,WAAW,iDAA4B,CAAC;AAE9C,QAAA,MAAM,kBAAkB,wHAA+B,CAAC;AAExD,QAAA,MAAM,iBAAiB,uDAA8B,CAAC;AAEtD,QAAA,MAAM,kBAAkB,wKAYtB,CAAC;AAGH,QAAA,MAAM,kBAAkB,wKAetB,CAAC;AAGH,QAAA,MAAM,iBAAiB;8BAA6B,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;;CAEvF,CAAC;AAGF,QAAA,MAAM,iBAAiB;8BAA6B,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;;CAKvF,CAAC;AAGF,QAAA,MAAM,gBAAgB,8KASpB,CAAC;AAGH,QAAA,MAAM,sBAAsB,wLAS1B,CAAC;AAGH,QAAA,MAAM,iBAAiB,6KAKrB,CAAC;AAGH,QAAA,MAAM,iBAAiB,6KASrB,CAAC;AAGH,OAAO,EACH,WAAW,EACX,iBAAiB,EACjB,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,sBAAsB,EACtB,iBAAiB,EACjB,iBAAiB,EACpB,CAAC"}
1
+ {"version":3,"file":"alert-dialog.d.ts","sourceRoot":"","sources":["../../../src/components/ui/alert-dialog.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,oBAAoB,MAAM,8BAA8B,CAAC;AAKrE,QAAA,MAAM,WAAW,iDAA4B,CAAC;AAE9C,QAAA,MAAM,kBAAkB,wHAA+B,CAAC;AAExD,QAAA,MAAM,iBAAiB,uDAA8B,CAAC;AAEtD,QAAA,MAAM,kBAAkB,wKActB,CAAC;AAGH,QAAA,MAAM,kBAAkB,wKAetB,CAAC;AAGH,QAAA,MAAM,iBAAiB;8BAA6B,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;;CAEvF,CAAC;AAGF,QAAA,MAAM,iBAAiB;8BAA6B,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;;CAKvF,CAAC;AAGF,QAAA,MAAM,gBAAgB,8KASpB,CAAC;AAGH,QAAA,MAAM,sBAAsB,wLAS1B,CAAC;AAGH,QAAA,MAAM,iBAAiB,6KAKrB,CAAC;AAGH,QAAA,MAAM,iBAAiB,6KASrB,CAAC;AAGH,OAAO,EACH,WAAW,EACX,iBAAiB,EACjB,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,sBAAsB,EACtB,iBAAiB,EACjB,iBAAiB,EACpB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"dialog.d.ts","sourceRoot":"","sources":["../../../src/components/ui/dialog.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,eAAe,MAAM,wBAAwB,CAAC;AAM1D,QAAA,MAAM,MAAM,uCAAuB,CAAC;AAEpC,QAAA,MAAM,aAAa,8GAA0B,CAAC;AAE9C,QAAA,MAAM,YAAY,6CAAyB,CAAC;AAE5C,QAAA,MAAM,WAAW,4GAAwB,CAAC;AAE1C,QAAA,MAAM,aAAa,8JAYjB,CAAC;AAGH,qEAAqE;AACrE,KAAK,UAAU,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AASrC,QAAA,MAAM,aAAa;iBAGE,MAAM;WACZ,UAAU;wCAuCvB,CAAC;AAGH,QAAA,MAAM,YAAY;8BAA6B,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;;CAElF,CAAC;AAGF,QAAA,MAAM,YAAY;8BAA6B,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;;CAKlF,CAAC;AAGF,QAAA,MAAM,WAAW,oKAYf,CAAC;AAGH,QAAA,MAAM,iBAAiB,8KASrB,CAAC;AAGH,OAAO,EACH,MAAM,EACN,YAAY,EACZ,aAAa,EACb,aAAa,EACb,WAAW,EACX,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,iBAAiB,EACpB,CAAC"}
1
+ {"version":3,"file":"dialog.d.ts","sourceRoot":"","sources":["../../../src/components/ui/dialog.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,eAAe,MAAM,wBAAwB,CAAC;AAM1D,QAAA,MAAM,MAAM,uCAAuB,CAAC;AAEpC,QAAA,MAAM,aAAa,8GAA0B,CAAC;AAE9C,QAAA,MAAM,YAAY,6CAAyB,CAAC;AAE5C,QAAA,MAAM,WAAW,4GAAwB,CAAC;AAE1C,QAAA,MAAM,aAAa,8JAcjB,CAAC;AAGH,qEAAqE;AACrE,KAAK,UAAU,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AASrC,QAAA,MAAM,aAAa;iBAGE,MAAM;WACZ,UAAU;wCAuCvB,CAAC;AAGH,QAAA,MAAM,YAAY;8BAA6B,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;;CAElF,CAAC;AAGF,QAAA,MAAM,YAAY;8BAA6B,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;;CAKlF,CAAC;AAGF,QAAA,MAAM,WAAW,oKAYf,CAAC;AAGH,QAAA,MAAM,iBAAiB,8KASrB,CAAC;AAGH,OAAO,EACH,MAAM,EACN,YAAY,EACZ,aAAa,EACb,aAAa,EACb,WAAW,EACX,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,iBAAiB,EACpB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"drawer.d.ts","sourceRoot":"","sources":["../../../src/components/ui/drawer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,MAAM,IAAI,eAAe,EAAE,MAAM,MAAM,CAAC;AAIjD,QAAA,MAAM,MAAM;0CAGT,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,IAAI,CAAC;;CAEnD,CAAC;AAGF,QAAA,MAAM,aAAa,+HAA0B,CAAC;AAE9C,QAAA,MAAM,YAAY,8BAAyB,CAAC;AAE5C,QAAA,MAAM,WAAW,6HAAwB,CAAC;AAE1C,QAAA,MAAM,aAAa,kOASjB,CAAC;AAGH,QAAA,MAAM,aAAa,kOAkBjB,CAAC;AAGH,QAAA,MAAM,YAAY;8BAA6B,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;;CAElF,CAAC;AAGF,QAAA,MAAM,YAAY;8BAA6B,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;;CAElF,CAAC;AAGF,QAAA,MAAM,WAAW,qLASf,CAAC;AAGH,QAAA,MAAM,iBAAiB,+LASrB,CAAC;AAGH,OAAO,EACH,MAAM,EACN,YAAY,EACZ,aAAa,EACb,aAAa,EACb,WAAW,EACX,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,iBAAiB,EACpB,CAAC"}
1
+ {"version":3,"file":"drawer.d.ts","sourceRoot":"","sources":["../../../src/components/ui/drawer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,MAAM,IAAI,eAAe,EAAE,MAAM,MAAM,CAAC;AAIjD,QAAA,MAAM,MAAM;0CAGT,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,IAAI,CAAC;;CAEnD,CAAC;AAGF,QAAA,MAAM,aAAa,+HAA0B,CAAC;AAE9C,QAAA,MAAM,YAAY,8BAAyB,CAAC;AAE5C,QAAA,MAAM,WAAW,6HAAwB,CAAC;AAE1C,QAAA,MAAM,aAAa,kOAWjB,CAAC;AAGH,QAAA,MAAM,aAAa,kOAkBjB,CAAC;AAGH,QAAA,MAAM,YAAY;8BAA6B,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;;CAElF,CAAC;AAGF,QAAA,MAAM,YAAY;8BAA6B,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;;CAElF,CAAC;AAGF,QAAA,MAAM,WAAW,qLASf,CAAC;AAGH,QAAA,MAAM,iBAAiB,+LASrB,CAAC;AAGH,OAAO,EACH,MAAM,EACN,YAAY,EACZ,aAAa,EACb,aAAa,EACb,WAAW,EACX,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,iBAAiB,EACpB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"input-otp.d.ts","sourceRoot":"","sources":["../../../src/components/ui/input-otp.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAM/B,QAAA,MAAM,QAAQ;;;;;kBAUC,GAAG;;;;;;;;;;;;;;kBAAH,GAAG;;;;;;;;;2FAGhB,CAAC;AAGH,QAAA,MAAM,aAAa,mKAIlB,CAAC;AAGF,QAAA,MAAM,YAAY;WAEmC,MAAM;wCAuBzD,CAAC;AAGH,QAAA,MAAM,iBAAiB,mKAMtB,CAAC;AAGF,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,YAAY,EAAE,iBAAiB,EAAE,CAAC"}
1
+ {"version":3,"file":"input-otp.d.ts","sourceRoot":"","sources":["../../../src/components/ui/input-otp.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAM/B,QAAA,MAAM,QAAQ;;;;;kBAUN,GAAN;;;;;;;;;;;;;;kBAAM,GAAN;;;;;;;;;2FAGA,CAAC;AAGH,QAAA,MAAM,aAAa,mKAIlB,CAAC;AAGF,QAAA,MAAM,YAAY;WAEmC,MAAM;wCAuBzD,CAAC;AAGH,QAAA,MAAM,iBAAiB,mKAMtB,CAAC;AAGF,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,YAAY,EAAE,iBAAiB,EAAE,CAAC"}
@@ -63,8 +63,8 @@ export interface PromptPickerItem {
63
63
  * 可选:条目右端的小徽标,如「即将上线」。**只放短枚举**(1-4 字),它是给整条加限定,
64
64
  * 不是第二行说明 —— 长说明走 `hint`(悬停)。
65
65
  *
66
- * 用扁平 chip(`rounded-sm bg-muted`)而不是库的 `Badge` 组件:后者是
67
- * `rounded-full font-semibold` 胶囊,在 32px 高的条目里显得过重,且 lin 已裁定
66
+ * 用扁平 chip(`ptx-rounded-sm ptx-bg-muted`)而不是库的 `Badge` 组件:后者是
67
+ * `ptx-rounded-full ptx-font-semibold` 胶囊,在 32px 高的条目里显得过重,且 lin 已裁定
68
68
  * Badge 只留给短枚举场景的独立标签。此处写法与 apps/x 的 ⋮ 菜单出口组一致。
69
69
  */
70
70
  badge?: string;
@@ -1,8 +1,8 @@
1
1
  import * as React from 'react';
2
2
  declare const SIZE_CLASSES: {
3
- readonly sm: "h-[24px] px-[8px] rounded-[var(--pt-radius-sm)] [&_input]:text-2xs";
4
- readonly default: "h-[32px] px-[10px]";
5
- readonly lg: "h-[40px] px-[12px] [&_input]:text-sm";
3
+ readonly sm: "ptx-h-[24px] ptx-px-[8px] ptx-rounded-[var(--pt-radius-sm)] [&_input]:ptx-text-2xs";
4
+ readonly default: "ptx-h-[32px] ptx-px-[10px]";
5
+ readonly lg: "ptx-h-[40px] ptx-px-[12px] [&_input]:ptx-text-sm";
6
6
  };
7
7
  export interface SearchInputProps extends Omit<React.InputHTMLAttributes<HTMLInputElement>, 'value' | 'onChange' | 'type' | 'size'> {
8
8
  /** 尺寸:sm 24px(行内)· default 32px(常规)· lg 36px(页面级主搜索) */
@@ -15,9 +15,9 @@ declare const SelectValue: React.ForwardRefExoticComponent<SelectPrimitive.Selec
15
15
  * 而高度 / 圆角 / 字号是上一轮手工对齐的 —— 手工对齐的东西下次改库时又会散开。
16
16
  * 所以样式收在这里一处,多选触发器 `cn(selectTriggerClassName, …)` 复用。
17
17
  *
18
- * `w-full` 不在里面:Select 自己要撑满容器,而筛选器通常按内容宽。各自加。
18
+ * `ptx-w-full` 不在里面:Select 自己要撑满容器,而筛选器通常按内容宽。各自加。
19
19
  */
20
- export declare const selectTriggerClassName = "flex h-[32px] items-center justify-between whitespace-nowrap rounded-[var(--pt-radius-md)] border border-input bg-transparent px-[12px] py-[8px] text-xs ring-offset-background transition-colors placeholder:text-muted-foreground enabled:hover:border-neutral focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 aria-[invalid=true]:border-destructive aria-[invalid=true]:text-destructive aria-[invalid=true]:enabled:hover:border-destructive aria-[invalid=true]:focus-visible:ring-destructive/30 [&>span]:line-clamp-1";
20
+ export declare const selectTriggerClassName = "ptx-flex ptx-h-[32px] ptx-items-center ptx-justify-between ptx-whitespace-nowrap ptx-rounded-[var(--pt-radius-md)] ptx-border ptx-border-input ptx-bg-transparent ptx-px-[12px] ptx-py-[8px] ptx-text-xs ptx-ring-offset-background ptx-transition-colors placeholder:ptx-text-muted-foreground enabled:hover:ptx-border-neutral focus-visible:ptx-outline-none focus-visible:ptx-ring-1 focus-visible:ptx-ring-ring disabled:ptx-cursor-not-allowed disabled:ptx-opacity-50 aria-[invalid=true]:ptx-border-destructive aria-[invalid=true]:ptx-text-destructive aria-[invalid=true]:enabled:hover:ptx-border-destructive aria-[invalid=true]:focus-visible:ptx-ring-destructive/30 [&>span]:ptx-line-clamp-1";
21
21
  declare const SelectTrigger: React.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectTriggerProps & React.RefAttributes<HTMLButtonElement>, "ref"> & React.RefAttributes<HTMLButtonElement>>;
22
22
  declare const SelectScrollUpButton: React.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectScrollUpButtonProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
23
23
  declare const SelectScrollDownButton: React.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectScrollDownButtonProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
@@ -1 +1 @@
1
- {"version":3,"file":"select.d.ts","sourceRoot":"","sources":["../../../src/components/ui/select.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,eAAe,MAAM,wBAAwB,CAAC;AAK1D,QAAA,MAAM,MAAM,uCAAuB,CAAC;AAEpC,QAAA,MAAM,WAAW,yGAAwB,CAAC;AAE1C,QAAA,MAAM,WAAW,0GAAwB,CAAC;AAE1C;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,sBAAsB,0kBACwiB,CAAC;AAE5kB,QAAA,MAAM,aAAa,oKAejB,CAAC;AAGH,QAAA,MAAM,oBAAoB,qKAWxB,CAAC;AAGH,QAAA,MAAM,sBAAsB,uKAW1B,CAAC;AAGH,QAAA,MAAM,aAAa,8JA6BjB,CAAC;AAGH,QAAA,MAAM,WAAW,4JASf,CAAC;AAGH,QAAA,MAAM,UAAU,2JAmBd,CAAC;AAGH,QAAA,MAAM,eAAe,gKASnB,CAAC;AAGH,OAAO,EACH,MAAM,EACN,WAAW,EACX,WAAW,EACX,aAAa,EACb,aAAa,EACb,WAAW,EACX,UAAU,EACV,eAAe,EACf,oBAAoB,EACpB,sBAAsB,EACzB,CAAC"}
1
+ {"version":3,"file":"select.d.ts","sourceRoot":"","sources":["../../../src/components/ui/select.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,eAAe,MAAM,wBAAwB,CAAC;AAK1D,QAAA,MAAM,MAAM,uCAAuB,CAAC;AAEpC,QAAA,MAAM,WAAW,yGAAwB,CAAC;AAE1C,QAAA,MAAM,WAAW,0GAAwB,CAAC;AAE1C;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,sBAAsB,krBACgpB,CAAC;AAEprB,QAAA,MAAM,aAAa,oKAejB,CAAC;AAGH,QAAA,MAAM,oBAAoB,qKAWxB,CAAC;AAGH,QAAA,MAAM,sBAAsB,uKAW1B,CAAC;AAGH,QAAA,MAAM,aAAa,8JA6BjB,CAAC;AAGH,QAAA,MAAM,WAAW,4JASf,CAAC;AAGH,QAAA,MAAM,UAAU,2JAmBd,CAAC;AAGH,QAAA,MAAM,eAAe,gKASnB,CAAC;AAGH,OAAO,EACH,MAAM,EACN,WAAW,EACX,WAAW,EACX,aAAa,EACb,aAAa,EACb,WAAW,EACX,UAAU,EACV,eAAe,EACf,oBAAoB,EACpB,sBAAsB,EACzB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"sheet.d.ts","sourceRoot":"","sources":["../../../src/components/ui/sheet.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,cAAc,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAKlE,QAAA,MAAM,KAAK,sCAAsB,CAAC;AAElC,QAAA,MAAM,YAAY,6GAAyB,CAAC;AAE5C,QAAA,MAAM,UAAU,2GAAuB,CAAC;AAExC,QAAA,MAAM,WAAW,4CAAwB,CAAC;AAE1C,QAAA,MAAM,YAAY,6JAYhB,CAAC;AAGH,QAAA,MAAM,aAAa;;8EAelB,CAAC;AAEF,UAAU,iBACN,SAAQ,KAAK,CAAC,wBAAwB,CAAC,OAAO,cAAc,CAAC,OAAO,CAAC,EACjE,YAAY,CAAC,OAAO,aAAa,CAAC;IACtC,8BAA8B;IAC9B,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,QAAA,MAAM,YAAY,0FAkBhB,CAAC;AAGH,QAAA,MAAM,WAAW;8BAA6B,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;;CAEjF,CAAC;AAGF,QAAA,MAAM,WAAW;8BAA6B,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;;CAKjF,CAAC;AAGF,QAAA,MAAM,UAAU,mKASd,CAAC;AAGH,QAAA,MAAM,gBAAgB,6KASpB,CAAC;AAGH,OAAO,EACH,KAAK,EACL,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,WAAW,EACX,WAAW,EACX,UAAU,EACV,gBAAgB,EACnB,CAAC"}
1
+ {"version":3,"file":"sheet.d.ts","sourceRoot":"","sources":["../../../src/components/ui/sheet.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,cAAc,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAKlE,QAAA,MAAM,KAAK,sCAAsB,CAAC;AAElC,QAAA,MAAM,YAAY,6GAAyB,CAAC;AAE5C,QAAA,MAAM,UAAU,2GAAuB,CAAC;AAExC,QAAA,MAAM,WAAW,4CAAwB,CAAC;AAE1C,QAAA,MAAM,YAAY,6JAchB,CAAC;AAGH,QAAA,MAAM,aAAa;;8EAelB,CAAC;AAEF,UAAU,iBACN,SAAQ,KAAK,CAAC,wBAAwB,CAAC,OAAO,cAAc,CAAC,OAAO,CAAC,EACjE,YAAY,CAAC,OAAO,aAAa,CAAC;IACtC,8BAA8B;IAC9B,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,QAAA,MAAM,YAAY,0FAkBhB,CAAC;AAGH,QAAA,MAAM,WAAW;8BAA6B,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;;CAEjF,CAAC;AAGF,QAAA,MAAM,WAAW;8BAA6B,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;;CAKjF,CAAC;AAGF,QAAA,MAAM,UAAU,mKASd,CAAC;AAGH,QAAA,MAAM,gBAAgB,6KASpB,CAAC;AAGH,OAAO,EACH,KAAK,EACL,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,WAAW,EACX,WAAW,EACX,UAAU,EACV,gBAAgB,EACnB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"skeleton.d.ts","sourceRoot":"","sources":["../../../src/components/ui/skeleton.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,iBAAS,QAAQ,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,qBAE9E;AAED,OAAO,EAAE,QAAQ,EAAE,CAAC"}
1
+ {"version":3,"file":"skeleton.d.ts","sourceRoot":"","sources":["../../../src/components/ui/skeleton.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,iBAAS,QAAQ,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,qBAa9E;AAED,OAAO,EAAE,QAAQ,EAAE,CAAC"}