@usevane/ui 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +119 -0
- package/dist/components/alert.d.ts +19 -0
- package/dist/components/alert.d.ts.map +1 -0
- package/dist/components/alert.js +33 -0
- package/dist/components/alert.js.map +1 -0
- package/dist/components/api-route.d.ts +32 -0
- package/dist/components/api-route.d.ts.map +1 -0
- package/dist/components/api-route.js +23 -0
- package/dist/components/api-route.js.map +1 -0
- package/dist/components/badge.d.ts +17 -0
- package/dist/components/badge.d.ts.map +1 -0
- package/dist/components/badge.js +30 -0
- package/dist/components/badge.js.map +1 -0
- package/dist/components/button.d.ts +18 -0
- package/dist/components/button.d.ts.map +1 -0
- package/dist/components/button.js +32 -0
- package/dist/components/button.js.map +1 -0
- package/dist/components/callout.d.ts +16 -0
- package/dist/components/callout.d.ts.map +1 -0
- package/dist/components/callout.js +40 -0
- package/dist/components/callout.js.map +1 -0
- package/dist/components/card.d.ts +22 -0
- package/dist/components/card.d.ts.map +1 -0
- package/dist/components/card.js +35 -0
- package/dist/components/card.js.map +1 -0
- package/dist/components/charts.d.ts +65 -0
- package/dist/components/charts.d.ts.map +1 -0
- package/dist/components/charts.js +56 -0
- package/dist/components/charts.js.map +1 -0
- package/dist/components/code-block.d.ts +16 -0
- package/dist/components/code-block.d.ts.map +1 -0
- package/dist/components/code-block.js +14 -0
- package/dist/components/code-block.js.map +1 -0
- package/dist/components/command-palette.d.ts +23 -0
- package/dist/components/command-palette.d.ts.map +1 -0
- package/dist/components/command-palette.js +107 -0
- package/dist/components/command-palette.js.map +1 -0
- package/dist/components/command-provider.d.ts +22 -0
- package/dist/components/command-provider.d.ts.map +1 -0
- package/dist/components/command-provider.js +42 -0
- package/dist/components/command-provider.js.map +1 -0
- package/dist/components/confirm-dialog.d.ts +22 -0
- package/dist/components/confirm-dialog.d.ts.map +1 -0
- package/dist/components/confirm-dialog.js +42 -0
- package/dist/components/confirm-dialog.js.map +1 -0
- package/dist/components/copy-block.d.ts +17 -0
- package/dist/components/copy-block.d.ts.map +1 -0
- package/dist/components/copy-block.js +23 -0
- package/dist/components/copy-block.js.map +1 -0
- package/dist/components/data-module.d.ts +26 -0
- package/dist/components/data-module.d.ts.map +1 -0
- package/dist/components/data-module.js +46 -0
- package/dist/components/data-module.js.map +1 -0
- package/dist/components/data-stack.d.ts +23 -0
- package/dist/components/data-stack.d.ts.map +1 -0
- package/dist/components/data-stack.js +31 -0
- package/dist/components/data-stack.js.map +1 -0
- package/dist/components/data-table.d.ts +15 -0
- package/dist/components/data-table.d.ts.map +1 -0
- package/dist/components/data-table.js +22 -0
- package/dist/components/data-table.js.map +1 -0
- package/dist/components/doc-heading.d.ts +14 -0
- package/dist/components/doc-heading.d.ts.map +1 -0
- package/dist/components/doc-heading.js +28 -0
- package/dist/components/doc-heading.js.map +1 -0
- package/dist/components/empty-state.d.ts +16 -0
- package/dist/components/empty-state.d.ts.map +1 -0
- package/dist/components/empty-state.js +11 -0
- package/dist/components/empty-state.js.map +1 -0
- package/dist/components/error-page.d.ts +27 -0
- package/dist/components/error-page.d.ts.map +1 -0
- package/dist/components/error-page.js +16 -0
- package/dist/components/error-page.js.map +1 -0
- package/dist/components/form-field.d.ts +23 -0
- package/dist/components/form-field.d.ts.map +1 -0
- package/dist/components/form-field.js +23 -0
- package/dist/components/form-field.js.map +1 -0
- package/dist/components/grid.d.ts +16 -0
- package/dist/components/grid.d.ts.map +1 -0
- package/dist/components/grid.js +22 -0
- package/dist/components/grid.js.map +1 -0
- package/dist/components/heading.d.ts +15 -0
- package/dist/components/heading.d.ts.map +1 -0
- package/dist/components/heading.js +21 -0
- package/dist/components/heading.js.map +1 -0
- package/dist/components/input.d.ts +16 -0
- package/dist/components/input.d.ts.map +1 -0
- package/dist/components/input.js +23 -0
- package/dist/components/input.js.map +1 -0
- package/dist/components/kbd.d.ts +14 -0
- package/dist/components/kbd.d.ts.map +1 -0
- package/dist/components/kbd.js +11 -0
- package/dist/components/kbd.js.map +1 -0
- package/dist/components/label.d.ts +11 -0
- package/dist/components/label.d.ts.map +1 -0
- package/dist/components/label.js +12 -0
- package/dist/components/label.js.map +1 -0
- package/dist/components/mobile-menu.d.ts +14 -0
- package/dist/components/mobile-menu.d.ts.map +1 -0
- package/dist/components/mobile-menu.js +15 -0
- package/dist/components/mobile-menu.js.map +1 -0
- package/dist/components/modal.d.ts +20 -0
- package/dist/components/modal.d.ts.map +1 -0
- package/dist/components/modal.js +62 -0
- package/dist/components/modal.js.map +1 -0
- package/dist/components/nav-link.d.ts +16 -0
- package/dist/components/nav-link.d.ts.map +1 -0
- package/dist/components/nav-link.js +13 -0
- package/dist/components/nav-link.js.map +1 -0
- package/dist/components/page-header.d.ts +18 -0
- package/dist/components/page-header.d.ts.map +1 -0
- package/dist/components/page-header.js +11 -0
- package/dist/components/page-header.js.map +1 -0
- package/dist/components/select.d.ts +16 -0
- package/dist/components/select.d.ts.map +1 -0
- package/dist/components/select.js +23 -0
- package/dist/components/select.js.map +1 -0
- package/dist/components/separator.d.ts +16 -0
- package/dist/components/separator.d.ts.map +1 -0
- package/dist/components/separator.js +11 -0
- package/dist/components/separator.js.map +1 -0
- package/dist/components/sidebar.d.ts +20 -0
- package/dist/components/sidebar.d.ts.map +1 -0
- package/dist/components/sidebar.js +16 -0
- package/dist/components/sidebar.js.map +1 -0
- package/dist/components/sign-out-button.d.ts +15 -0
- package/dist/components/sign-out-button.d.ts.map +1 -0
- package/dist/components/sign-out-button.js +14 -0
- package/dist/components/sign-out-button.js.map +1 -0
- package/dist/components/skeleton.d.ts +11 -0
- package/dist/components/skeleton.d.ts.map +1 -0
- package/dist/components/skeleton.js +12 -0
- package/dist/components/skeleton.js.map +1 -0
- package/dist/components/spacer.d.ts +14 -0
- package/dist/components/spacer.d.ts.map +1 -0
- package/dist/components/spacer.js +18 -0
- package/dist/components/spacer.js.map +1 -0
- package/dist/components/stack.d.ts +20 -0
- package/dist/components/stack.d.ts.map +1 -0
- package/dist/components/stack.js +14 -0
- package/dist/components/stack.js.map +1 -0
- package/dist/components/status-badge.d.ts +17 -0
- package/dist/components/status-badge.d.ts.map +1 -0
- package/dist/components/status-badge.js +27 -0
- package/dist/components/status-badge.js.map +1 -0
- package/dist/components/tabs.d.ts +18 -0
- package/dist/components/tabs.d.ts.map +1 -0
- package/dist/components/tabs.js +12 -0
- package/dist/components/tabs.js.map +1 -0
- package/dist/components/textarea.d.ts +16 -0
- package/dist/components/textarea.d.ts.map +1 -0
- package/dist/components/textarea.js +23 -0
- package/dist/components/textarea.js.map +1 -0
- package/dist/components/toast.d.ts +36 -0
- package/dist/components/toast.d.ts.map +1 -0
- package/dist/components/toast.js +47 -0
- package/dist/components/toast.js.map +1 -0
- package/dist/components/top-bar.d.ts +18 -0
- package/dist/components/top-bar.d.ts.map +1 -0
- package/dist/components/top-bar.js +11 -0
- package/dist/components/top-bar.js.map +1 -0
- package/dist/index.d.ts +83 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +61 -0
- package/dist/index.js.map +1 -0
- package/dist/lib/utils.d.ts +7 -0
- package/dist/lib/utils.d.ts.map +1 -0
- package/dist/lib/utils.js +8 -0
- package/dist/lib/utils.js.map +1 -0
- package/package.json +46 -0
- package/src/theme.css +78 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Vane (usevane)
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
# @usevane/ui
|
|
2
|
+
|
|
3
|
+
Moe-Brutalist component library for Vane. Hard borders, hard shadows, instant snaps. Soft things living in a hard world.
|
|
4
|
+
|
|
5
|
+
40 React components with WCAG AA accessibility, Tailwind CSS v4 tokens, and the snap interaction system.
|
|
6
|
+
|
|
7
|
+
## Install
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
bun add @usevane/ui
|
|
11
|
+
# or
|
|
12
|
+
npm install @usevane/ui
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
### Peer Dependencies
|
|
16
|
+
|
|
17
|
+
- `react` >= 19.0.0
|
|
18
|
+
- `react-dom` >= 19.0.0
|
|
19
|
+
- `tailwindcss` >= 4.0.0
|
|
20
|
+
|
|
21
|
+
## Theme Setup
|
|
22
|
+
|
|
23
|
+
Import the theme CSS in your global stylesheet or copy the tokens into your own `@theme` block:
|
|
24
|
+
|
|
25
|
+
```css
|
|
26
|
+
@import "@usevane/ui/theme.css";
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
Or cherry-pick tokens:
|
|
30
|
+
|
|
31
|
+
```css
|
|
32
|
+
@theme {
|
|
33
|
+
--color-void: #050505;
|
|
34
|
+
--color-surface: #0f0f0f;
|
|
35
|
+
--color-pink: #FF9ECA;
|
|
36
|
+
--color-cyan: #74F6F4;
|
|
37
|
+
--color-lavender: #C9B8FF;
|
|
38
|
+
--color-peach: #FFD4A8;
|
|
39
|
+
--color-threat: #FF0055;
|
|
40
|
+
--color-critical: #FFE500;
|
|
41
|
+
--color-secondary: #888888;
|
|
42
|
+
|
|
43
|
+
--font-display: 'Syne', sans-serif;
|
|
44
|
+
--font-mono: 'IBM Plex Mono', monospace;
|
|
45
|
+
|
|
46
|
+
--shadow-hard: 3px 3px 0px #ffffff;
|
|
47
|
+
--shadow-hard-pink: 5px 5px 0px #FF9ECA;
|
|
48
|
+
--shadow-hard-focus: 5px 5px 0px #74F6F4;
|
|
49
|
+
--shadow-hard-threat: 5px 5px 0px #FF0055;
|
|
50
|
+
--shadow-hard-sm: 1px 1px 0px #ffffff;
|
|
51
|
+
}
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
## Usage
|
|
55
|
+
|
|
56
|
+
```tsx
|
|
57
|
+
import { Button, Card, CardContent, DataModule, DataModuleLabel, DataModuleValue } from '@usevane/ui'
|
|
58
|
+
|
|
59
|
+
<Button variant="default">INSTALL NOW</Button>
|
|
60
|
+
<Button variant="threat">BLOCK</Button>
|
|
61
|
+
|
|
62
|
+
<Card>
|
|
63
|
+
<CardContent>
|
|
64
|
+
<DataModule>
|
|
65
|
+
<DataModuleLabel>SIGNALS TODAY</DataModuleLabel>
|
|
66
|
+
<DataModuleValue color="pink">1,204,847</DataModuleValue>
|
|
67
|
+
</DataModule>
|
|
68
|
+
</CardContent>
|
|
69
|
+
</Card>
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
## Components
|
|
73
|
+
|
|
74
|
+
### Buttons
|
|
75
|
+
`Button` `SignOutButton`
|
|
76
|
+
|
|
77
|
+
### Data Display
|
|
78
|
+
`DataModule` `DataModuleLabel` `DataModuleValue` `StatusBadge` `Badge` `DataStack` `DataStackItem`
|
|
79
|
+
|
|
80
|
+
### Forms
|
|
81
|
+
`Input` `Select` `Textarea` `Label` `FormField`
|
|
82
|
+
|
|
83
|
+
### Layout
|
|
84
|
+
`Card` `CardHeader` `CardTitle` `CardContent` `CardFooter` `Grid` `Stack` `Heading` `Separator` `Spacer` `PageHeader` `TopBar` `Sidebar` `MobileMenu` `NavLink`
|
|
85
|
+
|
|
86
|
+
### Feedback
|
|
87
|
+
`Modal` `ConfirmDialog` `ToastProvider` `useToast` `Alert` `AlertTitle` `AlertDescription`
|
|
88
|
+
|
|
89
|
+
### Command Palette
|
|
90
|
+
`CommandPalette` `CommandProvider` `useCommands` `Kbd`
|
|
91
|
+
|
|
92
|
+
### Data Tables
|
|
93
|
+
`DataTable` `DataTableHeader` `DataTableBody` `DataTableRow` `DataTableHead` `DataTableCell` `Tabs` `CopyBlock` `EmptyState` `Skeleton`
|
|
94
|
+
|
|
95
|
+
### Charts (Recharts)
|
|
96
|
+
`SignalTimeline` `MethodBreakdown` `TopPaths`
|
|
97
|
+
|
|
98
|
+
### Documentation
|
|
99
|
+
`CodeBlock` `InlineCode` `ApiRoute` `ApiParam` `ApiParams` `Callout` `DocH1` `DocH2` `DocH3` `DocH4`
|
|
100
|
+
|
|
101
|
+
### Error Pages
|
|
102
|
+
`ErrorPage` `NotFoundPage` `ServerErrorPage`
|
|
103
|
+
|
|
104
|
+
### Utilities
|
|
105
|
+
`cn`
|
|
106
|
+
|
|
107
|
+
## Design System
|
|
108
|
+
|
|
109
|
+
Built on the Moe-Brutalist design system:
|
|
110
|
+
|
|
111
|
+
- **No rounded corners.** `rounded-none` on everything.
|
|
112
|
+
- **No blur shadows.** Hard offset shadows only.
|
|
113
|
+
- **No transitions.** The UI snaps between states.
|
|
114
|
+
- **Syne + IBM Plex Mono.** The font clash IS the aesthetic.
|
|
115
|
+
- **WCAG AA accessible.** All colors pass 4.5:1 contrast. Focus states, ARIA roles, 44px touch targets.
|
|
116
|
+
|
|
117
|
+
## License
|
|
118
|
+
|
|
119
|
+
MIT
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file packages/ui/src/components/alert.tsx
|
|
3
|
+
* @description Moe-Brutalist alert — notification box with semantic ARIA roles per state.
|
|
4
|
+
* Threat/critical alerts interrupt screen readers. Info/warning wait politely.
|
|
5
|
+
*/
|
|
6
|
+
import { type VariantProps } from 'class-variance-authority';
|
|
7
|
+
import * as React from 'react';
|
|
8
|
+
declare const alertVariants: (props?: ({
|
|
9
|
+
state?: "threat" | "critical" | "warning" | "info" | null | undefined;
|
|
10
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
11
|
+
type AlertProps = React.HTMLAttributes<HTMLDivElement> & VariantProps<typeof alertVariants>;
|
|
12
|
+
declare const Alert: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & VariantProps<(props?: ({
|
|
13
|
+
state?: "threat" | "critical" | "warning" | "info" | null | undefined;
|
|
14
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string> & React.RefAttributes<HTMLDivElement>>;
|
|
15
|
+
declare const AlertTitle: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLHeadingElement> & React.RefAttributes<HTMLHeadingElement>>;
|
|
16
|
+
declare const AlertDescription: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLParagraphElement> & React.RefAttributes<HTMLParagraphElement>>;
|
|
17
|
+
export { Alert, AlertTitle, AlertDescription, alertVariants };
|
|
18
|
+
export type { AlertProps };
|
|
19
|
+
//# sourceMappingURL=alert.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"alert.d.ts","sourceRoot":"","sources":["../../src/components/alert.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAA;AACjE,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAG9B,QAAA,MAAM,aAAa;;8EAYjB,CAAA;AAEF,KAAK,UAAU,GAAG,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,GAAG,YAAY,CAAC,OAAO,aAAa,CAAC,CAAA;AAE3F,QAAA,MAAM,KAAK;;sHAaV,CAAA;AAGD,QAAA,MAAM,UAAU,qHAQf,CAAA;AAGD,QAAA,MAAM,gBAAgB,yHASpB,CAAA;AAGF,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,gBAAgB,EAAE,aAAa,EAAE,CAAA;AAC7D,YAAY,EAAE,UAAU,EAAE,CAAA"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
/**
|
|
3
|
+
* @file packages/ui/src/components/alert.tsx
|
|
4
|
+
* @description Moe-Brutalist alert — notification box with semantic ARIA roles per state.
|
|
5
|
+
* Threat/critical alerts interrupt screen readers. Info/warning wait politely.
|
|
6
|
+
*/
|
|
7
|
+
import { cva } from 'class-variance-authority';
|
|
8
|
+
import * as React from 'react';
|
|
9
|
+
import { cn } from '../lib/utils';
|
|
10
|
+
const alertVariants = cva('rounded-none border-2 border-l-4 bg-surface p-4', {
|
|
11
|
+
variants: {
|
|
12
|
+
state: {
|
|
13
|
+
info: 'border-white border-l-cyan shadow-hard',
|
|
14
|
+
warning: 'border-white border-l-peach shadow-hard',
|
|
15
|
+
threat: 'border-threat border-l-threat shadow-hard-threat',
|
|
16
|
+
critical: 'border-critical border-l-critical shadow-hard-critical',
|
|
17
|
+
},
|
|
18
|
+
},
|
|
19
|
+
defaultVariants: {
|
|
20
|
+
state: 'info',
|
|
21
|
+
},
|
|
22
|
+
});
|
|
23
|
+
const Alert = React.forwardRef(({ className, state, ...props }, ref) => {
|
|
24
|
+
const isUrgent = state === 'threat' || state === 'critical';
|
|
25
|
+
return (_jsx("div", { role: isUrgent ? 'alert' : 'status', "aria-live": isUrgent ? 'assertive' : 'polite', className: cn(alertVariants({ state, className })), ref: ref, ...props }));
|
|
26
|
+
});
|
|
27
|
+
Alert.displayName = 'Alert';
|
|
28
|
+
const AlertTitle = React.forwardRef(({ className, ...props }, ref) => (_jsx("h4", { className: cn('font-mono text-sm font-semibold text-white mb-1', className), ref: ref, ...props })));
|
|
29
|
+
AlertTitle.displayName = 'AlertTitle';
|
|
30
|
+
const AlertDescription = React.forwardRef(({ className, ...props }, ref) => (_jsx("p", { className: cn('font-mono text-sm leading-5 text-secondary', className), ref: ref, ...props })));
|
|
31
|
+
AlertDescription.displayName = 'AlertDescription';
|
|
32
|
+
export { Alert, AlertTitle, AlertDescription, alertVariants };
|
|
33
|
+
//# sourceMappingURL=alert.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"alert.js","sourceRoot":"","sources":["../../src/components/alert.tsx"],"names":[],"mappings":";AAAA;;;;GAIG;AAEH,OAAO,EAAE,GAAG,EAAqB,MAAM,0BAA0B,CAAA;AACjE,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAA;AAEjC,MAAM,aAAa,GAAG,GAAG,CAAC,iDAAiD,EAAE;IAC3E,QAAQ,EAAE;QACR,KAAK,EAAE;YACL,IAAI,EAAE,wCAAwC;YAC9C,OAAO,EAAE,yCAAyC;YAClD,MAAM,EAAE,kDAAkD;YAC1D,QAAQ,EAAE,wDAAwD;SACnE;KACF;IACD,eAAe,EAAE;QACf,KAAK,EAAE,MAAM;KACd;CACF,CAAC,CAAA;AAIF,MAAM,KAAK,GAAG,KAAK,CAAC,UAAU,CAC5B,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE;IACtC,MAAM,QAAQ,GAAG,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,UAAU,CAAA;IAC3D,OAAO,CACL,cACE,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,eACxB,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ,EAC5C,SAAS,EAAE,EAAE,CAAC,aAAa,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC,EAClD,GAAG,EAAE,GAAG,KACJ,KAAK,GACT,CACH,CAAA;AACH,CAAC,CACF,CAAA;AACD,KAAK,CAAC,WAAW,GAAG,OAAO,CAAA;AAE3B,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,CACjC,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,CAChC,aACE,SAAS,EAAE,EAAE,CAAC,iDAAiD,EAAE,SAAS,CAAC,EAC3E,GAAG,EAAE,GAAG,KACJ,KAAK,GACT,CACH,CACF,CAAA;AACD,UAAU,CAAC,WAAW,GAAG,YAAY,CAAA;AAErC,MAAM,gBAAgB,GAAG,KAAK,CAAC,UAAU,CAGvC,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,CAClC,YACE,SAAS,EAAE,EAAE,CAAC,4CAA4C,EAAE,SAAS,CAAC,EACtE,GAAG,EAAE,GAAG,KACJ,KAAK,GACT,CACH,CAAC,CAAA;AACF,gBAAgB,CAAC,WAAW,GAAG,kBAAkB,CAAA;AAEjD,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,gBAAgB,EAAE,aAAa,EAAE,CAAA"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file packages/ui/src/components/api-route.tsx
|
|
3
|
+
* @description Moe-Brutalist API route documentation — method badge + path + description.
|
|
4
|
+
* The hard-bordered method badge snaps color by HTTP verb.
|
|
5
|
+
*/
|
|
6
|
+
import * as React from 'react';
|
|
7
|
+
type ApiRouteProps = React.HTMLAttributes<HTMLDivElement> & {
|
|
8
|
+
method: string;
|
|
9
|
+
path: string;
|
|
10
|
+
description?: string;
|
|
11
|
+
};
|
|
12
|
+
declare const ApiRoute: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & {
|
|
13
|
+
method: string;
|
|
14
|
+
path: string;
|
|
15
|
+
description?: string;
|
|
16
|
+
} & React.RefAttributes<HTMLDivElement>>;
|
|
17
|
+
type ApiParamProps = React.HTMLAttributes<HTMLTableRowElement> & {
|
|
18
|
+
name: string;
|
|
19
|
+
type: string;
|
|
20
|
+
required?: boolean;
|
|
21
|
+
description: string;
|
|
22
|
+
};
|
|
23
|
+
declare const ApiParam: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLTableRowElement> & {
|
|
24
|
+
name: string;
|
|
25
|
+
type: string;
|
|
26
|
+
required?: boolean;
|
|
27
|
+
description: string;
|
|
28
|
+
} & React.RefAttributes<HTMLTableRowElement>>;
|
|
29
|
+
declare const ApiParams: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLTableElement> & React.RefAttributes<HTMLTableElement>>;
|
|
30
|
+
export { ApiRoute, ApiParam, ApiParams };
|
|
31
|
+
export type { ApiRouteProps, ApiParamProps };
|
|
32
|
+
//# sourceMappingURL=api-route.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api-route.d.ts","sourceRoot":"","sources":["../../src/components/api-route.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAW9B,KAAK,aAAa,GAAG,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,GAAG;IAC1D,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB,CAAA;AAED,QAAA,MAAM,QAAQ;YALJ,MAAM;UACR,MAAM;kBACE,MAAM;wCA6BrB,CAAA;AAGD,KAAK,aAAa,GAAG,KAAK,CAAC,cAAc,CAAC,mBAAmB,CAAC,GAAG;IAC/D,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,WAAW,EAAE,MAAM,CAAA;CACpB,CAAA;AAED,QAAA,MAAM,QAAQ;UANN,MAAM;UACN,MAAM;eACD,OAAO;iBACL,MAAM;6CAsBpB,CAAA;AAGD,QAAA,MAAM,SAAS,iHAWd,CAAA;AAGD,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAA;AACxC,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,CAAA"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
/**
|
|
3
|
+
* @file packages/ui/src/components/api-route.tsx
|
|
4
|
+
* @description Moe-Brutalist API route documentation — method badge + path + description.
|
|
5
|
+
* The hard-bordered method badge snaps color by HTTP verb.
|
|
6
|
+
*/
|
|
7
|
+
import * as React from 'react';
|
|
8
|
+
import { cn } from '../lib/utils';
|
|
9
|
+
const METHOD_STYLES = {
|
|
10
|
+
GET: 'border-cyan text-cyan',
|
|
11
|
+
POST: 'border-pink text-pink',
|
|
12
|
+
PUT: 'border-lavender text-lavender',
|
|
13
|
+
PATCH: 'border-peach text-peach',
|
|
14
|
+
DELETE: 'border-threat text-threat',
|
|
15
|
+
};
|
|
16
|
+
const ApiRoute = React.forwardRef(({ className, method, path, description, children, ...props }, ref) => (_jsxs("div", { className: cn('my-6 rounded-none border-2 border-white bg-surface shadow-hard', className), ref: ref, ...props, children: [_jsxs("div", { className: "flex items-center gap-3 border-b-2 border-white/20 px-4 py-3", children: [_jsx("span", { className: cn('rounded-none border-2 px-2 py-0.5 font-mono text-[11px] font-bold uppercase tracking-widest', METHOD_STYLES[method.toUpperCase()] ?? 'border-white text-white'), children: method.toUpperCase() }), _jsx("span", { className: "font-mono text-sm text-white", children: path })] }), description ? (_jsx("div", { className: "border-b border-white/10 px-4 py-3", children: _jsx("p", { className: "font-mono text-sm text-secondary", children: description }) })) : null, children ? _jsx("div", { className: "px-4 py-3", children: children }) : null] })));
|
|
17
|
+
ApiRoute.displayName = 'ApiRoute';
|
|
18
|
+
const ApiParam = React.forwardRef(({ name, type, required = false, description, ...props }, ref) => (_jsxs("tr", { className: "border-b border-white/10", ref: ref, ...props, children: [_jsxs("td", { className: "py-2 pr-4 align-top", children: [_jsx("code", { className: "font-mono text-sm text-white", children: name }), required ? (_jsx("span", { className: "ml-2 font-mono text-[10px] uppercase tracking-widest text-threat", children: "REQUIRED" })) : null] }), _jsx("td", { className: "py-2 pr-4 align-top", children: _jsx("span", { className: "font-mono text-[11px] text-lavender", children: type }) }), _jsx("td", { className: "py-2 align-top", children: _jsx("span", { className: "font-mono text-sm text-secondary", children: description }) })] })));
|
|
19
|
+
ApiParam.displayName = 'ApiParam';
|
|
20
|
+
const ApiParams = React.forwardRef(({ className, children, ...props }, ref) => (_jsxs("div", { className: "mt-2", children: [_jsx("span", { className: "mb-2 block font-mono text-[11px] uppercase tracking-widest text-secondary", children: "PARAMETERS" }), _jsx("table", { className: cn('w-full border-collapse font-mono text-sm', className), ref: ref, ...props, children: _jsx("tbody", { children: children }) })] })));
|
|
21
|
+
ApiParams.displayName = 'ApiParams';
|
|
22
|
+
export { ApiRoute, ApiParam, ApiParams };
|
|
23
|
+
//# sourceMappingURL=api-route.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api-route.js","sourceRoot":"","sources":["../../src/components/api-route.tsx"],"names":[],"mappings":";AAAA;;;;GAIG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAA;AAEjC,MAAM,aAAa,GAA2B;IAC5C,GAAG,EAAE,uBAAuB;IAC5B,IAAI,EAAE,uBAAuB;IAC7B,GAAG,EAAE,+BAA+B;IACpC,KAAK,EAAE,yBAAyB;IAChC,MAAM,EAAE,2BAA2B;CACpC,CAAA;AAQD,MAAM,QAAQ,GAAG,KAAK,CAAC,UAAU,CAC/B,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,CACrE,eACE,SAAS,EAAE,EAAE,CAAC,gEAAgE,EAAE,SAAS,CAAC,EAC1F,GAAG,EAAE,GAAG,KACJ,KAAK,aAET,eAAK,SAAS,EAAC,8DAA8D,aAC3E,eACE,SAAS,EAAE,EAAE,CACX,6FAA6F,EAC7F,aAAa,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,IAAI,yBAAyB,CACjE,YAEA,MAAM,CAAC,WAAW,EAAE,GAChB,EACP,eAAM,SAAS,EAAC,8BAA8B,YAAE,IAAI,GAAQ,IACxD,EACL,WAAW,CAAC,CAAC,CAAC,CACb,cAAK,SAAS,EAAC,oCAAoC,YACjD,YAAG,SAAS,EAAC,kCAAkC,YAAE,WAAW,GAAK,GAC7D,CACP,CAAC,CAAC,CAAC,IAAI,EACP,QAAQ,CAAC,CAAC,CAAC,cAAK,SAAS,EAAC,WAAW,YAAE,QAAQ,GAAO,CAAC,CAAC,CAAC,IAAI,IAC1D,CACP,CACF,CAAA;AACD,QAAQ,CAAC,WAAW,GAAG,UAAU,CAAA;AASjC,MAAM,QAAQ,GAAG,KAAK,CAAC,UAAU,CAC/B,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,GAAG,KAAK,EAAE,WAAW,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,CAChE,cAAI,SAAS,EAAC,0BAA0B,EAAC,GAAG,EAAE,GAAG,KAAM,KAAK,aAC1D,cAAI,SAAS,EAAC,qBAAqB,aACjC,eAAM,SAAS,EAAC,8BAA8B,YAAE,IAAI,GAAQ,EAC3D,QAAQ,CAAC,CAAC,CAAC,CACV,eAAM,SAAS,EAAC,kEAAkE,yBAE3E,CACR,CAAC,CAAC,CAAC,IAAI,IACL,EACL,aAAI,SAAS,EAAC,qBAAqB,YACjC,eAAM,SAAS,EAAC,qCAAqC,YAAE,IAAI,GAAQ,GAChE,EACL,aAAI,SAAS,EAAC,gBAAgB,YAC5B,eAAM,SAAS,EAAC,kCAAkC,YAAE,WAAW,GAAQ,GACpE,IACF,CACN,CACF,CAAA;AACD,QAAQ,CAAC,WAAW,GAAG,UAAU,CAAA;AAEjC,MAAM,SAAS,GAAG,KAAK,CAAC,UAAU,CAChC,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,CAC1C,eAAK,SAAS,EAAC,MAAM,aACnB,eAAM,SAAS,EAAC,2EAA2E,2BAEpF,EACP,gBAAO,SAAS,EAAE,EAAE,CAAC,0CAA0C,EAAE,SAAS,CAAC,EAAE,GAAG,EAAE,GAAG,KAAM,KAAK,YAC9F,0BAAQ,QAAQ,GAAS,GACnB,IACJ,CACP,CACF,CAAA;AACD,SAAS,CAAC,WAAW,GAAG,WAAW,CAAA;AAEnC,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAA"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file packages/ui/src/components/badge.tsx
|
|
3
|
+
* @description Moe-Brutalist badge — generic color badge for any palette color.
|
|
4
|
+
* Extends the StatusBadge pattern to all use cases (tier labels, tags, categories).
|
|
5
|
+
*/
|
|
6
|
+
import { type VariantProps } from 'class-variance-authority';
|
|
7
|
+
import * as React from 'react';
|
|
8
|
+
declare const badgeVariants: (props?: ({
|
|
9
|
+
color?: "threat" | "cyan" | "lavender" | "pink" | "peach" | "critical" | "white" | "secondary" | null | undefined;
|
|
10
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
11
|
+
type BadgeProps = React.HTMLAttributes<HTMLSpanElement> & VariantProps<typeof badgeVariants>;
|
|
12
|
+
declare const Badge: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLSpanElement> & VariantProps<(props?: ({
|
|
13
|
+
color?: "threat" | "cyan" | "lavender" | "pink" | "peach" | "critical" | "white" | "secondary" | null | undefined;
|
|
14
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string> & React.RefAttributes<HTMLSpanElement>>;
|
|
15
|
+
export { Badge, badgeVariants };
|
|
16
|
+
export type { BadgeProps };
|
|
17
|
+
//# sourceMappingURL=badge.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"badge.d.ts","sourceRoot":"","sources":["../../src/components/badge.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAA;AACjE,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAG9B,QAAA,MAAM,aAAa;;8EAmBlB,CAAA;AAED,KAAK,UAAU,GAAG,KAAK,CAAC,cAAc,CAAC,eAAe,CAAC,GACrD,YAAY,CAAC,OAAO,aAAa,CAAC,CAAA;AAEpC,QAAA,MAAM,KAAK;;uHAIV,CAAA;AAGD,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,CAAA;AAC/B,YAAY,EAAE,UAAU,EAAE,CAAA"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
/**
|
|
3
|
+
* @file packages/ui/src/components/badge.tsx
|
|
4
|
+
* @description Moe-Brutalist badge — generic color badge for any palette color.
|
|
5
|
+
* Extends the StatusBadge pattern to all use cases (tier labels, tags, categories).
|
|
6
|
+
*/
|
|
7
|
+
import { cva } from 'class-variance-authority';
|
|
8
|
+
import * as React from 'react';
|
|
9
|
+
import { cn } from '../lib/utils';
|
|
10
|
+
const badgeVariants = cva('inline-flex items-center rounded-none border-2 font-mono text-[11px] uppercase tracking-widest px-2 py-0.5', {
|
|
11
|
+
variants: {
|
|
12
|
+
color: {
|
|
13
|
+
white: 'border-white text-white',
|
|
14
|
+
pink: 'border-pink text-pink',
|
|
15
|
+
cyan: 'border-cyan text-cyan',
|
|
16
|
+
lavender: 'border-lavender text-lavender',
|
|
17
|
+
peach: 'border-peach text-peach',
|
|
18
|
+
threat: 'border-threat text-threat',
|
|
19
|
+
critical: 'border-critical text-critical',
|
|
20
|
+
secondary: 'border-secondary text-secondary',
|
|
21
|
+
},
|
|
22
|
+
},
|
|
23
|
+
defaultVariants: {
|
|
24
|
+
color: 'white',
|
|
25
|
+
},
|
|
26
|
+
});
|
|
27
|
+
const Badge = React.forwardRef(({ className, color, ...props }, ref) => (_jsx("span", { className: cn(badgeVariants({ color, className })), ref: ref, ...props })));
|
|
28
|
+
Badge.displayName = 'Badge';
|
|
29
|
+
export { Badge, badgeVariants };
|
|
30
|
+
//# sourceMappingURL=badge.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"badge.js","sourceRoot":"","sources":["../../src/components/badge.tsx"],"names":[],"mappings":";AAAA;;;;GAIG;AAEH,OAAO,EAAE,GAAG,EAAqB,MAAM,0BAA0B,CAAA;AACjE,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAA;AAEjC,MAAM,aAAa,GAAG,GAAG,CACvB,4GAA4G,EAC5G;IACE,QAAQ,EAAE;QACR,KAAK,EAAE;YACL,KAAK,EAAE,yBAAyB;YAChC,IAAI,EAAE,uBAAuB;YAC7B,IAAI,EAAE,uBAAuB;YAC7B,QAAQ,EAAE,+BAA+B;YACzC,KAAK,EAAE,yBAAyB;YAChC,MAAM,EAAE,2BAA2B;YACnC,QAAQ,EAAE,+BAA+B;YACzC,SAAS,EAAE,iCAAiC;SAC7C;KACF;IACD,eAAe,EAAE;QACf,KAAK,EAAE,OAAO;KACf;CACF,CACF,CAAA;AAKD,MAAM,KAAK,GAAG,KAAK,CAAC,UAAU,CAC5B,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,CACvC,eAAM,SAAS,EAAE,EAAE,CAAC,aAAa,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,KAAM,KAAK,GAAI,CAClF,CACF,CAAA;AACD,KAAK,CAAC,WAAW,GAAG,OAAO,CAAA;AAE3B,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,CAAA"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file packages/ui/src/components/button.tsx
|
|
3
|
+
* @description Moe-Brutalist button — hard borders, hard shadows, no rounding, no transitions
|
|
4
|
+
*/
|
|
5
|
+
import { type VariantProps } from 'class-variance-authority';
|
|
6
|
+
import * as React from 'react';
|
|
7
|
+
declare const buttonVariants: (props?: ({
|
|
8
|
+
variant?: "default" | "threat" | "cyan" | "ghost" | null | undefined;
|
|
9
|
+
size?: "default" | "sm" | "lg" | "icon" | null | undefined;
|
|
10
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
11
|
+
type ButtonProps = React.ButtonHTMLAttributes<HTMLButtonElement> & VariantProps<typeof buttonVariants>;
|
|
12
|
+
declare const Button: React.ForwardRefExoticComponent<React.ButtonHTMLAttributes<HTMLButtonElement> & VariantProps<(props?: ({
|
|
13
|
+
variant?: "default" | "threat" | "cyan" | "ghost" | null | undefined;
|
|
14
|
+
size?: "default" | "sm" | "lg" | "icon" | null | undefined;
|
|
15
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string> & React.RefAttributes<HTMLButtonElement>>;
|
|
16
|
+
export { Button, buttonVariants };
|
|
17
|
+
export type { ButtonProps };
|
|
18
|
+
//# sourceMappingURL=button.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"button.d.ts","sourceRoot":"","sources":["../../src/components/button.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAA;AACjE,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAG9B,QAAA,MAAM,cAAc;;;8EAwBnB,CAAA;AAED,KAAK,WAAW,GAAG,KAAK,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,GAC9D,YAAY,CAAC,OAAO,cAAc,CAAC,CAAA;AAErC,QAAA,MAAM,MAAM;;;yHAUX,CAAA;AAGD,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,CAAA;AACjC,YAAY,EAAE,WAAW,EAAE,CAAA"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
/**
|
|
3
|
+
* @file packages/ui/src/components/button.tsx
|
|
4
|
+
* @description Moe-Brutalist button — hard borders, hard shadows, no rounding, no transitions
|
|
5
|
+
*/
|
|
6
|
+
import { cva } from 'class-variance-authority';
|
|
7
|
+
import * as React from 'react';
|
|
8
|
+
import { cn } from '../lib/utils';
|
|
9
|
+
const buttonVariants = cva('inline-flex items-center justify-center whitespace-nowrap rounded-none font-mono text-[11px] tracking-widest uppercase border-2 cursor-pointer min-h-11 min-w-11 focus-visible:outline-none focus-visible:shadow-hard-focus disabled:pointer-events-none disabled:opacity-50 disabled:cursor-not-allowed disabled:border-secondary disabled:text-secondary disabled:shadow-hard-subtle', {
|
|
10
|
+
variants: {
|
|
11
|
+
variant: {
|
|
12
|
+
default: 'border-white bg-transparent text-white shadow-hard hover:shadow-hard-pink active:shadow-hard-sm',
|
|
13
|
+
threat: 'border-threat bg-transparent text-threat shadow-hard-threat hover:shadow-hard-threat active:shadow-hard-sm',
|
|
14
|
+
cyan: 'border-cyan bg-transparent text-cyan shadow-hard-cyan hover:shadow-hard-cyan active:shadow-hard-sm',
|
|
15
|
+
ghost: 'border-transparent bg-transparent text-white hover:text-pink shadow-none hover:shadow-hard-subtle-pink',
|
|
16
|
+
},
|
|
17
|
+
size: {
|
|
18
|
+
default: 'px-4 py-2',
|
|
19
|
+
sm: 'px-3 py-1.5',
|
|
20
|
+
lg: 'px-6 py-3',
|
|
21
|
+
icon: 'h-11 w-11 p-0',
|
|
22
|
+
},
|
|
23
|
+
},
|
|
24
|
+
defaultVariants: {
|
|
25
|
+
variant: 'default',
|
|
26
|
+
size: 'default',
|
|
27
|
+
},
|
|
28
|
+
});
|
|
29
|
+
const Button = React.forwardRef(({ className, variant, size, disabled, ...props }, ref) => (_jsx("button", { className: cn(buttonVariants({ variant, size, className })), ref: ref, disabled: disabled, "aria-disabled": disabled || undefined, ...props })));
|
|
30
|
+
Button.displayName = 'Button';
|
|
31
|
+
export { Button, buttonVariants };
|
|
32
|
+
//# sourceMappingURL=button.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"button.js","sourceRoot":"","sources":["../../src/components/button.tsx"],"names":[],"mappings":";AAAA;;;GAGG;AAEH,OAAO,EAAE,GAAG,EAAqB,MAAM,0BAA0B,CAAA;AACjE,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAA;AAEjC,MAAM,cAAc,GAAG,GAAG,CACxB,wXAAwX,EACxX;IACE,QAAQ,EAAE;QACR,OAAO,EAAE;YACP,OAAO,EACL,iGAAiG;YACnG,MAAM,EACJ,4GAA4G;YAC9G,IAAI,EAAE,oGAAoG;YAC1G,KAAK,EAAE,wGAAwG;SAChH;QACD,IAAI,EAAE;YACJ,OAAO,EAAE,WAAW;YACpB,EAAE,EAAE,aAAa;YACjB,EAAE,EAAE,WAAW;YACf,IAAI,EAAE,eAAe;SACtB;KACF;IACD,eAAe,EAAE;QACf,OAAO,EAAE,SAAS;QAClB,IAAI,EAAE,SAAS;KAChB;CACF,CACF,CAAA;AAKD,MAAM,MAAM,GAAG,KAAK,CAAC,UAAU,CAC7B,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,CACzD,iBACE,SAAS,EAAE,EAAE,CAAC,cAAc,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC,EAC3D,GAAG,EAAE,GAAG,EACR,QAAQ,EAAE,QAAQ,mBACH,QAAQ,IAAI,SAAS,KAChC,KAAK,GACT,CACH,CACF,CAAA;AACD,MAAM,CAAC,WAAW,GAAG,QAAQ,CAAA;AAE7B,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,CAAA"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file packages/ui/src/components/callout.tsx
|
|
3
|
+
* @description Moe-Brutalist callout — hard left border accent for notes, warnings, dangers.
|
|
4
|
+
*/
|
|
5
|
+
import { type VariantProps } from 'class-variance-authority';
|
|
6
|
+
import * as React from 'react';
|
|
7
|
+
declare const calloutVariants: (props?: ({
|
|
8
|
+
variant?: "note" | "warning" | "danger" | "tip" | null | undefined;
|
|
9
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
10
|
+
type CalloutProps = React.HTMLAttributes<HTMLDivElement> & VariantProps<typeof calloutVariants>;
|
|
11
|
+
declare const Callout: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & VariantProps<(props?: ({
|
|
12
|
+
variant?: "note" | "warning" | "danger" | "tip" | null | undefined;
|
|
13
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string> & React.RefAttributes<HTMLDivElement>>;
|
|
14
|
+
export { Callout, calloutVariants };
|
|
15
|
+
export type { CalloutProps };
|
|
16
|
+
//# sourceMappingURL=callout.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"callout.d.ts","sourceRoot":"","sources":["../../src/components/callout.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAA;AACjE,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAG9B,QAAA,MAAM,eAAe;;8EAepB,CAAA;AAgBD,KAAK,YAAY,GAAG,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,GACtD,YAAY,CAAC,OAAO,eAAe,CAAC,CAAA;AAEtC,QAAA,MAAM,OAAO;;sHAiBZ,CAAA;AAGD,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,CAAA;AACnC,YAAY,EAAE,YAAY,EAAE,CAAA"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
/**
|
|
3
|
+
* @file packages/ui/src/components/callout.tsx
|
|
4
|
+
* @description Moe-Brutalist callout — hard left border accent for notes, warnings, dangers.
|
|
5
|
+
*/
|
|
6
|
+
import { cva } from 'class-variance-authority';
|
|
7
|
+
import * as React from 'react';
|
|
8
|
+
import { cn } from '../lib/utils';
|
|
9
|
+
const calloutVariants = cva('my-4 rounded-none border-l-4 bg-surface px-4 py-3 font-mono text-sm', {
|
|
10
|
+
variants: {
|
|
11
|
+
variant: {
|
|
12
|
+
note: 'border-l-cyan text-white',
|
|
13
|
+
warning: 'border-l-peach text-white',
|
|
14
|
+
danger: 'border-l-threat text-white',
|
|
15
|
+
tip: 'border-l-pink text-white',
|
|
16
|
+
},
|
|
17
|
+
},
|
|
18
|
+
defaultVariants: {
|
|
19
|
+
variant: 'note',
|
|
20
|
+
},
|
|
21
|
+
});
|
|
22
|
+
const CALLOUT_LABELS = {
|
|
23
|
+
note: 'NOTE',
|
|
24
|
+
warning: 'WARNING',
|
|
25
|
+
danger: 'DANGER',
|
|
26
|
+
tip: 'TIP',
|
|
27
|
+
};
|
|
28
|
+
const LABEL_STYLES = {
|
|
29
|
+
note: 'text-cyan',
|
|
30
|
+
warning: 'text-peach',
|
|
31
|
+
danger: 'text-threat',
|
|
32
|
+
tip: 'text-pink',
|
|
33
|
+
};
|
|
34
|
+
const Callout = React.forwardRef(({ className, variant, children, ...props }, ref) => {
|
|
35
|
+
const variantKey = variant ?? 'note';
|
|
36
|
+
return (_jsxs("div", { className: cn(calloutVariants({ variant, className })), ref: ref, ...props, children: [_jsx("span", { className: cn('mb-1 block font-mono text-[11px] uppercase tracking-widest', LABEL_STYLES[variantKey]), children: CALLOUT_LABELS[variantKey] }), _jsx("div", { className: "text-secondary", children: children })] }));
|
|
37
|
+
});
|
|
38
|
+
Callout.displayName = 'Callout';
|
|
39
|
+
export { Callout, calloutVariants };
|
|
40
|
+
//# sourceMappingURL=callout.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"callout.js","sourceRoot":"","sources":["../../src/components/callout.tsx"],"names":[],"mappings":";AAAA;;;GAGG;AAEH,OAAO,EAAE,GAAG,EAAqB,MAAM,0BAA0B,CAAA;AACjE,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAA;AAEjC,MAAM,eAAe,GAAG,GAAG,CACzB,qEAAqE,EACrE;IACE,QAAQ,EAAE;QACR,OAAO,EAAE;YACP,IAAI,EAAE,0BAA0B;YAChC,OAAO,EAAE,2BAA2B;YACpC,MAAM,EAAE,4BAA4B;YACpC,GAAG,EAAE,0BAA0B;SAChC;KACF;IACD,eAAe,EAAE;QACf,OAAO,EAAE,MAAM;KAChB;CACF,CACF,CAAA;AAED,MAAM,cAAc,GAA2B;IAC7C,IAAI,EAAE,MAAM;IACZ,OAAO,EAAE,SAAS;IAClB,MAAM,EAAE,QAAQ;IAChB,GAAG,EAAE,KAAK;CACX,CAAA;AAED,MAAM,YAAY,GAA2B;IAC3C,IAAI,EAAE,WAAW;IACjB,OAAO,EAAE,YAAY;IACrB,MAAM,EAAE,aAAa;IACrB,GAAG,EAAE,WAAW;CACjB,CAAA;AAKD,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,CAC9B,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE;IAClD,MAAM,UAAU,GAAG,OAAO,IAAI,MAAM,CAAA;IACpC,OAAO,CACL,eAAK,SAAS,EAAE,EAAE,CAAC,eAAe,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,KAAM,KAAK,aAC9E,eACE,SAAS,EAAE,EAAE,CACX,4DAA4D,EAC5D,YAAY,CAAC,UAAU,CAAC,CACzB,YAEA,cAAc,CAAC,UAAU,CAAC,GACtB,EACP,cAAK,SAAS,EAAC,gBAAgB,YAAE,QAAQ,GAAO,IAC5C,CACP,CAAA;AACH,CAAC,CACF,CAAA;AACD,OAAO,CAAC,WAAW,GAAG,SAAS,CAAA;AAE/B,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,CAAA"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file packages/ui/src/components/card.tsx
|
|
3
|
+
* @description Moe-Brutalist card — general-purpose bordered container with header/content/footer.
|
|
4
|
+
*/
|
|
5
|
+
import { type VariantProps } from 'class-variance-authority';
|
|
6
|
+
import * as React from 'react';
|
|
7
|
+
declare const cardVariants: (props?: ({
|
|
8
|
+
variant?: "default" | "threat" | "ghost" | null | undefined;
|
|
9
|
+
interactive?: boolean | null | undefined;
|
|
10
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
11
|
+
type CardProps = React.HTMLAttributes<HTMLDivElement> & VariantProps<typeof cardVariants>;
|
|
12
|
+
declare const Card: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & VariantProps<(props?: ({
|
|
13
|
+
variant?: "default" | "threat" | "ghost" | null | undefined;
|
|
14
|
+
interactive?: boolean | null | undefined;
|
|
15
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string> & React.RefAttributes<HTMLDivElement>>;
|
|
16
|
+
declare const CardHeader: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & React.RefAttributes<HTMLDivElement>>;
|
|
17
|
+
declare const CardTitle: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLHeadingElement> & React.RefAttributes<HTMLHeadingElement>>;
|
|
18
|
+
declare const CardContent: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & React.RefAttributes<HTMLDivElement>>;
|
|
19
|
+
declare const CardFooter: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & React.RefAttributes<HTMLDivElement>>;
|
|
20
|
+
export { Card, CardHeader, CardTitle, CardContent, CardFooter, cardVariants };
|
|
21
|
+
export type { CardProps };
|
|
22
|
+
//# sourceMappingURL=card.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"card.d.ts","sourceRoot":"","sources":["../../src/components/card.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAA;AACjE,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAG9B,QAAA,MAAM,YAAY;;;8EAchB,CAAA;AAEF,KAAK,SAAS,GAAG,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,GAAG,YAAY,CAAC,OAAO,YAAY,CAAC,CAAA;AAEzF,QAAA,MAAM,IAAI;;;sHAIT,CAAA;AAGD,QAAA,MAAM,UAAU,6GAIf,CAAA;AAGD,QAAA,MAAM,SAAS,qHAId,CAAA;AAGD,QAAA,MAAM,WAAW,6GAIhB,CAAA;AAGD,QAAA,MAAM,UAAU,6GAQf,CAAA;AAGD,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,YAAY,EAAE,CAAA;AAC7E,YAAY,EAAE,SAAS,EAAE,CAAA"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
/**
|
|
3
|
+
* @file packages/ui/src/components/card.tsx
|
|
4
|
+
* @description Moe-Brutalist card — general-purpose bordered container with header/content/footer.
|
|
5
|
+
*/
|
|
6
|
+
import { cva } from 'class-variance-authority';
|
|
7
|
+
import * as React from 'react';
|
|
8
|
+
import { cn } from '../lib/utils';
|
|
9
|
+
const cardVariants = cva('rounded-none border-2 bg-surface', {
|
|
10
|
+
variants: {
|
|
11
|
+
variant: {
|
|
12
|
+
default: 'border-white shadow-hard',
|
|
13
|
+
threat: 'border-threat shadow-hard-threat',
|
|
14
|
+
ghost: 'border-white/20 shadow-none',
|
|
15
|
+
},
|
|
16
|
+
interactive: {
|
|
17
|
+
true: 'cursor-pointer hover:shadow-hard-pink active:shadow-hard-sm focus-visible:outline-none focus-visible:shadow-hard-focus',
|
|
18
|
+
},
|
|
19
|
+
},
|
|
20
|
+
defaultVariants: {
|
|
21
|
+
variant: 'default',
|
|
22
|
+
},
|
|
23
|
+
});
|
|
24
|
+
const Card = React.forwardRef(({ className, variant, interactive, ...props }, ref) => (_jsx("div", { className: cn(cardVariants({ variant, interactive, className })), ref: ref, ...props })));
|
|
25
|
+
Card.displayName = 'Card';
|
|
26
|
+
const CardHeader = React.forwardRef(({ className, ...props }, ref) => (_jsx("div", { className: cn('border-b-2 border-white/20 px-4 py-3', className), ref: ref, ...props })));
|
|
27
|
+
CardHeader.displayName = 'CardHeader';
|
|
28
|
+
const CardTitle = React.forwardRef(({ className, ...props }, ref) => (_jsx("h3", { className: cn('font-display text-xl font-bold text-white', className), ref: ref, ...props })));
|
|
29
|
+
CardTitle.displayName = 'CardTitle';
|
|
30
|
+
const CardContent = React.forwardRef(({ className, ...props }, ref) => (_jsx("div", { className: cn('p-4', className), ref: ref, ...props })));
|
|
31
|
+
CardContent.displayName = 'CardContent';
|
|
32
|
+
const CardFooter = React.forwardRef(({ className, ...props }, ref) => (_jsx("div", { className: cn('flex gap-3 border-t-2 border-white/20 px-4 py-3 justify-end', className), ref: ref, ...props })));
|
|
33
|
+
CardFooter.displayName = 'CardFooter';
|
|
34
|
+
export { Card, CardHeader, CardTitle, CardContent, CardFooter, cardVariants };
|
|
35
|
+
//# sourceMappingURL=card.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"card.js","sourceRoot":"","sources":["../../src/components/card.tsx"],"names":[],"mappings":";AAAA;;;GAGG;AAEH,OAAO,EAAE,GAAG,EAAqB,MAAM,0BAA0B,CAAA;AACjE,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAA;AAEjC,MAAM,YAAY,GAAG,GAAG,CAAC,kCAAkC,EAAE;IAC3D,QAAQ,EAAE;QACR,OAAO,EAAE;YACP,OAAO,EAAE,0BAA0B;YACnC,MAAM,EAAE,kCAAkC;YAC1C,KAAK,EAAE,6BAA6B;SACrC;QACD,WAAW,EAAE;YACX,IAAI,EAAE,wHAAwH;SAC/H;KACF;IACD,eAAe,EAAE;QACf,OAAO,EAAE,SAAS;KACnB;CACF,CAAC,CAAA;AAIF,MAAM,IAAI,GAAG,KAAK,CAAC,UAAU,CAC3B,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,CACtD,cAAK,SAAS,EAAE,EAAE,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,KAAM,KAAK,GAAI,CAC/F,CACF,CAAA;AACD,IAAI,CAAC,WAAW,GAAG,MAAM,CAAA;AAEzB,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,CACjC,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,CAChC,cAAK,SAAS,EAAE,EAAE,CAAC,sCAAsC,EAAE,SAAS,CAAC,EAAE,GAAG,EAAE,GAAG,KAAM,KAAK,GAAI,CAC/F,CACF,CAAA;AACD,UAAU,CAAC,WAAW,GAAG,YAAY,CAAA;AAErC,MAAM,SAAS,GAAG,KAAK,CAAC,UAAU,CAChC,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,CAChC,aAAI,SAAS,EAAE,EAAE,CAAC,2CAA2C,EAAE,SAAS,CAAC,EAAE,GAAG,EAAE,GAAG,KAAM,KAAK,GAAI,CACnG,CACF,CAAA;AACD,SAAS,CAAC,WAAW,GAAG,WAAW,CAAA;AAEnC,MAAM,WAAW,GAAG,KAAK,CAAC,UAAU,CAClC,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,CAChC,cAAK,SAAS,EAAE,EAAE,CAAC,KAAK,EAAE,SAAS,CAAC,EAAE,GAAG,EAAE,GAAG,KAAM,KAAK,GAAI,CAC9D,CACF,CAAA;AACD,WAAW,CAAC,WAAW,GAAG,aAAa,CAAA;AAEvC,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,CACjC,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,CAChC,cACE,SAAS,EAAE,EAAE,CAAC,6DAA6D,EAAE,SAAS,CAAC,EACvF,GAAG,EAAE,GAAG,KACJ,KAAK,GACT,CACH,CACF,CAAA;AACD,UAAU,CAAC,WAAW,GAAG,YAAY,CAAA;AAErC,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,YAAY,EAAE,CAAA"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file packages/ui/src/components/charts.tsx
|
|
3
|
+
* @description Moe-Brutalist chart components built on Recharts.
|
|
4
|
+
* No smooth curves. Step interpolation. Hard grid. Palette colors. Monospace axes.
|
|
5
|
+
*/
|
|
6
|
+
declare const COLORS: {
|
|
7
|
+
pink: string;
|
|
8
|
+
cyan: string;
|
|
9
|
+
lavender: string;
|
|
10
|
+
peach: string;
|
|
11
|
+
threat: string;
|
|
12
|
+
critical: string;
|
|
13
|
+
white: string;
|
|
14
|
+
secondary: string;
|
|
15
|
+
surface: string;
|
|
16
|
+
void: string;
|
|
17
|
+
grid: string;
|
|
18
|
+
};
|
|
19
|
+
/**
|
|
20
|
+
* Signal timeline — step area chart showing volume over time.
|
|
21
|
+
* Uses step interpolation (no smooth curves) for the Moe-Brutalist aesthetic.
|
|
22
|
+
*/
|
|
23
|
+
type TimelineProps = {
|
|
24
|
+
data: {
|
|
25
|
+
label: string;
|
|
26
|
+
value: number;
|
|
27
|
+
}[];
|
|
28
|
+
color?: keyof typeof COLORS;
|
|
29
|
+
height?: number;
|
|
30
|
+
};
|
|
31
|
+
export declare const SignalTimeline: {
|
|
32
|
+
({ data, color, height, }: TimelineProps): import("react/jsx-runtime").JSX.Element;
|
|
33
|
+
displayName: string;
|
|
34
|
+
};
|
|
35
|
+
/**
|
|
36
|
+
* Method breakdown — horizontal bar chart showing HTTP method distribution.
|
|
37
|
+
*/
|
|
38
|
+
type MethodBarProps = {
|
|
39
|
+
data: {
|
|
40
|
+
method: string;
|
|
41
|
+
count: number;
|
|
42
|
+
}[];
|
|
43
|
+
height?: number;
|
|
44
|
+
};
|
|
45
|
+
export declare const MethodBreakdown: {
|
|
46
|
+
({ data, height, }: MethodBarProps): import("react/jsx-runtime").JSX.Element;
|
|
47
|
+
displayName: string;
|
|
48
|
+
};
|
|
49
|
+
/**
|
|
50
|
+
* Top paths — horizontal bar chart showing most-hit paths.
|
|
51
|
+
*/
|
|
52
|
+
type PathBarProps = {
|
|
53
|
+
data: {
|
|
54
|
+
path: string;
|
|
55
|
+
count: number;
|
|
56
|
+
}[];
|
|
57
|
+
color?: keyof typeof COLORS;
|
|
58
|
+
height?: number;
|
|
59
|
+
};
|
|
60
|
+
export declare const TopPaths: {
|
|
61
|
+
({ data, color, height, }: PathBarProps): import("react/jsx-runtime").JSX.Element;
|
|
62
|
+
displayName: string;
|
|
63
|
+
};
|
|
64
|
+
export {};
|
|
65
|
+
//# sourceMappingURL=charts.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"charts.d.ts","sourceRoot":"","sources":["../../src/components/charts.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAkBH,QAAA,MAAM,MAAM;;;;;;;;;;;;CAYX,CAAA;AA4CD;;;GAGG;AACH,KAAK,aAAa,GAAG;IACnB,IAAI,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;IACxC,KAAK,CAAC,EAAE,MAAM,OAAO,MAAM,CAAA;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB,CAAA;AAED,eAAO,MAAM,cAAc;+BAIxB,aAAa;;CA2Bf,CAAA;AAED;;GAEG;AACH,KAAK,cAAc,GAAG;IACpB,IAAI,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;IACzC,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB,CAAA;AAYD,eAAO,MAAM,eAAe;wBAGzB,cAAc;;CA0BhB,CAAA;AAED;;GAEG;AACH,KAAK,YAAY,GAAG;IAClB,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;IACvC,KAAK,CAAC,EAAE,MAAM,OAAO,MAAM,CAAA;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB,CAAA;AAKD,eAAO,MAAM,QAAQ;+BAIlB,YAAY;;CAsBd,CAAA"}
|