@demokit-ui/demokit 0.1.0 → 0.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -0
- package/dist/app/demo1-shell.js +195 -188
- package/dist/app/tweak-panel.d.ts +1 -2
- package/dist/app/tweak-panel.js +20 -4
- package/dist/index.js +811 -479
- package/dist/kit/components/chart/chart/chart.examples.d.ts +24 -0
- package/dist/kit/components/chart/chart/chart.examples.js +422 -0
- package/dist/kit/components/composite/action-bar/action-bar.examples.d.ts +2 -0
- package/dist/kit/components/composite/action-bar/action-bar.examples.js +35 -0
- package/dist/kit/components/composite/action-card/action-card.examples.d.ts +2 -0
- package/dist/kit/components/composite/action-card/action-card.examples.js +34 -0
- package/dist/kit/components/composite/activity-feed/activity-feed.examples.d.ts +2 -0
- package/dist/kit/components/composite/activity-feed/activity-feed.examples.js +44 -0
- package/dist/kit/components/composite/alert-card/alert-card.examples.d.ts +2 -0
- package/dist/kit/components/composite/alert-card/alert-card.examples.js +18 -0
- package/dist/kit/components/composite/approval-flow/approval-flow.examples.d.ts +2 -0
- package/dist/kit/components/composite/approval-flow/approval-flow.examples.js +70 -0
- package/dist/kit/components/composite/auth-shell/auth-shell.examples.d.ts +2 -0
- package/dist/kit/components/composite/auth-shell/auth-shell.examples.js +23 -0
- package/dist/kit/components/composite/board-toolbar/board-toolbar.examples.d.ts +2 -0
- package/dist/kit/components/composite/board-toolbar/board-toolbar.examples.js +32 -0
- package/dist/kit/components/composite/chart-card/chart-card.examples.d.ts +3 -0
- package/dist/kit/components/composite/chart-card/chart-card.examples.js +58 -0
- package/dist/kit/components/composite/chart-toolbar/chart-toolbar.examples.d.ts +2 -0
- package/dist/kit/components/composite/chart-toolbar/chart-toolbar.examples.js +39 -0
- package/dist/kit/components/composite/data-section/data-section.examples.d.ts +3 -0
- package/dist/kit/components/composite/data-section/data-section.examples.js +48 -0
- package/dist/kit/components/composite/description-grid/description-grid.examples.d.ts +2 -0
- package/dist/kit/components/composite/description-grid/description-grid.examples.js +30 -0
- package/dist/kit/components/composite/detail-header/detail-header.examples.d.ts +2 -0
- package/dist/kit/components/composite/detail-header/detail-header.examples.js +37 -0
- package/dist/kit/components/composite/filter-panel/filter-panel.examples.d.ts +2 -0
- package/dist/kit/components/composite/filter-panel/filter-panel.examples.js +63 -0
- package/dist/kit/components/composite/filter-toolbar/filter-toolbar.examples.d.ts +2 -0
- package/dist/kit/components/composite/filter-toolbar/filter-toolbar.examples.js +39 -0
- package/dist/kit/components/composite/forgot-password-form/forgot-password-form.examples.d.ts +2 -0
- package/dist/kit/components/composite/forgot-password-form/forgot-password-form.examples.js +19 -0
- package/dist/kit/components/composite/form-section/form-section.examples.d.ts +2 -0
- package/dist/kit/components/composite/form-section/form-section.examples.js +40 -0
- package/dist/kit/components/composite/kanban-board/kanban-board.examples.d.ts +2 -0
- package/dist/kit/components/composite/kanban-board/kanban-board.examples.js +72 -0
- package/dist/kit/components/composite/login-card/login-card.examples.d.ts +3 -0
- package/dist/kit/components/composite/login-card/login-card.examples.js +30 -0
- package/dist/kit/components/composite/message-list-card/message-list-card.examples.d.ts +2 -0
- package/dist/kit/components/composite/message-list-card/message-list-card.examples.js +56 -0
- package/dist/kit/components/composite/metric-card/metric-card.examples.d.ts +2 -0
- package/dist/kit/components/composite/metric-card/metric-card.examples.js +50 -0
- package/dist/kit/components/composite/milestone-card/milestone-card.examples.d.ts +2 -0
- package/dist/kit/components/composite/milestone-card/milestone-card.examples.js +54 -0
- package/dist/kit/components/composite/oauth-login-buttons/oauth-login-buttons.examples.d.ts +2 -0
- package/dist/kit/components/composite/oauth-login-buttons/oauth-login-buttons.examples.js +24 -0
- package/dist/kit/components/composite/page-header/page-header.examples.d.ts +3 -0
- package/dist/kit/components/composite/page-header/page-header.examples.js +56 -0
- package/dist/kit/components/composite/profile-card/profile-card.examples.d.ts +2 -0
- package/dist/kit/components/composite/profile-card/profile-card.examples.js +45 -0
- package/dist/kit/components/composite/progress-card/progress-card.examples.d.ts +2 -0
- package/dist/kit/components/composite/progress-card/progress-card.examples.js +42 -0
- package/dist/kit/components/composite/project-card/project-card.examples.d.ts +2 -0
- package/dist/kit/components/composite/project-card/project-card.examples.js +48 -0
- package/dist/kit/components/composite/shortcut-card/shortcut-card.examples.d.ts +2 -0
- package/dist/kit/components/composite/shortcut-card/shortcut-card.examples.js +18 -0
- package/dist/kit/components/composite/sprint-summary/sprint-summary.examples.d.ts +2 -0
- package/dist/kit/components/composite/sprint-summary/sprint-summary.examples.js +27 -0
- package/dist/kit/components/composite/state-panel/state-panel.examples.d.ts +2 -0
- package/dist/kit/components/composite/state-panel/state-panel.examples.js +48 -0
- package/dist/kit/components/composite/summary-card/summary-card.examples.d.ts +2 -0
- package/dist/kit/components/composite/summary-card/summary-card.examples.js +32 -0
- package/dist/kit/components/composite/task-card/task-card.examples.d.ts +2 -0
- package/dist/kit/components/composite/task-card/task-card.examples.js +39 -0
- package/dist/kit/components/composite/timeline/timeline.examples.d.ts +2 -0
- package/dist/kit/components/composite/timeline/timeline.examples.js +75 -0
- package/dist/kit/components/composite/todo-card/todo-card.examples.d.ts +2 -0
- package/dist/kit/components/composite/todo-card/todo-card.examples.js +42 -0
- package/dist/kit/components/data-display/avatar/avatar.examples.d.ts +7 -0
- package/dist/kit/components/data-display/avatar/avatar.examples.js +48 -0
- package/dist/kit/components/data-display/avatar-group/avatar-group.examples.d.ts +3 -0
- package/dist/kit/components/data-display/avatar-group/avatar-group.examples.js +35 -0
- package/dist/kit/components/data-display/badge/badge.examples.d.ts +9 -0
- package/dist/kit/components/data-display/badge/badge.examples.js +57 -0
- package/dist/kit/components/data-display/card/card.examples.d.ts +16 -0
- package/dist/kit/components/data-display/card/card.examples.js +72 -0
- package/dist/kit/components/data-display/data-grid/data-grid.examples.d.ts +2 -0
- package/dist/kit/components/data-display/data-grid/data-grid.examples.js +92 -0
- package/dist/kit/components/data-display/kbd/kbd.examples.d.ts +3 -0
- package/dist/kit/components/data-display/kbd/kbd.examples.js +43 -0
- package/dist/kit/components/data-display/money-amount/money-amount.examples.d.ts +1 -0
- package/dist/kit/components/data-display/money-amount/money-amount.examples.js +26 -0
- package/dist/kit/components/data-display/progress/progress.examples.d.ts +3 -0
- package/dist/kit/components/data-display/progress/progress.examples.js +45 -0
- package/dist/kit/components/data-display/skeleton/skeleton.examples.d.ts +3 -0
- package/dist/kit/components/data-display/skeleton/skeleton.examples.js +37 -0
- package/dist/kit/components/data-display/sliding-number/sliding-number.examples.d.ts +3 -0
- package/dist/kit/components/data-display/sliding-number/sliding-number.examples.js +42 -0
- package/dist/kit/components/data-display/stepper/stepper.examples.d.ts +2 -0
- package/dist/kit/components/data-display/stepper/stepper.examples.js +28 -0
- package/dist/kit/components/data-display/table/table.examples.d.ts +4 -0
- package/dist/kit/components/data-display/table/table.examples.js +78 -0
- package/dist/kit/components/decorative/aurora-background/aurora-background.examples.d.ts +2 -0
- package/dist/kit/components/decorative/aurora-background/aurora-background.examples.js +22 -0
- package/dist/kit/components/decorative/grid-background/grid-background.examples.d.ts +4 -0
- package/dist/kit/components/decorative/grid-background/grid-background.examples.js +42 -0
- package/dist/kit/components/decorative/shimmering-text/shimmering-text.examples.d.ts +4 -0
- package/dist/kit/components/decorative/shimmering-text/shimmering-text.examples.js +54 -0
- package/dist/kit/components/decorative/text-reveal/text-reveal.examples.d.ts +2 -0
- package/dist/kit/components/decorative/text-reveal/text-reveal.examples.js +46 -0
- package/dist/kit/components/feedback/alert/alert.examples.d.ts +2 -0
- package/dist/kit/components/feedback/alert/alert.examples.js +37 -0
- package/dist/kit/components/feedback/alert-dialog/alert-dialog.examples.d.ts +2 -0
- package/dist/kit/components/feedback/alert-dialog/alert-dialog.examples.js +28 -0
- package/dist/kit/components/feedback/context-menu/context-menu.examples.d.ts +2 -0
- package/dist/kit/components/feedback/context-menu/context-menu.examples.js +33 -0
- package/dist/kit/components/feedback/dialog/dialog.examples.d.ts +2 -0
- package/dist/kit/components/feedback/dialog/dialog.examples.js +51 -0
- package/dist/kit/components/feedback/drawer/drawer.examples.d.ts +2 -0
- package/dist/kit/components/feedback/drawer/drawer.examples.js +29 -0
- package/dist/kit/components/feedback/dropdown-menu/dropdown-menu.examples.d.ts +3 -0
- package/dist/kit/components/feedback/dropdown-menu/dropdown-menu.examples.js +54 -0
- package/dist/kit/components/feedback/hover-card/hover-card.examples.d.ts +2 -0
- package/dist/kit/components/feedback/hover-card/hover-card.examples.js +27 -0
- package/dist/kit/components/feedback/popover/popover.examples.d.ts +2 -0
- package/dist/kit/components/feedback/popover/popover.examples.js +42 -0
- package/dist/kit/components/feedback/sheet/sheet.examples.d.ts +2 -0
- package/dist/kit/components/feedback/sheet/sheet.examples.js +39 -0
- package/dist/kit/components/feedback/sonner/sonner.examples.d.ts +3 -0
- package/dist/kit/components/feedback/sonner/sonner.examples.js +49 -0
- package/dist/kit/components/feedback/title-help/title-help.examples.d.ts +1 -0
- package/dist/kit/components/feedback/title-help/title-help.examples.js +25 -0
- package/dist/kit/components/feedback/tooltip/tooltip.examples.d.ts +3 -0
- package/dist/kit/components/feedback/tooltip/tooltip.examples.js +44 -0
- package/dist/kit/components/form/button/button.examples.d.ts +13 -0
- package/dist/kit/components/form/button/button.examples.js +84 -0
- package/dist/kit/components/form/calendar/calendar.examples.d.ts +2 -0
- package/dist/kit/components/form/calendar/calendar.examples.js +23 -0
- package/dist/kit/components/form/checkbox/checkbox.examples.d.ts +4 -0
- package/dist/kit/components/form/checkbox/checkbox.examples.js +72 -0
- package/dist/kit/components/form/command/command.examples.d.ts +3 -0
- package/dist/kit/components/form/command/command.examples.js +52 -0
- package/dist/kit/components/form/datefield/datefield.examples.d.ts +2 -0
- package/dist/kit/components/form/datefield/datefield.examples.js +19 -0
- package/dist/kit/components/form/file-upload/file-upload.examples.d.ts +1 -0
- package/dist/kit/components/form/file-upload/file-upload.examples.js +18 -0
- package/dist/kit/components/form/form/form.examples.d.ts +2 -0
- package/dist/kit/components/form/form/form.examples.js +77 -0
- package/dist/kit/components/form/input/input.examples.d.ts +5 -0
- package/dist/kit/components/form/input/input.examples.js +64 -0
- package/dist/kit/components/form/label/label.examples.d.ts +4 -0
- package/dist/kit/components/form/label/label.examples.js +49 -0
- package/dist/kit/components/form/radio-group/radio-group.examples.d.ts +3 -0
- package/dist/kit/components/form/radio-group/radio-group.examples.js +40 -0
- package/dist/kit/components/form/select/select.examples.d.ts +3 -0
- package/dist/kit/components/form/select/select.examples.js +58 -0
- package/dist/kit/components/form/slider/slider.examples.d.ts +3 -0
- package/dist/kit/components/form/slider/slider.examples.js +46 -0
- package/dist/kit/components/form/switch/switch.examples.d.ts +3 -0
- package/dist/kit/components/form/switch/switch.examples.js +37 -0
- package/dist/kit/components/form/textarea/textarea.examples.d.ts +3 -0
- package/dist/kit/components/form/textarea/textarea.examples.js +49 -0
- package/dist/kit/components/form/toggle/toggle.examples.d.ts +3 -0
- package/dist/kit/components/form/toggle/toggle.examples.js +33 -0
- package/dist/kit/components/form/toggle-group/toggle-group.examples.d.ts +4 -0
- package/dist/kit/components/form/toggle-group/toggle-group.examples.js +46 -0
- package/dist/kit/components/index.d.ts +91 -0
- package/dist/kit/components/layout/accordion/accordion.examples.d.ts +2 -0
- package/dist/kit/components/layout/accordion/accordion.examples.js +34 -0
- package/dist/kit/components/layout/aspect-ratio/aspect-ratio.examples.d.ts +3 -0
- package/dist/kit/components/layout/aspect-ratio/aspect-ratio.examples.js +29 -0
- package/dist/kit/components/layout/collapsible/collapsible.examples.d.ts +2 -0
- package/dist/kit/components/layout/collapsible/collapsible.examples.js +28 -0
- package/dist/kit/components/layout/resizable/resizable.examples.d.ts +2 -0
- package/dist/kit/components/layout/resizable/resizable.examples.js +26 -0
- package/dist/kit/components/layout/scroll-area/scroll-area.examples.d.ts +2 -0
- package/dist/kit/components/layout/scroll-area/scroll-area.examples.js +16 -0
- package/dist/kit/components/layout/separator/separator.examples.d.ts +3 -0
- package/dist/kit/components/layout/separator/separator.examples.js +35 -0
- package/dist/kit/components/navigation/accordion-menu/accordion-menu.examples.d.ts +2 -0
- package/dist/kit/components/navigation/accordion-menu/accordion-menu.examples.js +36 -0
- package/dist/kit/components/navigation/breadcrumb/breadcrumb.examples.d.ts +3 -0
- package/dist/kit/components/navigation/breadcrumb/breadcrumb.examples.js +39 -0
- package/dist/kit/components/navigation/menubar/menubar.examples.d.ts +2 -0
- package/dist/kit/components/navigation/menubar/menubar.examples.js +54 -0
- package/dist/kit/components/navigation/navigation-menu/navigation-menu.examples.d.ts +2 -0
- package/dist/kit/components/navigation/navigation-menu/navigation-menu.examples.js +31 -0
- package/dist/kit/components/navigation/pagination/pagination.examples.d.ts +2 -0
- package/dist/kit/components/navigation/pagination/pagination.examples.js +42 -0
- package/dist/kit/components/navigation/scrollspy/scrollspy.examples.d.ts +2 -0
- package/dist/kit/components/navigation/scrollspy/scrollspy.examples.js +68 -0
- package/dist/kit/components/navigation/tabs/tabs.examples.d.ts +5 -0
- package/dist/kit/components/navigation/tabs/tabs.examples.js +43 -0
- package/dist/styles.css +29 -12
- package/package.json +7 -2
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import { jsx as a } from "react/jsx-runtime";
|
|
2
|
+
import { ApprovalFlow as t } from "./approval-flow.js";
|
|
3
|
+
const r = [
|
|
4
|
+
{
|
|
5
|
+
id: 1,
|
|
6
|
+
actor: "范米花儿",
|
|
7
|
+
time: "2024/09/15 09:00",
|
|
8
|
+
status: "started",
|
|
9
|
+
avatarSrc: "/avatar.png",
|
|
10
|
+
avatarFallback: "范"
|
|
11
|
+
},
|
|
12
|
+
{
|
|
13
|
+
id: 2,
|
|
14
|
+
actor: "范米花儿",
|
|
15
|
+
time: "2024/09/15 09:00",
|
|
16
|
+
status: "approved",
|
|
17
|
+
avatarSrc: "/avatar.png",
|
|
18
|
+
avatarFallback: "范"
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
id: 3,
|
|
22
|
+
actor: "范米花儿",
|
|
23
|
+
time: "2024/09/15 09:00",
|
|
24
|
+
status: "approved",
|
|
25
|
+
avatarFallback: "F",
|
|
26
|
+
comment: "这里是评论内容,这里是评论内容这里是评论内容这里是评论内容"
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
id: 4,
|
|
30
|
+
actor: "范米花儿",
|
|
31
|
+
time: "2024/09/15 09:00",
|
|
32
|
+
status: "processing",
|
|
33
|
+
avatarSrc: "/avatar.png",
|
|
34
|
+
avatarFallback: "范",
|
|
35
|
+
rule: "1人通过即可",
|
|
36
|
+
participants: [
|
|
37
|
+
{ id: "a", name: "李四", avatarSrc: "/avatar.png", avatarFallback: "李" },
|
|
38
|
+
{ id: "b", name: "李四", avatarSrc: "/avatar.png", avatarFallback: "李" },
|
|
39
|
+
{ id: "c", name: "李四", avatarSrc: "/avatar.png", avatarFallback: "李" }
|
|
40
|
+
]
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
id: 5,
|
|
44
|
+
actor: "范米花儿",
|
|
45
|
+
time: "2024/09/15 09:00",
|
|
46
|
+
status: "pending",
|
|
47
|
+
avatarSrc: "/avatar.png",
|
|
48
|
+
avatarFallback: "范"
|
|
49
|
+
}
|
|
50
|
+
];
|
|
51
|
+
function l() {
|
|
52
|
+
return /* @__PURE__ */ a(
|
|
53
|
+
t,
|
|
54
|
+
{
|
|
55
|
+
tabs: [
|
|
56
|
+
{ value: "flow", label: "审批流程" },
|
|
57
|
+
{ value: "comments", label: "评论" }
|
|
58
|
+
],
|
|
59
|
+
defaultActiveTab: "flow",
|
|
60
|
+
items: r
|
|
61
|
+
}
|
|
62
|
+
);
|
|
63
|
+
}
|
|
64
|
+
function e() {
|
|
65
|
+
return /* @__PURE__ */ a("div", { className: "w-full", children: /* @__PURE__ */ a(l, {}) });
|
|
66
|
+
}
|
|
67
|
+
export {
|
|
68
|
+
l as ApprovalFlowBasic,
|
|
69
|
+
e as ApprovalFlowShowcase
|
|
70
|
+
};
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { jsx as r } from "react/jsx-runtime";
|
|
2
|
+
import { AuthShell as o } from "./auth-shell.js";
|
|
3
|
+
import { LoginCard as t, PasswordLoginForm as i } from "../login-card/login-card.js";
|
|
4
|
+
function d() {
|
|
5
|
+
return /* @__PURE__ */ r(
|
|
6
|
+
o,
|
|
7
|
+
{
|
|
8
|
+
brand: "DemoKit Cloud",
|
|
9
|
+
title: "统一身份入口",
|
|
10
|
+
description: "适合管理后台、SaaS 控制台和企业内部系统的登录页外壳。",
|
|
11
|
+
aside: /* @__PURE__ */ r("div", { className: "rounded-xl border border-border bg-card/80 p-4 text-sm text-muted-foreground", children: "今日已有 328 位成员通过统一身份入口访问工作台。" }),
|
|
12
|
+
footer: "登录即表示你同意安全策略和隐私条款。",
|
|
13
|
+
children: /* @__PURE__ */ r(t, { title: "欢迎回来", description: "使用账号密码登录", children: /* @__PURE__ */ r(i, { onSubmit: (e) => e.preventDefault() }) })
|
|
14
|
+
}
|
|
15
|
+
);
|
|
16
|
+
}
|
|
17
|
+
function a() {
|
|
18
|
+
return /* @__PURE__ */ r(d, {});
|
|
19
|
+
}
|
|
20
|
+
export {
|
|
21
|
+
d as AuthShellBasic,
|
|
22
|
+
a as AuthShellShowcase
|
|
23
|
+
};
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { jsx as r, jsxs as e, Fragment as i } from "react/jsx-runtime";
|
|
2
|
+
import { Plus as a, Users as t } from "lucide-react";
|
|
3
|
+
import { BoardToolbar as n } from "./board-toolbar.js";
|
|
4
|
+
import { Button as o } from "../../form/button/button.js";
|
|
5
|
+
function s() {
|
|
6
|
+
return /* @__PURE__ */ r(
|
|
7
|
+
n,
|
|
8
|
+
{
|
|
9
|
+
searchPlaceholder: "搜索任务标题、标签、负责人",
|
|
10
|
+
defaultSearchValue: "",
|
|
11
|
+
filters: /* @__PURE__ */ e(i, { children: [
|
|
12
|
+
/* @__PURE__ */ r(o, { variant: "outline", size: "sm", children: "状态" }),
|
|
13
|
+
/* @__PURE__ */ r(o, { variant: "outline", size: "sm", children: "优先级" })
|
|
14
|
+
] }),
|
|
15
|
+
groupBy: /* @__PURE__ */ e(o, { variant: "outline", size: "sm", children: [
|
|
16
|
+
/* @__PURE__ */ r(t, {}),
|
|
17
|
+
"按负责人分组"
|
|
18
|
+
] }),
|
|
19
|
+
actions: /* @__PURE__ */ e(o, { size: "sm", children: [
|
|
20
|
+
/* @__PURE__ */ r(a, {}),
|
|
21
|
+
"新建任务"
|
|
22
|
+
] })
|
|
23
|
+
}
|
|
24
|
+
);
|
|
25
|
+
}
|
|
26
|
+
function d() {
|
|
27
|
+
return /* @__PURE__ */ r(s, {});
|
|
28
|
+
}
|
|
29
|
+
export {
|
|
30
|
+
s as BoardToolbarBasic,
|
|
31
|
+
d as BoardToolbarShowcase
|
|
32
|
+
};
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { jsxs as t, jsx as e, Fragment as n } from "react/jsx-runtime";
|
|
2
|
+
import { RefreshCw as o, Download as d } from "lucide-react";
|
|
3
|
+
import { useChartPalette as c } from "../../../tokens/chart-palette.js";
|
|
4
|
+
import { ChartCard as i } from "./chart-card.js";
|
|
5
|
+
import { Badge as m } from "../../data-display/badge/badge.js";
|
|
6
|
+
import { Button as l } from "../../form/button/button.js";
|
|
7
|
+
const h = [52, 74, 46, 88, 63, 96, 71, 84];
|
|
8
|
+
function p() {
|
|
9
|
+
const r = c();
|
|
10
|
+
return /* @__PURE__ */ e(
|
|
11
|
+
i,
|
|
12
|
+
{
|
|
13
|
+
title: "收入趋势",
|
|
14
|
+
description: "图表卡片统一标题、工具栏、图例和空/加载状态。",
|
|
15
|
+
toolbar: /* @__PURE__ */ t(n, { children: [
|
|
16
|
+
/* @__PURE__ */ t(l, { variant: "outline", size: "sm", children: [
|
|
17
|
+
/* @__PURE__ */ e(o, {}),
|
|
18
|
+
"刷新"
|
|
19
|
+
] }),
|
|
20
|
+
/* @__PURE__ */ t(l, { variant: "outline", size: "sm", children: [
|
|
21
|
+
/* @__PURE__ */ e(d, {}),
|
|
22
|
+
"导出"
|
|
23
|
+
] })
|
|
24
|
+
] }),
|
|
25
|
+
legend: /* @__PURE__ */ t("div", { className: "flex flex-wrap gap-3 text-xs text-muted-foreground", children: [
|
|
26
|
+
/* @__PURE__ */ t("span", { className: "flex items-center gap-1.5", children: [
|
|
27
|
+
/* @__PURE__ */ e("i", { className: "size-2 rounded-full", style: { backgroundColor: r[0] } }),
|
|
28
|
+
"收入"
|
|
29
|
+
] }),
|
|
30
|
+
/* @__PURE__ */ e(m, { variant: "success", appearance: "light", size: "sm", children: "+12.4%" })
|
|
31
|
+
] }),
|
|
32
|
+
children: /* @__PURE__ */ e("div", { className: "flex h-[260px] items-end gap-3", children: h.map((s, a) => /* @__PURE__ */ t("div", { className: "flex flex-1 flex-col items-center gap-2", children: [
|
|
33
|
+
/* @__PURE__ */ e("div", { className: "w-full rounded-t-md", style: { height: `${s}%`, backgroundColor: r[a % r.length] } }),
|
|
34
|
+
/* @__PURE__ */ t("span", { className: "text-[10px] text-muted-foreground", children: [
|
|
35
|
+
a + 1,
|
|
36
|
+
"月"
|
|
37
|
+
] })
|
|
38
|
+
] }, a)) })
|
|
39
|
+
}
|
|
40
|
+
);
|
|
41
|
+
}
|
|
42
|
+
function u() {
|
|
43
|
+
return /* @__PURE__ */ t("div", { className: "grid gap-4 md:grid-cols-2", children: [
|
|
44
|
+
/* @__PURE__ */ e(i, { title: "加载中", loading: !0, minHeight: 180 }),
|
|
45
|
+
/* @__PURE__ */ e(i, { title: "无数据", empty: !0, minHeight: 180 })
|
|
46
|
+
] });
|
|
47
|
+
}
|
|
48
|
+
function w() {
|
|
49
|
+
return /* @__PURE__ */ t("div", { className: "space-y-4", children: [
|
|
50
|
+
/* @__PURE__ */ e(p, {}),
|
|
51
|
+
/* @__PURE__ */ e(u, {})
|
|
52
|
+
] });
|
|
53
|
+
}
|
|
54
|
+
export {
|
|
55
|
+
w as ChartCardShowcase,
|
|
56
|
+
u as ChartCardStates,
|
|
57
|
+
p as ChartCardTrend
|
|
58
|
+
};
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { jsx as e, jsxs as i } from "react/jsx-runtime";
|
|
2
|
+
import { useState as r } from "react";
|
|
3
|
+
import { Download as l } from "lucide-react";
|
|
4
|
+
import { ChartToolbar as s } from "./chart-toolbar.js";
|
|
5
|
+
import { Button as c } from "../../form/button/button.js";
|
|
6
|
+
function u() {
|
|
7
|
+
const [a, o] = r("30d"), [t, n] = r("revenue");
|
|
8
|
+
return /* @__PURE__ */ e(
|
|
9
|
+
s,
|
|
10
|
+
{
|
|
11
|
+
activeRange: a,
|
|
12
|
+
onRangeChange: o,
|
|
13
|
+
ranges: [
|
|
14
|
+
{ value: "7d", label: "7 天" },
|
|
15
|
+
{ value: "30d", label: "30 天" },
|
|
16
|
+
{ value: "90d", label: "90 天" }
|
|
17
|
+
],
|
|
18
|
+
activeMetric: t,
|
|
19
|
+
onMetricChange: n,
|
|
20
|
+
metrics: [
|
|
21
|
+
{ value: "revenue", label: "收入" },
|
|
22
|
+
{ value: "cost", label: "成本" }
|
|
23
|
+
],
|
|
24
|
+
onRefresh: () => {
|
|
25
|
+
},
|
|
26
|
+
actions: /* @__PURE__ */ i(c, { variant: "outline", size: "sm", children: [
|
|
27
|
+
/* @__PURE__ */ e(l, {}),
|
|
28
|
+
"导出"
|
|
29
|
+
] })
|
|
30
|
+
}
|
|
31
|
+
);
|
|
32
|
+
}
|
|
33
|
+
function d() {
|
|
34
|
+
return /* @__PURE__ */ e(u, {});
|
|
35
|
+
}
|
|
36
|
+
export {
|
|
37
|
+
u as ChartToolbarBasic,
|
|
38
|
+
d as ChartToolbarShowcase
|
|
39
|
+
};
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { jsxs as a, jsx as e } from "react/jsx-runtime";
|
|
2
|
+
import { RefreshCw as r } from "lucide-react";
|
|
3
|
+
import { DataSection as i } from "./data-section.js";
|
|
4
|
+
import { Badge as s } from "../../data-display/badge/badge.js";
|
|
5
|
+
import { Button as n } from "../../form/button/button.js";
|
|
6
|
+
import { FilterToolbar as o } from "../filter-toolbar/filter-toolbar.js";
|
|
7
|
+
const d = [
|
|
8
|
+
{ id: "PRJ-1024", name: "数据资产盘点", owner: "林青", status: "进行中" },
|
|
9
|
+
{ id: "PRJ-1025", name: "质量规则上线", owner: "周然", status: "待评审" },
|
|
10
|
+
{ id: "PRJ-1026", name: "指标口径复核", owner: "陈序", status: "已完成" }
|
|
11
|
+
];
|
|
12
|
+
function c() {
|
|
13
|
+
return /* @__PURE__ */ e(
|
|
14
|
+
i,
|
|
15
|
+
{
|
|
16
|
+
title: "项目列表",
|
|
17
|
+
description: "标准数据区块:标题、筛选、内容和状态视图。",
|
|
18
|
+
toolbar: /* @__PURE__ */ e(o, { searchPlaceholder: "搜索项目", defaultSearchValue: "" }),
|
|
19
|
+
actions: /* @__PURE__ */ a(n, { variant: "outline", size: "sm", children: [
|
|
20
|
+
/* @__PURE__ */ e(r, {}),
|
|
21
|
+
"刷新"
|
|
22
|
+
] }),
|
|
23
|
+
children: /* @__PURE__ */ e("div", { className: "divide-y divide-border", children: d.map((t) => /* @__PURE__ */ a("div", { className: "grid grid-cols-[110px_1fr_90px_80px] items-center gap-3 px-5 py-3 text-sm", children: [
|
|
24
|
+
/* @__PURE__ */ e("span", { className: "font-mono text-xs text-muted-foreground", children: t.id }),
|
|
25
|
+
/* @__PURE__ */ e("span", { className: "font-medium text-foreground", children: t.name }),
|
|
26
|
+
/* @__PURE__ */ e("span", { className: "text-muted-foreground", children: t.owner }),
|
|
27
|
+
/* @__PURE__ */ e(s, { variant: t.status === "已完成" ? "success" : "primary", appearance: "light", size: "sm", children: t.status })
|
|
28
|
+
] }, t.id)) })
|
|
29
|
+
}
|
|
30
|
+
);
|
|
31
|
+
}
|
|
32
|
+
function m() {
|
|
33
|
+
return /* @__PURE__ */ a("div", { className: "grid gap-4 md:grid-cols-2", children: [
|
|
34
|
+
/* @__PURE__ */ e(i, { title: "加载态", state: "loading" }),
|
|
35
|
+
/* @__PURE__ */ e(i, { title: "空状态", state: "empty" })
|
|
36
|
+
] });
|
|
37
|
+
}
|
|
38
|
+
function g() {
|
|
39
|
+
return /* @__PURE__ */ a("div", { className: "space-y-5", children: [
|
|
40
|
+
/* @__PURE__ */ e(c, {}),
|
|
41
|
+
/* @__PURE__ */ e(m, {})
|
|
42
|
+
] });
|
|
43
|
+
}
|
|
44
|
+
export {
|
|
45
|
+
g as DataSectionShowcase,
|
|
46
|
+
m as DataSectionStates,
|
|
47
|
+
c as DataSectionTable
|
|
48
|
+
};
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { jsx as e } from "react/jsx-runtime";
|
|
2
|
+
import { DescriptionGrid as l } from "./description-grid.js";
|
|
3
|
+
import { Badge as a } from "../../data-display/badge/badge.js";
|
|
4
|
+
function r() {
|
|
5
|
+
return /* @__PURE__ */ e(
|
|
6
|
+
l,
|
|
7
|
+
{
|
|
8
|
+
items: [
|
|
9
|
+
{ label: "项目编号", value: "PRJ-2026-041" },
|
|
10
|
+
{ label: "负责人", value: "林青" },
|
|
11
|
+
{ label: "当前状态", value: /* @__PURE__ */ e(a, { appearance: "light", children: "进行中" }) },
|
|
12
|
+
{ label: "起止时间", value: "2026-04-01 至 2026-06-30" },
|
|
13
|
+
{ label: "预算", value: "¥ 860,000" },
|
|
14
|
+
{ label: "风险等级", value: "中" },
|
|
15
|
+
{
|
|
16
|
+
label: "项目说明",
|
|
17
|
+
value: "用于详情页的字段摘要展示,支持跨列内容和响应式布局。",
|
|
18
|
+
span: 3
|
|
19
|
+
}
|
|
20
|
+
]
|
|
21
|
+
}
|
|
22
|
+
);
|
|
23
|
+
}
|
|
24
|
+
function n() {
|
|
25
|
+
return /* @__PURE__ */ e(r, {});
|
|
26
|
+
}
|
|
27
|
+
export {
|
|
28
|
+
r as DescriptionGridBasic,
|
|
29
|
+
n as DescriptionGridShowcase
|
|
30
|
+
};
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { jsx as e, jsxs as i, Fragment as r } from "react/jsx-runtime";
|
|
2
|
+
import { Building2 as a, MoreHorizontal as l, Edit3 as o } from "lucide-react";
|
|
3
|
+
import { DetailHeader as n } from "./detail-header.js";
|
|
4
|
+
import { Button as t } from "../../form/button/button.js";
|
|
5
|
+
function s() {
|
|
6
|
+
return /* @__PURE__ */ e(
|
|
7
|
+
n,
|
|
8
|
+
{
|
|
9
|
+
eyebrow: "Asset detail",
|
|
10
|
+
icon: a,
|
|
11
|
+
title: "杭州数据中心 A-12 机柜",
|
|
12
|
+
description: "用于详情页顶部的实体摘要,集中放置状态、关键字段、标签和操作。",
|
|
13
|
+
status: "运行中",
|
|
14
|
+
tags: ["核心资产", "杭州", "高可用"],
|
|
15
|
+
fields: [
|
|
16
|
+
{ label: "资产编号", value: "AST-2026-0412" },
|
|
17
|
+
{ label: "责任人", value: "陈序" },
|
|
18
|
+
{ label: "健康度", value: "96%" },
|
|
19
|
+
{ label: "更新时间", value: "10:42" }
|
|
20
|
+
],
|
|
21
|
+
actions: /* @__PURE__ */ i(r, { children: [
|
|
22
|
+
/* @__PURE__ */ e(t, { variant: "outline", size: "icon", children: /* @__PURE__ */ e(l, {}) }),
|
|
23
|
+
/* @__PURE__ */ i(t, { children: [
|
|
24
|
+
/* @__PURE__ */ e(o, {}),
|
|
25
|
+
"编辑"
|
|
26
|
+
] })
|
|
27
|
+
] })
|
|
28
|
+
}
|
|
29
|
+
);
|
|
30
|
+
}
|
|
31
|
+
function f() {
|
|
32
|
+
return /* @__PURE__ */ e(s, {});
|
|
33
|
+
}
|
|
34
|
+
export {
|
|
35
|
+
s as DetailHeaderBasic,
|
|
36
|
+
f as DetailHeaderShowcase
|
|
37
|
+
};
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { jsxs as l, jsx as e, Fragment as c } from "react/jsx-runtime";
|
|
2
|
+
import { Download as t, Search as m } from "lucide-react";
|
|
3
|
+
import { FilterPanel as s, FilterPanelGrid as d, FilterPanelField as i } from "./filter-panel.js";
|
|
4
|
+
import { Input as h } from "../../form/input/input.js";
|
|
5
|
+
import { ToggleGroup as u, ToggleGroupItem as n } from "../../form/toggle-group/toggle-group.js";
|
|
6
|
+
import { Select as f, SelectTrigger as p, SelectValue as g, SelectContent as x, SelectItem as o } from "../../form/select/select.js";
|
|
7
|
+
import { Button as a } from "../../form/button/button.js";
|
|
8
|
+
function v() {
|
|
9
|
+
return /* @__PURE__ */ l(
|
|
10
|
+
s,
|
|
11
|
+
{
|
|
12
|
+
summary: /* @__PURE__ */ l(c, { children: [
|
|
13
|
+
"已应用 ",
|
|
14
|
+
/* @__PURE__ */ e("span", { className: "font-semibold text-foreground", children: "2" }),
|
|
15
|
+
" ",
|
|
16
|
+
"个筛选条件"
|
|
17
|
+
] }),
|
|
18
|
+
actions: /* @__PURE__ */ l(c, { children: [
|
|
19
|
+
/* @__PURE__ */ e(a, { variant: "ghost", size: "sm", children: "重置" }),
|
|
20
|
+
/* @__PURE__ */ l(a, { variant: "outline", size: "sm", children: [
|
|
21
|
+
/* @__PURE__ */ e(t, {}),
|
|
22
|
+
"导出"
|
|
23
|
+
] }),
|
|
24
|
+
/* @__PURE__ */ l(a, { size: "sm", children: [
|
|
25
|
+
/* @__PURE__ */ e(m, {}),
|
|
26
|
+
"查询"
|
|
27
|
+
] })
|
|
28
|
+
] }),
|
|
29
|
+
children: [
|
|
30
|
+
/* @__PURE__ */ l(d, { columns: 2, children: [
|
|
31
|
+
/* @__PURE__ */ e(i, { label: "负责人", children: /* @__PURE__ */ e(h, { placeholder: "搜索负责人姓名 / 工号" }) }),
|
|
32
|
+
/* @__PURE__ */ e(i, { label: "时间范围", children: /* @__PURE__ */ l(
|
|
33
|
+
u,
|
|
34
|
+
{
|
|
35
|
+
type: "single",
|
|
36
|
+
defaultValue: "30d",
|
|
37
|
+
className: "w-full rounded-md border border-border",
|
|
38
|
+
children: [
|
|
39
|
+
/* @__PURE__ */ e(n, { value: "7d", className: "flex-1", children: "近 7 天" }),
|
|
40
|
+
/* @__PURE__ */ e(n, { value: "30d", className: "flex-1", children: "近 30 天" }),
|
|
41
|
+
/* @__PURE__ */ e(n, { value: "90d", className: "flex-1", children: "近 90 天" })
|
|
42
|
+
]
|
|
43
|
+
}
|
|
44
|
+
) })
|
|
45
|
+
] }),
|
|
46
|
+
/* @__PURE__ */ e(d, { columns: 4, children: ["产品线", "缺陷类型", "严重度", "处理状态"].map((r) => /* @__PURE__ */ e(i, { label: r, children: /* @__PURE__ */ l(f, { defaultValue: "all", children: [
|
|
47
|
+
/* @__PURE__ */ e(p, { children: /* @__PURE__ */ e(g, { placeholder: `选择${r}` }) }),
|
|
48
|
+
/* @__PURE__ */ l(x, { children: [
|
|
49
|
+
/* @__PURE__ */ e(o, { value: "all", children: "全部" }),
|
|
50
|
+
/* @__PURE__ */ e(o, { value: "focus", children: "重点项" })
|
|
51
|
+
] })
|
|
52
|
+
] }) }, r)) })
|
|
53
|
+
]
|
|
54
|
+
}
|
|
55
|
+
);
|
|
56
|
+
}
|
|
57
|
+
function G() {
|
|
58
|
+
return /* @__PURE__ */ e("div", { className: "max-w-5xl", children: /* @__PURE__ */ e(v, {}) });
|
|
59
|
+
}
|
|
60
|
+
export {
|
|
61
|
+
v as FilterPanelBasic,
|
|
62
|
+
G as FilterPanelShowcase
|
|
63
|
+
};
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { jsx as r, jsxs as i, Fragment as o } from "react/jsx-runtime";
|
|
2
|
+
import { Plus as a, Table2 as t, Columns3 as l, ListFilter as n } from "lucide-react";
|
|
3
|
+
import { FilterToolbar as s } from "./filter-toolbar.js";
|
|
4
|
+
import { Button as e } from "../../form/button/button.js";
|
|
5
|
+
import { Badge as m } from "../../data-display/badge/badge.js";
|
|
6
|
+
function c() {
|
|
7
|
+
return /* @__PURE__ */ r(
|
|
8
|
+
s,
|
|
9
|
+
{
|
|
10
|
+
defaultSearchValue: "质量",
|
|
11
|
+
searchPlaceholder: "搜索项目、负责人、编号",
|
|
12
|
+
filters: /* @__PURE__ */ i(o, { children: [
|
|
13
|
+
/* @__PURE__ */ i(e, { variant: "outline", size: "sm", children: [
|
|
14
|
+
/* @__PURE__ */ r(n, {}),
|
|
15
|
+
"状态"
|
|
16
|
+
] }),
|
|
17
|
+
/* @__PURE__ */ r(e, { variant: "outline", size: "sm", children: "优先级" }),
|
|
18
|
+
/* @__PURE__ */ r(m, { variant: "primary", appearance: "light", children: "已选 2 项" })
|
|
19
|
+
] }),
|
|
20
|
+
viewSwitcher: /* @__PURE__ */ i("div", { className: "flex rounded-md border border-border bg-background p-0.5", children: [
|
|
21
|
+
/* @__PURE__ */ r(e, { variant: "ghost", size: "sm", children: /* @__PURE__ */ r(t, {}) }),
|
|
22
|
+
/* @__PURE__ */ r(e, { variant: "ghost", size: "sm", children: /* @__PURE__ */ r(l, {}) })
|
|
23
|
+
] }),
|
|
24
|
+
primaryAction: /* @__PURE__ */ i(e, { size: "sm", children: [
|
|
25
|
+
/* @__PURE__ */ r(a, {}),
|
|
26
|
+
"新建"
|
|
27
|
+
] }),
|
|
28
|
+
onReset: () => {
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
);
|
|
32
|
+
}
|
|
33
|
+
function b() {
|
|
34
|
+
return /* @__PURE__ */ r("div", { className: "max-w-4xl", children: /* @__PURE__ */ r(c, {}) });
|
|
35
|
+
}
|
|
36
|
+
export {
|
|
37
|
+
c as FilterToolbarBasic,
|
|
38
|
+
b as FilterToolbarShowcase
|
|
39
|
+
};
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { jsx as r } from "react/jsx-runtime";
|
|
2
|
+
import { ForgotPasswordForm as t } from "./forgot-password-form.js";
|
|
3
|
+
import { Button as e } from "../../form/button/button.js";
|
|
4
|
+
function m() {
|
|
5
|
+
return /* @__PURE__ */ r("div", { className: "max-w-sm rounded-xl border border-border bg-card p-6", children: /* @__PURE__ */ r(
|
|
6
|
+
t,
|
|
7
|
+
{
|
|
8
|
+
onSubmit: (o) => o.preventDefault(),
|
|
9
|
+
backAction: /* @__PURE__ */ r(e, { type: "button", mode: "link", variant: "primary", size: "sm", children: "返回登录" })
|
|
10
|
+
}
|
|
11
|
+
) });
|
|
12
|
+
}
|
|
13
|
+
function s() {
|
|
14
|
+
return /* @__PURE__ */ r(m, {});
|
|
15
|
+
}
|
|
16
|
+
export {
|
|
17
|
+
m as ForgotPasswordFormBasic,
|
|
18
|
+
s as ForgotPasswordFormShowcase
|
|
19
|
+
};
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { jsx as r, jsxs as e, Fragment as n } from "react/jsx-runtime";
|
|
2
|
+
import { FormSection as l } from "./form-section.js";
|
|
3
|
+
import { Label as i } from "../../form/label/label.js";
|
|
4
|
+
import { Input as o } from "../../form/input/input.js";
|
|
5
|
+
import { Textarea as t } from "../../form/textarea/textarea.js";
|
|
6
|
+
import { Button as c } from "../../form/button/button.js";
|
|
7
|
+
function a() {
|
|
8
|
+
return /* @__PURE__ */ r(
|
|
9
|
+
l,
|
|
10
|
+
{
|
|
11
|
+
title: "基础信息",
|
|
12
|
+
description: "用于复杂表单的分组容器,统一标题、说明、内容和底部操作。",
|
|
13
|
+
footer: /* @__PURE__ */ e(n, { children: [
|
|
14
|
+
/* @__PURE__ */ r(c, { variant: "outline", children: "取消" }),
|
|
15
|
+
/* @__PURE__ */ r(c, { children: "保存" })
|
|
16
|
+
] }),
|
|
17
|
+
children: /* @__PURE__ */ e("div", { className: "grid gap-4 md:grid-cols-2", children: [
|
|
18
|
+
/* @__PURE__ */ e("div", { className: "space-y-2", children: [
|
|
19
|
+
/* @__PURE__ */ r(i, { children: "项目名称" }),
|
|
20
|
+
/* @__PURE__ */ r(o, { placeholder: "输入项目名称" })
|
|
21
|
+
] }),
|
|
22
|
+
/* @__PURE__ */ e("div", { className: "space-y-2", children: [
|
|
23
|
+
/* @__PURE__ */ r(i, { children: "负责人" }),
|
|
24
|
+
/* @__PURE__ */ r(o, { placeholder: "输入负责人" })
|
|
25
|
+
] }),
|
|
26
|
+
/* @__PURE__ */ e("div", { className: "space-y-2 md:col-span-2", children: [
|
|
27
|
+
/* @__PURE__ */ r(i, { children: "项目描述" }),
|
|
28
|
+
/* @__PURE__ */ r(t, { placeholder: "补充项目目标、范围和约束" })
|
|
29
|
+
] })
|
|
30
|
+
] })
|
|
31
|
+
}
|
|
32
|
+
);
|
|
33
|
+
}
|
|
34
|
+
function u() {
|
|
35
|
+
return /* @__PURE__ */ r(a, {});
|
|
36
|
+
}
|
|
37
|
+
export {
|
|
38
|
+
a as FormSectionBasic,
|
|
39
|
+
u as FormSectionShowcase
|
|
40
|
+
};
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import { jsx as i } from "react/jsx-runtime";
|
|
2
|
+
import { KanbanBoard as t } from "./kanban-board.js";
|
|
3
|
+
const e = [
|
|
4
|
+
{ id: "todo", title: "待处理", description: "待排期或待领取" },
|
|
5
|
+
{ id: "doing", title: "进行中", description: "当前正在推进" },
|
|
6
|
+
{ id: "review", title: "评审", description: "等待确认" },
|
|
7
|
+
{ id: "done", title: "完成", description: "已交付" }
|
|
8
|
+
], o = [
|
|
9
|
+
{ id: "core", title: "核心链路", description: "影响主流程的任务" },
|
|
10
|
+
{ id: "support", title: "支撑能力", description: "工具、文档和治理任务" }
|
|
11
|
+
], n = [
|
|
12
|
+
{
|
|
13
|
+
id: 1,
|
|
14
|
+
columnId: "todo",
|
|
15
|
+
swimlaneId: "core",
|
|
16
|
+
title: "确认指标口径",
|
|
17
|
+
description: "与财务和运营确认收入、成本、毛利口径。",
|
|
18
|
+
priority: "P1",
|
|
19
|
+
assignee: "林青",
|
|
20
|
+
meta: "04-24",
|
|
21
|
+
tags: ["指标"]
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
id: 2,
|
|
25
|
+
columnId: "doing",
|
|
26
|
+
swimlaneId: "core",
|
|
27
|
+
title: "质量规则联调",
|
|
28
|
+
description: "主数据质量规则接入调度平台。",
|
|
29
|
+
priority: "P0",
|
|
30
|
+
assignee: "周然",
|
|
31
|
+
meta: "今天",
|
|
32
|
+
tags: ["联调", "阻塞"]
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
id: 3,
|
|
36
|
+
columnId: "review",
|
|
37
|
+
swimlaneId: "core",
|
|
38
|
+
title: "审批流验收",
|
|
39
|
+
description: "项目审批节点和通知消息待业务确认。",
|
|
40
|
+
assignee: "陈序",
|
|
41
|
+
meta: "明天"
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
id: 4,
|
|
45
|
+
columnId: "done",
|
|
46
|
+
swimlaneId: "support",
|
|
47
|
+
title: "导入模板整理",
|
|
48
|
+
description: "项目、任务、资产三类模板已完成。",
|
|
49
|
+
assignee: "王砚",
|
|
50
|
+
meta: "昨天",
|
|
51
|
+
tags: ["文档"]
|
|
52
|
+
},
|
|
53
|
+
{
|
|
54
|
+
id: 5,
|
|
55
|
+
columnId: "doing",
|
|
56
|
+
swimlaneId: "support",
|
|
57
|
+
title: "看板筛选配置",
|
|
58
|
+
description: "补充负责人、优先级和标签筛选。",
|
|
59
|
+
assignee: "刘嘉",
|
|
60
|
+
meta: "04-26"
|
|
61
|
+
}
|
|
62
|
+
];
|
|
63
|
+
function d() {
|
|
64
|
+
return /* @__PURE__ */ i(t, { columns: e, swimlanes: o, items: n });
|
|
65
|
+
}
|
|
66
|
+
function a() {
|
|
67
|
+
return /* @__PURE__ */ i(d, {});
|
|
68
|
+
}
|
|
69
|
+
export {
|
|
70
|
+
d as KanbanBoardBasic,
|
|
71
|
+
a as KanbanBoardShowcase
|
|
72
|
+
};
|