@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 +163 -0
- package/fesm2022/life-cockpit-angular-ui-kit.mjs +6842 -0
- package/fesm2022/life-cockpit-angular-ui-kit.mjs.map +1 -0
- package/package.json +42 -0
- package/src/assets/life-cockpit-emblem.svg +1740 -0
- package/src/assets/life-cockpit-logo.svg +1 -0
- package/src/assets/life-cockpit-logo_old.svg +59 -0
- package/types/life-cockpit-angular-ui-kit.d.ts +3621 -0
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
|