@lumston/ds-angular 0.0.5 → 0.0.7

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.
Files changed (30) hide show
  1. package/package.json +2 -2
  2. package/styles/index.css +1 -1
  3. package/styles/components/data-display/badge/badge.styles.css +0 -244
  4. package/styles/components/data-display/chip/chip.styles.css +0 -245
  5. package/styles/components/dropdown/dropdown.styles.css +0 -14
  6. package/styles/components/feedback/alert/alert.styles.css +0 -304
  7. package/styles/components/feedback/loader/loader.styles.css +0 -132
  8. package/styles/components/feedback/progress-bar/progress-bar.styles.css +0 -193
  9. package/styles/components/icon/icon.styles.css +0 -11
  10. package/styles/components/inputs/button/button.styles.css +0 -377
  11. package/styles/components/inputs/checkbox/checkbox.styles.css +0 -157
  12. package/styles/components/inputs/icon-button/icon-button.styles.css +0 -157
  13. package/styles/components/inputs/radio-button/radio-button.styles.css +0 -274
  14. package/styles/components/inputs/slider/slider.styles.css +0 -228
  15. package/styles/components/inputs/switch/switch.styles.css +0 -483
  16. package/styles/components/media/avatar/avatar.styles.css +0 -112
  17. package/styles/components/media/avatar-group/avatar-group.styles.css +0 -37
  18. package/styles/components/media/logo/logo.styles.css +0 -40
  19. package/styles/components/navigation/breadcrumb/breadcrumb.styles.css +0 -144
  20. package/styles/components/navigation/pagination/pagination.styles.css +0 -336
  21. package/styles/components/overlay/menu/menu.styles.css +0 -138
  22. package/styles/components/overlay/modal/modal.styles.css +0 -178
  23. package/styles/components/overlay/popover/popover.styles.css +0 -112
  24. package/styles/components/overlay/tooltip/tooltip.styles.css +0 -172
  25. package/styles/components/styles/_base.css +0 -10
  26. package/styles/components/styles/_tokens.css +0 -75
  27. package/styles/components/styles/index.css +0 -28
  28. package/styles/components/typography/link/link.styles.css +0 -93
  29. package/styles/components/typography/tag/tag.styles.css +0 -274
  30. package/styles/components/typography/text/text.styles.css +0 -176
@@ -1,483 +0,0 @@
1
- /* Switch Component — Pure CSS */
2
-
3
- :host {
4
- display: inline-flex;
5
- }
6
-
7
- .switch {
8
- display: inline-flex;
9
- align-items: center;
10
- gap: 8px;
11
- cursor: pointer;
12
- position: relative;
13
- }
14
-
15
- /* ── Track ── */
16
-
17
- .switch-track {
18
- position: relative;
19
- display: inline-flex;
20
- align-items: center;
21
- border: none;
22
- border-radius: 999px;
23
- padding: 2px;
24
- cursor: pointer;
25
- transition:
26
- background-color var(--ls-transition-duration),
27
- border-color var(--ls-transition-duration);
28
- outline: none;
29
- flex-shrink: 0;
30
- }
31
-
32
- /* ── Thumb ── */
33
-
34
- .switch-thumb {
35
- display: flex;
36
- align-items: center;
37
- justify-content: center;
38
- border-radius: 50%;
39
- background-color: #fff;
40
- transition: transform var(--ls-transition-duration);
41
- box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
42
- }
43
-
44
- /* ── Icon inside thumb ── */
45
-
46
- .switch-icon {
47
- display: flex;
48
- align-items: center;
49
- justify-content: center;
50
- line-height: 0;
51
- color: #999;
52
- }
53
-
54
- .switch-icon svg {
55
- width: 100%;
56
- height: 100%;
57
- }
58
-
59
- /* ── Label ── */
60
-
61
- .switch-label {
62
- user-select: none;
63
- cursor: pointer;
64
- font-size: 0.875rem;
65
- }
66
-
67
- /* ═══════════════════════════════════════════════════════
68
- SIZES
69
- ═══════════════════════════════════════════════════════ */
70
-
71
- /* Small */
72
-
73
- .switch-sm .switch-track {
74
- width: 34px;
75
- height: 20px;
76
- }
77
-
78
- .switch-sm .switch-thumb {
79
- width: 16px;
80
- height: 16px;
81
- }
82
-
83
- .switch-sm .switch-icon {
84
- width: 10px;
85
- height: 10px;
86
- }
87
-
88
- .switch-sm.switch-checked .switch-thumb {
89
- transform: translateX(14px);
90
- }
91
-
92
- /* Medium */
93
-
94
- .switch-md .switch-track {
95
- width: 42px;
96
- height: 24px;
97
- }
98
-
99
- .switch-md .switch-thumb {
100
- width: 20px;
101
- height: 20px;
102
- }
103
-
104
- .switch-md .switch-icon {
105
- width: 12px;
106
- height: 12px;
107
- }
108
-
109
- .switch-md.switch-checked .switch-thumb {
110
- transform: translateX(18px);
111
- }
112
-
113
- /* ═══════════════════════════════════════════════════════
114
- VARIANTS — Unchecked
115
- ═══════════════════════════════════════════════════════ */
116
-
117
- /* Solid unchecked */
118
-
119
- .switch-solid .switch-track {
120
- background-color: #c4c4c4;
121
- }
122
-
123
- /* Outlined unchecked */
124
-
125
- .switch-outlined .switch-track {
126
- background-color: transparent;
127
- border: 2px solid #999;
128
- }
129
-
130
- .switch-outlined .switch-track {
131
- padding: 0;
132
- }
133
-
134
- .switch-outlined .switch-thumb {
135
- background-color: #999;
136
- }
137
-
138
- .switch-outlined .switch-icon {
139
- color: #fff;
140
- }
141
-
142
- /* ═══════════════════════════════════════════════════════
143
- COLORS — Checked state
144
- ═══════════════════════════════════════════════════════ */
145
-
146
- /* Solid checked */
147
-
148
- .switch-checked.switch-solid.switch-color-inherit
149
- .switch-track {
150
- background-color: inherit;
151
- }
152
-
153
- .switch-checked.switch-solid.switch-color-primary
154
- .switch-track {
155
- background-color: var(--ls-color-primary);
156
- }
157
-
158
- .switch-checked.switch-solid.switch-color-secondary
159
- .switch-track {
160
- background-color: var(--ls-color-secondary);
161
- }
162
-
163
- .switch-checked.switch-solid.switch-color-success
164
- .switch-track {
165
- background-color: var(--ls-color-success);
166
- }
167
-
168
- .switch-checked.switch-solid.switch-color-error
169
- .switch-track {
170
- background-color: var(--ls-color-danger);
171
- }
172
-
173
- .switch-checked.switch-solid.switch-color-info
174
- .switch-track {
175
- background-color: var(--ls-color-info);
176
- }
177
-
178
- .switch-checked.switch-solid.switch-color-warning
179
- .switch-track {
180
- background-color: var(--ls-color-warning);
181
- }
182
-
183
- /* Outlined checked */
184
-
185
- .switch-checked.switch-outlined.switch-color-inherit
186
- .switch-track {
187
- border-color: inherit;
188
- }
189
-
190
- .switch-checked.switch-outlined.switch-color-primary
191
- .switch-track {
192
- border-color: var(--ls-color-primary);
193
- }
194
-
195
- .switch-checked.switch-outlined.switch-color-secondary
196
- .switch-track {
197
- border-color: var(--ls-color-secondary);
198
- }
199
-
200
- .switch-checked.switch-outlined.switch-color-success
201
- .switch-track {
202
- border-color: var(--ls-color-success);
203
- }
204
-
205
- .switch-checked.switch-outlined.switch-color-error
206
- .switch-track {
207
- border-color: var(--ls-color-danger);
208
- }
209
-
210
- .switch-checked.switch-outlined.switch-color-info
211
- .switch-track {
212
- border-color: var(--ls-color-info);
213
- }
214
-
215
- .switch-checked.switch-outlined.switch-color-warning
216
- .switch-track {
217
- border-color: var(--ls-color-warning);
218
- }
219
-
220
- /* Outlined checked — thumb color */
221
-
222
- .switch-checked.switch-outlined.switch-color-inherit
223
- .switch-thumb {
224
- background-color: inherit;
225
- }
226
-
227
- .switch-checked.switch-outlined.switch-color-primary
228
- .switch-thumb {
229
- background-color: var(--ls-color-primary);
230
- }
231
-
232
- .switch-checked.switch-outlined.switch-color-secondary
233
- .switch-thumb {
234
- background-color: var(--ls-color-secondary);
235
- }
236
-
237
- .switch-checked.switch-outlined.switch-color-success
238
- .switch-thumb {
239
- background-color: var(--ls-color-success);
240
- }
241
-
242
- .switch-checked.switch-outlined.switch-color-error
243
- .switch-thumb {
244
- background-color: var(--ls-color-danger);
245
- }
246
-
247
- .switch-checked.switch-outlined.switch-color-info
248
- .switch-thumb {
249
- background-color: var(--ls-color-info);
250
- }
251
-
252
- .switch-checked.switch-outlined.switch-color-warning
253
- .switch-thumb {
254
- background-color: var(--ls-color-warning);
255
- }
256
-
257
- /* Outlined checked icon color — white for contrast */
258
-
259
- .switch-checked.switch-outlined .switch-icon {
260
- color: #fff;
261
- }
262
-
263
- /* Solid checked icon color — color token for contrast on white thumb */
264
-
265
- .switch-checked.switch-solid .switch-icon {
266
- color: var(--ls-color-primary);
267
- }
268
-
269
- .switch-checked.switch-solid.switch-color-secondary
270
- .switch-icon {
271
- color: var(--ls-color-secondary);
272
- }
273
-
274
- .switch-checked.switch-solid.switch-color-success
275
- .switch-icon {
276
- color: var(--ls-color-success);
277
- }
278
-
279
- .switch-checked.switch-solid.switch-color-error
280
- .switch-icon {
281
- color: var(--ls-color-danger);
282
- }
283
-
284
- .switch-checked.switch-solid.switch-color-info
285
- .switch-icon {
286
- color: var(--ls-color-info);
287
- }
288
-
289
- .switch-checked.switch-solid.switch-color-warning
290
- .switch-icon {
291
- color: var(--ls-color-warning);
292
- }
293
-
294
- .switch-checked.switch-solid.switch-color-inherit
295
- .switch-icon {
296
- color: inherit;
297
- }
298
-
299
- /* ═══════════════════════════════════════════════════════
300
- LABEL PLACEMENT
301
- ═══════════════════════════════════════════════════════ */
302
-
303
- .switch-label-end {
304
- flex-direction: row;
305
- }
306
-
307
- .switch-label-start {
308
- flex-direction: row-reverse;
309
- }
310
-
311
- .switch-label-top {
312
- flex-direction: column-reverse;
313
- align-items: center;
314
- }
315
-
316
- .switch-label-bottom {
317
- flex-direction: column;
318
- align-items: center;
319
- }
320
-
321
- /* ═══════════════════════════════════════════════════════
322
- DISABLED
323
- ═══════════════════════════════════════════════════════ */
324
-
325
- .switch-disabled {
326
- cursor: not-allowed;
327
- opacity: 0.5;
328
- pointer-events: none;
329
- }
330
-
331
- .switch-disabled .switch-label {
332
- cursor: not-allowed;
333
- }
334
-
335
- .switch-disabled .switch-track {
336
- cursor: not-allowed;
337
- }
338
-
339
- /* ═══════════════════════════════════════════════════════
340
- FOCUS
341
- ═══════════════════════════════════════════════════════ */
342
-
343
- .switch-track:focus-visible {
344
- outline: 2px solid currentColor;
345
- outline-offset: 2px;
346
- border-radius: 999px;
347
- }
348
-
349
- /* ═══════════════════════════════════════════════════════
350
- DARK MODE
351
- ═══════════════════════════════════════════════════════ */
352
-
353
- body.dark .switch-solid .switch-track {
354
- background-color: #3b3f5c;
355
- }
356
-
357
- body.dark .switch-outlined .switch-track {
358
- border-color: #555;
359
- }
360
-
361
- body.dark .switch-outlined .switch-thumb {
362
- background-color: #888;
363
- }
364
-
365
- body.dark .switch-label {
366
- color: #e0e6ed;
367
- }
368
-
369
- body.dark .switch-icon {
370
- color: #bbb;
371
- }
372
-
373
- /* Dark mode — checked solid (overrides unchecked dark) */
374
-
375
- body.dark
376
- .switch-checked.switch-solid.switch-color-primary
377
- .switch-track {
378
- background-color: var(--ls-color-primary);
379
- }
380
-
381
- body.dark
382
- .switch-checked.switch-solid.switch-color-secondary
383
- .switch-track {
384
- background-color: var(--ls-color-secondary);
385
- }
386
-
387
- body.dark
388
- .switch-checked.switch-solid.switch-color-success
389
- .switch-track {
390
- background-color: var(--ls-color-success);
391
- }
392
-
393
- body.dark
394
- .switch-checked.switch-solid.switch-color-error
395
- .switch-track {
396
- background-color: var(--ls-color-danger);
397
- }
398
-
399
- body.dark
400
- .switch-checked.switch-solid.switch-color-info
401
- .switch-track {
402
- background-color: var(--ls-color-info);
403
- }
404
-
405
- body.dark
406
- .switch-checked.switch-solid.switch-color-warning
407
- .switch-track {
408
- background-color: var(--ls-color-warning);
409
- }
410
-
411
- /* Dark mode — checked outlined */
412
-
413
- body.dark
414
- .switch-checked.switch-outlined.switch-color-primary
415
- .switch-track {
416
- border-color: var(--ls-color-primary);
417
- }
418
-
419
- body.dark
420
- .switch-checked.switch-outlined.switch-color-secondary
421
- .switch-track {
422
- border-color: var(--ls-color-secondary);
423
- }
424
-
425
- body.dark
426
- .switch-checked.switch-outlined.switch-color-success
427
- .switch-track {
428
- border-color: var(--ls-color-success);
429
- }
430
-
431
- body.dark
432
- .switch-checked.switch-outlined.switch-color-error
433
- .switch-track {
434
- border-color: var(--ls-color-danger);
435
- }
436
-
437
- body.dark
438
- .switch-checked.switch-outlined.switch-color-info
439
- .switch-track {
440
- border-color: var(--ls-color-info);
441
- }
442
-
443
- body.dark
444
- .switch-checked.switch-outlined.switch-color-warning
445
- .switch-track {
446
- border-color: var(--ls-color-warning);
447
- }
448
-
449
- body.dark
450
- .switch-checked.switch-outlined.switch-color-primary
451
- .switch-thumb {
452
- background-color: var(--ls-color-primary);
453
- }
454
-
455
- body.dark
456
- .switch-checked.switch-outlined.switch-color-secondary
457
- .switch-thumb {
458
- background-color: var(--ls-color-secondary);
459
- }
460
-
461
- body.dark
462
- .switch-checked.switch-outlined.switch-color-success
463
- .switch-thumb {
464
- background-color: var(--ls-color-success);
465
- }
466
-
467
- body.dark
468
- .switch-checked.switch-outlined.switch-color-error
469
- .switch-thumb {
470
- background-color: var(--ls-color-danger);
471
- }
472
-
473
- body.dark
474
- .switch-checked.switch-outlined.switch-color-info
475
- .switch-thumb {
476
- background-color: var(--ls-color-info);
477
- }
478
-
479
- body.dark
480
- .switch-checked.switch-outlined.switch-color-warning
481
- .switch-thumb {
482
- background-color: var(--ls-color-warning);
483
- }
@@ -1,112 +0,0 @@
1
- /* Avatar Component — Pure CSS */
2
-
3
- /* === Host === */
4
- :host {
5
- display: contents;
6
- }
7
-
8
- /* === Base === */
9
- .avatar {
10
- display: inline-flex;
11
- align-items: center;
12
- justify-content: center;
13
- overflow: hidden;
14
- font-family: var(--ls-font-family);
15
- font-weight: 600;
16
- color: #fff;
17
- user-select: none;
18
- vertical-align: middle;
19
- }
20
-
21
- img.avatar {
22
- object-fit: cover;
23
- }
24
-
25
- /* ══════════════════════════════════════════════════════════════════════
26
- Size Modifiers
27
- ══════════════════════════════════════════════════════════════════════ */
28
-
29
- .avatar-small {
30
- width: 2.25rem;
31
- height: 2.25rem;
32
- font-size: 0.75rem;
33
- }
34
-
35
- .avatar-medium {
36
- width: 2.75rem;
37
- height: 2.75rem;
38
- font-size: 0.875rem;
39
- }
40
-
41
- .avatar-large {
42
- width: 3.5rem;
43
- height: 3.5rem;
44
- font-size: 1.125rem;
45
- }
46
-
47
- /* ══════════════════════════════════════════════════════════════════════
48
- Variant Modifiers
49
- ══════════════════════════════════════════════════════════════════════ */
50
-
51
- .avatar-circular {
52
- border-radius: var(--ls-border-radius-full);
53
- }
54
-
55
- .avatar-rounded {
56
- border-radius: var(--ls-border-radius-md);
57
- }
58
-
59
- .avatar-square {
60
- border-radius: 0;
61
- }
62
-
63
- /* ══════════════════════════════════════════════════════════════════════
64
- Color Modifiers (text mode)
65
- ══════════════════════════════════════════════════════════════════════ */
66
-
67
- .avatar-color-primary {
68
- background-color: var(--ls-color-primary);
69
- }
70
-
71
- .avatar-color-secondary {
72
- background-color: var(--ls-color-secondary);
73
- }
74
-
75
- .avatar-color-error {
76
- background-color: var(--ls-color-error);
77
- }
78
-
79
- .avatar-color-info {
80
- background-color: var(--ls-color-info);
81
- }
82
-
83
- .avatar-color-success {
84
- background-color: var(--ls-color-success);
85
- }
86
-
87
- .avatar-color-warning {
88
- background-color: var(--ls-color-warning);
89
- }
90
-
91
- /* ══════════════════════════════════════════════════════════════════════
92
- Fallback
93
- ══════════════════════════════════════════════════════════════════════ */
94
-
95
- .avatar-fallback {
96
- background-color: var(--ls-color-dark);
97
- }
98
-
99
- .avatar-icon {
100
- width: 60%;
101
- height: 60%;
102
- fill: currentColor;
103
- }
104
-
105
- /* ══════════════════════════════════════════════════════════════════════
106
- Dark Mode
107
- ══════════════════════════════════════════════════════════════════════ */
108
-
109
- body.dark .avatar-fallback {
110
- background-color: #3b3f5c;
111
- color: #e0e6ed;
112
- }
@@ -1,37 +0,0 @@
1
- /* AvatarGroup Component — Pure CSS */
2
-
3
- /* === Host === */
4
- :host {
5
- display: contents;
6
- }
7
-
8
- /* === Base === */
9
- .avatar-group {
10
- display: inline-flex;
11
- align-items: center;
12
- }
13
-
14
- /* === Items === */
15
- .avatar-group-item {
16
- position: relative;
17
- display: flex;
18
- align-items: center;
19
- margin-left: -0.5rem;
20
- }
21
-
22
- .avatar-group-item:first-child {
23
- margin-left: 0;
24
- }
25
-
26
- /* === Border ring for stacking contrast === */
27
- .avatar-group-item .avatar {
28
- border: 2px solid #fff;
29
- }
30
-
31
- /* ══════════════════════════════════════════════════════════════════════
32
- Dark Mode
33
- ══════════════════════════════════════════════════════════════════════ */
34
-
35
- body.dark .avatar-group-item .avatar {
36
- border-color: #1b2e4b;
37
- }
@@ -1,40 +0,0 @@
1
- /* Logo Component — Pure CSS */
2
-
3
- /* === Host === */
4
- :host {
5
- display: contents;
6
- }
7
-
8
- /* === Base === */
9
- .logo {
10
- display: block;
11
- height: auto;
12
- max-width: 100%;
13
- object-fit: contain;
14
- }
15
-
16
- /* ══════════════════════════════════════════════════════════════════════
17
- Size Modifiers
18
- ══════════════════════════════════════════════════════════════════════ */
19
-
20
- .logo-small {
21
- height: 1.5rem;
22
- }
23
-
24
- .logo-medium {
25
- height: 2rem;
26
- }
27
-
28
- .logo-large {
29
- height: 2.5rem;
30
- }
31
-
32
- /* ══════════════════════════════════════════════════════════════════════
33
- Link Wrapper
34
- ══════════════════════════════════════════════════════════════════════ */
35
-
36
- .logo-link {
37
- display: inline-flex;
38
- line-height: 0;
39
- text-decoration: none;
40
- }