@c8y/style 1023.71.1 → 1023.75.1

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.
@@ -41,27 +41,31 @@
41
41
  padding-left: 0;
42
42
  }
43
43
 
44
- .form-control + .form-control {
44
+ .form-control+.form-control {
45
45
  margin-left: -1px;
46
46
  }
47
- > .form-control,
48
- > .c8y-select-wrapper,
49
- > .form-group,
50
- > div[c8y-device-group-selector] {
47
+
48
+ >.form-control,
49
+ >.c8y-select-wrapper,
50
+ >.form-group,
51
+ >div[c8y-device-group-selector] {
51
52
  position: relative;
52
53
  z-index: 2;
53
54
  flex: 1 1 auto;
54
55
  margin-bottom: 0;
55
56
  height: @form-control-height-base !important;
56
57
  min-width: 0;
58
+
57
59
  &:not(:first-child) {
58
60
  margin-left: -1px;
59
61
  }
60
62
  }
61
- > .color-input {
63
+
64
+ >.color-input {
62
65
  flex-grow: 0;
63
66
  flex-basis: 39px;
64
67
  }
68
+
65
69
  .form-control.inner-scroll {
66
70
  box-shadow: none;
67
71
  border: 1px solid @form-control-border-color-default;
@@ -69,7 +73,8 @@
69
73
  padding-bottom: 0;
70
74
  align-items: center;
71
75
  background-color: @form-control-background-default;
72
- > .tag {
76
+
77
+ >.tag {
73
78
  align-self: unset;
74
79
  flex-shrink: 0;
75
80
  }
@@ -83,7 +88,7 @@
83
88
  }
84
89
  }
85
90
 
86
- &.typeahead > div:not(.input-group-btn) {
91
+ &.typeahead>div:not(.input-group-btn) {
87
92
  flex: 1;
88
93
 
89
94
  .form-control {
@@ -117,6 +122,7 @@
117
122
  font-size: @font-size-small;
118
123
  height: @form-control-height-sm;
119
124
  }
125
+
120
126
  .form-group-lg &,
121
127
  .input-group-lg &,
122
128
  &.input-lg {
@@ -130,8 +136,8 @@
130
136
  margin: 0;
131
137
  line-height: 1;
132
138
 
133
- input[type='checkbox'] + span::before,
134
- input[type='radio'] + span::before {
139
+ input[type='checkbox']+span::before,
140
+ input[type='radio']+span::before {
135
141
  margin: 0;
136
142
  }
137
143
  }
@@ -141,16 +147,21 @@
141
147
  display: flex;
142
148
  align-items: stretch;
143
149
  max-height: @form-control-height-base;
150
+
144
151
  &:not(:first-child) {
145
152
  margin-left: -1px;
146
153
  }
147
- &--last, + .input-group-btn {
154
+
155
+ &--last,
156
+ +.input-group-btn {
148
157
  margin-left: -1px;
149
158
  }
159
+
150
160
  .input-group-sm & {
151
161
  max-height: @form-control-height-sm;
152
162
  }
153
- > .btn-default {
163
+
164
+ >.btn-default {
154
165
  --c8y-btn-default-background-default: @{form-control-background-default};
155
166
  }
156
167
  }
@@ -161,6 +172,7 @@
161
172
  &:not(:first-child):not(:last-child) {
162
173
  border-radius: 0;
163
174
  }
175
+
164
176
  .btn:not(.btn-dot) {
165
177
  border-radius: @form-control-border-radius;
166
178
  }
@@ -172,6 +184,7 @@
172
184
  display: flex !important;
173
185
 
174
186
  .form-control {
187
+
175
188
  &,
176
189
  &:first-child,
177
190
  &:last-child {
@@ -180,7 +193,9 @@
180
193
  border-radius: calc(@form-control-height-base * 0.5);
181
194
  }
182
195
  }
196
+
183
197
  .form-control.input-lg {
198
+
184
199
  &,
185
200
  &:first-child,
186
201
  &:last-child {
@@ -192,6 +207,7 @@
192
207
 
193
208
  &:has(.input-group-btn > .btn + .btn) {
194
209
  .form-control {
210
+
195
211
  &,
196
212
  &:first-child,
197
213
  &:last-child {
@@ -218,28 +234,33 @@
218
234
  line-height: 1;
219
235
  border-radius: calc(@form-control-height-base * 0.5);
220
236
  text-overflow: initial;
237
+
221
238
  &:hover {
222
239
  box-shadow: inset 0 0 0 2px @component-brand-primary;
223
240
  }
224
241
  }
225
242
  }
226
243
 
227
- &.input-group-sm, .input-group-sm & {
244
+ &.input-group-sm,
245
+ .input-group-sm & {
228
246
  .form-control:not(.c8y-radio):not(.c8y-checkbox) {
229
247
  padding-left: 12px;
230
248
  }
231
249
 
232
250
  .input-group-btn,
233
- .input-group-addon, .form-group {
251
+ .input-group-addon,
252
+ .form-group {
234
253
  height: @form-control-height-sm !important;
235
254
  }
236
255
  }
237
256
 
238
257
  &.input-group-lg {
258
+
239
259
  .input-group-btn,
240
260
  .input-group-addon {
241
261
  height: @form-control-height-lg;
242
262
  max-height: unset;
263
+
243
264
  .btn {
244
265
  border-radius: @form-control-height-base !important;
245
266
  min-width: @form-control-height-lg;
@@ -260,12 +281,13 @@
260
281
  }
261
282
 
262
283
  .input-group-search {
263
- .input-group-btn > .btn {
284
+ .input-group-btn>.btn {
264
285
  border-top-right-radius: calc(@form-control-height-base * 0.5) !important;
265
286
  border-bottom-right-radius: calc(@form-control-height-base * 0.5) !important;
266
287
  }
288
+
267
289
  &.input-group-lg {
268
- .input-group-btn > .btn {
290
+ .input-group-btn>.btn {
269
291
  border-top-right-radius: @form-control-height-base !important;
270
292
  border-bottom-right-radius: @form-control-height-base !important;
271
293
  }
@@ -275,9 +297,11 @@
275
297
  //smaller search input when using the c8y-search-input component
276
298
  c8y-search-input.input-group-sm {
277
299
  .input-group-search {
300
+
278
301
  .form-control,
279
302
  .input-group-addon,
280
- .input-group-btn > .btn {
303
+ .input-group-btn>.btn {
304
+
281
305
  // Inline .input-sm styles (was @extend .input-sm)
282
306
  &:not(.c8y-radio):not(.c8y-checkbox) {
283
307
  padding: @form-control-padding-small-vertical @form-control-padding-small-horizontal;
@@ -287,6 +311,7 @@ c8y-search-input.input-group-sm {
287
311
  }
288
312
  }
289
313
  }
314
+
290
315
  // add smaller left and right margins in the search dropdown
291
316
  c8y-li.m-l-32.m-r-32 {
292
317
  margin-left: @size-8 !important;
@@ -298,6 +323,7 @@ c8y-search-input.input-group-sm {
298
323
  display: flex !important;
299
324
 
300
325
  .form-control {
326
+
301
327
  &,
302
328
  &:first-child,
303
329
  &:last-child {
@@ -339,6 +365,7 @@ c8y-search-input.input-group-sm {
339
365
 
340
366
  // dropdown without round corners
341
367
  .input-group.input-group-dropdown {
368
+
342
369
  .input-group-btn,
343
370
  .input-group-addon {
344
371
  position: absolute;
@@ -356,9 +383,15 @@ c8y-search-input.input-group-sm {
356
383
  height: 100%;
357
384
  border: 0;
358
385
  border-radius: @form-control-border-radius;
386
+
387
+ +.btn {
388
+ margin-left: 0;
389
+ }
359
390
  }
360
391
  }
392
+
361
393
  &.input-group-sm {
394
+
362
395
  .input-group-btn,
363
396
  .input-group-addon {
364
397
  height: @form-control-height-sm;
@@ -369,22 +402,22 @@ c8y-search-input.input-group-sm {
369
402
  // Reset rounded corners
370
403
  .input-group .form-control:first-child,
371
404
  .input-group-addon:first-child,
372
- .input-group-btn:first-child > .btn,
373
- .input-group-btn:first-child > .btn-group > .btn,
374
- .input-group-btn:first-child > .dropdown-toggle,
375
- .input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle):not(.btn-dot),
376
- .input-group-btn:last-child > .btn-group:not(:last-child) > .btn {
405
+ .input-group-btn:first-child>.btn,
406
+ .input-group-btn:first-child>.btn-group>.btn,
407
+ .input-group-btn:first-child>.dropdown-toggle,
408
+ .input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle):not(.btn-dot),
409
+ .input-group-btn:last-child>.btn-group:not(:last-child)>.btn {
377
410
  border-top-right-radius: 0;
378
411
  border-bottom-right-radius: 0;
379
412
  }
380
413
 
381
414
  .input-group .form-control:last-child,
382
415
  .input-group-addon:last-child,
383
- .input-group-btn:last-child > .btn:not(.btn-dot),
384
- .input-group-btn:last-child > .btn-group > .btn,
385
- .input-group-btn:last-child > .dropdown-toggle,
386
- .input-group-btn:first-child > .btn:not(:first-child),
387
- .input-group-btn:first-child > .btn-group:not(:first-child) > .btn {
416
+ .input-group-btn:last-child>.btn:not(.btn-dot),
417
+ .input-group-btn:last-child>.btn-group>.btn,
418
+ .input-group-btn:last-child>.dropdown-toggle,
419
+ .input-group-btn:first-child>.btn:not(:first-child),
420
+ .input-group-btn:first-child>.btn-group:not(:first-child)>.btn {
388
421
  border-top-left-radius: 0;
389
422
  border-bottom-left-radius: 0;
390
423
  }
@@ -392,15 +425,107 @@ c8y-search-input.input-group-sm {
392
425
  //Input group editable
393
426
  // supports a save button and a cancel button inside a input-group
394
427
  .input-group-editable {
395
- .input-group-btn {
428
+ position: relative;
429
+
430
+ textarea.form-control {
431
+ max-height: unset;
432
+ }
433
+
434
+ input[type='number']:not(:focus) {
435
+ -moz-appearance: textfield;
436
+
437
+ &::-webkit-inner-spin-button {
438
+ margin: 0;
439
+ -webkit-appearance: none;
440
+ }
441
+ }
442
+
443
+ .form-control, .form-control:first-child{
444
+ field-sizing: content;
445
+ min-width: 3ch;
446
+ max-width: 100%;
447
+ width: auto;
448
+ transition: all 0.25s ease;
449
+ flex: 0 1 auto;
450
+
451
+ + span{
452
+ opacity: 1;
453
+ transition: all 0.25s ease;
454
+ display: flex;
455
+ align-items: flex-end;
456
+ &::after {
457
+ z-index: 5;
458
+ display: inline-block;
459
+ align-self: center;
460
+ margin-left: calc(-1 * @size-8);
461
+ color: @component-brand-primary;
462
+ opacity: 1;
463
+ line-height: @form-control-height-base;
464
+ transition: all 0.25s ease;
465
+ content: @dlt-c8y-icon-pencil;
466
+ font-family: @icon-font-family;
467
+ font-style: normal;
468
+ font-weight: normal;
469
+ text-rendering: auto;
470
+ -webkit-font-smoothing: antialiased;
471
+ -moz-osx-font-smoothing: grayscale;
472
+ }
473
+ }
474
+
475
+ &:hover, &:focus-within{
476
+ + span {
477
+ opacity: 0;
478
+ }
479
+ }
480
+ }
481
+ .form-control:not(:hover):not(:focus):not(.ng-dirty) {
482
+ z-index: 2;
483
+ overflow: hidden;
484
+ margin-right: 12px;
485
+ padding-left: 0;
486
+ padding-right: 0;
487
+ border-radius: @form-control-border-radius;
488
+ width: auto;
489
+ background-color: transparent;
490
+ box-shadow: none;
491
+ text-overflow: ellipsis;
492
+ + span{
493
+ display: flex;
494
+ align-items: flex-end;
495
+ }
496
+ &[disabled],
497
+ &[read-only] {
498
+ width: 100%;
499
+ +span::after {
500
+ opacity: 0;
501
+ }
502
+ }
503
+ }
504
+ .input-group-btn{
505
+ opacity: 0;
506
+ pointer-events: none;
507
+ transition: all 0.25s ease;
508
+ padding: @size-4;
509
+ display: flex;
510
+
396
511
  .btn-clean {
397
512
  position: relative;
398
- padding: 6px;
513
+ padding: 0!important;
514
+ width: auto;
515
+ margin: 0!important;
516
+ max-height: unset;
517
+ height: auto!important;
518
+ aspect-ratio: 1;
519
+ border-radius: 50%!important;
520
+ display: flex;
521
+ align-items: center;
522
+ justify-content: center;
523
+ align-self: stretch;
399
524
 
400
525
  &::after {
401
526
  position: absolute;
402
527
  top: 50%;
403
- right: 0;
528
+ left: -4px;
404
529
  display: block;
405
530
  margin-top: calc(-1 * @size-10);
406
531
  width: 1px;
@@ -408,128 +533,111 @@ c8y-search-input.input-group-sm {
408
533
  background-color: rgba(@black, (10 / 100));
409
534
  content: '';
410
535
  }
411
- }
412
-
413
- &:last-child {
414
- .btn-clean::after {
536
+ &:last-child::after {
415
537
  display: none;
416
538
  }
417
539
  }
418
540
  }
419
- }
420
-
421
- .input-group-editable {
422
- textarea.form-control {
423
- max-height: unset;
424
- height: @form-control-height-base;
425
- }
426
-
427
- input[type='number']:not(:focus) {
428
- -moz-appearance: textfield;
429
-
430
- &::-webkit-inner-spin-button {
541
+ &:has(.ng-dirty){
542
+ .input-group-btn{
543
+ opacity: 1;
544
+ pointer-events: auto;
545
+ z-index: 10;
431
546
  margin: 0;
432
-
433
- -webkit-appearance: none;
434
- }
435
- }
436
-
437
- .form-control:not(.ng-dirty) {
438
- transition: all 0.25s ease;
439
-
440
- &[disabled] {
441
- padding-left: 0;
442
- box-shadow: none;
443
- opacity: @component-disabled-opacity;
444
- transition: none;
445
- }
446
-
447
- ~ .input-group-btn {
448
- display: none;
449
547
  }
450
548
  }
451
-
452
- &:not(:hover) {
549
+ &:not(:has(.form-control:hover)):not(:focus-within) {
453
550
  textarea.form-control {
454
551
  resize: none;
455
552
  }
456
-
457
- .form-control:not(:focus):not(.ng-dirty) {
458
- z-index: 2;
459
- overflow: hidden;
460
- flex: 0 1 auto;
461
- margin-right: 12px;
462
- padding-left: 0;
463
- min-width: 3ch;
464
- max-width: 100%;
465
- field-sizing: content;
466
- width: auto;
467
- background-color: transparent;
468
- box-shadow: none;
469
- text-overflow: ellipsis;
470
-
471
- &[disabled],
472
- &[read-only] {
473
- width: 100%;
553
+ }
554
+ .form-control.ng-dirty{
555
+ padding-right: calc(@form-control-height-base * 2)!important;
556
+ border-top-right-radius: @form-control-height-sm;
557
+ border-bottom-right-radius: @form-control-height-sm;
558
+ + span{
559
+ opacity: 0;
560
+ }
561
+ ~.input-group-btn {
562
+ max-height: unset;
563
+ height: @form-control-height-base;
564
+ margin-left: calc(@form-control-height-base * -2);
565
+ align-items: stretch;
566
+ .btn{
567
+ height: unset!important;
474
568
  }
475
-
476
- + span:after {
477
- z-index: 5;
478
- display: inline-block;
479
- margin-left: calc(-1 * @size-16);
480
- color: @component-brand-primary;
481
- content: @dlt-c8y-icon-pencil;
482
- font: normal normal normal 14px/1 @icon-font-family;
483
- font-size: 12px;
484
- line-height: 32px;
485
- opacity: 0.5;
486
-
487
- text-rendering: auto;
488
- -webkit-font-smoothing: antialiased;
489
- -moz-osx-font-smoothing: grayscale;
490
-
491
- .form-group-lg & {
492
- line-height: 40px;
493
- }
569
+ }
570
+ }
571
+ &.input-group-sm,
572
+ .form-group-sm & {
573
+ .form-control.ng-dirty{
574
+ padding-right: calc(@form-control-height-sm * 2)!important;
575
+ border-top-right-radius: @form-control-height-sm;
576
+ border-bottom-right-radius: @form-control-height-sm;
577
+ + span{
578
+ opacity: 0;
494
579
  }
495
-
496
- &[disabled] {
497
- + span:after {
498
- display: none;
580
+ ~.input-group-btn {
581
+ height: @form-control-height-sm;
582
+ margin-left: calc(@form-control-height-sm * -2);
583
+ .btn{
584
+ height: unset!important;
499
585
  }
500
586
  }
501
587
  }
588
+ .form-control:not(.ng-dirty)+span::after {
589
+ line-height: @form-control-height-sm;
590
+ }
502
591
  }
503
592
 
504
- &:hover {
505
- .form-control:not(:focus):not(.ng-dirty) {
506
- flex: 0 1 auto;
507
- max-width: 100%;
593
+ &.input-group-lg,
594
+ .form-group-lg & {
595
+ .form-control.ng-dirty{
596
+ padding-right: calc(@form-control-height-lg * 2)!important;
597
+ border-top-right-radius: @form-control-height-lg;
598
+ border-bottom-right-radius: @form-control-height-lg;
599
+ + span{
600
+ opacity: 0;
601
+ }
602
+ ~.input-group-btn {
603
+ height: @form-control-height-lg;
604
+ margin-left: calc(@form-control-height-lg * -2);
605
+ .btn{
606
+ height: unset!important;
607
+ }
608
+ }
609
+ }
610
+ .form-control:not(.ng-dirty)+span::after {
611
+ line-height: @form-control-height-lg;
508
612
  }
509
613
  }
510
614
  }
511
615
 
512
616
  // Sizing options
513
617
  // Remix the default form control sizing classes into new ones for easier manipulation.
514
- .input-group-lg > .form-control,
515
- .input-group-lg > .input-group-addon,
516
- .input-group-lg > .input-group-btn > .btn,
517
- .input-group-search.input-group-lg .input-group > .form-control,
518
- .input-group-search.input-group-lg .input-group-btn > .btn {
519
- // Inline .input-lg styles (was @extend .input-lg)
520
- &:not(.c8y-radio):not(.c8y-checkbox) {
521
- padding: @form-control-padding-large-vertical @form-control-padding-large-horizontal;
522
- max-height: unset !important;
523
- height: @form-control-height-lg !important;
524
- font-size: @font-size-large;
525
- }
618
+ .input-group-lg>.form-control,
619
+ .input-group-lg>.input-group-addon,
620
+ .input-group-lg>.input-group-btn>.btn,
621
+ .input-group-search.input-group-lg .input-group>.form-control,
622
+ .input-group-search.input-group-lg .input-group-btn>.btn {
623
+
624
+ // Inline .input-lg styles (was @extend .input-lg)
625
+ &:not(.c8y-radio):not(.c8y-checkbox) {
626
+ padding: @form-control-padding-large-vertical @form-control-padding-large-horizontal;
627
+ max-height: unset !important;
628
+ height: @form-control-height-lg !important;
629
+ font-size: @font-size-large;
630
+ }
526
631
  }
527
- .input-group-lg > .form-group {
632
+
633
+ .input-group-lg>.form-group {
528
634
  height: @form-control-height-lg !important;
529
635
  }
530
- .input-group-sm > .form-control,
531
- .input-group-sm > .input-group-addon,
532
- .input-group-sm > .input-group-btn > .btn {
636
+
637
+ .input-group-sm>.form-control,
638
+ .input-group-sm>.input-group-addon,
639
+ .input-group-sm>.input-group-btn>.btn {
640
+
533
641
  // Inline .input-sm styles (was @extend .input-sm)
534
642
  &:not(.c8y-radio):not(.c8y-checkbox) {
535
643
  padding: @form-control-padding-small-vertical @form-control-padding-small-horizontal;
@@ -538,7 +646,8 @@ c8y-search-input.input-group-sm {
538
646
  line-height: @line-height-small;
539
647
  }
540
648
  }
541
- .input-group-sm > .form-group {
649
+ .input-group-sm > .form-group,
650
+ .input-group-sm > .c8y-select-wrapper {
542
651
  height: @form-control-height-sm !important;
543
652
  }
544
653
 
@@ -579,17 +688,16 @@ c8y-search-input.input-group-sm {
579
688
  // `font-size` in combination with `inline-block` on buttons.
580
689
  font-size: 0;
581
690
 
691
+ .btn+.btn {
692
+ margin-left: 0;
693
+ }
694
+
582
695
  // element above the siblings.
583
- > .btn {
696
+ >.btn {
584
697
  position: relative;
585
698
  padding: @size-5 12px;
586
699
  height: 100%;
587
700
 
588
- + .btn {
589
- margin-left: -1px;
590
- border-left-color: rgba(@black, (15 / 100));
591
- }
592
-
593
701
  // Bring the "active" button to the front
594
702
  &:hover,
595
703
  &:focus,
@@ -611,29 +719,33 @@ c8y-search-input.input-group-sm {
611
719
 
612
720
  // No negative margins to show the complet input border
613
721
  &:first-child {
614
- > .btn,
615
- > .btn-group {
722
+
723
+ >.btn,
724
+ >.btn-group {
616
725
  margin-right: 0;
617
726
  border-right-color: rgba(@black, (15 / 100));
618
727
  }
619
728
 
620
- > .btn:last-child {
729
+ >.btn:last-child {
621
730
  // border-right: 0;
622
731
  }
623
732
  }
624
733
 
625
734
  &:last-child {
626
- > .btn:not(:focus),
627
- > .btn-group {
735
+
736
+ >.btn:not(:focus),
737
+ >.btn-group {
628
738
  z-index: 2;
629
739
  // border-left-color: rgba(@black, 15/100);
630
740
  }
631
- > .btn:focus {
741
+
742
+ >.btn:focus {
632
743
  margin-left: -1px;
633
744
  }
634
745
  }
746
+
635
747
  &:not(:first-child) {
636
- > .btn:first-child:not(:focus) {
748
+ >.btn:first-child:not(:focus) {
637
749
  // border-left: 0;
638
750
  }
639
751
  }
@@ -655,7 +767,7 @@ c8y-search-input.input-group-sm {
655
767
  }
656
768
 
657
769
  // @TODO: JAWI validate
658
- > .input-group-btn.delete-row {
770
+ >.input-group-btn.delete-row {
659
771
  margin-top: @size-24;
660
772
  }
661
773
 
@@ -663,12 +775,12 @@ c8y-search-input.input-group-sm {
663
775
  flex-grow: 1;
664
776
  }
665
777
 
666
- + .input-group-array {
778
+ +.input-group-array {
667
779
  .input-group-btn {
668
780
  margin-top: 0;
669
781
  }
670
782
 
671
- .form-group > label {
783
+ .form-group>label {
672
784
  display: none;
673
785
  }
674
786
  }
@@ -679,10 +791,10 @@ c8y-search-input.input-group-sm {
679
791
  .input-group-array {
680
792
  gap: @size-base;
681
793
 
682
- > formly-field {
794
+ >formly-field {
683
795
  display: contents;
684
796
 
685
- > formly-group {
797
+ >formly-group {
686
798
  display: contents;
687
799
  }
688
800
  }
@@ -698,10 +810,11 @@ formly-field label.c8y-checkbox {
698
810
  }
699
811
 
700
812
  c8y-lwm2m-legend-wrapper formly-field {
701
- > c8y-field-checkbox {
813
+ >c8y-field-checkbox {
702
814
  display: flex;
703
815
  align-items: center;
704
816
  margin: 0 0 @size-8 0;
817
+
705
818
  & label.c8y-switch {
706
819
  display: flex !important;
707
820
  overflow: visible;
@@ -711,6 +824,6 @@ c8y-lwm2m-legend-wrapper formly-field {
711
824
  }
712
825
 
713
826
  // EXTENDABLE INPUT LIST
714
- [c8yinputgrouplistcontainer] > li:not(:last-child) .input-group-btn > .btn.text-primary {
827
+ [c8yinputgrouplistcontainer]>li:not(:last-child) .input-group-btn>.btn.text-primary {
715
828
  display: none;
716
829
  }