@gtcx/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/dist/components/ai/index.d.ts +3 -0
- package/dist/components/ai/index.d.ts.map +1 -0
- package/dist/components/ai/insight-card.d.ts +16 -0
- package/dist/components/ai/insight-card.d.ts.map +1 -0
- package/dist/components/data/advanced-table.d.ts +45 -0
- package/dist/components/data/advanced-table.d.ts.map +1 -0
- package/dist/components/data/avatar-group.d.ts +19 -0
- package/dist/components/data/avatar-group.d.ts.map +1 -0
- package/dist/components/data/avatar.d.ts +42 -0
- package/dist/components/data/avatar.d.ts.map +1 -0
- package/dist/components/data/badge.d.ts +53 -0
- package/dist/components/data/badge.d.ts.map +1 -0
- package/dist/components/data/card.d.ts +64 -0
- package/dist/components/data/card.d.ts.map +1 -0
- package/dist/components/data/data-visualization.d.ts +31 -0
- package/dist/components/data/data-visualization.d.ts.map +1 -0
- package/dist/components/data/index.d.ts +17 -0
- package/dist/components/data/index.d.ts.map +1 -0
- package/dist/components/data/rating.d.ts +25 -0
- package/dist/components/data/rating.d.ts.map +1 -0
- package/dist/components/data/skeleton.d.ts +16 -0
- package/dist/components/data/skeleton.d.ts.map +1 -0
- package/dist/components/effects/glassmorphism-card.d.ts +12 -0
- package/dist/components/effects/glassmorphism-card.d.ts.map +1 -0
- package/dist/components/effects/index.d.ts +3 -0
- package/dist/components/effects/index.d.ts.map +1 -0
- package/dist/components/feedback/accordion.d.ts +30 -0
- package/dist/components/feedback/accordion.d.ts.map +1 -0
- package/dist/components/feedback/alert-dialog.d.ts +67 -0
- package/dist/components/feedback/alert-dialog.d.ts.map +1 -0
- package/dist/components/feedback/alert.d.ts +60 -0
- package/dist/components/feedback/alert.d.ts.map +1 -0
- package/dist/components/feedback/collapsible.d.ts +32 -0
- package/dist/components/feedback/collapsible.d.ts.map +1 -0
- package/dist/components/feedback/content-loader.d.ts +12 -0
- package/dist/components/feedback/content-loader.d.ts.map +1 -0
- package/dist/components/feedback/dialog.d.ts +73 -0
- package/dist/components/feedback/dialog.d.ts.map +1 -0
- package/dist/components/feedback/hover-card.d.ts +22 -0
- package/dist/components/feedback/hover-card.d.ts.map +1 -0
- package/dist/components/feedback/index.d.ts +28 -0
- package/dist/components/feedback/index.d.ts.map +1 -0
- package/dist/components/feedback/popover.d.ts +29 -0
- package/dist/components/feedback/popover.d.ts.map +1 -0
- package/dist/components/feedback/progress.d.ts +33 -0
- package/dist/components/feedback/progress.d.ts.map +1 -0
- package/dist/components/feedback/screen-loader.d.ts +13 -0
- package/dist/components/feedback/screen-loader.d.ts.map +1 -0
- package/dist/components/feedback/sheet.d.ts +69 -0
- package/dist/components/feedback/sheet.d.ts.map +1 -0
- package/dist/components/feedback/toaster.d.ts +31 -0
- package/dist/components/feedback/toaster.d.ts.map +1 -0
- package/dist/components/feedback/tooltip.d.ts +13 -0
- package/dist/components/feedback/tooltip.d.ts.map +1 -0
- package/dist/components/forms/button.d.ts +34 -0
- package/dist/components/forms/button.d.ts.map +1 -0
- package/dist/components/forms/calendar.d.ts +12 -0
- package/dist/components/forms/calendar.d.ts.map +1 -0
- package/dist/components/forms/checkbox.d.ts +17 -0
- package/dist/components/forms/checkbox.d.ts.map +1 -0
- package/dist/components/forms/file-upload.d.ts +37 -0
- package/dist/components/forms/file-upload.d.ts.map +1 -0
- package/dist/components/forms/form.d.ts +48 -0
- package/dist/components/forms/form.d.ts.map +1 -0
- package/dist/components/forms/image-input.d.ts +20 -0
- package/dist/components/forms/image-input.d.ts.map +1 -0
- package/dist/components/forms/index.d.ts +29 -0
- package/dist/components/forms/index.d.ts.map +1 -0
- package/dist/components/forms/input.d.ts +58 -0
- package/dist/components/forms/input.d.ts.map +1 -0
- package/dist/components/forms/label.d.ts +19 -0
- package/dist/components/forms/label.d.ts.map +1 -0
- package/dist/components/forms/radio-group.d.ts +39 -0
- package/dist/components/forms/radio-group.d.ts.map +1 -0
- package/dist/components/forms/select.d.ts +18 -0
- package/dist/components/forms/select.d.ts.map +1 -0
- package/dist/components/forms/switch.d.ts +32 -0
- package/dist/components/forms/switch.d.ts.map +1 -0
- package/dist/components/forms/textarea.d.ts +14 -0
- package/dist/components/forms/textarea.d.ts.map +1 -0
- package/dist/components/forms/toggle-group.d.ts +33 -0
- package/dist/components/forms/toggle-group.d.ts.map +1 -0
- package/dist/components/forms/toggle.d.ts +27 -0
- package/dist/components/forms/toggle.d.ts.map +1 -0
- package/dist/components/index.d.ts +8 -0
- package/dist/components/index.d.ts.map +1 -0
- package/dist/components/layout/header.d.ts +49 -0
- package/dist/components/layout/header.d.ts.map +1 -0
- package/dist/components/layout/index.d.ts +13 -0
- package/dist/components/layout/index.d.ts.map +1 -0
- package/dist/components/layout/metronic-layout.d.ts +104 -0
- package/dist/components/layout/metronic-layout.d.ts.map +1 -0
- package/dist/components/layout/responsive-grid.d.ts +49 -0
- package/dist/components/layout/responsive-grid.d.ts.map +1 -0
- package/dist/components/layout/scroll-area.d.ts +24 -0
- package/dist/components/layout/scroll-area.d.ts.map +1 -0
- package/dist/components/layout/separator.d.ts +12 -0
- package/dist/components/layout/separator.d.ts.map +1 -0
- package/dist/components/layout/split-pane.d.ts +32 -0
- package/dist/components/layout/split-pane.d.ts.map +1 -0
- package/dist/components/navigation/breadcrumbs.d.ts +24 -0
- package/dist/components/navigation/breadcrumbs.d.ts.map +1 -0
- package/dist/components/navigation/command.d.ts +35 -0
- package/dist/components/navigation/command.d.ts.map +1 -0
- package/dist/components/navigation/context-menu.d.ts +24 -0
- package/dist/components/navigation/context-menu.d.ts.map +1 -0
- package/dist/components/navigation/dropdown-menu.d.ts +49 -0
- package/dist/components/navigation/dropdown-menu.d.ts.map +1 -0
- package/dist/components/navigation/index.d.ts +21 -0
- package/dist/components/navigation/index.d.ts.map +1 -0
- package/dist/components/navigation/mega-menu.d.ts +47 -0
- package/dist/components/navigation/mega-menu.d.ts.map +1 -0
- package/dist/components/navigation/menubar.d.ts +25 -0
- package/dist/components/navigation/menubar.d.ts.map +1 -0
- package/dist/components/navigation/navigation-menu.d.ts +28 -0
- package/dist/components/navigation/navigation-menu.d.ts.map +1 -0
- package/dist/components/navigation/platform-tabs.d.ts +39 -0
- package/dist/components/navigation/platform-tabs.d.ts.map +1 -0
- package/dist/components/navigation/side-nav.d.ts +55 -0
- package/dist/components/navigation/side-nav.d.ts.map +1 -0
- package/dist/components/navigation/tabs.d.ts +40 -0
- package/dist/components/navigation/tabs.d.ts.map +1 -0
- package/dist/components/navigation/toolbar.d.ts +33 -0
- package/dist/components/navigation/toolbar.d.ts.map +1 -0
- package/dist/hooks/index.d.ts +15 -0
- package/dist/hooks/index.d.ts.map +1 -0
- package/dist/hooks/use-body-class.d.ts +8 -0
- package/dist/hooks/use-body-class.d.ts.map +1 -0
- package/dist/hooks/use-breakpoint.d.ts +22 -0
- package/dist/hooks/use-breakpoint.d.ts.map +1 -0
- package/dist/hooks/use-copy-to-clipboard.d.ts +15 -0
- package/dist/hooks/use-copy-to-clipboard.d.ts.map +1 -0
- package/dist/hooks/use-menu.d.ts +19 -0
- package/dist/hooks/use-menu.d.ts.map +1 -0
- package/dist/hooks/use-mounted.d.ts +8 -0
- package/dist/hooks/use-mounted.d.ts.map +1 -0
- package/dist/hooks/use-responsive.d.ts +11 -0
- package/dist/hooks/use-responsive.d.ts.map +1 -0
- package/dist/hooks/use-scroll-position.d.ts +13 -0
- package/dist/hooks/use-scroll-position.d.ts.map +1 -0
- package/dist/hooks/use-slider-input.d.ts +24 -0
- package/dist/hooks/use-slider-input.d.ts.map +1 -0
- package/dist/hooks/use-viewport.d.ts +6 -0
- package/dist/hooks/use-viewport.d.ts.map +1 -0
- package/dist/index.d.mts +566 -0
- package/dist/index.d.ts +12 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +6590 -0
- package/dist/index.mjs +6418 -0
- package/dist/themes/index.d.ts +6 -0
- package/dist/themes/index.d.ts.map +1 -0
- package/dist/tokens/index.d.ts +6 -0
- package/dist/tokens/index.d.ts.map +1 -0
- package/package.json +55 -0
- package/readme.md +143 -0
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Re-export canonical theme utilities from @gtcx/theme.
|
|
3
|
+
*/
|
|
4
|
+
export { createAntdTheme, GtcxConfigProvider, useGtcxTheme } from '@gtcx/theme';
|
|
5
|
+
export type { CreateAntdThemeOptions, TokensOverride, ThemeMode, ThemeDensity, GtcxConfigProviderProps, } from '@gtcx/theme';
|
|
6
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/themes/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChF,YAAY,EACV,sBAAsB,EACtB,cAAc,EACd,SAAS,EACT,YAAY,EACZ,uBAAuB,GACxB,MAAM,aAAa,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Re-export canonical tokens from @gtcx/tokens, aliased to preserve
|
|
3
|
+
* @gtcx/ui's existing public API names.
|
|
4
|
+
*/
|
|
5
|
+
export { colorPrimitives as colors, darkColors, spacingPrimitives as spacing, fontFamilyPrimitives as fontFamilies, fontWeightPrimitives as fontWeights, fontSizePrimitives as fontSizes, lineHeightPrimitives as lineHeights, letterSpacingPrimitives as letterSpacing, borderRadiusPrimitives as radii, shadowPrimitives as shadows, breakpointPrimitives as breakpoints, zIndexPrimitives as zIndex, transitionPrimitives as transitions, semanticColors as colorTokens, semanticSpacing as spacingTokens, semanticTypography as typography, } from '@gtcx/tokens';
|
|
6
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tokens/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAEL,eAAe,IAAI,MAAM,EACzB,UAAU,EACV,iBAAiB,IAAI,OAAO,EAC5B,oBAAoB,IAAI,YAAY,EACpC,oBAAoB,IAAI,WAAW,EACnC,kBAAkB,IAAI,SAAS,EAC/B,oBAAoB,IAAI,WAAW,EACnC,uBAAuB,IAAI,aAAa,EACxC,sBAAsB,IAAI,KAAK,EAC/B,gBAAgB,IAAI,OAAO,EAC3B,oBAAoB,IAAI,WAAW,EACnC,gBAAgB,IAAI,MAAM,EAC1B,oBAAoB,IAAI,WAAW,EAEnC,cAAc,IAAI,WAAW,EAC7B,eAAe,IAAI,aAAa,EAChC,kBAAkB,IAAI,UAAU,GACjC,MAAM,cAAc,CAAC"}
|
package/package.json
ADDED
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@gtcx/ui",
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"description": "GTCX shared UI components and design system",
|
|
5
|
+
"main": "dist/index.cjs",
|
|
6
|
+
"module": "dist/index.js",
|
|
7
|
+
"types": "dist/index.d.ts",
|
|
8
|
+
"exports": {
|
|
9
|
+
".": {
|
|
10
|
+
"types": "./dist/index.d.ts",
|
|
11
|
+
"import": "./dist/index.js",
|
|
12
|
+
"require": "./dist/index.cjs"
|
|
13
|
+
}
|
|
14
|
+
},
|
|
15
|
+
"sideEffects": false,
|
|
16
|
+
"scripts": {
|
|
17
|
+
"build": "tsup && tsc --emitDeclarationOnly --declaration --outDir dist",
|
|
18
|
+
"dev": "tsup src/index.ts --format esm,cjs --dts --watch",
|
|
19
|
+
"lint": "eslint src/",
|
|
20
|
+
"typecheck": "tsc --noEmit",
|
|
21
|
+
"type-check": "tsc --noEmit",
|
|
22
|
+
"test": "vitest run",
|
|
23
|
+
"test:watch": "vitest",
|
|
24
|
+
"test:coverage": "vitest run --coverage"
|
|
25
|
+
},
|
|
26
|
+
"dependencies": {
|
|
27
|
+
"@ant-design/icons": "^5.2.0",
|
|
28
|
+
"@gtcx/theme": "workspace:*",
|
|
29
|
+
"@gtcx/tokens": "workspace:*",
|
|
30
|
+
"@gtcx/utils": "workspace:*",
|
|
31
|
+
"antd": "^5.12.0",
|
|
32
|
+
"framer-motion": "^10.16.0",
|
|
33
|
+
"lucide-react": "^0.294.0"
|
|
34
|
+
},
|
|
35
|
+
"peerDependencies": {
|
|
36
|
+
"react": "^18.0.0 || ^19.0.0",
|
|
37
|
+
"react-dom": "^18.0.0 || ^19.0.0"
|
|
38
|
+
},
|
|
39
|
+
"devDependencies": {
|
|
40
|
+
"@testing-library/react": "14",
|
|
41
|
+
"@types/react": "^18.0.0",
|
|
42
|
+
"@types/react-dom": "^18.0.0",
|
|
43
|
+
"@vitest/coverage-v8": "^2.1.0",
|
|
44
|
+
"tsup": "^8.0.0",
|
|
45
|
+
"typescript": "^5.0.0",
|
|
46
|
+
"vitest": "^2.1.0"
|
|
47
|
+
},
|
|
48
|
+
"files": [
|
|
49
|
+
"dist",
|
|
50
|
+
"README.md"
|
|
51
|
+
],
|
|
52
|
+
"publishConfig": {
|
|
53
|
+
"access": "public"
|
|
54
|
+
}
|
|
55
|
+
}
|
package/readme.md
ADDED
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
# @gtcx/ui
|
|
2
|
+
|
|
3
|
+
Shared UI components and design system for all GTCX platforms and applications.
|
|
4
|
+
|
|
5
|
+
## Installation
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
pnpm add @gtcx/ui
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
## Usage
|
|
12
|
+
|
|
13
|
+
### Theme provider
|
|
14
|
+
|
|
15
|
+
```tsx
|
|
16
|
+
import { GtcxConfigProvider } from '@gtcx/theme';
|
|
17
|
+
|
|
18
|
+
function App() {
|
|
19
|
+
return (
|
|
20
|
+
<GtcxConfigProvider>
|
|
21
|
+
<YourApp />
|
|
22
|
+
</GtcxConfigProvider>
|
|
23
|
+
);
|
|
24
|
+
}
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
### Components
|
|
28
|
+
|
|
29
|
+
```tsx
|
|
30
|
+
import { Header, Card, CardContent, Button, Badge, AIInsightCard } from '@gtcx/ui';
|
|
31
|
+
|
|
32
|
+
// Application header
|
|
33
|
+
<Header user={{ name: 'Kwame', email: 'kwame@example.com' }} />
|
|
34
|
+
|
|
35
|
+
// Card with badge and button
|
|
36
|
+
<Card variant="elevated">
|
|
37
|
+
<CardContent>
|
|
38
|
+
<Badge variant="success">Verified</Badge>
|
|
39
|
+
<Button variant="primary">Submit</Button>
|
|
40
|
+
</CardContent>
|
|
41
|
+
</Card>
|
|
42
|
+
|
|
43
|
+
// AI insight card
|
|
44
|
+
<AIInsightCard
|
|
45
|
+
type="prediction"
|
|
46
|
+
title="Revenue Forecast"
|
|
47
|
+
description="Expected 15% increase in Q2"
|
|
48
|
+
confidence={87}
|
|
49
|
+
impact="high"
|
|
50
|
+
actions={['Review forecast', 'Update targets']}
|
|
51
|
+
/>
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
### Tokens
|
|
55
|
+
|
|
56
|
+
```tsx
|
|
57
|
+
import { colorPrimitives, semanticSpacing } from '@gtcx/tokens';
|
|
58
|
+
|
|
59
|
+
const style = {
|
|
60
|
+
color: colorPrimitives.primary[500],
|
|
61
|
+
padding: semanticSpacing.md,
|
|
62
|
+
};
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
### Hooks
|
|
66
|
+
|
|
67
|
+
```tsx
|
|
68
|
+
import { useBreakpoint, useResponsive } from '@gtcx/ui';
|
|
69
|
+
|
|
70
|
+
function Component() {
|
|
71
|
+
const { isMobile, isDesktop } = useBreakpoint();
|
|
72
|
+
const padding = useResponsive({ xs: 8, md: 16, lg: 24 });
|
|
73
|
+
|
|
74
|
+
return <div style={{ padding }}>{isMobile ? 'Mobile' : 'Desktop'}</div>;
|
|
75
|
+
}
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
## Components (53+)
|
|
79
|
+
|
|
80
|
+
### Navigation (10)
|
|
81
|
+
|
|
82
|
+
SideNav, Toolbar, Breadcrumbs, MegaMenu, DropdownMenu, ContextMenu, Menubar, Command, Tabs, NavigationMenu
|
|
83
|
+
|
|
84
|
+
### Data Display (8)
|
|
85
|
+
|
|
86
|
+
AdvancedTable, Card, Badge, Avatar, Skeleton, DataVisualization, AvatarGroup, Rating
|
|
87
|
+
|
|
88
|
+
### Forms (14)
|
|
89
|
+
|
|
90
|
+
Button, Input, Label, Checkbox, Switch, Select, Textarea, Form, Calendar, DatePicker, Toggle, ToggleGroup, RadioGroup, FileUpload, ImageInput
|
|
91
|
+
|
|
92
|
+
### Feedback (14)
|
|
93
|
+
|
|
94
|
+
Alert, Dialog, AlertDialog, Sheet, Tooltip, Popover, HoverCard, toast, Accordion, Collapsible, Progress, ContentLoader, ScreenLoader, Toaster
|
|
95
|
+
|
|
96
|
+
### Layout (6)
|
|
97
|
+
|
|
98
|
+
Header, Separator, ScrollArea, ResponsiveGrid, SplitPane, MetronicLayout (8 variants)
|
|
99
|
+
|
|
100
|
+
### Effects (1)
|
|
101
|
+
|
|
102
|
+
GlassmorphismCard
|
|
103
|
+
|
|
104
|
+
### AI (1)
|
|
105
|
+
|
|
106
|
+
AIInsightCard
|
|
107
|
+
|
|
108
|
+
### Hooks (9)
|
|
109
|
+
|
|
110
|
+
useBreakpoint, useResponsive, useBodyClass, useCopyToClipboard, useMounted, useScrollPosition, useMenu, useViewport, useSliderInput
|
|
111
|
+
|
|
112
|
+
## Structure
|
|
113
|
+
|
|
114
|
+
```
|
|
115
|
+
src/
|
|
116
|
+
├── tokens/ # Re-exports from @gtcx/tokens
|
|
117
|
+
├── themes/ # Re-exports from @gtcx/theme
|
|
118
|
+
├── hooks/ # Shared hooks
|
|
119
|
+
└── components/
|
|
120
|
+
├── ai/ # AI insight components
|
|
121
|
+
├── data/ # Tables, cards, badges, avatars, skeletons
|
|
122
|
+
├── effects/ # Visual effects (glassmorphism)
|
|
123
|
+
├── feedback/ # Dialogs, sheets, alerts, tooltips, popovers
|
|
124
|
+
├── forms/ # Buttons, inputs, selects, checkboxes, toggles
|
|
125
|
+
├── layout/ # Header, separator, scroll area
|
|
126
|
+
└── navigation/ # Side nav, toolbar, menus, breadcrumbs, command
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
## Development
|
|
130
|
+
|
|
131
|
+
```bash
|
|
132
|
+
# Build
|
|
133
|
+
pnpm build
|
|
134
|
+
|
|
135
|
+
# Watch mode
|
|
136
|
+
pnpm dev
|
|
137
|
+
|
|
138
|
+
# Type check
|
|
139
|
+
pnpm type-check
|
|
140
|
+
|
|
141
|
+
# Test
|
|
142
|
+
pnpm test
|
|
143
|
+
```
|