@life-cockpit/angular-ui-kit 1.0.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/README.md ADDED
@@ -0,0 +1,163 @@
1
+ # @life-cockpit/angular-ui-kit
2
+
3
+ Angular UI component library for the Life Cockpit Design System.
4
+
5
+ ## Installation
6
+
7
+ ```bash
8
+ npm install @life-cockpit/angular-ui-kit
9
+ ```
10
+
11
+ ### Peer Dependencies
12
+
13
+ Make sure these are installed in your project:
14
+
15
+ ```bash
16
+ npm install @angular/cdk @angular/common @angular/core @angular/forms @angular/platform-browser @angular/router rxjs
17
+ ```
18
+
19
+ ## Setup
20
+
21
+ Import the global styles in your `styles.scss`:
22
+
23
+ ```scss
24
+ @import '@life-cockpit/angular-ui-kit/styles/index.scss';
25
+ ```
26
+
27
+ ## Usage
28
+
29
+ Import components directly in your Angular standalone components or modules:
30
+
31
+ ```typescript
32
+ import { ButtonComponent, CardComponent } from '@life-cockpit/angular-ui-kit';
33
+
34
+ @Component({
35
+ standalone: true,
36
+ imports: [ButtonComponent, CardComponent],
37
+ template: `
38
+ <lc-card>
39
+ <lc-button variant="primary">Click me</lc-button>
40
+ </lc-card>
41
+ `,
42
+ })
43
+ export class MyComponent {}
44
+ ```
45
+
46
+ ## Components
47
+
48
+ ### General
49
+
50
+ | Component | Selector | Description |
51
+ |-----------|----------|-------------|
52
+ | Accordion | `lc-accordion` | Expandable/collapsible content panels |
53
+ | Button | `lc-button` | Primary, secondary, and text buttons |
54
+ | Card | `lc-card` | Content container with elevation |
55
+ | Icon | `lc-icon` | SVG icon display |
56
+ | Logo | `lc-logo` | Life Cockpit logo |
57
+ | Menu | `lc-menu` | Dropdown menu |
58
+ | Typography | `lc-typography` | Text with preset styles |
59
+
60
+ ### Form
61
+
62
+ | Component | Selector | Description |
63
+ |-----------|----------|-------------|
64
+ | Checkbox | `lc-checkbox` | Checkbox input |
65
+ | Datepicker | `lc-datepicker` | Date selection |
66
+ | Email Input | `lc-email-input` | Email-specific input |
67
+ | Input | `lc-input` | Text input field |
68
+ | Password Input | `lc-password-input` | Password input with toggle |
69
+ | Radio | `lc-radio` | Radio button group |
70
+ | Select | `lc-select` | Dropdown select |
71
+ | Switch | `lc-switch` | Toggle switch |
72
+ | Textarea | `lc-textarea` | Multi-line text input |
73
+ | Verification Code | `lc-verification-code-input` | OTP/code input |
74
+
75
+ ### Layout
76
+
77
+ | Component | Selector | Description |
78
+ |-----------|----------|-------------|
79
+ | Container | `lc-container` | Page container with max-width |
80
+ | Drawer | `lc-drawer` | Slide-in side panel |
81
+ | Section | `lc-section` | Content section |
82
+ | Spacer | `lc-spacer` | Spacing utility |
83
+ | Stack | `lc-stack` | Flex layout utility |
84
+
85
+ ### Navigation
86
+
87
+ | Component | Selector | Description |
88
+ |-----------|----------|-------------|
89
+ | Breadcrumbs | `lc-breadcrumbs` | Breadcrumb navigation |
90
+ | Header | `lc-header` | Page header |
91
+ | Pagination | `lc-pagination` | Page navigation |
92
+ | Sidenav | `lc-sidenav` | Side navigation |
93
+ | Tabs | `lc-tabs` | Tab navigation |
94
+
95
+ ### Data Display
96
+
97
+ | Component | Selector | Description |
98
+ |-----------|----------|-------------|
99
+ | Avatar | `lc-avatar` | User avatar |
100
+ | Badge | `lc-badge` | Status badge |
101
+ | Chip | `lc-chip` | Tag/label chip |
102
+ | Empty State | `lc-empty-state` | Placeholder for empty content |
103
+ | Field Group | `lc-field-group` | Grouped form fields |
104
+ | Filter Bar | `lc-filter-bar` | Filter controls |
105
+ | List | `lc-list` | List display |
106
+ | Metric Card | `lc-metric-card` | KPI/metric display |
107
+ | Skeleton | `lc-skeleton` | Loading placeholder |
108
+ | Spinner | `lc-spinner` | Loading indicator |
109
+ | Stepper | `lc-stepper` | Step-by-step progress |
110
+ | Table | `lc-table` | Data table |
111
+ | Toggle Group | `lc-toggle-group` | Segmented toggle |
112
+
113
+ ### Feedback
114
+
115
+ | Component | Selector | Description |
116
+ |-----------|----------|-------------|
117
+ | Alert | `lc-alert` | Inline alert message |
118
+ | Error Display | `lc-error-display` | Error state display |
119
+ | Modal | `lc-modal` | Dialog/modal window |
120
+ | Toast | `lc-toast` | Notification toast |
121
+ | Tooltip | `lcTooltip` | Tooltip directive |
122
+
123
+ ## Theming
124
+
125
+ The library supports light and dark themes. Use the `ThemeService` to switch themes:
126
+
127
+ ```typescript
128
+ import { ThemeService } from '@life-cockpit/angular-ui-kit';
129
+
130
+ @Component({ ... })
131
+ export class AppComponent {
132
+ private themeService = inject(ThemeService);
133
+
134
+ toggleTheme() {
135
+ this.themeService.toggleTheme();
136
+ }
137
+ }
138
+ ```
139
+
140
+ ## Design Tokens
141
+
142
+ Design tokens for colors, spacing, typography, elevation, and more are available as TypeScript constants:
143
+
144
+ ```typescript
145
+ import { ColorTokens, SpacingTokens } from '@life-cockpit/angular-ui-kit';
146
+ ```
147
+
148
+ ## Development
149
+
150
+ ```bash
151
+ # Run unit tests
152
+ nx test angular-ui-kit
153
+
154
+ # Build the library
155
+ nx build angular-ui-kit
156
+
157
+ # Run Storybook
158
+ nx storybook angular-ui-kit
159
+ ```
160
+
161
+ ## License
162
+
163
+ MIT