@runlume/admin-ui 0.1.0 → 0.2.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.
- package/README.en.md +6 -13
- package/README.md +5 -11
- package/dist-package/_virtual/_rolldown/runtime.cjs +1 -0
- package/dist-package/admin-ui.cjs +1 -0
- package/dist-package/admin-ui.d.ts +41 -1
- package/dist-package/admin-ui.d.ts.map +1 -1
- package/dist-package/admin-ui.js +79 -0
- package/dist-package/components/calendar.cjs +1 -0
- package/dist-package/components/calendar.d.ts +13 -0
- package/dist-package/components/calendar.d.ts.map +1 -0
- package/dist-package/components/calendar.js +91 -0
- package/dist-package/components/cascader.cjs +1 -0
- package/dist-package/components/cascader.d.ts +19 -0
- package/dist-package/components/cascader.d.ts.map +1 -0
- package/dist-package/components/cascader.js +85 -0
- package/dist-package/components/charts.cjs +1 -0
- package/dist-package/components/charts.d.ts +80 -0
- package/dist-package/components/charts.d.ts.map +1 -0
- package/dist-package/components/charts.js +374 -0
- package/dist-package/components/code-block.cjs +1 -0
- package/dist-package/components/code-block.d.ts +7 -0
- package/dist-package/components/code-block.d.ts.map +1 -0
- package/dist-package/components/code-block.js +47 -0
- package/dist-package/components/column-chart.cjs +1 -0
- package/dist-package/components/column-chart.d.ts +18 -0
- package/dist-package/components/column-chart.d.ts.map +1 -0
- package/dist-package/components/column-chart.js +89 -0
- package/dist-package/components/combobox.cjs +1 -0
- package/dist-package/components/combobox.d.ts +24 -0
- package/dist-package/components/combobox.d.ts.map +1 -0
- package/dist-package/components/combobox.js +111 -0
- package/dist-package/components/confirm-dialog.cjs +1 -0
- package/dist-package/components/confirm-dialog.d.ts +17 -0
- package/dist-package/components/confirm-dialog.d.ts.map +1 -0
- package/dist-package/components/confirm-dialog.js +44 -0
- package/dist-package/components/count-to.cjs +1 -0
- package/dist-package/components/count-to.d.ts +13 -0
- package/dist-package/components/count-to.d.ts.map +1 -0
- package/dist-package/components/count-to.js +36 -0
- package/dist-package/components/cursor-pagination.cjs +1 -0
- package/dist-package/components/cursor-pagination.d.ts +11 -0
- package/dist-package/components/cursor-pagination.d.ts.map +1 -0
- package/dist-package/components/cursor-pagination.js +39 -0
- package/dist-package/components/data-table.cjs +1 -0
- package/dist-package/components/data-table.d.ts +69 -0
- package/dist-package/components/data-table.d.ts.map +1 -0
- package/dist-package/components/data-table.js +377 -0
- package/dist-package/components/descriptions.cjs +1 -0
- package/dist-package/components/descriptions.d.ts +16 -0
- package/dist-package/components/descriptions.d.ts.map +1 -0
- package/dist-package/components/descriptions.js +28 -0
- package/dist-package/components/editable-table.cjs +1 -0
- package/dist-package/components/editable-table.d.ts +27 -0
- package/dist-package/components/editable-table.d.ts.map +1 -0
- package/dist-package/components/editable-table.js +212 -0
- package/dist-package/components/filter-presets.cjs +1 -0
- package/dist-package/components/filter-presets.d.ts +11 -0
- package/dist-package/components/filter-presets.d.ts.map +1 -0
- package/dist-package/components/filter-presets.js +17 -0
- package/dist-package/components/fixed-bar.cjs +1 -0
- package/dist-package/components/fixed-bar.d.ts +11 -0
- package/dist-package/components/fixed-bar.d.ts.map +1 -0
- package/dist-package/components/fixed-bar.js +18 -0
- package/dist-package/components/image-preview.cjs +1 -0
- package/dist-package/components/image-preview.d.ts +14 -0
- package/dist-package/components/image-preview.d.ts.map +1 -0
- package/dist-package/components/image-preview.js +166 -0
- package/dist-package/components/layout-container.cjs +1 -0
- package/dist-package/components/layout-container.d.ts +17 -0
- package/dist-package/components/layout-container.d.ts.map +1 -0
- package/dist-package/components/layout-container.js +85 -0
- package/dist-package/components/mention.cjs +1 -0
- package/dist-package/components/mention.d.ts +20 -0
- package/dist-package/components/mention.d.ts.map +1 -0
- package/dist-package/components/mention.js +126 -0
- package/dist-package/components/multi-select.cjs +1 -0
- package/dist-package/components/multi-select.d.ts +17 -0
- package/dist-package/components/multi-select.d.ts.map +1 -0
- package/dist-package/components/multi-select.js +126 -0
- package/dist-package/components/multi-step-loader.cjs +1 -0
- package/dist-package/components/multi-step-loader.d.ts +18 -0
- package/dist-package/components/multi-step-loader.d.ts.map +1 -0
- package/dist-package/components/multi-step-loader.js +38 -0
- package/dist-package/components/page-button.cjs +1 -0
- package/dist-package/components/page-button.d.ts +6 -0
- package/dist-package/components/page-button.d.ts.map +1 -0
- package/dist-package/components/page-button.js +24 -0
- package/dist-package/components/page-pager.cjs +1 -0
- package/dist-package/components/page-pager.d.ts +11 -0
- package/dist-package/components/page-pager.d.ts.map +1 -0
- package/dist-package/components/page-pager.js +51 -0
- package/dist-package/components/page.cjs +1 -0
- package/dist-package/components/page.d.ts +34 -0
- package/dist-package/components/page.d.ts.map +1 -0
- package/dist-package/components/page.js +208 -0
- package/dist-package/components/pagination-bar.cjs +1 -0
- package/dist-package/components/pagination-bar.d.ts +8 -0
- package/dist-package/components/pagination-bar.d.ts.map +1 -0
- package/dist-package/components/pagination-bar.js +23 -0
- package/dist-package/components/password-strength.cjs +1 -0
- package/dist-package/components/password-strength.d.ts +11 -0
- package/dist-package/components/password-strength.d.ts.map +1 -0
- package/dist-package/components/password-strength.js +70 -0
- package/dist-package/components/rate.cjs +1 -0
- package/dist-package/components/rate.d.ts +13 -0
- package/dist-package/components/rate.d.ts.map +1 -0
- package/dist-package/components/rate.js +56 -0
- package/dist-package/components/resizable-panel.cjs +1 -0
- package/dist-package/components/resizable-panel.d.ts +15 -0
- package/dist-package/components/resizable-panel.d.ts.map +1 -0
- package/dist-package/components/resizable-panel.js +56 -0
- package/dist-package/components/search-filters.cjs +1 -0
- package/dist-package/components/search-filters.d.ts +31 -0
- package/dist-package/components/search-filters.d.ts.map +1 -0
- package/dist-package/components/search-filters.js +110 -0
- package/dist-package/components/sortable-list.cjs +1 -0
- package/dist-package/components/sortable-list.d.ts +14 -0
- package/dist-package/components/sortable-list.d.ts.map +1 -0
- package/dist-package/components/sortable-list.js +48 -0
- package/dist-package/components/sparkline.cjs +1 -0
- package/dist-package/components/sparkline.d.ts +11 -0
- package/dist-package/components/sparkline.d.ts.map +1 -0
- package/dist-package/components/sparkline.js +50 -0
- package/dist-package/components/status-badge.cjs +1 -0
- package/dist-package/components/status-badge.d.ts +4 -0
- package/dist-package/components/status-badge.d.ts.map +1 -0
- package/dist-package/components/status-badge.js +28 -0
- package/dist-package/components/steps.cjs +1 -0
- package/dist-package/components/steps.d.ts +15 -0
- package/dist-package/components/steps.d.ts.map +1 -0
- package/dist-package/components/steps.js +41 -0
- package/dist-package/components/storage-box.cjs +1 -0
- package/dist-package/components/storage-box.d.ts +19 -0
- package/dist-package/components/storage-box.d.ts.map +1 -0
- package/dist-package/components/storage-box.js +153 -0
- package/dist-package/components/table-cell-overflow.cjs +1 -0
- package/dist-package/components/table-cell-overflow.d.ts +5 -0
- package/dist-package/components/table-cell-overflow.d.ts.map +1 -0
- package/dist-package/components/table-cell-overflow.js +31 -0
- package/dist-package/components/table-toolbar.cjs +1 -0
- package/dist-package/components/table-toolbar.d.ts +5 -0
- package/dist-package/components/table-toolbar.d.ts.map +1 -0
- package/dist-package/components/table-toolbar.js +11 -0
- package/dist-package/components/timeline.cjs +1 -0
- package/dist-package/components/timeline.d.ts +14 -0
- package/dist-package/components/timeline.d.ts.map +1 -0
- package/dist-package/components/timeline.js +40 -0
- package/dist-package/components/transfer.cjs +1 -0
- package/dist-package/components/transfer.d.ts +18 -0
- package/dist-package/components/transfer.d.ts.map +1 -0
- package/dist-package/components/transfer.js +98 -0
- package/dist-package/components/tree-table.cjs +1 -0
- package/dist-package/components/tree-table.d.ts +23 -0
- package/dist-package/components/tree-table.d.ts.map +1 -0
- package/dist-package/components/tree-table.js +53 -0
- package/dist-package/components/tree.cjs +1 -0
- package/dist-package/components/tree.d.ts +36 -0
- package/dist-package/components/tree.d.ts.map +1 -0
- package/dist-package/components/tree.js +204 -0
- package/dist-package/components/trend.cjs +1 -0
- package/dist-package/components/trend.d.ts +19 -0
- package/dist-package/components/trend.d.ts.map +1 -0
- package/dist-package/components/trend.js +18 -0
- package/dist-package/components/ui/alert-dialog.cjs +1 -0
- package/dist-package/components/ui/alert-dialog.js +57 -0
- package/dist-package/components/ui/alert.cjs +1 -0
- package/dist-package/components/ui/alert.js +63 -0
- package/dist-package/components/ui/avatar.cjs +1 -0
- package/dist-package/components/ui/avatar.js +27 -0
- package/dist-package/components/ui/badge.cjs +1 -0
- package/dist-package/components/ui/badge.js +40 -0
- package/dist-package/components/ui/breadcrumb.cjs +1 -0
- package/dist-package/components/ui/breadcrumb.js +70 -0
- package/dist-package/components/ui/button.cjs +1 -0
- package/dist-package/components/ui/button.js +58 -0
- package/dist-package/components/ui/card.cjs +1 -0
- package/dist-package/components/ui/card.js +55 -0
- package/dist-package/components/ui/checkbox.cjs +1 -0
- package/dist-package/components/ui/checkbox.js +19 -0
- package/dist-package/components/ui/collapsible.cjs +1 -0
- package/dist-package/components/ui/collapsible.js +32 -0
- package/dist-package/components/ui/context-menu.cjs +1 -0
- package/dist-package/components/ui/context-menu.js +46 -0
- package/dist-package/components/ui/date-input.cjs +1 -0
- package/dist-package/components/ui/date-input.js +183 -0
- package/dist-package/components/ui/date-range-input.cjs +1 -0
- package/dist-package/components/ui/date-range-input.js +209 -0
- package/dist-package/components/ui/date-time-input.cjs +1 -0
- package/dist-package/components/ui/date-time-input.js +23 -0
- package/dist-package/components/ui/dialog.cjs +1 -0
- package/dist-package/components/ui/dialog.js +189 -0
- package/dist-package/components/ui/dropdown-menu.cjs +1 -0
- package/dist-package/components/ui/dropdown-menu.js +124 -0
- package/dist-package/components/ui/file-upload.cjs +1 -0
- package/dist-package/components/ui/file-upload.js +160 -0
- package/dist-package/components/ui/hover-card.cjs +1 -0
- package/dist-package/components/ui/hover-card.js +28 -0
- package/dist-package/components/ui/input-otp.cjs +1 -0
- package/dist-package/components/ui/input-otp.js +33 -0
- package/dist-package/components/ui/input.cjs +1 -0
- package/dist-package/components/ui/input.js +65 -0
- package/dist-package/components/ui/kbd.cjs +1 -0
- package/dist-package/components/ui/kbd.js +20 -0
- package/dist-package/components/ui/label.cjs +1 -0
- package/dist-package/components/ui/label.js +14 -0
- package/dist-package/components/ui/native-select.cjs +1 -0
- package/dist-package/components/ui/native-select.js +125 -0
- package/dist-package/components/ui/number-field.cjs +1 -0
- package/dist-package/components/ui/number-field.js +50 -0
- package/dist-package/components/ui/progress.cjs +1 -0
- package/dist-package/components/ui/progress.js +28 -0
- package/dist-package/components/ui/radio-group.cjs +1 -0
- package/dist-package/components/ui/radio-group.js +27 -0
- package/dist-package/components/ui/scroll-area.cjs +1 -0
- package/dist-package/components/ui/scroll-area.js +25 -0
- package/dist-package/components/ui/select.cjs +1 -0
- package/dist-package/components/ui/select.js +23 -0
- package/dist-package/components/ui/separator.cjs +1 -0
- package/dist-package/components/ui/separator.js +17 -0
- package/dist-package/components/ui/sheet.cjs +1 -0
- package/dist-package/components/ui/sheet.js +86 -0
- package/dist-package/components/ui/sidebar.cjs +1 -0
- package/dist-package/components/ui/sidebar.js +350 -0
- package/dist-package/components/ui/skeleton.cjs +1 -0
- package/dist-package/components/ui/skeleton.js +12 -0
- package/dist-package/components/ui/slider.cjs +1 -0
- package/dist-package/components/ui/slider.js +36 -0
- package/dist-package/components/ui/switch.cjs +1 -0
- package/dist-package/components/ui/switch.js +14 -0
- package/dist-package/components/ui/table.cjs +1 -0
- package/dist-package/components/ui/table.js +66 -0
- package/dist-package/components/ui/tabs.cjs +1 -0
- package/dist-package/components/ui/tabs.js +47 -0
- package/dist-package/components/ui/tag-variants.cjs +1 -0
- package/dist-package/components/ui/tag-variants.js +15 -0
- package/dist-package/components/ui/tag.cjs +1 -0
- package/dist-package/components/ui/tag.js +31 -0
- package/dist-package/components/ui/textarea.cjs +1 -0
- package/dist-package/components/ui/textarea.js +13 -0
- package/dist-package/components/ui/time-input.cjs +1 -0
- package/dist-package/components/ui/time-input.js +89 -0
- package/dist-package/components/ui/tooltip.cjs +1 -0
- package/dist-package/components/ui/tooltip.js +35 -0
- package/dist-package/hooks/use-mobile.cjs +1 -0
- package/dist-package/hooks/use-mobile.js +11 -0
- package/dist-package/lib/dialog-focus.cjs +1 -0
- package/dist-package/lib/dialog-focus.js +10 -0
- package/dist-package/lib/metrics.cjs +1 -0
- package/dist-package/lib/metrics.d.ts +18 -0
- package/dist-package/lib/metrics.d.ts.map +1 -0
- package/dist-package/lib/metrics.js +22 -0
- package/dist-package/lib/pager.cjs +1 -0
- package/dist-package/lib/pager.d.ts +8 -0
- package/dist-package/lib/pager.d.ts.map +1 -0
- package/dist-package/lib/pager.js +18 -0
- package/dist-package/lib/password.cjs +1 -0
- package/dist-package/lib/password.d.ts +14 -0
- package/dist-package/lib/password.d.ts.map +1 -0
- package/dist-package/lib/password.js +34 -0
- package/dist-package/lib/presets.cjs +1 -0
- package/dist-package/lib/presets.d.ts +25 -0
- package/dist-package/lib/presets.d.ts.map +1 -0
- package/dist-package/lib/presets.js +48 -0
- package/dist-package/lib/range.cjs +1 -0
- package/dist-package/lib/range.js +57 -0
- package/dist-package/lib/storage-key.cjs +1 -0
- package/dist-package/lib/storage-key.d.ts +2 -0
- package/dist-package/lib/storage-key.d.ts.map +1 -0
- package/dist-package/lib/storage-key.js +6 -0
- package/dist-package/lib/table-prefs.cjs +1 -0
- package/dist-package/lib/table-prefs.d.ts +17 -0
- package/dist-package/lib/table-prefs.d.ts.map +1 -0
- package/dist-package/lib/table-prefs.js +64 -0
- package/dist-package/lib/tree.cjs +1 -0
- package/dist-package/lib/tree.d.ts +37 -0
- package/dist-package/lib/tree.d.ts.map +1 -0
- package/dist-package/lib/tree.js +57 -0
- package/dist-package/lib/use-ui-translation.cjs +1 -0
- package/dist-package/lib/use-ui-translation.d.ts +15 -0
- package/dist-package/lib/use-ui-translation.d.ts.map +1 -0
- package/dist-package/lib/use-ui-translation.js +65 -0
- package/dist-package/lib/utils.cjs +1 -0
- package/dist-package/lib/utils.js +8 -0
- package/dist-package/styles.css +1 -1
- package/package.json +25 -15
- package/dist-package/index.js +0 -12212
package/README.en.md
CHANGED
|
@@ -38,7 +38,7 @@ pnpm preview # http://localhost:3201 to preview the build
|
|
|
38
38
|
|
|
39
39
|
## Use as an npm component library
|
|
40
40
|
|
|
41
|
-
|
|
41
|
+
Base controls, tables, filters, pagination, charts, and page states are built as `@runlume/admin-ui`; the complete template and demo app remain in this
|
|
42
42
|
repository. After the package is published, install it with:
|
|
43
43
|
|
|
44
44
|
```bash
|
|
@@ -46,21 +46,14 @@ pnpm add @runlume/admin-ui
|
|
|
46
46
|
```
|
|
47
47
|
|
|
48
48
|
```tsx
|
|
49
|
-
import { Button,
|
|
49
|
+
import { Button, DataTable, EmptyState } from '@runlume/admin-ui'
|
|
50
50
|
import '@runlume/admin-ui/styles.css'
|
|
51
51
|
```
|
|
52
52
|
|
|
53
|
-
The package
|
|
54
|
-
`
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
For a release, run `docs/scripts/publish-admin-ui-npm.sh`. It collects a npm Granular Access Token with
|
|
58
|
-
`Bypass 2FA` through a hidden macOS dialog and never stores the credential in the repository or normal logs.
|
|
59
|
-
|
|
60
|
-
`pnpm dev` prints a branded banner once per process and lists both the Local and Network URLs
|
|
61
|
-
(`server.host: true`, so a phone on the same network can open the Network address). Brand copy lives in
|
|
62
|
-
`src/lib/brand-info.ts`, the terminal banner in `scripts/banner.ts`, and the F12 console output in
|
|
63
|
-
`src/lib/brand-console.ts`.
|
|
53
|
+
The package supports React 18.2–19, ESM, and CommonJS. Fine-grained imports are available from paths such as
|
|
54
|
+
`@runlume/admin-ui/components/data-table` and `@runlume/admin-ui/ui/button`. Missing host translations fall back
|
|
55
|
+
to readable English instead of exposing i18n keys. Brand assets, example pages, and application state are not
|
|
56
|
+
part of the library exports.
|
|
64
57
|
|
|
65
58
|
## Verification
|
|
66
59
|
|
package/README.md
CHANGED
|
@@ -35,26 +35,20 @@ pnpm preview # http://localhost:3201 预览构建产物
|
|
|
35
35
|
|
|
36
36
|
## 作为 npm 组件库使用
|
|
37
37
|
|
|
38
|
-
|
|
38
|
+
基础控件、表格、筛选、分页、图表与页面状态可独立构建为 `@runlume/admin-ui`,完整模板和演示应用仍保留在本仓库。发布后安装:
|
|
39
39
|
|
|
40
40
|
```bash
|
|
41
41
|
pnpm add @runlume/admin-ui
|
|
42
42
|
```
|
|
43
43
|
|
|
44
44
|
```tsx
|
|
45
|
-
import { Button,
|
|
45
|
+
import { Button, DataTable, EmptyState } from '@runlume/admin-ui'
|
|
46
46
|
import '@runlume/admin-ui/styles.css'
|
|
47
47
|
```
|
|
48
48
|
|
|
49
|
-
|
|
50
|
-
`
|
|
51
|
-
|
|
52
|
-
正式发布使用 `docs/scripts/publish-admin-ui-npm.sh`,通过 macOS 隐藏输入框读取具备
|
|
53
|
-
`Bypass 2FA` 权限的 npm Granular Access Token;凭据不会写入仓库或普通日志。
|
|
54
|
-
|
|
55
|
-
`pnpm dev` 启动时终端会打出品牌横幅(每个进程只打一次),并同时给出 Local 与 Network 两个地址
|
|
56
|
-
(`server.host: true`,手机或同网段设备可用 Network 地址访问)。品牌文案在 `src/lib/brand-info.ts`,
|
|
57
|
-
终端横幅在 `scripts/banner.ts`,浏览器 F12 控制台的品牌输出在 `src/lib/brand-console.ts`。
|
|
49
|
+
支持 React 18.2–19、ESM 与 CommonJS;需要更细粒度加载时可从
|
|
50
|
+
`@runlume/admin-ui/components/data-table` 或 `@runlume/admin-ui/ui/button` 引入。公共组件缺少宿主翻译时会显示内置英文兜底,不会直接暴露 i18n key。
|
|
51
|
+
品牌资源、示例页面以及应用状态不属于组件库出口。
|
|
58
52
|
|
|
59
53
|
## 校验
|
|
60
54
|
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},s=(n,r,s)=>(s=n==null?{}:e(i(n)),o(r||!n||!n.__esModule||!a.call(n,`default`)?t(s,`default`,{value:n,enumerable:!0}):s,n));exports.__toESM=s;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});/* empty css */const e=require("./components/ui/button.cjs"),t=require("./components/ui/alert-dialog.cjs"),n=require("./lib/use-ui-translation.cjs"),r=require("./components/ui/alert.cjs"),i=require("./components/ui/avatar.cjs"),a=require("./components/ui/badge.cjs"),o=require("./components/ui/breadcrumb.cjs"),s=require("./components/ui/card.cjs"),ee=require("./components/ui/checkbox.cjs"),c=require("./components/ui/collapsible.cjs"),l=require("./components/ui/context-menu.cjs"),u=require("./components/ui/time-input.cjs"),d=require("./components/ui/input.cjs"),te=require("./components/ui/date-input.cjs"),f=require("./components/ui/label.cjs"),p=require("./components/ui/date-range-input.cjs"),m=require("./components/ui/date-time-input.cjs"),h=require("./components/ui/dialog.cjs"),g=require("./components/ui/dropdown-menu.cjs"),_=require("./components/ui/progress.cjs"),v=require("./components/ui/file-upload.cjs"),y=require("./components/ui/hover-card.cjs"),ne=require("./components/ui/input-otp.cjs"),b=require("./components/ui/kbd.cjs"),x=require("./components/ui/native-select.cjs"),S=require("./components/ui/number-field.cjs"),C=require("./components/ui/radio-group.cjs"),w=require("./components/ui/scroll-area.cjs"),T=require("./components/ui/select.cjs"),E=require("./components/ui/separator.cjs"),D=require("./components/ui/sheet.cjs"),O=require("./components/ui/skeleton.cjs"),k=require("./components/ui/tooltip.cjs"),A=require("./components/ui/sidebar.cjs"),j=require("./components/ui/slider.cjs"),M=require("./components/ui/switch.cjs"),N=require("./components/ui/table.cjs"),P=require("./components/ui/tabs.cjs"),F=require("./components/ui/tag.cjs"),I=require("./components/ui/textarea.cjs"),L=require("./components/calendar.cjs"),R=require("./components/cascader.cjs"),z=require("./components/combobox.cjs"),B=require("./components/confirm-dialog.cjs"),V=require("./components/table-toolbar.cjs"),H=require("./components/table-cell-overflow.cjs"),U=require("./components/page.cjs"),W=require("./components/data-table.cjs"),G=require("./components/descriptions.cjs"),re=require("./components/editable-table.cjs"),K=require("./components/filter-presets.cjs"),q=require("./components/fixed-bar.cjs"),J=require("./components/image-preview.cjs"),Y=require("./components/layout-container.cjs"),X=require("./components/mention.cjs"),ie=require("./components/multi-select.cjs"),ae=require("./components/multi-step-loader.cjs"),oe=require("./components/page-pager.cjs"),se=require("./components/pagination-bar.cjs"),ce=require("./components/cursor-pagination.cjs"),le=require("./components/password-strength.cjs"),ue=require("./components/rate.cjs"),de=require("./components/resizable-panel.cjs"),Z=require("./components/search-filters.cjs"),fe=require("./components/sortable-list.cjs"),pe=require("./components/status-badge.cjs"),me=require("./components/steps.cjs"),he=require("./components/timeline.cjs"),ge=require("./components/transfer.cjs"),_e=require("./components/tree.cjs"),Q=require("./components/tree-table.cjs"),ve=require("./components/count-to.cjs"),ye=require("./components/sparkline.cjs"),be=require("./components/trend.cjs"),xe=require("./components/code-block.cjs"),Se=require("./components/column-chart.cjs"),$=require("./components/charts.cjs");exports.AdminUiProvider=n.AdminUiProvider,exports.Alert=r.Alert,exports.AlertDialog=t.AlertDialog,exports.AlertDialogAction=t.AlertDialogAction,exports.AlertDialogCancel=t.AlertDialogCancel,exports.AlertDialogContent=t.AlertDialogContent,exports.AlertDialogDescription=t.AlertDialogDescription,exports.AlertDialogFooter=t.AlertDialogFooter,exports.AlertDialogHeader=t.AlertDialogHeader,exports.AlertDialogTitle=t.AlertDialogTitle,exports.AlertDialogTrigger=t.AlertDialogTrigger,exports.Avatar=i.Avatar,exports.Badge=a.Badge,exports.BarList=$.BarList,exports.Breadcrumb=o.Breadcrumb,exports.BreadcrumbEllipsis=o.BreadcrumbEllipsis,exports.BreadcrumbItem=o.BreadcrumbItem,exports.BreadcrumbLink=o.BreadcrumbLink,exports.BreadcrumbList=o.BreadcrumbList,exports.BreadcrumbPage=o.BreadcrumbPage,exports.BreadcrumbSeparator=o.BreadcrumbSeparator,exports.Button=e.Button,exports.Calendar=L.Calendar,exports.Card=s.Card,exports.CardAction=s.CardAction,exports.CardContent=s.CardContent,exports.CardDescription=s.CardDescription,exports.CardFooter=s.CardFooter,exports.CardHeader=s.CardHeader,exports.CardTitle=s.CardTitle,exports.Cascader=R.Cascader,exports.Checkbox=ee.Checkbox,exports.CodeBlock=xe.CodeBlock,exports.Collapsible=c.Collapsible,exports.CollapsibleContent=c.CollapsibleContent,exports.CollapsibleTrigger=c.CollapsibleTrigger,exports.ColumnChart=Se.ColumnChart,exports.ColumnManager=W.ColumnManager,exports.Combobox=z.Combobox,exports.ConfirmDialog=B.ConfirmDialog,exports.ContextMenu=l.ContextMenu,exports.ContextMenuContent=l.ContextMenuContent,exports.ContextMenuItem=l.ContextMenuItem,exports.ContextMenuLabel=l.ContextMenuLabel,exports.ContextMenuSeparator=l.ContextMenuSeparator,exports.ContextMenuTrigger=l.ContextMenuTrigger,exports.CopyValue=U.CopyValue,exports.CountTo=ve.CountTo,exports.CursorPagination=ce.CursorPagination,exports.DataTable=W.DataTable,exports.DateInput=te.DateInput,exports.DateRangeInput=p.DateRangeInput,exports.DateTimeInput=m.DateTimeInput,exports.Descriptions=G.Descriptions,exports.Dialog=h.Dialog,exports.DialogClose=h.DialogClose,exports.DialogContent=h.DialogContent,exports.DialogDescription=h.DialogDescription,exports.DialogFooter=h.DialogFooter,exports.DialogHeader=h.DialogHeader,exports.DialogOverlay=h.DialogOverlay,exports.DialogPortal=h.DialogPortal,exports.DialogTitle=h.DialogTitle,exports.DialogTrigger=h.DialogTrigger,exports.DonutChart=$.DonutChart,exports.DropdownMenu=g.DropdownMenu,exports.DropdownMenuCheckboxItem=g.DropdownMenuCheckboxItem,exports.DropdownMenuContent=g.DropdownMenuContent,exports.DropdownMenuGroup=g.DropdownMenuGroup,exports.DropdownMenuItem=g.DropdownMenuItem,exports.DropdownMenuLabel=g.DropdownMenuLabel,exports.DropdownMenuPortal=g.DropdownMenuPortal,exports.DropdownMenuRadioGroup=g.DropdownMenuRadioGroup,exports.DropdownMenuRadioItem=g.DropdownMenuRadioItem,exports.DropdownMenuSeparator=g.DropdownMenuSeparator,exports.DropdownMenuShortcut=g.DropdownMenuShortcut,exports.DropdownMenuSub=g.DropdownMenuSub,exports.DropdownMenuSubContent=g.DropdownMenuSubContent,exports.DropdownMenuSubTrigger=g.DropdownMenuSubTrigger,exports.DropdownMenuTrigger=g.DropdownMenuTrigger,exports.EditableTable=re.EditableTable,exports.EmptyState=U.EmptyState,exports.ErrorState=U.ErrorState,exports.FileUpload=v.FileUpload,exports.FilterPresets=K.FilterPresets,exports.FixedBar=q.FixedBar,exports.ForbiddenPage=U.ForbiddenPage,exports.FunnelChart=$.FunnelChart,exports.GanttChart=$.GanttChart,exports.Heatmap=$.Heatmap,exports.HoverCard=y.HoverCard,exports.HoverCardContent=y.HoverCardContent,exports.HoverCardTrigger=y.HoverCardTrigger,exports.ImagePreview=J.ImagePreview,exports.Input=d.Input,exports.InputOTP=ne.InputOTP,exports.Kbd=b.Kbd,exports.KbdGroup=b.KbdGroup,exports.Label=f.Label,exports.LayoutContainer=Y.LayoutContainer,exports.LineChart=$.LineChart,exports.LoadingState=U.LoadingState,exports.Mention=X.Mention,exports.MiniBars=$.MiniBars,exports.MultiSelect=ie.MultiSelect,exports.MultiStepLoader=ae.MultiStepLoader,exports.NativeSelect=x.NativeSelect,exports.NativeSelectOptGroup=x.NativeSelectOptGroup,exports.NativeSelectOption=x.NativeSelectOption,exports.NotFoundPage=U.NotFoundPage,exports.NumberField=S.NumberField,exports.PageHeader=U.PageHeader,exports.PagePager=oe.PagePager,exports.PaginationBar=se.PaginationBar,exports.PasswordStrength=le.PasswordStrength,exports.Progress=_.Progress,exports.RadarChart=$.RadarChart,exports.RadioGroup=C.RadioGroup,exports.RadioGroupItem=C.RadioGroupItem,exports.Rate=ue.Rate,exports.ResizablePanel=de.ResizablePanel,exports.ScrollArea=w.ScrollArea,exports.SearchActions=Z.SearchActions,exports.SearchField=Z.SearchField,exports.SearchFilters=Z.SearchFilters,exports.Select=T.Select,exports.Separator=E.Separator,exports.Sheet=D.Sheet,exports.SheetClose=D.SheetClose,exports.SheetContent=D.SheetContent,exports.SheetDescription=D.SheetDescription,exports.SheetFooter=D.SheetFooter,exports.SheetHeader=D.SheetHeader,exports.SheetTitle=D.SheetTitle,exports.SheetTrigger=D.SheetTrigger,exports.Sidebar=A.Sidebar,exports.SidebarContent=A.SidebarContent,exports.SidebarFooter=A.SidebarFooter,exports.SidebarGroup=A.SidebarGroup,exports.SidebarGroupAction=A.SidebarGroupAction,exports.SidebarGroupContent=A.SidebarGroupContent,exports.SidebarGroupLabel=A.SidebarGroupLabel,exports.SidebarHeader=A.SidebarHeader,exports.SidebarInput=A.SidebarInput,exports.SidebarInset=A.SidebarInset,exports.SidebarMenu=A.SidebarMenu,exports.SidebarMenuAction=A.SidebarMenuAction,exports.SidebarMenuBadge=A.SidebarMenuBadge,exports.SidebarMenuButton=A.SidebarMenuButton,exports.SidebarMenuItem=A.SidebarMenuItem,exports.SidebarMenuSkeleton=A.SidebarMenuSkeleton,exports.SidebarMenuSub=A.SidebarMenuSub,exports.SidebarMenuSubButton=A.SidebarMenuSubButton,exports.SidebarMenuSubItem=A.SidebarMenuSubItem,exports.SidebarProvider=A.SidebarProvider,exports.SidebarRail=A.SidebarRail,exports.SidebarSeparator=A.SidebarSeparator,exports.SidebarTrigger=A.SidebarTrigger,exports.Skeleton=O.Skeleton,exports.Slider=j.Slider,exports.SortableList=fe.SortableList,exports.Sparkline=ye.Sparkline,exports.StatusBadge=pe.StatusBadge,exports.Steps=me.Steps,exports.Switch=M.Switch,exports.Table=N.Table,exports.TableBody=N.TableBody,exports.TableCaption=N.TableCaption,exports.TableCell=N.TableCell,exports.TableCellOverflow=H.TableCellOverflow,exports.TableFooter=N.TableFooter,exports.TableHead=N.TableHead,exports.TableHeader=N.TableHeader,exports.TableRow=N.TableRow,exports.TableToolbar=V.TableToolbar,exports.Tabs=P.Tabs,exports.TabsContent=P.TabsContent,exports.TabsList=P.TabsList,exports.TabsTrigger=P.TabsTrigger,exports.Tag=F.Tag,exports.Textarea=I.Textarea,exports.TimeInput=u.TimeInput,exports.Timeline=he.Timeline,exports.Tooltip=k.Tooltip,exports.TooltipContent=k.TooltipContent,exports.TooltipProvider=k.TooltipProvider,exports.TooltipTrigger=k.TooltipTrigger,exports.Transfer=ge.Transfer,exports.Tree=_e.Tree,exports.TreeTable=Q.TreeTable,exports.Trend=be.Trend,exports.alertVariants=r.alertVariants,exports.badgeVariants=a.badgeVariants,exports.buttonVariants=e.buttonVariants,exports.inputBaseClass=d.inputBaseClass,exports.tabsListVariants=P.tabsListVariants,exports.useSidebar=A.useSidebar;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import './
|
|
1
|
+
import './admin-ui.css';
|
|
2
2
|
export * from './components/ui/alert-dialog';
|
|
3
3
|
export * from './components/ui/alert';
|
|
4
4
|
export * from './components/ui/avatar';
|
|
@@ -38,4 +38,44 @@ export * from './components/ui/tag';
|
|
|
38
38
|
export * from './components/ui/textarea';
|
|
39
39
|
export * from './components/ui/time-input';
|
|
40
40
|
export * from './components/ui/tooltip';
|
|
41
|
+
export * from './components/calendar';
|
|
42
|
+
export * from './components/cascader';
|
|
43
|
+
export * from './components/combobox';
|
|
44
|
+
export * from './components/confirm-dialog';
|
|
45
|
+
export * from './components/data-table';
|
|
46
|
+
export * from './components/descriptions';
|
|
47
|
+
export * from './components/editable-table';
|
|
48
|
+
export * from './components/filter-presets';
|
|
49
|
+
export * from './components/fixed-bar';
|
|
50
|
+
export * from './components/image-preview';
|
|
51
|
+
export * from './components/layout-container';
|
|
52
|
+
export * from './components/mention';
|
|
53
|
+
export * from './components/multi-select';
|
|
54
|
+
export * from './components/multi-step-loader';
|
|
55
|
+
export * from './components/page';
|
|
56
|
+
export * from './components/page-pager';
|
|
57
|
+
export * from './components/pagination-bar';
|
|
58
|
+
export * from './components/cursor-pagination';
|
|
59
|
+
export * from './components/password-strength';
|
|
60
|
+
export * from './components/rate';
|
|
61
|
+
export * from './components/resizable-panel';
|
|
62
|
+
export * from './components/search-filters';
|
|
63
|
+
export * from './components/sortable-list';
|
|
64
|
+
export * from './components/status-badge';
|
|
65
|
+
export * from './components/steps';
|
|
66
|
+
export * from './components/table-cell-overflow';
|
|
67
|
+
export * from './components/table-toolbar';
|
|
68
|
+
export * from './components/timeline';
|
|
69
|
+
export * from './components/transfer';
|
|
70
|
+
export * from './components/tree';
|
|
71
|
+
export * from './components/tree-table';
|
|
72
|
+
export * from './components/count-to';
|
|
73
|
+
export * from './components/sparkline';
|
|
74
|
+
export * from './components/trend';
|
|
75
|
+
export * from './components/code-block';
|
|
76
|
+
export * from './components/column-chart';
|
|
77
|
+
export * from './components/charts';
|
|
78
|
+
export type { DateRange } from './lib/range';
|
|
79
|
+
export type { TreeNode } from './lib/tree';
|
|
80
|
+
export { AdminUiProvider, type UiTranslate } from './lib/use-ui-translation';
|
|
41
81
|
//# sourceMappingURL=admin-ui.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"admin-ui.d.ts","sourceRoot":"","sources":["../src/admin-ui.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"admin-ui.d.ts","sourceRoot":"","sources":["../src/admin-ui.ts"],"names":[],"mappings":"AAAA,OAAO,gBAAgB,CAAA;AAEvB,cAAc,8BAA8B,CAAA;AAC5C,cAAc,uBAAuB,CAAA;AACrC,cAAc,wBAAwB,CAAA;AACtC,cAAc,uBAAuB,CAAA;AACrC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,wBAAwB,CAAA;AACtC,cAAc,sBAAsB,CAAA;AACpC,cAAc,0BAA0B,CAAA;AACxC,cAAc,6BAA6B,CAAA;AAC3C,cAAc,8BAA8B,CAAA;AAC5C,cAAc,4BAA4B,CAAA;AAC1C,cAAc,kCAAkC,CAAA;AAChD,cAAc,iCAAiC,CAAA;AAC/C,cAAc,wBAAwB,CAAA;AACtC,cAAc,+BAA+B,CAAA;AAC7C,cAAc,6BAA6B,CAAA;AAC3C,cAAc,4BAA4B,CAAA;AAC1C,cAAc,2BAA2B,CAAA;AACzC,cAAc,uBAAuB,CAAA;AACrC,cAAc,qBAAqB,CAAA;AACnC,cAAc,uBAAuB,CAAA;AACrC,cAAc,+BAA+B,CAAA;AAC7C,cAAc,8BAA8B,CAAA;AAC5C,cAAc,0BAA0B,CAAA;AACxC,cAAc,6BAA6B,CAAA;AAC3C,cAAc,6BAA6B,CAAA;AAC3C,cAAc,wBAAwB,CAAA;AACtC,cAAc,2BAA2B,CAAA;AACzC,cAAc,uBAAuB,CAAA;AACrC,cAAc,yBAAyB,CAAA;AACvC,cAAc,0BAA0B,CAAA;AACxC,cAAc,wBAAwB,CAAA;AACtC,cAAc,wBAAwB,CAAA;AACtC,cAAc,uBAAuB,CAAA;AACrC,cAAc,sBAAsB,CAAA;AACpC,cAAc,qBAAqB,CAAA;AACnC,cAAc,0BAA0B,CAAA;AACxC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,yBAAyB,CAAA;AAEvC,cAAc,uBAAuB,CAAA;AACrC,cAAc,uBAAuB,CAAA;AACrC,cAAc,uBAAuB,CAAA;AACrC,cAAc,6BAA6B,CAAA;AAC3C,cAAc,yBAAyB,CAAA;AACvC,cAAc,2BAA2B,CAAA;AACzC,cAAc,6BAA6B,CAAA;AAC3C,cAAc,6BAA6B,CAAA;AAC3C,cAAc,wBAAwB,CAAA;AACtC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,+BAA+B,CAAA;AAC7C,cAAc,sBAAsB,CAAA;AACpC,cAAc,2BAA2B,CAAA;AACzC,cAAc,gCAAgC,CAAA;AAC9C,cAAc,mBAAmB,CAAA;AACjC,cAAc,yBAAyB,CAAA;AACvC,cAAc,6BAA6B,CAAA;AAC3C,cAAc,gCAAgC,CAAA;AAC9C,cAAc,gCAAgC,CAAA;AAC9C,cAAc,mBAAmB,CAAA;AACjC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,6BAA6B,CAAA;AAC3C,cAAc,4BAA4B,CAAA;AAC1C,cAAc,2BAA2B,CAAA;AACzC,cAAc,oBAAoB,CAAA;AAClC,cAAc,kCAAkC,CAAA;AAChD,cAAc,4BAA4B,CAAA;AAC1C,cAAc,uBAAuB,CAAA;AACrC,cAAc,uBAAuB,CAAA;AACrC,cAAc,mBAAmB,CAAA;AACjC,cAAc,yBAAyB,CAAA;AAEvC,cAAc,uBAAuB,CAAA;AACrC,cAAc,wBAAwB,CAAA;AACtC,cAAc,oBAAoB,CAAA;AAClC,cAAc,yBAAyB,CAAA;AACvC,cAAc,2BAA2B,CAAA;AACzC,cAAc,qBAAqB,CAAA;AAEnC,YAAY,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAC5C,YAAY,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAC1C,OAAO,EAAE,eAAe,EAAE,KAAK,WAAW,EAAE,MAAM,0BAA0B,CAAA"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
/* empty css */
|
|
2
|
+
import { Button as e, buttonVariants as t } from "./components/ui/button.js";
|
|
3
|
+
import { AlertDialog as n, AlertDialogAction as r, AlertDialogCancel as i, AlertDialogContent as a, AlertDialogDescription as o, AlertDialogFooter as s, AlertDialogHeader as c, AlertDialogTitle as l, AlertDialogTrigger as u } from "./components/ui/alert-dialog.js";
|
|
4
|
+
import { AdminUiProvider as d } from "./lib/use-ui-translation.js";
|
|
5
|
+
import { Alert as f, alertVariants as p } from "./components/ui/alert.js";
|
|
6
|
+
import { Avatar as m } from "./components/ui/avatar.js";
|
|
7
|
+
import { Badge as h, badgeVariants as g } from "./components/ui/badge.js";
|
|
8
|
+
import { Breadcrumb as _, BreadcrumbEllipsis as v, BreadcrumbItem as y, BreadcrumbLink as b, BreadcrumbList as x, BreadcrumbPage as S, BreadcrumbSeparator as C } from "./components/ui/breadcrumb.js";
|
|
9
|
+
import { Card as w, CardAction as T, CardContent as E, CardDescription as D, CardFooter as O, CardHeader as k, CardTitle as A } from "./components/ui/card.js";
|
|
10
|
+
import { Checkbox as j } from "./components/ui/checkbox.js";
|
|
11
|
+
import { Collapsible as M, CollapsibleContent as N, CollapsibleTrigger as P } from "./components/ui/collapsible.js";
|
|
12
|
+
import { ContextMenu as F, ContextMenuContent as I, ContextMenuItem as L, ContextMenuLabel as R, ContextMenuSeparator as z, ContextMenuTrigger as B } from "./components/ui/context-menu.js";
|
|
13
|
+
import { TimeInput as V } from "./components/ui/time-input.js";
|
|
14
|
+
import { Input as H, inputBaseClass as U } from "./components/ui/input.js";
|
|
15
|
+
import { DateInput as W } from "./components/ui/date-input.js";
|
|
16
|
+
import { Label as G } from "./components/ui/label.js";
|
|
17
|
+
import { DateRangeInput as K } from "./components/ui/date-range-input.js";
|
|
18
|
+
import { DateTimeInput as q } from "./components/ui/date-time-input.js";
|
|
19
|
+
import { Dialog as J, DialogClose as Y, DialogContent as X, DialogDescription as Z, DialogFooter as Q, DialogHeader as $, DialogOverlay as ee, DialogPortal as te, DialogTitle as ne, DialogTrigger as re } from "./components/ui/dialog.js";
|
|
20
|
+
import { DropdownMenu as ie, DropdownMenuCheckboxItem as ae, DropdownMenuContent as oe, DropdownMenuGroup as se, DropdownMenuItem as ce, DropdownMenuLabel as le, DropdownMenuPortal as ue, DropdownMenuRadioGroup as de, DropdownMenuRadioItem as fe, DropdownMenuSeparator as pe, DropdownMenuShortcut as me, DropdownMenuSub as he, DropdownMenuSubContent as ge, DropdownMenuSubTrigger as _e, DropdownMenuTrigger as ve } from "./components/ui/dropdown-menu.js";
|
|
21
|
+
import { Progress as ye } from "./components/ui/progress.js";
|
|
22
|
+
import { FileUpload as be } from "./components/ui/file-upload.js";
|
|
23
|
+
import { HoverCard as xe, HoverCardContent as Se, HoverCardTrigger as Ce } from "./components/ui/hover-card.js";
|
|
24
|
+
import { InputOTP as we } from "./components/ui/input-otp.js";
|
|
25
|
+
import { Kbd as Te, KbdGroup as Ee } from "./components/ui/kbd.js";
|
|
26
|
+
import { NativeSelect as De, NativeSelectOptGroup as Oe, NativeSelectOption as ke } from "./components/ui/native-select.js";
|
|
27
|
+
import { NumberField as Ae } from "./components/ui/number-field.js";
|
|
28
|
+
import { RadioGroup as je, RadioGroupItem as Me } from "./components/ui/radio-group.js";
|
|
29
|
+
import { ScrollArea as Ne } from "./components/ui/scroll-area.js";
|
|
30
|
+
import { Select as Pe } from "./components/ui/select.js";
|
|
31
|
+
import { Separator as Fe } from "./components/ui/separator.js";
|
|
32
|
+
import { Sheet as Ie, SheetClose as Le, SheetContent as Re, SheetDescription as ze, SheetFooter as Be, SheetHeader as Ve, SheetTitle as He, SheetTrigger as Ue } from "./components/ui/sheet.js";
|
|
33
|
+
import { Skeleton as We } from "./components/ui/skeleton.js";
|
|
34
|
+
import { Tooltip as Ge, TooltipContent as Ke, TooltipProvider as qe, TooltipTrigger as Je } from "./components/ui/tooltip.js";
|
|
35
|
+
import { Sidebar as Ye, SidebarContent as Xe, SidebarFooter as Ze, SidebarGroup as Qe, SidebarGroupAction as $e, SidebarGroupContent as et, SidebarGroupLabel as tt, SidebarHeader as nt, SidebarInput as rt, SidebarInset as it, SidebarMenu as at, SidebarMenuAction as ot, SidebarMenuBadge as st, SidebarMenuButton as ct, SidebarMenuItem as lt, SidebarMenuSkeleton as ut, SidebarMenuSub as dt, SidebarMenuSubButton as ft, SidebarMenuSubItem as pt, SidebarProvider as mt, SidebarRail as ht, SidebarSeparator as gt, SidebarTrigger as _t, useSidebar as vt } from "./components/ui/sidebar.js";
|
|
36
|
+
import { Slider as yt } from "./components/ui/slider.js";
|
|
37
|
+
import { Switch as bt } from "./components/ui/switch.js";
|
|
38
|
+
import { Table as xt, TableBody as St, TableCaption as Ct, TableCell as wt, TableFooter as Tt, TableHead as Et, TableHeader as Dt, TableRow as Ot } from "./components/ui/table.js";
|
|
39
|
+
import { Tabs as kt, TabsContent as At, TabsList as jt, TabsTrigger as Mt, tabsListVariants as Nt } from "./components/ui/tabs.js";
|
|
40
|
+
import { Tag as Pt } from "./components/ui/tag.js";
|
|
41
|
+
import { Textarea as Ft } from "./components/ui/textarea.js";
|
|
42
|
+
import { Calendar as It } from "./components/calendar.js";
|
|
43
|
+
import { Cascader as Lt } from "./components/cascader.js";
|
|
44
|
+
import { Combobox as Rt } from "./components/combobox.js";
|
|
45
|
+
import { ConfirmDialog as zt } from "./components/confirm-dialog.js";
|
|
46
|
+
import { TableToolbar as Bt } from "./components/table-toolbar.js";
|
|
47
|
+
import { TableCellOverflow as Vt } from "./components/table-cell-overflow.js";
|
|
48
|
+
import { CopyValue as Ht, EmptyState as Ut, ErrorState as Wt, ForbiddenPage as Gt, LoadingState as Kt, NotFoundPage as qt, PageHeader as Jt } from "./components/page.js";
|
|
49
|
+
import { ColumnManager as Yt, DataTable as Xt } from "./components/data-table.js";
|
|
50
|
+
import { Descriptions as Zt } from "./components/descriptions.js";
|
|
51
|
+
import { EditableTable as Qt } from "./components/editable-table.js";
|
|
52
|
+
import { FilterPresets as $t } from "./components/filter-presets.js";
|
|
53
|
+
import { FixedBar as en } from "./components/fixed-bar.js";
|
|
54
|
+
import { ImagePreview as tn } from "./components/image-preview.js";
|
|
55
|
+
import { LayoutContainer as nn } from "./components/layout-container.js";
|
|
56
|
+
import { Mention as rn } from "./components/mention.js";
|
|
57
|
+
import { MultiSelect as an } from "./components/multi-select.js";
|
|
58
|
+
import { MultiStepLoader as on } from "./components/multi-step-loader.js";
|
|
59
|
+
import { PagePager as sn } from "./components/page-pager.js";
|
|
60
|
+
import { PaginationBar as cn } from "./components/pagination-bar.js";
|
|
61
|
+
import { CursorPagination as ln } from "./components/cursor-pagination.js";
|
|
62
|
+
import { PasswordStrength as un } from "./components/password-strength.js";
|
|
63
|
+
import { Rate as dn } from "./components/rate.js";
|
|
64
|
+
import { ResizablePanel as fn } from "./components/resizable-panel.js";
|
|
65
|
+
import { SearchActions as pn, SearchField as mn, SearchFilters as hn } from "./components/search-filters.js";
|
|
66
|
+
import { SortableList as gn } from "./components/sortable-list.js";
|
|
67
|
+
import { StatusBadge as _n } from "./components/status-badge.js";
|
|
68
|
+
import { Steps as vn } from "./components/steps.js";
|
|
69
|
+
import { Timeline as yn } from "./components/timeline.js";
|
|
70
|
+
import { Transfer as bn } from "./components/transfer.js";
|
|
71
|
+
import { Tree as xn } from "./components/tree.js";
|
|
72
|
+
import { TreeTable as Sn } from "./components/tree-table.js";
|
|
73
|
+
import { CountTo as Cn } from "./components/count-to.js";
|
|
74
|
+
import { Sparkline as wn } from "./components/sparkline.js";
|
|
75
|
+
import { Trend as Tn } from "./components/trend.js";
|
|
76
|
+
import { CodeBlock as En } from "./components/code-block.js";
|
|
77
|
+
import { ColumnChart as Dn } from "./components/column-chart.js";
|
|
78
|
+
import { BarList as On, DonutChart as kn, FunnelChart as An, GanttChart as jn, Heatmap as Mn, LineChart as Nn, MiniBars as Pn, RadarChart as Fn } from "./components/charts.js";
|
|
79
|
+
export { d as AdminUiProvider, f as Alert, n as AlertDialog, r as AlertDialogAction, i as AlertDialogCancel, a as AlertDialogContent, o as AlertDialogDescription, s as AlertDialogFooter, c as AlertDialogHeader, l as AlertDialogTitle, u as AlertDialogTrigger, m as Avatar, h as Badge, On as BarList, _ as Breadcrumb, v as BreadcrumbEllipsis, y as BreadcrumbItem, b as BreadcrumbLink, x as BreadcrumbList, S as BreadcrumbPage, C as BreadcrumbSeparator, e as Button, It as Calendar, w as Card, T as CardAction, E as CardContent, D as CardDescription, O as CardFooter, k as CardHeader, A as CardTitle, Lt as Cascader, j as Checkbox, En as CodeBlock, M as Collapsible, N as CollapsibleContent, P as CollapsibleTrigger, Dn as ColumnChart, Yt as ColumnManager, Rt as Combobox, zt as ConfirmDialog, F as ContextMenu, I as ContextMenuContent, L as ContextMenuItem, R as ContextMenuLabel, z as ContextMenuSeparator, B as ContextMenuTrigger, Ht as CopyValue, Cn as CountTo, ln as CursorPagination, Xt as DataTable, W as DateInput, K as DateRangeInput, q as DateTimeInput, Zt as Descriptions, J as Dialog, Y as DialogClose, X as DialogContent, Z as DialogDescription, Q as DialogFooter, $ as DialogHeader, ee as DialogOverlay, te as DialogPortal, ne as DialogTitle, re as DialogTrigger, kn as DonutChart, ie as DropdownMenu, ae as DropdownMenuCheckboxItem, oe as DropdownMenuContent, se as DropdownMenuGroup, ce as DropdownMenuItem, le as DropdownMenuLabel, ue as DropdownMenuPortal, de as DropdownMenuRadioGroup, fe as DropdownMenuRadioItem, pe as DropdownMenuSeparator, me as DropdownMenuShortcut, he as DropdownMenuSub, ge as DropdownMenuSubContent, _e as DropdownMenuSubTrigger, ve as DropdownMenuTrigger, Qt as EditableTable, Ut as EmptyState, Wt as ErrorState, be as FileUpload, $t as FilterPresets, en as FixedBar, Gt as ForbiddenPage, An as FunnelChart, jn as GanttChart, Mn as Heatmap, xe as HoverCard, Se as HoverCardContent, Ce as HoverCardTrigger, tn as ImagePreview, H as Input, we as InputOTP, Te as Kbd, Ee as KbdGroup, G as Label, nn as LayoutContainer, Nn as LineChart, Kt as LoadingState, rn as Mention, Pn as MiniBars, an as MultiSelect, on as MultiStepLoader, De as NativeSelect, Oe as NativeSelectOptGroup, ke as NativeSelectOption, qt as NotFoundPage, Ae as NumberField, Jt as PageHeader, sn as PagePager, cn as PaginationBar, un as PasswordStrength, ye as Progress, Fn as RadarChart, je as RadioGroup, Me as RadioGroupItem, dn as Rate, fn as ResizablePanel, Ne as ScrollArea, pn as SearchActions, mn as SearchField, hn as SearchFilters, Pe as Select, Fe as Separator, Ie as Sheet, Le as SheetClose, Re as SheetContent, ze as SheetDescription, Be as SheetFooter, Ve as SheetHeader, He as SheetTitle, Ue as SheetTrigger, Ye as Sidebar, Xe as SidebarContent, Ze as SidebarFooter, Qe as SidebarGroup, $e as SidebarGroupAction, et as SidebarGroupContent, tt as SidebarGroupLabel, nt as SidebarHeader, rt as SidebarInput, it as SidebarInset, at as SidebarMenu, ot as SidebarMenuAction, st as SidebarMenuBadge, ct as SidebarMenuButton, lt as SidebarMenuItem, ut as SidebarMenuSkeleton, dt as SidebarMenuSub, ft as SidebarMenuSubButton, pt as SidebarMenuSubItem, mt as SidebarProvider, ht as SidebarRail, gt as SidebarSeparator, _t as SidebarTrigger, We as Skeleton, yt as Slider, gn as SortableList, wn as Sparkline, _n as StatusBadge, vn as Steps, bt as Switch, xt as Table, St as TableBody, Ct as TableCaption, wt as TableCell, Vt as TableCellOverflow, Tt as TableFooter, Et as TableHead, Dt as TableHeader, Ot as TableRow, Bt as TableToolbar, kt as Tabs, At as TabsContent, jt as TabsList, Mt as TabsTrigger, Pt as Tag, Ft as Textarea, V as TimeInput, yn as Timeline, Ge as Tooltip, Ke as TooltipContent, qe as TooltipProvider, Je as TooltipTrigger, bn as Transfer, xn as Tree, Sn as TreeTable, Tn as Trend, p as alertVariants, g as badgeVariants, t as buttonVariants, U as inputBaseClass, Nt as tabsListVariants, vt as useSidebar };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const e=require("../lib/utils.cjs"),t=require("./ui/button.cjs"),n=require("../lib/range.cjs");let r=require("react"),i=require("lucide-react"),a=require("react/jsx-runtime");function o({value:o,onValueChange:s,locale:c=`zh-CN`,weekStartsOn:l=1,min:u,max:d,disabledDates:f,todayLabel:p=`今天`,className:m}){let h=o?new Date(`${o}T00:00:00`):new Date,[g,_]=(0,r.useState)(()=>new Date(h.getFullYear(),h.getMonth(),1)),v=n.monthGrid(g,l),y=(0,r.useMemo)(()=>new Intl.DateTimeFormat(c,{year:`numeric`,month:`long`}),[c]),b=(0,r.useMemo)(()=>{let e=new Date(2026,8,l===1?14:13);return Array.from({length:7},(t,n)=>{let r=new Date(e);return r.setDate(e.getDate()+n),new Intl.DateTimeFormat(c,{weekday:`short`}).format(r)})},[c,l]),x=n.dayKey(new Date);function S(e){_(t=>new Date(t.getFullYear(),t.getMonth()+e,1))}return(0,a.jsxs)(`section`,{className:e.cn(`w-full max-w-md rounded-xl border bg-card p-4`,m),"aria-label":`Calendar`,children:[(0,a.jsxs)(`header`,{className:`mb-3 flex items-center justify-between gap-2`,children:[(0,a.jsx)(t.Button,{type:`button`,size:`icon`,variant:`ghost`,onClick:()=>S(-1),"aria-label":`上个月`,children:(0,a.jsx)(i.ChevronLeft,{"aria-hidden":`true`})}),(0,a.jsx)(`h3`,{className:`font-medium`,children:y.format(g)}),(0,a.jsx)(t.Button,{type:`button`,size:`icon`,variant:`ghost`,onClick:()=>S(1),"aria-label":`下个月`,children:(0,a.jsx)(i.ChevronRight,{"aria-hidden":`true`})})]}),(0,a.jsx)(`div`,{className:`grid grid-cols-7 text-center text-xs text-muted-foreground`,children:b.map(e=>(0,a.jsx)(`span`,{className:`py-2`,children:e},e))}),(0,a.jsx)(`div`,{className:`grid grid-cols-7 gap-1`,children:v.map(t=>{let r=n.dayKey(t),i=t.getMonth()!==g.getMonth(),l=!!(u&&r<u||d&&r>d||f?.(t));return(0,a.jsx)(`button`,{type:`button`,disabled:l,"aria-label":new Intl.DateTimeFormat(c,{dateStyle:`full`}).format(t),"aria-current":r===x?`date`:void 0,"aria-pressed":r===o,className:e.cn(`aspect-square rounded-md text-sm hover:bg-accent focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring`,i&&`text-muted-foreground/50`,r===x&&`border border-primary`,r===o&&`bg-primary text-primary-foreground hover:bg-primary`,l&&`cursor-not-allowed opacity-30`),onClick:()=>{s?.(r),i&&_(new Date(t.getFullYear(),t.getMonth(),1))},children:t.getDate()},r)})}),(0,a.jsx)(t.Button,{type:`button`,variant:`ghost`,size:`sm`,className:`mt-3 w-full`,onClick:()=>{let e=new Date;_(new Date(e.getFullYear(),e.getMonth(),1)),s?.(x)},children:p})]})}exports.Calendar=o;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export type CalendarProps = {
|
|
2
|
+
value?: string;
|
|
3
|
+
onValueChange?: (value: string) => void;
|
|
4
|
+
locale?: string;
|
|
5
|
+
weekStartsOn?: 0 | 1;
|
|
6
|
+
min?: string;
|
|
7
|
+
max?: string;
|
|
8
|
+
disabledDates?: (date: Date) => boolean;
|
|
9
|
+
todayLabel?: string;
|
|
10
|
+
className?: string;
|
|
11
|
+
};
|
|
12
|
+
export declare function Calendar({ value, onValueChange, locale, weekStartsOn, min, max, disabledDates, todayLabel, className, }: CalendarProps): import("react").JSX.Element;
|
|
13
|
+
//# sourceMappingURL=calendar.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"calendar.d.ts","sourceRoot":"","sources":["../../src/components/calendar.tsx"],"names":[],"mappings":"AAMA,MAAM,MAAM,aAAa,GAAG;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IACvC,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,YAAY,CAAC,EAAE,CAAC,GAAG,CAAC,CAAA;IACpB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,CAAA;IACvC,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,wBAAgB,QAAQ,CAAC,EACvB,KAAK,EACL,aAAa,EACb,MAAgB,EAChB,YAAgB,EAChB,GAAG,EACH,GAAG,EACH,aAAa,EACb,UAAiB,EACjB,SAAS,GACV,EAAE,aAAa,+BAsGf"}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import { cn as e } from "../lib/utils.js";
|
|
2
|
+
import { Button as t } from "./ui/button.js";
|
|
3
|
+
import { dayKey as n, monthGrid as r } from "../lib/range.js";
|
|
4
|
+
import { useMemo as i, useState as a } from "react";
|
|
5
|
+
import { ChevronLeft as o, ChevronRight as s } from "lucide-react";
|
|
6
|
+
import { jsx as c, jsxs as l } from "react/jsx-runtime";
|
|
7
|
+
//#region src/components/calendar.tsx
|
|
8
|
+
function u({ value: u, onValueChange: d, locale: f = "zh-CN", weekStartsOn: p = 1, min: m, max: h, disabledDates: g, todayLabel: _ = "今天", className: v }) {
|
|
9
|
+
let y = u ? /* @__PURE__ */ new Date(`${u}T00:00:00`) : /* @__PURE__ */ new Date(), [b, x] = a(() => new Date(y.getFullYear(), y.getMonth(), 1)), S = r(b, p), C = i(() => new Intl.DateTimeFormat(f, {
|
|
10
|
+
year: "numeric",
|
|
11
|
+
month: "long"
|
|
12
|
+
}), [f]), w = i(() => {
|
|
13
|
+
let e = new Date(2026, 8, p === 1 ? 14 : 13);
|
|
14
|
+
return Array.from({ length: 7 }, (t, n) => {
|
|
15
|
+
let r = new Date(e);
|
|
16
|
+
return r.setDate(e.getDate() + n), new Intl.DateTimeFormat(f, { weekday: "short" }).format(r);
|
|
17
|
+
});
|
|
18
|
+
}, [f, p]), T = n(/* @__PURE__ */ new Date());
|
|
19
|
+
function E(e) {
|
|
20
|
+
x((t) => new Date(t.getFullYear(), t.getMonth() + e, 1));
|
|
21
|
+
}
|
|
22
|
+
return /* @__PURE__ */ l("section", {
|
|
23
|
+
className: e("w-full max-w-md rounded-xl border bg-card p-4", v),
|
|
24
|
+
"aria-label": "Calendar",
|
|
25
|
+
children: [
|
|
26
|
+
/* @__PURE__ */ l("header", {
|
|
27
|
+
className: "mb-3 flex items-center justify-between gap-2",
|
|
28
|
+
children: [
|
|
29
|
+
/* @__PURE__ */ c(t, {
|
|
30
|
+
type: "button",
|
|
31
|
+
size: "icon",
|
|
32
|
+
variant: "ghost",
|
|
33
|
+
onClick: () => E(-1),
|
|
34
|
+
"aria-label": "上个月",
|
|
35
|
+
children: /* @__PURE__ */ c(o, { "aria-hidden": "true" })
|
|
36
|
+
}),
|
|
37
|
+
/* @__PURE__ */ c("h3", {
|
|
38
|
+
className: "font-medium",
|
|
39
|
+
children: C.format(b)
|
|
40
|
+
}),
|
|
41
|
+
/* @__PURE__ */ c(t, {
|
|
42
|
+
type: "button",
|
|
43
|
+
size: "icon",
|
|
44
|
+
variant: "ghost",
|
|
45
|
+
onClick: () => E(1),
|
|
46
|
+
"aria-label": "下个月",
|
|
47
|
+
children: /* @__PURE__ */ c(s, { "aria-hidden": "true" })
|
|
48
|
+
})
|
|
49
|
+
]
|
|
50
|
+
}),
|
|
51
|
+
/* @__PURE__ */ c("div", {
|
|
52
|
+
className: "grid grid-cols-7 text-center text-xs text-muted-foreground",
|
|
53
|
+
children: w.map((e) => /* @__PURE__ */ c("span", {
|
|
54
|
+
className: "py-2",
|
|
55
|
+
children: e
|
|
56
|
+
}, e))
|
|
57
|
+
}),
|
|
58
|
+
/* @__PURE__ */ c("div", {
|
|
59
|
+
className: "grid grid-cols-7 gap-1",
|
|
60
|
+
children: S.map((t) => {
|
|
61
|
+
let r = n(t), i = t.getMonth() !== b.getMonth(), a = !!(m && r < m || h && r > h || g?.(t));
|
|
62
|
+
return /* @__PURE__ */ c("button", {
|
|
63
|
+
type: "button",
|
|
64
|
+
disabled: a,
|
|
65
|
+
"aria-label": new Intl.DateTimeFormat(f, { dateStyle: "full" }).format(t),
|
|
66
|
+
"aria-current": r === T ? "date" : void 0,
|
|
67
|
+
"aria-pressed": r === u,
|
|
68
|
+
className: e("aspect-square rounded-md text-sm hover:bg-accent focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring", i && "text-muted-foreground/50", r === T && "border border-primary", r === u && "bg-primary text-primary-foreground hover:bg-primary", a && "cursor-not-allowed opacity-30"),
|
|
69
|
+
onClick: () => {
|
|
70
|
+
d?.(r), i && x(new Date(t.getFullYear(), t.getMonth(), 1));
|
|
71
|
+
},
|
|
72
|
+
children: t.getDate()
|
|
73
|
+
}, r);
|
|
74
|
+
})
|
|
75
|
+
}),
|
|
76
|
+
/* @__PURE__ */ c(t, {
|
|
77
|
+
type: "button",
|
|
78
|
+
variant: "ghost",
|
|
79
|
+
size: "sm",
|
|
80
|
+
className: "mt-3 w-full",
|
|
81
|
+
onClick: () => {
|
|
82
|
+
let e = /* @__PURE__ */ new Date();
|
|
83
|
+
x(new Date(e.getFullYear(), e.getMonth(), 1)), d?.(T);
|
|
84
|
+
},
|
|
85
|
+
children: _
|
|
86
|
+
})
|
|
87
|
+
]
|
|
88
|
+
});
|
|
89
|
+
}
|
|
90
|
+
//#endregion
|
|
91
|
+
export { u as Calendar };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const e=require("../lib/utils.cjs"),t=require("./ui/button.cjs"),n=require("../lib/use-ui-translation.cjs");let r=require("react"),i=require("radix-ui"),a=require("lucide-react"),o=require("react/jsx-runtime");function s({options:s,value:c,onValueChange:l,label:u,placeholder:d,className:f}){let{t:p}=n.useUiTranslation(),[m,h]=(0,r.useState)(!1),[g,_]=(0,r.useState)([]),v=(0,r.useMemo)(()=>{let e=[s],t=s;for(let n of g){if(t=n.children??[],!t.length)break;e.push(t)}return e},[s,g]),y=(0,r.useMemo)(()=>{if(!c)return[];let e=(t,n)=>{for(let r of t){let t=[...n,r];if(r.value===c)return t;let i=r.children?e(r.children,t):void 0;if(i)return i}};return e(s,[])??[]},[s,c]).map(e=>e.label).join(` / `);return(0,o.jsxs)(i.Popover.Root,{open:m,onOpenChange:e=>{h(e),e||_([])},children:[(0,o.jsx)(i.Popover.Trigger,{asChild:!0,children:(0,o.jsxs)(t.Button,{type:`button`,variant:`outline`,role:`combobox`,"aria-expanded":m,"aria-label":u,className:e.cn(`w-full justify-between bg-card font-normal`,f),children:[(0,o.jsx)(`span`,{className:e.cn(`truncate`,!y&&`text-muted-foreground`),children:y||d||p(`search`)}),(0,o.jsx)(a.ChevronDown,{"aria-hidden":`true`,className:`size-4 shrink-0 opacity-60`})]})}),(0,o.jsx)(i.Popover.Portal,{children:(0,o.jsx)(i.Popover.Content,{align:`start`,sideOffset:4,className:`z-50 flex overflow-hidden rounded-lg border bg-popover p-1 shadow-lg outline-none`,children:v.map((t,n)=>(0,o.jsx)(`div`,{role:`listbox`,"aria-label":u,className:`max-h-64 w-48 overflow-y-auto border-r p-1 last:border-r-0`,children:t.map(t=>{let r=g[n]?.value===t.value,i=!t.children?.length;return(0,o.jsxs)(`button`,{type:`button`,role:`option`,"aria-selected":r,disabled:t.disabled,onClick:()=>{let e=[...g.slice(0,n),t];i?(_(e),l(t.value,e),h(!1)):_(e)},className:e.cn(`flex w-full items-center gap-1 rounded-md px-2 py-1.5 text-left text-sm`,`hover:bg-accent hover:text-accent-foreground disabled:pointer-events-none disabled:opacity-50`,r&&`bg-accent text-accent-foreground`),children:[(0,o.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:t.label}),i?(0,o.jsx)(a.Check,{"aria-hidden":`true`,className:`size-3.5 shrink-0 opacity-60`}):(0,o.jsx)(a.ChevronRight,{"aria-hidden":`true`,className:`size-3.5 shrink-0 opacity-60`})]},t.value)})},n))})})]})}exports.Cascader=s;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
export type CascaderOption = {
|
|
2
|
+
value: string;
|
|
3
|
+
label: string;
|
|
4
|
+
disabled?: boolean;
|
|
5
|
+
children?: CascaderOption[];
|
|
6
|
+
};
|
|
7
|
+
/**
|
|
8
|
+
* 级联选择:多列并排逐级下钻,选中叶子后回填完整路径。
|
|
9
|
+
*/
|
|
10
|
+
export declare function Cascader({ options, value, onValueChange, label, placeholder, className, }: {
|
|
11
|
+
options: CascaderOption[];
|
|
12
|
+
/** 叶子节点的 value。 */
|
|
13
|
+
value?: string;
|
|
14
|
+
onValueChange: (value: string | undefined, path: CascaderOption[]) => void;
|
|
15
|
+
label: string;
|
|
16
|
+
placeholder?: string;
|
|
17
|
+
className?: string;
|
|
18
|
+
}): import("react").JSX.Element;
|
|
19
|
+
//# sourceMappingURL=cascader.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cascader.d.ts","sourceRoot":"","sources":["../../src/components/cascader.tsx"],"names":[],"mappings":"AAOA,MAAM,MAAM,cAAc,GAAG;IAC3B,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,QAAQ,CAAC,EAAE,cAAc,EAAE,CAAA;CAC5B,CAAA;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,EACvB,OAAO,EACP,KAAK,EACL,aAAa,EACb,KAAK,EACL,WAAW,EACX,SAAS,GACV,EAAE;IACD,OAAO,EAAE,cAAc,EAAE,CAAA;IACzB,mBAAmB;IACnB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,aAAa,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,IAAI,CAAA;IAC1E,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,+BA4GA"}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import { cn as e } from "../lib/utils.js";
|
|
2
|
+
import { Button as t } from "./ui/button.js";
|
|
3
|
+
import { useUiTranslation as n } from "../lib/use-ui-translation.js";
|
|
4
|
+
import { useMemo as r, useState as i } from "react";
|
|
5
|
+
import { Popover as a } from "radix-ui";
|
|
6
|
+
import { Check as o, ChevronDown as s, ChevronRight as c } from "lucide-react";
|
|
7
|
+
import { jsx as l, jsxs as u } from "react/jsx-runtime";
|
|
8
|
+
//#region src/components/cascader.tsx
|
|
9
|
+
function d({ options: d, value: f, onValueChange: p, label: m, placeholder: h, className: g }) {
|
|
10
|
+
let { t: _ } = n(), [v, y] = i(!1), [b, x] = i([]), S = r(() => {
|
|
11
|
+
let e = [d], t = d;
|
|
12
|
+
for (let n of b) {
|
|
13
|
+
if (t = n.children ?? [], !t.length) break;
|
|
14
|
+
e.push(t);
|
|
15
|
+
}
|
|
16
|
+
return e;
|
|
17
|
+
}, [d, b]), C = r(() => {
|
|
18
|
+
if (!f) return [];
|
|
19
|
+
let e = (t, n) => {
|
|
20
|
+
for (let r of t) {
|
|
21
|
+
let t = [...n, r];
|
|
22
|
+
if (r.value === f) return t;
|
|
23
|
+
let i = r.children ? e(r.children, t) : void 0;
|
|
24
|
+
if (i) return i;
|
|
25
|
+
}
|
|
26
|
+
};
|
|
27
|
+
return e(d, []) ?? [];
|
|
28
|
+
}, [d, f]).map((e) => e.label).join(" / ");
|
|
29
|
+
return /* @__PURE__ */ u(a.Root, {
|
|
30
|
+
open: v,
|
|
31
|
+
onOpenChange: (e) => {
|
|
32
|
+
y(e), e || x([]);
|
|
33
|
+
},
|
|
34
|
+
children: [/* @__PURE__ */ l(a.Trigger, {
|
|
35
|
+
asChild: !0,
|
|
36
|
+
children: /* @__PURE__ */ u(t, {
|
|
37
|
+
type: "button",
|
|
38
|
+
variant: "outline",
|
|
39
|
+
role: "combobox",
|
|
40
|
+
"aria-expanded": v,
|
|
41
|
+
"aria-label": m,
|
|
42
|
+
className: e("w-full justify-between bg-card font-normal", g),
|
|
43
|
+
children: [/* @__PURE__ */ l("span", {
|
|
44
|
+
className: e("truncate", !C && "text-muted-foreground"),
|
|
45
|
+
children: C || h || _("search")
|
|
46
|
+
}), /* @__PURE__ */ l(s, {
|
|
47
|
+
"aria-hidden": "true",
|
|
48
|
+
className: "size-4 shrink-0 opacity-60"
|
|
49
|
+
})]
|
|
50
|
+
})
|
|
51
|
+
}), /* @__PURE__ */ l(a.Portal, { children: /* @__PURE__ */ l(a.Content, {
|
|
52
|
+
align: "start",
|
|
53
|
+
sideOffset: 4,
|
|
54
|
+
className: "z-50 flex overflow-hidden rounded-lg border bg-popover p-1 shadow-lg outline-none",
|
|
55
|
+
children: S.map((t, n) => /* @__PURE__ */ l("div", {
|
|
56
|
+
role: "listbox",
|
|
57
|
+
"aria-label": m,
|
|
58
|
+
className: "max-h-64 w-48 overflow-y-auto border-r p-1 last:border-r-0",
|
|
59
|
+
children: t.map((t) => {
|
|
60
|
+
let r = b[n]?.value === t.value, i = !t.children?.length;
|
|
61
|
+
return /* @__PURE__ */ u("button", {
|
|
62
|
+
type: "button",
|
|
63
|
+
role: "option",
|
|
64
|
+
"aria-selected": r,
|
|
65
|
+
disabled: t.disabled,
|
|
66
|
+
onClick: () => {
|
|
67
|
+
let e = [...b.slice(0, n), t];
|
|
68
|
+
i ? (x(e), p(t.value, e), y(!1)) : x(e);
|
|
69
|
+
},
|
|
70
|
+
className: e("flex w-full items-center gap-1 rounded-md px-2 py-1.5 text-left text-sm", "hover:bg-accent hover:text-accent-foreground disabled:pointer-events-none disabled:opacity-50", r && "bg-accent text-accent-foreground"),
|
|
71
|
+
children: [/* @__PURE__ */ l("span", {
|
|
72
|
+
className: "min-w-0 flex-1 truncate",
|
|
73
|
+
children: t.label
|
|
74
|
+
}), l(i ? o : c, {
|
|
75
|
+
"aria-hidden": "true",
|
|
76
|
+
className: "size-3.5 shrink-0 opacity-60"
|
|
77
|
+
})]
|
|
78
|
+
}, t.value);
|
|
79
|
+
})
|
|
80
|
+
}, n))
|
|
81
|
+
}) })]
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
//#endregion
|
|
85
|
+
export { d as Cascader };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const e=require("../lib/utils.cjs"),t=require("../lib/metrics.cjs");let n=require("react"),r=require("react/jsx-runtime");function i({values:t,label:n,height:i=32,className:a}){let o=Math.max(...t,1);return(0,r.jsx)(`svg`,{role:`img`,"aria-label":n,viewBox:`0 0 ${t.length*4} ${i}`,className:e.cn(`w-full`,a),style:{height:i},children:t.map((e,t)=>{let n=e/o*(i-2);return(0,r.jsx)(`rect`,{x:t*4,y:i-n,width:2.6,height:n,rx:1,fill:`var(--primary)`,opacity:.35+e/o*.65},t)})})}function a({value:e,max:t=100,label:n,size:i=96,tone:a=`var(--primary)`}){let o=t>0?Math.min(100,Math.max(0,e/t*100)):0,s=i/2-8,c=2*Math.PI*s;return(0,r.jsxs)(`div`,{className:`relative inline-flex items-center justify-center`,style:{width:i,height:i},children:[(0,r.jsxs)(`svg`,{role:`img`,"aria-label":n,width:i,height:i,className:`-rotate-90`,children:[(0,r.jsx)(`circle`,{cx:i/2,cy:i/2,r:s,fill:`none`,stroke:`var(--border)`,strokeWidth:8}),(0,r.jsx)(`circle`,{cx:i/2,cy:i/2,r:s,fill:`none`,stroke:a,strokeWidth:8,strokeLinecap:`round`,strokeDasharray:c,strokeDashoffset:c*(1-o/100),className:`transition-[stroke-dashoffset] duration-500`})]}),(0,r.jsxs)(`span`,{className:`absolute text-sm font-semibold tabular-nums`,children:[Math.round(o),`%`]})]})}function o({series:i,labels:a,height:o=160,className:s}){let c=(0,n.useId)(),[l,u]=(0,n.useState)(),d=i.flatMap(e=>e.values),f=Math.max(...d,1),p=Math.min(...d,0),m=e=>o-16-(e-p)/(f-p||1)*(o-32);return(0,r.jsxs)(`div`,{className:e.cn(`space-y-2`,s),children:[(0,r.jsxs)(`svg`,{role:`img`,"aria-label":i.map(e=>e.name).join(` / `),viewBox:`0 0 480 ${o}`,className:`w-full`,style:{height:o},onMouseLeave:()=>u(void 0),children:[(0,r.jsx)(`defs`,{children:(0,r.jsxs)(`linearGradient`,{id:c,x1:`0`,y1:`0`,x2:`0`,y2:`1`,children:[(0,r.jsx)(`stop`,{offset:`0%`,stopColor:`var(--primary)`,stopOpacity:`0.25`}),(0,r.jsx)(`stop`,{offset:`100%`,stopColor:`var(--primary)`,stopOpacity:`0`})]})}),[0,1,2,3].map(e=>(0,r.jsx)(`line`,{x1:0,x2:480,y1:16+e*(o-32)/3,y2:16+e*(o-32)/3,stroke:`var(--border)`,strokeDasharray:`2 6`},e)),i.map((e,n)=>{let i=e.values.map((t,n)=>({x:n/Math.max(1,e.values.length-1)*480,y:m(t)}));return(0,r.jsxs)(`g`,{children:[n===0&&(0,r.jsx)(`path`,{d:`${t.sparklinePath(i,!0)} L480 ${o} L0 ${o} Z`,fill:`url(#${c})`}),(0,r.jsx)(`path`,{d:t.sparklinePath(i,!0),fill:`none`,stroke:e.tone??(n===0?`var(--primary)`:`var(--info)`),strokeWidth:2,strokeLinecap:`round`}),i.map((t,i)=>(0,r.jsx)(`circle`,{cx:t.x,cy:t.y,r:l===i?4:2.5,fill:e.tone??(n===0?`var(--primary)`:`var(--info)`)},i))]},e.name)}),a.map((e,t)=>(0,r.jsxs)(`g`,{children:[(0,r.jsx)(`rect`,{x:t/Math.max(1,a.length-1)*480-16,y:0,width:32,height:o,fill:`transparent`,onMouseEnter:()=>u(t)}),(0,r.jsx)(`text`,{x:t/Math.max(1,a.length-1)*480,y:o-2,textAnchor:`middle`,className:`fill-muted-foreground text-[10px]`,children:e})]},e))]}),(0,r.jsx)(`ul`,{className:`flex flex-wrap items-center gap-3 text-xs text-muted-foreground`,children:i.map((e,t)=>(0,r.jsxs)(`li`,{className:`flex items-center gap-1.5`,children:[(0,r.jsx)(`span`,{"aria-hidden":`true`,className:`size-2 rounded-full`,style:{background:e.tone??(t===0?`var(--primary)`:`var(--info)`)}}),e.name,l!==void 0&&(0,r.jsx)(`span`,{className:`tabular-nums text-foreground`,children:e.values[l]?.toLocaleString(`zh-CN`)})]},e.name))})]})}function s({items:t,label:n,className:i}){let a=Math.max(...t.map(e=>e.value),1);return(0,r.jsx)(`ul`,{"aria-label":n,className:e.cn(`space-y-3`,i),children:t.map(e=>(0,r.jsxs)(`li`,{className:`space-y-1`,children:[(0,r.jsxs)(`div`,{className:`flex items-center justify-between text-sm`,children:[(0,r.jsx)(`span`,{className:`truncate`,children:e.name}),(0,r.jsx)(`span`,{className:`tabular-nums text-muted-foreground`,children:e.value.toLocaleString(`zh-CN`)})]}),(0,r.jsx)(`div`,{className:`h-2 overflow-hidden rounded-full bg-muted`,children:(0,r.jsx)(`div`,{className:`h-full rounded-full bg-primary/70`,style:{width:`${e.value/a*100}%`}})})]},e.name))})}function c({rows:t,columns:n,values:i,label:a,className:o}){return(0,r.jsx)(`div`,{className:e.cn(`overflow-x-auto`,o),children:(0,r.jsxs)(`table`,{"aria-label":a,className:`w-full border-separate border-spacing-1 text-xs`,children:[(0,r.jsx)(`thead`,{children:(0,r.jsxs)(`tr`,{children:[(0,r.jsx)(`th`,{}),n.map(e=>(0,r.jsx)(`th`,{className:`font-normal text-muted-foreground`,children:e},e))]})}),(0,r.jsx)(`tbody`,{children:t.map((e,t)=>(0,r.jsxs)(`tr`,{children:[(0,r.jsx)(`th`,{scope:`row`,className:`pr-2 text-right font-normal text-muted-foreground`,children:e}),n.map((n,a)=>{let o=i[t]?.[a]??0;return(0,r.jsx)(`td`,{children:(0,r.jsx)(`span`,{title:`${e} ${n} · ${Math.round(o*100)}%`,className:`block h-6 rounded`,style:{background:o===0?`var(--muted)`:`color-mix(in oklab, var(--primary) ${Math.round(o*100)}%, transparent)`}})},n)})]},e))})]})})}function l({axes:t,series:n,size:i=220,className:a}){let o=i/2,s=o-34,c=(e,n)=>{let r=Math.PI*2*e/t.length-Math.PI/2;return[o+Math.cos(r)*s*n,o+Math.sin(r)*s*n]};return(0,r.jsxs)(`div`,{className:e.cn(`flex flex-wrap items-center gap-4`,a),children:[(0,r.jsxs)(`svg`,{role:`img`,"aria-label":n.map(e=>e.name).join(` / `),width:i,height:i,children:[[.25,.5,.75,1].map(e=>(0,r.jsx)(`polygon`,{points:t.map((t,n)=>c(n,e).join(`,`)).join(` `),fill:`none`,stroke:`var(--border)`},e)),t.map((e,t)=>{let[n,i]=c(t,1),[a,s]=c(t,1.16);return(0,r.jsxs)(`g`,{children:[(0,r.jsx)(`line`,{x1:o,y1:o,x2:n,y2:i,stroke:`var(--border)`}),(0,r.jsx)(`text`,{x:a,y:s,textAnchor:`middle`,dominantBaseline:`middle`,className:`fill-muted-foreground text-[10px]`,children:e})]},e)}),n.map((e,t)=>{let n=e.tone??(t===0?`var(--primary)`:`var(--info)`);return(0,r.jsx)(`polygon`,{points:e.values.map((e,t)=>c(t,e).join(`,`)).join(` `),fill:`color-mix(in oklab, ${n} 18%, transparent)`,stroke:n,strokeWidth:2},e.name)})]}),(0,r.jsx)(`ul`,{className:`space-y-1 text-xs text-muted-foreground`,children:n.map((e,t)=>(0,r.jsxs)(`li`,{className:`flex items-center gap-2`,children:[(0,r.jsx)(`span`,{"aria-hidden":`true`,className:`size-2 rounded-full`,style:{background:e.tone??(t===0?`var(--primary)`:`var(--info)`)}}),e.name]},e.name))})]})}function u({stages:t,className:n}){let i=Math.max(...t.map(e=>e.value),1);return(0,r.jsx)(`ul`,{"aria-label":`转化漏斗`,className:e.cn(`space-y-2`,n),children:t.map((e,n)=>{let a=e.value/i*100,o=t[n-1]?.value,s=o?Math.round(e.value/o*100):100;return(0,r.jsxs)(`li`,{className:`flex items-center gap-3`,children:[(0,r.jsx)(`span`,{className:`w-20 shrink-0 truncate text-xs text-muted-foreground`,children:e.name}),(0,r.jsx)(`span`,{className:`min-w-0 flex-1`,children:(0,r.jsx)(`span`,{className:`flex h-7 items-center justify-end rounded bg-primary/70 pr-2 text-xs font-medium text-primary-foreground`,style:{width:`${Math.max(a,6)}%`},children:e.value.toLocaleString(`zh-CN`)})}),(0,r.jsx)(`span`,{className:`w-12 shrink-0 text-right text-xs tabular-nums text-muted-foreground`,children:n===0?`—`:`${s}%`})]},e.name)})})}function d({rows:t,days:n,today:i,className:a}){let o=n.length*40;return(0,r.jsx)(`div`,{className:e.cn(`overflow-x-auto`,a),children:(0,r.jsxs)(`div`,{className:`min-w-max`,children:[(0,r.jsxs)(`div`,{className:`flex text-[10px] text-muted-foreground`,children:[(0,r.jsx)(`span`,{className:`w-28 shrink-0`}),(0,r.jsx)(`div`,{className:`relative`,style:{width:o},children:n.map((e,t)=>(0,r.jsx)(`span`,{className:`absolute -translate-x-1/2 text-center`,style:{left:t*40+20},children:e},e))})]}),(0,r.jsx)(`ul`,{"aria-label":`任务排期`,className:`mt-3 space-y-2`,children:t.map(e=>(0,r.jsxs)(`li`,{className:`flex items-center`,children:[(0,r.jsx)(`span`,{className:`w-28 shrink-0 truncate pr-2 text-xs`,children:e.name}),(0,r.jsxs)(`div`,{className:`relative h-6`,style:{width:o},children:[n.map((e,t)=>(0,r.jsx)(`span`,{"aria-hidden":`true`,className:`absolute inset-y-0 border-l border-border/60`,style:{left:t*40}},e)),(0,r.jsx)(`span`,{className:`absolute top-1 h-4 rounded`,style:{left:e.start*40+2,width:Math.max(e.span*40-4,8),background:`color-mix(in oklab, ${e.tone??`var(--primary)`} 35%, transparent)`},children:(0,r.jsx)(`span`,{className:`block h-full rounded`,style:{width:`${e.progress??100}%`,background:e.tone??`var(--primary)`}})}),i!==void 0&&i>=0&&i<n.length&&(0,r.jsx)(`span`,{"aria-hidden":`true`,className:`absolute inset-y-0 w-px bg-danger`,style:{left:i*40+20}})]})]},e.name))})]})})}exports.BarList=s,exports.DonutChart=a,exports.FunnelChart=u,exports.GanttChart=d,exports.Heatmap=c,exports.LineChart=o,exports.MiniBars=i,exports.RadarChart=l;
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
/** 迷你柱状图:适合指标卡里的分布对比,纯 SVG 自绘。 */
|
|
2
|
+
export declare function MiniBars({ values, label, height, className, }: {
|
|
3
|
+
values: number[];
|
|
4
|
+
label: string;
|
|
5
|
+
height?: number;
|
|
6
|
+
className?: string;
|
|
7
|
+
}): import("react").JSX.Element;
|
|
8
|
+
/** 环形进度:额度、完成率这类单个百分比,比线性进度条更醒目。 */
|
|
9
|
+
export declare function DonutChart({ value, max, label, size, tone, }: {
|
|
10
|
+
value: number;
|
|
11
|
+
max?: number;
|
|
12
|
+
label: string;
|
|
13
|
+
size?: number;
|
|
14
|
+
tone?: string;
|
|
15
|
+
}): import("react").JSX.Element;
|
|
16
|
+
/** 对比折线图:多条序列共用坐标轴,悬停显示数值。 */
|
|
17
|
+
export declare function LineChart({ series, labels, height, className, }: {
|
|
18
|
+
series: {
|
|
19
|
+
name: string;
|
|
20
|
+
values: number[];
|
|
21
|
+
tone?: string;
|
|
22
|
+
}[];
|
|
23
|
+
labels: string[];
|
|
24
|
+
height?: number;
|
|
25
|
+
className?: string;
|
|
26
|
+
}): import("react").JSX.Element;
|
|
27
|
+
/** 横向条形对比:类别不多时比折线更直观。 */
|
|
28
|
+
export declare function BarList({ items, label, className, }: {
|
|
29
|
+
items: {
|
|
30
|
+
name: string;
|
|
31
|
+
value: number;
|
|
32
|
+
}[];
|
|
33
|
+
label: string;
|
|
34
|
+
className?: string;
|
|
35
|
+
}): import("react").JSX.Element;
|
|
36
|
+
/** 热力小格:按周 × 时段展示分布,比表格更快看出高峰。 */
|
|
37
|
+
export declare function Heatmap({ rows, columns, values, label, className, }: {
|
|
38
|
+
rows: string[];
|
|
39
|
+
columns: string[];
|
|
40
|
+
/** values[row][column],取值 0–1。 */
|
|
41
|
+
values: number[][];
|
|
42
|
+
label: string;
|
|
43
|
+
className?: string;
|
|
44
|
+
}): import("react").JSX.Element;
|
|
45
|
+
/** 雷达图:多维度评分对比,适合能力/健康度画像。 */
|
|
46
|
+
export declare function RadarChart({ axes, series, size, className, }: {
|
|
47
|
+
/** 维度名称,各序列按同一顺序给值(0–1)。 */
|
|
48
|
+
axes: string[];
|
|
49
|
+
series: {
|
|
50
|
+
name: string;
|
|
51
|
+
values: number[];
|
|
52
|
+
tone?: string;
|
|
53
|
+
}[];
|
|
54
|
+
size?: number;
|
|
55
|
+
className?: string;
|
|
56
|
+
}): import("react").JSX.Element;
|
|
57
|
+
/** 漏斗图:各阶段数量与转化率,最后一列展示阶段间转化。 */
|
|
58
|
+
export declare function FunnelChart({ stages, className, }: {
|
|
59
|
+
stages: {
|
|
60
|
+
name: string;
|
|
61
|
+
value: number;
|
|
62
|
+
}[];
|
|
63
|
+
className?: string;
|
|
64
|
+
}): import("react").JSX.Element;
|
|
65
|
+
/** 甘特图:任务条按天排布,支持进度与今日标线。 */
|
|
66
|
+
export declare function GanttChart({ rows, days, today, className, }: {
|
|
67
|
+
rows: {
|
|
68
|
+
name: string;
|
|
69
|
+
start: number;
|
|
70
|
+
span: number;
|
|
71
|
+
progress?: number;
|
|
72
|
+
tone?: string;
|
|
73
|
+
}[];
|
|
74
|
+
/** 时间轴刻度,通常是日期或"第 N 天"。 */
|
|
75
|
+
days: string[];
|
|
76
|
+
/** 今日对应的列下标,传入后画一条竖线。 */
|
|
77
|
+
today?: number;
|
|
78
|
+
className?: string;
|
|
79
|
+
}): import("react").JSX.Element;
|
|
80
|
+
//# sourceMappingURL=charts.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"charts.d.ts","sourceRoot":"","sources":["../../src/components/charts.tsx"],"names":[],"mappings":"AAIA,kCAAkC;AAClC,wBAAgB,QAAQ,CAAC,EACvB,MAAM,EACN,KAAK,EACL,MAAW,EACX,SAAS,GACV,EAAE;IACD,MAAM,EAAE,MAAM,EAAE,CAAA;IAChB,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,+BA2BA;AAED,oCAAoC;AACpC,wBAAgB,UAAU,CAAC,EACzB,KAAK,EACL,GAAS,EACT,KAAK,EACL,IAAS,EACT,IAAuB,GACxB,EAAE;IACD,KAAK,EAAE,MAAM,CAAA;IACb,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;CACd,+BAkCA;AAED,8BAA8B;AAC9B,wBAAgB,SAAS,CAAC,EACxB,MAAM,EACN,MAAM,EACN,MAAY,EACZ,SAAS,GACV,EAAE;IACD,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,EAAE,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;IAC3D,MAAM,EAAE,MAAM,EAAE,CAAA;IAChB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,+BA2GA;AAED,0BAA0B;AAC1B,wBAAgB,OAAO,CAAC,EACtB,KAAK,EACL,KAAK,EACL,SAAS,GACV,EAAE;IACD,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;IACxC,KAAK,EAAE,MAAM,CAAA;IACb,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,+BAsBA;AAED,kCAAkC;AAClC,wBAAgB,OAAO,CAAC,EACtB,IAAI,EACJ,OAAO,EACP,MAAM,EACN,KAAK,EACL,SAAS,GACV,EAAE;IACD,IAAI,EAAE,MAAM,EAAE,CAAA;IACd,OAAO,EAAE,MAAM,EAAE,CAAA;IACjB,kCAAkC;IAClC,MAAM,EAAE,MAAM,EAAE,EAAE,CAAA;IAClB,KAAK,EAAE,MAAM,CAAA;IACb,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,+BA2CA;AAED,8BAA8B;AAC9B,wBAAgB,UAAU,CAAC,EACzB,IAAI,EACJ,MAAM,EACN,IAAU,EACV,SAAS,GACV,EAAE;IACD,4BAA4B;IAC5B,IAAI,EAAE,MAAM,EAAE,CAAA;IACd,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,EAAE,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;IAC3D,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,+BAoEA;AAED,iCAAiC;AACjC,wBAAgB,WAAW,CAAC,EAC1B,MAAM,EACN,SAAS,GACV,EAAE;IACD,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;IACzC,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,+BA6BA;AAED,6BAA6B;AAC7B,wBAAgB,UAAU,CAAC,EACzB,IAAI,EACJ,IAAI,EACJ,KAAK,EACL,SAAS,GACV,EAAE;IACD,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;IACvF,2BAA2B;IAC3B,IAAI,EAAE,MAAM,EAAE,CAAA;IACd,yBAAyB;IACzB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,+BA+DA"}
|