@c8y/style 1024.2.4 → 1024.8.3

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@c8y/style",
3
- "version": "1024.2.4",
3
+ "version": "1024.8.3",
4
4
  "license": "Apache-2.0",
5
5
  "author": "Cumulocity GmbH",
6
6
  "description": "Styles for Cumulocity IoT applications",
@@ -68,7 +68,16 @@ c8y-chart {
68
68
  }
69
69
  }
70
70
 
71
- // Removed unused control utility class - verified 0 usages: .top-chart-bar
71
+ // Partially restored for the legacy data point graph (MTM-66855): the max-width
72
+ // constraint is what makes the selected-datapoints label truncate with an ellipsis.
73
+ .top-chart-bar {
74
+ c8y-item-selector {
75
+ max-width: 170px;
76
+ @media (min-width: $screen-md-min) {
77
+ max-width: 240px;
78
+ }
79
+ }
80
+ }
72
81
 
73
82
  .c8yGraphFill {
74
83
  min-height: 540px;
@@ -79,11 +88,15 @@ c8y-chart {
79
88
 
80
89
  // inside dashboard widgets
81
90
  .card-dashboard {
82
- // Removed unused control utility class - verified 0 usages: .top-chart-bar
83
91
  c8y-measurements-icon-bar {
84
92
  width: 100%;
85
93
  }
86
- // Removed unused control utility class - verified 0 usages: .top-chart-bar
94
+ // Partially restored for the legacy data point graph (MTM-66855)
95
+ .top-chart-bar {
96
+ c8y-item-selector {
97
+ max-width: 170px;
98
+ }
99
+ }
87
100
  }
88
101
 
89
102
  // Removed unused utility usage: .has-aggregation .measurement-icon-bar .c8y-realtime
@@ -5,6 +5,7 @@
5
5
  @use "../../../core/buttons/buttons";
6
6
  @use "../../../mixins/tab-focus";
7
7
  @use "../../../utilities/separators";
8
+ @use "../../../mixins/c8y-scrollbar";
8
9
  /**
9
10
  * C8Y List Group - Modern list component with flexible layouts
10
11
  *
@@ -38,9 +39,11 @@
38
39
  }
39
40
 
40
41
  &.dropdown-menu {
42
+ @include c8y-scrollbar.c8y-scrollbar();
41
43
  width: 100%;
42
44
  max-height: 240px;
43
45
  overflow-y: auto;
46
+ background: $component-background-default;
44
47
  }
45
48
  }
46
49
 
@@ -17,7 +17,7 @@
17
17
  .dtm-icon-grid {
18
18
  display: grid;
19
19
  grid-template-columns: repeat(3, minmax(0, 1fr));
20
-
20
+ gap: $size-4;
21
21
  @media(min-width: $screen-sm-min) {
22
22
  grid-template-columns: repeat(5, minmax(0, 1fr));
23
23
  }
@@ -31,12 +31,75 @@
31
31
  display: flex;
32
32
  align-items: stretch;
33
33
  justify-content: stretch;
34
+ position: relative;
34
35
 
35
36
  &--selected {
36
37
  >button {
37
38
  box-shadow: inset 0 0 0 2px $component-color-focus !important;
38
39
  }
39
40
  }
41
+
42
+ &--overridden, &:has(.dtm-icon-grid__actions .dlt-c8y-icon-pencil) {
43
+ > button {
44
+ outline: 1px dotted $component-border-color;
45
+ outline-offset: -2px;
46
+ }
47
+ }
48
+
49
+ .dtm-icon-grid__override-marker {
50
+ position: absolute;
51
+ top: 3px;
52
+ left: 3px;
53
+ z-index: 1;
54
+ display: flex;
55
+ align-items: center;
56
+ justify-content: center;
57
+ width: 16px;
58
+ height: 16px;
59
+ font-size: 10px;
60
+ line-height: 1;
61
+ color: $tag--color-info;
62
+ background-color: $tag--background-info;
63
+ border: 1px solid $tag--color-info;
64
+ border-radius: 50%;
65
+ }
66
+
67
+ .dtm-icon-grid__actions {
68
+ opacity: 0;
69
+ display: flex;
70
+ pointer-events: none;
71
+ position: absolute;
72
+ top: 0;
73
+ right: 0;
74
+ gap: 2px;
75
+ z-index: 1;
76
+ transform: translate(-4px, -50%);
77
+ transition: all .15s ease;
78
+ @media (max-width: $screen-xs-max) {
79
+ flex-direction: column;
80
+ gap: 1px;
81
+ right: 1px;
82
+ }
83
+ .btn-dot{
84
+ background-color: $component-background-default;
85
+ border-radius: 50%!important;
86
+ border: 1px solid $component-border-color;
87
+ }
88
+ }
89
+
90
+ &:hover,
91
+ &:focus-within {
92
+ .dtm-icon-grid__actions {
93
+
94
+ opacity: 1;
95
+ pointer-events: auto;
96
+ }
97
+ .dtm-icon-grid__btn{
98
+ box-shadow: inset 0 0 0 1px $component-border-color;
99
+ color: inherit;
100
+ }
101
+ }
102
+
40
103
  }
41
104
 
42
105
  &__btn {
@@ -47,15 +110,20 @@
47
110
  padding: $size-8;
48
111
  background: $component-background-default;
49
112
  width: 100%;
113
+ border-radius: $size-8;
50
114
 
51
115
  >i {
116
+ display: inline-block;
117
+ width: 1.1em;
118
+ height: 1.1em;
119
+ line-height: 1;
52
120
  color: $gray-30;
53
121
  margin-bottom: 4px;
54
122
  }
55
123
 
56
124
  &:hover,
57
125
  &:focus {
58
- box-shadow: inset 0 0 0 1px $component-color-focus;
126
+ box-shadow: inset 0 0 0 1px $component-border-color;
59
127
  color: inherit;
60
128
  }
61
129
 
@@ -146,7 +146,9 @@ c8y-item-selector {
146
146
  }
147
147
 
148
148
  .dropdown-menu.multiselect-container {
149
- .dropdown.open & {
149
+ // body.uib-dropdown-open covers menus rendered with dropdown-append-to-body
150
+ .dropdown.open &,
151
+ body.uib-dropdown-open > & {
150
152
  overflow: auto !important;
151
153
  max-height: 278px;
152
154
  min-width: 240px;
@@ -598,12 +598,6 @@ c8y-search-input.input-group-sm {
598
598
  }
599
599
  }
600
600
  }
601
- &.input-group-editable--no-actions {
602
- .form-control.ng-dirty {
603
- padding-right: $form-control-padding-base-horizontal !important;
604
- border-radius: $form-control-border-radius;
605
- }
606
- }
607
601
  &.input-group-sm,
608
602
  .form-group-sm & {
609
603
  .form-control.ng-dirty{
@@ -661,6 +655,12 @@ c8y-search-input.input-group-sm {
661
655
  line-height: $form-control-height-lg;
662
656
  }
663
657
  }
658
+ &.input-group-editable--no-actions {
659
+ .form-control.ng-dirty {
660
+ padding-right: $form-control-padding-base-horizontal !important;
661
+ border-radius: $form-control-border-radius;
662
+ }
663
+ }
664
664
  }
665
665
 
666
666
  // Sizing options
@@ -254,6 +254,29 @@ bs-dropdown-container,
254
254
  }
255
255
  }
256
256
 
257
+ .dropdown.open .dropdown-menu--select:has(.dropdown-menu_sticky-top){
258
+ display: flex!important;
259
+ flex-direction: column;
260
+ .c8y-list__item{
261
+ order: 1;
262
+ }
263
+ .dropdown-menu_sticky-top{
264
+ order: 0;
265
+ position: sticky;
266
+ top: 0;
267
+ z-index: 10;
268
+ padding: $size-8 $size-16;
269
+ .form-group{
270
+ margin-bottom: 0;
271
+ }
272
+ }
273
+ .dropdown-menu_sticky-bottom{
274
+ position: sticky;
275
+ bottom: 0;
276
+ z-index: 10;
277
+ padding: $size-8 $size-16;
278
+ }
279
+ }
257
280
 
258
281
  //dropdown menu when added to body
259
282
  @keyframes showDropdown {
@@ -53,6 +53,12 @@ body.c8y-grid-dashboard > .card.card-dashboard.cdk-drag-preview {
53
53
  display: block;
54
54
  width: 100%;
55
55
  min-height: calc(100vh - 210px);
56
+ &.dashboard-preview-slot{
57
+ min-height: calc(100vh - 632px);
58
+ .dashboard-grid-child{
59
+ height: 100%!important;
60
+ }
61
+ }
56
62
  }
57
63
 
58
64
  .dashboard-grid-child {
@@ -304,10 +310,10 @@ body fieldset > .dashboard-preview-slot {
304
310
  }
305
311
 
306
312
  // title hidden
307
- .card.card-dashboard {
313
+ .ui-draggable-disabled >.card.card-dashboard {
308
314
  .panel-title-hidden &,
309
315
  .dashboard-preview-slot.panel-title-hidden,
310
- &.panel-title-hidden.cdk-drag-disabled {
316
+ &.panel-title-hidden{
311
317
  .card-header-actions {
312
318
  position: absolute;
313
319
  z-index: 10;
@@ -359,10 +365,10 @@ body fieldset > .dashboard-preview-slot {
359
365
  }
360
366
 
361
367
  // title overlay
362
- .card.card-dashboard {
368
+ .ui-draggable-disabled > .card.card-dashboard {
363
369
  .panel-title-overlay &,
364
370
  .dashboard-preview-slot.panel-title-overlay &,
365
- &.panel-title-overlay.cdk-drag-disabled {
371
+ &.panel-title-overlay {
366
372
  .card-header-actions {
367
373
  position: absolute;
368
374
  z-index: 10;
@@ -568,6 +574,7 @@ body fieldset > .dashboard-preview-slot {
568
574
  .toggle-countdown{
569
575
  border-top-left-radius: 16px!important;
570
576
  border-bottom-left-radius: 16px!important;
577
+ border: 0;
571
578
  }
572
579
  }
573
580
  }