starry-sky-ui 0.4.0 → 0.4.1

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.
@@ -0,0 +1,5 @@
1
+ import React from 'react';
2
+ import './index.scss';
3
+ declare const AdUI: React.FC;
4
+ export default AdUI;
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/AdUI/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmD,MAAM,OAAO,CAAC;AAIxE,OAAO,cAAc,CAAC;AAwmCtB,QAAA,MAAM,IAAI,EAAE,KAAK,CAAC,EAyIjB,CAAC;AAEF,eAAe,IAAI,CAAC"}
@@ -0,0 +1,602 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
11
+ import React, { useState, useRef, useCallback, useEffect } from 'react';
12
+ import { message, Select, Modal, Table, Pagination, Input, Textarea, ContentRenderer, ChatInput, Starfield } from '../index';
13
+ import { adUtils } from '../index';
14
+ import './index.scss';
15
+ const categories = [
16
+ { id: 'feedback', label: '反馈' },
17
+ { id: 'data-entry', label: '数据录入' },
18
+ { id: 'data-display', label: '数据展示' },
19
+ { id: 'navigation', label: '导航' },
20
+ { id: 'decoration', label: '装饰' },
21
+ { id: 'utils', label: '工具函数' },
22
+ ];
23
+ const components = [
24
+ { id: 'message', label: 'Message 消息提示', category: 'feedback', desc: '全局消息提示,支持 info / success / error / warning / loading 五种类型,自动消失。' },
25
+ { id: 'modal', label: 'Modal 弹窗', category: 'feedback', desc: '模态弹窗,支持标题、底部按钮、确认/取消、loading 态、居中、destroyOnClose 等。' },
26
+ { id: 'select', label: 'Select 选择器', category: 'data-entry', desc: '下拉选择器,支持受控/非受控、搜索过滤、清除按钮、键盘导航、三种尺寸。' },
27
+ { id: 'input', label: 'Input 输入框', category: 'data-entry', desc: '输入框组件,支持文本输入、密码、Textarea 多行文本、前缀后缀图标、清除按钮、字符计数等。' },
28
+ { id: 'table', label: 'Table 表格', category: 'data-display', desc: '功能丰富的表格组件,支持排序、分页、行选择、自定义渲染、固定表头等。' },
29
+ { id: 'pagination', label: 'Pagination 分页', category: 'navigation', desc: '分页组件,支持受控/非受控、简洁模式、每页条数切换、快速跳转等。' },
30
+ { id: 'content-renderer', label: 'ContentRenderer 内容渲染', category: 'data-display', desc: '基于 react-markdown 的内容展示组件,支持 GFM 语法和代码语法高亮。' },
31
+ { id: 'chat-input', label: 'ChatInput 聊天输入框', category: 'data-entry', desc: '仿 DeepSeek 聊天输入框,支持多行输入、回车发送、自动撑高、停止生成。' },
32
+ { id: 'starfield', label: 'Starfield 星空背景', category: 'decoration', desc: '星空背景组件,在容器内生成随机分布的闪烁星星,支持自定义数量、颜色和闪烁速度。' },
33
+ { id: 'utils', label: 'Utils 工具函数', category: 'utils', desc: '轻量级通用工具函数集合,涵盖文件处理、图片处理、事件控制三类,无需安装额外依赖。' },
34
+ ];
35
+ const anchorMap = {
36
+ message: [
37
+ { id: 'message-when', label: '何时使用' },
38
+ { id: 'message-how', label: '如何使用' },
39
+ { id: 'message-demo-base', label: '基础用法' },
40
+ { id: 'message-demo-types', label: '消息类型' },
41
+ { id: 'message-demo-open', label: '通用方法' },
42
+ { id: 'message-demo-config', label: '全局配置' },
43
+ ],
44
+ modal: [
45
+ { id: 'modal-when', label: '何时使用' },
46
+ { id: 'modal-how', label: '如何使用' },
47
+ { id: 'modal-demo-base', label: '基础弹窗' },
48
+ { id: 'modal-demo-confirm', label: '确认弹窗' },
49
+ { id: 'modal-demo-custom', label: '自定义底部' },
50
+ ],
51
+ select: [
52
+ { id: 'select-when', label: '何时使用' },
53
+ { id: 'select-how', label: '如何使用' },
54
+ { id: 'select-demo-base', label: '基本用法' },
55
+ { id: 'select-demo-search', label: '搜索与清除' },
56
+ { id: 'select-demo-size', label: '三种尺寸' },
57
+ ],
58
+ input: [
59
+ { id: 'input-when', label: '何时使用' },
60
+ { id: 'input-how', label: '如何使用' },
61
+ { id: 'input-demo-base', label: '基本用法' },
62
+ { id: 'input-demo-size', label: '三种尺寸' },
63
+ { id: 'input-demo-prefix', label: '前缀与后缀' },
64
+ { id: 'input-demo-clear', label: '清除与计数' },
65
+ { id: 'input-demo-password', label: '密码框' },
66
+ { id: 'input-demo-status', label: '状态' },
67
+ { id: 'input-demo-textarea', label: '多行文本' },
68
+ ],
69
+ table: [
70
+ { id: 'table-when', label: '何时使用' },
71
+ { id: 'table-how', label: '如何使用' },
72
+ { id: 'table-demo-base', label: '基本用法' },
73
+ { id: 'table-demo-sort', label: '排序' },
74
+ { id: 'table-demo-select', label: '行选择' },
75
+ { id: 'table-demo-loading', label: '加载 & 空态' },
76
+ ],
77
+ pagination: [
78
+ { id: 'pagination-when', label: '何时使用' },
79
+ { id: 'pagination-how', label: '如何使用' },
80
+ { id: 'pagination-demo-base', label: '基本用法' },
81
+ { id: 'pagination-demo-controlled', label: '受控模式' },
82
+ { id: 'pagination-demo-more', label: '更多功能' },
83
+ ],
84
+ 'content-renderer': [
85
+ { id: 'cr-when', label: '何时使用' },
86
+ { id: 'cr-how', label: '如何使用' },
87
+ { id: 'cr-demo-base', label: '基本用法' },
88
+ { id: 'cr-demo-code', label: '代码高亮' },
89
+ { id: 'cr-demo-gfm', label: 'GFM 语法' },
90
+ ],
91
+ 'chat-input': [
92
+ { id: 'ci-when', label: '何时使用' },
93
+ { id: 'ci-how', label: '如何使用' },
94
+ { id: 'ci-demo-base', label: '基本用法' },
95
+ { id: 'ci-demo-loading', label: '加载状态' },
96
+ ],
97
+ starfield: [
98
+ { id: 'starfield-when', label: '何时使用' },
99
+ { id: 'starfield-how', label: '如何使用' },
100
+ { id: 'starfield-demo-basic', label: '基本用法' },
101
+ { id: 'starfield-demo-custom', label: '自定义参数' },
102
+ ],
103
+ utils: [
104
+ { id: 'utils-when', label: '何时使用' },
105
+ { id: 'utils-how', label: '如何使用' },
106
+ { id: 'utils-demo-file', label: '文件工具' },
107
+ { id: 'utils-demo-image', label: '图片工具' },
108
+ { id: 'utils-demo-event', label: '事件工具' },
109
+ ],
110
+ };
111
+ const demoOptions = [
112
+ { label: 'React', value: 'react' },
113
+ { label: 'Vue', value: 'vue' },
114
+ { label: 'Angular', value: 'angular' },
115
+ { label: 'Svelte(禁用)', value: 'svelte', disabled: true },
116
+ { label: 'Solid.js', value: 'solid' },
117
+ { label: 'Next.js', value: 'next' },
118
+ { label: 'Nuxt', value: 'nuxt' },
119
+ { label: 'Remix', value: 'remix' },
120
+ ];
121
+ /* ========== 辅助组件 ========== */
122
+ const CodeBlock = ({ code }) => (_jsxs("div", Object.assign({ className: "adui-code-panel" }, { children: [_jsx("pre", { children: _jsx("code", { children: code }) }), _jsx("button", Object.assign({ className: "adui-copy-btn", onClick: () => { navigator.clipboard.writeText(code); message.success('已复制'); }, title: "\u590D\u5236\u4EE3\u7801" }, { children: "\uD83D\uDCCB" }))] })));
123
+ const DemoCard = ({ title, children, code }) => (_jsxs("div", Object.assign({ className: "adui-demo-card" }, { children: [_jsxs("div", Object.assign({ className: "adui-demo-preview" }, { children: [title && _jsx("h4", Object.assign({ className: "adui-demo-title" }, { children: title })), _jsx("div", Object.assign({ className: "adui-demo-stage" }, { children: children }))] })), _jsx(CodeBlock, { code: code })] })));
124
+ const WhenUse = ({ children }) => (_jsx("div", Object.assign({ className: "adui-when-use" }, { children: _jsx("ul", { children: React.Children.map(children, (c, i) => _jsx("li", { children: c }, i)) }) })));
125
+ const HowUse = ({ importCode }) => (_jsx("div", Object.assign({ className: "adui-how-use" }, { children: _jsx(CodeBlock, { code: importCode }) })));
126
+ /* ========== 各组件内容 ========== */
127
+ const MessageContent = () => (_jsxs(_Fragment, { children: [_jsx("h3", Object.assign({ className: "adui-anchor-heading", id: "message-when" }, { children: "\u4F55\u65F6\u4F7F\u7528" })), _jsxs(WhenUse, { children: [_jsx("span", { children: "\u9700\u8981\u5411\u7528\u6237\u5C55\u793A\u975E\u963B\u585E\u7684\u5168\u5C40\u53CD\u9988\u4FE1\u606F\u65F6\u4F7F\u7528\u3002" }), _jsx("span", { children: "\u9002\u5408\u64CD\u4F5C\u6210\u529F\u3001\u64CD\u4F5C\u5931\u8D25\u3001\u8B66\u544A\u63D0\u793A\u3001\u52A0\u8F7D\u4E2D\u72B6\u6001\u7B49\u8F7B\u91CF\u573A\u666F\u3002" }), _jsx("span", { children: "\u65E0\u9700\u7528\u6237\u4EA4\u4E92\u5373\u53EF\u81EA\u52A8\u6D88\u5931\u3002" })] }), _jsx("h3", Object.assign({ className: "adui-anchor-heading", id: "message-how" }, { children: "\u5982\u4F55\u4F7F\u7528" })), _jsx(HowUse, { importCode: `import { Message, message } from 'starry-sky-ui';
128
+
129
+ function App() {
130
+ return <Message />
131
+ }
132
+
133
+ message.success('操作成功');` }), _jsx("h3", Object.assign({ className: "adui-anchor-heading", id: "message-demo-base" }, { children: "\u57FA\u7840\u7528\u6CD5" })), _jsx(DemoCard, Object.assign({ title: "\u4E94\u79CD\u6D88\u606F\u7C7B\u578B", code: `message.info('信息提示');
134
+ message.success('操作成功!');
135
+ message.error('操作失败!');
136
+ message.warning('警告提示');
137
+ message.loading('加载中...', 2000);` }, { children: _jsxs("div", Object.assign({ className: "adui-btn-group" }, { children: [_jsx("button", Object.assign({ className: "adui-btn", onClick: () => message.info('这是一条信息提示') }, { children: "info" })), _jsx("button", Object.assign({ className: "adui-btn adui-btn-green", onClick: () => message.success('操作成功!') }, { children: "success" })), _jsx("button", Object.assign({ className: "adui-btn adui-btn-red", onClick: () => message.error('操作失败!') }, { children: "error" })), _jsx("button", Object.assign({ className: "adui-btn adui-btn-orange", onClick: () => message.warning('警告提示') }, { children: "warning" })), _jsx("button", Object.assign({ className: "adui-btn", onClick: () => message.loading('加载中...', 3000) }, { children: "loading" }))] })) })), _jsx("h3", Object.assign({ className: "adui-anchor-heading", id: "message-demo-types" }, { children: "\u6D88\u606F\u7C7B\u578B" })), _jsx(DemoCard, Object.assign({ title: "\u652F\u6301 then \u94FE\u5F0F\u8C03\u7528", code: `const ins = message.loading('提交中...', 0);
138
+ await saveData();
139
+ message.success('提交成功');` }, { children: _jsx("button", Object.assign({ className: "adui-btn", onClick: () => __awaiter(void 0, void 0, void 0, function* () {
140
+ message.loading('异步处理中...', 0);
141
+ yield new Promise(r => setTimeout(r, 1500));
142
+ message.success('处理完成');
143
+ }) }, { children: "\u6A21\u62DF\u5F02\u6B65" })) })), _jsx("h3", Object.assign({ className: "adui-anchor-heading", id: "message-demo-open" }, { children: "\u901A\u7528\u65B9\u6CD5" })), _jsx(DemoCard, Object.assign({ title: "message.open", code: `message.open({
144
+ type: 'success',
145
+ content: '通过 open 打开的消息',
146
+ duration: 5000,
147
+ onClose: () => console.log('closed'),
148
+ });` }, { children: _jsx("button", Object.assign({ className: "adui-btn adui-btn-green", onClick: () => message.open({ type: 'success', content: '通过 open 方法打开的消息', duration: 5000 }) }, { children: "\u6253\u5F00" })) })), _jsx("h3", Object.assign({ className: "adui-anchor-heading", id: "message-demo-config" }, { children: "\u5168\u5C40\u914D\u7F6E" })), _jsx(DemoCard, Object.assign({ title: "message.config", code: `message.config({
149
+ maxCount: 3, // 最大显示数量
150
+ duration: 4000, // 默认显示时长
151
+ });
152
+ message.destroy(); // 销毁所有消息` }, { children: _jsxs("div", Object.assign({ className: "adui-btn-group" }, { children: [_jsx("button", Object.assign({ className: "adui-btn", onClick: () => {
153
+ message.config({ maxCount: 3 });
154
+ for (let i = 0; i < 5; i++)
155
+ message.info(`消息 ${i + 1}`);
156
+ } }, { children: "maxCount \u6D4B\u8BD5" })), _jsx("button", Object.assign({ className: "adui-btn adui-btn-red", onClick: () => message.destroy() }, { children: "\u5168\u90E8\u9500\u6BC1" }))] })) }))] }));
157
+ const ModalContent = () => {
158
+ const [modalOpen, setModalOpen] = useState(false);
159
+ const [confirmOpen, setConfirmOpen] = useState(false);
160
+ const [customOpen, setCustomOpen] = useState(false);
161
+ return (_jsxs(_Fragment, { children: [_jsx("h3", Object.assign({ className: "adui-anchor-heading", id: "modal-when" }, { children: "\u4F55\u65F6\u4F7F\u7528" })), _jsxs(WhenUse, { children: [_jsx("span", { children: "\u9700\u8981\u7528\u6237\u5904\u7406\u4E8B\u52A1\u3001\u4F46\u4E0D\u5E0C\u671B\u8DF3\u8F6C\u9875\u9762\u6253\u65AD\u5DE5\u4F5C\u6D41\u65F6\u4F7F\u7528\u3002" }), _jsx("span", { children: "\u9002\u5408\u786E\u8BA4\u64CD\u4F5C\u3001\u8868\u5355\u586B\u5199\u3001\u8BE6\u7EC6\u5185\u5BB9\u5C55\u793A\u7B49\u573A\u666F\u3002" }), _jsx("span", { children: "\u652F\u6301\u901A\u8FC7\u786E\u5B9A/\u53D6\u6D88\u6309\u94AE\u3001\u906E\u7F69\u70B9\u51FB\u6216 ESC \u952E\u5173\u95ED\u3002" })] }), _jsx("h3", Object.assign({ className: "adui-anchor-heading", id: "modal-how" }, { children: "\u5982\u4F55\u4F7F\u7528" })), _jsx(HowUse, { importCode: `import { Modal } from 'starry-sky-ui';
162
+ const [open, setOpen] = useState(false);
163
+ <Modal open={open} onClose={() => setOpen(false)} title="标题">
164
+ <p>内容</p>
165
+ </Modal>` }), _jsx("h3", Object.assign({ className: "adui-anchor-heading", id: "modal-demo-base" }, { children: "\u57FA\u7840\u5F39\u7A97" })), _jsxs(DemoCard, Object.assign({ title: "\u57FA\u672C\u7528\u6CD5", code: `const [open, setOpen] = useState(false);
166
+ <Modal open={open} onClose={() => setOpen(false)} title="基本弹窗">
167
+ <p>弹窗内容</p>
168
+ </Modal>` }, { children: [_jsx("button", Object.assign({ className: "adui-btn", onClick: () => setModalOpen(true) }, { children: "\u6253\u5F00\u5F39\u7A97" })), _jsxs(Modal, Object.assign({ open: modalOpen, onClose: () => setModalOpen(false), title: "\u57FA\u672C\u5F39\u7A97" }, { children: [_jsx("p", { children: "\u8FD9\u662F\u4E00\u4E2A\u57FA\u672C\u7684 Modal \u5F39\u7A97\uFF0C\u5305\u542B\u6807\u9898\u3001\u5185\u5BB9\u533A\u57DF\u548C\u5173\u95ED\u6309\u94AE\u3002" }), _jsx("p", { children: "\u652F\u6301\u70B9\u51FB\u906E\u7F69\u5173\u95ED\u3001ESC \u952E\u5173\u95ED\u3002" })] }))] })), _jsx("h3", Object.assign({ className: "adui-anchor-heading", id: "modal-demo-confirm" }, { children: "\u786E\u8BA4\u5F39\u7A97" })), _jsxs(DemoCard, Object.assign({ title: "\u786E\u8BA4\u4E0E\u5F02\u6B65", code: `<Modal
169
+ open={open} title="确认删除"
170
+ onOk={async () => { await deleteItem(); }}
171
+ confirmLoading okText="确认删除" cancelText="取消" centered>
172
+ <p>确定要删除吗?</p>
173
+ </Modal>` }, { children: [_jsx("button", Object.assign({ className: "adui-btn adui-btn-red", onClick: () => setConfirmOpen(true) }, { children: "\u5220\u9664\u786E\u8BA4" })), _jsx(Modal, Object.assign({ open: confirmOpen, onClose: () => setConfirmOpen(false), title: "\u786E\u8BA4\u5220\u9664", onOk: () => __awaiter(void 0, void 0, void 0, function* () {
174
+ yield new Promise((r) => setTimeout(r, 1500));
175
+ setConfirmOpen(false);
176
+ message.success('删除成功');
177
+ }), onCancel: () => setConfirmOpen(false), confirmLoading: true, okText: "\u786E\u8BA4\u5220\u9664", cancelText: "\u53D6\u6D88", centered: true }, { children: _jsx("p", { children: "\u786E\u5B9A\u8981\u5220\u9664\u6B64\u9879\u5417\uFF1F\u6B64\u64CD\u4F5C\u4E0D\u53EF\u6062\u590D\u3002" }) }))] })), _jsx("h3", Object.assign({ className: "adui-anchor-heading", id: "modal-demo-custom" }, { children: "\u81EA\u5B9A\u4E49\u5E95\u90E8" })), _jsxs(DemoCard, Object.assign({ title: "\u9690\u85CF\u5173\u95ED\u6309\u94AE + \u81EA\u5B9A\u4E49 footer", code: `<Modal
178
+ open={open} closable={false} maskClosable={false}
179
+ footer={<button onClick={...}>我知道了</button>}>
180
+ <p>只能通过自定义按钮关闭</p>
181
+ </Modal>` }, { children: [_jsx("button", Object.assign({ className: "adui-btn", onClick: () => setCustomOpen(true) }, { children: "\u81EA\u5B9A\u4E49\u5F39\u7A97" })), _jsxs(Modal, Object.assign({ open: customOpen, onClose: () => setCustomOpen(false), title: "\u81EA\u5B9A\u4E49\u5E95\u90E8", closable: false, maskClosable: false, footer: _jsx("div", Object.assign({ style: { textAlign: 'center', padding: '10px 0' } }, { children: _jsx("button", Object.assign({ className: "adui-btn adui-btn-green", onClick: () => setCustomOpen(false), style: { width: 120 } }, { children: "\u6211\u77E5\u9053\u4E86" })) })) }, { children: [_jsx("p", { children: "\u8FD9\u4E2A\u5F39\u7A97\u9690\u85CF\u4E86\u53F3\u4E0A\u89D2\u5173\u95ED\u6309\u94AE\uFF0C\u7981\u6B62\u70B9\u51FB\u906E\u7F69\u5173\u95ED\u3002" }), _jsx("p", { children: "\u5E95\u90E8\u4F7F\u7528\u4E86\u81EA\u5B9A\u4E49\u6309\u94AE\uFF0C\u53EA\u80FD\u901A\u8FC7\u70B9\u51FB\"\u6211\u77E5\u9053\u4E86\"\u5173\u95ED\u3002" })] }))] }))] }));
182
+ };
183
+ const SelectContent = () => {
184
+ const [selectValue, setSelectValue] = useState('');
185
+ const [selectSearch, setSelectSearch] = useState('');
186
+ return (_jsxs(_Fragment, { children: [_jsx("h3", Object.assign({ className: "adui-anchor-heading", id: "select-when" }, { children: "\u4F55\u65F6\u4F7F\u7528" })), _jsxs(WhenUse, { children: [_jsx("span", { children: "\u9700\u8981\u4ECE\u4E00\u7EC4\u9884\u5B9A\u4E49\u9009\u9879\u4E2D\u9009\u62E9\u4E00\u4E2A\u503C\u65F6\u4F7F\u7528\u3002" }), _jsx("span", { children: "\u9009\u9879\u6570\u91CF\u8F83\u591A\u65F6\uFF0C\u5EFA\u8BAE\u914D\u5408\u641C\u7D22\u529F\u80FD\u4F7F\u7528\u3002" }), _jsx("span", { children: "\u652F\u6301\u53D7\u63A7\u548C\u975E\u53D7\u63A7\u4E24\u79CD\u6A21\u5F0F\u3002" })] }), _jsx("h3", Object.assign({ className: "adui-anchor-heading", id: "select-how" }, { children: "\u5982\u4F55\u4F7F\u7528" })), _jsx(HowUse, { importCode: `import { Select } from 'starry-sky-ui';
187
+ import type { SelectOption } from 'starry-sky-ui';
188
+ const options: SelectOption[] = [
189
+ { label: 'React', value: 'react' },
190
+ { label: 'Vue', value: 'vue', disabled: true },
191
+ ];` }), _jsx("h3", Object.assign({ className: "adui-anchor-heading", id: "select-demo-base" }, { children: "\u57FA\u672C\u7528\u6CD5" })), _jsx(DemoCard, Object.assign({ title: "\u53D7\u63A7\u9009\u62E9", code: `const [value, setValue] = useState('');
192
+ <Select options={options} value={value}
193
+ onChange={(val) => setValue(String(val))} placeholder="请选择框架" />` }, { children: _jsxs("div", Object.assign({ className: "adui-demo-row" }, { children: [_jsx(Select, { options: demoOptions, value: selectValue, onChange: (val) => setSelectValue(val), placeholder: "\u8BF7\u9009\u62E9\u6846\u67B6", style: { width: 240 } }), _jsxs("span", Object.assign({ className: "adui-demo-badge" }, { children: ["\u9009\u4E2D\u503C\uFF1A", String(selectValue) || '—'] }))] })) })), _jsx("h3", Object.assign({ className: "adui-anchor-heading", id: "select-demo-search" }, { children: "\u641C\u7D22\u4E0E\u6E05\u9664" })), _jsx(DemoCard, Object.assign({ title: "showSearch + allowClear", code: `<Select options={options}
194
+ showSearch allowClear placeholder="搜索框架..." />` }, { children: _jsx("div", Object.assign({ className: "adui-demo-row" }, { children: _jsx(Select, { options: demoOptions, value: selectSearch, onChange: (val) => setSelectSearch(val), showSearch: true, allowClear: true, placeholder: "\u641C\u7D22\u6846\u67B6...", style: { width: 260 } }) })) })), _jsx("h3", Object.assign({ className: "adui-anchor-heading", id: "select-demo-size" }, { children: "\u4E09\u79CD\u5C3A\u5BF8" })), _jsx(DemoCard, Object.assign({ title: "small / middle / large", code: `<Select options={options} size="small" placeholder="Small" />
195
+ <Select options={options} size="middle" placeholder="Middle" />
196
+ <Select options={options} size="large" placeholder="Large" />` }, { children: _jsxs("div", Object.assign({ className: "adui-demo-row" }, { children: [_jsx(Select, { options: demoOptions, size: "small", placeholder: "Small", style: { width: 150 } }), _jsx(Select, { options: demoOptions, size: "middle", placeholder: "Middle", style: { width: 150 } }), _jsx(Select, { options: demoOptions, size: "large", placeholder: "Large", style: { width: 150 } })] })) }))] }));
197
+ };
198
+ /* ========== Input 内容 ========== */
199
+ const InputContent = () => {
200
+ const [inputVal, setInputVal] = useState('');
201
+ const [inputVal2, setInputVal2] = useState('可清除的文本');
202
+ const [pwdVal, setPwdVal] = useState('password123');
203
+ const [taVal, setTaVal] = useState('');
204
+ return (_jsxs(_Fragment, { children: [_jsx("h3", Object.assign({ className: "adui-anchor-heading", id: "input-when" }, { children: "\u4F55\u65F6\u4F7F\u7528" })), _jsxs(WhenUse, { children: [_jsx("span", { children: "\u9700\u8981\u7528\u6237\u8F93\u5165\u6587\u672C\u5185\u5BB9\u65F6\u4F7F\u7528\u3002" }), _jsx("span", { children: "\u652F\u6301\u5355\u884C\u8F93\u5165\uFF08Input\uFF09\u548C\u591A\u884C\u6587\u672C\uFF08Textarea\uFF09\u4E24\u79CD\u5F62\u6001\u3002" }), _jsx("span", { children: "\u63D0\u4F9B\u524D\u7F00/\u540E\u7F00\u56FE\u6807\u3001\u6E05\u9664\u6309\u94AE\u3001\u5B57\u7B26\u8BA1\u6570\u3001\u5BC6\u7801\u5207\u6362\u3001\u72B6\u6001\u53CD\u9988\u7B49\u4E30\u5BCC\u529F\u80FD\u3002" })] }), _jsx("h3", Object.assign({ className: "adui-anchor-heading", id: "input-how" }, { children: "\u5982\u4F55\u4F7F\u7528" })), _jsx(HowUse, { importCode: `import { Input, Textarea } from 'starry-sky-ui';
205
+ import type { InputProps, TextareaProps } from 'starry-sky-ui';
206
+
207
+ // 受控使用
208
+ const [value, setValue] = useState('');
209
+ <Input value={value} onChange={(val) => setValue(val)} placeholder="请输入" />
210
+
211
+ // 多行文本
212
+ <Textarea rows={3} placeholder="请输入内容" />` }), _jsx("h3", Object.assign({ className: "adui-anchor-heading", id: "input-demo-base" }, { children: "\u57FA\u672C\u7528\u6CD5" })), _jsx(DemoCard, Object.assign({ title: "\u53D7\u63A7\u8F93\u5165\u6846", code: `const [value, setValue] = useState('');
213
+ <Input value={value} onChange={(val) => setValue(val)} placeholder="请输入内容" />` }, { children: _jsxs("div", Object.assign({ className: "adui-demo-row" }, { children: [_jsx("div", Object.assign({ style: { width: 280 } }, { children: _jsx(Input, { value: inputVal, onChange: (val) => setInputVal(val), placeholder: "\u8BF7\u8F93\u5165\u5185\u5BB9" }) })), _jsxs("span", Object.assign({ className: "adui-demo-badge" }, { children: ["\u503C\uFF1A", inputVal || '—'] }))] })) })), _jsx("h3", Object.assign({ className: "adui-anchor-heading", id: "input-demo-size" }, { children: "\u4E09\u79CD\u5C3A\u5BF8" })), _jsx(DemoCard, Object.assign({ title: "small / middle / large", code: `<Input size="small" placeholder="Small" />
214
+ <Input size="middle" placeholder="Middle" />
215
+ <Input size="large" placeholder="Large" />` }, { children: _jsxs("div", Object.assign({ className: "adui-demo-row" }, { children: [_jsx("div", Object.assign({ style: { width: 200 } }, { children: _jsx(Input, { size: "small", placeholder: "Small" }) })), _jsx("div", Object.assign({ style: { width: 200 } }, { children: _jsx(Input, { size: "middle", placeholder: "Middle" }) })), _jsx("div", Object.assign({ style: { width: 200 } }, { children: _jsx(Input, { size: "large", placeholder: "Large" }) }))] })) })), _jsx("h3", Object.assign({ className: "adui-anchor-heading", id: "input-demo-prefix" }, { children: "\u524D\u7F00\u4E0E\u540E\u7F00" })), _jsxs(DemoCard, Object.assign({ title: "prefix / suffix", code: `<Input prefix="🔍" placeholder="搜索..." />
216
+ <Input suffix="📅" placeholder="选择日期" />
217
+ <Input prefix="💰" suffix="元" placeholder="金额" />` }, { children: [_jsxs("div", Object.assign({ className: "adui-demo-row" }, { children: [_jsx("div", Object.assign({ style: { width: 240 } }, { children: _jsx(Input, { prefix: "\uD83D\uDD0D", placeholder: "\u641C\u7D22..." }) })), _jsx("div", Object.assign({ style: { width: 240 } }, { children: _jsx(Input, { suffix: "\uD83D\uDCC5", placeholder: "\u9009\u62E9\u65E5\u671F" }) }))] })), _jsx("div", Object.assign({ style: { width: 240, marginTop: 12 } }, { children: _jsx(Input, { prefix: "\uD83D\uDCB0", suffix: "\u5143", placeholder: "\u91D1\u989D" }) }))] })), _jsx("h3", Object.assign({ className: "adui-anchor-heading", id: "input-demo-clear" }, { children: "\u6E05\u9664\u4E0E\u8BA1\u6570" })), _jsxs(DemoCard, Object.assign({ title: "allowClear + showCount", code: `<Input allowClear placeholder="可清除" />
218
+ <Input maxLength={20} showCount placeholder="输入计数" />
219
+ <Input allowClear maxLength={50} showCount defaultValue="可清除且计数" />` }, { children: [_jsxs("div", Object.assign({ className: "adui-demo-row" }, { children: [_jsx("div", Object.assign({ style: { width: 220 } }, { children: _jsx(Input, { allowClear: true, placeholder: "\u53EF\u6E05\u9664" }) })), _jsx("div", Object.assign({ style: { width: 220 } }, { children: _jsx(Input, { maxLength: 20, showCount: true, placeholder: "\u8F93\u5165\u8BA1\u6570" }) }))] })), _jsx("div", Object.assign({ style: { width: 320, marginTop: 12 } }, { children: _jsx(Input, { allowClear: true, maxLength: 50, showCount: true, value: inputVal2, onChange: (val) => setInputVal2(val) }) }))] })), _jsx("h3", Object.assign({ className: "adui-anchor-heading", id: "input-demo-password" }, { children: "\u5BC6\u7801\u6846" })), _jsx(DemoCard, Object.assign({ title: "type=\"password\"", code: `<Input type="password" placeholder="请输入密码" />
220
+ <Input type="password" value={pwd} onChange={setPwd} />` }, { children: _jsxs("div", Object.assign({ className: "adui-demo-row" }, { children: [_jsx("div", Object.assign({ style: { width: 260 } }, { children: _jsx(Input, { type: "password", placeholder: "\u8BF7\u8F93\u5165\u5BC6\u7801" }) })), _jsx("div", Object.assign({ style: { width: 260 } }, { children: _jsx(Input, { type: "password", value: pwdVal, onChange: (val) => setPwdVal(val), placeholder: "\u53D7\u63A7\u5BC6\u7801" }) }))] })) })), _jsx("h3", Object.assign({ className: "adui-anchor-heading", id: "input-demo-status" }, { children: "\u72B6\u6001" })), _jsx(DemoCard, Object.assign({ title: "status \u53CD\u9988", code: `<Input status="error" placeholder="错误状态" />
221
+ <Input status="warning" placeholder="警告状态" />
222
+ <Input status="error" placeholder="禁用" disabled />` }, { children: _jsxs("div", Object.assign({ className: "adui-demo-row" }, { children: [_jsx("div", Object.assign({ style: { width: 220 } }, { children: _jsx(Input, { status: "error", placeholder: "\u9519\u8BEF\u72B6\u6001" }) })), _jsx("div", Object.assign({ style: { width: 220 } }, { children: _jsx(Input, { status: "warning", placeholder: "\u8B66\u544A\u72B6\u6001" }) })), _jsx("div", Object.assign({ style: { width: 220 } }, { children: _jsx(Input, { status: "error", placeholder: "\u7981\u7528\u9519\u8BEF", disabled: true }) }))] })) })), _jsx("h3", Object.assign({ className: "adui-anchor-heading", id: "input-demo-textarea" }, { children: "\u591A\u884C\u6587\u672C" })), _jsx(DemoCard, Object.assign({ title: "Textarea \u57FA\u672C\u7528\u6CD5", code: `<Textarea rows={3} placeholder="请输入内容" />
223
+ <Textarea rows={3} maxLength={200} showCount placeholder="带字符计数" />` }, { children: _jsxs("div", Object.assign({ className: "adui-demo-row" }, { children: [_jsx("div", Object.assign({ style: { width: 320 } }, { children: _jsx(Textarea, { rows: 3, placeholder: "\u8BF7\u8F93\u5165\u5185\u5BB9", value: taVal, onChange: (val) => setTaVal(val) }) })), _jsx("div", Object.assign({ style: { width: 320 } }, { children: _jsx(Textarea, { rows: 3, maxLength: 200, showCount: true, placeholder: "\u5E26\u5B57\u7B26\u8BA1\u6570" }) }))] })) })), _jsxs(DemoCard, Object.assign({ title: "Textarea \u5C3A\u5BF8\u4E0E\u81EA\u9002\u5E94", code: `<Textarea size="small" rows={2} placeholder="Small" />
224
+ <Textarea size="large" rows={4} placeholder="Large" />
225
+ <Textarea autoSize rows={1} placeholder="自适应高度(试试输入多行)" />` }, { children: [_jsxs("div", Object.assign({ className: "adui-demo-row" }, { children: [_jsx("div", Object.assign({ style: { width: 260 } }, { children: _jsx(Textarea, { size: "small", rows: 2, placeholder: "Small" }) })), _jsx("div", Object.assign({ style: { width: 260 } }, { children: _jsx(Textarea, { size: "large", rows: 4, placeholder: "Large" }) }))] })), _jsx("div", Object.assign({ style: { width: 400, marginTop: 12 } }, { children: _jsx(Textarea, { autoSize: true, rows: 1, placeholder: "\u81EA\u9002\u5E94\u9AD8\u5EA6\uFF08\u8BD5\u8BD5\u8F93\u5165\u591A\u884C\uFF09" }) }))] }))] }));
226
+ };
227
+ /* ========== Table 内容 ========== */
228
+ const tableData = [
229
+ { key: '1', name: 'React', version: '18.3.1', type: '前端框架', usage: '81%', author: 'Meta' },
230
+ { key: '2', name: 'Vue', version: '3.4.0', type: '前端框架', usage: '65%', author: '尤雨溪' },
231
+ { key: '3', name: 'Angular', version: '17.0.0', type: '前端框架', usage: '42%', author: 'Google' },
232
+ { key: '4', name: 'Node.js', version: '22.0.0', type: '运行时', usage: '78%', author: 'OpenJS' },
233
+ { key: '5', name: 'TypeScript', version: '5.4.0', type: '语言', usage: '73%', author: 'Microsoft' },
234
+ { key: '6', name: 'Webpack', version: '5.90.0', type: '构建工具', usage: '89%', author: 'Webpack' },
235
+ { key: '7', name: 'Vite', version: '5.2.0', type: '构建工具', usage: '58%', author: 'Evan You' },
236
+ { key: '8', name: 'Express', version: '4.18.0', type: '后端框架', usage: '70%', author: 'TJ' },
237
+ { key: '9', name: 'Next.js', version: '14.2.0', type: '全栈框架', usage: '52%', author: 'Vercel' },
238
+ { key: '10', name: 'Tailwind CSS', version: '3.4.0', type: 'CSS 框架', usage: '45%', author: 'Tailwind Labs' },
239
+ { key: '11', name: 'Docker', version: '26.0.0', type: '容器', usage: '61%', author: 'Docker Inc' },
240
+ { key: '12', name: 'Redis', version: '7.4.0', type: '缓存', usage: '55%', author: 'Redis Labs' },
241
+ ];
242
+ const sortByName = (a, b) => a.name.localeCompare(b.name);
243
+ const sortByVersion = (a, b) => parseFloat(b.version) - parseFloat(a.version);
244
+ const sortByUsage = (a, b) => parseFloat(b.usage) - parseFloat(a.usage);
245
+ const TableContent = () => {
246
+ const [selectedKeys, setSelectedKeys] = useState([]);
247
+ const baseColumns = [
248
+ { title: '名称', dataIndex: 'name', key: 'name', sorter: sortByName, width: 140 },
249
+ { title: '版本', dataIndex: 'version', key: 'version', sorter: sortByVersion, width: 100 },
250
+ { title: '分类', dataIndex: 'type', key: 'type', width: 110 },
251
+ {
252
+ title: '使用率',
253
+ dataIndex: 'usage',
254
+ key: 'usage',
255
+ sorter: sortByUsage,
256
+ width: 100,
257
+ render: (val) => (_jsxs("span", Object.assign({ style: { display: 'flex', alignItems: 'center', gap: 6 } }, { children: [_jsx("span", Object.assign({ style: {
258
+ display: 'inline-block',
259
+ width: 60,
260
+ height: 6,
261
+ borderRadius: 3,
262
+ background: 'rgba(139,92,246,0.2)',
263
+ overflow: 'hidden',
264
+ } }, { children: _jsx("span", { style: {
265
+ display: 'block',
266
+ width: val,
267
+ height: '100%',
268
+ borderRadius: 3,
269
+ background: 'linear-gradient(90deg, #8b5cf6, #3b82f6)',
270
+ } }) })), val] }))),
271
+ },
272
+ { title: '作者', dataIndex: 'author', key: 'author', width: 120 },
273
+ ];
274
+ return (_jsxs(_Fragment, { children: [_jsx("h3", Object.assign({ className: "adui-anchor-heading", id: "table-when" }, { children: "\u4F55\u65F6\u4F7F\u7528" })), _jsxs(WhenUse, { children: [_jsx("span", { children: "\u9700\u8981\u4EE5\u8868\u683C\u5F62\u5F0F\u5C55\u793A\u5927\u91CF\u7ED3\u6784\u5316\u6570\u636E\u65F6\u4F7F\u7528\u3002" }), _jsx("span", { children: "\u9002\u5408\u9700\u8981\u5BF9\u6570\u636E\u8FDB\u884C\u6392\u5E8F\u3001\u7B5B\u9009\u3001\u5206\u9875\u6D4F\u89C8\u7684\u573A\u666F\u3002" }), _jsx("span", { children: "\u652F\u6301\u884C\u9009\u62E9\u64CD\u4F5C\uFF0C\u9002\u5408\u6279\u91CF\u5904\u7406\u6570\u636E\u3002" })] }), _jsx("h3", Object.assign({ className: "adui-anchor-heading", id: "table-how" }, { children: "\u5982\u4F55\u4F7F\u7528" })), _jsx(HowUse, { importCode: `import { Table } from 'starry-sky-ui';
275
+ import type { ColumnType } from 'starry-sky-ui';
276
+
277
+ const columns: ColumnType[] = [
278
+ { title: '名称', dataIndex: 'name', key: 'name', sorter: (a, b) => a.name.localeCompare(b.name) },
279
+ { title: '版本', dataIndex: 'version', key: 'version' },
280
+ ];` }), _jsx("h3", Object.assign({ className: "adui-anchor-heading", id: "table-demo-base" }, { children: "\u57FA\u672C\u7528\u6CD5" })), _jsx(DemoCard, Object.assign({ title: "\u57FA\u7840\u8868\u683C\uFF08\u5E26\u5206\u9875\uFF09", code: `<Table
281
+ columns={columns}
282
+ dataSource={data}
283
+ rowKey="key"
284
+ pagination={{
285
+ pageSize: 5,
286
+ showSizeChanger: true,
287
+ showTotal: true,
288
+ }}
289
+ />` }, { children: _jsx(Table, { columns: baseColumns, dataSource: tableData, rowKey: "key", pagination: { pageSize: 5, showSizeChanger: true, showTotal: true }, size: "middle" }) })), _jsx("h3", Object.assign({ className: "adui-anchor-heading", id: "table-demo-sort" }, { children: "\u6392\u5E8F" })), _jsx(DemoCard, Object.assign({ title: "\u70B9\u51FB\u5217\u5934\u6392\u5E8F", code: `{ title: '名称', dataIndex: 'name', sorter: (a, b) => a.name.localeCompare(b.name) }
290
+ { title: '版本', dataIndex: 'version', sorter: (a, b) => b.version - a.version }
291
+ { title: '使用率', dataIndex: 'usage', sorter: (a, b) => b.usage - a.usage }` }, { children: _jsx(Table, { columns: baseColumns, dataSource: tableData, rowKey: "key", pagination: { pageSize: 5, showTotal: true }, size: "middle", bordered: true }) })), _jsx("h3", Object.assign({ className: "adui-anchor-heading", id: "table-demo-select" }, { children: "\u884C\u9009\u62E9" })), _jsxs(DemoCard, Object.assign({ title: "\u590D\u9009\u6846\u884C\u9009\u62E9", code: `const [selectedKeys, setSelectedKeys] = useState([]);
292
+
293
+ <Table
294
+ rowSelection={{
295
+ selectedRowKeys: selectedKeys,
296
+ onChange: (keys, rows) => setSelectedKeys(keys),
297
+ }}
298
+ columns={columns}
299
+ dataSource={data}
300
+ rowKey="key"
301
+ />` }, { children: [_jsx(Table, { columns: baseColumns, dataSource: tableData, rowKey: "key", pagination: { pageSize: 5, showTotal: true }, size: "middle", rowSelection: {
302
+ selectedRowKeys: selectedKeys,
303
+ onChange: (keys) => setSelectedKeys(keys),
304
+ } }), selectedKeys.length > 0 && (_jsxs("div", Object.assign({ className: "adui-table-selected-info", style: { marginTop: 8, fontSize: 13, color: '#888' } }, { children: ["\u5DF2\u9009\u62E9 ", selectedKeys.length, " \u9879"] })))] })), _jsx("h3", Object.assign({ className: "adui-anchor-heading", id: "table-demo-loading" }, { children: "\u52A0\u8F7D & \u7A7A\u6001" })), _jsx(DemoCard, Object.assign({ title: "\u52A0\u8F7D\u72B6\u6001", code: `<Table columns={columns} dataSource={[]} loading />` }, { children: _jsx(Table, { columns: baseColumns, dataSource: tableData.slice(0, 3), rowKey: "key", loading: true, size: "middle" }) })), _jsx(DemoCard, Object.assign({ title: "\u7A7A\u6570\u636E", code: `<Table columns={columns} dataSource={[]} emptyText="暂无数据" />` }, { children: _jsx(Table, { columns: baseColumns, dataSource: [], rowKey: "key", emptyText: "\u6682\u65E0\u6570\u636E", size: "middle" }) }))] }));
305
+ };
306
+ /* ========== Pagination 内容 ========== */
307
+ const PaginationContent = () => {
308
+ const [controlledPage, setControlledPage] = useState(3);
309
+ return (_jsxs(_Fragment, { children: [_jsx("h3", Object.assign({ className: "adui-anchor-heading", id: "pagination-when" }, { children: "\u4F55\u65F6\u4F7F\u7528" })), _jsxs(WhenUse, { children: [_jsx("span", { children: "\u9700\u8981\u5C06\u5927\u91CF\u6570\u636E\u5206\u6279\u6B21\u5C55\u793A\u65F6\u4F7F\u7528\u3002" }), _jsx("span", { children: "\u9002\u5408\u6570\u636E\u91CF\u8D85\u8FC7\u4E00\u9875\u663E\u793A\u8303\u56F4\u3001\u9700\u8981\u7FFB\u9875\u6D4F\u89C8\u7684\u573A\u666F\u3002" }), _jsx("span", { children: "\u652F\u6301\u53D7\u63A7\u548C\u975E\u53D7\u63A7\u4E24\u79CD\u6A21\u5F0F\u3002" })] }), _jsx("h3", Object.assign({ className: "adui-anchor-heading", id: "pagination-how" }, { children: "\u5982\u4F55\u4F7F\u7528" })), _jsx(HowUse, { importCode: `import { Pagination } from 'starry-sky-ui';
310
+
311
+ <Pagination total={100} defaultCurrent={1} defaultPageSize={10} onChange={(page, size) => console.log(page, size)} />` }), _jsx("h3", Object.assign({ className: "adui-anchor-heading", id: "pagination-demo-base" }, { children: "\u57FA\u672C\u7528\u6CD5" })), _jsx(DemoCard, Object.assign({ title: "\u975E\u53D7\u63A7\u5206\u9875", code: `<Pagination total={200} defaultCurrent={1} showTotal showSizeChanger />` }, { children: _jsx(Pagination, { total: 200, defaultCurrent: 1, showTotal: true, showSizeChanger: true, onChange: (p) => console.log(p) }) })), _jsx("h3", Object.assign({ className: "adui-anchor-heading", id: "pagination-demo-controlled" }, { children: "\u53D7\u63A7\u6A21\u5F0F" })), _jsxs(DemoCard, Object.assign({ title: "\u53D7\u63A7\u5206\u9875", code: `const [page, setPage] = useState(3);
312
+ const [size, setSize] = useState(10);
313
+
314
+ <Pagination
315
+ current={page}
316
+ pageSize={size}
317
+ total={500}
318
+ showTotal
319
+ showSizeChanger
320
+ onChange={(p, s) => { setPage(p); setSize(s); }}
321
+ />` }, { children: [_jsx(Pagination, { current: controlledPage, total: 200, showTotal: true, showSizeChanger: true, onChange: (p) => setControlledPage(p) }), _jsxs("div", Object.assign({ className: "adui-demo-badge", style: { marginTop: 8, display: 'inline-block' } }, { children: ["\u5F53\u524D\u9875: ", controlledPage] }))] })), _jsx("h3", Object.assign({ className: "adui-anchor-heading", id: "pagination-demo-more" }, { children: "\u66F4\u591A\u529F\u80FD" })), _jsx(DemoCard, Object.assign({ title: "\u7B80\u6D01\u6A21\u5F0F", code: `<Pagination total={100} simple />` }, { children: _jsx(Pagination, { total: 100, simple: true }) })), _jsx(DemoCard, Object.assign({ title: "\u5FEB\u901F\u8DF3\u8F6C", code: `<Pagination total={500} showQuickJumper />` }, { children: _jsx(Pagination, { total: 500, showQuickJumper: true, onChange: (p) => console.log(p) }) })), _jsx(DemoCard, Object.assign({ title: "\u5C0F\u5C3A\u5BF8", code: `<Pagination total={200} size="small" showTotal showSizeChanger />` }, { children: _jsx(Pagination, { total: 200, size: "small", showTotal: true, showSizeChanger: true }) })), _jsx(DemoCard, Object.assign({ title: "\u7981\u7528", code: `<Pagination total={200} disabled />` }, { children: _jsx(Pagination, { total: 200, disabled: true, showTotal: true }) }))] }));
322
+ };
323
+ /* ========== ContentRenderer 内容 ========== */
324
+ const crDemoMarkdown = `## 欢迎使用 Markdown 渲染
325
+
326
+ 这是一个 **内容展示组件** 的演示,支持以下语法:
327
+
328
+ ### 基础格式
329
+
330
+ - **粗体**、*斜体*、~~删除线~~
331
+ - [链接文本](https://example.com)
332
+ - \`行内代码\`
333
+
334
+ ### 引用块
335
+
336
+ > 这是一段引用文字,
337
+ > 支持多行引用。
338
+
339
+ ### 表格
340
+
341
+ | 特性 | 状态 | 版本 |
342
+ |------|------|------|
343
+ | GFM 表格 | ✅ | 1.0 |
344
+ | 代码高亮 | ✅ | 1.0 |
345
+ | 复制按钮 | ✅ | 1.1 |
346
+ `;
347
+ const crCodeDemo = `\`\`\`typescript
348
+ // 类型安全的 React Hook
349
+ import { useState, useCallback } from 'react';
350
+
351
+ interface UseToggleReturn {
352
+ value: boolean;
353
+ toggle: () => void;
354
+ setTrue: () => void;
355
+ setFalse: () => void;
356
+ }
357
+
358
+ function useToggle(initial = false): UseToggleReturn {
359
+ const [value, setValue] = useState(initial);
360
+ const toggle = useCallback(() => setValue(v => !v), []);
361
+ const setTrue = useCallback(() => setValue(true), []);
362
+ const setFalse = useCallback(() => setValue(false), []);
363
+
364
+ return { value, toggle, setTrue, setFalse };
365
+ }
366
+ \`\`\`
367
+
368
+ \`\`\`css
369
+ /* 响应式卡片布局 */
370
+ .articles-grid {
371
+ display: grid;
372
+ grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
373
+ gap: 1.5rem;
374
+ padding: 2rem 0;
375
+ }
376
+
377
+ @media (max-width: 768px) {
378
+ .articles-grid {
379
+ grid-template-columns: 1fr;
380
+ gap: 1rem;
381
+ }
382
+ }
383
+ \`\`\`
384
+ `;
385
+ const crGfmDemo = `## GFM 扩展语法
386
+
387
+ ### 任务列表
388
+
389
+ - [x] 完成基础渲染
390
+ - [x] 支持代码高亮
391
+ - [ ] 添加复制按钮 (已完成)
392
+ - [ ] 支持数学公式
393
+
394
+ ### 自动链接
395
+
396
+ 访问 https://github.com 自动转为链接。
397
+
398
+ ### 表格中对齐
399
+
400
+ | 左对齐 | 居中对齐 | 右对齐 |
401
+ |:-------|:--------:|-------:|
402
+ | 内容 A | 内容 B | 内容 C |
403
+ | 内容 D | 内容 E | 内容 F |
404
+ `;
405
+ const ContentRendererContent = () => (_jsxs(_Fragment, { children: [_jsx("h3", Object.assign({ className: "adui-anchor-heading", id: "cr-when" }, { children: "\u4F55\u65F6\u4F7F\u7528" })), _jsxs(WhenUse, { children: [_jsx("span", { children: "\u9700\u8981\u6E32\u67D3 Markdown \u683C\u5F0F\u7684\u5185\u5BB9\u65F6\u4F7F\u7528\u3002" }), _jsx("span", { children: "\u9002\u5408\u5C55\u793A AI \u56DE\u590D\u3001\u535A\u5BA2\u5185\u5BB9\u3001\u6587\u6863\u8BF4\u660E\u7B49\u5BCC\u6587\u672C\u573A\u666F\u3002" }), _jsx("span", { children: "\u652F\u6301\u4EE3\u7801\u8BED\u6CD5\u9AD8\u4EAE\u3001\u8868\u683C\u3001\u5217\u8868\u3001\u5F15\u7528\u5757\u7B49\u4E30\u5BCC\u683C\u5F0F\u3002" })] }), _jsx("h3", Object.assign({ className: "adui-anchor-heading", id: "cr-how" }, { children: "\u5982\u4F55\u4F7F\u7528" })), _jsx(HowUse, { importCode: `import { ContentRenderer } from 'starry-sky-ui';
406
+ import type { ContentRendererProps } from 'starry-sky-ui';
407
+
408
+ <ContentRenderer content="# Hello\\n\\nMarkdown **内容**" />` }), _jsx("h3", Object.assign({ className: "adui-anchor-heading", id: "cr-demo-base" }, { children: "\u57FA\u672C\u7528\u6CD5" })), _jsx(DemoCard, Object.assign({ title: "\u6E32\u67D3 Markdown \u5185\u5BB9", code: `<ContentRenderer content={markdownText} />` }, { children: _jsx(ContentRenderer, { content: crDemoMarkdown }) })), _jsx("h3", Object.assign({ className: "adui-anchor-heading", id: "cr-demo-code" }, { children: "\u4EE3\u7801\u9AD8\u4EAE" })), _jsx(DemoCard, Object.assign({ title: "TypeScript + CSS \u4EE3\u7801\u5757", code: `<ContentRenderer content={codeExample} />` }, { children: _jsx(ContentRenderer, { content: crCodeDemo }) })), _jsx("h3", Object.assign({ className: "adui-anchor-heading", id: "cr-demo-gfm" }, { children: "GFM \u8BED\u6CD5" })), _jsx(DemoCard, Object.assign({ title: "\u4EFB\u52A1\u5217\u8868 + \u8868\u683C\u5BF9\u9F50", code: `<ContentRenderer content={gfmText} />` }, { children: _jsx(ContentRenderer, { content: crGfmDemo }) }))] }));
409
+ /* ========== ChatInput 内容 ========== */
410
+ const ChatInputContent = () => {
411
+ const [chatLoading, setChatLoading] = useState(false);
412
+ return (_jsxs(_Fragment, { children: [_jsx("h3", Object.assign({ className: "adui-anchor-heading", id: "ci-when" }, { children: "\u4F55\u65F6\u4F7F\u7528" })), _jsxs(WhenUse, { children: [_jsx("span", { children: "\u9700\u8981\u7528\u6237\u8F93\u5165\u6D88\u606F\u8FDB\u884C\u5BF9\u8BDD\u4EA4\u4E92\u65F6\u4F7F\u7528\u3002" }), _jsx("span", { children: "\u4EFF DeepSeek \u8F93\u5165\u6846\u8BBE\u8BA1\uFF0C\u652F\u6301\u591A\u884C\u8F93\u5165\u3001\u56DE\u8F66\u53D1\u9001\u3002" }), _jsx("span", { children: "\u914D\u5957 ContentRenderer \u7EC4\u4EF6\u53EF\u5B8C\u7F8E\u5C55\u793A AI \u56DE\u590D\u5185\u5BB9\u3002" })] }), _jsx("h3", Object.assign({ className: "adui-anchor-heading", id: "ci-how" }, { children: "\u5982\u4F55\u4F7F\u7528" })), _jsx(HowUse, { importCode: `import { ChatInput } from 'starry-sky-ui';
413
+ import type { ChatInputProps } from 'starry-sky-ui';
414
+
415
+ <ChatInput
416
+ onSend={(msg) => console.log(msg)}
417
+ loading={false}
418
+ placeholder="输入消息..."
419
+ />` }), _jsx("h3", Object.assign({ className: "adui-anchor-heading", id: "ci-demo-base" }, { children: "\u57FA\u672C\u7528\u6CD5" })), _jsx(DemoCard, Object.assign({ title: "\u9ED8\u8BA4\u72B6\u6001", code: `<ChatInput
420
+ onSend={(msg) => console.log(msg)}
421
+ placeholder="输入消息..."
422
+ />` }, { children: _jsx("div", Object.assign({ style: { maxWidth: 500, margin: '0 auto' } }, { children: _jsx(ChatInput, { onSend: (msg) => message.info(`发送: ${msg}`), placeholder: "\u8F93\u5165\u6D88\u606F\uFF0CEnter \u53D1\u9001..." }) })) })), _jsx("h3", Object.assign({ className: "adui-anchor-heading", id: "ci-demo-loading" }, { children: "\u52A0\u8F7D\u72B6\u6001" })), _jsx(DemoCard, Object.assign({ title: "loading \u505C\u6B62\u751F\u6210", code: `const [loading, setLoading] = useState(false);
423
+ <ChatInput
424
+ onSend={loading ? undefined : () => setLoading(true)}
425
+ loading={loading}
426
+ placeholder={loading ? 'AI 正在回复...' : '输入消息...'}
427
+ />` }, { children: _jsx("div", Object.assign({ style: { maxWidth: 500, margin: '0 auto' } }, { children: _jsx(ChatInput, { onSend: chatLoading ? () => setChatLoading(false) : () => setChatLoading(true), loading: chatLoading, placeholder: chatLoading ? '点击停止生成' : '点击发送开始模拟加载' }) })) }))] }));
428
+ };
429
+ /* ========== Starfield ========== */
430
+ const StarfieldContent = () => (_jsxs(_Fragment, { children: [_jsx("h3", Object.assign({ className: "adui-anchor-heading", id: "starfield-when" }, { children: "\u4F55\u65F6\u4F7F\u7528" })), _jsxs(WhenUse, { children: [_jsx("span", { children: "\u9700\u8981\u4E3A\u9875\u9762\u6DFB\u52A0\u661F\u7A7A\u80CC\u666F\u88C5\u9970\u6548\u679C\u65F6\u4F7F\u7528\u3002" }), _jsx("span", { children: "\u9002\u5408\u9996\u9875\u3001\u767B\u5F55\u9875\u3001\u843D\u5730\u9875\u7B49\u9700\u8981\u89C6\u89C9\u6C1B\u56F4\u7684\u573A\u666F\u3002" }), _jsx("span", { children: "\u652F\u6301\u81EA\u5B9A\u4E49\u661F\u661F\u6570\u91CF\u3001\u989C\u8272\u548C\u95EA\u70C1\u901F\u5EA6\uFF0C\u878D\u5165\u4E0D\u540C\u89C6\u89C9\u98CE\u683C\u3002" })] }), _jsx("h3", Object.assign({ className: "adui-anchor-heading", id: "starfield-how" }, { children: "\u5982\u4F55\u4F7F\u7528" })), _jsx(HowUse, { importCode: `import { Starfield } from 'starry-sky-ui';
431
+
432
+ // 直接使用,默认参数即可呈现星空效果
433
+ <Starfield />` }), _jsx("h3", Object.assign({ className: "adui-anchor-heading", id: "starfield-demo-basic" }, { children: "\u57FA\u672C\u7528\u6CD5" })), _jsx(DemoCard, Object.assign({ title: "\u9ED8\u8BA4\u53C2\u6570", code: `<Starfield />` }, { children: _jsxs("div", Object.assign({ style: { position: 'relative', height: 240, borderRadius: 8, overflow: 'hidden', background: '#0a0a1a' } }, { children: [_jsx(Starfield, {}), _jsx("div", Object.assign({ style: { position: 'relative', zIndex: 2, display: 'flex', alignItems: 'center', justifyContent: 'center', height: '100%', color: '#fff', fontSize: 18, opacity: 0.7 } }, { children: "\u9ED8\u8BA4 350 \u9897\u661F\u661F" }))] })) })), _jsx("h3", Object.assign({ className: "adui-anchor-heading", id: "starfield-demo-custom" }, { children: "\u81EA\u5B9A\u4E49\u53C2\u6570" })), _jsx(DemoCard, Object.assign({ title: "\u81EA\u5B9A\u4E49\u989C\u8272\u4E0E\u6570\u91CF", code: `<Starfield
434
+ starCount={100}
435
+ starColors={['#ff6b6b', '#ffd93d', '#6bcb77']}
436
+ time={5}
437
+ />` }, { children: _jsxs("div", Object.assign({ style: { position: 'relative', height: 240, borderRadius: 8, overflow: 'hidden', background: '#0a0a1a' } }, { children: [_jsx(Starfield, { starCount: 100, starColors: ['#ff6b6b', '#ffd93d', '#6bcb77'], time: 5 }), _jsx("div", Object.assign({ style: { position: 'relative', zIndex: 2, display: 'flex', alignItems: 'center', justifyContent: 'center', height: '100%', color: '#fff', fontSize: 18, opacity: 0.7 } }, { children: "100 \u9897\u5F69\u8272\u661F\u661F\uFF0C5s \u6700\u5927\u5EF6\u8FDF" }))] })) }))] }));
438
+ /* ========== Utils 工具函数 ========== */
439
+ const UtilsContent = () => {
440
+ const [formatResult, setFormatResult] = useState('');
441
+ // 文件上传相关
442
+ const fileInputRef = useRef(null);
443
+ const [imageInfo, setImageInfo] = useState('');
444
+ const handleImageSelect = useCallback((e) => __awaiter(void 0, void 0, void 0, function* () {
445
+ var _a;
446
+ const file = (_a = e.target.files) === null || _a === void 0 ? void 0 : _a[0];
447
+ if (!file)
448
+ return;
449
+ try {
450
+ const info = yield adUtils.getImageInfo(file);
451
+ setImageInfo(`${info.width} × ${info.height} | ${file.type}`);
452
+ }
453
+ catch (_b) {
454
+ message.error('读取图片信息失败');
455
+ }
456
+ }), []);
457
+ const handleCompress = useCallback(() => __awaiter(void 0, void 0, void 0, function* () {
458
+ var _c, _d;
459
+ const file = (_d = (_c = fileInputRef.current) === null || _c === void 0 ? void 0 : _c.files) === null || _d === void 0 ? void 0 : _d[0];
460
+ if (!file) {
461
+ message.warning('请先选择一张图片');
462
+ return;
463
+ }
464
+ try {
465
+ const blob = yield adUtils.compressImage(file, { quality: 0.5, maxDimension: 600, format: 'image/webp' });
466
+ message.success(`压缩完成!大小:${adUtils.formatFileSize(blob.size)}`);
467
+ // 触发下载
468
+ adUtils.downloadFile(blob, { filename: 'compressed.webp' });
469
+ }
470
+ catch (_e) {
471
+ message.error('压缩失败');
472
+ }
473
+ }), []);
474
+ return (_jsxs(_Fragment, { children: [_jsx("h3", Object.assign({ className: "adui-anchor-heading", id: "utils-when" }, { children: "\u4F55\u65F6\u4F7F\u7528" })), _jsxs(WhenUse, { children: [_jsx("span", { children: "\u9700\u8981\u4F7F\u7528\u6587\u4EF6\u5904\u7406\uFF08\u4E0B\u8F7D\u3001\u683C\u5F0F\u8F6C\u6362\uFF09\u3001\u56FE\u7247\u5904\u7406\uFF08\u538B\u7F29\u3001\u83B7\u53D6\u4FE1\u606F\uFF09\u3001\u4E8B\u4EF6\u63A7\u5236\uFF08\u9632\u6296\u3001\u8282\u6D41\uFF09\u7B49\u8F7B\u91CF\u5DE5\u5177\u65F6\u4F7F\u7528\u3002" }), _jsx("span", { children: "\u65E0\u9700\u5B89\u88C5\u989D\u5916\u4F9D\u8D56\uFF0C\u6240\u6709\u51FD\u6570\u5747\u4E3A\u96F6\u4F9D\u8D56\u7EAF\u51FD\u6570\u3002" }), _jsxs("span", { children: ["\u6240\u6709\u5DE5\u5177\u51FD\u6570\u901A\u8FC7 ", _jsx("code", { children: "adUtils" }), " \u547D\u540D\u7A7A\u95F4\u7EDF\u4E00\u8BBF\u95EE\u3002"] })] }), _jsx("h3", Object.assign({ className: "adui-anchor-heading", id: "utils-how" }, { children: "\u5982\u4F55\u4F7F\u7528" })), _jsx(HowUse, { importCode: `import { adUtils } from 'starry-sky-ui';
475
+
476
+ // 文件工具
477
+ adUtils.formatFileSize(1536); // "1.50 KB"
478
+ adUtils.downloadFile(url, { filename: 'doc.xlsx' });
479
+
480
+ // 图片工具
481
+ const info = await adUtils.getImageInfo(file);
482
+ const blob = await adUtils.compressImage(file, { quality: 0.75 });
483
+
484
+ // 事件工具
485
+ const handleSearch = adUtils.debounce((val) => fetch(val), 500);
486
+ await adUtils.sleep(1000);` }), _jsx("h3", Object.assign({ className: "adui-anchor-heading", id: "utils-demo-file" }, { children: "\u6587\u4EF6\u5DE5\u5177" })), _jsx(DemoCard, Object.assign({ title: "formatFileSize \u6587\u4EF6\u5927\u5C0F\u683C\u5F0F\u5316", code: `import { adUtils } from 'starry-sky-ui';
487
+
488
+ adUtils.formatFileSize(0); // "0 B"
489
+ adUtils.formatFileSize(1024); // "1.00 KB"
490
+ adUtils.formatFileSize(1536); // "1.50 KB"
491
+ adUtils.formatFileSize(1048576); // "1.00 MB"` }, { children: _jsxs("div", Object.assign({ className: "adui-demo-row" }, { children: [_jsx("div", Object.assign({ style: { width: 280 } }, { children: _jsx(Input, { placeholder: "\u8F93\u5165\u5B57\u8282\u6570\uFF0C\u5982 1536", onChange: (val) => {
492
+ const num = parseInt(val);
493
+ setFormatResult(isNaN(num) ? '' : adUtils.formatFileSize(num));
494
+ } }) })), _jsx("span", Object.assign({ className: "adui-demo-badge" }, { children: formatResult || '等待输入...' }))] })) })), _jsx("h3", Object.assign({ className: "adui-anchor-heading", id: "utils-demo-image" }, { children: "\u56FE\u7247\u5DE5\u5177" })), _jsx(DemoCard, Object.assign({ title: "getImageInfo + compressImage", code: `import { adUtils } from 'starry-sky-ui';
495
+
496
+ // 获取图片信息
497
+ const info = await adUtils.getImageInfo(file);
498
+ // { width: 1920, height: 1080, type: 'image/jpeg' }
499
+
500
+ // 压缩并下载
501
+ const blob = await adUtils.compressImage(file, {
502
+ quality: 0.5,
503
+ maxDimension: 600,
504
+ format: 'image/webp'
505
+ });
506
+ adUtils.downloadFile(blob, { filename: 'compressed.webp' });` }, { children: _jsxs("div", Object.assign({ className: "adui-demo-row", style: { flexDirection: 'column', gap: 12 } }, { children: [_jsx("input", { ref: fileInputRef, type: "file", accept: "image/*", style: { display: 'none' }, onChange: handleImageSelect }), _jsxs("div", Object.assign({ style: { display: 'flex', gap: 8, flexWrap: 'wrap' } }, { children: [_jsx("button", Object.assign({ className: "adui-btn", onClick: () => { var _a; return (_a = fileInputRef.current) === null || _a === void 0 ? void 0 : _a.click(); } }, { children: "\u9009\u62E9\u56FE\u7247" })), _jsx("button", Object.assign({ className: "adui-btn adui-btn-green", onClick: handleCompress }, { children: "\u538B\u7F29\u5E76\u4E0B\u8F7D WebP" }))] })), imageInfo && _jsx("span", Object.assign({ className: "adui-demo-badge" }, { children: imageInfo }))] })) })), _jsx("h3", Object.assign({ className: "adui-anchor-heading", id: "utils-demo-event" }, { children: "\u4E8B\u4EF6\u5DE5\u5177" })), _jsx(DemoCard, Object.assign({ title: "debounce \u9632\u6296 + sleep \u5EF6\u8FDF", code: `import { adUtils } from 'starry-sky-ui';
507
+
508
+ // 防抖:快速点击只执行最后一次
509
+ const handleSearch = adUtils.debounce((val) => {
510
+ fetchResults(val);
511
+ }, 500);
512
+
513
+ // sleep:异步等待
514
+ await adUtils.sleep(1000); // 等待 1 秒` }, { children: _jsxs("div", Object.assign({ className: "adui-demo-row" }, { children: [_jsx("button", Object.assign({ className: "adui-btn", onClick: adUtils.debounce(() => {
515
+ message.success('防抖执行!快速点击只触发一次');
516
+ }, 800) }, { children: "\u5FEB\u901F\u70B9\u51FB\u6D4B\u8BD5\u9632\u6296" })), _jsx("button", Object.assign({ className: "adui-btn adui-btn-green", onClick: () => __awaiter(void 0, void 0, void 0, function* () {
517
+ message.loading('等待 2 秒...', 0);
518
+ yield adUtils.sleep(2000);
519
+ message.success('sleep 结束!');
520
+ }) }, { children: "sleep 2\u79D2" }))] })) }))] }));
521
+ };
522
+ const componentContent = {
523
+ message: MessageContent,
524
+ modal: ModalContent,
525
+ select: SelectContent,
526
+ input: InputContent,
527
+ table: TableContent,
528
+ pagination: PaginationContent,
529
+ 'content-renderer': ContentRendererContent,
530
+ 'chat-input': ChatInputContent,
531
+ starfield: StarfieldContent,
532
+ utils: UtilsContent,
533
+ };
534
+ /* ========== 主页面 ========== */
535
+ const AdUI = () => {
536
+ const [currentComp, setCurrentComp] = useState('message');
537
+ const [activeAnchor, setActiveAnchor] = useState('message-when');
538
+ const layoutRef = useRef(null);
539
+ const currentAnchors = anchorMap[currentComp];
540
+ const compMeta = components.find((c) => c.id === currentComp);
541
+ const ContentComp = componentContent[currentComp];
542
+ // IntersectionObserver 跟踪可见锚点
543
+ useEffect(() => {
544
+ // 阻止外层 main-content 滚动,避免双滚动条
545
+ const main = document.querySelector('.main-content');
546
+ if (main) {
547
+ const prev = main.style.overflow;
548
+ main.style.overflow = 'hidden';
549
+ // 组件卸载时恢复
550
+ return () => { main.style.overflow = prev; };
551
+ }
552
+ }, []);
553
+ // 锚点滚动跟踪
554
+ useEffect(() => {
555
+ const anchors = anchorMap[currentComp];
556
+ const els = anchors
557
+ .map((a) => document.getElementById(a.id))
558
+ .filter(Boolean);
559
+ if (!els.length)
560
+ return;
561
+ const observer = new IntersectionObserver((entries) => {
562
+ for (const entry of entries) {
563
+ if (entry.isIntersecting) {
564
+ setActiveAnchor(entry.target.id);
565
+ }
566
+ }
567
+ }, {
568
+ root: layoutRef.current,
569
+ rootMargin: '-80px 0px -60% 0px',
570
+ threshold: 0,
571
+ });
572
+ els.forEach((el) => observer.observe(el));
573
+ return () => observer.disconnect();
574
+ }, [currentComp]);
575
+ // 切换组件
576
+ const switchComp = useCallback((id) => {
577
+ var _a;
578
+ setCurrentComp(id);
579
+ // 切换到第一个锚点
580
+ const firstId = (_a = anchorMap[id][0]) === null || _a === void 0 ? void 0 : _a.id;
581
+ if (firstId) {
582
+ setActiveAnchor(firstId);
583
+ // 等 DOM 渲染完后滚动到顶部
584
+ requestAnimationFrame(() => {
585
+ var _a;
586
+ (_a = layoutRef.current) === null || _a === void 0 ? void 0 : _a.scrollTo({ top: 0, behavior: 'smooth' });
587
+ });
588
+ }
589
+ }, []);
590
+ // 点击右侧锚点
591
+ const scrollToAnchor = useCallback((anchorId) => {
592
+ const el = document.getElementById(anchorId);
593
+ if (el)
594
+ el.scrollIntoView({ behavior: 'smooth', block: 'start' });
595
+ setActiveAnchor(anchorId);
596
+ }, []);
597
+ return (_jsxs("div", Object.assign({ className: "adui-layout", ref: layoutRef }, { children: [_jsx("aside", Object.assign({ className: "adui-sider" }, { children: _jsxs("div", Object.assign({ className: "adui-sider-inner" }, { children: [_jsxs("div", Object.assign({ className: "adui-sider-logo" }, { children: [_jsx("span", Object.assign({ className: "adui-sider-logo-icon" }, { children: "A" })), _jsx("span", { children: "AdUI \u7EC4\u4EF6" })] })), categories.map((cat) => (_jsxs("div", Object.assign({ className: "adui-nav-group" }, { children: [_jsx("div", Object.assign({ className: "adui-nav-group-title" }, { children: cat.label })), components
598
+ .filter((c) => c.category === cat.id)
599
+ .map((comp) => (_jsx("div", Object.assign({ className: `adui-nav-item ${currentComp === comp.id ? 'active' : ''}`, onClick: () => switchComp(comp.id) }, { children: comp.label }), comp.id)))] }), cat.id)))] })) })), _jsxs("main", Object.assign({ className: "adui-content" }, { children: [_jsxs("section", Object.assign({ className: "adui-hero" }, { children: [_jsx("h1", Object.assign({ className: "adui-hero-title" }, { children: "AdUI" })), _jsx("p", Object.assign({ className: "adui-hero-desc" }, { children: "\u963F\u5446 UI \u7EC4\u4EF6\u5E93 \u2014 \u8F7B\u91CF\u7EA7 React \u7EC4\u4EF6\uFF0CAPI \u8BBE\u8BA1\u53C2\u8003 Ant Design \u6807\u51C6" })), _jsxs("div", Object.assign({ className: "adui-hero-tags" }, { children: [_jsx("span", Object.assign({ className: "adui-tag" }, { children: "React 18" })), _jsx("span", Object.assign({ className: "adui-tag" }, { children: "TypeScript" })), _jsx("span", Object.assign({ className: "adui-tag" }, { children: "SCSS Modules" }))] }))] })), _jsxs("section", Object.assign({ className: "adui-comp-section", id: `${currentComp}-when` }, { children: [_jsx("h2", Object.assign({ className: "adui-comp-title" }, { children: compMeta.label })), _jsx("p", Object.assign({ className: "adui-comp-desc" }, { children: compMeta.desc })), _jsx(ContentComp, {})] }))] })), _jsx("aside", Object.assign({ className: "adui-anchor" }, { children: _jsxs("div", Object.assign({ className: "adui-anchor-inner" }, { children: [_jsx("div", Object.assign({ className: "adui-anchor-title" }, { children: "\u76EE\u5F55" })), currentAnchors.map((anchor) => (_jsx("div", Object.assign({ className: `adui-anchor-item ${activeAnchor === anchor.id ? 'active' : ''}`, onClick: () => scrollToAnchor(anchor.id) }, { children: anchor.label }), anchor.id)))] })) }))] })));
600
+ };
601
+ export default AdUI;
602
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/AdUI/index.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,461 @@
1
+ /* ==========================================================
2
+ AdUI 文档 — 三栏布局(Ant Design 风格)
3
+ ========================================================== */
4
+
5
+ $sider-width: 240px;
6
+ $anchor-width: 180px;
7
+ $primary: #8b5cf6;
8
+ $primary-light: rgba(139, 92, 246, 0.12);
9
+ $text: #e0e0e0;
10
+ $text-secondary: #888;
11
+ $border: rgba(255, 255, 255, 0.08);
12
+ $bg-card: rgba(255, 255, 255, 0.02);
13
+
14
+ /* ===================== 三栏布局 ===================== */
15
+
16
+ .adui-layout {
17
+ display: flex;
18
+ height: calc(100vh - 70px);
19
+
20
+ overflow-y: auto;
21
+ color: $text;
22
+ }
23
+
24
+ /* ===================== 左侧导航 ===================== */
25
+
26
+ .adui-sider {
27
+ width: $sider-width;
28
+ flex-shrink: 0;
29
+ border-right: 1px solid $border;
30
+ position: sticky;
31
+ top: 0;
32
+ align-self: flex-start;
33
+ overflow-y: auto;
34
+ z-index: 10;
35
+ height: calc(100vh - 70px);
36
+ max-height: calc(100vh - 70px);
37
+
38
+ &::-webkit-scrollbar { width: 4px; }
39
+ &::-webkit-scrollbar-thumb { background: rgba(255,255,255,0.08); border-radius: 2px; }
40
+ }
41
+
42
+ .adui-sider-inner {
43
+ padding: 24px 0 40px;
44
+ }
45
+
46
+ .adui-sider-logo {
47
+ display: flex;
48
+ align-items: center;
49
+ gap: 10px;
50
+ padding: 0 20px 20px;
51
+ font-size: 16px;
52
+ font-weight: 700;
53
+ color: #fff;
54
+ border-bottom: 1px solid $border;
55
+ margin-bottom: 12px;
56
+ }
57
+
58
+ .adui-sider-logo-icon {
59
+ display: inline-flex;
60
+ align-items: center;
61
+ justify-content: center;
62
+ width: 30px;
63
+ height: 30px;
64
+ border-radius: 8px;
65
+ background: linear-gradient(135deg, $primary, #3b82f6);
66
+ color: #fff;
67
+ font-size: 16px;
68
+ font-weight: 800;
69
+ }
70
+
71
+ .adui-nav-group {
72
+ margin-bottom: 4px;
73
+ }
74
+
75
+ .adui-nav-group-title {
76
+ padding: 8px 20px 4px;
77
+ font-size: 12px;
78
+ font-weight: 600;
79
+ color: $text-secondary;
80
+ text-transform: uppercase;
81
+ letter-spacing: 0.5px;
82
+ }
83
+
84
+ .adui-nav-item {
85
+ padding: 8px 20px;
86
+ font-size: 14px;
87
+ color: $text-secondary;
88
+ cursor: pointer;
89
+ border-radius: 0;
90
+ transition: all 0.15s ease;
91
+ border-left: 3px solid transparent;
92
+ margin: 1px 0;
93
+
94
+ &:hover {
95
+ color: #fff;
96
+ background: $primary-light;
97
+ }
98
+
99
+ &.active {
100
+ color: $primary;
101
+ background: $primary-light;
102
+ border-left-color: $primary;
103
+ font-weight: 500;
104
+ }
105
+ }
106
+
107
+ /* ===================== 中间内容 ===================== */
108
+
109
+ .adui-content {
110
+ flex: 1;
111
+ padding: 24px 48px 120px;
112
+ }
113
+
114
+ // ---- Hero ----
115
+ .adui-hero {
116
+ padding: 0 0 48px;
117
+ margin-bottom: 48px;
118
+ border-bottom: 1px solid $border;
119
+ }
120
+
121
+ .adui-hero-title {
122
+ font-size: 48px;
123
+ font-weight: 800;
124
+ background: linear-gradient(135deg, $primary 0%, #3b82f6 50%, #06b6d4 100%);
125
+ -webkit-background-clip: text;
126
+ -webkit-text-fill-color: transparent;
127
+ background-clip: text;
128
+ margin: 0 0 12px;
129
+ letter-spacing: -1px;
130
+ }
131
+
132
+ .adui-hero-desc {
133
+ font-size: 16px;
134
+ color: $text-secondary;
135
+ margin: 0 0 20px;
136
+ line-height: 1.6;
137
+ }
138
+
139
+ .adui-hero-tags {
140
+ display: flex;
141
+ gap: 8px;
142
+ }
143
+
144
+ .adui-tag {
145
+ display: inline-block;
146
+ padding: 3px 12px;
147
+ border-radius: 20px;
148
+ font-size: 12px;
149
+ font-weight: 500;
150
+ background: $primary-light;
151
+ color: #a78bfa;
152
+ border: 1px solid rgba(139, 92, 246, 0.2);
153
+ }
154
+
155
+ // ---- 组件区块 ----
156
+ .adui-comp-section {
157
+ margin-bottom: 64px;
158
+ scroll-margin-top: 16px;
159
+ padding: 0 0 24px;
160
+ }
161
+
162
+ .adui-comp-title {
163
+ font-size: 28px;
164
+ font-weight: 700;
165
+ color: #fff;
166
+ margin: 0 0 8px;
167
+ padding-bottom: 12px;
168
+ border-bottom: 1px solid $border;
169
+ }
170
+
171
+ .adui-comp-desc {
172
+ font-size: 14px;
173
+ color: $text-secondary;
174
+ margin: 0 0 32px;
175
+ line-height: 1.6;
176
+ }
177
+
178
+ // ---- 锚点标题 ----
179
+ .adui-anchor-heading {
180
+ font-size: 18px;
181
+ font-weight: 600;
182
+ color: #ccc;
183
+ margin: 36px 0 16px;
184
+ scroll-margin-top: 16px;
185
+
186
+ &:first-of-type {
187
+ margin-top: 0;
188
+ }
189
+ }
190
+
191
+ // ---- 何时使用 ----
192
+ .adui-when-use {
193
+ margin-bottom: 24px;
194
+
195
+ ul {
196
+ margin: 0;
197
+ padding: 0 0 0 20px;
198
+ list-style: none;
199
+ }
200
+
201
+ li {
202
+ position: relative;
203
+ padding: 6px 0 6px 16px;
204
+ font-size: 14px;
205
+ line-height: 1.6;
206
+ color: $text-secondary;
207
+
208
+ &::before {
209
+ content: '';
210
+ position: absolute;
211
+ left: 0;
212
+ top: 14px;
213
+ width: 6px;
214
+ height: 6px;
215
+ border-radius: 50%;
216
+ background: $primary;
217
+ }
218
+ }
219
+ }
220
+
221
+ // ---- 如何使用 ----
222
+ .adui-how-use {
223
+ margin-bottom: 24px;
224
+ }
225
+
226
+ // ---- Demo Card ----
227
+ .adui-demo-card {
228
+ border: 1px solid $border;
229
+ border-radius: 10px;
230
+ overflow: hidden;
231
+ margin-bottom: 20px;
232
+ background: $bg-card;
233
+ transition: border-color 0.2s;
234
+
235
+ &:hover {
236
+ border-color: rgba(139, 92, 246, 0.2);
237
+ }
238
+ }
239
+
240
+ .adui-demo-preview {
241
+ padding: 24px;
242
+ }
243
+
244
+ .adui-demo-title {
245
+ font-size: 14px;
246
+ font-weight: 600;
247
+ color: #ccc;
248
+ margin: 0 0 4px;
249
+ }
250
+
251
+ .adui-demo-desc {
252
+ font-size: 13px;
253
+ color: $text-secondary;
254
+ margin: 0 0 16px;
255
+ }
256
+
257
+ .adui-demo-stage {
258
+ min-height: 40px;
259
+ }
260
+
261
+ .adui-demo-row {
262
+ display: flex;
263
+ align-items: center;
264
+ gap: 16px;
265
+ flex-wrap: wrap;
266
+ }
267
+
268
+ .adui-demo-row + .adui-demo-row {
269
+ margin-top: 12px;
270
+ }
271
+
272
+ .adui-demo-badge {
273
+ font-size: 13px;
274
+ color: $text-secondary;
275
+ font-family: 'SF Mono', 'Fira Code', monospace;
276
+ background: $primary-light;
277
+ padding: 3px 10px;
278
+ border-radius: 4px;
279
+ }
280
+
281
+ .adui-btn-group {
282
+ display: flex;
283
+ flex-wrap: wrap;
284
+ gap: 8px;
285
+ }
286
+
287
+ // ---- Code 面板 ----
288
+ .adui-code-panel {
289
+ position: relative;
290
+ background: rgba(0, 0, 0, 0.35);
291
+ border-top: 1px solid $border;
292
+
293
+ pre {
294
+ margin: 0;
295
+ padding: 16px 20px;
296
+ overflow-x: auto;
297
+ }
298
+
299
+ code {
300
+ font-family: 'SF Mono', 'Fira Code', 'Cascadia Code', monospace;
301
+ font-size: 13px;
302
+ line-height: 1.7;
303
+ color: #a0a0a0;
304
+ white-space: pre;
305
+ }
306
+ }
307
+
308
+ .adui-copy-btn {
309
+ position: absolute;
310
+ top: 8px;
311
+ right: 8px;
312
+ background: rgba(255, 255, 255, 0.06);
313
+ border: 1px solid $border;
314
+ border-radius: 6px;
315
+ color: $text-secondary;
316
+ cursor: pointer;
317
+ padding: 4px 8px;
318
+ font-size: 14px;
319
+ opacity: 0;
320
+ transition: opacity 0.2s;
321
+ line-height: 1;
322
+
323
+ .adui-code-panel:hover & {
324
+ opacity: 1;
325
+ }
326
+
327
+ &:hover {
328
+ background: rgba(255, 255, 255, 0.1);
329
+ color: #fff;
330
+ }
331
+ }
332
+
333
+ /* ===================== 右侧锚点 ===================== */
334
+
335
+ .adui-anchor {
336
+ width: $anchor-width;
337
+ flex-shrink: 0;
338
+ padding: 0 0 0 24px;
339
+ position: sticky;
340
+ top: 0;
341
+ align-self: flex-start;
342
+ height: calc(100vh - 70px);
343
+ max-height: calc(100vh - 70px);
344
+ overflow-y: auto;
345
+
346
+ &::-webkit-scrollbar { width: 4px; }
347
+ &::-webkit-scrollbar-thumb { background: rgba(255,255,255,0.08); border-radius: 2px; }
348
+ }
349
+
350
+ .adui-anchor-inner {
351
+ padding: 40px 0 40px;
352
+ }
353
+
354
+ .adui-anchor-title {
355
+ font-size: 12px;
356
+ font-weight: 600;
357
+ color: $text-secondary;
358
+ text-transform: uppercase;
359
+ letter-spacing: 0.5px;
360
+ margin-bottom: 12px;
361
+ padding-left: 8px;
362
+ }
363
+
364
+ .adui-anchor-item {
365
+ padding: 4px 8px;
366
+ font-size: 13px;
367
+ color: $text-secondary;
368
+ cursor: pointer;
369
+ border-left: 2px solid transparent;
370
+ transition: all 0.15s ease;
371
+ line-height: 1.6;
372
+ margin-bottom: 2px;
373
+
374
+ &:hover {
375
+ color: #aaa;
376
+ }
377
+
378
+ &.active {
379
+ color: $primary;
380
+ border-left-color: $primary;
381
+ font-weight: 500;
382
+ }
383
+ }
384
+
385
+ /* ===================== 通用按钮 ===================== */
386
+
387
+ .adui-btn {
388
+ display: inline-flex;
389
+ align-items: center;
390
+ justify-content: center;
391
+ height: 34px;
392
+ padding: 0 18px;
393
+ border-radius: 8px;
394
+ font-size: 14px;
395
+ font-weight: 500;
396
+ cursor: pointer;
397
+ border: 1px solid rgba(139, 92, 246, 0.3);
398
+ background: rgba(139, 92, 246, 0.1);
399
+ color: #a78bfa;
400
+ transition: all 0.2s ease;
401
+ outline: none;
402
+ white-space: nowrap;
403
+
404
+ &:hover {
405
+ background: rgba(139, 92, 246, 0.2);
406
+ border-color: rgba(139, 92, 246, 0.5);
407
+ }
408
+
409
+ &:active { transform: scale(0.97); }
410
+ }
411
+
412
+ .adui-btn-green {
413
+ border-color: rgba(16, 185, 129, 0.3);
414
+ background: rgba(16, 185, 129, 0.1);
415
+ color: #34d399;
416
+
417
+ &:hover {
418
+ background: rgba(16, 185, 129, 0.2);
419
+ border-color: rgba(16, 185, 129, 0.5);
420
+ }
421
+ }
422
+
423
+ .adui-btn-red {
424
+ border-color: rgba(239, 68, 68, 0.3);
425
+ background: rgba(239, 68, 68, 0.1);
426
+ color: #f87171;
427
+
428
+ &:hover {
429
+ background: rgba(239, 68, 68, 0.2);
430
+ border-color: rgba(239, 68, 68, 0.5);
431
+ }
432
+ }
433
+
434
+ .adui-btn-orange {
435
+ border-color: rgba(245, 158, 11, 0.3);
436
+ background: rgba(245, 158, 11, 0.1);
437
+ color: #fbbf24;
438
+
439
+ &:hover {
440
+ background: rgba(245, 158, 11, 0.2);
441
+ border-color: rgba(245, 158, 11, 0.5);
442
+ }
443
+ }
444
+
445
+ /* ===================== 响应式 ===================== */
446
+
447
+ @media (max-width: 1200px) {
448
+ .adui-anchor { display: none; }
449
+ }
450
+
451
+ @media (max-width: 900px) {
452
+ .adui-sider { display: none; }
453
+
454
+ .adui-content {
455
+ padding: 24px 20px 80px;
456
+ max-width: 100%;
457
+ }
458
+
459
+ .adui-hero-title { font-size: 36px; }
460
+ .adui-comp-title { font-size: 22px; }
461
+ }
package/dist/index.d.ts CHANGED
@@ -21,4 +21,5 @@ export type { ChatInputProps } from './ChatInput';
21
21
  export type { MessageInstance as MessageType, SelectOption as SelectOptionType, ModalProps as ModalPropsType } from './types';
22
22
  import * as adUtils from './utils';
23
23
  export { adUtils };
24
+ export { default as AdUI } from './AdUI';
24
25
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,aAAa,CAAC;AACnD,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAElD,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACxD,YAAY,EAAE,eAAe,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAEzF,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,UAAU,CAAC;AAC7C,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAE1D,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,SAAS,CAAC;AAC3C,YAAY,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAE1C,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,SAAS,CAAC;AAC3C,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAE1F,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,cAAc,CAAC;AACrD,YAAY,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAEpD,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,SAAS,CAAC;AAC3C,YAAY,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC1C,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACvD,YAAY,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEtD,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAC/D,YAAY,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAE9D,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,aAAa,CAAC;AACnD,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAElD,YAAY,EAAE,eAAe,IAAI,WAAW,EAAE,YAAY,IAAI,gBAAgB,EAAE,UAAU,IAAI,cAAc,EAAE,MAAM,SAAS,CAAC;AAG9H,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AACnC,OAAO,EAAE,OAAO,EAAE,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,aAAa,CAAC;AACnD,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAElD,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACxD,YAAY,EAAE,eAAe,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAEzF,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,UAAU,CAAC;AAC7C,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAE1D,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,SAAS,CAAC;AAC3C,YAAY,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAE1C,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,SAAS,CAAC;AAC3C,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAE1F,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,cAAc,CAAC;AACrD,YAAY,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAEpD,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,SAAS,CAAC;AAC3C,YAAY,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC1C,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACvD,YAAY,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEtD,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAC/D,YAAY,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAE9D,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,aAAa,CAAC;AACnD,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAElD,YAAY,EAAE,eAAe,IAAI,WAAW,EAAE,YAAY,IAAI,gBAAgB,EAAE,UAAU,IAAI,cAAc,EAAE,MAAM,SAAS,CAAC;AAG9H,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AACnC,OAAO,EAAE,OAAO,EAAE,CAAC;AAGnB,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,QAAQ,CAAC"}
package/dist/index.js CHANGED
@@ -11,4 +11,6 @@ export { default as ChatInput } from './ChatInput';
11
11
  // 工具函数统一导出
12
12
  import * as adUtils from './utils';
13
13
  export { adUtils };
14
+ // 组件库使用文档
15
+ export { default as AdUI } from './AdUI';
14
16
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,aAAa,CAAC;AAGnD,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGxD,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,UAAU,CAAC;AAG7C,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,SAAS,CAAC;AAG3C,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,SAAS,CAAC;AAG3C,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,cAAc,CAAC;AAGrD,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,SAAS,CAAC;AAE3C,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAGvD,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAG/D,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,aAAa,CAAC;AAKnD,WAAW;AACX,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AACnC,OAAO,EAAE,OAAO,EAAE,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,aAAa,CAAC;AAGnD,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGxD,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,UAAU,CAAC;AAG7C,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,SAAS,CAAC;AAG3C,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,SAAS,CAAC;AAG3C,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,cAAc,CAAC;AAGrD,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,SAAS,CAAC;AAE3C,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAGvD,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAG/D,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,aAAa,CAAC;AAKnD,WAAW;AACX,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AACnC,OAAO,EAAE,OAAO,EAAE,CAAC;AAEnB,UAAU;AACV,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,QAAQ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "starry-sky-ui",
3
- "version": "0.4.0",
3
+ "version": "0.4.1",
4
4
  "description": "starry-sky-ui — 轻量级 React UI 组件库",
5
5
  "private": false,
6
6
  "license": "MIT",